Base64

Base64は、3バイトを1つの単位としてそこから4文字生成します。3バイトのデータを6ビットごとに取り出し その6ビットから文字を生成します。

生成される文字は、A-Z,a-z,0-9,/,+の64種類になります。もうひとつデータが3の倍数バイトでない時、 =(イコール)でパディングします。

00011011 , 00100100 , 01000010

3バイトを6ビットごとにする。

000110 , 110010 , 010001 , 000010

6ビットから文字を生成する。

G, y, R, C

3の倍数バイトで終わらない場合

データが3の倍数バイトで終わらない場合、6ビットのデータが作成できない場合がある。その場合、6ビットの データを作るため0で埋めて(右側)文字を生成する。4文字に満たない場合、=(イコール)でパディングします。

このためBase64では、必ず4の整数倍の長さになります。

Base64で使用される文字

16進数10進数文字16進数10進数文字16進数10進数文字16進数10進数文字
0x000A0x1117R0x2234i0x3351z
0x011B0x1218S0x2335j0x34520
0x022C0x1319T0x2436k0x35531
0x033D0x1420U0x2537l0x36542
0x044E0x1521V0x2638m0x37553
0x055F0x1622W0x2739n0x38564
0x066G0x1723X0x2840o0x39575
0x077H0x1824Y0x2941p0x3A586
0x088I0x1925Z0x2A42q0x3B597
0x099J0x1A26a0x2B43r0x3C608
0x0A10K0x1B27b0x2C44s0x3D619
0x0B11L0x1C28c0x2D45t0x3E62+
0x0C12M0x1D29d0x2E46u0x3F63/
0x0D13N0x1E30e0x2F47v   
0x0E14O0x1F31f0x3048w   
0x0F15P0x2032g0x3149x   
0x1016Q0x2133h0x3250y