0

我对安全问题还是新手,所以我的问题实际上可能只是一个误解。

我正在使用的系统要求用户应该在 Web 应用程序的某处签署/时间戳数据。但是,为了使用数字证书进行签名,用户应该在系统上输入他们的私钥。考虑到涉及第三方的事实,我们作为一家公司应保证只允许最终用户签署/时间戳数据。

我看到的唯一方法是创建一个可以证书数据的桌面应用程序。但是我仍然需要在某个地方设置时间戳,这需要与外部服务器进行通信,这可能是我们公司“窃取”他们的私钥的一种方式。

是否有在 Internet 上特别是在 Web 应用程序上签名/时间戳数据的模式?这怎么可能实现?

4

1 回答 1

1

所以你有一个服务器和用户。用户在他们的系统上执行数据的数字签名。时间戳与签名一起完成(它证明了签名时间)。时间戳由受信任的第三方 TSA(时间戳权威)执行。将进行签名的代码将联系 TSA(通常使用 HTTP 或 HTTPS 协议)并以这种方式执行时间戳。TSA 的证书包含在时间戳中,以便以后可以验证时间戳。

现在谈谈技术方面。对于 Web 应用程序,您最好的选择是创建一个小程序或 ActiveX 控件,将其下载到用户的浏览器并进行签名。

我们公司为此提供了预先创建的解决方案,我在这个答案中详细描述了它。

当然,您可以让用户下载文档并使用 Acrobat 或其他一些客户端应用程序对其进行签名,然后将文档上传回来。如果您决定自己编写此类应用程序,则需要签名组件,例如。IText 或我们的SecureBlackbox

于 2013-02-15T12:26:49.157 回答