Electronic device using homomorphic encryption and encrypted data processing method thereof
US-12170719-B2 · Dec 17, 2024 · US
US2020287709A1 · US · A1
| Field | Value |
|---|---|
| Publication number | US-2020287709-A1 |
| Application number | US-201916296303-A |
| Country | US |
| Kind code | A1 |
| Filing date | Mar 8, 2019 |
| Priority date | Mar 8, 2019 |
| Publication date | Sep 10, 2020 |
| Grant date | — |
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.
According to one or more embodiments of the present invention, a computer implemented method includes computing a hash value of a page of memory of a computer system and comparing the hash value with a previously computed hash value of the page. A per-encryption value per page can be used in encrypting the page based on determining that the hash value matches the previously computed hash value. A modified value of the per-encryption value per page can be used in encrypting the page based on determining that the hash value mismatches the previously computed hash value.
Opening claim text (preview).
What is claimed is: 1 . A method comprising: computing a hash value of a page of memory of a computer system; comparing the hash value with a previously computed hash value of the page; using a per-encryption value per page in encrypting the page based on determining that the hash value matches the previously computed hash value; and using a modified value of the per-encryption value per page in encrypting the page based on determining that the hash value mismatches the previously computed hash value. 2 . The method of claim 1 , wherein the encrypting is performed by a secure control interface responsive to a request of a host to convert the page from a secure page to a non-secure page. 3 . The method of claim 2 , further comprising: providing the non-secure page as encrypted to the host for storage. 4 . The method of claim 3 , further comprising: storing the hash value in a secure table of the secure control interface. 5 . The method of claim 4 , further comprising: converting the non-secure page to the secure page; decrypting, by the secure interface control, the secure page based on the per-encryption value associated with the page to produce a decrypted page; computing a hash value of the decrypted page; comparing the hash value of the decrypted page with the hash value of the page as stored in the secure table; and validating the decrypted page based on determining that the hash value of the decrypted page matches the hash value stored in the secure table. 6 . The method of claim 2 , wherein the secure interface control comprises firmware, hardware, or a combination of firmware and hardware; the secure page is assigned to a secure container or a secure virtual machine managed by the host; and the host is a hypervisor or an operating system. 7 . The method of claim 1 , wherein encrypting the page incorporates a combination of an address value associated with the page, one or more random values, and the per-encryption value with a cryptographically-secure hash function. 8 . The method of claim 1 , wherein an initial value of the per-encryption value is established before the per-encryption value is used. 9 . A system comprising: a memory; a processing unit; and a secure interface control interfaced with the processing unit and the memory, the secure interface control configured to perform operations comprising: computing a hash value of a page of the memory; comparing the hash value with a previously computed hash value of the page; using a per-encryption value per page in encrypting the page based on determining that the hash value matches the previously computed hash value; and using a modified value of the per-encryption value per page in encrypting the page based on determining that the hash value mismatches the previously computed hash value. 10 . The system of claim 9 , wherein the encrypting is performed by the secure control interface responsive to a request of a host to convert the page from a secure page to a non-secure page. 11 . The system of claim 10 , wherein the operations further comprise providing the non-secure page as encrypted to the host for storage. 12 . The system of claim 11 , wherein the operations further comprise storing the hash value in a secure table of the secure control interface. 13 . The system of claim 12 , wherein the operations further comprise: converting the non-secure page to the secure page; decrypting, by the secure interface control, the secure page based on the per-encryption value associated with the page to produce a decrypted page; computing a hash value of the decrypted page; comparing the hash value of the decrypted page with the hash value of the page as stored in the secure table; and validating the decrypted page based on determining that the hash value of the decrypted page matches the hash value stored in the secure table. 14 . The system of claim 10 , wherein the secure interface control comprises firmware, hardware, or a combination of firmware and hardware; the secure page is assigned to a secure container or a secure virtual machine managed by the host; and the host is a hypervisor or an operating system. 15 . The system of claim 9 , wherein encrypting the page incorporates a combination of an address value associated with the page, one or more random values, and the per-encryption value with a cryptographically-secure hash function. 16 . The system of claim 9 , wherein an initial value of the per-encryption value is established before the per-encryption value is used. 17 . A computer program product comprising a computer readable storage medium, the computer readable storage medium comprising computer executable instructions, which when executed perform a method comprising: computing a hash value of a page of memory of a computer system; comparing the hash value with a previously computed hash value of the page; using a per-encryption value per page in encrypting the page based on determining that the hash value matches the previously computed hash value; and using a modified value of the per-encryption value per page in encrypting the page based on determining that the hash value mismatches the previously computed hash value. 18 . The computer program product of claim 17 , wherein the encrypting is performed by a secure control interface responsive to a request of a host to convert the page from a secure page to a non-secure page. 19 . The computer program product of claim 18 , wherein the executable instructions when executed further perform the method comprising: providing the non-secure page as encrypted to the host for storage. 20 . The computer program product of claim 19 , wherein the executable instructions when executed further perform the method comprising: storing the hash value in a secure table of the secure control interface. 21 . The computer program product of claim 20 , wherein the executable instructions when executed further perform the method comprising: converting the non-secure page to the secure page; decrypting, by the secure interface control, the secure page based on the per-encryption value associated with the page to produce a decrypted page; computing a hash value of the decrypted page; comparing the hash value of the decrypted page with the hash value of the page as stored in the secure table; and validating the decrypted page based on determining that the hash value of the decrypted page matches the hash value stored in the secure table. 22 . The computer program product of claim 18 , wherein the secure page is assigned to a secure container or a secure virtual machine managed by the host, and the host is a hypervisor or an operating system. 23 . The computer program product of claim 17 , wherein encrypting the page incorporates a combination of an address value associated with the page, one or more random values, and the per-encryption value with a cryptographically-secure hash function. 24 . The computer program product of claim 17 , wherein an initial value of the per-encryption value is established before the per-encryption value is used.
involving non-keyed hash functions, e.g. modification detection codes [MDCs], MD5, SHA or RIPEMD · CPC title
Escrow, recovery or storing of secret information, e.g. secret key escrow or cryptographic key storage · CPC title
to assure secure storage of data (address-based protection against unauthorised use of memory G06F12/14; record carriers for use with machines and with at least a part designed to carry digital markings G06K19/00) · CPC title
the protection being virtual, e.g. for virtual blocks or segments before a translation mechanism · CPC title
the protection being physical, e.g. cell, word, block · CPC title
Related publications grouped by family.
Answers are generated from the same data shown on this page.