Skip to content

写一个PDF签名验签项目

参考项目

  • pdf.js
  • pdf-lib
  • jsPDF
  • node-signpdf
  • pdfkit

目前的现状和结论:

除了 node-signpdf 基本上其他所有的库都是不提供创建签名区域和签名功能的

而 node-signpdf 提供了签名功能,但是是对整个文件进行签名的,并不支持对某些元素进行签名

基本上签名的做法就是把文件传给后端,让后端对文件进行签名。

目前理出的办法是:

前端展示并模拟,创建签名区域,然后把pdf和签名区域位置和其他内容传递给后端,让后端进行签名,然后把签名后的pdf返回给前端,前端展示签名后的pdf。

验签的话可以:

  • 使用pdf-lib等库来获取签名信息
  • 使用 node-forge 来验签

思考

为什么好多库都不支持签名?(个人见解)

好多知名的pdf的库基本上都是前端项目,放在签名前端不安全

nodejs作为后端服务签名优势不大,因为js计算性能不高,特别是pdf文件比较大的时候,nodejs作为服务端前几年并不是非常流行

Released under the ISC License.