ハッシュ/暗号

UUID Generator

バージョン 1、3、4、5、6、7 の UUID を生成 — ランダム、時刻ベース、名前ベース(name-based)。

A UUID (Universally Unique Identifier) is a 128-bit identifier that's unique in practice without a central registry: two independent servers can generate one at the same moment and almost never collide. The versions differ in how they're generated.

Which version to pick

Common uses

Things to keep in mind

UUID v1 and v6 embed the generating device's MAC address — avoid them if that's an unwanted disclosure.

The format is 32 hexadecimal characters grouped with hyphens as 8-4-4-4-12 (e.g. 550e8400-e29b-41d4-a716-446655440000).

このツールに関する記事: UUID:ほとんど重複しない識別子はどう生成されるか

よくある質問

UUID v4と他のバージョンの違いは何ですか?

UUID v4はランダムまたは疑似ランダムな数値から生成されるため、時刻やハードウェア識別子に依存しない最もシンプルな選択肢です。v1のようなバージョンはタイムスタンプとMACアドレスを、v5は名前空間と名前からUUIDを決定論的に導出します。

生成された2つのUUIDが衝突する可能性はどのくらいですか?

極めて低いです。v4のUUIDは122ビットのランダム性を持つため、統計的に衝突が起こりうるまでには何世紀もの間、毎秒何十億ものUUIDを生成し続ける必要があります。

ここで生成されたUUIDはどこかに送信されますか?

いいえ。生成は暗号学的に安全な乱数源を使ってブラウザ内で完全に行われます。サーバーには何も送信されません。

UUID v7とは何で、データベースにおいてv4よりどう優れているのですか?

UUID v7は先頭ビットにタイムスタンプを埋め込むため、値が作成時刻順に自然にソートされます——一方、完全にランダムなv4は、新しいレコードの挿入順序が無秩序になるため、データベースインデックスの性能に悪影響を与えます。

UUIDを秘密のトークンとして使ってもよいですか?

UUID v4であれば可能です。暗号学的に安全な乱数生成器で生成されるためです。ただしUUID v1は作成時刻とデバイスのMACアドレスを部分的に露出するため、予測不可能性が求められる用途には適しません。

記事: ハッシュ/暗号

Hash Generator:MD5、SHA-1、SHA-256はどう違うのか

MD5が今もファイルの整合性検証に使われるが、パスワードには使われない理由。

Checksum Verifier:ファイルが壊れていないか確認する方法

一致するチェックサムがファイルの整合性を確認する一方、誰が作成したかは確認しない理由。

HMAC:鍵付きハッシュが通常のハッシュとどう違うか

通常のSHA-256がメッセージの改ざんから保護しない理由と、HMACがそれを可能にする理由。

Bcrypt:パスワードが速くではなく遅くハッシュ化される理由

速いSHA-256がパスワードに向かない理由と、遅いbcryptが適切な選択である理由。

パスワード生成ツール:パスワードを本当に強くするものは何か

辞書の単語からなる長いパスワードが、記号や数字を含む短いパスワードより強い理由。

AES:共通鍵暗号の仕組み

AESで同じ鍵がデータの暗号化と復号の両方に使われる理由と、それが公開鍵暗号とどう違うか。

Argon2:このアルゴリズムがパスワードハッシュコンペティションで優勝した理由

Argon2が古いパスワードハッシュ化アルゴリズムよりGPUを使った攻撃に対してどう優れた防御を行うか。

Scrypt:このアルゴリズムがなぜこれほど多くのメモリを必要とするか

scryptがASICデバイスでのクラッキングを困難にするために意図的に大量のメモリを要求する理由。

TOTP:認証アプリのワンタイムコードはどう機能するか

Google Authenticatorのコードがインターネットなしで動作し、時刻だけでサーバーと同期する理由。

PBKDF2:最も古い鍵ストレッチング標準

PBKDF2の推奨反復回数が毎年増え続ける理由。

X.509:SSL証明書の中身は何か

緑色の錠前を表示する前に、ブラウザがサイトの証明書で正確に何をチェックしているか。

PGP:公開鍵と秘密鍵による暗号化の仕組み

PGPの公開鍵は自由に共有できるが、秘密鍵は決して共有してはいけない理由。