서론(러스트를 써야하는 이유) 나는 기본적으로 다양한 프로그래밍 언어에 대해 열려있는 편이다. 대학에서 처음 접한 언어는 C언어였고 2학년때는 C++ 객체지향 프로그래밍을 배웠다. 교양(?) 과목으로 기계과 포트란 프로그래밍도 들었다. 학부를 졸업하고 군에서는 주로 C 및 Java 프로그래밍을 했고, 웹개발(php, javascript)도 병행했다. 군 전...
개요 행정안전부 <소프트웨어 보안약점 진단가이드>에 따르면, 암호키 관리에 대한 부분이 나온다. 이때 코드 내부에서 암호화 키를 하드코딩하여 사용하면, 해당 소스코드가 git 같은 코드 저장소에 올라갔을 때 외부에 유출될 가능성이 높아진다. 이를 방지하기 위해서 구체적으로 어떻게 수행해야 하는지 파이썬 코드를 예시로 살펴보자. 토큰을 처리하는 파...
존스 홉킨스 대학에서 강의를 했었던 Sinan Ozdemir 가 Quick Start Guide to LLMs 라는 책을 출간했다. 이 책이 2023년 9월에 출시되었는데, 불과 4개월만에 한국어판 번역서가 출시되었다. 역시 한빛미디어다. IT기술 트렌드에 빠르게 발맞추어 관련 서적들을 출시하고 있다. 한국어판 제목은 쉽고 빠르게 익히는 실전 LLM이다. ...
위키북스에서 좋은 책이 출간되었다. 일본 저자이며, 일본의 프로그래밍 대회에서 우수한 성적을 거둔 베테랑이다. 원제: アルゴリズム×数学」が基礎からしっかり身につく本 번역을 맡으신 윤인성님도 다양한 저서 및 번역서를 보유하고 계신 분이시므로 이 책에 대한 신뢰를 가질 수 있다. 한국어판 도서: https://wikibook.co.kr/algorithm-math...
기호실행(Symbolic Execution)에 대하여 아래와 같은 좋은 논문들이 있다. 특히 ["All you ever wanted to know about dynamic taint analysis and forward symbolic execution (but might have been afraid to ask)." 2010 IEEE symposium ...
(파이썬을 이용하여 RSA 공개키 암호화 알고리즘의 암복호화 과정을 살펴볼 것이다. 여기에서는 개념 이해를 위한 간단한 PoC 구현이므로, 이 코드를 직접 민감한 데이터를 암호화하는 실무에 사용하는 것은 권장하지 않는다.) RSA 공개키 기반 암호화 알고리즘 1977년 이 체제를 개발한 Ron Rivest, Adi Shamir, Leonard Adleman...
n-Queens 문제 N퀸 문제는 1848년 막스 베첼이 처음으로 제안한 퍼즐 문제로, 수학과 컴퓨터 과학에서 알고리즘 문제로 많이 거론된다.예를들어 8×8 체스판에 8개의 퀸을 배치하는데, 이 때 어떤 퀸도 다른 퀸을 위협해서는 안된다는 조건이 있다. 체스에서 퀸은 상하좌우, 대각선 4방향으로 거리 제한 없이 이동할 수 있다. 위협하지 못한다는 것은 결국...
이 책은 <처음 헌법 연구소>의 조유진 소장님의 저서로, 2013년 처음 출간된 후 청소년 및 일반 시민들이 헌법에 입문하기 위한 교재로 많은 호응을 받고 있다. 헌법재판소의 박근혜 대통령 탄핵심판 이후 2017년 개정판에서는 관련된 내용도 보강되어 있다. 이 책은 1부(헌법에 대한 소개)와 2부(우리나라에 있었던 주요 헌법 재판을 소개)로 내용...
서론 우리나라에서는 과거에 개인정보에 대한 인식이 다소 부족하였던 것 같다. 어렸을 때 초등학교 졸업 앨범의 뒷장에는 전교생의 이름과 집 주소, 전화번호 등이 버젓이 기록되어 있었는데 그것이 큰 문제라고 생각하지 않았다. 인터넷이 활성화 된 이후부터 많은 개인정보 유출 침해 사건 사고가 있었으나, 대다수의 국민들은 "약간 기분 나쁜" 정도에서 일상을 살아왔...
앞서 선형 합동식의 해를 찾는 것을 학습했다. 또한 모듈러 연산에서의 곱셉 역원을 찾는 방법을 확인했다. 예를 들어 ax ≡ b (mod n) 를 만족하는 선형합동식 중, 특히 b 가 1인 상황이라면 a * a^-1 ≡ 1(mod n)을 찾는 것을 곱셈에 대한 역원이라고 한다. 이 역원을 찾는 방법은 (0..n-1)에 대하여 전수조사를 해도 되지만, 확장 ...
나머지 양의 정수 a, b가 있고, a를 b로 나눈 몫을 q, 나머지를 r라고 하자. 이는 곧 a = q*b + r 로 나타낼 수 있다. 초등학교에서는 r을 '나머지'라고 불렀다. 일반적으로 나머지는 나누는 수보다 작은 것으로 간주하여 0≤r<m로 가정했었다. 초등학교에서는 양수만 고려했지만 이제 음수에 대해서도 생각해볼 수 있다. 예를 들어 -7 m...
개요 앞서, 유클리드 호제법(Euclidean algorithm) 이용한 최대공약수, 최소공배수 계산 하는 방법을 배웠다. 유클리드 알고리즘을 이용하면 최대공약수(gcd)를 빠르게 구할 수 있다. 한편, a와 b가 0이 아닌 정수이고, g = gcd(a, b)에 대하여 ax + by = g를 만족하는 정수해(x1, y1)이 항상 존재한다. 이때의 x1, y...
Software Security Engineer
자유로운 창작이 가능한 기본 포스트
한 컷씩 넘겨보는 카툰 포스트
직접 만든 영상을 올리는 동영상 포스트
소장본, 굿즈 등 실물 상품을 판매하는 스토어
정기 후원을 시작하시겠습니까?
설정한 기간의 데이터를 파일로 다운로드합니다. 보고서 파일 생성에는 최대 3분이 소요됩니다.
포인트 자동 충전을 해지합니다. 해지하지 않고도 ‘자동 충전 설정 변경하기' 버튼을 눌러 포인트 자동 충전 설정을 변경할 수 있어요. 설정을 변경하고 편리한 자동 충전을 계속 이용해보세요.
중복으로 선택할 수 있어요.