간편결제, 신용카드 청구할인
인터파크 롯데카드 5% (29,070원)
(최대할인 10만원 / 전월실적 40만원)
북피니언 롯데카드 30% (21,420원)
(최대할인 3만원 / 3만원 이상 결제)
NH쇼핑&인터파크카드 20% (24,480원)
(최대할인 4만원 / 2만원 이상 결제)
Close

리얼월드 암호학 : 블록체인과 양자 컴퓨팅까지 그림과 사례로 실용적으로 익히는 현대 암호학[초판]

원제 : Real-World Cryptography
소득공제

2013년 9월 9일 이후 누적수치입니다.

판매지수 89
?
판매지수란?
사이트의 판매량에 기반하여 판매량 추이를 반영한 인터파크 도서에서의 독립적인 판매 지수입니다. 현재 가장 잘 팔리는 상품에 가중치를 두었기 때문에 실제 누적 판매량과는 다소 차이가 있을 수 있습니다. 판매량 외에도 다양한 가중치로 구성되어 최근의 이슈도서 확인시 유용할 수 있습니다. 해당 지수는 매일 갱신됩니다.
Close
공유하기
정가

34,000원

  • 30,600 (10%할인)

    1,700P (5%적립)

할인혜택
적립혜택
  • I-Point 적립은 마이페이지에서 직접 구매확정하신 경우만 적립 됩니다.
추가혜택
배송정보
  • 3/28(화) 이내 발송 예정  (서울시 강남구 삼성로 512)
  • 무료배송
주문수량
감소 증가
  • 이벤트/기획전

  • 연관도서

  • 상품권

AD

책소개

세상에서 가장 실용적인 암호학 가이드북

암호학은 IT 보안의 필수 기반이다. 시스템 공격자보다 앞서려면 네트워크와 애플리케이션을 보호할 도구, 프레임워크, 프로토콜을 이해해야 한다. 이 책은 개발자, 시스템 관리자, 보안 실무자를 위한 실용적인 기술을 가르친다. 복잡한 수학이나 전문용어 대신 다양한 그림과 실제 사례를 통해 현대 암호학 기법을 설명한다. 해시 함수, 서명, HTTPS, 보안 메시징, 양자 내성 암호학, 암호화폐 등 기본 요소부터 최첨단 기술까지 배울 수 있다. TLS를 포함한 인터넷 표준에 적극적으로 기여하고 있는 암호학 엔지니어가 필드에 처음 입문하는 실무자도 읽을 수 있게 집필했다.

출판사 서평

수식 대신 그림, 역사 대신 사례, 이론 대신 응용으로 배우는 암호학의 현재와 미래

암호학은 웹 API, 유저 서비스, 블록체인 등 IT 보안의 근간이지만, 유달리 읽을 만한 책이 없다. 카이사르 암호나 비즈네르 암호 같은 역사로 시작하는 책은 지겹다. 현대 암호학이 어떤 요소로 구성되었는지, 어떤 프로토콜이 자주 쓰이며, 어떤 공격 사례가 있었는지, 양자 컴퓨터가 나온 마당에 암호학의 미래는 어떻게 될 것인지. 실무자가 궁금한 건 이런 내용이다.

이 책의 저자는 암호학의 역사나 레거시 알고리즘 대신 TLS, 노이즈 프로토콜 프레임워크, 시그널 프로토콜, 암호화폐(저자는 이 책이 암호화폐를 한 챕터로 다루는 최초의 암호학 책이라고 주장한다!), HSM, 임곗값 암호학 등 오늘날 실제로 대규모로 사용되는 사례로 이 책을 채웠다. 수식이 없을 수는 없지만, 우리에게 친숙한 앨리스와 밥을 포함해 수많은 그림을 삽입해 알기 쉽게 설명하려 노력했다. 저자 본인 역시 대학에서 배운 타원 곡선 수학이 현실 세계 알고리즘에서 어떻게 사용되는지 알 수 없었고, 많은 개발자가 ‘구현’을 잘못해 보안 실패를 초래하고 있기에, 장마다 ‘좋은’ 라이브러리를 골라 자바, 자바스크립트, 고랭, 러스트 등 다양한 언어로 작성한 예제 스니펫을 담았다.

풍부한 도표와 사례 덕분에 개발자, 시스템 관리자, 보안 실무자는 인증, 암호화, 비밀 유지 등 암호학 개념을 익히고 공격자보다 앞서기 위한 도구, 프레임워크, 프로토콜을 배울 수 있다. 해시 함수와 서명 등 기초부터 HTTPS와 보안 메시징 등 암호학 프로토콜, 그리고 양자 후 암호학(양자 내성 암호학)과 암호화폐 등 첨단 기술까지 살펴보는, 가장 실용적이며 가장 현대적인 암호학 책이다.

주요 내용
■ 암호학 활용 시의 베스트 프랙티스
■ 암호학 알고리즘에 대한 그림과 해설
■ 디지털 서명 및 영지식 증명 구현
■ 공격 등에 대비하기 위한 하드웨어 솔루션
■ 나쁜 프랙티스를 식별하고 고치는 법
■ 문제별로 적합한 암호학 도구 선택하기

추천사

맹윤호(이화여자대학교 신산업융합대학 겸임교수, 전 IBM Data & AI Engineer)
워렌 버핏은 수영장에 가득 찼던 물이 빠지면 누가 발가벗고 수영하고 있었는지 알 수 있다고 말했다. 금리가 올라가고 풀려 있던 유동성이 회수되면서 블록체인, 코인, NFT의 바람을 타고 실체 없이 우후죽순 생겨났던 부실 기업들은 하나둘 역사의 뒤안길로 사라져가고 있다. 《리얼월드 암호학》은 이런 시점에서 내실을 다질 수 있는 몇 안 되는 소중한 책이다. 기초적인 해시 함수부터 시작해 최근 각광받는 영지식 증명(ZKP)에 이르기까지 블록체인의 근간을 이루는 핵심 기술의 구체적인 개념들을 친절하게 설명해준다. 또 한 번의 Web 3.0의 봄을 위한 든든한 뿌리와 같은 서적이다. 물이 들어올 때 노를 저을 수 있는 사람은 썰물일 때에도 착실하게 노를 준비해온 사람이다. 이 책과 함께 탄탄한 내실을 다져 만조(滿潮)를 대비해보자.

장형규(클레이튼 블록체인 코어 개발자)
학부생 때 이 책이 있었다면, 암호학이 어렵고 지루한 분야라는 생각은 하지 않았을지도 모른다. 졸업 후 블록체인 업계에서 일하면서 암호학에 대한 전반적인 이해를 지속적으로 요구받았다. 블록체인은 특히 기술적으로 봤을 때 데이터 저장 방식, 계정, P2P 통신 등 거의 모든 부분에서 암호학이 근간이 되어 돌아가는 하나의 시스템이다. 이 책은 암호학에 조예가 없는 나 같은 사람도 소설 읽듯이 편안하게 읽을 수 있었으며, 암호학 이론뿐 아니라 실제 프로덕션 레벨에서 암호학이 어떻게 사용되는지 전체적인 시야를 갖출 수 있게 해주었다. 컴퓨터 잘하는 선배에게 물어보듯이, 암호학이 이따금 어려워질 때 두고두고 꺼내 읽을 책이다.

이재승(라인 소프트웨어 엔지니어)
실무에서 필요한 암호학을 빠르게 습득하기 위한 입문서가 드디어 세상에 나왔다. 대학원 시절 네트워크, 블록체인 등과 연결된 다양한 암호학 개념을 습득하기 위해 정말 고생했던 기억이 있다. 다른 분야와 달리 양질의 도서가 많지 않았고, 이 책에서도 언급하듯 응용 암호학보다는 오래전에 쓰인 고전 암호학 중심 도서만 존재했다. 《리얼월드 암호학》은 이러한 가려운 부분을 잘 긁어주는 서적이다. 기본적인 대칭/비대칭 암호화 알고리즘부터 SSL/TLS, ZKP까지 현대 암호학 및 응용에 대해 알차게 다룬다. 해당 책을 교두보로 삼아 관심 있는 알고리즘 위주로 논문, 구현 코드 등을 살펴본다면 실무에서 큰 도움을 받을 수 있으리라 생각한다.

조규남(LG유플러스 AI/Data 엔지니어링 담당 전문위원)
Attack at Dawn! 십수 년 전 대칭 키 암호를 배울 때 접했던 평문이다. 전쟁 지령 등 특별한 상황에서나 사용되던 암호가, 디지털이 일반화된 현대에서는 없어서는 안 될 기술이 되었다. 없어서는 안 될 기술 정도가 아니라, 사용되고 있는지도 모르고 동작하는 기술이 되었다. 게다가 암호를 사용해서 투자를 하는 세상이기도 하다. 암호학은 현재 소프트웨어 기술에서 필수적인 요소가 되었다. 이 책은 암호학을 이해하고 개발에 활용하기 위한 기본적인 내용을 신기할 정도로 탄탄하게 설명한다. 특히 2장 해시 함수, 8장 무작위성과 비밀, 9장 보안 전송은 암호학뿐 아니라 소프트웨어 개발에 필요한 중요한 기술이다. 개인적으로는 14장 양자 컴퓨터 시대의 암호학과 15장 차세대 암호학(동형 암호화)은 매우 관심이 많은 주제라 좋은 책을 미리 볼 수 있게 된 것이 큰 행운이었다. 책 서문에 쓰여 있듯 다양한 독자의 지적 호기심을 채워줄 수 있는 좋은 책이라고 생각한다. 좋은 책을 집필한 데이비드 웡 작가와 옮긴이 임지순 님에게 감사의 마음을 전하며, 이 책을 길잡이로 암호학에 들어선 독자 여러분에게 무한한 응원을 보낸다.

목차

옮긴이 머리말 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
__3.4.3 쿠키의 정합성 61
__3.4.4 해시 테이블 62
3.5 실무에서의 MAC 62
__3.5.1 해시 기반 MAC, HMAC 62
__3.5.2 cSHAKE 기반 MAC, KMAC 63
3.6 SHA-2와 가변 길이 공격 64
요약 67

CHAPTER 4 인증 암호화 69
4.1 암호문이란? 70
4.2 AES 블록 암호화 71
__4.2.1 AES가 제공하는 보안의 수준 72
__4.2.2 AES의 인터페이스 73
__4.2.3 AES의 내부 74
4.3 암호화된 펭귄, 그리고 CBC 모드 75
4.4 인증이 필요하면? AES-CBC-HMAC 78
4.5 올인원 구조: 인증 암호화 80
__4.5.1 AEAD 80
__4.5.2 AES-GCM AEAD 82
__4.5.3 ChaCha20-Poly1305 86
4.6 그 밖의 대칭 암호화 90
__4.6.1 키 래핑 91
__4.6.2 논스 오용 방지 인증 암호화 91
__4.6.3 디스크 암호화 91
__4.6.4 데이터베이스 암호화 92
요약 92

CHAPTER 5 키 교환 95
5.1 키 교환이란? 96
5.2 DH 키 교환 99
__5.2.1 군론 99
__5.2.2 디피-헬먼의 기반, 이산 로그 문제 103
__5.2.3 디피-헬먼 표준 105
5.3 ECDH 키 교환 106
__5.3.1 타원 곡선이란? 107
__5.3.2 ECDH 키 교환의 작동 원리 110
__5.3.3 타원 곡선 디피-헬먼의 표준 112
5.4 작은 부분군 공격과 그 밖의 보안 고려 사항 114
요약 117

CHAPTER 6 비대칭 암호화와 하이브리드 암호화 119
6.1 비대칭 암호화란? 120
6.2 실전 비대칭 암호화와 하이브리드 암호화 122
__6.2.1 키 교환 및 키 캡슐화 122
__6.2.2 하이브리드 암호화 123
6.3 RSA 비대칭 암호화: 최악과 차악 127
__6.3.1 교과서 RSA 127
__6.3.2 RSA PKCS#1 v1.5를 쓰지 않는 이유 131
__6.3.3 RSA-OAEP 비대칭 암호화 133
6.4 ECIES 하이브리드 암호화 136
요약 138

CHAPTER 7 서명과 영지식 증명 139
7.1 서명이란? 140
__7.1.1 실전에서 서명하고 서명을 검증하는 방법 141
__7.1.2 서명의 주된 사용: 인증된 키 교환 142
__7.1.3 실세계의 사용 사례: 공개 키 인프라 143
7.2 ZKP: 서명의 근원 144
__7.2.1 슈노어 식별 프로토콜: 대화형 ZKP 145
__7.2.2 비대화형 ZKP로서의 서명 148
7.3 권장하는 서명 알고리즘 149
__7.3.1 불안한 표준, RSA PKCS#1 v1.5 150
__7.3.2 개선된 표준, RSA-PSS 153
__7.3.3 ECDSA 154
__7.3.4 EdDSA 157
7.4 서명 체계의 미묘한 속성 160
__7.4.1 대체 공격 160
__7.4.2 서명의 가단성 162
요약 162

CHAPTER 8 무작위성과 비밀 165
8.1 무작위성이란? 166
8.2 느린 무작위성? PRNG를 쓰세요 167
8.3 실전에서 무작위성 확보하기 171
8.4 난수 생성과 보안 고려 사항 173
8.5 공개적 무작위성 175
8.6 키 파생과 HKDF 177
8.7 키 관리와 비밀 관리 181
8.8 임곗값 암호학을 통한 신뢰의 탈중앙화 183
요약 186

PART II 프로토콜: 암호학의 레시피

CHAPTER 9 보안 전송 189
9.1 보안 전송 프로토콜, SSL과 TLS 190
__9.1.1 SSL에서 TLS로 190
__9.1.2 실전에서 TLS 활용하기 191
9.2 TLS 프로토콜의 작동 원리 193
__9.2.1 TLS 핸드셰이크 194
__9.2.2 TLS 1.3이 애플리케이션 데이터를 암호화하는 방법 207
9.3 암호화된 웹의 현재 208
9.4 기타 전송 프로토콜 211
9.5 TLS에 대한 현대적인 대안, 노이즈 프로토콜 프레임워크 211
__9.5.1 노이즈의 다양한 핸드셰이크 212
__9.5.2 노이즈의 핸드셰이크 213
요약 214

CHAPTER 10 종단 간 암호화 215
10.1 종단 간 암호화가 왜 필요한가? 216
10.2 어디에서도 찾을 수 없는 신뢰의 근원 217
10.3 이메일 암호화의 실패 219
__10.3.1. PGP? GPG? 어떻게 작동할까? 219
__10.3.2 사용자 간의 신뢰를 확장시키는 신뢰의 웹 222
__10.3.3 진짜 이슈는 키 발견 223
__10.3.4 PGP가 아니라면, 대안은? 224
10.4 보안 메시징: 시그널을 활용한 현대적 종단 간 암호화 226
__10.4.1 신뢰하되, 검증하라. WOT보다 사용자 친화적으로 227
__10.4.2 시그널 프로토콜의 핸드셰이크, X3DH 230
__10.4.3 시그널의 핸드셰이크 후 프로토콜, 더블 래칫 233
10.5 종단 간 암호화의 현재 238
요약 240

CHAPTER 11 사용자 인증 243
11.1 인증 복습하기 243
11.2 사용자 인증, 비밀번호를 없애기 위한 여정 245
__11.2.1 비밀번호의 지배자, SSO와 비밀번호 관리자 248
__11.2.2 비밀번호 노출을 막고 싶다고요? 비대칭 비밀번호 인증 키 교환을 쓰세요 249
__11.2.3 O TP는 실제 비밀번호가 아니다. 대칭 키를 사용하여 비밀번호 없이 전환하기 253
__11.2.4 비대칭 키로 비밀번호 대체하기 257
11.3 사용자 지원 인증: 사람의 도움으로 장치 페어링하기 260
__11.3.1 미리 공유된 키 261
__11.3.2 CPace를 사용한 대칭 비밀번호 인증 키 교환 263
__11.3.3 내 키 교환이 MITM 공격을 당했나? SAS를 확인하자 264
요약 267

CHAPTER 12 ‘암호화폐’의 ‘암호’? 269
12.1 BFT 합의 알고리즘에 대한 간단한 소개 270
__12.1.1 회복력의 문제: 구조를 위한 분산 프로토콜 270
__12.1.2 신뢰의 문제를 해결하는 탈중앙화 272
__12.1.3 규모의 문제: 무허가 및 검열 방지 네트워크 273
12.2 비트코인의 작동 방식 275
__12.2.1 비트코인이 사용자 잔고와 트랜잭션을 관리하는 방법 276
__12.2.2 디지털 금광 시대, BTC를 채굴한다는 것 278
__12.2.3 포크 지옥! 채굴 분쟁 해결 281
__12.2.4 머클 트리를 사용하여 블록 크기 줄이기 284
12.3 암호화폐 둘러보기 286
__12.3.1 변동성 286
__12.3.2 지연 시간 286
__12.3.3 블록체인의 크기 287
__12.3.4 기밀성 287
__12.3.5 에너지 효율 288
12.4 디엠BFT: BFT 합의 프로토콜 288
__12.4.1 BFT 합의 프로토콜의 두 속성, 안전성과 활성 288
__12.4.2 디엠BFT 프로토콜의 라운드 289
__12.4.3 프로토콜은 부정직함을 어느 정도까지 허용할 수 있는가? 290
__12.4.4 디엠BFT 투표 규칙 291
__12.4.5 트랜잭션은 언제 확정되는가? 292
__12.4.6 디엠BFM의 안전성에 숨은 직관 293
요약 295

CHAPTER 13 하드웨어 암호학 297
13.1 현대 암호학의 공격자 모델 297
13.2 비신뢰 환경의 구원자, 하드웨어 299
__13.2.1 화이트박스 암호학 300
__13.2.2 스마트 카드와 보안 요소 300
__13.2.3 은행이 사랑한 HSM 303
__13.2.4. 보안 요소의 훌륭한 표준화, TPM 305
__13.2.5 TEE를 이용한 보안 컴퓨팅 308
13.3 어떤 솔루션을 고를까? 309
13.4 누출 저항 암호학, 그리고 사이드채널 공격 방어법 311
__13.4.1 상수 시간 프로그래밍 313
__13.4.2 마스킹과 블라인드 315
__13.4.3 결함 공격 대처법 316
요약 316

CHAPTER 14 양자 컴퓨터 시대의 암호학 319
14.1 양자 컴퓨터가 뭐길래? 320
__14.1.1 작은 것에 대한 탐구, 양자역학 320
__14.1.2 양자 컴퓨터의 탄생으로부터 양자 우위까지 323
__14.1.3 그로버와 쇼어의 알고리즘 324
__14.1.4 양자 컴퓨터에 맞서는 양자 후 암호학 326
14.2 해시 함수만 있으면 된다! 해시 기반 서명 326
__14.2.1 램포트 서명을 통한 OTS 327
__14.2.2 WOTS와 작은 키 329
__14.2.3 XMSS와 SPHINCS+를 통한 다회 서명 330
14.3 격자 기반 암호학을 사용한 더 짧은 키 및 서명 333
__14.3.1 격자란? 333
__14.3.2 오류를 통한 학습 335
__14.3.3 격자 기반 키 교환, 카이버 337
__14.3.4 격자 기반 서명 체계, 다이리튬 339
14.4 양자 컴퓨터는 공포인가? 340
요약 342

CHAPTER 15 차세대 암호학 345
15.1 함께할수록 좋은 MPC 346
__15.1.1 PSI 347
__15.1.2 범용 MPC 348
__15.1.3 MPC의 현재 350
15.2 FHE, 그리고 암호화 클라우드의 미래 350
__15.2.1 RSA 암호화와 동형 암호화의 예 351
__15.2.2 다양한 동형 암호화 351
__15.2.3 FHE의 열쇠, 부트스트래핑 352
__15.2.4 오류를 통한 학습 기반 FHE 체계 354
__15.2.5 어디에 사용할까? 356
15.3 범용 ZKP 357
__15.3.1 zk-SNARK의 작동 원리 359
__15.3.2 증거의 일부를 숨기는 동형 커밋 360
__15.3.3 동형 커밋을 개선하는 쌍선형 페어링 361
__15.3.4 간결성은 어디에? 361
__15.3.5 프로그램을 다항식으로 362
__15.3.6 프로그램은 컴퓨터를 위한 것. 우리에게 필요한 것은 산술 회로 363
__15.3.7 R1CS 산술 회로 364
__15.3.8 R1CS에서 다항식까지 364
__15.3.9 지수에 숨은 다항식을 계산하기 365
요약 367

CHAPTER 16 암호학의 끝 369
16.1 알맞은 암호학 프리미티브 또는 프로토콜을 찾는 지루한 작업 370
16.2 암호학 프리미티브 및 프로토콜을 사용하는 법? 표준과 형식 검증 371
16.3 좋은 라이브러리는 어디에? 374
16.4 개발자가 적? 암호학의 오용 376
16.5 사용이 편한 보안 377
16.6 암호학은 섬이 아니다 378
16.7 암호학 실무자의 책임: 자신의 암호학을 시험하지 말자 379

요약 381
연습 문제 정답 383
찾아보기 388

본문중에서

앨리스(Alice) 여왕이 멀리 있는 성에 사는 밥(Bob) 경에게 편지를 보내야 하는 상황을 가정하자. 앨리스 여왕은 밥 경에게 귀중한 메시지를 전하기 위해 충성스러운 전령(messenger)에게 믿음직한 말을 타고 위험한 땅을 가로질러 떠나도록 요청한다. 그러나 그녀는 전령을 완전히 믿지 못한다. (…) 앨리스 여왕에게 필요한 것은, 중개인 없이 밥 경에게 메시지를 전달하는 행위를 모방한 프로토콜이다. 이는 암호학(또는 순간이동)을 도입하지 않는 한 실제 푸는 것이 불가능한 문제다. 이를 해결하기 위해 오래전에 발명된 암호학적 알고리즘이 바로 대칭 암호화 알고리즘(symmetric encryption algorithm, 사이퍼(cipher)라고도 함)이다. (5쪽)

이 문제는 필자가 기술 감사 과정에서 여러 번 발견했던 취약점이기도 하다. 인증 태그 검증 시, 수신한 인증 태그와 계산한 인증 태그의 비교가 상수 시간(constant time) 내에 이루어져야 한다. 즉 수신된 태그가 올바른 크기라고 가정할 때 비교에 항상 동일한 시간이 소요되어야 한다. 두 인증 태그를 비교하는 데 걸리는 시간이 일정하지 않은 것은 비교 중 두 태그가 다른 순간이 반영되었기 때문일 수 있다. 이렇게 되면 검증에 걸리는 시간을 측정한 후 유효한 인증 태그를 바이트 단위로 다시 생성해서 공격하는 것이 가능하다. 이러한 유형의 공격을 타이밍 공격(timing attack)이라 한다. 다음 페이지 만화에서 비유를 통해 설명하고 있다. / 다행히도 MAC를 구현하는 암호학 라이브러리는 인증 태그를 상수 시간에 검증할 수 있는 편리한 함수도 제공한다. 실제로 구현하는 예로, 예제 3.3에서 고랭(Golang)으로 상수 시간에 인증 태그를 비교하도록 구현하는 방법을 볼 수 있다. (59쪽)

먼저 앨리스에게 보내는 메시지를 암호화하려면 앨리스의 공개 키와 여기에서 생성한 키 쌍(이를 임시(ephemeral) 키 쌍이라 함)으로 (EC)DH 기반 키 교환을 사용한다. 그런 다음 AES-GCM과 같은 인증된 대칭 암호화 알고리즘으로 획득한 공유 비밀을 사용하여 앨리스에게 보낼 더 긴 메시지를 암호화할수 있다(그림 6.19). / 그런 다음 임시 공개 키와 암호문을 앨리스에게 보낼 수 있다. 앨리스는 임시 공개 키를 사용하여 자신의 키 쌍과 키 교환을 수행한다. 그러면 결과를 사용하여 암호문을 복호화하고 원본 메시지를 받을 수 있다. (136쪽)

암호학 말고도 무작위성이 필요한 곳은 무궁무진하다. 예를 들어 ls와 같은 간단한 유닉스 프로그램에도 무작위성이 필요하다! 프로그램의 버그가 악용되면 치명적인 일이 생길 수 있으므로, 바이너리는 다양한 트릭을 사용하여 저수준의 공격을 방어하려 시도한다. 그중 하나는 주소 공
간 레이아웃 무작위화(address space layout randomization, ASLR)로, 실행될 때마다 프로세스의 메모리 레이아웃을 무작위로 지정하므로 무작위 숫자가 필요하다. 또 다른 예는 네트워크 프로토콜 TCP로, 연결을 생성할 때마다 난수를 사용하여 예측할 수 없는 일련의 숫자를 생성하고 연결을 가로채려는 공격을 저지한다. (…) (늘 그렇듯) 남들과 다르게 하기를 원하는 NIST는 PRNG를 결정론적 랜덤 비트 생성기(deterministic random bit generator, DRBG)라 부른다. (167~168쪽)

어떤 공격자는 장치에 여유 있게 접근할 수 있지만 어떤 공격자는 제한된 시간 동안 공격을 해내야 한다. 다음 시나리오를 상상해보자. 당신이 스마트폰이나 노트북을 호텔 방에 방치해뒀는데, ‘악의적인’ 메이드가 들어와 장치를 열고 저예산의 도구를 사용하여 시스템을 수정한 다음 장치를 원래 자리에 두었다. 당신이 방으로 돌아왔을 때 장치는 원래 자리에 있으며 아무도 손대지 않은 것 같다. 이는 악한 메이드 공격(evil maid attack)으로 알려져 있으며 많은 상황에 일반화될 수 있다(예: 비행 중 체크인 수하물 안에 장치를 휴대하거나, 안전하지 않은 데이터 센터에 민감한 키를 저장하는 등). (299쪽)

오늘날 사용되는 대부분의 비대칭 알고리즘은 이산 로그 또는 인수분해 문제에 의존하기에, 쇼어의 알고리즘은 비대칭 암호학에 치명적이다. 물론 이산 로그와 인수분해는 여전히 어려운 수학 문제며, 양자 컴퓨터에 대한 방어를 업그레이드하기 위해 알고리즘 파라미터의 크기를 키울 수도 있다. 하지만 안타깝게도, 2017년에 번슈타인 등은 파라미터의 확장이 효과는 있지만 매우 비실용적임을 보여주었다. 이 연구는 RSA의 매개변수를 1테라바이트까지 증가시켜야 양자 저항성을 만들 수 있다고 추정했다. 이 정도의 파라미터 크기는 비현실적이다. (325쪽)

관련이미지

저자소개

데이비드 웡 [저] 신작알림 SMS신청
생년월일 -

O(1) Labs의 수석 암호학 엔지니어로서 미나(Mina) 암호화폐를 연구하고 있다. 그 전에는 메타의 자회사 노비에서 디엠(전 리브라) 암호화폐의 보안 리더였고, 그 전에는 NCC 그룹의 암호학 서비스의 보안 컨설턴트였다. OpenSSL과 Let’s Encrypt 등 여러 공적 자금 지원 오픈소스 감사에 참여했다. 블랙햇과 DEFCON 등 다양한 콘퍼런스에서 강연했으며, 블랙햇에서 암호학 과정을 정기적으로 맡았다. TLS 1.3과 노이즈 프로토콜 프레임워크 등의 표준에 기여했다. 고 언어 표준 라이브러리(CVE-2016-3959)라든가 여러 TLS 라이브러리(CVS-2018-12404 등)에서 보안 취약

펼쳐보기
임지순 [역] 신작알림 SMS신청
생년월일 -

블록체인 에반젤리스트. 하드웨어 엔지니어로 커리어를 시작하여 소프트웨어 엔지니어, 프로젝트 매니저를 거쳐 현재는 블록체인 사업 개발 영역을 개척하고 있으며, 암호경제학과 IP의 연결 고리에 관심이 크다. 번역한 책으로 『이더리움과 솔리디티 입문』, 『라즈베리 파이로 배우는 컴퓨터 아키텍처』(이상 위키북스), 『Make: 드론』(한빛미디어) 등이 있다.

전공도서/대학교재 분야에서 많은 회원이 구매한 책

    리뷰

    0.0 (총 0건)

    100자평

    작성시 유의사항

    평점
    0/100자
    등록하기

    100자평

    0.0
    (총 0건)

    판매자정보

    • 인터파크도서에 등록된 오픈마켓 상품은 그 내용과 책임이 모두 판매자에게 있으며, 인터파크도서는 해당 상품과 내용에 대해 책임지지 않습니다.

    상호

    (주)교보문고

    대표자명

    안병현

    사업자등록번호

    102-81-11670

    연락처

    1544-1900

    전자우편주소

    callcenter@kyobobook.co.kr

    통신판매업신고번호

    01-0653

    영업소재지

    서울특별시 종로구 종로 1(종로1가,교보빌딩)

    교환/환불

    반품/교환 방법

    ‘마이페이지 > 취소/반품/교환/환불’ 에서 신청 또는 1:1 문의 게시판 및 고객센터(1577-2555)에서 신청 가능

    반품/교환가능 기간

    변심 반품의 경우 출고완료 후 6일(영업일 기준) 이내까지만 가능
    단, 상품의 결함 및 계약내용과 다를 경우 문제점 발견 후 30일 이내

    반품/교환 비용

    변심 혹은 구매착오로 인한 반품/교환은 반송료 고객 부담
    상품이나 서비스 자체의 하자로 인한 교환/반품은 반송료 판매자 부담

    반품/교환 불가 사유

    ·소비자의 책임 있는 사유로 상품 등이 손실 또는 훼손된 경우
    (단지 확인을 위한 포장 훼손은 제외)

    ·소비자의 사용, 포장 개봉에 의해 상품 등의 가치가 현저히 감소한 경우
    예) 화장품, 식품, 가전제품(악세서리 포함) 등

    ·복제가 가능한 상품 등의 포장을 훼손한 경우
    예) 음반/DVD/비디오, 소프트웨어, 만화책, 잡지, 영상 화보집

    ·시간의 경과에 의해 재판매가 곤란한 정도로 가치가 현저히 감소한 경우

    ·전자상거래 등에서의 소비자보호에 관한 법률이 정하는 소비자 청약철회 제한 내용에 해당되는 경우

    상품 품절

    공급사(출판사) 재고 사정에 의해 품절/지연될 수 있음

    소비자 피해보상
    환불지연에 따른 배상

    ·상품의 불량에 의한 교환, A/S, 환불, 품질보증 및 피해보상 등에 관한 사항은 소비자분쟁해결 기준 (공정거래위원회 고시)에 준하여 처리됨

    ·대금 환불 및 환불지연에 따른 배상금 지급 조건, 절차 등은 전자상거래 등에서의 소비자 보호에 관한 법률에 따라 처리함

    (주) 인터파크커머스 안전결제시스템 (에스크로) 안내

    (주)인터파크커머스의 모든 상품은 판매자 및 결제 수단의 구분없이 회원님들의 구매안전을 위해 안전결제 시스템을 도입하여 서비스하고 있습니다.
    결제대금 예치업 등록 : 02-006-00064 서비스 가입사실 확인

    배송안내

    • 교보문고 상품은 택배로 배송되며, 출고완료 1~2일내 상품을 받아 보실 수 있습니다.

    • 출고가능 시간이 서로 다른 상품을 함께 주문할 경우 출고가능 시간이 가장 긴 상품을 기준으로 배송됩니다.

    • 군부대, 교도소 등 특정기관은 우체국 택배만 배송가능합니다.

    • 배송비는 업체 배송비 정책에 따릅니다.

    • - 도서 구매 시 15,000원 이상 무료배송, 15,000원 미만 2,500원 - 상품별 배송비가 있는 경우, 상품별 배송비 정책 적용