How is the RKM client cache encrypted?
--------------------------------
How are keys in cache protected?
--------------------------------
DEK = Data Encryption Key received from RKM Server
PASSWORD = Cache password
SALT = random bytes
ITERATIONS = randomly generated between 1000 and 2000
KEK = PBKDF2(PASSWORD, SALT, ITERATIONS) = Key Encryption Key
KEKIV = random bytes = Key Encryption Key Initialization Vector
DEKHASH = concat(DEK, hash(DEK)) = Concatenation of DEK and its hash for integrity check
CEK = random bytes = Cache Encryption Key
CEKIV = random bytes = Cache Encryption Key Initialization Vector
CEKHMAC = concat(CEK, hmac(CEK, KEK)) = Concatenation of CEK and its HMAC, for integrity check
-------------------
What's in the cache
-------------------
KM_Security_table.iteration_count = ITERATIONS
KM_Security_table.salt = base64_encode(SALT)
KM_Security_table.kek_iv = base64_encode(KEKIV)
KM_Security_table.cek_iv = base64_encode(CEKIV)
KM_Security_table.cek = base64_encode(aes_encrypt(CEKHMAC using KEK and KEKIV))
KM_Key_Table.key = base64_encode(aes_encrypt(DEKHASH using CEK and CEKIV))
Related Articles
When re-imaging SA.1.3 via idrac and getting error "copy of uudecode failed" 4Number of Views Disk Usage Threshold Alert 9Number of Views Error 10008 (NOT_FOUND) when reading in a DSA certificate 18Number of Views Parsing Old Messages Against A New XML 38Number of Views Web Server Will Not Start Up After Applying Service Pack 2 25Number of Views
Trending Articles
How to manipulate imported RSA SecurID Software Token(s) on an iPhone or iPad device How to Download OTP Token Seed Files from myRSA Installing a new license on RSA Authentication Manager RSA Authentication Manager 8.9 Release Notes (January 2026) Quick Setup Guide - Passwordless Authentication in Windows MFA Agent for Active Directory