| CPC G06F 21/79 (2013.01) [G06F 21/602 (2013.01); G06F 21/6227 (2013.01); G06N 20/00 (2019.01)] | 19 Claims |

|
1. An operating method for a storage device including a storage controller and a non-volatile memory, the operating method comprising:
receiving a command including data and a field related to the data from a host;
determining an operation mode based on the command;
selectively encrypting the data based on the operation mode to generate selectively encrypted data; and
storing the selectively encrypted data in the non-volatile memory,
wherein selectively encrypting of the data includes encrypting the data based on a first encryption algorithm that is a homomorphic encryption algorithm subsequent to determining that the operation mode is a first operation mode, or encrypting the data based on a second encryption algorithm different from the first encryption algorithm subsequent to determining that the operation mode is a second operation mode, and
wherein determining the operation mode in response to the command includes:
identifying one of a first field indicating whether computation on the data is performed by the storage controller and a second field indicating whether the data included in the command is encrypted data, and
determining the operation mode based on the identified one of the first field and the second field.
|