首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >什么是加密/解密密钥管理最佳价格?

什么是加密/解密密钥管理最佳价格?
EN

Security用户
提问于 2016-12-06 11:14:04
回答 1查看 391关注 0票数 1

我正在开发一个基于网络的应用程序,它将被世界上许多国家的许多第三方组织所使用。

基于浏览器的客户端将向共享后端数据库提供敏感数据。

所有国家的所有组织都将在同一个数据库中读取/写入数据。

我希望加密在浏览器中输入的数据,使其在传输到后端数据库时安全。客户端加密。

我还希望在我的数据库中休息时加密数据。

这个应用程序将使用Java、Javascript (REACT.js)和Scala开发。

后端数据库将是MongoDB。

我找不到一个很好的密钥管理示例/描述,例如,密钥是如何正确生成、分发、存储、替换、删除和恢复的。

我有下列选择/决定:

加密的味道,如TripleDES,RSA,Blowfish,Twofish,AES等。密钥(S)对称/不对称及其长度如何安全地分配给我的客户。如何使我的钥匙在我的后端服务器上安全。

如果密钥应该具有生成、分发、存储、替换、删除的生命周期。当我现在使用Key0或Key2时,如何解密用Key1加密的数据?

如何为多个客户端存储多个密钥,使我能够加密/解密每个客户端数据。

EN

回答 1

Security用户

回答已采纳

发布于 2016-12-06 16:11:51

这是一个非常非常广泛的问题。你应该把它分成几个问题。实际上,它会填满一篇文章。

通用加密

对于静止的数据,请使用对称加密。无论如何,非对称的速度太慢了(大多数所谓的非对称加密实际上是混合的)。

用AES。因为这是标准,它有最多的眼睛看它,你将永远不需要解释为什么你选择AES而不是其他东西,和性能等其他一些不太可能出现在您的应用程序中有意义的方式。

此外,MongoDB支持AES的开箱即用.

Keys

您的DB键是关键的。将它们安全地锁起来,并将一些备份副本安全地存储(即加密)。密钥生成是它自己的主题,但是MongoDB可能已经为您处理过了,请检查它。

TLS

对于通信,请使用TLS,也称为HTTPS。这是标准,所有的浏览器都支持它,所有的and服务器都支持它。

证书

如果您想使用客户端证书,正如您有关密钥分配的问题所示,请阅读PKI。这是一个太多的主题,不能放在SE的textarea字段中。:-)

这应该会让你朝着正确的方向开始。关于更多的细节,我建议你问更多的问题,更狭隘的焦点。

票数 1
EN
页面原文内容由Security提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://security.stackexchange.com/questions/144506

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档