メインコンテンツへスキップ
見出し画像

TWSNMP FC: ダウンロード数を公式サイトに表示、Dockerイメージに署名した

    twsnmp

    昨日v1.7.0をリリースしました。AppleやMicrosoftのアプリストアに公開することは今回実現できませんでした。起動ツールを作りインストーラーを改善して公開申請できる形にいはできたように思います。来年の楽しみにとっておきます。
    ソフトウェアを作って公開しているとダウンロード数が気になります。自分で使うためのソフトなので気にしなても良さそうですが煩悩には勝てません。DockerやGitHUBからのダウンロード数を取得するプログラムは前に作ったのでこれを改造してTWSNMPの更新サイト

    にダウンロード数を表示できるようにしました。

    画像
    TWSNMP FCのダウンロード数

    こうしてみると圧倒的にWindowsで使っている人が多いようです。
    Dockerもそこそこの数です。
    今朝は、ソフトウェアデザイン12月号(先月)

    の最新用語解説に載っていた、ソフトウェアの配布で私が作ったものをダウンロードした人が検証するためのデジタル署名の仕組み

    のcosign

    を使ってDockerのイメージに署名してみました。インストールは

    を参考にしました。
    MacOSだと

    %brew install cosign
    %cosign generate-key-pair
    %cosign sign --key cosign.key twsnmp/twsnmpfc:v1.7.0

    で署名できました。検証は

    % cosign verify --key cosign.pub twsnmp/twsnmpfc:v1.7.0
    
    Verification for index.docker.io/twsnmp/twsnmpfc:v1.7.0 --
    The following checks were performed on each of these signatures:
      - The cosign claims were validated
      - The signatures were verified against the specified public key
      - Any certificates were verified against the Fulcio roots.
    
    [{"critical":{"identity":{"docker-reference":"index.docker.io/twsnmp/twsnmpfc"},"image":{"docker-manifest-digest":"sha256:3d7539b4f611dce1c493219ecc60576cedd5503864aa568911691cc3eeb56d37"},"type":"cosign container image signature"},"optional":null}]

    のような感じで検証できます。何となく安全になったような気がします。
    検証用の公開鍵は、公式サイトで

    画像
    cosignの公開鍵

    で配布していますが、ここにも添付しておきます。

    検証するためには、cosignをインストールする必要があるので不便なように思います。
    cosignを試した後、同じソフトウェアデザインのDockerの特集の「攻撃に強いイメージの作り方」に書いてあった。docker trustも試してみました。

    MacOSでは、

    
    %docker trust key generate twsnmp
    %docker trust signer add --key twsnmp.pub twsnmp twsnmp/twsnmpfc
    %docker trust sign twsnmp/twsnmpfc:v1.7.0
    

    のような感じでtwsnmp/twsnmpfc:v1.7.0に署名できました。
    Dockerイメージ検証したければ、

    %export DOCKER_CONTENT_TRUST=1
    %docker pull twsnmp/twsnmpfc:v1.7.0

    でできます。署名を検証できないものは

    docker: No valid trust data for latest.

    のエラーがでます。
    最初に試したcosignよりdocker trustのほうが簡単です。
    今後のリリースは、docker trustで署名しようと思います。
    Dockerに比べてWindowsやMac OSのソフトウェア配布はかなり厄介に思えてきました。気持ち的にはDocker版だけの開発に専念したくなってきました。

    明日に続く


     
     
     

    twsnmp

     
     
    私は、TWSNMP Managerの開発者です。 25年以上前に作ったソフトを今も多くの人に使っていただけて幸せです。 2021年:Docker版TWSNMP FC、2022年:スマホ版,2023年:シン・TWSNMP、2026年AI対応ログ分析ツールを開発しました。

    あなたへのおすすめ