Vous êtes sur la page 1sur 10

D2 Lockbox

Introduction
Lockbox is a RSA library coded with C++ used
to store data
One delivery by platform (Windows, Linux)
and by architecture (32 or 64 bits)
Communication between our Java classes and
C++ libraries use JNI ( Java Native Interface )
with Java librairies provided into Lockbox RSA.
Introduction - next
Lockbox is used to
secure passwords
get encryption key to encrypt all data exchange
between D2 and JMS.
Data stored are saved in D2.lockbox file.
Before : D2FS.properties file
LoadOnStartup.password.1=<encrypted value
with hard coded key>
After : D2.lockbox
LoadOnStartup.<docbase>.password=
D2LockboxProperties.java
Main access to D2.lockbox file.
This file can be read only on the machine
where it has been generated.
For read a password :
D2LockboxProperties.getProperty(key)

Possible keys :
LoadOnStartup.<docbase>.password
D2Method.passphase
...
SetLockboxProperty.java
Used to set a protected property.
Usage :
java SetLockboxProperty <D2.lockbox path> <property>
<value> [lockbox passphrase]

property : (see documentation for all possible entries)


D2Method.passphrase : used for JMS exchange data.
LoadOnStartup.<docbase>.password
value : Password or passphrase to save in D2.lockbox
lockbox passphrase : used the first time for create the file. Its optional, an
automatic passphrase is generated if its not defined.
D2LockboxPassphraseGenerator.java
A random passphase generator used the first
time to create D2.lockbox file.
Server Method
D2Method.passphrase entry is used to
encrypt all parameters between D2 and Java
Method Service.
Parameters are crypted with this key :
send + D2Method.passphrase
Response is decrypted with this key :
recv + D2Method.passphrase
Call a D2 method
C6MethodReturn.java
This class is used to exchange data between D2
and JMS
addParameter () D2 set a data for JMS and encrypt
automatically
getParameterValue() JMS read a data from D2 and
decrypt automatically
Server Method result
D2Method.java
This class is used for all D2 methods

setMethodReturn(code, message)
Set a message crypted automatically to return to D2.

setMethodError(exception)
Set a exception message crypted automatically to
return to D2
D2CryptoUtil.java
getEncryptionKey()
Return key to crypt D2 method parameters or D2 method
response
getDecryptionKey()
Return key to crypt D2 method parameters or D2 method
response
encryptUrlParameter()
Encrypt parameters for ReloadOptions , RefreshCache ,
LoadOnStartup servlets.
decryptUrlParameter()
Decrypt parameters for ReloadOptions , RefreshCache ,
LoadOnStartup servlets.