Compare commits

...

17 Commits

Author SHA1 Message Date
Nicola Tuveri c24fa3fb9d
Merge fc7a05443a into 39ea2b6865 2025-07-31 06:49:55 +01:00
Tomas Mraz 39ea2b6865 test-ec: Skip SM2 key import test if SM2 is disabled
GitHub CI / check_update (push) Has been cancelled Details
GitHub CI / check_docs (push) Has been cancelled Details
GitHub CI / check-ansi (push) Has been cancelled Details
GitHub CI / basic_gcc (push) Has been cancelled Details
GitHub CI / basic_clang (push) Has been cancelled Details
GitHub CI / linux-arm64 (push) Has been cancelled Details
GitHub CI / freebsd-x86_64 (push) Has been cancelled Details
GitHub CI / minimal (push) Has been cancelled Details
GitHub CI / no-deprecated (push) Has been cancelled Details
GitHub CI / no-shared-ubuntu (push) Has been cancelled Details
GitHub CI / no-shared-macos (macos-13) (push) Has been cancelled Details
GitHub CI / no-shared-macos (macos-14) (push) Has been cancelled Details
GitHub CI / non-caching (push) Has been cancelled Details
GitHub CI / address_ub_sanitizer (push) Has been cancelled Details
GitHub CI / memory_sanitizer (push) Has been cancelled Details
GitHub CI / threads_sanitizer (push) Has been cancelled Details
GitHub CI / enable_non-default_options (push) Has been cancelled Details
GitHub CI / fips_and_ktls (push) Has been cancelled Details
GitHub CI / no-legacy (push) Has been cancelled Details
GitHub CI / legacy (push) Has been cancelled Details
GitHub CI / buildtest (push) Has been cancelled Details
GitHub CI / out-of-readonly-source-and-install-ubuntu (push) Has been cancelled Details
GitHub CI / out-of-readonly-source-and-install-macos (macos-13) (push) Has been cancelled Details
GitHub CI / out-of-readonly-source-and-install-macos (macos-14) (push) Has been cancelled Details
GitHub CI / external-tests (push) Has been cancelled Details
GitHub CI / external-test-pyca (3.9, 1.51.0) (push) Has been cancelled Details
Compiler Zoo CI / compiler (map[cc:clang-11 distro:ubuntu-22.04]) (push) Has been cancelled Details
Compiler Zoo CI / compiler (map[cc:clang-12 distro:ubuntu-22.04]) (push) Has been cancelled Details
Compiler Zoo CI / compiler (map[cc:clang-13 distro:ubuntu-22.04]) (push) Has been cancelled Details
Compiler Zoo CI / compiler (map[cc:clang-14 distro:ubuntu-22.04]) (push) Has been cancelled Details
Compiler Zoo CI / compiler (map[cc:clang-15 distro:ubuntu-22.04 llvm-ppa-name:jammy]) (push) Has been cancelled Details
Compiler Zoo CI / compiler (map[cc:gcc-10 distro:ubuntu-22.04]) (push) Has been cancelled Details
Compiler Zoo CI / compiler (map[cc:gcc-11 distro:ubuntu-22.04]) (push) Has been cancelled Details
Compiler Zoo CI / compiler (map[cc:gcc-12 distro:ubuntu-22.04]) (push) Has been cancelled Details
Compiler Zoo CI / compiler (map[cc:gcc-9 distro:ubuntu-22.04]) (push) Has been cancelled Details
Cross Compile / cross-compilation (map[arch:aarch64-linux-gnu libs:libc6-dev-arm64-cross target:linux-aarch64]) (push) Has been cancelled Details
Cross Compile / cross-compilation (map[arch:alpha-linux-gnu libs:libc6.1-dev-alpha-cross target:linux-alpha-gcc]) (push) Has been cancelled Details
Cross Compile / cross-compilation (map[arch:arm-linux-gnueabi libs:libc6-dev-armel-cross target:linux-armv4 tests:-test_includes -test_store -test_x509_store]) (push) Has been cancelled Details
Cross Compile / cross-compilation (map[arch:arm-linux-gnueabihf libs:libc6-dev-armhf-cross target:linux-armv4 tests:-test_includes -test_store -test_x509_store]) (push) Has been cancelled Details
Cross Compile / cross-compilation (map[arch:hppa-linux-gnu fips:no libs:libc6-dev-hppa-cross target:-static linux-generic32 tests:-test_includes -test_store -test_x509_store]) (push) Has been cancelled Details
Cross Compile / cross-compilation (map[arch:hppa-linux-gnu libs:libc6-dev-hppa-cross target:linux-generic32 tests:none]) (push) Has been cancelled Details
Cross Compile / cross-compilation (map[arch:m68k-linux-gnu fips:no libs:libc6-dev-m68k-cross target:-static -m68040 linux-latomic -Wno-stringop-overflow tests:-test_includes -test_store -test_x509_store]) (push) Has been cancelled Details
Cross Compile / cross-compilation (map[arch:m68k-linux-gnu libs:libc6-dev-m68k-cross target:-mcfv4e linux-latomic -Wno-stringop-overflow tests:none]) (push) Has been cancelled Details
Cross Compile / cross-compilation (map[arch:mips-linux-gnu fips:no libs:libc6-dev-mips-cross target:-static linux-mips32 tests:-test_includes -test_store -test_x509_store]) (push) Has been cancelled Details
Cross Compile / cross-compilation (map[arch:mips-linux-gnu libs:libc6-dev-mips-cross target:linux-mips32 tests:none]) (push) Has been cancelled Details
Cross Compile / cross-compilation (map[arch:mips64-linux-gnuabi64 fips:no libs:libc6-dev-mips64-cross target:-static linux64-mips64]) (push) Has been cancelled Details
Cross Compile / cross-compilation (map[arch:mips64-linux-gnuabi64 libs:libc6-dev-mips64-cross target:linux64-mips64 tests:none]) (push) Has been cancelled Details
Cross Compile / cross-compilation (map[arch:mipsel-linux-gnu libs:libc6-dev-mipsel-cross target:linux-mips32 tests:-test_includes -test_store -test_x509_store]) (push) Has been cancelled Details
Cross Compile / cross-compilation (map[arch:powerpc64le-linux-gnu libs:libc6-dev-ppc64el-cross target:linux-ppc64le]) (push) Has been cancelled Details
Cross Compile / cross-compilation (map[arch:riscv64-linux-gnu libs:libc6-dev-riscv64-cross target:linux64-riscv64]) (push) Has been cancelled Details
Cross Compile / cross-compilation (map[arch:s390x-linux-gnu libs:libc6-dev-s390x-cross target:linux64-s390x -Wno-stringop-overflow]) (push) Has been cancelled Details
Cross Compile / cross-compilation (map[arch:sh4-linux-gnu libs:libc6-dev-sh4-cross target:no-async linux-latomic tests:-test_includes -test_store -test_x509_store]) (push) Has been cancelled Details
Cross Compile / cross-compilation (map[arch:sparc64-linux-gnu libs:libc6-dev-sparc64-cross target:linux64-sparcv9 tests:none]) (push) Has been cancelled Details
Provider old versions compat / fips-provider-validation (map[dir:openssl-3.0.0 tgz:openssl-3.0.0.tar.gz url:https://www.openssl.org/source/old/3.0/openssl-3.0.0.tar.gz]) (push) Has been cancelled Details
Fuzz-checker CI / fuzz-checker (map[cc:afl-clang-fast config:enable-fuzz-afl no-module install:afl++ name:AFL]) (push) Has been cancelled Details
Fuzz-checker CI / fuzz-checker (map[cc:clang-18 config:enable-fuzz-libfuzzer enable-asan enable-ubsan -fno-sanitize=function -fsanitize-coverage=trace-cmp -DFUZZING_BUILD_MODE_UNSAFE_FOR_PRODUCTION extra:enable-fips enable-ec_nistp_64_gcc_128 -fno-sanitize=alignment ena… (push) Has been cancelled Details
Fuzz-checker CI / fuzz-checker (map[cc:clang-18 config:enable-fuzz-libfuzzer enable-asan enable-ubsan -fno-sanitize=function install:libfuzzer-18-dev libs:--with-fuzzer-lib=/usr/lib/llvm-18/lib/libFuzzer.a --with-fuzzer-include=/usr/include/clang/18/include/fuzzer linke… (push) Has been cancelled Details
CIFuzz / Fuzzing (push) Has been cancelled Details
Run-checker CI / run-checker (enable-ssl-trace) (push) Has been cancelled Details
Run-checker CI / run-checker (enable-trace enable-fips) (push) Has been cancelled Details
Run-checker CI / run-checker (no-atexit) (push) Has been cancelled Details
Run-checker CI / run-checker (no-cmp) (push) Has been cancelled Details
Run-checker CI / run-checker (no-cms) (push) Has been cancelled Details
Run-checker CI / run-checker (no-ct) (push) Has been cancelled Details
Run-checker CI / run-checker (no-dtls) (push) Has been cancelled Details
Run-checker CI / run-checker (no-ec) (push) Has been cancelled Details
Run-checker CI / run-checker (no-ec2m) (push) Has been cancelled Details
Run-checker CI / run-checker (no-legacy) (push) Has been cancelled Details
Run-checker CI / run-checker (no-rfc3779) (push) Has been cancelled Details
Run-checker CI / run-checker (no-sock) (push) Has been cancelled Details
Run-checker CI / run-checker (no-srp) (push) Has been cancelled Details
Run-checker CI / run-checker (no-srtp) (push) Has been cancelled Details
Run-checker CI / run-checker (no-tests) (push) Has been cancelled Details
Run-checker CI / run-checker (no-threads) (push) Has been cancelled Details
Run-checker CI / run-checker (no-tls) (push) Has been cancelled Details
Run-checker CI / run-checker (no-tls1_2) (push) Has been cancelled Details
Run-checker CI / run-checker (no-tls1_3) (push) Has been cancelled Details
Run-checker CI / run-checker (no-ts) (push) Has been cancelled Details
Run-checker CI / run-checker (no-ui) (push) Has been cancelled Details
Run-checker merge / run-checker (enable-asan enable-ubsan no-shared no-asm -DOPENSSL_SMALL_FOOTPRINT -fno-sanitize=function) (push) Has been cancelled Details
Run-checker merge / run-checker (enable-ubsan no-asm -DOPENSSL_SMALL_FOOTPRINT -fno-sanitize=function) (push) Has been cancelled Details
Run-checker merge / run-checker (enable-weak-ssl-ciphers) (push) Has been cancelled Details
Run-checker merge / run-checker (enable-zlib) (push) Has been cancelled Details
Run-checker merge / run-checker (no-dgram) (push) Has been cancelled Details
Run-checker merge / run-checker (no-dso) (push) Has been cancelled Details
Run-checker merge / run-checker (no-dynamic-engine) (push) Has been cancelled Details
Run-checker merge / run-checker (no-engine no-shared) (push) Has been cancelled Details
Run-checker merge / run-checker (no-err) (push) Has been cancelled Details
Run-checker merge / run-checker (no-filenames) (push) Has been cancelled Details
Run-checker merge / run-checker (no-unit-test) (push) Has been cancelled Details
Run-checker merge / threads_sanitizer_atomic_fallback (push) Has been cancelled Details
Windows GitHub CI / shared (windows-2022, map[arch:win32 config:--strict-warnings no-fips]) (push) Has been cancelled Details
Windows GitHub CI / shared (windows-2022, map[arch:win64 config:enable-fips]) (push) Has been cancelled Details
Windows GitHub CI / shared (windows-2025, map[arch:win32 config:--strict-warnings no-fips]) (push) Has been cancelled Details
Windows GitHub CI / shared (windows-2025, map[arch:win64 config:enable-fips]) (push) Has been cancelled Details
Windows GitHub CI / plain (windows-2022) (push) Has been cancelled Details
Windows GitHub CI / plain (windows-2025) (push) Has been cancelled Details
Windows GitHub CI / minimal (windows-2022) (push) Has been cancelled Details
Windows GitHub CI / minimal (windows-2025) (push) Has been cancelled Details
Reviewed-by: Matt Caswell <matt@openssl.org>
Reviewed-by: Saša Nedvědický <sashan@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/28106)

(cherry picked from commit 981d6776a3)
2025-07-28 13:22:53 +02:00
Richard Levitte c280e88341 Add a test of 'openssl storeutl' with a BER-encoded PKCS#12 file
GitHub CI / check_update (push) Has been cancelled Details
GitHub CI / check_docs (push) Has been cancelled Details
GitHub CI / check-ansi (push) Has been cancelled Details
GitHub CI / basic_gcc (push) Has been cancelled Details
GitHub CI / basic_clang (push) Has been cancelled Details
GitHub CI / linux-arm64 (push) Has been cancelled Details
GitHub CI / freebsd-x86_64 (push) Has been cancelled Details
GitHub CI / minimal (push) Has been cancelled Details
GitHub CI / no-deprecated (push) Has been cancelled Details
GitHub CI / no-shared-ubuntu (push) Has been cancelled Details
GitHub CI / no-shared-macos (macos-13) (push) Has been cancelled Details
GitHub CI / no-shared-macos (macos-14) (push) Has been cancelled Details
GitHub CI / non-caching (push) Has been cancelled Details
GitHub CI / address_ub_sanitizer (push) Has been cancelled Details
GitHub CI / memory_sanitizer (push) Has been cancelled Details
GitHub CI / threads_sanitizer (push) Has been cancelled Details
GitHub CI / enable_non-default_options (push) Has been cancelled Details
GitHub CI / fips_and_ktls (push) Has been cancelled Details
GitHub CI / no-legacy (push) Has been cancelled Details
GitHub CI / legacy (push) Has been cancelled Details
GitHub CI / buildtest (push) Has been cancelled Details
GitHub CI / out-of-readonly-source-and-install-ubuntu (push) Has been cancelled Details
GitHub CI / out-of-readonly-source-and-install-macos (macos-13) (push) Has been cancelled Details
GitHub CI / out-of-readonly-source-and-install-macos (macos-14) (push) Has been cancelled Details
GitHub CI / external-tests (push) Has been cancelled Details
GitHub CI / external-test-pyca (3.9, 1.51.0) (push) Has been cancelled Details
Compiler Zoo CI / compiler (map[cc:clang-11 distro:ubuntu-22.04]) (push) Has been cancelled Details
Compiler Zoo CI / compiler (map[cc:clang-12 distro:ubuntu-22.04]) (push) Has been cancelled Details
Compiler Zoo CI / compiler (map[cc:clang-13 distro:ubuntu-22.04]) (push) Has been cancelled Details
Compiler Zoo CI / compiler (map[cc:clang-14 distro:ubuntu-22.04]) (push) Has been cancelled Details
Compiler Zoo CI / compiler (map[cc:clang-15 distro:ubuntu-22.04 llvm-ppa-name:jammy]) (push) Has been cancelled Details
Compiler Zoo CI / compiler (map[cc:gcc-10 distro:ubuntu-22.04]) (push) Has been cancelled Details
Compiler Zoo CI / compiler (map[cc:gcc-11 distro:ubuntu-22.04]) (push) Has been cancelled Details
Compiler Zoo CI / compiler (map[cc:gcc-12 distro:ubuntu-22.04]) (push) Has been cancelled Details
Compiler Zoo CI / compiler (map[cc:gcc-9 distro:ubuntu-22.04]) (push) Has been cancelled Details
Cross Compile / cross-compilation (map[arch:aarch64-linux-gnu libs:libc6-dev-arm64-cross target:linux-aarch64]) (push) Has been cancelled Details
Cross Compile / cross-compilation (map[arch:alpha-linux-gnu libs:libc6.1-dev-alpha-cross target:linux-alpha-gcc]) (push) Has been cancelled Details
Cross Compile / cross-compilation (map[arch:arm-linux-gnueabi libs:libc6-dev-armel-cross target:linux-armv4 tests:-test_includes -test_store -test_x509_store]) (push) Has been cancelled Details
Cross Compile / cross-compilation (map[arch:arm-linux-gnueabihf libs:libc6-dev-armhf-cross target:linux-armv4 tests:-test_includes -test_store -test_x509_store]) (push) Has been cancelled Details
Cross Compile / cross-compilation (map[arch:hppa-linux-gnu fips:no libs:libc6-dev-hppa-cross target:-static linux-generic32 tests:-test_includes -test_store -test_x509_store]) (push) Has been cancelled Details
Cross Compile / cross-compilation (map[arch:hppa-linux-gnu libs:libc6-dev-hppa-cross target:linux-generic32 tests:none]) (push) Has been cancelled Details
Cross Compile / cross-compilation (map[arch:m68k-linux-gnu fips:no libs:libc6-dev-m68k-cross target:-static -m68040 linux-latomic -Wno-stringop-overflow tests:-test_includes -test_store -test_x509_store]) (push) Has been cancelled Details
Cross Compile / cross-compilation (map[arch:m68k-linux-gnu libs:libc6-dev-m68k-cross target:-mcfv4e linux-latomic -Wno-stringop-overflow tests:none]) (push) Has been cancelled Details
Cross Compile / cross-compilation (map[arch:mips-linux-gnu fips:no libs:libc6-dev-mips-cross target:-static linux-mips32 tests:-test_includes -test_store -test_x509_store]) (push) Has been cancelled Details
Cross Compile / cross-compilation (map[arch:mips-linux-gnu libs:libc6-dev-mips-cross target:linux-mips32 tests:none]) (push) Has been cancelled Details
Cross Compile / cross-compilation (map[arch:mips64-linux-gnuabi64 fips:no libs:libc6-dev-mips64-cross target:-static linux64-mips64]) (push) Has been cancelled Details
Cross Compile / cross-compilation (map[arch:mips64-linux-gnuabi64 libs:libc6-dev-mips64-cross target:linux64-mips64 tests:none]) (push) Has been cancelled Details
Cross Compile / cross-compilation (map[arch:mipsel-linux-gnu libs:libc6-dev-mipsel-cross target:linux-mips32 tests:-test_includes -test_store -test_x509_store]) (push) Has been cancelled Details
Cross Compile / cross-compilation (map[arch:powerpc64le-linux-gnu libs:libc6-dev-ppc64el-cross target:linux-ppc64le]) (push) Has been cancelled Details
Cross Compile / cross-compilation (map[arch:riscv64-linux-gnu libs:libc6-dev-riscv64-cross target:linux64-riscv64]) (push) Has been cancelled Details
Cross Compile / cross-compilation (map[arch:s390x-linux-gnu libs:libc6-dev-s390x-cross target:linux64-s390x -Wno-stringop-overflow]) (push) Has been cancelled Details
Cross Compile / cross-compilation (map[arch:sh4-linux-gnu libs:libc6-dev-sh4-cross target:no-async linux-latomic tests:-test_includes -test_store -test_x509_store]) (push) Has been cancelled Details
Cross Compile / cross-compilation (map[arch:sparc64-linux-gnu libs:libc6-dev-sparc64-cross target:linux64-sparcv9 tests:none]) (push) Has been cancelled Details
Provider old versions compat / fips-provider-validation (map[dir:openssl-3.0.0 tgz:openssl-3.0.0.tar.gz url:https://www.openssl.org/source/old/3.0/openssl-3.0.0.tar.gz]) (push) Has been cancelled Details
Fuzz-checker CI / fuzz-checker (map[cc:afl-clang-fast config:enable-fuzz-afl no-module install:afl++ name:AFL]) (push) Has been cancelled Details
Fuzz-checker CI / fuzz-checker (map[cc:clang-18 config:enable-fuzz-libfuzzer enable-asan enable-ubsan -fno-sanitize=function -fsanitize-coverage=trace-cmp -DFUZZING_BUILD_MODE_UNSAFE_FOR_PRODUCTION extra:enable-fips enable-ec_nistp_64_gcc_128 -fno-sanitize=alignment ena… (push) Has been cancelled Details
Fuzz-checker CI / fuzz-checker (map[cc:clang-18 config:enable-fuzz-libfuzzer enable-asan enable-ubsan -fno-sanitize=function install:libfuzzer-18-dev libs:--with-fuzzer-lib=/usr/lib/llvm-18/lib/libFuzzer.a --with-fuzzer-include=/usr/include/clang/18/include/fuzzer linke… (push) Has been cancelled Details
CIFuzz / Fuzzing (push) Has been cancelled Details
Run-checker CI / run-checker (enable-ssl-trace) (push) Has been cancelled Details
Run-checker CI / run-checker (enable-trace enable-fips) (push) Has been cancelled Details
Run-checker CI / run-checker (no-atexit) (push) Has been cancelled Details
Run-checker CI / run-checker (no-cmp) (push) Has been cancelled Details
Run-checker CI / run-checker (no-cms) (push) Has been cancelled Details
Run-checker CI / run-checker (no-ct) (push) Has been cancelled Details
Run-checker CI / run-checker (no-dtls) (push) Has been cancelled Details
Run-checker CI / run-checker (no-ec) (push) Has been cancelled Details
Run-checker CI / run-checker (no-ec2m) (push) Has been cancelled Details
Run-checker CI / run-checker (no-legacy) (push) Has been cancelled Details
Run-checker CI / run-checker (no-rfc3779) (push) Has been cancelled Details
Run-checker CI / run-checker (no-sock) (push) Has been cancelled Details
Run-checker CI / run-checker (no-srp) (push) Has been cancelled Details
Run-checker CI / run-checker (no-srtp) (push) Has been cancelled Details
Run-checker CI / run-checker (no-tests) (push) Has been cancelled Details
Run-checker CI / run-checker (no-threads) (push) Has been cancelled Details
Run-checker CI / run-checker (no-tls) (push) Has been cancelled Details
Run-checker CI / run-checker (no-tls1_2) (push) Has been cancelled Details
Run-checker CI / run-checker (no-tls1_3) (push) Has been cancelled Details
Run-checker CI / run-checker (no-ts) (push) Has been cancelled Details
Run-checker CI / run-checker (no-ui) (push) Has been cancelled Details
Run-checker merge / run-checker (enable-asan enable-ubsan no-shared no-asm -DOPENSSL_SMALL_FOOTPRINT -fno-sanitize=function) (push) Has been cancelled Details
Run-checker merge / run-checker (enable-ubsan no-asm -DOPENSSL_SMALL_FOOTPRINT -fno-sanitize=function) (push) Has been cancelled Details
Run-checker merge / run-checker (enable-weak-ssl-ciphers) (push) Has been cancelled Details
Run-checker merge / run-checker (enable-zlib) (push) Has been cancelled Details
Run-checker merge / run-checker (no-dgram) (push) Has been cancelled Details
Run-checker merge / run-checker (no-dso) (push) Has been cancelled Details
Run-checker merge / run-checker (no-dynamic-engine) (push) Has been cancelled Details
Run-checker merge / run-checker (no-engine no-shared) (push) Has been cancelled Details
Run-checker merge / run-checker (no-err) (push) Has been cancelled Details
Run-checker merge / run-checker (no-filenames) (push) Has been cancelled Details
Run-checker merge / run-checker (no-unit-test) (push) Has been cancelled Details
Run-checker merge / threads_sanitizer_atomic_fallback (push) Has been cancelled Details
Windows GitHub CI / shared (windows-2022, map[arch:win32 config:--strict-warnings no-fips]) (push) Has been cancelled Details
Windows GitHub CI / shared (windows-2022, map[arch:win64 config:enable-fips]) (push) Has been cancelled Details
Windows GitHub CI / shared (windows-2025, map[arch:win32 config:--strict-warnings no-fips]) (push) Has been cancelled Details
Windows GitHub CI / shared (windows-2025, map[arch:win64 config:enable-fips]) (push) Has been cancelled Details
Windows GitHub CI / plain (windows-2022) (push) Has been cancelled Details
Windows GitHub CI / plain (windows-2025) (push) Has been cancelled Details
Windows GitHub CI / minimal (windows-2022) (push) Has been cancelled Details
Windows GitHub CI / minimal (windows-2025) (push) Has been cancelled Details
The test file (test-BER.p12) was given to us by David von Oheimb

Co-Authored-By: David von Oheimb <david.von.oheimb@siemens.com>

Reviewed-by: Tomas Mraz <tomas@openssl.org>
Reviewed-by: David von Oheimb <david.von.oheimb@siemens.com>
(Merged from https://github.com/openssl/openssl/pull/28016)

(cherry picked from commit 49f8db5327)
2025-07-26 11:36:28 +02:00
Richard Levitte 54d399a128 Fix OSSL_STORE to consider cached info in the EOF check.
OSSL_STORE_load() called OSSL_STORE_eof() before checking if there is
cached OSSL_STORE_INFO to consider.  To fix this issue, the cached info
check is moved to OSSL_STORE_eof(), as that seems to make most common
sense.

This solves an issue with PKCS#12 files, where the cached info was never
considered because the underlying file IO layer signaled that EOF is
reached.

Fixes #28010

Reviewed-by: Tomas Mraz <tomas@openssl.org>
Reviewed-by: David von Oheimb <david.von.oheimb@siemens.com>
(Merged from https://github.com/openssl/openssl/pull/28016)

(cherry picked from commit 1f3af48c31)
2025-07-26 11:36:26 +02:00
AntonMoryakov 2a80bafe7c sm2: sm2_sign.c: check EC_KEY_get0_private_key() for NULL in sm2_sig_gen()
GitHub CI / check_update (push) Waiting to run Details
GitHub CI / check_docs (push) Waiting to run Details
GitHub CI / check-ansi (push) Waiting to run Details
GitHub CI / basic_gcc (push) Waiting to run Details
GitHub CI / basic_clang (push) Waiting to run Details
GitHub CI / linux-arm64 (push) Waiting to run Details
GitHub CI / freebsd-x86_64 (push) Waiting to run Details
GitHub CI / minimal (push) Waiting to run Details
GitHub CI / no-deprecated (push) Waiting to run Details
GitHub CI / no-shared-ubuntu (push) Waiting to run Details
GitHub CI / no-shared-macos (macos-13) (push) Waiting to run Details
GitHub CI / no-shared-macos (macos-14) (push) Waiting to run Details
GitHub CI / non-caching (push) Waiting to run Details
GitHub CI / address_ub_sanitizer (push) Waiting to run Details
GitHub CI / memory_sanitizer (push) Waiting to run Details
GitHub CI / threads_sanitizer (push) Waiting to run Details
GitHub CI / enable_non-default_options (push) Waiting to run Details
GitHub CI / fips_and_ktls (push) Waiting to run Details
GitHub CI / no-legacy (push) Waiting to run Details
GitHub CI / legacy (push) Waiting to run Details
GitHub CI / buildtest (push) Waiting to run Details
GitHub CI / out-of-readonly-source-and-install-ubuntu (push) Waiting to run Details
GitHub CI / out-of-readonly-source-and-install-macos (macos-13) (push) Waiting to run Details
GitHub CI / out-of-readonly-source-and-install-macos (macos-14) (push) Waiting to run Details
GitHub CI / external-tests (push) Waiting to run Details
GitHub CI / external-test-pyca (3.9, 1.51.0) (push) Waiting to run Details
Compiler Zoo CI / compiler (map[cc:clang-11 distro:ubuntu-22.04]) (push) Waiting to run Details
Compiler Zoo CI / compiler (map[cc:clang-12 distro:ubuntu-22.04]) (push) Waiting to run Details
Compiler Zoo CI / compiler (map[cc:clang-13 distro:ubuntu-22.04]) (push) Waiting to run Details
Compiler Zoo CI / compiler (map[cc:clang-14 distro:ubuntu-22.04]) (push) Waiting to run Details
Compiler Zoo CI / compiler (map[cc:clang-15 distro:ubuntu-22.04 llvm-ppa-name:jammy]) (push) Waiting to run Details
Compiler Zoo CI / compiler (map[cc:gcc-10 distro:ubuntu-22.04]) (push) Waiting to run Details
Compiler Zoo CI / compiler (map[cc:gcc-11 distro:ubuntu-22.04]) (push) Waiting to run Details
Compiler Zoo CI / compiler (map[cc:gcc-12 distro:ubuntu-22.04]) (push) Waiting to run Details
Compiler Zoo CI / compiler (map[cc:gcc-9 distro:ubuntu-22.04]) (push) Waiting to run Details
Cross Compile / cross-compilation (map[arch:aarch64-linux-gnu libs:libc6-dev-arm64-cross target:linux-aarch64]) (push) Waiting to run Details
Cross Compile / cross-compilation (map[arch:alpha-linux-gnu libs:libc6.1-dev-alpha-cross target:linux-alpha-gcc]) (push) Waiting to run Details
Cross Compile / cross-compilation (map[arch:arm-linux-gnueabi libs:libc6-dev-armel-cross target:linux-armv4 tests:-test_includes -test_store -test_x509_store]) (push) Waiting to run Details
Cross Compile / cross-compilation (map[arch:arm-linux-gnueabihf libs:libc6-dev-armhf-cross target:linux-armv4 tests:-test_includes -test_store -test_x509_store]) (push) Waiting to run Details
Cross Compile / cross-compilation (map[arch:hppa-linux-gnu fips:no libs:libc6-dev-hppa-cross target:-static linux-generic32 tests:-test_includes -test_store -test_x509_store]) (push) Waiting to run Details
Cross Compile / cross-compilation (map[arch:hppa-linux-gnu libs:libc6-dev-hppa-cross target:linux-generic32 tests:none]) (push) Waiting to run Details
Cross Compile / cross-compilation (map[arch:m68k-linux-gnu fips:no libs:libc6-dev-m68k-cross target:-static -m68040 linux-latomic -Wno-stringop-overflow tests:-test_includes -test_store -test_x509_store]) (push) Waiting to run Details
Cross Compile / cross-compilation (map[arch:m68k-linux-gnu libs:libc6-dev-m68k-cross target:-mcfv4e linux-latomic -Wno-stringop-overflow tests:none]) (push) Waiting to run Details
Cross Compile / cross-compilation (map[arch:mips-linux-gnu fips:no libs:libc6-dev-mips-cross target:-static linux-mips32 tests:-test_includes -test_store -test_x509_store]) (push) Waiting to run Details
Cross Compile / cross-compilation (map[arch:mips-linux-gnu libs:libc6-dev-mips-cross target:linux-mips32 tests:none]) (push) Waiting to run Details
Cross Compile / cross-compilation (map[arch:mips64-linux-gnuabi64 fips:no libs:libc6-dev-mips64-cross target:-static linux64-mips64]) (push) Waiting to run Details
Cross Compile / cross-compilation (map[arch:mips64-linux-gnuabi64 libs:libc6-dev-mips64-cross target:linux64-mips64 tests:none]) (push) Waiting to run Details
Cross Compile / cross-compilation (map[arch:mipsel-linux-gnu libs:libc6-dev-mipsel-cross target:linux-mips32 tests:-test_includes -test_store -test_x509_store]) (push) Waiting to run Details
Cross Compile / cross-compilation (map[arch:powerpc64le-linux-gnu libs:libc6-dev-ppc64el-cross target:linux-ppc64le]) (push) Waiting to run Details
Cross Compile / cross-compilation (map[arch:riscv64-linux-gnu libs:libc6-dev-riscv64-cross target:linux64-riscv64]) (push) Waiting to run Details
Cross Compile / cross-compilation (map[arch:s390x-linux-gnu libs:libc6-dev-s390x-cross target:linux64-s390x -Wno-stringop-overflow]) (push) Waiting to run Details
Cross Compile / cross-compilation (map[arch:sh4-linux-gnu libs:libc6-dev-sh4-cross target:no-async linux-latomic tests:-test_includes -test_store -test_x509_store]) (push) Waiting to run Details
Cross Compile / cross-compilation (map[arch:sparc64-linux-gnu libs:libc6-dev-sparc64-cross target:linux64-sparcv9 tests:none]) (push) Waiting to run Details
Provider old versions compat / fips-provider-validation (map[dir:openssl-3.0.0 tgz:openssl-3.0.0.tar.gz url:https://www.openssl.org/source/old/3.0/openssl-3.0.0.tar.gz]) (push) Waiting to run Details
Fuzz-checker CI / fuzz-checker (map[cc:afl-clang-fast config:enable-fuzz-afl no-module install:afl++ name:AFL]) (push) Waiting to run Details
Fuzz-checker CI / fuzz-checker (map[cc:clang-18 config:enable-fuzz-libfuzzer enable-asan enable-ubsan -fno-sanitize=function -fsanitize-coverage=trace-cmp -DFUZZING_BUILD_MODE_UNSAFE_FOR_PRODUCTION extra:enable-fips enable-ec_nistp_64_gcc_128 -fno-sanitize=alignment ena… (push) Waiting to run Details
Fuzz-checker CI / fuzz-checker (map[cc:clang-18 config:enable-fuzz-libfuzzer enable-asan enable-ubsan -fno-sanitize=function install:libfuzzer-18-dev libs:--with-fuzzer-lib=/usr/lib/llvm-18/lib/libFuzzer.a --with-fuzzer-include=/usr/include/clang/18/include/fuzzer linke… (push) Waiting to run Details
CIFuzz / Fuzzing (push) Waiting to run Details
Run-checker CI / run-checker (enable-ssl-trace) (push) Waiting to run Details
Run-checker CI / run-checker (enable-trace enable-fips) (push) Waiting to run Details
Run-checker CI / run-checker (no-atexit) (push) Waiting to run Details
Run-checker CI / run-checker (no-cmp) (push) Waiting to run Details
Run-checker CI / run-checker (no-cms) (push) Waiting to run Details
Run-checker CI / run-checker (no-ct) (push) Waiting to run Details
Run-checker CI / run-checker (no-dtls) (push) Waiting to run Details
Run-checker CI / run-checker (no-ec) (push) Waiting to run Details
Run-checker CI / run-checker (no-ec2m) (push) Waiting to run Details
Run-checker CI / run-checker (no-legacy) (push) Waiting to run Details
Run-checker CI / run-checker (no-rfc3779) (push) Waiting to run Details
Run-checker CI / run-checker (no-sock) (push) Waiting to run Details
Run-checker CI / run-checker (no-srp) (push) Waiting to run Details
Run-checker CI / run-checker (no-srtp) (push) Waiting to run Details
Run-checker CI / run-checker (no-tests) (push) Waiting to run Details
Run-checker CI / run-checker (no-threads) (push) Waiting to run Details
Run-checker CI / run-checker (no-tls) (push) Waiting to run Details
Run-checker CI / run-checker (no-tls1_2) (push) Waiting to run Details
Run-checker CI / run-checker (no-tls1_3) (push) Waiting to run Details
Run-checker CI / run-checker (no-ts) (push) Waiting to run Details
Run-checker CI / run-checker (no-ui) (push) Waiting to run Details
Run-checker merge / run-checker (enable-asan enable-ubsan no-shared no-asm -DOPENSSL_SMALL_FOOTPRINT -fno-sanitize=function) (push) Waiting to run Details
Run-checker merge / run-checker (enable-ubsan no-asm -DOPENSSL_SMALL_FOOTPRINT -fno-sanitize=function) (push) Waiting to run Details
Run-checker merge / run-checker (enable-weak-ssl-ciphers) (push) Waiting to run Details
Run-checker merge / run-checker (enable-zlib) (push) Waiting to run Details
Run-checker merge / run-checker (no-dgram) (push) Waiting to run Details
Run-checker merge / run-checker (no-dso) (push) Waiting to run Details
Run-checker merge / run-checker (no-dynamic-engine) (push) Waiting to run Details
Run-checker merge / run-checker (no-engine no-shared) (push) Waiting to run Details
Run-checker merge / run-checker (no-err) (push) Waiting to run Details
Run-checker merge / run-checker (no-filenames) (push) Waiting to run Details
Run-checker merge / run-checker (no-unit-test) (push) Waiting to run Details
Run-checker merge / threads_sanitizer_atomic_fallback (push) Waiting to run Details
Windows GitHub CI / shared (windows-2022, map[arch:win32 config:--strict-warnings no-fips]) (push) Waiting to run Details
Windows GitHub CI / shared (windows-2022, map[arch:win64 config:enable-fips]) (push) Waiting to run Details
Windows GitHub CI / shared (windows-2025, map[arch:win32 config:--strict-warnings no-fips]) (push) Waiting to run Details
Windows GitHub CI / shared (windows-2025, map[arch:win64 config:enable-fips]) (push) Waiting to run Details
Windows GitHub CI / plain (windows-2022) (push) Waiting to run Details
Windows GitHub CI / plain (windows-2025) (push) Waiting to run Details
Windows GitHub CI / minimal (windows-2022) (push) Waiting to run Details
Windows GitHub CI / minimal (windows-2025) (push) Waiting to run Details
Static analysis revealed that sm2_sig_gen() dereferences the return value
of EC_KEY_get0_private_key() without checking for NULL. This could lead to
a crash if the private key is unset.

This patch adds a NULL check and raises ERR_R_PASSED_NULL_PARAMETER if the
key is missing.

Issue found by static analyzer:
> Return value of EC_KEY_get0_private_key() is dereferenced without checking for NULL (11/12 checked)

CLA: trivial
Signed-off-by: Anton Moryakov <ant.v.moryakov@gmail.com>

Reviewed-by: Nicola Tuveri <nic.tuv@gmail.com>
Reviewed-by: Tom Cosgrove <tom.cosgrove@arm.com>
Reviewed-by: Tomas Mraz <tomas@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/27741)

(cherry picked from commit c108ead284)
2025-07-25 12:07:52 +02:00
Alen Yan 037b41ff92 fix SM2 privatekey decode(PEM format, ECPrivateKey).
GitHub CI / check_update (push) Waiting to run Details
GitHub CI / check_docs (push) Waiting to run Details
GitHub CI / check-ansi (push) Waiting to run Details
GitHub CI / basic_gcc (push) Waiting to run Details
GitHub CI / basic_clang (push) Waiting to run Details
GitHub CI / linux-arm64 (push) Waiting to run Details
GitHub CI / freebsd-x86_64 (push) Waiting to run Details
GitHub CI / minimal (push) Waiting to run Details
GitHub CI / no-deprecated (push) Waiting to run Details
GitHub CI / no-shared-ubuntu (push) Waiting to run Details
GitHub CI / no-shared-macos (macos-13) (push) Waiting to run Details
GitHub CI / no-shared-macos (macos-14) (push) Waiting to run Details
GitHub CI / non-caching (push) Waiting to run Details
GitHub CI / address_ub_sanitizer (push) Waiting to run Details
GitHub CI / memory_sanitizer (push) Waiting to run Details
GitHub CI / threads_sanitizer (push) Waiting to run Details
GitHub CI / enable_non-default_options (push) Waiting to run Details
GitHub CI / fips_and_ktls (push) Waiting to run Details
GitHub CI / no-legacy (push) Waiting to run Details
GitHub CI / legacy (push) Waiting to run Details
GitHub CI / buildtest (push) Waiting to run Details
GitHub CI / out-of-readonly-source-and-install-ubuntu (push) Waiting to run Details
GitHub CI / out-of-readonly-source-and-install-macos (macos-13) (push) Waiting to run Details
GitHub CI / out-of-readonly-source-and-install-macos (macos-14) (push) Waiting to run Details
GitHub CI / external-tests (push) Waiting to run Details
GitHub CI / external-test-pyca (3.9, 1.51.0) (push) Waiting to run Details
Compiler Zoo CI / compiler (map[cc:clang-11 distro:ubuntu-22.04]) (push) Waiting to run Details
Compiler Zoo CI / compiler (map[cc:clang-12 distro:ubuntu-22.04]) (push) Waiting to run Details
Compiler Zoo CI / compiler (map[cc:clang-13 distro:ubuntu-22.04]) (push) Waiting to run Details
Compiler Zoo CI / compiler (map[cc:clang-14 distro:ubuntu-22.04]) (push) Waiting to run Details
Compiler Zoo CI / compiler (map[cc:clang-15 distro:ubuntu-22.04 llvm-ppa-name:jammy]) (push) Waiting to run Details
Compiler Zoo CI / compiler (map[cc:gcc-10 distro:ubuntu-22.04]) (push) Waiting to run Details
Compiler Zoo CI / compiler (map[cc:gcc-11 distro:ubuntu-22.04]) (push) Waiting to run Details
Compiler Zoo CI / compiler (map[cc:gcc-12 distro:ubuntu-22.04]) (push) Waiting to run Details
Compiler Zoo CI / compiler (map[cc:gcc-9 distro:ubuntu-22.04]) (push) Waiting to run Details
Cross Compile / cross-compilation (map[arch:aarch64-linux-gnu libs:libc6-dev-arm64-cross target:linux-aarch64]) (push) Waiting to run Details
Cross Compile / cross-compilation (map[arch:alpha-linux-gnu libs:libc6.1-dev-alpha-cross target:linux-alpha-gcc]) (push) Waiting to run Details
Cross Compile / cross-compilation (map[arch:arm-linux-gnueabi libs:libc6-dev-armel-cross target:linux-armv4 tests:-test_includes -test_store -test_x509_store]) (push) Waiting to run Details
Cross Compile / cross-compilation (map[arch:arm-linux-gnueabihf libs:libc6-dev-armhf-cross target:linux-armv4 tests:-test_includes -test_store -test_x509_store]) (push) Waiting to run Details
Cross Compile / cross-compilation (map[arch:hppa-linux-gnu fips:no libs:libc6-dev-hppa-cross target:-static linux-generic32 tests:-test_includes -test_store -test_x509_store]) (push) Waiting to run Details
Cross Compile / cross-compilation (map[arch:hppa-linux-gnu libs:libc6-dev-hppa-cross target:linux-generic32 tests:none]) (push) Waiting to run Details
Cross Compile / cross-compilation (map[arch:m68k-linux-gnu fips:no libs:libc6-dev-m68k-cross target:-static -m68040 linux-latomic -Wno-stringop-overflow tests:-test_includes -test_store -test_x509_store]) (push) Waiting to run Details
Cross Compile / cross-compilation (map[arch:m68k-linux-gnu libs:libc6-dev-m68k-cross target:-mcfv4e linux-latomic -Wno-stringop-overflow tests:none]) (push) Waiting to run Details
Cross Compile / cross-compilation (map[arch:mips-linux-gnu fips:no libs:libc6-dev-mips-cross target:-static linux-mips32 tests:-test_includes -test_store -test_x509_store]) (push) Waiting to run Details
Cross Compile / cross-compilation (map[arch:mips-linux-gnu libs:libc6-dev-mips-cross target:linux-mips32 tests:none]) (push) Waiting to run Details
Cross Compile / cross-compilation (map[arch:mips64-linux-gnuabi64 fips:no libs:libc6-dev-mips64-cross target:-static linux64-mips64]) (push) Waiting to run Details
Cross Compile / cross-compilation (map[arch:mips64-linux-gnuabi64 libs:libc6-dev-mips64-cross target:linux64-mips64 tests:none]) (push) Waiting to run Details
Cross Compile / cross-compilation (map[arch:mipsel-linux-gnu libs:libc6-dev-mipsel-cross target:linux-mips32 tests:-test_includes -test_store -test_x509_store]) (push) Waiting to run Details
Cross Compile / cross-compilation (map[arch:powerpc64le-linux-gnu libs:libc6-dev-ppc64el-cross target:linux-ppc64le]) (push) Waiting to run Details
Cross Compile / cross-compilation (map[arch:riscv64-linux-gnu libs:libc6-dev-riscv64-cross target:linux64-riscv64]) (push) Waiting to run Details
Cross Compile / cross-compilation (map[arch:s390x-linux-gnu libs:libc6-dev-s390x-cross target:linux64-s390x -Wno-stringop-overflow]) (push) Waiting to run Details
Cross Compile / cross-compilation (map[arch:sh4-linux-gnu libs:libc6-dev-sh4-cross target:no-async linux-latomic tests:-test_includes -test_store -test_x509_store]) (push) Waiting to run Details
Cross Compile / cross-compilation (map[arch:sparc64-linux-gnu libs:libc6-dev-sparc64-cross target:linux64-sparcv9 tests:none]) (push) Waiting to run Details
Provider old versions compat / fips-provider-validation (map[dir:openssl-3.0.0 tgz:openssl-3.0.0.tar.gz url:https://www.openssl.org/source/old/3.0/openssl-3.0.0.tar.gz]) (push) Waiting to run Details
Fuzz-checker CI / fuzz-checker (map[cc:afl-clang-fast config:enable-fuzz-afl no-module install:afl++ name:AFL]) (push) Waiting to run Details
Fuzz-checker CI / fuzz-checker (map[cc:clang-18 config:enable-fuzz-libfuzzer enable-asan enable-ubsan -fno-sanitize=function -fsanitize-coverage=trace-cmp -DFUZZING_BUILD_MODE_UNSAFE_FOR_PRODUCTION extra:enable-fips enable-ec_nistp_64_gcc_128 -fno-sanitize=alignment ena… (push) Waiting to run Details
Fuzz-checker CI / fuzz-checker (map[cc:clang-18 config:enable-fuzz-libfuzzer enable-asan enable-ubsan -fno-sanitize=function install:libfuzzer-18-dev libs:--with-fuzzer-lib=/usr/lib/llvm-18/lib/libFuzzer.a --with-fuzzer-include=/usr/include/clang/18/include/fuzzer linke… (push) Waiting to run Details
CIFuzz / Fuzzing (push) Waiting to run Details
Run-checker CI / run-checker (enable-ssl-trace) (push) Waiting to run Details
Run-checker CI / run-checker (enable-trace enable-fips) (push) Waiting to run Details
Run-checker CI / run-checker (no-atexit) (push) Waiting to run Details
Run-checker CI / run-checker (no-cmp) (push) Waiting to run Details
Run-checker CI / run-checker (no-cms) (push) Waiting to run Details
Run-checker CI / run-checker (no-ct) (push) Waiting to run Details
Run-checker CI / run-checker (no-dtls) (push) Waiting to run Details
Run-checker CI / run-checker (no-ec) (push) Waiting to run Details
Run-checker CI / run-checker (no-ec2m) (push) Waiting to run Details
Run-checker CI / run-checker (no-legacy) (push) Waiting to run Details
Run-checker CI / run-checker (no-rfc3779) (push) Waiting to run Details
Run-checker CI / run-checker (no-sock) (push) Waiting to run Details
Run-checker CI / run-checker (no-srp) (push) Waiting to run Details
Run-checker CI / run-checker (no-srtp) (push) Waiting to run Details
Run-checker CI / run-checker (no-tests) (push) Waiting to run Details
Run-checker CI / run-checker (no-threads) (push) Waiting to run Details
Run-checker CI / run-checker (no-tls) (push) Waiting to run Details
Run-checker CI / run-checker (no-tls1_2) (push) Waiting to run Details
Run-checker CI / run-checker (no-tls1_3) (push) Waiting to run Details
Run-checker CI / run-checker (no-ts) (push) Waiting to run Details
Run-checker CI / run-checker (no-ui) (push) Waiting to run Details
Run-checker merge / run-checker (enable-asan enable-ubsan no-shared no-asm -DOPENSSL_SMALL_FOOTPRINT -fno-sanitize=function) (push) Waiting to run Details
Run-checker merge / run-checker (enable-ubsan no-asm -DOPENSSL_SMALL_FOOTPRINT -fno-sanitize=function) (push) Waiting to run Details
Run-checker merge / run-checker (enable-weak-ssl-ciphers) (push) Waiting to run Details
Run-checker merge / run-checker (enable-zlib) (push) Waiting to run Details
Run-checker merge / run-checker (no-dgram) (push) Waiting to run Details
Run-checker merge / run-checker (no-dso) (push) Waiting to run Details
Run-checker merge / run-checker (no-dynamic-engine) (push) Waiting to run Details
Run-checker merge / run-checker (no-engine no-shared) (push) Waiting to run Details
Run-checker merge / run-checker (no-err) (push) Waiting to run Details
Run-checker merge / run-checker (no-filenames) (push) Waiting to run Details
Run-checker merge / run-checker (no-unit-test) (push) Waiting to run Details
Run-checker merge / threads_sanitizer_atomic_fallback (push) Waiting to run Details
Windows GitHub CI / shared (windows-2022, map[arch:win32 config:--strict-warnings no-fips]) (push) Waiting to run Details
Windows GitHub CI / shared (windows-2022, map[arch:win64 config:enable-fips]) (push) Waiting to run Details
Windows GitHub CI / shared (windows-2025, map[arch:win32 config:--strict-warnings no-fips]) (push) Waiting to run Details
Windows GitHub CI / shared (windows-2025, map[arch:win64 config:enable-fips]) (push) Waiting to run Details
Windows GitHub CI / plain (windows-2022) (push) Waiting to run Details
Windows GitHub CI / plain (windows-2025) (push) Waiting to run Details
Windows GitHub CI / minimal (windows-2022) (push) Waiting to run Details
Windows GitHub CI / minimal (windows-2025) (push) Waiting to run Details
Reviewed-by: Tomas Mraz <tomas@openssl.org>
Reviewed-by: Paul Dale <ppzgs1@gmail.com>
(Merged from https://github.com/openssl/openssl/pull/27999)
2025-07-25 09:46:27 +10:00
K1 c87e6b0eb2 Support decode SM2 parameters
Reviewed-by: Hugo Landau <hlandau@openssl.org>
Reviewed-by: Paul Dale <pauli@openssl.org>
Reviewed-by: Tomas Mraz <tomas@openssl.org>
Reviewed-by: Paul Dale <ppzgs1@gmail.com>
(Merged from https://github.com/openssl/openssl/pull/27999)
2025-07-25 09:46:27 +10:00
Dmitry Misharov 89a7981558 Add CODEOWNERS file
GitHub CI / check_update (push) Has been cancelled Details
GitHub CI / check_docs (push) Has been cancelled Details
GitHub CI / check-ansi (push) Has been cancelled Details
GitHub CI / basic_gcc (push) Has been cancelled Details
GitHub CI / basic_clang (push) Has been cancelled Details
GitHub CI / linux-arm64 (push) Has been cancelled Details
GitHub CI / freebsd-x86_64 (push) Has been cancelled Details
GitHub CI / minimal (push) Has been cancelled Details
GitHub CI / no-deprecated (push) Has been cancelled Details
GitHub CI / no-shared-ubuntu (push) Has been cancelled Details
GitHub CI / no-shared-macos (macos-13) (push) Has been cancelled Details
GitHub CI / no-shared-macos (macos-14) (push) Has been cancelled Details
GitHub CI / non-caching (push) Has been cancelled Details
GitHub CI / address_ub_sanitizer (push) Has been cancelled Details
GitHub CI / memory_sanitizer (push) Has been cancelled Details
GitHub CI / threads_sanitizer (push) Has been cancelled Details
GitHub CI / enable_non-default_options (push) Has been cancelled Details
GitHub CI / fips_and_ktls (push) Has been cancelled Details
GitHub CI / no-legacy (push) Has been cancelled Details
GitHub CI / legacy (push) Has been cancelled Details
GitHub CI / buildtest (push) Has been cancelled Details
GitHub CI / out-of-readonly-source-and-install-ubuntu (push) Has been cancelled Details
GitHub CI / out-of-readonly-source-and-install-macos (macos-13) (push) Has been cancelled Details
GitHub CI / out-of-readonly-source-and-install-macos (macos-14) (push) Has been cancelled Details
GitHub CI / external-tests (push) Has been cancelled Details
GitHub CI / external-test-pyca (3.9, 1.51.0) (push) Has been cancelled Details
Compiler Zoo CI / compiler (map[cc:clang-11 distro:ubuntu-22.04]) (push) Has been cancelled Details
Compiler Zoo CI / compiler (map[cc:clang-12 distro:ubuntu-22.04]) (push) Has been cancelled Details
Compiler Zoo CI / compiler (map[cc:clang-13 distro:ubuntu-22.04]) (push) Has been cancelled Details
Compiler Zoo CI / compiler (map[cc:clang-14 distro:ubuntu-22.04]) (push) Has been cancelled Details
Compiler Zoo CI / compiler (map[cc:clang-15 distro:ubuntu-22.04 llvm-ppa-name:jammy]) (push) Has been cancelled Details
Compiler Zoo CI / compiler (map[cc:gcc-10 distro:ubuntu-22.04]) (push) Has been cancelled Details
Compiler Zoo CI / compiler (map[cc:gcc-11 distro:ubuntu-22.04]) (push) Has been cancelled Details
Compiler Zoo CI / compiler (map[cc:gcc-12 distro:ubuntu-22.04]) (push) Has been cancelled Details
Compiler Zoo CI / compiler (map[cc:gcc-9 distro:ubuntu-22.04]) (push) Has been cancelled Details
Cross Compile / cross-compilation (map[arch:aarch64-linux-gnu libs:libc6-dev-arm64-cross target:linux-aarch64]) (push) Has been cancelled Details
Cross Compile / cross-compilation (map[arch:alpha-linux-gnu libs:libc6.1-dev-alpha-cross target:linux-alpha-gcc]) (push) Has been cancelled Details
Cross Compile / cross-compilation (map[arch:arm-linux-gnueabi libs:libc6-dev-armel-cross target:linux-armv4 tests:-test_includes -test_store -test_x509_store]) (push) Has been cancelled Details
Cross Compile / cross-compilation (map[arch:arm-linux-gnueabihf libs:libc6-dev-armhf-cross target:linux-armv4 tests:-test_includes -test_store -test_x509_store]) (push) Has been cancelled Details
Cross Compile / cross-compilation (map[arch:hppa-linux-gnu fips:no libs:libc6-dev-hppa-cross target:-static linux-generic32 tests:-test_includes -test_store -test_x509_store]) (push) Has been cancelled Details
Cross Compile / cross-compilation (map[arch:hppa-linux-gnu libs:libc6-dev-hppa-cross target:linux-generic32 tests:none]) (push) Has been cancelled Details
Cross Compile / cross-compilation (map[arch:m68k-linux-gnu fips:no libs:libc6-dev-m68k-cross target:-static -m68040 linux-latomic -Wno-stringop-overflow tests:-test_includes -test_store -test_x509_store]) (push) Has been cancelled Details
Cross Compile / cross-compilation (map[arch:m68k-linux-gnu libs:libc6-dev-m68k-cross target:-mcfv4e linux-latomic -Wno-stringop-overflow tests:none]) (push) Has been cancelled Details
Cross Compile / cross-compilation (map[arch:mips-linux-gnu fips:no libs:libc6-dev-mips-cross target:-static linux-mips32 tests:-test_includes -test_store -test_x509_store]) (push) Has been cancelled Details
Cross Compile / cross-compilation (map[arch:mips-linux-gnu libs:libc6-dev-mips-cross target:linux-mips32 tests:none]) (push) Has been cancelled Details
Cross Compile / cross-compilation (map[arch:mips64-linux-gnuabi64 fips:no libs:libc6-dev-mips64-cross target:-static linux64-mips64]) (push) Has been cancelled Details
Cross Compile / cross-compilation (map[arch:mips64-linux-gnuabi64 libs:libc6-dev-mips64-cross target:linux64-mips64 tests:none]) (push) Has been cancelled Details
Cross Compile / cross-compilation (map[arch:mipsel-linux-gnu libs:libc6-dev-mipsel-cross target:linux-mips32 tests:-test_includes -test_store -test_x509_store]) (push) Has been cancelled Details
Cross Compile / cross-compilation (map[arch:powerpc64le-linux-gnu libs:libc6-dev-ppc64el-cross target:linux-ppc64le]) (push) Has been cancelled Details
Cross Compile / cross-compilation (map[arch:riscv64-linux-gnu libs:libc6-dev-riscv64-cross target:linux64-riscv64]) (push) Has been cancelled Details
Cross Compile / cross-compilation (map[arch:s390x-linux-gnu libs:libc6-dev-s390x-cross target:linux64-s390x -Wno-stringop-overflow]) (push) Has been cancelled Details
Cross Compile / cross-compilation (map[arch:sh4-linux-gnu libs:libc6-dev-sh4-cross target:no-async linux-latomic tests:-test_includes -test_store -test_x509_store]) (push) Has been cancelled Details
Cross Compile / cross-compilation (map[arch:sparc64-linux-gnu libs:libc6-dev-sparc64-cross target:linux64-sparcv9 tests:none]) (push) Has been cancelled Details
Provider old versions compat / fips-provider-validation (map[dir:openssl-3.0.0 tgz:openssl-3.0.0.tar.gz url:https://www.openssl.org/source/old/3.0/openssl-3.0.0.tar.gz]) (push) Has been cancelled Details
Fuzz-checker CI / fuzz-checker (map[cc:afl-clang-fast config:enable-fuzz-afl no-module install:afl++ name:AFL]) (push) Has been cancelled Details
Fuzz-checker CI / fuzz-checker (map[cc:clang-18 config:enable-fuzz-libfuzzer enable-asan enable-ubsan -fno-sanitize=function -fsanitize-coverage=trace-cmp -DFUZZING_BUILD_MODE_UNSAFE_FOR_PRODUCTION extra:enable-fips enable-ec_nistp_64_gcc_128 -fno-sanitize=alignment ena… (push) Has been cancelled Details
Fuzz-checker CI / fuzz-checker (map[cc:clang-18 config:enable-fuzz-libfuzzer enable-asan enable-ubsan -fno-sanitize=function install:libfuzzer-18-dev libs:--with-fuzzer-lib=/usr/lib/llvm-18/lib/libFuzzer.a --with-fuzzer-include=/usr/include/clang/18/include/fuzzer linke… (push) Has been cancelled Details
CIFuzz / Fuzzing (push) Has been cancelled Details
Run-checker CI / run-checker (enable-ssl-trace) (push) Has been cancelled Details
Run-checker CI / run-checker (enable-trace enable-fips) (push) Has been cancelled Details
Run-checker CI / run-checker (no-atexit) (push) Has been cancelled Details
Run-checker CI / run-checker (no-cmp) (push) Has been cancelled Details
Run-checker CI / run-checker (no-cms) (push) Has been cancelled Details
Run-checker CI / run-checker (no-ct) (push) Has been cancelled Details
Run-checker CI / run-checker (no-dtls) (push) Has been cancelled Details
Run-checker CI / run-checker (no-ec) (push) Has been cancelled Details
Run-checker CI / run-checker (no-ec2m) (push) Has been cancelled Details
Run-checker CI / run-checker (no-legacy) (push) Has been cancelled Details
Run-checker CI / run-checker (no-rfc3779) (push) Has been cancelled Details
Run-checker CI / run-checker (no-sock) (push) Has been cancelled Details
Run-checker CI / run-checker (no-srp) (push) Has been cancelled Details
Run-checker CI / run-checker (no-srtp) (push) Has been cancelled Details
Run-checker CI / run-checker (no-tests) (push) Has been cancelled Details
Run-checker CI / run-checker (no-threads) (push) Has been cancelled Details
Run-checker CI / run-checker (no-tls) (push) Has been cancelled Details
Run-checker CI / run-checker (no-tls1_2) (push) Has been cancelled Details
Run-checker CI / run-checker (no-tls1_3) (push) Has been cancelled Details
Run-checker CI / run-checker (no-ts) (push) Has been cancelled Details
Run-checker CI / run-checker (no-ui) (push) Has been cancelled Details
Run-checker merge / run-checker (enable-asan enable-ubsan no-shared no-asm -DOPENSSL_SMALL_FOOTPRINT -fno-sanitize=function) (push) Has been cancelled Details
Run-checker merge / run-checker (enable-ubsan no-asm -DOPENSSL_SMALL_FOOTPRINT -fno-sanitize=function) (push) Has been cancelled Details
Run-checker merge / run-checker (enable-weak-ssl-ciphers) (push) Has been cancelled Details
Run-checker merge / run-checker (enable-zlib) (push) Has been cancelled Details
Run-checker merge / run-checker (no-dgram) (push) Has been cancelled Details
Run-checker merge / run-checker (no-dso) (push) Has been cancelled Details
Run-checker merge / run-checker (no-dynamic-engine) (push) Has been cancelled Details
Run-checker merge / run-checker (no-engine no-shared) (push) Has been cancelled Details
Run-checker merge / run-checker (no-err) (push) Has been cancelled Details
Run-checker merge / run-checker (no-filenames) (push) Has been cancelled Details
Run-checker merge / run-checker (no-unit-test) (push) Has been cancelled Details
Run-checker merge / threads_sanitizer_atomic_fallback (push) Has been cancelled Details
Windows GitHub CI / shared (windows-2022, map[arch:win32 config:--strict-warnings no-fips]) (push) Has been cancelled Details
Windows GitHub CI / shared (windows-2022, map[arch:win64 config:enable-fips]) (push) Has been cancelled Details
Windows GitHub CI / shared (windows-2025, map[arch:win32 config:--strict-warnings no-fips]) (push) Has been cancelled Details
Windows GitHub CI / shared (windows-2025, map[arch:win64 config:enable-fips]) (push) Has been cancelled Details
Windows GitHub CI / plain (windows-2022) (push) Has been cancelled Details
Windows GitHub CI / plain (windows-2025) (push) Has been cancelled Details
Windows GitHub CI / minimal (windows-2022) (push) Has been cancelled Details
Windows GitHub CI / minimal (windows-2025) (push) Has been cancelled Details
quarckster is the owner of the /.github/workflows/ directory.

Reviewed-by: Richard Levitte <levitte@openssl.org>
Reviewed-by: Neil Horman <nhorman@openssl.org>
Reviewed-by: Tim Hudson <tjh@openssl.org>
Reviewed-by: Paul Dale <ppzgs1@gmail.com>
(Merged from https://github.com/openssl/openssl/pull/28060)

(cherry picked from commit b3187ab5a7)
2025-07-21 20:31:43 +02:00
Dmitry Misharov 2af2a4acd8 pin GitHub Actions revisions from untrusted vendors
Reviewed-by: Neil Horman <nhorman@openssl.org>
Reviewed-by: Viktor Dukhovni <viktor@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/27215)
2025-07-17 08:06:04 +02:00
Nicola Tuveri fc7a05443a Honor OSSL_PKEY_PARAM_EC_POINT_CONVERSION_FORMAT as set and default to UNCOMPRESSED
Originally the code to im/export the EC pubkey was meant to be consumed
only by the im/export functions when crossing the provider boundary.
Having our providers exporting to a COMPRESSED format octet string made
sense to avoid memory waste, as it wasn't exposed outside the provider
API, and providers had all tools available to convert across the three
formats.

Later on, with #13139 deprecating the `EC_KEY_*` functions, more state
was added among the params imported/exported on an EC provider-native
key (including `OSSL_PKEY_PARAM_EC_POINT_CONVERSION_FORMAT`, although it
did not affect the format used to export `OSSL_PKEY_PARAM_PUB_KEY`).

Finally, in #14800, `EVP_PKEY_todata()` was introduced and prominently
exposed directly to users outside the provider API, and the choice of
COMPRESSED over UNCOMPRESSED as the default became less sensible in
light of usability, given the latter is more often needed by
applications and protocols.

This commit fixes it, by using `EC_KEY_get_conv_form()` to get the
point format from the internal state (an `EC_KEY` under the hood) of the
provider-side object, and using it on
`EVP_PKEY_export()`/`EVP_PKEY_todata()` to format
`OSSL_PKEY_PARAM_PUB_KEY`.
The default for an `EC_KEY` was already UNCOMPRESSED, and it is altered
if the user sets `OSSL_PKEY_PARAM_EC_POINT_CONVERSION_FORMAT` via
`EVP_PKEY_fromdata()`, `EVP_PKEY_set_params()`, or one of the
more specialized methods.

For symmetry, this commit also alters `ec_pkey_export_to()` in
`crypto/ec/ec_ameth.c`, part of the `EVP_PKEY_ASN1_METHOD` for legacy EC
keys: it exclusively used COMPRESSED format, and now it honors the
conversion format specified in the EC_KEY object being exported to a
provider when this function is called.

Fixes #16595
2022-10-09 03:34:59 +03:00
Nicola Tuveri 9e437b20c3 drop! skip CLI round-trip tests in 15-test_ec_comp 2022-10-09 03:34:59 +03:00
Nicola Tuveri 41da0a6361 fixup! Known result tests for EC compression compatibility validation 2022-10-09 03:34:59 +03:00
Nicola Tuveri 09ec8d6491 fixup! Known result tests for EC compression compatibility validation
Fix whitespace
2022-10-09 02:04:42 +03:00
Nicola Tuveri a0aa8aeb88 fixup! Known result tests for EC compression compatibility validation 2022-10-09 02:04:36 +03:00
Nicola Tuveri aa2aa570c6 fixup! Known result tests for EC compression compatibility validation 2022-10-09 02:03:51 +03:00
Hugo Landau 18f3aae39b Adjustments to EC compression compatibility tests for 3.0
Drops SM2.
2022-10-09 00:38:15 +03:00
Hugo Landau d743489b80 Known result tests for EC compression compatibility validation 2022-10-09 00:38:15 +03:00
1145 changed files with 9789 additions and 32 deletions

1
.github/CODEOWNERS vendored Normal file
View File

@ -0,0 +1 @@
/.github/workflows/ @quarckster

View File

@ -114,7 +114,7 @@ jobs:
steps:
- uses: actions/checkout@v4
- name: config
uses: cross-platform-actions/action@v0.26.0
uses: cross-platform-actions/action@fe0167d8082ac584754ef3ffb567fded22642c7d #v0.27.0
with:
operating_system: freebsd
version: "13.4"
@ -123,21 +123,21 @@ jobs:
sudo pkg install -y gcc perl5
./config enable-fips enable-ec_nistp_64_gcc_128 enable-md2 enable-rc5 enable-ssl3 enable-ssl3-method enable-trace
- name: config dump
uses: cross-platform-actions/action@v0.26.0
uses: cross-platform-actions/action@fe0167d8082ac584754ef3ffb567fded22642c7d #v0.27.0
with:
operating_system: freebsd
version: "13.4"
shutdown_vm: false
run: ./configdata.pm --dump
- name: make
uses: cross-platform-actions/action@v0.26.0
uses: cross-platform-actions/action@fe0167d8082ac584754ef3ffb567fded22642c7d #v0.27.0
with:
operating_system: freebsd
version: "13.4"
shutdown_vm: false
run: make -j4
- name: make test
uses: cross-platform-actions/action@v0.26.0
uses: cross-platform-actions/action@fe0167d8082ac584754ef3ffb567fded22642c7d #v0.27.0
with:
operating_system: freebsd
version: "13.4"
@ -388,7 +388,7 @@ jobs:
sudo apt-get update
sudo apt-get -yq install bison gettext keyutils ldap-utils libldap2-dev libkeyutils-dev python3 python3-paste python3-pyrad slapd tcsh python3-virtualenv virtualenv python3-kdcproxy
- name: install cpanm and Test2::V0 for gost_engine testing
uses: perl-actions/install-with-cpanm@stable
uses: perl-actions/install-with-cpanm@10d60f00b4073f484fc29d45bfbe2f776397ab3d # v1.7
with:
install: Test2::V0
- name: setup hostname workaround
@ -422,7 +422,7 @@ jobs:
uses: actions/setup-python@v5.3.0
with:
python-version: ${{ matrix.PYTHON }}
- uses: dtolnay/rust-toolchain@master
- uses: dtolnay/rust-toolchain@fcf085fcb4b4b8f63f96906cd713eb52181b5ea4
with:
toolchain: ${{ matrix.RUST }}
- name: test external pyca

View File

@ -37,7 +37,7 @@ jobs:
- name: generate coverage info
run: lcov -d . -c -o ./lcov.info
- name: Coveralls upload
uses: coverallsapp/github-action@v2.3.2
uses: coverallsapp/github-action@648a8eb78e6d50909eff900e4ec85cab4524a45b #v2.3.6
with:
github-token: ${{ secrets.github_token }}
path-to-lcov: ./lcov.info

View File

@ -28,14 +28,14 @@ jobs:
runs-on: ${{ matrix.os }}
steps:
- uses: actions/checkout@v4
- uses: ilammy/msvc-dev-cmd@v1
- uses: ilammy/msvc-dev-cmd@0b201ec74fa43914dc39ae48a89fd1d8cb592756 #v1.13.0
with:
arch: ${{ matrix.platform.arch }}
- name: install nasm
run: |
choco install nasm ${{ matrix.platform.arch == 'win32' && '--x86' || '' }}
"C:\Program Files${{ matrix.platform.arch == 'win32' && ' (x86)' || '' }}\NASM" | Out-File -FilePath "$env:GITHUB_PATH" -Append
- uses: shogo82148/actions-setup-perl@v1
- uses: shogo82148/actions-setup-perl@49c14f24551d2de3bf56fb107a869c3760b1875e #v1.33.0
- name: prepare the build directory
run: mkdir _build
- name: config
@ -65,8 +65,8 @@ jobs:
runs-on: ${{ matrix.os }}
steps:
- uses: actions/checkout@v4
- uses: ilammy/msvc-dev-cmd@v1
- uses: shogo82148/actions-setup-perl@v1
- uses: ilammy/msvc-dev-cmd@0b201ec74fa43914dc39ae48a89fd1d8cb592756 #v1.13.0
- uses: shogo82148/actions-setup-perl@49c14f24551d2de3bf56fb107a869c3760b1875e #v1.33.0
- name: prepare the build directory
run: mkdir _build
- name: config
@ -89,8 +89,8 @@ jobs:
runs-on: ${{ matrix.os }}
steps:
- uses: actions/checkout@v4
- uses: ilammy/msvc-dev-cmd@v1
- uses: shogo82148/actions-setup-perl@v1
- uses: ilammy/msvc-dev-cmd@0b201ec74fa43914dc39ae48a89fd1d8cb592756 #v1.13.0
- uses: shogo82148/actions-setup-perl@49c14f24551d2de3bf56fb107a869c3760b1875e #v1.33.0
- name: prepare the build directory
run: mkdir _build
- name: config

View File

@ -243,9 +243,17 @@ int ecparam_main(int argc, char **argv)
goto end;
}
} else {
params_key = load_keyparams(infile, informat, 1, "EC", "EC parameters");
if (params_key == NULL || !EVP_PKEY_is_a(params_key, "EC"))
params_key = load_keyparams_suppress(infile, informat, 1, "EC",
"EC parameters", 1);
if (params_key == NULL)
params_key = load_keyparams_suppress(infile, informat, 1, "SM2",
"SM2 parameters", 1);
if (params_key == NULL) {
BIO_printf(bio_err, "Unable to load parameters from %s\n", infile);
goto end;
}
if (point_format
&& !EVP_PKEY_set_utf8_string_param(
params_key, OSSL_PKEY_PARAM_EC_POINT_CONVERSION_FORMAT,

View File

@ -217,6 +217,10 @@ static ECDSA_SIG *sm2_sig_gen(const EC_KEY *key, const BIGNUM *e)
BIGNUM *tmp = NULL;
OSSL_LIB_CTX *libctx = ossl_ec_key_get_libctx(key);
if (dA == NULL) {
ERR_raise(ERR_LIB_SM2, SM2_R_INVALID_PRIVATE_KEY);
goto done;
}
kG = EC_POINT_new(group);
ctx = BN_CTX_new_ex(libctx);
if (kG == NULL || ctx == NULL) {

View File

@ -410,12 +410,6 @@ OSSL_STORE_INFO *OSSL_STORE_load(OSSL_STORE_CTX *ctx)
if (ctx->loader != NULL)
OSSL_TRACE(STORE, "Loading next object\n");
if (ctx->cached_info != NULL
&& sk_OSSL_STORE_INFO_num(ctx->cached_info) == 0) {
sk_OSSL_STORE_INFO_free(ctx->cached_info);
ctx->cached_info = NULL;
}
if (ctx->cached_info != NULL) {
v = sk_OSSL_STORE_INFO_shift(ctx->cached_info);
} else {
@ -491,14 +485,23 @@ int OSSL_STORE_error(OSSL_STORE_CTX *ctx)
int OSSL_STORE_eof(OSSL_STORE_CTX *ctx)
{
int ret = 1;
int ret = 0;
if (ctx->fetched_loader != NULL)
ret = ctx->loader->p_eof(ctx->loader_ctx);
if (ctx->cached_info != NULL
&& sk_OSSL_STORE_INFO_num(ctx->cached_info) == 0) {
sk_OSSL_STORE_INFO_free(ctx->cached_info);
ctx->cached_info = NULL;
}
if (ctx->cached_info == NULL) {
ret = 1;
if (ctx->fetched_loader != NULL)
ret = ctx->loader->p_eof(ctx->loader_ctx);
#ifndef OPENSSL_NO_DEPRECATED_3_0
if (ctx->fetched_loader == NULL)
ret = ctx->loader->eof(ctx->loader_ctx);
if (ctx->fetched_loader == NULL)
ret = ctx->loader->eof(ctx->loader_ctx);
#endif
}
return ret != 0;
}

View File

@ -54,6 +54,8 @@ extern "C" {
# define PEM_STRING_ECPRIVATEKEY "EC PRIVATE KEY"
# define PEM_STRING_PARAMETERS "PARAMETERS"
# define PEM_STRING_CMS "CMS"
# define PEM_STRING_SM2PRIVATEKEY "SM2 PRIVATE KEY"
# define PEM_STRING_SM2PARAMETERS "SM2 PARAMETERS"
# define PEM_TYPE_ENCRYPTED 10
# define PEM_TYPE_MIC_ONLY 20

View File

@ -69,6 +69,7 @@ DECODER_w_structure("X448", der, SubjectPublicKeyInfo, x448, yes),
# ifndef OPENSSL_NO_SM2
DECODER_w_structure("SM2", der, PrivateKeyInfo, sm2, no),
DECODER_w_structure("SM2", der, SubjectPublicKeyInfo, sm2, no),
DECODER_w_structure("SM2", der, type_specific_no_pub, sm2, no),
# endif
#endif
DECODER_w_structure("RSA", der, PrivateKeyInfo, rsa, yes),

View File

@ -806,6 +806,7 @@ MAKE_DECODER("ED448", ed448, ecx, SubjectPublicKeyInfo);
# ifndef OPENSSL_NO_SM2
MAKE_DECODER("SM2", sm2, ec, PrivateKeyInfo);
MAKE_DECODER("SM2", sm2, ec, SubjectPublicKeyInfo);
MAKE_DECODER("SM2", sm2, sm2, type_specific_no_pub);
# endif
#endif
MAKE_DECODER("RSA", rsa, rsa, PrivateKeyInfo);

View File

@ -119,6 +119,8 @@ static int pem2der_decode(void *vctx, OSSL_CORE_BIO *cin, int selection,
{ PEM_STRING_DSAPARAMS, OSSL_OBJECT_PKEY, "DSA", "type-specific" },
{ PEM_STRING_ECPRIVATEKEY, OSSL_OBJECT_PKEY, "EC", "type-specific" },
{ PEM_STRING_ECPARAMETERS, OSSL_OBJECT_PKEY, "EC", "type-specific" },
{ PEM_STRING_SM2PRIVATEKEY, OSSL_OBJECT_PKEY, "SM2", "type-specific" },
{ PEM_STRING_SM2PARAMETERS, OSSL_OBJECT_PKEY, "SM2", "type-specific" },
{ PEM_STRING_RSA, OSSL_OBJECT_PKEY, "RSA", "type-specific" },
{ PEM_STRING_RSA_PUBLIC, OSSL_OBJECT_PKEY, "RSA", "type-specific" },

View File

@ -513,7 +513,8 @@ static int ec_to_text(BIO *out, const void *key, int selection)
else if ((selection & OSSL_KEYMGMT_SELECT_PUBLIC_KEY) != 0)
type_label = "Public-Key";
else if ((selection & OSSL_KEYMGMT_SELECT_DOMAIN_PARAMETERS) != 0)
type_label = "EC-Parameters";
if (EC_GROUP_get_curve_name(group) != NID_sm2)
type_label = "EC-Parameters";
if ((selection & OSSL_KEYMGMT_SELECT_PRIVATE_KEY) != 0) {
const BIGNUM *priv_key = EC_KEY_get0_private_key(ec);
@ -539,8 +540,9 @@ static int ec_to_text(BIO *out, const void *key, int selection)
goto err;
}
if (BIO_printf(out, "%s: (%d bit)\n", type_label,
EC_GROUP_order_bits(group)) <= 0)
if (type_label != NULL
&& BIO_printf(out, "%s: (%d bit)\n", type_label,
EC_GROUP_order_bits(group)) <= 0)
goto err;
if (priv != NULL
&& !print_labeled_buf(out, "priv:", priv, priv_len))

View File

@ -498,6 +498,7 @@ extern const OSSL_DISPATCH ossl_SubjectPublicKeyInfo_der_to_ed448_decoder_functi
#ifndef OPENSSL_NO_SM2
extern const OSSL_DISPATCH ossl_PrivateKeyInfo_der_to_sm2_decoder_functions[];
extern const OSSL_DISPATCH ossl_SubjectPublicKeyInfo_der_to_sm2_decoder_functions[];
extern const OSSL_DISPATCH ossl_type_specific_no_pub_der_to_sm2_decoder_functions[];
#endif
extern const OSSL_DISPATCH ossl_PrivateKeyInfo_der_to_rsa_decoder_functions[];

View File

@ -35,7 +35,7 @@ IF[{- !$disabled{tests} -}]
versions \
aborttest test_test pkcs12_format_test \
sanitytest rsa_complex exdatatest bntest \
ecstresstest gmdifftest pbelutest \
ecstresstest ec_comp_test gmdifftest pbelutest \
destest mdc2test sha_test \
exptest pbetest localetest evp_pkey_ctx_new_from_name\
evp_pkey_provided_test evp_test evp_extra_test evp_extra_test2 \
@ -106,6 +106,10 @@ IF[{- !$disabled{tests} -}]
INCLUDE[ectest]=../include ../apps/include
DEPEND[ectest]=../libcrypto.a libtestutil.a
SOURCE[ec_comp_test]=ec_comp_test.c
INCLUDE[ec_comp_test]=../include ../apps/include
DEPEND[ec_comp_test]=../libcrypto libtestutil.a
SOURCE[ecstresstest]=ecstresstest.c
INCLUDE[ecstresstest]=../include ../apps/include
DEPEND[ecstresstest]=../libcrypto libtestutil.a

518
test/ec_comp_test.c Normal file
View File

@ -0,0 +1,518 @@
#define OPENSSL_SUPPRESS_DEPRECATED
#include "internal/nelem.h"
#include <string.h>
#include <openssl/err.h>
#include <openssl/objects.h>
#include <openssl/bn.h>
#include <openssl/x509.h>
#include <openssl/pem.h>
#ifndef OPENSSL_NO_EC
# include <openssl/ec.h>
#endif
#include "testutil.h"
#ifndef OPENSSL_NO_EC
static size_t num_known_curves;
static EC_builtin_curve *known_curves;
static const char **known_curve_names;
static int nid_Oakley_EC2N_3;
static int nid_Oakley_EC2N_4;
static const char *data_path = ".";
static const char *const comp_formats[] = {
"uncompressed",
"compressed",
"hybrid",
"UNSPECIFIED",
};
static const int comp_formats_i[] = {
POINT_CONVERSION_UNCOMPRESSED,
POINT_CONVERSION_COMPRESSED,
POINT_CONVERSION_HYBRID,
-1,
};
static const char *const param_formats[] = {
"named_curve",
"explicit",
"UNSPECIFIED",
};
static const int param_formats_i[] = {
OPENSSL_EC_NAMED_CURVE,
0,
-1,
};
enum {
KEY_SRC_EXISTING,
KEY_SRC_GENERATE
};
enum {
OBJ_TYPE_PARAMS,
OBJ_TYPE_KEY
};
static int init_curves(void)
{
size_t i;
num_known_curves = EC_get_builtin_curves(NULL, 0);
known_curves = OPENSSL_malloc(num_known_curves * sizeof(*known_curves));
if (known_curves == NULL
|| EC_get_builtin_curves(known_curves, num_known_curves) == 0)
goto fail;
known_curve_names = OPENSSL_malloc(sizeof(char *) * num_known_curves);
if (known_curve_names == NULL)
goto fail;
for (i = 0; i < num_known_curves; ++i) {
known_curve_names[i] = OBJ_nid2sn(known_curves[i].nid);
if (!strcmp(known_curve_names[i], "Oakley-EC2N-3"))
nid_Oakley_EC2N_3 = known_curves[i].nid;
if (!strcmp(known_curve_names[i], "Oakley-EC2N-4"))
nid_Oakley_EC2N_4 = known_curves[i].nid;
}
return 1;
fail:
OPENSSL_free(known_curves);
known_curves = NULL;
OPENSSL_free(known_curve_names);
known_curve_names = NULL;
return 0;
}
static int should_skip(size_t curve_i, size_t param_format_i, size_t comp_format_i, int key_src)
{
/*
* If we are loading an existing key it does not make sense to test
* unspecified formats, since we know what format is used.
*/
if ( key_src == KEY_SRC_EXISTING
&& ( comp_formats_i[comp_format_i] < 0
|| param_formats_i[param_format_i] < 0))
return 1;
/* Skip experimental curves, which behave oddly */
if (known_curves[curve_i].nid == nid_Oakley_EC2N_3)
return 1;
if (known_curves[curve_i].nid == nid_Oakley_EC2N_4)
return 1;
return 0;
}
static EC_KEY *generate_new_key(size_t curve_i, size_t param_format_i,
size_t comp_format_i, int obj_type)
{
EC_KEY *k = NULL;
EC_GROUP *g = NULL;
int asn1_flag = param_formats_i[param_format_i];
int point_form = comp_formats_i[comp_format_i];
g = EC_GROUP_new_by_curve_name(known_curves[curve_i].nid);
if (g == NULL) {
printf("# cannot create EC_GROUP\n");
goto fail;
}
if (asn1_flag >= 0)
EC_GROUP_set_asn1_flag(g, asn1_flag);
if (point_form >= 0)
EC_GROUP_set_point_conversion_form(g, point_form);
k = EC_KEY_new();
if (k == NULL) {
printf("# cannot create EC_KEY\n");
goto fail;
}
if (EC_KEY_set_group(k, g) == 0) {
printf("# cannot set group\n");
goto fail;
}
EC_GROUP_free(g);
g = NULL;
if (EC_KEY_generate_key(k) == 0) {
printf("# cannot generate key\n");
goto fail;
}
return k;
fail:
EC_KEY_free(k);
EC_GROUP_free(g);
return NULL;
}
static EC_KEY *get_existing_key(size_t curve_i, size_t param_format_i,
size_t comp_format_i, int obj_type)
{
EC_KEY *k = NULL, *res = NULL;
EC_GROUP *g = NULL;
BIO *b = NULL;
char filename[256];
OPENSSL_assert(param_formats_i[param_format_i] >= 0);
OPENSSL_assert(comp_formats_i[comp_format_i] >= 0);
if (obj_type == OBJ_TYPE_PARAMS)
snprintf(filename, sizeof(filename), "%s/%s-%s.param",
data_path,
known_curve_names[curve_i],
param_formats[param_format_i]);
else
snprintf(filename, sizeof(filename), "%s/%s-%s-%s.priv",
data_path,
known_curve_names[curve_i],
param_formats[param_format_i],
comp_formats[comp_format_i]);
b = BIO_new_file(filename, "rb");
if (b == NULL) {
printf("# cannot create file BIO\n");
goto fail;
}
if (obj_type == OBJ_TYPE_PARAMS) {
if (PEM_read_bio_ECPKParameters(b, &g, NULL, NULL) == 0) {
printf("# cannot read params PEM\n");
goto fail;
}
k = EC_KEY_new();
if (k == NULL) {
printf("# cannot create EC_KEY\n");
goto fail;
}
if (EC_KEY_set_group(k, g) == 0) {
printf("# cannot set group\n");
goto fail;
}
EC_GROUP_free(g);
g = NULL;
} else {
if (PEM_read_bio_ECPrivateKey(b, &k, NULL, NULL) == 0) {
printf("# cannot read key PEM\n");
goto fail;
}
}
res = k;
k = NULL;
fail:
EC_GROUP_free(g);
EC_KEY_free(k);
BIO_free(b);
return res;
}
static int verify_expected(int expected_param_format, int expected_comp_format,
int actual_asn1_flag, int actual_point_form, int obj_type)
{
if (obj_type == OBJ_TYPE_KEY) {
/* Only makes sense to test comp format on key */
if (expected_comp_format >= 0) {
/*
* If a compression format was specified, it must be used; however
* when deserializing conversion to uncompressed always occurs in
* 1.1
*/
if (!TEST_int_eq(expected_comp_format, actual_point_form))
return 0;
} else {
/*
* If a compression format was not specified, uncompressed should be
* default
*/
if (!TEST_int_eq(POINT_CONVERSION_UNCOMPRESSED, actual_point_form))
return 0;
}
}
if (expected_param_format >= 0) {
/* If a parameter format was specified, it must be used */
if (!TEST_int_eq(expected_param_format, actual_asn1_flag))
return 0;
} else {
/* If a parameter format was not specified, expect named curve */
if (!TEST_int_eq(OPENSSL_EC_NAMED_CURVE, actual_asn1_flag))
return 0;
}
return 1;
}
static int test_reserialize(EC_KEY *k,
int param_format,
int comp_format,
int new_param_format,
int new_comp_format,
int key_src,
int obj_type)
{
int rv = 0, res_asn1_flag, res_point_form, buf_len;
unsigned char *buf = NULL, *bufi;
EC_KEY *k2 = NULL;
EC_GROUP *g = NULL;
const EC_GROUP *gref = NULL;
/*
* Duplicate k so our changing parameters below does not
* affect other tests
*/
k = EC_KEY_dup(k);
if (k == NULL) {
printf("# Cannot dup key\n");
goto fail;
}
if (new_param_format >= 0)
EC_KEY_set_asn1_flag(k, new_param_format);
else
new_param_format = param_format;
if (new_comp_format >= 0)
EC_KEY_set_conv_form(k, new_comp_format);
else if (key_src == KEY_SRC_GENERATE)
/*
* If we just generated our key we effectively already set the format,
* so we need to expect that rather than the default. Otherwise expect
* reversion to uncompressed.
*/
new_comp_format = comp_format;
else
new_comp_format = POINT_CONVERSION_UNCOMPRESSED;
if (obj_type == OBJ_TYPE_KEY) {
/* If we are checking a private key: */
if (!EC_KEY_check_key(k)) {
printf("# Key did not pass check\n");
goto fail;
}
buf_len = i2d_ECPrivateKey(k, &buf);
if (buf_len <= 0 || buf == NULL) {
printf("# Cannot serialize during key reserialization test\n");
printf("# pf=%d cf=%d npf=%d ncf=%d ks=%d\n", param_format, comp_format,
new_param_format, new_comp_format, key_src);
goto fail;
}
bufi = buf;
k2 = d2i_ECPrivateKey(NULL, (const unsigned char **)&bufi, buf_len);
if (k2 == NULL) {
printf("# Cannot deserialize during key reserialization test\n");
printf("# pf=%d cf=%d npf=%d ncf=%d ks=%d\n", param_format, comp_format,
new_param_format, new_comp_format, key_src);
goto fail;
}
/*
* When we put keys through serialization and then deserialization, they
* always become uncompressed. (The same is not true for parameters,
* however.)
*/
new_comp_format = POINT_CONVERSION_UNCOMPRESSED;
gref = EC_KEY_get0_group(k2);
} else {
buf_len = i2d_ECPKParameters(EC_KEY_get0_group(k), &buf);
if (buf_len <= 0 || buf == NULL) {
printf("# Cannot serialize during param reserialization test\n");
printf("# pf=%d cf=%d npf=%d ncf=%d ks=%d\n", param_format, comp_format,
new_param_format, new_comp_format, key_src);
goto fail;
}
bufi = buf;
gref = g = d2i_ECPKParameters(NULL, (const unsigned char **)&bufi, buf_len);
if (gref == NULL) {
printf("# Cannot deserialize during param reserialization test\n");
printf("# pf=%d cf=%d npf=%d ncf=%d ks=%d\n", param_format, comp_format,
new_param_format, new_comp_format, key_src);
goto fail;
}
}
res_asn1_flag = EC_GROUP_get_asn1_flag(gref);
res_point_form = EC_GROUP_get_point_conversion_form(gref);
if (!verify_expected(new_param_format, new_comp_format, res_asn1_flag, res_point_form, obj_type)) {
printf("# Expectation failed during reserialization test\n");
printf("# pf=%d cf=%d npf=%d ncf=%d ks=%d\n", param_format, comp_format,
new_param_format, new_comp_format, key_src);
printf("# res_asn1=%d res_point=%d\n", res_asn1_flag, res_point_form);
goto fail;
}
rv = 1;
fail:
EC_KEY_free(k2);
EC_KEY_free(k);
EC_GROUP_free(g);
OPENSSL_free(buf);
return rv;
}
static int comp_test_actual(size_t curve_i,
size_t param_format_i,
size_t comp_format_i,
int key_src /* KEY_SRC_{EXISTING,GENERATE} */,
int obj_type /* OBJ_TYPE_{PARAMS,KEY} */)
{
int rc = 0;
EC_KEY *k = NULL;
int expected_param_format, expected_comp_format;
int res_asn1_flag, res_point_form;
size_t ci, pi;
if (should_skip(curve_i, param_format_i, comp_format_i, key_src))
return 1;
/* Load or generate key. */
k = (key_src == KEY_SRC_EXISTING)
? get_existing_key(curve_i,
param_format_i,
comp_format_i,
obj_type)
: generate_new_key(curve_i,
param_format_i,
comp_format_i,
obj_type);
if (k == NULL)
goto fail;
/* Verify param/compression formats on loaded/generated key directly. */
res_asn1_flag = EC_GROUP_get_asn1_flag(EC_KEY_get0_group(k));
res_point_form = EC_GROUP_get_point_conversion_form(EC_KEY_get0_group(k));
expected_param_format = param_formats_i[param_format_i];
expected_comp_format = comp_formats_i[comp_format_i];
if (key_src == KEY_SRC_EXISTING)
expected_comp_format = POINT_CONVERSION_UNCOMPRESSED;
if (!verify_expected(expected_param_format, expected_comp_format,
res_asn1_flag, res_point_form, obj_type)) {
printf("# Expectation failed during initial test\n");
printf("# pfi=%s cfi=%s\n",
param_formats[param_format_i], comp_formats[comp_format_i]);
printf("# epf=%d ecf=%d res_asn1=%d res_point=%d o=%d\n",
expected_param_format, expected_comp_format,
res_asn1_flag, res_point_form, obj_type);
goto fail;
}
/*
* Test parameter/compression behaviour when round tripping through
* serialization and deserialization.
*/
/* For each supported compression format (and unspecified) */
for (ci = 0; ci < OSSL_NELEM(comp_formats_i); ++ci)
/* For each of (named parameters, explicit parameters, unspecified) */
for (pi = 0; pi < OSSL_NELEM(param_formats_i); ++pi)
if (!test_reserialize(k, param_formats_i[param_format_i], comp_formats_i[comp_format_i],
param_formats_i[pi], comp_formats_i[ci], key_src, obj_type))
goto fail;
rc = 1;
fail:
EC_KEY_free(k);
return rc;
}
static int from_deserialized_test(int curve_i, int obj_type)
{
size_t comp_format_i, param_format_i;
/* For each of (named parameters, explicit parameters, unspecified) */
for (param_format_i = 0; param_format_i < 3; ++param_format_i)
/* For each supported compression format (and unspecified) */
for (comp_format_i = 0;
comp_format_i < OSSL_NELEM(comp_formats);
++comp_format_i)
if (comp_test_actual(curve_i, param_format_i,
comp_format_i, KEY_SRC_EXISTING, obj_type) == 0)
return 0;
return 1;
}
static int from_generated_test(int curve_i, int obj_type)
{
size_t comp_format_i, param_format_i;
/* For each of (named parameters, explicit parameters, unspecified) */
for (param_format_i = 0; param_format_i < 3; ++param_format_i)
/* For each supported compression format (and unspecified) */
for (comp_format_i = 0;
comp_format_i < OSSL_NELEM(comp_formats);
++comp_format_i)
if (comp_test_actual(curve_i, param_format_i,
comp_format_i, KEY_SRC_GENERATE, obj_type) == 0)
return 0;
return 1;
}
static int from_deserialized_params_test(int curve_i)
{
return from_deserialized_test(curve_i, OBJ_TYPE_PARAMS);
}
static int from_deserialized_key_test(int curve_i)
{
return from_deserialized_test(curve_i, OBJ_TYPE_KEY);
}
static int from_generated_params_test(int curve_i)
{
return from_generated_test(curve_i, OBJ_TYPE_PARAMS);
}
static int from_generated_key_test(int curve_i)
{
return from_generated_test(curve_i, OBJ_TYPE_KEY);
}
#endif
int setup_tests(void)
{
#ifndef OPENSSL_NO_EC
if (test_get_argument_count() > 0) {
test_skip_common_options();
data_path = test_get_argument(0);
}
if (init_curves() == 0) {
printf("# Failed to initialize curves\n");
return 0;
}
ADD_ALL_TESTS(from_deserialized_params_test, num_known_curves);
ADD_ALL_TESTS(from_deserialized_key_test, num_known_curves);
ADD_ALL_TESTS(from_generated_params_test, num_known_curves);
ADD_ALL_TESTS(from_generated_key_test, num_known_curves);
#endif
return 1;
}
void cleanup_tests(void)
{
#ifndef OPENSSL_NO_EC
OPENSSL_free(known_curves);
known_curves = NULL;
OPENSSL_free(known_curve_names);
known_curve_names = NULL;
#endif
}

View File

@ -18,7 +18,7 @@ setup("test_ec");
plan skip_all => 'EC is not supported in this build' if disabled('ec');
plan tests => 15;
plan tests => 16;
my $no_fips = disabled('fips') || ($ENV{NO_FIPS} // 0);
@ -33,6 +33,16 @@ subtest 'EC conversions -- private key' => sub {
tconversion( -type => 'ec', -prefix => 'ec-priv',
-in => srctop_file("test","testec-p256.pem") );
};
SKIP: {
skip "SM2 is not supported by this OpenSSL build", 1
if disabled("sm2");
subtest 'EC conversions -- private key' => sub {
tconversion( -type => 'ec', -prefix => 'sm2-priv',
-in => srctop_file("test","testec-sm2.pem") );
};
}
subtest 'EC conversions -- private key PKCS#8' => sub {
tconversion( -type => 'ec', -prefix => 'ec-pkcs8',
-in => srctop_file("test","testec-p256.pem"),

View File

@ -0,0 +1,127 @@
#! /usr/bin/env perl
# Copyright 2015-2022 The OpenSSL Project Authors. All Rights Reserved.
#
# Licensed under the OpenSSL license (the "License"). You may not use
# this file except in compliance with the License. You can obtain a copy
# in the file LICENSE in the source distribution or at
# https://www.openssl.org/source/license.html
use strict;
use warnings;
use File::Spec;
use OpenSSL::Test qw/:DEFAULT data_dir/;
use OpenSSL::Test::Utils;
setup("test_ec_comp");
# Only need to test a few curves as behaviour should be the same.
# Testing all the curves would take excessive time.
my @curvesdata = run(app(["openssl", "ecparam", "-list_curves"]), capture => 1);
my @curves;
foreach (@curvesdata) {
my @parts = split(/:/, $_, 2);
my $p = $parts[0];
if ($p =~ /^\t/) { next; }
$p =~ s/\s+//g;
if (!($p =~ /(secp256k1|prime256v1|sect571r1|brainpoolP384r1)/)) { next; }
push @curves, $p;
}
plan tests => 1 + scalar @curves;
ok(run(test(["ec_comp_test", data_dir("")])), "running ec_comp_test");
my @param_encs = qw/named_curve explicit/;
my @param_encs_e = qw/named_curve explicit unspecified/;
my @conv_forms = qw/uncompressed compressed hybrid/;
my @conv_forms_e = qw/uncompressed compressed hybrid unspecified/;
my $data_path = data_dir("");
sub classify_key {
my $fn = shift;
my @text = run(app(["openssl", "ec", "-in", $fn, "-text"]),
capture => 1);
my $text = join "", @text;
my @asn1 = run(app(["openssl", "asn1parse", "-dump", "-in", $fn]),
capture => 1);
my $asn1 = join "", @asn1;
$asn1 =~ s/.*BIT STRING//s;
my $res_comp_type;
if (grep /\s0000 - 00 0[67]/, $asn1) {
$res_comp_type = "hybrid";
} elsif (grep /\s0000 - 00 0[45]/, $asn1) {
$res_comp_type = "uncompressed";
} elsif (grep /\s0000 - 00 0[23]/, $asn1) {
$res_comp_type = "compressed";
} else {
die "unknown compression type";
}
my $res_param_enc;
if (grep /\sASN1 OID:/, $text) {
$res_param_enc = "named_curve";
} elsif (grep /\sField Type:/, $text) {
$res_param_enc = "explicit";
} else {
die "unknown param form";
}
return "$res_comp_type/$res_param_enc";
}
SKIP: {
skip "FIXME: Intentionally skipping CLI round-trip tests", scalar @curves;
skip "EC is not supported by this OpenSSL build", scalar @curves if disabled("ec");
foreach my $curve (@curves) {
subtest "=== openssl ec CLI round-trip for curve $curve" => sub {
foreach my $param_enc (@param_encs) {
foreach my $conv_form (@conv_forms) {
# Run openssl ecparam -genkey using input parameters.
run(app(["openssl", "ecparam", "-check",
"-in", "$data_path/$curve-$param_enc.param",
"-conv_form", $conv_form, "-param_enc", $param_enc,
"-genkey", "-noout", "-out", "key.tmp"]));
my $expect = "$conv_form/$param_enc";
my $result = classify_key("key.tmp");
ok($expect eq $result, "(1): got '$result' expected '$expect'");
foreach my $param_enc2 (@param_encs_e) {
foreach my $conv_form2 (@conv_forms_e) {
# Now try round-tripping a key through openssl ec,
# potentially specifying new compression/param formats.
my @args = qw(openssl ec -in key.tmp -out key2.tmp);
if ($conv_form2 ne "unspecified") {
push(@args, "-conv_form");
push(@args, $conv_form2);
}
if ($param_enc2 ne "unspecified") {
push(@args, "-param_enc");
push(@args, $param_enc2);
}
run(app([@args]));
my $expect_conv = $conv_form2;
if ($expect_conv eq "unspecified") {
$expect_conv = $conv_form;
}
my $expect_param = $param_enc2;
if ($expect_param eq "unspecified") {
$expect_param = $param_enc;
}
my $expect2 = "$expect_conv/$expect_param";
my $result2 = classify_key("key2.tmp");
ok($expect2 eq $result2,
"(2): expected '$expect2' got '$result2'");
}
}
}
}
}
}
}

View File

@ -0,0 +1,8 @@
-----BEGIN EC PRIVATE KEY-----
MIIBEQIBAQQgYqt6c/Mn0qpPl4T53E7urhE6toTRrfRHLZ/6D/CmVtuggcMwgcAC
AQEwLAYHKoZIzj0BAQIhAP////7/////////////////////AAAAAP//////////
MEQEIP////7/////////////////////AAAAAP/////////8BCAo6fqenZ9eNE1a
nkvPZQmn85eJ9RWrj5LdvL1BTZQOkwQhAjLEriwfGYEZX5kERmo5yZSP4wu/8mYL
4XFaRYkzTHTHAiEA/////v///////////////3ID32shxgUrU7v0CTnVQSMCAQGh
JAMiAAOoXb6rK9JT+hDbIv2Q5p1yko5O4p49FzFb1NvCV4Zk8A==
-----END EC PRIVATE KEY-----

View File

@ -0,0 +1,8 @@
-----BEGIN PUBLIC KEY-----
MIHzMIHMBgcqhkjOPQIBMIHAAgEBMCwGByqGSM49AQECIQD////+////////////
/////////wAAAAD//////////zBEBCD////+/////////////////////wAAAAD/
/////////AQgKOn6np2fXjRNWp5Lz2UJp/OXifUVq4+S3by9QU2UDpMEIQIyxK4s
HxmBGV+ZBEZqOcmUj+MLv/JmC+FxWkWJM0x0xwIhAP////7///////////////9y
A99rIcYFK1O79Ak51UEjAgEBAyIAA6hdvqsr0lP6ENsi/ZDmnXKSjk7inj0XMVvU
28JXhmTw
-----END PUBLIC KEY-----

View File

@ -0,0 +1,10 @@
-----BEGIN EC PRIVATE KEY-----
MIIBUQIBAQQgYqt6c/Mn0qpPl4T53E7urhE6toTRrfRHLZ/6D/CmVtuggeMwgeAC
AQEwLAYHKoZIzj0BAQIhAP////7/////////////////////AAAAAP//////////
MEQEIP////7/////////////////////AAAAAP/////////8BCAo6fqenZ9eNE1a
nkvPZQmn85eJ9RWrj5LdvL1BTZQOkwRBBjLEriwfGYEZX5kERmo5yZSP4wu/8mYL
4XFaRYkzTHTHvDc2ovT2d5xZvc7ja2khU9Cph3zGKkdAAt8y5SE58KACIQD////+
////////////////cgPfayHGBStTu/QJOdVBIwIBAaFEA0IAB6hdvqsr0lP6ENsi
/ZDmnXKSjk7inj0XMVvU28JXhmTwJBztl/IOFu5Yc0YItOCKak56FTjFC0Z9Klp1
zzhGNNc=
-----END EC PRIVATE KEY-----

View File

@ -0,0 +1,9 @@
-----BEGIN PUBLIC KEY-----
MIIBMzCB7AYHKoZIzj0CATCB4AIBATAsBgcqhkjOPQEBAiEA/////v//////////
//////////8AAAAA//////////8wRAQg/////v////////////////////8AAAAA
//////////wEICjp+p6dn140TVqeS89lCafzl4n1FauPkt28vUFNlA6TBEEGMsSu
LB8ZgRlfmQRGajnJlI/jC7/yZgvhcVpFiTNMdMe8Nzai9PZ3nFm9zuNraSFT0KmH
fMYqR0AC3zLlITnwoAIhAP////7///////////////9yA99rIcYFK1O79Ak51UEj
AgEBA0IAB6hdvqsr0lP6ENsi/ZDmnXKSjk7inj0XMVvU28JXhmTwJBztl/IOFu5Y
c0YItOCKak56FTjFC0Z9Klp1zzhGNNc=
-----END PUBLIC KEY-----

View File

@ -0,0 +1,10 @@
-----BEGIN EC PRIVATE KEY-----
MIIBUQIBAQQgYqt6c/Mn0qpPl4T53E7urhE6toTRrfRHLZ/6D/CmVtuggeMwgeAC
AQEwLAYHKoZIzj0BAQIhAP////7/////////////////////AAAAAP//////////
MEQEIP////7/////////////////////AAAAAP/////////8BCAo6fqenZ9eNE1a
nkvPZQmn85eJ9RWrj5LdvL1BTZQOkwRBBDLEriwfGYEZX5kERmo5yZSP4wu/8mYL
4XFaRYkzTHTHvDc2ovT2d5xZvc7ja2khU9Cph3zGKkdAAt8y5SE58KACIQD////+
////////////////cgPfayHGBStTu/QJOdVBIwIBAaFEA0IABKhdvqsr0lP6ENsi
/ZDmnXKSjk7inj0XMVvU28JXhmTwJBztl/IOFu5Yc0YItOCKak56FTjFC0Z9Klp1
zzhGNNc=
-----END EC PRIVATE KEY-----

View File

@ -0,0 +1,9 @@
-----BEGIN PUBLIC KEY-----
MIIBMzCB7AYHKoZIzj0CATCB4AIBATAsBgcqhkjOPQEBAiEA/////v//////////
//////////8AAAAA//////////8wRAQg/////v////////////////////8AAAAA
//////////wEICjp+p6dn140TVqeS89lCafzl4n1FauPkt28vUFNlA6TBEEEMsSu
LB8ZgRlfmQRGajnJlI/jC7/yZgvhcVpFiTNMdMe8Nzai9PZ3nFm9zuNraSFT0KmH
fMYqR0AC3zLlITnwoAIhAP////7///////////////9yA99rIcYFK1O79Ak51UEj
AgEBA0IABKhdvqsr0lP6ENsi/ZDmnXKSjk7inj0XMVvU28JXhmTwJBztl/IOFu5Y
c0YItOCKak56FTjFC0Z9Klp1zzhGNNc=
-----END PUBLIC KEY-----

View File

@ -0,0 +1,31 @@
Field Type: prime-field
Prime:
00:ff:ff:ff:fe:ff:ff:ff:ff:ff:ff:ff:ff:ff:ff:
ff:ff:ff:ff:ff:ff:00:00:00:00:ff:ff:ff:ff:ff:
ff:ff:ff
A:
00:ff:ff:ff:fe:ff:ff:ff:ff:ff:ff:ff:ff:ff:ff:
ff:ff:ff:ff:ff:ff:00:00:00:00:ff:ff:ff:ff:ff:
ff:ff:fc
B:
28:e9:fa:9e:9d:9f:5e:34:4d:5a:9e:4b:cf:65:09:
a7:f3:97:89:f5:15:ab:8f:92:dd:bc:bd:41:4d:94:
0e:93
Generator (uncompressed):
04:32:c4:ae:2c:1f:19:81:19:5f:99:04:46:6a:39:
c9:94:8f:e3:0b:bf:f2:66:0b:e1:71:5a:45:89:33:
4c:74:c7:bc:37:36:a2:f4:f6:77:9c:59:bd:ce:e3:
6b:69:21:53:d0:a9:87:7c:c6:2a:47:40:02:df:32:
e5:21:39:f0:a0
Order:
00:ff:ff:ff:fe:ff:ff:ff:ff:ff:ff:ff:ff:ff:ff:
ff:ff:72:03:df:6b:21:c6:05:2b:53:bb:f4:09:39:
d5:41:23
Cofactor: 1 (0x1)
-----BEGIN EC PARAMETERS-----
MIHgAgEBMCwGByqGSM49AQECIQD////+/////////////////////wAAAAD/////
/////zBEBCD////+/////////////////////wAAAAD//////////AQgKOn6np2f
XjRNWp5Lz2UJp/OXifUVq4+S3by9QU2UDpMEQQQyxK4sHxmBGV+ZBEZqOcmUj+ML
v/JmC+FxWkWJM0x0x7w3NqL09necWb3O42tpIVPQqYd8xipHQALfMuUhOfCgAiEA
/////v///////////////3ID32shxgUrU7v0CTnVQSMCAQE=
-----END EC PARAMETERS-----

View File

@ -0,0 +1,4 @@
-----BEGIN EC PRIVATE KEY-----
MFcCAQEEIOHT4WKsT5RHdrK+b4yuT7Q2X5R1O4DhUO1F4xx1oHhCoAoGCCqBHM9V
AYItoSQDIgACjCCvG6UbzRDi1ZVhciRNLPy9wWuB6aqYLFltaVbs6w8=
-----END EC PRIVATE KEY-----

View File

@ -0,0 +1,4 @@
-----BEGIN PUBLIC KEY-----
MDkwEwYHKoZIzj0CAQYIKoEcz1UBgi0DIgACjCCvG6UbzRDi1ZVhciRNLPy9wWuB
6aqYLFltaVbs6w8=
-----END PUBLIC KEY-----

View File

@ -0,0 +1,5 @@
-----BEGIN EC PRIVATE KEY-----
MHcCAQEEIOHT4WKsT5RHdrK+b4yuT7Q2X5R1O4DhUO1F4xx1oHhCoAoGCCqBHM9V
AYItoUQDQgAGjCCvG6UbzRDi1ZVhciRNLPy9wWuB6aqYLFltaVbs6w81taDCgTRk
gAnYngNOh0OyMY36ncMD7o3moeDZMA3nMg==
-----END EC PRIVATE KEY-----

View File

@ -0,0 +1,4 @@
-----BEGIN PUBLIC KEY-----
MFkwEwYHKoZIzj0CAQYIKoEcz1UBgi0DQgAGjCCvG6UbzRDi1ZVhciRNLPy9wWuB
6aqYLFltaVbs6w81taDCgTRkgAnYngNOh0OyMY36ncMD7o3moeDZMA3nMg==
-----END PUBLIC KEY-----

View File

@ -0,0 +1,5 @@
-----BEGIN EC PRIVATE KEY-----
MHcCAQEEIOHT4WKsT5RHdrK+b4yuT7Q2X5R1O4DhUO1F4xx1oHhCoAoGCCqBHM9V
AYItoUQDQgAEjCCvG6UbzRDi1ZVhciRNLPy9wWuB6aqYLFltaVbs6w81taDCgTRk
gAnYngNOh0OyMY36ncMD7o3moeDZMA3nMg==
-----END EC PRIVATE KEY-----

View File

@ -0,0 +1,4 @@
-----BEGIN PUBLIC KEY-----
MFkwEwYHKoZIzj0CAQYIKoEcz1UBgi0DQgAEjCCvG6UbzRDi1ZVhciRNLPy9wWuB
6aqYLFltaVbs6w81taDCgTRkgAnYngNOh0OyMY36ncMD7o3moeDZMA3nMg==
-----END PUBLIC KEY-----

View File

@ -0,0 +1,4 @@
ASN1 OID: SM2
-----BEGIN EC PARAMETERS-----
BggqgRzPVQGCLQ==
-----END EC PARAMETERS-----

View File

@ -0,0 +1,6 @@
-----BEGIN EC PRIVATE KEY-----
MIG9AgEBBBQjBOmq4WBeljOisNk/ALupFv1E16CBhzCBhAIBATAgBgcqhkjOPQEB
AhUA6V5KX3NwWdxg38etlbPYE5UVYg8wLAQUNA574qKA63TivmG62nRdl+j3wwAE
FB5YmoWVQjQSE0+qLb3slcjYZ15YBBUDvtWvFuo/ak9ik4xGMeta972828MCFQDp
Xkpfc3BZ3GDfWZHUUClAnmD8CQIBAaEYAxYAA6powVcVfjw2cxUcI+ANEdW34OZU
-----END EC PRIVATE KEY-----

View File

@ -0,0 +1,6 @@
-----BEGIN PUBLIC KEY-----
MIGrMIGQBgcqhkjOPQIBMIGEAgEBMCAGByqGSM49AQECFQDpXkpfc3BZ3GDfx62V
s9gTlRViDzAsBBQ0DnviooDrdOK+YbradF2X6PfDAAQUHliahZVCNBITT6otveyV
yNhnXlgEFQO+1a8W6j9qT2KTjEYx61r3vbzbwwIVAOleSl9zcFncYN9ZkdRQKUCe
YPwJAgEBAxYAA6powVcVfjw2cxUcI+ANEdW34OZU
-----END PUBLIC KEY-----

View File

@ -0,0 +1,7 @@
-----BEGIN EC PRIVATE KEY-----
MIHlAgEBBBQjBOmq4WBeljOisNk/ALupFv1E16CBmzCBmAIBATAgBgcqhkjOPQEB
AhUA6V5KX3NwWdxg38etlbPYE5UVYg8wLAQUNA574qKA63TivmG62nRdl+j3wwAE
FB5YmoWVQjQSE0+qLb3slcjYZ15YBCkHvtWvFuo/ak9ik4xGMeta972828MWZ8tH
ehqOwzj5R0FmnJdjFtpjIQIVAOleSl9zcFncYN9ZkdRQKUCeYPwJAgEBoSwDKgAH
qmjBVxV+PDZzFRwj4A0R1bfg5lRonKRPNAoa9nEtpL7LhB1so2K5iw==
-----END EC PRIVATE KEY-----

View File

@ -0,0 +1,7 @@
-----BEGIN PUBLIC KEY-----
MIHTMIGkBgcqhkjOPQIBMIGYAgEBMCAGByqGSM49AQECFQDpXkpfc3BZ3GDfx62V
s9gTlRViDzAsBBQ0DnviooDrdOK+YbradF2X6PfDAAQUHliahZVCNBITT6otveyV
yNhnXlgEKQe+1a8W6j9qT2KTjEYx61r3vbzbwxZny0d6Go7DOPlHQWacl2MW2mMh
AhUA6V5KX3NwWdxg31mR1FApQJ5g/AkCAQEDKgAHqmjBVxV+PDZzFRwj4A0R1bfg
5lRonKRPNAoa9nEtpL7LhB1so2K5iw==
-----END PUBLIC KEY-----

View File

@ -0,0 +1,7 @@
-----BEGIN EC PRIVATE KEY-----
MIHlAgEBBBQjBOmq4WBeljOisNk/ALupFv1E16CBmzCBmAIBATAgBgcqhkjOPQEB
AhUA6V5KX3NwWdxg38etlbPYE5UVYg8wLAQUNA574qKA63TivmG62nRdl+j3wwAE
FB5YmoWVQjQSE0+qLb3slcjYZ15YBCkEvtWvFuo/ak9ik4xGMeta972828MWZ8tH
ehqOwzj5R0FmnJdjFtpjIQIVAOleSl9zcFncYN9ZkdRQKUCeYPwJAgEBoSwDKgAE
qmjBVxV+PDZzFRwj4A0R1bfg5lRonKRPNAoa9nEtpL7LhB1so2K5iw==
-----END EC PRIVATE KEY-----

View File

@ -0,0 +1,7 @@
-----BEGIN PUBLIC KEY-----
MIHTMIGkBgcqhkjOPQIBMIGYAgEBMCAGByqGSM49AQECFQDpXkpfc3BZ3GDfx62V
s9gTlRViDzAsBBQ0DnviooDrdOK+YbradF2X6PfDAAQUHliahZVCNBITT6otveyV
yNhnXlgEKQS+1a8W6j9qT2KTjEYx61r3vbzbwxZny0d6Go7DOPlHQWacl2MW2mMh
AhUA6V5KX3NwWdxg31mR1FApQJ5g/AkCAQEDKgAEqmjBVxV+PDZzFRwj4A0R1bfg
5lRonKRPNAoa9nEtpL7LhB1so2K5iw==
-----END PUBLIC KEY-----

View File

@ -0,0 +1,24 @@
Field Type: prime-field
Prime:
00:e9:5e:4a:5f:73:70:59:dc:60:df:c7:ad:95:b3:
d8:13:95:15:62:0f
A:
34:0e:7b:e2:a2:80:eb:74:e2:be:61:ba:da:74:5d:
97:e8:f7:c3:00
B:
1e:58:9a:85:95:42:34:12:13:4f:aa:2d:bd:ec:95:
c8:d8:67:5e:58
Generator (uncompressed):
04:be:d5:af:16:ea:3f:6a:4f:62:93:8c:46:31:eb:
5a:f7:bd:bc:db:c3:16:67:cb:47:7a:1a:8e:c3:38:
f9:47:41:66:9c:97:63:16:da:63:21
Order:
00:e9:5e:4a:5f:73:70:59:dc:60:df:59:91:d4:50:
29:40:9e:60:fc:09
Cofactor: 1 (0x1)
-----BEGIN EC PARAMETERS-----
MIGYAgEBMCAGByqGSM49AQECFQDpXkpfc3BZ3GDfx62Vs9gTlRViDzAsBBQ0Dnvi
ooDrdOK+YbradF2X6PfDAAQUHliahZVCNBITT6otveyVyNhnXlgEKQS+1a8W6j9q
T2KTjEYx61r3vbzbwxZny0d6Go7DOPlHQWacl2MW2mMhAhUA6V5KX3NwWdxg31mR
1FApQJ5g/AkCAQE=
-----END EC PARAMETERS-----

View File

@ -0,0 +1,4 @@
-----BEGIN EC PRIVATE KEY-----
MEACAQEEFDT+gOUYUh+GKCVdkZ+LXnzf11SloAsGCSskAwMCCAEBAaEYAxYAA3Z8
pjnr/9jkTGSfx6sD/HRU+eMF
-----END EC PRIVATE KEY-----

View File

@ -0,0 +1,3 @@
-----BEGIN PUBLIC KEY-----
MC4wFAYHKoZIzj0CAQYJKyQDAwIIAQEBAxYAA3Z8pjnr/9jkTGSfx6sD/HRU+eMF
-----END PUBLIC KEY-----

View File

@ -0,0 +1,4 @@
-----BEGIN EC PRIVATE KEY-----
MFQCAQEEFDT+gOUYUh+GKCVdkZ+LXnzf11SloAsGCSskAwMCCAEBAaEsAyoAB3Z8
pjnr/9jkTGSfx6sD/HRU+eMFoOXUU21MYAFyilInHdjgRYnHGz8=
-----END EC PRIVATE KEY-----

View File

@ -0,0 +1,4 @@
-----BEGIN PUBLIC KEY-----
MEIwFAYHKoZIzj0CAQYJKyQDAwIIAQEBAyoAB3Z8pjnr/9jkTGSfx6sD/HRU+eMF
oOXUU21MYAFyilInHdjgRYnHGz8=
-----END PUBLIC KEY-----

View File

@ -0,0 +1,4 @@
-----BEGIN EC PRIVATE KEY-----
MFQCAQEEFDT+gOUYUh+GKCVdkZ+LXnzf11SloAsGCSskAwMCCAEBAaEsAyoABHZ8
pjnr/9jkTGSfx6sD/HRU+eMFoOXUU21MYAFyilInHdjgRYnHGz8=
-----END EC PRIVATE KEY-----

View File

@ -0,0 +1,4 @@
-----BEGIN PUBLIC KEY-----
MEIwFAYHKoZIzj0CAQYJKyQDAwIIAQEBAyoABHZ8pjnr/9jkTGSfx6sD/HRU+eMF
oOXUU21MYAFyilInHdjgRYnHGz8=
-----END PUBLIC KEY-----

View File

@ -0,0 +1,4 @@
ASN1 OID: brainpoolP160r1
-----BEGIN EC PARAMETERS-----
BgkrJAMDAggBAQE=
-----END EC PARAMETERS-----

View File

@ -0,0 +1,6 @@
-----BEGIN EC PRIVATE KEY-----
MIG9AgEBBBRFNof2IHDCVnAubnHCwLw/rc8fZaCBhzCBhAIBATAgBgcqhkjOPQEB
AhUA6V5KX3NwWdxg38etlbPYE5UVYg8wLAQU6V5KX3NwWdxg38etlbPYE5UVYgwE
FHpVa22uU1t7Ue0sTX2qegtcVfOABBUDsZmxO5s078E5fmS66wWswmX/I3gCFQDp
Xkpfc3BZ3GDfWZHUUClAnmD8CQIBAaEYAxYAA55YcvK3z/xkFRe+XCAB5KIy3wZh
-----END EC PRIVATE KEY-----

View File

@ -0,0 +1,6 @@
-----BEGIN PUBLIC KEY-----
MIGrMIGQBgcqhkjOPQIBMIGEAgEBMCAGByqGSM49AQECFQDpXkpfc3BZ3GDfx62V
s9gTlRViDzAsBBTpXkpfc3BZ3GDfx62Vs9gTlRViDAQUelVrba5TW3tR7SxNfap6
C1xV84AEFQOxmbE7mzTvwTl+ZLrrBazCZf8jeAIVAOleSl9zcFncYN9ZkdRQKUCe
YPwJAgEBAxYAA55YcvK3z/xkFRe+XCAB5KIy3wZh
-----END PUBLIC KEY-----

View File

@ -0,0 +1,7 @@
-----BEGIN EC PRIVATE KEY-----
MIHlAgEBBBRFNof2IHDCVnAubnHCwLw/rc8fZaCBmzCBmAIBATAgBgcqhkjOPQEB
AhUA6V5KX3NwWdxg38etlbPYE5UVYg8wLAQU6V5KX3NwWdxg38etlbPYE5UVYgwE
FHpVa22uU1t7Ue0sTX2qegtcVfOABCkHsZmxO5s078E5fmS66wWswmX/I3it1nGL
fHwZYfCZG4QkQ3chUsngrQIVAOleSl9zcFncYN9ZkdRQKUCeYPwJAgEBoSwDKgAH
nlhy8rfP/GQVF75cIAHkojLfBmGrBgXR3ts6e3AmV5k86uXN/c8zXQ==
-----END EC PRIVATE KEY-----

View File

@ -0,0 +1,7 @@
-----BEGIN PUBLIC KEY-----
MIHTMIGkBgcqhkjOPQIBMIGYAgEBMCAGByqGSM49AQECFQDpXkpfc3BZ3GDfx62V
s9gTlRViDzAsBBTpXkpfc3BZ3GDfx62Vs9gTlRViDAQUelVrba5TW3tR7SxNfap6
C1xV84AEKQexmbE7mzTvwTl+ZLrrBazCZf8jeK3WcYt8fBlh8JkbhCRDdyFSyeCt
AhUA6V5KX3NwWdxg31mR1FApQJ5g/AkCAQEDKgAHnlhy8rfP/GQVF75cIAHkojLf
BmGrBgXR3ts6e3AmV5k86uXN/c8zXQ==
-----END PUBLIC KEY-----

View File

@ -0,0 +1,7 @@
-----BEGIN EC PRIVATE KEY-----
MIHlAgEBBBRFNof2IHDCVnAubnHCwLw/rc8fZaCBmzCBmAIBATAgBgcqhkjOPQEB
AhUA6V5KX3NwWdxg38etlbPYE5UVYg8wLAQU6V5KX3NwWdxg38etlbPYE5UVYgwE
FHpVa22uU1t7Ue0sTX2qegtcVfOABCkEsZmxO5s078E5fmS66wWswmX/I3it1nGL
fHwZYfCZG4QkQ3chUsngrQIVAOleSl9zcFncYN9ZkdRQKUCeYPwJAgEBoSwDKgAE
nlhy8rfP/GQVF75cIAHkojLfBmGrBgXR3ts6e3AmV5k86uXN/c8zXQ==
-----END EC PRIVATE KEY-----

View File

@ -0,0 +1,7 @@
-----BEGIN PUBLIC KEY-----
MIHTMIGkBgcqhkjOPQIBMIGYAgEBMCAGByqGSM49AQECFQDpXkpfc3BZ3GDfx62V
s9gTlRViDzAsBBTpXkpfc3BZ3GDfx62Vs9gTlRViDAQUelVrba5TW3tR7SxNfap6
C1xV84AEKQSxmbE7mzTvwTl+ZLrrBazCZf8jeK3WcYt8fBlh8JkbhCRDdyFSyeCt
AhUA6V5KX3NwWdxg31mR1FApQJ5g/AkCAQEDKgAEnlhy8rfP/GQVF75cIAHkojLf
BmGrBgXR3ts6e3AmV5k86uXN/c8zXQ==
-----END PUBLIC KEY-----

View File

@ -0,0 +1,24 @@
Field Type: prime-field
Prime:
00:e9:5e:4a:5f:73:70:59:dc:60:df:c7:ad:95:b3:
d8:13:95:15:62:0f
A:
00:e9:5e:4a:5f:73:70:59:dc:60:df:c7:ad:95:b3:
d8:13:95:15:62:0c
B:
7a:55:6b:6d:ae:53:5b:7b:51:ed:2c:4d:7d:aa:7a:
0b:5c:55:f3:80
Generator (uncompressed):
04:b1:99:b1:3b:9b:34:ef:c1:39:7e:64:ba:eb:05:
ac:c2:65:ff:23:78:ad:d6:71:8b:7c:7c:19:61:f0:
99:1b:84:24:43:77:21:52:c9:e0:ad
Order:
00:e9:5e:4a:5f:73:70:59:dc:60:df:59:91:d4:50:
29:40:9e:60:fc:09
Cofactor: 1 (0x1)
-----BEGIN EC PARAMETERS-----
MIGYAgEBMCAGByqGSM49AQECFQDpXkpfc3BZ3GDfx62Vs9gTlRViDzAsBBTpXkpf
c3BZ3GDfx62Vs9gTlRViDAQUelVrba5TW3tR7SxNfap6C1xV84AEKQSxmbE7mzTv
wTl+ZLrrBazCZf8jeK3WcYt8fBlh8JkbhCRDdyFSyeCtAhUA6V5KX3NwWdxg31mR
1FApQJ5g/AkCAQE=
-----END EC PARAMETERS-----

View File

@ -0,0 +1,4 @@
-----BEGIN EC PRIVATE KEY-----
MEACAQEEFCbFClfPHylYVNpL0D6AtQgT7ce9oAsGCSskAwMCCAEBAqEYAxYAA9iU
5Hxy6dIqfyyDn2PscyULQZzr
-----END EC PRIVATE KEY-----

View File

@ -0,0 +1,3 @@
-----BEGIN PUBLIC KEY-----
MC4wFAYHKoZIzj0CAQYJKyQDAwIIAQECAxYAA9iU5Hxy6dIqfyyDn2PscyULQZzr
-----END PUBLIC KEY-----

View File

@ -0,0 +1,4 @@
-----BEGIN EC PRIVATE KEY-----
MFQCAQEEFCbFClfPHylYVNpL0D6AtQgT7ce9oAsGCSskAwMCCAEBAqEsAyoAB9iU
5Hxy6dIqfyyDn2PscyULQZzrr3xdclMNFuFBOiAdjtYU+MRpQE8=
-----END EC PRIVATE KEY-----

View File

@ -0,0 +1,4 @@
-----BEGIN PUBLIC KEY-----
MEIwFAYHKoZIzj0CAQYJKyQDAwIIAQECAyoAB9iU5Hxy6dIqfyyDn2PscyULQZzr
r3xdclMNFuFBOiAdjtYU+MRpQE8=
-----END PUBLIC KEY-----

View File

@ -0,0 +1,4 @@
-----BEGIN EC PRIVATE KEY-----
MFQCAQEEFCbFClfPHylYVNpL0D6AtQgT7ce9oAsGCSskAwMCCAEBAqEsAyoABNiU
5Hxy6dIqfyyDn2PscyULQZzrr3xdclMNFuFBOiAdjtYU+MRpQE8=
-----END EC PRIVATE KEY-----

View File

@ -0,0 +1,4 @@
-----BEGIN PUBLIC KEY-----
MEIwFAYHKoZIzj0CAQYJKyQDAwIIAQECAyoABNiU5Hxy6dIqfyyDn2PscyULQZzr
r3xdclMNFuFBOiAdjtYU+MRpQE8=
-----END PUBLIC KEY-----

View File

@ -0,0 +1,4 @@
ASN1 OID: brainpoolP160t1
-----BEGIN EC PARAMETERS-----
BgkrJAMDAggBAQI=
-----END EC PARAMETERS-----

View File

@ -0,0 +1,7 @@
-----BEGIN EC PRIVATE KEY-----
MIHZAgEBBBhD75eEWOQzo5neRqYGRFZVLk7SFip7cwCggZswgZgCAQEwJAYHKoZI
zj0BAQIZAMMC9B2TKjbNp6NGMJPRjbePzkdt4ahilzA0BBhqkRdAdrHg4Zw5wDH+
hoXByuBA5caaKO8EGEaaKO98KMyj3HIdBE9ElrzKfvQUb78lyQQZA8CgZH6qtqSH
U7AzxWyw8JAKL1xIUzdf1gIZAMMC9B2TKjbNp6NGL56ekWtb6PECmsSswQIBAaEc
AxoAA7Bk87EwQ+DwfwstZKOigTmrGsqeN90Pog==
-----END EC PRIVATE KEY-----

View File

@ -0,0 +1,7 @@
-----BEGIN PUBLIC KEY-----
MIHDMIGkBgcqhkjOPQIBMIGYAgEBMCQGByqGSM49AQECGQDDAvQdkyo2zaejRjCT
0Y23j85HbeGoYpcwNAQYapEXQHax4OGcOcAx/oaFwcrgQOXGmijvBBhGmijvfCjM
o9xyHQRPRJa8yn70FG+/JckEGQPAoGR+qrakh1OwM8VssPCQCi9cSFM3X9YCGQDD
AvQdkyo2zaejRi+enpFrW+jxAprErMECAQEDGgADsGTzsTBD4PB/Cy1ko6KBOasa
yp433Q+i
-----END PUBLIC KEY-----

View File

@ -0,0 +1,8 @@
-----BEGIN EC PRIVATE KEY-----
MIIBCQIBAQQYQ++XhFjkM6OZ3kamBkRWVS5O0hYqe3MAoIGzMIGwAgEBMCQGByqG
SM49AQECGQDDAvQdkyo2zaejRjCT0Y23j85HbeGoYpcwNAQYapEXQHax4OGcOcAx
/oaFwcrgQOXGmijvBBhGmijvfCjMo9xyHQRPRJa8yn70FG+/JckEMQfAoGR+qrak
h1OwM8VssPCQCi9cSFM3X9YUtpCGar1buItfSCjBSQAC5nc/ovopm48CGQDDAvQd
kyo2zaejRi+enpFrW+jxAprErMECAQGhNAMyAAewZPOxMEPg8H8LLWSjooE5qxrK
njfdD6JBTUlNwiO0U552Ki3/9TVYz/wcq3oq0kE=
-----END EC PRIVATE KEY-----

View File

@ -0,0 +1,8 @@
-----BEGIN PUBLIC KEY-----
MIHzMIG8BgcqhkjOPQIBMIGwAgEBMCQGByqGSM49AQECGQDDAvQdkyo2zaejRjCT
0Y23j85HbeGoYpcwNAQYapEXQHax4OGcOcAx/oaFwcrgQOXGmijvBBhGmijvfCjM
o9xyHQRPRJa8yn70FG+/JckEMQfAoGR+qrakh1OwM8VssPCQCi9cSFM3X9YUtpCG
ar1buItfSCjBSQAC5nc/ovopm48CGQDDAvQdkyo2zaejRi+enpFrW+jxAprErMEC
AQEDMgAHsGTzsTBD4PB/Cy1ko6KBOasayp433Q+iQU1JTcIjtFOediot//U1WM/8
HKt6KtJB
-----END PUBLIC KEY-----

View File

@ -0,0 +1,8 @@
-----BEGIN EC PRIVATE KEY-----
MIIBCQIBAQQYQ++XhFjkM6OZ3kamBkRWVS5O0hYqe3MAoIGzMIGwAgEBMCQGByqG
SM49AQECGQDDAvQdkyo2zaejRjCT0Y23j85HbeGoYpcwNAQYapEXQHax4OGcOcAx
/oaFwcrgQOXGmijvBBhGmijvfCjMo9xyHQRPRJa8yn70FG+/JckEMQTAoGR+qrak
h1OwM8VssPCQCi9cSFM3X9YUtpCGar1buItfSCjBSQAC5nc/ovopm48CGQDDAvQd
kyo2zaejRi+enpFrW+jxAprErMECAQGhNAMyAASwZPOxMEPg8H8LLWSjooE5qxrK
njfdD6JBTUlNwiO0U552Ki3/9TVYz/wcq3oq0kE=
-----END EC PRIVATE KEY-----

View File

@ -0,0 +1,8 @@
-----BEGIN PUBLIC KEY-----
MIHzMIG8BgcqhkjOPQIBMIGwAgEBMCQGByqGSM49AQECGQDDAvQdkyo2zaejRjCT
0Y23j85HbeGoYpcwNAQYapEXQHax4OGcOcAx/oaFwcrgQOXGmijvBBhGmijvfCjM
o9xyHQRPRJa8yn70FG+/JckEMQTAoGR+qrakh1OwM8VssPCQCi9cSFM3X9YUtpCG
ar1buItfSCjBSQAC5nc/ovopm48CGQDDAvQdkyo2zaejRi+enpFrW+jxAprErMEC
AQEDMgAEsGTzsTBD4PB/Cy1ko6KBOasayp433Q+iQU1JTcIjtFOediot//U1WM/8
HKt6KtJB
-----END PUBLIC KEY-----

View File

@ -0,0 +1,25 @@
Field Type: prime-field
Prime:
00:c3:02:f4:1d:93:2a:36:cd:a7:a3:46:30:93:d1:
8d:b7:8f:ce:47:6d:e1:a8:62:97
A:
6a:91:17:40:76:b1:e0:e1:9c:39:c0:31:fe:86:85:
c1:ca:e0:40:e5:c6:9a:28:ef
B:
46:9a:28:ef:7c:28:cc:a3:dc:72:1d:04:4f:44:96:
bc:ca:7e:f4:14:6f:bf:25:c9
Generator (uncompressed):
04:c0:a0:64:7e:aa:b6:a4:87:53:b0:33:c5:6c:b0:
f0:90:0a:2f:5c:48:53:37:5f:d6:14:b6:90:86:6a:
bd:5b:b8:8b:5f:48:28:c1:49:00:02:e6:77:3f:a2:
fa:29:9b:8f
Order:
00:c3:02:f4:1d:93:2a:36:cd:a7:a3:46:2f:9e:9e:
91:6b:5b:e8:f1:02:9a:c4:ac:c1
Cofactor: 1 (0x1)
-----BEGIN EC PARAMETERS-----
MIGwAgEBMCQGByqGSM49AQECGQDDAvQdkyo2zaejRjCT0Y23j85HbeGoYpcwNAQY
apEXQHax4OGcOcAx/oaFwcrgQOXGmijvBBhGmijvfCjMo9xyHQRPRJa8yn70FG+/
JckEMQTAoGR+qrakh1OwM8VssPCQCi9cSFM3X9YUtpCGar1buItfSCjBSQAC5nc/
ovopm48CGQDDAvQdkyo2zaejRi+enpFrW+jxAprErMECAQE=
-----END EC PARAMETERS-----

View File

@ -0,0 +1,4 @@
-----BEGIN EC PRIVATE KEY-----
MEgCAQEEGHcCDbSTM/VbGQHkJDwWgVdUoESwPz+7J6ALBgkrJAMDAggBAQOhHAMa
AAMHk/bu3OOq/KtKqnCg1BnJA4kH7rG3wXY=
-----END EC PRIVATE KEY-----

View File

@ -0,0 +1,4 @@
-----BEGIN PUBLIC KEY-----
MDIwFAYHKoZIzj0CAQYJKyQDAwIIAQEDAxoAAweT9u7c46r8q0qqcKDUGckDiQfu
sbfBdg==
-----END PUBLIC KEY-----

View File

@ -0,0 +1,5 @@
-----BEGIN EC PRIVATE KEY-----
MGACAQEEGHcCDbSTM/VbGQHkJDwWgVdUoESwPz+7J6ALBgkrJAMDAggBAQOhNAMy
AAcHk/bu3OOq/KtKqnCg1BnJA4kH7rG3wXY+r2XeSFyMm2aNFfxPVWEQBM32tGCW
EU0=
-----END EC PRIVATE KEY-----

View File

@ -0,0 +1,4 @@
-----BEGIN PUBLIC KEY-----
MEowFAYHKoZIzj0CAQYJKyQDAwIIAQEDAzIABweT9u7c46r8q0qqcKDUGckDiQfu
sbfBdj6vZd5IXIybZo0V/E9VYRAEzfa0YJYRTQ==
-----END PUBLIC KEY-----

View File

@ -0,0 +1,5 @@
-----BEGIN EC PRIVATE KEY-----
MGACAQEEGHcCDbSTM/VbGQHkJDwWgVdUoESwPz+7J6ALBgkrJAMDAggBAQOhNAMy
AAQHk/bu3OOq/KtKqnCg1BnJA4kH7rG3wXY+r2XeSFyMm2aNFfxPVWEQBM32tGCW
EU0=
-----END EC PRIVATE KEY-----

View File

@ -0,0 +1,4 @@
-----BEGIN PUBLIC KEY-----
MEowFAYHKoZIzj0CAQYJKyQDAwIIAQEDAzIABAeT9u7c46r8q0qqcKDUGckDiQfu
sbfBdj6vZd5IXIybZo0V/E9VYRAEzfa0YJYRTQ==
-----END PUBLIC KEY-----

View File

@ -0,0 +1,4 @@
ASN1 OID: brainpoolP192r1
-----BEGIN EC PARAMETERS-----
BgkrJAMDAggBAQM=
-----END EC PARAMETERS-----

View File

@ -0,0 +1,7 @@
-----BEGIN EC PRIVATE KEY-----
MIHZAgEBBBiwfZAsNjJ0HU7xHMz3MJl9nWUdhRINzRKggZswgZgCAQEwJAYHKoZI
zj0BAQIZAMMC9B2TKjbNp6NGMJPRjbePzkdt4ahilzA0BBjDAvQdkyo2zaejRjCT
0Y23j85HbeGoYpQEGBPVb/rseGgeaPnetDs1vsL7aFQuJ4l7eQQZAzrp5YyC9jww
KC4f57v0P6csRGr29GGBKQIZAMMC9B2TKjbNp6NGL56ekWtb6PECmsSswQIBAaEc
AxoAAq8I16z0BLE/WV74762vv9fRwHOAriO7Hw==
-----END EC PRIVATE KEY-----

View File

@ -0,0 +1,7 @@
-----BEGIN PUBLIC KEY-----
MIHDMIGkBgcqhkjOPQIBMIGYAgEBMCQGByqGSM49AQECGQDDAvQdkyo2zaejRjCT
0Y23j85HbeGoYpcwNAQYwwL0HZMqNs2no0Ywk9GNt4/OR23hqGKUBBgT1W/67Hho
Hmj53rQ7Nb7C+2hULieJe3kEGQM66eWMgvY8MCguH+e79D+nLERq9vRhgSkCGQDD
AvQdkyo2zaejRi+enpFrW+jxAprErMECAQEDGgACrwjXrPQEsT9ZXvjvra+/19HA
c4CuI7sf
-----END PUBLIC KEY-----

View File

@ -0,0 +1,8 @@
-----BEGIN EC PRIVATE KEY-----
MIIBCQIBAQQYsH2QLDYydB1O8RzM9zCZfZ1lHYUSDc0SoIGzMIGwAgEBMCQGByqG
SM49AQECGQDDAvQdkyo2zaejRjCT0Y23j85HbeGoYpcwNAQYwwL0HZMqNs2no0Yw
k9GNt4/OR23hqGKUBBgT1W/67HhoHmj53rQ7Nb7C+2hULieJe3kEMQc66eWMgvY8
MCguH+e79D+nLERq9vRhgSkJfixWZ8IiOpAqtcpEnQCEt+Wz3nzMAckCGQDDAvQd
kyo2zaejRi+enpFrW+jxAprErMECAQGhNAMyAAavCNes9ASxP1le+O+tr7/X0cBz
gK4jux982thauROrZmB7Q5YVBiiXUN6kI8I9sog=
-----END EC PRIVATE KEY-----

View File

@ -0,0 +1,8 @@
-----BEGIN PUBLIC KEY-----
MIHzMIG8BgcqhkjOPQIBMIGwAgEBMCQGByqGSM49AQECGQDDAvQdkyo2zaejRjCT
0Y23j85HbeGoYpcwNAQYwwL0HZMqNs2no0Ywk9GNt4/OR23hqGKUBBgT1W/67Hho
Hmj53rQ7Nb7C+2hULieJe3kEMQc66eWMgvY8MCguH+e79D+nLERq9vRhgSkJfixW
Z8IiOpAqtcpEnQCEt+Wz3nzMAckCGQDDAvQdkyo2zaejRi+enpFrW+jxAprErMEC
AQEDMgAGrwjXrPQEsT9ZXvjvra+/19HAc4CuI7sffNrYWrkTq2Zge0OWFQYol1De
pCPCPbKI
-----END PUBLIC KEY-----

View File

@ -0,0 +1,8 @@
-----BEGIN EC PRIVATE KEY-----
MIIBCQIBAQQYsH2QLDYydB1O8RzM9zCZfZ1lHYUSDc0SoIGzMIGwAgEBMCQGByqG
SM49AQECGQDDAvQdkyo2zaejRjCT0Y23j85HbeGoYpcwNAQYwwL0HZMqNs2no0Yw
k9GNt4/OR23hqGKUBBgT1W/67HhoHmj53rQ7Nb7C+2hULieJe3kEMQQ66eWMgvY8
MCguH+e79D+nLERq9vRhgSkJfixWZ8IiOpAqtcpEnQCEt+Wz3nzMAckCGQDDAvQd
kyo2zaejRi+enpFrW+jxAprErMECAQGhNAMyAASvCNes9ASxP1le+O+tr7/X0cBz
gK4jux982thauROrZmB7Q5YVBiiXUN6kI8I9sog=
-----END EC PRIVATE KEY-----

View File

@ -0,0 +1,8 @@
-----BEGIN PUBLIC KEY-----
MIHzMIG8BgcqhkjOPQIBMIGwAgEBMCQGByqGSM49AQECGQDDAvQdkyo2zaejRjCT
0Y23j85HbeGoYpcwNAQYwwL0HZMqNs2no0Ywk9GNt4/OR23hqGKUBBgT1W/67Hho
Hmj53rQ7Nb7C+2hULieJe3kEMQQ66eWMgvY8MCguH+e79D+nLERq9vRhgSkJfixW
Z8IiOpAqtcpEnQCEt+Wz3nzMAckCGQDDAvQdkyo2zaejRi+enpFrW+jxAprErMEC
AQEDMgAErwjXrPQEsT9ZXvjvra+/19HAc4CuI7sffNrYWrkTq2Zge0OWFQYol1De
pCPCPbKI
-----END PUBLIC KEY-----

View File

@ -0,0 +1,25 @@
Field Type: prime-field
Prime:
00:c3:02:f4:1d:93:2a:36:cd:a7:a3:46:30:93:d1:
8d:b7:8f:ce:47:6d:e1:a8:62:97
A:
00:c3:02:f4:1d:93:2a:36:cd:a7:a3:46:30:93:d1:
8d:b7:8f:ce:47:6d:e1:a8:62:94
B:
13:d5:6f:fa:ec:78:68:1e:68:f9:de:b4:3b:35:be:
c2:fb:68:54:2e:27:89:7b:79
Generator (uncompressed):
04:3a:e9:e5:8c:82:f6:3c:30:28:2e:1f:e7:bb:f4:
3f:a7:2c:44:6a:f6:f4:61:81:29:09:7e:2c:56:67:
c2:22:3a:90:2a:b5:ca:44:9d:00:84:b7:e5:b3:de:
7c:cc:01:c9
Order:
00:c3:02:f4:1d:93:2a:36:cd:a7:a3:46:2f:9e:9e:
91:6b:5b:e8:f1:02:9a:c4:ac:c1
Cofactor: 1 (0x1)
-----BEGIN EC PARAMETERS-----
MIGwAgEBMCQGByqGSM49AQECGQDDAvQdkyo2zaejRjCT0Y23j85HbeGoYpcwNAQY
wwL0HZMqNs2no0Ywk9GNt4/OR23hqGKUBBgT1W/67HhoHmj53rQ7Nb7C+2hULieJ
e3kEMQQ66eWMgvY8MCguH+e79D+nLERq9vRhgSkJfixWZ8IiOpAqtcpEnQCEt+Wz
3nzMAckCGQDDAvQdkyo2zaejRi+enpFrW+jxAprErMECAQE=
-----END EC PARAMETERS-----

View File

@ -0,0 +1,4 @@
-----BEGIN EC PRIVATE KEY-----
MEgCAQEEGBjZ7O3Fc2m0Fu4KTMQ4GqoRxgaLO8AA/6ALBgkrJAMDAggBAQShHAMa
AANz2isBA14fA4S3qqh0P3dAkcDgiVW4KRc=
-----END EC PRIVATE KEY-----

View File

@ -0,0 +1,4 @@
-----BEGIN PUBLIC KEY-----
MDIwFAYHKoZIzj0CAQYJKyQDAwIIAQEEAxoAA3PaKwEDXh8DhLeqqHQ/d0CRwOCJ
VbgpFw==
-----END PUBLIC KEY-----

View File

@ -0,0 +1,5 @@
-----BEGIN EC PRIVATE KEY-----
MGACAQEEGBjZ7O3Fc2m0Fu4KTMQ4GqoRxgaLO8AA/6ALBgkrJAMDAggBAQShNAMy
AAdz2isBA14fA4S3qqh0P3dAkcDgiVW4KRe/Vm6NFOxHywQnvIJKXKqZAGccAp4G
P1E=
-----END EC PRIVATE KEY-----

View File

@ -0,0 +1,4 @@
-----BEGIN PUBLIC KEY-----
MEowFAYHKoZIzj0CAQYJKyQDAwIIAQEEAzIAB3PaKwEDXh8DhLeqqHQ/d0CRwOCJ
VbgpF79Wbo0U7EfLBCe8gkpcqpkAZxwCngY/UQ==
-----END PUBLIC KEY-----

View File

@ -0,0 +1,5 @@
-----BEGIN EC PRIVATE KEY-----
MGACAQEEGBjZ7O3Fc2m0Fu4KTMQ4GqoRxgaLO8AA/6ALBgkrJAMDAggBAQShNAMy
AARz2isBA14fA4S3qqh0P3dAkcDgiVW4KRe/Vm6NFOxHywQnvIJKXKqZAGccAp4G
P1E=
-----END EC PRIVATE KEY-----

View File

@ -0,0 +1,4 @@
-----BEGIN PUBLIC KEY-----
MEowFAYHKoZIzj0CAQYJKyQDAwIIAQEEAzIABHPaKwEDXh8DhLeqqHQ/d0CRwOCJ
VbgpF79Wbo0U7EfLBCe8gkpcqpkAZxwCngY/UQ==
-----END PUBLIC KEY-----

View File

@ -0,0 +1,4 @@
ASN1 OID: brainpoolP192t1
-----BEGIN EC PARAMETERS-----
BgkrJAMDAggBAQQ=
-----END EC PARAMETERS-----

View File

@ -0,0 +1,8 @@
-----BEGIN EC PRIVATE KEY-----
MIH1AgEBBBwX+PzMj3yeR2G5a5ntRKJOzsEmJEyyVfptG7DxoIGvMIGsAgEBMCgG
ByqGSM49AQECHQDXwTSqJkNmhioYMCV10deHsJ8HV5faifV+yMD/MDwEHGil5iyp
zmwcKZgDpsFTC1FOGCrYsAQqWcrSn0MEHCWA9jzP5EE4hwcTsakjaeM+ITXSZtuz
cjhsQAsEHQMNkCmtLH5c9DQII7KofcaMnkzjF0webv3uEsB9Ah0A18E0qiZDZoYq
GDAlddD7mNEWvEtt3ryjpaeTnwIBAaEgAx4AA9FP/5WtZVx/tcT2yt9zzRUKybQ9
J7XZE5wQM7A=
-----END EC PRIVATE KEY-----

View File

@ -0,0 +1,7 @@
-----BEGIN PUBLIC KEY-----
MIHbMIG4BgcqhkjOPQIBMIGsAgEBMCgGByqGSM49AQECHQDXwTSqJkNmhioYMCV1
0deHsJ8HV5faifV+yMD/MDwEHGil5iypzmwcKZgDpsFTC1FOGCrYsAQqWcrSn0ME
HCWA9jzP5EE4hwcTsakjaeM+ITXSZtuzcjhsQAsEHQMNkCmtLH5c9DQII7KofcaM
nkzjF0webv3uEsB9Ah0A18E0qiZDZoYqGDAlddD7mNEWvEtt3ryjpaeTnwIBAQMe
AAPRT/+VrWVcf7XE9srfc80VCsm0PSe12ROcEDOw
-----END PUBLIC KEY-----

View File

@ -0,0 +1,9 @@
-----BEGIN EC PRIVATE KEY-----
MIIBLQIBAQQcF/j8zI98nkdhuWuZ7USiTs7BJiRMslX6bRuw8aCByzCByAIBATAo
BgcqhkjOPQEBAh0A18E0qiZDZoYqGDAlddHXh7CfB1eX2on1fsjA/zA8BBxopeYs
qc5sHCmYA6bBUwtRThgq2LAEKlnK0p9DBBwlgPY8z+RBOIcHE7GpI2njPiE10mbb
s3I4bEALBDkHDZAprSx+XPQ0CCOyqH3GjJ5M4xdMHm797hLAfViqVvdywHJvJMa4
nk7NrCQ1S56ZyqP203YUAs0CHQDXwTSqJkNmhioYMCV10PuY0Ra8S23evKOlp5Of
AgEBoTwDOgAH0U//la1lXH+1xPbK33PNFQrJtD0ntdkTnBAzsFHL04D4ua2+cJ2u
zQptM3sLWyMUp7B8Yy0EUDM=
-----END EC PRIVATE KEY-----

View File

@ -0,0 +1,8 @@
-----BEGIN PUBLIC KEY-----
MIIBEzCB1AYHKoZIzj0CATCByAIBATAoBgcqhkjOPQEBAh0A18E0qiZDZoYqGDAl
ddHXh7CfB1eX2on1fsjA/zA8BBxopeYsqc5sHCmYA6bBUwtRThgq2LAEKlnK0p9D
BBwlgPY8z+RBOIcHE7GpI2njPiE10mbbs3I4bEALBDkHDZAprSx+XPQ0CCOyqH3G
jJ5M4xdMHm797hLAfViqVvdywHJvJMa4nk7NrCQ1S56ZyqP203YUAs0CHQDXwTSq
JkNmhioYMCV10PuY0Ra8S23evKOlp5OfAgEBAzoAB9FP/5WtZVx/tcT2yt9zzRUK
ybQ9J7XZE5wQM7BRy9OA+LmtvnCdrs0KbTN7C1sjFKewfGMtBFAz
-----END PUBLIC KEY-----

View File

@ -0,0 +1,9 @@
-----BEGIN EC PRIVATE KEY-----
MIIBLQIBAQQcF/j8zI98nkdhuWuZ7USiTs7BJiRMslX6bRuw8aCByzCByAIBATAo
BgcqhkjOPQEBAh0A18E0qiZDZoYqGDAlddHXh7CfB1eX2on1fsjA/zA8BBxopeYs
qc5sHCmYA6bBUwtRThgq2LAEKlnK0p9DBBwlgPY8z+RBOIcHE7GpI2njPiE10mbb
s3I4bEALBDkEDZAprSx+XPQ0CCOyqH3GjJ5M4xdMHm797hLAfViqVvdywHJvJMa4
nk7NrCQ1S56ZyqP203YUAs0CHQDXwTSqJkNmhioYMCV10PuY0Ra8S23evKOlp5Of
AgEBoTwDOgAE0U//la1lXH+1xPbK33PNFQrJtD0ntdkTnBAzsFHL04D4ua2+cJ2u
zQptM3sLWyMUp7B8Yy0EUDM=
-----END EC PRIVATE KEY-----

View File

@ -0,0 +1,8 @@
-----BEGIN PUBLIC KEY-----
MIIBEzCB1AYHKoZIzj0CATCByAIBATAoBgcqhkjOPQEBAh0A18E0qiZDZoYqGDAl
ddHXh7CfB1eX2on1fsjA/zA8BBxopeYsqc5sHCmYA6bBUwtRThgq2LAEKlnK0p9D
BBwlgPY8z+RBOIcHE7GpI2njPiE10mbbs3I4bEALBDkEDZAprSx+XPQ0CCOyqH3G
jJ5M4xdMHm797hLAfViqVvdywHJvJMa4nk7NrCQ1S56ZyqP203YUAs0CHQDXwTSq
JkNmhioYMCV10PuY0Ra8S23evKOlp5OfAgEBAzoABNFP/5WtZVx/tcT2yt9zzRUK
ybQ9J7XZE5wQM7BRy9OA+LmtvnCdrs0KbTN7C1sjFKewfGMtBFAz
-----END PUBLIC KEY-----

View File

@ -0,0 +1,26 @@
Field Type: prime-field
Prime:
00:d7:c1:34:aa:26:43:66:86:2a:18:30:25:75:d1:
d7:87:b0:9f:07:57:97:da:89:f5:7e:c8:c0:ff
A:
68:a5:e6:2c:a9:ce:6c:1c:29:98:03:a6:c1:53:0b:
51:4e:18:2a:d8:b0:04:2a:59:ca:d2:9f:43
B:
25:80:f6:3c:cf:e4:41:38:87:07:13:b1:a9:23:69:
e3:3e:21:35:d2:66:db:b3:72:38:6c:40:0b
Generator (uncompressed):
04:0d:90:29:ad:2c:7e:5c:f4:34:08:23:b2:a8:7d:
c6:8c:9e:4c:e3:17:4c:1e:6e:fd:ee:12:c0:7d:58:
aa:56:f7:72:c0:72:6f:24:c6:b8:9e:4e:cd:ac:24:
35:4b:9e:99:ca:a3:f6:d3:76:14:02:cd
Order:
00:d7:c1:34:aa:26:43:66:86:2a:18:30:25:75:d0:
fb:98:d1:16:bc:4b:6d:de:bc:a3:a5:a7:93:9f
Cofactor: 1 (0x1)
-----BEGIN EC PARAMETERS-----
MIHIAgEBMCgGByqGSM49AQECHQDXwTSqJkNmhioYMCV10deHsJ8HV5faifV+yMD/
MDwEHGil5iypzmwcKZgDpsFTC1FOGCrYsAQqWcrSn0MEHCWA9jzP5EE4hwcTsakj
aeM+ITXSZtuzcjhsQAsEOQQNkCmtLH5c9DQII7KofcaMnkzjF0webv3uEsB9WKpW
93LAcm8kxrieTs2sJDVLnpnKo/bTdhQCzQIdANfBNKomQ2aGKhgwJXXQ+5jRFrxL
bd68o6Wnk58CAQE=
-----END EC PARAMETERS-----

View File

@ -0,0 +1,4 @@
-----BEGIN EC PRIVATE KEY-----
MFACAQEEHGLi+AIOJ91qYzQXLr0H/twLaUbcfoywPWLHkTCgCwYJKyQDAwIIAQEF
oSADHgADzOAWZitqfKqp1TdluSZoJqytmwNJ+V6Bco/GlA==
-----END EC PRIVATE KEY-----

View File

@ -0,0 +1,4 @@
-----BEGIN PUBLIC KEY-----
MDYwFAYHKoZIzj0CAQYJKyQDAwIIAQEFAx4AA8zgFmYranyqqdU3ZbkmaCasrZsD
SflegXKPxpQ=
-----END PUBLIC KEY-----

View File

@ -0,0 +1,5 @@
-----BEGIN EC PRIVATE KEY-----
MGwCAQEEHGLi+AIOJ91qYzQXLr0H/twLaUbcfoywPWLHkTCgCwYJKyQDAwIIAQEF
oTwDOgAHzOAWZitqfKqp1TdluSZoJqytmwNJ+V6Bco/GlEHN+JmCcHkX18MK6GAv
6Xpy1qXQZAn6iZQl0mk=
-----END EC PRIVATE KEY-----

View File

@ -0,0 +1,4 @@
-----BEGIN PUBLIC KEY-----
MFIwFAYHKoZIzj0CAQYJKyQDAwIIAQEFAzoAB8zgFmYranyqqdU3ZbkmaCasrZsD
SflegXKPxpRBzfiZgnB5F9fDCuhgL+l6ctal0GQJ+omUJdJp
-----END PUBLIC KEY-----

View File

@ -0,0 +1,5 @@
-----BEGIN EC PRIVATE KEY-----
MGwCAQEEHGLi+AIOJ91qYzQXLr0H/twLaUbcfoywPWLHkTCgCwYJKyQDAwIIAQEF
oTwDOgAEzOAWZitqfKqp1TdluSZoJqytmwNJ+V6Bco/GlEHN+JmCcHkX18MK6GAv
6Xpy1qXQZAn6iZQl0mk=
-----END EC PRIVATE KEY-----

View File

@ -0,0 +1,4 @@
-----BEGIN PUBLIC KEY-----
MFIwFAYHKoZIzj0CAQYJKyQDAwIIAQEFAzoABMzgFmYranyqqdU3ZbkmaCasrZsD
SflegXKPxpRBzfiZgnB5F9fDCuhgL+l6ctal0GQJ+omUJdJp
-----END PUBLIC KEY-----

Some files were not shown because too many files have changed in this diff Show More