🔐 Base64エンコーダー / デコーダー
テキストをBase64エンコードに変換、またはBase64文字列を読み取り可能なテキストにデコードします。
このツールとは?
Base64エンコーダーおよびデコーダーは、プレーンテキストとBase64表現の間でデータを変換するユーティリティです。Base64は、大文字と小文字、数字、プラス、スラッシュの64の印刷可能ASCII文字を使用してバイナリデータを表現するバイナリからテキストへのエンコードスキームで、パディングには等号が使用されます。このエンコーディングは、JSON、XML、HTML、メールなどのテキストのみのチャネルを通じてバイナリデータを破損なく安全に送信できるため、Web開発、メールシステム、データ交換で広く使用されています。一般的なユースケースには、HTMLやCSSにデータURLとして画像を直接埋め込むこと、HTTPヘッダーの認証資格情報のエンコード、JSONペイロードでのバイナリデータの保存、メールでのファイル添付の送信、APIトークンのエンコードが含まれます。Base64エンコーディングは、元のデータの3バイトごとに4つのBase64文字になるため、データサイズを約33%増加させます。このツールはエンコードとデコードの両方を即座に処理し、適切なUTF-8変換を通じてUnicodeテキストをサポートします。また、パディングや不正な入力などのエッジケースも適切に処理し、明確なエラーメッセージを提供します。仕組み
Base64エンコーダーおよびデコーダーは、組み込みのJavaScript関数を使用して変換を実行します。エンコードの場合、まずTextEncoder APIを使用して入力テキスト文字列をUTF-8バイトシーケンスに変換し、次にbtoa関数を適用してBase64文字列を生成します。この2段階のプロセスにより、btoa単体ではLatin-1文字でのみ正しく動作するため、Unicode文字の正しい処理が保証されます。デコードの場合、atob関数を適用してBase64文字列をバイナリ文字列にデコードし、次にバイトシーケンスをUTF-8テキスト文字列に変換し直します。ツールは、デコード用の入力が整形式のBase64であることを検証し、有効な文字、正しいパディング、適切な長さをチェックします。入力が有効なBase64でない場合、明確なエラーメッセージを表示します。エンコードの場合、出力の末尾に正しいパディングの等号を自動的に追加します。すべての処理はブラウザ内でローカルに行われます。使い方
- 変換したいテキストを入力テキストエリアに入力します。
- テキストをBase64に変換するには、エンコードボタンを押します。テキストがBase64文字列として表現されます。
- Base64文字列を読み取り可能なテキストに変換し直すには、それを貼り付けてデコードボタンを押します。
- デコードが失敗した場合は、入力が有効な文字と正しいパディングのみを含む有効なBase64文字列か確認してください。
- コピーボタンを使用して、出力エリアから結果をコピーします。
よくある質問
よくある質問
なぜBase64はテキストを長くするのですか?
Base64エンコーディングは、元のデータの3バイトごとを4つのBase64文字として表現するため、出力は入力より約33%大きくなります。このオーバーヘッドはエンコーディングスキームに固有のものであり、印刷可能ASCII文字のみを使用してバイナリデータを表現できることの代償です。
画像などのバイナリファイルをエンコードできますか?
いいえ、このツールはテキスト入力のみを対象としています。画像やPDFなどのバイナリファイルをエンコードするには、まずファイルをバイト配列として読み取るツールが必要です。ただし、ファイルのBase64文字列を取得したら、ここでデコードできます。HTMLやCSSに画像を埋め込むには、専用の画像からBase64へのコンバーターを使用してください。
Unicode文字を正しく処理しますか?
はい。このツールはTextEncoder APIを使用して、エンコード前にUnicodeテキストを適切にUTF-8バイトに変換します。つまり、中国語、日本語、韓国語、絵文字、その他のマルチバイト文字が正しくエンコードされます。このステップがないと、btoa単体では非ASCII文字に対して失敗したり、不正確な結果を生成したりします。
Base64は暗号化ですか?
いいえ。Base64はエンコーディングスキームであり、暗号化ではありません。誰でもキーやパスワードなしでBase64を即座にデコードできます。機密情報を保護するためにBase64を使用しないでください。セキュリティには、適切な暗号化アルゴリズムを使用してください。Base64はデータの転送と表現を目的としており、機密性のためのものではありません。
ヒントとアドバイス
Base64は暗号化ではなく、機密データを保護するために使用すべきではありません。エンコードされた文字列を持つ人は誰でも即座にデコードできます。正当な一般的な使用には、CSSやHTMLへの小さな画像の埋め込み、HTTP Basic認証ヘッダーのエンコード、JSONでのバイナリデータの保存、テキストのみのチャネルを通じたデータの送信が含まれます。Base64をデコードする際は、不正なBase64がゴミ出力を生成する可能性があるため、常に出力が期待通りか確認してください。大きなデータの場合、ストレージや帯域幅の計画時に33%のサイズオーバーヘッドを忘れないでください。バイナリファイルをエンコードする必要がある場合は、専用のファイルからBase64へのツールを使用してください。すべての処理は最大限のプライバシーのため、ブラウザ内でローカルに行われます。