Base64 コンバーター

テキストやファイルをBase64にエンコードし、Base64文字列をテキストやファイルにデコードするための多機能ツール。

テキストまたはファイルをBase64にエンコード
または

Base64とは?

Base64は、バイナリデータをASCII文字列形式で表現するためのバイナリ対テキストエンコーディング方式です。データを基数64の表現に変換することで実現します。テキストを扱うように設計されたメディアを介してデータを保存および転送する必要がある場合によく使用されます。これにより、転送中にデータが変更されることなくそのまま維持されることが保証されます。

Base64で使用される文字セットは64文字で構成されています:26個の大文字(A-Z)、26個の小文字(a-z)、10個の数字(0-9)、そして通常は「+」と「/」の2つの追加文字です。必要に応じて、エンコードされたデータの末尾にパディング文字「=」も使用されます。

Base64エンコーディングの仕組み

  1. 1. 入力データ(例:テキスト)はまずバイトシーケンスに変換されます。
  2. 2. これらのバイトは24ビット(3バイト)のブロックにグループ化されます。
  3. 3. 各24ビットブロックは4つの6ビットグループに分割されます。
  4. 4. 各6ビットグループは、Base64文字セットの64文字のいずれかにマッピングされます。この文字が出力文字列の一部になります。
  5. 5. 最後のバイトブロックが24ビット未満の場合、出力文字列の末尾にパディング(`=`)が追加され、長さが4の倍数になるようにします。

Base64の一般的な用途

  • メールの添付ファイル:画像やドキュメントなどのバイナリファイルをエンコードして、メールの本文に埋め込む。
  • データURI:`data:`スキームを使用して画像やその他のファイルをHTMLやCSSファイルに直接埋め込み、HTTPリクエストの数を減らす。
  • 基本HTTP認証:`Authorization`ヘッダーのためにユーザー名とパスワードをエンコードする。
  • バイナリデータの保存:生のバイナリがサポートされていないXMLやJSONなどのテキストベースの形式でバイナリデータを保存する。

さまざまなプログラミング言語でのBase64

以下は、さまざまな人気のある言語でBase64エンコーディングとデコーディングを実行する方法です:

JavaScript

エンコード:

btoa("your string");

デコード:

atob("eW91ciBzdHJpbmc=");

Python

エンコード:

import base64
base64.b64encode(b'your string')

デコード:

import base64
base64.b64decode(b'eW91ciBzdHJpbmc=')

Java

エンコード:

import java.util.Base64;
String encodedString = Base64.getEncoder().encodeToString("your string".getBytes());

デコード:

import java.util.Base64;
byte[] decodedBytes = Base64.getDecoder().decode("eW91ciBzdHJpbmc=");
String decodedString = new String(decodedBytes);

PHP

エンコード:

base64_encode('your string');

デコード:

base64_decode('eW91ciBzdHJpbmc=');

C#

エンコード:

var plainTextBytes = System.Text.Encoding.UTF8.GetBytes("your string");
string encodedString = System.Convert.ToBase64String(plainTextBytes);

デコード:

var base64EncodedBytes = System.Convert.FromBase64String("eW91ciBzdHJpbmc=");
string decodedString = System.Text.Encoding.UTF8.GetString(base64EncodedBytes);