httpd-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Sander Temme <>
Subject Re: Apache2 mod_ssl with HSM support
Date Wed, 13 Jun 2007 00:13:16 GMT

On May 29, 2007, at 11:36 PM, Apache Devel wrote:

> I'd like to start a discussion about Hardware Security Module (HSM)
> support for
> mod_ssl. You may know that OpenSSL supports different HW engines.  
> There
> is also
> support for PKCS#11 devices, a standard for communication with crypto
> devices -
> e.g. HSMs or Smartcards. Some HSM vendors support mod_ssl and their  
> with a
> modified OpenSSL/mod_ssl version. But support is limited to 1.3.X
> versions of Apache as
> far as we know.

That's not entirely correct. Apache 2.0.x has experimental support  
for hardware crypto engines, and in Apache 2.2 that support is no  
longer experimental.

I agree though that Apache tends to think of certificates and keys  
very much as PEM files on disk and not really anything else, which  
stands in the way of working with HSMs in general.  Even with that  
limitation, HSM support works with Apache for instance with nCipher's  
nShield and netHSM products (Disclosure: I work for nCipher).

> There seems to be no standard interface for mod_ssl with HSM
> support for private key protection and operations. We decided to  
> extend
> mod_ssl
> for usage with an HSM. We have a first prototype ("prealpha") with
> limited
> functionality now.

That sounds interesting.  I think it is a good idea that mod_ssl grow  
capabilities to deal with key material other than PEM files on disk.

> The limitations:
> - Supports only one virtual host

That would probably be a necessity.

> - Supports no keys from files at the moment

Meaning you completely hacked that out, or just not in conjunction  
with HSM contained keys? We obviously couldn't do without the default  
PEM-files-on-disk case.

> - Loads HSM PIN from the OpenSSL.cnf file (No handler implemented  
> at the
> moment)

We *have* the passphrase dialog implementation for encrypted key  
files... could we leverage that to make the server ask for  
passphrases or PINs for HSM keys?  That would not only benefit the  
P11 case, but also the existing CHIL support for the nCipher HSMs.

> - Certificate comes from file (not really a limitation...)

Technically not, since the certificate is not sensitive data, but it  
could present problems from a management point of view. If you have  
multiple SSL hosts, how do you keep a particular certificate and its  
key together, and how would your successor or the remote hands guy in  
the data center at 3AM work that?

> What it does:
> - Private key is no longer in a file, it's in the secure HSM store
> - Private key operations are processed on the HSM

Which is where we want them.  Awesome.

Did you intend to submit your patch for inclusion in the Apache  
code?  Care to post some code so we can discuss it?  It'd be easiest  
to discuss if you generated a patch against the Apache development  
trunk <> instead of  



Sander Temme
PGP FP: 51B4 8727 466A 0BC3 69F4  B7B8 B2BE BC40 1529 24AF

View raw message