옮긴이 머리말 xii
추천의 글 xiii
베타리더 후기 xv
시작하며 xvii
감사의 글 xxii
이 책에 대하여 xxiii
표지에 대하여 xxvii
PART I 프리미티브: 암호학의 재료
CHAPTER 1 시작하며 3
1.1 암호학은 프로토콜을 보호한다 4
1.2 대칭 암호학: 대칭 암호화란? 5
1.3 케르크호프스의 원칙: 키만은 비밀로 지키자 7
1.4 비대칭 암호학: 키 두 개가 하나보단 낫지 10
__1.4.1 비밀을 공유하는 방법, 키 교환 10
__1.4.2 비대칭 암호화, 대칭 암호화와는 다르다! 13
__1.4.3 디지털 서명: 펜과 종이의 서명과 그리 다르지 않다 15
1.5 암호학의 분류 17
1.6 이론 암호학 vs 실세계 암호학 19
1.7 이론에서 현실로: 암호학의 현실화를 위한 시뮬레이션 20
1.8 경고장 25
요약 26
CHAPTER 2 해시 함수 27
2.1 해시 함수란? 27
2.2 해시 함수의 보안 속성 30
2.3 해시 함수의 보안 제약 32
2.4 해시 함수의 실사용 34
__2.4.1 커밋 34
__2.4.2 서브리소스 무결성 35
__2.4.3 비트토렌트 35
__2.4.4 토르 35
2.5 표준화된 해시 함수 36
__2.5.1 SHA-2 해시 함수 37
__2.5.2 SHA-3 해시 함수 41
__2.5.3 두 가지 XOF, SHAKE와 cSHAKE 44
__2.5.4 튜플해시, 모호성을 해결하다 46
2.6 비밀번호 해시 48
요약 50
CHAPTER 3 메시지 인증 코드 51
3.1 MAC의 대표적 예, 무상태성 쿠키 51
3.2 코드 예제 54
3.3 MAC의 보안 속성 56
__3.3.1 인증 태그의 위조 56
__3.3.2 인증 태그의 길이 57
__3.3.3 리플레이 공격 58
__3.3.4 주기적 인증 태그 검증 59
3.4 실세계의 MAC 61
__3.4.1 메시지 인증 61
__3.4.2 키 파생 61
수식 대신 그림, 역사 대신 사례, 이론 대신 응용으로 배우는 암호학의 현재와 미래
암호학은 웹 API, 유저 서비스, 블록체인 등 IT 보안의 근간이지만, 유달리 읽을 만한 책이 없다. 카이사르 암호나 비즈네르 암호 같은 역사로 시작하는 책은 지겹다. 현대 암호학이 어떤 요소로 구성되었는지, 어떤 프로토콜이 자주 쓰이며, 어떤 공격 사례가 있었는지, 양자 컴퓨터가 나온 마당에 암호학의 미래는 어떻게 될 것인지. 실무자가 궁금한 건 이런 내용이다.
이 책의 저자는 암호학의 역사나 레거시 알고리즘 대신 TLS, 노이즈 프로토콜 프레임워크, 시그널 프로토콜, 암호화폐(저자는 이 책이 암호화폐를 한 챕터로 다루는 최초의 암호학 책이라고 주장한다!, HSM, 임곗값 암호학 등 오늘날 실제로 대규모로 사용되는 사례로 이 책을 채웠다. 수식이 없을 수는 없지만, 우리에게 친숙한 앨리스와 밥을 포함해 수많은 그림을 삽입해 알기 쉽게 설명하려 노력했다. 저자 본인 역시 대학에서 배운 타원 곡선 수학이 현실 세계 알고리즘에서 어떻게 사용되는지 알 수 없었고, 많은 개발자가 ‘구현’을 잘못해 보안 실패를 초래하고 있기에, 장마다 ‘좋은’ 라이브러리를 골라 자바, 자바스크립트, 고랭, 러스트 등 다양한 언어로 작성한 예제 스니펫을 담았다.
풍부한 도표와 사례 덕분에 개발자, 시스템 관리자, 보안 실무자는 인증, 암호화, 비밀 유지 등 암호학 개념을 익히고 공격자보다 앞서기 위한 도구, 프레임워크, 프로토콜을 배울 수 있다. 해시 함수와 서명 등 기초부터 HTTPS와 보안 메시징 등 암호학 프로토콜, 그리고 양자 후 암호학(양자 내성 암호학과 암호화폐 등 첨단 기술까지 살펴보는, 가장 실용적이며 가장 현대적인 암호학 책이다.
주요 내용
■ 암호학 활용 시의 베스트 프랙티스
■ 암호학 알고리즘에 대한 그림과 해설
■ 디지털 서명 및 영지식 증명 구현
■ 공격 등에 대비하기 위한 하드웨어 솔루션
■ 나쁜 프랙티스를 식별하고 고치는 법
■ 문제별로 적합한