ぶろぐ

日記です

Base64エンコードを使用してファイル転送


バイナリファイルの受け渡しを行う方法が無い、もしくは大変手間である場合にBase64エンコードしたテキストデータを使用してバイナリファイルの受け渡しを行うことができる。

使い方考えてみた

一般的には電子メール等で使われると思うが、応用していろいろな場面で使えそうな気がする。

  • リモートデスクトップ先にクリップボードを介してファイルを送る
  • 直接SCP接続できない場合に、Base64エンコードされたテキストでファイルのやり取り
    • WinSCPなどではSSHトンネリングの設定ができるので、SSHでログインができるところにはどこでもSCPできるはずなので、SCPでやり取りするのが無難。
  • 裏コンテンツとしてBase64エンコードした何かを…w
  • コンテンツにバイナリデータを埋め込むことが出来る…!

あれ、あまり無いですね 笑
自分は、遠隔地にあるリモートデスクトップで繋いでいるPCへエクセルファイルを送るために上記の方法でファイルをやり取りしました。
# 成功したときはテンションがあがりました。

やり方

手順
  1. Base64EnDecoを両方のPCにインストール使用
  2. ファイルをBase64エンコードし、相手先にテキストデータを送る
  3. テキストデータをBase64デコードし、ファイルを生成する。

Linuxだと

base64というコマンドが居るので、そいつを使うといいようです。
単純に「バイナリデータをテキストデータで表現できる」ということにテンションあがりました。
まぁなんかすごい特殊な環境で使える手段の一つとしてストックしておくと、いつか何かで役に立つかもしれませぬ。