Security를 공개키에 담기 위한 비대칭 암호화와 데이터를 공개 키에 담기 위한 하이브리드 암호화에 대해 요약해보려 한다. 책에서는 Chapter6에 해당한다.
비대칭 암호화?
Chapter1을 요약하면서 간단하게 설명하였는데 비대칭 암호화(공개 키 암호화 라고도 한다)를 자세히 알아보는 Chapter이다. 여기선 간단한 실 사례로 암호화된 이메일을 예로든다. 간단하게 다양한 사용자가 메일을 암호화 하여 특정 A라는 사용자에게 보낸다. A라는 사용자는 모든 메일을 복호화 하여 읽을 수 있다.
따라서 비대칭 암호화에 사용되는 키 생성 알고리즘에서는 개인키라고도 불리우는 비밀키과 공개키 두개를 생성하는 키 생성 알고리즘이 이 존재한다.
이렇게 생성된 키 쌍을 가지고 upstream과 downstream간의 암복호 화가 아래와 같이 이루어진다.
여기까지는 대부분의 사람들이 잘 알고 있는 부분일 것이다. 그렇다면 비대칭 암호화를 사용하는 사례는 어떤것들이 있을까 보면 이 책에서는 두가지 사례를 소개한다
- 키 교환 : 비대칭 암호화 프리미티브를 사용하여 키 교환을 수행
- 하이브리드 암호화 : 비대칭 암호화를 할 수 있는 최대 크기 제한으로 더 큰 메시지를 암호화 하는 방법
자 그렇다면 키 교환과 캡슐화가 어떻게 이루어지는지 한 장으로 알아보자
위처럼 비대칭 암호화를 하기 위한 대칭키를 생성하여 공개키로 암호화 하여 전달하는 형태로 키 교환이 이루어 질수 있다. 근데 잠깐? 이거 AWS KMS의 특정 암호화 방식과 매우 유사하다.(https://docs.aws.amazon.com/ko_kr/kms/latest/developerguide/concepts.html#asymmetric-keys-concept)
이 책에서는 키 교환에 RSA를 점점 덜 쓰는 추세라고 이야기 하지만 아직도 RSA는 상당히 많이 사용되고 있다. KMS또한 마찬가지. 그래서 아래의 구조와 매우 유사함이 느껴진다.
자 그렇다면 이제 하이브리드 암호화를 알아보자. 하이브리드 암호화도 알아보니 AWS KMS의 봉투암호화와 매우 유사함을 느꼈다. 구조 자체는 비대칭 암호화와 매우 유사하다
수신지와 키 교환이후 인증 암호화 알고리즘을 통해 메시지를 암호화한다. 따라서 암호화 한 후 수신자가 대칭 키를 모르면 암호를 해독할 수 없다. 그래서 공개 키로 대칭키를 비대칭 암호화 한 다음 암호화된 대칭키와 암호문을 함께 넘겨주는 형태로 구성된다.
자 근데 이런 방식 또한 어디서 많이 보았다. 데이터를 암호화 하는 키를 public key로 암호화 하여 함께 보내는 방식. AWS SAA 시험에 단골 출제되는 봉투 암호화 방식과 동일하다고 보면 된다.
다음은 서명에 대해 정리해보겠다
'Server Infra > Security' 카테고리의 다른 글
보안 스터디 - 보안 전송(7/?) (0) | 2023.09.17 |
---|---|
보안 스터디 - 서명과 영지식 증명 (6/?) (0) | 2023.09.17 |
보안 스터디 - 인증 암호화 (4/?) (0) | 2023.09.10 |
보안 스터디 - 메시지 인증 코드 (3/?) (0) | 2023.09.10 |
보안 스터디 - 해시 함수 (2/?) (0) | 2023.09.03 |