I think you can use fake basic authentication in Apache to use client certificates.

That said, they are a PITA to set up, and it's difficult for nontechnical users to use them, as they have to install the keyfile etc.

Also they tend to lose them.

Slarty