問題タブ [openpgp]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
5 に答える
7678 参照

java - Java + OpenPGP の推奨事項は?

小さな OpenPGP クライアントを開発したいと考えており、OpenPGP 用の Java ライブラリを探しています。

このアプローチに関する (オープンソースの) 推奨事項はありますか?

Cryptix.orgはもう生きていないようです...

0 投票する
1 に答える
836 参照

php - RFC1847を使用した暗号化および署名されたMIMEメッセージ

Web転送用のクライアントサーバー暗号化ソリューションが必要です(つまり、署名および暗号化されたクライアント側、および検証および復号化されたサーバー側)。

HTTPを使用していますが、共有ホスティングの制限によりSSLを使用できません(私のサーバーは共有ホスト環境です)。代替ソリューションを検討して、 GnuPGを使用するOpenPGPを決定しました。その理由の1つは、さまざまなPEARおよびPECLモジュールを介してPHPでサポートされていることです(PHPは、クライアントスクリプトとサーバースクリプトの両方に使用する予定の言語ですが、Perlも最後の手段として利用できます)。

私は今、データを送信するための最良の方法を決定しようとしています。暗号化および署名されたマルチパートMIMEメッセージを定義するRFC1847に出くわしました。このプロトコルは、RFC3156のPGP用に特別に拡張されています。(これらのプロトコルはS / MIME暗号化電子メールプロトコルに関連していると思います)。

私の質問は:これらの基準に従う理由はありますか?プロトコルに関する限り、それらは賢明なソリューションのように見えますが、実際にこのプロトコルを使用しているクライアントはありますか?たとえば、Apache Webサーバーに対してマルチパート/暗号化されたリクエストを行った場合、データを取得する簡単な方法はありますか?PHPスクリプトを使用したテストでは、PHPはこのような要求を解読しようとしても無駄だと思いました($_POSTデータは「multipart/form-data」MIMEタイプのデータからのもののようです)。

私のホストソケットを開くことできるので、PHPのソケットプログラミングAPIを使用して、「multipart /encrypted」および「multipart/signed」HTTPリクエストを受け入れるサーバーとして機能するPHPスクリプトを作成することは可能ですが、これはやり過ぎのようです。

助言がありますか?

私の問題の詳細については、この質問を参照してください。

0 投票する
1 に答える
1208 参照

.net - .NET 用の非 GPL オープン ソース PGP ライブラリはありますか?

PGP ファイルを暗号化および復号化するための無料のオープン ソース API を探しています。オープンソース製品だけでなく、クローズドソース製品でも使用したいので、GPL以外のライセンスである必要があります。

0 投票する
1 に答える
613 参照

pgp - PGP - GnuPG - いくつかの質問

PGP の完全な代替となるオープン ソース ソフトウェアであるGnuPG ( http://www.gnupg.org/ )を使用したいと考えています。

私はこれまで使用したことがありませんが、ソフトウェアは見栄えがします。

このソフトウェアを使用して、ファイルを暗号化して Web 経由で転送する予定です。このソフトウェアを電子メールには使用していません。

いくつかの質問を聞きたいんです:

  1. Windows と Ubuntu で使用できる推奨 GUI は何ですか?

  2. RSA ではなく Diffee Hellman (DH/DSS) のキー ペアを生成したいと考えています。これを行うための行コマンドは何ですか? 同様に、2048 のキー長を使用します。

  3. 公開鍵と秘密鍵のペアを生成したら、コマンド ラインから他の人の公開鍵に署名するにはどうすればよいですか?

0 投票する
1 に答える
239 参照

cryptography - OpenPGP署名

http://phpseclib.sourceforge.net/を使用してOpenPGP(RSA署名)のサブセットの実装を作成しようとしてRFC4880を読んでいます。publickeyパケットとcompression-literal-signatureパケットを解析しました。nとeを抽出し、それらをCrypt_RSAにフィードして、ベリファイアを構築できます。私はsha256を使用していると言います。次に、「メッセージ」と「署名」パラメータが必要です。署名パケットから署名データを取得しても問題ありません。私が持っている質問は、「メッセージ」とは何ですか?セクション5.2.4によると、これはリテラルデータパケット(それらの本体またはパケット全体?)と「ハッシュされた」サブパケットの組み合わせです。すべてのデータパケットとハッシュされたパケットを、表示される順序で連結するだけですか?

0 投票する
1 に答える
227 参照

public-key - PGP 鍵情報の読み取り

説明だけがあり、実際の情報がない場合、誰かが pgp がどのように見えるかの情報の説明を示すことができますか? 次のようなもの(値が正しいかどうか覚えていません)

パケットタイプ[4ビット]、バイト単位の合計長[16ビット]、パケットバージョンタイプ[4ビット]、作成時間[32ビット]、暗号化アルゴリズム[8ビット]、...、など

rfc4880 を理解しようとしましたが、面倒でわかりにくいです。これまでのところ、上で書いた 4 つを抽出したと思いますが、残りの情報を引き出すことができないようです。

誰でも助けることができますか?いくつかの pgp プログラムを見つけることができることはわかっていますが、これの全体的なポイントは、それらのプログラムが最初にどのように機能するかを学べるようにすることです。

0 投票する
2 に答える
2516 参照

objective-c - OpenPGPライブラリ

OpenPGPキーを作成したり、OpenPGPを使用してファイルを暗号化するためのライブラリはありますか?

0 投票する
1 に答える
1426 参照

security - PGP署名および暗号化されたファイルの内部構造を説明するモデルを探しています

BouncyCastleを使用して既存のJavaコードをデバッグおよび拡張し、保護された添付ファイルを復号化および検証しようとしています。

BouncyCastleのサンプルを調べましたが、そこから抽出するのが難しいのは、PGPで保護された添付ファイルがどのように見えるかのモデルです。コードとさまざまなエラーから、PGPMarkerで表されるものがあると推測できます。次に、内部にPGPOnePassSignatureListなどがあるPGPCompressedDataを見つけることができます。これは、いつ相互に期待するか、署名と暗号化が別々に実行されたときにワンパス署名が存在するかどうかなどの問題を明確にしません(これらは私が直面した例ですが、質問のトピックではありません)。BCのjavadocはあまり説明していません(たとえば、PGPOnePassSignatureは「ワンパス署名オブジェクト」です)。

試行錯誤によってモデルをリバースエンジニアリングするのは時間のかかる作業です。これに関する優れたリソースをグーグルで検索できなかったので、おそらく他の誰かがそれを知っていることを願っています。

前もって感謝します。

0 投票する
1 に答える
297 参照

c# - Linq Cast式を置き換える方法は?

質問:ここからpgp暗号化のコードがあります:http: //blogs.microsoft.co.il/blogs/kim/archive/2009/01/23/pgp-zip-encrypted-files-with-c.aspx

いくつかのLINQを使用して、以下の方法があります。私はまだ.NET2.0を使用していて、それ以上に切り替えることはできません...

この式を通常のコードに置き換えるにはどうすればよいですか?私はLinqを本当に理解していません、私はそれがいくつかのソートを行うと思いますか?

0 投票する
2 に答える
3168 参照

encryption - PGP暗号化ファイルまたはテキスト?

暗号化する必要のあるcsvファイルがあります。コンテンツの暗号化とファイルの暗号化に違いはありますか?それとも同じですか?私たちのクライアントは彼らが欲しいものを明確に指定していないので?

ありがとう、