機密資産やMUSIG2などの高度な実験的機能をサポートしたLIBSECP256K1のフォーク
追加機能:
実験機能は、コミュニティによるテストとレビューのために利用可能になります。これらの機能のAPIは、安定したと見なされるべきではありません。
$ ./autogen.sh
$ ./configure
$ make
$ make check # run the test suite
$ sudo make install # optional
オプションのモジュール(Schnorr Signaturesなど)をコンパイルするには、追加のフラグ( --enable-module-schnorrsigなど)を使用して./configureを実行する必要があります。 run ./configure --help利用可能なフラグの完全なリストを表示します。実験モジュールの場合、個々のモジュールごとのフラグと同様に、 --enable-experimental --enable-module-musigなどのフラグも必要です。
CMakeは、手付かずのソースツリーを維持するために、独立した専用ビルドツリーを使用して、外れているビルドを実行することを奨励しています。
$ mkdir build && cd build
$ cmake ..
$ cmake --build .
$ ctest # run the test suite
$ sudo cmake --build . --target install # optional
オプションのモジュール(Schnorr Signaturesなど)をコンパイルするには、追加のフラグ( -DSECP256K1_ENABLE_MODULE_SCHNORRSIG=ONなど)でcmake実行する必要があります。 cmake .. -LH利用可能なフラグの完全なリストを表示するには。
クロスコンパイルの問題を軽減するために、 cmakeディレクトリで事前に設定されたツールチェーンファイルを利用できます。たとえば、Windowsのコンパイルを横断するには:
$ cmake .. -DCMAKE_TOOLCHAIN_FILE=../cmake/x86_64-w64-mingw32.toolchain.cmake
NDKでAndroidのコンパイルを横断するには(NDKのツールチェーンファイルを使用し、 ANDROID_NDK_ROOT環境変数が設定されていると仮定しています):
$ cmake .. -DCMAKE_TOOLCHAIN_FILE="${ANDROID_NDK_ROOT}/build/cmake/android.toolchain.cmake" -DANDROID_ABI=arm64-v8a -DANDROID_PLATFORM=28
Visual Studioを使用してWindowsを構築するには、新しいビルドツリーに適切な発電機を指定する必要があります。
次の例は、Visual Studio 2022およびCMake v3.21+の使用を想定しています。
「VS 2022の開発者コマンドプロンプト」:
>cmake -G "Visual Studio 17 2022" -A x64 -S . -B build
>cmake --build build --config RelWithDebInfo
使用例は、例ディレクトリに記載されています。それらをコンパイルするには、 --enable-examplesで構成する必要があります。
Schnorrの署名、ECDH、およびMusigの例をコンパイルするには、たとえば--enable-module-schnorrsigなど、Flagをconfigureスクリプトに提供して、対応するモジュールを有効にする必要があります。
--enable-benchmark (デフォルト)で構成されている場合、Bintecp256K1-ZKP関数をベンチマークするためのバイナリは、ビルド後にルートディレクトリに存在します。
ベンチマークの結果をコマンドラインに印刷するには:
$ ./bench_name
ベンチマークの結果にCSVファイルを作成するには:
$ ./bench_name | sed '2d;s/ {1,}//g' > bench_name.csv
security.mdを参照してください
Convributing.mdを参照してください