이 상품은 구매 후 지원 기기에서 예스24 eBook앱 설치 후 바로 이용 가능한 상품입니다.
|
1장. 암호화1.1 기초 1.2 고전암호 __1.2.1 시저 암호 __1.2.2 비즈네르 암호 1.3 암호의 작동 방식 __1.3.1 치환 __1.3.2 운영 모드 __1.3.3 고전암호가 안전하지 않은 이유 1.4 완벽한 암호화: 일회용 패드(OTP) __1.4.1 일회용 패드를 이용한 암호화 __1.4.2 일회용 패드가 안전한 이유 1.5 암호의 보안성 __1.5.1 공격 모형 __1.5.2 보안 목표 __1.5.3 보안 개념들 1.6 비대칭 암호화 1.7 암·복호화 이외의 암호의 용도 __1.7.1 인증 암호화 __1.7.2 형태 보존 암호화 __1.7.3 완전 준동형 암호화 __1.7.4 검색 가능 암호화 __1.7.5 조율 가능 암호화 1.8 문제 발생 요인들 __1.8.1 약한 암호 __1.8.2 잘못된 모형 1.9 더 읽을거리 2장. 무작위성2.1 무작위 대 비무작위 2.2 확률분포로서의 무작위성 2.3 엔트로피: 불확실성의 측도 2.4 난수 발생기(RNG)와 의사난수 발생기(PRNG) __2.4.1 PRNG의 작동 방식 __2.4.2 보안 관련 문제 __2.4.3 포르투나: Microsoft의 PRNG __2.4.4 암호학적 PRNG와 비암호학적 PRNG __2.4.5 통계적 검정의 쓸모 없음 2.5 실제로 쓰이는 PRNG들 __2.5.1 Unix 기반 시스템에서 무작위 비트 생성 __2.5.2 Windows의 CryptGenRandom() 함수 __2.5.3 하드웨어 기반 PRNG: 인텔 마이크로프로세서의 RDRAND 명령 2.6 문제 발생 요인들 __2.6.1 불충분한 엔트로피원 __2.6.2 시동 시점의 엔트로피 부족 __2.6.3 비암호 PRNG __2.6.4 무작위성은 강하지만 표본 추출에 문제가 있는 사례 2.7 더 읽을거리 3장. 암호학적 보안3.1 불가능의 정의 __3.1.1 이론적인 보안성: 정보 보안성 __3.1.2 실용적인 보안성: 계산 보안성 3.2 보안성의 정량화 __3.2.1 비트수를 척도로 한 보안성의 측정 __3.2.2 전방위 공격 비용 __3.2.3 보안 수준의 선택과 평가 3.3 보안의 달성 __3.3.1 증명 가능 보안성 __3.3.2 발견법적 보안성 3.4 키 생성 __3.4.1 대칭 키 생성 __3.4.2 비대칭 키 생성 __3.4.3 키의 보호 3.5 문제 발생 요인들 __3.5.1 부정확한 보안성 증명 __3.5.2 하위 호환성을 위한 짧은 키 3.6 더 읽을거리 4장. 블록 암호4.1 블록 암호란 무엇인가? __4.1.1 보안 목표 __4.1.2 블록 크기 __4.1.3 코드북 공격 4.2 블록 암호 구성 __4.2.1 블록 암호의 라운드 __4.2.2 슬라이드 공격과 라운드 키 __4.2.3 대입-치환 네트워크 __4.2.4 파이스텔 방안 4.3 AES(고급 암호화 표준) __4.3.1 AES의 내부 __4.3.2 AES의 사용 예 4.4 AES의 구현 __4.4.1 테이블 기반 구현 __4.4.2 전용 기계어 명령 __4.4.3 AES는 안전한가? 4.5 운영 모드 __4.5.1 전자 코드북(ECB) 모드 __4.5.2 암호 블록 연쇄(CBC) 모드 __4.5.3 CBC 모드에서 임의의 길이의 메시지를 암호화하는 방법 __4.5.4 카운터(CTR) 모드 4.6 문제 발생 요인들 __4.6.1 중간값 일치 공격 __4.6.2 채움 오라클 공격 4.7 더 읽을거리 5장. 스트림 암호5.1 스트림 암호의 작동 방식 __5.1.1 상태 있는 스트림 암호와 카운터 기반 스트림 암호 5.2 하드웨어 지향적 스트림 암호 __5.2.1 FSR(되먹임 자리이동 레지스터) __5.2.2 Grain-128a __5.2.3 A5/1 5.3 소프트웨어 지향적 스트림 암호 __5.3.1 RC4 __5.3.2 Salsa20 5.4 문제 발생 요인들 __5.4.1 논스 재사용 __5.4.2 잘못된 RC4 구현 __5.4.3 하드웨어로 구현된 약한 암호 5.5 더 읽을거리 6장. 해시 함수6.1 보안 해시 함수 __6.1.1 다시 등장한 비예측성 __6.1.2 역상 저항성 __6.1.3 충돌 저항성 __6.1.4 충돌 찾기 6.2 해시 함수의 구축 __6.2.1 압축 기반 해시 함수: 머클-담고르 구성 __6.2.2 치환 기반 해시 함수: 스펀지 함수 6.3 SHA족 해시 함수 __6.3.1 SHA-1 __6.3.2 SHA-2 __6.3.3 SHA-3 공모전 __6.3.4 Keccak (SHA-3) 6.4 BLAKE2 해시 함수 6.5 문제 발생 요인들 __6.5.1 길이 연장 공격 __6.5.2 저장증명 프로토콜 속이기 6.6 더 읽을거리 7장. 키 있는 해싱7.1 메시지 인증 코드(MAC) __7.1.1 보안 통신에 쓰이는 MAC __7.1.2 위조 공격과 선택된 메시지 공격 __7.1.3 재전송 공격 7.2 의사난수 함수(PRF) __7.2.1 PRF의 보안성 __7.2.2 PRF가 MAC보다 강한 이유 7.3 키 없는 해시로 키 있는 해시 구축 __7.3.1 비밀 값 전위 구성 __7.3.2 비밀 값 후위 구성 __7.3.3 HMAC 구성 __7.3.4 해시 기반 MAC에 대한 일반적 공격 방법 하나 7.4 블록 암호로 키 있는 해시 구축: CMAC __7.4.1 CBC-MAC에 대한 공격 __7.4.2 CBC-MAC 고치기 7.5 전용 MAC 설계 __7.5.1 Poly1305 __7.5.2 SipHash 7.6 문제 발생 요인들 __7.6.1 MAC 검증에 대한 타이밍 공격 __7.6.2 물 새는 스펀지 7.7 더 읽을거리 8장. 인증 암호화8.1 MAC을 이용한 인증 암호화 __8.1.1 암호화 및 MAC __8.1.2 MAC 후 암호화 __8.1.3 암호화 후 MAC 8.2 인증 암호 __8.2.1 AEAD(연관 자료가 있는 인증 암호화) __8.2.2 논스 관련 예측 가능성 방지 __8.2.3 좋은 인증 암호의 요건 8.3 AES-GCM: 인증 암호의 표준 __8.3.1 GCM의 내부: CTR과 GHASH __8.3.2 GCM의 보안성 __8.3.3 GCM의 효율성 8.4 OCB: GCM보다 빠른 인증 암호 __8.4.1 OCB의 내부 __8.4.2 OCB의 보안성 __8.4.3 OCB의 효율성 8.5 SIV: 가장 안전한 인증 암호? 8.6 치환 기반 AEAD 8.7 문제 발생 요인들 __8.7.1 AES-GCM과 약한 해시 키 __8.7.2 AES-GCM과 짧은 인증값 8.8 더 읽을거리 9장. 난해한 문제들9.1 계산 난해성 __9.1.1 실행 시간 측정 __9.1.2 다항 시간 대 초다항 시간 9.2 복잡도 부류 __9.2.1 비결정론적 다항 시간 __9.2.2 NP-완전 문제 __9.2.3 P 대 NP 문제 9.3 인수분해 문제 __9.3.1 큰 수의 인수분해의 실제 __9.3.2 인수분해는 NP-완전 문제인가? 9.4 이산 로그 문제 __9.4.1 군이란 무엇인가 __9.4.2 난해성의 근원 9.5 문제 발생 요인들 __9.5.1 인수분해가 생각보다 쉬운 경우 __9.5.2 난해한 문제라도 규모가 작으면 풀기 어렵지 않다 9.6 더 읽을거리 10장. RSA10.1 RSA에 깔린 수학 10.2 RSA 트랩도어 치환 10.3 RSA 키 생성과 보안성 10.4 RSA를 이용한 암호화 __10.4.1 교과서 RSA 암호화의 가소성 악용 __10.4.2 강한 RSA 암호화: OAEP 10.5 RSA를 이용한 서명 __10.5.1 교과서 RSA 서명의 취약점 __10.5.2 PSS 서명 표준 __10.5.3 FDH 서명 10.6 RSA 구현 __10.6.1 빠른 거듭제곱 알고리즘: 제곱 후 곱하기 __10.6.2 작은 지수를 이용한 공개 키 연산 속도 높이기 __10.6.3 중국인의 나머지 정리 10.7 문제 발생 요인들 __10.7.1 RSA-CRT에 대한 벨코어 공격 __10.7.2 개인 지수나 법의 공유 10.8 더 읽을거리 11장. 디피-헬먼11.1 디피-헬먼 함수 11.2 디피-헬먼 문제 __11.2.1 디피-헬먼 계산 문제 __11.2.2 디피-헬먼 결정 문제 __11.2.3 그 밖의 디피-헬먼 문제들 11.3 키 합의 프로토콜 __11.3.1 비 DH 키 합의 프로토콜의 예 __11.3.2 키 합의 프로토콜에 대한 공격 모형들 __11.3.3 성능 11.4 디피-헬먼 프로토콜 __11.4.1 익명 디피-헬먼 __11.4.2 인증 디피-헬먼 __11.4.3 메네즈스-취-밴스톤(MQV) 11.5 문제 발생 요인들 __11.5.1 공유 비밀에 해싱을 적용하지 않는 경우 __11.5.2 TLS의 구식 디피-헬먼 __11.5.3 안전하지 않은 군 매개변수 11.6 더 읽을거리 12장. 타원곡선12.1 타원곡선이란? __12.1.1 정수에 관한 타원곡선 __12.1.2 점의 덧셈과 곱셈 __12.1.3 타원곡선 군 12.2 ECDLP 문제 12.3 타원곡선에 관한 디피-헬먼 키 합의 __12.3.1 타원곡선을 이용한 디지털 서명 __12.3.2 타원곡선을 이용한 암호화 12.4 곡선의 선택 __12.4.1 NIST 곡선 __12.4.2 Curve25519 __12.4.3 그 밖의 곡선들 12.5 문제 발생 요인들 __12.5.1 ECDSA와 무작위성의 결여 __12.5.2 다른 곡선으로 ECDH 깨기 12.6 더 읽을거리 13장. TLS13.1 응용 대상과 요구조건 13.2 TLS 프로토콜 모음 __13.2.1 TLS와 SSL 프로토콜들의 간략한 역사 __13.2.2 TLS의 개요 __13.2.3 인증서와 인증기관 __13.2.4 레코드 프로토콜 __13.2.5 TLS 핸드셰이크 프로토콜 __13.2.6 TLS 1.3의 암복호화 알고리즘들 13.3 TLS 1.2에 비한 TLS 1.3의 개선점 __13.3.1 다운그레이드 보호 __13.3.2 단일 왕복 악수 과정 __13.3.3 세션 재개 13.4 TLS 보안의 강도 __13.4.1 인증 __13.4.2 순방향 비밀성 13.5 문제 발생 요인들 __13.5.1 침해된 인증기관 __13.5.2 침해된 서버 __13.5.3 침해된 클라이언트 __13.5.4 구현의 버그 13.6 더 읽을거리 14장. 양자 컴퓨터와 양자 후 암호14.1 양자 컴퓨터의 작동 방식 __14.1.1 양자 비트 __14.1.2 양자 게이트 14.2 양자 속도 향상 __14.2.1 지수 속도 향상과 사이먼의 문제 __14.2.2 쇼어 알고리즘의 위협 __14.2.3 쇼어 알고리즘으로 인수분해 문제 풀기 __14.2.4 쇼어 알고리즘으로 이산 로그 문제 풀기 __14.2.5 그로버 알고리즘 14.3 양자 컴퓨터를 만드는 것이 어려운 이유 14.4 양자 후 암복호화 알고리즘 __14.4.1 부호 기반 암호학 __14.4.2 격자 기반 암호학 __14.4.3 다변량 암호학 __14.4.4 해시 기반 암호학 14.5 문제 발생 요인들 __14.5.1 불확실한 보안 수준 __14.5.2 미래 상상: 만일 우리의 대응이 너무 늦다면? __14.5.3 구현 문제 14.6 더 읽을거리
|
Jean-Philippe Aumasson
류광의 다른 상품
|
★ 제대로 시작하는 현대 암호학 이 책은 현대적인 암호학에 관한 실용적인 입문서다. 암호학의 핵심을 이루는 수학 개념들을 너무 단순화하지 않고 적절한 수준에서 풀어서 설명하고, 그에 기초해서 인증 암호, 안전한 무작위성, 해시 함수, 블록 암호, 공개 키 암호(RSA와 타원곡선 암호 등)의 작동 방식을 설명한다. 각 장 끝에는 실제 응용 사례들에서 발견된 흔한 구현 실수들과 그런 결함이 미치는 영향 및 해결책에 관한 논의도 곁들였다.이 책은 경험 있는 실무자와 이 분야에 진입하길 꿈꾸는 초보자 모두에게 현대 암호학과 그 응용에 관한 완벽한 개괄서가 될 것이다.그 밖의 주제들● 보안의 수량화, 공격 모형, 순방향 비밀성 같은 암호학의 핵심 개념● HTTPS 보안 웹사이트의 바탕인 TLS 프로토콜의 강점과 한계● 양자 컴퓨터와 양자 후 암호학● 실제 응용 프로그램에서 발견된 다양한 보안 취약점과 활용 사례● 최고의 알고리즘이나 프로토콜을 선택하는 방법● 보안 제품/서비스 공급업체에 제대로 질문하는 방법
|