Setting Up the Oracle Key Vault SDK
The client SDK is available in both C and Java.
-
An Endpoint must be registered and enrolled to the Oracle Key Vault server before downloading the SDK content to that endpoint.
-
Downloading the C or Java SDK Software
You must download the appropriate Software Development Kit (SDK) software, either the C or Java version.
-
The contents of C SDK file include demo programs, the SDK library file, and other necessary files.
-
The contents of Java SDK file include demo programs, the SDK library jar file, and other necessary files.
Enrolling an Endpoint
An Endpoint must be registered and enrolled to the Oracle Key Vault server before downloading the SDK content to that endpoint.
If the endpoint is not already registered and enrolled before downloading the SDK, please enroll the endpoint by following the instructions from Enrolling Endpoints for Oracle Key Vault.
Downloading the C or Java SDK Software
You must download the appropriate Software Development Kit (SDK) software, either the C or Java version.
-
Access the Oracle Key Vault management console from the endpoint on which you wish to deploy the SDK.
-
The login page to the Oracle Key Vault management console appears.
Do not log in.
-
Click the Endpoint Enrollment and Software Download link below the Login button.

-
The Enroll Endpoint & Download Software screen appears.
There are four tabs along the top.
-
Enroll Endpoint & Download Software
-
Download Endpoint Software Only
-
Download RESTful Service Utility
-
Download Software Development Kit
-
-
Click the Download Software Development Kit tab.

Description of the illustration 02-enroll-endpoint-and-download-software.png
-
The Download Software Development Kit screen appears with the option to select either the C or Java SDK.

Description of the illustration 03-download-c-software-development-kit.png
-
If you select the C SDK, you must select the platform for deployment.
The platform options are:
-
Linux
-
Solaris SPARC
-
Solaris x64
-
AIX
-
HP-UX

Description of the illustration 04-c-sdk-platform.png
If you choose the Java SDK, it is platform independent and does not require you to choose a platform.

Description of the illustration 05-download-java-software-development-kit.png
-
-
Click Download.
Save the SDK zip file to the desired location.
-
Ensure that you have the necessary administrative privileges to install software on the endpoint.
-
Check that the
OKV_HOMEenvironment variable is correctly set.See the README file included in the zip file for more information.
-
Navigate to the directory in which you saved the ZIP file.
-
Unzip the SDK file.
For example, on Linux, to unzip the Java SDK file, run the following command:
unzip -o okv_jsdk.zip -d $OKV_HOMEor for the C SDK file, run the following command:
unzip -o okv_csdk.zip -d $OKV_HOMENote:
Oracle recommends you to deploy the SDK software contents under
OKV_HOME. This applies even during redeployment or upgrade to new version of the SDK software.Oracle recommends to redeploy the SDK software in the same location post upgrade to Oracle Key Vault 21.6 if already deployed in Oracle Key Vault 21.x.
Contents of the C SDK File
The contents of C SDK file include demo programs, the SDK library file, and other necessary files.

Description of the illustration 216_c_sdk_directory_structure.png
The include directory contains header files for C SDK APIs. The lib directory contains the shared library object. bin is an empty directory to place the demo program object files and executables.
The demo directory contains sample programs which demonstrate the use of the C SDK APIs. The following table provides a brief description of each sample program.
| Sample Program | Description |
|---|---|
AsymmetricKeysDemo.c |
Application for Asymmetric Keys management operations such as register, activate, get, get all attributes of private and public keys. |
AttributeOperationDemo.c |
Application for KMIP attribute operations such as add, modify, get, and delete attributes. |
BatchOperationDemo.c |
Application to demonstrate batching such as batching of create, activate, add attribute, get key, and destroy operations. |
CertificateDemo.c |
Application for Certificate management operations such as register, activate, get certificate and get all attributes. |
CertificateRequestDemo.c |
Application for Certificate Request management operations such as register, get certificate request and get all attributes. |
CreateKeyDemo.c |
Application for KMIP create and activate key operations. |
CreateKeyInVirtualWalletDemo.c |
Application for KMIP create key operation in the given wallet and activate the key. |
CreateKeyPairDemo.c |
Application for KMIP create key pair and activate key operations. |
CryptoOperationsDemo.c |
Application to demonstrate encrypt and decrypt operations. |
DestroyKeyDemo.c |
Application for KMIP locate operation by given name and destroy the key. |
KeyManagementApp.c |
Application for Key management operations such as create, activate, get, deactivate, and destroy key. |
LocateGetKeyDemo.c |
Application for KMIP locate operation by given name and get the key details like key length, algorithm, and value. |
OpaqueDataDemo.c |
Application for Opaque Data management operations such as register, get, add attribute, and destroy opaque data. |
RegisterKeyDemo.c |
Application for KMIP register key operation. |
SecretDataDemo.c |
Application for Secret Data management operations such as register, activate, add attribute, deactivate, and destroy secret data. |
SignatureOperationsDemo.c |
Application to demonstrate sign and signature verify operations. |
See the README file provided with the C SDK for complete instructions about environment configuration, compiling, and running the demo programs.
Contents of the Java SDK File
The contents of Java SDK file include demo programs, the SDK library jar file, and other necessary files as shown in the following figure.

Description of the illustration 216_java_sdk_directories_and_files.png
The lib directory contains the Oracle Key Vault Client Java SDK jar file okvjsdk.jar and sample java.util.logging configuration file logging.properties. bin is an empty directory to place the Java demo program class files.
The demo directory contains sample programs which demonstrate the use of the Java SDK APIs. The following table provides a brief description of each sample program.
| Sample Program | Description |
|---|---|
AsymmetricKeysDemo.java |
Application for Asymmetric Keys management operations such as register, activate, get, get all attributes of private and public keys. |
AttributeOperationDemo.java |
Application for KMIP attribute operations such as add, modify, get, and delete attributes. |
BatchOperationDemo.java |
Application to demonstrate batching such as batching of create, activate, add attribute, get key, and destroy operations. |
CertificateDemo.java |
Application for Certificate management operations such as register, activate, get certificate and get all attributes. |
CertificateRequestDemo.java |
Application for Certificate Request management operations such as register, get certificate request and get all attributes. |
CreateKeyDemo.java |
Application for KMIP create and activate key operations. |
CreateKeyInVirtualWalletDemo.java |
Application for KMIP create key operation in the given wallet and activate the key. |
CreateKeyPairDemo.java |
Application for KMIP create key pair and activate key operations. |
CryptoOperationsDemo.java |
Application to demonstrate encrypt and decrypt operations. |
DestroyKeyDemo.java |
Application for KMIP locate operation by given name and destroy the key. |
KeyManagementApp.java |
Application for Key management operations such as create, activate, get, deactivate, and destroy key. |
LocateGetKeyDemo.java |
Application for KMIP locate operation by given name and get the key details like key length, algorithm, and value. |
OpaqueDataDemo.java |
Application for Opaque Data management operations such as register, get, add attribute, and destroy opaque data. |
RegisterKeyDemo.java |
Application for KMIP register key operation. |
SecretDataDemo.java |
Application for Secret Data management operations such as register, activate, add attribute, deactivate, and destroy secret data. |
SignatureOperationsDemo.java |
Application to demonstrate sign and signature verify operations. |
See the README file provided with the Java SDK for complete instructions about environment configuration, compiling, and running the demo programs.