Форма закрытого ключа зависит от алгоритма: 32-байтный скаляр для P-256 и secp256k1, 32-байтный seed для Ed25519 и X25519, (n, e, d, p, q, dP, dQ, qInv) для RSA и 32-байтный seed (или развёрнутый ключ размером 2 560–4 896 байт) для ML-DSA. В файлах его упаковывают в PKCS #8 (BEGIN PRIVATE KEY или, с паролем, BEGIN ENCRYPTED PRIVATE KEY), PKCS #1 (BEGIN RSA PRIVATE KEY), SEC 1 (BEGIN EC PRIVATE KEY), архивы PKCS #12, формат OpenSSH или JWK с полем d.
Варианты защиты, от слабого к сильному: обычный файл со строгими правами доступа; файл, зашифрованный паролем (PBES2 с медленной KDF); хранилище ключей ОС (Keychain, DPAPI, Android Keystore); неэкспортируемое аппаратное хранение (TPM, Secure Enclave, смарт-карта, HSM, облачный KMS), при котором подпись создаётся внутри устройства, а ключ нельзя скопировать наружу.
Никогда не отправляйте закрытые ключи веб-сервисам, не вставляйте их в тикеты и не записывайте в журналы; инструменты этого сайта, которые разбирают ключи, работают локально и не принимают закрытые ключи там, где достаточно открытого ключа. Если закрытый ключ утёк, отзовите всё, что к нему привязано (сертификат, запись в JWKS, строку в authorized_keys), и выполните ротацию ключа.