IP Library Granted Patent US 9,825,919
Granted Patent B2
US 9,825,919 · App. 14/930,179 · Granted Nov 21, 2017

Public key encryption algorithms for hard lock file encryption

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,825,919
App. No.
14/930,179
Granted
Nov 21, 2017
Kind
B2
Abstract

In some aspects, an encryption method comprises encrypting a first portion of a message using a first secret key. The first secret key is generated based on the public key of an entity. A one-way function is used to generate a second secret key from the first secret key, and the first secret key is subsequently discarded. A second portion of the message is encrypted using the second secret key. The encrypted first portion of the message and the encrypted second portion of the message are provided to the entity.

Claims (47)

1. A method, comprising:

receiving an encrypted message, a private key, and an ephemeral public key of an entity;

dividing the encrypted message into a plurality of portions, wherein the plurality of portions include a first portion and a second portion;

generating, by a hardware processor, a shared secret based on the private key and the ephemeral public key;

in response to generating the shared secret, discarding the private key and the ephemeral public key;

generating, by the hardware processor, a first decryption key based on the shared secret;

decrypting, by the hardware processor, the first portion using the first decryption key;

generating, by the hardware processor, a second decryption key based on the first decryption key;

decrypting, by the hardware processor, the second portion using the second decryption key; and

outputting at least one of a decrypted first portion or a decrypted second portion.

2. The method of claim 1 , wherein the shared secret is discarded in response to generating the first decryption key.

3. The method of claim 1 , wherein the first decryption key is discarded in response to generating the second decryption key.

4. The method of claim 1 , wherein the first decryption key is generated using a key derivation function, the key derivation function produces one or more outputs comprising the first decryption key, and the key derivation function operates on one or more inputs comprising the shared secret.

5. The method of claim 4 , wherein the one or more outputs further comprise a first initialization vector that is used to decrypt the first portion.

6. The method of claim 5 , wherein the first initialization vector is used to generate a second initialization vector, and the second initialization vector is used to decrypt the second portion.

7. A device, comprising:

a memory; and

at least one hardware processor communicatively coupled with the memory and configured to;

receive an encrypted message, a private key, and an ephemeral public key of an entity;

divide the encrypted message into a plurality of portions, wherein the plurality of portions include a first portion and a second portion;

generate a shared secret based on the private key and the ephemeral public key;

in response to generating the shared secret, discard the private key and the ephemeral public key;

generate a first decryption key based on the shared secret;

decrypt the first portion using the first decryption key;

generate a second decryption key based on the first decryption key;

decrypt the second portion using the second decryption key; and

output at least one of a decrypted first portion or a decrypted second portion.

8. The device of claim 7 , wherein the shared secret is discarded in response to generating the first decryption key.

9. The device of claim 7 , wherein the first decryption key is discarded in response to generating the second decryption key.

10. The device of claim 7 , wherein the first decryption key is generated using a key derivation function, the key derivation function produces one or more outputs comprising the first decryption key, and the key derivation function operates on one or more inputs comprising the shared secret.

11. The device of claim 10 , wherein the one or more outputs further comprise a first initialization vector that is used to decrypt the first portion.

12. The device of claim 11 , wherein the first initialization vector is used to generate a second initialization vector, and the second initialization vector is used to decrypt the second portion.

13. A non-transitory computer-readable medium containing instructions which, when executed, cause a computing device to perform operations comprising:

receiving an encrypted message, a private key, and an ephemeral public key of an entity;

dividing the encrypted message into a plurality of portions, wherein the plurality of portions include a first portion and a second portion;

generating a shared secret based on the private key and the ephemeral public key;

in response to generating the shared secret, discarding the private key and the ephemeral public key;

generating a first decryption key based on the shared secret;

decrypting the first portion using the first decryption key;

generating a second decryption key based on the first decryption key;

decrypting the second portion using the second decryption key; and

outputting at least one of a decrypted first portion or a decrypted second portion.

14. The non-transitory computer-readable medium of claim 13 , wherein the shared secret is discarded in response to generating the first decryption key.

15. The non-transitory computer-readable medium of claim 13 , wherein the first decryption key is discarded in response to generating the second decryption key.

16. The non-transitory computer-readable medium of claim 13 , wherein the first decryption key is generated using a key derivation function, the key derivation function produces one or more outputs comprising the first decryption key, and the key derivation function operates on one or more inputs comprising the shared secret.

17. The non-transitory computer-readable medium of claim 16 , wherein the one or more outputs further comprise a first initialization vector that is used to decrypt the first portion.

18. The non-transitory computer-readable medium of claim 17 , wherein the first initialization vector is used to generate a second initialization vector, and the second initialization vector is used to decrypt the second portion.

Assignments (9)
CORRECTIVE ASSIGNMENT TO CORRECT THE ADDED PATENT NUMBER TO REMOVE PATENT NO. 8,873,407 AT PREVIOUSLY RECORDED ON REEL 64066 FRAME 1. ASSIGNOR(S) HEREBY CONFIRMS THE NUNC PRO TUNC ASSIGNMENT EFFECTIVE DATE MARCH 20, 2023. Recorded Feb 2, 2026
From: BLACKBERRY LIMITED
To: MALIKIE INNOVATIONS LIMITED
Reel/Frame 074921/0001 →
CORRECTIVE ASSIGNMENT TO CORRECT 12817157 APPLICATION NUMBER PREVIOUSLY RECORDED AT REEL: 064015 FRAME: 0001. ASSIGNOR(S) HEREBY CONFIRMS THE ASSIGNMENT. Recorded Sep 5, 2023
From: OT PATENT ESCROW, LLC
To: MALIKIE INNOVATIONS LIMITED
Reel/Frame 064807/0001 →
CORRECTIVE ASSIGNMENT TO CORRECT THE COVER SHEET AT PAGE 50 TO REMOVE 12817157 PREVIOUSLY RECORDED ON REEL 063471 FRAME 0474. ASSIGNOR(S) HEREBY CONFIRMS THE ASSIGNMENT. Recorded Sep 5, 2023
From: BLACKBERRY LIMITED
To: OT PATENT ESCROW, LLC
Reel/Frame 064806/0669 →
NUNC PRO TUNC ASSIGNMENT Recorded Jun 19, 2023
From: BLACKBERRY LIMITED
To: MALIKIE INNOVATIONS LIMITED
Reel/Frame 064066/0001 →
NUNC PRO TUNC ASSIGNMENT Recorded Jun 16, 2023
From: OT PATENT ESCROW, LLC
To: MALIKIE INNOVATIONS LIMITED
Reel/Frame 064015/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 27, 2023
From: BLACKBERRY LIMITED
To: OT PATENT ESCROW, LLC
Reel/Frame 063471/0474 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 2, 2019
From: CERTICOM CORP.
To: BLACKBERRY LIMITED
Reel/Frame 050610/0937 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 11, 2017
From: YAMADA, ATSUSHI
To: BLACKBERRY LIMITED
Reel/Frame 040942/0010 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 11, 2017
From: LAMBERT, ROBERT JOHN; BROWN, DANIEL RICHARD L.
To: CERTICOM CORP.
Reel/Frame 040941/0921 →