問題タブ [m2crypto]

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 投票する
3 に答える
1078 参照

python - openssl と比較した m2crypto の間違った動作

着信 smime メッセージが有効であること (つまり、会社の秘密鍵で暗号化され、特定の公開鍵セットに署名されていること) を検証する一連の bash スクリプトを統合し、場合によっては書き直す必要があります。

この一連の bash は、おそらく M2Crypto の助けを借りて Python で作成された小さなアプリケーションに置き換えられます。

これまでのところ、復号化の部分はうまくいっていますが、署名の検証に問題があります。

この単一のbash行を置き換えるpythonコードを書く必要があります

to_verify.txt の内容は、「通常の」マルチパート/署名付き p7 であり、署名が添付されているかどうかに関係なく使用できます。

前のコマンドは、検証が成功すると 0 で終了し、smime エンベロープからコンテンツを抽出します。

ここで、m2crypto の例から取った Python に戻ります。

うーん....驚き、わかりました

Openssl はこのファイルを正しく読み取り、抽出し、検証していますが、m2crypto はコンテンツがないことをどのように報告できますか?

バンプ: 誰もこれに興味がありませんか?

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

python - サーバー証明書の検証を httplib.HTTPSConnection に追加する

httplib.HTTPSConnection自動サーバー証明書チェックを実行しないことがわかりました。問題を理解している限り、ここで説明されているように、このクラスをサブクラス化するなどして、その機能を手動で追加する必要があります。

私は Python2.4.5 を使用しており、特定の状況下ではアップグレードできないため、sslモジュールが Py2.6 まで導入されていないため、このブログ投稿に記載されている回避策を使用できません。

sslを使用して、モジュールの使用を回避しようとしていますM2Crypto。これを行うための有望なアプローチは、このブログ投稿(「クライアント」セクション) に含まれています。httplib.HTTPSConnection.connectしかし、そのアプローチを使用して適切にオーバーライドすることはまだできていません。

アイデアやヒントはありますか?

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

python - M2Crypto: DSA 署名の検証

Python/M2Crypto を使用して DSA 署名を検証できません。署名は、標準の java.security.Signature クラスを使用して Java で生成され、Sun の暗号化プロバイダと SHA1withDSA アルゴリズムが指定されています。

シェル出力は次のとおりです。

署名値は私には問題ないように思えます。適切な ASN.1 でエンコードされた 2 つの整数のシーケンスのように見えます (0x302c は 44 バイトのシーケンスを示し、0x0214 は 20 バイトの整数を示します)。これは DSA 署名の標準的なエンコードです。

DSA_pub.verify_asn1 メソッドは文書化されていないため、文書化された DSA_pub.verify メソッドも使用してみましたが、まだ葉巻はありません:

ドキュメントには、すべてのパラメータは「バイト文字列」である必要があると記載されていますが、verify メソッドは何らかの方法でエンコード エラーを発生させます。潜在的なエンディアンの問題をチェックするために、r と s を逆にしてみましたが、それは役に立ちませんでした。

私は何を間違っていますか?

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

python - M2Cryptoラッパーを使用してPythonで3DES暗号化する方法は?

M2Cryptoを使用するPythonで、RSA暗号化を使用するハードウェアデバイスの動作テストがあります。次に、3DES暗号化を使用する同様のデバイスをテストする必要があります。しかし、M2Cryptoを使用してトリプルDES暗号化を行う方法がわかりません。

私はそれがこのチャートから可能であるべきだと知っています。しかし、残念ながら、私が見つけたM2Cryptoのドキュメントは大雑把です。http://chandlerproject.org/のホームページはChandlerと一緒になくなったようです。)

3DESと「OpenSSLAPI」を検索したところ、復号化のためにCコードを取得するのが難しいため、M2Crypto.EVP.Cipherを使用する必要があるように見えました。しかし、DESに使用した例は見つかりませんでした。私が見つけた最も近いものは、AES暗号化にそれを使用することに関するこのブログ投稿です。の正しい引数を理解する必要があるようM2Crypto.EVP.Cipher.__init__()です。掘り下げていきますが、この質問を投稿する価値があると思いました。

0 投票する
0 に答える
922 参照

m2crypto - m2crypto で CA 証明書を使用して x.509 証明書に適切に署名するにはどうすればよいですか?

Twisted Webとで実行される内部インフラストラクチャ用の自動化された CA に取り組んでいM2Cryptoます。CA にはそのキーがあります。他のマシンは、CSR を本文として GET 要求を送信できます。検証が行われたと仮定すると、Heliosサーバーは対応する証明書を使用して本文で応答する必要があります。

アプリケーションの完全なソース ファイルとテスト ファイルは次の場所にあります。

証明書の検証を除いて、現在すべてが機能しています (証明書応答による CSR 要求)。

OpenSSL を使用してシェルからテスト証明書に署名すると、正しく検証されます。Helios の署名コードに問題があるはずです。

これは関連する質問です:

残念ながら、前の質問からリンクされたリソースはどちらも、CA と最終的な証明書に同じキー ペアを使用しています。これは明らかな理由からばかげており、これらの例は実際の PKI にはまったく役に立ちません。

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

python - M2Crypto を使用して Python 2.4 で SHA-256 ハッシュを生成する

M2Crypto を使用して SHA-256 ハッシュを生成することは可能ですか? Python 2.4 の SHA モジュールは 256 をサポートしていないため、PyCrypto を使い始めましたが、PyCrypto が PKCS#5 (プロジェクトの他の場所で必要) をサポートしていないことがわかりました。その結果、M2Crypto に切り替えました。私の PyCrypto SHA-256 呼び出しを同等の M2Crypto に置き換えたい... 単体テストを調べてみましたが、何も表示されませんでした。

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

python - Pythons M2Crypto は、証明書をロードするときに ssl_ctx_load_verify_locations で例外を発生させます

M2Crypto は、SSL CA 証明書をロードするときに TypeError を発生させます。Django モデルのインスタンスから SSL 証明書のパスを取得しています。Django モデルから証明書のパスを取得していたため、コードは完全に機能しました。

私のコード:

レイズ:

ただし、このコードは正常に動作します

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

python - m2crypto:python 2.7との互換性と使用するOpenSSLのバージョンは?

しばらくの間、Python 2.6 for Windows(32ビット)でM2cryptoを使用しており、大きな成功を収めています。ユーザー提供のセットアップの1つを使用して、開発環境にM2cryptoをインストールしました。Python 2.7に移行したいのですが、m2crypto用にビルド済みのPython2.7セットアップがないことに気づきました。

質問:

  1. M2crypto0.20.2はPython2.7と互換性がありますか、それともこのライブラリを引き続き使用する場合はPython 2.6のままにする必要がありますか?

  2. Python2.7環境にM2Crypto0.20.2をインストールするためのユーザービルドのセットアップを持っている人はいますか?(M2cryptoサイトには2.7の投稿はなく、googleも空になります)

  3. Python 2.6 M2Cryptoファイル(lib \ site-packages \ M2Cryptoの下)をPython 2.7セットアップの同じ場所にコピーして、正式なインストールプロセスを回避できますか?

  4. M2crypto 0.20.2ではどのバージョンのOpenSLLを使用する必要がありますか?OpenSSL Webサイトを確認したところ、0.9.8と1.0.0aの2つのバージョンのOpenSSLから選択できます。

ありがとう、マルコム

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

python - Python 2.7forWindowsと互換性のあるAES暗号化ライブラリ

Python 2.7 for Windowsと互換性のあるAES暗号化ライブラリに関する推奨事項はありますか?

以前はPython2.6でm2cryptoを使用していましたが、Python 2.7用のm2cryptoのバージョンはなく、ソースからバージョンをビルドする試みは失敗しました。

ありがとう、マルコム

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

python - m2crypto を使用して FTPS サーバーにファイルをアップロードする方法

FTP サーバーにファイルをアップロードするために ftps を使用しようとしています。ログインは簡単で機能します:

ディレクトリに降りるだけでなく、

ただし、ディレクトリの内容を取得しようとすると、次のようになります。

522 エラーが発生します。

TLS はハンドシェイクのみに使用され、転送には使用されないようです。

storbinary()M2Cryptoを使用して転送を保護する方法 (を使用してファイルをアップロードしたい) はありますか? そうでない場合、他の選択肢は何ですか?