비대칭키 암호화 예제

비대칭 암호화는 두 개의 뚜렷한 관련 키를 사용합니다. 하나의 키인 공개 키는 암호화에 사용되고 다른 키인 개인 키는 암호 해독용입니다. 이름에 암시된 것처럼 개인 키는 인증된 받는 사람만 메시지를 해독할 수 있도록 비공개로 지정됩니다. 이 두 가지 암호화 방법의 주요 차이점은 비대칭 암호화 알고리즘이 데이터를 암호화하는 키와 데이터를 암호화하는 다른 키인 두 개의 서로 다른 관련 키를 사용하는 반면 대칭 암호화는 동일한 키를 사용하여 두 키를 모두 수행한다는 것입니다. 암호화 및 암호 해독 기능을 작동합니다. 공개 키 암호화 시스템의 가장 명백한 응용 프로그램은 기밀성을 제공하기 위해 통신을 암호화하는 것입니다 . 비대칭 암호화가 기밀성, 무결성, 신뢰성 및 부인할 수 없는 기능을 제공하기 위해 사용자와 시스템은 공개 키가 정품인지, 주장하는 사람 또는 엔터티에 속하며, 변조되지 않았는지 확인해야 합니다. 악의적인 제3자로 대체됩니다. 이 공개 키 인증 문제에 대한 완벽한 해결책은 없습니다.

신뢰할 수 있는 인증 기관이 키 쌍 및 인증서의 소유권을 인증하는 공개 키 인프라(PKI)가 가장 일반적인 접근 방식이지만 OpenPGP를 포함한 PGP(예: PGP) 모델을 기반으로 하는 암호화 제품은 사용자와 공개 키 간의 링크에 대한 개별 보증에 의존하는 트러스트 웹이라고 하는 분산 인증 모델입니다. 웹 사이트와 브라우저 간에 암호화된 링크를 설정하기 위한 SSL/TSL 암호화 프로토콜도 비대칭 암호화를 사용합니다. 암호화 기능의 단방향 특성으로 인해 한 발신자는 각각 수신자의 공개 키가 있더라도 다른 발신자의 메시지를 읽을 수 없습니다. 1977년, 제도의 일반화는 론 리베스트, 아디 샤미르, 레너드 애들먼이 독립적으로 발명한 것입니다. 후자의 저자는 1978 년에 자신의 작품을 발표하고, 알고리즘은 자신의 이니셜에서 RSA로 알려지고왔다. RSA는 두 개의 매우 큰 소수의 제품인 지수 조절을 사용하여 암호화 및 해독을 수행하여 공개 키 암호화 및 공개 키 디지털 서명을 모두 수행합니다. 보안은 큰 정수를 팩터링하는 데 있어 극도의 어려움과 연결되어 있으며, 이는 알려진 효율적인 일반 기술이 없는 문제입니다. 모든 공개 키 체계는 이론적으로 « 무차별 암호 대입 키 검색 공격 »에 취약합니다.

[인용 필요] 그러나 클로드 섀넌의 « 작업 요소 »라고 불리는 성공에 필요한 계산의 양이 모든 잠재적 공격자의 손이 닿지 않는 경우 이러한 공격은 비현실적입니다. 대부분의 경우 더 긴 키를 선택하기만 하면 작업 요소를 늘릴 수 있습니다. 그러나 다른 알고리즘은 작업 요소가 훨씬 낮아무일 대입 공격에 대한 저항이 없을 수 있습니다. RSA와 ElGamal 암호화는 무차별 암호 대입 접근 방식보다 훨씬 빠른 공격을 알려진 일부 공개 키 암호화 알고리즘을 공격하는 데 도움이 되도록 일부 특수하고 구체적인 알고리즘이 개발되었습니다. [4] 공개 키 암호화의 기본 작업 예제와 함께 가장 잘 설명된다. 아래 작업에서는 간단한 키 만들기와 일반 텍스트 샘플의 암호화 및 암호 해독을 다룹니다. 필요에 따라 예제는 크게 단순화됩니다. 이론적 및 잠재적 문제에도 불구하고이 접근 법은 널리 사용됩니다. 예를 들어 웹 브라우저 트랜잭션에 대한 보안을 제공하는 데 일반적으로 사용되는 TLS 및 이전 SSL(예: 온라인 상점에 신용 카드 세부 정보를 안전하게 전송)이 있습니다.

몇 가지 이전에 유망한 비대칭 키 알고리즘에 대한 주요 약점이 발견되었습니다. `배낭 포장` 알고리즘은 새로운 공격이 개발된 후 안전하지 않은 것으로 나타났습니다. [인용 필요] 최근에는 알려진 하드웨어가 일반 텍스트를 암호화하는 데 걸리는 정확한 시간을 신중하게 측정하여 암호 해독 키에 대한 검색을 단순화하는 데 사용되었습니다(« 사이드 채널 공격 » 참조).