为 HMAC-SHA1 生成消费者密钥/秘密
我正在寻找一种编程方式来生成 HMAC-SHA1 的消费者密钥/秘密,以供通过 OAuth 调用我们的 API 的客户端使用。任何指向现有实现的指针都会非常有帮助。
I am looking for a programmatic way to generate consumer key/secrets for HMAC-SHA1 to be used by clients invoking our API over OAuth. Any pointers to existing implementations would be highly helpful.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
从随机数据生成的秘密是最好的。这样就没有外部数据可以帮助攻击者推断或猜测部分或整个密钥。当然,这取决于您的密钥需要多少保护。 Java 在 java.util.Random 中包含了一些随机数生成器(自 JDK1.0 起)。如果您没有向后兼容性问题,Java 6 具有满足 FIPS 140-2 要求的 java.security.SecureRandom。 Java 库并不是真正随机的,但对于大多数应用程序来说可能已经足够好了。如果您需要更好的随机数据,您应该选择基于硬件的随机生成器。
Secrets are best when generated from random data. That way there is no external data which could help an attacker deduce or guess part or the entire key. Of course, it depends on how much protection your secret key needs. Java includes some random number generators in java.util.Random (since JDK1.0). If you don't have backward compatibility issues, Java 6 has java.security.SecureRandom which meets FIPS 140-2 requirements. The Java libraries are not truly random, but it is probably good enough for most applications. If you need better random data, you should go for a hardware-based random generator.