확률적 암호화

Probabilistic encryption

확률적 암호화는 동일한 메시지를 여러 번 암호화할 때 일반적으로 다른 암호문을 산출하도록 암호화 알고리즘에서 무작위성을 사용하는 것이다."확률적 암호화"라는 용어는 일반적으로 공개암호화 알고리즘을 참조할 때 사용된다. 그러나 다양한 대칭암호화 알고리즘은 유사한 속성(예: CBC와 같은 체인 모드에서 사용될 때 블록 암호)과 본질적으로 무작위인 프리스타일[1] 같은 스트림 암호들을 달성한다.의미론적으로 안전하려면, 즉 일반 텍스트에 대한 부분적인 정보라도 숨기려면 암호화 알고리즘은 확률론적이어야 한다.

역사

첫 번째 입증 가능한 확률론적 공개키 암호화 체계는 샤피 골드워서실비오 미칼리2차 잔류도 문제의 경도에 기초하여 제안했으며 공개키 크기와 동일한 메시지 확장 계수를 가지고 있었다.보다 효율적인 확률론적 암호화 알고리즘에는 Elgamal, Paillier, 그리고 OAEP를 포함한 랜덤 오라클 모델에 따른 다양한 구성이 포함된다.

보안

공개키 암호화를 사용할 는 확률적 암호화가 특히 중요하다.상대가 암호문을 관찰하고, 일반 텍스트가 "YES" 또는 "NO"인 것으로 의심하거나, 일반 텍스트가 "ATCHAT AT CALAIS"일 수 있다는 예감이 든다고 가정해 보자.결정론적 암호화 알고리즘을 사용할 때, 상대방은 수신자의 공개 키로 각각의 추측을 암호화하고, 각 결과를 대상 암호문과 비교할 수 있다.이 공격에 대처하기 위해, 공개 키 암호화 체계는 각 일반 텍스트가 다수의 가능한 암호 텍스트 중 하나에 매핑되도록 보장하면서 무작위성의 요소를 포함해야 한다.

결정론적 암호화 방식을 확률론적 방식으로 변환하는 직관적 접근법은 결정론적 알고리즘으로 암호화하기 전에 무작위 문자열로 일반 텍스트를 채우는 것이다.반대로 암호 해독은 결정론적 알고리즘을 적용하고 무작위 패딩을 무시하는 것을 포함한다.그러나 이러한 순진한 접근법을 적용한 초기 계획은 일부 결정론적 암호화 방법의 한계로 인해 깨졌다.OAEP(Optimal Asymmetric Encryption Pading)와 같은 기법은 임의의 트랩도어 순열을 사용하여 안전한 방식으로 랜덤 패딩을 통합한다.

트랩도어 순열을 사용한 확률적 암호화 예제:

이것은 오직 하나의 비트만 암호화되기 때문에 비효율적이다.즉, 메시지 확장계수가 공개키 크기와 동일하다는 것이다.

랜덤 오라클 모델의 확률적 암호화 예제:

참고 항목

참조

  1. ^ Puthuparambil, Arun Babu; Thomas, Jithin Jose (2019-12-01). "Freestyle, a randomized version of ChaCha for resisting offline brute-force and dictionary attacks". Journal of Information Security and Applications. 49: 102396. arXiv:1802.03201. doi:10.1016/j.jisa.2019.102396. ISSN 2214-2126.

외부 링크

  • 샤피 골드워서와 실비오 미칼리, 확률론적 암호화, 컴퓨터 및 시스템 과학 저널 특별호, 제28권, 제270-299권, 1984년 4월
  • 프리스타일, 오프라인 폭력 및 사전 공격에 저항하기 위한 차차의 무작위 버전 [1].