Name
xenc_key_RSA_construct,
xenc_key_RAW_read,
xenc_key_RAW_rand_create,
xenc_key_DH_create,
xenc_DH_get_params,
xenc_DH_compute_key,
xenc_key_kerberos_create,
xenc_key_3DES_test_create
— create, import and exchange XML-Encryption keys
Synopsis
xenc_key_RSA_construct(
|
in key_name varchar, |
| |
in modulus varchar, |
| |
in public_exp varchar, |
| |
in private_exp varchar); |
xenc_key_RAW_read(
|
in key_name varchar, |
| |
in raw_bytes varchar); |
xenc_key_RAW_rand_create(
|
in key_name varchar, |
| |
in num_bytes integer); |
xenc_key_DH_create(
|
in key_name varchar, |
| |
in num_bits integer); |
any xenc_DH_get_params(
|
in key_name varchar); |
varchar xenc_DH_compute_key(
|
in key_name varchar, |
| |
in peer_public varchar); |
xenc_key_kerberos_create(
|
in key_name varchar, |
| |
in principal varchar); |
xenc_key_3DES_test_create(
|
in key_name varchar); |
Description
These BIFs install keys into the server's XML-Encryption / XML-DSig key
store under a named handle. The store backs every other
xenc_* operation that takes a
key_name argument.
xenc_key_RSA_construct registers an RSA key built
from its raw modulus and
public_exp (and optional
private_exp when a private key is being installed).
Useful for importing keys delivered as XML
<RSAKeyValue> elements.
xenc_key_RAW_read installs a symmetric key from
raw_bytes (used for HMAC or shared-secret
encryption). xenc_key_RAW_rand_create generates a
fresh symmetric key of num_bytes length.
xenc_key_DH_create generates a Diffie-Hellman key
pair of num_bits length (default 1024).
xenc_DH_get_params returns the public parameters
p, g and the local public value as a
vector. xenc_DH_compute_key derives the shared secret
given the peer's public value.
xenc_key_kerberos_create imports the session key
associated with a Kerberos principal's active
ticket; pair this with the kerberos_* BIFs to use
Kerberos credentials inside the XML-Encryption layer.
xenc_key_3DES_test_create installs a fixed 3DES test
key. Intended for the test suite; production code should use
xenc_key_3des_rand_create.