Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/go/7.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
(Golang)JWT签名验证问题_Go_Jwt_Jwt Go - Fatal编程技术网

(Golang)JWT签名验证问题

(Golang)JWT签名验证问题,go,jwt,jwt-go,Go,Jwt,Jwt Go,我正试图在Golang了解JWT代币。我正在使用 让我措手不及的是,我可以输入多个有效的签名 例如,前往 -输入MySuperSecretKey作为密码 此令牌有效: EYJHBGCIOIJIUZI1NIISINR5CCIKPXVCJ9.EYJLEHAIOJ0NTC3MZAYODMSINVZZZXIIOIIIIIJ1C2VYMSJ9.SxshVL42DUH9e7jXUblbB\U bTwKxhe4jo70DrvbQMlaU 除了这个: EYJHBGCIOIJIUZI1NIISINR5CCIKPX

我正试图在Golang了解JWT代币。我正在使用

让我措手不及的是,我可以输入多个有效的签名

例如,前往 -输入MySuperSecretKey作为密码

此令牌有效:

EYJHBGCIOIJIUZI1NIISINR5CCIKPXVCJ9.EYJLEHAIOJ0NTC3MZAYODMSINVZZZXIIOIIIIIJ1C2VYMSJ9.SxshVL42DUH9e7jXUblbB\U bTwKxhe4jo70DrvbQMlaU

除了这个:

EYJHBGCIOIJIUZI1NIISINR5CCIKPXVCJ9.EYJLEHAIOJ0NTC3MZAYODMSINVZZZXIIOIIIIIJ1C2VYMSJ9.SXSHVL42DUH9E7JXUBLB6IKXHE4JO70DRVBQMLAV

事实上,如果我将最后一个字母改为V、W或X,我会收到一条“签名验证”消息


谁能告诉我这里发生了什么事

这是签名的Base64编码,可以将最后一个字母更改为某些目标,而不会影响相关位


尝试将两个签名放入base64->hex解码器,您将得到相同的结果。事实上,两个签名都被重新评估为base64 SXSHVL42DUH9E7JXUBLBBTWKXHE4JO70DRVBQMLAQ==

我认为这是一个与安全相关的问题,因此你可以在感谢中找到更好的答案,就是它,非常有用的网站btw。!