crypto.signText()不会要求用户提供证书

时间:2013-12-28 20:45:40

标签: javascript cryptography certificate signature

我正在尝试在客户端上签署一个表单并将其发送到服务器进行验证。

我正在使用crypto.signText()但是当我提交表单时,它不会要求选择证书。

这是我的代码:

signature = theWindow.crypto.signText(res, "ask");

4 个答案:

答案 0 :(得分:2)

显示这是高度依赖浏览器的。

Best way to sign data in web form with user certificate

因此,您可能最好使用Java applet而不是使用javascript进行签名。

答案 1 :(得分:0)

http://docs.oracle.com/cd/E19957-01/816-6152-10/contents.htm

有一个caOption参数:

resultString = [window.]crypto.signText(stringToSign, caOption, [caNameString1, [caNameString2, . . . ]])

答案 2 :(得分:0)

您是否正在编写文本来实例化提示?

<html> 
<head> 
<script> 
var foo = crypto.signText("Bill of Sale\n--------------------\n3 Tires      $300.00\n1 Axle       $795.00\n2 Bumpers    $500.00\n--------------------\nTotal Price $1595.00", "ask"); 
</script> 
</head> 
<body> 
This is an HTML page<p> 
<script> 
document.write(foo); 
</script> 
</body> 
</html> 

答案 3 :(得分:0)

为了使crypto.signText正常工作,您需要在浏览器证书库中导入证书。

在Firefox中,转到偏好设置,高级版,证书。

导入.p12证书文件。您还可以从服务器证书编辑信任详细信息。

我还没有100%正常工作,但它已经要求我使用证书(提出导入的证书)和密码。不幸的是,密码没有被接受,但可能是因为我的服务器证书是自制的,浏览器无法访问。

有趣的链接(西班牙语)。 http://www.adictosaltrabajo.com/tutoriales/tutoriales.php?pagina=FirmasFirefox