はじめまして。こんにちは。AndGoのハードウェア開発を行っている片山と申します。僕からはハードウェアウォレットなどハードウェアに関連した記事をご提供していきたいと考えています。
幼少の頃から機械の分解が大好きで,ここ1ヶ月で分解したものは,Jade,液晶ディスプレイ,M5Paper,モバイルバッテリー,ACアダプタなどです。皆様からも「〇〇を解析してほしい!」「○○の中身ってどうなっているの?」のようなリクエストがあれば是非お寄せいただきたいと思います。
今回は第1回目に相応しいTrezor Oneの中身を紐解いていきたいと思います。
ハードウェアを知ることで,本当にそのウォレットを安心して使ってよいのかが自身を持って判断出来るようになります。Trezorは御存知のとおりチェコのSatoshi Labs社が開発した代表的なハードウェアウォレットです。ソフトウェア・ハードウェアともにオープンソースとして公開されていますので,皆様と一緒に解析しきますのでお付き合いください。
Trezorのハードウェアに関する情報はGitHub(https://github.com/trezor/trezor-hardware)に公開されています。回路図だけでなく,電子回路基板の設計図や部品リストそして外装の形状まで公開されていますのでその気になれば,自分オリジナルのTrezorのクローンを作ることもできてしまいます。
早速GitHubリポジトリの中身を見ていきたいと思います。https://github.com/trezor/trezor-hardware から「electronics」→「trezor_one」と辿っていきます。様々なファイルが入っています。「*.sch」や「*.brd」がソフトウェアでいうソースコードのようなもので,これらはEagle(https://www.autodesk.co.jp/products/eagle/)というソフトウェアで開くことができます。
Eagleはオープンソースハードウェアの世界ではよく使われている電子回路基板設計ソフトウェアで,機能制限はありますが無料で使うことができます。さらに「kicad」というディレクトリの中にはkicadという別の電子回路基板設計ソフトウェアで開くことができるファイルが入っています。ここでは設計図が画像ファイルになったものを開いてみます。
まずは「trezor_v1.1.brd.png」(1枚目の画像)を開いてみます。