Falcon python M2Crypto RSA错误

时间:2017-03-23 00:38:29

标签: python rsa m2crypto python-venv falconframework

我们最近开发了一个使用RSA的API,主要问题是在控制台中它可以正常工作但是一旦进入应用程序的“venv”它会显示不同的错误。

def sella_xml(cfdi, numero_certificado, archivo_cer, archivo_pem):
    keys = RSA.load_key(archivo_pem)
    cert_file = open(archivo_cer, 'r')
    cert = base64.b64encode(cert_file.read())
    xdoc = ET.fromstring(cfdi)
    xsl_root = ET.parse('cadenaoriginal_3_3.xslt')
    xsl = ET.XSLT(xsl_root)
    cadena_original = xsl(xdoc)
    digest = hashlib.new('sha256', str(cadena_original)).digest()
    sello = base64.b64encode(keys.sign(digest, "sha256"))
    comp = xdoc.get('Comprobante')
    xdoc.attrib['Sello'] = sello
    xdoc.attrib['Certificado'] = cert
    return ET.tostring(xdoc)

M2Crypto库安装在ubuntu和pip中。

使用RSA的代码是:

 /root/merci_api/venv/bin/gunicorn --workers 3 -b localhost:5000 main:app

Run Env的命令:

<div class="clickable-box" ng-click="openRetailerGraphDetails()" data-toggle="modal" data-target="#g-retailer-purchases-graph">
        <div class="dashboardBox clearfix">
              <div class="pull-left dashboardBoxLabel purchases">
                   <h4 class="dashboardBoxLabeltext">
                          {{RetailerPurchases}} RETAILER PURCHASES
                    </h4>
                    <span class="dashboardBoxLabel2">
                           For the current month
                    </span>
              </div>
              <img class="pull-right expand-icon" src="themes/img/dashboard/expand.svg" />
         </div>
      </div>

有什么建议吗?

我做错了什么?

1 个答案:

答案 0 :(得分:1)

嗯,问题是我们安装的版本上的M2Crypto与Python 3不兼容,所以当我们使用另一个M2Crypto版本时,我们会遇到另一个问题&#34; SSL v2&#34;解决我们需要这个。

除非你使用python3分支,否则M2Crypto仍然不支持py3k。