www.openlinksw.com
docs.openlinksw.com

Book Home

Contents
Preface

Virtuoso Functions Guide

Administration
Aggregate Functions
Array Manipulation
BPEL APIs
Backup
Compression
Cursor
Date & Time Manipulation
Debug
Dictionary Manipulation
Encoding & Decoding
File Manipulation
Free Text
Hashing / Cryptographic
dsig_template_ext
md5
md5_final
md5_init
md5_update
tree_md5
x509_certificate_ver...
xenc_spki_read
xenc_x509_certificat...
xenc_bn2dec
xenc_decrypt_soap
xenc_delete_temp_key...
xenc_encrypt
xenc_get_key_algo
xenc_get_key_identif...
xenc_key_3des_create
xenc_key_3des_rand_c...
xenc_key_3des_read
xenc_key_aes_create
xenc_key_aes_rand_cr...
xenc_key_dsa_create
xenc_key_dsa_read
xenc_key_rsa_read
xenc_key_create_cert
xenc_key_exists
xenc_key_inst_create
xenc_key_remove
xenc_key_serialize
xenc_pem_export
xenc_pkcs12_export
xenc_set_primary_key
xenc_x509_generate
xenc_x509_ss_generat...
LDAP
Locale
Mail
Miscellaneous
Number
Phrases
RDF data
Remote SQL Data Source
Replication
SOAP
SQL
String
Transaction
Type Mapping
UDDI
User Defined Types & The CLR
VAD
Virtuoso Java PL API
Virtuoso Server Extension Interface (VSEI)
Web & Internet
XML
XPATH & XQUERY

Functions Index

xenc_x509_ss_generate

Creates a self-signed X.509v3 certificate
xenc_x509_ss_generate (in key_name varchar, in serial integer, in validity integer, in subject vector, in extensions vector);
Description

This function is used to create a self-signed X.509 certificate by given private key

Parameters
key_name – The name of the key used to create and sign the certificate
serial – The serial number
validity – Certificate's validity in days
subject – An array of name/value pairs representing the subject aka name enties
extensions – An array of name/value pairs to add as X.509v3 extensions to certificate
Return Types

Errors

This function can generate the following errors:

.

Examples
Self-signed certificate generation

The example bellow shows how could be created RSA private key, then self-signed certificate and finally to be stored in the user's key store.

       ...	  
       xenc_key_RSA_create ('id_rsa', atoi (get_keyword ('num', params, '1024')));
       xenc_x509_ss_generate ('id_rsa', sequence_next ('ca_id_rsa'), 365, 
		vector ('C', get_keyword ('c', params), 
			'O',  get_keyword ('o', params), 
			'CN',  get_keyword ('name', params), 
			'emailAddress',  get_keyword ('email', params)), 
		vector ('authorityKeyIdentifier', 'keyid,issuer:always'));
       USER_KEY_STORE (user, 'id_rsa', 'X.509', 2, '', xenc_pkcs12_export ('id_rsa', 'CA Certificate', ''));
       ...

See Also

xenc_x509_generate

xenc_key_RSA_create

xenc_pkcs12_export