読み方 : ベースろくじゅうよん

Base64

概要

Base64とは、任意のデータを一定の規則に基づいて特定の文字種のみからなるテキスト(文字)データに置き換える変換方式の一つで、64種類の英数字のみを用いてデータを表現する方式。電子メールの添付ファイル(MIME)などでよく用いられる。
Base64のイメージ画像

アルファベットの大文字(26文字)と小文字(26文字)、数字(10文字)、「+」「/」の2つの記号を用いてあらゆるデータを表現する。元のデータの置き換えには使わないが、規定の文字数に達しない場合に「=」も使用される。

ASCII形式のテキストしか受け付けないデータ形式や伝送路、あるいは特定の記号に制御用の機能が与えられていて使用できない状況などで、バイナリデータや多バイト文字を含む任意のデータを安全に表現することができる。

具体的な変換手順としては、まず元のバイナリデータの列を6ビットずつに区切り(末尾が6ビットに足りない場合は0を追加)、これを整数値(0から63)に見立てて変換表で該当する文字に置き換える。

データがバイト境界で区切られるよう、変換後の文字は4文字をセットに扱われ、足りない場合は4文字になるまで末尾に「=」が追加される。変換表では大文字「A」から「Z」がそれぞれ順に0から25に、小文字「a」~「z」が26~51に、「0」~「9」が52~61に、「+」が62に、「/」が63に、それぞれ対応している。

Base64はUNIX系OSで古くから使われている「uuencode」を元に考案された。バイナリのテキストエンコーディング方式としては他にも、かつてのMac OSで用いられた「BinHex」や日本で考案された「ish」などがある。派生する方式として、「l」(小文字エル)と「I」(大文字アイ)など、人間から見て紛らわしい形の文字を排除した58文字のみで表現する「Base58」がある。

ビット
列
値文
字
コード ビット
列
値文
字
コード ビット
列
値文
字
コード ビット
列
値文
字
コード
000000 0A6501000016Q8110000032g10311000048w119
000001 1B6601000117R8210000133h10411000149x120
000010 2C6701001018S8310001034i10511001050y121
000011 3D6801001119T8410001135j10611001151z122
000100 4E6901010020U8510010036k10711010052048
000101 5F7001010121V8610010137l10811010153149
000110 6G7101011022W8710011038m10911011054250
000111 7H7201011123X8810011139n11011011155351
001000 8I7301100024Y8910100040o11111100056452
001001 9J7401100125Z9010100141p11211100157553
00101010K7501101026a9710101042q11311101058654
00101111L7601101127b9810101143r11411101159755
00110012M7701110028c9910110044s11511110060856
00110113N7801110129d10010110145t11611110161957
00111014O7901111030e10110111046u11711111062+43
00111115P8001111131f10210111147v11811111163/47
* 文字コードはASCIIの10進表記

他の辞典等による「Base64」の解説 (外部サイト)

この記事の著者 : (株)インセプト IT用語辞典 e-Words 編集部
1997年8月より「IT用語辞典 e-Words」を執筆・編集しています。累計公開記事数は1万ページ以上、累計サイト訪問者数は1億人以上です。学術論文や官公庁の資料などへも多数の記事が引用・参照されています。