用于数字签名和验证邮件、pdf和xml文档中的数字签名的库。
endesive的Python项目详细描述
说明
用于数字签名和邮件数字签名验证的python库, pdf和xml文档。
ASN.1的实现依赖于asn1crypto。 加密例程依赖于cryptography库。
对于证书验证,使用openssl,但我不信任它, 下一个版本应该切换到cryptography。
这个库实现了s/mime处理程序,它可以加密和解密s/mime消息 使用公开rsa密钥,在aes-128/192/256 cbc/ofb模式下。 它还可以对s/mime消息进行签名和验证。
这个库实现了cades-b处理程序,用于在 adobe.ppklite/adbe.pkcs7.detached表单。 它可以在生成过程中使用经过修改的pyfpdf版本对文档进行签名,即 包括在这个图书馆里。它还可以签署由外部程序生成的文档。
此库实现用于创建签名XML文件的xades-bes处理程序。
此库实现用于签名和验证纯文本文件的CMS处理程序 分离的签名文件。
许可证
这个软件是根据麻省理工学院的许可证授权的。请参阅中的许可文件 完整许可证文本的顶部分发目录。
##要求
示例
- 证书制造.py
- 创建所需证书(密码为1234)
- 证书制作hsm.py
- 为softhsm创建所需的证书(密码为secret1)
- pdf make.py
- 创建简单的两页pdf文档,用于pdf sign cms.py。
- pdf签名cms.py
- 在外部创建的PDF中创建签名。
- pdf签名cms hsm.py
- 在外部创建的pdf文件中创建签名,但使用存储在softhsm中的密钥进行签名。
- pdf签名fpdf.py
- 创建pdf时创建签名。
- pdf verify.py
- 验证以前生成的文件(cms/pdf)。
- 普通制造.py
- 创建简单的utf-8文本文件。
- 纯openssl.sh
- 借助openssl可执行文件对文本文件进行签名、加密和解密。
- 普通符号attr.py
- 使用“扩展”CMS属性签署文本文件。
- 普通符号noattr.py
- 签署没有“扩展”CMS属性的文本文件。
- 普通验证.py
- 验证所有生成的文本文件签名。
- smime make.py
- 创建简单的utf-8文本文件,用于以下示例。
- smime openssl.sh
- 创建签名的s/mime文件、加密的s/mime文件并解密生成的s/mime文件 借助openssl可执行文件。
- smime encrypt.py
- 创建加密的S/mime文件。
- smime decrypt.py
- 解密加密的s/mime文件。
- smime符号属性py
- 使用“扩展”CMS属性创建签名的S/mime文件。
- 微笑符号noattr.py
- 创建没有“扩展”cms属性的签名s/mime文件。
- smime verify.py
- 验证所有生成的S/mime文件。
- xml make.py
- 创建用于以下示例的简单XML文件。
- xml-xades-bes-sign-b64.py
- 在自己的内容中使用base64编码的嵌入源文件创建XML文件。
- xml xades bes sign xml.py
- 使用未编码但仍嵌入在自己内容中的源文件创建XML文件。
- xml xades bes sign xml detached.py
- 以分离模式创建带有签名的XML文件。
- xml xades bes read.py
- 解码生成的XML签名并提取其内容。
工具
Online pdf validator pdfvalidator. Offline Apache pdfbox java based validator. Free S/MIME certificates (usable for documents signing) can be obtained from actalis.