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 the selectively encrypting of the data includes encrypting the data based on a first encryption algorithm that is a homomorphic encryption algorithm when the operation mode is a first operation mode, and encrypting the data based on a second encryption algorithm different from the first encryption algorithm when the operation mode is a second operation mode, and wherein determining of the operation mode in response to the command includes identifying a first field included in the command indicating whether computation on the data is performed by the storage controller, wherein the computation comprises an arithmetic operation, learning operation, or inference operation, and a second field included in the command indicating whether the data included in the command is encrypted data; and determining the operation mode based on the first field and the second field. 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 the selectively encrypting of the data includes encrypting the data based on a first encryption algorithm that is a homomorphic encryption algorithm when the operation mode is a first operation mode, and encrypting the data based on a second encryption algorithm different from the first encryption algorithm when the operation mode is a second operation mode, and wherein determining of the operation mode in response to the command includes identifying a first field included in the command indicating whether computation on the data is performed by the storage controller, wherein the computation comprises an arithmetic operation, learning operation, or inference operation, and a second field included in the command indicating whether the data included in the command is encrypted data; and determining the operation mode based on the first field and the second field. 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 the selectively encrypting of the data includes encrypting the data based on a first encryption algorithm that is a homomorphic encryption algorithm when the operation mode is a first operation mode, and encrypting the data based on a second encryption algorithm different from the first encryption algorithm when the operation mode is a second operation mode, and wherein determining of the operation mode in response to the command includes identifying a first field included in the command indicating whether computation on the data is performed by the storage controller, wherein the computation comprises an arithmetic operation, learning operation, or inference operation, and a second field included in the command indicating whether the data included in the command is encrypted data; and determining the operation mode based on the first field and the second field.