如何将到期添加到 JWE 令牌

  • 本文关键字:JWE 令牌 添加 go jwe
  • 更新时间 :
  • 英文 :


我正在使用Jose库来创建JWE。我已经成功地创建和解析了JWE。JWT 具有 expiat 等字段,有助于在一段时间后使令牌失效。

如何在 JWE 上设置到期时间?

这是我尝试过的,没有exp:

package main
import (
    jose "gopkg.in/square/go-jose.v2"
)
// len(key) is 32
func CreateJWE(value, key string)(string, error){
    encrypter, err := jose.NewEncrypter(jose.A256GCM, jose.Recipient{Algorithm: jose.A256GCMKW, Key: []byte(key)}, nil)
    if err != nil {
        return "", err
    }
    object, err := encrypter.Encrypt([]byte(value)])
    if err != nil {
        return "", err
    }
    return object.FullSerialize(), nil
}
func ParseJWE(jwe, key string)(string, error){
    object, err := jose.ParseEncrypted(jwe)
    if err != nil {
        return "", err
    }
    b, err := (*object).Decrypt(key)
    return string(b), err
}

JWE 没有过期时间

你应该使用 JWT 来解决它

在github中查看此问答

这个 stackoverflow 问题,它是针对 Python 的,但我告诉它是为了阅读并打开你对这个主题的看法

最新更新