NewIntroducing QODEX QA Services — platform-powered QA for API-driven teams.Learn more →
HMAC SHA-1 Hash Generator

HMAC SHA-1 ハッシュジェネレーター

QodexのHMAC SHA-1ジェネレーターを使用して安全な署名を作成します。APIメッセージ、webhook、ファイル整合性の検証に最適です。完全なセキュリティワークフローのために、Base64エンコーダーSHA-1ジェネレーター、またはURLエンコーダーと組み合わせてご利用ください。

HMAC SHA-1 ハッシュジェネレーター - ドキュメント

HMAC SHA-1 とは何ですか?

HMAC SHA-1は、SHA-1を使用したハッシュベースのメッセージ認証コードの略です。秘密鍵SHA-1ハッシュアルゴリズムを組み合わせ、改ざん防止ハッシュを生成する広く使用される暗号化手法です。このハッシュはメッセージの発信元その整合性の両方を認証します。

SHA-1単体には既知の脆弱性がありますが、HMAC SHA-1は多くのアプリケーションで依然として安全です。鍵を組み込むことで、ブルートフォース攻撃を大幅に困難にしています。

HMAC SHA-1 の仕組み

アルゴリズムは以下のステップで機能します。

  1. 鍵の正規化:

    • 鍵がブロックサイズ(SHA-1では64バイト)より大きい場合はハッシュ化します。

    • 64バイト未満の場合はゼロでパディングします。

  2. 2つのパッドを作成:

    • ipad(0x36を繰り返す)と opad(0x5Cを繰り返す)

  3. 2ステップハッシュ:

    inner_hash = SHA1((key ⊕ ipad) || message)
    final_hash = SHA1((key ⊕ opad) || inner_hash)


    結果は鍵とメッセージの両方に固有の固定長160ビット(40文字の16進数)ハッシュです。

Qodexツールとのリアルタイム連携

このツールと組み合わせて使用できます。

実用的な例

例1: APIリクエストへの署名

メッセージ:

action=get-user&timestamp=1717555200

秘密鍵:

APIKey123

HMAC SHA-1 出力:

7f9c2ba4e88f827d616045507605853e63b6c1dc

このHMACはサーバーサイドでの検証のためにAPIヘッダーに追加できます。

例2: ファイルコンテンツの安全な検証

JSONやXMLなどのファイルコンテンツをプライベート鍵でハッシュ化できます。誰かがファイルを改ざんした場合、検証時にハッシュが一致しなくなります。

例3: webhookセキュリティ

アプリがwebhookを受信する際、ヘッダーで送られてくるHMAC SHA-1署名を使って真正性を検証します。自分のサイドで再計算して比較してください。

コードスニペット: Python での HMAC SHA-1

import hmac
import hashlib

def generate_hmac_sha1(key, message): return hmac.new(key.encode(), message.encode(), hashlib.sha1).hexdigest()

print(generate_hmac_sha1("APIKey123", "action=get-user&timestamp=1717555200"))

主なメリット

機能

メリット

共有秘密鍵

IDと整合性の両方を確認する

コンパクトなハッシュサイズ

160ビット出力、レガシーシステムに適している

言語サポート

Python、JavaScript、Javaなどでサポートされている

簡単なAPIへの署名

ヘッダーやクエリ文字列で使用される

プロのヒント

  • 秘密鍵は環境変数に保存し、フロントエンドや公開コードには含めないでください。

  • ヘッダーやURLでハッシュを送信する際はBase64エンコーダーを使用してください。

  • tokenの検証やwebhookなど安全なユースケースには、SHA-1単体ではなく常にHMACを使用してください。

  • セキュリティが優先される場合はHMAC SHA-256に切り替えてください。

  • 出力の違いを理解するためにSHA-1ジェネレーターで署名プロセスをテストしてください。

Frequently Asked Questions

HMAC SHA-1 はまだ安全に使用できますか?

はい、強力な秘密鍵と共に使用する場合、HMAC SHA-1はAPIへの署名やwebhookなど多くのユースケースで安全です。

HMAC SHA-1 は解読できますか?

いいえ。HMAC関数は一方向であり、逆算または復号することはできません。

ハッシュの長さはどのくらいですか?

出力は40文字の16進数で表される160ビットハッシュです。

異なるアプリで同じ秘密鍵を使用できますか?

リスクを分離するために、異なる環境やサービスには異なる鍵を使用する方が安全です。

HMAC SHA-1 は SHA-1 より優れていますか?

はい。SHA-1単体は脆弱です。HMAC SHA-1は秘密鍵を含むため、セキュリティが大幅に向上します。

今すぐAPIをテストしましょう!

Qodexはプレーンな日本語で書かれた内容をセキュアですぐに実行できるテストに変換します。