問題タブ [pycrypto]

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

c++ - 生成された暗号化文字列は、PyCrypto と Crypto++ で同じサイズではありません

最近、Python スクリプトを使用して文字列を暗号化しました。ただし、Crypto++ を使用して C++ で復号化できませんでした。生成された暗号化文字列を比較したところ、同じではないことがわかりました。誰でも助けることができますか?

ここに私のPythonコードがあります:

ここに私のC++コードがあります:

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

encryption - Base64 でエンコードされた出力は、as3crypto および pycrypto 暗号化ライブラリとは異なります

対称暗号化を使用して、actionscript 3 (クライアント) から python (サーバー) にデータを渡そうとしています。

私が使用しているライブラリは as3crypto と pycrypto です。これらのライブラリを正しく使用しているかどうかはわかりません。

アクションスクリプト 3:

これは、上記の関数の base64 でエンコードされた出力です。

xvVqLzV5TU4=

ここで、pycrypto ライブラリの同じキー、初期化ベクトル、およびアルゴリズムを使用すると、異なる出力が得られます。

パイソン:

I82NQEkSHhE=

両方のライブラリで「testtest」をbase64エンコードして同じ出力を受け取ることができるため、暗号化プロセスに何か問題があると確信しています。

アクションスクリプト 3:

収量...

dGVzdHRlc3Q=

パイソン:

収量

dGVzdHRlc3Q=

誰かがpythonまたはactionscriptのいずれかで同じIVを使用して同じ文字列を暗号化およびbase64エンコードして、実際にどのライブラリが正しい出力を生成しているかを知ることができますか?

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

python - Chrome拡張機能をパックするためにGoogleのPEMに40文字が残っているのはなぜですか

私は最近、Google Chrome のパッキング プロセスによって生成された PEM を PyCrypto に認識させる方法を見つけようとしています。問題は、標準の importKey メソッドがエラーを引き起こすことです。かなり長いプロセスの後、DerSequence.decode メソッドをリバース エンジニアリングすることで、最初にインポートをシミュレートできることに最終的に気付きました (すべての詳細はこちら)。残念ながら、未解決の問題が 1 つあります。

インポートするキーを取得できます。かなり一貫しているように見えますが、40 文字が残っています。

なぜその40文字がそこにあるのか誰か知っていますか? それらを無視すると、一部の秘密鍵と公開鍵のペアで問題が発生しますか?

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

python - pycrypto をインストールできません

pycrypto のインストールに問題があります。パッケージ マネージャーを試しました: pip & easy_install が機能しませんでした。「python setup.py install」で手動でインストールしようとすると、上記と同じエラーが表示されます。

こちらの手順に従いましたが、「mingW」gcc、g++、および msys-base (MSYS シェル環境) をインストールした後、pycrypto のインストールに行き詰まりました。

数日間試した後、今何をすべきかよくわかりません。

エラーの完全な出力は次のとおりです。

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

twisted - Windows Server 2008 R2 x64 上の Python 2.71 のツイスト コンチ?

作業中のアプリケーションの SFTP 部分に Twisted Conch を使用する予定です。アプリケーションの残りの部分は Python 2.71 で構築されており、Twisted は全体として Python 2.7 で利用できるように見えますが、 http://twistedmatrix.com/trac/wiki/Downloadsのダウンロード ページには、 Python のみが表示されているように見えます。 2.5 は PyCrypto 2.0.1 に依存しているため、Conch でサポートされています。

これは事実ですか、それとも Python 2.7 用の Conch のビルドがどこかにあるのでしょうか?

これは Windows Server 2006 R2 x64 ボックスに搭載されています。

ありがとう。

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

.net - .NET での RSA 暗号化、Python での復号化

C# で RSA アルゴリズムを使用して短いメッセージを暗号化し、python スクリプトを使用してメッセージを復号化しようとしています。

C# 側で .NET クラスを使用し、Python 側でpycryptoを使用したいと考えています。両側で同じキーを使用するように管理しました (.NET は標準の PEM/DER 形式を直接サポートしていないため、これは簡単ではありませんでした)。暗号化/復号化は両側で独立して機能します。

私は C# 側で PKCS#1 パディングを使用しています (fOAEPパラメーターをRSACryptoServiceProvider.Encryptto に設定していますfalse)。そのため、Python でブロックを復号化した後、ある種のクリア テキスト (つまり、私の「メッセージ」とパディング バイト) が表示されるはずです。 )

しかし、私が見るのはゴミだけです:(。

どちらの側にも気づいていない警告/落とし穴はありますか? 私はちょっとアイデアがありません...

Thx マーティン

サンプルコード

C# / 暗号化

Python / 復号化

キー転送については、 のToXmlString()方法を使用していRSACryptoServiceProviderます。結果の XML は python で解析され、pycrypto -RSA オブジェクトは次のように初期化されます。

ここmodulusexponent、、、、およびはd、 .NET構造体のそれぞれのフィールドです。(私が述べたように、Pythonでこのキーを使用してメッセージを暗号化/復号化できます。また、生成されるため、キーのインポートは正しく機能していると思います...)pqRSAParametersp*qmodulus

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

python - ezPyCryptoでPuttyで生成された秘密鍵を読み取る

Putty Key Generatorを使用して、と呼ばれる秘密鍵を作成しましたPutty-Private.ppk。この秘密鍵をPageantとPuttyで使用して、ホスティングプロバイダーのサーバーに接続できます。

ここで、xmlrpcベースのリモートAPIを使用してサーバーに接続します。これを行うために、使いやすいPython暗号化ライブラリとして多くの人からアドバイスされているezPyCryptoをインストールしました。暗号化をテストするために、次のコードを作成しました。

ezPyCrypto.key(...)ただし、システムは呼び出し時に次のエラーを出します。

パスフレーズは正しいと思います。したがって、ezPyCryptoのPuttyによる秘密鍵ジェネレーターは使用できないと思います。そうですか?このエラーの理由の説明は何ですか?

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

node.js - AESはライブラリPyCryptoとNode.JS Cryptoで同じですか

AES の実装がライブラリ間で異なるかどうか疑問に思い始めています..

現在、PyCrypto で暗号化された平文があります。
Node.jsのCrypto Libraryで暗号文を解読しようとしています..

基本的には PyCrypto
を使用します。ランダムに生成された IV で AES-128-CBC を使用しています。(これは PyCrypto で完全に復号化されます)

ただし..
Node.jsでこれを行っています

ガベージの束を吐き出す....(「バイナリ」をhex/utf8に変更しても役に立たない)

私はCBC(Cipher Block Chaining)を使用しているため...
暗号文の先頭にIVを追加しています(16ブロック)..PyCryptoでは、これはPGPの仕様、CFBの使用法と同様に完全に機能します..

これが機能しない理由を誰かが知っていますか???

Node.js の標準ライブラリに期待しすぎていませんか?

0 投票する
3 に答える
12386 参照

google-app-engine - ローカル Mac AppEngine に Crypto.Cipher という名前のモジュールがありません

Crypto.Cipher という名前のモジュールはありません

インポートしようとすると

Crypto.Cipher インポート AES から

私のフォルダ構造は次のようになります。

テスト/

テスト/main.py

テスト/pycrypto-2.3

pycrypto フォルダー内でビルドとインストールを実行しましたが、エラーが発生し続けます。何かアイデアはありますか?

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

python - 公開RSA/DSAキーのPEMシリアル化を生成する方法

PyCryptoを使用して、RSAキーのパブリックおよびプライベートPEMシリアル化を生成できましたが、PyCryptoではDSAクラスにexportKey()メソッドがありません。

PyOpenSSLを試してみると、RSAおよびDSAキーのプライベートPEMシリアル化を生成できましたが、PyOpenSSLにはcrypto.dump_publickeyメソッドがありません。

RSAおよびDSAキーのPEMシリアル化を生成する方法の提案を探しています。

どうもありがとう!

PS:その間、暗号化APIのdump_privatekeyメソッドもエクスポートするようにPyOpenSSLコードを変更しました。PyOpenSSLのバグとパッチは、 https://bugs.launchpad.net/pyopenssl/+bug/780089で見つけることができます。


私はすでにTwisted.conchを使用していたので、PyCryptoを使用してDSA / RSAキーを手動で生成し、このキーを使用してtwisted.conch.ssh.key.Keyを初期化することで、この問題を解決しました。ConchのKeyクラスは、文字列のシリアル化のためのtoStringメソッドを提供します。