2018年10月18日に初出の投稿

Last modified: 2018-10-18

添付画像

Signal は通信内容の保護について色々と話題になるアプリケーションもしくはサービスだが、その「サービス」としてのパフォーマンスには、使い始めた当初から問題があるなと思っていた。特にデスクトップ・アプリケーションは起動した際のサーバとの同期処理が非常に遅く、恐らくはアプリケーションを終了するたびにローカルマシンからデータを全て消去しているのだろうか、アプリケーションを起動するたびにサーバへメッセージを改めて全て取得しにリクエストを送っているらしく、酷いときはアプリケーションが使えるようになるまで数分ほど待たされることになる。

そして、Signal を使うのを止めようと思った致命的な、もうメッセージング・サービスとしては「欠陥」と言っていいと思うが、この通知の遅さだ。画像に出ている二つの時刻を見ていただければわかると思うが、昨日の朝に出勤する途中で思いついたことを自分自身の電話番号に宛てて送信したメッセージの受信通知が、会社から帰宅する途中の夜になってから届いている。最初は、Signal の通知を停止させていたのかと思ったが、Signal は入院していた母親に関する写真やテキスト情報を連れ合いとやりとりするのに使っていたため、プッシュ通知を停止させるわけがない(もちろん母親は既に亡くなったので、停止させてもいいと言えばいいのだが、敢えて停止した記憶はない)。これまでは、通知が遅れたという事例がなかったので気づかなかったが、それは自分からこまめにアプリケーションを立ち上げて確認していたからにすぎず、放っておいたら通知がこんなに遅れてしまう恐れがあるのだと分かった。

これは、既にメッセージ・サービスとしての体を為していない。メッセージ「保管サービス」と言うべきだ。そして、そんなサービスは僕には必要ない。ということで、連れ合いとも話して Signal を使うのは止めて、やはりキャリアの「メッセージ+」を使うことにした。そこで、Signal のメッセージをアーカイブしたいのだが、Signal の設定画面で「外部ストレージ」にメッセージをバックアップすると言われても、その「外部ストレージ」とは何のことなのか分からない。スマートフォンの microSD カードのことなのか、それともインストールしたときに Google Drive や Dropbox のアカウントと連携させた覚えはないが、その手のストレージ・サービスのことなのか、あるいは Signal のサーバなのか。Google で検索しても、日本人でこれについて何か書いている人が一人もいないことに気づいたので、ひとまず色々とスマートフォンの内部を物色してみると、内部ストレージの Signal フォルダの Backup フォルダに「signal-yyyy-mm-dd-h-i-s.backup」というフォーマットでバックアップファイルが生成されている。

それはいいのだが、これはどうやって展開するのだろう。適当に ".zip" のように拡張子を付けても解凍できないし、バイナリの形式を調べてみると、どうも暗号化されているらしく、https://github.com/xeals/signal-back のようなプログラムを使って復号化しなくてはいけないようだ。パスワードは、バックアップを設定するときに自分で決めた "69329 23184 50099 99593 68752 00914" のような数字のリストのことだ(もちろん、ここに書いたのはデタラメなリストだ)。これを使って、

PS C:\downloads> ./signal-back.exe format -f XML signal.backup > backup.xml

とすると、メッセージが復号化され、

PS C:\downloads> ./signal-back.exe extract -o output signal.backup

とすれば、添付ファイルが復号化される。なお、僕の業務マシンでもかなり計算に負荷がかかったので、家庭用のマシンだと復号化に数十秒はかかるだろう。

さてメッセージを backup.xml というファイルに出力したのはいいが、UTF-8 を宣言している XML ファイルなのに UTF-8N として開いても全くメッセージが化けていて読めない。自動で判定させると UTF-16 のようだが(もちろん化けている)、UTF-16 とは言っても色々な種類があるし、BOM があるのかないのかでも違う。このあたりは、アメリカ人の開発者だと全く無頓着な連中がいるので注意したいのだが、ユニコード形式をまともに扱えない人間が暗号化・復号化に手を出すこと自体、驚くべき傲慢と言う他はない。これもまた、シュナイアーの法則の一つの事例と言ってよいのだろうか。ともかく、いまのところ xyzzy で色々なフォーマットを指定してファイルを開いているが、どれも文字化けが治らない。UTF-16 で(UTF-8 だとアルファベットすら化ける)、Little Endian だというのも分かったが、BOM はあってもなくても化けている。

  1. もっと新しいノート <<
  2. >> もっと古いノート

冒頭に戻る


※ 以下の SNS 共有ボタンは JavaScript を使っておらず、ボタンを押すまでは SNS サイトと全く通信しません。

Twitter Facebook