ファイル改ざん対策関連めも
httpsが保障していること
httpsが保障するのは、通信経路上で改ざんされていないということ、中間者攻撃されていないということの保障。
ただしvalidなhttpsに必要なのは以下の3点
- 証明書のエラーが出ないこと
- ドメイン名があってること
- あなたの使ってるルート証明書がvalidであること
httpsが保障していないこと
- サーバー上のファイル自体が改ざんされていないこと
これを保証するにはPGPの公開鍵暗号方式を利用した電子署名アルゴリズムを使えば良い。これにはペアで生成された公開鍵と秘密鍵を利用する。
公開鍵で暗号化されたものは秘密鍵でしか復号化できないという一方通行の特徴があり、逆に秘密鍵で暗号化されたものは公開鍵でしか復号化できない。
後者の特徴を利用して電子署名を作る。秘密鍵でファイルのSHA256ハッシュを暗号化し、ユーザーは公開されている公開鍵でそのハッシュ値が正しいことを確認できる。
パスフレーズとは何か
sshとかgpgで設定させられるパスフレーズっていうのは、これはローカルに生で秘密鍵を保存するのは危険だから、秘密鍵を暗号化した状態でファイルシステムに保存するために使っている。(共通鍵暗号方式)