>_devtools-hub

Hash Studio

MD5 / SHA ハッシュ生成 & 検証

BOOTHで見る(有料版)
開発者向けセキュリティハッシュ

テキスト入力またはファイルドロップで MD5 / SHA-1 / SHA-256 / SHA-512 のハッシュ値をリアルタイム生成。既知のハッシュ値との照合(Verify)にも対応。インターネット接続不要で、入力データは外部に送信されない。

広告

Hash Studio

Input

or drop a file

Hashes

MD5
SHA-1
SHA-256
SHA-512

※ MD5 は Web Crypto API 非対応のためデスクトップ版のみ。SHA-1 / SHA-256 / SHA-512 はブラウザで計算します。

Features

  • MD5 / SHA-1 / SHA-256 / SHA-512 をリアルタイム生成
  • テキスト入力 & ファイルドロップに対応
  • ハッシュ値をワンクリックでコピー
  • 既知のハッシュ値と照合して一致確認(Verify)

Desktop Only

有料版のみ

デスクトップ版(BOOTH)でのみ使える機能

  • ファイルの非同期ストリーム処理(大容量ファイル対応)

Desktop App

デスクトップ版を入手する

Web版にはない機能をデスクトップ版で追加しています。

  • ファイルの非同期ストリーム処理(大容量ファイル対応)
BOOTH で見る

ハッシュ関数の基礎 — MD5・SHA-1・SHA-256・SHA-512の使い分け

ハッシュ関数は任意のデータから固定長のハッシュ値(ダイジェスト)を生成する一方向関数です。パスワード管理・ファイル整合性検証・デジタル署名など、セキュリティの根幹を担う技術です。

MD5・SHA-1はなぜ非推奨なのか

MD5はハッシュ衝突(異なるデータが同じハッシュになる)が2004年に発見されており、デジタル署名・証明書・セキュリティ用途には使えません。SHA-1も2017年にGoogleが「SHAttered攻撃」でPDFの衝突を実証し、現在はブラウザ・認証局ともに廃止済みです。ただしファイルチェックサムの確認など、攻撃者がデータを操作できない場面では速度の面から引き続き使われています。Git内部のハッシュもSHA-1でしたが(現在SHA-256移行中)、これはバージョン追跡の用途なのでセキュリティ攻撃の文脈とは異なります。新規プロジェクトではSHA-256以上を使うのが原則です。

SHA-256とSHA-512の違い

SHA-256は256ビット(64文字の16進数)のハッシュを生成し、現在最も広く使われているアルゴリズムです。SHA-512は512ビット(128文字の16進数)で、より衝突耐性が高く64ビット演算が最適化されているため64ビットCPUでは高速です。TLS証明書・Git・ブロックチェーン・JWTの署名(HS256/RS256)など多くのシステムがSHA-256を採用しています。SHA-3(Keccak)はSHA-2と並列して設計された新世代のアルゴリズムで、SHA-2に脆弱性が発見されたときの代替として策定されましたが、現時点でSHA-2に致命的な問題はなく移行は限定的です。ブラウザのWebCrypto APIはSHA-256・SHA-384・SHA-512をサポートしており、JavaScriptからハッシュ計算が可能です。

ファイルの整合性検証

ソフトウェアのダウンロードページではSHA-256のチェックサムが公開されることが多く、ダウンロードしたファイルが改ざんされていないか確認するために使います。Hash Studioではファイルをドロップするだけでハッシュ値を生成し、既知のハッシュ値との一致を確認(Verify)できます。Linuxディストリビューション・Pythonインタープリタ・OpenSSLなどのオープンソースソフトウェアは必ずSHA-256チェックサムを公開しており、ダウンロード後に必ず検証することがセキュリティの基本です。CI/CDパイプラインでも依存パッケージのハッシュを固定する「ロックファイル」(package-lock.json・poetry.lock)はこの整合性検証の仕組みを活用しています。Hash Studioは大容量ファイルもブラウザ内でストリーミング処理するため、サーバーに送信せず安全に検証できます。

パスワードのハッシュ化について

パスワードを平文でDBに保存するのは危険であるため、ハッシュ化して保存します。ただし単純なSHA-256ハッシュではレインボーテーブル攻撃やブルートフォース攻撃に弱いため、bcrypt・Argon2・scryptなどのパスワード専用ハッシュ関数とソルト(ランダムな付加値)を使うべきです。これらはあえて計算コストが高くなるよう設計されており、攻撃者が大量のパスワードを試す速度を下げる効果があります。Node.jsではargon2・bcryptjsパッケージが一般的で、PHPにはpassword_hash()関数が標準で搭載されています。Hash StudioはMD5・SHA-256などの汎用ハッシュ関数のツールであり、パスワードハッシュにはbcrypt等の専用ライブラリを使ってください。

広告

Related Tools

base64-studio

Base64 エンコード & デコード

開発者向けテキストエンコード

使ってみる →

BOOTH

JSON Studio

JSON フォーマッター & バリデーター

JSON開発者向けフォーマッター

使ってみる →

BOOTH

color-deck

カラーコード変換 & パレット保存

カラーデザイン開発者向け

使ってみる →

BOOTH

このツールを共有する