You need to add a widget, row, or prebuilt layout before you’ll see anything here. 🙂
wolfSSLのコマンドラインユーティリティであるwolfCLUでPost-Quantum Cryptography(PQC)の署名検証アルゴリズムDilithium(NIST標準名 : ML-DSA)をサポートしました.この記事では,その使い方について紹介します.
まずはwolfSSLをビルドします.ビルド時にwolfcluとdilithiumのマクロを有効にする必要があります.
Building wolfSSL
$ cd wolfssl
$ ./autogen.sh
$ ./configurte –enable-wolfclu –enable-dilithium
$ make && make check
$ sudo make install
次にwolfCLUをビルドします.ビルド時に有効にするマクロはありません.
Building wolfCLU
$ cd wolfclu
$ ./autogen.sh
$ ./configure
$ make && make check
$ sudo make install
$ wolfssl -v
コマンドの使い方:
まず,Dilithiumの鍵を生成します.DilithiumはNISTの定めたセキュリティレベルによってパラメータが変わり,2,3,5が対応しています.-level
でレベルを指定,-out
で出力する鍵のファイル名を指定します.
鍵生成
$ wolfssl -genkey dilithium -level 2 -out dilithium_key -outform der -output keypair
次に,Dilithiumの秘密鍵を使って署名を生成します.-inkey
で秘密鍵を指定,-in
で署名対象のファイルを指定,-out
で出力する署名の名前を指定します.
署名生成
$ wolfssl dilithium -sign -inkey dilithium_key.priv -inform der -in test.txt -out signature.sig
最後に,Dilithiumの公開鍵と生成した署名を利用して検証を行います.-inkey
で公開鍵を指定,-sigfile
で署名を指定します.検証に成功するとValid Signature,失敗するとInvalid Signatureと出力されます.
署名検証
$ wolfssl dilithium -verify -inkey dilithium_key.pub -inform der -in test.txt -sigfile signature.sig
ご質問がございましたら、ぜひ info@wolfssl.jp までお問い合わせください。