IP Library Granted Patent US 11,411,934
Granted Patent B2
US 11,411,934 · App. 16/709,316 · Granted Aug 9, 2022

System and method to securely broadcast a message to accelerators with switch

Inventors: Yong Liu (Sunnyvale, CA); Yueqiang Cheng (Sunnyvale, CA)
Assignees: BAIDU USA LLC; KUNLUNXIN TECHNOLOGY (BEIJING) COMPANY LIMITED
H04L63/0428H04L9/0822H04L9/0825H04L9/14H04L12/18H04L49/25G06N5/04
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,411,934
App. No.
16/709,316
Granted
Aug 9, 2022
Kind
B2
Abstract

According to one embodiment, a broadcast request is received from a host via a communication switch to broadcast a broadcast message to one or more DP accelerators, where the host hosts an application that initiated the broadcast request. The broadcast request includes a list of one or more public keys associated with one or more DP accelerators of a plurality of DP accelerators coupled to the communication switch. For each of the one or more DP accelerators associated with the public keys of the list, a session key for a broadcast session corresponding to the broadcast message is encrypted using one of the public key associated with the DP accelerator. The broadcast message is encrypted using the broadcast session key. The encrypted broadcast messages and the encrypted broadcast session keys are broadcast to the DP accelerators.

Claims (35)

1. A computer-implemented method to broadcast a message to one or more data processing (DP) accelerators, the method comprising:

receiving, at a first DP accelerator of a plurality of DP accelerators, a broadcast request from a host via a communication switch to broadcast a broadcast message to one or more second DP accelerators of the plurality of DP accelerators, the plurality of DP accelerators coupled to the communication switch, the host hosting an application that initiated the broadcast request, wherein the broadcast request includes a list of one or more public keys associated with one or more designated DP accelerators of the one or more second DP accelerators;

for each of the one or more designated DP accelerators associated with the public keys of the list,

encrypting, by a selected DP accelerator, a broadcast session key for a broadcast session corresponding to the broadcast message using one of the public keys associated with the designated DP accelerator, and

encrypting the broadcast message using the broadcast session key; and

broadcasting, by the first DP accelerator, the encrypted broadcast messages and the encrypted broadcast session keys to the one or more second DP accelerators of the plurality of DP accelerators, wherein each of the one or more designated DP accelerators of the one or more second DP accelerators of the plurality of DP accelerators coupled to the communication switch is configured to decrypt the encrypted broadcast session key using a corresponding private key associated with the designated DP accelerator and to decrypt the broadcast message using the broadcast session key.

2. The method of claim 1 , wherein the public and private keys of each of the one or more designated DP accelerators are associated with a security key pair for the designated DP accelerator and the security key pair associated with the designated DP accelerator is a derived security key pair generated by a security unit of the designated DP accelerator.

3. The method of claim 1 , wherein the communication switch is coupled to each of the plurality of DP accelerators.

4. The method of claim 1 , wherein a non-designated DP accelerator of the one or more second plurality of DP accelerators receives the broadcast for the encrypted broadcast session keys but does not have a corresponding key to decrypt the encrypted broadcast session keys for generation of a broadcast session key and the non-designated DP accelerator has no access to the broadcast session key to decrypt the broadcast message for the broadcast session.

5. The method of claim 1 , wherein the broadcast message is received by each of the one or more second DP accelerators via a communication channel associated with the second DP accelerator.

6. The method of claim 1 , wherein the one or more second DP accelerators are designated to perform concurrently one or more data processing tasks.

7. A non-transitory machine-readable medium having instructions stored therein, which when executed by a processor, cause the processor to perform one or more operations, the operations comprising:

receiving, at a first DP accelerator of a plurality of DP accelerators, a broadcast request from a host via a communication switch to broadcast a broadcast message to one or more second DP accelerators of the plurality of DP accelerators, the plurality of DP accelerators coupled to the communication switch, the host hosting an application that initiated the broadcast request, wherein the broadcast request includes a list of one or more public keys associated with one or more designated DP accelerators of the one or more second DP accelerators;

for each of the one or more designated DP accelerators associated with the public keys of the list,

encrypting, by a selected DP accelerator, a broadcast session key for a broadcast session corresponding to the broadcast message using one of the public keys associated with the designated DP accelerator, and

encrypting the broadcast message using the broadcast session key; and

broadcasting, by the first DP accelerator, the encrypted broadcast messages and the encrypted broadcast session keys to the one or more second DP accelerators of the plurality of DP accelerators, wherein each of the one or more designated DP accelerators of the one or more second DP accelerators of the plurality of DP accelerators coupled to the communication switch is configured to decrypt the encrypted broadcast session key using a corresponding private key associated with the designated DP accelerator and to decrypt the broadcast message using the broadcast session key.

8. The non-transitory machine-readable medium of claim 7 , wherein the public and private keys of each of the one or more designated DP accelerators are associated with a security key pair for the designated DP accelerator.

9. The non-transitory machine-readable medium of claim 8 , wherein the security key pair associated with the designated DP accelerator is a derived security key pair generated by a security unit of the designated DP accelerator.

10. The non-transitory machine-readable medium of claim 7 , wherein a non-designated DP accelerator of the one or more second DP accelerators of the plurality of DP accelerators receives the broadcast for the encrypted broadcast session keys but does not have a corresponding key to decrypt the encrypted broadcast session keys for generation of a broadcast session key and the non-designated DP accelerator has no access to the broadcast session key to decrypt the broadcast message for the broadcast session.

11. The non-transitory machine-readable medium of claim 7 , wherein the broadcast message is received by each of the one or more second DP accelerators via a communication channel associated with the second DP accelerator.

12. The non-transitory machine-readable medium of claim 7 , wherein the one or more second DP accelerators are designated to perform concurrently one or more data processing tasks.

13. A data processing system, comprising:

a processor; and

a memory coupled to the processor to store instructions, which when executed by the processor, cause the processor to perform operations, the operations including:

receiving, at a first DP accelerator of a plurality of DP accelerators, a broadcast request from a host via a communication switch to broadcast a broadcast message to one or more second DP accelerators of the plurality of DP accelerators, the plurality of DP accelerators coupled to the communication switch, the host hosting an application that initiated the broadcast request, wherein the broadcast request includes a list of one or more public keys associated with one or more designated DP accelerators of the one or more second DP accelerators;

for each of the one or more designated DP accelerators associated with the public keys of the list,

encrypting, by a selected DP accelerator, a broadcast session key for a broadcast session corresponding to the broadcast message using one of the public keys associated with the designated DP accelerator, and

encrypting the broadcast message using the broadcast session key; and

broadcasting, by the first DP accelerator, the encrypted broadcast messages and the encrypted broadcast session keys to the one or more second DP accelerators of the plurality of DP accelerators, wherein each of the one or more designated DP accelerators of the one or more second DP accelerators of the plurality of DP accelerators coupled to the communication switch is configured to decrypt the encrypted broadcast session key using a corresponding private key associated with the designated DP accelerator and to decrypt the broadcast message using the broadcast session key.

14. The system of claim 13 , wherein the public and private keys of each of the one or more designated DP accelerators are associated with a security key pair for the designated DP accelerator.

15. The system of claim 14 , wherein the security key pair associated with the designated DP accelerator is a derived security key pair generated by a security unit of the designated DP accelerator.

16. The system of claim 13 , wherein a non-designated DP accelerator of the one or more second accelerators of the plurality of DP accelerators receives the broadcast for the encrypted broadcast session keys but does not have a corresponding key to decrypt the encrypted broadcast session keys for generation of a broadcast session key and the non-designated DP accelerator has no access to the broadcast session key to decrypt the broadcast message for the broadcast session.

17. The system of claim 13 , wherein the broadcast message is received by each of the one or more second DP accelerators via a communication channel associated with the second DP accelerator.

18. The system of claim 13 , wherein the one or more second DP accelerators are designated to perform concurrently one or more data processing tasks.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 15, 2021
From: BAIDU USA LLC
To: BAIDU USA LLC; KUNLUNXIN TECHNOLOGY (BEIJING) COMPANY LIMITED
Reel/Frame 057829/0213 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 10, 2019
From: LIU, YONG; CHENG, YUEQIANG
To: BAIDU USA LLC
Reel/Frame 051236/0317 →
Continuity (1)
Related Publication 20210176217A1 · Jun 10, 2021