HTTPS WebGet client with TLS 1.2 and SHA-2 support (.NET Compact Framework)
HTTPS WebGet client with TLS 1.2 and SHA-2 support.
Windows Mobile OS's do not support SHA-2 algorithms which results in inability to validate SHA-2 based certificates so you are unable to connect from these old .NET CF devices. Luckily Rebex HTTPS component solves it by providing custom HttpRequestCreator. This sample demonstrates:
- Connecting to HTTPS servers (SSL 3.0, TLS 1.0-TLS 1.2 supported) with Rebex HttpRequestCreator.
- Validating the server certificate (automatic)
- Using the Rebex HTTPS API to register Rebex HttpRequestCreator.
- Logging the HTTPS communication to file (various verbose levels available)
- Fine tuning TLS properties - some slower devices are not able to compute Diffie Hellman on time which results in HTTPS servers closing the connection. Use the DisableDiffieHellman option to workaround it.
Sample code
C#
// create an instance of Rebex HTTP/HTTPS request creator
HttpRequestCreator creator = new HttpRequestCreator();
// register the HttpRequestCreator to be used instead of the system implementation
creator.Register();
// download web page content
WebRequest request = WebRequest.Create(address);
WebResponse response = request.GetResponse();
using (StreamReader sr = new StreamReader(response.GetResponseStream()))
{
string body = sr.ReadToEnd();
tbBody.Text = body;
}
response.Close();