【问题标题】:SHA256, SHA1, SHA384 hash to JSON Web TokenSHA256、SHA1、SHA384 哈希到 JSON Web 令牌
【发布时间】:2020-11-05 08:01:02
【问题描述】:

是否可以从 SHA384 哈希生成 JSON Web 令牌。如果可能,请告知如何可能。 另外请从我的 SHA384 哈希生成 JSON Web Token:

e648d207eb6a457cc3b415e5e6db38759de529051d808b5d34c679c43020a233e6b5161de2e85070127009d61e4c24c8

【问题讨论】:

标签: jwt


【解决方案1】:

不,将哈希转换为 JWT 令牌是不可能的,我也看不出任何人想要这个的原因/原因。

正如评论中提到的,这种方法根本没有任何意义。

哈希不包含任何可以转换为任何内容的可读信息。

如果您的意思是这样,您可以创建一个在有效负载中包含哈希的令牌。

JWT 通常是经过签名的。 SHA 算法,例如HS256 (HMAC-SHA256),可用于签署令牌。 这意味着根据标头和有效负载加上您的秘密计算哈希值,然后对哈希值进行 base64url 编码并作为签名附加到令牌。

您可以阅读此introduction 以了解有关 JWT 的更多信息。

【讨论】:

    【解决方案2】:

    是的,在 Laravel 版本 7 中是可能的。 将 jwt 哈希令牌转换为 shal 时,转到 EloquentUserProvider.php

    public function validateCredentials(UserContract $user, array $credentials)
        {
            $plain = $credentials['password'];
            
            if(sha1($plain) == $user->getAuthPassword()) {
                return true;
            }else {
                return false;
            }
    // return $this->hasher->check($plain, $user->getAuthPassword());
    

    【讨论】:

    • 你能分享更多细节吗?如何转换给定的哈希?
    • 将 jwt 哈希令牌转换为 shal 时 - 这是什么意思?代码只是显示了如何对密码进行哈希处理以将其与密码哈希进行比较,这与 JWT 或问题有什么关系?不清楚您想告诉我们什么。
    猜你喜欢
    • 2012-02-09
    • 1970-01-01
    • 2012-03-28
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-05-02
    相关资源
    最近更新 更多