기밀 자산 및 MUSIG2와 같은 고급 및 실험 기능을 지원하는 LIBSECP256K1의 포크
추가 기능 :
실험 기능은 커뮤니티에서 테스트하고 검토 할 수 있습니다. 이러한 기능의 API는 안정적으로 간주되어서는 안됩니다.
$ ./autogen.sh
$ ./configure
$ make
$ make check # run the test suite
$ sudo make install # optional
옵션 모듈 (Schnorr 서명과 같은)을 컴파일하려면 추가 플래그 (예 : --enable-module-schnorrsig )로 ./configure 실행해야합니다. ./configure --help 사용하여 사용 가능한 플래그의 전체 목록을보십시오. 실험 모듈의 경우 각 개별 모듈에 대한 플래그 (예 : --enable-module-musig 대한 플래그뿐만 아니라 --enable-experimental 도 필요합니다.
깨끗한 소스 트리를 유지하기 위해 Cmake는 별도의 전용 빌드 트리를 사용하여 소스 외 빌드를 수행하도록 권장합니다.
$ mkdir build && cd build
$ cmake ..
$ cmake --build .
$ ctest # run the test suite
$ sudo cmake --build . --target install # optional
선택 모듈 (Schnorr 서명과 같은)을 컴파일하려면 추가 플래그 (예 : -DSECP256K1_ENABLE_MODULE_SCHNORRSIG=ON )로 cmake 실행해야합니다. cmake .. -LH 실행하여 사용 가능한 플래그의 전체 목록을보십시오.
크로스 컴파일과 관련된 문제를 완화하기 위해 미리 구성된 도구 체인 파일은 cmake 디렉토리에서 사용할 수 있습니다. 예를 들어, Windows를 교차하기 위해 :
$ cmake .. -DCMAKE_TOOLCHAIN_FILE=../cmake/x86_64-w64-mingw32.toolchain.cmake
NDK로 안드로이드를 교차하기 위해 (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 예제를 컴파일하려면 configure --enable-module-schnorrsig 에 플래그를 제공하여 해당 모듈을 활성화해야합니다.
--enable-benchmark (기본값)로 구성되면 LibSecp256k1-Zkp 함수를 벤치마킹하기위한 바이너리는 빌드 후 루트 디렉토리에 존재합니다.
벤치 마크 결과를 명령 줄에 인쇄하려면 다음과 같습니다.
$ ./bench_name
벤치 마크 결과에 대한 CSV 파일을 작성하려면 다음과 같습니다.
$ ./bench_name | sed '2d;s/ {1,}//g' > bench_name.csv
Security.md를 참조하십시오
Contributing.md를 참조하십시오