암호화 기초 훑는 중인데 대칭키랑 비대칭키까지는 어찌어찌 이해했어요. 근데 실제 HTTPS 동작 설명을 읽다 보니까 둘을 같이 쓴다고 나와서 이게 왜 그런지가 안 잡힙니다.
제가 아는 건 이 정도예요.
대칭키(AES) : 암호화/복호화에 같은 키 하나. 속도 빠름. 근데 상대한테 그 키를 어떻게 안전하게 전달하지? (키 배송 문제)
비대칭키(RSA) : 공개키로 잠그고 개인키로 열기. 키 배송 문제는 해결됨. 근데 연산이 무거워서 느림
여기까지는 알겠는데요, 그럼 그냥 비대칭키 하나로 처음부터 끝까지 다 암호화하면 키 배송 문제도 없고 깔끔하지 않나요? 왜 굳이 대칭키를 다시 끌어들이는 건지 모르겠어요. 느려서 그런 건가 싶긴 한데 요즘 컴퓨터가 그렇게 느릴 일인가 싶기도 하고요.
찾아보니까 하이브리드 방식이라고, RSA로는 AES 세션키만 주고받고 실제 데이터는 AES로 암호화한다는데 이 순서가 머릿속에 안 그려집니다. 세션키를 RSA로 넘긴다는 게 정확히 무슨 말인지, 그리고 왜 이렇게 하면 양쪽 장점만 챙길 수 있는 건지 흐름으로 설명해주실 분 계실까요? 실무에서 실제로 이렇게 돌아가는 게 맞나요?