남아프리카 공화국 (Republic of South Africa)
1977 년, Diffie-Hellman 의 논문이 발표된 지 1 년 후, MIT 연구원 3 명이 이 사상을 바탕으로 실용적인 방법을 개발했다. 이것은 RSA 입니다. Ron Rivester, Adi Samore, Leonard Adelman 등 3 명의 개발자의 이니셜로 명명되었습니다. RSA 는 가장 널리 사용되는 공개 키 암호 시스템 일 수 있습니다. 1983 미국에서 RSA 에 대한 특허를 출원했으며 공식적으로 표준으로 채택되었습니다. 그것의 수출은 지금까지도 여전히 제한되어 있지만, 그것은 이미 미국 이외의 지역 발전을 실현하는 데 널리 사용되고 있다.
다른 시스템과 마찬가지로 RSA 는 큰 소수를 사용하여 키 쌍을 구성합니다. 각 키 쌍 * * * 은 두 개의 소수 곱, 즉 모듈을 즐기지만 각 키 쌍에도 특정 지수가 있습니다. RSA 랩은 RSA 암호 시스템의 원리를 다음과 같이 설명합니다.
"두 개의 큰 소수 P 와 Q 를 사용하여 곱 n = pq; 를 계산합니다. N 은 모듈입니다. N 보다 작은 수 e 를 선택하면 (p- 1)(q- 1) 와 소수인 1, e 와 (p-/) 를 제외한 소수입니다 (ed- 1) 가 (p- 1)(q- 1) 로 나눌 수 있도록 다른 숫자 d 를 구하십시오. 값 e 와 d 를 각각 공용 지수와 전용 지수라고 합니다. 공개 키는 이 로그 (n, e) 입니다. 개인 키는 이 로그 (n, d) 입니다. "
공개 키를 알면 개인 키를 얻을 수 있는 방법이지만, 모듈러스 계수를 그 소수로 분해해야 한다. 이것은 어렵습니다. 충분히 긴 키를 선택하면 기본적으로 할 수 있습니다. 고려해야 할 것은 모듈의 길이입니다. 현재 RSA 랩은 일반 회사에서 사용하는 키 크기는 1024 비트여야 하며, 매우 중요한 자료의 경우 두 배 크기인 2048 비트로 권장합니다. 일상적인 사용에는 768 비트의 키 길이가 충분하다. 현재의 기술로 쉽게 해독할 수 없기 때문이다. 데이터 보호 비용은 항상 데이터의 가치와 보호 파괴 비용이 너무 높은지 여부를 고려해야 합니다. RSA 랩은 1995 에서 사용 가능한 인수 분해 기술을 기반으로 RSA 키 길이 보안에 대한 최근 연구를 언급했습니다. 이 연구에 따르면 8 개월의 노력과 백만 달러 미만으로 5 12 비트 키를 분해할 수 있는 것으로 나타났다. 실제로 1999 에서는 기존 RSA 보안 과제의 일환으로 특정 RSA 5 12 숫자 (RSA- 155 라고 함) 를 분해하는 데 7 개월이 걸립니다
여기에 제공된 모든 숫자는 제공된 보안 범위에 대한 평균이며, 경우에 따라 특정 개인 키를 더 빨리 식별하는 것도 중요합니다. 마찬가지로, 제공된 보안 가정은 소수의 인수 분해에 기반을 두고 있으며, 이것은 매우 어렵다. 인수 분해를 단순하게 만들 수 있는 새로운 수학 기술이 발견되면 이러한 가정이 변경되고 RSA 및 유사한 알고리즘이 제공하는 보안이 즉시 쓸모 없게 될 수 있습니다.
또한 키 길이를 늘리면 암호화/암호 해독 속도에 영향을 줄 수 있으므로 균형이 잡혀 있습니다. 모듈을 두 배로 늘리면 공개 키를 사용하는 컴퓨팅 시간이 약 4 배 증가하고 개인 키를 사용하는 암호화/암호 해독에 걸리는 시간은 8 배 늘어납니다. 또한 모듈을 두 배로 늘리면 키를 생성하는 시간이 평균 16 배로 늘어납니다. 컴퓨팅 능력이 계속해서 빠르게 향상되는 반면, 사실 비대칭 암호는 일반적으로 짧은 텍스트에 사용되는 경우 실제 어플리케이션에서는 문제가 되지 않습니다.
기타 비대칭 암호 시스템
개발자의 이름을 딴 ElGamal 시스템은 이산대수 문제를 기반으로 암호화 및 서명 변형이 있으며 DSA (디지털 서명 알고리즘) 부분은 ElGamal 을 기반으로 합니다. 이 시스템은 RSA 처럼 안전 해 보이지만 일반적으로 속도가 느리며 암호화 중 메시지를 확장하는 데 걸리는 시간은 RSA 의 두 배입니다. 이러한 제한 사항은 서명에서 알고리즘의 사용에 영향을 주지 않습니다.
기타 시스템에는 1978 년 처음 발표된 Merkle-Hellman 배낭암호 시스템, 1984 년 처음 발표된 Chor- Rivester 암호 시스템 및 1988 년 개정판이 포함됩니다. 또한 호주와 뉴질랜드도 LUC 공개 암호 키 시스템을 개발했다. McEliece 공개 키 암호화 알고리즘은 대수 코딩 이론을 기반으로 Goppa 코드라는 오류 수정 코드 클래스를 사용합니다. 이러한 코드는 빠른 디코딩을 제공하지만 사용되는 키 크기는 약 0.5 조 개이며 암호화 과정에서 메시지 텍스트가 크게 확장됩니다.
1980 년대 중반에는 타원 곡선 암호 시스템이라는 보다 발전된 공개 키 암호 시스템이 제시되어 사람들의 관심을 끌고 있다. 이러한 시스템은 대수 형상의 수치 이론과 수학 구조를 기반으로 하며 일반적으로 유한 필드에 정의됩니다. 이러한 구성표는 짧은 키 길이를 사용하지만 기존 시스템과 유사한 보안을 제공할 수 있으며 일부 구성표는 모바일 컴퓨팅 또는 스마트 카드 기반 시스템에서 특히 유용할 수 있습니다. RSA 연구소에 따르면 키 길이가 160 비트인 타원 곡선 암호 시스템은 키 길이가 1024 비트인 RSA 와 거의 동일한 보안을 제공합니다. 그러나 문제는 타원 곡선 암호 시스템이 아직 충분히 발전하지 않은 일부 특수 공격에 취약할 수 있다는 것이다.