WO2022170849A1 - 开发包认证方法及相关设备 - Google Patents

开发包认证方法及相关设备 Download PDF

Info

Publication number
WO2022170849A1
WO2022170849A1 PCT/CN2021/138558 CN2021138558W WO2022170849A1 WO 2022170849 A1 WO2022170849 A1 WO 2022170849A1 CN 2021138558 W CN2021138558 W CN 2021138558W WO 2022170849 A1 WO2022170849 A1 WO 2022170849A1
Authority
WO
WIPO (PCT)
Prior art keywords
authentication
development
electronic device
development kit
package
Prior art date
Application number
PCT/CN2021/138558
Other languages
English (en)
French (fr)
Inventor
苏鹏
马宇驰
杨祖洵
李明雨
陈杨明
Original Assignee
华为技术有限公司
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 华为技术有限公司 filed Critical 华为技术有限公司
Publication of WO2022170849A1 publication Critical patent/WO2022170849A1/zh

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/30Authentication, i.e. establishing the identity or authorisation of security principals
    • G06F21/44Program or device authentication
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/34Network arrangements or protocols for supporting network services or applications involving the movement of software or configuration parameters 
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/60Scheduling or organising the servicing of application requests, e.g. requests for application data transmissions using the analysis and optimisation of the required network resources
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/40Network security protocols
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02PCLIMATE CHANGE MITIGATION TECHNOLOGIES IN THE PRODUCTION OR PROCESSING OF GOODS
    • Y02P90/00Enabling technologies with a potential contribution to greenhouse gas [GHG] emissions mitigation
    • Y02P90/30Computing systems specially adapted for manufacturing

Definitions

  • the present application relates to the field of security technologies, and in particular, to a development kit authentication method and related equipment.
  • An electronic device may have different functions, such as a networking function, a video recording function, and a screen projection function.
  • the electronic device needs to include a development kit (ie, Kit) corresponding to the function.
  • Kit a development kit
  • the development package corresponding to the networking function is Hilink
  • the electronic device is connected to the network by calling Hilink.
  • the development kit corresponding to the video recording function is DV Kit
  • the electronic device records video by calling the DV Kit.
  • the development kit corresponding to the screencasting function is Cast Kit, and the electronic device can cast the screen by calling Cast Kit.
  • the authentication for development kits is generally a single authentication for a single development kit. If multiple development kits initiate authentication, a multi-threading method is required. Single-time authentication of a single development kit is relatively inefficient, and multi-threaded authentication of multiple development kits will increase the network burden, easily lead to errors, and increase logic complexity.
  • the embodiments of the present application disclose a development kit authentication method and related equipment, which can improve the authentication efficiency of the development kit and reduce the authentication overhead.
  • a first aspect of the present application discloses a development kit authentication method, which is applied to an electronic device, where the electronic device includes multiple development kits, and the method includes:
  • This application adopts the full authentication scheme for device-cloud authentication, that is, a single authentication result obtains the authentication results of multiple development kits, thereby improving authentication efficiency and reducing authentication traffic.
  • the method further includes:
  • the invocation request is sent.
  • the development kit is authenticated when the invocation of the development kit is predicted, and the authentication result can be obtained in advance. Obtain authentication results quickly and reduce user waiting time.
  • the method before the sending the full authentication request to the authentication cloud server, the method further includes:
  • the electronic device locally stores the authentication result of the specific development package, but the authentication result of the specific development package stored locally on the electronic device is unavailable, a full authentication request is sent to the authentication cloud server.
  • the locally stored authentication result By giving priority to judging whether the locally stored authentication result meets the requirements, the locally stored authentication result will be returned directly without obtaining it from the authentication cloud server, which can save development kit authentication time.
  • the unavailability of the authentication result of the specific development package stored locally by the electronic device includes:
  • the authentication result of the specific development kit stored locally by the electronic device is not the authentication result of the electronic device.
  • the authentication result of the specific development kit stored locally by the electronic device does not meet the format requirements;
  • the authentication result of the specific development package stored locally by the electronic device does not meet the timeliness requirement.
  • the electronic device includes a cache authentication queue and a full authentication queue, and after receiving a call request for a specific development package, sending a full authentication request to the authentication cloud server includes:
  • the specific development package is a newly added development package in the electronic device, adding the development package information of the specific development package to the tail of the full authentication queue;
  • the specific development package is not a newly added development package in the electronic device, determine whether the cache authentication queue contains the development package information of the specific development package;
  • the full authentication queue is not empty and not in a locked state, send a full authentication request to the authentication cloud server according to the development package information of the head of the full authentication queue, and send the development package of the head of the full authentication queue to the authentication cloud server.
  • the information is removed from the full authentication queue, and the full authentication queue is set to a locked state.
  • the cloud When the development package needs to be authenticated to the cloud, it is necessary to load the development package in the cache authentication queue into the full authentication queue, and determine whether the full authentication queue is in a locked state. Since the authentication cloud server performs full authentication for development, the cloud The delivered result includes the development package, that is, there is no need to perform device-cloud authentication again, and you can wait for the delivered result to be obtained directly. If the full authentication queue is not locked, add the development package information to the full authentication queue and set it to a locked state, so as to control the authentication traffic and prevent repeated authentication.
  • the method after receiving the full authentication result of the electronic device returned by the authentication cloud server, the method further includes:
  • the method after receiving the full authentication result of the electronic device returned by the authentication cloud server, the method further includes:
  • the full authentication result is stored locally.
  • the electronic device further includes a temporary queue, and after receiving the full authentication results of the electronic device returned by the authentication cloud server, the method further includes:
  • the development package information added to the cache authentication queue during the lock period of the full authentication queue is removed from the cache authentication queue and stored in the temporary queue.
  • the method further includes:
  • the authentication result of the development kit corresponding to the development kit information in the temporary queue is obtained from the full authentication result.
  • the method further includes:
  • the specific development package is loaded according to the authentication result of the specific development package.
  • a second aspect of the present application discloses a development kit authentication method, which is applied to an authentication cloud server, where the authentication cloud server records development kit information of an electronic device, and the method includes:
  • the method further includes:
  • the development package information of the specific development package is added to the recorded development package information of the electronic device.
  • a third aspect of the present application discloses a computer-readable storage medium, comprising computer instructions, which, when the computer instructions are executed on an electronic device, cause the electronic device to execute the development kit authentication method described in the first aspect.
  • a fourth aspect of the present application discloses an electronic device, the electronic device includes a processor and a memory, the memory is used for storing instructions, and the processor is used for invoking the instructions in the memory, so that the electronic device executes the following steps: The development kit authentication method described in the first aspect.
  • a fifth aspect of the present application discloses a chip system, which is applied to an electronic device; the chip system includes an interface circuit and a processor; the interface circuit and the processor are interconnected by lines; the interface circuit is used for receiving signals from a memory of the electronic device, A signal is sent to the processor, where the signal includes computer instructions stored in the memory; when the processor executes the computer instructions, the chip system executes the development kit authentication method described in the first aspect.
  • a sixth aspect of the present application discloses a computer program product that, when the computer program product runs on a computer, causes the computer to execute the development kit authentication method described in the first aspect.
  • a seventh aspect of the present application discloses an apparatus, which has the function of implementing the behavior of the electronic device in the method provided in the above-mentioned first aspect.
  • the functions can be implemented by hardware, or by executing corresponding software by hardware.
  • the hardware or software includes one or more modules corresponding to the above functions.
  • FIG. 1 is a schematic diagram of an application scenario of a development kit authentication method disclosed in an embodiment of the present application.
  • FIG. 2 is a schematic diagram of a system architecture of an electronic device to which the development kit authentication method disclosed in the embodiment of the present application is applied.
  • FIG. 3 is a schematic diagram of the comparison result of calling prediction without using the development kit and calling prediction using the development kit.
  • FIG. 4 is a flowchart of a development kit authentication method disclosed in an embodiment of the present application.
  • FIG. 5 is a flowchart of constructing an authentication queue according to the development kit authentication method disclosed in the embodiment of the present application.
  • Figure 6 is a schematic diagram of building an authentication queue.
  • FIG. 7 is a schematic structural diagram of an electronic device disclosed in an embodiment of the present application.
  • FIG. 1 is a schematic diagram of an application scenario of a development kit authentication method disclosed in an embodiment of the present application.
  • the development kit authentication method provided in this embodiment of the present application is applied to an IoT device 10 , such as smart home devices such as refrigerators, drones, washing machines, cameras, sweeping robots, and rice cookers.
  • IoT device 10 such as smart home devices such as refrigerators, drones, washing machines, cameras, sweeping robots, and rice cookers.
  • the authentication cloud server 12 records the development kit information of each development kit of the electronic device (for example, the Internet of Things device 10 in FIG. 1 ).
  • the development kit is authenticated, and the authentication result of each development kit (that is, the full authentication result) is returned.
  • the authentication cloud server 12 records the development kit information of the five development kits of the electronic device A.
  • the authentication cloud server 12 performs full authentication of the electronic device A, and obtains the authentication results of the five development kits of the electronic device A.
  • the authentication cloud server 12 records the development kit information of ten development kits of electronic device B
  • the authentication cloud server 12 performs full authentication of electronic device B, and obtains the authentication results of ten development kits of electronic device B.
  • the development kit authentication method provided by the embodiment of the present application performs full authentication of the development kit, improves the authentication efficiency of the development kit, and reduces the authentication overhead.
  • the authentication cloud server 12 may record the development kit information of the electronic device when the electronic device is shipped from the factory, indicating the development package included in the electronic device when the electronic device is shipped from the factory.
  • the authentication cloud server 12 may update the recorded development kit information of the electronic device according to the change of the development kit of the electronic device.
  • the electronic device (for example, the IoT device 10 in FIG. 1 ) can perform full authentication on the development package when invoking the development package.
  • the electronic device can predict whether the development kit invocation occurs, and when the development kit invocation is predicted to occur, the development kit is fully authenticated.
  • 1A and 1B show these two cases, respectively.
  • 1A shows that the development package is fully authenticated when the development package is invoked.
  • the user starts the device application (for example, starts the camera application) through the terminal 11 (for example, the mobile phone) to use the function (for example, the video recording function) provided by the Internet of Things device 10 (for example, the camera).
  • development kit. 102a the IoT device 10 sends a full authentication request to the authentication cloud server 12.
  • the authentication cloud server 12 performs full authentication on each development kit of the IoT device 10, and returns the authentication result of each development kit to the IoT device 10.
  • the IoT device 10 loads the development kit according to the authentication result, and loads the result Return to the terminal.
  • Device-cloud authentication refers to authentication from an electronic device (ie, a terminal) to an authentication cloud server.
  • 1B shows the full authentication of the development package when the invocation of the development package is predicted to occur.
  • the IoT device 10 predicts the development package invocation, and sends a full authentication request to the authentication cloud server 12 when it is predicted that the development package invocation occurs.
  • the authentication cloud server 12 performs full authentication on each development kit of the IoT device 10, and returns the authentication results of each development kit to the IoT device 10.
  • the user starts the device application through the terminal 11 to use the IoT device 10. Function.
  • the IoT device 10 performs loading according to the authentication result, and returns the loading result to the terminal.
  • the authentication result can be obtained in advance.
  • the IoT device 10 actually calls the development package (for example, when the device application is started)
  • the authentication result is directly used, and there is no need to pass the authentication.
  • the authentication cloud server 12 performs authentication, so that the user can quickly obtain the authentication result and reduce the waiting time of the user. For example, the user shown in 1A in FIG. 1 obtains a loading result of 0 delay.
  • development kit authentication method provided in the embodiments of the present application may be applied to other electronic devices, such as terminals such as mobile phones and tablets.
  • the user can perform operations on the electronic device to trigger development kit authentication for the electronic device.
  • FIG. 2 is a schematic diagram of a system architecture of an electronic device to which the development kit authentication method disclosed in the embodiment of the present application is applied.
  • FIG. 2 takes a camera as an example for description.
  • the camera 20 includes a development kit 201 and a development kit authentication device 202 .
  • the development kit 201 of the camera 20 includes DV Kit (corresponding to the video recording function), Camera Kit (corresponding to the photographing function), and the like.
  • the development kit authentication device 202 includes a user behavior model module 2021 , a development kit authentication module 2022 and a development kit loading module 2023 .
  • the user behavior model module 2021 is configured to collect user behavior information and first environment information after the camera 20 is turned on, and construct a user behavior model according to the user behavior information and the first environment information.
  • the user behavior model module 2021 collects real-time second environment information, and according to the second environment information, uses the user behavior model to predict whether the camera 20 has a development package call.
  • the development package authentication module 2021 is configured to send a full authentication request to the authentication cloud server when it is predicted that the camera 20 has a development package invocation or receives a development package invocation instruction, so that the authentication cloud server authenticates each development package of the camera 20 .
  • the development package loading module 2023 is configured to load the development package according to the authentication result of the development package. If the development package is authenticated and the development package is loaded successfully, the user can use the functions corresponding to the development package normally. If the development package fails to pass the authentication, the loading of the development package fails, and the user cannot use the functions corresponding to the development package.
  • the following describes the specific method for the user behavior model module 2021 to construct the user behavior model and predict the invocation of the development kit.
  • the user behavior model module 2021 collects user behavior information of the camera 20 .
  • Y 1 corresponds to DV Kit
  • Y 2 corresponds to Hilink
  • Each Yi can correspond to one development kit or multiple development kits.
  • Y 3 corresponds to DV Kit and Hilink
  • environmental information ie, first environmental information
  • the user behavior model module 2021 establishes a functional relationship between the user behavior information and the first environment information.
  • the functional relationship between the user behavior information and the first environment information can be expressed as:
  • the user behavior model module 2021 collects multiple sets of data to obtain multiple expressions:
  • the ⁇ matrix (ie ⁇ i0 , ⁇ i1 , ⁇ i2 , . . . , ⁇ in ) is the parameter of the user behavior model.
  • the user behavior model module 2021 collects real-time second environment information according to the real-time environment where the electronic device (such as the camera 20 shown in FIG. 2 ) is located, and obtains the predicted value of the user behavior information according to the second environment information ( i.e. the predicted value of Yi).
  • the predicted value of Yi i is within the first value range (for example, 0.8 to 1), it means that a development package call occurs, and when the predicted value of Yi i is within the second value range (for example, 0 to 0.2), it means that no A development package call occurred. If it is predicted that a development package call will occur (for example, the predicted value of Yi is 0.9 ), the development package authentication can be performed in advance, so as to reduce the delay in obtaining the authentication result and improve the user experience.
  • Y 1 corresponds to DV Kit
  • the predicted value of Y 1 is calculated to be 0.9, which means that a DV Kit call is predicted to occur.
  • the cost function of the user behavior model can be established, and the ⁇ matrix can be obtained by optimizing and solving the cost function of the user behavior model.
  • the mean square error function can be used as the cost function of the user behavior model.
  • the gradient descent method can be used to optimize the cost function of the user behavior model.
  • the user behavior model can be revised to obtain the revised ⁇ matrix.
  • FIG. 3 is a schematic diagram of the comparison result of not using the development kit call prediction (ie before optimization) and using the development kit call prediction (ie after optimization).
  • FIG. 4 is a flowchart of a development kit authentication method disclosed in an embodiment of the present application. According to different requirements, the order of the steps in this flowchart can be changed, and some steps can be omitted.
  • the development kit authentication method disclosed in the embodiments of the present application is applied to an electronic device, such as the camera 20 in FIG. 2 .
  • an electronic device such as the camera 20 in FIG. 2 .
  • the following describes the specific implementation process of the present application by taking the camera 20 shown in FIG. 2 as an example.
  • the user behavior model module collects user behavior information and first environment information of the camera.
  • the user behavior information represents actions performed by the user with respect to the electronic device (eg, the camera) (eg, the user activates the camera), and corresponds to a development kit (eg, DV Kit) specific to the electronic device.
  • the electronic device eg, the camera
  • DV Kit development kit
  • the first environmental information is used to represent the environmental conditions when the user performs the action.
  • the first environment information includes the time when the user behavior occurs (for example, the time when the development package is called), the temperature when the user behavior occurs (for example, the temperature when the development package is called), and the light when the user behavior occurs. Intensity (such as the light intensity when calling the development package).
  • the user behavior model module establishes a user behavior model according to the user behavior information and the first environment information.
  • the user behavior model module performs normalization processing on the user behavior information when establishing the user behavior model according to the user behavior information and the first environment information.
  • the user behavior model module collects real-time second environment information of the camera.
  • the second environment information is the same type of information as the first environment information.
  • the user behavior model module uses the user behavior model to predict the invocation of the development kit according to the second environment information.
  • the camera uses a user behavior model to predict whether a development kit call (such as a DV kit call) will occur based on real-time time, temperature, and light intensity.
  • a development kit call such as a DV kit call
  • the user behavior model module sends an invocation request for the specific development kit to the development kit authentication module.
  • the development kit authentication module determines whether there is an available authentication result of the specific development package locally stored.
  • the development kit authentication module can store the authentication result returned by the authentication cloud server each time locally, for example, in a local cache. Correspondingly, if a call request for a specific development kit is received, the development kit authentication module first determines whether the authentication result of the specific development kit is available locally.
  • the development package authentication module determines whether the difference between the current time and the time when the call request for a specific development package was last received is less than or equal to a preset value Time threshold (eg one minute). If the difference between the current time and the time when the call request for the specific development package was last received is less than or equal to the preset time threshold, the process ends. If the difference between the current time and the time when the call request for the specific development kit was last received is greater than the preset time threshold, the step of judging whether the authentication result of the specific development kit is stored locally is performed.
  • a preset value Time threshold eg one minute
  • Determining whether the authentication result of the specific development package available locally includes: judging whether the authentication result of the specific development package is stored locally, and if the authentication result of the specific development package is stored locally, judging whether the authentication result of the specific development package stored locally is available. .
  • judging whether the locally stored authentication result of a specific development package is available includes:
  • the authentication result of the specific development package stored locally is not the authentication result of the electronic device (such as a camera), or if the authentication result of the specific development package stored locally does not meet the format requirements, or if the authentication result of the specific development package stored locally does not meet the requirements If the timeliness requirement is met, it is determined that the locally stored authentication result of a specific development package is not available.
  • the authentication cloud server may return incorrect authentication results, such as the authentication results of other devices, or the authentication results in the wrong format. If the locally stored authentication result of the specific development kit is not the authentication result of the electronic device (eg, camera), or if the locally stored authentication result of the specific development kit is not in a preset format, it is determined that the authentication result is unavailable.
  • the electronic device eg, camera
  • a validity period (such as 1 day) can be set for the authentication result returned by the authentication cloud server. If the authentication result of the package exceeds the validity period, the authentication result is unavailable.
  • the development package authentication module obtains the authentication result of the specific development package stored locally.
  • the development kit authentication module sends a full authentication request to the authentication cloud server, and the full authentication request carries the development kit information of the specific development kit.
  • the development package information of a specific development package includes the development package name, the development package version number, the identification of the device to which the development package belongs, and the like.
  • the device ID to which the development package belongs is used to identify the device (such as a camera) where the development package is located.
  • the authentication cloud server performs full authentication on the camera according to the recorded development kit information of the camera and the development kit information of the specific development kit carried in the full authentication request, and obtains the full authentication result of the camera.
  • the full authentication result returned by the authentication cloud server includes the authentication result of the development kit corresponding to the recorded development kit information of the camera, and also includes the authentication result of the specific development kit.
  • the authentication cloud server determines whether the development kit information of the specific development kit carried in the full authentication request is included in the recorded development kit information of the camera. In the package information, the development package corresponding to the recorded development package information of the camera is authenticated. If the development kit information of the specific development kit carried in the full authentication request is not included in the recorded development kit information of the camera, the development kit and the specific development kit corresponding to the recorded development kit information of the camera are authenticated.
  • the authentication cloud server also adds the development package information of the specific development package to the development package information of the recorded electronic device, so as to authenticate the specific development package in the subsequent full-scale authentication.
  • the authentication cloud server returns the full authentication result to the camera.
  • the development kit authentication module After receiving the full authentication result returned by the authentication cloud server, the development kit authentication module stores the full authentication result locally.
  • the development kit authentication module transmits the authentication result of the specific development kit to the development kit loading module.
  • the development kit authentication module passes the authentication result of the camera's DV Kit to the development kit loading module.
  • the development package authentication module transmits the obtained authentication result of the specific development package stored locally to the development package loading module. If it is judged that the authentication result of the specific development kit is not available locally, and the full authentication result of the camera is received, the development kit authentication module obtains the authentication result of the specific development kit from the full authentication result, and obtains the specific development kit from the full authentication result. The authentication result of the development kit is passed to the development kit loading module.
  • the user sends a request for invoking a specific development package to the camera through the terminal.
  • the development package loading module is loaded according to the authentication result of the specific development package.
  • the camera loads the specific development package successfully, and the user can use the functions corresponding to the specific development package. If the specific development package fails to pass the certification, the camera fails to load the specific development package, and the user cannot use the functions corresponding to the specific development package.
  • the development kit loading module returns the loading result to the terminal.
  • the embodiment shown in FIG. 4 predicts the invocation of the development kit, and performs full authentication of the development kit when it is predicted that the invocation of the development kit occurs.
  • the invocation of the development package may not be predicted, and full authentication of the development package is performed when a request for invocation of a specific development package sent by the user is received.
  • 406-411 and 413-414 are executed.
  • the development kit authentication module preferentially judges whether the locally stored authentication result meets the requirements, and directly returns the locally stored authentication result if the requirement is met, without obtaining it from the authentication cloud server, saving authentication time. If device-cloud authentication is required, the device-cloud authentication adopts a full-scale authentication scheme, that is, a single authentication result will obtain the authentication results of multiple development kits, thereby improving authentication efficiency and reducing authentication traffic.
  • the development kit authentication module performs full authentication based on an authentication queue.
  • Authentication queues include cache authentication queues, full authentication queues, and temporary queues.
  • FIG. 5 is a flowchart of constructing an authentication queue according to the development kit authentication method disclosed in an embodiment of the present application, which will be described below with reference to the schematic diagram of constructing an authentication queue shown in FIG. 6 . According to different requirements, the order of the steps in this flowchart can be changed, and some steps can be omitted.
  • the development package authentication module determines whether the specific development package is a newly added development package in the electronic device (eg, the camera 20 in FIG. 2 ).
  • the development package authentication module adds the development package information of the specific development package to the tail of the full authentication queue.
  • the development package authentication module determines whether the development package information of the specific development package is included in the cache authentication queue.
  • the development package authentication module adds the development package information of the specific development package to the tail of the cache authentication queue.
  • the development package authentication module sends the development package information of the queue head of the cached authentication queue to the full authentication queue.
  • the locked state indicates that the electronic device currently has a development package to initiate authentication to the authentication cloud server.
  • the unlocked state indicates that the electronic device currently has no development kit to initiate authentication to the authentication cloud server.
  • the development package authentication module sends a full authentication request to the authentication cloud server according to the development package information of the head of the full authentication queue, and removes the development package information of the head of the full authentication queue.
  • the full authentication queue is set to the locked state.
  • the development kit authentication module sets the full authentication queue to an unlocked state.
  • the development kit authentication module stores the full authentication results returned by the authentication cloud server locally.
  • the development kit authentication module removes the development kit information added to the cache authentication queue during the lock period of the full authentication queue out of the cache authentication queue and stores it in the temporary queue.
  • the development kit authentication module obtains the authentication result of the development kit corresponding to the development kit information in the temporary queue from the full authentication result, and returns the authentication result of the development kit corresponding to the development kit information in the temporary queue to the development kit loading module.
  • the development package corresponding to the development package information in the temporary queue is the development package that applies for authentication during the lock-in period of the full authentication queue. Therefore, according to the development package information in the temporary queue, the development package authentication module can return the authentication result of each development package that applies for certification during the lock-in period of the full authentication queue to the development package loading module, so that multiple development packages can be obtained through one-time device-cloud authentication. respective certification results.
  • the cloud When the development package needs to be authenticated to the cloud, it is necessary to load the development package in the cache authentication queue into the full authentication queue, and determine whether the full authentication queue is in a locked state. Since the authentication cloud server performs full authentication for development, the cloud The delivered result includes the development package, that is, there is no need to perform device-cloud authentication again, and you can wait for the delivered result to be obtained directly. If the full authentication queue is not locked, add the development package information to the full authentication queue and set it to a locked state, so as to control the authentication traffic and prevent repeated authentication.
  • FIG. 7 is a schematic structural diagram of an electronic device disclosed in an embodiment of the present application.
  • the electronic device 70 may include: a radio frequency (RF) circuit 701 , a memory 702 , an input unit 703 , a display unit 704 , a sensor 705 , an audio circuit 706 , a Wi-Fi module 707 , a processor 708 and Power supply 709 and other components.
  • RF radio frequency
  • FIG. 5 does not constitute a limitation on the service flow aggregation and forwarding node, and may include more or less components than those shown in the figure, or combine some components, or arrange different components .
  • the RF circuit 701 can be used to send and receive information or to receive and transmit signals during a call. In particular, after receiving the downlink information of the base station, it is transferred to the processor 708 for processing; in addition, it sends the uplink data to the base station.
  • the RF circuit 701 includes, but is not limited to, an antenna, at least one amplifier, a transceiver, a coupler, a Low Noise Amplifier (LNA), a duplexer, and the like.
  • LNA Low Noise Amplifier
  • the memory 702 can be used to store software programs and modules, and the processor 708 executes various functional applications and data processing of the electronic device by running the software programs and modules stored in the memory 702 .
  • the memory 702 may mainly include a stored program area and a stored data area, wherein the stored program area may store an operating system, an application program (such as a sound playback function, an image playback function, etc.) required for at least one function, and the like; Data created by the use of electronic equipment (such as audio data, phone book, etc.), etc.
  • memory 702 may include high-speed random access memory, and may also include non-volatile memory, such as at least one magnetic disk storage device, flash memory device, or other volatile solid state storage device.
  • the input unit 703 may be used to receive input numerical or character information, and generate key signal input related to user settings and function control of the electronic device.
  • the input unit 703 may include a touch panel 7031 and other input devices 7032 .
  • the touch panel 7031 also known as the touch screen, collects the user's touch operations on or near it (such as the user using a finger, a stylus, etc., any suitable object or accessory on or near the touch panel 7031) operation), and drive the corresponding connection device according to the preset program.
  • the touch panel 7031 may include two parts, a touch detection device and a touch controller.
  • the touch detection device detects the user's touch orientation, detects the signal brought by the touch operation, and transmits the signal to the touch controller; the touch controller receives the touch information from the touch detection device, converts it into contact coordinates, and then sends it to the touch controller.
  • the touch panel 7031 can be implemented in various types such as resistive, capacitive, infrared, and surface acoustic waves.
  • the input unit 703 may also include other input devices 7032 .
  • other input devices 7032 may include, but are not limited to, one or more of physical keyboards, function keys (such as volume control keys, switch keys, etc.), trackballs, mice, joysticks, and the like.
  • the display unit 704 may be used to display information input by the user or information provided to the user and various menus of the electronic device.
  • the display unit 704 may include a display panel 7041, and optionally, the display panel 7041 may be configured in the form of a liquid crystal display (Liquid Crystal Display, LCD), an organic light-emitting diode (Organic Light-Emitting Diode, OLED), or the like.
  • the touch panel 7031 can cover the display panel 7041. When the touch panel 7031 detects a touch operation on or near it, it transmits it to the processor 708 to determine the type of the touch event, and then the processor 708 determines the type of the touch event according to the touch event. Type provides corresponding visual output on display panel 7041.
  • the touch panel 7031 and the display panel 7041 are used as two independent components to realize the input and output functions of the electronic device, but in some embodiments, the touch panel 7031 and the display panel 7041 may be integrated And realize the input and output functions of electronic equipment.
  • the electronic device may also include at least one sensor 705, such as light sensors, motion sensors, and other sensors.
  • the light sensor may include an ambient light sensor and a proximity sensor, wherein the ambient light sensor may adjust the brightness of the display panel 7041 according to the brightness of the ambient light, and the proximity sensor may turn off the display panel 7041 and the display panel 7041 when the electronic device is moved to the ear. / or backlight.
  • the accelerometer sensor can detect the magnitude of acceleration in all directions (generally three axes), and can detect the magnitude and direction of gravity when stationary, and can be used for applications that recognize the posture of electronic devices (such as horizontal and vertical screen switching, related games, magnetometer attitude calibration), vibration recognition related functions (such as pedometer, tapping), etc.; in addition, electronic devices can also be equipped with other sensors such as gyroscopes, barometers, hygrometers, thermometers, infrared sensors, etc. This will not be repeated here.
  • Audio circuitry 706, speakers 7061, and microphones 7062 may provide an audio interface between the user and the electronic device.
  • the audio circuit 706 can convert the received audio data into an electrical signal, and transmit it to the speaker 7061, and the speaker 7061 converts it into a sound signal for output; on the other hand, the microphone 7062 converts the collected sound signal into an electrical signal, which is converted by the audio circuit 706. After receiving, it is converted into audio data, and then the audio data is output to the processor 708 for processing, and then sent to another electronic device through the RF circuit 701, or the audio data is output to the memory 702 for further processing.
  • Wi-Fi is a short-distance wireless transmission technology, and the electronic device can help users to send and receive emails, browse web pages, and access streaming media through the Wi-Fi module 707, which provides users with wireless broadband Internet access.
  • FIG. 5 shows the Wi-Fi module 707, it can be understood that it is not a necessary component of the electronic device, and can be completely omitted as required and within the scope of not changing the essence of the invention.
  • the processor 708 is the control center of the electronic device, using various interfaces and lines to connect various parts of the entire electronic device, by running or executing the software programs and/or modules stored in the memory 702, and calling the data stored in the memory 702. , perform various functions of electronic equipment and process data, so as to monitor electronic equipment as a whole.
  • the processor 708 may include one or more processing units; preferably, the processor 708 may integrate an application processor and a modem, wherein the application processor mainly handles the operating system, user interface, and application programs, and the modem mainly handles Wireless communication. It can be understood that the above-mentioned modulation and demodulation processor may not be integrated into the processor 708 .
  • the electronic device also includes a power supply 709 (such as a battery) for supplying power to various components.
  • a power supply 709 (such as a battery) for supplying power to various components.
  • the power supply can be logically connected to the processor 708 through a power management system, so as to manage charging, discharging, and power consumption management functions through the power management system. .
  • the electronic device may further include a camera, a Bluetooth module, and the like, which will not be repeated here.
  • the electronic device described in FIG. 7 may be used to implement part or all of the processes in the method embodiment described in FIG. 4 of the present application, and reference may be made to the related descriptions in the embodiment described in FIG. 4 above, which will not be repeated here.
  • This embodiment also provides a computer storage medium, where computer instructions are stored in the computer storage medium.
  • the electronic device executes the above-mentioned relevant method steps to realize the blockchain verification in the above-mentioned embodiments. sign method.
  • This embodiment also provides a computer program product, which, when the computer program product runs on the electronic device, causes the electronic device to execute the above-mentioned relevant steps, so as to realize the blockchain signature verification method in the above-mentioned embodiment.
  • the embodiments of the present application also provide an apparatus, which may specifically be a chip, a component or a module, and the apparatus may include a connected processor and a memory; wherein, the memory is used for storing computer execution instructions, and when the apparatus is running, The processor can execute the computer-executed instructions stored in the memory, so that the chip executes the blockchain signature verification method in the above method embodiments.
  • the electronic device, computer storage medium, computer program product or chip provided in this embodiment are all used to execute the corresponding method provided above. Therefore, for the beneficial effects that can be achieved, reference can be made to the corresponding provided above. The beneficial effects in the method will not be repeated here.
  • the disclosed apparatus and method may be implemented in other manners.
  • the device embodiments described above are only illustrative.
  • the division of the modules or units is only a logical function division. In actual implementation, there may be other division methods.
  • multiple units or components may be combined. Or it may be integrated into another device, or some features may be omitted, or not implemented.
  • the shown or discussed mutual coupling or direct coupling or communication connection may be through some interfaces, indirect coupling or communication connection of devices or units, and may be in electrical, mechanical or other forms.
  • the units described as separate components may or may not be physically separated, and components shown as units may be one physical unit or multiple physical units, that is, may be located in one place, or may be distributed to multiple different places. Some or all of the units may be selected according to actual needs to achieve the purpose of the solution in this embodiment.
  • each functional unit in each embodiment of the present application may be integrated into one processing unit, or each unit may exist physically alone, or two or more units may be integrated into one unit.
  • the above-mentioned integrated units may be implemented in the form of hardware, or may be implemented in the form of software functional units.
  • the integrated unit if implemented in the form of a software functional unit and sold or used as an independent product, may be stored in a readable storage medium.
  • a readable storage medium including several instructions to make a device (may be a single chip microcomputer, a chip, etc.) or a processor (processor) to execute all or part of the steps of the methods described in the various embodiments of the present application.
  • the aforementioned storage medium includes: U disk, mobile hard disk, read-only memory (Read-Only Memory, ROM), random access memory (Random Access Memory, RAM), magnetic disk or optical disk and other media that can store program codes .

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Computing Systems (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)
  • Stored Programmes (AREA)
  • Telephonic Communication Services (AREA)

Abstract

一种开发包认证方法及相关设备,所述方法应用于包括多个开发包的电子设备,所述方法包括:在接收到针对特定开发包的调用请求后,向认证云服务器发送全量认证请求;接收认证云服务器返回的电子设备的全量认证结果;从全量认证结果中获取特定开发包的认证结果。所述方法可以提高开发包的认证效率,降低认证开销。

Description

开发包认证方法及相关设备
本申请要求于2021年2月9日提交中国专利局、申请号为202110182980.1、发明名称为“开发包认证方法及相关设备”的中国专利申请的优先权,其全部内容通过引用结合在本申请中。
技术领域
本申请涉及安全技术领域,尤其涉及一种开发包认证方法及相关设备。
背景技术
电子设备可以具有不同的功能,例如联网功能、录像功能、投屏功能,为了实现这些功能,电子设备需要包含与功能对应的开发包(即Kit)。例如,联网功能对应的开发包为Hilink,电子设备通过调用Hilink进行联网。录像功能对应的开发包为DV Kit,电子设备通过调用DV Kit进行录像。投屏功能对应的开发包为Cast Kit,电子设备通过调用Cast Kit进行投屏。
通常,为了保证电子设备的安全,防止使用仿冒的开发包或非法设备越权使用开发包,需要通过认证云服务器对电子设备上的开发包进行认证。目前,针对开发包的认证一般是单次认证单个开发包,如果是多个开发包发起认证,需要采用多线程方式。单次认证单个开发包认证效率比较低,多线程认证多个开发包会增加网络负担,也容易导致出错,增加逻辑复杂度。
发明内容
本申请实施例公开了一种开发包认证方法及相关设备,能够提高开发包的认证效率,降低认证开销。
本申请第一方面公开了一种开发包认证方法,应用于电子设备,所述电子设备包括多个开发包,所述方法包括:
在接收到针对特定开发包的调用请求后,向认证云服务器发送全量认证请求;
接收所述认证云服务器返回的所述电子设备的全量认证结果;
从所述全量认证结果中获取所述特定开发包的认证结果。
本申请采用全量认证方案进行端云认证,即单次认证结果得到多个开发包的认证结果,从而提高认证效率,降低认证流量。
在一些可选的实施方式中,所述方法还包括:
收集所述特定开发包对应的用户行为信息和第一环境信息;
根据所述用户行为信息和所述第一环境信息建立所述特定开发包对应的用户行为模型;
采集所述电子设备实时的第二环境信息;
根据所述第二环境信息,利用所述用户行为模型预测是否发生所述特定开发包的开发包调用;
若预测到发生所述特定开发包的开发包调用,发送所述调用请求。
通过预测开发包调用,在预测到发生开发包调用时进行开发包认证,可以提前得到认证结果,当电子设备实际调用开发包时直接使用认证结果,无需再通过认证云服务器进行认证,使用户可以快速获得认证结果,减少用户等待时间。
在一些可选的实施方式中,所述向认证云服务器发送全量认证请求之前,所述方法还包括:
判断所述电子设备本地是否存储有所述特定开发包的认证结果;
若所述电子设备本地未存储有所述特定开发包的认证结果,向所述认证云服务器发送全量认证请求;或者
若所述电子设备本地存储有所述特定开发包的认证结果,但所述电子设备本地存储的所述特定开发包的认证结果不可用,向所述认证云服务器发送全量认证请求。
通过优先判断本地存储的认证结果是否满足要求,满足要求则直接返回本地存储的认证结果,无需从认证云服务器获取,可以节省开发包认证时间。
在一些可选的实施方式中,所述电子设备本地存储的所述特定开发包的认证结果不可用包括:
所述电子设备本地存储的所述特定开发包的认证结果不是所述电子设备的认证结果;或者
所述电子设备本地存储的所述特定开发包的认证结果不满足格式要求;或者
所述电子设备本地存储的所述特定开发包的认证结果不满足时效性要求。
在一些可选的实施方式中,所述电子设备包括缓存认证队列和全量认证队列,所述在接收到针对特定开发包的调用请求后,向认证云服务器发送全量认证请求包括:
接收到所述调用请求后,判断所述特定开发包是否是所述电子设备中新增的开发包;
若所述特定开发包是所述电子设备中新增的开发包,将所述特定开发包的开发包信息加入所述全量认证队列的队尾;
若所述特定开发包不是所述电子设备中新增的开发包,判断所述缓存认证队列中是否包含所述特定开发包的开发包信息;
若所述缓存认证队列中不包含所述特定开发包的开发包信息,将所述特定开发包的开发包信息加入所述缓存认证队列的队尾;
若所述全量认证队列为解锁状态,将所述缓存认证队列的队头的开发包信息发送到所述全量认证队列;
若所述全量认证队列不为空并且不是锁定状态,根据所述全量认证队列的队头的开发包信息向所述认证云服务器发送全量认证请求,将所述全量认证队列的队头的开发包信息移出所述全量认证队列,将所述全量认证队列设置为锁定状态。
当开发包需要进行端云认证时,需要将缓存认证队列中的队头开发包加载到全量认 证队列,并判断全量认证队列是否为锁定状态,由于认证云服务器对开发进行全量认证,可以保证云端下发的结果包含该开发包,即无需再次进行端云认证,可以等待下发的结果直接获取即可。如果全量认证队列未锁定,则将该开发包信息加入到全量认证队列并设置为锁定状态,以便控制认证的流量,防止多次重复认证。
在一些可选的实施方式中,所述接收所述认证云服务器返回的所述电子设备的全量认证结果后,所述方法还包括:
将所述全量认证队列设置为解锁状态。
在一些可选的实施方式中,所述接收所述认证云服务器返回的所述电子设备的全量认证结果后,所述方法还包括:
将所述全量认证结果存储到本地。
在一些可选的实施方式中,所述电子设备还包括临时队列,所述接收所述认证云服务器返回的所述电子设备的全量认证结果后,所述方法还包括:
将在所述全量认证队列锁定期间加入到所述缓存认证队列的开发包信息移出所述缓存认证队列并存储到所述临时队列。
在一些可选的实施方式中,所述方法还包括:
从所述全量认证结果中获取所述临时队列中的开发包信息对应的开发包的认证结果。
在一些可选的实施方式中,所述方法还包括:
根据所述特定开发包的认证结果对所述特定开发包进行加载。
本申请第二方面公开了一种开发包认证方法,应用于认证云服务器,所述认证云服务器记录有电子设备的开发包信息,所述方法包括:
接收到所述电子设备针对特定开发包的全量认证请求后,根据记录的所述电子设备的开发包信息对所述电子设备的开发包进行全量认证,得到所述电子设备的全量认证结果;
将所述全量认证结果返回所述电子设备。
在一些可选的实施方式中,所述方法还包括:
若所述特定开发包是所述电子设备中新增的开发包,在记录的所述电子设备的开发包信息中增加所述特定开发包的开发包信息。
本申请第三方面公开了一种计算机可读存储介质,包括计算机指令,当所述计算机指令在电子设备上运行时,使得所述电子设备执行如第一方面所述的开发包认证方法。
本申请第四方面公开了一种电子设备,所述电子设备包括处理器和存储器,所述存储器用于存储指令,所述处理器用于调用所述存储器中的指令,使得所述电子设备执行如第一方面所述的开发包认证方法。
本申请第五方面公开了一种芯片系统,该芯片系统应用于电子设备;芯片系统包括接口电路和处理器;接口电路和处理器通过线路互联;接口电路用于从电子设备的存储器接收信号,并向处理器发送信号,信号包括存储器中存储的计算机指令;当处理器执行该计算机指令时,芯片系统执行如第一方面所述的开发包认证方法。
本申请第六方面公开了一种计算机程序产品,当计算机程序产品在计算机上运行时,使得计算机执行如第一方面所述的开发包认证方法。
本申请第七方面公开了一种装置,该装置具有实现上述第一方面所提供的方法中电子设备行为的功能。功能可以通过硬件实现,也可以通过硬件执行相应的软件实现。硬 件或软件包括一个或多个与上述功能相对应的模块。
应当理解地,上述提供的第三方面所述的计算机可读存储介质,第四方面所述的电子设备,第五方面所述的芯片系统、第六方面所述的计算机程序产品,及第七方面所述的装置均与上述第一方面的方法对应,因此,其所能达到的有益效果可参考上文所提供的对应的方法中的有益效果,此处不再赘述。
附图说明
图1是本申请实施例公开的开发包认证方法的应用场景示意图。
图2是应用本申请实施例公开的开发包认证方法的电子设备的系统架构示意图。
图3是未采用开发包调用预测与采用开发包调用预测的比较结果示意图。
图4是本申请实施例公开的开发包认证方法的流程图。
图5是根据本申请实施例公开的开发包认证方法构建认证队列的流程图。
图6构建认证队列的示意图。
图7是本申请实施例公开的一种电子设备的结构示意图。
具体实施方式
为了便于理解,示例性的给出了部分与本申请实施例相关概念的说明以供参考。
需要说明的是,本申请中“至少一个”是指一个或者多个,“多个”是指两个或多于两个。“和/或”,描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B可以表示:单独存在A,同时存在A和B,单独存在B的情况,其中A,B可以是单数或者复数。本申请的说明书和权利要求书及附图中的术语“第一”、“第二”、“第三”、“第四”等(如果存在)是用于区别类似的对象,而不是用于描述特定的顺序或先后次序。
为了更好地理解本申请实施例公开的开发包认证方法及相关设备,下面首先对本申请开发包认证方法的应用场景进行描述。
图1是本申请实施例公开的开发包认证方法的应用场景示意图。
参见图1所示,本申请实施例提供的开发包认证方法应用于物联网设备10,例如电冰箱、无人机、洗衣机、摄像头、扫地机器人、电饭煲等智能家居设备。
认证云服务器12记录电子设备(例如图1中的物联网设备10)的各个开发包的开发包信息,认证云服务器12每次对电子设备进行全量认证时,根据开发包信息对电子设备的各个开发包进行认证,返回各个开发包的认证结果(即全量认证结果)。例如,认证云服务器12记录有电子设备A的五个开发包的开发包信息,认证云服务器12对电子设备A进行全量认证,得到电子设备A的五个开发包的认证结果。又如,认证云服务器12记录有电子设备B的十个开发包的开发包信息,则认证云服务器12对电子设备B进行全量认证,得到电子设备B的十个开发包的认证结果。本申请实施例提供的开发包认证方法对开发包进行全量认证,提高了开发包的认证效率,降低了认证开销。
认证云服务器12可以在电子设备出厂时记录电子设备出厂时的开发包信息,表示电子设备出厂时包含的开发包。认证云服务器12可以根据电子设备的开发包的变化对记录 的电子设备的开发包信息进行更新。
电子设备(例如图1中的物联网设备10)可以在调用开发包时对开发包进行全量认证。或者,电子设备可以预测是否发生开发包调用,当预测到发生开发包调用时对开发包进行全量认证。1A和1B分别展示了这两种情况。
图1中,1A展示了在调用开发包时对开发包进行全量认证。101a,用户通过终端11(例如手机)启动设备应用(例如启动摄像头应用),以使用物联网设备10(例如摄像头)提供的功能(例如录像功能),此时,设备应用调用物联网设备10的开发包。102a,物联网设备10向认证云服务器12发送全量认证请求。103a,认证云服务器12对物联网设备10的各个开发包进行全量认证,将各个开发包的认证结果返回物联网设备10。104a,物联网设备10根据认证结果对开发包进行加载,将加载结果返回终端。
若在调用开发包时进行端云认证,由于端云认证需要一定时间,用户得到加载结果会有一定的延时,例如1A所示用户得到加载结果有3秒以上延时。端云认证是指从电子设备(即终端)到认证云服务器进行认证。
图1中,1B展示了在预测到发生开发包调用时对开发包进行全量认证。101b,物联网设备10对开发包调用进行预测,当预测到发生开发包调用时,向认证云服务器12发送全量认证请求。102b,认证云服务器12对物联网设备10的各个开发包进行全量认证,将各个开发包的认证结果返回物联网设备10。103b,用户通过终端11启动设备应用,以使用物联网设备10提供的功能。104b,物联网设备10根据认证结果进行加载,将加载结果返回终端。
若在预测到发生开发包调用时进行开发包认证(即预认证),可以提前得到认证结果,当物联网设备10实际调用开发包时(例如启动设备应用时)直接使用认证结果,无需再通过认证云服务器12进行认证,使用户可以快速获得认证结果,减少用户等待时间。例如,图1中1A所示用户得到加载结果为0延时。
应当理解,本申请实施例提供的开发包认证方法可以应用于其他的电子设备,例如手机、平板等终端。用户可以在电子设备上进行操作,触发对电子设备进行开发包认证。
图2是应用本申请实施例公开的开发包认证方法的电子设备的系统架构示意图。图2以摄像头为例进行说明。
摄像头20包括开发包201和开发包认证装置202。摄像头20的开发包201包括DV Kit(对应于录像功能)、Camera Kit(对应于拍照功能)等。开发包认证装置202包括用户行为模型模块2021、开发包认证模块2022和开发包加载模块2023。
用户行为模型模块2021用于在摄像头20开机后,收集用户行为信息和第一环境信息,根据用户行为信息和第一环境信息构建用户行为模型。用户行为模型模块2021采集实时的第二环境信息,根据第二环境信息,利用用户行为模型预测摄像头20是否发生开发包调用。
开发包认证模块2021用于当预测到摄像头20发生开发包调用或接收到开发包调用指令时,向认证云服务器发送全量认证请求,使认证云服务器对摄像头20的各个开发包进行认证。
开发包加载模块2023用于根据开发包的认证结果对开发包进行加载。若开发包通过认证,加载开发包成功,用户可以正常使用开发包对应的功能。若开发包未通过认证,加 载开发包失败,用户不能使用开发包对应的功能。
以下说明用户行为模型模块2021构建用户行为模型及预测开发包调用的具体方法。
在构建用户行为模型时,用户行为模型模块2021收集摄像头20的用户行为信息。在本申请提供的一个实施例中,为了保证用户行为模型可以在各种设备上运行,用户行为模型模块2021将用户行为信息进行归一化处理,归一化处理后的用户行为信息可以表示为Y i,i=1,2,3,……,表示是否发生开发包调用。例如,Y i=0表示发生未开发包调用,Y i=1表示发生开发包调用。每个Y i对应一定的开发包。例如,Y 1对应DV Kit,Y 1=0表示未调用DV Kit,Y 1=1表示调用DV Kit;Y 2对应Hilink,Y 2=0表示未调用Hilink,Y 2=1表示调用Hilink。每个Y i可以对应一个开发包,也可以对应多个开发包,例如,Y 3对应DV Kit和Hilink,Y 3=0表示未调用DV Kit和Hilink,Y 3=1表示调用DV Kit和Hilink。
在构建用户行为模型时,用户行为模型模块2021还收集影响用户行为的环境信息(即第一环境信息),例如用户行为发生的时间、用户行为发生时的温度、用户行为发生时的光强等,环境信息可以记为x j,j=1,2,3,……,n,n为环境信息的数量。
用户行为模型模块2021建立用户行为信息与第一环境信息的函数关系式。用户行为信息与第一环境信息的函数关系式可以表示为:
Y i=β i0i1x 1i2x 2i3x 3+......+β inx n
针对每个Y i,用户行为模型模块2021收集多组数据,得到多个表达式:
Figure PCTCN2021138558-appb-000001
例如,针对Y 1的多组数据,可以得到表达式:
Figure PCTCN2021138558-appb-000002
转化为矩阵形式为:
Figure PCTCN2021138558-appb-000003
其中,β矩阵(即β i0、β i1、β i2、…、β in)就是用户行为模型的参数。当计算出β矩阵后,用户行为模型模块2021根据电子设备(例如图2所示摄像头20)所处的实时环境,采集实时的第二环境信息,根据第二环境信息得到用户行为信息的预测值(即Y i的预测值)。当Y i的预测值在第一取值范围内(例如0.8~1)时,表示发生开发包调用,当Y i的预测值在第二取值范围内(例如0~0.2)时,表示不发生开发包调用。若预测到发生开发包调用(例如Y i的预测值为0.9),可以提前进行开发包认证,降低获取认证结果的延时,提高用户体验。
例如,Y 1对应DV Kit,计算得到Y 1的预测值为0.9,则表示预测到发生DV Kit调用。
可以建立用户行为模型的代价函数,对用户行为模型的代价函数进行优化求解,即可得到β矩阵。
在本申请的一个实施例中,可以使用均方误差函数作为用户行为模型的代价函数。
可以采用梯度下降法对用户行为模型的代价函数进行优化求解。
建立代价函数及其优化求解可以参考现有技术,此处不再赘述。
当用户行为模型的预测结果与真实结果偏差过大时,可以对用户行为模型进行修正,得到修正后的β矩阵。
图3是未采用开发包调用预测(即优化前)与采用开发包调用预测(即优化后)的比较结果示意图。
在未采用开发包调用预测时,用户发出开发包调用请求到用户获取认证结果有三秒以上的延时,用户可以感知该延时。
在采用开发包调用预测时,用户发出开发包调用请求到用户获取认证结果没有延时,用户可以获得更好的用户体验。
图4是本申请实施例公开的开发包认证方法的流程图。根据不同的需求,该流程图中步骤的顺序可以改变,某些步骤可以省略。
本申请实施例公开的开发包认证方法应用于电子设备,例如图2中的摄像头20。下面以图2所示的摄像头20为例介绍本申请的具体实现流程。
401,用户行为模型模块收集摄像头的用户行为信息和第一环境信息。
用户行为信息表示用户针对电子设备(例如摄像头)执行的动作(例如用户启动摄像头),对应于电子设备特定的开发包(例如DV Kit)。
第一环境信息用于表示用户执行动作时的环境条件。
在本申请的一个实施例中,第一环境信息包括用户行为发生的时间(例如调用开发包的时间)、用户行为发生时的温度(例如调用开发包时的温度)、用户行为发生时的光强(例如调用开发包时的光强)。
402,用户行为模型模块根据用户行为信息和第一环境信息建立用户行为模型。
在本申请的一个实施例中,用户行为模型模块在根据用户行为信息和第一环境信息建立用户行为模型时,对用户行为信息进行归一化处理。
403,用户行为模型模块采集摄像头实时的第二环境信息。
第二环境信息是与第一环境信息相同类型的信息。
例如,采集摄像头所处环境实时的时间、温度和光强。
404,用户行为模型模块根据第二环境信息,利用用户行为模型进行开发包调用预测。
例如,摄像头根据实时的时间、温度和光强,利用用户行为模型预测是否发生开发包调用(例如DV kit调用)。
405,若预测到特定开发包(例如DV kit)发生开发包调用,用户行为模型模块向开发包认证模块发送针对特定开发包的调用请求。
406,开发包认证模块接收到针对特定开发包的调用请求后,判断本地是否存储有可用的特定开发包的认证结果。
开发包认证模块可以将认证云服务器每次返回的认证结果存储在本地,例如存储到本地的缓存。相应地,若接收到针对特定开发包的调用请求,开发包认证模块首先判断本地是否存储有可用的特定开发包的认证结果。
在本申请的一个实施例中,若接收到针对特定开发包的调用请求,开发包认证模块判断当前时间与上一次接收到针对特定开发包的调用请求的时间的差值是否小于或等于预设时间阈值(例如一分钟)。若当前时间与上一次接收到针对特定开发包的调用请求的时间的差值小于或等于预设时间阈值,流程结束。若当前时间与上一次接收到针对特定开发包的调用请求的时间的差值大于预设时间阈值,执行判断本地是否存储有特定开发包的认证结果的步骤。
通过判断当前时间与上一次接收到针对特定开发包的调用请求的时间的差值是否小于或等于预设时间阈值,可以避免对开发包进行不必要的重复认证。
判断本地是否存储有可用的特定开发包的认证结果包括:判断本地是否存储有特定开发包的认证结果,若本地存储有特定开发包的认证结果,判断本地存储的特定开发包的认证结果是否可用。
在本申请的一个实施例中,判断本地存储的特定开发包的认证结果是否可用包括:
判断本地存储的特定开发包的认证结果是否是电子设备(例如摄像头)的认证结果;
判断本地存储的特定开发包的认证结果是否满足格式要求;
判断本地存储的特定开发包的认证结果是否满足时效性要求。
若本地存储的特定开发包的认证结果不是电子设备(例如摄像头)的认证结果,或者若本地存储的特定开发包的认证结果不满足格式要求,或者若本地存储的特定开发包的认证结果不满足时效性要求,则确定本地存储的特定开发包的认证结果不可用。
认证云服务器有可能返回错误的认证结果,例如返回其他设备的认证结果,或者返回格式错误的认证结果。若本地存储的特定开发包的认证结果不是电子设备(例如摄像头)的认证结果,或者,若本地存储的特定开发包的认证结果不是预设格式,则确定认证结果不可用。
由于电子设备(例如摄像头)中的开发包有可能会发生变化(例如下载了新的开发 包),可以对认证云服务器返回的认证结果设置一个有效期(例如1天),若本地存储的特定开发包的认证结果超过有效期,则认证结果不可用。
407,若本地存储有可用的特定开发包的认证结果,开发包认证模块获取本地存储的特定开发包的认证结果。
408,若本地未存储有可用的特定开发包的认证结果,开发包认证模块向认证云服务器发送全量认证请求,全量认证请求携带特定开发包的开发包信息。
在本申请的一个实施例中,特定开发包的开发包信息包括开发包名称、开发包版本号、开发包所属设备标识等。开发包所属设备标识用于识别开发包所在的设备(例如摄像头)。
409,认证云服务器根据记录的摄像头的开发包信息和全量认证请求中携带的特定开发包的开发包信息对摄像头进行全量认证,获取摄像头的全量认证结果。
认证云服务器返回的全量认证结果包括记录的摄像头的开发包信息对应的开发包的认证结果,也包括特定开发包的认证结果。认证云服务器判断全量认证请求中携带的特定开发包的开发包信息是否包含在记录的摄像头的开发包信息中,若全量认证请求中携带的特定开发包的开发包信息包含在记录的摄像头的开发包信息中,则对记录的摄像头的开发包信息对应的开发包进行认证。若全量认证请求中携带的特定开发包的开发包信息不包含在记录的摄像头的开发包信息中,则对记录的摄像头的开发包信息对应的开发包和特定开发包进行认证。
若特定开发包是摄像头新增的开发包,认证云服务器还在记录的电子设备的开发包信息中增加特定开发包的开发包信息,从而在以后的全量认证中对特定开发包进行认证。
410,认证云服务器将全量认证结果返回摄像头。
开发包认证模块接收到认证云服务器返回的全量认证结果后,将全量认证结果存储到本地。
411,开发包认证模块将特定开发包的认证结果传递给开发包加载模块。
例如,开发包认证模块将摄像头的DV Kit的认证结果传递给开发包加载模块。
若本地存储有可用的特定开发包的认证结果,并且获取到本地存储的特定开发包的认证结果,开发包认证模块将获取的本地存储的特定开发包的认证结果传递给开发包加载模块。若判断本地未存储有可用的特定开发包的认证结果,并且接收到摄像头的全量认证结果,开发包认证模块从全量认证结果中获取特定开发包的认证结果,将从全量认证结果中获取的特定开发包的认证结果传递给开发包加载模块。
412,用户通过终端向摄像头发送特定开发包的调用请求。
413,开发包加载模块根据特定开发包的认证结果进行加载。
若特定开发包通过认证,摄像头加载特定开发包成功,用户可以使用特定开发包对应的功能。若特定开发包未通过认证,摄像头加载特定开发包失败,用户不能使用特定开发包对应的功能。
414,开发包加载模块将加载结果返回终端。
图4所示的实施例对开发包调用进行预测,当预测到发生开发包调用时进行开发包全量认证。在其他的实施例中,可以不对开发包调用进行预测,当接收到用户发出的针对特定开发包的调用请求时进行开发包全量认证。在不对开发包调用进行预测时,执行406-411以及413-414。
本申请实施例中,开发包认证模块优先判断本地存储的认证结果是否满足要求,满 足要求则直接返回本地存储的认证结果,无需从认证云服务器获取,节省认证时间。如果需要进行端云认证,端云认证采用全量认证方案,即单次认证结果会得到多个开发包的认证结果,从而提高认证效率,降低认证流量。
在本申请的一个实施例中,开发包认证模块基于认证队列进行全量认证。认证队列包括缓存认证队列、全量认证队列和临时队列。
图5是根据本申请实施例公开的开发包认证方法构建认证队列的流程图,下文结合图6所示的构建认证队列的示意图进行描述。根据不同的需求,该流程图中步骤的顺序可以改变,某些步骤可以省略。
501,接收到特定开发包的调用请求后,开发包认证模块判断特定开发包是否是电子设备(例如图2中的摄像头20)中新增的开发包。
502,若特定开发包是电子设备中新增的开发包,开发包认证模块将特定开发包的开发包信息加入全量认证队列的队尾。
503,若特定开发包不是电子设备中新增的开发包,开发包认证模块判断缓存认证队列中是否包含特定开发包的开发包信息。
若缓存认证队列中包含特定开发包的开发包信息,流程结束。
504,若缓存认证队列中不包含特定开发包的开发包信息,开发包认证模块将特定开发包的开发包信息加入缓存认证队列的队尾。
505,若全量认证队列为解锁状态,开发包认证模块将缓存认证队列的队头的开发包信息发送到全量认证队列。锁定状态表示电子设备当前已有开发包向认证云服务器发起认证。解锁状态表示电子设备当前没有开发包向认证云服务器发起认证。
506,若全量认证队列不为空并且不是锁定状态,开发包认证模块根据全量认证队列的队头的开发包信息向认证云服务器发送全量认证请求,将全量认证队列的队头的开发包信息移出全量认证队列,并将全量认证队列设置为锁定状态。
507,开发包认证模块在接收到认证云服务器返回的全量认证结果后,将全量认证队列设置为解锁状态。
508,开发包认证模块将认证云服务器返回的全量认证结果存储到本地。
509,开发包认证模块将在全量认证队列锁定期间加入到缓存认证队列的开发包信息移出缓存认证队列并存储到临时队列。
510,开发包认证模块从全量认证结果中获取临时队列中的开发包信息对应的开发包的认证结果,将临时队列中的开发包信息对应的开发包的认证结果返回开发包加载模块。
临时队列中的开发包信息对应的开发包就是全量认证队列锁定期间申请认证的开发包。因此,开发包认证模块根据临时队列中的开发包信息,可以将全量认证队列锁定期间申请认证的每个开发包的认证结果返回开发包加载模块,实现了多个开发包经过一次端云认证获得各自的认证结果。
为保证认证队列的高效性,在开发包发起全量认证请求时,在开发包发起全量认证请求时若已经有其他的开发包处于端云认证流程中,只需等待云端结果即可。
当开发包需要进行端云认证时,需要将缓存认证队列中的队头开发包加载到全量认证队列,并判断全量认证队列是否为锁定状态,由于认证云服务器对开发进行全量认证,可以保证云端下发的结果包含该开发包,即无需再次进行端云认证,可以等待下发的结 果直接获取即可。如果全量认证队列未锁定,则将该开发包信息加入到全量认证队列并设置为锁定状态,以便控制认证的流量,防止多次重复认证。获取到认证结果后,对全量认证队列进行解锁(即设置为解锁状态),并将在全量认证队列锁定期间加入缓存认证队列中的开发包全部返回对应的认证结果,可以使多个开发包经过一次端云认证获得认证结果,提高端云认证的效率。
图7是本申请实施例公开的一种电子设备的结构示意图。如图7所示,电子设备70可以包括:射频(Radio Frequency,RF)电路701、存储器702、输入单元703、显示单元704、传感器705、音频电路706、Wi-Fi模块707、处理器708以及电源709等部件。本领域技术人员可以理解,图5中示出的结构并不构成对业务流汇聚转发节点的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。
RF电路701可用于收发信息或在通话过程中,对信号进行接收和发送,特别地,接收基站的下行信息后,转给处理器708进行处理;另外,将涉及上行的数据发送给基站。通常,RF电路701包括,但不限于:天线、至少一个放大器、收发信机、耦合器、低噪声放大器(Low Noise Amplifier,LNA)、双工器等。
存储器702可用于存储软件程序以及模块,处理器708通过运行存储在存储器702中的软件程序以及模块,从而执行电子设备的各种功能应用以及数据处理。存储器702可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序(比如声音播放功能、图像播放功能等)等;存储数据区可存储根据电子设备的使用所创建的数据(比如音频数据、电话本等)等。此外,存储器702可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他易失性固态存储器件。
输入单元703可用于接收输入的数字或字符信息,以及产生与电子设备的用户设置以及功能控制有关的键信号输入。具体地,输入单元703可包括触控面板7031以及其他输入设备7032。触控面板7031,也称为触摸屏,可收集用户在其上或附近的触摸操作(比如用户使用手指、触控笔等任何适合的物体或附件在触控面板7031上或在触控面板7031附近的操作),并根据预先设定的程序驱动相应的连接装置。可选地,触控面板7031可包括触摸检测装置和触摸控制器两个部分。其中,触摸检测装置检测用户的触摸方位,并检测触摸操作带来的信号,将信号传送给触摸控制器;触摸控制器从触摸检测装置上接收触摸信息,并将它转换成触点坐标,再送给处理器708,并接收处理器708发来的命令并加以执行。此外,可以采用电阻式、电容式、红外线以及表面声波等多种类型实现触控面板7031。除了触控面板7031,输入单元703还可以包括其他输入设备7032。具体地,其他输入设备7032可以包括但不限于物理键盘、功能键(比如音量控制按键、开关按键等)、轨迹球、鼠标、操作杆等中的一种或多种。
显示单元704可用于显示由用户输入的信息或提供给用户的信息以及电子设备的各种菜单。显示单元704可包括显示面板7041,可选地,可以采用液晶显示器(Liquid Crystal Display,LCD)、有机发光二极管(Organic Light-Emitting Diode,OLED)等形式来配置显示面板7041。进一步地,触控面板7031可覆盖显示面板7041,当触控面板7031检测到在其上或附近的触摸操作后,传送给处理器708以确定触摸事件的类型,随后处理器708根据触摸事件的类型在显示面板7041上提供相应的视觉输出。虽然在图5中,触控 面板7031与显示面板7041是作为两个独立的部件来实现电子设备的输入和输出功能,但是在某些实施例中,可以将触控面板7031与显示面板7041集成而实现电子设备的输入和输出功能。
电子设备还可包括至少一种传感器705,比如光传感器、运动传感器以及其他传感器。具体地,光传感器可包括环境光传感器及接近传感器,其中,环境光传感器可根据环境光线的明暗来调节显示面板7041的亮度,接近传感器可在电子设备移动到耳边时,关闭显示面板7041和/或背光。作为运动传感器的一种,加速计传感器可检测各个方向上(一般为三轴)加速度的大小,静止时可检测出重力的大小及方向,可用于识别电子设备姿态的应用(比如横竖屏切换、相关游戏、磁力计姿态校准)、振动识别相关功能(比如计步器、敲击)等;此外,电子设备还可配置的陀螺仪、气压计、湿度计、温度计、红外线传感器等其他传感器,在此不再赘述。
音频电路706、扬声器7061,传声器7062可提供用户与电子设备之间的音频接口。音频电路706可将接收到的音频数据转换后的电信号,传输到扬声器7061,由扬声器7061转换为声音信号输出;另一方面,传声器7062将收集的声音信号转换为电信号,由音频电路706接收后转换为音频数据,再将音频数据输出处理器708处理后,经RF电路701发送给另一电子设备,或者将音频数据输出至存储器702以便进一步处理。
Wi-Fi属于短距离无线传输技术,电子设备通过Wi-Fi模块707可以帮助用户收发电子邮件、浏览网页和访问流式媒体等,它为用户提供了无线的宽带互联网访问。虽然图5示出了Wi-Fi模块707,但是可以理解的是,其并不属于电子设备的必需构成,完全可以根据需要、在不改变发明本质的范围内进行省略。
处理器708是电子设备的控制中心,利用各种接口和线路连接整个电子设备的各个部分,通过运行或执行存储在存储器702内的软件程序和/或模块,以及调用存储在存储器702内的数据,执行电子设备的各种功能和处理数据,从而对电子设备进行整体监控。可选地,处理器708可包括一个或多个处理单元;优选的,处理器708可集成应用处理器和调制解调器,其中,应用处理器主要处理操作系统、用户界面和应用程序等,调制解调器主要处理无线通信。可以理解的是,上述调制解调处理器也可以不集成到处理器708中。
电子设备还包括给各个部件供电的电源709(比如电池),可选地,电源可以通过电源管理系统与处理器708逻辑相连,从而通过电源管理系统实现管理充电、放电、以及功耗管理等功能。
尽管未示出,电子设备还可以包括摄像头、蓝牙模块等,在此不再赘述。
图7中描述的电子设备可以用于实施本申请图4介绍的方法实施例中的部分或全部流程,可参见前述图4所述实施例中的相关阐述,这里不再赘述。
本实施例还提供一种计算机存储介质,该计算机存储介质中存储有计算机指令,当该计算机指令在电子设备上运行时,使得电子设备执行上述相关方法步骤实现上述实施例中的区块链验签方法。
本实施例还提供了一种计算机程序产品,当该计算机程序产品在电子设备上运行时,使得电子设备执行上述相关步骤,以实现上述实施例中的区块链验签方法。
另外,本申请的实施例还提供一种装置,这个装置具体可以是芯片,组件或模块,该 装置可包括相连的处理器和存储器;其中,存储器用于存储计算机执行指令,当装置运行时,处理器可执行存储器存储的计算机执行指令,以使芯片执行上述各方法实施例中的区块链验签方法。
其中,本实施例提供的电子设备、计算机存储介质、计算机程序产品或芯片均用于执行上文所提供的对应的方法,因此,其所能达到的有益效果可参考上文所提供的对应的方法中的有益效果,此处不再赘述。
通过以上的实施方式的描述,所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将装置的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。
在本申请所提供的几个实施例中,应该理解到,所揭露的装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,该模块或单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个装置,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
该作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是一个物理单元或多个物理单元,即可以位于一个地方,或者也可以分布到多个不同地方。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
该集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个可读取存储介质中。基于这样的理解,本申请实施例的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该软件产品存储在一个存储介质中,包括若干指令用以使得一个设备(可以是单片机,芯片等)或处理器(processor)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(Read-Only Memory,ROM)、随机存取存储器(Random Access Memory,RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述,仅为本申请的具体实施方式,但本申请的保护范围并不局限于此,任何在本申请揭露的技术范围内的变化或替换,都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应以所述权利要求的保护范围为准。

Claims (15)

  1. 一种开发包认证方法,应用于电子设备,所述电子设备包括多个开发包,其特征在于,所述方法包括:
    在接收到针对特定开发包的调用请求后,向认证云服务器发送全量认证请求;
    接收所述认证云服务器返回的所述电子设备的全量认证结果;
    从所述全量认证结果中获取所述特定开发包的认证结果。
  2. 如权利要求1所述的开发包认证方法,其特征在于,所述方法还包括:
    收集所述特定开发包对应的用户行为信息和第一环境信息;
    根据所述用户行为信息和所述第一环境信息建立所述特定开发包对应的用户行为模型;
    采集所述电子设备实时的第二环境信息;
    根据所述第二环境信息,利用所述用户行为模型预测是否发生所述特定开发包的开发包调用;
    若预测到发生所述特定开发包的开发包调用,发送所述调用请求。
  3. 如权利要求1所述的开发包认证方法,其特征在于,所述向认证云服务器发送全量认证请求之前,所述方法还包括:
    判断所述电子设备本地是否存储有所述特定开发包的认证结果;
    若所述电子设备本地未存储有所述特定开发包的认证结果,向所述认证云服务器发送全量认证请求;或者
    若所述电子设备本地存储有所述特定开发包的认证结果,但所述电子设备本地存储的所述特定开发包的认证结果不可用,向所述认证云服务器发送全量认证请求。
  4. 如权利要求3所述的开发包认证方法,其特征在于,所述电子设备本地存储的所述特定开发包的认证结果不可用包括:
    所述电子设备本地存储的所述特定开发包的认证结果不是所述电子设备的认证结果;或者
    所述电子设备本地存储的所述特定开发包的认证结果不满足格式要求;或者
    所述电子设备本地存储的所述特定开发包的认证结果不满足时效性要求。
  5. 如权利要求1所述的开发包认证方法,其特征在于,所述电子设备包括缓存认证队列和全量认证队列,所述在接收到针对特定开发包的调用请求后,向认证云服务器发送全量认证请求包括:
    接收到所述调用请求后,判断所述特定开发包是否是所述电子设备中新增的开发包;
    若所述特定开发包是所述电子设备中新增的开发包,将所述特定开发包的开发包信息加入所述全量认证队列的队尾;
    若所述特定开发包不是所述电子设备中新增的开发包,判断所述缓存认证队列中是否包含所述特定开发包的开发包信息;
    若所述缓存认证队列中不包含所述特定开发包的开发包信息,将所述特定开发包的 开发包信息加入所述缓存认证队列的队尾;
    若所述全量认证队列为解锁状态,将所述缓存认证队列的队头的开发包信息发送到所述全量认证队列;
    若所述全量认证队列不为空并且不是锁定状态,根据所述全量认证队列的队头的开发包信息向所述认证云服务器发送全量认证请求,将所述全量认证队列的队头的开发包信息移出所述全量认证队列,将所述全量认证队列设置为锁定状态。
  6. 如权利要求5所述的开发包认证方法,其特征在于,所述接收所述认证云服务器返回的所述电子设备的全量认证结果后,所述方法还包括:
    将所述全量认证队列设置为解锁状态。
  7. 如权利要求5所述的开发包认证方法,其特征在于,所述接收所述认证云服务器返回的所述电子设备的全量认证结果后,所述方法还包括:
    将所述全量认证结果存储到本地。
  8. 如权利要求5所述的开发包认证方法,其特征在于,所述电子设备还包括临时队列,所述接收所述认证云服务器返回的所述电子设备的全量认证结果后,所述方法还包括:
    将在所述全量认证队列锁定期间加入到所述缓存认证队列的开发包信息移出所述缓存认证队列并存储到所述临时队列。
  9. 如权利要求8所述的开发包认证方法,其特征在于,所述方法还包括:
    从所述全量认证结果中获取所述临时队列中的开发包信息对应的开发包的认证结果。
  10. 如权利要求1至9中任一项所述的开发包认证方法,其特征在于,所述方法还包括:
    根据所述特定开发包的认证结果对所述特定开发包进行加载。
  11. 一种开发包认证方法,应用于认证云服务器,所述认证云服务器记录有电子设备的开发包信息,其特征在于,所述方法包括:
    接收到所述电子设备针对特定开发包的全量认证请求后,根据记录的所述电子设备的开发包信息对所述电子设备的开发包进行全量认证,得到所述电子设备的全量认证结果;
    将所述全量认证结果返回所述电子设备。
  12. 如权利要求11所述的开发包认证方法,其特征在于,所述方法还包括:
    若所述特定开发包是所述电子设备中新增的开发包,在记录的所述电子设备的开发包信息中增加所述特定开发包的开发包信息。
  13. 一种计算机可读存储介质,其特征在于,包括计算机指令,当所述计算机指令在电子设备上运行时,使得所述电子设备执行如权利要求1至9中任一项所述的开发包认证方法,或者执行如权利要求11或12所述的开发包认证方法。
  14. 一种电子设备,其特征在于,所述电子设备包括处理器和存储器,所述存储器用于存储指令,所述处理器用于调用所述存储器中的指令,使得所述电子设备执行如权利要求1至9中任一项所述的开发包认证方法,或者执行如权利要求11或12所述的开发包认证方法。
  15. 一种芯片系统,其特征在于,所述芯片系统应用于电子设备;所述芯片系统包括接口电路和处理器;所述接口电路和所述处理器通过线路互联;所述接口电路用于从所述电子设备的存储器接收信号,并向所述处理器发送信号,所述信号包括所述存储器中存储的计算机指令;当所述处理器执行所述计算机指令时,所述芯片系统执行如权利要求 1至9中任一项所述的开发包认证方法,或者执行如权利要求11或12所述的开发包认证方法。
PCT/CN2021/138558 2021-02-09 2021-12-15 开发包认证方法及相关设备 WO2022170849A1 (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN202110182980.1 2021-02-09
CN202110182980.1A CN114915437B (zh) 2021-02-09 2021-02-09 开发包认证方法及相关设备

Publications (1)

Publication Number Publication Date
WO2022170849A1 true WO2022170849A1 (zh) 2022-08-18

Family

ID=82761052

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2021/138558 WO2022170849A1 (zh) 2021-02-09 2021-12-15 开发包认证方法及相关设备

Country Status (2)

Country Link
CN (1) CN114915437B (zh)
WO (1) WO2022170849A1 (zh)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102724165A (zh) * 2011-03-29 2012-10-10 海尔集团公司 终端通信的控制方法和装置、以及管理服务器
CN103888409A (zh) * 2012-12-19 2014-06-25 中国电信股份有限公司 分布式统一认证方法及系统
US20190213104A1 (en) * 2018-01-08 2019-07-11 Microsoft Technology Licensing, Llc Cloud validation as a service
CN111475795A (zh) * 2020-04-12 2020-07-31 广州通达汽车电气股份有限公司 一种面向多应用进行统一认证授权的方法及装置

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7721094B2 (en) * 2005-05-06 2010-05-18 Microsoft Corporation Systems and methods for determining if applications executing on a computer system are trusted
US10568018B1 (en) * 2018-04-19 2020-02-18 Sprint Spectrum L.P. Methods and systems for preventing message overloading in wireless networks
CN108920202B (zh) * 2018-05-15 2020-09-15 Oppo广东移动通信有限公司 应用预加载管理方法、装置、存储介质及智能终端
CN109756339A (zh) * 2018-11-30 2019-05-14 航天信息股份有限公司 一种基于实名证书对终端多个应用进行统一认证的方法及系统

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102724165A (zh) * 2011-03-29 2012-10-10 海尔集团公司 终端通信的控制方法和装置、以及管理服务器
CN103888409A (zh) * 2012-12-19 2014-06-25 中国电信股份有限公司 分布式统一认证方法及系统
US20190213104A1 (en) * 2018-01-08 2019-07-11 Microsoft Technology Licensing, Llc Cloud validation as a service
CN111475795A (zh) * 2020-04-12 2020-07-31 广州通达汽车电气股份有限公司 一种面向多应用进行统一认证授权的方法及装置

Also Published As

Publication number Publication date
CN114915437A (zh) 2022-08-16
CN114915437B (zh) 2023-08-04

Similar Documents

Publication Publication Date Title
US11057376B2 (en) Method, apparatus, and system for controlling intelligent device, and storage medium
EP3764253B1 (en) Method for quickly opening application or application function, and terminal
WO2019183810A1 (zh) 在局域网内共享数据的方法及电子设备
WO2015090248A1 (zh) 服务器的过载保护方法及装置
CN107861817B (zh) 基于线程阻塞的内存优化方法、移动终端及可读存储介质
CN107590057B (zh) 冻屏监测与解决方法、移动终端及计算机可读存储介质
US20170316781A1 (en) Remote electronic service requesting and processing method, server, and terminal
CN111597542B (zh) 验证信息共享方法、装置及电子设备及存储介质
CN107704363B (zh) 冻屏监测方法、移动终端及计算机可读存储介质
WO2017054585A1 (zh) 网络接入方法、装置及系统
WO2020088681A1 (zh) 模型文件的管理方法和终端设备
WO2021078215A1 (zh) 一种云游戏跨终端切换的方法和相关装置
KR20200090260A (ko) 서비스 처리 방법 및 이동 통신 단말
CN109951560B (zh) 提高应用服务并发量及应用速度的方法、终端及存储介质
WO2021208991A1 (zh) 屏幕扩展方法及电子设备
WO2015014173A1 (zh) 离线自动锁定业务的方法、装置及系统
WO2015101254A1 (zh) 一种信息交互的方法、装置及系统
CN110533800B (zh) 智能门锁控制方法、装置、电子设备以及存储介质
WO2022170849A1 (zh) 开发包认证方法及相关设备
CN110891262A (zh) 一种蓝牙配对的方法、系统和终端设备
WO2020107177A1 (zh) 一种音频资源调用的方法、装置及电子设备
CN111615101B (zh) Ims注册方法、装置、存储介质及电子终端
CN114489354A (zh) 按键事件处理方法、装置、存储介质及终端
CN109426572B (zh) 任务处理方法、装置及电子设备
WO2020042760A1 (zh) 移动终端的控制方法及移动终端

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 21925495

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 21925495

Country of ref document: EP

Kind code of ref document: A1