This is a pre-production deployment of Warehouse. Changes made here affect the production instance of PyPI (pypi.python.org).
Help us improve Python packaging - Donate today!

pure Python XML Security

Project Description

python XML Security

This is a python implementation of XML-Security - XML-DSIG only right now. There are no dependencies except lxml currently.

This code was inspired by https://github.com/andrewdyates/xmldsig (this implementation is a refactor and extension of that implementation) and includes a pure-python RSA implementation https://github.com/andrewdyates/rsa_x509_pem by and with permission from Andrew Yates.

In order to sign with a PKCS#11-module you need to install pykcs11 (http://www.bit4id.org/pykcs11/)

This package is available under the NORDUnet BSD license (cf LICENSE.txt)

Limitations:

  • only support for enveloped signatures
  • only support for RSA-SHA1 signatures
  • no encryption support

Some of those limitations might be addressed. Patches and pull-requests are most welcome!

News

0.1

Release date: UNRELEASED

0.2

Release date: Mon Aug 27 12:42:45 CEST 2012

  • more rubust algorithm uri parsing
  • support for “#”-style IDs
  • partial support for <Transform/> elts with child-elements
  • make all exceptions an XMLSecException
  • first draft: sign
  • various cleanups

0.3

Release date: Tue Aug 28 09:46:47 CEST 2012

  • handle #-style references (remove top-level comments and PIs)
  • don’t unescape &amp; &lt; and &gt;
  • don’t give empty inclusive ns prefix list to c14n
  • move exception to separate file
  • first version of the pkcs11 shim layer

0.4

Release date: Wed Aug 29 12:43:05 CEST 2012

  • starting on tests
  • cleanup pkcs11 layer
  • various bugfixes and cleanup

0.5

Release date: Wed Sep 5 11:52:58 CEST 2012

  • Fix bug when signing using non-p11 keys
  • More robust PEM-unfolding

0.6

Release date: Fri Nov 30 10:29:03 CET 2012

0.7

Release date: Mon Feb 4 15:53:32 CET 2013

  • Minor fixes

0.8

Release date: Wed Apr 3 09:05:53 CEST 2013

  • Multiple bugfixes
  • More SAML and P11 testcases

0.9

Release date: Mon Jun 24 11:24:20 CEST 2013

  • Bugfixes
  • Protection against wrapping attacks (new API!)

0.10

Release date: Thu Sep 12 20:16:04 CEST 2013

  • fix PEM parser bug
  • switch to semantic versioning

0.11

Release date: Fri Oct 11 17:06:53 CEST 2013

  • better control over the position of the signature element

0.12

Release date: Wed Dec 4 15:00:29 CET 2013

  • use pyconfig to control configuration parameters
  • support sha2 algorithms
  • several bugfixes for c14n

0.13

Release date: lör 22 mar 2014 10:44:49 CET

  • various unicode fixes related to pkcs#11
  • skip certain tests unless opensc is installed
  • use existing SignatureValue if present
  • various fixes from Fredrik T and Maya W

0.14

Release date: Mon Dec 1 08:58:54 CET 2014

  • Add explicit call to C_Initialize
  • Various bugs fixed - from Fredrik T
  • Allow caller control over session close

0.15

Release date: mån 16 nov 2015 13:40:26 CET

  • xmlsign: a simple sign cmdline tool
  • optionally drop signatures when validating
  • avoid logging keysize in p11 case
  • put a lock around pyasn1 parser
  • make cert loading thread safe
  • bugfixes
Release History

Release History

This version
History Node

0.15

History Node

0.14

History Node

0.13

History Node

0.12

History Node

0.11

History Node

0.10.0

History Node

0.9

History Node

0.8

History Node

0.7

Download Files

Download Files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

File Name & Checksum SHA256 Checksum Help Version File Type Upload Date
pyXMLSecurity-0.15.tar.gz (53.2 kB) Copy SHA256 Checksum SHA256 Source Nov 16, 2015

Supported By

WebFaction WebFaction Technical Writing Elastic Elastic Search Pingdom Pingdom Monitoring Dyn Dyn DNS Sentry Sentry Error Logging CloudAMQP CloudAMQP RabbitMQ Heroku Heroku PaaS Kabu Creative Kabu Creative UX & Design Fastly Fastly CDN DigiCert DigiCert EV Certificate Rackspace Rackspace Cloud Servers DreamHost DreamHost Log Hosting