Multi-tenant encryption for storage class memory
US-2018095898-A1 · Apr 5, 2018 · US
US10241934B2 · US · B2
| Field | Value |
|---|---|
| Publication number | US-10241934-B2 |
| Application number | US-201715695726-A |
| Country | US |
| Kind code | B2 |
| Filing date | Sep 5, 2017 |
| Priority date | Mar 16, 2017 |
| Publication date | Mar 26, 2019 |
| Grant date | Mar 26, 2019 |
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 an embodiment, upon receiving a use request including an identifier of a program and authentication information, a use request processing unit makes a determination on validity of the use request based on an ID management information and access authority management information, generates an access key when the use request is valid, registers the access key in access key management information in correlation with a usable address range, and returns the access key to a transmission source of the use request. Upon receiving a read/write request including an address where reading-out or writing of data is performed and an access key, a read/write request processing unit makes a determination on validity of the read/write request based on the access key management information, and executes reading-out or writing of data with respect to a shared memory in response to the read/write request when the read/write request is valid.
Opening claim text (preview).
What is claimed is: 1. A shared memory controller that controls access to a shared memory, comprising: a storage configured to store therein ID management information in which an identifier of a program that uses the shared memory and authentication information are associated with each other, access authority management information in which an address range and an identifier of a program for which access to the address range is permitted are associated with each other, and access key management information in which an address range and an access key for access to an address within the address range are associated with each other; and processing circuitry configured to upon receiving a use request including an identifier of a program and authentication information, make a determination on validity of the use request based on the ID management information and the access authority management information, when the use request is valid, generate an access key, register the generated access key in the access key management information in correlation with a usable address range, and return the generated access key and the usable address range to a transmission source of the use request, upon receiving a read/write request including an address where reading-out or writing of data is performed and an access key, make a determination on validity of the read/write request based on the access key management information, and when the read/write request is valid, execute reading-out or writing of data with respect to the shared memory in response to the read/write request. 2. The controller according to claim 1 , wherein the use request further includes designation of an address that is desired to use or designation of a memory quantity that is desired to use, when receiving the use request including the designation of the address that is desired to use, in a case where a combination of the identifier of the program and the authentication information, which are included in the use request, is registered in the ID management information, and the address that is designated in the use request is included in the address range that is registered in the access authority management information in correlation with the identifier of the program included in the use request, the processing circuitry determines that the use request is valid, and returns the address range to a transmission source of the use request as a usable address range together with the access key, and when receiving the use request including the designation of the memory quantity that is desired to use, in a case where the combination of the identifier of the program and the authentication information, which are included in the use request, is registered in the ID management information, the processing circuitry determines that the use request is valid, registers a newly set address range and the identifier of the program included in the use request in the access authority management information in correlation with each other, and returns the newly set address range to a transmission source of the use request as a usable address range together with the access key. 3. The controller according to claim 2 , wherein the use request further includes additional information indicating a type of scheduled access, and the processing circuitry determines the newly set address range based on the additional information included in the use request. 4. The controller according to claim 1 , wherein the read/write request includes an address range as a data read/write address. 5. The controller according to claim 1 , wherein the shared memory is a non-volatile memory. 6. A shared memory module, comprising: a shared memory; and a shared memory controller that controls access to the shared memory, wherein the shared memory controller includes: a storage configured to store therein ID management information in which an identifier of a program that uses the shared memory and authentication information are associated with each other, access authority management information in which an address range and an identifier of a program for which access to the address range is permitted are associated with each other, and access key management information in which an address range and an access key for access to an address within the address range are associated with each other; and processing circuitry configured to upon receiving a use request including an identifier of a program and authentication information, make a determination on validity of the use request based on the ID management information and the access authority management information, when the use request is valid, generate an access key, register the generated access key in the access key management information in correlation with a usable address range, and return the generated access key and the usable address range to a transmission source of the use request, upon receiving a read/write request including an address where reading-out or writing of data is performed and an access key, make a determination on validity of the read/write request based on the access key management information, and when the read/write request is valid, execute reading-out or writing of data with respect to the shared memory in response to the read/write request. 7. A memory sharing system, comprising: a plurality of servers; and a shared memory module that is shared by the plurality of servers, wherein each of the plurality of servers includes a processor that executes a program, and a server controller that controls use of the shared memory by the program, the shared memory module includes a shared memory, and a shared memory controller that controls access to the shared memory, the server controller includes: a server-side storage configured to store therein key management information; server-side processing circuitry configured to transmit a use request including an identifier of a program and authentication information to the shared memory module in response to a request of the program that is executed by the processor, upon receiving an access key and a usable address range from the shared memory module, register the access key and the usable address range thus received in the key management information in correlation with each other, transmit a read/write request, which includes an address where reading-out or writing of data is performed, and an access key registered in the key management information in correlation with an address range including the address, to the shared memory module in response to a request of a program that is executed by the processor, and the shared memory controller includes: a shared memory-side storage configured to store therein ID management information in which an identifier of a program that uses the shared memory and authentication information are associated with each other, access authority management information in which an address range and an identifier of a program for which access to the address range is permitted are associated with each other, and access key management information in which an address range and an access key for access to an address within the address range are associated with each other; and shared memory side processing circuitry configured to upon receiving the use request from any one of the plurality of servers, make a determination on validity of the use request based on the ID management information and the access authority management information, when the use request is valid, generate an access key, register the generated access key in the access key management information in correlation with a usable address range, and return the generated access key and the usable address range to a
for a range · CPC title
Program or device authentication · CPC title
in a virtual system, e.g. with translation means · CPC title
Non-volatile memory · CPC title
Security improvement · CPC title
Related publications grouped by family.
Answers are generated from the same data shown on this page.