こんにちは。AndGoのハードウェア担当の片山です。

これまでTrezoreやColdCardなどメジャーなオープンソースのハードウェアウォレットを紹介してきました。他にも様々なプロジェクトがありますので紹介していきたいと思います。

Specter

https://github.com/cryptoadvance/specter-diy

STMicroelectronicsから発売されているSTM32F469I-DISCOというボードを使用したプロジェクトです。このボードはSTM32F469というマイコンの中でも比較的高性能なチップのための開発用ボードです。チップ内にグラフィックス処理をするための機能を積んでいるため,開発ボードにに4インチのタッチパネル付きの液晶ディスプレイが付属しています。I/Oが揃っているので,付属部品なしで動くものを作りはじめることができます。特徴としては$40ほどの外付けのQRコードスキャナ(コンビニにあるようなバーコードをスキャンするデバイスの二次元版?)を取り付けることで,アドレスのQRコードを読み取ることができます。QRコードスキャナが無くてもUSB経由で送信することもできるそうです。

ウォレットとしてはBitcoinの送受金に関する一通りの機能があるほか,マルチシグでの運用も可能です。イコン内に秘密鍵を入れておくこともできますし,「agnostic」モードという電源を落とすと情報がすべて消去されるストイックなモードもあります。使用するたびにニモニックから復元して使う形になります。頻繁に送金せず,かつニモニックを安全に保管できる場合はセキュリティ的に問題なく使えるでしょう。

Arduino Hardware wallet

https://forum.arduino.cc/t/arduino-hardware-wallet/577425

Arduinoという単語は多くの方が聞いたことがあると思います。

Arduino UnoというマイコンボードをUSBケーブルでPCに接続し,OSSのArduino IDEを使えば誰でも簡単にマイコンの開発ができるためホビー用に人気のある開発環境です。以前はマイコンをつかった電子工作はマイコンの他にプログラムの書き込み器などが必要だったり,PCの環境構築も面倒でしたが,非常に簡単になりました。

Arduino Unoは8bitマイコンでフラッシュメモリも1kBしかなく,さすがにハードウェアウォレットを作るのは厳しく,プロジェクトは見つかりませんでした。その代わり,別のArduino Zeroという32bitマイコンを搭載したハイスペック路線のボードをつかったプロジェクトがありました。

上記のリンクを開いていただくとオシャレな感じの動画が再生されます。ブレッドボードにArduino,液晶,フラッシュメモリ,プッシュボタンが差し込まれています。プロトタイプ感がハンパないです。デモンストレーションではマイコン内で秘密鍵を生成と,QRコードによるアドレスの表示,Etheriumの送金などが実演されています。

動画の最後にはこのプロジェクトのToDoがリストアップされていますが,その中にはニモニックからのウォレットの復元が入っていました。万が一使っていて壊してしまったら,他のウォレットに移すしかないですね。

SeedSigner

https://github.com/SeedSigner/seedsigner

$50以下で作れるマルチシグウォレットです。Raspberry Pi Zeroという小型のRaspberry Piと,Raspberry Pi用のカメラ,小型の液晶を組み合わせて作ります。Raspberry Pi上で動作するのでスペックには十分余裕があります。開発は現在も積極的に進められているようです。ケースも3Dプリンタで出力できるように3Dデータが公開されています。AndGo代表の原さんもケースまで3Dプリンタで作成して作りました。

Raspberry Pi上で動くということで,現在は半導体不足ではありますが,平常時には調達しやすいデバイスですし,コードもPythonで書かれているため,開発しやすいといえるでしょう。しかし,Trezorのように組み込み用マイコンとC/C++で開発されているものと比べると,ハードウェア・ソフトウェアともに,明らかにオーバースペックな環境であるため,使わない機能が多いともいえます。それらすべてを把握して,セキュリティホールや仕掛けられているバックドアが無いかを吟味するのは個人には難しいので,”Don’t trust, verify.”を実践したい方には向きません。

あとこのウォレットはSeedQRというQRコードを生成できるようです。デバイス全体の情報を毎回消去して,使用するたびにSeedQRを読み込むようです。Spectorの「agnostic」モードと同じ発想です。このQRコード,プリンタから印刷するわけにはいかず,自分で画面をみながら手書きで作るようです。

BitBoy

https://github.com/justinmoon/bitboy

こちらはM5Stackをつかったプロジェクトです。ニモニックを入力するためのQWERTYキーボードや,QRコードスキャナがついています。トータルで$110程度でつくれるようです。手作り感があるプロジェクトです。ソフトウェアはMicroPythonでつくられています。開発が2019年9月で止まってしまっています。

市販されているパーツを組み合わせてDIY感覚でハードウェアウォレットが作成でき,様々な個性が垣間見えるのがこの分野の面白さといえます。また,どのプロジェクトもシンプルながら,しっかりメンテナンスしつつ,そのデバイスのリスクと特徴を理解しつつ,適切な運用をすれば自分自身で財産を守ることができます。どのようなウォレットを使ったとしても同様ですが,もし実際にこれらのウォレットを使用される場合には,リスクを理解した上で,最悪消失しても構わない程度の金額でお試しください。