【发布时间】:2015-02-02 22:56:21
【问题描述】:
我在 .NET 应用程序中使用 RSACryptoServiceProvider.ExportCspBlob 从证书导出了一个 CPS Blob。
return Convert.ToBase64String(rsaAlg.ExportCspBlob(false /*includePrivateParameters*/));
现在,我需要在 python 应用程序中导入该 blob。我尝试使用 pyCrypto,但没有成功。
# that's the value I'm getting from .NET code above
key = 'BgIAAAAkAABSU0ExAAgAAAEAAQARMnLlzOgHkmHssf6ZSFJn8TlTiOBSoRSEnkI4U0UI6n1jFY2bTWS9O5uApMNXz1vr5OyxoXsNVF2XrNM4DOC+lRn3R/H+mZZxZY1F8oXxhe4L5AFOMhyykPreQtu9z+oKOzVB80zR+EU+nc/290POVK9/LGzP94cTk0VHSZdXDgL1eOiXLSg8h1OnJmMGxY6HyNvbF90onoHMWNrIeRue1vP/S5QLwuzkHv6tgm54bSwXWXFdDRbjtrA9HJkbf74hflAIqivO34bx+53whl2fEsC51eXqFdCr7XJJw+bwlENwDF9bUtCXQ+jXbiYtzvMbntRCKZ8LPRqlN9OWrBC2';
from Crypto.PublicKey import RSA
from Crypto.Util import asn1
from base64 import b64decode
# let's decrypt base64 first
keyDER = b64decode(key)
seq = asn1.DerSequence()
seq.decode(keyDER)
keyPub = RSA.importKey(keyDER)
我来了
Traceback(最近一次调用最后一次):文件“C:\Program Files (x86)\Microsoft Visual Studio 12.0\Common7\IDE\Extensio ns\Microsoft\Python 视觉工具 Studio\2.1\visualstudio_py_util.py",第 1 06 行,在 exec_file exec_code(code, file, global_variables) File "C:\Program Files (x86)\Microsoft Visual Studio 12.0\Common7\IDE\Extensio ns\Microsoft\Python 视觉工具 Studio\2.1\visualstudio_py_util.py",第 8 2 行,在 exec_code exec(code_obj, global_variables) 文件“c:\users\marcinj\documents\visual studio 2013\项目\Python应用程序 1\PythonApplication1\PythonApplication1.py”,第 12 行,在 seq.decode(keyDER) 文件“C:\Python27\lib\site-packages\Crypto\Util\asn1.py”,第 237 行,在 解码 raise ValueError("Not a DER SEQUENCE.") ValueError: Not a DER SEQUENCE.
【问题讨论】:
标签: python .net rsa pycrypto cryptoapi