使用pgp密钥的xmlenc和xmldsig xml加密和签名

xmlsec_pgp的Python项目详细描述


能够使用pgp密钥加密xml并向文档添加xml签名。

需要以下Python库:

  • xmlsec
  • pgpy
  • 密码学

xmlsec_pgp提供替换signatureContext(),encryptionContext() 以及keysmanager(),它可以接受pgpy密钥,然后可以签名、验证, 正常加密和解密。

还有一个调用xmlsec_pgp.add_pgp_data(key_info_node)要进行 <PGPData>标记,用pgp密钥id和pgp公钥填写。

这个规范的实现似乎很少,所以 互操作性测试很少,欢迎反馈。

libreoffice使用pgp+xmldsig实现文档签名,但是 签名似乎无法使用此模块或使用^{tt4}进行验证$ 命令行工具(和一个合适的pem编码的公钥来桥接这个缺口)。 需要更多的调查来确定问题是否在 libxmlsec处理文档,或者libreoffice文档格式是否为 对签名格式编码不正确,导致不匹配。

这个软件是根据麻省理工学院的许可证授权的。请看附件 LICENSE文件。

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
java是否在servlet中检索上一页路径?   Java抱怨在开关的默认情况下未初始化最终字段   Java泛型:为什么编译器不能判断这个类<t>对象与这个类的类型参数的对象的类具有相同的类型?   Java:继承方法中使用的私有变量   HibernateJava。ClassCastException:java。lang.Integer不能强制转换为abc。def。我的项目。奥姆。EmployeeTopMetaData   http java发布和下载文件   java改进条件检查   java如何将2d数组的条目作为键放在地图中   java如何获取传递给运行时的值。getRuntime。JUnit测试用例中的exit(value)   java注释来创建所有可能的构造函数   自动建议列表:java。lang.IllegalArgumentException:在XPath表达式为null时找不到元素   为什么MapAPI在Java中不提供流功能?   gradle不导入本地java库   尽管我使用的是SessionCreationPolicy,java Spring安全性似乎仍在使用会话。无国籍   使用java查找MongoDB中数组元素的平均值