1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

概要

  • zig-minisignはMinisignをzigで実装したもので、今のところMinisign/signify方式で署名されたファイルの検証のみ行います

zig-minisignの一次資料

Minisignの一次資料

Minisign登場までの背景としてsignifyについて

  1. まず2013年にOpenBSDプロジェクトによってsignifyが作られました
  2. signifyが作られた目的は、OpenBSDプロジェクトがリリースした配布物に対してsignifyで署名し検証可能なものとするためでした
  3. signifyはファイルにEd25519による署名と検証を行うことで完全性を担保するツールです
  4. signifyは元々OpenBSDのためのツールで、他のプラットフォームではそのままではビルドできません。サードパーティ製のLinux移植版signifyはいくつか存在します

Minisignについて

  • 2015年頃にFrank Denisはsignifyの移植版としてではなく、signifyと互換性のある別のツールとしてMinisignを作り、今(2024年7月)に至ります
  • Minisgnは多様なプラットフォームで動作します。公式サイトで配布されているバイナリは、ほぼ全てのLinuxディストリビューション、macOS、そしてWindowsに対応しています

zig-minisignについて

  • zig-minisignはFrank Denis自身によってzigで書かれたMinisignの派生物です
  • Minisignと違い、zig-minisignは今のところminisig署名付きファイルの検証のみ可能です

zig-minisignのインストール

zig-minisignのインストールはとても簡単です

$ git clone https://github.com/jedisct1/zig-minisign.git
$ cd zig-minisign
$ zig build -Doptimize=ReleaseFast
$ cp -a zig-out/bin/minizign ~/bin/

minizignコマンドのオプション

zig-minisignのコマンドは"minizign"です

$ minizign -h
Usage:
   -h, --help
           Display this help and exit

   -p, --publickey-path <PATH>
           Public key path to a file

   -P, --publickey <STRING>
           Public key, as a BASE64-encoded string

   -l, --legacy
           Accept legacy signatures

   -m, --input <PATH>
           Input file

   -q, --quiet
           Quiet mode

   -V, --verify
           Verify

   -C, --convert
           Convert the given public key to SSH format

zig-minisignでファイルを検証する

ファイルの検証に必要なものは以下の3つです

  • ファイル本体
  • 署名ファイル(大抵は、そのファイル名の末尾に".minisig"というsuffixが付けられています)
  • 公開鍵(多くの場合、信頼できるhttpsのwebサイトに掲載されることが多いようです)

試しにzigのソースパッケージを検証してみます
minisig署名付きのファイルなら他のケースでも同じように検証すれば良いです

$ wget https://ziglang.org/builds/zig-0.14.0-dev.296+bd7b2cc4b.tar.xz
$ wget https://ziglang.org/builds/zig-0.14.0-dev.296+bd7b2cc4b.tar.xz.minisig
$ ls zig-0.14.0-*
zig-0.14.0-dev.296+bd7b2cc4b.tar.xz
zig-0.14.0-dev.296+bd7b2cc4b.tar.xz.minisig
$ minizign -Vm zig-0.14.0-dev.296+bd7b2cc4b.tar.xz -P RWSGOq2NVecA2UPNdBUZykf1CCb147pkmdtYxgb3Ti+JO/wCYvhbAb/U
Signature and comment signature verified
Trusted comment: timestamp:1720987621	file:zig-0.14.0-dev.296+bd7b2cc4b.tar.xhashed
$ gdate --date='@1720987621' -Ins -u
2024-07-14T20:07:01,000000000+00:00
1
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?