首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >利用AES向SaaS传输加密信息

利用AES向SaaS传输加密信息
EN

Security用户
提问于 2016-09-15 12:55:02
回答 2查看 163关注 0票数 0

我对加密这件事很陌生。我最近读了很多关于它的书,但仍然有一些问题。因此,我的任务是在我们这边构建一个解决方案的标志,它将安全地将信息从我们的服务器传输到SaaS。

这些信息非常敏感(而不是密码),因此我们需要对其进行加密。我所想要做的是,如何向SaaS发送如何解密这些信息的信息。现在,我已经在.net中设置了使用AES加密它的方法,使用256 b位密钥,128位IV,使用PKCS7填充,以及CBC加密模式。我读过关于是否应该每次更改密钥和IV的相互矛盾的信息。如果每次更改密钥和IV,我如何安全地告诉我的SaaS,以便他们能够解密这些信息?我还应该做另一个更好的做法,将这些信息发送到要解密的SaaS吗?

EN

回答 2

Security用户

发布于 2016-09-15 14:22:18

首先,我建议您不要尝试重新发明轮子:根据您的描述,您已经超出了您的深度,应该尝试以这种方式构建您自己的安全性(甚至使用已知的优秀原语)。

基本上,您必须首先了解,如果您想保护您的数据在传输或休息(或两者都)。

如果您想加密过境数据,那么使用TLS。您可以讨论什么类型的证书或身份验证,思考您需要什么支持,但在任何时候都不应该尝试用您自己的东西来替换它。

如果你想加密静止数据,事情就不那么清晰了。但是,一般的规则是:选择一组适合您的需要的标准(S/哑剧PGPPKCS#12来举几个例子)并使用它。您很快就会发现,困难的部分不是加密,而是密钥管理:安全地存储加密密钥,同时仍然允许在需要时使用它们,这在几乎所有情况下都是一个真正的挑战。

不过,以下是你的问题的几个答案:

IVs应该为每条消息重新生成,并且永远不要重复使用。这是CBC必须“安全”的一个要求。(请注意,就我个人而言,当我不得不处理CBC时,我宁愿用一个随机数据块来处理数据,在解密时我会丢弃它。我发现处理起来比追踪IVs容易得多)。

然而,关键在于秘密。根据您的确切需求,它可以是静态的(在正常操作期间永远不会更改)或动态的(可能是每个消息的唯一,并且是从密钥交换协议派生出来的,或者是在使用非对称密码 (如RSA )加密之前随机生成的。

说到CBC,要知道它不被认为是一种安全模式:它可能容易受到填充甲骨文攻击的攻击。

票数 1
EN

Security用户

发布于 2016-09-15 13:43:59

是的,对于每一个需要很强安全性的应用程序,重用密钥都是个坏主意(咳嗽,滚动代码,汽车键,咳嗽)。但是,在不进行传输的情况下改变它们始终是一个棘手的问题。然后非标准加密出现了。

我想你要找的是Diffie-Hellman短期密钥交换协议。这是一种重新协商密钥的方法,而不需要窃听者获取密钥。

更多信息

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

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

复制
相关文章

相似问题

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