CN111143788B - License processing method, electronic device, and storage medium - Google Patents

License processing method, electronic device, and storage medium Download PDF

Info

Publication number
CN111143788B
CN111143788B CN201911424550.5A CN201911424550A CN111143788B CN 111143788 B CN111143788 B CN 111143788B CN 201911424550 A CN201911424550 A CN 201911424550A CN 111143788 B CN111143788 B CN 111143788B
Authority
CN
China
Prior art keywords
license
software
identification information
electronic device
importing
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.)
Active
Application number
CN201911424550.5A
Other languages
Chinese (zh)
Other versions
CN111143788A (en
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.)
Qax Technology Group Inc
Secworld Information Technology Beijing Co Ltd
Original Assignee
Qianxin Technology Group Co Ltd
Secworld Information Technology Beijing Co 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 Qianxin Technology Group Co Ltd, Secworld Information Technology Beijing Co Ltd filed Critical Qianxin Technology Group Co Ltd
Priority to CN201911424550.5A priority Critical patent/CN111143788B/en
Publication of CN111143788A publication Critical patent/CN111143788A/en
Application granted granted Critical
Publication of CN111143788B publication Critical patent/CN111143788B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

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/10Protecting distributed programs or content, e.g. vending or licensing of copyrighted material ; Digital rights management [DRM]
    • G06F21/12Protecting executable software
    • G06F21/121Restricting unauthorised execution of programs

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Computer Security & Cryptography (AREA)
  • Theoretical Computer Science (AREA)
  • Multimedia (AREA)
  • Technology Law (AREA)
  • Computer Hardware Design (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

An embodiment of the present disclosure provides a license processing method applied to an electronic device, including: importing a license for software of the electronic device; in importing a license for software, the license is checked from multiple dimensions. The disclosed embodiments also provide an electronic device, a computer-readable storage medium and a computer program product.

Description

License processing method, electronic device, and storage medium
Technical Field
The present disclosure relates to the field of computer technologies, and in particular, to a license processing method applied to an electronic device, a computer-readable storage medium, and a computer program product.
Background
To prevent theft or abuse of software by a business or individual, it is desirable to control the use of the software with a software license. In the related art, after the terminal electronic device installs the software, a software license needs to be imported to use the related functions of the software.
In implementing the disclosed concept, the inventors found that there are at least the following problems in the related art: the software license verification mode is single, and the user can easily avoid the limitation of the software license and continue to illegally use the software function licensed by the software license.
Disclosure of Invention
In view of this, the disclosed embodiments provide a license processing method applied to an electronic device, an electronic device and a computer-readable storage medium.
One aspect of the disclosed embodiments provides a license processing method applied to an electronic device, including: importing a license for software of the electronic device; in the process of importing the license for the software, the license is verified from a plurality of dimensions.
According to an embodiment of the present disclosure, after the license is checked from a plurality of dimensions, the license processing method further includes: determining whether a system time of the electronic device has been modified; responding to the fact that the system time of the electronic equipment is modified, and acquiring the modified system time; and modifying the service life of the software based on the modified system time and the residual valid time of the license of the software installed in the electronic equipment.
According to an embodiment of the present disclosure, before modifying the service life of the software, the license processing method further includes: and determining the residual valid time of the license according to the introduction time of the license, the valid time of the license and the system time before modification.
According to an embodiment of the present disclosure, after the license is checked from a plurality of dimensions, the license processing method further includes: recording first identification information of the license in the process of importing the license for the software; recording second identification information of the first license in the process of importing the first license for the software; determining whether the second identification information is consistent with the first identification information; and terminating the import of the first license in response to determining that the second identification information matches the first identification information.
According to an embodiment of the present disclosure, after determining whether the second identification information is consistent with the first identification information, the license processing method further includes: determining whether the first license is a temporary license based on the identification information of the first license in response to determining that the second identification information is not consistent with the first identification information; and setting the remaining valid time of the first license to be zero in response to determining that the first license is a temporary license.
According to an embodiment of the present disclosure, before importing a license for software of an electronic device, the license processing method further includes: in the process of importing a first temporary license for the software, marking the software as trial software based on the identification information of the first temporary license; in the process of importing a second license for the trial software, determining whether the second license is a temporary license or not based on the identification information of the second license; and setting the remaining valid time of the second license to zero in response to determining that the second license is a temporary license.
According to an embodiment of the present disclosure, after determining whether the second license is a temporary license, the license processing method further includes: in response to determining that the second license is a formal license, marking the trial software as formal software; and re-determining the service life of the formal software according to the remaining effective time of the second license.
According to an embodiment of the present disclosure, in the process of importing the license for the software, verifying the license from multiple dimensions includes: acquiring device identification information of the electronic device in the process of importing the license for the software; and comparing the equipment identification information with the license information of the license to determine whether the license is available for the electronic equipment.
According to an embodiment of the present disclosure, in the process of importing the license for the software, verifying the license from multiple dimensions includes: acquiring the system time of the electronic equipment in the process of importing the license aiming at the software; and determining whether the license is invalid according to the generation time of the license and the system time.
According to an embodiment of the present disclosure, in the process of importing the license for the software, verifying the license from multiple dimensions includes: in the process of importing the license for the software, decrypting the license to acquire plaintext information and a first hash value; executing a predetermined hash algorithm on the plaintext information to obtain a second hash value; determining whether the second hash value is consistent with the first hash value; and terminating the import process of the license in response to determining that the second hash value is inconsistent with the first hash value.
Another aspect of the embodiments of the present disclosure provides an electronic device, which includes one or more processors and a storage device, where the storage device is configured to store executable instructions, and the executable instructions, when executed by the processors, implement the method of the embodiments of the present disclosure.
Another aspect of the embodiments of the present disclosure provides a computer-readable storage medium storing computer-executable instructions, which when executed by a processor, are used to implement the method of the embodiments of the present disclosure.
Another aspect of the disclosed embodiments provides a computer program product comprising a non-volatile computer-readable storage medium containing computer program code for implementing methods of the disclosed embodiments.
According to the embodiments of the present disclosure, a license can be verified in a plurality of dimensions, confirming whether the license is available, whereby it is possible to at least partially solve the problem in the related art that a user easily avoids the limitation of the license instead of illegally using software, and thus it is possible to achieve the technical effect of preventing the user from avoiding the limitation of the license instead of illegally using a software function requiring the license.
Drawings
The above and other objects, features and advantages of the present disclosure will become more apparent from the following description of embodiments of the present disclosure with reference to the accompanying drawings, in which:
fig. 1A schematically shows a system architecture in which a license processing method applied to an electronic device can be implemented according to an embodiment of the present disclosure;
FIG. 1B schematically shows a flow chart of a license processing method according to an embodiment of the present disclosure;
FIG. 2 schematically shows a flowchart of a license processing method applied to an electronic device according to an embodiment of the present disclosure;
fig. 3 schematically shows a flowchart of a license processing method applied to an electronic device according to another embodiment of the present disclosure;
fig. 4 schematically shows a flowchart of a license processing method applied to an electronic device according to another embodiment of the present disclosure;
fig. 5 schematically shows a flowchart of a license processing method applied to an electronic device according to another embodiment of the present disclosure;
fig. 6 schematically shows a flowchart of a license processing method applied to an electronic device according to another embodiment of the present disclosure;
fig. 7 schematically shows a flowchart of a license processing method applied to an electronic device according to another embodiment of the present disclosure;
fig. 8 schematically shows a flowchart of a license processing method applied to an electronic device according to another embodiment of the present disclosure;
fig. 9 schematically shows a flowchart of a license processing method applied to an electronic device according to another embodiment of the present disclosure;
fig. 10 schematically shows a flowchart of a license processing method applied to an electronic device according to another embodiment of the present disclosure; and
fig. 11 schematically shows a block diagram of an electronic device adapted to implement a license processing method applied to the electronic device according to an embodiment of the present disclosure.
Detailed Description
Hereinafter, embodiments of the present disclosure will be described with reference to the accompanying drawings. It should be understood that the description is illustrative only and is not intended to limit the scope of the present disclosure. In the following detailed description, for purposes of explanation, numerous specific details are set forth in order to provide a thorough understanding of the embodiments of the disclosure. It may be evident, however, that one or more embodiments may be practiced without these specific details. Moreover, in the following description, descriptions of well-known structures and techniques are omitted so as to not unnecessarily obscure the concepts of the present disclosure.
The terminology used herein is for the purpose of describing particular embodiments only and is not intended to be limiting of the disclosure. The terms "comprises," "comprising," and the like, as used herein, specify the presence of stated features, steps, operations, and/or components, but do not preclude the presence or addition of one or more other features, steps, operations, or components.
All terms (including technical and scientific terms) used herein have the same meaning as commonly understood by one of ordinary skill in the art unless otherwise defined. It is noted that the terms used herein should be interpreted as having a meaning that is consistent with the context of this specification and should not be interpreted in an idealized or overly formal sense.
Where a convention analogous to "at least one of A, B and C, etc." is used, in general such a construction is intended in the sense one having skill in the art would understand the convention (e.g., "a system having at least one of A, B and C" would include but not be limited to systems that have a alone, B alone, C alone, a and B together, a and C together, B and C together, and/or A, B, C together, etc.). Where a convention analogous to "A, B or at least one of C, etc." is used, in general such a construction is intended in the sense one having skill in the art would understand the convention (e.g., "a system having at least one of A, B or C" would include but not be limited to systems that have a alone, B alone, C alone, a and B together, a and C together, B and C together, and/or A, B, C together, etc.). It will be further understood by those within the art that virtually any disjunctive word and/or phrase presenting two or more alternative terms, whether in the description, claims, or drawings, should be understood to contemplate the possibilities of including one of the terms, either of the terms, or both terms. For example, the phrase "a or B" should be understood to include the possibility of "a" or "B", or "a and B".
The terms "first", "second" and "first" are used for descriptive purposes only and are not to be construed as indicating or implying relative importance or implicitly indicating the number of technical features indicated. Thus, a feature defined as "first" or "second" may explicitly or implicitly include one or more features.
The embodiment of the disclosure provides a license processing method applied to an electronic device. The method may include the following operations. Determining whether a system time of the electronic device has been modified, acquiring the modified system time in response to the system time of the electronic device having been modified, and modifying a lifetime of the software installed in the electronic device based on the modified system time and a remaining valid time of a license for the software.
In the embodiment of the disclosure, when the application program (i.e. software) on the electronic device imports the license, the application program reads the system time of the operating system of the electronic device, and calculates the service life of the application program based on the system time and the valid period of the license.
Fig. 1A schematically illustrates a system architecture 100 in which a license processing method applied to an electronic device may be implemented according to an embodiment of the present disclosure. It should be noted that fig. 1A is only an example of a system architecture to which the embodiments of the present disclosure may be applied to help those skilled in the art understand the technical content of the present disclosure, and does not mean that the embodiments of the present disclosure may not be applied to other devices, systems, environments or scenarios.
As shown in fig. 1A, the system architecture 100 according to this embodiment may include terminal devices 101, 102, 103, a network 104, and a server 105. The network 104 serves as a medium for providing communication links between the terminal devices 101, 102, 103 and the server 105. Network 104 may include various connection types, such as wired, wireless communication links, or fiber optic cables, to name a few.
A user may use the terminal devices 101, 102, 103 to interact with the server 105 over the network 104 to receive or transmit data or the like. Various applications (i.e., software) may be installed on the terminal devices 101, 102, 103, such as shopping applications, web browser applications, search applications, instant messaging tools, mailbox clients, social platform software, and the like.
The terminal devices 101, 102, 103 may be various electronic devices having a display screen and supporting web browsing, including but not limited to smart phones, tablet computers, laptop portable computers, desktop computers, and the like.
The server 105 may be a server providing various application download services and application management, for example, a user may download an application and a license corresponding to the application from the server 105 by using the terminal apparatuses 101, 102, 103, and send the license to the terminal apparatuses 101, 102, 103 according to a request of the application of the terminal apparatuses 101, 102, 103, so that the terminal apparatuses 101, 102, 103 introduce the license to the application, thereby using a function related to the application.
It should be noted that the license processing method applied to the electronic device provided by the embodiment of the present disclosure may be executed by the terminal devices 101, 102, and 103. The license processing method applied to the electronic device provided by the embodiment of the disclosure may also be executed by a terminal device or a terminal device cluster which is different from the terminal devices 101, 102, 103 and capable of communicating with the terminal devices 101, 102, 103 and/or the server 105. Alternatively, the license processing method applied to the electronic device provided by the embodiment of the present disclosure may be generally performed by the server 105. The license processing method applied to the electronic device provided by the embodiment of the present disclosure may also be executed by a server or a server cluster that is different from the server 105 and is capable of communicating with the terminal devices 101, 102, 103 and/or the server 105.
It should be understood that the number of terminal devices 101, 102, 103, network 104 and server 105 in fig. 1A is merely illustrative. There may be any number of terminal devices 101, 102, 103, networks 104 and servers 105, as desired for implementation.
Fig. 1B schematically shows a flowchart of a license processing method according to an embodiment of the present disclosure.
In an alternative embodiment of the present disclosure, as shown in fig. 1B, a license processing method applied to an electronic device may include the following operations S101 to S102.
In operation S101, a license is imported for software of an electronic device.
In embodiments of the present disclosure, the electronic device may include, but is not limited to, a smartphone, a tablet, a laptop portable computer, a desktop computer, and the like. Also, various software (application programs) can be installed on the electronic device. In addition, the license may be downloaded from a server and imported into the software of the electronic device, may be acquired from a portable storage device and imported into the software of the electronic device, or may be acquired from a local storage of the electronic device and imported into the software of the electronic device.
Next, in operation S102, in importing a license for software, the license is checked from a plurality of dimensions.
In embodiments of the present disclosure, in importing a license to software, the license may be verified from multiple aspects, confirming whether the license is available for the current software and the current electronic device.
By the embodiment of the disclosure, the license of the imported software can be verified from multiple aspects, the user can be prevented from easily avoiding the authorization of the license and illegally using the software of the electronic equipment, and the reliability of authorizing and managing the software through the license is improved.
The method shown in FIG. 1B is further described with reference to FIGS. 2-10 in conjunction with specific embodiments.
Fig. 2 schematically shows a flowchart of a license processing method applied to an electronic device according to an embodiment of the present disclosure.
Specifically, in an alternative embodiment of the present disclosure, as shown in fig. 2, after verifying the license from a plurality of dimensions in operation S102, the license processing method applied to the electronic device may include the following operations S201 to S203.
In operation S201, it is determined whether the system time of the electronic device has been modified.
In the embodiment of the present disclosure, the electronic device may be installed with a LINUX operating system, a Windows operating system, an android system, an apple system, and the like. Wherein the system time may be a time of an operating system of the electronic device. In addition, after the license is imported to the software, the software may periodically acquire the system time of the electronic device.
In embodiments of the present disclosure, various applications (i.e., software) may be installed on the electronic device, such as, for example, shopping-type applications, web browser applications, search-type applications, instant messaging tools, mailbox clients, social platform software, and the like. Some application software may be used only after some or all functions of the application software need to be imported with corresponding licenses. Where a license is also referred to as a software license, an authentication code, an authorization file, an identification code, a serial number, etc., the license may be a string of characters, a string of numbers, etc. In addition, when a license is imported for application software, the application software determines the life span of the application software (i.e., determines the life span of a function related to the license in the application software) based on the current system time and the valid time (i.e., valid period) of the license. The application software can periodically acquire the system time of the operating system of the electronic equipment, and if the system time variation acquired by the application software is not equal to the acquisition period of the system time, the system time is determined to be modified. For example, the acquisition period of the system time may be 5 seconds, 10 seconds, 30 seconds, 60 seconds, 10 minutes, 30 minutes, 60 minutes, 8 hours, 24 hours, 1 week, 2 weeks, 1 month, 6 months, 12 months, or the like. If the acquisition period of the system time is 60 seconds, the system time acquired last time is 18 minutes and 15 seconds at 24, 12 and 24 in 2019, and the system time acquired this time is 19 minutes and 10 seconds at 20, 24 and 24 in 2019, the system time of the electronic device is determined to be modified. If the system time is acquired in a period of 24 hours, the last acquired system time is 20 hours, 18 minutes and 15 seconds in 12 months and 24 days in 2019, and the system time acquired this time is 20 hours, 18 minutes and 15 seconds in 12 months and 25 days in 2019, it is determined that the system time of the electronic device is not modified.
In other embodiments of the present disclosure, if the acquisition period of the system time is too long, only the date and the hour may be acquired, or only the date, the hour and the minute may be acquired, so that a problem that the application software misjudges that the system time of the electronic device is modified due to a small timing error generated by a clock of the electronic device, so as to modify the service life of the software may be avoided, which is not limited in the present disclosure.
Then, in operation S202, in response to the system time of the electronic device having been modified, the modified system time is acquired.
In an embodiment of the present disclosure, if the application software determines that the system time of the electronic device has been modified, the modified system time is recorded so as to recalculate the useful life of the software based on the modified time.
Next, in operation S203, the lifespan of the software is modified based on the modified system time and the remaining valid time of the license for the software installed in the electronic device.
In the embodiment of the present disclosure, the remaining valid time of the license may be a period during which the license can be used, for example, the valid time of the license is 12 months, the remaining valid time of the license is also 12 months, and after 3 months, the valid time of the license is 12 months, and the remaining valid time of the license is 9 months. If the modified system time is 0 minutes 0 seconds at 24 days 20 at 12 months 24 years 2009 and the remaining valid time of the license is 9 months, then the useful life of the software is up to 0 minutes 0 seconds at 24 days 20 at 24 months 24 years 2010.
Through the embodiment of the disclosure, the software can periodically collect the system time of the electronic device, and if the system time is determined to be modified, the service life of the software is determined again based on the modified system time and the remaining valid time of the license. Therefore, the user can be effectively prevented from escaping from the expiration of the license by modifying the system time, and the software can be effectively controlled by using the license.
Fig. 3 schematically shows a flowchart of a license processing method applied to an electronic device according to another embodiment of the present disclosure.
Specifically, in an alternative embodiment of the present disclosure, as shown in fig. 3, before the operation S203 modifies the service life of the software, the license processing method may further include the following operation S301.
In operation S301, a remaining valid time of the license is determined according to the introduction time of the license, the valid time of the license, and the system time before modification.
In the embodiment of the disclosure, the import time of the license may be the system time of the electronic device when the license is imported into the software, the valid time of the license may be the remaining valid time when the license is imported into the software, and the system time before modification may be the system time of the electronic device collected last time by the software. If the import time of the license is 0 minute 0 second at 24 days 20 hours in 2019, month 24, the valid time of the license is 12 months, and the system time before modification is 0 minute 0 second at 24 days 20 hours in 2019, month 24, the remaining valid time of the license is 9 months.
It should be noted that operation S201 in fig. 3 corresponds to operation S201 in fig. 2, operation S202 in fig. 3 corresponds to operation S202 in fig. 2, and operation S203 in fig. 3 corresponds to operation S203 in fig. 2, which is not described again here.
Through the embodiment of the disclosure, the remaining effective time of the license is calculated based on the system time before modification, and the service life of the software is recalculated based on the remaining effective time of the license and the modified system time, so that the condition that the user avoids the license from being expired by modifying the license and further continues to use the license licensed function in the software can be effectively prevented.
Fig. 4 schematically shows a flowchart of a license processing method applied to an electronic device according to another embodiment of the present disclosure.
Specifically, in an alternative embodiment of the present disclosure, as shown in fig. 4, after verifying the license from multiple dimensions in operation S102 of fig. 1B, the license processing method applied to the electronic device may further include the following operations S401 to S404.
In operation S401, in importing a license for software, first identification information of the license is recorded.
In the embodiment of the present disclosure, the first identification information may be unique identification information of the license, for example, the license may be processed by using a Message digest algorithm 5(Message-digest algorithm 5, MD5 for short) to obtain an MD5 code, and the obtained MD5 code is used as the unique identification information of the license.
Then, in operation S402, in importing the first license for the software, second identification information of the first license is recorded.
In the embodiment of the present disclosure, the license may be imported for software multiple times, for example, multiple different licenses may be imported for the same software, the same license may be imported for the same software multiple times, and the same license may also be imported for the software of different electronic devices multiple times. When a license is imported for software, the software may record identification information of the license.
Next, in operation S403, it is determined whether the second identification information coincides with the first identification information.
In an embodiment of the present disclosure, the license corresponds to the first identification information, the first license corresponds to the second identification information, and both the first identification information and the second identification information exist uniquely. Therefore, it is possible to determine whether the first license and the license are the same software license by comparing whether the second identification information is identical to the first identification information.
Still next, in operation S404, in response to determining that the second identification information coincides with the first identification information, the import of the first license is terminated.
In the embodiment of the present disclosure, if the second identification information is identical to the first identification information, it is indicated that the first license and the license are the same software license. In order to prevent a user from extending the life of software by importing the same license multiple times for the software, the software rejects the same license multiple importations.
In the embodiment of the disclosure, in the process of importing the license, whether the first license currently being imported is the license of the already imported software is determined by comparing the second identification information of the first license currently being imported with the first identification information of the license of the already imported software, and if the first license currently being imported is determined to be the license of the already imported software, the importing of the first license is terminated, so that multiple importing of the same license is avoided, and the situation that the service life of the software is prolonged by importing the same license multiple times by a user is avoided.
Fig. 5 schematically shows a flowchart of a license processing method applied to an electronic device according to another embodiment of the present disclosure.
Specifically, in an alternative embodiment of the present disclosure, as shown in fig. 5, after determining whether the second identification information is consistent with the first identification information in operation S403 in fig. 4, the license processing method may further include the following operations S501 to S502.
In operation S501, in response to determining that the second identification information is not identical to the first identification information, it is determined whether the first license is a temporary license based on the second identification information of the first license.
In the embodiment of the present disclosure, if the second identification information is not identical to the first identification information, it is described that the first license and the license are different software licenses. At this time, it is necessary to further determine whether the first license is a temporary license. The identification information includes a type of license, and the type of license may include a formal license and a temporary license.
Next, in operation S502, in response to determining that the first license is the temporary license, the remaining valid time of the first license is set to zero.
In the embodiment of the disclosure, if it is determined that the first license is the temporary license, the remaining valid time of the first license may be cleared, so that when the temporary license is imported to the software, the service life of the software is not prolonged, and the situation of software abuse caused by importing the temporary license to the software is avoided.
It should be noted that operation S401 in fig. 5 corresponds to operation S401 in fig. 4, operation S402 in fig. 5 corresponds to operation S402 in fig. 4, and operation S403 in fig. 5 corresponds to operation S403 in fig. 4, which are not described again here.
Through the embodiment of the disclosure, whether the first license is the temporary license is determined through the second identification information of the first license, and when the first license is the temporary license, the remaining effective time of the first license is cleared, so that the user is prevented from prolonging the service life of the software by introducing the temporary license into the software, and abuse of the software is avoided.
Fig. 6 schematically shows a flowchart of a license processing method applied to an electronic device according to another embodiment of the present disclosure.
Specifically, in an alternative embodiment of the present disclosure, as shown in fig. 6, before the operation S101 of fig. 1B imports the license for the software of the electronic device, the license processing method may further include the following operations S601 to S603.
In operation S601, in importing the first temporary license for the software, the software is marked as trial software based on the identification information of the first temporary license.
In an embodiment of the present disclosure, when the software is not importing any license, if the first temporary license is imported into the software, the software is marked as trial software. The software category may include formal software and trial software.
Then, in operation S602, in importing the second license for the trial software, it is determined whether the second license is a temporary license based on the identification information of the second license.
In the embodiment of the present disclosure, if the type of software is trial software, when a license is imported to the software, it is necessary to determine whether the imported license is a temporary license.
Next, in operation S603, in response to determining that the second license is the temporary license, the remaining validity time of the second license is set to zero.
In the embodiment of the disclosure, if it is determined that the second license is the temporary license, the remaining valid time of the second license needs to be cleared, so that the user is prevented from importing the temporary license for the software multiple times, and the trial period of the trial software (i.e., the service life of the trial software) is prolonged.
Through the embodiment of the disclosure, if the temporary license is introduced into the trial software, the remaining effective time of the temporary license is cleared, so that the condition that the trial period of the trial software is prolonged by introducing the temporary license into the trial software by a user can be avoided, and abuse of the trial software can be prevented.
Fig. 7 schematically shows a flowchart of a license processing method applied to an electronic device according to another embodiment of the present disclosure.
Specifically, in an alternative embodiment of the present disclosure, as shown in fig. 7, after determining whether the second license is a temporary license in operation S603, the license processing method may further include the following operations S701 to S702.
In operation S701, the trial software is marked as formal software in response to determining that the second license is a formal license.
In the embodiment of the present disclosure, if the license to which the trial software is imported is a formal license, the type of the trial software may be changed to formal software.
Next, in operation S702, the life span of the formal software is redetermined according to the remaining valid time of the second license.
In an embodiment of the present disclosure, after the trial software is changed to the formal software, the service life of the software may be updated with the imported formal license.
It should be noted that operation S601 in fig. 7 corresponds to operation S601 in fig. 6, operation S602 in fig. 7 corresponds to operation S602 in fig. 6, and operation S603 in fig. 7 corresponds to operation S603 in fig. 6, and is not repeated herein.
Through the embodiment of the disclosure, the user can introduce the formal license into the trial software, change the trial software into the formal software, update the service life of the changed formal software, and can introduce the formal license without reinstalling the software, and can count the trial period into the service life of the software, thereby satisfying the legal requirements of the user and improving the user experience.
Fig. 8 schematically shows a flowchart of a license processing method applied to an electronic device according to another embodiment of the present disclosure.
Specifically, in an alternative embodiment of the present disclosure, as shown in fig. 8, operation S102, in the process of importing a license for software, verifying the license from multiple dimensions, may include the following operations S8021 to S8022.
In operation S8021, in the process of importing a license for software, device identification information of an electronic device is acquired.
In the embodiment of the present disclosure, the device identification information uniquely identifies hardware information of the electronic device, and the device identification information may include a hardware serial number, a Media Access Control (MAC) address, and the like of the electronic device.
Next, in operation S8022, the device identification information and the license information of the license are compared to determine whether the license is available for the electronic device.
In an embodiment of the present disclosure, the license information of the license may include device identification information of the electronic device that the license can use. Wherein, if the license information includes the same device identification information as the device identification information acquired in operation S8021, it may be determined that the license is usable with the electronic device, otherwise it is determined that the license is unusable with the electronic device.
According to the embodiment of the disclosure, the device identification information of the electronic device which can be used by the license is added into the license information of the license, and when the license is imported, whether the license can be used for the electronic device is confirmed by comparing the device identification information contained in the license information with the device identification information of the electronic device acquired in the importing process, so that the condition that a user imports the license into software on a plurality of electronic devices, and the license is multipurpose can be prevented, and abuse of the license is prevented.
Fig. 9 schematically shows a flowchart of a license processing method applied to an electronic device according to another embodiment of the present disclosure.
Specifically, in an alternative embodiment of the present disclosure, as shown in fig. 9, the operation S102, in the process of importing the license for the software, checks the license from multiple dimensions, and may include the following operations S9021 to S9022.
In operation S9021, in importing a license for software, a system time of an electronic device is acquired.
In the embodiment of the present disclosure, the generation time of the license may be contained in the license. In addition, the software may acquire the system time of the electronic device during the process of importing the license to the software.
Next, in operation S9022, it is determined whether the license is invalid according to the generation time of the license and the system time.
In an embodiment of the present disclosure, if a time interval between the generation time of the license and the acquired system time exceeds a set time period, it may be determined that the license is invalid, and thus the import of the license may be terminated, and if the time interval between the generation time of the license and the acquired system time does not exceed the set time period, it may be determined that the license is valid, and thus the import of the license may be continued. If the set time length is 12 months, the generation time of the license is 0 minutes and 0 seconds at 24 hours at 12 months and 25 days in 2018, and the acquired system time is 0 minutes and 0 seconds at 24 hours at 21 months and 24 days in 12 months and 21 months in 2018, it can be determined that the license is valid. If the set time length is 12 months, the generation time of the license is 0 minutes and 0 seconds at 24 hours at 25 months at 2018, and the acquired system time is 0 minutes and 0 seconds at 24 hours at 26 months at 2018, 12 months at 26, it can be determined that the license is invalid.
According to the embodiment of the disclosure, the time interval between the generation time of the license and the acquired system time of the electronic equipment is acquired, and the time interval is compared with the set time length to determine whether the license is invalid. In other words, if the license is left without software being imported for more than a set period of time, the license will automatically expire (i.e., the software cannot be imported), so that the timeliness of the license is emphasized, and the license can be effectively managed.
Fig. 10 schematically shows a flowchart of a license processing method applied to an electronic device according to another embodiment of the present disclosure.
Specifically, in an alternative embodiment of the present disclosure, as shown in fig. 10, the operation S102, in the process of importing the license for the software, checks the license from multiple dimensions, and may include the following operations S10021 to S10024.
In operation S10021, in importing a license for software, the license is decrypted to obtain plaintext information and a first hash value.
In an embodiment of the present disclosure, in order to secure the license, the license received by the electronic device may be a license file encrypted through multiple layers. For example, the server that generates the license may encrypt the plaintext information and the first hash value of the license using an asymmetric encryption algorithm (Ron rivetadi Shamir LeonardAdleman, RSA for short), a symmetric encryption algorithm (Rivest Cipher4, RC4 for short), or the like. The first hash value is obtained by executing a hash algorithm on the plaintext information of the license. The plaintext information may be a character string, a serial number, or the like.
Next, in operation S10022, a predetermined hash algorithm is performed on the plaintext information to obtain a second hash value.
In the embodiment of the disclosure, the software executes a hash algorithm on the plaintext information obtained by decryption, so as to obtain the second hash value. And the version of the hash algorithm used by the software is the same as the version of the hash algorithm used by the server that generated the license.
Next, in operation S10023, it is determined whether the second hash value is identical to the first hash value.
In the embodiment of the present disclosure, if the second hash value does not coincide with the first hash value, it may be said that the license has been tampered before the software is imported, and if the second hash value coincides with the first hash value, it may be said that the license has not been tampered before the software is imported.
Then, in operation S10024, in response to determining that the second hash value does not coincide with the first hash value, the import process of the license is terminated.
In an embodiment of the present disclosure, if the second hash value does not coincide with the first hash value, indicating that the license has been tampered with before the software is imported, the import process of the license may be terminated, and the use of the license may be thereby terminated.
Through the embodiment of the disclosure, the server for generating the license can utilize the hash algorithm to perform hash operation on the plaintext information of the license to obtain the first hash value, encrypt the plaintext information and the first hash value and then send the encrypted plaintext information and the first hash value to the electronic device, and the electronic device decrypts the encrypted file to obtain the plaintext information and the first hash value. Then, the software performs hash operation on the plaintext information by using a hash algorithm to obtain a second hash value, if the first hash value is different from the second hash value, the plaintext information of the license is falsified, and the license is prohibited from being imported into the software, so that the forged or modified license can be rejected from being imported into the software, and the illegal use of the software is prohibited.
Fig. 11 schematically shows a block diagram of an electronic device adapted to implement a license processing method applied to the electronic device according to an embodiment of the present disclosure. The electronic device shown in fig. 11 is only an example, and should not bring any limitation to the functions and the scope of use of the embodiments of the present disclosure.
As shown in fig. 11, an electronic device 1100 according to an embodiment of the present disclosure includes a processor 1101, which can perform various appropriate actions and processes according to a program stored in a Read Only Memory (ROM)1102 or a program loaded from a storage section 1108 into a Random Access Memory (RAM) 1103. The processor 1101 may comprise, for example, a general purpose microprocessor (e.g., a CPU), an instruction set processor and/or associated chipset, and/or a special purpose microprocessor (e.g., an Application Specific Integrated Circuit (ASIC)), among others. The processor 1101 may also include on-board memory for caching purposes. The processor 1101 may comprise a single processing unit or a plurality of processing units for performing the different actions of the method flows according to the embodiments of the present disclosure.
In the RAM 1103, various programs and data necessary for the operation of the electronic device 1100 are stored. The processor 1101, the ROM 1102, and the RAM 1103 are connected to each other by a bus 1104. The processor 1101 performs various operations of the method flow according to the embodiments of the present disclosure by executing programs in the ROM 1102 and/or the RAM 1103. It is to be noted that the programs may also be stored in one or more memories other than the ROM 1102 and the RAM 1103. The processor 1101 may also perform various operations of the method flows according to the embodiments of the present disclosure by executing programs stored in the one or more memories.
Electronic device 1100 may also include input/output (I/O) interface 1105, input/output (I/O) interface 1105 also connected to bus 1104, according to an embodiment of the disclosure. Electronic device 1100 may also include one or more of the following components connected to I/O interface 1105: an input portion 1106 including a keyboard, mouse, and the like; an output portion 1107 including a signal output unit such as a Cathode Ray Tube (CRT), a Liquid Crystal Display (LCD), and a speaker; a storage section 1108 including a hard disk and the like; and a communication section 1109 including a network interface card such as a LAN card, a modem, or the like. The communication section 1109 performs communication processing via a network such as the internet. A driver 1110 is also connected to the I/O interface 1105 as necessary. A removable medium 1111 such as a magnetic disk, an optical disk, a magneto-optical disk, a semiconductor memory, or the like is mounted on the drive 1110 as necessary, so that a computer program read out therefrom is mounted into the storage section 1108 as necessary.
According to embodiments of the present disclosure, method flows according to embodiments of the present disclosure may be implemented as computer software programs. For example, embodiments of the present disclosure include a computer program product comprising a computer program embodied on a computer readable storage medium, the computer program containing program code for performing the method illustrated by the flow chart. In such an embodiment, the computer program may be downloaded and installed from a network through the communication portion 1109 and/or installed from the removable medium 1111. The computer program, when executed by the processor 1101, performs the above-described functions defined in the electronic device of the embodiments of the present disclosure. According to embodiments of the present disclosure, the electronic devices, apparatuses, devices, modules, units, and the like described above may be realized by computer program modules.
The present disclosure also provides a computer-readable storage medium, which may be contained in the apparatus/device/system described in the above embodiments; or may exist separately and not be assembled into the device/apparatus/system. The computer-readable storage medium carries one or more programs which, when executed, implement the method according to an embodiment of the disclosure.
According to embodiments of the present disclosure, the computer-readable storage medium may be a non-volatile computer-readable storage medium, which may include, for example but is not limited to: a portable computer diskette, a hard disk, a Random Access Memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or flash memory), a portable compact disc read-only memory (CD-ROM), an optical storage device, a magnetic storage device, or any suitable combination of the foregoing. In the present disclosure, a computer readable storage medium may be any tangible medium that can contain, or store a program for use by or in connection with an instruction execution system, apparatus, or device. For example, according to embodiments of the present disclosure, a computer-readable storage medium may include the ROM 1102 and/or the RAM 1103 and/or one or more memories other than the ROM 1102 and the RAM 1103 described above.
The flowchart and block diagrams in the figures illustrate the architecture, functionality, and operation of possible implementations of systems, methods and computer program products according to various embodiments of the present disclosure. In this regard, each block in the flowchart or block diagrams may represent a module, segment, or portion of code, which comprises one or more executable instructions for implementing the specified logical function(s). It should also be noted that, in some alternative implementations, the functions noted in the block may occur out of the order noted in the figures. For example, two blocks shown in succession may, in fact, be executed substantially concurrently, or the blocks may sometimes be executed in the reverse order, depending upon the functionality involved. It will also be noted that each block of the block diagrams or flowchart illustration, and combinations of blocks in the block diagrams or flowchart illustration, can be implemented by special purpose hardware-based systems which perform the specified functions or acts, or combinations of special purpose hardware and computer instructions.
Those skilled in the art will appreciate that various combinations and/or combinations of features recited in the various embodiments and/or claims of the present disclosure can be made, even if such combinations or combinations are not expressly recited in the present disclosure. In particular, various combinations and/or combinations of the features recited in the various embodiments and/or claims of the present disclosure may be made without departing from the spirit or teaching of the present disclosure. All such combinations and/or associations are within the scope of the present disclosure.
The embodiments of the present disclosure have been described above. However, these examples are for illustrative purposes only and are not intended to limit the scope of the present disclosure. Although the embodiments are described separately above, this does not mean that the measures in the embodiments cannot be used in advantageous combination. The scope of the disclosure is defined by the appended claims and equivalents thereof. Various alternatives and modifications can be devised by those skilled in the art without departing from the scope of the present disclosure, and such alternatives and modifications are intended to be within the scope of the present disclosure.

Claims (11)

1. A license processing method applied to an electronic device includes:
importing a license for software of the electronic device; and
during the process of importing the license for the software, verifying the license from multiple dimensions;
before a license is imported for software of an electronic device, marking the software as trial software based on identification information of a first temporary license in the process of importing the first temporary license for the software;
in the process of importing a second license for the trial software, determining whether the second license is a temporary license or not based on the identification information of the second license; and
in response to determining that the second license is a temporary license, setting a remaining validity time of the second license to zero.
2. The method of claim 1, further comprising: after the license is checked out from multiple dimensions,
determining whether a system time of the electronic device has been modified;
in response to the system time of the electronic device having been modified, obtaining a modified system time; and
modifying the service life of the software based on the modified system time and the remaining valid time of the license of the software installed in the electronic device.
3. The method of claim 2, further comprising: prior to the modification of the useful life of the software,
and determining the residual valid time of the license according to the introduction time of the license, the valid time of the license and the system time before modification.
4. The method of claim 1, further comprising: after the license is checked out from multiple dimensions,
recording first identification information of the license in the process of importing the license for the software;
recording second identification information of a first license in the process of importing the first license for the software;
determining whether the second identification information is consistent with the first identification information; and
terminating the importing of the first license in response to determining that the second identification information is consistent with the first identification information.
5. The method of claim 4, further comprising: after determining whether the second identification information is identical to the first identification information,
in response to determining that the second identification information is inconsistent with the first identification information, determining whether the first license is a temporary license based on the second identification information of the first license; and
in response to determining that the first license is a temporary license, setting a remaining validity time of the first license to zero.
6. The method of claim 1, further comprising: after determining whether the second license is a temporary license,
in response to determining that the second license is a formal license, marking the trial software as formal software; and
and re-determining the service life of the formal software according to the remaining effective time of the second license.
7. The method of claim 1, wherein verifying the license from multiple dimensions during import of the license for the software comprises:
acquiring equipment identification information of the electronic equipment in the process of importing the license aiming at the software; and
and comparing the equipment identification information with the license information of the license to determine whether the license is available for the electronic equipment.
8. The method of claim 1, wherein verifying the license from multiple dimensions during import of the license for the software comprises:
acquiring the system time of the electronic equipment in the process of importing the license aiming at the software; and
and determining whether the license is invalid according to the generation time of the license and the system time.
9. The method of claim 1, wherein verifying the license from multiple dimensions during import of the license for the software comprises:
in the process of importing the license for the software, decrypting the license to obtain plaintext information and a first hash value;
executing a predetermined hash algorithm on the plaintext information to obtain a second hash value;
determining whether the second hash value is consistent with the first hash value; and
terminating the import process of the license in response to determining that the second hash value does not correspond to the first hash value.
10. An electronic device, comprising:
one or more processors;
a storage device for storing executable instructions which, when executed by the processor, implement the method of any one of claims 1 to 9.
11. A computer readable storage medium having stored thereon executable instructions which, when executed by a processor, implement a method according to any one of claims 1 to 9.
CN201911424550.5A 2019-12-31 2019-12-31 License processing method, electronic device, and storage medium Active CN111143788B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201911424550.5A CN111143788B (en) 2019-12-31 2019-12-31 License processing method, electronic device, and storage medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201911424550.5A CN111143788B (en) 2019-12-31 2019-12-31 License processing method, electronic device, and storage medium

Publications (2)

Publication Number Publication Date
CN111143788A CN111143788A (en) 2020-05-12
CN111143788B true CN111143788B (en) 2022-04-29

Family

ID=70523166

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201911424550.5A Active CN111143788B (en) 2019-12-31 2019-12-31 License processing method, electronic device, and storage medium

Country Status (1)

Country Link
CN (1) CN111143788B (en)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113486305B (en) * 2021-09-08 2021-12-17 深圳市信润富联数字科技有限公司 Software License verification method and system based on filtering, intercepting and encrypting technologies
CN114896621B (en) * 2022-07-15 2022-10-14 深圳竹云科技股份有限公司 Application service acquisition method, encryption method, device and computer equipment

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009199504A (en) * 2008-02-25 2009-09-03 Nec Corp License management system, terminal device, server device, license management method, program, and recording medium
CN106293551A (en) * 2015-06-26 2017-01-04 佳能株式会社 Information processor and method
CN107341368A (en) * 2017-06-06 2017-11-10 广州视源电子科技股份有限公司 Licensing effective time method of calibration and device
CN110008659A (en) * 2019-03-29 2019-07-12 深圳华锐金融技术股份有限公司 Outline management method, apparatus, computer equipment and the storage medium of software license

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009199504A (en) * 2008-02-25 2009-09-03 Nec Corp License management system, terminal device, server device, license management method, program, and recording medium
CN106293551A (en) * 2015-06-26 2017-01-04 佳能株式会社 Information processor and method
CN107341368A (en) * 2017-06-06 2017-11-10 广州视源电子科技股份有限公司 Licensing effective time method of calibration and device
CN110008659A (en) * 2019-03-29 2019-07-12 深圳华锐金融技术股份有限公司 Outline management method, apparatus, computer equipment and the storage medium of software license

Also Published As

Publication number Publication date
CN111143788A (en) 2020-05-12

Similar Documents

Publication Publication Date Title
US11178121B2 (en) Secure software updates
US9117055B2 (en) Method and apparatus for downloading DRM module
US8874922B2 (en) Systems and methods for multi-layered authentication/verification of trusted platform updates
US9197408B2 (en) Systems and methods for providing a secure data exchange
US8171560B2 (en) Secure content pre-distribution to designated systems
US20060168580A1 (en) Software-management system, recording medium, and information-processing device
CN110611657A (en) File stream processing method, device and system based on block chain
CN112182514A (en) Method, apparatus, device and computer readable medium for authorization verification
CN108923925B (en) Data storage method and device applied to block chain
CN107241620B (en) Digital rights management method of media content, DRM client and server
US8972732B2 (en) Offline data access using trusted hardware
CN111143788B (en) License processing method, electronic device, and storage medium
US20090025061A1 (en) Conditional peer-to-peer trust in the absence of certificates pertaining to mutually trusted entities
CN114880011A (en) OTA (over the air) upgrading method and device, electronic equipment and readable storage medium
US20140230068A1 (en) System and method for packaging and authenticating a software product
CN112528239B (en) Method and device for automatic authorization of software
JP2009251977A (en) Software installation system
JP2021118444A (en) Information processing device, information processing method, and program
CN110602075A (en) File stream processing method, device and system for encryption access control
CN111224826A (en) Configuration updating method, device, system and medium based on distributed system
KR101711024B1 (en) Method for accessing temper-proof device and apparatus enabling of the method
US20210288800A1 (en) Entitlement management message epoch as an external trusted time source
CN109614114B (en) License file acquisition method and device, readable storage medium and electronic equipment
US11790057B2 (en) Controlling program execution using an access key
WO2022085420A1 (en) Information processing device and method, and information processing system

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
GR01 Patent grant
GR01 Patent grant
CP01 Change in the name or title of a patent holder
CP01 Change in the name or title of a patent holder

Address after: Room 332, 3 / F, Building 102, 28 xinjiekouwei street, Xicheng District, Beijing 100088

Patentee after: QAX Technology Group Inc.

Patentee after: Qianxin Wangshen information technology (Beijing) Co.,Ltd.

Address before: Room 332, 3 / F, Building 102, 28 xinjiekouwei street, Xicheng District, Beijing 100088

Patentee before: QAX Technology Group Inc.

Patentee before: LEGENDSEC INFORMATION TECHNOLOGY (BEIJING) Inc.