0
我已经在php中创建了JWT。我已经找到了从以下链接创建JWT的方法。PHP中的反向JWT
JWT (JSON Web Token) in PHP without using 3rd-party library. How to sign?
<?php
//build the headers
$headers = ['alg'=>'HS256','typ'=>'JWT'];
$headers_encoded = base64_encode(json_encode($headers));
//build the payload
$payload = ['sub'=>'1234567890','name'=>'John Doe', 'admin'=>true];
$payload_encoded = base64_encode(json_encode($payload));
//build the signature
$key = 'secret';
$signature = hash_hmac('SHA256',"$headers_encoded.$payload_encoded",$key,true);
$signature_encoded = base64_encode($signature);
//build and return the token
$token = "$headers_encoded.$payload_encoded.$signature_encoded";
echo $token;
?>
现在我如何可以验证它。我从Android发送令牌,但我想验证这是否是正确的令牌。那么在完成请求之前,我该如何在代码中完成呢?
我应该在数据库中存储令牌吗?
是否为api提供安全性的正确方法?
使用库。 https://github.com/lcobucci/jwt –
我知道有库可用,但我想手动执行。我认为如果jwt令牌生成是可能的,那么反转它也是可能的。 https://jwt.io可以完成这项任务。 –
“我想手动完成” - > http://www.cryptofails.com/post/75204435608/write-crypto-code-dont-publish-it –