# Генератор на EC ключове

Генерирайте двойка ключове за елиптична крива върху P-256, P-384 или P-521 за подписи ES256, ES384 или ES512, ECDH и сертификати TLS. Резултатът съдържа частния ключ като нешифрован PKCS #8 PEM, публичния ключ като SPKI PEM, ред с публичен ключ OpenSSH ecdsa-sha2 с неговия пръстов отпечатък SHA-256 и JWK отпечатък по RFC 7638. Всяка двойка се създава наново с криптомодула на Node и никога не се съхранява.

## Често задавани въпроси

### Коя крива да избера?

P-256 (наричана още prime256v1 или secp256r1) е най-широко поддържаната крива и осигурява около 128 бита сигурност. P-384 осигурява около 192 бита и се изисква от някои правителствени профили като CNSA. P-521 е най-голямата крива на NIST и се поддържа по-рядко, затова я избирайте само ако дадена система я изисква.

### Кой алгоритъм JWT съответства на всяка крива?

Ключовете P-256 подписват с ES256, ключовете P-384 — с ES384, а ключовете P-521 — с ES512. JOSE свързва всеки алгоритъм точно с една крива, затова генераторът JWT отхвърля ключ на неподходяща крива. В резултата е посочен съответстващият алгоритъм за вашия ключ.

### Какви формати се връщат?

Частният ключ е в PEM формат PKCS #8 (BEGIN PRIVATE KEY), а публичният — в PEM формат SubjectPublicKeyInfo (BEGIN PUBLIC KEY) с именуваната крива. Получавате и ред ecdsa-sha2-nistp256, nistp384 или nistp521, който OpenSSH очаква в authorized_keys.

### Как да получа формат SEC1 (BEGIN EC PRIVATE KEY)?

Някои инструменти все още изискват по-старото кодиране SEC1. С OpenSSL 3 изпълнете openssl pkey -in key.pem -traditional -out key-ec.pem или openssl ec -in key.pem -out key-ec.pem. Самият ключ остава същият.

### Мога ли да създам заявка за подписване на сертификат с този ключ?

Да. Запазете частния PEM и изпълнете openssl req -new -key key.pem -subj "/CN=example.com" -out request.csr, след което проверете заявката с декодера на CSR. Сертифициращите органи приемат ключове P-256 и P-384 за сертификати TLS.

### Защо EC ключовете са по-малки от RSA ключовете?

Криптографията с елиптични криви постига същото ниво на сигурност с много по-къси ключове, така че ключ P-256 е сравним с RSA ключ от 3072 бита. Подписите са по-къси, а подписването е по-бързо. Публичният ключ за P-256 се побира в 65 байта.

### Защитен ли е частният ключ с парола?

Не, връща се нешифрован, за да могат другите инструменти да го прочетат директно. Шифровайте го за съхранение с openssl pkey -in key.pem -aes256 -out key-encrypted.pem. Никога не записвайте нешифрован частен ключ в хранилище.

### За какво служи JWK отпечатъкът?

Отпечатъкът по RFC 7638 е base64url хеш SHA-256 на членовете crv, kty, x и y на ключа. Той е постоянен идентификатор на ключа, който не зависи от формата PEM или JWK, и е подходящ за kid в заглавки JWT и документи JWKS.

### Съхранява ли се двойката ключове?

Не. Двойката се генерира в паметта за вашата заявка, връща се еднократно и никога не се записва в лог или не се съхранява. Копирайте двата ключа, преди да напуснете страницата, защото няма да могат да бъдат показани отново.

### Какво променя полето за коментар?

То само добавя етикет в края на реда с публичния ключ OpenSSH, например user@laptop, за да разпознавате лесно ключа в authorized_keys. Пръстовите отпечатъци и материалът на ключа остават същите. Коментарът може да съдържа до 200 знака.

Вашата реклама тук?

[Пишете ни](mailto:hi@dennn.is?subject=%D0%A0%D0%B5%D0%BA%D0%BB%D0%B0%D0%BC%D0%B0%20%D0%B2%20OneClick%20Pro)

[Реклама Комплект плъгини за агенти за WordPress.](https://sleekwp.com/?ref=oneclickpro)
