Authenticating key-value data pairs for protecting node related data
US-2024064130-A1 · Feb 22, 2024 · US
US12120097B2 · US · B2
| Field | Value |
|---|---|
| Publication number | US-12120097-B2 |
| Application number | US-202217889782-A |
| Country | US |
| Kind code | B2 |
| Filing date | Aug 17, 2022 |
| Priority date | Aug 17, 2022 |
| Publication date | Oct 15, 2024 |
| Grant date | Oct 15, 2024 |
A practical reading order for non-experts. Skip the full description unless you need deep technical detail.
What the patent document calls the invention.
A short plain-language summary of the technical disclosure.
Who owns or filed the patent and who is credited as inventor.
Filing, priority, publication, and grant dates set the timeline.
The legal scope of protection — read this for what is actually claimed.
Technology tags used to group this patent with similar filings.
Prior art links and similar publications in this corpus.
Official abstract text for this publication.
A computer-implemented method according to one embodiment includes using a first symmetric key to encrypt a second symmetric key. The first symmetric key is securely loaded inside a hardware security module (HSM) by a key management service before the encryption of the second symmetric key, and a cloud provider only has access to encrypted bits of the first symmetric key. Key data of a key-value-pair of the second symmetric key is used as additional authenticated data (AAD) for the encryption of the second symmetric key. The second symmetric key is used to encrypt value data of the key-value-pair. The method further includes storing the encrypted second symmetric key, the AAD used in the encryption of the second symmetric key, and tag bits created during the encryption of the second symmetric key, to thereafter use for verifying node related data.
Opening claim text (preview).
What is claimed is: 1. A computer-implemented method, comprising: using a first symmetric key to encrypt a second symmetric key, wherein the first symmetric key is securely loaded inside a hardware security module (HSM) by a key management service before the encryption of the second symmetric key, wherein a cloud provider only has access to encrypted bits of the first symmetric key; wherein key data of a key-value-pair of the second symmetric key is used as additional authenticated data (AAD) for the encryption of the second symmetric key; using the second symmetric key to encrypt value data of the key-value-pair; and storing the encrypted second symmetric key, the AAD used in the encryption of the second symmetric key, and tag bits created during the encryption of the second symmetric key, to thereafter use for verifying node related data. 2. The computer-implemented method of claim 1 , comprising: receiving the node related data of a node, wherein the node related data includes tag bits of the node and an AAD of the node; using the first symmetric key to decrypt an encrypted third symmetric key associated with the node related data; and determining an authenticity of the decrypted third symmetric key, wherein the authenticity of the decrypted third symmetric key is determined based on a first comparison of the tag bits of the node with the tag bits created during the encryption of the second symmetric key, and based on a second comparison of the AAD of the node with the AAD used in the encryption of the second symmetric key. 3. The computer-implemented method of claim 2 , wherein the decrypted third symmetric key is determined to be authentic in response to a determination that the AAD of the node matches with the AAD used in the encryption of the second symmetric key in the first comparison, and a determination that the tag bits of the node match with the tag bits created during the encryption of the second symmetric key in the second comparison. 4. The computer-implemented method of claim 3 , comprising: in response to the determination that the decrypted third symmetric key is authentic, using the decrypted third symmetric key to decrypt the encrypted value data of the key-value-pair; and performing a verification operation on the received node related data. 5. The computer-implemented method of claim 3 , wherein the third symmetric key is the second symmetric key. 6. The computer-implemented method of claim 3 , wherein the decrypted third symmetric key is determined to be not authentic in response to a determination that the AAD of the node do not match with the AAD used in the encryption of the second symmetric key in the first comparison and/or a determination that the tag bits of the node do not match with the tag bits created during the encryption of the second symmetric key in the second comparison, and comprising: in response to a determination that the decrypted third symmetric key is not authentic, not using the decrypted third symmetric key to decrypt the encrypted value data of the key-value-pair; and outputting a warning that the received node related data failed authentication. 7. The computer-implemented method of claim 1 , wherein securely loading the first symmetric key inside the HSM by the key management service before the encryption of the second symmetric key includes: loading an encrypted instance key encryption key (IKEK) of a database to the HSM, using a master key encryption key (MKEK) of the HSM to decrypt the encrypted IKEK in the HSM, loading the first symmetric key to the HSM from the database, wherein the first symmetric key is encrypted in the database, and using the decrypted IKEK to decrypt the encrypted first symmetric key. 8. The computer-implemented method of claim 1 , wherein Advanced Encryption Standard with Galois/Counter Mode (AES-GCM) encryption is used to encrypt the second symmetric key. 9. The computer-implemented method of claim 1 , comprising: executing a verifier of an attestable trusted execution environment (TEE) to verify the node related data in a cloud computing environment inside the TEE. 10. The computer-implemented method of claim 1 , wherein the encryption of the second symmetric key is an authenticated encryption with associated data (AEAD), wherein the key data of the key-value-pair of the second symmetric key is used as the AAD for the AEAD encryption of the second symmetric key. 11. A computer program product, the computer program product comprising a computer readable storage medium having program instructions embodied therewith, the program instructions readable and/or executable by a computer to cause the computer to: use, by the computer, a first symmetric key to encrypt a second symmetric key, wherein the first symmetric key is securely loaded inside a hardware security module (HSM) by a key management service before the encryption of the second symmetric key, wherein a cloud provider only has access to encrypted bits of the first symmetric key; wherein key data of a key-value-pair of the second symmetric key is used as additional authenticated data (AAD) for the encryption of the second symmetric key; use, by the computer, the second symmetric key to encrypt value data of the key-value-pair; and store, by the computer, the encrypted second symmetric key, the AAD used in the encryption of the second symmetric key, and tag bits created during the encryption of the second symmetric key, to thereafter use for verifying node related data. 12. The computer program product of claim 11 , the program instructions readable and/or executable by the computer to cause the computer to: receive, by the computer, the node related data of a node, wherein the node related data includes tag bits of the node and an AAD of the node; use, by the computer, the first symmetric key to decrypt an encrypted third symmetric key associated with the node related data; and determine, by the computer, an authenticity of the decrypted third symmetric key, wherein the authenticity of the decrypted third symmetric key is determined based on a first comparison of the tag bits of the node with the tag bits created during the encryption of the second symmetric key, and based on a second comparison of the AAD of the node with the AAD used in the encryption of the second symmetric key. 13. The computer program product of claim 12 , wherein the decrypted third symmetric key is determined to be authentic in response to a determination that the AAD of the node matches with the AAD used in the encryption of the second symmetric key in the first comparison, and a determination that the tag bits of the node match with the tag bits created during the encryption of the second symmetric key in the second comparison. 14. The computer program product of claim 13 , the program instructions readable and/or executable by the computer to cause the computer to: in response to the determination that the decrypted third symmetric key is authentic, use, by the computer, the decrypted third symmetric key to decrypt the encrypted value data of the key-value-pair; and perform, by the computer, a verification operation on the received node related data. 15. The computer program product of claim 13 , wherein the third symmetric key is the second symmetric key. 16. The computer program product of claim 13 , wherein the decrypted third symmetric key is determined to be not authentic in response to a determination that the AAD of the node do not match with the AAD used in the encryption of the second symmetric key in the first comparison and/or a determina
involving a third party or a trusted authority · CPC title
using key encryption key · CPC title
Substitution permutation network [SPN], i.e. cipher composed of a number of stages or rounds each involving linear and nonlinear transformations, e.g. AES algorithms · CPC title
using challenge-response · CPC title
involving central third party, e.g. key distribution center [KDC] or trusted third party [TTP] · CPC title
Related publications grouped by family.
Answers are generated from the same data shown on this page.