ファイルが改ざんされていないことを完全に保証しようとしているんだけど結構たいへんだなと思った。
テケトウに調べたけど、とりあえずファイルのハッシュを取得して、そんでそのハッシュ値が正しいものであるとPGPの秘密鍵で電子署名する感じっぽい。
http://www.nina.jp/server/windows/gpg/sign_verification.html
んで、自分の公開鍵は世界の主要な公開鍵データベースに登録する。同時に自分のウェブサイトにも置く。
あとファイルごとのハッシュを取って電子署名するときのやりかたをいくつか思いついたメモ。
各ディレクトリごとにハッシュ値を記録するファイルを作る方式
なのでたとえばa.txt b.txt c.txtというファイルを確実に安全な状態で配信するためには、だいたいこんな感じのファイル構成になる
a.txt b.txt c.txt MD5SUM MD5SUM.sig
この場合はMD5SUMファイルの中にa-c.txtの各ハッシュ値を入れる構成。
ただこの方式だとファイルを新規追加した時にダルい。
ファイルごとに電子署名ファイルを用意する方法
そこでこういう方式はどうだろうか。(といっても普通だが)
a.txt a.txt.sig b.txt b.txt.sig c.txt c.txt.sig
sigは、a.txtをPGPで電子署名したもので、その電子署名だけ外出ししたもの
これだとa-c.txtがファイルサイズ小さい時は楽に運用できそう。ただファイルサイズでかくなるときついのではないだろうか。(計算量増えそう的な意味で)