是否有标准的规范方法为JWK创建指纹(又名指纹)?
从我正在阅读的内容来看,似乎标准没有定义如何指定kid
,我觉得这很奇怪。对我而言,它最大限度地使它成为一个确定性的值,而不是一个需要查找表,以便其他人可以通过拥有公钥轻松地重新创建密钥id。
我知道SSH指纹和X.509指纹是标准化的,但对于使用JWK的所有环境(尤其是浏览器)来说,这些似乎不是一个合适的解决方案,因为它们太复杂了,不适合天真的实现,包括库能够操纵这种(即伪造)会浪费大量的内存,带宽和vm编译时间。
官方称它为“指纹”而不是“指纹”。
答案 0 :(得分:2)
我认为RFC7638会回答你的问题。
此RFC描述了一种计算JWK哈希值的方法。
实施起来非常简单:
kty
,n
和e
以及EC密钥:crv
,kty
,x
和{{1} }。y
,e
和kty
n
{"e":"AQAB","kty":"RSA","n":"0vx7agoebGcQSuuPiLJXZptN9nndrQmbXEps2
aiAFbWhM78LhWx4cbbfAAtVT86zwu1RK7aPFFxuhDR1L6tSoc_BJECPebWKRXjBZCi
FV4n3oknjhMstn64tZ_2W-5JsGY4Hc5n9yBXArwl93lqt7_RN5w6Cf0h4QyQ5v-65Y
GjQR0_FDW2QvzqY368QQMicAtaSqzs8KJZgnYb9c7d0zgdAZHzu6qMQvRL5hajrn1n
91CbOpbISD08qNLyrdkt-bFTWhAI4vMQFh6WeZu0fM4lFd2NcRwr3XPksINHaQ-G_x
BniIqbw0Ls1jF44-csFCur-kEgU8awapJzKnqDKgw"}
答案 1 :(得分:0)
我不相信有真正的标准,但IETF mailing archives已讨论过这个话题。虽然对话似乎有点侧重于规范JSON是否是一般的好主意,但有一种方法似乎是合理的标准指纹识别方法。
对于规范的JSON,我也没有真正的标准,但我看到的所有来源至少都符合上面列出的规则(这是与所用对象类型相关的唯一规则)对于JWK's)。