猿问

在 Go 中为 AWS 密钥创建 JWT 签名方法

我生成了一个 ECC_NIST_P521 规范密钥,它使用 ECDSA_SHA_512 签名算法。考虑到这一点,我正在尝试创建一个jwt.SigningMethod,但我不确定要为这些字段使用哪些值。这是我到目前为止所拥有的:

signingMethod := jwt.SigningMethodECDSA {
    Name: "ECC_NIST_P521",
    Hash: crypto.SHA512,
}

具体来说,我不确定名称是否正确,也不知道该KeySizeCurveBits字段使用什么。任何帮助,将不胜感激。


一只萌萌小番薯
浏览 86回答 1
1回答

达令说

您需要指定Hash,CurveBits和KeySize。的值Name被忽略:signingMethod := jwt.SigningMethodECDSA{         Name:      "ECC_NIST_P521",         Hash:      crypto.SHA512,         CurveBits: 521,         KeySize:   66,     }521 位 - 曲线字段的大小。66 - 适合曲线上点的紧凑表示的字节数。签名和验证签名的完整示例: https: //go.dev/play/p/bEnLN2PJv4a
随时随地看视频慕课网APP

相关分类

Go
我要回答