我正在做一個共享對象,使用公鑰和私鑰進行大量的加密和解密。我想將這些密鑰存儲在二進制文件中,是否有任何方法可以安全地保存這些密鑰,以便任何人都無法使用它。那麼如何在二進制文件中嵌入加密密鑰?如何將公鑰和私鑰安全地保存在二進制文件中?
0
A
回答
1
如果代碼可以訪問密鑰,那麼代碼運行在其機器上的用戶也可以訪問。這是無可爭辯的 - 除非您控制硬件,否則無法繞過它。
1
是否有任何方法可以安全地保存這些密鑰,以便沒有人可以使用它。
正如millimoose所說,不,你不能。或者更準確地說:您不能將數據和任何數據保存在二進制文件中,因此它對您的二進制文件而不是其他任何人都有用。雖然通常不會用這種通用的用例進行討論,但這是數字權利管理的核心 - 希望獲得一些只能以受控方式使用的數據(無論是密碼還是其他數據)。
即使對於資金充足和積極主動的組織來說,您所能完成的最好的工作也會很多,那就是使用TPM代表您執行加密操作,並且以與您的系統。我猜這個解決方案不是你想要的。
0
如果您無法控制硬件和操作系統,則無法執行此操作。如果你有完全的控制權,那麼就沒有必要爲密鑰增加額外的保護。安全存儲密鑰的最佳方式是將它們保留在二進制文件之外。你可以使用一個安全的令牌。這可能是TPM,智能卡甚至HSM。這些安全令牌對令牌本身執行加密計算,因此您永遠不需要將其加載到內存中。
如果你想有一個非常安全的二進制存儲,那麼你可以看看this HSM。您可以在 HSM內運行您的代碼。即使有這樣的HSM,您也應該只在HSM中生成密鑰並將它們保存在那裏。哦,是的,這需要你在HSM上花費數千美元......
相關問題
- 1. 將公鑰/私鑰安全地存儲在數據庫中
- 2. 如何安全地存儲公鑰/私鑰
- 3. 如何在Silverlight 4中安全地存儲密鑰或私鑰?
- 4. 如何將私鑰保存在安全的內存中
- 5. 連接到MQ使用安全密鑰(公鑰和私鑰)
- 6. 將私鑰保存在安全的地方至關重要?
- 7. 公鑰和私鑰文件(.pkr,.skr)
- 8. 如何在.NET中安全地使用二進制文件分發密鑰?
- 9. 如何存儲RSA私鑰,公鑰
- 10. 私鑰的安全存儲
- 11. 如何將私鑰和公鑰存入KeyStore
- 12. 如何從.CER文件中提取私鑰和公鑰?
- 13. 在c#中生成公鑰和私鑰對並將公鑰保存爲純文本
- 14. 私鑰/公鑰
- 15. 將私鑰和公鑰存儲在數據庫中
- 16. 如何查找.ssh私鑰和公鑰
- 17. 如何在Android中安全地存儲EC私鑰?
- 18. 創建公鑰和私鑰
- 19. Google recaptcha公鑰和私鑰
- 20. 公鑰和私鑰混淆
- 21. PyCrypto:解密只用文件中的公鑰(無私鑰+公鑰)
- 22. RSA安全私鑰在exe文件內
- 23. 如何使用RSA私鑰和公鑰創建.der文件?
- 24. 密鑰容器,足夠安全地存儲私鑰?
- 25. EC公鑰/私鑰的文件格式?
- 26. 從私鑰中刪除公鑰私鑰存儲與GPG
- 27. 與公鑰/私鑰
- 28. 公鑰和私鑰API密鑰
- 29. 將公鑰和私鑰存儲在數據庫或密鑰庫中
- 30. 提取從OpenSSL的密鑰文件的公鑰和私鑰
「有沒有什麼方法可以安全地保存這些密鑰,以便沒有人可以使用它」 - 不。 – millimoose
「有沒有辦法安全地保存這些密鑰,以便沒有人可以使用它?」當然有 - 但在這種情況下,「沒有人」包括你。 – ntoskrnl