Merry Christmas!(執筆開始日 12/3)
こんな日に私の投稿となります,RSです。
さて,SYSKEN Advent Calendarも最終日となりました。
皆様,いかがお過ごしでしょうか。
Advent Calendarを見漁っていますか,そうですか。
今回は,Advent Calendarのまとめとかを書いてもいいのですが,さして面白くなりそうもありません。
普通に気取らず書いてみようと思います。
Advent Calendar漁りの一つとして楽しんでもらえたら幸いです。
導入
「自動暗号化IME作りたい」
8月頃,暗号技術入門のアリスとボブに翻弄されていた私は,変なアイデアを思いつきました。
ただ,この時期は色々とドタバタしていた(プロコン, あいちゃれ)ので,アイデアとして取っておいただけでした。
しかし,今になってまた作ってみたい欲が出たのでAdvent Calendarのついでにやろうかなと思ったという訳です。
やりたかったもの
- 公開鍵暗号方式を採用して,テキストの入力中はその上に仮想テキスト領域を用意
- 入力が終了したら,自動で暗号化を開始
- 暗号化が終了し次第,テキスト入力領域に自動ペースト
- 👍
こんな感じのイケイケIMEっぽいものが作りたかったのです。
Slackの入力からTwitterのツイートまで,全てを自動で暗号化する,まさにPretty GoodなIMEが作りたかったのです。
作ったもの
ざっくり言うと,暗号化文章の生成器です。
具体的には,PGPのうち,対称鍵暗号AES256で暗号化した文章を生成します。
リポジトリを上げておきますので,早々に完成させるようIssueをぶっ飛ばしてください。
GitHub: rikyuusima/secure-ime
技術的なお話
メインとなるアプリケーションは,Electronで開発しています。
PGPを取り扱うため,コンソールを引っ張ってこなくてはならないかとも思いましたが,便利なライブラリがあったのでご紹介します。
OpenPGP.jsです。
これが便利で,対称鍵暗号,公開鍵暗号などに対応しており,暗号化に加えて署名も可能なようです。
OpenPGP.jsをnpmからインストールして,requireを使って案外簡単に取り扱うことが出来ました。制作陣に感謝🙏。
現状の進捗は,読込した暗号鍵を用いて暗号化使用としている辺りです。
余談
私は,当初Advent Calendarで私の旧スマホたるKyocera URBANO L01にOSをぶち込んでなんちゃらしてみようと考えていました。
しかし,bootloaderの起動が難しく,残念な結果に終わってしまいました。
そのため急遽,少し前のアイデアであるセキュアIMEを作っているという次第です。
ここに,アイキャッチ予定写真を上げて供養したいと思います。
終わりに
今年も,SYSKEN Advent Calendarが何とか完走出来て良かったです。(例年通り,遅刻がチラホラあったようですが)
心残りなのは,Advent Calendarの特設ページを用意できなかったことでしょうか。
構成を考えて早めに作れるようになりたいものです…。
2年前の突然の企画から始まったAdvent Calendar,発案者である先輩が卒業した今年も変わらず完走出来たので,来年以降も続くのかな?
そんなことを考えながら,Advent Calendarを締めくくりたいと思います。
良いお年を!
コメントを残す