Wireless power charging with authentication
Patent Information
- Application Number
- CN202110631767.4
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Priority Date
- 2020-06-08
- Filing Date
- 2021-06-07
- Publication Date
- 2026-10-23
- Estimated Expiration
- 2041-06-07
Smart Images

Figure CN113783309B_ABST
Abstract
Description
[0001] Cross-reference to related applications
[0002] This disclosure claims priority to U.S. Provisional Application Serial No. 63 / 036,395 entitled “Wireless Power Charging with Authentication”, filed June 8, 2020, by the same inventors, which is incorporated herein by reference in its entirety. Technical Field
[0003] Embodiments of the present invention relate to wireless power transmission, and more particularly to certified wireless power charging. Background Technology
[0004] Mobile devices (such as smartphones, tablets, wearables, and other devices) are increasingly using wireless power charging systems. Typically, wireless power transmission involves a transmitter that drives a transmitting coil and a receiver with a receiving coil placed near the transmitting coil. The receiving coil receives the wireless power generated by the transmitting coil and uses the received power to drive a load, such as providing power to a battery charger.
[0005] Typically, a wireless power system includes a transmitting coil driven to generate a time-varying magnetic field and a receiving coil, which may be part of a receiving device such as a mobile phone, personal digital assistant (PDA), tablet computer, laptop computer, or other device. The receiving coil is positioned relative to the transmitting coil to receive power transmitted in the time-varying magnetic field. In some embodiments, the receiving device may be a high-power device, such as an electric vehicle, energy storage device, or other large energy storage device.
[0006] Therefore, there is a need to develop improved methods for deploying wireless power transmission, especially in high-power scenarios. Summary of the Invention
[0007] An authentication method for authenticating a wireless power transmitter to a wireless power receiver is proposed. One authentication method includes receiving an SSP value, ID, and a random number RND from the wireless power receiver; determining an index based on the RND; selecting a base code from a set of base codes according to the index; determining a security code from the base code, index, RND, SSP value, and ID; and transmitting the security code to the wireless power receiver. A further authentication method includes transmitting the SSP value, ID, and random number to the wireless power transmitter; receiving the security code from the wireless power transmitter; retrieving an index from the security code; determining a base code from a set of base codes according to the index; calculating a second security code from the SSP, ID, random number, and base code; and authenticating the wireless power transmitter by comparing the security code and the second security code.
[0008] A wireless power transmitter according to some embodiments includes: an inverter coupled to drive a transmission coil; an FSK modulator coupled to the inverter to transmit data to a wireless power receiver; an ASK demodulator coupled to the inverter to receive data from the wireless power receiver; and a processor coupled to the inverter, the FSK modulator, and the ASK demodulator. The processor executes instructions for: receiving an SSP value, an ID, and a random number RND from the wireless power receiver; determining an index based on the RND; selecting a base code from a set of base codes according to the index; determining a security code from the base code, the index, the RND, the SSP value, and the ID; and transmitting the security code to the wireless power receiver.
[0009] A wireless power receiver according to some embodiments includes: a rectifier coupled to a receiving coil; an FSK demodulator coupled to the rectifier to receive data from a wireless transmitter; an ASK modulator coupled to the rectifier to transmit data to the wireless transmitter; and a processor coupled to the rectifier, the FSK demodulator, and the ASK modulator. The processor executes instructions for: transmitting an SSP value, an ID, and a random number to the wireless power transmitter; receiving a security code from the wireless power transmitter; retrieving an index from the security code; determining a base code from a set of base codes based on the index; calculating a second security code from the SSP, ID, random number, and base code; and authenticating the wireless power transmitter by comparing the security code and the second security code.
[0010] These and other embodiments are discussed below with reference to the accompanying drawings. Attached Figure Description
[0011] Figure 1 A wireless power transmission system is shown;
[0012] Figure 2A and 2B The wireless power transmitter and wireless power receiver are shown respectively;
[0013] Figure 3 A communication scheme for arranging certified wireless power transmission according to some embodiments is illustrated;
[0014] Figure 4A and 4B The procedures performed on a wireless power transmitter and a wireless power receiver according to some embodiments are shown; and
[0015] Figure 5A and 5B The procedures performed on a wireless power transmitter and a wireless power receiver according to some embodiments are shown.
[0016] These figures will be discussed further below. Detailed Implementation
[0017] In the following description, specific details describing some embodiments of the invention are set forth. However, it will be apparent to those skilled in the art that some embodiments may be practiced without some or all of these specific details. The specific embodiments disclosed herein are intended to be illustrative and not restrictive. Other elements, though not specifically described herein, may be implemented by those skilled in the art within the scope and spirit of this disclosure.
[0018] This description illustrates aspects of the invention, and the embodiments should not be considered limiting; the claims define the protected invention. Various changes may be made without departing from the spirit and scope of this specification and the claims. In some cases, well-known structures and techniques have not been shown or described in detail so as not to obscure the invention.
[0019] Figure 1 An example wireless power transmission system 100 is shown. (e.g.) Figure 1 As shown, wireless transmitter 102 is coupled to coil 106, and wireless receiver 104 is coupled to coil 108. Coil 106 is driven by wireless transmitter 102 to generate a time-varying magnetic field, which in turn induces a current in coil 108. Coil 108 is coupled to wireless receiver 104, which can receive power transmitted from wireless device 102 through the time-varying magnetic field.
[0020] The wireless receiver 104 can be any device with wireless power capabilities. Many telephones, laptops, tablets, and other devices have wireless power capabilities. In many cases, these devices can simultaneously receive and transmit wireless power. In some examples, the wireless transmitter 102 can be a fixed wireless power charger (e.g., built into a table, floor, or other structure).
[0021] Embodiments of this disclosure provide authentication of a wireless power transmitter to a wireless power receiver. Authentication according to embodiments of this disclosure can be implemented in any wireless power transmission system and is particularly suitable for high-power wireless power transmission systems. An authentication method performed in a wireless power transmitter according to some embodiments of this disclosure includes: receiving a signal strength value (SSP value) from a signal strength packet (SSP), an ID, and a random number received from the wireless power receiver. An index can be determined based on the random number, and a base code can be determined from the index. A security code can then be determined from the base code, the index, the random number, the SSP value, and the ID. The security code can then be transmitted to the wireless power receiver. A method performed in the wireless power receiver includes transmitting the SSP value, the ID, and the random number to the wireless power transmitter. The receiver can then receive a security code from the wireless power transmitter, the security code including the index. The receiver can then calculate a second security code. Therefore, the wireless power receiver can authenticate the wireless power transmitter by comparing the security code with the second security code.
[0022] Figure 2A An example of a wireless power transmitter (PTx) 200 on which embodiments of the present invention can be performed is shown. The PTx 200 can be formed on a single IC coupled to a transmission coil 202. The PTx 200 receives power from an external power supply Vin and drives the transmission coil 202 to transmit power to a receiving device. Figure 2A As shown, PTx 200 includes an inverter / driver 204 coupled to drive transmission coil 202 according to instructions from processor 210.
[0023] Processor 210 is also coupled to Frequency Shift Keying (FSK) modulator 208 for transmitting in-band data to receiver device via a time-varying magnetic field generated by transmission coil 202. Furthermore, processor 210 is coupled to Amplitude Shift Keying (ASK) modulator 206 to receive in-band data transmitted by receiver device. FSK modulator 208 is coupled to inverter driver 204 to modulate the transmitted data received from processor 210 by frequency shifting the output frequency of the time-varying magnetic field generated at transmission coil 202, representing a digital data stream corresponding to the transmitted data. Additionally, ASK demodulator 206 monitors the amplitude of the time-varying magnetic field generated at transmission coil 202 to detect and decode digital data encoded by modulating the load on the receiver coil of receiver device.
[0024] Processor 210 may be any processing device capable of executing instructions for performing the functions described in this disclosure. In some embodiments, processor 210 is coupled via interface 214 to another device that provides instructions, in which case the functions described in this disclosure are performed by a combination of processor 210 and a device coupled to processor 210 via interface 214. Processor 210 may include any combination of a microcomputer, microprocessor, state machine, or other circuitry that performs some or all of the functions described in this disclosure.
[0025] Processor 210 may be coupled to memory 212. Memory 212 may be any combination of volatile memory and non-volatile memory, which stores data and instructions executed in processor 210. Memory 212 may also include any registers used for the operation of processor 210.
[0026] like Figure 2A As further shown, processor 210 includes a random number generator 216 for generating random numbers. In some embodiments, random number generator 216 may be instructions that execute within the computing device of processor 210. In some embodiments, random number generator 216 may be a stand-alone random number generator circuit that provides random numbers to processor 210.
[0027] Figure 2B A wireless power receiver (PRx) 220 is shown, which can be brought close to the PTx 200 to receive wireless power transmitted by the PTx 200. Figure 2B As shown, the receiving coil 222 receives power from the time-varying magnetic field generated by the PTx 200 and rectifies the received power to generate an output voltage Vout in the rectifier 224. The rectifier 224 can be controlled by the processor 230 to efficiently receive the power transmitted by the PTx 200.
[0028] like Figure 2B As further shown, the ASK modulator 226 modulates the load on the receiving coil 222 to transmit digital data received from the processor 230. The FSK demodulator 228 monitors the frequency of the received time-varying magnetic field and receives the digital data that has been modulated to a frequency shift. The ASK modulator 226 and the FSK demodulator 228 are coupled to the processor 230, which receives digital data transmitted by the PTx 200 from the FSK demodulator 228 and sends digital data to the ASK modulator 226 for transmission to the PTx 200.
[0029] Processor 230 may be any processing device capable of executing instructions for performing the functions described in this disclosure. In some embodiments, processor 230 is coupled via interface 234 to another device that provides instructions, in which case the functions described in this disclosure are performed by a combination of processor 230 and a device coupled to processor 230 via interface 234. Processor 230 may include any combination of a microcomputer, microprocessor, state machine, or other circuitry that performs some or all of the functions described in this disclosure.
[0030] Processor 230 may be coupled to memory 232. Memory 232 may be any combination of volatile memory and non-volatile memory, which stores data and instructions executed in processor 230. Memory 232 may also include any registers used for the operation of processor 230.
[0031] like Figure 2B As further shown, processor 230 includes a random number generator 236 for generating random numbers. In some embodiments, random number generator 236 may be instructions that execute within the computing device of processor 230. In some embodiments, random number generator 236 may be a stand-alone random number generator circuit that provides random numbers to processor 230.
[0032] Figure 3 A communication process 300 for authenticating PTx200 via PRx 220 according to an embodiment disclosed herein is illustrated. Once authentication is complete, power reception from PTx200 can be initiated via PRx 220. Communication 302 represents a transmission from PRx 220 to PTx200 and includes an SSP value, receiver ID, and general configuration parameters. In some embodiments, communication 302 may include multiple packets, including SSP packets, ID packets, configuration packets, control error packets (CEP) or other communications.
[0033] Communication 304 represents a transmission from PRx 220 to PTx 200 that initiates a request for authentication and power transfer. Communication 304 includes a power request and a random number RND generated by PRx 220. Communication 306 represents a transmission from PTx 200 to PRx 220 that includes a security code generated by PTx 200 and a potential power level. The security code is calculated in PTx 200, as discussed further below. Communication 308 transmits a request for power transfer from PRx 220 to PTx 200. As discussed further below, communication 308 is transmitted only after PRx 220 has authenticated PTx 200. In some embodiments, communication may stop if PRx 220 has not authenticated PTx 200, but in some embodiments, more than one authentication attempt may be performed before communication stops.
[0034] Communication 308 can also represent a series of communications between PRx 220 and PTx 200, such as negotiating or renegotiating the power level of wireless power transmission after PRx 220 has authenticated PTx 200. In some embodiments, PRx 220 and PTx 200 can operate in multiple modes, including no power transmission to high power transmission. In some embodiments, PRx 220 and PTx 200 can operate in no or low power transmission modes without authentication, and can operate in high power mode only when authenticated. In some embodiments, high power mode can include wireless power transmission with a power level exceeding 10W, for example, power transmission between 15W and 40W. High power is possible in some embodiments.
[0035] In some embodiments, each communication is transmitted in a packet format. For example, a packet may include an 8-bit (1-byte) header and multiple bytes of data (labeled B0, ..., BN). In some embodiments, N is 4, such that the packet includes 6 bytes of data (header and bytes B0-B4). For example, communication 302 may use multiple packets for transmission.
[0036] According to some embodiments, after receiving the SSP packet and the ID packet, the PTx 200 can combine the SSP packet value, the sequence number ID of the PRx 220, the random number RND transmitted by the PRx 220, and the random number generated by the PTx 200 to generate a security code.
[0037] Figure 4A and 4B Some embodiments of authentication according to this disclosure are shown. Figure 4A The procedure 400 performed on the PTx 200 is shown, while Figure 4B The procedure 420 that can be executed on PRx 220 is shown. For example... Figure 4A As shown, process 400 begins at step 402, in which communication 304, including an authentication request and a random number, is received from PRx 220. Prior to step 402, PTx 200 has already received communication 302 from PRx 220 containing an SSP value, ID, and other data.
[0038] In step 404, an index is calculated in PTx 200. The index can be calculated based on the random number RND received from PRx 220 and another random number derived from PTx 200. Therefore, the index can be calculated as follows:
[0039] index = F(RND, TX RND 1, ..., TX RND N)
[0040] In some embodiments, the calculation of the index may include additional parameters, such as the SSP value, ID, or other data accessible to both PRx 220 and PTx 200. The function F can be any function shared by PRx 220 and PTx 200 and provides an index spanning a range across the basecode. In a particular example, the index can be calculated to provide a value between 0 and 15 as follows:
[0041] Index = (RND)XOR(TX RND 1)XOR(TX RND 2)MOD 16. As mentioned above, RND is a random number generated by PRx 220. TX RND 1 is a first random number generated in PTx 200. TX RND 2 is a second random number generated in PTx 200. The function XOR refers to the Exclusive OR function. MOD 16 refers to the Modulo 16 function. In some embodiments, each random number in RND and TX can be a 1-byte (8-bit) value, and MOD 16 can provide an index value between 0 and 15, which can be represented in 1 / 2 byte (4 bits). Those skilled in the art will recognize that using 8-bit random numbers in the XOR and MOD 16 operations to calculate an index between 0 and 15 is merely an example, and index calculations using larger random numbers calculated by the receiver and transmitter can be used to provide index values with a wider range.
[0042] In step 406, the index value is used to select the base code. In this particular example, the index is a value between 0 and 15, and there are 16 base codes. The base codes can be of any size, but in this particular example, each of the 16 base codes can have 40 bits. The 40 bits are used to encode 5 8-bit bytes, as described below. In some embodiments, a greater number of base codes can be used, and each base code can be formed by more or fewer bits. The base codes are fixed and shared by PTx 200 and PRx 220. The specific base codes that can be used in embodiments of this disclosure are individual base codes of uniform length, having a number determined by the range of the index, and are all different. For ease of illustration, the following table gives the 16 base codes:
[0043] 0 0x4fa763e4cc 8 0x5b02c18c70 1 0xd174d79308 9 0xc5cfb7ea2e 2 0x2cc7b36c4e 10 0xf418e9d91e 3 0xc40b337039 11 0xd85c380131 4 0x5f7fb105d6 12 0x375e356571 5 0x9fc4b773e1 13 0xd481985bcd 6 0xe6cde620ec 14 0x5f8497801e 7 0x716f1f85bc 15 0xbb4be990c6
[0044] This index table is merely an example, and the base code can hold other values and can have different bit lengths. As shown in the figure, the example 40-bit base code (BC) shown above can be represented by 5 bytes and can be labeled as (B4, B3, B2, B1, B0).
[0045] In step 408, a pre-secure code is calculated from the base code by convolving it with other data. In some embodiments, the pre-secure code can be determined as a function of the following: the index base code, a random number RND from PRx 220, and an ID from PRx220ID. For example, this function could be...
[0046] Pre-Secure = G(BC(index), RND, ID, SSP).
[0047] In some embodiments, the 5-byte basecode can be convolved with a matching 5-byte set selected from the values of RND, ID, and SSP in function G. In a particular example, 3 bytes can be selected from a receiver ID group that includes the receiver ID. For example, bytes B4, B5, and B6 of the ID group can be used. These three bytes can be combined with a single-byte SSP value and a single-byte random number RND, and convolved with the five bytes of the index basecode BC (index). In some embodiments, the bytes selected from the receiver ID can be other bytes in the group that includes the receiver ID. For example, the pre-security code PSC can be computed by compiling a code of the same size as the basecode from multiple bytes of ID, RND, and SSP. An example of this can be given by the following formula.
[0048] PSC = (BC(index))XOR(ID B4, SSP, RND, ID B6, ID B5). It should be noted that the order of the ID byte, SSP, and RND may differ from the order indicated above, and the above computation function G is merely exemplary. The computation G is described below:
[0049]
[0050] As mentioned above, BC represents the index base code, ID represents the ID of the identifier packet received from PRx 220, SSP represents the signal strength value of the signal strength packet received from PRx 220, and RND represents the random number received from PRx 220. Therefore, the resulting pre-secure code (PSC) has five bytes, which can be represented as 10 half-bytes as shown below.
[0051] In step 410, the security code is generated from the precode calculated above. It should be noted that, as mentioned above, the pre-security code PSC in this example is a 5-byte (40-bit) code, which can be specified as follows:
[0052] PSC =
[0053]
[0054] As described above, each byte of the pre-security code is designated as a low part and a high part. The above names follow the 8-bit name of each byte. For example, the 8 bits of the byte PSC B0 are designated as two 4-bit parts (B0-H, B0-L).
[0055] The security code can then be assembled from the PSC and the index embedded according to the function S(PSC, index). Specifically, the security code is assembled using a combination of the nibble of the PSC and the index value.
[0056] For example, a security code can be given by the following formula.
[0057] Security code = S(PSC, index) =
[0058] B2-L B4-H index B3-H B1-L B2-H B0-L
[0059] As described above, half a byte of each pre-security byte is used and an index is embedded to construct the security code; in this example, the security code has a length of three 0.5 bytes. Those skilled in the art can assemble security codes using other arrangements from the pre-security byte and the index.
[0060] In step 412, PTx 200 transmits a security code to PRx 220. Specifically, the security code may be transmitted as part of a packet including a header and potential power. In some embodiments, this includes, for example... Figure 3 The TX packets of communication 306 shown can take, for example, the following form:
[0061] masthead B0 PSC B2-L B1 PSC B4-H index B2 PSC B3-H PSC B1-L B3 PSC B2-H PSC B0-L B4 Potential power Potential power
[0062] As mentioned above, the TX group provided above includes a security code and potential power.
[0063] Figure 4B A process 420, which can be performed by PRx 220 to authenticate PTx 200, is shown. Process 420 begins at step 422, in which a TX packet transmitted by process 400 in step 412, as described above, is received. In step 424, an index is retrieved from the security code in the TX packet. In step 426, PRx 220 performs the steps described above in steps 406, 408, and 410 of process 400 to calculate the security code. In step 428, PRx 220 compares the security code calculated in PRx 220 with the security code received in the TX packet. If they match, PRx 220 authenticates PTx 200 and communication continues 308, as... Figure 3 As shown.
[0064] Figure 5A and 5B Other embodiments of certification according to this disclosure are shown. Figure 5A The procedure 500 performed on the PTx 200 is shown, while Figure 5B The procedure 520 performed on PRx 220 is shown.
[0065] like Figure 5A As shown, when in Figure 3 When an authentication request is received in communication 304 as shown, process 500 begins. In step 504, the index is calculated. (As mentioned above regarding...) Figure 4A As discussed in step 404, the index can be calculated as
[0066] Index = (RND)XOR(TX RND 1)XOR(TX RND 2)MOD 16. In step 506, the base code (BC) is selected based on the index BC (index). The base code has been discussed above with respect to step 406 of process 400 and can be, for example, a 40-bit code, which can be specified using five bytes labeled (B4, B3, B2, B1, B0), as described above.
[0067] In step 508, a hash code input is formed based on the SSP value, the random number RND, several bytes of the receiver ID (e.g., bytes B4, B5, and B6 of the receiver ID block), and the index base code BC (index). Although this hash code input can be arranged in any manner, an example of such an arrangement is as follows:
[0068] Hash input =
[0069] ID B4 SSP RND ID B6 ID B5 BC B4 BC B3 BC B2 BC B1 BC B0
[0070] Where BC represents the base code byte, ID represents the identifier byte, SSP represents the SSP value, and RND is a random number. As mentioned above, Figure 3 As shown, SSP, ID, and RND are transmitted to PTx 200 in communications 302 and 304.
[0071] In step 510, a hash code is formed by performing a hash function on the hash code input described above. Any hash function can be used. Common hash functions include MD5, SHA-1, SHA-2, NTLM, and LANMAN. MD5 is a common hash function that can create a 128-bit hash code. SHA-1 is a secure hash that can create a 160-bit hash code. SHA-2 is a set of hash algorithms that can create hash codes of various lengths. LANMAN is a Microsoft hash code, which is insecure and rarely used. NTLM is the successor to LANMAN. Any hash function can be used to create a hash code. For illustrative purposes, a 128-bit MD5 code is shown. Using this example, the hash code generated from the hash function performed on the hash code input described above can be shown as follows:
[0072] Hash code (HC) =
[0073] B15 B14 B13 B12 B11 B10 B9 B8 B7 B6 B5 B4 B3 B2 B1 B0
[0074] In step 512, the security code is derived from the hash code. As described above, each byte from B0 to B15 can be divided into 4-bit segments designated as L and H segments. For example, byte B0 can be designated as B0-L and B0-H. Although any set of bits can be selected from the hash code, in a specific example, the security code can be assembled from the hash code as follows:
[0075] Security code = Hash code (HC) bytes
[0076] B3-L B2-H B2-L index B1-L B0-H B0-L
[0077] As shown in this example, multiple sets of bits are selected from the hash code above, and the index is embedded in an arbitrary but pre-selected position in the security code.
[0078] In step 514, as described above, a security code is transmitted to the receiver in communication 306. The transmission packets in communication 306 may take the following form:
[0079] masthead B0 HC B3-L B1 index HC B2-L B2 HC B1-H HC B1-L B3 HC B0-H HC B0-L B4 Potential power Potential power
[0080] Figure 5BA process 520 performed on PRx 220 according to some embodiments is illustrated. In step 522, PRx 220 receives a transmission packet having a security code transmitted by PTx 200 in step 514 of process 500. In step 524, an index is retrieved from the received security code. As described above, the index is embedded at a specific location within the security code so that PRx 220 can retrieve the index.
[0081] In step 526 of process 520, PRx 220 uses the same algorithm described above in steps 506 to 512 of process 500 to calculate the security code. In step 528, PRx 220 compares the security code calculated by PRx 220 with the received security code. If the security codes match, PTx 200 is authenticated to PRx 220. If they do not match, PTx 200 is not authenticated to PRx 220.
[0082] In this disclosure, examples of authentication have been provided, in which PRx 220 authenticates PTx 200 by sending a random number, an SSP value, and an ID to PTx 200 and by receiving a security code, as described above. In some embodiments, this process may be reversed, and PTx 200 authenticates PRx 220 by the same or a similar process as described above.
[0083] The embodiments of the invention described herein are not intended to limit the invention. Those skilled in the art will recognize that various changes and modifications are possible within the scope of the invention. Therefore, the invention is set forth in the following claims.
Claims
1. An authentication method, comprising: Receive the SSP value, ID, and random number RND from the wireless power receiver; The index is determined based on the RND; Select a base code from a set of base codes according to the index; The security code is determined from the base code, the index, the RND, the SSP value, and the ID; as well as The security code is transmitted to the wireless power receiver. Determining the index includes: Determine at least one transmitted random number TX RND; The RND is convolved with the at least one TX RND to generate the index, wherein the index is within the range spanning the set of base codes.
2. The method of claim 1, wherein the at least one TX RND comprises TX RND 1 and TX RND 2, and the index is given by the following formula: Index = (RND)XOR(TX RND 1)XOR(TX RND 2)MOD 16.
3. The method according to claim 1, wherein the set of base codes comprises sixteen 5-byte codes.
4. The method of claim 1, wherein determining the security code comprises: The base code is convolved with the ID, the SSP, and the RND to form a pre-secure code; as well as The security code is assembled from the pre-security code and the index.
5. The method of claim 4, wherein the convolution used to form the pre-secure code comprises: Select multiple bytes from the ID; Assemble a code of length equal to the base code from the plurality of bytes from the ID, the SSP, and the RND; as well as Convolve the base code with the code.
6. The method of claim 5, wherein the code is given by: IDB4, SSP, RND, IDB6, IDB5, and the base code is convolved with the code to generate the pre-secure code. (Base code) XOR (ID B4, SSP, RND, ID B6, ID B5).
7. The method of claim 4, wherein assembling the security code from the pre-security code comprises: Select multiple nibbles from the pre-secure code; as well as The plurality of nibbles and the index are arranged into the security code.
8. The method of claim 7, wherein selecting a plurality of nibbles from the pre-secure code comprises: Select at least one half-byte from each byte of the pre-secure code.
9. The method of claim 1, wherein determining the security code comprises: The hash input is determined from the ID, the SSP value, the random number, and the base code; A hash function is executed on the hash input to determine the hash code; as well as The security code is assembled from the hash and the index.
10. The method of claim 9, wherein assembling the security code comprises: Select multiple nibbles from the hash code; as well as The plurality of nibbles with the index are arranged into the security code.
11. An authentication method, comprising: Transmit the SSP value, ID, and random number to the wireless power transmitter; Receive a security code from the wireless power transmitter; Retrieve the index from the security code; The base code is determined from a set of base codes according to the index; Calculate the second security code from the SSP, the ID, the random number, and the base code; as well as The wireless power transmitter is authenticated by comparing the security code and the second security code. The calculation of the second security code includes: The base code is convolved with the ID, the SSP, and the random number to form a pre-secure code; as well as The second security code is assembled from the pre-security code and the index.
12. The method of claim 11, wherein the convolution used to form the pre-secure code comprises: Select multiple bytes from the ID; Assemble a code of length equal to the base code from the plurality of bytes derived from the ID, the SSP, and the random number; as well as Convolve the base code with the code.
13. The method of claim 11, wherein calculating the second security code comprises: The hash input is determined from the ID, the SSP value, the random number, and the base code; A hash function is executed on the hash input to determine the hash code; as well as The security code is assembled from the hash and the index.
14. A wireless power transmitter, comprising: An inverter, coupled to drive a transmission coil; An FSK modulator is coupled to the inverter to transmit data to a wireless power receiver; The ASK demodulator is coupled to the inverter to receive data from the wireless power receiver; as well as A processor, coupled to the inverter, the FSK modulator, and the ASK demodulator, executes instructions for the following operations: Receive the SSP value, ID, and random number RND from the wireless power receiver; The index is determined based on the RND; Select a base code from a set of base codes according to the index; The security code is determined from the base code, the index, the RND, the SSP value, and the ID; as well as The security code is transmitted to the wireless power receiver. The instructions used to determine the index include instructions for the following operations: Determine at least one transmitted random number TX RND; The RND is convolved with the at least one TX RND to generate the index, wherein the index is within the range spanning the set of base codes.
15. The wireless power transmitter of claim 14, wherein the instructions for determining the security code include instructions for the following operations: The base code is convolved with the ID, the SSP, and the RND to form a pre-secure code; and The security code is assembled from the pre-security code and the index.
16. The wireless power transmitter of claim 15, wherein the instructions for assembling the security code from the pre-security code include instructions for: Select multiple nibbles from the pre-secure code; and The plurality of nibbles and the index are arranged into the security code.
17. The wireless power transmitter of claim 15, wherein the instructions for determining the security code include instructions for the following operations: The hash input is determined from the ID, the SSP value, the random number, and the base code; A hash function is executed on the hash input to determine the hash code; as well as The security code is assembled from the hash and the index.
18. A wireless power receiver, comprising: The rectifier is coupled to the receiving coil; An FSK demodulator is coupled to the rectifier to receive data from the wireless transmitter; An ASK modulator is coupled to the rectifier to transmit data to the wireless transmitter; as well as A processor, coupled to the rectifier, the FSK demodulator, and the ASK modulator, executes instructions for the following operations: Transmit the SSP value, ID, and random number to the wireless power transmitter; Receive a security code from the wireless power transmitter; Retrieve the index from the security code; The base code is determined from a set of base codes according to the index; Calculate the second security code from the SSP, the ID, the random number, and the base code; as well as The wireless power transmitter is authenticated by comparing the security code and the second security code. The instructions used to calculate the second security code include instructions for the following operations: The base code is convolved with the ID, the SSP, and the random number to form a pre-secure code; and The second security code is assembled from the pre-security code and the index.
19. The wireless power receiver of claim 18, wherein the instructions for calculating the second security code include instructions for the following operations: The hash input is determined from the ID, the SSP value, the random number, and the base code; A hash function is executed on the hash input to determine the hash code; as well as The security code is assembled from the hash and the index.
Citation Information
Patent Citations
Clean-slate synchronization signal design and cell search algorithms
CN108352966A
Wireless Authentication Methods and Apparatus
US20070186105A1
Wireless power transfer with improved device identification and signaling link security
US20170170687A1
Methods providing authentication using a request commit message and related user equipment and network nodes
US20220286846A1