amenbo

コード署名ポリシー

amenbo の配布物に誰がどう署名し、どこから配るか。

配布物が本当に amenbo のものかを、受け取った側が確かめられるようにするための取り決めです。署名する対象・ビルド経路・承認する人・配布場所を、ここに公開します。

いま検証できること

全 OS の配布物に、次の2つが効いています。

  • GitHub の build attestation — 配布物がどのリポジトリのどのコミットから、どのワークフローでビルドされたかを記録します。gh attestation verify で誰でも検証できます。
  • 更新用の minisign 署名 — アプリが自分自身を更新するとき、ダウンロードした配布物の署名をアプリが検証します。

配布物

配布物中身
amenbo-app-windows-x64-setup.exeGUI アプリのインストーラ(NSIS)。CLI を同梱し、インストール時に PATH へ通します
amenbo-windows-amd64.exeCLI 単体のバイナリ

Authenticode 署名(これから)

Windows 向けの配布物は、現時点では Authenticode 署名を付けていません。導入したときは、次の取り決めで運用します。

  • 署名を要求するのは、CI がビルドした配布物だけです。手元の端末でビルドしたものは署名しません。
  • 署名要求はメンテナーが1件ずつ明示的に承認します。自動で署名されて配布まで流れる経路は設けません。
  • 署名するバイナリには、製品名とバージョンのファイルメタデータ属性を設定します。
  • 更新用の minisign 署名は Authenticode 署名より前に計算されるため、ひとつのファイルに、両方の署名が付いた状態になります。

ビルドの経路

  • ソースは公開リポジトリ ShiroDoromoto/amenbo にあり、ライセンスは Apache-2.0 です。プロプライエタリな構成要素は含みません。
  • 配布物は GitHub Actions のリリースワークフロー(.github/workflows/release.yml)で、そのリポジトリのソースからビルドします。手元の端末でビルドした配布物を配ることはありません。

チームと役割

amenbo は単独のメンテナーが開発しています。次の役割はいずれも同一人物が担います。

役割担当
Author(ビルドと署名要求)ShiroDoromoto
Reviewer(変更のレビュー)ShiroDoromoto
Approver(署名要求の承認)ShiroDoromoto

署名に関わる者は、署名基盤とソースリポジトリの双方で多要素認証を有効にします。

配布場所

配布物を配るのは、次の2か所だけです。

プライバシー

署名にあたって、利用者のデータを集めることはありません。amenbo は中央サーバーを持たず、データは端末から出ません。詳細はプライバシーをご覧ください。