电子签名PDF Android



我需要制作一个应用程序,您将打开PDF文档,向客户展示它,然后他会以电子方式签名(在平板电脑上写下他的签名)。

根据我阅读的内容,您需要从创建的签名(时间戳,压力和绘图的时间)中的数据,然后将其连接到PDF。

但是这够了吗?因此,要打开画布,请读取数据并使用签名图像本身将其连接到PDF上,还是我还需要数字签名PDF?如果足够了,那么可以在哪里附加所有其他数据(时间戳记...)? - 我计划使用itext库。

您的问题附带很多方面。最后,这一切都取决于您/您的客户对流程的要求。让我说明您可以做什么:

首先:数字签名与签名的手写表示之间存在差异 - 尽管您可以将这两者都结合在一起...

解决方案I

  1. 捕获签名图像(来自画布),用它创建图像
  2. 将图像放入PDF

解决方案II

  1. 与上述相同
  2. 创建一个标准的PDF签名字段,将签名图像设置为其外观,并在数字上签名该字段,从而将其设置为文档(您需要证书,但可以自签名)。还可以添加时间戳(以及进一步的信息位置,原因等),并且是签名的一部分

解决方案III

  1. 与上述相同
  2. 还收集了签名的所谓生物特征数据(x,y坐标,如您提到的压力(但是并非总是可用),每个坐标对的时间戳
  3. 加密生物识别数据,然后将其添加到签名字段(强烈简化)
  4. 与上面的步骤2相同(cp。解决方案II)

解决方案IV(UPDATE)

如您在评论中所述

"我不需要以数字方式签名我需要的是基本的电子签名,在eidas下面有效"

要明确:EIDA是一种数字签名PDF文档的方式。

  1. 与上述相同
  2. 如果您想要符合EIDAS的Esignature,则还需要证书。没有其他办法了。但是证书可以是自签名的,因此这应该不是问题。其余的与解决方案II(步骤2)
  3. 相同

可能还有其他组合(例如,使用智能卡等的合格证书),但最终只有您才能确定适合自己的正确解决方案。这取决于您的要求,您的国家法规以及您要签署的合同的法律必需品。

解决方案有什么区别?

第一个解决方案没有提供任何验证签名者真实性的可能性,也不能确保添加签名图像后不会更改文档。解决方案II提供了确切的规定,如果使用自签名证书,则无法识别签名者(任何人都可以签署该文档)。为了证明,您必须使用合格的证书或使用解决方案iii。

最后一句话:

  • 如果签名者应在某个地方签名,则在创建文档时添加空签名字段是有意义的。然后,当您的应用程序中打开时,用户可以单击他要签名的签名字段。
  • 您可以准确地使用许多现有解决方案。因此,您还必须问自己:为什么要重新发明轮子?
  • 这些解决方案中的大多数也不直接在(Android)客户端上签名文档,而是在中央服务器上进行实际签名。使用该方法,您无需重新实现每个平台(iOS,Windows Phone,台式PC上的WebBrowser等)解决方案。

最新更新