Base64 / roundtrip handoff guide
Base64を文字とbinaryに分けて、壊さず戻す
Base64は暗号化ではありません。復号後のbytesをUTF-8文字として読むか、binary fileとして保存するかを先に分けます。
Base64 / roundtrip handoff guide
Base64は暗号化ではありません。復号後のbytesをUTF-8文字として読むか、binary fileとして保存するかを先に分けます。
UTF-8として正しいと確認できるBase64だけを文字列へ復号します。画像や圧縮データなどの任意bytesを無理に表示せず、binaryとして保存します。Base64だけからMIMEや安全性を断定しません。
UTF-8 text → bytes → decode as UTF-8 text
binary data → bytes → save as binary file
Base64 is encoding, not encryption| 境界 | 確認すること |
|---|---|
| UTF-8 | 文字コードと復号結果を確認し、壊れたbytesを置換文字で隠さない。 |
| binary | 読めないbytesは文字列にせず、目的の保存形式を担当へ確認する。 |
| alphabet | 標準Base64の+/か、URL-safeの-_かを固定する。 |
| padding | 末尾の=を削除・追加する前に受け側の契約を確認する。 |
メールやログで折り返された空白・改行は入力境界として扱います。正規化してよいか確認し、データ本体のbytesと混ぜません。復元先の拡張子やMIMEは別の契約で決め、Base64文字列から推測しません。
既存のBase64 toolは端末内で変換します。このガイドは復元判断を補助するもので、入力を外部へ送信しません。
| case | 判定 | 確認 |
|---|---|---|
utf8-text | decode-as-utf8 | UTF-8として妥当か確認してから表示する。 |
binary-bytes | save-as-binary | 任意bytesを文字列にしない。 |
url-safe-alphabet | alphabet-check | -_と+/を取り違えない。 |
missing-padding | padding-check | =の省略が許可されるか確認する。 |
whitespace-wrap | normalize-boundary | 折り返し空白を勝手にデータへ混ぜない。 |
unknown-file-format | reject | Base64だけでMIMEや安全性を断定しない。 |
本番のtoken、秘密鍵、個人情報をこのガイドへ貼り付けないでください。無害なfixtureで復元形式を確認し、必要なら別の安全な受渡し手順を使います。