Question

I want to use a certificate from the client to server side with no exportable private key, on the client there's a USB device that contains the certificate.

I'm using WCF but I will use Web API next, so the problem is cross the technology.

Is it possible?

Was it helpful?

Solution

If I understood your question correctly, your server-side application contains the data that it needs to sign and the private key for signing is on the client side.

In which case you need to have a trusted client module which will perform signing. It is common to have an applet (Java applet, or sometimes ActiveX) downloaded to the client browser with help of the web page that the client-side user opens. This applet will do the job.

Of course, it must not be just a web applet -- if you can have the user install and/or run the application on the client system, then you can use that application for signing.

Our company has developed distributed solution (set of classes and client-side modules) that let you implement both of the above scenarios. See its description in this StackOverflow answer.

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top