IP Library Granted Patent US 9,515,821
Granted Patent B2
US 9,515,821 · App. 14/576,727 · Granted Dec 6, 2016

Apparatus and method for data encryption

Inventors: Kyu-Young Choi (Seoul, KR); Ji-Hoon Cho (Seoul, KR); Hyo-Jin Yoon (Seoul, KR)
Assignee: SAMSUNG SDS CO., LTD.
H04L9/0819H04L9/0637H04L9/0822H04L9/0825H04L2209/16H04L2209/24
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 9,515,821
App. No.
14/576,727
Granted
Dec 6, 2016
Kind
B2
Abstract

Provided is an apparatus for encrypting data including a key determiner configured to determine a cipher key for white-box cryptography (WBC)-based encryption and a symmetric key different from the cipher key and an encrypter configured to generate a ciphertext of the data using the WBC-based encryption and symmetric-key-based encryption with the symmetric key.

Claims (56)

1. An apparatus, intended for use in encrypting data, comprising:

a key determiner configured to determine a cipher key, for white-box cryptography (WBC)-based encryption, and a symmetric key different from the cipher key;

an encrypter configured to generate a ciphertext of the data by applying the WBC-based encryption with the cipher key to a part of the data and by applying symmetric-key-based encryption with the symmetric key to another part, to which the WBC-based encryption is not applied, of the data, wherein the encrypter is further configured to generate the ciphertext so as to include:

a symmetric-key-based ciphertext; and a WBC-based ciphertext adapted for use in decrypting the symmetric-key-based ciphertext; and

one or more hardware processors implementing the key determiner and the encrypter.

2. The apparatus of claim 1 , wherein the encrypter comprises:

a WBC-based encrypter configured to apply the WBC-based encryption to a first part of the data to generate the WBC-based ciphertext; and

a symmetric-key-based encrypter configured to apply the symmetric-key-based encryption to a second part of the data different from the first part of the data to generate the symmetric-key-based ciphertext.

3. The apparatus of claim 1 , wherein the encrypter comprises: an initializer configured to generate an initialization vector;

a WBC-based encrypter configured to apply the WBC-based encryption to the initialization vector to generate the WBC-based ciphertext; and

a symmetric-key-based encrypter configured to apply the symmetric-key-based encryption to the data to generate the symmetric-key-based ciphertext.

4. The apparatus of claim 2 , wherein:

the encrypter further comprises an initializer configured to generate an initialization vector; and

the WBC-based encrypter uses the initialization vector to apply the WBC-based encryption.

5. The apparatus of claim 3 , wherein: the initialization vector includes a counter value; and

the symmetric-key-based encrypter is further configured to use the counter value to apply the symmetric-key-based encryption.

6. An apparatus, intended for use in decrypting a ciphertext of data, comprising:

a white-box cryptography (WBC)-based decrypter configured to apply WBC-based decryption, using a cipher key, only to a first part of the ciphertext, to generate decrypted information; and

a symmetric-key-based decrypter configured to decrypt a second part, to which WBC-based encryption has not been applied, of the ciphertext by applying symmetric-key-based decryption, using a symmetric key and the decrypted information; and

one or more hardware processors implementing the WBC-based decrypter and the symmetric-key-based decrypter;

wherein the symmetric key is different from the cipher key.

7. The apparatus of claim 6 , wherein the decrypted information is a part of the data.

8. The apparatus of claim 6 , wherein the decrypted information is an initialization vector for encrypting the data.

9. A method, of encrypting data, comprising: determining a cipher key for white-box cryptography (WBC)-based encryption;

determining a symmetric key different from the cipher key;

generating a ciphertext of the data by applying the WBC-based encryption with the cipher key to a part of the data and by applying symmetric-key-based encryption with the symmetric key to another part, to which the WBC-based encryption is not applied, of the data, wherein the generating of the ciphertext is performed so as to include:

a symmetric-key-based ciphertext; and a WBC-based ciphertext adapted for use in decrypting the symmetric-key-based ciphertext, and

wherein the generating of the ciphertext is implemented by one or more hardware processors.

10. The method of claim 9 , wherein the generating of the ciphertext further comprises:

applying the WBC-based encryption to a first part of the data to generate the WBC-based ciphertext; and

applying the symmetric-key-based encryption to a second part of the data different from the first part of the data to generate the symmetric-key-based ciphertext.

11. The method of claim 9 , wherein the generating of the ciphertext comprises:

generating an initialization vector;

applying the WBC-based encryption to the initialization vector to generate the WBC-based ciphertext; and

applying the symmetric-key-based encryption to the data to generate the symmetric-key-based ciphertext.

12. The method of claim 10 , wherein the generating of the ciphertext further comprises generating an initialization vector for encrypting the data, wherein the generating of the WBC-based ciphertext comprises using the initialization vector to apply the WBC-based encryption.

13. The method of claim 11 , wherein:

the generating of the initialization vector is performed so that the initialization vector includes a counter value; and

the generating of the symmetric-key-based ciphertext comprises using the counter value to apply the symmetric-key-based encryption.

14. A method, of decrypting a ciphertext of data, comprising:

applying white-box cryptography (WBC)-based decryption, using a cipher key, only to a first part of the ciphertext, to generate decrypted information; and

decrypting a second part, to which WBC-based encryption has not been applied, of the ciphertext by applying symmetric-key-based decryption, using a symmetric key and the decrypted information;

wherein:

the symmetric key is different from the cipher key; and

the applying of the WBC-based decryption and the applying of the symmetric-key-based decryption are implemented by one or more hardware processors.

15. The method of claim 14 , wherein the decrypted information is a part of the data.

16. The method of claim 14 , wherein the decrypted information is an initialization vector for encrypting the data.

17. A computer program product comprising a non-transitory computer readable medium storing instructions configured to enable a hardware processor to implement operations including:

determining a cipher key for white-box cryptography (WBC)-based encryption;

determining a symmetric key different from the cipher key; and

generating a ciphertext of the data by applying the WBC-based encryption with the cipher key to a part of the data and by applying symmetric-key-based encryption with the symmetric key to another part, to which the WBC-based encryption is not applied, of the data, wherein the generating of the ciphertext is performed so as to include:

a symmetric-key-based ciphertext; and a WBC-based ciphertext adapted for use in decrypting the symmetric-key-based ciphertext.

18. A computer program product comprising a non-transitory computer readable storing instructions configured to enable a hardware processor to implement operations including:

applying white-box cryptography (WBC)-based decryption, using a cipher key, only to a first part of the ciphertext, to generate decrypted information; and

decrypting a second part, to which WBC-based encryption has not been applied, of the ciphertext by applying symmetric-key-based decryption, using a symmetric key and the decrypted information;

wherein the symmetric key is different from the cipher key.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 19, 2014
From: CHOI, KYU-YOUNG; CHO, JI-HOON; YOON, HYO-JIN
To: SAMSUNG SDS CO., LTD.
Reel/Frame 034556/0573 →
Priority Claims (1)
KR 10-2014-0120842 · Sep 12, 2014 · national
Continuity (1)
Related Publication 20160080144A1 · Mar 17, 2016