暗号処理
SAuthBase SDK には、HMAC、AES-GCM 暗号化、および復号化のための機能が用意されています。
セッションIDやアカウント情報などのデータを安全に扱うために活用できます。
HMACの計算
データの改ざん検知やトークン生成の検証などに使用できます。
src/index.ts
const = .("example");
.(.data); // 16進数のハッシュ
データの暗号化
AES-256-GCM を用いてデータを暗号化できます。
src/index.ts
const = .("username|hmac");
.(.data); // iv:encrypted:authTag の形式
- 成功時は文字列形式で暗号化されたデータが返ります。
- 複合化との組み合わせで安全なやり取りが可能です。
データの復号
暗号化された文字列を復号して元のデータに戻します。
src/index.ts
const = .(.data);
.(.data); // 元の username|hmac
- 暗号フォーマットが不正な場合は失敗します。
- 認証トークンなどの中身を検証する際に使用します。
応用:ユーザー名から暗号トークンを生成
generateEncryptedToken()
を使用すると、ユーザー名を HMAC とともに暗号化できます。
src/index.ts
const = await .("exampleUser");
.(.data); // 復号して検証可能な安全なトークン
応用:暗号トークンからセッションID・ユーザー名を抽出
src/index.ts
const = await .(.data);
const = .(.data);
extractUserWithVerify()
は HMAC チェックも含みますextractUserUnsafe()
はユーザー名だけを抽出します(検証なし)
calculateHmac()
は暗号化後の改ざん防止、encrypt()
/decrypt()
は機密保持、extractUserWithVerify()
/extractUserUnsafe()
はセッション連携に活用できます。
これで暗号処理の基本は完了です。
最終更新日