Translated ['crypto-and-stego/certificates.md'] to ua

This commit is contained in:
Translator 2024-10-05 14:45:25 +00:00
parent 35dfa4bc5a
commit cd82bc1833

View file

@ -36,7 +36,7 @@
У сертифікатах x509 кілька **полів** відіграють критичну роль у забезпеченні дійсності та безпеки сертифіката. Ось розподіл цих полів:
* **Номер версії** позначає версію формату x509.
* **Серійний номер** унікально ідентифікує сертифікат у системі сертифікаційного центру (CA), головним чином для відстеження анулювання.
* **Серійний номер** унікально ідентифікує сертифікат у системі сертифікаційного центру (CA), головним чином для відстеження відкликання.
* Поле **Суб'єкт** представляє власника сертифіката, яким може бути машина, особа або організація. Воно містить детальну ідентифікацію, таку як:
* **Загальна назва (CN)**: домени, охоплені сертифікатом.
* **Країна (C)**, **Місцевість (L)**, **Штат або провінція (ST, S або P)**, **Організація (O)** та **Організаційна одиниця (OU)** надають географічні та організаційні деталі.
@ -44,7 +44,7 @@
* **Видавець** вказує, хто перевірив і підписав сертифікат, включаючи подібні підполя, як у Суб'єкта для CA.
* **Період дійсності** позначається часовими мітками **Не раніше** та **Не пізніше**, що забезпечує, щоб сертифікат не використовувався до або після певної дати.
* Розділ **Публічний ключ**, критично важливий для безпеки сертифіката, вказує алгоритм, розмір та інші технічні деталі публічного ключа.
* **Розширення x509v3** покращують функціональність сертифіката, вказуючи **Використання ключа**, **Розширене використання ключа**, **Альтернативне ім'я суб'єкта** та інші властивості для точного налаштування застосування сертифіката.
* **Розширення x509v3** покращують функціональність сертифіката, вказуючи **Використання ключа**, **Розширене використання ключа**, **Альтернативне ім'я суб'єкта** та інші властивості для тонкої настройки застосування сертифіката.
#### **Використання ключа та розширення**
@ -52,7 +52,7 @@
* **Розширене використання ключа** ще більше звужує випадки використання сертифіката, наприклад, для аутентифікації сервера TLS.
* **Альтернативне ім'я суб'єкта** та **Основна обмеження** визначають додаткові імена хостів, охоплені сертифікатом, та чи є це сертифікатом CA або кінцевого суб'єкта відповідно.
* Ідентифікатори, такі як **Ідентифікатор ключа суб'єкта** та **Ідентифікатор ключа авторитету**, забезпечують унікальність та відстежуваність ключів.
* **Доступ до інформації про авторитет** та **Точки розподілу CRL** надають шляхи для перевірки видавця CA та перевірки статусу анулювання сертифіката.
* **Доступ до інформації про авторитет** та **Точки розподілу CRL** надають шляхи для перевірки видавця CA та перевірки статусу відкликання сертифіката.
* **SCT сертифікатів CT** пропонують журнали прозорості, критично важливі для публічної довіри до сертифіката.
```python
# Example of accessing and using x509 certificate fields programmatically:
@ -109,7 +109,7 @@ print(f"Public Key: {public_key}")
### **DER Формат**
* Бінарний формат сертифікатів.
* Не містить "BEGIN/END CERTIFICATE" заяв, які є у PEM файлах.
* Не містить заяв "BEGIN/END CERTIFICATE", які є у файлах PEM.
* Загальні розширення: .cer, .der.
* Часто використовується з платформами Java.
@ -173,6 +173,25 @@ openssl pkcs7 -print_certs -in certificatename.p7b -out certificatename.cer
```bash
openssl pkcs12 -export -in certificatename.cer -inkey privateKey.key -out certificatename.pfx -certfile cacert.cer
```
* **Редагування ASN.1 (DER/PEM)** (працює з сертифікатами або майже будь-якою іншою структурою ASN.1):
1. Клонуйте [asn1template](https://github.com/wllm-rbnt/asn1template/)
```bash
git clone https://github.com/wllm-rbnt/asn1template.git
```
2. Перетворення DER/PEM у формат генерації OpenSSL
```bash
asn1template/asn1template.pl certificatename.der > certificatename.tpl
asn1template/asn1template.pl -p certificatename.pem > certificatename.tpl
```
3. Відредагуйте certificatename.tpl відповідно до ваших вимог
```bash
vim certificatename.tpl
```
4. Відновіть модифікований сертифікат
```bash
openssl asn1parse -genconf certificatename.tpl -out certificatename_new.der
openssl asn1parse -genconf certificatename.tpl -outform PEM -out certificatename_new.pem
```
***
<figure><img src="../.gitbook/assets/image (48).png" alt=""><figcaption></figcaption></figure>