Yerel TLS (iohNativeTLS)
sgcCrypto birimleri üzerine tamamen Object Pascal ile yazılmış bir TLS 1.3 ve TLS 1.2 uygulaması, bu yüzden Windows, Linux, macOS, iOS ya da Android'de dağıtılacak hiçbir şey yoktur. Bir istemcide TLSOptions.IOHandler := iohNativeTLS, bir sunucuda SSLOptions.IOHandler := iohNativeTLS ayarlayın; IOCP ve EPOLL sunucu motorları dahildir. TLSOptions.NativeTLS_Options.Groups ve TLSOptions.NativeTLS_Options.CipherSuites, iki nokta üst üste ile ayrılmış OpenSSL tarzı listeler alır. Varsayılan değerleri X25519MLKEM768:X25519:secp256r1:secp384r1 ve TLS_AES_256_GCM_SHA384:TLS_CHACHA20_POLY1305_SHA256:TLS_AES_128_GCM_SHA256 artı TLS 1.2 varsayılanları olarak gelir, böylece destekleyen bir eşe karşı yapılan el sıkışma hiçbir yapılandırma olmadan kuantum sonrası hibrittir.
TLS 1.3 ve TLS 1.2. İstemcide TLSOptions.Version, sunucuda SSLOptions.Version, izin verilen en düşük sürümdür: tls1_2 ya da tlsUndefined TLS 1.3 ya da TLS 1.2'yi müzakere eder, tls1_3 ise yalnızca TLS 1.3'e izin verir. Yalnızca TLS 1.2 için, NativeTLS_Options.CipherSuites içinde yalnızca TLS 1.2 şifreleme paketlerini listeleyin. TLS 1.2, varsayılan olarak AES-128-GCM, AES-256-GCM ve ChaCha20-Poly1305 ile ECDHE_ECDSA ve ECDHE_RSA sunar; ECDHE AES-CBC paketleri ve RSA anahtar değişimi yalnızca siz adlandırdığınızda bulunur. X25519, secp256r1 ya da secp384r1 kullanır, çünkü hibrit kuantum sonrası gruplar yalnızca TLS 1.3'te bulunur. TLS 1.2, RFC 7627'nin genişletilmiş ana sırrı ve her iki tarafta da RFC 8446 düşürme korumasıyla gelir, ayrıca yeniden müzakereyi ve SHA-1 imzalarını reddeder.
Neleri yapmaz. Motor yalnızca TLS 1.3 ve TLS 1.2 konuşur, TLS 1.1, TLS 1.0 ya da SSL yoktur. Oturum devam ettirme ve PSK yoktur, 0-RTT ve QUIC yoktur. Güvenilen kökler TLSOptions.RootCertFile dosyasından gelir, artı NativeTLS_Options.UseSystemRoots True olduğunda işletim sisteminin güvendiği kökler; bunlar Windows ROOT deposundan ya da bir CA paket dosyasından okunur ve macOS ya da iOS anahtarlığından veya Android deposundan asla okunmaz; bileşen olayı OnSSLVerifyPeer bu motorda kullanılamaz, motorun kendi doğrulama kancaları vardır. Bunlardan birine ihtiyacınız varsa OpenSSL'de ya da bir platform arka ucunda kalın.
sgcCrypto'nun bir parçasıdır, bu yüzden Standard sürümünden itibaren ve bağımsız sgcCrypto paketinde yer alır.