Rebex Total Pack 7.0.8581

Released: Jun 29, 2023

Updates in 7.0.8581

Features

  • SFTP: You can now enable Settings.GetFileOpenRemoteFirst option by default.
  • FileTransferClient: Added EnableChecksumVerification and PreferredChecksumAlgorithm to FileTransferClient.Settings.
  • File Server: Added custom Context property to ConnectingEventArgs, PreAuthenticationEventArgs and AuthenticationEventArgs.
  • File Server: Added FileServer.Settings.MaxAuthenticationDuration option.
  • File Server: Changed default shell character encoding to UTF-8.
  • File Server: Improved client public key authentication process.
  • File Server: Optimized 'Move' operation in LocalFileSystemProvider.
  • File System: Added 'NodePath.IsBackslashInFileNameAllowed' property. Setting it to true allows '\' character in VFS node name.
  • FTP: You can now enable Settings.GetFileOpenRemoteFirst option by default.
  • FTP: Removed support for unsecure and outdated "Tumbleweed security" encryption mode.
  • FTP: Added Ftp.Settings.PreferredChecksumAlgorithm setting.
  • Mail: Added MailSettings.DoNotCloseStreamAfterLoad option.
  • Mail: Relaxed MSG property stream length check.
  • POP3: Improved behavior of Pop3.Disconnect on errors.
  • IMAP: Added support for IMAP PARTIAL extension.
  • IMAP: Enabled Special-Use extension (RFC 6154) by default.
  • EWS: Added protocol announcement via ALPN extension in TLS 1.2 or higher.
  • EWS: Added support for delayed sending to Ews.SendMessage method.
  • EWS: Improved reporting of unexpected errors from the TCP layer.
  • SSH Shell: Changed default shell character encoding to UTF-8.
  • Telnet: Added support for Telnet Environment Option (RFC 1572).
  • Security: Added Argon2 class which implements the Argon2 memory-hard password hash algorithm.
  • Security: Added Blake2b, Blake2b256, Blake2b384 and Blake2b512 classes which implement the BLAKE2 cryptographic hash and MAC algorithm.
  • Security: Added Rebex.Security.Cryptography.HKDF class.
  • HTTP: Added HttpSettings.UseLargeBuffers option.
  • HTTP: Added protocol announcement via ALPN extension in TLS 1.2 or higher.
  • HTTP: Improved reporting of unexpected errors from the TCP layer.
  • Networking: Added SslSettings.SslRenegotiationMode option.
  • Networking: No longer sending default domain in SSPI requests by default. Added new SslSettings.UseDefaultDomain property.
  • SSH: Added SshPublicKey.Parse method and a new overload for SshPublicKey.LoadPublicKeys.
  • SSH: Added support for ECDH and ECDSA with secp256k1 curve ('ecdh-sha2-1.3.132.0.10' and 'ecdsa-sha2-1.3.132.0.10').
  • SSH: Added support for SSH agents (OpenSSH agent and Pageant).
  • SSH: Now prefers ChaCha20/Poly1305 on platforms with HW intrinsics support.
  • TLS Core: Added public API for TLS 1.3 and TLS 1.2 signature algorithms.
  • TLS Core: Added public API for TLS 1.3 named groups and pre-shared key exchange modes configuration.
  • TLS Core: Added support for Ed25519 in TLS 1.2 (already supported in TLS 1.3).
  • TLS Core: Added support for modular Diffie-Hellman (FFDHE) in TLS 1.3.
  • TLS Core: ClientHello is now padded to 512 bytes to work around strange bugs in the erroneous TLS implementation on some servers.
  • TLS Core: Disabled client-initiated TLS renegotiation by default.
  • TLS Core: Enabled ChaCha20/Poly1305 ciphers by default on Microsoft .NET Core 3.1 / Microsoft .NET 5 or higher.
  • TLS Core: Changed the default order of cipher suites in ClientHello to more closely align with the best practices of the industry.
  • TLS Core: In TLS 1.2, support for Renegotiation Indication Extension is now announced using renegotiation_info extension.
  • TLS Core: The default selection of TLS 1.2 elliptic curves has been altered to more closely align with the best practices of the industry.
  • TLS Core: TlsServerSocket now honors TlsOptions.DoNotCacheSessions flag when TLS 1.3 is negotiated.
  • TLS Core: Updated default TLS 1.2 cipher preference order. Disabled 3DES by default. Added TlsCipherSuite.Common value.
  • TLS: Added API for TLS channel binding.
  • TLS: Added support for multiple certificate chains in TlsServerSocket.TlsClientHelloReceivedEventArgs.
  • Cryptography: Added API for CRL distribution endpoints with multiple CRL entries.
  • Cryptography: Added Certificate.Bind methods.
  • Cryptography: Added CertificateStoreName.WebHosting enum value.
  • Cryptography: Added CertificateStoreOpenFlags and corresponding CertificateStore constructors.
  • Cryptography: AesGcm and ChaChaPoly1305 classes have been moved from Rebex.Common assembly to Rebex.Security.
  • Cryptography: Certificate.Extensions collection is now read-only.
  • Cryptography: Deprecated EncryptValue/DecryptValue methods in RSAManaged class.
  • Cryptography: Improved loading of Y-less legacy DSA keys in FIPS-only mode on .NET 6/7 in Microsoft Windows.
  • Common: Optimized internal Task.Run methods on old platforms.
  • Common: Optimized internal WhenAll/WhenAny Task combinators on old platforms.
  • WebSocket: Added Options.CollectDetails and corresponding HttpStatusCode / HttpResponseHttpResponseHeaders properties.
  • WebSocket: Added support for WebSocket compression.
  • WebSocket: Improved reporting of unexpected errors from the TCP layer.

Fixes

  • Cryptography: Fixed legacy serialization CertificateException constructor.