PAIRING AN ACCESSORY WITH A HOST DEVICE USING ACCESSORY OUTPUT DEVICE
First Claim
Patent Images
1. A method for pairing with an accessory, the method comprising, by a host device:
- instructing the accessory to select a state for an output device;
receiving an input indicative of the selected state of the output device;
repeating the instructing and the receiving until a number (N) of inputs have been received;
generating a passcode based at least in part on the N inputs; and
pairing with the accessory based on the passcode.
1 Assignment
0 Petitions
Accused Products
Abstract
A method for pairing an accessory with a host device includes placing an output device of the accessory into a randomly selected state N-times. The information about the current state of the accessory is provided to a host device after each state selection for N number of times. Thereafter, the host device generates an authentication code based on the N inputs and the accessory generates another authentication code based on the N selected states. The authentication codes can be then compared and can be used to “pair” the host device and the accessory, allowing secure communication.
-
Citations
21 Claims
-
1. A method for pairing with an accessory, the method comprising, by a host device:
-
instructing the accessory to select a state for an output device; receiving an input indicative of the selected state of the output device; repeating the instructing and the receiving until a number (N) of inputs have been received; generating a passcode based at least in part on the N inputs; and pairing with the accessory based on the passcode. - View Dependent Claims (2, 3, 4, 5, 6)
-
-
7. A host device comprising:
-
a processor; a memory coupled to the processor; an accessory interface configured to communicate with an accessory; and an input interface configured to receive input from a user; wherein the processor is configured to; send a message instructing the accessory to select a state for an output device; receive a first input via the input interface, wherein the first input is indicative of the selected state of the output device; repeat the send and the receive steps until a number (N) of inputs are received, wherein the N inputs together represent a random code; encode the random code to generate a first authentication code; and pair with the accessory using the first authentication code. - View Dependent Claims (8, 9)
-
-
10. An accessory comprising:
-
a processor; an interface coupled with the processor and configured to communicate with a host device; an output device coupled with the processor; and a memory coupled with the processor and including program code for generating a passcode, wherein the processor in conjunction with the memory is configured to; randomly select a state for the output device; place the output device in the selected state; receive instructions from the host device to select a next state for the output device; select the next state and place the output device in the next state in response to the instructions from a host device; repeat the randomly select, the place, the receive, and the select the next state steps for a predetermined number of times to generate a random code, the random code being a sequence indicative of selected states of the output device; and generate an authentication code based at least in part on the random code. - View Dependent Claims (11, 12, 13, 14, 15)
-
-
16. A non-transitory computer-readable storage medium including instructions which when executed by a processor in an accessory including an output device, cause the processor to perform a method of generating an authentication code, the method comprising:
-
receiving a count from a host device, the count indicating a number (N) of iterations of a code-generation operation to perform; for each of the N iterations of the code-generating operation; randomly selecting a state for the output device; placing the output device in the selected state; receiving instruction from the host to select a next state for the output device; and in response to the instruction, randomly selecting the next state for the output device and placing the output device in the next state; and subsequent to the N iterations of the code-generating operation, computing an authentication code based at least in part on the N randomly selected states. - View Dependent Claims (17, 18, 19, 20, 21)
-
Specification