[Mono-dev] HttpListener https bug?
Gonzalo Paniagua Javier
gonzalo.mono at gmail.com
Tue Sep 7 17:56:21 EDT 2010
I've followed the steps in
http://www.mono-project.com/UsingClientCertificatesWithXSP to create a
root certificate and a client certificate (instead of generating a .p12,
I created a .pvk and a .cer) and then used the "client" certificate as
my server's.
Then I created a small program (attached hl.cs) and run **Mono's**
httpcfg to associate the certificate with port 9667. Everything worked
just fine with Mono (and on .NET, since I didn't use their httpcfg, you
get a connection reset error.
See the screenshot at http://gonzalo.name/tmp/httplistener2.png
-Gonzalo
On Sun, 2010-09-05 at 22:11 -0700, salar2k wrote:
> I'm trying to use Mono HttpListener but after some test I'm running into an
> issue with HttpS.
> The project works well with simple http requests but just doesn't serve
> https.
>
> Here is what I've done to use it (win7), first try to create certificate
> files:
>
> makecert -r -pe -n "CN=SALARPC" -b 01/01/2000 -e 01/01/2040 -eku
> 1.3.6.1.5.5.7.3.1 -ss my -sr localMachine -sky exchange -sp "Microsoft RSA
> SChannel Cryptographic Provider" -sy 12 -sv local.pvk local.cer
>
> (this is microsoft makecert application)
>
> I've create certifications without password.
> and registration of files to the port:
>
> httpcfg -add -port 9667 -pvk local.pvk -cert local.cer
>
> All is done successfully.
> Unfortunately it doesn't response to https port.
> (note: actually httpcfg copies cer and pvk files for port 9667 to here:
> C:\Users\USERNAME\AppData\Roaming\.mono\httplistener)
>
> Second try with openssl and pvktool:
>
> openssl genrsa -des3 -out localhost.pem 2048
> openssl rsa -in localhost.pem -out localhost.pem.nopass
> openssl req -new -key localhost.pem.nopass -out localhost.csr
>
> pvk -in localhost.pem.nopass -topvk -nocrypt -out localhost.pvk
>
> httpcfg -del -port 9667
> httpcfg -add -port 9667 -pvk localhost.pvk -cert localhost.crt
>
> Still no luck with httplistener and https!
>
> Debugging the mono code I realize that it throws internally an exception
> during reading the request (HttpConnection.cs) which says "The
> authentication or decryption has failed.":
>
> System.IO.IOException was caught
> Message=The authentication or decryption has failed.
> Source=Mono.HttpListener
> StackTrace:
> at Mono.Security.Protocol.Tls.SslStreamBase.EndRead(IAsyncResult
> asyncResult)
> at Mono.Net.HttpConnection.OnRead(IAsyncResult ares)
> InnerException: Mono.Security.Protocol.Tls.TlsException
> Message=A message could not be decoded because some field was out
> of the specified range or the length of the message was incorrect.
> Source=Mono.HttpListener
>
> Am I doing something wrong! What's the problem?
> Or this is a bug?
> [Mono-2.6.7 - windows 7]
>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: hl.cs
Type: text/x-csharp
Size: 844 bytes
Desc: not available
Url : http://lists.ximian.com/pipermail/mono-devel-list/attachments/20100907/fbbcee77/attachment.bin
More information about the Mono-devel-list
mailing list