UUIDジェネレーター
UUID v4(ランダムな汎用一意識別子)を生成します。クリックするたびに新しいものが生成されます。
このツールの使い方
- 1
Click the Generate UUID button to produce a fresh random v4 UUID.
- 2
Read the 36-character identifier shown in the canonical 8-4-4-4-12 format below the button.
- 3
Click Copy to put the UUID on your clipboard for pasting into code, a database, or a config file.
- 4
Click Generate UUID again whenever you need another one — every click replaces the value with a brand-new random UUID.
UUIDとは何か、そしてなぜソフトウェアはそれを使うのか?
UUID(Universally Unique Identifier、Microsoftの文脈ではGUIDと呼ばれることもあります)は、システム間の調整を必要とせずにエンティティを識別するために使われる128ビットの値です。UUIDの考え方は、互いを知らない2台の別々のマシン上で動作する2つの別々のプログラムが、それぞれUUIDを生成し、それらが決して衝突しないと確信を持って想定できる、というものです。この性質が分散システムの設計を可能にします。中央のカウンターなしに任意のサービスがローカルで識別子を発行できるようにしたり、行を振り直すことなくデータベースを統合したり、サーバーがリクエストを目にする前にクライアント側で識別子を事前生成したりできます。UUIDにはRFC 4122で定義された5つの正式なバージョンがあります。v1(時刻 + MACアドレスベースで、作成時刻とマシンのアイデンティティが漏れる)、v3(名前空間 + 名前のMD5ハッシュ)、v4(ランダム、最も一般的)、v5(名前空間 + 名前のSHA-1ハッシュ)です。RFC 9562ではv6(時刻順、v1のようだがMACが漏れない)とv7(Unixタイムスタンプ + ランダムで、時系列順に並ぶためデータベースの主キー向けに特別に設計されている)が追加されました。このツールはcrypto.randomUUID()を使ってUUID v4を生成します。これはブラウザの基盤となるオペレーティングシステムの暗号学的に堅牢なランダム性を利用しており、これはTLSの鍵が生成されるのと同じ供給源です。出力はPythonのuuid.uuid4()、Nodeのcrypto.randomUUID()、Goのgoogle/uuid.NewRandom()と1バイト単位で同一です。
よくある活用例
データベースの主キー:データベースを統合する必要があるときや、クライアント側で識別子を生成する必要があるときに、自動増分の整数を置き換えます。
クッキー内のセッション識別子:有効なセッションIDを総当たりで推測することが計算上現実的でないほど十分に長いものです。
APIリクエストのべき等性キー:リクエストを安全に再送できます。サーバーはUUIDで重複を排除します。
アップロードされたファイルの識別子:パスの衝突を避け、元の名前を露出させないために、アップロードされたファイルにUUIDで名前を付けます。
分散トレーシングの識別子:各リクエストにUUIDが割り当てられ、ログを関連付けるためにサービス間を伝播します。
テストデータの識別子:ケース間で識別子を調整することなく、テストデータに対して予測可能なランダム性を得られます。
よくある質問
v4とは何を意味しますか?▼
UUIDは実際にどれくらい一意なのですか?▼
データベースの主キーにはv4とv7のどちらを使うべきですか?▼
crypto.randomUUID()を使うのは安全ですか?▼
UUIDとGUIDの違いは何ですか?▼
UUIDをURL用に短縮できますか?▼
なぜ私のUUIDは別のものと同じ文字で始まるのですか?▼
関連ツール
JWTデコーダー
JSON Web Token(JWT)を瞬時にデコードします。お使いのブラウザ内で実行されるため、トークンがデバイスの外に出ることはなく、本番環境のシークレットでも安全に利用できます。
JSONフォーマッター&バリデーター
JSONをオンラインで整形、検証、minify(圧縮)します。すべてお使いのブラウザ内で動作するため、データがデバイスから外に出ることはありません。
XMLフォーマッター
XMLドキュメントを整形して読みやすくします。SOAP、サイトマップ、RSSフィード、設定ファイルに役立ちます。
Base64エンコーダー&デコーダー
文字列をBase64にエンコードしたり、Base64をテキストにデコードしたりします。あなたのプライバシーを尊重し、すべてブラウザ内で実行されます。
URLエンコーダー&デコーダー
テキストをURLセーフなエンコード(パーセントエンコーディング)に変換したり、その逆を行ったりします。クエリ文字列、リダイレクト、OAuthフローに役立ちます。
HTMLエンティティエンコーダー&デコーダー
特殊文字をHTMLエンティティ(&、<など)に変換したり、その逆を行ったりします。テキストを安全にHTMLへ埋め込むのに役立ちます。