13

WebCrypto API が進化し、Chrome と Firefox でサポートされるようになったので、PDF ドキュメントのデジタル署名に使用したいと考えています。文献はあまりありませんが、いくつかの例 [1] と PKI.js というライブラリ [2] を見つけました。例では、署名プロセスが説明されていますが、最終的には署名が返されます。Base64 PDF ファイルが署名された Base64 文字列で再び返されることを期待していますが、残念ながら、これは起こりません。私の知る限り、PKI.js も Base64 PDF に署名する方法を提供していません。

JavaScript と WebCrypto API だけで PDF に署名する方法はありますか? 秘密鍵は<textarea>、ブラウザの証明書設定に入力するか、さらには保存することができます。

Base64 PDF (REST API から) → JS と証明書で署名 → 署名された Base64 PDF (REST に送信)

4

4 に答える 4

7

これを行うことは技術的に可能です。実際、これは PKIjs を作成したときに念頭に置いていたシナリオの 1 つです (そのため、このサンプルがあります) - https://pkijs.org/examples/PDFexample.html

つまり、署名を行うには PDF 構造自体を操作する必要があり、これにはカスタム パーサーまたは既存のパーサー (pdfjs など) の変更が必要です。

簡単に言うと、ブラウザーで PDF に署名するには多くの作業が必要ですが、これは私たちが取り組んでいるものです。

于 2015-10-20T05:24:59.520 に答える
3

ブラウザで PDF ファイルに署名できるライブラリPDFSign.jsがあります。署名には鍛造を使用します。PKI.js が切り離された pkcs7 署名をサポートしている場合、Forge を簡単に置き換えることができます。

于 2015-12-25T00:05:13.783 に答える