KR20190078273A - Method for managing software license - Google Patents

Method for managing software license Download PDF

Info

Publication number
KR20190078273A
KR20190078273A KR1020170180106A KR20170180106A KR20190078273A KR 20190078273 A KR20190078273 A KR 20190078273A KR 1020170180106 A KR1020170180106 A KR 1020170180106A KR 20170180106 A KR20170180106 A KR 20170180106A KR 20190078273 A KR20190078273 A KR 20190078273A
Authority
KR
South Korea
Prior art keywords
license
information
client
present
expiration period
Prior art date
Application number
KR1020170180106A
Other languages
Korean (ko)
Other versions
KR102325430B1 (en
Inventor
권대길
조진웅
Original Assignee
전자부품연구원
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 전자부품연구원 filed Critical 전자부품연구원
Priority to KR1020170180106A priority Critical patent/KR102325430B1/en
Publication of KR20190078273A publication Critical patent/KR20190078273A/en
Application granted granted Critical
Publication of KR102325430B1 publication Critical patent/KR102325430B1/en

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/105Arrangements for software license management or administration, e.g. for managing licenses at corporate level

Abstract

The present invention relates to a method for managing a software license. More specifically, provided is an encoding and decoding method for a software license. According to the present invention, the method for managing a software license comprises: a step of receiving unique information from a client; and a step of generating a license by using the unique information and license expiration period information, and encrypting and transmitting the license without a separate encryption key. According to the present invention, the method for managing a software license may further include a step of receiving a license from a server and a step of performing decryption without an encryption key for the license.

Description

소프트웨어 라이센스 관리 방법{METHOD FOR MANAGING SOFTWARE LICENSE}METHOD FOR MANAGING SOFTWARE LICENSE [0002]

본 발명은 소프트웨어 라이센스 관리 방법으로서, 보다 상세하게는 소프트웨어 라이센스에 대한 부호화 및 복호화 방법에 관한 것이다. The present invention relates to a software license management method, and more particularly, to a method of encoding and decoding a software license.

종래 기술에 따른 소프트웨어 라이센스 발급 방식은 익명의 클라이언트 기반의 라이센스 발급 방법과, 시리얼키 기반의 라이센스 발급 방법이 제안되었는데, 이러한 라이센스 관리 방법은 별도의 암호화 알고리즘을 사용하여 라이센스를 암호화하고, 이를 다시 복호화하는 별도의 과정이 필요하고, 상용 라이센스 모듈에서 사용되어 별도의 비용이 발생하는 단점이 있으며, 중소 소프트웨어 업체에서는 가격적인 부담으로 인해 기술 사용에 대한 제약사항이 발생하는 문제점이 있다. A method of issuing a software license according to the related art has been proposed in which an anonymous client-based license issuing method and a serial key based license issuing method are proposed. In this license management method, a license is encrypted using a separate encryption algorithm, There is a disadvantage in that a separate process is required for the commercial license module and a separate cost is incurred. In the case of a small and medium sized software company, there is a problem that restrictions on the use of the technology occur due to the price burden.

본 발명은 전술한 문제점을 해결하기 위하여 제안된 것으로, 기존의 상용 라이센스 관리 모듈을 사용하지 않으면서(즉 라이센스 생성 이후 별도의 암호화 알고리즘을 사용하지 않으면서), 복잡도가 낮고 가격이 비교적 저렴한 유틸리티 소프트웨어를 대상으로 비교적 간단하게 라이센스를 관리하는 것이 가능한 소프트웨어 라이센스 관리 방법을 제공하는 데 그 목적이 있다. SUMMARY OF THE INVENTION The present invention has been proposed in order to solve the above-mentioned problems, and it is an object of the present invention to provide a low cost and low-cost utility software (for example, The present invention is directed to a software license management method capable of managing a license relatively easily.

본 발명에 따른 소프트웨어 라이센스 관리 방법은 클라이언트로부터 고유 정보를 수신하는 단계 및 고유 정보와 라이센스 만료 기간 정보를 이용하여 라이센스를 생성하고, 별도의 암호 키 없이 암호화하여 전송하는 단계를 포함하는 것을 특징으로 한다. A software license management method according to the present invention is characterized by including the steps of receiving unique information from a client, generating a license using unique information and license expiration period information, and encrypting and transmitting without generating a separate encryption key .

본 발명에 따른 소프트웨어 라이센스 관리 방법은 서버로부터 라이센스를 수신하는 단계 및 라이센스에 대하여 암호화 키 없이 복호화를 수행하는 단계를 포함하는 것을 특징으로 한다. A software license management method according to the present invention includes the steps of receiving a license from a server and performing decryption without an encryption key for a license.

본 발명의 실시예에 따르면, 라이센스 생성 이후 별도의 암호화 알고리즘 및 암호화 키를 활용한 암호화 과정이 불필요하게 되므로, 상용 라이센스 모듈과 비교하여 볼 때 별도의 비용이 발생되지 않아, 간단한 유틸리티 소프트웨어에 적용하기 적합한 효과가 있다. According to the embodiment of the present invention, since a separate encryption algorithm and an encryption process using the encryption key are not necessary after the license is generated, no additional cost is incurred in comparison with the commercial license module, There is an appropriate effect.

본 발명의 효과는 이상에서 언급한 것들에 한정되지 않으며, 언급되지 아니한 다른 효과들은 아래의 기재로부터 당업자에게 명확하게 이해될 수 있을 것이다.The effects of the present invention are not limited to those mentioned above, and other effects not mentioned can be clearly understood by those skilled in the art from the following description.

도 1은 본 발명의 실시예에 따른 소프트웨어 라이센스 관리 방법을 나타내는 순서도이다.
도 2는 본 발명의 실시예에 따른 부호화 과정 시의 MAC 주소 변환을 나타내는 도면이다.
도 3은 본 발명의 실시예에 따른 복호화 과정 시의 MAC 주소 변환을 나타내는 도면이다.
1 is a flowchart illustrating a software license management method according to an embodiment of the present invention.
2 is a diagram illustrating a MAC address conversion in the encoding process according to an embodiment of the present invention.
FIG. 3 is a diagram illustrating MAC address conversion in a decoding process according to an embodiment of the present invention. Referring to FIG.

본 발명의 전술한 목적 및 그 이외의 목적과 이점 및 특징, 그리고 그것들을 달성하는 방법은 첨부되는 도면과 함께 상세하게 후술되어 있는 실시예들을 참조하면 명확해질 것이다. BRIEF DESCRIPTION OF THE DRAWINGS The above and other objects, advantages and features of the present invention and methods of achieving them will be apparent from the following detailed description of embodiments thereof taken in conjunction with the accompanying drawings.

그러나 본 발명은 이하에서 개시되는 실시예들에 한정되는 것이 아니라 서로 다른 다양한 형태로 구현될 수 있으며, 단지 이하의 실시예들은 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 발명의 목적, 구성 및 효과를 용이하게 알려주기 위해 제공되는 것일 뿐으로서, 본 발명의 권리범위는 청구항의 기재에 의해 정의된다. The present invention may, however, be embodied in many different forms and should not be construed as being limited to the exemplary embodiments set forth herein. Rather, these embodiments are provided so that this disclosure will be thorough and complete, And advantages of the present invention are defined by the description of the claims.

한편, 본 명세서에서 사용된 용어는 실시예들을 설명하기 위한 것이며 본 발명을 제한하고자 하는 것은 아니다. 본 명세서에서, 단수형은 문구에서 특별히 언급하지 않는 한 복수형도 포함한다. 명세서에서 사용되는 "포함한다(comprises)" 및/또는 "포함하는(comprising)"은 언급된 구성소자, 단계, 동작 및/또는 소자가 하나 이상의 다른 구성소자, 단계, 동작 및/또는 소자의 존재 또는 추가됨을 배제하지 않는다.It is to be understood that the terminology used herein is for the purpose of describing particular embodiments only and is not intended to be limiting of the invention. In the present specification, the singular form includes plural forms unless otherwise specified in the specification. &Quot; comprises "and / or" comprising ", as used herein, unless the recited component, step, operation, and / Or added.

이하에서는, 당업자의 이해를 돕기 위하여 본 발명이 제안된 배경에 대하여 먼저 서술하고, 본 발명의 실시예에 대하여 서술하기로 한다. Hereinafter, the background of the present invention will be described in order to facilitate the understanding of those skilled in the art, and an embodiment of the present invention will be described.

종래 기술에 따른 소프트웨어 라이센스 발급 방식으로는 익명의 클라이언트 기반의 라이센스 발급 방식과, 시리얼 넘버 기반 라이센스 발급 방식이 있다. The conventional software license issuing method includes an anonymous client based license issuing method and a serial number based license issuing method.

익명의 클라이언트 기반 라이센스 발급 방식은 익명의 클라이언트로부터 수신한 CPU ID, MAC 주소와 같은 고유한 ID를 이용하여 서버에서 라이센스를 생성하고, 개인키로 암호화한다. 이후, 클라이언트에서는 암호화된 라이센스를 공개키로 다시 복호화한다. An anonymous client-based license issuance method generates a license on the server using a unique ID such as a CPU ID and a MAC address received from an anonymous client, and encrypts it with a private key. Thereafter, the client decrypts the encrypted license again with the public key.

MS Windows 제품에서 사용하는 시리얼 넘버 기반 라이센스 발급 방식은 기존의 라이센스 방식에다 시리얼 키를 별도로 추가하는 것으로, 서버에서 인증을 하고난 후 라이센스가 생성되면, 이를 클라이언트에 내려주는 방식이다. The serial number-based license issuance method used in MS Windows products adds a serial key separately to the existing license type, and when the license is generated after being authenticated by the server, it is sent to the client.

종래 기술에 따른 라이센스 관리 방법은 별도의 암호화 알고리즘을 사용하여 라이센스를 암호화하고, 이를 다시 복호화하는 별도의 과정을 거치도록 되어 있으며, 상용 라이센스 모듈에서 사용하고 있어 별도의 비용이 발생하는 단점이 있고, 중소 소프트웨어 업체에서는 가격적인 부담으로 기술 사용에 제약이 발생하는 문제점이 있다. The license management method according to the related art has a disadvantage in that a license is encrypted using a separate encryption algorithm and a separate process of decrypting the license is performed and used in a commercial license module, In the case of small and medium sized software companies, there is a problem that the use of technology is restricted due to the burden of the price.

본 발명은 전술한 종래 기술의 문제점을 해결하기 위하여 제안된 것으로, 라이센스 생성 이후 별도의 암호화 알고리즘을 사용하지 않고 비교적 간단하게 부호화/복호화를 수행하며 라이센스를 관리할 수 있는 방법을 제안한다. The present invention has been proposed in order to solve the problems of the above-described prior art, and suggests a method of managing licenses by performing encoding / decoding relatively simple without using a separate encryption algorithm after license generation.

도 1은 본 발명의 실시예에 따른 소프트웨어 라이센스 부호화 및 복호화 방법을 나타내는 도면이다. 1 is a diagram illustrating a software license encoding and decoding method according to an embodiment of the present invention.

클라이언트(200)가 서버(100)로부터 신규 라이센스를 발급받기 위해서는, 도 1에 도시한 바와 같은 라이센스 관리 절차가 수행된다. In order for the client 200 to issue a new license from the server 100, a license management procedure as shown in FIG. 1 is performed.

클라이언트(200)는 라이센스가 인스톨 될 컴퓨터의 고유아이디(CPU ID, MAC 주소 등)를 서버로 전송하여, 라이센스를 요청한다(S100). The client 200 transmits a unique ID (CPU ID, MAC address, etc.) of the computer where the license is to be installed to the server, and requests a license (S100).

서버(100)는 컴퓨터 고유아이디와 라이센스 만료기간을 정보를 이용하여 라이센스를 생성하고 암호 키 없이 암호화한 후 다시 클라이언트(200)에 전송한다(S200).The server 100 generates the license using the computer unique ID and the license expiration period information, encrypts the license without the encryption key, and transmits the encrypted license to the client 200 (S200).

클라이언트(200)는 복호화 키 없이 컴퓨터 고유아이디와 라이센스 만료기간을 복호화하고 이러한 정보를 기반으로 소프트웨어 실행 여부를 판단한다.The client 200 decodes the computer unique ID and the license expiration period without the decryption key, and determines whether the software is executed based on the information.

이하, 라이센스 부호화 과정에 대하여 서술한다. Hereinafter, the license encoding process will be described.

본 발명의 실시예에 대한 당업자의 이해를 돕기 위하여, Mac 주소는 18-D2-38-A1-C9-02 (16진수)이고, CPU ID는 24A83 (16진수)이고, 만료기간은 2017년 8월 31 (ToOaDate 함수 이용하면 42978임)이고, 프로그램코드는 1234-5678-9111-1121 (16진수)임을 가정하여 설명한다. To help those skilled in the art understand the embodiments of the present invention, the Mac address is 18-D2-38-A1-C9-02 (hexadecimal), the CPU ID is 24A83 (hexadecimal) Month 31 (using the ToOaDate function is 42978), and the program code is 1234-5678-9111-1121 (hexadecimal).

전술한 ToOaDate는 해당 날짜를 OLE 자동화 날짜로 변환시키는 함수로서, OLE 자동화 날짜는 1899년 12월 30일을 기준으로, 해당 날짜가 이전이나 이후로 얼마나 지났는지 일수로 나타내는 함수이다.  The above ToOaDate is a function that converts a given date to an OLE automation date. The OLE Automation date is a function that represents the number of days before or after that date, as of December 30, 1899.

예컨대, 1900년 1월 1일은 기준일로부터 이틀의 시간이 지났으므로 2이고, 1899년 12월29일은 기준일로부터 하루 전이므로 -1이다.For example, January 1, 1900 is 2 because two days have passed since the reference date, and December 29, 1899 is -1 since it is one day before the reference date.

이하, 저장되어 있는 프로그램 코드를 이용하여 라이센스를 생성하는 과정을 설명한다. Hereinafter, a process of generating a license using the stored program code will be described.

서버(100)는 전술한 바와 같이 클라이언트의 MAC 주소, CPU ID를 수신하고, 각 클라이언트(200)들마다 만료 기간을 정하며, 만료 기간을 암호화에 이용한다. The server 100 receives the MAC address and the CPU ID of the client as described above, sets an expiration period for each client 200, and uses the expiration period for encryption.

서버(100)는 도 2에 도시한 바와 같이, 클라이언트(200)로부터 수신한 12자리의 MAC 주소의 1번째와 맨 끝 자리를 이용하여 6자리의 수를 만든다. As shown in FIG. 2, the server 100 generates a 6-digit number by using the first and last digits of the 12-digit MAC address received from the client 200.

이어서, 서버(100)는 아래 [표 1]과 같이, MAC 주소와 CPU ID 및 만료기간을 이용하여 16자리의 수(정보 배열)를 만든다. Then, the server 100 creates a 16-digit number (information array) using the MAC address, the CPU ID, and the expiration period as shown in Table 1 below.

Figure pat00001
Figure pat00001

이어서, 서버(100)는 아래 [표 2]와 같이, 정보 배열의 MAC 주소 값들을 정보 배열에 저장시킨다. Then, the server 100 stores the MAC address values of the information array in the information array as shown in Table 2 below.

Figure pat00002
Figure pat00002

이어서, 서버(100)는 아래 [표 3]과 같이, 정보 배열의 순서에 대하여, 4개의 정보를 하나의 묶음으로 기준을 두어, 1→2→3→4의 순서를 2→1→4→3의 순서로 변경시킨다. Next, as shown in Table 3 below, the server 100 sets the order of the information arrangement as a bundle of four pieces of information, and sets the order of 1 → 2 → 3 → 4 as 2 → 1 → 4 → 3.

Figure pat00003
Figure pat00003

이어서, 서버(100)는 아래 [표 4]와 같이, 새로운 정보 배열의 CPU ID 2부분부터 프로그램 코드를 곱한다. Then, the server 100 multiplies the program code by the CPU ID 2 portion of the new information array as shown in Table 4 below.

Figure pat00004
Figure pat00004

이어서, 서버(100)는 아래 [표 5]와 같이, 정보 배열의 순서에 대하여, 전체를 역순으로 변경시킨다. Subsequently, the server 100 changes the order of the information arrangement in the reverse order as shown in Table 5 below.

Figure pat00005
Figure pat00005

이어서, 서버(100)는 아래 [표 6]과 같이, MAC 주소를 제외한 정보 배열의 각 자리에 기설정 수(59)를 더한다. Subsequently, the server 100 adds the predetermined number 59 to each position of the information array except for the MAC address as shown in Table 6 below.

Figure pat00006
Figure pat00006

이어서, 서버(100)는 아래 [표 7]과 같이, 정보 배열의 순서에 대하여, 4개의 정보를 하나의 묶음으로 기준을 두어, 1→2→3→4의 순서를 4→1→2→3의 순서로 변경시킨다. Next, as shown in Table 7 below, the server 100 sets the order of the information arrangement as a bundle of four pieces of information, and sets the order of 1 → 2 → 3 → 4 as 4 → 1 → 2 → 3.

Figure pat00007
Figure pat00007

이어서, 서버(100)는 아래 [표 8]과 같이, 255에서 각 정보 배열을 차연산한다. Then, the server 100 subtracts each information array from 255 as shown in Table 8 below.

Figure pat00008
Figure pat00008

이어서, 서버(100)는 아래 [표 9] 및 [표 10]과 같이, 정보 배열의 각 자리를 기설정 수(16)으로 나누어 몫과 나머지를 구한 후, 라이센스 배열에 이를 저장한다. Subsequently, the server 100 divides each digit of the information array by the preset number 16 to obtain the quotient and the remainder, and stores it in the license array as shown in [Table 9] and [Table 10] below.

Figure pat00009
Figure pat00009

Figure pat00010
Figure pat00010

이어서, 서버(100)는 아래 [표 11]과 같이, 새로 만든 라이센스 배열의 순서를 4개의 단위 묶음을 기준으로, 1→2→3→4의 순서를 4→2→3→1의 순서로 변경시킨다. Then, the server 100 sets the order of the newly created license arrangement as 4 → 2 → 3 → 1 in the order of 1 → 2 → 3 → 4 based on the four unit bundles as shown in the following table 11 Change it.

Figure pat00011
Figure pat00011

전술한 과정을 거친 최종 라이센스 결과는 DBBB24CB-1CC7A4BC-4DB7F8CA-3E2756ED이 된다. The final license result obtained through the above process is DBBB24CB-1CC7A4BC-4DB7F8CA-3E2756ED.

이하에서는, 클라이언트(200)의 라이센스 복호화 과정을 설명한다. Hereinafter, the license decryption process of the client 200 will be described.

클라이언트(200)는 복호화 키 없이 컴퓨터 고유 아이디와 라이센스 만료 기간을 복호화한다. The client 200 decrypts the computer unique ID and the license expiration period without the decryption key.

먼저, 클라이언트(200)는 아래 [표 12]와 같이, 입력 받은 라이센스를 라이센스 배열에 저장한다. First, the client 200 stores the input license in the license arrangement as shown in Table 12 below.

Figure pat00012
Figure pat00012

이어서, 클라이언트(200)는 라이센스 배열의 순서에 대하여, 아래 [표 13]과 같이, 4개의 정보를 하나의 묶음으로 기준을 두어, 1→2→3→4의 순서를 4→2→3→1의 순서로 변경시킨다. Next, as to the order of the license arrangement, the client 200 sets the order of 1 → 2 → 3 → 4 as 4 → 2 → 3 → 1.

Figure pat00013
Figure pat00013

이어서, 클라이언트(200)는 아래 [표 14]와 같이, 라이센스의 배열의 값을 이용하여 정보 배열을 복구시켜 저장한다. Then, the client 200 restores and stores the information array using the value of the license arrangement as shown in Table 14 below.

Figure pat00014
Figure pat00014

이어서, 클라이언트(200)는 아래 [표 15]와 같이, 새로 만든 정보 배열에 대해 기설정 수(255)에서 차연산한다. Next, the client 200 performs a difference operation on the newly created information array with the preset number 255 as shown in the following Table 15. [Table 15]

Figure pat00015
Figure pat00015

이어서, 클라이언트(200)는 정보 배열의 순서에 대하여, 아래 [표 16]과 같이, 4개의 정보를 하나의 묶음으로 기준을 두어, 1→2→3→4의 순서를 2→3→4→1의 순서로 변경시킨다. Next, the client 200 sets the order of the information arrangement as a bundle of four pieces of information, as shown in Table 16 below, and the sequence of 1 → 2 → 3 → 4 is 2 → 3 → 4 → 1.

Figure pat00016
Figure pat00016

이어서, 클라이언트(200)는 아래 [표 17]과 같이, 새로운 정보 배열에서 기설정 수(59)를 차연산하되, MAC 주소(뒤에서 6자리)는 이러한 연산에서 제외된다.Next, the client 200 subtracts the default number 59 from the new information array, as shown in Table 17 below, but excludes the MAC address (six digits from the back).

Figure pat00017
Figure pat00017

이어서, 클라이언트(200)는 아래 [표 18]와 같이, 정보 배열의 순서에 대하여, 전체를 역순으로 변경시킨다. Subsequently, the client 200 changes the order of the information arrangement in the reverse order as shown in the following [Table 18].

Figure pat00018
Figure pat00018

이어서, 클라이언트(200)는 처음 6자리의 MAC 주소의 부분은 제외하고, 정보 배열에 대해 아래 [표 19]처럼 프로그램 코드를 나누어 준다. Next, the client 200 divides the program code for the information array except for the portion of the first six digits of the MAC address as shown in [Table 19] below.

Figure pat00019
Figure pat00019

이어서, 클라이언트(200)는 정보 배열의 순서에 대하여, 아래 [표 20]과 같이, 4개의 정보를 하나의 묶음으로 기준을 두어, 1→2→3→4의 순서를 2→1→4→3의 순서로 변경시킨다. Next, the client 200 sets the order of the information arrangement as a bundle of four pieces of information, as shown in the following Table 20, so that the order of 1 → 2 → 3 → 4 is 2 → 1 → 4 → 3.

Figure pat00020
Figure pat00020

이어서, 클라이언트(200)는 아래 [표 21]과 같이, 각 정보배열을 MAC 주소, CPU ID, 만료 기간에 맞게 변경시킨다. Then, the client 200 changes each information array according to the MAC address, the CPU ID, and the expiration period as shown in the following Table 21. [Table 21]

Figure pat00021
Figure pat00021

이어서, 클라이언트(200)는 아래 [표 22]와 같이, MAC 주소, CPU ID 및 만료 기간을 출력 형식에 맞게 변환한다. Then, the client 200 converts the MAC address, the CPU ID, and the expiration period according to the output format as shown in the following Table 22. [Table 22]

Figure pat00022
Figure pat00022

이어서, 클라이언트(200)는 도 3에 도시한 바와 같이, MAC 주소를 18 - D2 - 38- A1 - C9 -02로 복호화하고, CPU ID를 아래 [표 23]과 같이 24A83으로 복호화하고, 만료 기간을 아래 [표 24]와 같이 복호화하되, 이는 FromOaDate 함수를 사용하여, 2017년 8월 31일로 복호화한다. 3, the client 200 decodes the MAC address into 18 - D2 - 38 - A1 - C9 - 02, decodes the CPU ID into 24A83 as shown in the following Table 23, Are decoded as shown in [Table 24] below, and decoded to August 31, 2017 using the FromOaDate function.

Figure pat00023
Figure pat00023

Figure pat00024
Figure pat00024

이제까지 본 발명의 실시예들을 중심으로 살펴보았다. 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자는 본 발명이 본 발명의 본질적인 특성에서 벗어나지 않는 범위에서 변형된 형태로 구현될 수 있음을 이해할 수 있을 것이다. 그러므로 개시된 실시예들은 한정적인 관점이 아니라 설명적인 관점에서 고려되어야 한다. 본 발명의 범위는 전술한 설명이 아니라 특허청구범위에 나타나 있으며, 그와 동등한 범위 내에 있는 모든 차이점은 본 발명에 포함된 것으로 해석되어야 할 것이다. The embodiments of the present invention have been described above. It will be understood by those skilled in the art that various changes in form and details may be made therein without departing from the spirit and scope of the invention as defined by the appended claims. Therefore, the disclosed embodiments should be considered in an illustrative rather than a restrictive sense. The scope of the present invention is defined by the appended claims rather than by the foregoing description, and all differences within the scope of equivalents thereof should be construed as being included in the present invention.

100: 서버 200: 클라이언트100: Server 200: Client

Claims (7)

(a) 클라이언트로부터 고유 정보를 수신하는 단계; 및
(b) 상기 고유 정보와 라이센스 만료 기간 정보를 이용하여 라이센스를 생성하고, 별도의 암호 키 없이 암호화하여 전송하는 단계
를 포함하는 소프트웨어 라이센스 관리 방법.
(a) receiving unique information from a client; And
(b) generating a license using the unique information and the license expiration period information, and encrypting and transmitting the license without using a separate encryption key
The software license management method comprising:
제1항에 있어서,
상기 (a) 단계는 MAC 주소 및 CPU ID를 상기 고유 정보로서 수신하는 것
인 소프트웨어 라이센스 관리 방법.
The method according to claim 1,
The step (a) may include receiving the MAC address and the CPU ID as the unique information
How to Manage Software Licenses.
제1항에 있어서,
상기 (b) 단계는 ToOaDate 함수를 이용하여 만료 기간 정보를 라이센스 생성에 적용하는 것
인 소프트웨어 라이센스 관리 방법.
The method according to claim 1,
The step (b) includes applying the expiration period information to license generation using the ToOaDate function
How to Manage Software Licenses.
제1항에 있어서,
상기 (b) 단계는 프로그램 코드 정보를 이용하여 상기 고유 정보 및 라이센스 만료 기간 정보를 처리하여 상기 라이센스를 생성하는 것
인 소프트웨어 라이센스 관리 방법.
The method according to claim 1,
The step (b) may include generating the license by processing the unique information and the license expiration period information using the program code information
How to Manage Software Licenses.
(a) 서버로부터 라이센스를 수신하는 단계; 및
(b) 상기 라이센스의 배열을 정보 배열로 변환하여, MAC 주소, CPU ID 및 만료 기간을 포함하는 상기 정보 배열을 획득하는 단계
를 포함하는 소프트웨어 라이센스 관리 방법.
(a) receiving a license from a server; And
(b) converting the arrangement of licenses into an information array and obtaining the information array including a MAC address, a CPU ID and an expiration period
The software license management method comprising:
제5항에 있어서,
상기 (b) 단계는 상기 정보 배열을 획득함에 있어서, 프로그램 코드 정보를 이용하는 것
인 소프트웨어 라이센스 관리 방법.
6. The method of claim 5,
The step (b) may include using the program code information in obtaining the information array
How to Manage Software Licenses.
제5항에 있어서,
상기 (b) 단계는 FromOaDate 함수를 이용하여 상기 만료 기간에 대한 정보를 확인하는 것
인 소프트웨어 라이센스 관리 방법.
6. The method of claim 5,
The step (b) includes checking the information on the expiration period using the FromOaDate function
How to Manage Software Licenses.
KR1020170180106A 2017-12-26 2017-12-26 Method for managing software license KR102325430B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020170180106A KR102325430B1 (en) 2017-12-26 2017-12-26 Method for managing software license

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020170180106A KR102325430B1 (en) 2017-12-26 2017-12-26 Method for managing software license

Publications (2)

Publication Number Publication Date
KR20190078273A true KR20190078273A (en) 2019-07-04
KR102325430B1 KR102325430B1 (en) 2021-11-12

Family

ID=67259297

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020170180106A KR102325430B1 (en) 2017-12-26 2017-12-26 Method for managing software license

Country Status (1)

Country Link
KR (1) KR102325430B1 (en)

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20020043178A (en) * 2000-12-01 2002-06-08 고즈끼 가게히꼬 Management system of game device, game device, control method, software recording medium
KR20020070689A (en) * 2001-03-02 2002-09-11 정지혜 The Installing and Executing Method To Use The Chiper Key
KR20090032216A (en) * 2007-09-27 2009-04-01 (주) 엘지텔레콤 System and method for renewal information of drm contents for repurchase and recording medium for recording function therefore
KR20150053277A (en) * 2013-10-29 2015-05-18 주식회사 현대케피코 Method And Apparatus for Controlling Software execution
KR20150060182A (en) * 2013-11-26 2015-06-03 한국과학기술정보연구원 License management Apparatus, license management systmem, license management method and storage medium

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20020043178A (en) * 2000-12-01 2002-06-08 고즈끼 가게히꼬 Management system of game device, game device, control method, software recording medium
KR20020070689A (en) * 2001-03-02 2002-09-11 정지혜 The Installing and Executing Method To Use The Chiper Key
KR20090032216A (en) * 2007-09-27 2009-04-01 (주) 엘지텔레콤 System and method for renewal information of drm contents for repurchase and recording medium for recording function therefore
KR20150053277A (en) * 2013-10-29 2015-05-18 주식회사 현대케피코 Method And Apparatus for Controlling Software execution
KR20150060182A (en) * 2013-11-26 2015-06-03 한국과학기술정보연구원 License management Apparatus, license management systmem, license management method and storage medium

Also Published As

Publication number Publication date
KR102325430B1 (en) 2021-11-12

Similar Documents

Publication Publication Date Title
EP3295362B1 (en) A method and system for verifying ownership of a digital asset using a distributed hash table and a peer-to-peer distributed ledger
US9830476B2 (en) System and method for cascading token generation and data de-identification
CN109150499B (en) Method and device for dynamically encrypting data, computer equipment and storage medium
KR100308322B1 (en) Method and apparatus for performing strong encryption or decryption of data using special encryption functions
US9021259B2 (en) Encrypted database system, client terminal, encrypted database server, natural joining method, and program
CN108256340B (en) Data acquisition method and device, terminal equipment and storage medium
CN104426973A (en) Cloud database encryption method, system and device
JP5846577B2 (en) System for detecting whether the client state matches a predetermined state
US10990691B2 (en) Secure deferred file decryption
CN109635573A (en) System, method, apparatus, electronic equipment and the medium of data distribution formula encryption and decryption
CN102307096A (en) Pseudo-Rivest, Shamir and Adleman (RSA)-key-based application method for recent public key cryptography algorithm
EP4273843A1 (en) Data sharing system, data sharing method, and data sharing program
CN110851865B (en) Resource data processing method, device, system and storage medium
US11431489B2 (en) Encryption processing system and encryption processing method
CN112016104B (en) Encryption method, device and system for financial sensitive data
CN112738051A (en) Data information encryption method, system and computer readable storage medium
CN109842589A (en) A kind of cloud storage encryption method, device, equipment and storage medium
EP3335370B1 (en) Enhanced obfuscation or randomization for secure product identification and verification
CN102222188A (en) Information system user password generation method
CA2565508A1 (en) Secure license key method and system
CN111010283B (en) Method and apparatus for generating information
WO2014109059A1 (en) Data encryption storage system and method
KR20190078273A (en) Method for managing software license
CN114640443B (en) Online engineering quotation safety interaction method and system
KR102284877B1 (en) Efficient functional encryption for set intersection

Legal Events

Date Code Title Description
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right