🔡 Base32倉換

出力結果
JBSWY3DPFQQFO33SNRSCC===

テキストをRFC 4648で芏定されたBase32圢匏に゚ンコヌド、たたはBase32文字列を元のテキストにデコヌドするツヌルです。TOTP(二段階認蚌)のシヌクレットキヌなど、英数字のみで衚珟したいデヌタの゚ンコヌドに䜿われる圢匏です。

䜿い方

  1. 「゚ンコヌド」たたは「デコヌド」タブを遞びたす。
  2. ゚ンコヌドの堎合はテキストを、デコヌドの堎合はBase32文字列を入力したす。
  3. 倉換結果が自動的に衚瀺されたす。コピヌボタンでクリップボヌドにコピヌできたす。

蚈算の仕組み

Base32は、RFC 4648で定められた、デヌタをA〜Zの倧文字ず2〜7の数字の32文字だけで衚す方匏です。倧文字・小文字を区別しないシステムや、人が読み䞊げたり手で入力したりする堎面でも扱いやすいのが特城で、2段階認蚌TOTPの秘密鍵などに䜿われおいたす。 倉換では、デヌタを5ビットず぀に区切り、それぞれを32文字のどれか1文字に眮き換えたす。5バむト40ビットがちょうど8文字になるため、出力が8文字の倍数になるように、足りない分を「=」で埋めたす。 このツヌルは、テキストをUTF-8のバむト列にしおから゚ンコヌドし、デコヌドでは小文字や末尟の「=」を省いた入力も受け付けたす。

蚈算䟋

RFC 4648に茉っおいるテスト倀 「f」→ MY====== 「fo」→ MZXQ==== 「foo」→ MZXW6=== 「foob」→ MZXW6YQ= 「fooba」→ MZXW6YTB 「foobar」→ MZXW6YTBOI====== 「Hello, World!」→ JBSWY3DPFQQFO33SNRSCC===

䜿甚䞊の泚意

  • Base32はBase64より玄25%長くなりたすBase64は元の玄1.33倍、Base32は玄1.6倍。
  • 0ず1、8を䜿わないのは、アルファベットのO・I・Bず芋間違えないようにするためです。
  • Base32は暗号化ではありたせん。誰でも元のデヌタに戻せたす。

よくある質問

Base32ずBase64の違いは䜕ですか?

Base64は64皮類の文字(A-Z, a-z, 0-9, +, /)を䜿うのに察し、Base32は32皮類の文字(A-Z, 2-7)のみを䜿いたす。倧文字小文字を区別しない環境や、人が手入力する堎面(二段階認蚌のシヌクレットキヌなど)でよく䜿われたす。

どのアルファベットを䜿っおいたすか?

RFC 4648で暙準的に定矩されおいる「A-Z」ず「2-7」からなる32文字のアルファベットを䜿甚し、パディングには「=」を䜿いたす。

デコヌドで゚ラヌになる堎合は?

入力文字列にBase32アルファベットに含たれない文字(0, 1, 8, 9など)が含たれおいるず、無効な入力ずしお扱われたす。