我正在构建一个使用.net核心的数据输入应用程序。
在我的数据库中添加新行时,我需要允许用户添加e签名。
工作流程将是这样的,将有一个来自例如(姓名,年龄等)。和一个用于电子签名的画布字段。
我将允许用户在此画布中绘制他们的签名,并将此图像数据与表单数据一起保存。
当我找到电子签名的示例时,我找到了一个带有时间戳服务器的示例。
时间戳在电子签名中的用途是什么?是否需要在数据库列中添加时间戳的新字段?
请帮助我解释什么是时间戳和时间戳在.net核心电子签名中的使用。
发布于 2022-05-16 07:26:31
第一个问题,为什么我们在数字签名中需要时间戳?
为了回答这个问题,我们必须首先了解数字签名所带来的风险,考虑到墨迹签名的工作流程。当你签署任何法律文件时,通常是在公证人在场的情况下进行的。公证人验证您的身份并验证签名的日期和时间。作为回报,您还将在日志中记录一个条目,其中包含事务的日期和时间,并添加一个拇指指纹。
现在,考虑在数字世界中实现这一流程。当您使用基于公钥基础设施(PKI)的数字签名签署任何文档时,如何确保存在不可抵赖性?例如,当PDF文档使用基于PKI的证书进行数字签名时,它会添加有关签名的人、日期和时间的信息。但是,此签名的日期和时间是基于计算机的本地时间,可以很容易地更改或伪造。如果证书已过期或被撤销,则可能会更改本地时间,使证书看起来仍然有效。那么,您如何防止这种情况并信任数字签名呢?
您可以通过使用时间戳管理局(TSA)来解决这个问题,TSA使用RFC 3161时间戳协议(TSP)应用一个准确、可信的时间戳。它用于证明数据没有被篡改,并保证数据的完整性。在对文档或代码进行签名时使用TSA时,可以防止篡改时间戳。
第二个问题:时间戳在数字签名中的应用
我认为实现数字签名的方法有两种,一种是将数字签名保存到数据库中,另一种方法是将数字签名保存为静态文件(图像)。当您想要将它保存在数据库中时,您可以为时间戳添加一个新字段。当您只想将数字签名保存为图像时,可以将时间戳作为水印添加到此图像中。
https://stackoverflow.com/questions/72238319
复制相似问题