Advantage Database Server

sp_SetDDEncryptionType

Advantage SQL Engine

sp_SetDDEncryptionType

Advantage SQL Engine

Previous topic Next topic  

sp_SetDDEncryptionType

Advantage SQL Engine

Previous topic Next topic  

Changes the encryption type on a data dictionary.

Syntax

sp_SetDDEncryptionType(

 DictionaryName,Character,515,

 AdsSysPW,Character,20,

 DDPassword,Character,20,

 EncryptionType,Character,10,

 Encrypt,Logical )

Parameters

DictionaryName (I)

Name of data dictionary. This can include path information if the dictionary is in a different folder from the connection path. This process requires exclusive access to the dictionary and, thus, cannot be opened elsewhere.

AdsSysPW (I)

The administrator password to the dictionary.

DDPassword (I)

Specifies the dictionary password. When using AES encryption, the key data derived from this password is used both for encrypting the data dictionary itself (if it is encrypted) and for encrypting tables in the dictionary. The default RC4 encryption does not use this dictionary password, although if this function is being used to change from AES encryption to RC4 encryption, this parameter still is required to specify the existing password.

EncryptionType (I)

Specifies the new encryption type to use. Valid values are AES128, AES256, and RC4.

Encrypt (I)

Specifies whether or not the dictionary itself will be encrypted.

Output

None

Remarks

The sp_SetDDEncryptionType procedure can be used to convert an existing data dictionary to a new encryption type. For example, in order to use a dictionary in FIPS mode, it must be converted to use AES encryption. Even if none of the tables are encrypted, some encryption is used for storing values in the dictionary itself (e.g., password verification data, dictionary link information, etc.).

If the dictionary contains any encrypted tables, they must be decrypted prior to calling this procedure. The procedure itself verifies that all tables are decrypted prior to performing any work and returns an error if that condition is not met.

Important Note After calling this function, all user passwords will be lost. The dictionary does not store passwords. It only stores password verification information, so there is no way to retrieve and update the existing passwords. Therefore, after using this procedure, you must update all user passwords.

 

Example

-- Change a dictionary's encryption type to AES128 and encrypt the dictionary

EXECUTE PROCEDURE sp_SetDDEncryptionType( 'mydd.add', 'adssyspass',

              'dictionarypassword', 'AES128', TRUE );

 

See Also

sp_EncryptTable

sp_DecryptTable

Encryption Overview