首页 > 解决方案 > M2Crypto.SMIME.PKCS7_Error:标签错误

问题描述

我是密码学领域的初学者,我正在尝试从单个数据中获取数据,并且在执行此过程时遇到此错误

import base64
from M2Crypto import BIO, SMIME, X509

s = SMIME.SMIME()
encoded = base64.b64encode(data_input)
cooked_sig = b"\n".join(encoded[pos:pos + 76] for pos in range(0, len(encoded), 76))
buf = BIO.MemoryBuffer(sig)
p7 = SMIME.load_pkcs7_bio(buf)

我在最后一行 p7 = SMIME.load_pkcs7_bio(buf) 收到提到的错误

我已经使用加密包签署了这些数据。

data_input 看起来像这样。

b'-----BEGIN PKCS7-----TUlNRS1WZXJzaW9uOiAxLjAKQ29udGVudC1UeXBlOiBtdWx0aXBhcnQvc2lnbmVkOyBwcm90b2Nv\nbD0iYXBwbGljYXRpb24veC1wa2NzNy1zaWduYXR1cmUiOyBtaWNhbGc9InNoYS0yNTYiOyBib3Vu\nZGFyeT0iLS0tLUEzNTBBQzNDMEFBRjhBRTE3OTE0RUE1NUE1MTM0QkVFIgoKVGhpcyBpcyBhbiBT\nL01JTUUgc2lnbmVkIG1lc3NhZ2UKCi0tLS0tLUEzNTBBQzNDMEFBRjhBRTE3OTE0RUE1NUE1MTM0\nQkVFCldlbGNvbWUgdG8gdGhlIHdvcmxkIG9mIGNyeXB0b2dyYXBoeQotLS0tLS1BMzUwQUMzQzBB\nQUY4QUUxNzkxNEVBNTVBNTEzNEJFRQpDb250ZW50LVR5cGU6IGFwcGxpY2F0aW9uL3gtcGtjczct\nc2lnbmF0dXJlOyBuYW1lPSJzbWltZS5wN3MiCkNvbnRlbnQtVHJhbnNmZXItRW5jb2Rpbmc6IGJh\nc2U2NApDb250ZW50LURpc3Bvc2l0aW9uOiBhdHRhY2htZW50OyBmaWxlbmFtZT0ic21pbWUucDdz\nIgoKTUlJRitnWUpLb1pJaHZjTkFRY0NvSUlGNnpDQ0JlY0NBUUV4RHpBTkJnbGdoa2dCWlFNRUFn\nRUZBREFMQmdrcQpoa2lHOXcwQkJ3R2dnZ05HTUlJRFFqQ0NBaXFnQXdJQkFnSVVQOHcyVFVkeng0\nZ20wLytEdUlWdGdtMjlpSjR3CkRRWUpLb1pJaHZjTkFRRUxCUUF3VGpFTE1Ba0dBMVVFQmhNQ1ZW\nTXhDVEFIQmdOVkJBZ01BREVKTUFjR0ExVUUKQnd3QU1Sb3dHQVlEVlFRS0RCRlVaWE4wSUU5eVoy\nRnVhWE5oZEdsdmJqRU5NQXNHQTFVRUF3d0VWR1Z6ZERBZQpGdzB5TVRBNE1UWXhNalF6TXpWYUZ3\nMHlNVEE0TWpZeE1qUXpNelZhTUU0eEN6QUpCZ05WQkFZVEFsVlRNUWt3CkJ3WURWUVFJREFBeENU\nQUhCZ05WQkFjTUFERWFNQmdHQTFVRUNnd1JWR1Z6ZENCUGNtZGhibWx6WVhScGIyNHgKRFRBTEJn\nTlZCQU1NQkZSbGMzUXdnZ0VpTUEwR0NTcUdTSWIzRFFFQkFRVUFBNElCRHdBd2dnRUtBb0lCQVFD\nNgpLcjczYVdsaGhZZzBZcGp1ZUtJcU9VT0dkaTQzZXpDdUc2WVFLOFNzNElFM2UzVDlEYmI3bUlI\nSXhKR3dIS09FCnpXVkxjTWZQOGtpVTJGK0EvUzd1ejVMWlRta1g3SlpBRWZMSTlxVWVraENKZS8z\nc2x3RW96bzRncy9DZDNBcFoKOWlZcVk4TEtvbjNUZHNWLy9DRHRTMjM5MW1jbHc4bG5VQkhXRFUx\nRUI3TEtEUDByazB4MHIxY0dRdzVPZWdiagpqTUlCcml2clEvL1R6TXJoYjZlQW1EWTB4VmdleXFQ\nQVg1R3dDNjJTOW5MWmN6bi9VcXFKNGExeUJGVmJwTVdhCkZwczhzMlFJK3I4K2FibmxMNW1LOVUr\nWmxaL0VsajJuUmwwcXFDQ005ZkNaZndudFFhcnNaRkFkYkVoUjdqbTMKNnpPNEgzM2JveEhWK0or\ndHQybHBBZ01CQUFHakdEQVdNQlFHQTFVZEVRUU5NQXVDQ1d4dlkyRnNhRzl6ZERBTgpCZ2txaGtp\nRzl3MEJBUXNGQUFPQ0FRRUFZS0E2OVYrMHBEVDhaSnYyQjVzc0d4RExHdjNoSHhYcHVjak4rMytp\nClpIVGFWd3pQdDFjL0ZkOEUyMUZsT1dDSHpPdVV0Y2x6YzBIYTJuamg4RkdLN0JCblNySGdWQ010\nSDR2TUl5eXYKc1VWd1Z1Tk1xYlhWd3BqeWxiS0drRnhOWXZoNC8wZWdueTZ1V21zMjMxMlVJNlFK\nRWZIeEt2cHU1Q0dqZXhCdwpZVGJQcFlYdzRJMDdrQ1JOR3R6elBFbWhCZ3poRmM5bVZpTkUzZTZL\nQTRDZzlneTY2Q0xrNUhudldERUo1M1J2ClRFeFFTNW1aUzFwbktsTk54d3Rxd3EwQ2JLN0VFRlpn\ndUNFWVJUTWxqQjdtTnJUVzBIdmdnVkRCVThmMFJyWVUKYnF5c2ZGUGFRK0hPRjI0WlFOVEVMaUFn\nNFRqY0ZETjZENG9nYjF5YzRMLzlvakdDQW5nd2dnSjBBZ0VCTUdZdwpUakVMTUFrR0ExVUVCaE1D\nVlZNeENUQUhCZ05WQkFnTUFERUpNQWNHQTFVRUJ3d0FNUm93R0FZRFZRUUtEQkZVClpYTjBJRTl5\nWjJGdWFYTmhkR2x2YmpFTk1Bc0dBMVVFQXd3RVZHVnpkQUlVUDh3MlRVZHp4NGdtMC8rRHVJVnQK\nZ20yOWlKNHdEUVlKWUlaSUFXVURCQUlCQlFDZ2dlUXdHQVlKS29aSWh2Y05BUWtETVFzR0NTcUdT\nSWIzRFFFSApBVEFjQmdrcWhraUc5dzBCQ1FVeER4Y05NakV3T0RFMk1USTBNek0xV2pBdkJna3Fo\na2lHOXcwQkNRUXhJZ1FnCldUTkE0SDZtM0RHdDhtVVZuSmNBMmNycURoUXhaTlRPODk2T29nZVZa\naFl3ZVFZSktvWklodmNOQVFrUE1Xd3cKYWpBTEJnbGdoa2dCWlFNRUFTb3dDd1lKWUlaSUFXVURC\nQUVXTUFzR0NXQ0dTQUZsQXdRQkFqQUtCZ2dxaGtpRwo5dzBEQnpBT0JnZ3Foa2lHOXcwREFnSUNB\nSUF3RFFZSUtvWklodmNOQXdJQ0FVQXdCd1lGS3c0REFnY3dEUVlJCktvWklodmNOQXdJQ0FTZ3dE\nUVlKS29aSWh2Y05BUUVCQlFBRWdnRUFkSVZ2ZmdoSWZUcUlMV1l1Skp2d3RQZGkKNUtHbTVOZ0tK\nRDJsT015SzRwSGlYcGtHQWEwaUhIa3drSVovQzcxdjFjZnBBMlphTVB5ZmI4QmFJbHdwRlNsWQp1\nSldHZzZJOVBHajRaaFZrVmo2bThYczc4TXFMeWNMTjJxSy9HWWFDWXZWZ0l1c0VDUlZaYjlPOFUr\nWndscXFwCjNWeVQwRmp0RklNNUtHL05JQlBlUTF5ekVKUm1MaU1ZcExnalg1QUt5ejVvbCtpOWpJ\nQXNjcnBWZEFhR2RFUlIKMHZURWtHWm5RZ0g0eis3L3lQSTdqSFIwTEttb1M4Q2N3aGQ5ajh2ZzF5\nQnY5elNkVUV3UTdFNHJobTZzdytKTApxMjJVVzdrSFRNUjlDVG1taVUzbno4K09UaElUQm9VcXlt\nbWtmendqNEFLcm5SZ0JNdFlzZmNvSnpzSElnZz09CgotLS0tLS1BMzUwQUMzQzBBQUY4QUUxNzkx\nNEVBNTVBNTEzNEJFRS0tCgo=-----END PKCS7-----'

标签: python-3.xencryptioncryptographym2crypto

解决方案


推荐阅读