Re: Use TLS over UDP connection

2013-02-25 Thread David Woodhouse
be careful not to give the impression that DTLS will magically give you an in-order, guaranteed-delivery data stream. It won't; it's still a datagram protocol at heart. -- David WoodhouseOpen Source Technology Centre david.woodho...@intel.com

How to check client certificate for expiration

2010-08-31 Thread David Woodhouse
In my VPN client I'd like to warn the user when their certificate is almost out of date. Is there a way to get the client certificate from the SSL_CTX after the client cert has been loaded? As discussed elsewhere, it's quite painful for an application simply to undertake the task of load a

Re: FUNCTION FOR LOADING THE CERTIFICATE

2010-08-26 Thread David Woodhouse
On Thu, 2010-08-26 at 14:41 +0530, Raj wrote: Can anybody tell me the function for loading a certificate file (from my local hdd) to X509 object http://www.advogato.org/person/dwmw2/diary/205.html -- dwmw2 __ OpenSSL

Re: NameConstraints are not being applied (or I don't know how to enforce them?)

2010-06-07 Thread David Woodhouse
On Thu, 2010-06-03 at 21:35 -0400, Victor Duchovni wrote: The problem is that only the application knows which names are those of the peer it tried to reach. True, but the app could easily provide that information to a library function. If you look at the 250 lines of code I referenced,

Re: NameConstraints are not being applied (or I don't know how to enforce them?)

2010-06-03 Thread David Woodhouse
On Thu, 2010-06-03 at 13:47 -0400, Victor Duchovni wrote: Generally, OpenSSL does not verify peer names, only the certificate trust chain, and peername checks are left up to applications. Which is a shame... I'm far too stupid to be writing code like

Re: X509 Verify callback

2010-05-11 Thread David Woodhouse
) return ret; /* Do whatever you need to look up the issuer... */ } ... and somewhere else in your SSL_CTX setup: X509_STORE *store = SSL_CTX_get_cert_store(vpninfo-https_ctx); store-get_issuer = my_get_issuer_func; -- David WoodhouseOpen

Re: X509 Verify callback

2010-05-11 Thread David Woodhouse
On Tue, 2010-05-11 at 09:58 -0400, Chris Bare wrote: That's almost perfect, but doesn't putting it inside the X509_STORE like this tell the rest of the code it's trusted? If I'm downloading it using AIA I can't trust it and still need to chain up to a trusted root. Hm, true. But surely there's

Re: PKCS12_parse() SEGV.

2010-05-09 Thread David Woodhouse
On Sun, 2010-05-09 at 12:12 +0100, David Woodhouse wrote: Although that's OK for my purposes, I think it's actually a bug. The man page for PKCS12_parse() says that *ca can be a valid stack, in which case additional certificates are appended to *ca. It _doesn't_ say oh, but if parsing fails

PKCS12_parse() SEGV.

2010-05-07 Thread David Woodhouse
With OpenSSL 0.9.8n this test program segfaults the second time it tries to parse the PKCS#12 file. It was fixed for OpenSSL 1.0.0 by this commit: http://cvs.openssl.org/chngview?cn=17957 Starting program: /home/dwmw2/p12test .cert/certificate.p12 Enter PKCS#12 passphrase:

Re: PKCS12_parse() SEGV.

2010-05-07 Thread David Woodhouse
On Fri, 2010-05-07 at 19:24 +0200, Dr. Stephen Henson wrote: Setting ca to NULL if it fails should work. That should be done in PKCS12_parse() on error. AIUI I don't want it to be NULL; I need it to be an empty stack. I need the returned 'extra' certs so that I can work around RT#1942 on the

Re: locate key for p12 certificate

2010-04-08 Thread David Woodhouse
string and i need to see this) Fix this, and your problem is solved. -- David WoodhouseOpen Source Technology Centre david.woodho...@intel.com Intel Corporation __ OpenSSL

Re: AES speed?

2010-04-07 Thread David Woodhouse
that I didn't bisect this change so it's almost certainly not precisely that commit which caused it. And that aes256-cbc performance got worse while aes128-cbc and aes192-cbc got better. I resisted the temptation to include AESNI scores on the graph; they'd have screwed up the scale :) -- David

Re: AES speed?

2010-04-07 Thread David Woodhouse
On Wed, 2010-04-07 at 16:00 -0400, Victor Duchovni wrote: Can someone confirm that what we are seeing is a work-around for DJB's cache timing attack on AES? If so, I would guess that the timing attack is believed to be impractical for large blocks, so the fast path is used only for

Re: associating a cert with a private key

2010-03-28 Thread David Woodhouse
, looking for one which matches the public key in the certificate you get back from the server. Or you could just keep better track of your outstanding requests? :) -- David WoodhouseOpen Source Technology Centre david.woodho...@intel.com Intel

X509_PURPOSE_ANY with ssl client and OpenSSL 0.9.8k

2010-03-23 Thread David Woodhouse
We've seen a number of Cisco AnyConnect VPN servers which don't have the SSL server purpose bit set in their certificate. We have a workaround¹ but I've just received a complaint that this workaround doesn't work correctly with older (0.9.8k) versions of OpenSSL. Does the patch below make sense?

Re: TLS compatibility problem -- can connect to server with NSS but not OpenSSL.

2009-06-04 Thread David Woodhouse
On Wed, 2009-06-03 at 17:59 -0400, Victor Duchovni wrote: The SSL_CTX_use_certificate_chain_file() API is a very admin friendly way to support installation of cert + chain and even key + cert + chain, as the key can also be stored in the same file (ideally mode 0600 or passphrase-protected).

Re: TLS compatibility problem -- can connect to server with NSS but not OpenSSL.

2009-06-03 Thread David Woodhouse
On Tue, 2009-06-02 at 21:39 -0400, Victor Duchovni wrote: The CAfile is for verification, not for sending alon the trust chain of a given certificate. OpenSSL currently _does_ use the CAfile for sending along the trust chain of its client certificate. It's buggy, but it tries :) DO NOT

Re: TLS compatibility problem -- can connect to server with NSS but not OpenSSL.

2009-06-03 Thread David Woodhouse
On Wed, 2009-06-03 at 15:02 -0400, Victor Duchovni wrote: with SSL_CTX_use_certificate_chain_file() the entire trust chain is loaded from the provided file bottom-up order. The first certificate is the leaf and must match the private key provided. Ah, right. Most files I've encountered have

Re: TLS compatibility problem -- can connect to server with NSS but not OpenSSL.

2009-06-02 Thread David Woodhouse
On Mon, 2009-06-01 at 17:15 -0400, Victor Duchovni wrote: I found another strange behaviour that I didn't expect -- the _order_ of the certificates in the cafile seems to be important. Yes, the TLS protocol requires the trust chain to be delivered bottom-up. That makes sense, but we're

[RANT] Loading a client certificate makes my head hurt.

2009-06-02 Thread David Woodhouse
Q: My application takes a filename for a client certificate on the command line. What is the OpenSSL function to load and use it? A: Well, we make this lots of fun for you -- it would be boring if there was just one function which you could pass the filename to. You have to write 230

Re: TLS compatibility problem -- can connect to server with NSS but not OpenSSL.

2009-05-31 Thread David Woodhouse
On Tue, 2009-05-26 at 11:21 -0400, Victor Duchovni wrote: The server is unhappy with the client certificate chain, and drops the connection if the client certificate trust chain does not verify. The same server is willing to accept clients with no certificates at all. The server is lame.

Re: TLS compatibility problem -- can connect to server with NSS but not OpenSSL.

2009-05-31 Thread David Woodhouse
On Sun, 2009-05-31 at 10:13 +0100, David Woodhouse wrote: On Tue, 2009-05-26 at 11:21 -0400, Victor Duchovni wrote: The server is unhappy with the client certificate chain, and drops the connection if the client certificate trust chain does not verify. The same server is willing to accept

Re: TLS compatibility problem -- can connect to server with NSS but not OpenSSL.

2009-05-22 Thread David Woodhouse
On Thu, 2009-05-21 at 22:44 +0100, David Woodhouse wrote: I'm trying to connect to an HTTPS server, and my connection is being rejected when I use a client certificate: [dw...@macbook ~]$ openssl s_client -cert $CERT -connect $SERVER:443 -crlf -tls1 CONNECTED(0003) depth=1 /C=US/O=Foo

TLS compatibility problem -- can connect to server with NSS but not OpenSSL.

2009-05-21 Thread David Woodhouse
I'm trying to connect to an HTTPS server, and my connection is being rejected when I use a client certificate: [dw...@macbook ~]$ openssl s_client -cert $CERT -connect $SERVER:443 -crlf -tls1 CONNECTED(0003) depth=1 /C=US/O=Foo Corporation/CN=Foo Intranet Basic Issuing CA 2A verify

Re: DTLS server implementation experiences and documentation

2009-01-24 Thread David Woodhouse
On Sat, 2009-01-24 at 00:13 +0100, Georges Le grand wrote: I wonder if you could give out a reference on how to establish a VPN using DTLS or to tell how to do so. We are just using Cisco's AnyConnect VPN, which runs over an HTTPS 'CONNECT' and will use DTLS for subsequent data transfer if it

Re: DTLS server implementation experiences and documentation

2009-01-24 Thread David Woodhouse
On Sat, 2009-01-24 at 23:03 +0100, Georges Le grand wrote: So it is alike SSL VPN with data encapsulated into HTTP Packets, but I don't get how does HTTP run over UDP. Probably best explained by the code... it just uses HTTP for the initial setup -- a CONNECT request with an HTTP cookie for

Re: DTLS server implementation experiences and documentation

2009-01-21 Thread David Woodhouse
On Thu, 2009-01-22 at 06:10 +0100, Robin Seggelmann wrote: To avoid getting into trouble with already fixed bugs you should apply the patches I sent to the dev list. I'll set up a website with a patch collection and some instructions soon. Is there anyone who actually cares about DTLS

Re: DTLS clue requested: epoch numbers

2008-09-28 Thread David Woodhouse
On Fri, 2008-09-26 at 13:46 -0700, David Woodhouse wrote: At the worst, I should be able to reverse-engineer the library I have. The first failure seems to have been a discrepancy in epoch numbers. Comparing behaviour of their library and 0.9.8e, I find that theirs is adding '00 01 00 00 00 00

Re: DTLS clue requested: epoch numbers

2008-09-28 Thread David Woodhouse
On Sun, 2008-09-28 at 18:56 +0100, David Woodhouse wrote: On Fri, 2008-09-26 at 13:46 -0700, David Woodhouse wrote: At the worst, I should be able to reverse-engineer the library I have. The first failure seems to have been a discrepancy in epoch numbers. And the others are due to patches

Re: DTLS clue requested.

2008-09-26 Thread David Woodhouse
On Tue, 2008-09-23 at 23:12 -0700, nagendra modadugu wrote: Hi David, unfortunately I've been out of touch with the developments to DTLS for some time. I forwarded your message to Eric Rescorla who worked with Cisco to get their implementation working. Thanks. I suspect that Cisco has

DTLS clue requested.

2008-09-23 Thread David Woodhouse
returned 0 12994:error:14101119:SSL routines:DTLS1_PROCESS_RECORD:decryption failed or bad record mac:d1_pkt.c:466: Child done. This is the test case /* * Open AnyConnect (SSL + DTLS) client * * © 2008 David Woodhouse [EMAIL PROTECTED] * * Permission to use, copy, modify, and/or distribute