4.5.0 New Feature: Added CoAP protocol support. New Feature: Added LabVIEW Timestamps to x509 function "Get Cert Dates.vi". New Feature: Added "Set Local Address.vi" so that a specific adapter can be defined for multi-adapter systems. Bug Fix: "Error 1556 occurred at Delete Data Value Reference" when using unencrypted (HTTP) connections. Bug Fix: Hash function Free.vi changed to re-entrant. Bug Fix: 64 bit srsslinit.dll windows file information was showing 32 bit details. Bug Fix: Now follows HTTP 307 redirect when redirect is enabled. Bug Fix: Fixed some numeric sign mismatches in socket API. Changes: Can now use coap[s] and mqtt[s] resource locations in URL's. Changes: Re-issued example certificates and increased expiry date. LVS-Tools Websocket test server will no longer accept the old certificates. Changes: MQTT wire colour changed to green to match icon palette (no functional change). Changes: Up issued OpenSSL binaries to 3.3.0 4.4.0 New Feature: Added DTLS protocol support and updated Client/Server examples to demonstrate. New Feature: Added PSK support and examples to demonstrate. New Feature: Added utility function (Get Enabled ciphers.vi) to get the ciphers that are enabled for a session. New Feature: Added utility function (Get client Connection.vi) to get the a clients address and port number. Bug Fix: Fixed VI descriptions on Certificate Inspector examples (file and HTTP). Bug Fix: Fixed "Get Connection Info" giving erroneous results and incorrect description. Changes: Removed Depricated "New.vi" from SSL library. Changes: Up issued OpenSSL binaries to 3.1.1 4.3.0 New Feature: Added MQTT protocol support and examples. Changes: Up issued OpenSSL binaries to 3.1.0 4.2.0 New Feature: Added HTTP events and updated examples to demonstrate. New Feature: Added Ping (ICMP Echo) functionality. Bug Fix: Fixed incorrect calling convention in two setsockopt functions. Changes: Increased buffer size for symetric encryption to significantly increase performance. Changes: Applied FASTLOOPBACK to TCP for improved localhost performance. Changes: Up issued OpenSSL binaries to 3.0.7 4.1.1 New Feature: Exposed the Owner ID and Group ID in SFTP Stat and updated SFTP Example. Bug Fix: Fixed HTTP hanging when retrieving web page with large headers. Bug Fix: Fixed repeated HTTP messages in Raw Response indicator. Bug Fix: Fixed HTTP URL being coerced to lowercase which affected sites that had mixed or uppercase chars. Bug Fix: Removed additional chars "\r\n" causing connection problems using HTTP Proxy. Bug Fix: Added missing Exmple Iterative Hash from palette. Bug Fix: HTTP Read Timeout was not being set for HTTP proxies (was fixed at 60000); Changes: Now uses non-blocking "connect" for improved performance. Changes: up issued libssh binaries to 0.10.4 4.1.0 New Feature: Added ED25519 and ED448 support and examples. New Feature: Added incremental hashing API and example. New Feature: Added X509 "V3 Set Netscape Comment". Sets a certificates "Netscape Comment" property. New Feature: Added X509 "V3 Set Basic Constraints". Sets a certificates "Basic constraints" (CA, Pathlen) property. New Feature: Added X509 "V3 Set SAN". Sets a certificates "Subject Alternative Name" property. New Feature: Added X509 "V3 Set Key Usage". Sets a certificates "key usage" property (Key Encipherment, Digital Signing etc). New Feature: Added X509 "V3 Set Extended Key Usage". Sets a certificates "extended key usage" property (TLS Web Server Authentication, TLS Web Client Authentication etc). New Feature: Added X509 "V3 Get Flags.vi". New Feature: Added X509 "V3 Get SAN.vi". New Feature: Added X509 "V3 Get Authority Key ID.vi". New Feature: Added X509 "V3 Get Subject Key ID.vi" New Feature: Added X509 "V3 Get Netscape Comment". New Feature: Added X509 "Set Certificate[DER]". Applies a DER encoded certifcate to the X509 object. New Feature: Added X509 "Set Certificate[PEM]". Applies a PEM encoded certifcate to the X509 object. New Feature: Added X509 "Get Cert Signature Info". Retrieves the security bits, cipher and hash used for signing. New Feature: Added X509 "Set Hash Method.vi". Signing can now accomplished while generating the keys without having to retrieve the PEM keys and sign separately. New Feature: Exposed SSH read timeout. Bug Fix: SFTP Abort error terminals were not available on the compane. Bug Fix: Example SFTP client opens when dropped, inline with the other examples. Bug Fix: RSA, DSA and ECSA Sign functions no longer have trailing null char in the string hex returned. Bug Fix: A couple of small memory leakes. Changes: SFTP Example Client download/upload rate calculation set to 0.5secs instead of zero. Changes: Changed the explanation text in [Websocket] Example Remote Client.vi to accurately reflect the process. Changes: Windows Certificate store now includes CA as well as ROOT subsystems. Changes: Increased the default SSH connect timeout from 10 seconds to 30 seconds for slow DNS. Changes: Migrated OpenSSL binaries to OpenSSL-3 from OpenSSL-1.1.1 (released with 3.0.3). Changes: Up-issued LibSSH binary to 0.9.6 4.0.0 New Feature: Added SFTP support and examples. New Feature: Added Websocket support and examples. New Feature: Added IPv6 support. New Feature: Added SSH Is Connected?. New Feature: Added the ability to use certificates from the Windows Certificate Store. Bug Fix: Fixed memory leak in X509 signing. Bug Fix: Fixed SSL read not terminating on requested number of bytes when in Standard mode-was returning all bytes. Bug Fix: Fixed duplicate content-length in header for POST. Changes: Changed SSL Icons to TLS since SSL is deprecated. Changes: Listener address is now dictated by an address string rather than a cluster. This is an interface breaking change to include IPv6. Changes: All API polymorphic names are now uppercase and functions for returning information end with a question mark. This has no impact on the interface. 3.1.0 New Feature: Added HTTP POST Multi-part. New Feature: Added URL Encode and Decode for percent encoding. New Feature: Added the ability to retrieve the compressed and hybrid forms of public EC hex keys. New Feature: Added CMAC hash support. New Feature: Added Set URL so that connections can be reused for different locations. Bug Fix: Fixed HTTP functions not truncating to content-length. Bug Fix: Fixed various errors in HTML help. Change: Up-issued OpenSSL binaries to 1.1.1k Change: Up-issued LibSSH binary to 0.9.5 3.0.2 Bug Fix: Fixed crash when generating RSA certificates. Bug Fix: Fixed Blake Hash producing MD4 hash when generating certificates. Bug Fix: Fixed various help documentation issues. New Feature: Added Get Private Key[HEX].vi Change: Up-issued OpenSSL binaries to 1.1.1i 3.0.1 Bug Fix: Fixed incorrect binary location when installed for LabVIEW 2020 32 bit. 3.0.0 New Feature: Added RSA encryption and decryption. New Feature: Added RSA enrypt /decrypt example. New Feature: Added HTTP GET, POST support. New Feature: Added "Example SSL HTTP Client GET" and "Example SSL HTTP Client POST" examples. New Feature: Added SHA3 support (includes Shake and Blake algorithms). New Feature: Added support for TLS1.3. Bug Fix: Fixed failure when encrypting large (>2G) files. Change: Added explicit error for when trying to encrypt a file with zero length. Change: Up issued OpenSSH binary to 0.9.4 Change: "DH and ECDH parameters" on "New" now only accepts an underscore as a separator for DH keysize. Change: No longer dependent on National Instruments OpenSSL binaries. Distributed with OpenSSL 1.1.1g binaries. Change: "EDCA New" default (unwired) curve changed to prime256v1 from secp256k1. Change: Proxy connections now adds cache and keep-alive headers. Change: Cipher List is now comprised of two fields. One for TLS1.3 and one for the lower versions.(refer to https://wiki.openssl.org/index.php/TLS1.3#Ciphersuites) 2.2.1 Bug Fix: Fixed error in SSH Cmd that would cause excessive CPU usage when no text returned from server. Bug Fix: Fixed error in creating a "New" symmetric instance when no (empty) password applied. Error due to changed behaviour of OpenSSL from previous versions. 2.2.0 New Feature: Removed the 80 character line limitation to the Base64 Encode. New Feature: Added Lan Manager authentication hashes (LM, LM2, NT, NTLMv2) to the Hash polymorphic VI. New Feature: Added NTLMv2 HTTP proxy authentication to SSL library. Bug Fix: Fixed broken link to Rand page in the help Changes: Hash Vis changed from subroutines to normal re-entrant for easier user debugging. Changes: Hash Vi string inputs now "required" instead of "recommended". 2.1.0 New Feature: Added a connection status indicator to "Get Connection Info" of the SSL library. New Feature: Added "Get Connection Status" to the SSL library as the corollory to that in SSH. New Feature: Added SSH Write Event. New Feature: Added SSH forward tunneling capabilities. New Feature: Added SSH forward tunneling example. New Feature: Added HTTPS CONNECT proxy support to SSL (Basic Authentication only). New Feature: Added SOCKS5 proxy support to SSL (only username/password authentication currently supported - methods "0" and "2"). New Feature: Added a "Custom Proxy" method that allows control over proxy connections before TLS handshaking. New Feature: Added "Set Nagle Algorithm" to enable and disable the connection Nagle algorithm. New Feature: Added "Set Keep Alive" to enable and disable the connection Keep Alive features. New Feature: "Bytes in buffer" indicator to the SSL Read.vi. Bug Fix: Changed Read.vi description to reflect the mode features and no longer limited to 16KB chunks. Bug Fix: Fixed some documentation errors in the help. Changes: Updated the "Example SSL HTTP Client" to add proxy parameters. Changes: Updated the HTTP Cexamples' text strings to comply with more formal HTTP headers. 2.0.0 New Feature: Added SSH client capabilities. New Feature: Added SSH Execute Command example. New Feature: Added SSH Simple Terminal example. Bug Fix: Fixed x509 signing fails with #218906840 INVALID OBJECT ENCODING (Issue #36) Changes: Removed support for Mac OS X due to lack of demand. Changes: Swapped BTC Private Key2WIF.vi with its polymorphic instance in Example BTC Vanity Address. Changes: Changed button text "OK" to "STOP" in Example BTC Vanity Address. Changes: Changed "Example SSL HTTP Client.vi" detection of the string to use "Match Regular Expression" instead of "Match Pattern". Changes: SSL perfromance improved. 1.1.0 New Feature: Added "Timeout", "Bytes To Read" and "Method" to the Read.vi which now emulates the native labview TCPIP primitives. New Feature: Added ECDHE and DHE ephemeral key echanges. New Feature: Added Eliptic curve and DSA certificate generation. New Feature: Added verson information to srsslinit binaries. Bug Fix: Fixed intermittent crash when multiple simultanious data clients/servers are run in parallel. Bug Fix: Removed X509_Add_Ext.vi from palettes Changes: Updated Example X509 Certificates.vi to demonstrate creation of EC, DSA and RSA certificates . Changes: Added "Signature Method" control to X509 NEW so that EC & DSA certificates can be produced in addition to RSA. Changes: Added parameter control to SSL NEW for defining a curve or keys size to use for ephemeral ECDH and DH (ECDHE & DHE). Changes: Formatted returned error strings to make clearer. Changed: Changed default SSL cipher string from "ALL" to "ALL:!SSLv3:!SSLv2:@STRENGTH". Changes: Moved "Conversion.vi" Polymorphic VI to "Utilities" palette from "Asym" palette. Initial release 1.0.3