kakatoji

membuat token jwt

Nov 13th, 2020
98
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 0.82 KB | None | 0 0
  1. <?php
  2.  
  3. // Create token header as a JSON string
  4. $header = json_encode(['typ' => 'JWT', 'alg' => 'HS256']);
  5.  
  6. // Create token payload as a JSON string
  7. $payload = json_encode(['user_id' => 123]);
  8.  
  9. // Encode Header to Base64Url String
  10. $base64UrlHeader = str_replace(['+', '/', '='], ['-', '_', ''], base64_encode($header));
  11.  
  12. // Encode Payload to Base64Url String
  13. $base64UrlPayload = str_replace(['+', '/', '='], ['-', '_', ''], base64_encode($payload));
  14.  
  15. // Create Signature Hash
  16. $signature = hash_hmac('sha256', $base64UrlHeader . "." . $base64UrlPayload, 'abC123!', true);
  17.  
  18. // Encode Signature to Base64Url String
  19. $base64UrlSignature = str_replace(['+', '/', '='], ['-', '_', ''], base64_encode($signature));
  20.  
  21. // Create JWT
  22. $jwt = $base64UrlHeader . "." . $base64UrlPayload . "." . $base64UrlSignature;
  23.  
  24. echo $jwt;
  25.  
  26.  
  27.  
  28.  
Add Comment
Please, Sign In to add comment