KR20010038207A - Online distribution method of computer programs - Google Patents

Online distribution method of computer programs Download PDF

Info

Publication number
KR20010038207A
KR20010038207A KR1019990046091A KR19990046091A KR20010038207A KR 20010038207 A KR20010038207 A KR 20010038207A KR 1019990046091 A KR1019990046091 A KR 1019990046091A KR 19990046091 A KR19990046091 A KR 19990046091A KR 20010038207 A KR20010038207 A KR 20010038207A
Authority
KR
South Korea
Prior art keywords
user
data block
distribution system
computer program
pdb
Prior art date
Application number
KR1019990046091A
Other languages
Korean (ko)
Other versions
KR100367094B1 (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 KR10-1999-0046091A priority Critical patent/KR100367094B1/en
Publication of KR20010038207A publication Critical patent/KR20010038207A/en
Application granted granted Critical
Publication of KR100367094B1 publication Critical patent/KR100367094B1/en

Links

Abstract

PURPOSE: The method for distributing the computer program via the on-line is provided to prevent the computer program from duplicating after the on-line distribution, to promote the sale of the computer program via the e-commerce, and to raise the price competition of the computer program good. CONSTITUTION: The method comprises the following steps. The purchaser obtains the PK(Public Key) Authentication of the on-line distribution system from the directory service system of the PKI(Public Key Infrastructure)(S10). The purchaser sends the purchasing information and the purchaser's information(a user's authentication) to the on-line distribution system, and requests the purchase of the desired computer program(S11). The on-line distribution system checks the purchaser's authentication and the purchasing information(S12), and sends the purchase-confirmed message to the purchaser(S13). The purchaser checks the message, pays the bill(S14), and sends the payment information to the on-line distribution system(S15). The on-line distribution system creates the UDP(User Dependant Part), encrypted by the PK of the purchaser, to the computer program(S16). The software package and the receipt are sent to the purchaser(S17). The purchaser installs the computer program to the own computer(S18).

Description

컴퓨터 프로그램 온라인 유통 방법 {Online distribution method of computer programs}Online distribution method of computer programs}

본 발명은 온라인을 통한 유통 방법에 관한 것으로서, 특히 공개키 기반구조(Public Key Infrastructure : PKI)와 사용자 의존적인 소프트웨어(User Dependant software : UDS)의 개념을 이용하여 컴퓨터 프로그램을 온라인상에서 효과적으로 유통시킬 수 있는 컴퓨터 프로그램 온라인 유통 방법에 관한 것이다.The present invention relates to an online distribution method. In particular, a computer program can be effectively distributed online using the concept of a public key infrastructure (PKI) and a user dependent software (UDS). The computer program relates to the online distribution method.

종래, 컴퓨터 소프트웨어의 유통 방법에는 설치시 접근코드를 사용하는 방법, 하드웨어적인 키 록(Key Rock)을 사용하는 방법 그리고 디지털 워터마크(Digital Watermark) 기술 등이 있다.Conventionally, distribution methods of computer software include a method of using an access code at installation, a method of using a hardware key lock, and a digital watermark technology.

먼저, 설치 시 접근코드를 사용하는 방법은 소프트웨어의 설치 시 접근 암호 또는 제품 번호를 입력하도록 하는 것이다. 이 방법은 현재 판매되고 있는 대부분의 소프트웨어 패키지들이 사용하고 있다. 그런데, 이 방법은 접근 암호를 타인과 공유하거나, 여러 대의 컴퓨터에 설치하여 사용함으로써 불법 복제가 가능하다. 이를 방지하기 위하여 설치 횟수를 제한하는 방법을 사용하기도 하나, 컴팩트 디스크(Compact Disc : CD)로 분배되는 현재의 환경에서는 이의 적용도 어렵다.First, the method of using the access code during installation is to enter the access password or product number when installing the software. This method is used by most software packages on the market. However, this method allows illegal copying by sharing an access password with others or by installing and using it on several computers. In order to prevent this, a method of limiting the number of installations may be used, but it may be difficult to apply in a current environment distributed as a compact disc (CD).

다음으로, 하드웨어적인 키 록을 사용하는 방법은 시스템의 포트에 키 록을 설치해야만 소프트웨어를 사용할 수 있도록 하는 것이다. 이 방법은 하드웨어를 필요로 하므로 추가적인 비용이 필요하고 여러 가지 소프트웨어들을 동시에 사용하고 보호해야 하는 환경에서는 부적절하다.Next, the method of using the hardware key lock is to install the key lock on the port of the system so that the software can be used. This method requires hardware, which is inadequate in an environment that requires additional cost and requires the simultaneous use and protection of multiple software.

마지막으로, 디지털 워터마크(영상이나 음성 등의 신호에 특정한 코드나 패턴 등을 삽입하는 기술)를 사용하는 방법은 주로 멀티미디어 화상 및 음성데이터에 워터마크 기술을 부가하여 타인이 이를 복사하여 사용할 경우, 워터마크를 분석하여 자신의 저작권을 주장할 수 있도록 하는 기술이다. 이 기술은 워터마크와 자신의 ID를 연결할 수 있도록 하는 신뢰 기관에의 등록 과정이 필요하다.Finally, a method of using a digital watermark (a technique of inserting a specific code or pattern into a signal such as an image or an audio) is mainly used to add a watermark technique to a multimedia image and audio data, and to copy and use it by others. It is a technology that allows you to claim your own copyright by analyzing the watermark. This technology requires registration with a trusted authority that allows you to associate your watermark with your identity.

본 발명은 상술한 종래기술의 문제점을 해결하기 위한 것으로, 공개키 기반구조와 사용자 의존적인 소프트웨어의 개념을 이용하여 온라인 유통 후의 컴퓨터 프로그램 복제를 방지할 수 있는 컴퓨터 프로그램 온라인 유통 방법을 제공하는 데 그 목적이 있다.SUMMARY OF THE INVENTION The present invention has been made to solve the above-mentioned problems of the prior art, and provides a computer program online distribution method that can prevent the copying of a computer program after online distribution using the concept of a public key infrastructure and user-dependent software. There is a purpose.

도 1은 본 발명에 따른 컴퓨터 프로그램 온라인 유통 방법의 흐름도1 is a flow chart of a computer program online distribution method according to the present invention

도 2는 본 발명에 의해 온라인을 통해 제공되는 소프트웨어 패키지의 구조도2 is a structural diagram of a software package provided online by the present invention;

도 3은 도 2의 UDP 내부 구조도3 is a diagram illustrating an internal UDP structure of FIG. 2

* 도면의 주요부분에 대한 부호의 설명 *Explanation of symbols on the main parts of the drawings

21 : 사용자 접근부 22 : SDB21: user access unit 22: SDB

23 : PDB 24 : EDB23: PDB 24: EDB

25 : 접근 제어부25: access control unit

상술한 목적을 달성하기 위한 본 발명의 컴퓨터 프로그램 온라인 유통 방법은, 구매자가 온라인 유통 시스템의 공개키 인증서를 공개키 기반 하부구조의 디렉토리 서비스 시스템으로부터 획득하는 제1단계, 온라인 유통 시스템에 접속하여 구매정보와 구매자정보(사용자 인증서)를 전송하여 원하는 컴퓨터 프로그램의 구매를 온라인 유통 시스템에 요청하는 제2단계, 상기 온라인 유통 시스템이 구매자정보(사용자 인증서)와 함께 구매정보를 확인하고, 구매자에게 구매확인 메시지를 전송하는 제3단계, 구매자가 상기 온라인 유통 시스템으로부터 전송된 구매확인 메시지의 구매 정보에 따라 대금을 지불하고 대금지불 정보를 온라인 유통 시스템에 전송하는 제4단계, 상기 온라인 유통 시스템이 지불 정보를 처리한 후, 지불이 완료되면 구매자가 구매를 요청한 컴퓨터 프로그램(UIP)에 구매자의 공개키로 암호화한 사용자 의존적인 소프트웨어(UDP)를 생성하여 이를 패키지화한 소프트웨어 패키지 및 구매 영수증을 구매자에게 전송하는 제5단계, 상기 구매자가 전송되어온 소프트웨어 패키지에 자신의 개인키를 대입하여 프로그램을 컴퓨터에 설치, 사용하는 제6단계를 포함하는 것을 특징으로 한다.The computer program online distribution method of the present invention for achieving the above object is a first step in which a purchaser obtains a public key certificate of an online distribution system from a directory service system of a public key based infrastructure, and purchases it by accessing an online distribution system. In the second step of requesting the online distribution system to purchase the desired computer program by transmitting the information and the buyer information (user certificate), the online distribution system confirms the purchase information together with the buyer information (user certificate) and confirms the purchase to the buyer. A third step of transmitting the message, a fourth step of the buyer paying the price according to the purchase information of the purchase confirmation message transmitted from the online distribution system and transmitting the payment information to the online distribution system, the payment information of the online distribution system And process the purchase, the buyer completes the purchase A fifth step of generating a user-dependent software (UDP) encrypted with the buyer's public key in the requested computer program (UIP) and sending the packaged software package and the purchase receipt to the buyer; And a sixth step of installing and using the program in the computer by substituting the private key.

이하, 본 발명의 바람직한 실시예를 첨부도면을 참조하여 설명한다.Hereinafter, preferred embodiments of the present invention will be described with reference to the accompanying drawings.

본 발명은 공개키 기반구조와 사용자 의존적인 소프트웨어의 개념을 이용하는 새로운 컴퓨터 프로그램 온라인 유통 방법이다.The present invention is a new computer program online distribution method utilizing the concept of public key infrastructure and user dependent software.

인증기관에서 발급하는 공개키 인증서는 개인의 ID와 개인이 사용할 공개키를 포함하여 인증기관이 전자서명한 문서로서 전산망상에서의 개인의 신분을 증명할 수 있는 전자문서라고 볼 수 있다. 사용자 의존적인 소프트웨어란 사용자의 공개키로 암호화한 정보를 포함하여 컴파일되는 사용자 고유의 소프트웨어 컴포넌트이다.A public key certificate issued by a certification authority is an electronic document that can be used to prove the identity of an individual on a computer network. User-dependent software is a user-specific software component that is compiled with information encrypted with the user's public key.

사용자가 컴퓨터 프로그램을 이용하기 위해서는 사용자의 개인키를 제시하여 암호화된 정보를 복호화할 수 있어야 한다. 공개키 인증구조를 이용하는 이러한 구조의 컴퓨터 프로그램을 이용하면 사용자는 자신의 공개키 인증서와 개인키를 이용하여 컴퓨터 프로그램을 정당하게 사용하게 됨으로써 불법 복제가 방지되어 저작권을 보호할 수 있게 된다.In order for a user to use a computer program, the user must be able to decrypt the encrypted information by presenting the user's private key. By using a computer program of this structure using a public key authentication structure, a user can legitimately use a computer program using his public key certificate and a private key, thereby preventing piracy and protecting copyrights.

먼저, 본 발명의 구성에서 사용하고 있는 용어를 정의하면 다음과 같다.First, terms used in the configuration of the present invention are defined as follows.

사용자 의존 부분 (User Dependent Part : UDP)User Dependent Part (UDP)

사용자 의존적인 컴퓨터 프로그램의 제작을 위해서는 사용자 의존 부분 (UDP)과 사용자 독립 부분 (User Independent Part :UIP)으로 구분하는 부분이 생성이 되어야 하는데, 이중 UDP는 사용자에 의존적인 부분으로 주로 메인 프로그램이 이 부분에 속하며, 사용자 정보를 포함한 후 새로이 컴파일되는 부분이다. 후술하는 SDB(Signed Data Block), PDB(Plain Data Block), EDB(Encrypted Data Block) 등이 이 부분에 속한다.In order to create a user-dependent computer program, a part that is divided into a user dependent part (UDP) and a user independent part (UIP) must be generated. Among these, UDP is a user dependent part. It is a part that is newly compiled after including user information. Signed Data Block (SDB), Plain Data Block (PDB), Encrypted Data Block (EDB), and the like, which will be described later, belong to this part.

사용자 독립 부분(User Independent Part : UIP)User Independent Part (UIP)

상기한 UDP와는 반대개념으로 전체 컴퓨터 프로그램에 대한 서브프로그램 형태로 되며 이전에 컴파일이 되어 있는 부분을 의미한다.In contrast to the above-described UDP, it means a subprogram form for a whole computer program and a previously compiled portion.

평문 데이터 블록(Plain Data Block : PDB)Plain Data Block (PDB)

사용자 정보(User Info : 이름, 주소, 사용자의 공개키 인증서, 구매일자)와 제품 정보(Product Info : 공급자, 주소, 공급자의 공개키 인증서, 사용기간)를 해쉬 처리한 값을 의미한다.This is a hashed value of user information (User Info: name, address, user's public key certificate, purchase date) and product information (Product Info: supplier, address, supplier's public key certificate, and usage period).

암호문 데이터 블록(Encrypted Data Block : EDB)Encrypted Data Block (EDB)

상기한 PDB를 사용자(구매자)의 공개키로 암호화한 데이터 블록으로 구매자가 컴퓨터 프로그램을 자신의 컴퓨터 시스템에 설치 시 자신의 개인키로 암호화된 메시지를 해독할 부분이다.The PDB encrypts the PDB with the user's (buyer's) public key. The PDB decrypts the message encrypted with its private key when the buyer installs the computer program on his computer system.

서명 데이터 블록(Signed Data Block : SDB)Signed Data Block (SDB)

PDB를 공급자(온라인 유통 시스템)의 개인키로 서명한 데이터 블록으로 사용자는 수신된 PDB의 위변조 여부 검증에 사용한다.A block of data signed by a private key of a supplier (online distribution system) that a user uses to verify that the PDB has been tampered with.

도 1은 본 발명의 실시예에 따른 컴퓨터 프로그램 온라인 유통 방법을 나타낸 흐름도이다.1 is a flowchart illustrating a computer program online distribution method according to an embodiment of the present invention.

먼저, 구매자는 온라인 유통 시스템의 공개키 인증서를 공개키 기반 하부구조의 디렉토리 서비스 시스템으로부터 획득한다(S10).First, the buyer obtains the public key certificate of the online distribution system from the directory service system of the public key infrastructure (S10).

공개키 인증서를 획득한 후, 구매자는 온라인 유통 시스템에 접속하여 구매정보와 구매자정보(사용자 인증서)를 전송하여 원하는 컴퓨터 프로그램의 구매를 온라인 유통 시스템에 요청한다(S11).After obtaining the public key certificate, the buyer accesses the online distribution system and transmits the purchase information and the buyer information (user certificate) to request the purchase of the desired computer program to the online distribution system (S11).

온라인 유통 시스템은 구매자 인증서와 함께 구매정보를 확인하고(S12), 구매확인 메시지를 전송한다(S13).The online distribution system checks the purchase information together with the buyer certificate (S12) and transmits a purchase confirmation message (S13).

구매자는 온라인 유통 시스템에서 전송된 구매확인 메시지의 구매 정보에 따라 대금을 지불하고 대금지불 정보를 온라인 유통 시스템에 전송한다(S14, S15).The buyer pays the price according to the purchase information of the purchase confirmation message transmitted from the online distribution system and transmits the payment information to the online distribution system (S14 and S15).

온라인 유통 시스템은 지불 정보를 처리한 후 지불이 완료되면 구매자가 구매한 컴퓨터 프로그램(UIP)에 구매자의 공개키로 암호화한 사용자 의존적인 소프트웨어(UDP)를 생성한다. 즉, 실제 컴퓨터 프로그램의 기능이 발휘되는 사용자 독립 부분(UIP)과, 사용자의 컴퓨터 프로그램 접근 제어를 위한 사용자 의존 부분(UDP)으로 이루어지는 소프트웨어 패키지를 생성한다. 소프트웨어 패키지는 구매 영수증과 함께 구매자에게 전송한다(S16, S17).The online distribution system processes the payment information and, upon payment, generates a user dependent software (UDP) encrypted with the buyer's public key in a computer program (UIP) purchased by the buyer. That is, a software package is created that includes a user independent portion (UIP) that performs the functions of an actual computer program and a user dependent portion (UDP) for controlling a user's computer program access. The software package is sent to the buyer with the purchase receipt (S16, S17).

구매자는 자신의 개인키를 대입하여 컴퓨터 프로그램을 자신의 컴퓨터에 설치한다(S18).The buyer installs a computer program on his computer by substituting his private key (S18).

이후, 컴퓨터 프로그램 사용할 때마다 구매자가 자신의 개인키를 대입하도록 함으로써 컴퓨터 프로그램을 구매한 구매자만이 컴퓨터 프로그램을 사용할 수 있도록 한다.Thereafter, the purchaser substitutes his or her private key every time the computer program is used so that only the purchaser who purchases the computer program can use the computer program.

도 2는 본 발명의 유통 방법에 의해 제공되는 컴퓨터 프로그램의 소프트웨어 패키지의 내부 구조를 나타낸 것이다.Figure 2 shows the internal structure of the software package of the computer program provided by the distribution method of the present invention.

사용자에게 제공된 소프트웨어 패키지는 크게 사용자 독립 부분(UIP)과 사용자 의존 부분(UDP)으로 이루어진다. 또한 사용자 의존 부분(UDP)은 사용자 접근부(21), 서명 데이터 블록(SDB, 22), 평문 데이터 블록(PDB, 23), 암호문 데이터 블록(EDB, 24), 접근 제어부(25)로 이루어진다.The software package provided to the user is largely composed of a user independent portion (UIP) and a user dependent portion (UDP). Also, the user dependency portion UDP includes a user access unit 21, a signature data block SDB 22, a plain text data block PDB 23, a cipher text data block EDB 24, and an access control unit 25.

상술한 유통 방법에 의해 구매자에게 제공된 컴퓨터 프로그램은 다음과 같이 과정을 거쳐 구동된다.The computer program provided to the purchaser by the above distribution method is driven through the following process.

사용자(구매자)는 컴퓨터 프로그램을 구동하기 위하여 카드리더(25)의 사용자의 개인키를 제시하고 접근코드를 입력한다. 입력되는 사용자의 개인키와 접근코드는 사용자 접근부(21)에 제공된다.The user (buyer) presents the user's private key of the card reader 25 and inputs an access code to run the computer program. The input user's private key and access code are provided to the user access unit 21.

사용자 접근부(21)는 사용자의 개인키로 EDB(24)를 복호화하여 PDB(24)와 일치하는지 확인한다. 불일치한 경우, 오류 메시지를 발생하고 이를 온라인 유통 시스템에 통보한다. 이 경우 사용자는 프로그램을 구동시킬 수 없게 된다.The user access unit 21 decrypts the EDB 24 with the user's private key and checks whether it matches the PDB 24. If there is a mismatch, an error message is generated and the online distribution system is notified. In this case, the user cannot run the program.

복호화된 내용과 PDB(23)가 일치하면, 사용자 접근부(21)는 온라인 유통 시스템의 서명용 공개키를 이용하여 SDB(22)에 대하여 역 해쉬 함수를 수행한 결과인 해쉬값 A를 산출한다.If the decrypted content and the PDB 23 match, the user accessing unit 21 calculates a hash value A which is a result of performing an inverse hash function on the SDB 22 using the signature public key of the online distribution system.

또한 사용자 접근부(21)는 온라인 유통 시스템에서 PDB에 대하여 처리한 동일한 해쉬 함수를 PDB(23)에 대하여 수행하여 해쉬값 B를 산출한다.In addition, the user access unit 21 calculates the hash value B by performing the same hash function on the PDB 23 which is processed for the PDB in the online distribution system.

앞서 산출한 A와 B가 일치하면 구매자가 수신한 UDP 부분의 PDB 정보의 신뢰성 검증이 완료된다.If A and B calculated above coincide, the reliability verification of the PDB information of the UDP part received by the purchaser is completed.

이에 따라 접근 제어부(25)가 UIP에 있는 부프로그램들을 호출하여 소프트웨어의 기능을 수행할 수 있도록 제어 신호를 UIP로 보냄으로써 프로그램은 정상 구동된다.Accordingly, the program is normally driven by sending a control signal to the UIP so that the access control unit 25 calls the subprograms in the UIP to perform a software function.

도 3은 도 2의 UDP 내부 구조를 도시한 것으로, UDP는 다음과 같이 생성된다.FIG. 3 illustrates the internal structure of UDP of FIG. 2, and UDP is generated as follows.

온라인 유통 시스템은 구매자로부터 컴퓨터 프로그램 구매 요청이 있으면, PDB 구조체를 참조하여, 이에 사용자 정보 즉, 구매자 성명, 주소(전자우편 주소, 우편 주소), 사용자의 공개키 인증서, 구매일자를 기록하고 또한 제품 정보로 컴퓨터 프로그램 개발자 주소(전자우편 주소, 우편 주소), 개발자의 공개키 인증서, 사용기간 및 제품명을 기록하여 PDB 를 생성한다.When an online distribution system requests a computer program purchase from a buyer, the online distribution system refers to the PDB structure and records user information such as the purchaser's name, address (e-mail address, postal address), user's public key certificate, and purchase date. The PDB is generated by recording the computer program developer address (e-mail address, postal address), the developer's public key certificate, the expiration date, and the product name.

그리고, 사용자(구매자)의 암호용 공개키로 PDB를 암호화하여 EDB를 생성한다.Then, the PDB is encrypted with the user's (buyer's) public key for encryption to generate the EDB.

또, 온라인 유통 시스템은 PDB를 온라인 유통 시스템의 서명용 개인키로 서명하여 SDB를 생성한다.The online distribution system also creates the SDB by signing the PDB with the signature private key of the online distribution system.

이와 같이, PDB, EDB, SDB가 모두 생성되면 컴퓨터 프로그램의 접근제어 부분을 PDB, EDB, SDB 등과 함께 컴파일하여 UDP를 생성한다.As such, when all PDBs, EDBs, and SDBs are generated, UDP is generated by compiling the access control part of the computer program together with PDB, EDB, and SDB.

상술한 바와 같이 본 발명의 온라인 유통 시스템에서 유통되는 컴퓨터 프로그램은 UDP 및 UIP 부분으로 조정되며, 사용자가 컴퓨터 프로그램을 사용을 위해서는 반드시 원 구매자(구매자)의 시스템 내부에서 UDP를 통하여 확인 과정을 거쳐야 한다. 이를 위하여 사용자는 공개키 인증체계에 따른 개인키를 가져야 하는데, 개인키의 보관은 스마트 카드 등의 하드웨어에 저장되기 때문에 공유하기가 어렵게 되므로 컴퓨터 프로그램의 불법 복제 사용을 방지할 수 있는 효과가 있다.As described above, the computer program distributed in the online distribution system of the present invention is adjusted to the UDP and UIP parts, and the user must go through the confirmation process through UDP in the system of the original purchaser (buyer) in order to use the computer program. . To this end, the user must have a private key according to the public key authentication system. Since the storage of the private key is stored in hardware such as a smart card, it is difficult to share it, thereby preventing the illegal use of computer programs.

또한 인터넷 온라인 거래에서도 판매자와 구매자가 서로를 인증함으로써 상대방을 믿을 수 있게 되어 전자상거래를 통한 컴퓨터 프로그램의 판매가 촉진되는 효과가 있다.In addition, in the online online transaction, the seller and the buyer authenticate each other, thereby trusting the other party, thereby promoting the sale of computer programs through electronic commerce.

아울러, 온라인으로 컴퓨터 프로그램을 유통함으로써 판매망 유지 비용, 배달 비용 등의 비용을 절감하여 컴퓨터 프로그램 상품의 가격 경쟁력을 제고할 수 있다.In addition, by distributing computer programs online, it is possible to reduce costs such as sales network maintenance costs and delivery costs, thereby enhancing the price competitiveness of computer program products.

이상에서 본 발명에 대한 기술사상을 첨부도면과 함께 서술하였지만 이는 본 발명의 바람직한 실시예를 예시적으로 설명한 것이지 본 발명을 한정하는 것은 아니다. 또한, 이 기술분야의 통상의 지식을 가진 자라면 누구나 본 발명의 기술사상의 범주를 이탈하지 않는 범위 내에서 다양한 변형 및 모방이 가능함은 명백한 사실이다.The technical spirit of the present invention has been described above with reference to the accompanying drawings, but this is by way of example only and not intended to limit the present invention. In addition, it is obvious that any person skilled in the art can make various modifications and imitations without departing from the scope of the technical idea of the present invention.

Claims (4)

구매자가 온라인 유통 시스템의 공개키 인증서를 공개키 기반 하부구조의 디렉토리 서비스 시스템으로부터 획득하는 제1단계와;A first step of a purchaser obtaining a public key certificate of an online distribution system from a directory service system of a public key infrastructure; 온라인 유통 시스템에 접속하여 구매정보와 구매자정보(사용자 인증서)를 전송하여 원하는 컴퓨터 프로그램의 구매를 온라인 유통 시스템에 요청하는 제2단계와;Accessing the online distribution system and transmitting purchase information and buyer information (user certificate) to request the online distribution system to purchase a desired computer program; 상기 온라인 유통 시스템이 구매자정보(사용자 인증서)와 함께 구매정보를 확인하고, 구매자에게 구매확인 메시지를 전송하는 제3단계와;A third step of the online distribution system confirming purchase information together with buyer information (user certificate) and transmitting a purchase confirmation message to the buyer; 구매자가 상기 온라인 유통 시스템으로부터 전송된 구매확인 메시지의 구매 정보에 따라 대금을 지불하고 대금지불 정보를 온라인 유통 시스템에 전송하는 제4단계와;A fourth step of the purchaser paying according to the purchase information of the purchase confirmation message transmitted from the online distribution system and transmitting the payment information to the online distribution system; 상기 온라인 유통 시스템이 지불 정보를 처리한 후, 지불이 완료되면 구매자가 구매를 요청한 컴퓨터 프로그램(UIP)에 구매자의 공개키로 암호화한 사용자 의존적인 소프트웨어(UDP)를 생성하여 이를 패키지화한 소프트웨어 패키지 및 구매 영수증을 구매자에게 전송하는 제5단계; 및After the online distribution system processes the payment information, when the payment is completed, the user packaged software (UDP) encrypted with the buyer's public key in the computer program (UIP) that the buyer requests for purchase is packaged and purchased. A fifth step of transmitting a receipt to a buyer; And 상기 구매자가 전송되어온 소프트웨어 패키지에 자신의 개인키를 대입하여 프로그램을 컴퓨터에 설치, 사용하는 제6단계를 포함하는 것을 특징으로 하는 컴퓨터 프로그램 온라인 유통 방법.And a sixth step of installing and using the program in a computer by inserting a private key into the software package transmitted by the purchaser. 제1항에 있어서,The method of claim 1, 상기 제5단계에서의 사용자 의존 부분(UDP)의 생성은 PDB 구조체를 참조하여, 이에 사용자 정보 즉, 구매자 성명, 주소(전자우편 주소 또는 우편 주소), 사용자의 공개키 인증서, 구매일자를 기록하고 또한 제품 정보로 컴퓨터 프로그램 개발자 주소(전자우편 주소, 우편 주소), 개발자의 공개키 인증서, 사용기간 및 제품명을 기록하여 평문 데이터 블록(PDB)을 생성하는 단계와;The generation of the user dependency portion (UDP) in the fifth step refers to the PDB structure, and records user information, name, buyer name, address (e-mail address or postal address), public key certificate, and purchase date of the user. Generating a plain text data block (PDB) by recording the computer program developer address (e-mail address, postal address), developer's public key certificate, usage period and product name as product information; 사용자(구매자)의 암호용 공개키로 평문 데이터 블록(PDB)을 암호화하여 암호문 데이터 블록(EDB)을 생성하는 단계와;Encrypting the plaintext data block (PDB) with a cryptographic public key of a user (buyer) to generate an encrypted text data block (EDB); 상기 평문 데이터 블록(PDB)을 온라인 유통 시스템의 서명용 개인키로 서명하여 서명 데이터 블록(SDB)을 생성하는 단계; 및Signing the plain text data block (PDB) with a signature private key of an online distribution system to generate a signature data block (SDB); And 컴퓨터 프로그램의 접근제어 부분을 상기 평문 데이터 블록(PDB), 암호문 데이터 블록(EDB), 서명 데이터 블록(SDB) 등과 함께 컴파일하는 단계를 포함하는 것을 특징으로 하는 컴퓨터 프로그램 온라인 유통 방법.Compiling the access control portion of the computer program with the plain text data block (PDB), cipher text data block (EDB), signature data block (SDB) and the like. 제1항 또는 제2항에 있어서,The method according to claim 1 or 2, 상기 제6단계에서의 프로그램 사용은, 사용자(구매자)의 개인키로 암호화 데이터 블록(EDB)을 복호화하여 복호화된 내용이 평문 데이터 블록(PDB)과 일치하고,In the use of the program in the sixth step, the encrypted data block EDB is decrypted with the private key of the user (buyer), and the decrypted content corresponds to the plain text data block PDB, 또 온라인 유통 시스템의 서명용 공개키를 이용하여 서명 데이터 블록(SDB)에 대하여 역 해쉬 함수를 수행한 결과인 해쉬값 A와, 온라인 유통 시스템에서 PDB에 대하여 처리한 동일한 해쉬 함수를 평문 데이터 블록(PDB)에 대하여 수행한 결과인 해쉬값 B가 일치한 경우에만 사용자 의존 부분(UDP)에 의해 사용자 독립 부분(UIP)에 있는 부프로그램들이 호출되어 프로그램이 구동되는 것을 특징으로 하는 컴퓨터 프로그램 온라인 유통 방법.In addition, the hash value A, which is the result of performing an inverse hash function on the signature data block (SDB) using the signature public key of the online distribution system, and the same hash function processed for the PDB in the online distribution system, are stored in a plaintext data block (PDB). A subprogram in a user independent part (UIP) is called by the user dependent part (UDP) only when the hash value B, which is a result of performing the method, is executed. 사용자 정보를 이용하여 새로이 컴파일되는 사용자 의존 부분(UDP)과, 이전에 컴파일되어 있고 상기 사용자 의존 부분(UDP)에 의해 호출되는 부프로그램들로 이루어진 사용자 독립 부분으로 이루어지며,A user independent portion consisting of a newly compiled user dependent portion (UDP) using user information and a subprogram previously compiled and called by the user dependent portion (UDP), 상기 사용자 의존 부분(UDP)은 구매자 성명, 주소(전자우편 주소 또는 우편 주소), 사용자의 공개키 인증서, 구매일자 등을 포함하는 사용자 정보와, 컴퓨터 프로그램 개발자 주소(전자우편 주소, 우편 주소), 개발자의 공개키 인증서, 사용기간 및 제품명 등을 포함하는 제품 정보를 이용하여 만든 평문 데이터 블록(PDB)과;The user dependent portion (UDP) includes user information including a purchaser's name, address (e-mail address or postal address), user's public key certificate, purchase date, and the like, computer program developer address (e-mail address, postal address), A plain text data block (PDB) made using product information, including a developer's public key certificate, usage period and product name; 상기 평문 데이터 블록(PDB)을 구매자의 암호용 공개키로 암호화하여 만든 암호문 데이터 블록(EDB)과;An encrypted text data block (EDB) made by encrypting the plain text data block (PDB) with a cryptographic public key of a purchaser; 상기 평문 데이터 블록(PDB)을 온라인 유통 시스템의 서명용 개인키로 서명하여 만든 서명 데이터 블록(SDB); 및A signature data block (SDB) made by signing the plain text data block (PDB) with a signature private key of an online distribution system; And 컴퓨터 프로그램의 접근제어 부분을 포함하는 소프트웨어 패키지가 기록된 컴퓨터로 읽을 수 있는 기록매체.A computer-readable recording medium having recorded thereon a software package containing an access control portion of a computer program.
KR10-1999-0046091A 1999-10-22 1999-10-22 Online distribution method of computer programs KR100367094B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR10-1999-0046091A KR100367094B1 (en) 1999-10-22 1999-10-22 Online distribution method of computer programs

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR10-1999-0046091A KR100367094B1 (en) 1999-10-22 1999-10-22 Online distribution method of computer programs

Publications (2)

Publication Number Publication Date
KR20010038207A true KR20010038207A (en) 2001-05-15
KR100367094B1 KR100367094B1 (en) 2003-01-06

Family

ID=19616546

Family Applications (1)

Application Number Title Priority Date Filing Date
KR10-1999-0046091A KR100367094B1 (en) 1999-10-22 1999-10-22 Online distribution method of computer programs

Country Status (1)

Country Link
KR (1) KR100367094B1 (en)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2002001358A1 (en) * 2000-06-28 2002-01-03 Jongryeol Ryu System for preventing illegal change of program with operation system and compiler cooperated, and method thereof
KR100361869B1 (en) * 2001-03-02 2002-11-22 정지혜 The Installing and Executing Method To Use The Chiper Key
CN111708990A (en) * 2020-05-15 2020-09-25 支付宝(杭州)信息技术有限公司 Applet starting method, signature method, device, server and medium

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101611104B1 (en) 2014-12-31 2016-04-08 한양대학교 산학협력단 Method for preventing unauthorized software usage by internet authentication and encryption of secondary files

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5825877A (en) * 1996-06-11 1998-10-20 International Business Machines Corporation Support for portable trusted software

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2002001358A1 (en) * 2000-06-28 2002-01-03 Jongryeol Ryu System for preventing illegal change of program with operation system and compiler cooperated, and method thereof
KR100361869B1 (en) * 2001-03-02 2002-11-22 정지혜 The Installing and Executing Method To Use The Chiper Key
CN111708990A (en) * 2020-05-15 2020-09-25 支付宝(杭州)信息技术有限公司 Applet starting method, signature method, device, server and medium

Also Published As

Publication number Publication date
KR100367094B1 (en) 2003-01-06

Similar Documents

Publication Publication Date Title
US6219652B1 (en) Network license authentication
US7742992B2 (en) Delivery of a secure software license for a software product and a toolset for creating the software product
KR100912276B1 (en) Electronic Software Distribution Method and System Using a Digital Rights Management Method Based on Hardware Identification
US7203966B2 (en) Enforcement architecture and method for digital rights management system for roaming a license to a plurality of user devices
US7680744B2 (en) Method for interdependently validating a digital content package and a corresponding digital license
US7016498B2 (en) Encrypting a digital object on a key ID selected therefor
US7383205B1 (en) Structure of a digital content package
US7305366B2 (en) Content revocation and license modification in a digital rights management (DRM) system on a computing device
US7757077B2 (en) Specifying security for an element by assigning a scaled value representative of the relative security thereof
US6233567B1 (en) Method and apparatus for software licensing electronically distributed programs
US8744969B2 (en) Releasing decrypted digital content to an authenticated path
US8005757B2 (en) Specifiying security for an element by assigning a scaled value representative of the relative security thereof
US20060212363A1 (en) Rendering digital content in an encrypted rights-protected form
US20060167815A1 (en) Digital license and method for obtaining/providing a digital license
KR19980081644A (en) Information processing apparatus, methods and recording media
KR100502580B1 (en) Method for distrubution of copyright protected digital contents
KR100873314B1 (en) Methods and apparatus for secure content distribution
KR19980081730A (en) Information processing apparatus and method and recording medium
US6651169B1 (en) Protection of software using a challenge-response protocol embedded in the software
US20050060544A1 (en) System and method for digital content management and controlling copyright protection
JP2009251977A (en) Software installation system
JPH1124916A (en) Device and method for managing software licence
KR100367094B1 (en) Online distribution method of computer programs
JP2004140636A (en) System, server, and program for sign entrustment of electronic document
WO2002010907A2 (en) Method of revoking_authorizations for software components

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20091228

Year of fee payment: 10

LAPS Lapse due to unpaid annual fee