制限
なんか、gpg-agentが古いらしく、gpg-agent起動後に差した場合や、起動後に抜いて差しなおした時に認識されない。
knowm-bugみたい。
http://bugs.g10code.com/gnupg/issue1238
gpg鍵を入れる。
http://d.hatena.ne.jp/tmatsuu/20101112/1289587685
を参考にした。--expertオプションがわからなくて最初はまった。
gpg --gen-key でキー作成
gpg --expert --edit-key
gpg --card-edit でカードの中身をいじって
gpg --edit-key
Gnukのインストール
高価な開発キットを買ってもいいが、安いので、hid_blasterを使う。
http://hp.vector.co.jp/authors/VA000177/html/hid_blaster.html
http://hp.vector.co.jp/authors/VA000177/html/stm32f103.html
部品点数も少ないし、オススメ。
ただ、AVRライターが別途必要。
ターゲットの基盤のISP端子は上から見て、次のような感じになってる。
8 つながない GND 7
6 MOSI RST 5
4 SCK MISO 3
VDD 1
ダウンロードした、制御ソフトのocd.batを起動、別途telnetなどで接続します。
reset halt
stm32x unlock 0
shutdown
で一度再起動して、
reset halt
flash probe 0
flash write_image erase gnuk.hex
で書き込み
Gnukの ビルド
https://github.com/esden/summon-arm-toolchain を使ってビルドする。
必須パッケージをいれる。
sudo apt-get install flex bison libgmp3-dev libmpfr-dev libncurses5-dev \
libmpc-dev autoconf texinfo build-essential libftdi-dev
クローンする。
git clone https://github.com/esden/summon-arm-toolchain.git
メインスクリプトを変更する
vim summon-arm-toolchain
あとは、gnukのパッケージをダウンロードしてビルドするだけ。
http://www.gniibe.org/download/