ΠΡΠ±Π»ΠΈΠΊΡΠ²Π°Π½ΠΈ ΡΠ° Π½ΡΠΊΠΎΠ»ΠΊΠΎ Π½ΠΎΠ²ΠΈ Π²Π΅ΡΡΠΈΠΈ Π½Π° ΠΊΡΠΈΠΏΡΠΎΠ³ΡΠ°ΡΡΠΊΠΈΡΠ΅ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΈ:
Π Π΅Π»ΠΈΠ· Π½Π° Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠ°ΡΠ° OpenSSL 3.4.0 Ρ ΠΈΠΌΠΏΠ»Π΅ΠΌΠ΅Π½ΡΠ°ΡΠΈΡ Π½Π° ΠΏΡΠΎΡΠΎΠΊΠΎΠ»ΠΈΡΠ΅ SSL/TLS ΠΈ ΡΠ°Π·Π»ΠΈΡΠ½ΠΈ Π°Π»Π³ΠΎΡΠΈΡΠΌΠΈ Π·Π° ΡΠΈΡΡΠΈΡΠ°Π½Π΅. ΠΠΎΠ΄Π΄ΡΡΠΆΠΊΠ°ΡΠ° Π½Π° OpenSSL 3.4 ΡΠ΅ ΡΠ΅ ΠΎΡΡΡΠ΅ΡΡΠ²ΡΠ²Π° Π΄ΠΎ ΠΎΠΊΡΠΎΠΌΠ²ΡΠΈ 2025 Π³ΠΎΠ΄ΠΈΠ½Π°. ΠΠΎΠ΄Π΄ΡΡΠΆΠΊΠ°ΡΠ° Π½Π° ΠΏΡΠ΅Π΄ΠΈΡΠ½ΠΈΡΠ΅ Π²Π΅ΡΡΠΈΠΈ OpenSSL 3.3, 3.2, 3.1 ΠΈ 3.0 LTS ΡΠ΅ ΠΏΡΠΎΠ΄ΡΠ»ΠΆΠΈ Π΄ΠΎ Π°ΠΏΡΠΈΠ» 2026 Π³ΠΎΠ΄ΠΈΠ½Π°, Π½ΠΎΠ΅ΠΌΠ²ΡΠΈ 2025 Π³ΠΎΠ΄ΠΈΠ½Π°, ΠΌΠ°ΡΡ 2025 Π³ΠΎΠ΄ΠΈΠ½Π° ΠΈ ΡΠ΅ΠΏΡΠ΅ΠΌΠ²ΡΠΈ 2026 Π³ΠΎΠ΄ΠΈΠ½Π° ΡΡΠΎΡΠ²Π΅ΡΠ½ΠΎ. ΠΠΎΠ΄ΡΡ Π½Π° ΠΏΡΠΎΠ΅ΠΊΡΠ° ΡΠ΅ ΡΠ°Π·ΠΏΡΠΎΡΡΡΠ°Π½ΡΠ²Π° ΠΏΠΎΠ΄ Π»ΠΈΡΠ΅Π½Π·ΠΈΡ Apache 2.0. ΠΡΠ½ΠΎΠ²Π½ΠΈΡΠ΅ Π½ΠΎΠ²ΠΎΠ²ΡΠ²Π΅Π΄Π΅Π½ΠΈΡ:
- ΠΠΎΠ±Π°Π²Π΅Π½Π° Π΅ ΠΏΠΎΠ΄Π΄ΡΡΠΆΠΊΠ° Π½Π° Π½Π°Π±ΠΎΡ ΠΎΡ ΡΠΈΡΡΠΎΠ²Π΅ Π·Π° TLSv1.3, ΠΎΠ³ΡΠ°Π½ΠΈΡΠ΅Π½Π° Ρ ΡΡΠ½ΠΊΡΠΈΠΈ Π·Π° ΠΏΡΠΎΠ²Π΅ΡΠΊΠ° Π½Π° ΡΠ΅Π»ΠΎΡΡΡΠ° Π½Π° Π΄Π°Π½Π½ΠΈΡΠ΅ (RFC 9150) ΠΈ Π²ΠΊΠ»ΡΡΠ²Π°ΡΠ° Π°Π»Π³ΠΎΡΠΈΡΠΌΠΈ TLS_SHA256_SHA256 ΠΈ TLS_SHA384_SHA384.
- ΠΠΎΠ±Π°Π²Π΅Π½Π° Π΅ ΠΎΠΏΡΠΈΠΎΠ½Π°Π»Π½Π° Π²ΡΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ Π·Π° ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π΅ Π½Π° Π΄ΠΎΠΏΡΠ»Π½ΠΈΡΠ΅Π»Π΅Π½ ΠΈΠ·ΡΠΎΡΠ½ΠΈΠΊ Π½Π° Π΅Π½ΡΡΠΎΠΏΠΈΡ Π² Π³Π΅Π½Π΅ΡΠ°ΡΠΎΡΠ° Π½Π° ΠΏΡΠ΅Π²Π΄ΠΎΡΠ»ΡΡΠ°ΠΉΠ½ΠΈ ΡΠΈΡΠ»Π°, ΠΎΡΠ½ΠΎΠ²Π°Π½ Π½Π° Π΄ΠΆΠΈΡΡΠ΅Ρ (jitter), ΡΠ΅Π°Π»ΠΈΠ·ΠΈΡΠ°Π½ Ρ ΠΏΠΎΠΌΠΎΡΡΠ° Π½Π° Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠ°ΡΠ° jitterentropy. ΠΠ΅Π½Π΅ΡΠΈΡΠ°Π½Π΅ΡΠΎ Π½Π° Π΅Π½ΡΡΠΎΠΏΠΈΡ ΡΠ΅ ΠΈΠ·Π²ΡΡΡΠ²Π° ΡΡΠ΅Π· ΠΈΠ·ΠΌΠ΅ΡΠ²Π°Π½Π΅ Π½Π° ΡΠ°Π·Π»ΠΈΠΊΠΈΡΠ΅ Π²ΡΠ² Π²ΡΠ΅ΠΌΠ΅ΡΠΎ Π½Π° ΠΏΠΎΠ²ΡΠΎΡΠ½ΠΎ ΠΈΠ·ΠΏΡΠ»Π½Π΅Π½ΠΈΠ΅ Π½Π° ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ Π½Π°Π±ΠΎΡ ΠΈΠ½ΡΡΡΡΠΊΡΠΈΠΈ Π½Π° CPU, Π·Π°Π²ΠΈΡΠ΅ΡΠΈ ΠΎΡ ΠΌΠ½ΠΎΠΆΠ΅ΡΡΠ²ΠΎ Π²ΡΡΡΠ΅ΡΠ½ΠΈ ΡΠ°ΠΊΡΠΎΡΠΈ ΠΈ Π½Π΅ΠΏΡΠ΅Π΄ΡΠΊΠ°Π·ΡΠ΅ΠΌΠΈ Π±Π΅Π· ΡΠΈΠ·ΠΈΡΠ΅ΡΠΊΠΈ ΠΊΠΎΠ½ΡΡΠΎΠ» Π²ΡΡΡ Ρ CPU.
- ΠΠΎΠ±Π°Π²Π΅Π½Π° Π΅ Π½Π°ΡΠ°Π»Π½Π° ΠΏΠΎΠ΄Π΄ΡΡΠΆΠΊΠ° Π½Π° Π°ΡΠ΅ΡΡΠ°ΡΠΈΠΎΠ½Π½ΠΈ ΡΠ΅ΡΡΠΈΡΠΈΠΊΠ°ΡΠΈ (AC β Attribute Certificate, RFC 5755), ΠΊΠΎΠΈΡΠΎ Π²ΠΊΠ»ΡΡΠ²Π°Ρ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ Π·Π° ΠΏΡΠ°Π²Π° Π½Π° Π΄ΠΎΡΡΡΠΏ, ΠΏΡΠ»Π½ΠΎΠΌΠΎΡΠΈΡ ΠΈ Π°ΡΡΠΈΠ±ΡΡΠΈ Π½Π° ΡΠΎΠ±ΡΡΠ²Π΅Π½ΠΈΠΊΠ° Π½Π° ΡΠ΅ΡΡΠΈΡΠΈΠΊΠ°ΡΠ°, ΡΠ΄ΠΎΡΡΠΎΠ²Π΅ΡΡΠ²Π°ΡΠΈ Π²ΡΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡΠ° Π·Π° ΠΈΠ·Π²ΡΡΡΠ²Π°Π½Π΅ Π½Π° ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈ Π΄Π΅ΠΉΡΡΠ²ΠΈΡ. ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, AC-ΡΠ΅ΡΡΠΈΡΠΈΠΊΠ°Ρ ΠΌΠΎΠΆΠ΅ Π΄Π° ΠΎΠΏΡΠ΅Π΄Π΅Π»ΠΈ ΠΏΡΠ°Π²ΠΎΡΠΎ Π·Π° ΡΠ²ΡΡΠ·Π²Π°Π½Π΅ Ρ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ ΡΠ΅ΡΠ²ΠΈΡ.
- ΠΠΎΠ±Π°Π²Π΅Π½Π° Π΅ ΠΏΠΎΠ΄Π΄ΡΡΠΆΠΊΠ° Π½Π° ΡΠ°Π·ΡΠΈΡΠ΅Π½ΠΈΡ X.509v3, ΡΠ²ΡΡΠ·Π°Π½ΠΈ Ρ Π°ΡΠ΅ΡΡΠ°ΡΠΈΠΎΠ½Π½ΠΈ ΡΠ΅ΡΡΠΈΡΠΈΠΊΠ°ΡΠΈ.
- Π ΠΏΡΠΎΠ²Π°ΠΉΠ΄Π΅ΡΠ° FIPS Π΅ ΡΠ΅Π°Π»ΠΈΠ·ΠΈΡΠ°Π½Π° ΠΏΠΎΠ΄Π΄ΡΡΠΆΠΊΠ° Π½Π° FIPS 140-3 Indicator API, ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ²Π°ΡΠ° ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΠ½Π΅ Π΄Π°Π»ΠΈ Π΅ Π±ΠΈΠ»Π° ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π° ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π° ΠΎΠΏΠ΅ΡΠ°ΡΠΈΡ Π² ΠΎΠ΄ΠΎΠ±ΡΠ΅Π½ ΡΠ΅ΡΠ²ΠΈΡ ΠΈΠ»ΠΈ Π½Π΅.
- Π API BIO (Basic Input/Output) Π΅ ΠΏΠΎΠ΄ΠΎΠ±ΡΠ΅Π½Π° ΠΎΠ±ΡΠ°Π±ΠΎΡΠΊΠ°ΡΠ° Π½Π° Π²Ρ ΠΎΠ΄ Π² ΡΠΎΡΠΌΠ°Ρ Base64.
- ΠΠΎΠ±Π°Π²Π΅Π½Π° Π΅ ΠΏΠΎΠ΄Π΄ΡΡΠΆΠΊΠ° Π·Π° ΠΈΠ·Π³ΡΠ°ΠΆΠ΄Π°Π½Π΅ Π½Π° ΡΡΠΈΠ»ΠΈΡΠ°ΡΠ° openssl Π² ΡΠ΅ΠΆΠΈΠΌ PIE (Position Independent Executable), ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ²Π°Ρ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π΅ΡΠΎ Π½Π° ΡΠ°Π½Π΄ΠΎΠΌΠΈΠ·Π°ΡΠΈΡ Π½Π° Π°Π΄ΡΠ΅ΡΠ½ΠΎΡΠΎ ΠΏΡΠΎΡΡΡΠ°Π½ΡΡΠ²ΠΎ (ASLR).
- ΠΠΎΠ±Π°Π²Π΅Π½Π° Π΅ ΠΏΠΎΠ΄Π΄ΡΡΠΆΠΊΠ° Π·Π° Π΄ΠΈΡΠ΅ΠΊΡΠ½ΠΎ ΠΈΠ·Π²Π»ΠΈΡΠ°Π΅ΠΌΠΈ ΠΊΠΎΠΌΠ±ΠΈΠ½ΠΈΡΠ°Π½ΠΈ Π°Π»Π³ΠΎΡΠΈΡΠΌΠΈ Π·Π° ΡΠΈΡΡΠΎΠ² ΠΏΠΎΠ΄ΠΏΠΈΡ, ΠΊΠ°ΡΠΎ RSA-SHA2-256.
- Π PKCS#12 Π΅ Π΄ΠΎΠ±Π°Π²Π΅Π½Π° ΠΏΠΎΠ΄Π΄ΡΡΠΆΠΊΠ° Π½Π° PBMAC 1 (Password-Based Message Authentication Code 1, RFC 9579).
- Π ΡΡΠΈΠ»ΠΈΡΠ°ΡΠ° openssl ΡΠ° Π΄ΠΎΠ±Π°Π²Π΅Π½ΠΈ ΠΎΠΏΡΠΈΠΈΡΠ΅ β-not_beforeβ ΠΈ β-not_afterβ Π·Π° ΡΠ²Π½ΠΎ ΡΠΊΠ°Π·Π°Π½ΠΈΠ΅ Π½Π° Π½Π°ΡΠ°Π»Π½ΠΎΡΠΎ ΠΈ ΠΊΡΠ°ΠΉΠ½ΠΎΡΠΎ Π²ΡΠ΅ΠΌΠ΅ Π½Π° Π΄Π΅ΠΉΡΡΠ²ΠΈΠ΅ Π½Π° ΡΠ΅ΡΡΠΈΡΠΈΠΊΠ°ΡΠ°.
- ΠΡΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ Π·Π° ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π΅ Π½Π° ΠΏΡΠ΅Π΄Π²Π°ΡΠΈΡΠ΅Π»Π½ΠΎ ΠΈΠ·ΡΠΈΡΠ»Π΅Π½ΠΈ ΡΡΠΎΠΉΠ½ΠΎΡΡΠΈ ΠΏΡΠΈ ΠΈΠ½ΠΈΡΠΈΠ°Π»ΠΈΠ·Π°ΡΠΈΡ Π½Π° ΠΊΡΠΈΠΏΡΠΎΠ³ΡΠ°ΡΡΠΊΠΈ Π°Π»Π³ΠΎΡΠΈΡΠΌΠΈ Π½Π° Π±Π°Π·Π°ΡΠ° Π½Π° Π΅Π»ΠΈΠΏΡΠΈΡΠ½ΠΈ ΠΊΡΠΈΠ²ΠΈ P-256.
- ΠΠ΅ΠΊΠ»Π°ΡΠΈΡΠ°Π½ΠΈ Π·Π° ΠΎΡΡΠ°ΡΠ΅Π»ΠΈ ΡΡΠ½ΠΊΡΠΈΠΈ TS_VERIFY_CTX_set_*, ΠΊΠΎΠΈΡΠΎ ΡΠ° Π·Π°ΠΌΠ΅Π½Π΅Π½ΠΈ ΠΎΡ ΡΡΠ½ΠΊΡΠΈΠΈ TS_VERIFY_CTX_set0_* Ρ ΠΏΠΎΠ΄ΠΎΠ±ΡΠ΅Π½Π° ΡΠ΅ΠΌΠ°Π½ΡΠΈΠΊΠ°.
- ΠΠ΅ΠΊΠ»Π°ΡΠΈΡΠ°Π½ΠΈ Π·Π° ΠΎΡΡΠ°ΡΠ΅Π»ΠΈ ΡΡΠ½ΠΊΡΠΈΠΈ SSL_SESSION_get_time(), SSL_SESSION_set_time() ΠΈ SSL_CTX_flush_sessions(), Π²ΠΌΠ΅ΡΡΠΎ ΠΊΠΎΠΈΡΠΎ ΡΡΡΠ±Π²Π° Π΄Π° ΡΠ΅ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Ρ SSL_SESSION_get_time_ex(), SSL_SESSION_set_time_ex() ΠΈ SSL_CTX_flush_sessions_ex(), ΠΎΡΠ²ΠΎΠ±ΠΎΠ΄Π΅Π½ΠΈ ΠΎΡ ΠΏΡΠΎΠ±Π»Π΅ΠΌΠ° Ρ 2038 Π³ΠΎΠ΄ΠΈΠ½Π°.
- ΠΡΠ°ΠΊΠ²Π°Π½Π°ΡΠ° ΠΏΠΎΠ΄Π΄ΡΡΠΆΠΊΠ° Π½Π° ΠΏΡΠΎΡΠΎΠΊΠΎΠ»Π° QIUC Π² OpenSSL 3.4 ΡΡΡΠ²ΡΡ Π΅ ΠΎΡΠ»ΠΎΠΆΠ΅Π½Π° Π΄ΠΎ ΡΠ»Π΅Π΄Π²Π°ΡΠΎΡΠΎ ΠΈΠ·Π΄Π°Π½ΠΈΠ΅.
ΠΠ·Π΄Π°Π½ΠΈΠ΅ΡΠΎ Π½Π° ΠΏΡΠΎΠ΅ΠΊΡΠ° LibreSSL 4.0.0, ΡΠ°Π·Π²ΠΈΠ²Π°Ρ ΡΠΎΡΠΊ Π½Π° OpenSSL, ΡΠ΅Π»ΡΡΠΎ ΠΎΡΠΈΠ³ΡΡΡΠ²Π°Π½Π΅ΡΠΎ Π½Π° ΠΏΠΎ-Π²ΠΈΡΠΎΠΊΠΎ Π½ΠΈΠ²ΠΎ Π½Π° ΡΠΈΠ³ΡΡΠ½ΠΎΡΡ ΠΈ ΠΊΠ°ΡΠ΅ΡΡΠ²Π΅Π½Π° ΠΏΠΎΠ΄Π΄ΡΡΠΆΠΊΠ° Π½Π° ΠΏΡΠΎΡΠΎΠΊΠΎΠ»ΠΈΡΠ΅ SSL/TLS, Ρ ΠΏΡΠ΅ΠΌΠ°Ρ Π²Π°Π½Π΅ Π½Π° ΠΈΠ·Π»ΠΈΡΠ½Π°ΡΠ° ΡΡΠ½ΠΊΡΠΈΠΎΠ½Π°Π»Π½ΠΎΡΡ, Π΄ΠΎΠ±Π°Π²ΡΠ½Π΅ Π½Π° Π΄ΠΎΠΏΡΠ»Π½ΠΈΡΠ΅Π»Π½ΠΈ Π·Π°ΡΠΈΡΠ½ΠΈ ΡΡΠ΅Π΄ΡΡΠ²Π° ΠΈ Π·Π½Π°ΡΠΈΡΠ΅Π»Π½Π° ΠΏΡΠ΅ΡΠΈΡΡΠΊΠ° ΠΈ ΠΏΡΠ΅ΡΠ°Π±ΠΎΡΠΊΠ° Π½Π° ΠΊΠΎΠ΄ΠΎΠ²Π°ΡΠ° Π±Π°Π·Π°. ΠΠ½Π°ΡΠΈΡΠ΅Π»Π½Π°ΡΠ° ΡΠΌΡΠ½Π° Π½Π° Π²Π΅ΡΡΠΈΡΡΠ° Π΅ ΡΠ²ΡΡΠ·Π°Π½Π° Ρ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π΅ΡΠΎ Π½Π° Π΄Π΅ΡΠ΅ΡΠΈΡΠ½Π° Π½ΠΎΠΌΠ΅Π½ΠΊΠ»Π°ΡΡΡΠ° (ΡΠ»Π΅Π΄ 3.9 ΠΈΠ΄Π²Π° Π²Π΅ΡΡΠΈΡ 4.0). ΠΠ°ΠΉ-Π·Π°Π±Π΅Π»Π΅ΠΆΠΈΡΠ΅Π»Π½ΠΈΡΠ΅ ΠΏΡΠΎΠΌΠ΅Π½ΠΈ:
- ΠΠΎΠ±Π°Π²Π΅Π½Π° Π΅ Π½Π°ΡΠ°Π»Π½Π° ΠΏΠΎΠ΄Π΄ΡΡΠΆΠΊΠ° Π·Π° ΠΊΠΎΠΌΠΏΠΈΠ»Π°ΡΠΈΡ Ρ Emscripten, ΠΊΠΎΠΌΠΏΠΈΠ»Π°ΡΠΎΡ ΠΎΡ C/C++ Π² WebAssembly.
- Π ΠΊΠΎΠΌΠ°Π½Π΄Π°ΡΠ° βopenssl cmsβ Π΅ Π΄ΠΎΠ±Π°Π²Π΅Π½Π° ΠΎΠΏΡΠΈΡΡΠ° CRLfile Π·Π° ΡΠΊΠ°Π·Π²Π°Π½Π΅ Π½Π° Π΄ΠΎΠΏΡΠ»Π½ΠΈΡΠ΅Π»Π½ΠΈ ΡΠΏΠΈΡΡΡΠΈ Ρ ΠΎΡΡΠ΅Π³Π»Π΅Π½ΠΈ ΡΠ΅ΡΡΠΈΡΠΈΠΊΠ°ΡΠΈ (CRL), ΠΊΠΎΠΈΡΠΎ ΡΠ΅ Π±ΡΠ΄Π°Ρ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½ΠΈ ΠΏΡΠΈ Π²Π΅ΡΠΈΡΠΈΠΊΠ°ΡΠΈΡ.
- ΠΠΎΠ΄Π΄ΡΡΠΆΠΊΠ°ΡΠ° Π½Π° ΠΏΠ»Π°ΡΡΠΎΡΠΌΠ°ΡΠ° mips32 Π΅ ΠΏΡΠ΅ΠΊΡΠ°ΡΠ΅Π½Π°.
- ΠΠΎΡΡΡΠΏΡΡ Π΄ΠΎ ΡΡΠ½ΠΊΡΠΈΠΈ, Π½Π°ΠΏΠΈΡΠ°Π½ΠΈ Π½Π° Π°ΡΠ΅ΠΌΠ±Π»Π΅Ρ, ΠΏΡΠ΅Π· ΠΏΡΠ±Π»ΠΈΡΠ½ΠΈΡ API Π΅ ΠΏΡΠ΅ΠΊΡΠ°ΡΠ΅Π½ (ΠΏΠΎΠ΄ΠΎΠ±Π½ΠΈ ΡΡΠ½ΠΊΡΠΈΠΈ ΡΠ΅Π³Π° ΡΠ΅ ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²ΡΡ ΡΠ°ΠΌΠΎ ΡΡΠ΅Π· ΡΡΠ½ΠΊΡΠΈΠΈ-ΠΎΠ±Π²ΠΈΠ²ΠΊΠΈ Π½Π° Π΅Π·ΠΈΠΊΠ° C). ΠΡΠ΅ΠΌΠ±Π»Π΅ΡΠ½ΠΈ ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΠΈ Π½Π° ΠΎΡΡΠ°ΡΠ΅Π»ΠΈ Π°Π»Π³ΠΎΡΠΈΡΠΌΠΈ Π·Π° ΠΎΡΡΠ°ΡΠ΅Π»ΠΈ Π°ΡΡ ΠΈΡΠ΅ΠΊΡΡΡΠΈ ΡΠ° ΠΏΡΠ΅ΠΌΠ°Ρ Π½Π°ΡΠΈ.
- ΠΠΎΠ΄ΡΡ Π·Π° ΠΊΠ΅ΡΠΈΡΠ°Π½Π΅ Π½Π° Π²Π°Π»ΠΈΠ΄Π½ΠΎΡΡΡΠ° Π½Π° ΡΠ΅ΡΡΠΈΡΠΈΠΊΠ°ΡΠΈΡΠ΅ Π΅ ΠΏΡΠ΅ΠΌΠ°Ρ Π½Π°Ρ, Π·Π°ΡΠΎΡΠΎ Π΅ Π·Π°Π³ΡΠ±ΠΈΠ» ΡΠΌΠΈΡΡΠ» ΡΠ»Π΅Π΄ ΠΎΠΏΡΠΈΠΌΠΈΠ·Π°ΡΠΈΡΡΠ° Π½Π° ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»Π½ΠΎΡΡΡΠ°.
- ΠΠΎΠ΄ΠΎΠ±ΡΠ΅Π½Π° Π΅ ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΡΡΠ° Π½Π° ΡΠ°Π·ΡΠΈΡΠ΅Π½ΠΈΡΡΠ° X.509v3, ΡΠ½ΠΈΡΠΈΡΠΈΡΠ°Π½ΠΈ ΡΠ° ΠΌΠ΅ΡΠΎΠ΄ΠΈΡΠ΅ X.509v3 ΠΈ Π΅ ΠΏΡΠΎΠ²Π΅Π΄Π΅Π½Π° ΠΏΡΠ΅ΡΠΈΡΡΠΊΠ° Π½Π° ΡΠ²ΡΡΠ·Π°Π½ΠΈΡ Ρ X.509v3 API.
- Π Π΅Π°Π»ΠΈΠ·Π°ΡΠΈΡΡΠ° Π½Π° ΡΠΈΠΏΠ° CRYPTO_EX_DATA Π΅ Π½Π°ΠΏΡΠ»Π½ΠΎ ΠΏΡΠ΅Π½Π°ΠΏΠΈΡΠ°Π½Π°.
- Π libcrypto ΡΡΠ½ΠΊΡΠΈΠΈΡΠ΅ atoi() ΠΈ strtol() ΡΠ° Π·Π°ΠΌΠ΅Π½Π΅Π½ΠΈ Ρ strtonum().
- ΠΠΎΠ±Π°Π²Π΅Π½ Π΅ Π·Π°Π³Π»Π°Π²Π΅Π½ ΡΠ°ΠΉΠ» crypto_arch.h, Π² ΠΊΠΎΠΉΡΠΎ Π΅ ΠΈΠ·Π½Π΅ΡΠ΅Π½ ΠΊΠΎΠ΄, ΡΠΏΠ΅ΡΠΈΡΠΈΡΠ΅Π½ Π·Π° Π°ΠΏΠ°ΡΠ°ΡΠ½ΠΈ Π°ΡΡ ΠΈΡΠ΅ΠΊΡΡΡΠΈ.
- Π Π΅Π°Π»ΠΈΠ·Π°ΡΠΈΡΡΠ° Π½Π° Π°Π»Π³ΠΎΡΠΈΡΡΠΌΠ° DES Π΅ ΠΏΡΠ΅ΡΠ°Π±ΠΎΡΠ΅Π½Π° ΠΈ ΠΎΠΏΡΠΈΠΌΠΈΠ·ΠΈΡΠ°Π½Π°.
- ΠΠ°Π³Π»Π°Π²Π½ΠΈΡΠ΅ ΡΠ°ΠΉΠ»ΠΎΠ²Π΅ pem2.h, ssl2.h, ssl23.h ΠΈ ui_compat.h ΡΠ° ΠΏΡΠ΅ΠΌΠ°Ρ Π½Π°ΡΠΈ.
- ΠΠΎΠ΄Π΄ΡΡΠΆΠΊΠ°ΡΠ° Π½Π° Π°Π»Π³ΠΎΡΠΈΡΡΠΌΠ° Π·Π° Ρ Π΅ΡΠΈΡΠ°Π½Π΅ Whirlpool Π΅ ΠΏΡΠ΅ΠΌΠ°Ρ Π½Π°ΡΠ°.
- Π€ΡΠ½ΠΊΡΠΈΠΈΡΠ΅ HMAC_Init(), OPENSSL_load_builtin_modules(), X509_REQ_{get,set}_extension_nids(), X509_check_trust() ΡΠ° ΠΏΡΠ΅ΠΌΠ°Ρ Π½Π°ΡΠΈ.
- ΠΡΠ΅ΠΌΠ°Ρ Π½Π°ΡΠΈ ΡΠ° ΡΠΈΠΏΠΎΠ²Π΅ΡΠ΅ PEM_USER, PEM_CTX, COMP_CTX, COMP_METHOD, X509_CRL_METHOD, STORE, STORE_METHOD ΠΈ SSL_AEAD_CTX.
- Π libssl ΡΠ° Π΄ΠΎΠ±Π°Π²Π΅Π½ΠΈ ΡΡΠ½ΠΊΡΠΈΠΈΡΠ΅ SSL_CTX_set1_cert_store() ΠΈ SSL_CIPHER_get_handshake_digest().
ΠΠ°Π»ΠΈΡΠ½Π° Π΅ Π²Π΅ΡΡΠΈΡ 3.6.0 Π½Π° ΠΊΡΠΈΠΏΡΠΎΠ³ΡΠ°ΡΡΠΊΠ°ΡΠ° Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠ° Botan, ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π° Π² ΠΏΡΠΎΠ΅ΠΊΡΠ° NeoPG, ΠΎΡ ΠΊΠ»ΠΎΠ½Π° Π½Π° GnuPG 2. ΠΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠ°ΡΠ° ΠΏΡΠ΅Π΄Π»Π°Π³Π° Π³ΠΎΠ»ΡΠΌΠ° ΠΊΠΎΠ»Π΅ΠΊΡΠΈΡ ΠΎΡ Π³ΠΎΡΠΎΠ²ΠΈ ΠΏΡΠΈΠΌΠΈΡΠΈΠ²ΠΈ, ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½ΠΈ Π² ΠΏΡΠΎΡΠΎΠΊΠΎΠ»Π° TLS, ΡΠ΅ΡΡΠΈΡΠΈΠΊΠ°ΡΠΈ X.509, ΡΠΈΡΡΠΈ AEAD, ΠΌΠΎΠ΄ΡΠ»ΠΈ TPM, PKCS#11, Ρ Π΅ΡΠΈΡΠ°Π½Π΅ Π½Π° ΠΏΠ°ΡΠΎΠ»ΠΈ ΠΈ ΠΏΠΎΡΡΠΊΠ²Π°Π½ΡΠΎΠ²Π° ΠΊΡΠΈΠΏΡΠΎΠ³ΡΠ°ΡΠΈΡ (ΠΏΠΎΠ΄ΠΏΠΈΡΠΈ, Π±Π°Π·ΠΈΡΠ°Π½ΠΈ Π½Π° Ρ Π΅Ρ ΠΈ ΡΠΏΠΎΡΠ°Π·ΡΠΌΠ΅Π½ΠΈΠ΅ Π·Π° ΠΊΠ»ΡΡΠΎΠ²Π΅, ΠΎΡΠ½ΠΎΠ²Π°Π½ΠΎ Π½Π° McEliece). ΠΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠ°ΡΠ° Π΅ Π½Π°ΠΏΠΈΡΠ°Π½Π° Π½Π° C++ ΠΈ Π΅ ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π΅Π½Π° ΠΏΠΎΠ΄ BSD Π»ΠΈΡΠ΅Π½Π·. Π Π½ΠΎΠ²Π°ΡΠ° Π²Π΅ΡΡΠΈΡ:
- ΠΠ½ΡΠ΅Π³ΡΠΈΡΠ°Π½Π° Π΅ Π½ΠΎΠ²Π° Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠ° Ρ ΠΊΡΠΈΠΏΡΠΎΠ°Π»Π³ΠΎΡΠΈΡΠΌΠΈ, ΠΎΡΠ½ΠΎΠ²Π°Π½ΠΈ Π½Π° Π΅Π»ΠΈΠΏΡΠΈΡΠ½ΠΈ ΠΊΡΠΈΠ²ΠΈ, ΠΊΡΠ΄Π΅ΡΠΎ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΈΡΠ΅ Π½Π° Π±Π°Π·Π°ΡΠ° Π½Π° ΡΡΠ°Π½Π΄Π°ΡΡΠ½ΠΈ ΠΊΡΠΈΠ²ΠΈ ΡΠ΅ ΠΈΠ·Π²ΡΡΡΠ²Π°Ρ Ρ 2-3 ΠΏΡΡΠΈ ΠΏΠΎ-Π²ΠΈΡΠΎΠΊΠ° ΡΠΊΠΎΡΠΎΡΡ. ΠΡΠ΅Π΄Π»ΠΎΠΆΠ΅Π½ Π΅ ΠΈ Π½ΠΎΠ² API Π·Π° Π½ΠΈΡΠΊΠΎΡΡΠΎΠ²Π½Π΅Π²Π° ΡΠ°Π±ΠΎΡΠ° Ρ Π΅Π»ΠΈΠΏΡΠΈΡΠ½ΠΈ ΠΊΡΠΈΠ²ΠΈ.
- ΠΠΎΠ±Π°Π²Π΅Π½Π° Π΅ ΠΏΠΎΠ΄Π΄ΡΡΠΆΠΊΠ° Π·Π° Π½Π°ΡΠΊΠΎΡΠΎ ΡΡΠ°Π½Π΄Π°ΡΡΠΈΠ·ΠΈΡΠ°Π½ΠΈ Π² NIST Π°Π»Π³ΠΎΡΠΈΡΠΌΠΈ Π·Π° ΠΏΠΎΡΡΠΊΠ²Π°Π½ΡΠΎΠ²ΠΎ ΠΊΡΠΈΠΏΡΠΈΡΠ°Π½Π΅: FIPS 203 ML-KEM (Kyber), FIPS 204 ML-DSA (Dilithium) ΠΈ FIPS 205 SLH-DSA (SPHINCS+).
- ΠΠΎΠ±Π°Π²Π΅Π½Π° Π΅ ΠΏΠΎΠ΄Π΄ΡΡΠΆΠΊΠ° Π·Π° ΡΠΈΠΏΠΎΠ²Π΅ TPM2.
- Π Π°Π·ΡΠΈΡΠ΅Π½ΠΎ Π΅ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π΅ΡΠΎ Π½Π° ΠΈΠ·ΡΠΈΡΠ»Π΅Π½ΠΈΡ Ρ ΠΏΠΎΡΡΠΎΡΠ½Π΅Π½ Π²ΡΠ΅ΠΌΠ΅Π²ΠΈ ΠΈΠ½ΡΠ΅ΡΠ²Π°Π» Π·Π° Π·Π°ΡΠΈΡΠ° ΠΎΡ Π°ΡΠ°ΠΊΠΈ ΡΡΠ΅Π· ΡΡΡΠ°Π½ΠΈΡΠ½ΠΈ ΠΊΠ°Π½Π°Π»ΠΈ.
- ΠΠΎΠ±Π°Π²Π΅Π½Π° Π΅ Π³Π΅Π½Π΅ΡΠ°ΡΠΈΡ Π½Π° Π΄ΠΎΠΏΡΠ»Π½ΠΈΡΠ΅Π»Π½Π° Π΅Π½ΡΡΠΎΠΏΠΈΡ Ρ ΠΏΠΎΠΌΠΎΡΡΠ° Π½Π° Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠ°ΡΠ° jitterentropy.
- ΠΠΎΠ²ΠΈΡΠ΅Π½Π° Π΅ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»Π½ΠΎΡΡΡΠ° ΠΏΡΠΈ ΠΎΠ±ΡΠ°Π±ΠΎΡΠΊΠ° Π½Π° Π΄Π°Π½Π½ΠΈ Π² Ρ Π΅ΠΊΡΠ°Π΄Π΅ΡΠ΅ΡΠΈΡΠ΅Π½ ΡΠΎΡΠΌΠ°Ρ ΠΈ ΠΊΠΎΠ΄ΠΈΡΠΎΠ²ΠΊΠ° base64.
- ΠΠΎΠ±Π°Π²Π΅Π½Π° Π΅ ΠΏΠΎΠ΄Π΄ΡΡΠΆΠΊΠ° Π·Π° ΡΠ°Π·ΡΠΈΡΠ΅Π½ΠΈΡ Π½Π° ΠΏΡΠΎΡΠ΅ΡΠΎΡΠ° AVX2-VAES ΠΈ GFNI-AVX2.
- ΠΠΎΠ±Π°Π²Π΅Π½ΠΎ Π΅ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅ Π½Π° Π²ΡΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΠΈΡΠ΅ Π½Π° CPU armv7, aarch64 ΠΈ ppc64 Π½Π° ΠΏΠ»Π°ΡΡΠΎΡΠΌΠ°ΡΠ° OpenBSD.
- ΠΠΎΠ±Π°Π²Π΅Π½Π° Π΅ ΠΎΠΏΡΠΈΡ Π·Π° ΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡΠ°Π½Π΅ Π·Π° Π΄Π΅Π°ΠΊΡΠΈΠ²ΠΈΡΠ°Π½Π΅ Π½Π° Π²ΡΠΈΡΠΊΠΈ inline Π²ΡΡΠ°Π²ΠΊΠΈ Π½Π° Π°ΡΠ΅ΠΌΠ±Π»Π΅Ρ.
ΠΡΡΠ½Π°ΡΠ° Π΅ Π²Π΅ΡΡΠΈΡ Π½Π° ΠΏΡΠΎΠ΅ΠΊΡΠ° Rustls 0.23.15, ΡΠ°Π·Π²ΠΈΠ²Π°ΡΠ° ΠΊΠ»ΠΈΠ΅Π½ΡΡΠΊΠ° ΠΈ ΡΡΡΠ²ΡΡΠ½Π° ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΡ Π½Π° ΠΏΡΠΎΡΠΎΠΊΠΎΠ»ΠΈΡΠ΅ TLS1.2 ΠΈ TLS1.3 Π·Π° ΠΏΡΠΎΠ΅ΠΊΡΠΈ Π½Π° Rust. Rustls Π½Π΅ ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Ρ ΡΠΎΠ±ΡΡΠ²Π΅Π½Π° ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΡ Π½Π° ΠΊΡΠΈΠΏΡΠΎΠ³ΡΠ°ΡΡΠΊΠΈ ΠΏΡΠΈΠΌΠΈΡΠΈΠ²ΠΈ, Π° ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π° ΠΈΠ½ΡΡΠ°Π»ΠΈΡΠ°Π½ΠΈ Π΄ΠΎΡΡΠ°Π²ΡΠΈΡΠΈ Π½Π° ΠΊΡΠΈΠΏΡΠΎΠ³ΡΠ°ΡΡΠΊΠΈ ΡΡΠ½ΠΊΡΠΈΠΈ (ΠΏΠΎΠ΄Π΄ΡΡΠΆΠ°Ρ ΡΠ΅ Π°Π»Π³ΠΎΡΠΈΡΠΌΠΈ ECDSA, Ed25519, RSA, ChaCha20-Poly1305, AES128-GCM ΠΈ AES256-GCM). ΠΠΎ ΠΏΠΎΠ΄ΡΠ°Π·Π±ΠΈΡΠ°Π½Π΅ Π² Rustls ΡΠ΅ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π° ΠΊΡΠΈΠΏΡΠΎΠΏΡΠΎΠ²Π°ΠΉΠ΄ΡΡ Π½Π° Π±Π°Π·Π°ΡΠ° Π½Π° Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠ°ΡΠ° aws-lc-rs, ΡΠ°Π·Π²ΠΈΠ²Π°Π½Π° ΠΎΡ Amazon ΠΈ Π±Π°Π·ΠΈΡΠ°Π½Π° Π½Π° C++ ΠΊΠΎΠ΄Π° Π½Π° AWS-LC, ΠΊΠΎΠΉΡΠΎ ΠΏΡΠΎΠΈΠ·Π»ΠΈΠ·Π° ΠΎΡ ΠΏΡΠΎΠ΅ΠΊΡΠ° BoringSSL (ΠΏΠΎΠ΄Π΄ΡΡΠΆΠ°Π½ ΠΎΡ Google ΠΊΠ»ΠΎΠ½ Π½Π° OpenSSL). ΠΠ°ΡΠΎ ΠΊΡΠΈΠΏΡΠΎΠΏΡΠΎΠ²Π°ΠΉΠ΄ΡΡ ΠΌΠΎΠΆΠ΅ Π΄Π° ΡΠ΅ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π° ΠΈ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠ°ΡΠ° ring, ΡΠ°ΡΡΠΈΡΠ½ΠΎ ΠΎΡΠ½ΠΎΠ²Π°Π½Π° Π½Π° BoringSSL ΠΈ ΠΊΠΎΠΌΠ±ΠΈΠ½ΠΈΡΠ°ΡΠ° ΠΊΠΎΠ΄ Π½Π° Π°ΡΠ΅ΠΌΠ±Π»Π΅Ρ, C++ ΠΈ Rust.
ΠΠΎΠ²Π°ΡΠ° Π²Π΅ΡΡΠΈΡ Π΅ Π·Π°Π±Π΅Π»Π΅ΠΆΠΈΡΠ΅Π»Π½Π° Ρ Π·Π½Π°ΡΠΈΡΠ΅Π»Π½ΠΈ ΠΎΠΏΡΠΈΠΌΠΈΠ·Π°ΡΠΈΠΈ Π½Π° ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»Π½ΠΎΡΡΡΠ°. Π’Π²ΡΡΠ΄ΠΈ ΡΠ΅, ΡΠ΅ ΠΏΡΠΈ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π΅ΡΠΎ Π½Π° ΠΊΡΠΈΠΏΡΠΎΠΏΡΠΈΠΌΠΈΡΠΈΠ²ΠΈ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠ°ΡΠ° aws-lc-rs Π² Rustls ΡΠ΅Π³Π° ΠΈΠ·ΠΏΡΠ΅Π²Π°ΡΠ²Π° Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΈΡΠ΅ OpenSSL ΠΈ BoringSSL Π² ΡΠ΅ΡΡΠΎΠ²Π΅ΡΠ΅, ΠΈΠ·ΠΌΠ΅ΡΠ²Π°ΡΠΈ ΠΏΡΠΎΠΏΡΡΠΊΠ½Π° ΡΠΏΠΎΡΠΎΠ±Π½ΠΎΡΡ ΠΈ ΡΠΊΠΎΡΠΎΡΡ Π½Π° ΡΡΡΠ°Π½ΠΎΠ²ΡΠ²Π°Π½Π΅/Π²ΡΠ·ΠΎΠ±Π½ΠΎΠ²ΡΠ²Π°Π½Π΅ Π½Π° Π²ΡΡΠ·ΠΊΠ°ΡΠ°.

ΠΠ·ΡΠΎΡΠ½ΠΈΠΊ: opennet.ru
