首頁  >  文章  >  後端開發  >  是否可以使用客戶端提供的數位簽名對伺服器端 PDF 進行簽名,而不將簽名儲存在伺服器上?

是否可以使用客戶端提供的數位簽名對伺服器端 PDF 進行簽名,而不將簽名儲存在伺服器上?

Linda Hamilton
Linda Hamilton原創
2024-11-02 18:02:29857瀏覽

Can a server-side PDF be signed with a client-provided digital signature without storing the signature on the server?

使用客戶端提供的簽章進行伺服器端PDF 簽章

問題:

在伺服器上建立的文件是否可以由使用者自己的數位簽名進行簽名,而不將簽名儲存在伺服器上? PHP 和 JavaScript 被認為不足以完成此任務。

解決方案:

需要客戶端模組來執行簽名,因為私鑰儲存在客戶端上。 JavaScript 無法存取此金鑰。

推薦方法:

實作在使用者瀏覽器中執行的 Java 小程式來存取簽署憑證和私鑰。

替代選項:SecureBlackbox 分散式簽章外掛程式

SecureBlackbox 產品提供瀏覽器模組(Java Applet、ActiveX 控制項或Flash applet)來促進簽章流程:

  1. 使用者在伺服器上建立文件。
  2. 文件傳輸到客戶端。
  3. Java 小程式對文件進行簽署。
  4. 簽署後的文件文件上傳回伺服器。

技術細節:

如果文件雜湊是在伺服器計算的,則必須將其傳遞給客戶端簽署。然後簽名被嵌入回文件中。但是,將整個文件傳輸給客戶端進行簽名並將簽署的文件上傳回來可能會更簡單。

可用的函式庫:

  • iText for Java
  • SecureBlackbox Java 版

以上是是否可以使用客戶端提供的數位簽名對伺服器端 PDF 進行簽名,而不將簽名儲存在伺服器上?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn