谢谢。
发布于 2017-05-04 14:34:49
使用共享秘密作为HMAC的密钥是安全的吗?为所有将要成为HMACed的消息派生一个密钥还是为每个消息派生一个密钥比较好?
只要您只对HMAC使用密钥,就可以对多个消息安全使用单键。许多发出令牌的身份验证协议使用一个密钥来签名多个令牌。JWT就是一个这样的例子。.NET有自己的实现。
但请注意,如果您需要加密,然后HMAC消息,您需要使用两个不同的键。可以从一个共享的主密钥中派生出这两个密钥。见这和这。
不过,有一个更好的方法。您可以使用GCM模式进行加密,这将完全满足您对单人共享密钥的需要。确保您正确地使用它,特别是关于IV。研究它也是缺点,看看他们是否关心你。
在使用PKI交换共享秘密之后,使用共享密钥作为对称加密的密钥是否安全?
是的,例如,这是一种在SSL/TLS中使用的方法。
https://security.stackexchange.com/questions/158669
复制相似问题