1
3
你提出的解决方案是正确的。你基本上是在表演 challenge-response authentication 你自己。每个令牌可以由非机密质询字符串C和HMAC(C,K)组成,其中K是服务器的密钥。 要验证令牌,只需使用提供的C值重新计算HMAC,并查看它是否与提供的HMAC值匹配。 另外,正如Vinko提到的,您不应该使用MD5;SHA-256是一个不错的选择。 |
3
1
这不是太简单,这当然是实现简单数字签名的有效方法。 当然,你不能向任何人证明 其他的 您生成了签名而没有透露您的秘密密钥,但是为了这个目的,您需要使用更复杂的协议,如pki。 |
4
1
只是为了吹毛求疵,你会证明 只有 谁有权访问S,谁就可以生成令牌。另一个小细节:使用更好的哈希,比如sha256。因为如果马洛里能够产生碰撞,她甚至不需要知道S。 |
zoid_ · 如何将列表中的一个项目更改为另一个列表中的另一个项目? 2 年前 |
YungOne · 如何将RSA私钥转换为pem 2 年前 |
Annie Nguyen · 使用函数对字符串进行加密/解密 2 年前 |
Louis · 在Java中存储令牌/密码的最佳实践 2 年前 |
beginner_geek07 · 为什么我的输出是“无”? 2 年前 |