IP Library Granted Patent US 11,128,448
Granted Patent B1
US 11,128,448 · App. 16/167,751 · Granted Sep 21, 2021

Quorum-aware secret sharing

Inventors: Andrew Bernat (Mountain View, CA); Ethan Miller (Santa Cruz, CA)
Assignee: Pure Storage, Inc.
H04L9/0833G06F21/40G06F21/602H04L9/085H04L67/1097
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 11,128,448
App. No.
16/167,751
Granted
Sep 21, 2021
Kind
B1
Abstract

In a storage system that includes a plurality of storage devices configured into one or more write groups, quorum-aware secret sharing may include: encrypting a device key for each storage device using a master secret; generating a plurality of shares from the master secret such that a minimum number of storage devices required from each write group for a quorum to boot the storage system is not less than a minimum number of shares required to reconstruct the master secret; and storing the encrypted device key and a separate share of the plurality of shares in each storage device.

Claims (35)

1. A storage system comprising:

a plurality of storage devices and a controller, wherein the storage devices are configured into one or more write groups, and the controller is configured to carry out:

encrypting a device key for each storage device using a master secret to generate an encrypted device key for each storage device;

generating a plurality of intermediate shares for reconstructing the master secret, wherein generating the plurality of intermediate shares comprises splitting the master secret into the plurality of intermediate shares such that each write group is associated with an intermediate share of the plurality of intermediate shares such that each intermediate share of the plurality of intermediate shares is required to reconstruct the master secret;

generating, for each write group, a plurality of shares for reconstructing an intermediate share associated with a respective write group, wherein generating the plurality of shares comprises splitting each intermediate share associated with the respective write group into a plurality of shares such that each storage device in the respective write group is associated with a respective share of the plurality of shares; and

storing, for each storage device, the encrypted device key and the respective share in the storage device,

wherein, for each write group, a minimum number of storage devices required for a quorum to boot the storage system is at least equal to a minimum number of shares associated with the write group required to reconstruct the intermediate share associated with the write group.

2. The storage system of claim 1 , wherein:

the minimum number of storage devices required from each write group for the quorum to boot the storage system is the number of storage devices in each write group less a first number of possible failed storage device; and

reconstruction of the master secret requires each of the intermediate shares and reconstruction of each of the intermediate shares requires, for each write group, a number of shares equivalent to the number of storage devices in the write group less a second number of possible failed storage devices, wherein the second number of possible failed storage devices is not less than the first number of possible failed storage device.

3. The storage system of claim 2 , wherein the number of storage devices in each write group is not less than eight and the second number of possible failed devices comprises four.

4. The storage system of claim 2 , wherein the number of storage devices in each write group is less than eight and the second number of possible failed devices comprises a number less than half of the number of storage devices in each write group.

5. The storage system of claim 4 , wherein the controller is further configured to carry out the step of notifying a user to add additional storage devices to one or more write groups.

6. The storage system of claim 1 , wherein encrypting the device key further comprises encrypting the device key using the master secret and a value unique to the corresponding storage device.

7. The storage system of claim 3 , wherein the controller is further configured to carry out:

reconstructing the master secret.

8. The system of claim 7 , wherein the controller is further configured to carry out decrypting one or more of the encrypted device keys using the master secret to generate one or more decrypted device keys.

9. The system of claim 8 , wherein the controller is further configured to carry out storing the one or more decrypted device keys in a volatile memory.

10. The system of claim 9 , wherein the controller is further configured to carry out using the one or more decrypted device keys to decrypt data stored on one or more of the storage devices.

11. A method comprising:

encrypting a device key for each storage device of a plurality of storage devices of a storage system, using a master secret to generate an encrypted device key for each storage device, wherein the plurality of storage devices are configured into one or more write groups;

generating a plurality of intermediate shares for reconstructing the master secret, wherein generating the plurality of intermediate shares comprises splitting the master secret into the plurality of intermediate shares such that each write group is associated with an intermediate share of the plurality of intermediate shares such that each intermediate share of the plurality of intermediate shares is required to reconstruct the master secret;

generating, for each write group, a plurality of shares for reconstructing an intermediate share associated with a respective write group, wherein generating the plurality of shares comprises splitting each intermediate share associated with the respective write group into a plurality of shares such that each storage device in the respective write group is associated with a respective share of the plurality of shares such that a minimum number of storage devices required from each write group for a quorum to boot the storage system is at least equal to a minimum number of shares required to reconstruct the intermediate share associated with the respective write group; and

storing the encrypted device keys and the plurality of shares in the storage devices.

12. The method of claim 11 , wherein:

the minimum number of storage devices required from each write group for the quorum to boot the storage system is the number of storage devices in each write group less a first number of possible failed storage device; and

reconstruction of the master secret requires each of the intermediate shares and reconstruction of each of the intermediate shares requires, for each write group, a number of shares equivalent to the number of storage devices in the write group less a second number of possible failed storage devices, wherein the second number of possible failed storage devices is not less than the first number of possible failed storage device.

13. The method of claim 12 , wherein the number of storage devices in each write group is not less than eight and the second number of possible failed devices comprises four.

14. The method of claim 12 , wherein the number of storage devices in each write group is less than eight and the second number of possible failed devices comprises a number less than half of the number of storage devices in each write group.

15. The method of claim 14 , further comprising notifying a user to add additional storage devices to one or more write groups.

16. The method of claim 11 , wherein encrypting the device key further comprises encrypting the device key using the master secret and a value unique to a corresponding storage device.

17. The method of claim 11 , further comprising decrypting the one or more encrypted device keys using the master secret to generate one or more decrypted device keys.

18. The method of claim 17 , further comprising storing the one or more decrypted device keys in a volatile memory.

19. The method of claim 18 , further comprising using the one or more decrypted device keys to decrypt data stored on one or more of the storage devices.

20. The method of claim 11 , wherein generating the plurality of shares from the master secret such that a minimum number of storage devices required from each write group for a quorum to boot the storage system is at least equal to a minimum number of shares required to reconstruct the master secret further comprises generating the plurality of shares for the master secret such that the minimum number of storage devices required from each write group for the quorum to boot the storage system is greater than the minimum number of shares required to reconstruct the master secret.

Assignments (3)
TERMINATION AND RELEASE OF SECURITY INTEREST IN PATENT RIGHTS Recorded Jun 11, 2025
From: BARCLAYS BANK PLC, AS ADMINISTRATIVE AGENT
To: PURE STORAGE, INC.
Reel/Frame 071558/0523 →
SECURITY INTEREST Recorded Aug 26, 2020
From: PURE STORAGE, INC.
To: BARCLAYS BANK PLC AS ADMINISTRATIVE AGENT
Reel/Frame 053867/0581 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 23, 2018
From: BERNAT, ANDREW; MILLER, ETHAN
To: PURE STORAGE, INC.
Reel/Frame 047275/0343 →
Cited By (5)
US 12,367,320 US 12,425,193 US 12,574,220 US 12,634,143 US 12,639,699