தொகுதி கிரிப்டோ-கோஸ்ட்-டிஎல்எஸ்13 செயலாக்கத்தைக் கொண்டுள்ளது TLS 1.3 (RFC 8446 + RFC 9367) GOST மறைகுறியாக்கத்துடன். இந்த வெளியீடு, நூலகத்தின் ஆரம்பப் பதிப்பாகும் மற்றும் உள் பயன்பாட்டிற்குத் தயாராக உள்ளது.
இந்த லைப்ரரியின் ஒரு தனித்துவமான அம்சம், இது முற்றிலும் ஜாவாவில் செயல்படுத்தப்பட்டிருப்பதுதான். அனைத்து குறியாக்கச் செயல்பாடுகளும், எந்தவொரு வெளிப்புறச் சார்புகளும் இன்றி, லைப்ரரியின் உள்ளமைக்கப்பட்ட கருவிகளைப் பயன்படுத்தியே செய்யப்படுகின்றன.
ஜாவாவில் GOST உடன் கூடிய TLS 1.3-இன் முதல் திறந்த மூலச் செயலாக்கங்களில் இதுவும் ஒன்றாகும், எனவே இடைசெயல்பாட்டுச் சோதனை முடிந்தவரை குறைந்தபட்ச அளவில் செய்யப்பட்டுள்ளது.
நூலகத்தின் திறன்கள் கீழே கொடுக்கப்பட்டுள்ளன.
- நெறிமுறைகள்:
- ஹேண்ட்ஷேக்: முழுமையானது (கிளையன்ட்/சர்வர்), குறுகியது (PSK), பரஸ்பரமானது (mTLS).
- ALPN (RFC 7301) - பயன்பாட்டு அடுக்கு நெறிமுறைப் பேச்சுவார்த்தை (HTTP/2, HTTP/1.1).
- SNI (RFC 6066) - பெயர்க் குறிப்பு சர்வர் பல பயனர் நிறுவல்களுக்கு.
- KeyUpdate (RFC 8446 §4.6.3) – தரவுப் பரிமாற்ற மறையாக்கத் திறவுகோல்களைப் புதுப்பித்தல்.
- சைபர் தொகுப்புகள்: TLS_KUZNYECHIK_MGM_STREEBOG_256_L/S.
- ECDHE: கிரிப்டோப்ரோ-ஏ (256-பிட்), கிரிப்டோப்ரோ-பி (512-பிட்)
- ஒவ்வொரு பதிவிற்குமான TLSREE மறுதிறவுகோல் அமைத்தல் — ஒவ்வொரு TLS பதிவிற்குமான குறியாக்கத் திறவுகோலை மாற்றுதல்.
- கைக்குலுக்கல்கள் மற்றும் பதிவேடுகளின் துண்டாக்கம் மற்றும் மறுசீரமைப்பு (RFC 8446 §5.1).
- அமர்வு மீண்டும் தொடங்குதல்: NewSessionTicket வழியாக PSK (PskStore நினைவகத்தில், ஒருமுறை மட்டுமே பயன்படுத்தக்கூடியது).
- OCSP ஸ்டேப்ளிங்: சர்வர் OCSP பதிலைச் சான்றிதழுடன் இணைக்கிறது.
- கைக்குலுக்கலுக்குப் பிந்தைய செய்திகள்: NewSessionTicket (PSK-ஐத் தவிர).
- குறியாக்கவியல்:
- முக்கிய அட்டவணை: TLS 1.3 (RFC 8446 §7.1) வழியாக HKDF-Streebog (RFC 5869).
- பதிவுப் பாதுகாப்பு: RFC 8446 §5.3-இன் படி நான்ஸ் (nonce) உடனான MGM-AEAD (Kuznyechik).
- தற்காலிக சாவிகள் பயன்பாட்டிற்குப் பிறகு அழிக்கப்படுகின்றன.
- சான்றிதழ்கள்:
- X.509v3 பாகுபடுத்தல் (GOST R 34.10-2012) — உள்ளமைக்கப்பட்ட DER பாகுபடுத்தி.
- சரிபார்ப்புச் சங்கிலி: கையொப்பங்கள், DN (வெளியீட்டாளர் → பொருள்), அடிப்படைக் கட்டுப்பாடுகள், திறவிப் பயன்பாடு, விரிவாக்கப்பட்ட திறவிப் பயன்பாடு (சர்வர் அங்கீகாரம் / கிளையன்ட் அங்கீகாரம்), பாதை நீளம்.
- ஹோஸ்ட்பெயர் சரிபார்ப்பு: dNSName + iPAddress (RFC 6125).
- OCSP பதில்களின் சரிபார்ப்பு (RFC 6960).
4.போக்குவரத்து:
- TlsTransport - இடைமுகம்.
- InMemoryTlsTransport - சோதனைகள் மற்றும் ஒற்றைச் செயல்முறை சூழல்களுக்கு (நினைவக வரிசை).
- SocketTlsTransport — java.net.Socket வழியாக நடைபெறும் தடுக்கும் உள்ளீடு/வெளியீடு.
- ChannelTlsTransport - NIO சாக்கெட் சேனல் அடிப்படையிலான போக்குவரத்து (தடுப்பு முறை, குறுக்கிடக்கூடியது).
- படிப்படியான கைக்குலுக்கல்:
- TlsHandshakeEngine என்பது ஹேண்ட்ஷேக்கிற்கான (I/O-விலிருந்து பிரிக்கப்பட்ட) ஒரு ஸ்டேட் மெஷின் ஆகும். இது TlsSession-ஐ ஒரு ஆர்கெஸ்ட்ரேட்டராகப் பயன்படுத்துகிறது மற்றும் JSSE (SSLEngine) உடன் ஒருங்கிணைப்பதற்கு ஏற்றதாக உள்ளது.
- பைட்பஃபர் ஏபிஐ:
- TlsRecord.protect/unprotect — NIO உடனான பூஜ்ஜிய-நகல் ஒருங்கிணைப்பிற்கான ByteBuffer ஓவர்லோடுகள். சாவிகள் ஏற்றப்படுகின்றன:
- Pkcs12Loader — PBKDF2-HMAC-SHA256 + AES-256-CBC ஐப் பயன்படுத்தி PFX (PKCS#12) ஐப் படிக்கிறது.
- அமர்வு நிறைவு:
- close_notify - நெறிமுறையின்படி சரியான முறையில் மூடுதல்.
- மூடும்போதோ அல்லது பிழை செய்யும்போதோ முக்கிய உள்ளடக்கங்கள் அழிக்கப்படுதல்.
- கையாளுதல் எச்சரிக்கை: அபாயகரமானது - உடனடியாக மூடப்பட்டு அழிக்கப்படுகிறது.
- செயல்படுத்தல் பாதுகாப்பு:
- verify_data மற்றும் PSK பைண்டர்களுக்கான மாறா நேர ஒப்பீடுகள் (நேரத் தாக்குதல்களுக்கு எதிரான பாதுகாப்பு)
- திறவுகோல் உள்ளடக்கத்தை அழித்தல்: மூடும்போது, திறவுகோல்களைக் கொண்ட அனைத்துப் பொருள்களிலும் (TlsKeySchedule, TlsTrafficKeys, TlsRecord, HandshakeContext) destroy() செயல்பாடு, அபாயகரமான எச்சரிக்கை, கைக்குலுக்கலில் விதிவிலக்கு.
- DoS பாதுகாப்பு: சான்றிதழ் சங்கிலி நீளம் (10), கைக்குலுக்கலுக்குப் பிந்தைய செய்திகள், பதிவு அளவு ஆகியவற்றின் மீதான வரம்புகள்.
- MGM நான்ஸ்: முதல் பைட்டின் MSB, ICN-க்காகத் தெளிவுபடுத்தப்பட்டுள்ளது (RFC 9058 §3, RFC 9367 §3.3).
- ஹேண்ட்ஷேக் முடிந்த பிறகு, ECDHE பிரைவேட் கீ மற்றும் ஹேண்ட்ஷேக் டிரான்ஸ்கிரிப்ட் அழிக்கப்படுகின்றன.
- பயன்பாட்டிற்குப் பிறகு HMAC திறவுகோல் உள்ளடக்கம் அழிக்கப்படுகிறது (HkdfStreebog, KdfGostR3411_2012_256).
- கட்டுப்பாடுகள்:
- தொடர்செயல் PSK மட்டும் (0-RTT மற்றும் வெளிப்புற PSK ஆதரிக்கப்படவில்லை).
- psk_dhe_ke மட்டுமே ஆதரிக்கப்படுகிறது (ECDHE இல்லாத தூய PSK ஆதரிக்கப்படவில்லை).
- HelloRetryRequest (RFC 8446 §4.1.4) ஆதரிக்கப்படவில்லை - ஒரே ஒரு பெயரிடப்பட்ட குழு மட்டுமே பயன்படுத்தப்படுகிறது (இயல்புநிலையாக GC256A).
- GOST மட்டும் (GOST அல்லாத மறைகுறியீட்டுத் தொகுப்புகள் ஆதரிக்கப்படவில்லை).
- சோதனை:
- இந்த நூலகத்தில், RFC 9367 பின் இணைப்பு A.1-இல் உள்ள அறியப்பட்ட விடைத் தேர்வுகள் (L மற்றும் S வகைகள்) — அதாவது முழுமையான விடை அட்டவணை, TLSTREE, AEAD, மற்றும் ECDHE ஆகியவை உள்ளன. மேலும் இது, KAT தேர்வுகளின் முழு வரம்பிலும் தேர்ச்சி பெறுகிறது.
- உண்மையான TCP சாக்கெட்டுகள் வழியாக 4 ஒருங்கிணைப்புச் சோதனைகள் (தன்னியக்க இடைசெயல்).
- பார்சர்களுக்கான ஃபஸ் சோதனைகள்: பாதுகாப்பை உறுதி செய்வதற்கும், பார்சர்கள் மீதான தாக்குதல் வாய்ப்பைக் குறைப்பதற்கும் TlsMessageParser (8 மெத்தட்கள்), TlsDerParser (3 மெத்தட்கள்), TlsOcspVerifier (1 மெத்தட்).
- கட்டடக்கலைத் தீர்வுகள்:
- TlsHandshakeEngine - உள்ளீடு/வெளியீட்டிலிருந்து பிரிக்கப்பட்ட நிலை இயந்திரம் (எதிர்கால JSSE தொகுதிக்காக).
- NIO/JSSE-க்கான TlsRecord.protect/unprotect-இன் ByteBuffer மேலதிகப் பயன்பாடுகள்.
- TLSTREE கேச் (TlsTreeCache) - மாற்றப்பட்ட நிலைகளை மட்டும் மறு கணக்கீடு செய்தல் (RFC 9367).
- InMemoryTlsTransport.Pair என்பது சோதனைகள் மற்றும் ஒற்றைச் செயல்முறைத் தொடர்புக்கான ஒரு இருவழி இணை ஆகும்.
இந்த நூலகம் இலவச உரிமத்தின் கீழ் விநியோகிக்கப்படுகிறது.
ஆதாரம்: linux.org.ru
