공개 키 암호화 방식 (Public-key cryptography)
공개 키 암호화(또는 비대칭 암호화)는 키가 쌍으로 제공되는 암호화 시스템입니다. 키 중 하나에 의해 수행된 변환은 다른 키로만 실행 취소할 수 있습니다. 하나의 키 ('개인 키')는 비밀로 유지되고 다른 하나는 공개됩니다.
디지털 서명에 사용되는 경우, 개인 키는 서명에 사용되고 공개 키는 확인에 사용됩니다. 이것은 누구나 서명을 확인할 수 있지만, 해당 개인 키의 소유자만이 서명을 생성할 수 있음을 의미합니다.
암호화에 사용되는 경우, 공개 키는 암호화에 사용되고 개인 키는 복호화에 사용됩니다. 이는 암호화 키를 공개할 수 있다는 점에서 공개키 암호화 시스템이 대칭 암호화 시스템에 비해 이점을 제공합니다. 누구든지 개인 키 소유자에게 보내는 메시지를 암호화할 수 있지만 개인 키 소유자만이 메시지를 해독할 수 있습니다. 그러나, 일반적으로 대칭 알고리즘보다 훨씬 느리고 암호화할 수 있는 메시지 크기는 키 크기에 비례하므로 긴 메시지에 맞게 확장되지 않습니다.
결과적으로, 암호화 시스템에서는 대칭 알고리즘을 사용하여 메시지를 암호화한 다음, 공개 키 시스템에서 대칭 키를 암호화하는 것이 일반적입니다. 이러한 배열은 두 시스템의 이점을 모두 제공할 수 있습니다.
일반적으로 사용되는 공개 키 암호화 시스템은 RSA(서명 및 암호화용), DSA(서명용) 및 Diffie-Hellman(키 계약용)입니다.