公鑰加密如何使用私鑰和公鑰加密解密/加密?關鍵是什麼意思是256位?它是如何解密的?有沒有寫加密程序的語言,或者任何語言都可以嗎?公鑰加密如何工作?
回答
簡而言之:
使用對稱算法和隨機對稱密鑰對數據進行加密。然後使用公共非對稱密鑰對隨機密鑰進行加密。加密的隨機密鑰與加密的數據一起存儲。爲了解密數據,使用私人非對稱密鑰來解密存儲的隨機密鑰,然後使用解密的隨機密鑰來解密數據。
256位是密鑰的長度。然而,它對於對稱和非對稱密鑰具有顯着不同的含義。對於對稱密鑰,256位是一個非常強大的密鑰(您可以使用AES 384或AES 512擁有更長的密鑰,其中的數字指定算法運行的密鑰長度)。對於非對稱算法,256位不算什麼,可比較的強度是2048位。
公鑰加密可以使用任何支持數學運算和數組的語言來實現。但是,這樣做是重新發明輪子。對於PKI,存在許多跨平臺庫:用於C++的開放源代碼OpenSSL,用於Java的開放源代碼BouncyCastle以及更多。我們公司爲.NET,Windows和Linux(即將推出的MacOS X版本)提供支持和維護的SecureBlackbox產品。
另外還有一些我們推薦給我們所有用戶的books about PKI。 RSA的指南是一個簡單的閱讀(但非常有用),第二本書更深入的細節。
從這個非常簡短的描述來看,使用這個隨機密鑰看起來似乎不是多餘的,因爲最後,您需要的只是解密兩個密鑰(數據由解密的隨機密鑰)的私鑰。 – 2011-04-14 05:17:07
對於第一個問題,請參閱http://en.wikipedia.org/wiki/Public-key_cryptography 你可以谷歌的更多細節。
256位密鑰意味着我們使用長度爲256的密鑰。您將瞭解更多關於第一個問題的答案後的閱讀。
許多語言都內置或第三方API來實現這些調用。
- 1. 公鑰加密如何工作
- 2. 公鑰加密
- 3. RSA加密公鑰?
- 4. WebSocket密鑰如何工作?
- 5. openSSL:如何初始化公鑰加密密鑰?
- 6. iphone - 如何用公鑰加密NSData並用私鑰解密?
- 7. 如何生成64位公鑰加密密鑰對
- 8. 如何與公共密鑰
- 9. RSA加密基於公鑰
- 10. RSA使用公鑰加密
- 11. Bouncycastle:用公鑰加密
- 12. C/C++加密/與公鑰
- 13. 公鑰郵件加密
- 14. 如何查找AWS密鑰對公鑰?
- 15. 帶私鑰/公鑰的EPub加密
- 16. 使用RSA公鑰加密DSA私鑰
- 17. Python:Pycrypto RSA公共密鑰加密錯誤
- 18. 如何使用公鑰/私鑰對來加密SSO令牌?
- 19. 祕密密鑰分配與Diffie-Hellman的公鑰加密
- 20. 如何使用openSSL和公鑰加密和解密xml
- 21. 如何使用rsa c僅公鑰進行加密和解密#
- 22. SWCrypt公鑰VS PKCS8PEM密鑰
- 23. c#的RSA公共密鑰的公鑰#
- 24. 如何使用私鑰加密字符串並使用公鑰解密?
- 25. 如何從密鑰中的公鑰獲取密碼
- 26. 如何從密鑰庫中讀取私鑰和公鑰密鑰庫
- 27. 使用Java中的RSA公鑰文件加密AES密鑰
- 28. 用RSA公鑰和私鑰加密和解密一個SecretKey
- 29. API密鑰公約
- 30. xor加密如何工作
我強烈推薦一本書,比如Bruce Schneier的[Applied Cryptography](http://www.schneier.com/book-applied.html)。 – 2011-02-12 10:10:30