장바구니 담기 close

장바구니에 상품을 담았습니다.

TLS 구현으로 배우는 암호학

TLS 구현으로 배우는 암호학

  • 박승원
  • |
  • 에이콘출판
  • |
  • 2020-06-30 출간
  • |
  • 328페이지
  • |
  • 188 X 235 X 19 mm
  • |
  • ISBN 9791161754284
판매가

30,000원

즉시할인가

27,000

배송비

무료배송

(제주/도서산간 배송 추가비용:3,000원)

수량
+ -
총주문금액
27,000

※ 스프링제본 상품은 반품/교환/환불이 불가능하므로 신중하게 선택하여 주시기 바랍니다.

출판사서평




★ 이 책에서 다루는 내용 ★
■ TLS 구현을 통한 암호화 알고리즘의 필요성과 의미를 이해할 수 있다.
■ 암호학 전반에 걸친 통찰력을 얻을 수 있다.
■ TLS 1.2와 더불어 최신 TLS 1.3을 반영했다.
■ 한 가지 암호화 알고리즘에 집중해 암호학을 깊이 있게 이해하고 자신감을 얻을 수 있다.
■ 예시와 코드를 통해 암호학을 구체적이고 쉽게 설명한다.
■ 기본이 되는 수학 내용을 설명해 암호학을 깊이 있게 이해할 수 있는 토대를 만든다.
■ 코드를 구현하면서 추상적인 개념을 단순명료하게 클래스화할 수 있는 코딩 능력을 기를 수 있다.
■ 여러 문서에 흩어진 복잡한 TLS 표준 정의를 한곳에서 찾아볼 수 있다.

★ 이 책의 대상 독자 ★
■ HTTPS의 작동 원리가 궁금한 사람
■ 기초적인 C, C++ 지식을 기반으로 암호학을 처음 배우려는 사람
■ 암호학을 배웠으나 난해한 설명 때문에 제대로 이해하지 못 했던 사람
■ 예시와 구체적인 코드 구현으로 암호 알고리즘과 TLS의 수학 이론을 좀 더 쉽게 알고 싶은 사람

★ 이 책의 구성 ★
제Ⅰ편, ‘암호학의 기초’에서는 TLS의 근간을 이루는 암호 알고리즘(키 교환, 인증, 암호화, 해쉬)의 배경 이론을 살펴보고, 수학적 정의와 코드 예제를 통해 이를 확실히 이해한다.

제Ⅱ편, ‘TLS 1.2의 구조’에서는 어떤 절차를 통해 암호화 통신이 이뤄지는지 알아보고 각 절차에 해당하는 메시지의 구조를 자세히 살펴본다. 이와 함께 각 메시지에서 사용하는 여러 함수와 데이터 구조를 정의한다.

제Ⅲ편, ‘TLS 1.2의 구현’에서는 2편에서 살펴본 각 절차에 해당하는 메시지를 생성하거나 분석할 함수를 독립된 멤버 함수로 가지는 TLS 1.2 클래스를 구현한다.

제Ⅳ편, ‘TLS 1.2의 테스트’에서는 전 편에서 구현한 클래스를 테스트한다. TCP/IP를 이용해 편리하게 네트워킹할 수 있는 클래스를 구현해, 네트워크상에서도 TLS 1.2 클래스를 테스트해본다.

제Ⅴ편, ‘TLS 1.3’에서는 TLS 1.2와 다른 점을 중심으로 TLS 1.3을 살펴보고, 이를 TLS 1.2 클래스를 상속받아 구현한다. 그리고 웹 서버와 클라이언트 사이에서 암호화 통신을 매개하는 미들 서버를 구현하고 TLS 1.3 클래스를 직접 사용해본다.


목차


제Ⅰ편 암호학의 기초

제1장 키 교환 알고리즘
제1절 디피 헬만
1.1 수학적 배경
1.2 나머지를 이용한 계산의 간소화
1.3 디피 헬만 키 교환의 예
1.4 GNU Multiprecision Library
1.5 클래스 구현
1.6 테스트
제2절 타원곡선
2.1 실수상에서의 타원곡선 방정식
2.2 유한체에서의 타원곡선 방정식
2.3 클래스 구현
2.4 테스트
2.5 X25519 커브

제2장 인증
제1절 RSA
1.1 수학적 증명
1.2 오일러의 정리 mф mod K =1의 증명
1.3 RSA를 이용한 암호화/복호화의 예
1.4 RSA를 이용한 인증
1.5 클래스 구현
1.6 테스트
제2절 ECDSA
2.1 클래스 구현
2.2 테스트

제3장 AES 암호
제1절 rotation 변환과 역변환
제2절 substitution 변환과 역변환
제3절 믹스 컬럼 변환과 역변환
제4절 add round key 변환과 역변환
제5절 AES의 암호화, 복호화 과정
제6절 CBC
제7절 패딩
제8절 GCM

제4장 해쉬
제1절 SHA1
제2절 SHA256
제3절 HMAC

제5장 암호학의 기초를 마치며
제1절 보안의 목표
제2절 비트코인의 암호학


제Ⅱ편 TLS 1.2의 구조

제6장 TLS의 개괄
제1절 TLS의 진행 과정
제2절 TLS 헤더
제3절 핸드쉐이크 헤더

제7장 Client Hello
제8장 Server Hello

제9장 Cerificate
제1절 DER
제2절 PEM
제3절 Base64 인코딩
제4절 인증서에서 공개키의 추출
제5절 인증서 체인의 확인

제10장 Server Key Exchange
제1절 Server Key Exchange 메시지 구조체
제2절 해쉬할 구조체
제3절 서명할 구조체

제11장 Server Hello Done

제12장 Client Key Exchange
제1절 Premaster Secret
제2절 PRF
제3절 Master Secret
제4절 키 확장
제5절 키 재료의 분할 사용

제13장 Change Cipher Spec
제14장 Finished

제15장 레코드 메시지
제1절 AAD 혹은 HMAC 해쉬
제2절 암호화할 구조체
제3절 상대방에게 보낼 레코드 메시지

제16장 Alert 메시지


제Ⅲ편 TLS 1.2의 구현

제17장 디자인 선택

제18장 헤더 구현
제1절 구조체의 패딩과 pragma pack(1)
제2절 TLS 헤더의 구현
제3절 핸드쉐이크 헤더의 구현
제4절 헤더의 구현

제19장 Alert 함수의 구현
제20장 Client Hello 함수의 구현
제21장 Server Hello 함수의 구현
제22장 Certificate 함수의 구현
제23장 Server Key Exchange 함수의 구현
제24장 Server Hello Done 함수의 구현
제25장 Client Key Exchange 함수의 구현
제26장 Change Cipher Spec 함수의 구현
제27장 encode, decode 함수의 구현
제28장 Finished 함수의 구현


제Ⅳ편 TLS 1.2의 테스트

제29장 TCP/IP를 거치지 않는 테스트

제30장 브라우저 세팅과 와이어샤크
제31장 TCP/IP
제1절 네트워크 전송 계층
제2절 브라우저 세팅과 와이어샤크
제3절 네트워킹 클래스의 구현
제4절 암호화되지 않은 TCP/IP 통신

제32장 TLS 1.2를 이용한 통신


제Ⅴ편 TLS 1.3

제33장 TLS 1.3에서 변한 것
제1절 대폭 축소된 사이퍼 수트
제2절 패킷 교환 횟수를 줄인 핸드쉐이킹
제3절 많은 익스텐션의 활용

제34장 HKDF
제1절 함수 정의
제2절 테스트
제3절 HKDF를 이용한 키 스케줄링

제35장 TLS 1.3의 구현
제1절 클라이언트 익스텐션
제2절 서버 익스텐션
제3절 Client Hello와 Server Hello 메시지의 구현
제4절 암호화된 익스텐션
제5절 인증서
제6절 인증서 확인 메시지
제7절 Finished
제8절 TLS 1.3의 인코딩과 디코딩
제9절 핸드쉐이크 함수

제36장 TLS 1.3 테스트
제1절 TLS 1.3 클라이언트
제2절 TLS 1.3을 이용한 미들서버

교환 및 환불안내

도서교환 및 환불
  • ㆍ배송기간은 평일 기준 1~3일 정도 소요됩니다.(스프링 분철은 1일 정도 시간이 더 소요됩니다.)
  • ㆍ상품불량 및 오배송등의 이유로 반품하실 경우, 반품배송비는 무료입니다.
  • ㆍ고객님의 변심에 의한 반품,환불,교환시 택배비는 본인 부담입니다.
  • ㆍ상담원과의 상담없이 교환 및 반품으로 반송된 물품은 책임지지 않습니다.
  • ㆍ이미 발송된 상품의 취소 및 반품, 교환요청시 배송비가 발생할 수 있습니다.
  • ㆍ반품신청시 반송된 상품의 수령후 환불처리됩니다.(카드사 사정에 따라 카드취소는 시일이 3~5일이 소요될 수 있습니다.)
  • ㆍ주문하신 상품의 반품,교환은 상품수령일로 부터 7일이내에 신청하실 수 있습니다.
  • ㆍ상품이 훼손된 경우 반품 및 교환,환불이 불가능합니다.
  • ㆍ반품/교환시 고객님 귀책사유로 인해 수거가 지연될 경우에는 반품이 제한될 수 있습니다.
  • ㆍ스프링제본 상품은 교환 및 환불이 불가능 합니다.
  • ㆍ군부대(사서함) 및 해외배송은 불가능합니다.
  • ㆍ오후 3시 이후 상담원과 통화되지 않은 취소건에 대해서는 고객 반품비용이 발생할 수 있습니다.
반품안내
  • 마이페이지 > 나의상담 > 1 : 1 문의하기 게시판 또는 고객센터 1800-7327
교환/반품주소
  • 경기도 파주시 문발로 211 1층 / (주)북채널 / 전화 : 1800-7327
  • 택배안내 : CJ대한통운(1588-1255)
  • 고객님 변심으로 인한 교환 또는 반품시 왕복 배송비 5,000원을 부담하셔야 하며, 제품 불량 또는 오 배송시에는 전액을 당사에서부담 합니다.