2011-07-28 13 views
13

最近、iOSプロジェクトが割り当てられました。そこでは、アプリケーションがサーバーからダウンロードする鍵を使ってPDF文書にデジタル署名する必要があります。 私はまだ私が提供している秘密鍵ファイルを使用して自分のpdfに署名し、公開を使って検証を行うという、私が今まで知っている文書署名に関わるプロセスについて明確な考え方を持っていません同じファイルのキーバージョンです。iOSでPDF文書にデジタル署名する

私は、iText for JavaやiTextSharp for C#のようなライブラリを使ってデジタル署名を達成できることを見てきました。だからこそ、iOSに似たものがあるかどうかを知りたいのですが。そうでなければ、Quartzの能力を使ってpdf文書を管理するためのプロセスは何でしょうか?どんな考えでも良い出発点になります。どうもありがとう。


うーん...私はリンゴのドキュメントをチェックしてきた、と私はこれが見つかりました:

私は、これはX.509形式をサポートするためにsupossedていると思うhttp://developer.apple.com/library/ios/#DOCUMENTATION/Security/Reference/certifkeytrustservices/Reference/reference.html

...ウィッヒのIを私は推測するCFDataのインスタンスとしてpdfに署名することができます。また、私はCryptoExerciseサンプルコードをチェックしていますが、これが私が探しているものなら100%確信していません。

その他のアドバイスは、Adobeのドキュメントをチェックするように指示していますが、証明書を使用してドキュメントに署名するC APIはまだ見つかりませんでした。

誰かがAppleによって提供された証明書サービスを使用している場合は、そのプロセスを理解するための任意の提案またはより多くのサンプルコードがあります。どうもありがとう。

+0

だった願っていますか? –

+0

こんにちは、PDF文書に署名する方法を見つけましたか? – ridan

+0

こんにちは、PDF文書に署名する方法を見つけましたか? – Jagadeeshwar

答えて

10

パブロ、PDF文書に署名

は(私の会社は、パスカルでWindowsの世界でこれをやっている)タフな作業です。

一般に、プロジェクトに組み込むことのできるソースコードが見つからない可能性があります。それがどのように行われているかを見るために、iTextソースは良い出発点です。すべてがそこにあるからです。

objective-cでは正しいパスにいます。 SecKeyRawSignなどの機能を持つX.509証明書を使用するのが正しい方法です(実際のパディングが古くなるため、たとえばSHA256をサポートするために独自のパディングを作成する必要があります。こちらを参照してください。What is the difference between the different padding types on iOS?)。 'dataToSign'は、署名するPDFコンテンツ(SHA256など)のハッシュ以外は何もありません。

PDFソースのどの部分を正確に署名しなければならないかを知るには、Adobe PDF 1.6のドキュメントをチェックするか、グループでいくつかの検索を行う必要があります。どの言語でもPDFに署名することに違いはありません。

最後に、署名とその一部についての情報をPDFドキュメントの定義済み部分に埋め込みます(これを実行することで有効なハッシュを分解しないように注意してください))、その他のPDF署名/検証ソフトウェア

私はあなたに関連コードは提供できませんが、X.509証明書について十分なサンプルを見つけることができます。 SSL/SSH接続を作成します。また、SecKeyRawSignを検索すると、署名するためのサンプル(少なくとも他のパターンでも)を見つけることさえできます。コンテンツ部分を署名するためのPDF構文を見つけて、最終的なPDFに署名を埋め込むために必要なのは、これだけです。

私はあなたがこの問題を解決することができた、これはあなたのための助けに

ジミー

関連する問題