알고리즘이 공개 키를 사용하여 일반 텍스트를 암호화하고 동일한 키를 사용하여이를 해독 할 수없는 방법을 이해하지 못합니다. 누군가가 수학적 용어를 정의하면서 가능한 가장 간단한 형태로이 과정을 설명 할 수 있습니까?비대칭 키 암호화 알고리즘은 단방향 암호 해독 및 암호화 기능을 어떻게 유지합니까?
답변
이렇게 생각하십시오. 일부 수학 연산은 역변환 가능합니다. 예를 들어 "0이 아닌 실수로 곱셈"연산을 생각해보십시오. 유효하지 않은 숫자 s
을 수정하고 작업 f(x)
을 x -> x * s
으로 정의하십시오. 그러면이 연산은 역변환이됩니다. 실제로, t = 1/s
을 취하면 g(x) = x * t
에 의해 정의 된 작업 g(x)
은 g(f(x)) = x
이라는 속성을 가지므로 f
은 반전 가능합니다. x
을 메시지로 사용하고 공개 키는 s
, 암호화 알고리즘은 f
, 개인 키는 t
, 해독 알고리즘은 g
입니다. 물론 이것은 끔찍한 알고리즘이지만 비대칭 암호화에 대한 모든 것입니다 : 매개 변수화 된 역행렬 수학 연산을 찾으십시오. 매개 변수는 공개 키를 제공하고 "역 매개 변수"는 개인 키를 제공합니다.
물론 암호화를 사용하면 역함수를 찾는 것이 더 어려워지기를 바랍니다. 사실, 비대칭 키 알고리즘 중 가장 잘 알려진 the mathematics of RSA은 매우 정교합니다.certain mathematical problem은 매우 어렵다고 생각합니다.
공개 키 암호화 here에 대한 설명이 있습니다. 간단하게 설명하기가 매우 복잡하고 불가능하기 때문에 수학에 대한 자세한 내용은 다루지 않습니다. 또한이 관련 질문에 대한 답변을 살펴 할 수 있습니다 :
을 비대칭 키의 중심부에서 계산하기 어려운 일부 수학 정체성은 항상있다. 고전적인 예는 RSA 알고리즘입니다. 그 수학적 기초는 b
, m
, n
과 같은 숫자가 (b^m)^n = b
(모듈러 산술)입니다. 즉, b
이 내 메시지이고 m
과 n
이 비대칭 키의 두 부분 인 경우 하나의 키는 다른 키가 암호화 한 것을 해독 할 수 있습니다. 즉, b^m
및 또한 b^n
은 암호문으로 사용되며, 다른 암호로 올리면 해독 할 수 있습니다. 이들이 안전한 암호 인 이유는 b^m
(m*n
을 알고 있더라도 b
)을 얻는 것이 계산적으로 실행 불가능하다는 것입니다.이 값은 공개되어야 할 필요가 있습니다. 따라서 (m, mn)
및 (n, mn)
쌍이 비대칭 키 쌍을 구성합니다.
, 디피 - 헬만에게 키 교환을 고려 : 여기에 앨리스와 밥은 각각 비밀 번호 x
및 y
을 유지 아무도 다른 알고. 그런 다음 앨리스는 Bob c^x
에게 알리고 Bob은 앨리스에게 c^y
에게 일부 공용 값 c
을 알립니다. 이제 양측은 c^xy
값을 계산할 수 있지만 어느 쪽도 상대방의 암호를 알지 못하며 어떤 도청자도 c^xy
값을 알지 못합니다. 수학적 기초는 이더라도 c^x
에서 x
을 얻는 것이 계산 상으로 불가능하다는 것입니다.
- 1. 암호화 및 암호 해독
- 2. 비대칭 암호화 키
- 3. 암호화 및 암호 해독
- 4. RSA 암호화 - 암호 해독
- 5. ActionScript3 및 Java 암호화/암호 해독
- 6. Web.config 암호화/암호 해독
- 7. 암호화/암호 해독 시도
- 8. 레일에서의 암호화/암호 해독
- 9. RSA 키 암호화/암호 해독 문제
- 10. .NET에서 암호화/암호 해독 키 저장
- 11. 키 관리 - 클래식 ASP는 - 암호화/암호 해독
- 12. Java 암호화 C# 암호 해독
- 13. Java : 암호 패키지 (암호화 및 암호 해독). 잘못된 키 오류
- 14. 어떻게 만드는지 : J2ME 암호화 C# 암호 해독 및 J2ME 암호 해독 C# 암호화?
- 15. 암호 인스턴스 또는 키를 사용하지 않고 암호화 및 암호 해독
- 16. 파이썬으로 파일 암호화/암호 해독
- 17. XML 파일 암호화/암호 해독
- 18. 자바 RSA 암호화 - 암호 해독
- 19. 레일즈를 사용하여 암호화, 암호 해독
- 20. ASP.net ViewState 암호화 및 해독
- 21. Sqlite 파일 암호화 및 암호 해독
- 22. iOS의 쿠키 암호화 및 암호 해독
- 23. J2ME에서 파일 암호화 및 암호 해독
- 24. J2ME - mp3 파일의 암호화 및 암호 해독
- 25. RSA 암호화 및 긴 메시지의 암호 해독
- 26. 이진 파일의 암호화 및 암호 해독 문제
- 27. 자바 스크립트 및 PHP 암호화/암호 해독
- 28. DataTable 개체의 암호화 및 암호 해독
- 29. C# 파일 암호화 및 암호 해독 문제
- 30. 아이폰에서 암호화 및 PHP에서 암호 해독
[RSA] (http://en.wikipedia.org/wiki/RSA) 위키피디아 기사에는 필요한 정보가 있습니다 – momo
본능은 훌륭합니다. 실제로 놀랍습니다. 정말로 이해하고 싶다면 자신을 위해 몇 가지 예를 들어 봐야 할 것입니다. –
암호화에 대한 자매 사이트의 [비대칭 암호화는 어떻게 작동합니까?] (http://crypto.stackexchange.com/questions/292/how-does-asymmetric-encryption-work)를 참조하십시오. –