|
|
1
5
在现实世界中,密钥是 安全存放 (强调我的)在 HSM 如果他们打算安全地储存,一段很长的时间(从几个小时到几年不等)。这就是 PKCS#11 密钥也可以安全地存储在智能卡和USB令牌等其他设备中,但这是为了在大众中分发密钥,而不是用于后端系统的密钥存储。 然而,并不是每个人都能得到HSMs的预算,而且还使用了许多其他不太安全(显然更便宜)的替代品。一些系统(我将以Glassfish应用服务器为例)存储主密码,用于保护其他密码。这同样适用于密钥-将有一个主密钥用于保护其他密钥(在某种程度上,这类似于HSMs内部的工作方式)。当然,你还得把主钥匙锁好。在某些环境中,这很容易,因为您可以将密钥放在仅限系统管理员和应用程序使用的文件中,而不允许其他人使用。 :所有这些都不应视为盲目接受的建议:-)。如果你的钥匙需要不惜一切代价得到保护,那就投资一个高速移动设备。 |
|
|
2
4
所以您使用的是java和keystores。
1) 你需要一些建议 2) 你想知道如何把这些东西存储到数据库吗 回答问题1: 所以在使用java时,需要使用SSL。Java已经实现了通过https进行通信的类,它将为您执行SSL握手和所有操作!唯一需要做的就是为这个实现提供java.security.KeyStore。
你如何制作你的私钥和证书,我将不在这里讨论。我想你已经在那里了(如果没有,你会发现的)。但是密钥库是受密码保护的。所以一般来说,如果没有人能入侵你的数据库,它们是安全的。如果将打开密钥库的密码存储在同一个表中,请注意sql注入! 但我们假设这是安全的。。密钥库使您能够使用将处理SSL握手的现有实现。所以基本上使用keystores并不是一件坏事。注意:顺便说一句,只有在需要相互身份验证(也就是说,您还需要标识自己)时,才会使用PKCS12密钥库。 是的,您可以在数据库中存储密钥库,这有点棘手。因为密钥库只允许它们使用存储和加载方法。但你可以这样做:
上面的代码可能不是100%正确,因为我在这里写的(没有编辑器)。但这通常是你能做到的,我以前做过,而且效果很好;) |
|
|
Nebula Tech · 在SQL Server中搜索字符串中单词的多次出现 10 月前 |
|
|
blogger13 · 视频租赁店数据库的规范化 10 月前 |
|
|
ì¤ì¤í · 为什么LEFT INNER JOIN被弃用? 11 月前 |
|
|
relatively_random · 确保两个表之间一致的共同参考 11 月前 |
|
|
Grenish Rai · Firestore错误“用户文档不存在” 1 年前 |
|
|
Saijo-Shi · PLpgsql中的更新触发器 1 年前 |
|
Dante · Django::配置不当:池不支持持久连接 1 年前 |
|
YouLocalRUser · 删除重复行,保留第一行 1 年前 |