JWT(Json Web Token)
JWT(Json Web Token)とは?
JWS Vs JWE
JWSとJWEはJWTに関する規格である.
JWS(Json Web署名)は、「Jsonを用いて電子署名を行い、URLセキュリティ文字列で表す」.
JWE(Json Web Encryption)は、「Jsonを暗号化しURLセキュリティ文字列として表す」ものです.
JWT Tokenの構成
JWTは.3つの部分に分ける.
ヘッダー、ペイロード、署名を順番に構成します.
Base 64符号化には「+」、「/」、「=」が含まれるが、JWTはURL−セキュリティのBase 64 url符号化を使用してURIでパラメータとして使用する.
1.タイトル(ヘッド)
トークンタイプとハッシュ暗号化アルゴリズム.
1番目はトークンタイプ(JWT)、2番目はHMAC、SHA 256はRSAなどのハッシュアルゴリズムを表す.
Header例
{
"typ": "JWT",
"lag": "HS256"
}
type: type, 여기에서 토큰 유형이 JWT임을 나타낸다.
alg: 토큰 서명 생성을 위한 해시 알고리즘인 algorithm을 의미한다. HS256은 HMAC-SHA256으로, 비밀 키를 사용하는 알고리즘
ex)Payload例
{
"userId": "abcd1111",
"username": "test1111",
"email": "[email protected]",
"iss": "testissu",
"iat": 1515232545,
"exp": 1517889808
}
標準溶接(オプション)
secret keyを含む暗号化されています.
ex)署名例
const data = Base64UrlEncode(header) + '.' + Base64UrlEncode(payload);
const hashedData = Hash(data, secret);
const signature = Base64UrlEncode(hashedData);
まずHederとPayloadを符号化し,次に点(.)けつごう
ハッシュ・アルゴリズム(Headerで定義)を使用して、ハッシュ・データを作成します.
ハッシュ結果を符号化し、信号を得る.
アカウント検証
Reference
この問題について(JWT(Json Web Token)), 我々は、より多くの情報をここで見つけました https://velog.io/@bey1548/JWTJson-Web-Tokenテキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol