Единственное что могу посоветовать — взглянуть на javascript код регистрации на
startssl.com (это бесплатно) — там как минимум яваскриптом генерируется ключ. Быть может найдете что-то… В любом случае поддержки этого вы добьетесь только в ie и ff, в хроме у того же startssl не работает ничего.
Вообще стандарт для подписи чего-либо на клиентской стороне — java-апплеты.