> エンコード | デコード | 圧縮 <

// URL安全でコンパクトなデータ表現のためのBase62エンコーディング

[セキュア]

ローカル処理

100%クライアントサイドBase62エンコーディング。データがブラウザから外部に送信されることはありません。

[コンパクト]

URL安全

+、/、=などの特殊文字なし。URL やファイル名に最適です。

[無料]

双方向対応

エンコードとデコードの両機能。可逆的なデータ変換。

// BASE62エンコーディングについて

Base62の仕組み:

Base62は62文字(0-9、A-Z、a-z)を使用してデータを表現します。バイナリデータを特殊文字なしでコンパクトなURL安全な文字列に変換します。

例:

"こんにちは" → 5TP3P3v

Base62を使用する理由:

  • >エンコードなしでURL安全
  • >特殊文字なし(+、/、=)
  • >16進数より短い
  • >データベースキーに最適
  • >人間が読みやすい形式

>> よくある質問

Q:Base62エンコーディングとは何ですか?

A:Base62エンコーディングは62文字(0-9、A-Z、a-z)を使用してデータを表現する方式です。Base64と類似していますが、特殊文字(+、/、=)を使わないため、URL安全でファイル名にも適しています。

Q:Base62とBase64の違いは?

A:Base62は62文字を使用し、Base64は64文字を使用します。Base62は特殊文字を避けることでURLエンコーディング不要のURL安全性を実現。Base64の方がコンパクトですが、URLエンコーディングが必要です。

Q:Base62をいつ使うべきですか?

A:URLスラッグ、ファイル名、データベースキー、または特殊文字なしのコンパクトでURL安全なエンコーディングが必要な状況で使用してください。

Q:Base62エンコーディングは可逆的ですか?

A:はい、Base62エンコーディングは完全に可逆的です。エンコードされたデータは何の損失もなく元の形に戻すことができます。

Q:Base62エンコーディングの効率性は?

A:Base62はBase64より約20%大きくなりますが、URLエンコーディングの必要性を排除します。多くの場合、Webアプリケーションでは全体的により効率的です。

// RELATED ARTICLES

// クイックリファレンス

DECHEXBase36Base62
0000
613d1pz
623e1q10
10003e8rsG8
12345678975bcd1521i3v98M0kX
4294967295ffffffff1z141z34gfFC3

// コード例

Alphabet  0-9 A-Z a-z                 (0-9A-Za-z, no official RFC)
Capacity  62^6 = 56,800,235,584     62^7 = 3,521,614,606,208
Python    A="0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz"
          while n: s = A[n % 62] + s; n //= 62
JS        npm i base62     base62.encode(123456)

>> その他の質問

Q: Base62に標準規格はありますか?

A: いいえ、Base62にはRFCがありません。ライブラリごとに文字の並びが異なり、最も一般的なのは 0-9A-Za-z(本ツールと同じ)で、0-9a-zA-Z や A-Za-z0-9 もあります。値のデコードには同じ文字順が必要です。

Q: Base62は大文字小文字を区別しますか?

A: はい。A と a は別の記号で値も異なるため、Base36の2倍の記号数になります。DNSラベルなど大文字小文字を区別しない値が必要ならBase36を使います。

Q: 6文字・7文字で何件の短縮URLを作れますか?

A: 6文字で62⁶ = 56,800,235,584通り(約568億)、7文字で62⁷ = 3,521,614,606,208通り(約3.5兆)です。そのため短縮URLサービスでは通常6〜8文字で足ります。