Mic*_*cas 6 security authentication encryption token digital-signature
这些年来,我不止一次地遇到过这种情况.您有一堆与用户相关的数据要从一个应用程序发送到另一个应用程序.第二个应用程序应该"信任"这个"令牌"并使用其中的数据.令牌中包含时间戳以防止盗窃/重复使用攻击.无论出于何种原因(我们在此不用担心),我们选择了自定义解决方案,而不是像SAML这样的行业标准.
对我来说,数字签名数据似乎就是你想要的.如果数据需要保密,那么您也可以对其进行加密.
但我看到的很多,开发人员将使用对称加密,例如AES.他们假设除了使数据"保密"之外,加密还提供1)消息完整性和2)信任(源的认证).
我是否有理由怀疑这里存在固有的弱点?如果正确管理对称密钥,那么它看起来似乎有效.缺少这个密钥,我当然不知道如何修改加密的令牌,或在拦截几个令牌后启动某种加密攻击.但是,一个更复杂的攻击者能够在这里利用一些东西吗?
部分取决于加密模式.如果你使用ECB(羞辱你!)我可以交换块,改变消息. Stackoverflow受到了这个bug的打击.
较少的威胁 - 没有任何完整性检查,我可以执行中间人攻击,并交换各种各样的位,你会收到它并尝试解密它.你当然失败了,但这种尝试可能是有启发性的."伯恩斯坦(利用缓存和微体系结构特征的组合)和Osvik,Shamir和Tromer(利用缓存冲突)依赖于基于大量随机测试获得统计数据的侧通道攻击." 1 脚注文章是由比我更重要的密码学家,他建议用MAC减少攻击面:
但是,如果您可以确保无法访问您的MAC密钥的攻击者无法将恶意输入提供给代码块,那么您将大大降低他能够利用任何错误的机会
| 归档时间: |
|
| 查看次数: |
2970 次 |
| 最近记录: |