Installation management method, server and terminal for application program

A technology of application programs and management methods, applied in the field of communication, can solve problems such as no solution proposed, no effective application program anti-piracy program, etc., and achieve the effect of avoiding cracking and high reliability

Inactive Publication Date: 2012-05-09
LENOVO (BEIJING) CO LTD
3 Cites 39 Cited by

AI-Extracted Technical Summary

Problems solved by technology

[0003] However, since many applications used on terminal devices (such as mobile phones, etc.) can be spread through copying or piracy, the application programs written by application developers can be run...
the structure of the environmentally friendly knitted fabric provided by the present invention; figure 2 Flow chart of the yarn wrapping machine for environmentally friendly knitted fabrics and storage devices; image 3 Is the parameter map of the yarn covering machine
View more

Method used

In summary, with the aid of the above-mentioned technical solution of the present invention, it is possible to determine whether the user can install the application through the identification of the application and the user identification of the user who logs in to install the application and the installation history of the application. The installation of the application is effectively managed, and the illegal installation and transfer of the application are restricted to ensure that the application is not illegally disseminated; and, since the judgment process is performed by the server, and the judgment of the installation authority is based on the application and the user's Therefore, the management and control of application installation and use can be carried out only with the help of existing servers, and the anti-piracy mechanism can be effectively prevented from be...
the structure of the environmentally friendly knitted fabric provided by the present invention; figure 2 Flow chart of the yarn wrapping machine for environmentally friendly knitted fabrics and storage devices; image 3 Is the parameter map of the yarn covering machine
View more

Abstract

The invention provides an installation management method, a server and a terminal for an application program. The installation management method includes: receiving installation request sent by the terminal when a user installs the application program on the terminal, acquiring user identification of the user and application program identification of the application program, judging whether the relationship between the user identification and the application program identification meets a first predetermined condition and acquiring a first judgment result, acquiring installation history recorded information of the application program when the first judgment result indicates that the relationship between the user identification and the application program identification meets the first predetermined condition, judging whether the installation history recorded information meets a second predetermined condition and acquiring a second judgment result, sending feedback information which is used for indicating that the terminal is allowed to be installed with the application program when the second judgment result indicates that the installation history recorded information meets the second predetermined condition so as to enable the terminal to be installed with the application program according to the feedback information. By means of the installation management method, the server and the terminal for the application program, an anti-piracy mechanism can be effectively prevented from being broken, thereby having high reliability.

Application Domain

Technology Topic

Image

  • Installation management method, server and terminal for application program
  • Installation management method, server and terminal for application program
  • Installation management method, server and terminal for application program

Examples

  • Experimental program(1)

Example Embodiment

[0045] The specific embodiments of the present invention will be described in further detail below with reference to the accompanying drawings and embodiments.
[0046] figure 1 It is a flowchart of an application installation management method according to an embodiment of the present invention, and the method can be applied to a server, such as figure 1 shown, including the following steps:
[0047] Step S101, when a user installs an application on a terminal, receive an installation request sent by the terminal;
[0048] Step S102, obtaining the user ID of the user and the application ID of the application;
[0049] Step S103, judging whether the relationship between the user ID and the application ID satisfies a first predetermined condition, and obtaining a first judgment result;
[0050] Step S104, when the first judgment result indicates that the relationship between the user ID and the application ID satisfies the first predetermined condition, obtain the installation history record information of the application;
[0051] Step S105, judging whether the installation history record information satisfies the second reservation condition, and obtaining a second judgment result;
[0052] Step S106, when the second judgment result indicates that the installation history record information satisfies the second predetermined condition, send feedback information indicating that the terminal is allowed to install the application program to the terminal, so that the terminal can install the application program according to the feedback information.
[0053]Wherein, the first predetermined condition is: query whether the user ID and the application ID have a corresponding relationship in the application database. The second predetermined condition may include at least one of the following: the number of times of installation of the application program saved in the installation history record is less than or equal to the preset first threshold value, and the number of terminals that have ever installed the application program saved in the installation history record is less than or equal to is equal to the preset second threshold value. Specifically, the threshold value in the second predetermined condition can be flexibly set as required, and the two conditions of the number of installations and the number of installed terminals can be combined or used alone. List them one by one.
[0054] For example, user A purchases application program A1 in a mobile phone store, assuming that user A's user ID for logging in to the server is A2 (that is, user A's user ID is A2), the server will record and save the corresponding relationship between A2 and application program A1, Indicates that application A1 is purchased for user ID A2. If user A installs application A1 on mobile phone 1, user A can log in to the server with the username (user identification (ID) is A2) and install application A1 online (or, if user A installs application A1 on mobile phone 1) , User A can fill in the user name A2 during online installation, upload A2 to the server), the server will find out whether A2 has a corresponding relationship with the application program A1, if the corresponding relationship is found (that is, the first predetermined condition is satisfied), Then it is judged whether the installation history record information of the application program A1 satisfies the second predetermined condition. It is assumed that the second predetermined condition is that the application program can only be installed 10 times, because the installation times of the application program A1 is 0, which is less than the second predetermined condition. Therefore, user A is allowed to install application program A1 on mobile phone 1. At this time, the server will record and save that application program A1 has been installed once. Optionally, the server can obtain the identification of mobile phone 1 when making a judgment ( For example, the IMEI code of the mobile phone, the factory serial number of the mobile phone, etc.), therefore, the server can further record in the installation history record that the number of installations of the application A1 on the mobile phone 1 is 1 time, and can save the record in the user identification In the installation history of application A1 set by A2, in addition, if user A deletes application A1 from mobile phone 1 for some reason and then installs application A1 again, when the installation is complete, the server will update the application A1 The installation history record of the mobile phone is updated. Specifically, the application program A1 can be recorded and saved once. Optionally, since the server can obtain the identification of the mobile phone 1 when making a judgment, the application program A1 can be further recorded and saved. Installed 2 times on phone 1.
[0055] If user B logs in to the server with the username whose user ID is B2 and installs application A1 online, since the user ID who purchased application A1 is A2, the server will not find the corresponding relationship between B2 and application A1, so the server does not Allow user B to install application A1.
[0056] If user A presents application A1 to user B, user A also needs to notify user B of A2. User B installs application A1 on mobile phone 2, and user B logs in to the server with the username of user ID A2 and installs it online. For application A1, the server will find out whether A2 has a corresponding relationship with application A1. If the installation history record information is found to meet the second predetermined condition, user B will be allowed to install application A on mobile phone 2. At this time, the server will record and record the application A1. Save the application A installed once on mobile phone 2, the previous installation times on mobile phone 1 remain unchanged, and update the total installation times of application A1 to 3 times, you can save the record in application A1 for A2 in the installation history.
[0057] In addition, the second predetermined condition may specify that the application program can only be installed on a few terminals at most (for example, the second predetermined condition may specify that the application program can only be installed on a maximum of Installed on 3 terminals), at this time, the server needs to obtain the terminal identifier when the terminal requests to install, that is, when the server saves the installation history, it needs to indicate on which terminals the application has been installed and how many times as described above. In addition, the second predetermined condition may also combine the limitation of the number of installations with the limitation of the number of terminals, for example, the second predetermined condition at this time may be: the total number of installations of the application cannot exceed 12 times, and the maximum number of It can be installed on 3 terminals. Optionally, on this basis, the second predetermined condition may further include: the number of installations on each terminal cannot exceed 4 times.
[0058] In addition, in the process of installing the application program on the terminal, the server can not only receive the identification of the terminal to judge whether the second predetermined condition is satisfied, but also encrypt the combination of the identification of the terminal and the identification of the application by using the private key to generate an encrypted file, and then send the encrypted file to the terminal. In this way, when the terminal runs the application, the terminal will use the public key corresponding to the private key to decrypt the encrypted file, and determine the decrypted terminal identification and application identification and the terminal identification and application identification saved by the terminal. Whether the correspondence is the same, if the correspondence is the same (wherein, the correspondence is the same means: the terminal identifier is the same as the terminal identifier saved by the terminal, and the identifier of the decrypted application program is the same as the identifier of the application program saved by the terminal), then continue to run the application program , thereby improving the transmission security of the terminal identification and the application identification.
[0059] Since each developer has his own public-private key pair, even if one of the public key and private key is leaked, it will not affect the security of the application anti-piracy scheme, and by saving the installation in the history The terminal identifier of the application, and configuring the terminal identifier that allows the installation of the application in the second predetermined condition can achieve the purpose of binding the buyer with the mobile phone device and improve the security of the installation and use of the application.
[0060] The identification of the terminal is at least one of the following: the International Mobile Equipment Identity (IMEI) of the terminal, the Media Access Control (Medium/Media Access Control, MAC) address of the wireless network card, the factory address of the terminal serial number.
[0061] Through the above processing, the application program needs to obtain the installation permission of the server online during installation, so as to determine whether the user's login identity has permission to install. The installation permission policy (the above-mentioned second predetermined condition) can be determined by the server, and the judgment result can be obtained according to the user, the software and the installed times, and can be dynamically adjusted at any time. By transmitting the hardware identification of the user's mobile phone, the license file (License file) can be verified when the application is running. Specifically, the terminal can send the current mobile phone hardware identification (that is, the terminal identification described above) to the server, and the server can create the license. The file is then downloaded to the terminal for easy verification at runtime. figure 2 This is a flow chart of the installation process of the application program according to the embodiment of the present invention. The method is a server-based installation permission method. For example, when the application program is installed, the package installer of the mobile phone client needs to access the application store server through the Internet to decide whether to allow the installation on the mobile phone. on the device. like figure 2 shown, including the following processing:
[0062] Step S201, after the client package manager obtains the application installation package, it first verifies the signature of the application installation package. If the signature verification fails, the process proceeds to step S202, and if the signature verification fails, the process ends.
[0063] In step S202, the client package manager checks whether the application installation package declares that the anti-piracy function is required. If the anti-piracy function is required, the process goes to step S202. If the anti-piracy function is required, the process ends.
[0064] In step S203, the user logs in to the application store server, enters the account number (user ID, namely the above-mentioned user ID) and password after logging in, the package manager uses the user ID and the number AppID of the application installation package (that is, the above-mentioned user ID). Application ID) is submitted to the application store server to ask the application store server whether to allow the application to be installed.
[0065] Step S204, the application store server queries the database to obtain the corresponding installation history record information (user ID, AppID, installation equipment and/or installation times), if the installation history record information satisfies the second predetermined condition, then enter step S205, otherwise the process ends .
[0066] Step S205, continue to install the application, and at the same time increase the number of installations by 1 (according to the needs of the policy, the number of installations corresponding to the installation device can be increased by 1), in addition, the package manager can also send the terminal identification (that is, the identification of the installation device) to send to the app store server.
[0067] Step S206, the application store server encrypts the terminal identifier and the AppID of the application program by using the private key of the application developer, generates a license file, and returns the license file to the package manager.
[0068] In step S207, the package manager stores the license file in a specific directory of the system, and the installation process of the application program is completed.
[0069] In the embodiment of the present invention, the license file can be verified when the software is running after the application program is installed, the authorized device is allowed to run the program, and the unauthorized device is not allowed to run the program. Specifically, a developer can generate a pair of public and private keys when registering, the public key is provided to the developer, and the private key is kept by the operator. When developing an app, if the developer requires the anti-piracy function, he needs to call the software when the program starts running. The anti-piracy function code in the SDK provided by the administrator. This function is used to verify whether the local license file is legal. This code is provided by the mobile phone application store operator in the form of the mobile client SDK function. image 3 It is a flow chart of the running process of the application program according to the embodiment of the present invention, and the method is based on the operation permission mode of the local license file, and the license file is verified when the application program is running, such as image 3 shown, including the following steps:
[0070] In step S301, the application program with the anti-piracy function enabled will first find the license file from a specific directory of the system when running.
[0071] Step S302, the application program uses the developer to decrypt the license file by using the public key to obtain the terminal identifier and the application program number AppID.
[0072] Step S303, compare the terminal identification obtained by decryption with the terminal identification in the current system to determine whether the two are consistent, if they are consistent, continue to run the application, otherwise exit the application and prompt the user.
[0073] Figure 4 It is a schematic diagram of the process of managing the running of the application in the method according to the embodiment of the present invention, such as Figure 4 As shown, assuming that the server needs to retrieve the mobile phone's hardware identifier (for example, the mobile phone's IMEI code) from the mobile phone to generate the license file, assuming that the license file generated by the server is "001101010111010100101010101010", when the mobile phone needs to run the application, the server will The IMEI and application identification (AppID) encrypted by the public key are sent to the mobile phone, and the mobile phone will use its pre-saved private key to decrypt the encrypted information sent by the server. If the decrypted IMEI is the same as the IMEI of the terminal, And the application AppID obtained by decryption is the same as the application AppID of the application expected to be run, then continue to run the application, and if one of the above two sets of comparisons is inconsistent, it is not allowed to run.
[0074] Figure 5 It is another flowchart of the application installation management method according to the embodiment of the present invention. The method is applied to a terminal, such as Figure 5 shown, including the following processing:
[0075] Step S501, when the user installs an application program on the terminal, send an installation request to the server, wherein the installation request carries the user ID of the user and the application ID of the application;
[0076] Step S502, the terminal receives the feedback information from the server, and installs the application program according to the feedback information, wherein the feedback information is determined by the server whether the relationship between the user identification and the application program identification satisfies the first predetermined condition, and the installation history of the application program satisfies the second. It is sent to the terminal under predetermined conditions, and the feedback information is used to indicate that the terminal is allowed to install the application program.
[0077] Wherein, the first predetermined condition is: query whether the user ID and the application ID have a corresponding relationship in the application database. The second predetermined condition may include at least one of the following: the number of times of installation of the application program saved in the installation history record is less than or equal to the preset first threshold value, and the number of terminals that have ever installed the application program saved in the installation history record is less than or equal to is equal to the preset second threshold value. Specifically, the threshold value in the second predetermined condition can be flexibly set as required, and the two conditions of the number of installations and the number of installed terminals can be combined or used alone. List them one by one.
[0078] Image 6 is a structural block diagram of the server according to the embodiment of the present invention, such as Image 6 shown, including:
[0079] a receiving module 61, configured to receive an installation request sent by a terminal when a user installs an application through a terminal;
[0080] The first obtaining module 62 is used to obtain the user identification of the user and the application identification of the application;
[0081] The first judgment module 63 is used for judging whether the relationship between the user ID and the application ID satisfies the first predetermined condition, and obtains the first judgment result;
[0082] The second obtaining module 64 is configured to obtain the installation history record information of the application when the first judgment result indicates that the relationship between the user identifier and the application identifier satisfies the first predetermined condition;
[0083] The second judgment module 65 is used to judge whether the installation history record information satisfies the second reservation condition, and obtain the second judgment result;
[0084] The sending module 66 is configured to send feedback information indicating that the terminal is allowed to install the application program to the terminal when the second judgment result indicates that the installation history record information satisfies the second predetermined condition, so that the terminal installs the application program according to the feedback information.
[0085] Wherein, the first predetermined condition is: query whether the user ID and the application ID have a corresponding relationship in the application database; the second predetermined condition includes at least one of the following: the number of installations of the application saved in the installation history record is less than or equal to the predetermined The set first threshold value, the number of terminals that have installed the application program saved in the installation history record is less than or equal to the preset second threshold value.
[0086] Figure 7 is a structural block diagram of a terminal according to an embodiment of the present invention, such as Figure 7 shown, including:
[0087] The sending module 71 is configured to send an installation request to the server when the user installs an application on the terminal, wherein the installation request carries the user ID of the user and the application ID of the application;
[0088] The receiving module 72 is configured to receive feedback information from the server, wherein the feedback information is judged by the server whether the relationship between the user identification and the application identification satisfies the first predetermined condition, and the installation history of the application meets the second predetermined condition. Sent to the terminal, the feedback information is used to indicate that the terminal is allowed to install the application;
[0089] The processing module 73 is configured to install the application program on the terminal according to the feedback information.
[0090] Wherein, the first predetermined condition is: query whether the user ID and the application ID have a corresponding relationship in the application database. The second predetermined condition may include at least one of the following: the number of times of installation of the application program saved in the installation history record is less than or equal to the preset first threshold value, and the number of terminals that have ever installed the application program saved in the installation history record is less than or equal to is equal to the preset second threshold value. Specifically, the threshold value in the second predetermined condition can be flexibly set as required, and the two conditions of the number of installations and the number of installed terminals can be combined or used alone. List them one by one.
[0091] Wherein, the above-mentioned sending module 71, receiving module 72 and processing module 73 can all be set in the package manager of the terminal.
[0092] With the help of the above-mentioned server and terminal, it is possible to determine whether the user can install the application program based on the identification of the application program, the user identification who logs in to install the application program, and the installation history of the application program, and can effectively manage the installation of the application program. The illegal installation and transfer of the program are restricted to ensure that the application program will not be illegally spread.
[0093] Image 6 , Figure 7 It is the server and terminal corresponding to the previous method. The working process and working principle of the server and the terminal have been described in detail in the method section, and will not be repeated here.
[0094] To sum up, with the help of the above technical solutions of the present invention, it is possible to determine whether the user can install the application through the identification of the application, the user identification who has logged in to install the application, and the installation history of the application, and can determine whether the user can install the application. The installation is effectively managed, and the illegal installation, transfer, etc. of the application program are restricted to ensure that the application program is not illegally spread; and, since the judgment process is performed by the server, and the judgment of the installation authority is based on the application program and the user's identity, Therefore, the management and control of application installation and use can be performed only with the help of the existing server, and the anti-piracy mechanism can be effectively prevented from being cracked, which has high reliability; The generated license file realizes the binding of the terminal and the application, and further improves the security of use.
[0095] The above are only the preferred embodiments of the present invention. It should be pointed out that for those skilled in the art, without departing from the principles of the present invention, several improvements and modifications can be made, and these improvements and modifications should also be It is regarded as the protection scope of the present invention.
the structure of the environmentally friendly knitted fabric provided by the present invention; figure 2 Flow chart of the yarn wrapping machine for environmentally friendly knitted fabrics and storage devices; image 3 Is the parameter map of the yarn covering machine
Login to view more

PUM

no PUM

Description & Claims & Application Information

We can also present the details of the Description, Claims and Application information to help users get a comprehensive understanding of the technical details of the patent, such as background art, summary of invention, brief description of drawings, description of embodiments, and other original content. On the other hand, users can also determine the specific scope of protection of the technology through the list of claims; as well as understand the changes in the life cycle of the technology with the presentation of the patent timeline. Login to view more.
the structure of the environmentally friendly knitted fabric provided by the present invention; figure 2 Flow chart of the yarn wrapping machine for environmentally friendly knitted fabrics and storage devices; image 3 Is the parameter map of the yarn covering machine
Login to view more

Similar technology patents

Processing technology of fan

Owner:苏州市凌云工艺扇厂

Classification and recommendation of technical efficacy words

  • Prevent cracking
  • Improve reliability

Arc-shaped cutting anastomat

ActiveCN101912284AGood assembly firmnessImprove reliabilitySurgical staplesDistal anastomosisEngineering
Owner:CHANGZHOU JIANRUIBAO MEDICAL DEVICES

Distributed power harvesting systems using DC power sources

ActiveUS20080143188A1Improve reliabilitySafe operating voltageDc network circuit arrangementsBatteries circuit arrangementsTransverterVoltage variation
Owner:SOLAREDGE TECH LTD
Who we serve
  • R&D Engineer
  • R&D Manager
  • IP Professional
Why Eureka
  • Industry Leading Data Capabilities
  • Powerful AI technology
  • Patent DNA Extraction
Social media
Try Eureka
PatSnap group products