Параметры (SEC 2, § 2.4.1): p = 2²⁵⁶ − 2³² − 977, a = 0, b = 7, кофактор 1, порядок группы чуть меньше 2²⁵⁶. Особая структура кривой даёт эффективно вычислимый эндоморфизм (метод GLV), который ускоряет умножение точки на скаляр. Идентификаторы: OID 1.3.132.0.10, crv secp256k1 с alg ES256K в JOSE (RFC 8812), −47 в COSE. Кривая недоступна в TLS 1.3, WebCrypto, Secure Enclave от Apple и в профилях по умолчанию большинства HSM.
NIST SP 800-186 (приложение H.2) допускает secp256k1 «для приложений, связанных с блокчейнами». На ней основаны подписи ECDSA и Schnorr по BIP-340 в Bitcoin, транзакции Ethereum, подписи personal_sign и EIP-712 (65 байт с байтом восстановления v) и события Nostr.
Универсальные библиотеки работают с ней медленно: Node.js 26 с OpenSSL 3.6.5 подписывает около 6 500 сообщений в секунду на secp256k1 против примерно 68 800 на P-256 на том же ядре Apple M4 Max, потому что в OpenSSL нет оптимизированного кода для secp256k1. Используйте libsecp256k1 (библиотеку Bitcoin Core с постоянным временем выполнения) или библиотеку @noble/curves, которая на чистом JavaScript работает с secp256k1 так же быстро, как со своей P-256. Соглашения блокчейнов, например low-S и восстановление открытого ключа, отличаются от обычного ECDSA; см. сравнение с P-256.