IP Library Granted Patent US 12,348,643
Granted Patent B2
US 12,348,643 · App. 17/464,539 · Granted Jul 1, 2025

Extended reality control of smart devices

Inventors: Wesley James Holland (Encinitas, CA); Brian Vogelsang (San Diego, CA); Robert Tartz (San Marcos, CA); Martin Renschler (San Diego, CA)
Assignee: QUALCOMM Incorporated
H04L9/3247H04L9/0861H04L9/3231G16Y10/75
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 12,348,643
App. No.
17/464,539
Granted
Jul 1, 2025
Kind
B2
Abstract

Systems, methods, and non-transitory media are provided for extended reality (XR) control of smart devices. An example method can include generating, by a first computing device, a cryptographic key; outputting, by the first computing device, a pattern that encodes the cryptographic key, the pattern including a visual pattern, an audio pattern, and/or a light pattern; receiving, by the first computing device from a second computing device, a signed message including a command to modify an operation of the first computing device; determining, by the first computing device, whether the signed message is signed with the cryptographic key encoded in the pattern; and based on a determination that the signed message is signed with the cryptographic key encoded in the pattern, modifying the operation of the first computing device according to the command in the signed message.

Claims (87)

1. An Internet-of-Things (IoT) device for processing one or more messages, the IoT device comprising:

memory; and

one or more processors coupled to the memory, the one or more processors being configured to:

generate a cryptographic key using a shared key generator used by the IoT device and at least one separate device to generate cryptographic keys usable by one or more computing devices to sign control command messages, wherein the signed control command messages are for controlling operations of the IoT device and the at least one separate device;

communicate with the at least one separate device to synchronize the shared key generator to change from the cryptographic key to an updated cryptographic key for controlling operations of the IoT device and the at least one separate device;

output a pattern that encodes the updated cryptographic key, the pattern comprising at least one of a visual pattern, an audio pattern, and a light pattern, the light pattern comprising at least one of a light dimming and brightening pattern and a pattern of color temperature changes;

receive, from an extended reality (XR) device, a signed message comprising a command to modify an operation of the IoT device;

determine whether the signed message is signed with the updated cryptographic key encoded in the pattern and generated using the shared key generator; and

based on a determination that the signed message is signed with the updated cryptographic key encoded in the pattern and generated using the shared key generator, perform the command to modify the operation of the IoT device.

2. The IoT device of claim 1 , wherein the one or more processors are configured to:

receive an additional signed message comprising one or more commands to modify one or more operations of the IoT device;

determine that the additional signed message was signed using a valid cryptographic key encoded in an additional pattern generated by a different XR device; and

in response to determining that the additional signed message was signed using the valid cryptographic key encoded in the additional pattern generated by the different XR device, perform the one or more commands to modify the one or more operations of the IoT device.

3. The IoT device of claim 2 , wherein the one or more processors are configured to:

determine that the valid cryptographic key is valid based on a determination that the valid cryptographic key is a matching copy of a particular cryptographic key at the IoT device.

4. The IoT device of claim 1 , wherein the one or more processors are configured to:

verify that the signed message comprises a biometric feature; and

perform the command to modify the operation of the IoT device based on the determination that the signed message is signed with the updated cryptographic key encoded in the pattern and based on verifying that the signed message comprises the biometric feature.

5. The IoT device of claim 1 , wherein the one or more processors are configured to:

verify that the XR device is connected to a same local network as the IoT device; and

perform the command to modify the operation of the IoT device based on the determination that the signed message is signed with the updated cryptographic key encoded in the pattern and based on verifying that the XR device is connected to the same local network as the IoT device.

6. The IoT device of claim 1 , wherein the one or more processors are configured to:

determine a number of cryptographic keys, generated by the IoT device after the cryptographic key, is below a threshold number of cryptographic keys;

based on determining that the number of cryptographic keys is below the threshold number of cryptographic keys, determine that the updated cryptographic key has not expired despite a presence of a new cryptographic key that is latest in time relative to the cryptographic key; and

based on determining that the updated cryptographic key has not expired, accept the signed message signed with the updated cryptographic key to modify the operation of the IoT device.

7. The IoT device of claim 1 , wherein the one or more processors are configured to:

receive, from the XR device, an additional message comprising one or more commands to modify one or more operations of the IoT device;

determine that the additional message is missing a signature associated with a valid cryptographic key generated by the IoT device; and

based on determining that the additional message is missing the signature associated with the valid cryptographic key generated by the IoT device, reject the one or more commands to modify the one or more operations of the IoT device.

8. The IoT device of claim 7 , wherein the IoT device is paired with the XR device, wherein the IoT device is configured to reject the one or more commands after the pairing of the IoT device and the XR device based on determining that the additional message is missing the signature associated with the valid cryptographic key generated by the IoT device.

9. The IoT device of claim 1 , wherein the visual pattern comprises at least one of a display pattern and a visual code.

10. The IoT device of claim 1 , wherein the IoT device comprises a smart device.

11. The IoT device of claim 1 , further comprising at least one of a display, a speaker, a light-emitting device, a microphone, one or more sensors, and a camera.

12. The IoT device of claim 11 , wherein the one or more sensors comprise at least one of a light sensor, an audio sensor, a motion sensor, a temperature sensor, a humidity sensor, an image sensor, an accelerometer, a gyroscope, a pressure sensor, a touch sensor, and a magnetometer.

13. A method of processing one or more messages, comprising:

generating, by an Internet-of-Things (IoT) device, a cryptographic key using a shared key generator used by the IoT device and at least one separate device to generate cryptographic keys usable by one or more computing devices to sign control command messages, wherein the signed control command messages are for controlling operations of the IoT device and the at least one separate device;

communicating with the at least one separate device to synchronize the shared key generator to change from the cryptographic key to an updated cryptographic key for controlling operations of the IoT device and the at least one separate device;

outputting, by the IoT device, a pattern that encodes the updated cryptographic key, the pattern comprising at least one of a visual pattern, an audio pattern, and a light pattern, the light pattern comprising at least one of a light dimming and brightening pattern and a pattern of color temperature changes;

receiving, from an extended reality (XR), a signed message comprising a command to modify an operation of the IoT device;

determining, by the IoT device, whether the signed message is signed with the updated cryptographic key encoded in the pattern and generated using the shared key generator; and

based on a determination that the signed message is signed with the updated cryptographic key encoded in the pattern and generated using the shared key generator, performing, by the IoT device, the command to modify the operation of the IoT device.

14. The method of claim 13 , further comprising:

receiving an additional signed message comprising one or more commands to modify one or more operations of the IoT device; determining that the additional signed message was signed using a valid cryptographic key encoded in an additional pattern generated by a different computing device; and

in response to determining that the additional signed message was signed using the valid cryptographic key encoded in the additional pattern generated by the different computing device, performing the one or more commands to modify the one or more operations of the IoT device.

15. The method of claim 14 , further comprising:

determining that the valid cryptographic key is valid based on a determination that the valid cryptographic key is a matching copy of a particular cryptographic key at the IoT device.

16. The method of claim 13 , further comprising:

verifying that the signed message comprises a biometric feature; and

performing the command to modify the operation of the IoT device based on the determination that the signed message is signed with the updated cryptographic key encoded in the pattern and based on verifying that the signed message comprises the biometric feature.

17. The method of claim 13 , further comprising:

verifying that the XR device is connected to a same local network as the IoT device; and

performing the command to modify the operation of the IoT device based on the determination that the signed message is signed with the updated cryptographic key encoded in the pattern and based on verifying that the XR device is connected to the same local network as the IoT device.

18. The method of claim 13 , further comprising:

determining a number of cryptographic keys generated by the IoT device after the cryptographic key is below a threshold;

based on determining that the number of cryptographic keys is below the threshold, determining that the cryptographic key has not expired; and

based on determining that the cryptographic key has not expired, accepting the signed message signed with the cryptographic key.

19. The method of claim 13 , further comprising:

receiving, from the XR device, an additional message comprising one or more commands to modify one or more operations of the IoT device;

determining that the additional message is missing a signature associated with a valid cryptographic key generated by the IoT device; and

based on determining that the additional message is missing the signature associated with the valid cryptographic key generated by the IoT device, rejecting the one or more commands to modify the one or more operations of the IoT device.

20. The method of claim 19 , wherein the IoT device is paired with the XR device, and further comprising:

rejecting the one or more commands after the pairing of the IoT device and the XR device based on determining that the additional message is missing the signature associated with the valid cryptographic key generated by the IoT device.

21. The method of claim 13 , wherein the visual pattern comprises at least one of a display pattern and a visual code.

22. The method of claim 13 , wherein the IoT device comprises a smart home device.

23. A non-transitory computer-readable medium of an Internet-of-Things (IoT) device having stored thereon instructions that, when executed by one or more processors, cause the one or more processors to:

generate a cryptographic key using a shared key generator used by the IoT device and at least one separate device to generate cryptographic keys usable by one or more computing devices to sign control command messages, wherein the signed control command messages are for controlling operations of the first computing IoT device and the at least one separate device;

communicate with the at least one separate device to synchronize the shared key generator to change from the cryptographic key to an updated cryptographic key for controlling operations of the IoT device and the at least one separate device;

output a pattern that encodes the updated cryptographic key, the pattern comprising at least one of a visual pattern, an audio pattern, and a light pattern, the light pattern comprising at least one of a light dimming and brightening pattern and a pattern of color temperature changes;

receive, from an extended reality (XR), a signed message comprising a command to modify an operation of the first computing IoT device;

determine whether the signed message is signed with the updated cryptographic key encoded in the pattern and generated using the shared key generator; and

based on a determination that the signed message is signed with the updated cryptographic key encoded in the pattern and generated using the shared key generator, perform the command to modify the operation of the IoT device.

24. The non-transitory computer-readable medium of claim 23 , wherein the instructions, when executed by the one or more processors, cause the one or more processors to:

receive an additional signed message comprising one or more commands to modify one or more operations of the IoT device;

determine that the additional signed message was signed using a valid cryptographic key encoded in an additional pattern generated by a different computing device; and

in response to determining that the additional signed message was signed using the valid cryptographic key encoded in the additional pattern generated by the different computing device, perform the one or more commands to modify the one or more operations of the IoT device.

25. An Internet-of-Things (IoT) device for processing one or more messages, the IoT device comprising:

memory; and

one or more processors coupled to the memory, the one or more processors being configured to:

generate a cryptographic key using a shared key generator used by the IoT device and at least one separate device to generate cryptographic keys usable by one or more computing devices to sign control command messages, wherein the signed control command messages are for controlling operations of the IoT device and the at least one separate device;

communicate with the at least one separate device to synchronize the shared key generator to change from the cryptographic key to an updated cryptographic key for controlling operations of the IoT device and the at least one separate device;

output a pattern that encodes the updated cryptographic key, the pattern comprising at least one of a visual pattern, an audio pattern, and a light pattern, the light pattern comprising at least one of a light dimming and brightening pattern and a pattern of color temperature changes;

receive, from extended reality head mounted display (XR HMD) device, a message comprising a command to modify an operation of the IoT device;

determine whether the message is signed with the updated cryptographic key encoded in the pattern and generated using the shared key generator;

determine a number of cryptographic keys, generated by the IoT device after the cryptographic key, is below a threshold number of cryptographic keys;

determine if a second cryptographic key is generated, wherein the second cryptographic key is latest in time relative to the cryptographic key;

based on determining that the number of cryptographic keys is below the threshold number of cryptographic keys, determine that the updated cryptographic key has not expired despite a presence of the second cryptographic key; and

based on determining that the updated cryptographic key has not expired, perform the command to modify the operation of the IoT device.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 30, 2021
From: HOLLAND, WESLEY JAMES; VOGELSANG, BRIAN; TARTZ, ROBERT; RENSCHLER, MARTIN
To: QUALCOMM INCORPORATED
Reel/Frame 058511/0130 →
Continuity (1)
Related Publication 20230062244A1 · Mar 2, 2023
References Cited (40)
US 5799087A · Rosen · 1998 [cited by examiner]
US 6839436B1 · Garay · 2005 [cited by examiner]
US 7007303B2 · Goldberg · 2006 [cited by examiner]
US 20020016913A1 · Wheeler · 2002 [cited by examiner]
US 20070038857A1 · Gosnell · 2007 [cited by examiner]
US 20070179907A1 · Waris · 2007 [cited by examiner]
US 20120165614A1 · Strickland · 2012 [cited by examiner]
US 20130223279A1 · Tinnakornsrisuphap · 2013 [cited by examiner]
US 20140013100A1 · Menzel · 2014 [cited by examiner]
US 20140152869A1 · Solotko · 2014 [cited by examiner]
US 20140325206A1 · Kim · 2014 [cited by examiner]
US 20170061272A1 · Deliwala · 2017 [cited by examiner]
US 20180314416A1 · Powderly · 2018 [cited by examiner]
US 20200007319A1 · Herzerg · 2020 [cited by examiner]
US 20200186350A1 · Wentz · 2020 [cited by examiner]
US 20200313877A1 · Mondello · 2020 [cited by examiner]
US 20200403984A1 · Minehan · 2020 [cited by examiner]
US 20210011992A1 · Wurmfeld · 2021 [cited by examiner]
US 20210152539A1 · Xie · 2021 [cited by examiner]
US 20210294967A1 · Goodsitt · 2021 [cited by examiner]
US 20210297252A1 · Licciardello · 2021 [cited by examiner]
US 20210344483A1 · Zeigler · 2021 [cited by examiner]
US 20210385129A1 · Shadbolt · 2021 [cited by examiner]
US 20210409201A1 · Mondello · 2021 [cited by examiner]
US 20220083326A1 · Du · 2022 [cited by examiner]
US 20220393869A1 · Baldwin · 2022 [cited by examiner]
US 20230031621A1 · Pepe · 2023 [cited by examiner]
US 20230035360A1 · Holland · 2023 [cited by examiner]
EP 1956535A1 · 2008 [cited by examiner]
EP 3823329A1 · 2021 [cited by examiner]
FR 3104868A1 · 2021 [cited by examiner]
NO 2021113881A1 · 2021 [cited by applicant]
WO WO2021113881A1 · 2021 [cited by examiner]
WO WO2021191158A1 · 2021 [cited by examiner]
Kumar, M. Guru Vimal, and U. S. Ragupathy. “A survey on current key issues and status in cryptography.” In 2016 International Conference on Wireless Communications, Signal Processing and Networking (WISPNET), pp. 205-21… [cited by examiner]
Kursawe, Klaus, and Christiane Peters. “Structural weaknesses in the open smart grid protocol.” In 2015 10th International Conference on Availability, Reliability and Security, pp. 1-10. IEEE, 2015 (Year: 2015). [cited by examiner]
Won, Jongho, Seung-Hyun Seo, and Elisa Bertino. “A secure shuffling mechanism for white-box attack-resistant unmanned vehicles.” IEEE Transactions on Mobile Computing 19, No. 5 (2019): 1023-1039. (Year: 2019). [cited by examiner]
Lohr. “Choosing security elements for the xAAL home automation system.” In 2016 Intl IEEE Conferences on Ubiquitous Intelligence & Computing, Advanced and Trusted Computing, Scalable Computing and Communications, Cloud … [cited by examiner]
Malik, Manisha, Maitreyee Dutta, and Jorge Granjal. “A survey of key bootstrapping protocols based on public key cryptography in the Internet of Things.” IEEE Access 7 (2019): 27443-27464. (Year: 2019). [cited by examiner]
International Search Report and Written Opinion—PCT/US2022/036726—ISA/EPO—Oct. 27, 2022. [cited by applicant]