XML Security Library

LibXML2
LibXSLT
OpenSSL

XML Security Library Reference Manual

Aleksey Sanin

    aleksey@aleksey.com
  

This manual documents the interfaces of the xmlsec library and has some short notes to help get you up to speed with using the library.

Permission is granted to make and distribute verbatim copies of this manual provided the copyright notice and this permission notice are preserved on all copies.

Permission is granted to copy and distribute modified versions of this manual under the conditions for verbatim copying, provided also that the entire resulting derived work is distributed under the terms of a permission notice identical to this one.

Permission is granted to copy and distribute translations of this manual into another language, under the above conditions for modified versions.

Table of Contents
XML Security Library Programming Notes
Overview.
XML Security Library Structure.
Building the application with XML Security Library.
Include files
Compiling and linking on Unix.
Compiling and linking on Windows.
Compiling and linking on other systems.
Initialization and shutdown.
Signing and encrypting documents.
Signing a document.
Encrypting data.
Creating dynamic templates.
Creating dynamic signature templates.
Creating dynamic encryption templates.
Verifing and decrypting documents.
Verifying a signed document
Decrypting an encrypted document
Keys.
Keys manager.
Simple keys store.
Using keys manager for signatures/encryption.
Using keys manager for verification/decryption.
Implementing a custom keys store.
Using X509 Certificates.
Signing data with X509 certificate.
Verifing document signed with X509 certificates.
Transforms and transforms chain.
Using context objects.
Adding support for new cryptographic library.
XML Security Library API Reference.
base64 -- 
buffer -- 
errors -- 
io -- 
keyinfo -- 
keysdata -- 
keys -- 
keysmngr -- 
list -- 
membuf -- 
nodeset -- 
parser -- 
templates -- 
transforms -- 
version -- 
xmldsig -- 
xmlenc -- 
xmlsec -- 
xmltree -- 
XML Security Library for OpenSLL API Reference.
app -- 
bn -- 
crypto -- 
x509.h -- The X509 certificates functions.
XML Security Library for GnuTLS API Reference.
app -- 
crypto -- 
XML Security Library for NSS API Reference.
app -- 
crypto -- 
XML Security Library Examples.
sign1.c -- Signing a template file.
sign2.c -- Signing a file with a dynamicaly created template.
sign3.c -- Signing a file with a dynamicaly created template and an X509 certificate.
verify1.c -- Verifying a file using a single key.
verify2.c -- Verifying a file using keys manager.
verify3.c -- Verifying a file signed with X509 certificate
encrypt1.c -- Encrypting data using a template file.
encrypt2.c -- Encrypting XML file with a dynamicaly created template.
encrypt3.c -- Encrypting XML file with a session key and dynamicaly created template.
decrypt1.c -- Decrypting an encrypted file using a single key.
decrypt2.c -- Decrypting an encrypted file using keys manager.
decrypt3.c -- Decrypting an encrypted file using a custom keys manager.
sign1-tmpl.xml -- Simple signature template file for sign1 example.
sign1-res.xml -- Signed file (sign1 example).
sign2-doc.xml -- Original XML doc file for sign2 example.
sign2-res.xml -- Signed XML doc file (sign2 example).
sign3-doc.xml -- Original XML doc file for sign3 example.
sign3-res.xml -- Signed XML doc file (sign3 example).
encrypt1-tmpl.xml -- Simple encryption template file for encrypt1 example.
encrypt1-res.xml -- Encrypted binary data (encrypt1 example).
encrypt2-doc.xml -- Original XML doc file before encryption (encrypt2 example).
encrypt2-res.xml -- Encrypted XML file (encrypt2 example).
encrypt3-doc.xml -- Original XML doc file before encryption (encrypt3 example).
encrypt3-res.xml -- XML doc file encrypted with a session DES key (encrypt3 example).
XML Security Library Reference Index


Aleksey Sanin