IP Library › Granted Patent US 10,491,578
Granted Patent B1
US 10,491,578 · App. 15/941,548 · Granted Nov 26, 2019

Mitigation of offline ciphertext-only attacks

Inventors: Cédric Hebert (Mougins, FR); Laurent Gomez (Pégomas, FR); José Márquez (Nuβloch, DE)
Assignee: SAP SE
H04L63/068H04L9/0618H04L9/16H04L9/3236
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 10,491,578
App. No.
15/941,548
Granted
Nov 26, 2019
Kind
B1
Abstract

Disclosed herein are system, method, and computer program product embodiments for mitigating offline decryption attacks of ciphertext. An embodiment operates by inputting plaintext into an encryptor, writing ciphertext output from the encryptor into memory, inputting the ciphertext from memory into a noise generator, outputting ciphertext from memory to an output device in response to receiving a first timing signal from a timer, and outputting noise data generated by the noise generator to the output device in response to receiving a second timing signal from the timer. The output device may be a node in a distributed ledger, in some embodiments. The distributed ledger may include a blockchain, for example. Using techniques disclosed herein, encryption may be strengthened to thwart attempts by untrusted third-party attackers to crack encryption, e.g., of information that is sensitive and/or confidential, even when they use significant computational resources separate from host computers of legitimate parties.

Claims (47)

1. A system, comprising:

a memory;

an encryptor module configured to output ciphertext based on plaintext input;

a timer module configured to output at least a first timing signal and a second timing signal;

a noise generator module configured to generate noise data in accordance with a mimic function, wherein the mimic function is configured to mimic the ciphertext output by the encryptor module; and

at least one processor coupled to the memory and configured to:

input the plaintext into the encryptor module;

write the ciphertext output from the encryptor module into the memory;

input the ciphertext from the memory into the noise generator module;

in response to receiving the first timing signal from the timer module, output the ciphertext from the memory to at least one output device; and

in response to receiving the second timing signal from the timer module, output the noise data generated by the noise generator module to the at least one output device.

2. The system of claim 1 , wherein to output the ciphertext and to output the noise data, the at least one processor is further configured to:

in response to the receiving the first timing signal from the timer module, write the ciphertext to a node of a distributed ledger; and

in response to the receiving the second timing signal from the timer module, write the noise data to the node of the distributed ledger.

3. The system of claim 2 , wherein the distributed ledger comprises a blockchain.

4. The system of claim 1 , wherein the encryptor module is configured to generate the ciphertext based on at least one of a public key and a private key.

5. The system of claim 4 , wherein the encryptor module is further configured to implement at least one hybrid cryptosystem.

6. The system of claim 1 , wherein to mimic the ciphertext output by the encryptor module, the mimic function is further configured to apply at least one statistical model to at least one sample of the ciphertext output by the encryptor module.

7. The system of claim 1 , wherein to mimic the ciphertext output by the encryptor module, the mimic function is further configured to generate spurious plaintext for input into the encryptor module.

8. A computer-implemented method for strengthening encryption, comprising:

inputting, by at least one processor, plaintext into an encryptor;

writing, by the at least one processor, ciphertext output from the encryptor into a memory;

inputting, by the at least one processor, the ciphertext from the memory into a noise generator;

in response to receiving a first timing signal from a timer, outputting, by the at least one processor, the ciphertext from the memory to at least one output device; and

in response to receiving a second timing signal from the timer, outputting, by the at least one processor, noise data generated by the noise generator to the at least one output device,

wherein at least one of the inputting the plaintext, writing the ciphertext, inputting the ciphertext, outputting the ciphertext, and outputting the noise data is performed by one or more computers.

9. The computer-implemented method of claim 8 , wherein:

the outputting the ciphertext further comprises, in response to the receiving the first timing signal from the timer, writing, by the at least one processor, the ciphertext to a node of a distributed ledger; and

the outputting the noise data further comprises, in response to the receiving the second timing signal from the timer, writing, by the at least one processor, the noise data to the node of the distributed ledger.

10. The computer-implemented method of claim 9 , wherein the distributed ledger comprises a blockchain.

11. The compute-implemented method of claim 8 , wherein the encryptor is configured to generate the ciphertext based on at least one of a public key and a private key.

12. The computer-implemented method of claim 11 , wherein the encryptor is further configured to implement at least one hybrid cryptosystem.

13. The computer-implemented method of claim 8 , wherein to output the noise data, the noise generator comprises a mimic function configured to mimic the ciphertext output by the encryptor, wherein the mimic function is further configured to apply, by the at least one processor, at least one statistical model to at least one sample of the ciphertext output by the encryptor.

14. The method of claim 13 , wherein to mimic the ciphertext output by the encryptor, the mimic function is further configured to generate, by the at least one processor, spurious plaintext for input into the encryptor.

15. A non-transitory computer-readable device having instructions stored thereon that, when executed by at least one computing device, cause the at least one computing device to perform operations comprising:

inputting plaintext into an encryptor module;

writing ciphertext output from the encryptor module into a memory;

inputting the ciphertext from the memory into a noise generator module;

in response to receiving a first timing signal from a timer module, outputting the ciphertext from the memory to at least one output device; and

in response to receiving a second timing signal from the timer module, outputting noise data generated by the noise generator module to the at least one output device.

16. The non-transitory computer-readable device of claim 15 , wherein:

the outputting the ciphertext further comprises, in response to the receiving the first timing signal from the timer module, writing the ciphertext to a node of a distributed ledger; and

the outputting the noise data further comprises, in response to the receiving the second timing signal from the timer module, writing the noise data to the node of the distributed ledger.

17. The non-transitory computer-readable device of claim 16 , wherein the distributed ledger comprises a blockchain.

18. The non-transitory computer-readable device of claim 15 , wherein the encryptor module is configured to generate the ciphertext based on at least one of a public key and a private key.

19. The non-transitory computer-readable device of claim 15 , wherein to output the noise data, the noise generator comprises a mimic function configured to mimic the ciphertext output by the encryptor module, wherein the mimic function is further configured to apply at least one statistical model to at least one sample of the ciphertext output by the encryptor module.

20. The non-transitory computer-readable device of claim 19 , wherein to mimic the ciphertext output by the encryptor module, the mimic function is further configured to generate spurious plaintext for input into the encryptor module.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 25, 2018
From: HEBERT, CÉDRIC; GOMEZ, LAURENT; MÁRQUEZ, JOSÉ
To: SAP SE
Reel/Frame 045628/0843 →
Cited By (10)
US 12,271,464 US 12,300,371 US 12,314,437 US 12,323,520 US 12,346,896 US 12,445,263 US 12,463,797 US 12,470,415 US 12,519,616 US 12,683,001