登录
首页 >  Golang >  Go问答

生成 JWT 并提供 RSA 公钥

来源:stackoverflow

时间:2024-03-07 15:15:14 279浏览 收藏

积累知识,胜过积蓄金银!毕竟在Golang开发的过程中,会遇到各种各样的问题,往往都是一些细节知识点还没有掌握好而导致的,因此基础知识点的积累是很重要的。下面本文《生成 JWT 并提供 RSA 公钥》,就带大家讲解一下知识点,若是你对本文感兴趣,或者是想搞懂其中某个知识点,就请你继续往下看吧~

问题内容

我看到私钥,但在哪里提供公钥以便我可以发布。工作完美,但我缺少公钥,创建 jwt 令牌时在哪里给出它?我假设下面的示例密钥 (dnfksdmfksd) 是私钥。我正在使用 github.com/dgrijalva/jwt-go 谢谢!

func CreateToken(userid uint64) (string, error) {
    var err error
     //Creating Access Token
     os.Setenv("ACCESS_SECRET", "jdnfksdmfksd") //this should be in an env file
     atClaims := jwt.MapClaims{}
     atClaims["authorized"] = true
     atClaims["user_id"] = userid
     atClaims["exp"] = time.Now().Add(time.Minute * 15).Unix()
     at := jwt.NewWithClaims(jwt.SigningMethodHS256, atClaims)
     token, err := at.SignedString([]byte(os.Getenv("ACCESS_SECRET")))
     if err != nil {
       return "", err
     }
     return token, nil
   }

解决方案


HS256是一种对称算法。它使用共享秘密。没有公钥/私钥。 JWT 的接收者必须使用相同的密钥来验证签名。

到这里,我们也就讲完了《生成 JWT 并提供 RSA 公钥》的内容了。个人认为,基础知识的学习和巩固,是为了更好的将其运用到项目中,欢迎关注golang学习网公众号,带你了解更多关于的知识点!

声明:本文转载于:stackoverflow 如有侵犯,请联系study_golang@163.com删除
相关阅读
更多>
最新阅读
更多>
课程推荐
更多>