CN115470472A - Object control method and device - Google Patents

Object control method and device Download PDF

Info

Publication number
CN115470472A
CN115470472A CN202110649813.3A CN202110649813A CN115470472A CN 115470472 A CN115470472 A CN 115470472A CN 202110649813 A CN202110649813 A CN 202110649813A CN 115470472 A CN115470472 A CN 115470472A
Authority
CN
China
Prior art keywords
key
client
target object
information
software
Prior art date
Legal status (The legal status 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 status listed.)
Pending
Application number
CN202110649813.3A
Other languages
Chinese (zh)
Inventor
付红波
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Alibaba Innovation Co
Original Assignee
Alibaba Singapore Holdings Pte Ltd
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 Alibaba Singapore Holdings Pte Ltd filed Critical Alibaba Singapore Holdings Pte Ltd
Priority to CN202110649813.3A priority Critical patent/CN115470472A/en
Publication of CN115470472A publication Critical patent/CN115470472A/en
Pending legal-status Critical Current

Links

Images

Classifications

    • 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/602Providing cryptographic facilities or services
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/65Updates
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/70Software maintenance or management
    • G06F8/71Version control; Configuration management

Abstract

An embodiment of the present specification provides an object control method and an object control apparatus, wherein the object control method includes: generating authorization information of a target object according to object information carried in a control request aiming at the target object sent by a client; acquiring the target object based on the object information, and sending the target object and a first key in the authorization information to the client; running the target object on the condition that the verification of the client for the first key is successful; and generating a second key based on the first key, encrypting the data control instruction based on the second key, and controlling the target object according to the encrypted data control instruction.

Description

Object control method and device
Technical Field
The embodiment of the specification relates to the technical field of computers, in particular to an object control method. One or more embodiments of the present specification also relate to an object control apparatus, a computing device, and a computer-readable storage medium.
Background
With the development of computer technology, the variety of computer software is more and more, and the functions are more and more powerful, after a software product is installed, the software needs to be authorized by a software manager when initially logging in or upgrading the software, and based on this, for the software binding the serial number of the hardware information, when the hardware is replaced, the software needs to be taken again to the authorization of the software manager to be used continuously, or when a user upgrades the software version and continues to sign the validity period, the software manager needs to re-approach and deploy the authorization information, and this operation not only has the problems of poor timeliness and high operation cost, but also reduces the service quality of the application software.
Disclosure of Invention
In view of this, the embodiments of the present specification provide an object control method. One or more embodiments of the present disclosure are also directed to an object control apparatus, a computing device, and a computer-readable storage medium, which solve the technical problems of the related art.
According to a first aspect of embodiments herein, there is provided an object control method including:
generating authorization information of a target object according to object information carried in a control request aiming at the target object sent by a client;
acquiring the target object based on the object information, and sending the target object and a first key in the authorization information to the client;
running the target object on the condition that the client terminal successfully verifies the first key is received;
and generating a second key based on the first key, encrypting a data control instruction based on the second key, and controlling the target object according to the encrypted data control instruction.
According to a second aspect of embodiments herein, there is provided an object control apparatus comprising:
the generation module is configured to generate authorization information of a target object according to object information carried in a control request aiming at the target object sent by a client;
the sending module is configured to acquire the target object based on the object information and send the target object and a first key in the authorization information to the client;
a running module configured to run the target object on condition that the client is received to successfully verify the first key;
and the control module is configured to generate a second key based on the first key, encrypt a data control instruction based on the second key, and control the target object according to the encrypted data control instruction.
According to a third aspect of embodiments herein, there is provided a computing device comprising:
a memory and a processor;
the memory is configured to store computer-executable instructions and the processor is configured to execute the computer-executable instructions, wherein the processor implements the steps of the object control method when executing the computer-executable instructions.
According to a fourth aspect of embodiments herein, there is provided a computer-readable storage medium storing computer-executable instructions that, when executed by a processor, implement the steps of any one of the object control methods.
In an object control method provided in an embodiment of the present specification, authorization information of a target object is generated according to object information carried in a control request for the target object sent by a client; acquiring the target object based on the object information, and sending the target object and a first key in the authorization information to the client; running the target object on the condition that the client terminal successfully verifies the first key is received; generating a second key based on the first key, encrypting a data control instruction based on the second key, and controlling the target object according to the encrypted data control instruction; the method has the advantages that the operation and control of the target object are realized by the asymmetric key technology through the binding relationship among the first key, the second key and the authorization information, the problems of hardware information and redeployment authorization are not needed to be considered when the target object is subjected to authorization operations such as software version upgrading, signature renewal and the like, the data control of the target object at the client can be directly realized on the basis of the second key, so that the effect of authorizing software operation is achieved, the efficiency of the authorization operation is improved, and the operation cost is lower on the premise of ensuring the quality of software service.
Drawings
Fig. 1 is a schematic structural diagram of an object control method provided in an embodiment of the present specification;
FIG. 2 is a flowchart of an object control method provided in an embodiment of the present specification;
fig. 3 is a schematic structural diagram of a processing procedure of an object control method according to an embodiment of the present specification;
FIG. 4 is a flowchart of an application mirroring automatic construction of an object control method according to an embodiment of the present disclosure;
FIG. 5 is a flow diagram illustrating remote management of client application software state for an object control method according to an embodiment of the present disclosure;
FIG. 6 is a flowchart illustrating real-time verification of software authorization files for an object control method according to an embodiment of the present disclosure;
fig. 7 is a schematic structural diagram of an object control apparatus according to an embodiment of the present disclosure;
fig. 8 is a block diagram of a computing device according to an embodiment of the present disclosure.
Detailed Description
In the following description, numerous specific details are set forth in order to provide a thorough understanding of the present description. This description may be embodied in many different forms and should not be construed as limited to the embodiments set forth herein, as those skilled in the art will be able to make and use the present disclosure without departing from the spirit and scope of the present disclosure.
The terminology used in the description of the one or more embodiments is for the purpose of describing the particular embodiments only and is not intended to be limiting of the description of the one or more embodiments. As used in this specification and the appended claims, the singular forms "a", "an", and "the" are intended to include the plural forms as well, unless the context clearly indicates otherwise. It should also be understood that the term "and/or" as used in one or more embodiments of the present specification refers to and encompasses any and all possible combinations of one or more of the associated listed items.
It will be understood that, although the terms first, second, etc. may be used herein in one or more embodiments to describe various information, these information should not be limited by these terms. These terms are only used to distinguish one type of information from another. For example, a first can be termed a second and, similarly, a second can be termed a first without departing from the scope of one or more embodiments of the present description. The word "if," as used herein, may be interpreted as "at … …" or "at … …" or "in response to a determination," depending on the context.
First, the noun terms to which one or more embodiments of the present specification relate are explained.
A decision engine: the method has the functions of personalized project scene event management, visual arrangement of complex decisions, rich characteristic variables, scene recognition service and the like.
The execution engine: a real-time computing engine and a one-stop real-time rule strategy computing platform.
Software protection: the software is protected from being cracked by using a technical means mainly based on encryption. In theory, all software protection techniques can be broken as long as there are enough resources and time. However, if the security strength of a protection technique is such that a cracker is charged with a higher cost than purchasing software, the protection technique is successful and worthy of use.
Software authorization: is an extension and development of the software protection concept. The software authorization aims to make a software user use the software according to a purchase license, and relates to the installation number of the software, the use time, the application range, the functional module and the like.
Docker vessel: the application container engine is an open source application container engine, so that developers can package their applications and dependency packages in a uniform manner into a portable container and then distribute the container to any server (including popular Linux machines and windows machines) provided with a Docker engine, and can also realize virtualization.
The management and control Agent: the core program for realizing the application software copyright control is called Agent for short.
The client identification code: the identification field for distinguishing the client identity is globally unique, each client ID is randomly assigned with an identification code and can be generated by using algorithms such as UUID and the like.
Product version definition: configuration information that enables the ability to control the range of applications that a customer uses (e.g., number of clients supporting the largest application, set of lists of supported application functions), the user may purchase a specified version of the software as needed.
The application software authorization file: including the product version number and its version information (maximum client count, function set) and the product usage validity period (start time, end time).
The client authorization defines: one valid purchase behavior of a customer can determine a unique "authorization definition" corresponding to the customer.
Application mirroring: the method specifically refers to a Docker mirror image constructed by a Docker file command, wherein the mirror image internally comprises a management and control Agent and an application program running environment (such as JDK (java Web application) and TOMCAT (TOMCAT software).
Client specific application mirroring: the method specifically comprises the steps that after downloading and writing 'customer authorization definition' information (such as RSA public key information in customer authorization definition) in an application image construction script in an instruction mode, a generated image is constructed, and the image has a unique binding relation with 'customer authorization definition' generated by purchasing behaviors of users.
The current application software authorization method can protect the authorization software through two modes, one is that a unique identifier is generated based on the server hardware information, and a generated software authorization code (serial number) is uniquely bound; and secondly, the authorization file is encrypted and protected based on a fixed RAS public and private key.
Based on this, there may be various drawbacks in the above-mentioned schemes, in the first scheme, if the user changes the machine hardware and may cause the application software to fail, the user needs to apply for the authorization code again, and in the container operation, since the container and the host are isolated, the common hardware information, such as MAC, static IP, etc., cannot be obtained. Moreover, the container is mostly deployed in a cloud environment, and the container may drift, even if the CPU number is obtained by designation, the CPU number may change during the next verification, which may cause failure of authorization and require re-application of an authorization code; namely, re-authorization is needed when hardware is replaced, especially hardware information is easy to forge or change after the container is migrated in a containerization environment, and software authorization is easy to fail or be cracked. In the second scheme, the fixed RAS public and private key is low in cracking cost, dynamic updating continuation authorization is not supported, when a client upgrades a version or renews a signature software validity period, an authorization file needs to be reapplied and configured, and the problems of poor timeliness, high operation cost, damage to client application service and the like exist.
The risk identification product customizes a risk strategy through a decision engine module of a console, and the back end of the risk identification product also has two core application service supports: a decision engine application and an execution engine application. On the basis that data security meets the compliance requirement, the object control method provided by the embodiment of the specification installs execution engine application software in a network domain (private cloud, hybrid cloud, self-built machine room and the like) trusted by a user and supports deployment and use in a client environment, and further the object control method provided by the embodiment of the specification realizes effective authorization protection of the execution engine application software.
It should be noted that the object control method provided in the embodiments of the present specification may also be applied to a cloud server, and a client corresponding to the cloud server may be a cloud display, where the cloud display does not implement complex data calculation by a CPU, and all data is stored in the cloud server; correspondingly, in the object control method provided by the specification, the cloud server can also generate the authorization information of the software, and the security of the software is verified between the cloud server and the cloud display through a key, so that the software is controlled to operate in the cloud display according to the data control instruction; for example, in the process of service handling by the resource service mechanism, a service person can use software through the handheld cloud display, and at the moment, the cloud server corresponding to the handheld cloud display can verify the security authorization of the software, so that the cloud server can effectively authorize and protect the application software in the handheld cloud display. The interaction process of the object control method implemented by the cloud server and the cloud display is substantially the same as the interaction process of the object control method implemented by the common server and the client, and is only different between the server and the client.
In the present specification, an object control method is provided, and the present specification relates to an object control apparatus, a computing device, and a computer-readable storage medium, which are described in detail one by one in the following embodiments.
Fig. 1 is a schematic structural diagram illustrating an object control method according to an embodiment of the present disclosure.
In fig. 1, a part a is a server, a part B is a client, and when the server a receives object information carried in a control request for a target object (software) sent by the client B, authorization information of the software is generated; acquiring the software based on the object information, sending the software and a first key in the authorization information to the client B, and running the software when the client B successfully verifies the first key; meanwhile, the server a may generate a second key based on the first key, encrypt the data control instruction based on the second key, and control the software according to the encrypted data control instruction.
The object control method provided in the embodiments of the present specification can safely implement authentication of a client and authentication of software authorization information by using an asymmetric key technology based on a binding relationship between a first key, a second key, and authorization information, and can quickly implement control of authorization software without depending on hardware in an operating environment.
Referring to fig. 2, fig. 2 shows a flowchart of an object control method provided in an embodiment of the present specification, which specifically includes the following steps.
It should be noted that, in the object control method provided in an embodiment of the present specification, based on the asymmetric key technology of the first key and the second key, the server controls or deploys the authorization of the application software in real time, which can effectively avoid the problem that the user needs to change the authorization operation cost and timeliness when upgrading the software version or extending the authorization validity period, and the like, and meanwhile, the whole process does not need to restart the application to avoid affecting the customer service, and specific steps can be referred to the following detailed description of the embodiment.
Step 202: and generating authorization information of the target object according to object information carried in a control request aiming at the target object sent by a client.
The object information may be understood as attribute information of the application software, for example, basic software attribute information such as an application software identifier, an application software version, and application software time to market, and it should be noted that the application software identifier may be understood as an authorized serial number corresponding to the software, and the server may determine information such as an order generated by a one-time effective purchasing behavior of the user based on the software identifier information.
The authorization information of the target object can be understood as a user authorization definition such as a user identification code (bound with a user purchase order and globally unique), an authorized version of the application software, a first key pair, and a start time of software use.
For example, user authorization defines: user ID:1-1-1-1; product version number ID:1; version name: a standard version; maximum client count: 10; function set: A. b; the client identification code: * (systematic random generation); RSA key pair (first key): * (systematic random generation); the validity period is as follows: 1 year; starting time: 2021-03-08.
In practical application, after receiving a control request for software sent by a client, a server may generate authorization information corresponding to the software based on object information carried in the control request, where the authorization information includes not only a user identification code, an authorized version of application software, start time, and other information, but also includes a first key pair corresponding to the software, and it is to be noted that the first key pair is set by a server as a default.
Step 204: and acquiring the target object based on the object information, and sending the target object and the first key in the authorization information to the client.
In specific implementation, the server may obtain the target object based on object information carried in a control request for the target object sent by the client, where the target object may be understood as a data packet of software, and send the data packet of the software and the first key in the authorization information to the client.
In practical applications, the server may download the data package of the software from the software package management module, or may download the data package of the software through the mirror repository in the mirror management module.
Step 206: and running the target object under the condition that the client successfully verifies the first key.
Specifically, after the server sends the target object and the first key in the authorization information to the client, the client may verify the received first key, and the server may run the target object only when the verification is successful, so as to ensure the safety of software running.
Furthermore, the verification process of the client to the first key is completed by the cooperation of the server and the client; specifically, the successful verification of the client for the first key includes:
sending a public key of the first secret key to the client, and receiving an identification code obtained by encrypting a user identification code in the authorization information by the client based on the public key;
and decrypting the identification code according to the private key of the first key, and confirming that the client successfully verifies the first key under the condition that the decrypted user identification code is successfully matched with the pre-stored user identification code.
The user identification code can be understood as an identification code of an identification field for distinguishing user identities, each user can be randomly assigned with one identification code, and the identification code can be generated by using algorithms such as UUID (universal unique identification code) and the like.
Specifically, in order to ensure that the client verifies the validity of the first key, the server sends a public key of the first key to the client, receives an identification code obtained by encrypting a user identification code in the authorization information by the client based on the public key, decrypts the encrypted identification code by using a reserved private key of the first key after the encrypted identification code is taken by the server, matches the decrypted user identification code with a pre-stored user identification code, and if the encrypted identification code is the same as the pre-stored user identification code, the server determines that the client verifies the first key successfully.
In practical application, it should be noted that, first, the first key pair may be divided into a public key and a private key, the client may encrypt the user identification code sent by the server by using the public key to generate a random factor, and upload the random factor to the server, the server may decrypt the user identification code according to the private key in the first key, and compare the decrypted user identification code with a pre-stored user identification code, where the pre-stored user identification code may be in a plaintext form, and after the comparison and matching, the server may determine that the client successfully verifies the first key.
The object control method provided in the embodiment of the present specification verifies the first secret key through the public key and the private key of the first secret key, so as to ensure that the communication connection between the server and the client is safe and smooth, and facilitate the subsequent server to ensure that software runs in a safe environment after the successful verification of the first secret key is determined.
In the process of operating the target object, identification information needs to be added, so that the server can control the software, and the safety of the software is enhanced; specifically, the running the target object after receiving that the client successfully verifies the first key includes:
under the condition that the client terminal successfully verifies the first key, sending a running code of the target object to the client terminal;
and receiving an input code sent by the client, and operating the target object under the condition that the input code is the same as the operation code of the target object.
The operation code can be understood as identification information of software operation, the identification information can be input into configuration information in a user input mode, and the identification information can be directly packaged and transmitted to a client when a software data packet is directionally transmitted to the client.
Specifically, the server sends the running code of the target object to the client when receiving the successful verification of the client for the first key, and when receiving the input code input by the client, the server compares the input code with the running code sent to the client to judge whether the running code is consistent with the input code, and if so, the server can run the target object.
In practical application, in order to further ensure the security of operating the target object, the server needs to judge whether the client receives the operation code, if the client has an unpredictable situation before operating the target object, the client may not receive the real operation code, if malicious personnel input an operation code at will and send the operation code to the server, the server can find that the input code is inconsistent with the operation code by comparing the operation code sent by the malicious personnel with the real operation code, and then the server will not operate the target object.
The object control method provided in the embodiment of the present specification realizes the operation control of the server on the software by adding the identification information of the client operation, and further enhances the security of the software operation.
Step 208: and generating a second key based on the first key, encrypting the data control instruction based on the second key, and controlling the target object according to the encrypted data control instruction.
The data control instruction may be understood as a specific control instruction of the server for software running in the client, such as a control software start instruction, a control software stop instruction, a control software pause instruction, and the like.
Specifically, the server may randomly generate a second key based on the first key, encrypt the data control instruction based on the second key, and send the encrypted data control instruction to the client, so as to control the target object in the client.
Further, the server can establish an interface binding relationship with the client to realize communication connection with the client, and further generate a second key; specifically, the generating a second key based on the first key includes:
receiving an interface binding request sent by the client, wherein the interface binding request carries a first secret key of the client;
and under the condition that the first key of the client is successfully matched with the first key of the authorization information, establishing communication connection with the client based on a binding interface, and generating a second key for the client based on the first key.
The second key may be understood as a key pair consistent with the type of the first key, and may include a public key and a private key.
Specifically, in order to implement connection between the client and the server, the client may send an interface binding request to the server, where the interface binding request carries a first key of the client, and the server may invoke the binding interface to establish communication connection with the client when the server successfully matches the received first key with the first key of the authorization information, and may randomly generate a second key for the client based on the first key.
In practical application, an API binding interface needs to be called between a server and a client to complete binding of the interface, and a random key pair, namely a second key pair, is obtained; therefore, the control instruction can be issued to the client based on the binding interface subsequently, and meanwhile, the control instruction can be processed based on the generated second secret key.
In the object control method provided in the embodiment of the present specification, interface binding is implemented between the server and the client, so that communication connection is established subsequently through the bound interface.
Further, the server may encrypt the data control instruction based on the second key to achieve control of the client; specifically, the encrypting the data control instruction based on the second key, and controlling the target object according to the encrypted data control instruction includes:
sending a private key of the second secret key to the client, encrypting a data control instruction based on a public key of the second secret key, and sending the encrypted data control instruction to the client;
and receiving a result that the client decrypts the encrypted data control instruction based on the private key of the second key and executes the data control instruction.
In practical application, in order to ensure that the client can decrypt the encrypted data control instruction, the server can send a private key of a second key to the client so as to decrypt the data control instruction subsequently, and the server can encrypt the data control instruction based on the public key of the second key and send the encrypted data control instruction to the client; the client side can decrypt the encrypted data control instruction based on the private key of the second secret key, execute the decrypted data control instruction and return the execution result to the server.
The object control method provided in the embodiment of the present specification further ensures security of control of a client by a server by encrypting a data control instruction.
After the communication connection is established between the server and the client, the reported information can be verified under the condition that the error report problem occurs to the software executed in the client; specifically, after encrypting the data control instruction based on the second key and controlling the target object according to the encrypted data control instruction, the method further includes:
receiving reporting information sent by the client, wherein the reporting information is information signed by the client based on a private key of the second key;
and verifying the report information based on the public key of the second secret key, and storing the report information under the condition that the report information is verified.
The reporting information can be understood as error reporting information of software, such as execution errors and network errors.
Specifically, after determining that the software has an error, the client sends the information content of the error, that is, the report information to the server, wherein the report information may be information signed by a private key of the second key on the basis of the client, the server verifies the report information on the basis of a public key of the second key, and the report information is stored when the report information passes verification; in practical application, the server stores the reported information, so that the software content, the authorization information and the like can be updated or upgraded subsequently according to the reported information, and the reported information is verified, so as to ensure that the reported information received by the server is the reported information of the client, and prevent malicious persons from damaging the reported information and influencing the safety of software operation.
In the object control method provided in the embodiment of the present specification, the report information returned by the client is verified, and the verified report information is stored, so that the software can be adjusted subsequently according to the report information, and the environmental security of software operation is ensured.
In another embodiment provided by the present specification, the running status of the software may be controlled by the number of the second keys corresponding to the software generated by the server; specifically, after encrypting the data control instruction based on the second key and controlling the target object according to the encrypted data control instruction, the method further includes:
and determining the number of the clients according to the number of the second keys, and controlling the operation of the target object based on the binding interface under the condition that the number of the clients reaches the preset number of the clients in the authorization information.
Specifically, in order to control the number of the clients of the software application, the server may determine the number of the clients according to the number of the second keys, and if it is determined that the number of the clients in which the software operates reaches the preset number of the clients, the server may control further operation of the software based on the binding interface.
In practical applications, the authorization information of the software has the maximum number of clients, for example, the version name is a standard version, the version ID is 1, and the maximum number of clients is 10; the version name is a professional version, the version ID is 2, and the maximum client number is 100; for example, the version of the software is a standard version, if the server determines that the number of the second keys is 9, the server may control the software to normally operate on 9 clients based on the binding interface if the server has not reached the maximum number of the clients (10), and if the server determines that the number of the second keys is 11, the server may control the software of the first ten clients to normally operate based on the binding interface and control the software on the 11 th client to stop operating if the server has reached the maximum number of the clients (10).
In the object control method provided in the embodiment of the present specification, the number of clients in which software runs at a client is determined according to the number of second keys generated by the server, and when the number of clients reaches a preset maximum number of clients, the software on the client can be further controlled based on the binding interface, so that the server can control the client.
In the object control method provided in another embodiment of the present specification, for a software authorization request sent by a client, a corresponding control instruction may be issued to the client to implement control of the client; specifically, after encrypting the data control instruction based on the second key and controlling the target object according to the encrypted data control instruction, the method further includes:
receiving an authorization request aiming at the target object sent by the client, and determining attribute information of the target object based on a user identification code carried in the authorization request;
and generating a control instruction aiming at the target object based on the attribute information of the target object and the target attribute information carried in the authorization request, encrypting the control instruction based on the second key, and returning the encrypted control instruction to the client through the binding interface.
The attribute information may be understood as information such as a software version of software run by the client, the number of users of the client, and a service life.
The target attribute information may be attribute information of a target requirement of a user for software, for example, an original software version is a standard version, and based on the requirement of the user, the target attribute information of the software is a professional version.
In practical application, when a server receives a software authorization request sent by a client, the server can determine the current attribute information of the software in the server based on a user identification code carried in the software authorization request, wherein the attribute information comprises basic attribute information such as the version of the software, the maximum client use number, the service life and the like; the server can match the current attribute information of the software with the target attribute information in the software authorization request, can determine the operation content of further authorization of the software, can further generate a control instruction of the software, then encrypts the control instruction based on the second secret key, and returns the encrypted control instruction to the client through the binding interface.
For example, the server determines that the attribute information of the current client running software is that the maximum client usage number is 5, and when receiving the target attribute information of the client number from the user, that is, the target maximum client usage number is 20, a control instruction for expanding the client number may be generated, encrypted, and sent to the client through the binding interface.
It should be noted that the server may periodically poll to acquire real-time authorization information of the software, and perform real-time verification on the software authorization information through encryption processing on the authorization information or the control instruction, for example, to verify whether the software reaches a use period, whether a target authorization function is implemented, and the like.
According to the object control method provided by the embodiment of the specification, the attribute information of the current software is compared with the target attribute information to generate the control instruction of the software, meanwhile, the control instruction is encrypted based on the second key and returned to the client side, the running condition of the current software can be verified in real time through the method, and the running of the software is controlled timely according to the requirement.
Based on this, the embodiments of the present specification describe the software authorization and protection process in detail, it should be noted that the object control method provided by the embodiments of the present specification is applied to a virtual application platform, and the virtual application platform generates a mirror image object control method based on the object control method and sends the mirror image object control method to at least one server associated with the virtual application platform.
In practical application, the application mirror image is created in the virtual application platform and comprises a control Agent instance and an application program running environment, so that the authorization and protection of the application software are deployed on a server.
To sum up, the object control method provided in the embodiments of the present specification utilizes an asymmetric key technology to operate and control the target object through the binding relationship between the first key, the second key, and the authorization information, so that when the target object performs authorization operations such as software version upgrade and signature renewal, the problem of hardware information and relocation authorization does not need to be considered, and data control can be performed on the target object at the client based on the second key directly, so as to achieve the effect of authorizing software operations, thereby not only improving the efficiency of the authorization operations, but also lowering the operation cost on the premise of ensuring the quality of software services.
In the following, with reference to fig. 3, the object control method provided in this specification is further described by taking an example where the object control method is applied to a virtual application platform. Fig. 3 is a schematic structural diagram illustrating a processing procedure of an object control method according to an embodiment of the present specification.
It should be noted that the object control method provided in this embodiment is implemented to be deployed in a virtual application platform, and a Docker container (an open-source application container engine) is utilized to enable a developer to deploy application software in a form of a data packet in a portable container in a unified manner, and then the application software can be subsequently issued to any server (including Linux machines and windows machines) in which the Docker engine is installed, and virtualization can also be implemented.
Fig. 3 is a schematic structural diagram of a scene in which software is deployed in a virtual container of a server, and this embodiment is a detailed description of a deployment module, where fig. 3 may be divided into an upper part and a lower part, where the upper part is a service provider environment a and the lower part is a customer environment B, and in the service provider environment a, an authorization management module, a software package management module, a mirror image management module, a project center service module, a software package download service module, a mirror image warehouse service module, project personnel and research personnel are mainly included; in the client environment B, there is mainly at least one server, and one server includes a Docker instance and other application instances, where the Docker instance includes an API invoker, a host controller, a cache (memory), and an application controller-polling service.
In specific implementation, under the service provider environment a, the authorization management module may include three functions of "customer authorization definition", "product version definition", and "customer dynamic authorization record", and provides an internal interface to "project center service", where the customer authorization definition may include a customer ID, a customer identification code, an authorization version ID, an RSA key pair (first key), and a start time; the authorized version may include version ID, number of clients, validity period, function list; the client dynamic authorization record includes a client identification code, a public key ID (hash value), an RSA key pair (second key), and an online status, it should be noted that the dynamic authorization record may also store a heartbeat record of the software last time.
The software package management module can read corresponding source codes from the application source codes and the Agent source codes and then sends the source codes to the compiling program for compiling, and the compiled application packages or the agents are uploaded to the software package downloading service, so that the compiling, packaging and pushing of the application software programs and the Agent software programs to the software package downloading service (used when the management and control Agent deploys application examples) are realized, and an internal interface is provided for the project center service module.
The mirror image management module searches public key information (first secret key) according to the customer ID, downloads an Agent application program and an application dependent software package to generate mirror image configuration (DockerFile), and sends the constructed mirror image to mirror image warehouse service, so that the Docker mirror image special for the customer is constructed based on the product version information purchased by the customer and pushed to the mirror image warehouse service. (for use by operation and maintenance personnel to deploy container instances), and provide an internal interface to the "project center service module".
The project center service module can comprise an application management module and a management and control API service module, wherein the application management module can manage the application state (starting, stopping and restarting) and application monitoring (CPU, memory and IO) of application software, and the management and control API service module can comprise a registration Agent interface, a dynamic authorization file acquisition interface, a heartbeat reporting interface, an application control instruction acquisition interface and an instruction execution result reporting interface; it should be noted that, the application management module implements remote management and status monitoring of project personnel on client instances, and provides an internal interface to the "project center service module"; the management and control API service module exposes various interface services to a management and control Agent for use in an API mode, such as an Agent binding interface, a dynamic authorization interface, a heartbeat interface, an application control instruction interface, an instruction execution result reporting interface and the like.
Further, the project center service module may implement construction task control on the user-specific application mirror image to implement construction and pushing of the corresponding client authorization definition information and the client-specific application mirror image generated according to the client purchase behavior, and referring to fig. 4, fig. 4 shows a flowchart of automatic construction of the application mirror image of the object control method provided in an embodiment of the present specification, which specifically includes the following steps.
Step 402: the client selects the software version, generates order information and sends the order information to the project center service of the server.
Step 404: and the project center service of the server calls authorization management to generate corresponding client authorization definition information according to the order information.
Specifically, the client authorization definition includes a client ID, a client identification code (randomly generated), a software version number, a start time, a purchase duration, an RSA public key pair (randomly generated), and a proprietary application image saving path (null by default).
Step 406: and the project center service of the server calls mirror management to construct a client-specific application mirror according to the client authorization definition information.
Specifically, the exclusive mirror image comprises a client RSA public key (first secret key), a management and control Agent program, an application running environment and a client identification code, and is uploaded to a mirror image warehouse according to a specified path, and the path of the client exclusive mirror image is stored in client authorization definition information.
The application image construction method provided by the embodiment is used for deploying container instances by operation and maintenance personnel, and provides internal interfaces for corresponding project center service modules.
Furthermore, project personnel issue application management instructions in the application management module to remotely control the software so as to realize the remote control of the client application based on specific project requirements, such as starting, stopping operation and the like; referring to fig. 5, fig. 5 is a flowchart illustrating remote management of client application software states of an object control method provided in an embodiment of the present specification, and specifically includes the following steps.
Step 502: and the server management and control Agent starts to complete the dynamic verification of the software and pulls the latest application management and control instruction at regular time.
The specific dynamic verification process can be detailed in the specific flow of dynamic verification, and will not be described in detail herein.
Step 504: and an application management module of the server reads a front-ranked application management and control instruction to be executed preferentially from the instruction queue to be executed by monitoring.
Step 506: and the application management module of the server writes the instruction content into the temporary file and executes the instruction content, writes the execution result into the executed instruction queue and deletes the temporary file.
Step 508: the main controller module of the server monitors data of a newly inserted management and control instruction execution result queue, calls a reporting instruction execution result interface of the management and control API, and when a next management and control instruction to be executed is obtained in a circulating manner, step 504 may be continuously executed until the circulating process is ended after no application management and control instruction exists in the instruction queue to be executed.
Specifically, the interface parameter verification algorithm: firstly, searching a corresponding private key from a client authorization definition according to the CustomId, then decrypting the ParamsEncrypted, comparing the decrypted private key with a CustomId plaintext in Params, and if the decrypted private key is consistent with the CustomId plaintext in the Params, continuing to judge; then, whether the current CustomId has a record which is bound by a corresponding Agent and is online is inquired from the dynamic authorization record of the client; only if the current CustomId does not have binding record or is bound but not on line, continuing to judge; judging whether the total number and the validity period of the currently bound client are normal according to the client authorization definition, if so, returning to the binding success (updating the online authorization binding record), and returning to a randomly generated second key pair to the Agent to call other interfaces for use; otherwise, the binding failure is returned.
The non-binding Agent interface verification algorithm comprises the following steps: checking a corresponding dynamic public key from a client dynamic authorization record according to the CustomId, signing the Params plaintext by using the public key, comparing and checking the Params signed, continuously executing if the check is passed, and returning an error if the check fails.
The specific process of remote control of the application software state and the interaction process between the server and the client provided in this embodiment may refer to the processes of the embodiments provided in the foregoing description, and are not described in detail herein.
Application management and control instruction format specification, main fields: the ActionId comprises an instruction ID (globally unique), an ActionName, an ActionScript, specific script content and Timeout, wherein the ActionScript comprises one or more shell commands, and the executor directly calls and judges whether the time is out or not. Examples are: the startTomcatApp instruction script logic may be, where http:// xxx. #! Bin/sh; wget http:// xxx.tgz-O app.tgz; tar zxvf app. Tgz-O/home/webapps; and/bin/sh/user/local/tomcat/bin/startup.
In addition, the Agent heartbeat detection control can poll the time of the next heartbeat packet in the dynamic authorization record at regular time, and the online state of the application can be maintained by using the following heartbeat detection algorithm: keepalive 5, representing the heart beat frequency, 5 representing 2 seconds; 200ms represents 200ms, offline 60 represents node offline time, namely after 60 seconds, the client is considered offline if heartbeat is not received, after the client is offline, the Agent currently uses the dynamic key and automatically fails, and the Agent needs to call the Agent binding interface again to obtain a new dynamic key (a second key).
The software package downloading service module is a software package uploaded by a software package management module based on open source software and other services storage; the mirror image warehouse service module is also based on open source software or a mirror image uploaded by the service storage mirror image management module; the project personnel are internal personnel of the software service provider and are responsible for managing client authorization and client application states; the research and development personnel are internal personnel of the software service provider and are responsible for developing application software programs (application programs and Agent programs) and making software packages, applying work such as Docerk mirror image making and the like and submitting codes to the code warehouse service.
In specific implementation, in the client environment B, the API invoker of the Agent instance in the Docker container instance in the server may include an encapsulation invocation management API function, a signing/signature verifying function (encryption signature/decryption signature), and an encryption/decryption function; the master controller-polling task comprises an Agent registration module, a dynamic authorization updating module, a pull control instruction module, an instruction result reporting module and a heartbeat reporting module; the cache region (memory) comprises a built-in public key (first secret key), a dynamic private key (second secret key), an authorization information ciphertext, an instruction queue to be executed, an executed instruction queue and a heartbeat packet; the application controller-polling task comprises a control instruction execution module and a state acquisition module; the application examples (which can be in a polymorphic form) comprise JDK + TOMCAT + WAR packages, JDK + FatJar packages and binary programs; the modules in the Agent examples can be mutually matched and communicated, and the application controller can send control application states or acquired monitoring data to other application examples.
In addition, the operation and maintenance personnel are technical personnel in charge of the operation and maintenance application for the interior of the client, and main responsibilities include system environment building, application program installation and deployment and the like.
It should be noted that the main controller is responsible for communication between the API invoker and the managed API service according to an open API, for example, authorization verification and obtaining of a software package address, and real-time software authorization verification and maintenance of a managed application instruction queue, the software package download service may also pull a software package from an Agent instance and enable an application instruction to a control instruction execution module of the application controller, and the mirror repository service may pull a mirror and start a Docker container instance.
And for the built-in public key (first key), each client has a unique first key (distributed by the server and recording the mapping relation between the public key and the client identification code), and depends on the binding Agent interface, and after the client identification code is encrypted by using the public key, the client can be in interface binding with the client according to the plaintext of the client identification code, and a dynamic private key (second key) is generated at the same time.
The dynamic private key (second key) is unique to each Agent instance, has the function of decrypting the authorization file, and can be signed by using parameters except the binding Agent API.
The authorization message ciphertext may be version number, start time, current network time (prevent modification of local time), maximum application instance number, function list number.
The heartbeat package comprises system time, application instance state starting, running, stopping, stopped and application instance resource occupation (comprising CPU, MEMORY, IO and the like).
The principle of a control instruction execution module in the application controller is to acquire a priority instruction to be executed from a cache region, execute the instruction, write the result into the cache region, read and execute a control instruction to be executed from a control application instruction queue, and acquire monitoring information (such as a CPU, MEMORY, IO, and the like) of an application program in real time.
It should be noted that the control instruction execution module of the Agent performs real-time verification on a client software authorization file (License) to implement real-time verification of client software purchase authorization, specifically, refer to fig. 6, where fig. 6 shows a flow chart of real-time verification of a software authorization file of an object control method provided in the embodiment of the present specification, and specifically, may include the following steps.
Step 602: and the server determines the user identification code according to the parameters specified by the operation and maintenance personnel and starts the container instance.
Specifically, the parameters set by the operation and maintenance personnel are the mirror image address and the environment variable of the application exclusive to the client.
Step 604: and executing a starting management and control Agent process by the container instance in the server.
In particular, a container instance may be specified using the ENTRYPCINT command when a Docker File is built.
Step 606: and the main controller of the server container instance management and control Agent judges whether the binding Agent interface calling the management and control API is successful, if so, step 608 is executed, and if not, step 616 is executed.
Specifically, the server needs to determine whether the interface is normally bound and whether the software is normally started, and if the binding is not successful, the verification may fail due to reasons such as incorrect keys or sufficient number of clients.
Step 608: the server may cache the private key of the random second key returned by the interface.
Step 610: the server can poll regularly to obtain real-time software authorization encryption information.
Step 612: the server determines whether the second key private key decryption authorization information is successful, if so, the verification is successful, step 614 is executed, and if not, step 616 is executed.
Step 614: the server determines that the software authorization file is successfully verified.
Specifically, if the decryption is successful, the authorization valid flag is TRUE.
Step 616: the server determines that the software authorization file fails to verify.
Specifically, if the decryption fails, the authorization validity flag is not TRUE.
The software authorization file real-time verification process provided by the embodiment can judge the current effective authorization information of the software, for example, aiming at the condition that the software wants to prolong the service time of the software, the new authorization information after the prolonged time can be pulled up in real time, and the validity period can be automatically prolonged.
Corresponding to the above method embodiment, the present specification further provides an object control apparatus embodiment, and fig. 7 shows a schematic structural diagram of an object control apparatus provided in an embodiment of the present specification. As shown in fig. 7, the apparatus includes:
a generating module 702 configured to generate authorization information of a target object according to object information carried in a control request for the target object sent by a client;
a sending module 704, configured to obtain the target object based on the object information, and send the target object and the first key in the authorization information to the client;
a running module 706 configured to run the target object upon receiving a successful verification of the client for the first key;
a control module 708 configured to generate a second key based on the first key, encrypt a data control instruction based on the second key, and control the target object according to the encrypted data control instruction.
Optionally, the running module 706 is further configured to:
a receiving module configured to send a public key of the first secret key to the client, and receive an identifier for encrypting a user identifier in the authorization information by the client based on the public key;
the matching module is configured to decrypt the identification code according to a private key of the first key, and under the condition that the decrypted user identification code is successfully matched with a pre-stored user identification code, the client side is confirmed to successfully verify the first key.
Optionally, the control module 708 is further configured to:
the encryption module is configured to send a private key of the second secret key to the client, encrypt a data control instruction based on a public key of the second secret key, and send the encrypted data control instruction to the client;
and the decryption module is configured to receive a result that the client decrypts the encrypted data control instruction based on a private key of the second key and executes the data control instruction.
Optionally, the apparatus further comprises:
an information receiving module configured to receive reporting information sent by the client, wherein the reporting information is information signed by the client based on a private key of the second key;
and the verification module is configured to verify the reporting information based on the public key of the second secret key, and store the reporting information under the condition that the reporting information is verified.
Optionally, the running module 706 is further configured to:
a running code sending module configured to send the running code of the target object to the client if the client successfully verifies the first key;
and receiving an input code sent by the client, and operating the target object under the condition that the input code is the same as the operation code of the target object.
Optionally, the control module 708 is further configured to:
receiving an interface binding request sent by the client, wherein the interface binding request carries a first secret key of the client;
and under the condition that the first key of the client is successfully matched with the first key of the authorization information, establishing communication connection with the client based on a binding interface, and generating a second key for the client based on the first key.
Optionally, the apparatus further comprises:
and determining the number of the clients according to the number of the second keys, and controlling the operation of the target object based on the binding interface under the condition that the number of the clients reaches the preset number of the clients in the authorization information.
Optionally, the apparatus further comprises:
receiving an authorization request aiming at the target object sent by the client, and determining attribute information of the target object based on a user identification code carried in the authorization request;
and generating a control instruction aiming at the target object based on the attribute information of the target object and the target attribute information carried in the authorization request, encrypting the control instruction based on the second key, and returning the encrypted control instruction to the client through the binding interface.
Optionally, the apparatus further comprises:
the object control device is applied to a virtual application platform, and the virtual application platform generates a mirror image object control device based on the object control device and sends the mirror image object control device to at least one server associated with the virtual application platform.
The object control device provided in the embodiment of the present specification utilizes an asymmetric key technology to operate and control a target object through a binding relationship between a first key, a second key, and authorization information, so that when an authorization operation such as upgrading a software version and renewing a signature of the target object is performed, a problem of hardware information and relocation authorization does not need to be considered, and data control of the target object at a client can be directly performed based on the second key, so as to achieve an effect of authorizing a software operation, thereby not only improving efficiency of the authorization operation, but also lowering operation cost on the premise of ensuring quality of a software service.
The above is a schematic configuration of an object control apparatus of the present embodiment. It should be noted that the technical solution of the object control device and the technical solution of the object control method belong to the same concept, and for details that are not described in detail in the technical solution of the object control device, reference may be made to the description of the technical solution of the object control method.
FIG. 8 illustrates a block diagram of a computing device 800, according to one embodiment of the present description. The components of the computing device 800 include, but are not limited to, memory 810 and a processor 820. The processor 820 is coupled to the memory 810 via a bus 830, and the database 850 is used to store data.
Computing device 800 also includes access device 840, access device 840 enabling computing device 800 to communicate via one or more networks 860. Examples of such networks include the Public Switched Telephone Network (PSTN), a Local Area Network (LAN), a Wide Area Network (WAN), a Personal Area Network (PAN), or a combination of communication networks such as the internet. Access device 840 may include one or more of any type of network interface (e.g., a Network Interface Card (NIC)) whether wired or wireless, such as an IEEE802.11 Wireless Local Area Network (WLAN) wireless interface, a worldwide interoperability for microwave access (Wi-MAX) interface, an ethernet interface, a Universal Serial Bus (USB) interface, a cellular network interface, a bluetooth interface, a Near Field Communication (NFC) interface, and so forth.
In one embodiment of the present description, the above-described components of computing device 800, as well as other components not shown in FIG. 8, may also be connected to each other, such as by a bus. It should be understood that the block diagram of the computing device architecture shown in FIG. 8 is for purposes of example only and is not limiting as to the scope of the description. Those skilled in the art may add or replace other components as desired.
Computing device 800 may be any type of stationary or mobile computing device, including a mobile computer or mobile computing device (e.g., tablet computer, personal digital assistant, laptop computer, notebook computer, netbook, etc.), mobile phone (e.g., smartphone), wearable computing device (e.g., smartwatch, smart glasses, etc.), or other type of mobile device, or a stationary computing device such as a desktop computer or PC. Computing device 800 may also be a mobile or stationary server.
Wherein processor 820 is configured to execute computer-executable instructions for executing the computer-executable instructions, wherein the steps of the object control method are implemented when the processor executes the computer-executable instructions.
The above is an illustrative scheme of a computing device of the present embodiment. It should be noted that the technical solution of the computing device belongs to the same concept as the technical solution of the object control method, and for details that are not described in detail in the technical solution of the computing device, reference may be made to the description of the technical solution of the object control method.
An embodiment of the present specification also provides a computer-readable storage medium storing computer-executable instructions that, when executed by a processor, implement the steps of the object control method.
The above is an illustrative scheme of a computer-readable storage medium of the embodiment. It should be noted that the technical solution of the storage medium belongs to the same concept as the technical solution of the object control method, and details that are not described in detail in the technical solution of the storage medium can be referred to the description of the technical solution of the object control method.
The foregoing description has been directed to specific embodiments of this disclosure. Other embodiments are within the scope of the following claims. In some cases, the actions or steps recited in the claims may be performed in a different order than in the embodiments and still achieve desirable results. In addition, the processes depicted in the accompanying figures do not necessarily require the particular order shown, or sequential order, to achieve desirable results. In some embodiments, multitasking and parallel processing may also be possible or may be advantageous.
The computer instructions comprise computer program code which may be in the form of source code, object code, an executable file or some intermediate form, or the like. The computer-readable medium may include: any entity or device capable of carrying the computer program code, recording medium, U.S. disk, removable hard disk, magnetic diskette, optical disk, computer Memory, read-Only Memory (ROM), random Access Memory (RAM), electrical carrier wave signal, telecommunications signal, and software distribution medium, etc. It should be noted that the computer-readable medium may contain suitable additions or subtractions depending on the requirements of legislation and patent practice in jurisdictions, for example, in some jurisdictions, computer-readable media may not include electrical carrier signals or telecommunication signals in accordance with legislation and patent practice.
It should be noted that, for the sake of simplicity, the foregoing method embodiments are described as a series of combinations of acts, but it should be understood by those skilled in the art that the embodiments are not limited by the described order of acts, as some steps may be performed in other orders or simultaneously according to the embodiments. Further, those skilled in the art should also appreciate that the embodiments described in this specification are preferred embodiments and that acts and modules referred to are not necessarily required for an embodiment of the specification.
In the above embodiments, the descriptions of the respective embodiments have respective emphasis, and for parts that are not described in detail in a certain embodiment, reference may be made to related descriptions of other embodiments.
The preferred embodiments of the present specification disclosed above are intended only to aid in the description of the specification. Alternative embodiments are not exhaustive and do not limit the invention to the precise embodiments described. Obviously, many modifications and variations are possible in light of the above teaching. The embodiments were chosen and described in order to best explain the principles of the embodiments and the practical application, to thereby enable others skilled in the art to best understand and utilize the embodiments. The specification is limited only by the claims and their full scope and equivalents.

Claims (12)

1. An object control method, comprising:
generating authorization information of a target object according to object information carried in a control request aiming at the target object sent by a client;
acquiring the target object based on the object information, and sending the target object and a first key in the authorization information to the client;
running the target object on the condition that the client terminal successfully verifies the first key is received;
and generating a second key based on the first key, encrypting the data control instruction based on the second key, and controlling the target object according to the encrypted data control instruction.
2. The object control method of claim 1, the client successfully authenticating to the first key, comprising:
sending a public key of the first secret key to the client, and receiving an identification code obtained by encrypting a user identification code in the authorization information by the client based on the public key;
and decrypting the identification code according to the private key of the first key, and confirming that the client successfully verifies the first key under the condition that the decrypted user identification code is successfully matched with the pre-stored user identification code.
3. The object control method according to claim 2, wherein the encrypting the data control instruction based on the second key, and controlling the target object according to the encrypted data control instruction comprises:
sending a private key of the second secret key to the client, encrypting a data control instruction based on a public key of the second secret key, and sending the encrypted data control instruction to the client;
and receiving a result that the client decrypts the encrypted data control instruction based on the private key of the second key and executes the data control instruction.
4. The object control method according to claim 3, wherein after encrypting the data control command based on the second key and controlling the target object according to the encrypted data control command, the method further comprises:
receiving reporting information sent by the client, wherein the reporting information is information signed by the client based on a private key of the second key;
and verifying the report information based on the public key of the second secret key, and storing the report information under the condition that the report information is verified.
5. The object control method of claim 3, the running the target object upon receiving a successful authentication of the client for the first key, comprising:
under the condition that the client terminal successfully verifies the first key, sending a running code of the target object to the client terminal;
and receiving an input code sent by the client, and operating the target object under the condition that the input code is the same as the operation code of the target object.
6. The object control method of claim 5, the generating a second key based on the first key, comprising:
receiving an interface binding request sent by the client, wherein the interface binding request carries a first key of the client;
and under the condition that the first key of the client is successfully matched with the first key of the authorization information, establishing communication connection with the client based on a binding interface, and generating a second key for the client based on the first key.
7. The object control method according to claim 6, wherein after encrypting the data control command based on the second key and controlling the target object according to the encrypted data control command, the method further comprises:
and determining the number of the clients according to the number of the second keys, and controlling the operation of the target object based on the binding interface under the condition that the number of the clients reaches the preset number of the clients in the authorization information.
8. The object control method according to claim 6, wherein after encrypting the data control command based on the second key and controlling the target object according to the encrypted data control command, the method further comprises:
receiving an authorization request aiming at the target object sent by the client, and determining attribute information of the target object based on a user identification code carried in the authorization request;
and generating a control instruction aiming at the target object based on the attribute information of the target object and the target attribute information carried in the authorization request, encrypting the control instruction based on the second key, and returning the encrypted control instruction to the client through the binding interface.
9. The object control method according to claim 1, further comprising: the object control method of any of claims 1-8 applied to a virtual application platform, the virtual application platform generating a mirrored object control method based on the object control method and sending the mirrored object control method to at least one server associated with the virtual application platform.
10. An object control device comprising:
the generation module is configured to generate authorization information of a target object according to object information carried in a control request for the target object sent by a client;
the sending module is configured to acquire the target object based on the object information and send the target object and a first key in the authorization information to the client;
a running module configured to run the target object upon receiving a successful verification of the client for the first key;
and the control module is configured to generate a second key based on the first key, encrypt a data control instruction based on the second key, and control the target object according to the encrypted data control instruction.
11. A computing device, comprising:
a memory and a processor;
the memory is configured to store computer-executable instructions, and the processor is configured to execute the computer-executable instructions, wherein the processor implements the steps of the object control method according to any one of claims 1 to 9 when executing the computer-executable instructions.
12. A computer-readable storage medium storing computer-executable instructions which, when executed by a processor, implement the steps of the object control method of any one of claims 1 to 9.
CN202110649813.3A 2021-06-10 2021-06-10 Object control method and device Pending CN115470472A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110649813.3A CN115470472A (en) 2021-06-10 2021-06-10 Object control method and device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110649813.3A CN115470472A (en) 2021-06-10 2021-06-10 Object control method and device

Publications (1)

Publication Number Publication Date
CN115470472A true CN115470472A (en) 2022-12-13

Family

ID=84364530

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110649813.3A Pending CN115470472A (en) 2021-06-10 2021-06-10 Object control method and device

Country Status (1)

Country Link
CN (1) CN115470472A (en)

Similar Documents

Publication Publication Date Title
US20210144213A1 (en) Application Customization
EP3158493B1 (en) Enabling user entropy encryption in non-compliant mobile applications
US9766914B2 (en) System and methods for remote maintenance in an electronic network with multiple clients
US8543799B2 (en) Client authentication during network boot
US7493487B2 (en) Portable computing environment
CN101258505B (en) Secure software updates
US10768903B2 (en) Virtualization layer for mobile applications
US7987357B2 (en) Disabling remote logins without passwords
WO2015171549A2 (en) Facilitating communication between mobile applications
EP2891055A1 (en) Secure app ecosystem with key and data exchange according to enterprise information control policy
US10277606B2 (en) Anonymous application wrapping
EP4322464A1 (en) Information transmission method, storage medium and electronic device
WO2016160039A1 (en) Wrapping an application with field-programmable business logic
TW201638822A (en) Method and device for identity authentication of process
MXPA05011088A (en) Portable computing environment.
CN111460410A (en) Server login method, device and system and computer readable storage medium
CN111901285A (en) Credibility verification method, system, equipment and storage medium
JP2012027887A (en) Server, terminal, program and service providing method
CN115470472A (en) Object control method and device
CN110674514B (en) Hard disk grading method, device and system
CN114579145A (en) Software deployment method and device, computer equipment and storage medium
CN114157470A (en) Token management method and device
CN111756675B (en) Data processing method, device, equipment and system
CN110248166B (en) Video information processing method, client, electronic device and storage medium
CN113836560A (en) Information processing method, device, equipment and storage medium

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
TA01 Transfer of patent application right
TA01 Transfer of patent application right

Effective date of registration: 20240227

Address after: # 03-06, Lai Zan Da Building 1, 51 Belarusian Road, Singapore

Applicant after: Alibaba Innovation Co.

Country or region after: Singapore

Address before: Room 01, 45th Floor, AXA Building, 8 Shanton Road, Singapore

Applicant before: Alibaba Singapore Holdings Ltd.

Country or region before: Singapore