暗号・ハッシュ計算(Crypto Studio)

テキストを入れるだけで SHA-256 や SHA-3 など 12 種類のハッシュ値を一度に表示。Webhook 署名の HMAC 照合、パスワードでのテキスト暗号化、鍵ペアの生成、bcrypt の作成と照合まで、送信なしで手元の端末だけで行えます。

端末内で処理・アップロードなし

ファイルや入力内容はお使いの端末(ブラウザ)の中だけで処理され、サーバーへは送信されません。

テキストのハッシュ値を 12 種類のアルゴリズムで同時に計算します。入力と同時に更新されます。

入力
0 バイト

アルゴリズム

ファイルのハッシュ値は「ファイルハッシュ・整合性確認」ツールで計算できます(GB 単位のファイルにも対応)。

使い方

  1. 上部で「ハッシュ」「HMAC」「暗号化・復号」「鍵ペア生成」「bcrypt」から目的の機能を選びます。

  2. ハッシュ: テキストを入力すると、選んだアルゴリズムの値が即座に表示されます。16 進数や Base64 の入力も「入力の解釈」で切り替えられます。

  3. HMAC: メッセージと鍵を入力し、受け取った署名を「照合する値」に貼ると一致・不一致を表示します。

  4. 暗号化: パスワードと平文を入れて「暗号化する」を押し、出てきた Base64 を保存します。復号は同じパスワードと暗号文を入れて「復号する」を押します。

  5. 鍵ペア生成・bcrypt: 種類やコストを選んでボタンを押し、結果をコピーまたは保存します。

できること

12 種類のハッシュを一度に

MD5・SHA-1・SHA-224/256/384/512・SHA3-256/512・BLAKE2b・BLAKE3・CRC32・xxHash64 を同時に計算し、hex(大文字・小文字)と Base64 で出力します。照合したい値を貼ると、どのアルゴリズムと一致したかを行ごとに示します。

文字コードの違いも再現

テキストを UTF-8 / UTF-16LE のどちらとして扱うかを選べるほか、16 進数や Base64 で与えたバイト列そのもののハッシュも計算できます。「他のツールと値が違う」原因の切り分けに役立ちます。

自己記述型の暗号文

パスワードから PBKDF2-SHA256(60 万回)または Argon2id(64 MiB)で鍵を導出し、AES-256-GCM で暗号化します。暗号文には形式のバージョン・鍵導出の設定・ソルト・IV が含まれ、それらも改ざん検知の対象です。

分かりやすいエラー

パスワード違い・改ざん・コピー漏れ(途中で切れた暗号文)・形式違いを区別して表示します。悪意のある暗号文で端末が固まらないよう、極端な鍵導出の設定は復号前に拒否します。

鍵ペアを PEM と JWK で

RSA-OAEP / RSA-PSS(2048・3072・4096 ビット)、ECDSA(P-256・P-384)、Ed25519 の鍵ペアを生成し、SPKI / PKCS#8 の PEM と JWK の両方で出力します。公開鍵の SHA-256 フィンガープリントも表示します。

bcrypt の作成と照合

コスト 4〜15 で bcrypt ハッシュを作成し、$2a$ / $2b$ / $2y$ 形式のハッシュと照合できます。72 バイトを超えるパスワードは後半が無視される bcrypt の仕様も警告します。

こんなときに

  • 配布されたテキストやトークンの SHA-256 を、公開されている値と照合したい
  • Stripe や GitHub などの Webhook 署名(HMAC-SHA256)が正しいか、実装前に手計算で確かめたい
  • 短いメモや設定値を、パスワード付きで暗号化して保管・受け渡ししたい
  • JWT の署名検証やテスト用に、ECDSA や RSA の鍵ペアを PEM / JWK で用意したい
  • データベースに保存された bcrypt ハッシュが、どのパスワードと一致するか確認したい

対応形式

ハッシュ

MD5SHA-1SHA-224 / 256 / 384 / 512SHA3-256 / 512BLAKE2b-512BLAKE3-256CRC32xxHash64

入力の形式

UTF-8UTF-16LE16 進数Base64 / Base64URL

鍵の出力

PEM(SPKI 公開鍵 / PKCS#8 秘密鍵)JWK

対応状況

機能対応補足
テキストのハッシュ値計算(12 種類)対応最大 10 MB
HMAC(SHA-256 / 384 / 512 / SHA-1)の計算と照合対応—
パスワードによる AES-256-GCM 暗号化・復号対応PBKDF2 または Argon2id
鍵ペア生成(RSA / ECDSA / Ed25519)一部対応Ed25519 は対応ブラウザのみ。SSH 形式・CSR は非対応
bcrypt の作成・照合対応コスト 4〜15
ハッシュ値から元の文字列を復元(いわゆる「ハッシュの復号」)非対応ハッシュは一方向の関数で、復元はできません
OpenSSL など他ツールの暗号文の復号非対応本ツール独自の形式(LWE v1)のみ
ファイルのハッシュ値非対応「ファイルハッシュ・整合性確認」ツールで対応

制限・注意事項

  • ハッシュ・HMAC の入力は最大 10 MB です。
  • 暗号化・復号できるのはテキストのみで、本ツールで作成した形式(先頭が LWE の Base64)に限ります。
  • Argon2id はメモリを 64 MiB 使うため、古いスマートフォンでは時間がかかったり失敗したりすることがあります。その場合は PBKDF2 をお使いください。
  • bcrypt のコストは作成時 4〜15、照合時 17 までです(それ以上は処理時間が長すぎるため)。
  • 生成した秘密鍵は暗号化されていない状態で表示されます。取り扱いには十分注意してください。

プライバシーと安全性

入力したテキスト・鍵・パスワード・生成した秘密鍵は、すべてお使いのブラウザの中だけで処理します。サーバーへの送信、ブラウザへの保存、アクセス解析への記録は行いません。暗号処理には、ブラウザ標準の Web Crypto API と、ページと一緒に配信する hash-wasm を使用しています。

よくある質問

ハッシュ値から元のパスワードや文字列に戻せますか?
戻せません。ハッシュは一方向の関数で、元に戻す計算方法は存在しません。「ハッシュを復号する」とうたうサービスは、よく使われる文字列のハッシュを事前に集めた表で照合しているだけです。本ツールではそのような機能は提供しません。
MD5 や SHA-1 はもう使ってはいけないのですか?
改ざん検知や電子署名など、安全性が必要な用途には使わないでください。意図的に同じハッシュ値を持つ別のデータを作る攻撃が実証されています。偶然の破損チェックや、古いシステムとの互換用途であれば現在も使われています。
他のサイトとハッシュ値が違うのはなぜですか?
多くの場合、文字コード(UTF-8 か Shift_JIS か)や改行コード(LF か CRLF か)、末尾の改行の有無が違います。本ツールでは入力の解釈を切り替えたり、16 進数でバイト列を直接指定したりして原因を確かめられます。
暗号化したテキストは、どうやって復号しますか?
本ツールの「暗号化・復号」で「復号」を選び、暗号文と同じパスワードを入力します。暗号文に鍵導出の設定が含まれているため、どの方式で暗号化したかを覚えておく必要はありません。
パスワードの保存には SHA-256 と bcrypt のどちらを使うべきですか?
パスワードの保存には bcrypt や Argon2id のような、わざと計算を遅くした方式を使ってください。SHA-256 は高速すぎるため、流出すると GPU で大量に総当たりされてしまいます。

最終更新: