Positioning method, device, equipment, medium and program product
By generating public and private keys and their hash values, and utilizing short-range communication and cloud servers, device location was achieved even when offline or under network-restricted conditions. This solves the problem of device location relying on network connectivity in existing technologies, and protects user privacy and device security through encryption.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- BEIJING XIAOMI MOBILE SOFTWARE CO LTD
- Filing Date
- 2024-10-29
- Publication Date
- 2026-05-01
AI Technical Summary
Existing device positioning technologies rely on the device's network connectivity, making them unable to work offline or in situations with limited network access. Furthermore, location information is easily intercepted by malicious attackers, infringing on user privacy and threatening device security.
The target device generates a public key, a private key, and their hash value. The hash value of the public key is then sent to the assisting device via short-range communication. The assisting device encrypts the location information and uploads it to the cloud server. The tracking device decrypts the information using the private key to obtain the location information of the target device, thus breaking the dependence on the Internet and enhancing security.
It enables device location tracking even when offline or with limited network access, protecting user privacy and enhancing the security and reliability of device location tracking.
Smart Images

Figure CN121968020A_ABST
Abstract
Description
Technical Field
[0001] This disclosure relates to the field of equipment positioning technology, and in particular to a positioning method, apparatus, device, medium, and program product. Background Technology
[0002] With the development of technology, device location has gradually become an important function. This function can be achieved by pairing devices, allowing one device to locate the position of another. However, current device location technologies mainly rely on the networking capabilities of devices, requiring the device being located to send its location information over the internet for other devices to query. This severely limits the application scenarios of location services, making them unsuitable for situations where devices are offline or have limited network connectivity. Furthermore, location information is highly vulnerable to interception and decryption by malicious attackers during transmission, thereby infringing on user privacy and seriously threatening device security. Summary of the Invention
[0003] To overcome the problems existing in related technologies, this disclosure provides a positioning method, apparatus, device, medium, and program product.
[0004] According to a first aspect of the present disclosure, a positioning method is provided, applied to a target device to be positioned, the method comprising:
[0005] Generate a public key, a private key, and a hash value of the public key;
[0006] The public key and its hash value are uploaded to a cloud server so that the assisting device can obtain the public key from the cloud server based on the hash value of the public key.
[0007] A broadcast message is sent to the assisting device, the broadcast message carrying the hash value of the public key, so that the assisting device encrypts its own location information according to the public key, generates assisting location information including at least the encrypted location information, uploads it to the cloud server, and the tracking device obtains the assisting location information from the cloud server and decrypts the encrypted location information using the private key to obtain the location information of the target device.
[0008] The target device can be connected to the same cloud server as the tracking device and the assisting device. The tracking device is used to locate the target device, and the assisting device establishes short-range communication with the target device.
[0009] According to a second aspect of the present disclosure, a positioning method is provided, applied to an assistive device, the method comprising:
[0010] Receive a broadcast message sent by the target device, the broadcast message carrying a hash value of the public key;
[0011] The public key is obtained from the cloud server based on the hash value of the public key;
[0012] The tracking device encrypts its own location information using the public key to generate assisted location information, which includes at least the encrypted location information. This information is then uploaded to the cloud server so that the tracking device can obtain the assisted location information from the cloud server and decrypt the encrypted location information using the private key to obtain the location information of the target device.
[0013] The assisting device establishes short-range communication with the target device, the tracking device is used to locate the target device, and the target device can connect to the same cloud server as the tracking device and the assisting device.
[0014] According to a third aspect of the present disclosure, a positioning method is provided, applied to a cloud server, the method comprising:
[0015] Receive the public key and the hash value of the public key uploaded by the target device, so that the assisting device can obtain the public key from the cloud server based on the hash value of the public key;
[0016] The system receives assisted location information uploaded by the assisting device, the assisted location information including at least encrypted location information, the encrypted location information being generated by the assisting device encrypting its own location information according to the public key;
[0017] The location assistance information is sent to the tracking device, so that the tracking device can decrypt the encrypted location information using a private key to obtain the location information of the target device;
[0018] The cloud server can connect to the target device, the tracking device, and the assisting device. The tracking device is used to locate the target device, and the assisting device establishes short-range communication with the target device.
[0019] According to a fourth aspect of the present disclosure, a positioning method is provided, applied to a tracking device, the method comprising:
[0020] The assisting device obtains assisted location information from a cloud server. The assisted location information includes at least encrypted location information, which is generated by the assisting device encrypting its own location information using a public key.
[0021] The encrypted location information is decrypted using the private key to obtain the location information of the target device;
[0022] The tracking device is used to locate the target device, the assisting device establishes short-range communication with the target device, and the tracking device can connect to the same cloud server as the target device and the assisting device.
[0023] According to a fifth aspect of the present disclosure, a positioning device is provided, applied to a target device to be positioned, the device comprising:
[0024] A key generation module is used to generate a public key, a private key, and a hash value of the public key;
[0025] A cloud server upload module is used to upload the public key and its hash value to a cloud server so that the assisting device can obtain the public key from the cloud server based on the hash value of the public key.
[0026] The broadcast module is used to send a broadcast message to the assisting device. The broadcast message carries the hash value of the public key, so that the assisting device encrypts its own location information according to the public key, generates assisting location information including at least the encrypted location information, and uploads it to the cloud server. The tracking device obtains the assisting location information from the cloud server and decrypts the encrypted location information using the private key to obtain the location information of the target device.
[0027] The target device can be connected to the same cloud server as the tracking device and the assisting device. The tracking device is used to locate the target device, and the assisting device establishes short-range communication with the target device.
[0028] According to a sixth aspect of the present disclosure, a positioning device is provided for use in an assistive device, the device comprising:
[0029] A broadcast receiving module is used to receive broadcast messages sent by the target device, wherein the broadcast message carries a hash value of a public key;
[0030] A public key acquisition module is used to obtain a public key from a cloud server based on the hash value of the public key;
[0031] The assisted positioning information generation module is used to encrypt its own location information according to the public key, generate assisted positioning information including at least the encrypted location information, and upload it to the cloud server, so that the tracking device can obtain the assisted positioning information from the cloud server and decrypt the encrypted location information using the private key to obtain the location information of the target device.
[0032] The assisting device establishes short-range communication with the target device, the tracking device is used to locate the target device, and the target device can connect to the same cloud server as the tracking device and the assisting device.
[0033] According to a seventh aspect of the present disclosure, a positioning device is provided, applied to a cloud server, the device comprising:
[0034] The target device information receiving module is used to receive the public key uploaded by the target device and the hash value of the public key, so that the assisting device can obtain the public key from the cloud server based on the hash value of the public key;
[0035] The assisted positioning information receiving module is used to receive assisted positioning information uploaded by the assisting device. The assisted positioning information includes at least encrypted location information, which is generated by the assisting device encrypting its own location information according to the public key.
[0036] The location assistance information sending module is used to send the location assistance information to the tracking device, so that the tracking device can use a private key to decrypt the encrypted location information and obtain the location information of the target device;
[0037] The cloud server can connect to the target device, the tracking device, and the assisting device. The tracking device is used to locate the target device, and the assisting device establishes short-range communication with the target device.
[0038] According to an eighth aspect of the present disclosure, a positioning device is provided for use in a tracking device, the device comprising:
[0039] The assisted location information acquisition module is used to acquire assisted location information from a cloud server. The assisted location information includes at least encrypted location information, which is generated by the assisting device encrypting its own location information using a public key.
[0040] The positioning module is used to decrypt the encrypted location information using a private key to obtain the location information of the target device;
[0041] The tracking device is used to locate the target device, the assisting device establishes short-range communication with the target device, and the tracking device can connect to the same cloud server as the target device and the assisting device.
[0042] According to a ninth aspect of the present disclosure, a target device is provided, comprising: a processor; and a memory for storing a computer program executable by the processor; wherein, when the processor executes the program, it implements the steps of the method of the first aspect.
[0043] According to a tenth aspect of the present disclosure, an assistive device is provided, comprising: a processor; and a memory for storing a computer program executable by the processor; wherein, when the processor executes the program, it implements the steps of the method described in the second aspect.
[0044] According to an eleventh aspect of the present disclosure, a cloud server is provided, comprising: a processor; and a memory for storing a computer program executable by the processor; wherein, when the processor executes the program, it implements the steps of the method described in the third aspect.
[0045] According to a twelfth aspect of the present disclosure, a tracking device is provided, comprising: a processor; and a memory for storing a computer program executable by the processor; wherein, when the processor executes the program, it implements the steps of the method of the fourth aspect.
[0046] According to a thirteenth aspect of the present disclosure, a computer-readable storage medium is provided having a computer program stored thereon, which, when executed by a processor, implements the steps of the method described in any one of the first to fourth aspects.
[0047] According to a fourteenth aspect of the present disclosure, a computer program product is provided, including a computer program that, when executed by a processor, implements the steps of the method described in any one of the first to fourth aspects.
[0048] The technical solutions provided in this disclosure may have the following beneficial effects:
[0049] The positioning method provided in this disclosure sends a broadcast from the target device to an assisting device that can establish short-range communication with it, so that the assisting device uploads its own location information to a cloud server. This allows the tracking device to use the location information of the assisting device to complete the positioning of the target device, breaking the dependence of positioning technology on device networking. At the same time, the assisting device encrypts the location information to protect user privacy and enhance the security and reliability of device positioning.
[0050] It should be understood that the above general description and the following detailed description are exemplary and explanatory only, and are not intended to limit this disclosure. Attached Figure Description
[0051] Figure 1 This is an application scenario diagram of positioning methods in related technologies;
[0052] Figure 2 This is an application scenario diagram illustrating the positioning method according to an exemplary embodiment of this disclosure;
[0053] Figure 3This is a flowchart illustrating a positioning method according to an exemplary embodiment of the present disclosure;
[0054] Figure 4 This is a flowchart illustrating another positioning method according to an exemplary embodiment of the present disclosure;
[0055] Figure 5 This is a flowchart illustrating yet another positioning method according to an exemplary embodiment of the present disclosure;
[0056] Figure 6 This is a flowchart illustrating another positioning method according to an exemplary embodiment of the present disclosure;
[0057] Figure 7 This is a general flowchart illustrating a positioning method according to an exemplary embodiment of the present disclosure;
[0058] Figure 8 This is a structural block diagram of a positioning device according to an exemplary embodiment of the present disclosure;
[0059] Figure 9 This is a structural block diagram of another positioning device according to an exemplary embodiment of the present disclosure;
[0060] Figure 10 This is a structural block diagram of another positioning device according to an exemplary embodiment of the present disclosure;
[0061] Figure 11 This is a structural block diagram of another positioning device according to an exemplary embodiment of the present disclosure;
[0062] Figure 12 This disclosure is a structural block diagram of an electronic device according to an exemplary embodiment. Detailed Implementation
[0063] Exemplary embodiments will now be described in detail, examples of which are illustrated in the accompanying drawings. When the following description relates to the drawings, unless otherwise indicated, the same numerals in different drawings denote the same or similar elements. The embodiments described in the following exemplary embodiments do not represent all embodiments consistent with this disclosure. Rather, they are merely examples of apparatuses and methods consistent with some aspects of this disclosure as detailed in the appended claims.
[0064] The terminology used in this disclosure is for the purpose of describing particular embodiments only and is not intended to be limiting of the disclosure. The singular forms “a,” “the,” and “the” as used in this disclosure and the appended claims are also intended to include the plural forms unless the context clearly indicates otherwise. It should also be understood that the term “and / or” as used herein refers to and includes any and all possible combinations of one or more of the associated listed items.
[0065] It should be understood that although the terms first, second, third, etc., may be used in this disclosure to describe various information, such information should not be limited to these terms. These terms are used only to distinguish information of the same type from one another. For example, without departing from the scope of this disclosure, first information may also be referred to as second information, and similarly, second information may also be referred to as first information. Depending on the context, the word "if" as used herein may be interpreted as "when," "when," or "in response to determination."
[0066] In daily life, device positioning technology is widely used in various scenarios, such as users finding lost devices or tracking goods in large warehouses. In these applications, such as... Figure 1 As shown, a positioning system typically consists of three core components: the target device to be located, the tracking device used to locate the target device, and the cloud server that provides data support.
[0067] The target device refers to the device that needs to be located, such as a smartphone, a children's watch, or a personal item tracker. The tracking device is the device the user uses to determine the location of the target device; it can be another smartphone, computer, or other device with location capabilities. The cloud server is responsible for storing and processing the location data, providing the tracking device with the target device's location information.
[0068] In the current positioning process, the target device and the tracking device first need to be paired. After pairing, the target device sends its location information to a cloud server for storage via the internet. When a user needs to locate the target device, the tracking device retrieves the target device's location information from the cloud server, thus helping the user determine the target device's location.
[0069] However, this positioning technology relies heavily on the device's internet connectivity, requiring the target device to transmit its location information via the internet. This severely limits the application scope of the technology, making it impossible to locate the device when it is offline (e.g., disconnected from the network, powered off) or when network connectivity is limited. Furthermore, during the transmission of location information, it is highly susceptible to interception and cracking by malicious attackers, thereby infringing on user privacy and seriously threatening device security.
[0070] To address the aforementioned issues, this disclosure provides an innovative positioning method. This method involves the target device to be located broadcasting to an assisting device capable of establishing short-range communication with it. This causes the assisting device to upload its own location information to a cloud server, allowing the tracking device to locate the target device using the assisting device's location information. This breaks the dependence of positioning technology on the device's network connectivity. Furthermore, the assisting device encrypts the location information, protecting user privacy and enhancing the security and reliability of device positioning.
[0071] It is understood that the target device, assisting device, and tracking device described in the embodiments of this disclosure can be various electronic devices with communication and data processing functions, such as smartphones, tablets, laptops, smartwatches, personal item trackers, vehicle systems, etc.
[0072] Before describing the positioning method provided in the embodiments of this disclosure, the positioning system to which this positioning method is applicable will first be described.
[0073] like Figure 2 As shown, the positioning method provided in this embodiment is applicable to positioning systems that include a target device to be located, an assisting device, a cloud server, and a tracking device. The target device in this system can be connected to the same cloud server as the tracking device and the assisting device.
[0074] The target device refers to the device that needs to be located, such as a smartphone, a children's watch, or a personal item tracker. The assisting device refers to a device capable of establishing short-range communication with the target device, such as another user's smartphone, a Bluetooth beacon in a shopping mall, or any device equipped with a short-range communication module. Short-range communication methods can include, but are not limited to, Bluetooth, Wi-Fi, and NFC (Near Field Communication). The tracking device is used to determine the location of the target device; it can be another smartphone, computer, or other device with location capabilities. The cloud server is responsible for storing and processing the location information uploaded by the assisting devices.
[0075] The positioning method provided in the embodiments of this disclosure will be described in detail below.
[0076] Figure 3 This is a flowchart illustrating a positioning method according to an exemplary embodiment of the present disclosure, which can be applied to... Figure 2 The target device shown.
[0077] like Figure 3 As shown, the method includes:
[0078] S301. Generate a public key, a private key, and a hash value of the public key;
[0079] S302. Upload the public key and its hash value to the cloud server so that the assisting device can obtain the public key from the cloud server based on the hash value of the public key.
[0080] S303. Send a broadcast message to the assisting device. The broadcast message carries the hash value of the public key so that the assisting device can encrypt its own location information according to the public key, generate assisting location information including at least the encrypted location information, upload it to the cloud server, and the tracking device obtains the assisting location information from the cloud server and decrypts the encrypted location information using the private key to obtain the location information of the target device.
[0081] In step S301, the public and private keys generated by the target device are an asymmetric key pair, where the public key is used for encryption and the private key is used for decryption. The hash value of the public key is a fixed-length string obtained by hashing the public key using a hash algorithm, which can be used to verify the integrity and consistency of the public key. This asymmetric key encryption method provides higher security because even if the public key is intercepted, the information cannot be decrypted without the corresponding private key. The target device can synchronize the private key or the method for generating the private key to the tracking device in advance to ensure that the tracking device is the only device besides the target device that possesses the private key. Only the tracking device can decrypt the location information, thereby improving the security of data transmission during the positioning process and effectively protecting user privacy and device security.
[0082] In step S302, the target device uploads the generated public key and its hash value to the cloud server. This step ensures that the assisting device can verify the legitimacy of the public key obtained from the cloud server through the hash value of the public key, while also guaranteeing the security and integrity of the public key transmission. The cloud server, acting as a data relay station, is responsible for storing and forwarding location information but lacks decryption capabilities, thus further protecting user privacy.
[0083] In step S303, the target device sends a broadcast message carrying a public key hash value to surrounding assisting devices. This process utilizes the short-range communication capabilities of the assisting devices and the target device, and does not rely on the internet. Therefore, device positioning can be achieved even when the device is offline or network connectivity is limited, breaking the dependence of traditional positioning technologies on device network capabilities and expanding the application scope of positioning technology. Taking Bluetooth as an example, the target device can send a broadcast message containing a public key hash value to surrounding assisting devices via Bluetooth broadcast. After receiving the broadcast message, the assisting device uses the public key to encrypt its own location information, generates assisted positioning information, and uploads it to a cloud server. The tracking device can obtain the assisted positioning information from the cloud server and decrypt the encrypted location information using its private key to obtain the target device's location information.
[0084] Through the above embodiments, this disclosure can not only solve the positioning problem of devices in offline state, but also improve the security of data transmission during positioning, and effectively protect user privacy and device security.
[0085] In order to address the issue of locating the target device in an offline state in a timely manner, in some embodiments, the target device can first check whether it is offline before generating the public key, private key, and hash value of the public key. If so, it then generates the public key, private key, and hash value of the public key, thereby enabling the assisting device to upload its own location information to the cloud server, and the tracking device to complete the location of the target device with the help of the assisting device's location information.
[0086] Methods for detecting whether a target device is offline may include, but are not limited to, heartbeat mechanisms, message transmission and reception detection, power supply detection, and IoT platform status detection. Taking a heartbeat mechanism as an example, the target device can periodically send heartbeat signals to the server to indicate its online status. If no heartbeat is received within a preset time, the device can be considered offline.
[0087] In some embodiments, to enhance the security of public key transmission, the assisting device can also perform a validity check on the obtained public key based on the hash value of the public key after obtaining it.
[0088] Specifically, in this process, the assisting device first calculates the hash value of the acquired public key, and then compares this calculated hash value with the hash value carried in the broadcast message. If they match, it means the public key has not been tampered with and is legitimate, and the assisting device can continue to use the public key to encrypt its own location information.
[0089] This hash-based verification mechanism provides an extra layer of security for public key transmission, preventing potential attackers from forging public keys during transmission to intercept or tamper with location information. It ensures that only legitimate public keys are used in the encryption process, effectively maintaining the security and data integrity of the entire positioning system.
[0090] In some embodiments, before sending a broadcast message to the assisting device, the target device may upload its device identifier to a cloud server, enabling the tracking device to obtain assisted location information from the cloud server based on the target device's device identifier. The device identifier is a unique identifier for the target device and may be a hardware serial number, device ID, or other unique identifier.
[0091] By uploading the device identifier to a cloud server, the target device provides a mechanism for the tracking device to accurately retrieve and obtain assisted location information related to the target device based on this identifier. When the tracking device needs to determine the location of the target device, it can use the device identifier to send a query request to the cloud server, which will then return all assisted location information associated with that device identifier.
[0092] The advantage of this method is that even if multiple devices broadcast messages in the same area, the tracking device can distinguish the target device's location assistance information by its device identifier, thus avoiding confusion and errors. Furthermore, this improves system scalability, as the cloud server can process information from multiple devices simultaneously, while the tracking device can still accurately locate the paired target device's location data. Moreover, the tracking device only needs the device identifier to obtain the corresponding location assistance information, eliminating a significant amount of local pre-calculation, greatly accelerating query efficiency and reducing device power consumption.
[0093] In implementing this step, the target device first uploads its device identifier, generated public key, and hash value to a cloud server. The cloud server then stores this information and associates the target device's device identifier with this information when the assisting device uploads location assistance information. Thus, when the tracking device initiates a query, the cloud server can provide accurate and relevant location assistance information, enabling the tracking device to decrypt and determine the target device's location. This process not only enhances the accuracy of location tracking but also improves the efficiency and reliability of the entire system.
[0094] In some embodiments, to enhance the security and randomness of the keys, the public key and private key can be public and private keys generated by the target device based on a random string and the current timestamp, respectively.
[0095] A random string is an irregular sequence of characters; it can be randomly generated by the target device or provided by the user in some way. The current timestamp provides the uniqueness of the key generation over time, ensuring that each generated key is unique. This key generation method, through the combination of a random string and a timestamp, provides the key with extremely high randomness and unpredictability, thus making the generated key more secure and reliable.
[0096] Based on this, before sending a broadcast message to the assisting device, the target device can also pre-synchronize a random string to the tracking device, so that the tracking device can generate the same public and private keys as the target device based on the random string and the current timestamp.
[0097] In this way, even if the target device does not directly send its private key to the tracking device, the tracking device can independently generate the correct private key, thereby decrypting the encrypted location information uploaded by the assisting device during subsequent location tracking. This method not only protects the security of the private key and prevents the risk of it being intercepted during transmission, but also improves the system's flexibility and scalability, because the tracking device can independently complete the key generation and decryption without relying on the private key sent by the target device.
[0098] Furthermore, this method of generating keys based on random strings and timestamps facilitates regular key updates, enhancing the system's dynamic security. For example, the target device can periodically generate new random strings and timestamps to update the public and private keys, thereby preventing the keys from becoming vulnerable or being cracked due to long-term use.
[0099] In some embodiments, the target device can first use a random string and the current timestamp to generate a private key based on a key generation algorithm, and then generate a random public key that matches the private key based on the private key.
[0100] This process not only ensures a strong correlation between the public and private keys, but also guarantees that each generated key pair is unique by introducing random strings and timestamps. Even if keys are generated consecutively on the same device, each generated key will be different due to the constantly changing timestamps. This greatly reduces the risk of keys being predicted or copied, thereby enhancing key security.
[0101] In practice, the target device can first concatenate a random string and the current timestamp, then generate a private key based on a preset key generation algorithm. Next, the public key is obtained by multiplying the private key by a preset value. It is understood that the steps of concatenating the random string and timestamp, and multiplying the private key by the preset value to obtain the public key, are merely examples in this embodiment. In actual applications, the appropriate method can be flexibly chosen according to the user's specific needs; this embodiment does not limit this approach. The key generation algorithm can also be varied, such as SHA-256, RSA, and ECC, to meet the key generation requirements in different scenarios.
[0102] After generating the public and private keys based on the above embodiments, the assisting device can encrypt its own location information using the public key to generate assisting location information that includes at least the encrypted location information.
[0103] In some embodiments, the process by which the assisting device encrypts its own location information based on a public key to generate assisting location information that includes at least the encrypted location information may include: the assisting device first obtaining a public key from a cloud server based on the hash value of the public key; then, generating a temporary private key and a temporary public key, and using the temporary private key and the public key, generating a shared key based on a key exchange protocol, so that the tracking device can use the shared key to decrypt the encrypted location information; finally, using the shared key, encrypting its own location information based on a symmetric encryption algorithm to generate encrypted location information.
[0104] In this embodiment, the purpose of introducing a temporary key is to add an extra layer of security, ensuring that even if the public key obtained from the cloud server is intercepted by an attacker, the final location information cannot be decrypted without the corresponding temporary key. The key exchange protocol allows two communicating devices to securely negotiate a shared key without directly transmitting the key. In this process, each party holds a public-private key pair and calculates the same shared key using the other party's public key and their own private key. This method enables secure key exchange between the tracking device and the assisting device, allowing them to calculate the same shared key without directly transmitting it through an insecure channel. The generated shared key is unique; even if the encrypted location information is intercepted, the original data cannot be decrypted without the shared key, ensuring data security.
[0105] Meanwhile, because the encryption process in this embodiment involves a time-based random key, it also effectively prevents replay attacks. A replay attack refers to an attacker intercepting and copying previously transmitted data, repeatedly sending this data in an attempt to access the system again or perform unauthorized operations. In this embodiment, the temporary key and random key used in each encryption process may be different, thus ensuring that these keys are only applicable to encrypted information within a certain time range. Even if an attacker intercepts encrypted information and keys from a previous session, they cannot use these keys in subsequent sessions because they cannot obtain the real-time private key and temporary key. This achieves protection against long-term replay attacks, ensuring the security and reliability of the system.
[0106] Specific key exchange protocols can include ECDSA (Elliptic Curve Digital Signature Algorithm) and ECDH (Elliptic Curve Diffie-Hellman Key Exchange), which utilize elliptic curve cryptography to achieve efficient and secure key exchange. Symmetric encryption algorithms can include AES (Advanced Encryption Standard) and DES (Data Encryption Standard), which allow assisting and tracking devices to use the same shared key to encrypt and decrypt data, ensuring data confidentiality.
[0107] In some embodiments, the location assistance information may also include a hash value of the public key and a temporary public key. The hash value of the public key can be used by the tracking device to verify the integrity and authenticity of the public key, ensuring that the public key stored on the cloud server has not been forged or tampered with during transmission. The verification process is similar to the aforementioned verification process for the legitimacy of the assisting device. The temporary public key can be used in conjunction with the tracking device's private key to calculate a shared key identical to that of the assisting device through a key exchange protocol. This allows the tracking device to use the shared key to decrypt the encrypted location information, ensuring the security of encrypted communication.
[0108] Based on this, the tracking device obtains assisted location information from the cloud server and decrypts the encrypted location information using a private key to obtain the target device's location information. The process may include: the tracking device generating a public key and a private key using a random string and the current timestamp, based on a key generation algorithm; then, obtaining assisted location information from the cloud server based on the target device's device identifier; next, generating a shared key using a temporary public key and a private key, based on a key exchange protocol; and finally, using the shared key, decrypting the encrypted location information using a symmetric encryption algorithm to obtain the assisted device's location information, and using the assisted device's location information as the target device's location information.
[0109] In this embodiment, since the tracking device uses a random string synchronized with the target device and the current timestamp, it can employ the same key generation algorithm to generate the same public and private keys as the target device. Similarly, since the tracking device uses the same shared key as the assisting device, it can use the shared key to decrypt the encrypted location information based on the same symmetric algorithm.
[0110] Figure 4 This is a flowchart illustrating another positioning method according to an exemplary embodiment of the present disclosure, which can be applied to... Figure 2 The assistive device shown.
[0111] like Figure 4 As shown, the method includes:
[0112] S401. Receive a broadcast message sent by the target device, the broadcast message carrying the hash value of the public key;
[0113] S402. Obtain the public key from the cloud server based on the hash value of the public key;
[0114] S403. Encrypt its own location information using the public key to generate assisted positioning information that includes at least the encrypted location information, and upload it to the cloud server so that the tracking device can obtain the assisted positioning information from the cloud server and decrypt the encrypted location information using the private key to obtain the location information of the target device.
[0115] For specific details of the embodiments disclosed herein, please refer to the foregoing positioning method applied to the target device, which will not be repeated here.
[0116] Figure 5 This is a flowchart illustrating another positioning method according to an exemplary embodiment of the present disclosure, which can be applied to... Figure 2 The cloud server shown.
[0117] like Figure 5 As shown, the method includes:
[0118] S501. Receive the public key and hash value of the public key uploaded by the target device, so that the assisting device can obtain the public key from the cloud server based on the hash value of the public key.
[0119] S502. Receive the assisted positioning information uploaded by the assisting device. The assisted positioning information includes at least encrypted location information, which is generated by the assisting device encrypting its own location information using a public key.
[0120] S503. Send the location assistance information to the tracking device so that the tracking device can use its private key to decrypt the encrypted location information and obtain the location information of the target device.
[0121] For specific details of the embodiments disclosed herein, please refer to the foregoing positioning method applied to the target device, which will not be repeated here.
[0122] Figure 6 This is a flowchart illustrating another positioning method according to an exemplary embodiment of the present disclosure, which can be applied to... Figure 2 The tracking device shown.
[0123] like Figure 6 As shown, the method includes:
[0124] S601. Obtain assisted location information from the cloud server. The assisted location information includes at least encrypted location information, which is generated by the assisting device encrypting its own location information using a public key.
[0125] S602. Use the private key to decrypt the encrypted location information to obtain the location information of the target device.
[0126] For specific details of the embodiments disclosed herein, please refer to the foregoing positioning method applied to the target device, which will not be repeated here.
[0127] In summary, to provide a clearer understanding of this disclosure, the overall process of the positioning method provided by this disclosure will be illustrated below with a specific application example.
[0128] like Figure 7As shown, the overall flow of the positioning method provided in this disclosure is as follows:
[0129] S700: The target device will synchronize the random string rootKey to the tracking device.
[0130] S701. The target device uses the concatenation of rootKey and current timestamp tsCnt (tsCnt||rootKey||tsCnt) to generate a private key ePriKey based on the key generation algorithm SHA256.
[0131] S702. The target device generates a public key ePubKey that matches ePriKey based on ePriKey;
[0132] S703. The target device uploads its device identifier aDid, ePubKey, and the hash value ePubKeyHash to the cloud server.
[0133] S704. The target device sends a broadcast message carrying the ePubKeyHash to the assisting device.
[0134] S705, assists the device in receiving broadcast messages sent by the target device and parses out the ePubKeyHash carried in the broadcast message;
[0135] S706, assists the device in obtaining the ePubKey from the cloud server based on the ePubKeyHash;
[0136] S707, Assist the device in verifying the validity of the obtained ePubKey based on ePubKeyHash;
[0137] S708, assists the device in generating a temporary private key tPriKey and a temporary public key tPubKey;
[0138] S709, assists the device in generating a shared key sKey using tPriKey and ePubKey based on the key exchange protocol ECDH;
[0139] S710 assists the device in using sKey, based on the symmetric encryption algorithm AES, to encrypt its own location information and generate encrypted location information encLoc.
[0140] S711, the assisting device uploads the assisting location information, including encLoc, tPubKey, and ePubKeyHash, to the cloud server;
[0141] The S712 tracking device uses the rootKey and tsCnt to generate ePriKey, ePubKey and ePubKeyHash based on the key generation algorithm SHA256.
[0142] S713, The tracking device uses aDid to obtain location assistance information from the cloud server;
[0143] S714. The tracking device uses tPubKey and ePriKey to generate sKey based on the key exchange protocol ECDH;
[0144] S715 The tracking device uses sKey, based on the symmetric encryption algorithm AES, to decrypt encLoc, obtain the location information of the assisting device, and uses the location information of the assisting device as the location information of the target device.
[0145] The various technical features in the above embodiments can be combined arbitrarily, as long as there is no conflict or contradiction between the combinations of features. However, due to space limitations, they are not described one by one. Therefore, the arbitrary combination of various technical features in the above embodiments is also within the scope of this specification.
[0146] Corresponding to the embodiments of the aforementioned positioning method, this disclosure also provides a positioning device that can be applied to... Figure 2 The target device to be located, the assisting device, the cloud server, or the tracking device are all included. This allows the tracking device to use the location information of the assisting device to locate the target device, breaking the dependence of positioning technology on device networking. At the same time, the assisting device encrypts the location information to protect user privacy and enhance the security and reliability of device positioning.
[0147] Figure 8 This is a structural block diagram of a positioning device according to an exemplary embodiment of the present disclosure, which can be applied to... Figure 2 The target device shown.
[0148] like Figure 8 As shown, the device 800 includes:
[0149] The key generation module 801 is used to generate a public key, a private key, and a hash value of the public key;
[0150] The cloud server upload module 802 is used to upload the public key and its hash value to the cloud server so that the assisting device can obtain the public key from the cloud server based on the hash value of the public key.
[0151] The broadcast module 803 is used to send a broadcast message to the assisting device. The broadcast message carries the hash value of the public key so that the assisting device can encrypt its own location information according to the public key, generate assisting location information including at least the encrypted location information, and upload it to the cloud server. The tracking device obtains the assisting location information from the cloud server and decrypts the encrypted location information using the private key to obtain the location information of the target device.
[0152] Figure 9 This is a structural block diagram of another positioning device according to an exemplary embodiment of the present disclosure, which can be applied to... Figure 2 The assistive device shown.
[0153] like Figure 9 As shown, the device 900 includes:
[0154] The broadcast receiving module 901 is used to receive broadcast messages sent by the target device. The broadcast message carries the hash value of the public key.
[0155] The public key acquisition module 902 is used to obtain the public key from the cloud server based on the hash value of the public key;
[0156] The assisted positioning information generation module 903 is used to encrypt its own location information according to the public key, generate assisted positioning information including at least the encrypted location information, and upload it to the cloud server so that the tracking device can obtain the assisted positioning information from the cloud server and decrypt the encrypted location information using the private key to obtain the location information of the target device.
[0157] Figure 10 This is a structural block diagram of another positioning device according to an exemplary embodiment of the present disclosure, which can be applied to... Figure 2 The cloud server shown.
[0158] like Figure 10 As shown, the device 1000 includes:
[0159] The target device information receiving module 1001 is used to receive the public key uploaded by the target device and the hash value of the public key, so that the assisting device can obtain the public key from the cloud server based on the hash value of the public key.
[0160] The assisted positioning information receiving module 1002 is used to receive assisted positioning information uploaded by the assisting device. The assisted positioning information includes at least encrypted location information, which is generated by the assisting device encrypting its own location information according to the public key.
[0161] The location assistance information sending module 1003 is used to send location assistance information to the tracking device so that the tracking device can use its private key to decrypt the encrypted location information and obtain the location information of the target device.
[0162] Figure 11 This is a structural block diagram of another positioning device according to an exemplary embodiment of the present disclosure, which can be applied to... Figure 2 The tracking device shown.
[0163] like Figure 11 As shown, the device 1100 includes:
[0164] The assisted location information acquisition module 1101 is used to acquire assisted location information from a cloud server. The assisted location information includes at least encrypted location information, which is generated by the assisting device encrypting its own location information using a public key.
[0165] The positioning module 1102 is used to decrypt the encrypted location information using a private key to obtain the location information of the target device.
[0166] The specific implementation process of the functions and roles of each unit in the above device can be found in the implementation process of the corresponding steps in the above method, and will not be repeated here.
[0167] For the apparatus embodiments, since they basically correspond to the method embodiments, the relevant parts can be referred to in the description of the method embodiments. The apparatus embodiments described above are merely illustrative, and the units described as separate components may or may not be physically separate, and the components shown as units may or may not be physical units.
[0168] Corresponding to the embodiments of the aforementioned positioning method, this disclosure also provides a target device. The target device includes:
[0169] processor;
[0170] Memory is used to store computer programs that can be executed by a processor;
[0171] Among them, the processor implements when executing the program. Figure 3 The steps of the positioning method described in any embodiment.
[0172] Corresponding to the embodiments of the aforementioned positioning method, this disclosure also provides an assisting device. The assisting device includes:
[0173] processor;
[0174] Memory is used to store computer programs that can be executed by a processor;
[0175] Among them, the processor implements when executing the program. Figure 4 The steps of the positioning method described in any embodiment.
[0176] Corresponding to the embodiments of the aforementioned positioning method, this disclosure also provides a cloud server. The cloud server includes:
[0177] processor;
[0178] Memory is used to store computer programs that can be executed by a processor;
[0179] Among them, the processor implements when executing the program. Figure 5 The steps of the positioning method described in any embodiment.
[0180] Corresponding to the embodiments of the aforementioned positioning method, this disclosure also provides a tracking device. The tracking device includes:
[0181] processor;
[0182] Memory is used to store computer programs that can be executed by a processor;
[0183] Among them, the processor implements when executing the program. Figure 6 The steps of the positioning method described in any embodiment.
[0184] Figure 12 This is a structural block diagram of an electronic device according to an exemplary embodiment of the present disclosure. The electronic device may be a target device, an assisting device, a cloud server, or a tracking device as described in the above embodiments. Figure 12 As shown, the electronic device 1200 may include one or more of the following components: a processing component 1201, a memory 1202, a power supply component 1203, a multimedia component 1204, an audio component 1205, an input / output (I / O) interface 1206, a sensor component 1207, and a communication component 1208.
[0185] Processing component 1201 typically controls the overall operation of electronic device 1200, such as operations associated with display, telephone calls, data communication, camera operation, and recording operations. Processing component 1201 may include one or more processors 1209 to execute instructions to perform all or part of the steps of the methods described above. Furthermore, processing component 1201 may include one or more modules to facilitate interaction between processing component 1201 and other components. For example, processing component 1201 may include a multimedia module to facilitate interaction between multimedia component 1204 and processing component 1201.
[0186] Memory 1202 is configured to store various types of data to support the operation of electronic device 1200. Examples of such data include instructions for any application or method operating on electronic device 1200, contact data, phonebook data, messages, pictures, videos, etc. Memory 1202 can be implemented by any type of volatile or non-volatile storage device or a combination thereof, such as static random access memory (SRAM), electrically erasable programmable read-only memory (EEPROM), erasable programmable read-only memory (EPROM), programmable read-only memory (PROM), read-only memory (ROM), magnetic storage, flash memory, magnetic disk, or optical disk.
[0187] Power supply component 1203 provides power to various components of electronic device 1200. Power supply component 1203 may include a power management system, one or more power supplies, and other components associated with generating, managing, and distributing power to electronic device 1200.
[0188] Multimedia component 1204 includes a screen that provides an output interface between the electronic device 1200 and the user. The screen may include a touch panel (TP), implemented as a touchscreen, to receive input signals from the user. The touch panel includes one or more touch sensors to sense touches, swipes, and gestures on the touch panel. The touch sensors can sense not only the boundaries of the touch or swipe action but also the duration and pressure associated with the touch or swipe operation. In some embodiments, multimedia component 1204 includes a front-facing camera and / or a rear-facing camera. When the electronic device 1200 is in an operating mode, such as a shooting mode or a video mode, the front-facing camera and / or rear-facing camera can receive external multimedia data. Each front-facing camera and rear-facing camera can be a fixed optical lens system or have focal length and optical zoom capabilities.
[0189] Audio component 1205 is configured to output and / or input audio signals. For example, audio component 1205 includes a microphone (MIC) configured to receive external audio signals when electronic device 1200 is in an operating mode, such as call mode, recording mode, and voice recognition mode. The received audio signals may be further stored in memory 1202 or transmitted via communication component 1208. In some embodiments, audio component 1205 also includes a speaker for outputting audio signals.
[0190] I / O interface 1206 provides an interface between processing component 1201 and peripheral interface modules, such as keyboards, click wheels, buttons, etc. These buttons may include, but are not limited to, home buttons, volume buttons, power buttons, and lock buttons.
[0191] Sensor assembly 1207 includes one or more sensors for providing status assessments of various aspects of electronic device 1200. For example, sensor assembly 1207 can detect the on / off state of electronic device 1200, the relative positioning of components such as the display and keypad of electronic device 1200, changes in position of electronic device 1200 or a component of electronic device 1200, the presence or absence of user contact with electronic device 1200, the orientation or acceleration / deceleration of electronic device 1200, and temperature changes of electronic device 1200. Sensor assembly 1207 may include a proximity sensor configured to detect the presence of nearby objects without any physical contact. Sensor assembly 1207 may also include a light sensor, such as a CMOS or CCD image sensor, for use in imaging applications. In some embodiments, sensor assembly 1207 may also include an accelerometer, gyroscope, magnetometer, pressure sensor, temperature sensor, photoelectric sensor, or GPS sensor.
[0192] Communication component 1208 is configured to facilitate wired or wireless communication between electronic device 1200 and other devices. Electronic device 1200 can access wireless networks based on communication standards, such as WiFi, 2G, 3G, 4G LTE, 5G NR (5G New Radio), or combinations thereof. In one exemplary embodiment, communication component 1208 receives broadcast signals or broadcast-related information from an external broadcast management system via a broadcast channel. In one exemplary embodiment, communication component 1208 also includes a near-field communication (NFC) module to facilitate short-range communication. For example, the NFC module may be implemented based on radio frequency identification (RFID) technology, Infrared Data Association (IrDA) technology, ultra-wideband (UWB) technology, Bluetooth (BT) technology, and other technologies.
[0193] In an exemplary embodiment, the electronic device 1200 may be implemented by one or more application-specific integrated circuits (ASICs), digital signal processors (DSPs), digital signal processing devices (DSPDs), programmable logic devices (PLDs), field-programmable gate arrays (FPGAs), controllers, microcontrollers, microprocessors, or other electronic components to perform the methods described above.
[0194] The specific implementation process of the functions and roles of each component in the above-mentioned equipment can be found in the implementation process of the corresponding steps in the above-mentioned method, and will not be repeated here.
[0195] For the device embodiments, since they basically correspond to the method embodiments, the relevant parts can be referred to in the description of the method embodiments. The device embodiments described above are merely illustrative. The components described as separate parts may or may not be physically separate, and the components shown as units may or may not be physical units, that is, they may be located in one place or distributed across multiple network units. Some or all of the modules can be selected to achieve the purpose of this disclosure according to actual needs. Those skilled in the art can understand and implement this without creative effort.
[0196] The specific implementation process of the functions and roles of each component in the above-mentioned equipment can be found in the implementation process of the corresponding steps in the above-mentioned method, and will not be repeated here.
[0197] For the device embodiments, since they basically correspond to the method embodiments, the relevant parts can be referred to in the description of the method embodiments. The device embodiments described above are merely illustrative. The components described as separate parts may or may not be physically separate, and the components shown as units may or may not be physical units, that is, they may be located in one place or distributed across multiple network units. Some or all of the modules can be selected to achieve the purpose of this disclosure according to actual needs. Those skilled in the art can understand and implement this without creative effort.
[0198] Corresponding to the embodiments of the aforementioned positioning method, this disclosure also provides a computer-readable storage medium having a computer program stored thereon, which, when executed by the processor 1209 of the aforementioned electronic device, implements the steps of the positioning method described in any of the above embodiments.
[0199] Corresponding to the embodiments of the aforementioned positioning method, this disclosure also provides a computer program product, including a computer program that, when executed by the processor 1209 of the aforementioned electronic device, implements the steps of the positioning method described in any of the above embodiments.
[0200] This disclosure can take the form of a computer program product implemented on one or more storage media (including, but not limited to, disk storage, CD-ROM, optical storage, etc.) containing program code. Computer-usable storage media include permanent and non-permanent, removable and non-removable media, and information storage can be implemented by any method or technology. Information can be computer-readable instructions, data structures, program modules, or other data. Examples of computer storage media include, but are not limited to: phase-change memory (PRAM), static random access memory (SRAM), dynamic random access memory (DRAM), other types of random access memory (RAM), read-only memory (ROM), electrically erasable programmable read-only memory (EEPROM), flash memory or other memory technologies, CD-ROM, digital versatile optical disc (DVD) or other optical storage, magnetic tape, magnetic magnetic disk storage or other magnetic storage devices, or any other non-transfer medium that can be used to store information accessible by a computing device.
[0201] Other embodiments of this disclosure will readily occur to those skilled in the art upon consideration of the specification and practice of the invention disclosed herein. This disclosure is intended to cover any variations, uses, or adaptations of this disclosure that follow the general principles of this disclosure and include common knowledge or customary techniques in the art not disclosed herein. The specification and examples are to be considered exemplary only, and the true scope and spirit of this disclosure are indicated by the following claims.
[0202] It should be understood that this disclosure is not limited to the precise structures described above and shown in the accompanying drawings, and various modifications and changes can be made without departing from its scope. The scope of this disclosure is limited only by the appended claims.
[0203] The above description is merely a preferred embodiment of this disclosure and is not intended to limit this disclosure. Any modifications, equivalent substitutions, improvements, etc., made within the spirit and principles of this disclosure should be included within the scope of protection of this disclosure.
Claims
1. A positioning method, characterized in that, The method, applied to a target device to be located, includes: Generate a public key, a private key, and a hash value of the public key; The public key and its hash value are uploaded to a cloud server so that the assisting device can obtain the public key from the cloud server based on the hash value of the public key. A broadcast message is sent to the assisting device, the broadcast message carrying the hash value of the public key, so that the assisting device encrypts its own location information according to the public key, generates assisting location information including at least the encrypted location information, uploads it to the cloud server, and the tracking device obtains the assisting location information from the cloud server and decrypts the encrypted location information using the private key to obtain the location information of the target device. The target device can be connected to the same cloud server as the tracking device and the assisting device. The tracking device is used to locate the target device, and the assisting device establishes short-range communication with the target device.
2. The method according to claim 1, characterized in that, The method further includes: Before sending a broadcast message to the assisting device, the device identifier of the target device is uploaded to the cloud server so that the tracking device can obtain the assisting location information from the cloud server based on the device identifier of the target device.
3. The method according to claim 1, characterized in that, The public key and the private key are respectively the public key and private key generated by the target device based on a random string and the current timestamp; The method further includes: Before sending a broadcast message to the assisting device, the random string is synchronized to the tracking device so that the tracking device can generate the public key and the private key based on the random string and the current timestamp.
4. The method according to claim 3, characterized in that, The process of generating the public key includes: Using the random string and the current timestamp, the private key is generated based on a key generation algorithm; Based on the private key, a public key matching the private key is generated.
5. The method according to claim 1, characterized in that, The method further includes: Before generating the public key, private key, and hash value of the public key, it is checked whether the target device is offline. If so, the public key, private key, and hash value of the public key are generated.
6. A positioning method, characterized in that, Applied to assistive devices, the method includes: Receive a broadcast message sent by the target device, the broadcast message carrying a hash value of the public key; The public key is obtained from the cloud server based on the hash value of the public key; The tracking device encrypts its own location information using the public key to generate assisted location information, which includes at least the encrypted location information. This information is then uploaded to the cloud server so that the tracking device can obtain the assisted location information from the cloud server and decrypt the encrypted location information using the private key to obtain the location information of the target device. The assisting device establishes short-range communication with the target device, the tracking device is used to locate the target device, and the target device can connect to the same cloud server as the tracking device and the assisting device.
7. The method according to claim 6, characterized in that, The method further includes: The public key obtained from the cloud server is validated based on the hash value of the public key.
8. The method according to claim 6, characterized in that, Based on the public key, the location information is encrypted to generate assisted positioning information that includes at least the encrypted location information, including: A temporary private key and a temporary public key are generated, and a shared key is generated using the temporary private key and the public key based on a key exchange protocol, so that the tracking device can use the shared key to decrypt the encrypted location information; Using the shared key, based on a symmetric encryption algorithm, the location information is encrypted to generate assisted positioning information that includes at least the encrypted location information.
9. A positioning method, characterized in that, Applied to a cloud server, the method includes: Receive the public key and the hash value of the public key uploaded by the target device, so that the assisting device can obtain the public key from the cloud server based on the hash value of the public key; The system receives assisted location information uploaded by the assisting device, the assisted location information including at least encrypted location information, the encrypted location information being generated by the assisting device encrypting its own location information according to the public key; The location assistance information is sent to the tracking device, so that the tracking device can decrypt the encrypted location information using a private key to obtain the location information of the target device; The cloud server can connect to the target device, the tracking device, and the assisting device. The tracking device is used to locate the target device, and the assisting device establishes short-range communication with the target device.
10. A positioning method, characterized in that, Applied to a tracking device, the method includes: The assisting device obtains assisted location information from a cloud server. The assisted location information includes at least encrypted location information, which is generated by the assisting device encrypting its own location information using a public key. The encrypted location information is decrypted using the private key to obtain the location information of the target device; The tracking device is used to locate the target device, the assisting device establishes short-range communication with the target device, and the tracking device can connect to the same cloud server as the target device and the assisting device.
11. The method according to claim 10, characterized in that, The method further includes: Receive the random string synchronized by the target device, and generate the public key and the private key based on the random string and the current timestamp.
12. The method according to claim 11, characterized in that, Obtaining location assistance information from the cloud server includes: Based on the device identifier of the target device, the assisted positioning information is obtained from the cloud server.
13. The method according to claim 12, characterized in that, The location assistance information also includes the hash value of the public key and a temporary public key; The encrypted location information is decrypted using a private key to obtain the location information of the target device, including: Using the temporary public key and the private key, a shared key is generated based on a key exchange protocol; Using the shared key and a symmetric encryption algorithm, the encrypted location information is decrypted to obtain the location information of the assisting device, and the location information of the assisting device is used as the location information of the target device.
14. A positioning device, characterized in that, The device is applied to a target device to be located, and includes: A key generation module is used to generate a public key, a private key, and a hash value of the public key; A cloud server upload module is used to upload the public key and its hash value to a cloud server so that the assisting device can obtain the public key from the cloud server based on the hash value of the public key. The broadcast module is used to send a broadcast message to the assisting device. The broadcast message carries the hash value of the public key, so that the assisting device encrypts its own location information according to the public key, generates assisting location information including at least the encrypted location information, and uploads it to the cloud server. The tracking device obtains the assisting location information from the cloud server and decrypts the encrypted location information using the private key to obtain the location information of the target device. The target device can be connected to the same cloud server as the tracking device and the assisting device. The tracking device is used to locate the target device, and the assisting device establishes short-range communication with the target device.
15. A positioning device, characterized in that, Applied to assistive devices, the device includes: A broadcast receiving module is used to receive broadcast messages sent by a target device, wherein the broadcast message carries a hash value of a public key; A public key acquisition module is used to obtain a public key from a cloud server based on the hash value of the public key; The assisted positioning information generation module is used to encrypt its own location information according to the public key, generate assisted positioning information including at least the encrypted location information, and upload it to the cloud server, so that the tracking device can obtain the assisted positioning information from the cloud server and decrypt the encrypted location information using the private key to obtain the location information of the target device. The assisting device establishes short-range communication with the target device, the tracking device is used to locate the target device, and the target device can connect to the same cloud server as the tracking device and the assisting device.
16. A positioning device, characterized in that, The device, used in a cloud server, includes: The target device information receiving module is used to receive the public key uploaded by the target device and the hash value of the public key, so that the assisting device can obtain the public key from the cloud server based on the hash value of the public key; The assisted positioning information receiving module is used to receive assisted positioning information uploaded by the assisting device. The assisted positioning information includes at least encrypted location information, which is generated by the assisting device encrypting its own location information according to the public key. The location assistance information sending module is used to send the location assistance information to the tracking device, so that the tracking device can use a private key to decrypt the encrypted location information and obtain the location information of the target device; The cloud server can connect to the target device, the tracking device, and the assisting device. The tracking device is used to locate the target device, and the assisting device establishes short-range communication with the target device.
17. A positioning device, characterized in that, Applied to a tracking device, the device includes: The assisted location information acquisition module is used to acquire assisted location information from a cloud server. The assisted location information includes at least encrypted location information, which is generated by the assisting device encrypting its own location information using a public key. The positioning module is used to decrypt the encrypted location information using a private key to obtain the location information of the target device; The tracking device is used to locate the target device, the assisting device establishes short-range communication with the target device, and the tracking device can connect to the same cloud server as the target device and the assisting device.
18. A target device, characterized in that, include: processor; A memory for storing computer programs that can be executed by the processor; Wherein, when the processor executes the program, it implements the steps of the method according to any one of claims 1-5.
19. An assistive device, characterized in that, include: processor; A memory for storing computer programs that can be executed by the processor; When the processor executes the program, it implements the steps of the method according to any one of claims 6-8.
20. A cloud server, characterized in that, include: processor; A memory for storing computer programs that can be executed by the processor; Wherein, when the processor executes the program, it implements the steps of the method of claim 9.
21. A tracking device, characterized in that, include: processor; A memory for storing computer programs that can be executed by the processor; When the processor executes the program, it implements the steps of the method according to any one of claims 10-13.
22. A computer-readable storage medium having a computer program stored thereon, characterized in that, When the program is executed by a processor, it implements the steps of the method according to any one of claims 1-13.
23. A computer program product, comprising a computer program, characterized in that, When the program is executed by a processor, it implements the steps of the method according to any one of claims 1-13.