- Home /
Does System.Web.HttpWebRequest support SNI in SSL?
I'm trying to connect to a CloudFront distribution that uses a custom domain and therefore requires SNI (Server Name Indicator) support. For unrelated reasons, I can't use Unity's built in WWW class and must use System.Web.HttpWebRequest.
(Bonus: what SSL cipher suites are supported?)
Answer by nirvine_bns · Sep 25, 2015 at 05:26 PM
No. Unity's .NET is Mono 2.x. SNI was added in 3.x https://bugzilla.xamarin.com/show_bug.cgi?id=11487
Ciphers supported, I can't find an official answer to, but packet capture shows these:
TLS_RSA_WITH_AES_256_CBC_SHA (0x0035)
TLS_RSA_WITH_AES_128_CBC_SHA (0x002f)
TLS_RSA_WITH_3DES_EDE_CBC_SHA (0x000a)
TLS_RSA_WITH_RC4_128_SHA (0x0005)
TLS_RSA_WITH_RC4_128_MD5 (0x0004)
TLS_RSA_WITH_DES_CBC_SHA (0x0009)
TLS_RSA_EXPORT_WITH_RC4_40_MD5 (0x0003)
TLS_RSA_EXPORT_WITH_RC2_CBC_40_MD5 (0x0006)
TLS_RSA_EXPORT_WITH_DES40_CBC_SHA (0x0008)
TLS_RSA_EXPORT1024_WITH_RC4_56_MD5 (0x0060)
TLS_RSA_EXPORT1024_WITH_RC2_CBC_56_MD5 (0x0061)
TLS_RSA_EXPORT1024_WITH_DES_CBC_SHA (0x0062)
TLS_RSA_EXPORT1024_WITH_RC4_56_SHA (0x0064)
Answer by AndyTehBald · Jan 03, 2017 at 10:01 PM
Google brought me here, while I was setting up a similar environment.
I note that UnityEngine.Networking.UnityWebRequest does correctly set SNI. This is confirmed by both visiting the SNI test page: https://foo.sni.velox.ch as well as successfully retrieving content from our CloudFront distribution.