ʻO ka hoʻokuʻu mua ʻana o ka hoʻokō ʻana o ka protocol TLS 1.3 ma Java me nā algorithm GOST e like me RFC 9367

Module crypto-gost-tls13 aia ka hoʻokō ʻana TLS 1.3 (RFC 8446 + RFC 9367) me ka cryptography GOST. ʻO kēia hoʻokuʻu ka mana mua o ka waihona puke a ua mākaukau no ka hoʻohana kūloko.

ʻO kahi hiʻohiʻona kūikawā o ka waihona puke ʻo ia ka hoʻokō ʻana o Java maʻemaʻe. Hana ʻia nā hana cryptographic āpau me ka hoʻohana ʻana i nā mea hana i kūkulu ʻia o ka waihona puke, me ka ʻole o nā hilinaʻi o waho.

ʻO kēia kekahi o nā hoʻokō kumu wehe mua o TLS 1.3 me GOST ma Java, no laila ua hana ʻia ka hoʻāʻo interop i ka palena iki loa.

Aia ma lalo nā hiki o ka waihona puke.

  1. Nā Kūlana:
  • Lūlū lima: piha (mea kūʻai aku/kikowaena), pōkole (PSK), like (mTLS).
  • ALPN (RFC 7301) - Kūkākūkā ʻana o ka Protocol Papa Noi (HTTP/2, HTTP/1.1).
  • SNI (RFC 6066) - Hōʻike inoa kikowaena pūnaewele no nā hoʻolaha ʻana he nui nā mea hoʻolimalima.
  • KeyUpdate (RFC 8446 §4.6.3) – ke hōʻano hou nei i nā kī hoʻopāʻālua kalepa.
  • Nā hui kīpē: TLS_KUZNYECHIK_MGM_STREEBOG_256_L/S.
  • ECDHE: CryptoPro-A (256-bit), CryptoPro-B (512-bit)
  • Ke hoʻololi hou ʻana o TLSTREE no kēlā me kēia moʻolelo — ke hoʻololi nei i ke kī hoʻopāʻālua no kēlā me kēia moʻolelo TLS.
  • Ka ʻāpana ʻana a me ka hoʻākoakoa hou ʻana o nā lulu lima a me nā moʻolelo (RFC 8446 §5.1).
  • Hoʻomaka hou ʻana o ka hālāwai: PSK ma o NewSessionTicket (PskStore i loko o ka hoʻomanaʻo, hoʻohana hoʻokahi).
  • Ke kāpili ʻana o OCSP: kikowaena hoʻohui i ka pane OCSP i ka palapala hōʻoia.
  • Nā leka ma hope o ke kuʻikahi lima: NewSessionTicket (koe wale no PSK).
  1. Ka hoʻopunipuni:
  • Papa kuhikuhi koʻikoʻi: HKDF-Streebog (RFC 5869) ma luna o TLS 1.3 (RFC 8446 §7.1).
  • Ka palekana moʻolelo: MGM-AEAD (Kuznyechik) me ka nonce e like me RFC 8446 §5.3.
  • Holoi ʻia nā kī ephemeral ma hope o ka hoʻohana ʻana.
  1. Palapala:
  • X.509v3 parsing (GOST R 34.10-2012) — mea parser DER i kūkulu ʻia.
  • Kaulahao hōʻoia: nā pūlima, DN (mea hoʻopuka → kumuhana), Nā Palena Kumu, Hoʻohana Kī, Hoʻonui Kī * Hoʻohana (serverAuth / clientAuth), pathLen.
  • Nānā inoa kikowaena: dNSName + iPAddress (RFC 6125).
  • Ka hōʻoia ʻana o nā pane OCSP (RFC 6960).

4.Kahua:

  • ʻO TlsTransport - ka pilina.
  • InMemoryTlsTransport - no nā hoʻāʻo a me nā hiʻohiʻona hana hoʻokahi (laina i loko o ka hoʻomanaʻo).
  • SocketTlsTransport — ke ālai nei i ka I/O ma luna o java.net.Socket.
  • ChannelTlsTransport - NIO SocketChannel-based transport (ʻano ālai, hiki ke hoʻopilikia ʻia).
  1. Lūlū lima ʻanuʻu:
  • He mīkini mokuʻāina ʻo TlsHandshakeEngine no ka handshake (hoʻokaʻawale ʻia mai I/O). Hoʻohana ia iā TlsSession ma ke ʻano he orchestrator a kūpono no ka hoʻohui ʻana me JSSE (SSLEngine).
  1. API ByteBuffer:
  • TlsRecord.protect/unprotect — Hoʻouka nui ʻo ByteBuffer no ka hoʻohui kope ʻole me NIO. Ke hoʻouka nei i nā kī:
  • Pkcs12Loader — ke heluhelu nei iā PFX (PKCS#12) me PBKDF2-HMAC-SHA256 + AES-256-CBC.
  1. Pau ka hālāwai:
  • close_notify - hoʻoponopono i ka pani ʻana e like me ke kaʻina hana.
  • Ka holoi ʻana i nā mea koʻikoʻi i ka wā e pani ai a hana hewa paha.
  • Makaʻala lawelawe: make - pani koke + holoi ʻana.
  1. Palekana hoʻokō:
  • Nā hoʻohālikelike manawa mau no nā mea hoʻopaʻa verify_data a me PSK (pale ʻana mai nā hoʻouka kaua manawa)
  • Ke holoi nei i nā mea kī: destroy() ma nā mea āpau me nā kī (TlsKeySchedule, TlsTrafficKeys, TlsRecord, HandshakeContext), ma kahi kokoke, makaʻala make, ʻokoʻa i ka hoʻoluliluli lima
  • Ka palekana DoS: nā palena ma ka lōʻihi o ke kaulahao palapala hōʻoia (10), nā leka ma hope o ka lulu lima ʻana, ka nui o ka moʻolelo.
  • MGM nonce: Ua hoʻomaʻemaʻe ʻia ka MSB o ka byte mua no ICN (RFC 9058 §3, RFC 9367 §3.3).
  • Ua luku ʻia ke kī pilikino ECDHE a me ka palapala hoʻokuʻi lima ma hope o ka pau ʻana o ke kuʻi lima.
  • Holoi ʻia nā mea koʻikoʻi HMAC ma hope o ka hoʻohana ʻana (HkdfStreebog, KdfGostR3411_2012_256).
  1. Nā palena:
  • Hoʻomaka hou ʻana i ka PSK wale nō (ʻaʻole kākoʻo ʻia ʻo 0-RTT a me PSK waho).
  • ʻO psk_dhe_ke wale nō (ʻaʻole kākoʻo ʻia ka PSK maʻemaʻe me ka ʻole o ECDHE).
  • ʻAʻole kākoʻo ʻia ʻo HelloRetryRequest (RFC 8446 §4.1.4) - hoʻokahi wale nō hui i kapa ʻia i hoʻohana ʻia (GC256A ma ka paʻamau).
  • ʻO GOST wale nō (ʻaʻole kākoʻo ʻia nā suites cipher ʻaʻole GOST).
  1. hoʻāʻo:
  • Aia i loko o ka waihona puke nā Hoʻāʻo Pane i ʻIke ʻia mai RFC 9367 Appendix A.1 (nā ʻano L a me S)—ka papa kuhikuhi kī piha, TLSTREE, AEAD, a me ECDHE. Ua hala pū ia i nā ʻano hoʻāʻo KAT āpau.
  • 4 mau hoʻāʻo hoʻohui (self-interop) ma o nā sockets TCP maoli.
  • Nā hoʻāʻo Fuzz no nā parser: TlsMessageParser (8 mau ʻano), TlsDerParser (3 mau ʻano), TlsOcspVerifier (1 ʻano), e hōʻoia i ka palekana a hoʻemi i ka vector hoʻouka ma nā parser.
  1. Nā hoʻonā hoʻolālā hale:
  • ʻO TlsHandshakeEngine - ua hoʻokaʻawale ʻia ka mīkini mokuʻāina mai I/O (no ka module JSSE e hiki mai ana).
  • Hoʻouka nui ʻo ByteBuffer iā TlsRecord.protect/unprotect no NIO/JSSE.
  • TLSTREE cache (TlsTreeCache) - ka helu hou ʻana o nā pae i hoʻololi wale ʻia (RFC 9367).
  • He pālua bidirectional ʻo InMemoryTlsTransport.Pair no nā hoʻāʻo a me ke kamaʻilio kaʻina hana hoʻokahi.

Hoʻolaha ʻia ka waihona puke ma lalo o kahi laikini manuahi.

Source: linux.org.ru

E kūʻai i ka hoʻokipa hilinaʻi no nā pūnaewele me ka pale DDoS, nā kikowaena VPS VDS 🔥 E kūʻai i ka hoʻokipa pūnaewele hilinaʻi me ka pale DDoS, nā kikowaena VPS VDS | ProHoster