1

django-paypal でボタンの暗号化を使用したいのですが、M2Crypto が必要で、webfaction サーバーではビルドできません。Webfaction の技術サポートは、pycrypto が既にシステムにインストールされていると教えてくれましたが、私は愚かすぎて M2Crypto から pycrypto に変換できません。

以下をpycryptoで動作するように変換する方法を誰かに教えてもらえますか(可能であれば)? これは暗号化を示すほんの一部です。必要に応じて関数全体を投稿できます。

    s = SMIME.SMIME()   
    s.load_key_bio(BIO.openfile(CERT), BIO.openfile(PUB_CERT))
    p7 = s.sign(BIO.MemoryBuffer(plaintext), flags=SMIME.PKCS7_BINARY)
    x509 = X509.load_cert_bio(BIO.openfile(settings.PAYPAL_CERT))
    sk = X509.X509_Stack()
    sk.push(x509)
    s.set_x509_stack(sk)
    s.set_cipher(SMIME.Cipher('des_ede3_cbc'))
    tmp = BIO.MemoryBuffer()
    p7.write_der(tmp)
    p7 = s.encrypt(tmp, flags=SMIME.PKCS7_BINARY)
    out = BIO.MemoryBuffer()
    p7.write(out)   
    return out.read()
4

3 に答える 3

2

ビルドすることができました。これを実現するために必要なことは次のとおりです。

cat >> ~/.pydistutils.cfg << EOF
[build_ext]
include_dirs=/usr/include/openssl
EOF
easy_install-2.5 --install-dir=$HOME/lib/python2.5 --script-dir=$HOME/bin m2crypto
于 2009-11-12T17:24:22.147 に答える
1

pycrypto は非常に不完全です。必要な埋め込みスキームと形式はサポートされていません。これらのフォーマットのサポートを追加することは簡単ではなく、多くの時間を必要とします。

于 2009-09-28T10:52:09.923 に答える
0

仮想マシンをローカルにセットアップし、それを自分で構築するのに十分なwebfactionサーバー環境を複製できる場合があります。次に、pythonpathのどこかにアップロードします

于 2009-10-02T13:18:50.900 に答える