US2019116022A1PendingUtilityA1
Encryption device and operation method thereof
Assignee: SAMSUNG ELECTRONICS CO LTDPriority: Oct 16, 2017Filed: Oct 11, 2018Published: Apr 18, 2019
Est. expiryOct 16, 2037(~11.3 yrs left)· nominal 20-yr term from priority
H04L 9/002A61K 39/0011G06F 21/606G01N 2333/57G01N 2333/5409G01N 33/56972G01N 33/56966G01N 33/5091G01N 33/505C07K 14/705C07K 14/4748C07K 14/47C07K 7/08C07K 7/06A61K 2039/55566A61K 38/1793G06F 21/556G06F 21/602H04L 2209/24H04L 2209/08
52
PatentIndex Score
0
Cited by
0
References
0
Claims
Abstract
An encryption device for performing virtual and real operations and a method of operating the encryption device. The method includes performing a virtual operation; when a real operation request signal is received, determining whether the virtual operation being performed is completed; and in response to the virtual operation being completed, performing a real operation in response to the real operation request signal.
Claims
exact text as granted — not AI-modifiedWhat is claimed is:
1 . A method of operating an encryption device, the method comprising:
performing a virtual operation; when a real operation request signal is received, determining whether the virtual operation being performed is completed; and in response to the virtual operation being completed, performing a real operation in response to the real operation request signal.
2 . The method of claim 1 , further comprising receiving a delay number from outside of the encryption device,
wherein the performing of the virtual operation comprises: in response to the virtual operation being completed, performing the virtual operation a number of times equal to the delay number before the real operation is performed.
3 . The method of claim 2 , wherein the delay number comprises a value received from a host outside the encryption device.
4 . The method of claim 2 , wherein the delay number comprises a random value received from a random value generator outside the encryption device.
5 . The method of claim 1 , wherein each of the virtual operation and the real operation comprises a plurality of round operations, and
one round of the virtual operation and one round of the real operation each comprise a plurality of sub-round operations.
6 . The method of claim 5 , wherein the plurality of sub-round operations are classified into real sub-round operations and virtual sub-round operations, and
the method further comprises forming a plurality of rounds, each comprising a real sub-round operation and a plurality of virtual sub-round operations of a first number.
7 . The method of claim 6 , wherein the encryption device further comprises a counter and a real sub-round operation register configured to store a random value, and
the forming of the plurality of rounds comprises: initializing the counter and the random value and starting forming a first round; sequentially counting, by the counter, the plurality of sub-round operations and deriving a count value; performing the real sub-round operation when the count value is equal to the random value, and performing one virtual sub-round operation when the count value is different from the random value; and completing the first round when the count value is equal to a reference count value.
8 . The method of claim 6 , wherein the first number is a value obtained by 2 n −1, where n is a positive integer.
9 . The method of claim 6 , wherein the encryption device comprises a plurality of virtual operation registers, each of which is configured to store dummy data and a dummy encryption key on which the virtual sub-round operations are based.
10 . The method of claim 9 , further comprising:
receiving a plurality of random bits; selecting one of the plurality of virtual operation registers, based on the plurality of random bits; and performing a sub-round operation based on the dummy data and the dummy encryption key stored in the one of the plurality of virtual operation registers.
11 . A method of operating an encryption device for performing a virtual operation and a real operation, each of which comprises a plurality of round operations each comprising a plurality of sub-round operations classified into real sub-round operations and virtual sub-round operations, the method comprising:
initializing a count value and a random value regarding the plurality of sub-round operations and starting forming a round comprising a plurality of sub-round operations including one real sub-round operation and a plurality of virtual sub-round operations; deriving a count value by counting the sub-round operations; performing the one real sub-round operation when the count value is equal to the random value, and performing one of the plurality of virtual sub-round operations when the count value is different from the random value; and when the count value is equal to a reference count value, completing the round.
12 . The method of claim 11 , wherein a sum of a first number of times that the one real sub-round operation is performed and a second number of times that the plurality of virtual sub-round operations are performed is equal to 2 n , where n is a positive integer, and
wherein the one real sub-round operation and the plurality of virtual sub-round operations are comprised in the round.
13 . The method of claim 11 , further comprising:
performing the virtual operation; when a real operation request signal is received, determining whether the plurality of round operations comprised in the virtual operation, which is being performed, are completed; and in response to the plurality of round operations being completed, performing the real operation in response to the real operation request signal.
14 . The method of claim 13 , further comprising receiving a delay number from the outside of the encryption device,
wherein the performing of the real operation comprises: in response to the plurality of round operations being completed, performing the virtual operation a number of times equal to the delay number before the real operation is performed.
15 . The method of claim 11 , wherein the encryption device comprises a first virtual operation register and a second virtual operation register, each of which is configured to store dummy data and a dummy encryption key on which the plurality of virtual sub-round operations are based,
wherein the method further comprises: selecting one of the first virtual operation register and the second virtual operation register based on a random bit; and performing a sub-round operation based on the dummy data and the dummy encryption key stored in the selected one of the first virtual operation register and the second virtual operation register.
16 . The method of claim 15 , wherein the random value comprises the random bit.
17 . An encryption device for performing a virtual operation and a real operation each comprising a plurality of round operations each comprising a plurality of sub-round operations classified into real sub-round operations and virtual sub-round operations, the encryption device comprising:
a first virtual operation register configured to store first dummy data and a first dummy encryption key on which the virtual sub-round operations are based; a second virtual operation register configured to store second dummy data and a second dummy encryption key on which the virtual sub-round operations are based; and a first multiplexer configured to receive a first output from the first virtual operation register and a second output from the second virtual operation register, select one of the first output or the second output based on a random bit, and output the one of the first output or the second output that is selected.
18 . The encryption device of claim 17 , further comprising:
a real operation register configured to store real data and a real encryption key on which the real sub-round operations are based; and a second multiplexer configured to receive a third output from the real operation register and a fourth output from the first multiplexer, select one of the third output or the fourth output in response to a real sub-round operation performance signal, and output the one of the third output or the fourth output that is selected.
19 . The encryption device of claim 17 , further comprising:
a data function module configured to perform an encryption operation based on the virtual operation and the real operation; and an encryption/decryption controller configured to receive a delay number from the outside of the encryption device, and when the data function module receives a real operation performance request while the virtual operation is being performed, control the data function module to perform the virtual operation a number of times equal to the delay number.
20 . The encryption device of claim 17 , wherein each of the plurality of round operations comprises one real sub-round operation and a plurality of virtual sub-round operations.Cited by (0)
No later patents cite this yet.
References (0)
No backward citations on record.