Device connection methods, apparatus, equipment and storage media
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2024-01-11
- Publication Date
- 2026-08-14
AI Technical Summary
In the prior art, after the agent device is lost or damaged, the method of limiting its connection to the Internet of Things device lacks timeliness and flexibility, resulting in insufficient security.
IoT devices judge connection requests through the stored first cluster information, support timely rejection of illegal connections, and set the first cluster information in combination with the administrator rights of the first proxy device to achieve flexible control.
It improves the security of the Internet of Things system, reduces proxy risks, enhances the flexibility and user experience of the system, and avoids the shortcomings of relying on cloud platforms.
Smart Images

Figure CN122580835A_ABST
Abstract
Description
Device connection method, apparatus, device and storage medium Technical Field
[0001] The present application relates to the field of Internet of Things technology, and in particular to a method, apparatus, device and storage medium for device connection. Background Art
[0002] Proxy devices can provide proxy functionality within IoT systems, enabling access, control, and management of IoT devices. However, in practice, there are often situations where the proxy functionality of a proxy device needs to be restricted or disabled, such as when the proxy device is lost or damaged.
[0003] Currently, there is no good solution for how to timely limit or prohibit the proxy function of proxy devices to prevent them from illegally connecting to IoT devices.
[0004] Summary of the Invention
[0005] The embodiments of the present application provide a device connection method, apparatus, device, and storage medium. The technical solution is as follows:
[0006] According to one aspect of an embodiment of the present application, a device connection method is provided, the method being performed by an Internet of Things device, the method comprising:
[0007] Receive a connection request, where the connection request is used to request to establish a connection with the IoT device;
[0008] Determining whether to reject the connection request is based on first cluster information, where the first cluster information is stored in the IoT device.
[0009] According to another aspect of an embodiment of the present application, a device connection method is provided. The method is performed by a first agent device, and the first agent device has administrator privileges. The method includes:
[0010] A first request is sent, where the first request is used to set first cluster information, where the first cluster information is used by the IoT device to determine whether to reject the connection request, and where the first cluster information is stored in the IoT device.
[0011] According to another aspect of an embodiment of the present application, a device connection method is provided. The method is performed by a second proxy device, and the second proxy device does not have administrator privileges. The method includes:
[0012] Send registration information, where the registration information is used to register the proxy device in the second cluster information, where the second cluster information is stored in the IoT device, and the registered proxy device has control authority over the IoT device.
[0013] According to another aspect of an embodiment of the present application, a device connection method is provided, the method being performed by a third proxy device, the method comprising:
[0014] Sending a connection request, where the connection request is used to request to establish a connection with an IoT device; wherein the IoT device stores first cluster information, and the first cluster information is used by the IoT device to determine whether to reject the connection request.
[0015] According to one aspect of an embodiment of the present application, a device connection apparatus is provided, the apparatus comprising:
[0016] a receiving module, configured to receive a connection request, wherein the connection request is used to request to establish a connection with the device;
[0017] A processing module is configured to determine whether to reject the connection request based on first cluster information, where the first cluster information is stored in the device.
[0018] According to another aspect of an embodiment of the present application, a device connection apparatus is provided, the apparatus having administrator authority, the apparatus comprising:
[0019] The sending module is used to send a first request, where the first request is used to set first cluster information, where the first cluster information is used by the IoT device to determine whether to reject the connection request, and where the first cluster information is stored in the IoT device.
[0020] According to another aspect of an embodiment of the present application, a device connection apparatus is provided, the apparatus not having administrator privileges, and the apparatus includes:
[0021] The sending module is used to send registration information, where the registration information is used to register the proxy device in the second cluster information stored in the Internet of Things device. The registered proxy device has control authority over the Internet of Things device.
[0022] According to another aspect of an embodiment of the present application, a device connection apparatus is provided, the apparatus comprising:
[0023] A sending module is used to send a connection request, where the connection request is used to request to establish a connection with an Internet of Things device; wherein the Internet of Things device stores first cluster information, and the first cluster information is used by the Internet of Things device to determine whether to reject the connection request.
[0024] According to one aspect of an embodiment of the present application, a communication device is provided, comprising a processor and a memory, wherein a computer program is stored in the memory, and the processor executes the computer program to implement the device connection method described above.
[0025] According to one aspect of an embodiment of the present application, a computer-readable storage medium is provided, wherein the computer-readable storage medium stores executable instructions, and the executable instructions are loaded and executed by the processor to implement the device connection method described above.
[0026] According to one aspect of an embodiment of the present application, a computer program product is provided, which includes computer instructions, wherein the computer instructions are stored in a computer-readable storage medium, and a processor of a computer device reads the computer instructions from the computer-readable storage medium, and the processor executes the computer instructions, so that the computer device executes to implement the device connection method as described above.
[0027] According to one aspect of an embodiment of the present application, a chip is provided, which includes a programmable logic circuit and / or program instructions, and is used to implement the device connection method described above when the chip is running.
[0028] According to one aspect of an embodiment of the present application, a computer program is provided, which includes computer instructions. A processor of a computer device executes the computer instructions, so that the computer device executes the device connection method described above.
[0029] The technical solutions provided by the embodiments of the present application may have the following beneficial effects:
[0030] The IoT device determines whether to reject the connection request based on the stored first cluster information. This allows the IoT device to promptly determine whether to establish a connection after receiving a connection request, thereby improving security within the IoT system and reducing proxy risks. Furthermore, compared to methods that require restricting proxy functions through the cloud platform, the method provided by the embodiments of the present application is more flexible. BRIEF DESCRIPTION OF THE DRAWINGS
[0031] In order to more clearly illustrate the technical solutions in the embodiments of the present application, the following briefly introduces the drawings required for use in the description of the embodiments. Obviously, the drawings described below are only some embodiments of the present application. For ordinary technicians in this field, other drawings can be obtained based on these drawings without any creative work.
[0032] FIG1 is a schematic diagram of the architecture of an Internet of Things system provided by one embodiment of the present application;
[0033] FIG2 is a schematic diagram of an agent architecture provided by an embodiment of the present application;
[0034] FIG3 is a schematic diagram of an agent architecture provided by an embodiment of the present application;
[0035] FIG4 is a schematic diagram of a flow chart of a device connection method provided by an embodiment of the present application;
[0036] FIG5 is a flow chart of a device connection method provided by one embodiment of the present application;
[0037] FIG6 is a flow chart of a device connection method provided by one embodiment of the present application;
[0038] FIG7 is a flow chart of a device connection method provided by one embodiment of the present application;
[0039] FIG8 is a schematic diagram of a flow chart of a device connection method provided by one embodiment of the present application;
[0040] FIG9 is a schematic diagram of a flow chart of a device connection method provided by an embodiment of the present application;
[0041] FIG10 is a schematic diagram of a flow chart of a device connection method provided by one embodiment of the present application;
[0042] FIG11 is a flow chart of a device connection method according to an embodiment of the present application;
[0043] FIG12 is a structural block diagram of a device connection apparatus provided by one embodiment of the present application;
[0044] FIG13 is a structural block diagram of a device connection apparatus provided by one embodiment of the present application;
[0045] FIG14 is a structural block diagram of a device connection apparatus provided by one embodiment of the present application;
[0046] FIG15 is a structural block diagram of a device connection apparatus provided by one embodiment of the present application;
[0047] FIG16 is a schematic structural diagram of a communication device provided in one embodiment of the present application. DETAILED DESCRIPTION
[0048] To make the objectives, technical solutions, and advantages of the present application more clear, the embodiments of the present application will be further described in detail below with reference to the accompanying drawings. Exemplary embodiments will be described in detail herein, with examples shown in the accompanying drawings. When the following description refers to the drawings, unless otherwise indicated, the same numbers in different drawings represent the same or similar elements. The embodiments described in the following exemplary embodiments do not represent all embodiments consistent with the present application. Instead, they are merely examples of devices and methods consistent with certain aspects of the present application, as detailed in the appended claims.
[0049] The terms used in this application are for the purpose of describing specific embodiments only and are not intended to limit this application. As used in this application and the appended claims, the singular forms "a," "an," "the," and "the" are 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 encompasses any and all possible combinations of one or more of the associated listed items.
[0050] The network architecture and business scenarios described in the embodiments of the present application are intended to more clearly illustrate the technical solutions of the embodiments of the present application, and do not constitute a limitation on the technical solutions provided by the embodiments of the present application. A person skilled in the art will appreciate that, with the evolution of the network architecture and the emergence of new business scenarios, the technical solutions provided by the embodiments of the present application are equally applicable to similar technical problems.
[0051] It should be understood that although the terms first, second, third, etc. may be used to describe various information in this application, these information should not be limited to these terms. These terms are only used to distinguish information of the same type from each other. For example, without departing from the scope of this application, the first information may also be referred to as the second information, and similarly, the second information may also be referred to as the first information. Depending on the context, the word "if" as used herein can be interpreted as "at the time of" or "when" or "in response to determination". In this specification, when expressing the meaning expressed by a Boolean value, it will be expressed as "True" representing the "first meaning" and "False" representing the "second meaning". Without loss of generality, those skilled in the art will understand that its representative meaning can be swapped, that is, "False" represents the "first meaning" and "True" represents the "second meaning".
[0052] Please refer to Figure 1, which shows a schematic diagram of the architecture of an Internet of Things system provided by one embodiment of the present application. The network architecture of the Internet of Things may include at least one of the following nodes: an Internet of Things device 110 (shown in Figure 1 as Internet of Things device 110a and Internet of Things device 110b), an agent device 120 (including a first agent device 120a and / or a second agent device 120b). Optionally, the network architecture may also include a bridge device 130. Optionally, the network architecture may also include a cloud server 140.
[0053] IoT devices 110 include devices that provide client and / or server functions within an IoT system. The server and client functions may be defined in IoT protocols. IoT devices include, but are not limited to, smart home devices, industrial production equipment, commercial service equipment, smart monitoring equipment, and connected vehicle devices. Smart home devices include, for example, at least one of the following: smart TVs, smart speakers, smartphones, laptops, desktop computers, tablets, game consoles, learning machines, e-book readers, smart watches, virtual reality (VR) devices, augmented reality (AR) devices, extended reality (XR) devices, set-top boxes, smart air conditioners, smart refrigerators, smart microwave ovens, smart rice cookers, robot vacuums, smart switches, and smart lamps. Industrial production equipment includes, for example, at least one of the following: lathes, industrial robots, solar panels, and wind turbines. Commercial service equipment includes, for example, vending machines. Smart monitoring equipment includes, for example, at least one of the following: surveillance cameras, infrared sensors, sound sensors, and temperature sensors. Internet of Vehicles equipment can also be called smart transportation equipment, including but not limited to: vehicles, on-board equipment, roadside equipment, etc.
[0054] Exemplarily, the IoT device 110a is a smart home device, and the IoT device 110b is a vehicle networking device.
[0055] In some embodiments, the IoT device 110 may also be referred to as a source node.
[0056] The proxy device 120 includes a device that provides a proxy function in the IoT system. For example, the proxy device 120 can be used for operations such as access, control, and management of the IoT device 110.
[0057] In some embodiments, the proxy device 120 includes a user-side terminal device, including but not limited to: a mobile phone, a tablet computer, a smart watch, a personal computer, a desktop computer, a portable computer, a personal workstation, a controller, a handle, a wearable device, etc.
[0058] In some embodiments, the proxy device 120 includes a client entity permitted by the terminal device, which can be a virtual entity or a physical entity. For example, the proxy device 120 can be an application (APP) running on the terminal device for accessing, controlling, and managing the IoT device 110.
[0059] In some embodiments, there are multiple agent devices 120 in the IoT system, and the management permissions of the multiple agent devices 120 are the same or different. For example, the first agent device 120a has administrator permissions, and the second agent device 120b has only ordinary permissions.
[0060] Bridge device 130 is used to enable interaction between two devices supporting different IoT protocols. It provides information conversion and transmission services between IoT devices 110 supporting different IoT protocols, or between IoT devices 110 supporting different IoT protocols and proxy device 120.
[0061] The bridge device 130 may be a device dedicated to bridging, or the bridge device 130 may be an intelligent device with a bridging function, such as a gateway or a router.
[0062] The cloud server 140 is used to provide a connection service between the IoT device 110 and other devices outside the IoT ecosystem (such as the aforementioned proxy device 120). The cloud server 140 can be a cloud platform server of the IoT ecosystem.
[0063] Cloud server 140 is a server deployed on the network side. For example, cloud server 140 can be used to store information related to IoT device 110, such as current resource status, bound accounts, etc. For example, cloud server 140 can also provide a service interface for remote access to IoT device 110, allowing users to remotely manage or control IoT device 110.
[0064] In some embodiments, the proxy device 120 establishes a connection with the IoT device 110 through the cloud server 140 .
[0065] In some embodiments, the proxy device 120 directly establishes a connection with the IoT device 110. For example, the proxy device 120 establishes a connection with the IoT device 110 via wired communication. For example, the proxy device 120 establishes a connection with the IoT device 110 via wireless communication.
[0066] In some embodiments, the proxy device 120 establishes a connection with the IoT device 110 through the bridge device 130 .
[0067] In the embodiment of the present application, the IoT device 110, the proxy device 120, the bridge device 130, and the cloud server 140 may comply with the same or different IoT protocols. IoT protocols include, but are not limited to, the Open Connectivity Foundation (OCF) protocol, the Zigbee protocol, the Matter protocol of the Connectivity Standards Alliance (CSA), the Connected Home Over IP Working Group (CHIP) protocol, the Bluetooth protocol, the Wireless Fidelity (Wi-Fi) protocol, the Wireless Local Area Networks (WLAN) protocol, and the like.
[0068] Exemplarily, when the IoT device 110a and the IoT device 110b support the same IoT protocol, a secure connection may be established between the IoT device 110a and the IoT device 110b, for example, a secure connection may be established based on the Matter protocol.
[0069] For example, when the IoT device 110a and the IoT device 110b support different IoT protocols, for example, the IoT device 110a is a Zigbee device and the IoT device 110b is a Matter device, the IoT device 110a and the IoT device 110b can be connected via the bridge device 130.
[0070] Figures 2 and 3 illustrate schematic diagrams of proxy architectures provided by exemplary embodiments of the present application. Figure 2 illustrates a centralized proxy architecture, where different apps on a mobile phone connect to a vehicle providing client functionality through a unified IoT proxy. Figure 3 illustrates a distributed proxy architecture, where different apps on a mobile phone connect to a vehicle providing client functionality through separate IoT proxies, with multiple IoT proxies integrated into a single mobile phone.
[0071] In the embodiments of the present application, the proxy architecture can also be understood as proxy deployment, the centralized proxy architecture is the centralized proxy deployment, and the distributed proxy architecture is the distributed proxy deployment.
[0072] In real-world applications, there are situations where it's necessary to restrict connections between proxy devices and IoT devices. For example, if a proxy device is lost or damaged, security considerations dictate that connections be restricted or prohibited to prevent unsafe management and control of the IoT device by the proxy device. A common approach involves placing the lost proxy device on a ban list through the cloud platform, preventing it from controlling IoT devices through the cloud platform. Alternatively, users can request that their app account be placed on a ban list with the cloud platform's operations and maintenance personnel, which can also mitigate security risks. However, these methods lack timely and flexibility, and rely heavily on cloud platform maintenance.
[0073] Therefore, the embodiment of the present application provides a more reasonable connection method, which helps to timely and flexibly limit the connection between the proxy device and the IoT device, and effectively improve the security of the IoT system.
[0074] Please refer to Figure 4, which shows a flow chart of a device connection method provided by an embodiment of the present application. Taking the method executed by an IoT device as an example, the method includes at least some of the following steps:
[0075] Step 410: Receive a connection request, where the connection request is used to request to establish a connection with an IoT device.
[0076] In the embodiment of the present application, the IoT device may be the IoT device 110 as shown in FIG1 , which has client functions and / or server functions.
[0077] Step 430: Determine whether to reject the connection request based on the first cluster information, where the first cluster information is stored in the IoT device.
[0078] In some embodiments, the first cluster is used to manage the connection status of the proxy device, and the first cluster information is related information of the first cluster. Optionally, the first cluster information is stored in the IoT device in the form of a list, so the first cluster information can also be called a first cluster list.
[0079] In this application, a cluster may also be referred to as a cluster, which may define specifications of one or more attributes, commands, behaviors, and dependencies, and may also support independent utility or application functions.
[0080] In the embodiment of the present application, the number of proxy devices may be one or more, and the management permissions of different proxy devices may be the same or different.
[0081] In the embodiments of the present application, the proxy device can adopt a distributed proxy architecture or a centralized proxy architecture. If the proxy device adopts a distributed proxy architecture, there will be multiple agent identifiers (Agent IDs) in the IoT system; if the proxy device adopts a centralized proxy architecture, there will be one Agent ID in the IoT system.
[0082] In summary, the method provided in the embodiments of the present application enables the IoT device to determine whether to reject a connection request based on the stored first cluster information. This allows the IoT device to promptly determine whether to establish a connection after receiving a connection request, thereby improving security within the IoT system and reducing proxy risks. Furthermore, compared to methods that require restricting proxy functions through the cloud platform, the method provided in the embodiments of the present application offers greater flexibility.
[0083] In the embodiments of this application, an example of an IoT system including a first proxy device and / or a second proxy device is used for illustrative purposes. The first proxy device has higher permissions than the second proxy device, which can also be understood as the first proxy device having a higher priority than the second proxy device. For example, the first proxy device has administrator permissions, while the second proxy device has normal permissions. For example, the first proxy device can be referred to as an administrator proxy device, while the second proxy device can be referred to as a normal proxy device or a member proxy device.
[0084] It should be noted that the number of the first proxy devices may be zero or one or more, and the number of the second proxy devices may be zero or one or more.
[0085] In some embodiments, the first cluster information is read-only (R), supports read and write (RW), or supports write-only (Write Only).
[0086] In some embodiments, the first cluster information is agreed upon by an Internet of Things protocol. For example, the first cluster information is stored in an Internet of Things device in a preconfigured manner.
[0087] In some embodiments, the first cluster information is set by a proxy device, and reference may be made to the embodiment shown in FIG. 5 below.
[0088] In some embodiments, the first cluster information is set by a human-computer interaction operation received by the IoT device. That is, the user performs a human-computer interaction operation on the IoT device to implement the setting of the first cluster, as shown in the embodiment of FIG6 below.
[0089] Please refer to Figure 5, which shows a flow chart of a device connection method provided by an embodiment of the present application. Taking the method executed by an IoT device as an example, the method includes at least some of the following steps:
[0090] Step 510: Receive registration information, where the registration information is used to register the proxy device in the second cluster information, and the second cluster information is stored in the IoT device.
[0091] The registered proxy device has the control authority over the IoT device.
[0092] In some embodiments, the registration information carries at least one of the following information: a registered device identifier, a registered application identifier, an agent identifier list (AgentIDList), and a first identification code.
[0093] In some embodiments, considering that the proxy device can be a terminal device or an APP running in the terminal device, the registered device identifier and the registered application identifier can be collectively referred to as DeviceID.
[0094] In some embodiments, the agent identification list includes one or more AgentIDs. For example, when the agent device in the IoT system adopts a distributed agent architecture, the agent identification list includes one AgentID. For example, when the agent device in the IoT system adopts a centralized agent architecture, the agent identification list includes multiple AgentIDs.
[0095] In some embodiments, the first identification code is used to identify the user, and can also be understood as the first identification code being used to confirm the user's identity. Optionally, the first identification code can also be referred to as at least one of the following: a user identification code, an authentication identification code, or an access identification code. The first identification code can be in the form of a password or a PIN code (a personal identification number). The present embodiment of the application uses the first identification code in the form of a PIN code as an example for schematic illustration.
[0096] In some embodiments, the proxy device's first identification code cannot be recorded by the second proxy device and is used only for user identification in response to human-computer interaction operations. For example, the second proxy device can confirm the user's identity based on the first identification code entered by the user on the second proxy device. This design helps further improve the security of the IoT system and reduce the risk of first identification code leakage.
[0097] In some embodiments, the second cluster is used to manage the registration information of the proxy device. For example, the second cluster is used only or primarily to manage the first identification code of the proxy device. The second cluster information is information related to the second cluster. Optionally, the second cluster information is stored in the IoT device in the form of a list. Therefore, the second cluster information can also be referred to as a second cluster list.
[0098] In some embodiments, the second cluster includes a ConnectionBlockPIN Cluster.
[0099] Table 1 exemplifies the definition of the second cluster. The second cluster information includes at least one of the following: a PIN structure (PINStruct), an attribute (Attribute), and a command (Command). Attributes represent data on physical quantities or states, which are communicated to other nodes via commands. Commands represent operations.
[0100] Optionally, the PIN structure includes at least one of the following: DeviceID, AgentIDList, and PINCode. Optionally, the command includes at least one of the following: Add PIN (AddPIN), Update PIN (UpdatePIN), and Remove PIN (RemovePIN). The Add PIN command carries at least one of the following parameters: DeviceID, AgentIDList, and PINCode. The Update PIN command carries at least one of the following parameters: DeviceID, AgentID, Old PIN Code, and New PIN Code, where the Old PIN Code is the PIN Code before the update and the New PIN Code is the PIN Code after the update. The Remove PIN command carries at least one of the following parameters: DeviceID and AgentID.
[0101] Table 1 Definition of the second cluster
[0102] It should be understood that the contents of Table 1 can be used individually or in combination. For example, any row in the table can be used as a separate example; or, any two rows in the table (such as the first and second rows, the third and sixth rows, the fourth and seventh rows, the fifth and second rows, etc., not listed here) can be combined as a separate example; or, any three or more rows in the table (such as the first, second and third rows, the third, sixth and seventh rows, the first, second, fourth and seventh rows, the first, second, seventh, fifth and sixth rows, etc., not listed here) can be combined as a separate example.
[0103] In some embodiments, the IoT device registers the registration information in the second cluster information, which can also be understood as storing the registration information in the second cluster information.
[0104] In some embodiments, only the first proxy device has the permission to view the second cluster information, while neither the second proxy device nor the IoT device has the permission to view it. In other words, the second cluster information can only be read by the first proxy device.
[0105] In some embodiments, for the first proxy device, the second cluster information supports reading and writing (RW) and also supports modification.
[0106] In some embodiments, for the second proxy device and the IoT device, the second cluster information supports write-only and modification.
[0107] Step 520: Receive a first request, where the first request is used to request setting of first cluster information.
[0108] In some embodiments, the first request carries at least one of the following information: a first identifier, a second identifier, a first identification code, and a connection status. The first identifier includes a device identifier and / or an application identifier, and the second identifier includes an agent identifier. Exemplarily, the first identifier is a DeviceID, and the second identifier is an AgentID.
[0109] The first identification code is the first identification code of the proxy device corresponding to the first identifier and / or the second identifier. The first identification code may be registered in step 510 .
[0110] The connection status is used to indicate the connection status between the proxy device corresponding to the first identifier and / or the second identifier and the IoT device. The connection status is explicitly indicated. For example, when the first request indicates that the connection status is the first value, it indicates that the proxy device corresponding to the first identifier and / or the second identifier is prohibited from connecting to the IoT device, that is, the connection status is "connection prohibited status". For example, when the first request indicates that the connection status is the second value, it indicates that the proxy device corresponding to the first identifier and / or the second identifier is allowed to connect to the IoT device, that is, the connection status is "connection allowed status" or "closed prohibited connection status". The first value is different from the second value. Exemplarily, the first value is "1" or "true" or "True", and the second value is "0" or "false" or "False"; or, the second value is "1" or "true" or "True", and the first value is "0" or "false" or "False".
[0111] In some embodiments, the first request may also be referred to as at least one of the following: a temporary disable request, a prohibit connection request, a temporary restriction request, a restrict connection request, and the like.
[0112] In some embodiments, the first request comes from the first proxy device. In this case, whether the first request carries the first identification code is optional. That is, if the first proxy device sends the first request to the IoT device, the first identification code may not be carried in the first request.
[0113] In some embodiments, the first request comes from the second proxy device. In this case, the first request must carry the first identification code. That is, if the second proxy device sends the first request to the IoT device, the first identification code must be included in the first request.
[0114] In some embodiments, only the first proxy device is allowed to send the first request, and the second proxy device is not allowed to send the first request, that is, the second proxy device is prohibited from setting the first cluster information, which helps to improve system security and reduce the risk of erroneous or malicious setting of the first cluster information.
[0115] In some embodiments, the first cluster is used to manage the connection status of the proxy device, and the first cluster information is related information of the first cluster. Optionally, the first cluster information is stored in the IoT device in the form of a list, so the first cluster information can also be called a first cluster list.
[0116] In some embodiments, the first cluster includes a connection status cluster (ConnectionStatus Cluster).
[0117] Table 2 exemplifies the definition of the first cluster. The first cluster information includes at least one of the following: a prohibited structure (BlockStruct), an attribute (Attribute), a command (Command), and an event (Event). Optionally, the prohibited structure includes at least one of the following: DeviceID, AgentID, and Block, where the Block parameter indicates the connection status. Optionally, the command includes at least one of the following: Set (Set) and ConnectionStatus (ConnectionStatus). Optionally, the event is defined as invalid access or illegal access (InvalidAccess), and needs to carry the AgentID of the illegal access.
[0118] Table 2 Definition of the first cluster
[0119] It should be understood that the contents of Table 2 can be used individually or in combination. For example, any row in the table can be used as a separate example; or, any two rows in the table (such as the first and second rows, the third and sixth rows, the fourth and seventh rows, the fifth and second rows, etc., not listed here) can be combined as a separate example; or, any three or more rows in the table (such as the first, second and third rows, the third, sixth and seventh rows, the first, second, fourth and seventh rows, the first, second, seventh, fifth and sixth rows, etc., not listed here) can be combined as a separate example.
[0120] It should be understood that the contents of different tables can be used separately or in combination. For example, any one or more rows in Table 1 can be used as a separate example; or any one or more rows in Table 2 can be combined with any one or more rows in Table 1 to form a separate example.
[0121] In some embodiments, the IoT device registers the request information in the first cluster information, which can also be understood as storing the request information in the first cluster information.
[0122] In some embodiments, only the first proxy device has the permission to view the first cluster information, while the second proxy device and / or the IoT device do not have the permission to view the first cluster information. In other words, the first cluster information can only be read by the first proxy device.
[0123] In some embodiments, for the first proxy device, the first cluster information supports reading, writing, and modification.
[0124] In some embodiments, for the second proxy device and the IoT device, the first cluster information supports both write-only and modification.
[0125] Step 530: Receive a connection request, where the connection request is used to request to establish a connection with the IoT device.
[0126] In the embodiment of the present application, the IoT device may be the IoT device 110 as shown in FIG1 , which has client functions and / or server functions.
[0127] In the embodiment of the present application, taking the sender of the connection request as the third proxy device as an example, the third proxy device is one or more proxy devices in the Internet of Things system, for example, the third proxy device is one or more of the first proxy device and the second proxy device.
[0128] In some embodiments, the connection request carries at least one of the following: DeviceID, AgentID, and the first identification code. If the connection request is sent by a third agent device, the DeviceID, AgentID, and the first identification code carried in the connection request are those of the third agent device.
[0129] Step 540: Determine whether to reject the connection request based on the first cluster information.
[0130] In some embodiments, if the connection request satisfies a first condition, the IoT device determines to reject the connection request.
[0131] In some embodiments, when the connection request meets the first condition, the Internet of Things device considers the connection request to be an illegal access request, and may also consider the AgentID carried by the connection request to be an illegally accessed AgentID, or may consider the DeviceID carried by the connection request to be an illegally accessed DeviceID, or may consider the sender of the connection request to be an illegally accessed device.
[0132] In some embodiments, the first condition includes at least one of the following:
[0133] The connection status in the first cluster information is a prohibited connection status;
[0134] The device identifier of the sender of the connection request belongs to the first identifier indicated by the first cluster information;
[0135] The application identifier of the sender of the connection request belongs to the first identifier indicated by the first cluster information;
[0136] The proxy identifier of the sender of the connection request belongs to the second identifier indicated by the first cluster information.
[0137] Exemplarily, if the DeviceID carried in the connection request exists in the first cluster information, the IoT device determines to reject the connection request. Exemplarily, if the AgentID carried in the connection request exists in the first cluster information, the IoT device determines to reject the connection request. Exemplarily, if the DeviceID and AgentID carried in the connection request exist in the first cluster information, the IoT device determines to reject the connection request. Exemplarily, if the DeviceID carried in the connection request exists in the first cluster information, and the first cluster information indicates that the connection status is a first value, the IoT device determines to reject the connection request. Exemplarily, if the AgentID carried in the connection request exists in the first cluster information, and the first cluster information indicates that the connection status is a first value, the IoT device determines to reject the connection request. Exemplarily, if the DeviceID and AgentID carried in the connection request exist in the first cluster information, and the first cluster information indicates that the connection status is a first value, the IoT device determines to reject the connection request.
[0138] In some embodiments, if the first identification code carried in the connection request differs from the first identification code in the second cluster information, the first identification code carried in the connection request may be deemed incorrect, and the IoT device may determine to reject the connection request. For example, if the first identification code corresponding to a registered third proxy device in the second cluster information is "0101," and the first identification code carried in the connection request sent by the third proxy device is "0102," the IoT device may determine that the identity of the user of the third proxy device is incorrect and reject the connection request sent by the third proxy device.
[0139] Step 550: Send a connection response, where the connection response is used to instruct the IoT device to accept or reject the connection request.
[0140] Accepting a connection request can also be understood as allowing the connection to be established. Rejecting a connection request can also be understood as not allowing the connection to be established.
[0141] In some embodiments, the IoT device explicitly indicates whether it accepts or rejects the connection request through a connection response. Exemplarily, the connection response carries rejection information, such as a negative acknowledgment (NACK), indicating that the IoT device rejects the connection request. Exemplarily, the connection response carries confirmation information, such as an acknowledgment (ACK), indicating that the IoT device accepts the connection request.
[0142] In some embodiments, the IoT device implicitly indicates whether it accepts or rejects the connection request through a connection response. Exemplarily, if the IoT device sends a connection response, it indicates that the IoT device rejects the connection request; if the IoT device does not send a connection response, it indicates that the IoT device accepts the connection request. Exemplarily, if the IoT device does not send a connection response, it indicates that the IoT device rejects the connection request; if the IoT device sends a connection response, it indicates that the IoT device accepts the connection request.
[0143] In some embodiments, the IoT device determines to reject the connection request from the third proxy device, and sends a connection response to the third proxy device, where the connection response is used to reject the connection request.
[0144] In some embodiments, the IoT device determines to accept the connection request from the third proxy device, and sends a connection response to the third proxy device, where the connection response is used to accept the connection request.
[0145] Step 560: Send a notification message, where the notification message is used to notify other proxy devices of the connection request.
[0146] Other proxy devices include proxy devices within the IoT system other than the third proxy device. Exemplarily, if the third proxy device is the second proxy device, then the other proxy devices are the first proxy device. Exemplarily, if the third proxy device is the first proxy device, then the other proxy devices are the second proxy device. Exemplarily, if the first proxy device includes proxy devices A and B, the second proxy devices include proxy devices C and D, and the third proxy device is proxy device C, then the other proxy devices include proxy devices A, B, and D. The IoT device can notify only one of the other proxy devices, or all of them, or only those with administrator privileges or those with standard privileges. The above examples are not meant to limit the recipients of the notification message; they are merely illustrative of how, upon receiving a connection request, an IoT device can notify some proxy devices within the IoT system of the connection request, thereby maintaining good information synchronization within the IoT system and contributing to the security of the IoT system.
[0147] In some embodiments, the IoT device sends a notification message after receiving a connection request. Alternatively, the IoT device sends a notification message after determining whether to reject the connection request. Alternatively, the IoT device sends a notification message after determining to reject the connection request. Alternatively, the IoT device sends a notification message after determining to accept the connection request. Alternatively, the IoT device sends a notification message after sending a connection response.
[0148] In some embodiments, the notification message may also be referred to as an alarm message, which is used to notify of an illegal access request. That is, if the IoT device determines to reject the connection request, the IoT device notifies the other proxy devices of the rejected connection request, thereby providing functions such as an alarm or warning.
[0149] In some embodiments, the first proxy device is further supported to modify the first identification code after receiving an illegal access connection request.
[0150] It should be noted that the above steps 510, 520, 550 and 560 are optional steps.
[0151] The above step numbers do not limit the execution order, and the execution order of each step can be adjusted according to actual conditions. For example, step 530 is executed before step 520, step 560 is executed before step 550, step 560 is executed before step 540, and so on.
[0152] In summary, the method provided in the embodiment of the present application allows the IoT device to determine whether to reject a connection request based on the stored first cluster information, supports the IoT device to promptly determine whether to establish a connection after receiving a connection request, improves the security within the IoT system, and reduces proxy risks. The setting of the first cluster information is supported to be established by the proxy device by sending a first request. The process is simple and flexible, which helps users to promptly limit some proxy functions within the IoT system and improves the user experience. If only the first proxy device is allowed to send the first request, it also helps to improve system security to prevent the proxy function from being mistakenly restricted or maliciously restricted. In addition, compared to the method of restricting the proxy function through the cloud platform, the method provided in the embodiment of the present application also has a higher degree of flexibility.
[0153] Please refer to Figure 6, which shows a flow chart of a device connection method provided by an embodiment of the present application. Taking the method executed by an IoT device as an example, the method includes at least some of the following steps:
[0154] Step 610: Receive registration information, where the registration information is used to register the proxy device in the second cluster information, and the second cluster information is stored in the IoT device.
[0155] The relevant content of step 610 can be referred to step 510 and will not be repeated here.
[0156] Step 620: In response to the received human-computer interaction operation, set first cluster information.
[0157] The human-computer interaction operation received by the IoT device includes at least one of the following: input operation, click operation, touch screen operation, voice recognition, etc.
[0158] Exemplarily, a user inputs and / or selects at least one of the following information on the IoT device: a first identifier, a second identifier, a first identification code, and a connection status. The IoT device stores the received input information and / or selection result in the first cluster information.
[0159] In some embodiments, before setting the first cluster information, the IoT device performs identity recognition on the user. The identity recognition method can be at least one of the following: entering a password, entering a PIN code, scanning a QR code, facial recognition, fingerprint recognition, voiceprint recognition, etc.
[0160] In some embodiments, the IoT device confirms the user's identity based on the first identification code. If the first identification code entered by the user is consistent with the stored second cluster information, the user is allowed to set the first cluster information, which can also be understood as starting the connection prohibition program.
[0161] The relevant content of step 620 can be referred to step 520 and will not be repeated here.
[0162] Step 630: Receive a connection request, where the connection request is used to request to establish a connection with the IoT device.
[0163] The relevant content of step 630 can be referred to step 530 and will not be repeated here.
[0164] Step 640: Determine whether to reject the connection request based on the first cluster information.
[0165] The relevant content of step 640 can be referred to step 540 and will not be repeated here.
[0166] Step 650: Send a connection response, where the connection response is used to instruct the IoT device to accept or reject the connection request.
[0167] The relevant content of step 650 can be referred to step 550 and will not be repeated here.
[0168] Step 660: Send a notification message, where the notification message is used to notify other proxy devices of the connection request.
[0169] The relevant content of step 660 can be referred to step 560 and will not be repeated here.
[0170] It should be noted that the above steps 610, 620, 650 and 660 are optional steps.
[0171] The above step numbers do not limit the execution order, and the execution order of each step can be adjusted according to actual conditions. For example, step 630 is executed before step 620, step 660 is executed before step 650, step 660 is executed before step 640, and so on.
[0172] In summary, the method provided in the embodiment of the present application allows the IoT device to determine whether to reject the connection request based on the stored first cluster information, supports the IoT device to promptly determine whether to establish a connection after receiving the connection request, improves the security within the IoT system, and reduces the risk of proxy. It supports users to set the first cluster information directly on the IoT device through human-computer interaction. The process is simple and flexible, which helps users to promptly limit some proxy functions within the IoT system and improves the user experience. If the user identity is confirmed before setting the first cluster information, it also helps to improve system security to prevent the proxy function from being mistakenly restricted or maliciously restricted. In addition, compared to the method of limiting the proxy function through the cloud platform, the method provided in the embodiment of the present application is also more flexible.
[0173] The above steps 510 and 610 describe the registration of the proxy device. In fact, the registration information can come from the first proxy device or the second proxy device. In other words, the embodiment of the present application provides the following two registration schemes:
[0174] Registration Solution 1: The first proxy device sends registration information to the IoT device. The first proxy device proactively registers multiple proxy devices within the IoT system with the second cluster information. This allows only the first proxy device to set, modify, and update the first identification code within the system, helping to ensure system security, saving transmission resources required for information exchange, and simplifying the process.
[0175] Registration Solution 2: Each proxy device registers itself by sending registration information to the IoT device. Each proxy device can be assigned a different first identification code, and each proxy device has the authority to set, modify, and update its own first identification code. Proxy devices with normal permissions are unaware of the first identification codes of other proxy devices, ensuring the independence of each proxy device and improving system security.
[0176] Taking the second proxy device as an example, the registration process of registration solution 2 is shown in FIG7 , which includes at least some of the following steps:
[0177] Step 710: The second proxy device sends registration information to the IoT device, for registering the second proxy device in the second cluster information.
[0178] Exemplarily, the first proxy device and the second proxy device respectively send registration information to the IoT device.
[0179] Each proxy device actively registers itself and can only register itself in the second cluster information. Then, the first identification codes corresponding to different proxy devices can be the same or different. From a security perspective, each proxy device has a one-to-one corresponding first identification code to help reduce risks.
[0180] For related content, please refer to step 510 and will not be repeated here.
[0181] Step 720: The second proxy device modifies the registration information.
[0182] The first proxy device and / or the second proxy device are supported to modify registration information, that is, the first proxy device and / or the second proxy device are supported to modify second cluster information.
[0183] In some embodiments, the second agent device's ability to modify registration information (e.g., DeviceID, AgentIDList, first identification code) can also be limited. For example, the second agent device or its user cannot know the registration information of other agent devices; another example is that the second agent device can only modify or update its own registration information; another example is that the second agent device notifies the first agent device of its own registration information modification or update operations; another example is that the second agent device requires the first agent device's permission to modify or update registration information, etc.
[0184] In some embodiments, the first agent device cannot modify the registration information of other agent devices (e.g., DeviceID, AgentIDList, first identification code). That is, the first agent device can only set, modify, and update its own registration information. Alternatively, considering the administrator privileges of the first agent device, the first agent device's permission to modify registration information can be increased. For example, the first agent device can be allowed to modify and update the registration information of all agent devices in the system. Another example is allowing the first agent device to modify and update the registration information of other agent devices with the permission of the other agent devices, etc.
[0185] In some embodiments, when modifying registration information, the proxy device needs to provide the previous first identification code. That is, when modifying registration information, the proxy device needs to provide the previous first identification code to facilitate user identity verification and reduce security risks. For example, the first identification code is the connectionblockPIN. When modifying the connectionblockPIN, the proxy device needs to provide both the new PIN code (New PINcode) and the old PIN code (Old PINcode / Original PINcode).
[0186] In some embodiments, DeviceID, AgentIDList, and the first identification code are write-only.
[0187] In summary, the method provided by the embodiments of the present application supports autonomous self-registration by a second proxy device, enhancing its independence and flexibility. This eliminates the need for the second proxy device's registration to rely on the first proxy device, helping IoT devices promptly and accurately determine whether to reject received connection requests and reducing security risks. Furthermore, different proxy devices can be configured to prevent them from reading or modifying the registration information of other proxy devices, further enhancing system security.
[0188] In some embodiments, step 510 adopts registration scheme 1. That is, embodiments of the present application support a device connection method in which a first proxy device sends registration information to an IoT device and the proxy device sets the first cluster information. For example, reference may be made to the embodiment shown in FIG8 .
[0189] In some embodiments, step 510 adopts registration solution 2. That is, embodiments of the present application support a device connection method in which each proxy device sends registration information to each IoT device, and the proxy device sets the first cluster information.
[0190] In some embodiments, step 610 uses registration scheme 1. In other words, embodiments of the present application support a device connection method in which a first proxy device sends registration information to an IoT device and sets the first cluster information based on human-computer interaction on the IoT device. For example, see the embodiment shown in FIG9 .
[0191] In some embodiments, step 610 adopts registration solution 2. That is, the embodiments of the present application support a device connection method in which each proxy device sends registration information to the IoT device respectively, and sets the first cluster information according to the human-computer interaction operation on the IoT device.
[0192] Please refer to Figure 8, which shows a flow chart of a device connection method provided by an embodiment of the present application. Taking the method executed by the first proxy device, the IoT device, and the third proxy device as an example, the method includes at least some of the following steps:
[0193] Step 801: The first proxy device sends registration information to the IoT device.
[0194] The first proxy device initiates registration and registers all proxy devices in the IoT system with the second cluster information. For details about the registration information and the second cluster information, please refer to step 510 and will not be repeated here.
[0195] In some embodiments, the registration information carries one or more first identification codes that are the same or different. That is, the proxy devices registered this time can use the same first identification code or different first identification codes. In this embodiment of the application, a registration information carries one first identification code as an example.
[0196] In some embodiments, only the first proxy device has permission to modify the registration information. That is, only the first proxy device has permission to modify the second cluster information. The second cluster information is readable, writable, and modifiable by the first proxy device. However, the second proxy device cannot read, write, or modify the second cluster information.
[0197] Step 802: The third proxy device needs to be restricted from connecting.
[0198] For example, when the third-party agent device is lost, damaged, attacked, abandoned, or cannot identify the user (for example, the password is entered incorrectly multiple times), or faces other security risks, it is necessary to restrict the third-party agent device from connecting to the IoT device.
[0199] Step 803: The first proxy device sends a first request to the IoT device.
[0200] The relevant content of the first request can be referred to step 520 and will not be repeated here.
[0201] In some embodiments, the first request carries the DeviceID and / or AgentID of the third agent device and indicates that the connection state is "disabled connection state", such as setting connectionblockStatus to "TRUE". Optionally, the first request also carries the first identification code, or does not carry the first identification code.
[0202] In some embodiments, the first request is used to prohibit the third proxy device from connecting to the IoT device.
[0203] In some embodiments, the first request is used to temporarily not allow the third proxy device to connect to the IoT device, and an access control list (ACL) may be temporarily saved.
[0204] Step 804: The third proxy device sends a connection request to the IoT device.
[0205] For the relevant content of the connection request, please refer to step 530 and will not be repeated here.
[0206] Step 805: The IoT device determines whether to reject the connection request.
[0207] In some embodiments, the IoT device determines whether to reject the connection request based on the first cluster information. For details, see step 540 .
[0208] For example, if the DeviceID and / or AgentID of the third agent device is present in the first cluster information and connectionblockStatus=TRUE in the first cluster information, it means that the third agent device is not allowed to connect to the IoT device. In this case, the IoT device can determine that the connection request from the third agent device should be rejected.
[0209] Step 806: The IoT device feeds back a connection response for rejecting the connection request to the third proxy device.
[0210] Step 806 is an optional step. For details on the connection response, please refer to step 550 and will not be described in detail here.
[0211] Step 807: The IoT device sends a notification message to the first proxy device.
[0212] The IoT device may inform the first proxy device of the connection attempt of the third proxy device. Optionally, the notification message carries the DeviceID and / or AgentID and / or first identification code of the third proxy device.
[0213] Step 807 is an optional step. For details about the notification message, please refer to step 560 and will not be described in detail here.
[0214] In summary, the method provided in the embodiments of the present application supports a first proxy device with administrator privileges to proactively register all proxy devices in the system, simplifying the registration process and improving the user experience. It also supports the first proxy device setting first cluster information so that the IoT device can promptly determine whether to establish a connection after receiving a connection request, thereby improving security within the IoT system and reducing proxy risks. Furthermore, compared to methods that require limiting proxy functions through the cloud platform, the method provided in the embodiments of the present application also offers a higher degree of flexibility.
[0215] Please refer to Figure 9, which shows a flow chart of a device connection method provided by an embodiment of the present application. Taking the method executed by the first proxy device, the IoT device, and the third proxy device as an example, the method includes at least some of the following steps:
[0216] Step 901: The first proxy device sends registration information to the IoT device.
[0217] For related content, please refer to step 510 and step 810, which will not be repeated here.
[0218] In some embodiments, the first agent device may modify the first identification code, or the first agent device may not modify the first identification code.
[0219] Step 902: The first proxy device sends a first request to the IoT device.
[0220] In some embodiments, the first request carries the DeviceID and / or AgentID of the third proxy device and indicates that the connection status is "connection allowed," such as by setting connectionblockStatus to "FALSE," indicating that the third proxy device is not prohibited from connecting to the IoT device. Optionally, the first request also carries the first identification code, or does not carry the first identification code.
[0221] Step 903: The third proxy device needs to be restricted from connecting.
[0222] For example, when the third-party agent device is lost, damaged, attacked, abandoned, or cannot identify the user (for example, the password is entered incorrectly multiple times), or faces other security risks, it is necessary to restrict the third-party agent device from connecting to the IoT device.
[0223] Step 904: The IoT device sets first cluster information according to the human-computer interaction operation.
[0224] Exemplarily, the user enters a first identification code on the screen of the IoT device to start the connection prohibition function, and the user sets connectionblockStatus to "TRUE". The user can also select or enter the DeviceID and / or AgentID of a third agent device, indicating that the third agent device is prohibited from connecting to the IoT device, or temporarily not allowed to connect to the IoT device.
[0225] Step 905: The third proxy device sends a connection request to the IoT device.
[0226] For the relevant content of the connection request, please refer to step 540 and will not be repeated here.
[0227] Step 906: The IoT device determines whether to reject the connection request.
[0228] In some embodiments, the IoT device determines whether to reject the connection request based on the first cluster information. For details, see step 540 .
[0229] For example, if the DeviceID and / or AgentID of the third agent device is present in the first cluster information, and connectionblockStatus=TRUE in the first cluster information, it means that the third agent device is not allowed to connect to the IoT device. The IoT device can then determine that the connection request from the third agent device should be rejected.
[0230] Step 907: The IoT device feeds back a connection response for rejecting the connection request to the third proxy device.
[0231] Step 907 is an optional step. For details on the connection response, please refer to step 550 and will not be described in detail here.
[0232] Step 908: The IoT device sends a notification message to the first proxy device.
[0233] The IoT device may inform the first proxy device of the connection attempt of the third proxy device. Optionally, the notification message carries the DeviceID and / or AgentID and / or first identification code of the third proxy device.
[0234] Step 908 is an optional step. For details about the notification message, please refer to step 560 and will not be described in detail here.
[0235] In summary, the method provided in the embodiment of the present application supports a first proxy device with administrator privileges to proactively register all proxy devices in the system. The registration process is simple, which improves the user experience. It also supports users to directly launch a connection prohibition program and set the first cluster information on the IoT device, so that the IoT device can promptly determine whether to establish a connection after receiving a connection request, thereby improving the security within the IoT system and reducing proxy risks. In addition, compared to the method of restricting proxy functions through the cloud platform, the method provided in the embodiment of the present application also has a higher degree of flexibility.
[0236] Please refer to Figure 10, which shows a flow chart of a device connection method provided by an embodiment of the present application. Taking the method executed by the first proxy device as an example, the method includes at least some of the following steps:
[0237] Step 1010: Send registration information, where the registration information is used to register the proxy device in the second cluster information.
[0238] Step 1010 is an optional step. For related details, please refer to step 510, step 720, step 801, etc.
[0239] Step 1020: Send a first request, where the first request is used to set first cluster information.
[0240] Step 1020 is an optional step. For related details, please refer to step 520, step 803, step 902, etc.
[0241] Step 1030: Receive a notification message, where the notification message is used to notify the first proxy device of the connection request.
[0242] Step 1030 is an optional step. For related details, please refer to step 560, step 807, step 908, etc.
[0243] In summary, the method provided in the embodiments of the present application supports a first proxy device with administrator privileges to proactively register all proxy devices in the system, simplifying the registration process and improving the user experience. It also supports the first proxy device setting first cluster information so that the IoT device can promptly determine whether to establish a connection after receiving a connection request, thereby improving security within the IoT system and reducing proxy risks. Furthermore, compared to methods that require limiting proxy functions through the cloud platform, the method provided in the embodiments of the present application also offers a higher degree of flexibility.
[0244] Please refer to Figure 11, which shows a flow chart of a device connection method provided by an embodiment of the present application. Taking the method executed by the third proxy device as an example, the method includes at least some of the following steps:
[0245] Step 1110: Send a connection request, where the connection request is used to request to establish a connection with the IoT device.
[0246] The IoT device stores first cluster information, which is used by the IoT device to determine whether to reject the connection request. For related details, see steps 520, 620, 530, and 540.
[0247] Step 1120: Receive a connection response, where the connection response is used to reject the connection request.
[0248] For related content, please refer to step 550, step 805, step 906, etc.
[0249] In some embodiments, when the first condition is met, the IoT device sends a connection response for rejecting the connection request.
[0250] In some embodiments, the first condition includes at least one of the following: the connection state in the first cluster information is a prohibited connection state; the device identifier of the third proxy device belongs to the first identifier indicated by the first cluster information; the application identifier of the third proxy device belongs to the first identifier indicated by the first cluster information; the proxy identifier of the third proxy device belongs to the second identifier indicated by the first cluster information.
[0251] It should be noted that the third proxy device involved in the embodiment of the present application can be any proxy device in the Internet of Things system.
[0252] In summary, the method provided in the embodiment of the present application supports judging the connection request of the third proxy device through the first cluster information. If the connection request initiated by the third proxy device is an illegal connection request, the third proxy device can be promptly rejected from connecting to the IoT device, thereby ensuring the security of the IoT system.
[0253] Please refer to Figure 12, which shows a block diagram of a device connection apparatus 1200 provided in one embodiment of the present application. This apparatus can be implemented as the aforementioned IoT device, or as a portion thereof. This apparatus can be used to implement the steps and functions performed by the IoT device in the various method embodiments described above. The apparatus includes a receiving module 1210 and a processing module 1230. Optionally, the apparatus also includes a sending module 1250.
[0254] The receiving module 1210 is configured to receive a connection request, where the connection request is used to request to establish a connection with the device.
[0255] The processing module 1230 is configured to determine whether to reject the connection request based on first cluster information, where the first cluster information is stored in the IoT device.
[0256] In some embodiments, the first cluster information includes at least one of the following information: a first identifier, a second identifier, and a connection status; wherein the first identifier includes a device identifier and / or an application identifier, and the second identifier includes an agent identifier.
[0257] In some embodiments, the first cluster information is set according to a first request, and the first request carries at least one of the following information: a first identifier, a second identifier, a first identification code, and a connection status; wherein the first identifier includes a device identifier and / or an application identifier, and the second identifier includes an agent identifier.
[0258] In some embodiments, the receiving module 1210 is further configured to receive the first request from a first proxy device, where the first proxy device has administrator privileges.
[0259] In some embodiments, the first cluster information is set by a human-computer interaction operation received by the device.
[0260] In some embodiments, the processing module 1230 is further configured to enter a setting mode for the first cluster information in response to an input operation of the first identification code.
[0261] In some embodiments, the receiving module 1210 is further configured to receive registration information, where the registration information is used to register the proxy device in the second cluster information stored in the apparatus. The registered proxy device has control authority over the apparatus.
[0262] In some embodiments, the second cluster information includes at least one of the following information: a registered device identifier, a registered application identifier, an agent identifier list, and a first identification code.
[0263] In some embodiments, the registration information comes from a first agent device, and the first agent device has administrator privileges.
[0264] In some embodiments, the registration information comes from a second agent device, the second agent device does not have administrator privileges, and each second agent device has a one-to-one corresponding first identification code.
[0265] In some embodiments, the processing module 1230 is further used to determine whether to reject the connection request when a first condition is met, and the first condition includes at least one of the following: the connection status in the first cluster information is a prohibited connection status; the device identifier of the sender of the connection request belongs to the first identifier indicated by the first cluster information; the application identifier of the sender of the connection request belongs to the first identifier indicated by the first cluster information; the agent identifier of the sender of the connection request belongs to the second identifier indicated by the first cluster information.
[0266] In some embodiments, the apparatus further includes a sending module 1250 configured to send a connection response, where the connection response is used to reject the connection request.
[0267] In some embodiments, the sending module 1250 is configured to send a notification message, where the notification message is used to notify the first proxy device of the connection request.
[0268] In some embodiments, the receiving module 1210 is configured to execute at least one of the following steps: step 410 , step 510 , step 520 , step 530 , step 610 , and step 630 .
[0269] In some embodiments, the processing module 1230 is configured to execute at least one of the following steps: step 430 , step 540 , step 620 , step 640 , step 805 , step 904 , and step 906 .
[0270] In some embodiments, the sending module 1250 is used to perform at least one of the following steps: step 550 , step 560 , step 650 , step 660 , step 806 , step 807 , step 907 , and step 908 .
[0271] In summary, the apparatus provided in the embodiments of the present application supports timely and flexible determination of whether to reject a connection request based on stored first cluster information, thereby improving security within the IoT system and reducing proxy risks. It also supports the establishment of first cluster information by a proxy device through the sending of a first request. This simple and flexible process helps users promptly restrict certain proxy functions within the IoT system, improving the user experience.
[0272] Please refer to Figure 13, which shows a block diagram of the device connection apparatus provided in one embodiment of the present application. This apparatus can be implemented as the first proxy device described above, or as a portion thereof. This apparatus can be used to implement the steps and functions performed by the first proxy device in each of the above-described method embodiments. The apparatus includes a sending module 1310. Optionally, the apparatus also includes a receiving module 1330 and / or a processing module 1350.
[0273] The sending module 1310 is configured to send a first request, where the first request is used to set first cluster information. The first cluster information is used by the IoT device to determine whether to reject the connection request, and the first cluster information is stored in the IoT device.
[0274] In some embodiments, the first request carries at least one of the following information: a first identifier, a second identifier, a first identification code, and a connection status; wherein the first identifier includes a device identifier and / or an application identifier, and the second identifier includes an agent identifier.
[0275] In some embodiments, the first cluster information includes at least one of the following information: a first identifier, a second identifier, and a connection status; wherein the first identifier includes a device identifier and / or an application identifier, and the second identifier includes an agent identifier.
[0276] In some embodiments, the sending module 1310 is further used to send registration information, where the registration information is used to register the proxy device in the second cluster information stored in the IoT device. The registered proxy device has control authority over the IoT device.
[0277] In some embodiments, the second cluster information includes at least one of the following information: a registered device identifier, a registered application identifier, a proxy identifier list, and a first identification code.
[0278] In some embodiments, the apparatus further includes a receiving module 1330 configured to receive a notification message, where the notification message is used to notify the first proxy device of a connection request.
[0279] In some embodiments, the apparatus further includes a processing module 1350 for processing operations such as calculation, modification, configuration, determination, and update related to device connection.
[0280] In some embodiments, the sending module 1310 is used to perform at least one of the following steps: step 801 , step 803 , step 901 , step 902 , step 1010 , and step 1020 .
[0281] In some embodiments, the receiving module 1330 is configured to execute step 1030 .
[0282] To sum up, the device provided in the embodiment of the present application supports active registration of all proxy devices in the system. The registration process is simple, which improves the user experience. It also supports setting the first cluster information so that the IoT device can promptly determine whether to establish a connection after receiving a connection request, thereby improving the security within the IoT system and reducing proxy risks.
[0283] Please refer to Figure 14, which shows a block diagram of the device connection apparatus provided in one embodiment of the present application. This apparatus can be implemented as the aforementioned second proxy device, or as a portion of the aforementioned second proxy device. This apparatus can be used to implement the steps and functions performed by the second proxy device in each of the aforementioned method embodiments. The apparatus includes a sending module 1410. Optionally, the apparatus also includes a receiving module 1430 and / or a processing module 1450.
[0284] The sending module 1410 is configured to send registration information, where the registration information is used to register the proxy device in the second cluster information stored in the IoT device. The registered proxy device has control authority over the IoT device.
[0285] In some embodiments, the second cluster information includes at least one of the following information: a registered device identifier, a registered application identifier, an agent identifier list, and a first identification code.
[0286] In some embodiments, each second proxy device has a one-to-one corresponding first identification code.
[0287] In some embodiments, the device also includes a receiving module 1430, which can be used to receive indication information, request information, commands, data, etc. from the first proxy device, and can also be used to receive response information, request information, data, etc. from the Internet of Things device, and can also receive indication information, request information, commands, data, etc. from other second proxy devices.
[0288] In some embodiments, the apparatus further includes a processing module 1450 for processing operations such as calculation, modification, configuration, determination, and update related to device connection.
[0289] In some embodiments, the sending module 1410 is used to perform at least one of the following steps: step 710 and step 720.
[0290] In some embodiments, the processing module 1450 is configured to perform step 720 .
[0291] In summary, the device provided in the embodiment of the present application supports autonomously registering the second cluster information for itself, so that the device has good independence and flexibility, which helps the IoT device to promptly and accurately determine whether to reject the received connection request, thereby reducing security risks.
[0292] Please refer to Figure 15, which shows a block diagram of the device connection apparatus provided in one embodiment of the present application. This apparatus can be implemented as the aforementioned third proxy device, or as a portion thereof. This apparatus can be used to implement the steps and functions performed by the third proxy device in each of the aforementioned method embodiments. The apparatus includes a sending module 1510. Optionally, the apparatus also includes a receiving module 1530 and / or a processing module 1550.
[0293] The sending module 1510 sends a connection request, where the connection request is used to request to establish a connection with the IoT device. The IoT device stores first cluster information, and the first cluster information is used by the IoT device to determine whether to reject the connection request.
[0294] In some embodiments, the first cluster information includes at least one of the following information: a first identifier, a second identifier, and a connection status; wherein the first identifier includes a device identifier and / or an application identifier, and the second identifier includes an agent identifier.
[0295] In some embodiments, the first cluster information is set according to a first request, and the first request carries at least one of the following information: a first identifier, a second identifier, a first identification code, and a connection status; wherein the first identifier includes a device identifier and / or an application identifier, and the second identifier includes an agent identifier.
[0296] In some embodiments, the first cluster information is set by a human-computer interaction operation received by the IoT device.
[0297] In some embodiments, the apparatus further includes a receiving module 1530 configured to receive a connection response, where the connection response is configured to reject the connection request.
[0298] In some embodiments, the apparatus further includes a processing module 1550 for processing operations such as calculation, modification, configuration, determination, and update related to device connection.
[0299] In some embodiments, the sending module 1510 is used to perform at least one of the following steps: step 804 , step 905 , and step 1110 .
[0300] In some embodiments, the receiving module 1530 is configured to execute at least one of the following steps: step 806 , step 907 , and step 1120 .
[0301] To sum up, the connection request provided by the device provided in the embodiment of the present application is judged by the IoT device through the first cluster information. If the connection request initiated by the device is an illegal connection request, the device can be promptly rejected from connecting to the IoT device, thereby ensuring the security of the IoT system.
[0302] It should be noted that the device provided in the above embodiment only uses the division of the above-mentioned functional modules as an example to implement its functions. In actual applications, the above-mentioned functions can be assigned to different functional modules according to actual needs, that is, the content structure of the device can be divided into different functional modules to complete all or part of the functions described above.
[0303] Regarding the apparatus in the above embodiment, the specific manner in which each module performs operations has been described in detail in the embodiment of the method, and will not be elaborated here.
[0304] Please refer to Figure 16, which shows a structural diagram of a communication device 1600 provided in an embodiment of the present application, including at least one of the following: a receiver 1601, a transmitter 1602, a processor 1603, a memory 1604, and a bus (not shown in the figure).
[0305] In some embodiments, the communication device 1600 may be used to execute some or all of the steps executed by the aforementioned IoT device.
[0306] In some embodiments, the communication device 1600 may be configured to execute some or all of the steps executed by the first agent device.
[0307] In some embodiments, the communication device 1600 may be configured to execute some or all of the steps executed by the second agent device.
[0308] In some embodiments, the communication device 1600 may be used to execute some or all of the steps executed by the third agent device.
[0309] The receiver 1601 is used to implement a receiving function, and the transmitter 1602 is used to implement a sending function.
[0310] In some embodiments, receiver 1601 and transmitter 1602 may be implemented as a communication component, which may be a communication chip and referred to as a transceiver. In some embodiments, receiver 1601 may be used to implement the functions and steps of receiving module 1210 and / or receiving module 1330 and / or receiving module 1430 and / or receiving module 1530 described above, and transmitter 1602 may be used to implement the functions and steps of transmitting module 1250 and / or transmitting module 1310 and / or transmitting module 1410 and / or transmitting module 1510 described above.
[0311] In some embodiments, receiver 1601 and transmitter 1602 may be implemented as a wireless communication component and / or a wired communication component. Optionally, the wireless communication component includes a wireless communication chip and / or a radio frequency antenna. Optionally, the wired communication component includes a wired communication chip and / or a wired interface.
[0312] Processor 1603 includes one or more processing cores. Processor 1603 executes various functional applications and information processing by running software programs and modules. In some embodiments, processor 1603 can be used to implement the functions and steps of processing module 1230 and / or processing module 1350 and / or processing module 1450 and / or processing module 1550 described above.
[0313] The memory 1604 may be used to store a computer program executed by the processor 1603 , and the processor 1401 is used to execute the computer program to implement each step in the above method embodiment.
[0314] In some embodiments, the memory 1604 may be connected to the processor 1603 as well as the receiver 1601 and the transmitter 1602 .
[0315] In addition, the memory 1604 can be implemented by any type of volatile or non-volatile storage device or a combination thereof. Volatile or non-volatile storage devices include but are not limited to: magnetic disks or optical disks, electrically erasable programmable read-only memory (EEPROM), erasable programmable read-only memory (EPROM), static random access memory (SRAM), read-only memory (ROM), magnetic memory, flash memory, and programmable read-only memory (PROM).
[0316] In some embodiments, the receiver 1601 receives signals / data independently, or the processor 1603 controls the receiver 1601 to receive signals / data, or the processor 1603 requests the receiver 1601 to receive signals / data, or the processor 1603 cooperates with the receiver 1601 to receive signals / data.
[0317] In some embodiments, the transmitter 1602 independently sends signals / data, or the processor 1603 controls the transmitter 1602 to send signals / data, or the processor 1603 requests the transmitter 1602 to send signals / data, or the processor 1603 cooperates with the transmitter 1602 to send signals / data.
[0318] For details not described in detail in this embodiment, please refer to the above embodiments and will not be described in detail here.
[0319] In an exemplary embodiment of the present application, a chip is further provided, which includes a programmable logic circuit and / or program instructions. When the chip runs on a communication device, it is used to implement the device connection method provided by the above-mentioned various method embodiments.
[0320] In some embodiments, the chip includes a receiving module 1210 and a processing module 1230. Optionally, the chip also includes a sending module 1250. The relevant content can be referred to above and will not be repeated here.
[0321] In some embodiments, the chip includes a sending module 1310. Optionally, the chip also includes a receiving module 1330 and / or a processing module 1350. The relevant contents can be referred to above and will not be repeated here.
[0322] In some embodiments, the chip includes a sending module 1410. Optionally, the chip also includes a receiving module 1430 and / or a processing module 1450. The relevant contents can be referred to above and will not be repeated here.
[0323] In some embodiments, the chip includes a sending module 1510. Optionally, the chip also includes a receiving module 1530 and / or a processing module 1550. The relevant contents can be referred to above and will not be repeated here.
[0324] In an exemplary embodiment of the present application, an Internet of Things system is further provided, comprising a first cluster. Optionally, the Internet of Things system further comprises a second cluster. For details, please refer to the foregoing description and will not be repeated here.
[0325] In an exemplary embodiment of the present application, a computer-readable storage medium is further provided, in which at least one program is stored. The at least one program is loaded and executed by the processor to implement the device connection method provided by each of the above method embodiments.
[0326] In an exemplary embodiment of the present application, a computer program product is further provided. When the computer program product is run on a processor of a computer device, the computer device is enabled to execute the above-mentioned device connection method.
[0327] In an exemplary embodiment of the present application, a computer program is further provided. The computer program includes computer instructions. A processor of a computer device executes the computer instructions, so that the computer device executes the above-mentioned device connection method.
[0328] Those skilled in the art will understand that all or part of the steps to implement the above embodiments may be accomplished by hardware, or may be accomplished by a program instructing the relevant hardware, and the program may be stored in a computer-readable storage medium, and the above-mentioned storage medium may be a read-only memory, a disk, or an optical disk, etc.
[0329] The above are only optional embodiments of the present application and are not intended to limit the present application. Any modifications, equivalent replacements, improvements, etc. made within the spirit and principles of the present application should be included in the scope of protection of the present application.
Claims
1. A device connection method, characterized in that, The method is executed by an Internet of Things device, and the method includes: Receiving a connection request for requesting to establish a connection with the Internet of Things device; Determining whether to reject the connection request based on first cluster information stored in the Internet of Things device.
2. The method according to claim 1, wherein The first cluster information includes at least one of the following information: a first identifier, a second identifier, a connection state; Wherein, the first identifier includes a device identifier and / or an application identifier, and the second identifier includes a proxy identifier.
3. The method according to claim 1 or 2, characterized in that The first cluster information is set according to a first request, and the first request carries at least one of the following information: a first identifier, a second identifier, a first identification code, a connection state; Wherein, the first identifier includes a device identifier and / or an application identifier, and the second identifier includes a proxy identifier.
4. The method according to claim 3, characterized in that, The method further includes: Receiving the first request from a first proxy device having administrator privileges.
5. The method according to claim 1 or 2, characterized in that, The first cluster information is set by a human-computer interaction operation received by the Internet of Things device.
6. The method according to claim 5, characterized in that, The method further includes: Entering a setting mode of the first cluster information in response to an input operation of a first identification code.
7. According to the method described in any one of claims 1 to 6, characterized in that, The method further includes: Receiving registration information for registering a proxy device in second cluster information stored in the Internet of Things device, and the registered proxy device has control privileges of the Internet of Things device.
8. The method according to claim 7, wherein The second cluster information includes at least one of the following information: a registered device identifier, a registered application identifier, a proxy identifier list, a first identification code.
9. The method according to claim 8, characterized in that, The registration information comes from a first proxy device having administrator privileges.
10. The method according to claim 8, wherein The registration information comes from a second proxy device without administrator privileges, and each second proxy device has a corresponding first identification code.
11. The method according to any one of claims 1 to 10, characterized in that, The determining whether to reject the connection request based on the first cluster information includes: Determining to reject the connection request when a first condition is satisfied, and the first condition includes at least one of the following: The connection state in the first cluster information is a prohibited connection state; The device identifier of the sending end of the connection request belongs to the first identifier indicated by the first cluster information; The application identifier of the sending end of the connection request belongs to the first identifier indicated by the first cluster information; The proxy identifier of the sending end of the connection request belongs to the second identifier indicated by the first cluster information.
12. The method according to claim 11, wherein The method further includes: Sending a connection response for rejecting the connection request; and / or, Sending a notification message for notifying the first proxy device of the connection request.
13. A device connection method, characterized in that, The method is executed by a first proxy device having administrator privileges, and the method includes: Sending a first request for setting first cluster information for an Internet of Things device to determine whether to reject a connection request, and the first cluster information is stored in the Internet of Things device.
14. The method according to claim 13, wherein The first request carries at least one of the following information: a first identifier, a second identifier, a first identification code, a connection state; Wherein, the first identifier includes a device identifier and / or an application identifier, and the second identifier includes a proxy identifier.
15. The method according to claim 13 or 14, characterized in that, The first cluster information includes at least one of the following information: the first identifier, the second identifier, and the connection status; Wherein, the first identifier includes a device identifier and / or an application identifier, and the second identifier includes a proxy identifier.
16. The method according to any one of claims 13 to 15, characterized in that The method further includes: Sending registration information, which is used to register a proxy device in the second cluster information stored in the Internet of Things device, and the registered proxy device has control authority over the Internet of Things device.
17. The method according to claim 16, wherein The second cluster information includes at least one of the following information: the registered device identifier, the registered application identifier, a list of proxy identifiers, and a first identification code.
18. The method according to any one of claims 13 to 17, characterized in that The method further includes: Receiving a notification message, which is used to notify the first proxy device of a connection request.
19. A device connection method, characterized in that, The method is executed by a second proxy device that does not have administrator authority, and the method includes: Sending registration information, which is used to register a proxy device in the second cluster information stored in the Internet of Things device, and the registered proxy device has control authority over the Internet of Things device.
20. The method according to claim 19, wherein The second cluster information includes at least one of the following information: the registered device identifier, the registered application identifier, a list of proxy identifiers, and a first identification code.
21. The method according to claim 20, wherein Each second proxy device has a corresponding first identification code.
22. A device connection method, characterized in that, The method is executed by a third proxy device, and the method includes: Sending a connection request, which is used to request to establish a connection with the Internet of Things device; Wherein, the first cluster information is stored in the Internet of Things device, and the first cluster information is used for the Internet of Things device to determine whether to reject the connection request.
23. The method according to claim 22, characterized in that, The first cluster information includes at least one of the following information: the first identifier, the second identifier, and the connection status; Wherein, the first identifier includes a device identifier and / or an application identifier, and the second identifier includes a proxy identifier.
24. The method according to claim 22 or 23, characterized in that, The first cluster information is set according to a first request, and the first request carries at least one of the following information: the first identifier, the second identifier, the first identification code, and the connection status; Wherein, the first identifier includes a device identifier and / or an application identifier, and the second identifier includes a proxy identifier.
25. The method according to claim 22 or 23, characterized in that, The first cluster information is set by a human-computer interaction operation received by the Internet of Things device.
26. The method according to any one of claims 22 to 25, characterized in that, The method further includes: Receiving a connection response, which is used to reject the connection request.
27. The method according to claim 26, wherein The connection response is sent when a first condition is met, and the first condition includes at least one of the following: The connection status in the first cluster information is a prohibited connection status; The device identifier of the third proxy device belongs to the first identifier indicated by the first cluster information; The application identifier of the third proxy device belongs to the first identifier indicated by the first cluster information; The proxy identifier of the third proxy device belongs to the second identifier indicated by the first cluster information.
28. A device connection device, characterized in that, The device includes: A receiving module, configured to receive a connection request, which is used to request to establish a connection with the device; A processing module, configured to determine whether to reject the connection request based on first cluster information stored in the device.
29. A device connection device, characterized in that, The device has administrator privileges and includes: A sending module, configured to send a first request for setting first cluster information for an Internet of Things device to determine whether to reject a connection request, where the first cluster information is stored in the Internet of Things device.
30. A device connection device, characterized in that, The device does not have administrator privileges and includes: A sending module, configured to send registration information for registering an agent device in second cluster information stored in an Internet of Things device, where the registered agent device has control privileges of the Internet of Things device.
31. A device connection device, characterized in that, The device includes: A sending module, configured to send a connection request for requesting to establish a connection with an Internet of Things device; Wherein, first cluster information is stored in the Internet of Things device, and the first cluster information is used for the Internet of Things device to determine whether to reject the connection request.
32. A communication device, characterized in that, The communication device includes: a processor; a transceiver connected to the processor; and a memory for storing executable instructions of the processor; Wherein, the processor is configured to load and execute the executable instructions to implement the device connection method according to any one of claims 1 to 12, or any one of claims 13 to 18, or any one of claims 19 to 21, or any one of claims 22 to 27.
33. A computer-readable storage medium, characterized in that, Executable instructions are stored in the readable storage medium, and the executable instructions are loaded and executed by a processor, so that the computer-readable storage medium implements the device connection method according to any one of claims 1 to 12, or any one of claims 13 to 18, or any one of claims 19 to 21, or any one of claims 22 to 27.
34. A chip, characterized in that, The chip includes a programmable logic circuit or program, and the chip is used to implement the device connection method according to any one of claims 1 to 12, or any one of claims 13 to 18, or any one of claims 19 to 21, or any one of claims 22 to 27.
35. A computer program product, characterized in that, The computer program product includes computer instructions stored in a computer-readable storage medium. A processor of a computer device reads the computer instructions from the computer-readable storage medium, and the processor executes the computer instructions, so that the computer device executes the device connection method according to any one of claims 1 to 12, or any one of claims 13 to 18, or any one of claims 19 to 21, or any one of claims 22 to 27.
36. A computer program, characterized in that, The computer program includes computer instructions, and a processor of a computer device executes the computer instructions, so that the computer device executes the device connection method according to any one of claims 1 to 12, or any one of claims 13 to 18, or any one of claims 19 to 21, or any one of claims 22 to 27.