KR100834576B1 - Key management method and apparatus for providing secure communication on p2p network - Google Patents

Key management method and apparatus for providing secure communication on p2p network Download PDF

Info

Publication number
KR100834576B1
KR100834576B1 KR1020060122225A KR20060122225A KR100834576B1 KR 100834576 B1 KR100834576 B1 KR 100834576B1 KR 1020060122225 A KR1020060122225 A KR 1020060122225A KR 20060122225 A KR20060122225 A KR 20060122225A KR 100834576 B1 KR100834576 B1 KR 100834576B1
Authority
KR
South Korea
Prior art keywords
peer
public key
network
file
information
Prior art date
Application number
KR1020060122225A
Other languages
Korean (ko)
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 KR1020060122225A priority Critical patent/KR100834576B1/en
Application granted granted Critical
Publication of KR100834576B1 publication Critical patent/KR100834576B1/en

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/06Network architectures or network communication protocols for network security for supporting key management in a packet data network
    • H04L63/061Network architectures or network communication protocols for network security for supporting key management in a packet data network for key exchange, e.g. in peer-to-peer networks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/04Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
    • H04L63/0428Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
    • H04L63/0442Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload wherein the sending and receiving network entities apply asymmetric encryption, i.e. different keys for encryption and decryption
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer And Data Communications (AREA)

Abstract

A key management method for providing secure communication on a P2P network and an apparatus for managing the key are provided to authenticate ownership of a public key safely by using an authentication method using a PK1-based structure. A message receiving process is performed to receive a file search request message transmitted from a first peer of a P2P network. A search process is performed to search the presence of the file requested in the message receiving process. A file search response message composition process is performed to compose a file search response message including internet protocol address and public key data of a second peer for storing the corresponding file when the file is searched in the search process. A transmission process is performed to transmit the composed response message to the first peer.

Description

P2P 네트워크에서 보안통신을 위한 키 관리 방법 및 이를 위한 장치{KEY MANAGEMENT METHOD AND APPARATUS FOR PROVIDING SECURE COMMUNICATION ON P2P NETWORK} KEY MANAGEMENT METHOD AND APPARATUS FOR PROVIDING SECURE COMMUNICATION ON P2P NETWORK}

도 1은 본 발명의 일실시예에 따라 보안통신을 위한 키 관리 방법을 수행하는 P2P 네트워크의 전체적인 구성도,1 is an overall configuration diagram of a P2P network performing a key management method for secure communication according to an embodiment of the present invention;

도 2는 본 발명의 일실시예에 따라 보안통신을 위한 키 관리 방법을 수행하는 P2P 네트워크의 인증서버가 관리하는 데이터베이스,2 is a database managed by an authentication server of a P2P network performing a key management method for secure communication according to an embodiment of the present invention;

도 3은 본 발명의 일실시예에 따라 보안통신을 위한 키 관리 방법을 수행하는 P2P 네트워크의 슈퍼 피어가 관리하는 데이터베이스,3 is a database managed by a super peer of a P2P network performing a key management method for secure communication according to an embodiment of the present invention;

도 4는 본 발명의 또 다른 실시예에 따라 P2P 환경에서 보안통신을 위한 키를 생성하는 피어에 해당하는 단말장치의 구성을 나타낸 블럭도,4 is a block diagram showing a configuration of a terminal device corresponding to a peer for generating a key for secure communication in a P2P environment according to another embodiment of the present invention;

도 5는 본 발명의 또 다른 실시예에 따라 P2P 환경에서 보안통신을 위한 키 생성을 위하여 피어의 공개키를 등록하는 과정을 나타내는 절차도,5 is a flowchart illustrating a process of registering a peer's public key to generate a key for secure communication in a P2P environment according to another embodiment of the present invention;

도 6은 본 발명의 또 다른 실시예에 따라 P2P 환경에서 슈퍼 피어가 보안통신을 위한 키를 생성하는 과정을 나타내는 흐름도, 그리고6 is a flowchart illustrating a process of generating a key for secure communication by a super peer in a P2P environment according to another embodiment of the present invention;

도 7은 본 발명의 또 다른 실시예에 따라 P2P 환경에서 피어들간에 파일을 교환할 때 보안통신을 위한 키를 생성하는 과정을 상세하게 나타내는 절차도이다. 7 is a flowchart illustrating in detail a process of generating a key for secure communication when exchanging files between peers in a P2P environment according to another embodiment of the present invention.

본 발명은 P2P 네트워크에 PKI 기반 구조를 활용한 인증 기법을 적용하기 위하여 피어간의 보안통신을 위한 키를 안전하게 생성, 전달 및 검증하기 위한 방법 및 이를 위한 장치에 관한 것이다. The present invention relates to a method and apparatus for securely generating, transmitting, and verifying a key for secure communication between peers in order to apply an authentication scheme using a PKI infrastructure to a P2P network.

현재 인터넷에서 적용되는 대표적인 인증 메커니즘은 PKI(Public key Infrastructure) 기반 구조를 활용한 인증기법이다. PKI 기반 구조를 활용한 인증기법에 따르면 공개키를 기반으로 하여 보안 통신을 수행한다. 즉, 사용자B가 사용자A에게 데이터 또는 메시지를 전송하기 위해서는 사용자A의 공개된 공개키를 이용하여 상기 데이터를 암호화한 다음 전송하고, 이를 전송받은 사용자A는 자신만이 알고 있는 비밀키로 상기 암호화된 데이터를 복호화한다. The representative authentication mechanism currently applied on the Internet is an authentication method using a public key infrastructure (PKI) infrastructure. According to the authentication technique using the PKI infrastructure, secure communication is performed based on the public key. That is, in order to transmit data or a message to user A, user B encrypts the data using user A's public key and then transmits the data. Decrypt the data.

이러한 작업을 수행하기 위해서는 사용자A의 공개키인 것으로 공개된 공개키가 사용자A의 공개키인지 여부를 검증하는 과정이 필요하다. 이를 위하여 사용자B는 서버와의 통신을 통하여 사용자A의 공개키에 대한 서명을 검증하는 과정을 통해 사용자A의 공개키의 소유권을 확인하게 된다. In order to perform this operation, a process of verifying whether the public key disclosed as the public key of the user A is the public key of the user A is required. To this end, User B verifies the ownership of User A's public key by verifying the signature on User A's public key through communication with the server.

상기와 같은 PKI기반의 공개키 인증 방식은 현재 매우 많이 사용되는 방식으로, 실제 은행권의 경우 온라인 뱅킹을 위한 인증서를 발급하여 사용한다. 그러나 이러한 방식을 따르는 경우에 오프라인 절차가 필요하다는 문제가 있다. 예를 들면 은행의 경우 창구에 직접 가서 본인 확인을 하고 인증키를 받는 과정 등이 필요하다. The PKI-based public key authentication scheme is a very widely used method, and in the case of an actual banknote, a certificate for online banking is issued and used. However, there is a problem that offline procedures are required when following this method. For example, banks need to go directly to the counter to verify their identity and receive an authentication key.

또한, PKI기반 구조는 PKI인프라를 구축하고 유지하는 비용이 많이 소요될 뿐만 아니라, 인증서버의 부하가 많아진다는 문제가 있다. 특히 P2P 네트워크의 경우에 제한 없이 원하는 멤버가 가입하고 탈퇴하는 환경이므로 기존의 PKI 기반의 인증서 방식을 적용하는데 어려움이 있었다. In addition, the PKI infrastructure is not only expensive to build and maintain the PKI infrastructure, but also has a problem of increasing the load of the authentication server. In particular, in the case of P2P networks, there is a difficulty in applying the existing PKI-based certificate method because an environment in which desired members join and leave without restriction.

이를 해결하기 위하여 P2P 네트워크상의 피어들이 공개키와 비밀키를 직접 생성한 후, 서버를 거치지 않고 자신의 공개키를 직접 네트워크를 통하여 분배하는 방식이 제안되었다. 그러나 이러한 방법은 중간에 악의적인 노드가 공개키를 위변조 하는 등의 MITM(Man in the Middle Attack) 등에 취약하다는 문제가 있었다. In order to solve this problem, a method of directly generating public and private keys by peers on a P2P network and distributing their public keys directly through a network without going through a server has been proposed. However, this method has a problem that malicious nodes are vulnerable to MITM (Man in the Middle Attack) such as forgery of public key.

상기와 같은 문제점을 해결하기 위한 본 발명의 목적은, 기존의 PKI 인프라가 없는 P2P 네트워크 환경에서 PKI 기반 구조를 활용한 인증 기법을 적용하여 안전하게 공개키의 소유권을 인증할 수 있는 방법 및 이를 위한 장치를 제공하는데 있다. An object of the present invention for solving the above problems, method and apparatus for securely authenticating the ownership of the public key by applying the authentication scheme using the PKI infrastructure in a P2P network environment without the existing PKI infrastructure To provide.

상기와 같은 본 발명의 목적을 달성하기 위하여, P2P 네트워크에서 보안통신을 위한 키 관리 방법은, In order to achieve the object of the present invention as described above, a key management method for secure communication in a P2P network,

P2P 네트워크의 다른 제1 피어로부터 발송된 파일 검색 요청 메시지를 수신하는 제 1단계;Receiving a file search request message sent from another first peer of the P2P network;

상기 제 1단계에서 요청받은 파일이 존재하는지 여부를 검색하는 제 2단계;A second step of searching whether the file requested in the first step exists;

상기 제 2단계의 검색 결과 상기 파일이 존재하는 것으로 검색되는 경우에는 해당 파일을 저장하고 있는 제2 피어의 인터넷프로토콜 주소 및 공개키 정보를 포함하는 파일 검색 응답 메시지를 작성하는 제 3단계; 및,A third step of creating a file search response message including an Internet protocol address and a public key information of a second peer storing the file if the file is found to be present as a result of the search of the second step; And,

상기 제3 단계에서 작성된 응답 메시지를 상기 제1 피어를 향하여 발송하는 제 4단계를 포함하여 구성된다. And a fourth step of sending the response message created in the third step toward the first peer.

바람직하게 상기 P2P 네트워크에서 보안 통신을 위한 키 관리 방법은,Preferably the key management method for secure communication in the P2P network,

상기 제1 피어로부터 파일 전송 요청을 받은 제2 피어로부터 제1 피어의 공개키 정보 제공 요청을 수신하는 제 5단계;A fifth step of receiving a request for providing a public key information of a first peer from a second peer that has received a file transfer request from the first peer;

상기 제1 피어의 공개키 정보를 수집하는 제 6단계; 및,A sixth step of collecting public key information of the first peer; And,

상기 제 6단계에서 수집된 공개키 정보를 상기 제2 피어에게 제공하는 제 7단계를 더 포함할 수 있다. The method may further include a seventh step of providing the second peer with the public key information collected in the sixth step.

상기와 같은 본 발명의 목적을 달성하기 위하여, P2P 네트워크에서 보안통신을 위한 키를 생성하는 단말장치는,In order to achieve the object of the present invention as described above, a terminal device for generating a key for secure communication in a P2P network,

P2P 네트워크상의 다른 피어들에게 제공할 수 있는 파일과 상기 P2P 네트워크에 진입하기 위하여 필요한 인증, 공개키 등록 및 파일 교환에 필요한 정보를 저장하는 데이터베이스; A database that stores files that can be provided to other peers on a P2P network and information necessary for authentication, public key registration, and file exchange required to enter the P2P network;

P2P 네트워크상의 인증서버 또는 다른 피어들과 메시지 또는 데이터를 주고 받는 인터페이스부; 및,An interface unit for exchanging messages or data with an authentication server or other peers on a P2P network; And,

P2P 네트워크상에서 단말장치의 역할이 슈퍼피어인지 일반피어인지 여부를 확인하여, 상기 P2P 네트워크에 진입하기 위하여 필요한 인증, 공개키 등록 및 파일 교환에 필요한 작업을 수행하는 제어부를 포함하고,A control unit which checks whether a role of a terminal device on a P2P network is a super peer or a general peer, and performs an operation required for authentication, public key registration, and file exchange required to enter the P2P network;

상기 제어부는,The control unit,

공개키 등록, 파일 검색 및 파일 전송 요청을 행하기 위한 메시지를 작성하고, 상기 파일 검색 요청에 대한 응답 메시지를 작성할 때 상기 응답 메시지에 해당 파일을 저장하고 있는 피어의 공개키 정보를 포함시키는 메시지 작성 모듈;Compose a message for making a public key registration, file retrieval, and file transfer request, and when creating a response message for the file retrieval request, include a public key information of the peer storing the file in the response message. module;

P2P 네트워크상의 다른 피어로부터의 파일 검색 요청에 따라 상기 파일 검색 요청의 대상이 되는 파일이 저장되어 있는지 여부를 검색하는 검색 모듈;A search module for searching whether a file which is a target of the file search request is stored according to a file search request from another peer on a P2P network;

P2P 네트워크상의 다른 피어에게 제공하는 메시지를 수신측 피어의 공개키 정보를 이용하여 암호화하고, 상기 다른 피어로부터 제공받은 메시지는 자신의 개인키 정보를 이용하여 복호화하는 암호화 및 복호화 모듈을 포함하여 구성된다. A message provided to another peer on the P2P network is encrypted using the public key information of the receiving peer, and the message received from the other peer includes an encryption and decryption module for decrypting using its private key information. .

이하 첨부된 도면을 참조하여 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자가 본 발명을 용이하게 실시할 수 있는 바람직한 실시예를 상세히 설명한다. 다만, 본 발명의 바람직한 실시예에 대한 동작 원리를 상세하게 설명함에 있어 관련된 공지 기능 또는 구성에 대한 구체적인 설명이 본 발명의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우에는 그 상세한 설명을 생략한다. 도면 전체에 걸쳐 유사한 기능 및 작용을 하는 부분에 대해서는 동일한 도면 부호를 사용한다.Hereinafter, exemplary embodiments of the present invention will be described in detail with reference to the accompanying drawings. However, in describing in detail the operating principle of the preferred embodiment of the present invention, if it is determined that the detailed description of the related known functions or configurations may unnecessarily obscure the subject matter of the present invention, the detailed description thereof will be omitted. The same reference numerals are used for parts having similar functions and functions throughout the drawings.

명세서 전체에서, 어떤 부분이 다른 부분과 "연결"되어 있다고 할 때, 이는 "직접적으로 연결"되어 있는 경우뿐 아니라, 그 중간에 다른 소자를 사이에 두고 "전기적으로 연결"되어 있는 경우도 포함한다. 또한 어떤 부분이 어떤 구성요소를 "포함"한다고 할 때, 이는 특별히 반대되는 기재가 없는 한 다른 구성요소를 제외하는 것이 아니라 다른 구성요소를 더 포함할 수 있는 것을 의미한다.Throughout the specification, when a part is "connected" to another part, this includes not only "directly connected" but also "electrically connected" with another element in between. . In addition, when a part is said to "include" a certain component, which means that it may further include other components, except to exclude other components unless otherwise stated.

또한, 본 명세서에서 기재한 모듈(module)이란 용어는 특정한 기능이나 동작을 처리하는 하나의 단위를 의미하며, 이는 하드웨어나 소프트웨어 또는 하드웨어 및 소프트웨어의 결합으로 구현할 수 있다.In addition, the term module described herein refers to a unit for processing a specific function or operation, which may be implemented in hardware or software, or a combination of hardware and software.

도 1은 본 발명의 일실시예에 따라 보안통신을 위한 키 관리 방법을 수행하는 P2P 네트워크의 전체적인 구성도이다. 1 is an overall configuration diagram of a P2P network performing a key management method for secure communication according to an embodiment of the present invention.

도 1을 참조하면 상기 P2P 네트워크는 1개의 인증서버(Authentication server, 100), N개의 슈퍼 피어(Super peer, 200~202) 및 M개의 일반 피어(Peer, 300~302)로 구성되어 있고(이때, 상기 N 및 M은 자연수), 각 구성요소들은 유선 또는 무선 네트워크로 연결되어 있다. 이때 상기 피어(200~202, 300~302)는 개인용 컴퓨터(PC), 개인용 정보 단말(PDA), 핸드폰, 네트워크 단말기 등과 같은 단말 장치이다. Referring to FIG. 1, the P2P network is composed of one authentication server (100), N super peers (200 to 202), and M general peers (300 to 302) (at this time). , N and M are natural numbers), and each component is connected by a wired or wireless network. In this case, the peers 200 to 202 and 300 to 302 are terminal devices such as personal computers (PCs), personal digital assistants (PDAs), mobile phones, and network terminals.

상기 인증서버(100)는 슈퍼 피어(200~202) 및 일반 피어(300~302) 각각이 상기 P2P 네트워크에 진입할 수 있도록 인증을 행하고, 인증된 피어(200~202, 300~302)에 대한 공개키 정보를 수집하며, 또한 이를 관리하는 역할을 수행하기 위한 장치이다. 이를 위하여 본 발명의 바람직한 실시예에 따른 인증서버(100)는 도 2에 도시된 바와 같이 그룹아이디(100-1), 피어아이디(100-2), 플래그(flag, 100-3), 공개키(Public key, 100-4) 및 인터넷 프로토콜(IP) 정보(100-5)를 포함하는 데이터베이스를 관리한다. The authentication server 100 authenticates each of the super peers 200 to 202 and the general peers 300 to 302 to enter the P2P network, and authenticates the authenticated peers 200 to 202 and 300 to 302. It is a device that collects public key information and performs a role of managing it. To this end, the authentication server 100 according to a preferred embodiment of the present invention is a group ID (100-1), a peer ID (100-2), a flag (flag, 100-3), public key as shown in FIG. Manages a database including (Public key, 100-4) and Internet Protocol (IP) information 100-5.

도 2를 참조하면, 상기 그룹아이디(100-1)는 각 피어(200~202, 300~302)가 포함되는 그룹별로 부여된 고유한 아이디로서 하나의 피어 그룹은 하나의 슈퍼 피어와 여러 개의 일반 피어로 구성된다. 상기 피어 아이디(100-2)는 피어(200~202, 300~302)들 각각을 구별하기 위한 식별정보이다. 상기 플래그(100-3)는 상기 피어 아이디(100-2)에 해당하는 피어가 일반 피어인지, 슈퍼 피어인지 여부를 구별하기 위한 정보로서, 예컨대 상기 도 2에서는 일반 피어인 경우에는 'P'값을, 슈퍼 피어인 경우에는 'S'값을 갖는다. 2, the group ID 100-1 is a unique ID assigned to each group including the peers 200 to 202 and 300 to 302. One peer group includes one super peer and several general peers. It consists of a peer. The peer ID 100-2 is identification information for identifying each of the peers 200 to 202 and 300 to 302. The flag 100-3 is information for distinguishing whether a peer corresponding to the peer ID 100-2 is a normal peer or a super peer. For example, in FIG. In case of super peer, it has 'S' value.

상기 공개키(100-4) 정보는 PKI(Public Key Infrastructure) 기반의 공개키 인증 방식에 따라 해당 피어(200~202, 300~302)에게 제공되는 데이터를 암호화하는데 사용되는 정보로서, 상기 암호화된 데이터를 수신한 피어(200~202, 300~302)는 자신의 개인키(Private key)를 이용하여 복호화할 수 있다. 상기 인터넷 프로토콜 정보(100-5)는 해당되는 피어(200~202, 300~302)가 네트워크상에 존재하는 위치 정보이다. The public key 100-4 information is information used to encrypt data provided to the corresponding peers 200 to 202 and 300 to 302 according to a public key infrastructure based on a public key infrastructure (PKI). The peers 200 to 202 and 300 to 302 that have received the data can decrypt the data using their own private keys. The Internet protocol information 100-5 is location information where corresponding peers 200 to 202 and 300 to 302 exist on a network.

상기 슈퍼 피어(200~202)는 P2P환경에서 일반 피어(300~302)들 사이의 통신 및 공개키 관리 등의 추가 기능을 갖는 피어로서, 이를 위하여 도 3에 도시된 바와 같은 형태의 데이터베이스를 관리한다. 이때 상기 도 1에 도시된 바와 같이 본 발명에 따른 P2P 네트워크에서는 하나의 슈퍼 피어(200)가 다수의 일반 피어(300~302)들을 지원하는 구조를 갖는다. The super peers 200 to 202 are peers having additional functions such as communication and public key management between general peers 300 to 302 in a P2P environment. For this purpose, the super peers 200 to 202 manage a database as shown in FIG. 3. do. In this case, as shown in FIG. 1, in the P2P network according to the present invention, one super peer 200 supports a plurality of general peers 300 to 302.

도 3을 참조하면, 상기 피어 아이디(200-1)는 피어(200~202, 300~302)들 각각을 구별하기 위한 식별정보이고, 상기 플래그(200-2)는 상기 피어 아이디(200-1)에 해당하는 피어가 일반 피어인지, 슈퍼 피어인지, 또는 해당 슈퍼 피어가 관리하는 일반 피어인지 여부를 구별하기 위한 정보로서, 예컨대 상기 도 3에서는 일반 피어인 경우에는 'P'값을, 슈퍼 피어인 경우에는 'S'값을, 해당 슈퍼피어가 관리하는 일반 피어인 경우에는 'D'값을 갖는다. Referring to FIG. 3, the peer ID 200-1 is identification information for distinguishing each of the peers 200-202, 300-302, and the flag 200-2 is the peer ID 200-1. ) Is information for distinguishing whether a peer corresponding to) is a normal peer, a super peer, or a normal peer managed by the super peer. For example, in FIG. 3, a 'P' value is used as a normal peer. In the case of, it has a value of 'S', and in the case of a normal peer managed by the super peer, the value 'D' is obtained.

이때, 상기 도 3에 나타낸 바와 같이 본 발명에 적용할 수 있는 바람직한 실시예에서 슈퍼 피어(200~202)는 데이터베이스에 각 피어(200~202, 300~302)의 공개키(200-3) 정보 및 해당되는 피어(200~202, 300~302)에 대한 네트워크상의 위치 정보인 인터넷 프로토콜(IP) 정보(200-4)도 함께 저장하여 관리한다. At this time, in the preferred embodiment applicable to the present invention as shown in FIG. 3, the super peers 200 to 202 are public key 200-3 information of each peer 200 to 202 and 300 to 302 in a database. And internet protocol (IP) information 200-4, which is location information on the network of the corresponding peers 200 to 202 and 300 to 302, is also stored and managed.

상기 일반 피어(300~302)는 상기 인증서버(100)에게 인증을 받아 상기 P2P 네트워크에 진입하면 상기 P2P 네트워크상의 다른 일반 피어들과 파일을 교환할 수 있다. 이때, 본 발명에 적용할 수 있는 바람직한 실시예에서 상기 인증 방법으로는 본 발명이 속하는 기술분야에서 P2P 네트워크상에서 피어(200~202, 300~302)가 인증서버(100)로부터 인증을 받는 방법으로 공지된 방법들, 예컨대 아이디 및 패스워드 기반의 방식이 당업자의 판단에 의하여 용이하게 선택되어 사용될 수 있다. The general peers 300 to 302 may exchange files with other general peers on the P2P network upon entering the P2P network after receiving authentication from the authentication server 100. At this time, in the preferred embodiment applicable to the present invention as the authentication method, the peers 200 to 202 and 300 to 302 are authenticated by the authentication server 100 in a P2P network in the technical field to which the present invention belongs. Known methods, such as username and password based methods, can be readily selected and used by those skilled in the art.

도 4는 본 발명의 또 다른 실시예에 따라 P2P 환경에서 보안통신을 위한 키를 생성하는 피어에 해당하는 단말장치의 구성을 나타낸 블럭도이다. 4 is a block diagram illustrating a configuration of a terminal device corresponding to a peer for generating a key for secure communication in a P2P environment according to another embodiment of the present invention.

도 4를 참조하면, 상기 본 발명의 실시예에 따른 단말장치는 제어부(310), 데이터베이스(320) 및 인터페이스부(330)를 포함하여 구성된다. Referring to FIG. 4, the terminal device according to the embodiment of the present invention includes a control unit 310, a database 320, and an interface unit 330.

상기 제어부(310)는 P2P 네트워크상에서 단말장치의 역할이 슈퍼피어인지 일반피어인지 여부를 확인하여, 상기 P2P 네트워크에 진입하기 위하여 필요한 인증, 공개키 등록 및 파일 교환에 필요한 작업을 수행한다. 이를 위하여 상기 제어부(310)는 메시지 작성모듈(311), 검색모듈(312) 및 암호화 및 복호화 모듈(313)을 포함한다. The controller 310 checks whether the role of the terminal device is a super peer or a general peer on the P2P network, and performs the necessary operations for authentication, public key registration, and file exchange required to enter the P2P network. To this end, the controller 310 includes a message composition module 311, a search module 312, and an encryption and decryption module 313.

상기 메시지 작성 모듈(311)은 공개키 등록, 파일 검색 및 파일 전송 요청을 행하기 위한 메시지를 작성하는 구성요소로서, 본 발명에 적용할 수 있는 바람직한 실시예에서 공개키 등록을 요청하는 메시지를 작성하는 경우에 상기 공개키 등록을 요청하는 메시지에 단말장치 자신의 패스워드를 키로 한 해쉬값을 생성하여 포함시킬 수 있고, 또한 검색 요청에 대한 응답 메시지를 작성할 때 상기 검색 요청에 대한 응답 메시지에 해당 파일을 저장하고 있는 피어의 공개키 정보를 포함시킬 수 있다. The message creation module 311 is a component that composes a message for performing a public key registration, a file search, and a file transfer request, and creates a message for requesting a public key registration in a preferred embodiment applicable to the present invention. In this case, a hash value using a password of a terminal device as a key may be generated and included in the message for requesting the registration of the public key, and a corresponding file is included in the response message for the search request when a response message for the search request is generated. You can include the public key information of the peer that stores the.

상기 검색 모듈(312)은 P2P 네트워크상의 다른 피어로부터의 파일 검색 요청에 따라 상기 파일 검색 요청의 대상이 되는 파일이 저장되어 있는지 여부를 검색하는 구성요소이고, 상기 암호화 및 복호화 모듈(313)은 P2P 네트워크상의 다른 피어에게 제공하는 메시지를 수신측 피어의 공개키 정보를 이용하여 암호화하고, 상기 다른 피어로부터 제공받은 메시지는 자신의 개인키 정보를 이용하여 복호화하는 구성요소이다. The search module 312 is a component for searching whether a file which is a target of the file search request is stored according to a file search request from another peer on a P2P network, and the encryption and decryption module 313 is a P2P. A message provided to another peer on a network is encrypted using public key information of a receiving peer, and a message provided from the other peer is a component that decrypts using its private key information.

상기 데이터베이스(320)는 P2P 네트워크상의 다른 피어들에게 제공할 수 있는 파일 및 상기 P2P 네트워크에 진입하기 위하여 필요한 인증, 공개키 등록 및 파일 교환에 필요한 정보를 저장하는 구성요소로서, 상기 단말장치로부터 메시지를 제공받을 인증서버 또는 상대 피어측 공개키 정보, 상기 단말장치 자신의 공개키 및 개인키 정보 및 인터넷프로토콜 정보를 저장하고 있다. 이때, 상기 단말장치가 상기 P2P 네트워크에서 슈퍼 피어인 경우에는 자신이 속한 그룹에 함께 속해있는 일반 피어에 대한 식별 정보인 피어 아이디 및 상기 피어 아이디 각각에 대한 플래그값, 공개키 정보 및 인터넷 프로토콜 정보를 포함할 수 있다. The database 320 is a component that stores a file that can be provided to other peers on a P2P network and information necessary for authentication, public key registration, and file exchange required to enter the P2P network, and a message from the terminal device. It stores the authentication server or the peer side public key information to be provided, the public key and private key information of the terminal device and the Internet protocol information. In this case, when the terminal device is a super peer in the P2P network, a peer ID, a flag value for each of the peer IDs, public key information, and Internet protocol information, which are identification information of a general peer belonging to a group to which the terminal device belongs, It may include.

상기 인터페이스부(330)는 P2P 네트워크상의 인증서버 또는 다른 피어들과 메시지 또는 데이터를 주고받기 위한 구성요소이다. The interface unit 330 is a component for exchanging messages or data with an authentication server or other peers on a P2P network.

도 5는 본 발명의 또 다른 실시예에 따라 P2P 환경에서 보안통신을 위한 키 생성을 위하여 피어의 공개키를 등록하는 과정을 나타내는 절차도이다. 5 is a flowchart illustrating a process of registering a peer's public key to generate a key for secure communication in a P2P environment according to another embodiment of the present invention.

도 5를 참조하면 피어(300)는 인증서버(100)의 공개키 정보를 수집한다(S500). 상기 인증서버(100)의 공개키는 PKI(Public Key Infrastructure) 기반의 공개키 인증 방식에 따라 피어의 공개키 등록 요청을 암호화하기 위한 것이다. 본 발명이 속하는 바람직한 실시예에서 상기 S500단계는, P2P 네트워크로 진입하는 피어(300)가 인증서버(100)의 공개키 정보를 확인할 수 있는 것으로 당업계에 공지된 방법, 예컨대 해당 피어(300)가 P2P 네트워크에 진입하기 위하여 사용하는 P2P 소 프트웨어에 인증서버(100)의 공개키가 바이너리(binary) 형태로 탑재되어 있거나, 해당 피어(300)가 인증서버(100)에 접속하여 P2P 소프트웨어를 다운받아 설치하는 작업만으로 서버의 공개키를 획득하게 되는 방법 등이 당업자의 판단에 의하여 용이하게 선택되어 사용될 수 있다. Referring to FIG. 5, the peer 300 collects public key information of the authentication server 100 (S500). The public key of the authentication server 100 is for encrypting a public key registration request of a peer according to a public key infrastructure (PKI) based public key authentication scheme. In the preferred embodiment to which the present invention belongs, the step S500, the peer 300 entering the P2P network can check the public key information of the authentication server 100, a method known in the art, for example, the peer 300 Public key of the authentication server 100 is loaded in the binary form in the P2P software used to enter the P2P network, or the peer 300 connects to the authentication server 100 to access the P2P software. The method of acquiring the public key of the server only by downloading and installing the server may be easily selected and used by the person skilled in the art.

상기 S500단계를 통하여 인증서버(100)의 공개키 정보를 수집한 피어(300)는 공개키 등록 메시지를 작성한다(S501). 상기 공개키 등록 메시지는 해당 피어(300) 자신의 아이디(ID), 패스워드(Password), 인터넷 프로토콜(IP) 주소 및 공개키 정보 등을 포함하는 것이 바람직하다. 이때 상기 공개키 등록 메시지는 상기 S500단계에서 수집된 인증서버(100)의 공개키를 이용하여 암호화된다.The peer 300 collecting the public key information of the authentication server 100 through the step S500 creates a public key registration message (S501). The public key registration message preferably includes an ID (ID), a password, an Internet Protocol (IP) address, and public key information of the corresponding peer 300. At this time, the public key registration message is encrypted using the public key of the authentication server 100 collected in step S500.

본 발명에 적용할 수 있는 바람직한 실시예에서, 상기 피어(300)는 상기 S501단계에서 작성되는 공개키 등록 메시지에 피어(300) 자신의 패스워드를 키(key)로 이용한 해쉬(hash)값을 생성하여 첨부할 수 있다. 상기 S501단계에서 인증서버(100)의 공개키를 이용한 암호화의 목적은 공개키 등록 메시지를 중간에 권한이 없는 자가 볼 수 없도록 하기 위한 것이며, 상기 첨부되는 해쉬값은 권한이 없는 자가 중간에 데이터의 내용을 변경한 경우 이를 감지하기 위한 것이다. In a preferred embodiment applicable to the present invention, the peer 300 generates a hash value using the password of the peer 300 as a key in the public key registration message created in step S501. Can be attached. The purpose of encryption using the public key of the authentication server 100 in step S501 is to prevent an unauthorized person from seeing the public key registration message in the middle, and the attached hash value indicates that the unauthorized person has no data. This is to detect the change of contents.

상기 S501단계를 통하여 작성된 공개키 등록 메시지는 인증서버(100)로 전송되고(S502), 인증서버(100)는 수신한 데이터를 자신의 개인키(Private key)로 복호화 한 후(S503), 상기 공개키 등록 메시지에 포함되어 있는 해당 피어(300)의 패스워드 값을 자신의 데이터베이스에 저장되어 있는 피어(300)의 패스워드 값과 비교하여 상기 공개키 등록 메시지를 검증한다(S504). 만일 상기 S504단계의 검증에 실 패한다면 상기 공개키 등록 메시지를 폐기하고 절차를 종료한다. The public key registration message created in step S501 is transmitted to the authentication server 100 (S502), and the authentication server 100 decrypts the received data with its own private key (S503). The public key registration message is verified by comparing the password value of the peer 300 included in the public key registration message with the password value of the peer 300 stored in its database (S504). If the verification of step S504 fails, the public key registration message is discarded and the procedure ends.

만일 상기 공개키 등록 메시지에 해쉬값이 첨부되어 있다면, 상기 인증서버(100)는 자신의 데이터베이스에 저장되어 있는 피어(300)의 패스워드 값을 키(key)로 하여 상기 해쉬값을 통해 메시지를 다시 검증할 수 있다. 만일 상기 S504단계의 검증에 성공하였다 하더라도, 상기 해쉬값을 통한 검증에 실패한다면 상기 공개키 등록 메시지를 폐기하고 절차를 종료한다. If a hash value is attached to the public key registration message, the authentication server 100 uses the password value of the peer 300 stored in its database as a key to replay the message through the hash value. Can be verified Even if the verification in step S504 succeeds, if the verification through the hash value fails, the public key registration message is discarded and the procedure ends.

본 발명에 적용할 수 있는 바람직한 실시예에서, 상기 공개키 등록 메시지에 대한 검증이 성공한다면, 상기 인증서버(100) 해당 피어(300)의 공개키 정보를 자신의 데이터베이스에 저장할 수 있다. In a preferred embodiment applicable to the present invention, if the verification of the public key registration message is successful, the public server 100 may store the public key information of the peer 300 in its database.

다음으로 상기 인증서버(100)는 공개키 등록요구에 대한 응답 메시지를 작성한다(S505). 이때, 상기 해당 피어(300)가 일반 피어인 경우에 상기 응답 메시지는 공개키 등록 성공 여부에 관한 정보, 해당 피어(300)가 일반 피어임을 지시하는 플래그값 및 해당 피어(300)에 대한 슈퍼 피어의 아이디, 공개키 및 인터넷프로토콜 정보 등을 포함할 수 있다. 만일 상기 해당 피어(300)가 슈퍼 피어인 경우에 상기 응답 메시지는 공개키 등록 성공 여부에 관한 정보, 해당 피어(300)가 슈퍼 피어임을 지시하는 플래그값 및 슈퍼 피어용 인증서 정보를 포함할 수 있다. 이때, 상기 응답 메시지는 해당 피어(300)의 공개키를 이용하여 암호화된다. Next, the authentication server 100 writes a response message for the public key registration request (S505). In this case, when the corresponding peer 300 is a normal peer, the response message includes information on whether the public key registration is successful, a flag value indicating that the corresponding peer 300 is a normal peer, and a super peer for the corresponding peer 300. It may include the ID, public key and Internet protocol information of the. If the corresponding peer 300 is a super peer, the response message may include information on whether the public key registration succeeds, a flag value indicating that the peer 300 is a super peer, and certificate information for the super peer. . In this case, the response message is encrypted using the public key of the corresponding peer 300.

상기 인증서버(100)는 상기 S505단계에서 작성된 응답 메시지에 인증서버(100)의 개인키(private key)를 이용하여 서명할 수 있다. The authentication server 100 may sign a response message created in step S505 using a private key of the authentication server 100.

상기 S505단계를 통하여 작성된 응답 메시지는 해당 피어(300)로 전송되 고(S506), 상기 피어(300)는 필요한 경우에 자신의 개인키로 상기 응답 메시지를 복호화한 다음, 인증서버(100)의 공개키를 이용하여 인증서버(100)의 서명을 검증한다(S507). The response message created through the step S505 is transmitted to the corresponding peer 300 (S506), the peer 300 decrypts the response message with its own private key if necessary, and then discloses the authentication server 100. The signature of the authentication server 100 is verified using the key (S507).

다음으로, 상기 피어(300)가 일반 피어인 경우에는 상기 S507단계를 통하여 검증된 응답 메시지에 포함된 슈퍼 피어에 관한 정보를 자신의 데이터베이스에 저장할 수 있고, 상기 피어(300)가 슈퍼 피어인 경우에는 상기 S507단계를 통하여 검증된 응답 메시지에 포함된 슈퍼 피어용 인증서를 자신의 데이터베이스에 저장할 수 있다.Next, when the peer 300 is a normal peer, information about the super peer included in the response message verified through the step S507 may be stored in its database, and when the peer 300 is the super peer. In the S507, the super peer certificate included in the verified response message may be stored in its database.

또한, 상기 도 5에는 도시하지 않았으나 본 발명에 적용할 수 있는 바람직한 실시예에서 상기 피어(300)가 슈퍼 피어인 경우에, 상기 피어(300)는 상기 인증서버(100)로부터 다른 슈퍼 피어들의 정보 및 자신이 관리하는 일반 피어들에 관한 정보를 제공받을 수 있고, 다른 일반 피어로부터 자신의 관리하에 들어오는데 필요한 정보를 제공받을 수 있다. In addition, although not shown in FIG. 5, in the preferred embodiment applicable to the present invention, when the peer 300 is a super peer, the peer 300 receives information of other super peers from the authentication server 100. And it can be provided with information about the general peers that it manages, it can be provided with the information necessary to enter under its management from other general peers.

예컨대, 상기 인증서버(100)로부터 다른 슈퍼 피어들의 정보를 제공받을 때에 해당 피어(300)는 자신의 공개키로 암호화되고 상기 인증서버(100)의 개인키로 서명된 다른 슈퍼 피어의 아이디, 인터넷프로토콜 주소 및 공개키 정보를 포함하는 슈퍼 피어 목록 데이터를 제공받을 수 있다. 또한, 자신이 관리하는 일반 피어들에 관한 정보를 제공받을 때에는 자신의 공개키로 암호화되고, 상기 인증서버(100)의 개인키로 서명된 해당 피어(300)가 관리해야 하는 피어의 아이디, 인터넷프로토콜 주소 및 공개키 정보를 포함하는 피어 목록 데이터를 전송받을 수 있다. For example, when receiving information of other super peers from the authentication server 100, the peer 300 is encrypted with its public key and signed with the private key of the authentication server 100. And super peer list data including the public key information. In addition, when receiving information about general peers managed by the user, the ID and Internet protocol address of the peer, which is encrypted with its public key and managed by the corresponding peer 300 signed with the private key of the authentication server 100, must be managed. And peer list data including the public key information.

또한 다른 일반 피어로부터 자신의 관리하에 들어오는데 필요한 정보를 제공받는 과정은, 해당 일반 피어(미도시)가 인증서버(100)로 인증을 수행하고 공개키를 등록한 다음, 자신을 관리할 슈퍼 피어(300)의 정보를 수신하고 나서 진행될 수 있다. 예컨대 슈퍼 피어인 해당 피어(300)의 공개키로 암호화하고 일반 피어 자신의 개인키로 서명된 상기 일반 피어의 아이디, 인터넷프로토콜 주소 및 공개키 정보를 포함하는 메시지를 제공받을 수 있다. In addition, the process of receiving information required to enter under the management from another general peer, the general peer (not shown) to authenticate with the authentication server 100, register the public key, and then manage the super peer (300) It may proceed after receiving the information of). For example, a message including the ID, Internet protocol address, and public key information of the general peer encrypted with the public key of the corresponding peer 300 that is a super peer and signed with the private key of the general peer may be provided.

도 6은 본 발명의 또 다른 실시예에 따라 P2P 환경에서 슈퍼 피어가 보안통신을 위한 키를 생성하는 과정을 나타내는 흐름도이다. 6 is a flowchart illustrating a process in which a super peer generates a key for secure communication in a P2P environment according to another embodiment of the present invention.

도 6을 참조하면, 먼저 슈퍼 피어가 파일 검색 요청을 수신한다(S600). 이러한 파일 검색 요청은 상기 슈퍼 피어가 관리하는 일반 피어로부터 제공받거나, 다른 슈퍼 피어로부터 제공받을 수 있다. 이때, 상기 파일 검색 요청에는 해당 파일에 대한 검색을 요청한 피어(이하, '제1 피어'라 한다)의 공개키 정보가 포함되어 있다. Referring to FIG. 6, first, a super peer receives a file search request (S600). Such a file search request may be provided from a general peer managed by the super peer or from another super peer. In this case, the file search request includes public key information of a peer (hereinafter, referred to as a “first peer”) requesting a search for a corresponding file.

상기 S600단계를 통하여 파일 검색 요청을 수신한 슈퍼 피어는 자신 및 자신이 관리하는 일반 피어에 해당 파일이 존재하는지 여부를 검색한다(S601). 상기 검색 결과 파일이 존재하지 않는 것으로 확인되면 파일 검색을 종료한다(S602).The super peer that has received the file search request through step S600 searches for whether a corresponding file exists in itself and a general peer managed by the super peer (S601). If it is determined that the search result file does not exist, the file search ends (S602).

만일 상기 S601단계의 검색 결과 파일이 존재하는 것으로 검색되는 경우에는 해당 파일을 저장하고 있는 피어(이하, '제2 피어'라 한다)에 대한 정보를 포함하 는 파일 검색 응답을 작성한다(S603). 이때 상기 파일 검색 응답에는 상기 파일을 저장하고 있는 제2 피어의 인터넷프로토콜 주소 및 공개키 정보가 포함되는 것이 바람직하며, 또한 상기 파일 검색 응답은 해당 파일에 대한 검색을 요청했던 제1 피어의 공개키로 암호화 되는 것이 바람직하다. 상기 S603단계에서 작성된 파일 검색 응답은 상기 제1 피어에게 제공된다. If the search result file of step S601 is found to exist, a file search response including information about a peer (hereinafter referred to as a 'second peer') storing the file is created (S603). . In this case, the file search response may include the Internet protocol address and public key information of the second peer that stores the file, and the file search response may be the public key of the first peer that requested the search for the file. It is desirable to be encrypted. The file search response generated in step S603 is provided to the first peer.

다음으로, 상기 S603단계의 파일 검색 응답을 수신한 제1 피어로부터 파일 전송 요청을 받은 제2 피어의 요청에 따라, 상기 제1 피어의 공개키 정보를 수집하여 상기 제2 피어에게 제공한다(S604). 상기 S604단계를 통하여 제1 피어의 공개키 정보를 제공받은 제2 피어는 제1 피어로부터 전송 요청을 받은 해당 파일을 상기 제1 피어의 공개키로 암호화한 다음 제1 피어에게 제공하고, 제1 피어는 자신의 개인키를 이용하여 제공받은 파일을 복호화한다. Next, the public key information of the first peer is collected and provided to the second peer according to the request of the second peer that has received the file transfer request from the first peer that has received the file search response in step S603 (S604). ). The second peer, which has received the public key information of the first peer through the step S604, encrypts the corresponding file that has received the transfer request from the first peer with the public key of the first peer, and then provides the file to the first peer. Decrypts the provided file using its private key.

도 7은 본 발명의 또 다른 실시예에 따라 P2P 환경에서 피어들간에 파일을 교환할 때 보안통신을 위한 키를 생성하는 과정을 상세하게 나타내는 절차도이다. 상기 도 7에 나타낸 P2P 환경은 인증서버(100), 슈퍼피어1(200), 슈퍼피어2(201), 슈퍼피어1(200)의 관리를 받는 일반 피어1(300) 및 슈퍼피어2(201)의 관리를 받는 일반 피어2(301)로 구성되어 있다. 7 is a flowchart illustrating in detail a process of generating a key for secure communication when exchanging files between peers in a P2P environment according to another embodiment of the present invention. The P2P environment illustrated in FIG. 7 includes the normal peer 1 300 and the super peer 2 201 managed by the authentication server 100, the super peer 1 200, the super peer 2 201, and the super peer 1 200. It consists of a general peer 2 (301) managed by).

먼저, 일반 피어1(300)은 자신을 관리하는 슈퍼 피어1(200)에게 특정 파일에 대한 검색을 요청하면(S600), 상기 슈퍼 피어1(200)은 자신의 관리하에 있는 일반 피어들 중에서 상기 파일을 저장하고 있는 피어를 검색할 뿐만 아니라, 다른 그룹 에 속하는 슈퍼 피어인 슈퍼 피어2(201)에게도 상기 파일에 대한 검색을 요청한다(S701). First, when the general peer 1 300 requests a search for a specific file from the super peer 1 200 that manages itself (S600), the super peer 1 200 receives the search among the general peers under its management. In addition to searching for the peer that stores the file, super peer 2 201, which is a super peer belonging to another group, is also requested to search for the file (S701).

슈퍼 피어1(200)으로부터 파일 검색 요청을 수신한 슈퍼 피어2(201)는 자신의 관리하에 있는 일반 피어들 중에서 상기 파일을 저장하고 있는 피어를 검색하여, 일반 피어2(301)가 상기 파일을 저장하고 있는 것으로 확인되면 상기 일반 피어2(301)에 대한 정보를 포함하는 파일 검색 응답을 작성하여 슈퍼 피어1(200)에게 제공한다(S702). 이때 상기 파일 검색 응답에는 상기 파일을 저장하고 있는 일반 피어2(301)의 인터넷프로토콜 주소 및 공개키 정보가 포함되는 것이 바람직하며, 또한 상기 파일 검색 응답은 해당 파일에 대한 검색을 요청했던 일반 피어1(300)의 공개키로 암호화 되는 것이 바람직한다. Upon receiving a file search request from Super Peer 1 (200), Super Peer 2 (201) searches for peers that store the file among normal peers under its management, so that Normal Peer 2 (301) retrieves the file. If it is determined that the data is stored, a file search response including the information on the general peer 2 301 is created and provided to the super peer 1 200 (S702). In this case, the file search response may include the Internet protocol address and public key information of the general peer 2 301 that stores the file, and the file search response may include the general peer 1 that requested the search for the file. It is desirable to be encrypted with the public key of 300.

상기 S702단계를 통하여 파일 검색 응답을 전달받은 슈퍼 피어1(200)이 이를 일반 피어1(300)에게 제공하면(S703), 상기 일반 피어1(300)은 파일 검색 응답에 포함되어 있는 정보에 기초하여, 일반 피어2(301)에게 직접 파일 전송 요청을 행한다(S704). When the super peer 1 200 that has received the file search response through the step S702 provides it to the general peer 1 300 (S703), the general peer 1 300 is based on the information included in the file search response. The file transfer request is made directly to the general peer 2301 (S704).

일반 피어1(300)으로부터 파일 전송 요청(S704)을 수신한 일반 피어2(301)는 슈퍼 피어2(201)에게 일반 피어1(300)에 대한 공개키 정보를 요청한다(S705). 만일 상기 슈퍼 피어2(201)에 해당 일반 피어1(300)에 대한 공개키 정보가 존재하지 않는다면, 슈퍼 피어2(201)는 인증서버(100)를 통하여 상기 일반 피어1(300)의 공개키 정보를 수집한 다음(S706, S707), 이를 일반 피어2(301)에게 제공한다(S708).The general peer 2 301 which receives the file transfer request S704 from the general peer 1 300 requests the public key information about the general peer 1 300 from the super peer 2 201 (S705). If there is no public key information for the general peer 1 (300) in the super peer 2 (201), the super peer 2 (201) through the authentication server 100, the public key of the general peer 1 (300) After collecting the information (S706, S707), and provides it to the general peer 2 (301) (S708).

일반 피어1(300)의 공개키 정보를 얻은 일반 피어2(301)는 일반 피어1(300) 으로부터 전송 요청을 받은 파일을 상기 일반 피어1(300)의 공개키로 암호화한 다음(S609), 일반 피어1(300)에게 제공한다. After receiving the public key information of the general peer 1 (300), general peer 2 (301) encrypts the file received from the general peer 1 (300) with the public key of the general peer 1 (300) (S609), and then general Provided to peer 1 (300).

이상에서 설명한 본 발명은 전술한 실시예 및 첨부된 도면에 의해 한정되는 것이 아니고, 본 발명의 기술적 사상을 벗어나지 않는 범위 내에서 여러가지 치환, 변형 및 변경이 가능하다는 것이 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 당업자에게 있어 명백할 것이다. The present invention described above is not limited to the above-described embodiments and the accompanying drawings, and it is common in the art that various substitutions, modifications, and changes can be made without departing from the technical spirit of the present invention. It will be apparent to those skilled in the art.

본 발명에 의하며 원하는 피어가 제한 없이 가입하고 탈퇴할 수 있는 환경인 P2P 네트워크의 경우와 같이 기존의 PKI 인프라가 없는 환경에서 안전하게 공개키의 소유권을 인증할 수 있게 되어, 기존의 PKI 기반의 인증서 방식을 적용할 수 있다. According to the present invention, it is possible to securely authenticate the ownership of a public key in an environment without an existing PKI infrastructure, such as in the case of a P2P network in which a desired peer can join and leave without restriction. Can be applied.

Claims (14)

P2P 네트워크의 다른 제1 피어로부터 발송된 파일 검색 요청 메시지를 수신하는 제 1단계;Receiving a file search request message sent from another first peer of the P2P network; 상기 제 1단계에서 요청받은 파일이 존재하는지 여부를 검색하는 제 2단계;A second step of searching whether the file requested in the first step exists; 상기 제 2단계의 검색 결과 상기 파일이 존재하는 것으로 검색되는 경우에는 해당 파일을 저장하고 있는 제2 피어의 인터넷프로토콜 주소 및 공개키 정보를 포함하는 파일 검색 응답 메시지를 작성하는 제 3단계; 및,A third step of creating a file search response message including an Internet protocol address and a public key information of a second peer storing the file if the file is found to be present as a result of the search of the second step; And, 상기 제3 단계에서 작성된 응답 메시지를 상기 제1 피어를 향하여 발송하는 제 4단계를 포함하여 구성되는 P2P 네트워크에서 보안통신을 위한 키 관리 방법.And a fourth step of sending the response message created in the third step toward the first peer. 제 1항에 있어서,The method of claim 1, 상기 제1 피어로부터 파일 전송 요청을 받은 제2 피어로부터 제1 피어의 공개키 정보 제공 요청을 수신하는 제 5단계;A fifth step of receiving a request for providing a public key information of a first peer from a second peer that has received a file transfer request from the first peer; 상기 제1 피어의 공개키 정보를 수집하는 제 6단계; 및,A sixth step of collecting public key information of the first peer; And, 상기 제 6단계에서 수집된 공개키 정보를 상기 제2 피어에게 제공하는 제 7단계를 더 포함하는 것을 특징으로 하는 P2P 네트워크에서 보안통신을 위한 키 관리 방법.And a seventh step of providing the public key information collected in the sixth step to the second peer. 제 1항에 있어서, The method of claim 1, 상기 제 1단계의 파일 검색 요청 메시지는 제1 피어의 공개키 정보를 포함하는 것을 특징으로 하는 P2P 네트워크에서 보안통신을 위한 키 관리 방법.The first file search request message includes a public key information of a first peer, the key management method for secure communication in a P2P network. 제 1항에 있어서,The method of claim 1, 상기 제 3단계 및 제 4단계 사이에 상기 제 3단계에서 작성하는 파일 검색 응답 메시지는 상기 제1 피어의 공개키를 이용하여 암호화하는 과정을 더 포함하는 것을 특징으로 하는 P2P 네트워크에서 보안통신을 위한 키 관리 방법.The file search response message written in the third step between the third step and the fourth step further includes encrypting using the public key of the first peer for secure communication in the P2P network. How to manage keys. 제 1항에 있어서,The method of claim 1, 상기 제 1단계 이전에, 피어가 자신의 공개키를 인증서버에 등록하는 과정을 더 포함하는 것을 특징으로 하는 P2P 네트워크에서 보안통신을 위한 키 관리 방법.Prior to the first step, a method for managing a key for secure communication in a peer-to-peer network, characterized in that the peer further comprises registering its public key with the authentication server. 제 5항에 있어서,The method of claim 5, 상기 피어가 자신의 공개키를 인증서버에 등록하는 과정은,The peer registers its public key with the authentication server, 인증서버의 공개키 정보를 수집하는 제 a1단계;A1 step of collecting public key information of the authentication server; 해당 피어 자신의 아이디, 패스워드, 인터넷 프로토콜 주소 및 공개키 정보를 포함하는 공개키 등록 메시지를 작성하여 인증서버에게 제공하는 제 a2단계; 및,A2 step of creating a public key registration message including an ID, password, internet protocol address, and public key information of the corresponding peer and providing it to the authentication server; And, 상기 제 a2단계의 공개키 등록 메시지에 대한 응답으로 공개키 등록 성공 여부에 관한 정보 및 P2P 네트워크에서 상기 피어의 역할을 지시하는 플래그값을 포 함하는 메시지를 제공받는 제 a3단계를 포함하여 구성되는 것을 특징으로 하는 P2P 네트워크에서 보안통신을 위한 키 관리 방법.And a third step of receiving a message including information on whether the public key registration succeeds and a flag value indicating a role of the peer in a P2P network in response to the public key registration message of step a2. Key management method for secure communication in a P2P network, characterized in that. 제 6항에 있어서The method of claim 6 상기 제 a2단계에서 작성된 공개키 등록 메시지는 피어 자신의 패스워드를 키(key)로 이용하여 생성한 해쉬(hash)값이 첨부되어 있는 것을 특징으로 하는 P2P 네트워크에서 보안통신을 위한 키 관리 방법.The public key registration message created in step a2 has a hash value generated by using a password of the peer as a key. The key management method for secure communication in a P2P network. 제 6항에 있어서The method of claim 6 상기 피어가 일반 피어인 경우에는, 상기 제 a3단계에서 제공받는 메시지는 상기 피어를 관리하는 슈퍼 피어의 아이디, 공개키 및 인터넷프로토콜 정보를 포함하는 것을 특징으로 하는 P2P 네트워크에서 보안통신을 위한 키 관리 방법.If the peer is a normal peer, the message provided in step a3 includes key ID, public key, and internet protocol information of the super peer managing the peer. Key management for secure communication in a P2P network Way. 제 6항에 있어서The method of claim 6 상기 피어가 슈퍼 피어인 경우에는, 상기 제 a3단계 이후에 인증서버로부터 다른 슈퍼 피어에 관한 정보 또는 자신이 관리하는 일반 피어들에 관한 정보를 제공받는 단계를 더 포함하는 것을 특징으로 하는 P2P 네트워크에서 보안통신을 위한 키 관리 방법.In the P2P network, if the peer is a super peer, after the step a3, further comprising receiving information about another super peer or general peers managed by the authentication server from the authentication server. Key management method for secure communication. 제 6항에 있어서The method of claim 6 상기 피어가 슈퍼 피어인 경우에는, 상기 제 a3단계 이후에 다른 일반 피어로부터 슈퍼 피어 자신의 관리하에 들어오는데 필요한 정보를 제공받는 단계를 더 포함하는 것을 특징으로 하는 P2P 네트워크에서 보안통신을 위한 키 관리 방법.If the peer is a super peer, after the step a3, the key management method for secure communication in a P2P network, characterized in that further comprising the step of receiving information required to enter under the super peer's own management from another peer. . P2P 네트워크상의 다른 피어들에게 제공할 수 있는 파일과 상기 P2P 네트워크에 진입하기 위하여 필요한 인증, 공개키 등록 및 파일 교환에 필요한 정보를 저장하는 데이터베이스; A database that stores files that can be provided to other peers on a P2P network and information necessary for authentication, public key registration, and file exchange required to enter the P2P network; P2P 네트워크상의 인증서버 또는 다른 피어들과 메시지 또는 데이터를 주고받는 인터페이스부; 및,An interface unit for exchanging messages or data with an authentication server or other peers on a P2P network; And, P2P 네트워크상에서 단말장치의 역할이 슈퍼피어인지 일반피어인지 여부를 확인하여, 상기 P2P 네트워크에 진입하기 위하여 필요한 인증, 공개키 등록 및 파일 교환에 필요한 작업을 수행하는 제어부를 포함하고,A control unit which checks whether a role of a terminal device on a P2P network is a super peer or a general peer, and performs an operation required for authentication, public key registration, and file exchange required to enter the P2P network; 상기 제어부는,The control unit, 공개키 등록, 파일 검색 및 파일 전송 요청을 행하기 위한 메시지를 작성하고, 상기 파일 검색 요청에 대한 응답 메시지를 작성할 때 상기 응답 메시지에 해당 파일을 저장하고 있는 피어의 공개키 정보를 포함시키는 메시지 작성 모듈;Compose a message for making a public key registration, file retrieval, and file transfer request, and when creating a response message for the file retrieval request, include a public key information of the peer storing the file in the response message. module; P2P 네트워크상의 다른 피어로부터의 파일 검색 요청에 따라 상기 파일 검색 요청의 대상이 되는 파일이 저장되어 있는지 여부를 검색하는 검색 모듈;A search module for searching whether a file which is a target of the file search request is stored according to a file search request from another peer on a P2P network; P2P 네트워크상의 다른 피어에게 제공하는 메시지를 수신측 피어의 공개키 정보를 이용하여 암호화하고, 상기 다른 피어로부터 제공받은 메시지는 자신의 개인키 정보를 이용하여 복호화하는 암호화 및 복호화 모듈을 포함하여 구성되는 단말장치.A message provided to another peer on the P2P network is encrypted using public key information of the receiving peer, and the message provided from the other peer includes an encryption and decryption module for decrypting using its private key information. Terminal device. 제 11항에 있어서,The method of claim 11, 상기 메시지 작성 모듈은 공개키 등록을 요청하는 메시지를 작성하는 경우에 상기 공개키 등록을 요청하는 메시지에 단말장치 자신의 패스워드를 키로 한 해쉬값을 생성하여 포함시키는 것을 특징으로 하는 단말장치.The message generating module is a terminal device, characterized in that for generating a message for requesting the registration of the public key, generating a hash value using the password of the terminal device itself in the message for requesting the public key registration. 제 11항에 있어서,The method of claim 11, 상기 데이터베이스는 상기 단말장치로부터 메시지를 제공받을 인증서버 또는 상대 피어측 공개키 정보, 상기 단말장치 자신의 공개키 및 개인키 정보 및 인터넷프로토콜 정보를 저장하는 것을 특징으로 하는 단말장치.And the database stores the authentication server or the peer side public key information to receive the message from the terminal device, the public key and private key information of the terminal device, and internet protocol information. 제 11항에 있어서,The method of claim 11, 상기 데이터베이스는, 상기 단말장치가 상기 P2P 네트워크에서 슈퍼 피어인 경우에는 자신이 속한 그룹에 함께 속해있는 일반 피어에 대한 식별 정보인 피어 아이디 및 상기 피어 아이디 각각에 대한 플래그값, 공개키 정보 및 인터넷 프로토콜 정보를 포함하는 것을 특징으로 하는 단말장치.When the terminal device is a super peer in the P2P network, the database may include a peer ID which is identification information of a general peer belonging to a group to which it belongs, a flag value for each peer ID, public key information, and an internet protocol. Terminal device comprising the information.
KR1020060122225A 2006-12-05 2006-12-05 Key management method and apparatus for providing secure communication on p2p network KR100834576B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020060122225A KR100834576B1 (en) 2006-12-05 2006-12-05 Key management method and apparatus for providing secure communication on p2p network

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020060122225A KR100834576B1 (en) 2006-12-05 2006-12-05 Key management method and apparatus for providing secure communication on p2p network

Publications (1)

Publication Number Publication Date
KR100834576B1 true KR100834576B1 (en) 2008-06-02

Family

ID=39769830

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020060122225A KR100834576B1 (en) 2006-12-05 2006-12-05 Key management method and apparatus for providing secure communication on p2p network

Country Status (1)

Country Link
KR (1) KR100834576B1 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2013152312A1 (en) * 2012-04-06 2013-10-10 Interdigital Patent Holdings, Inc. Optimization of peer-to-peer content delivery service

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005094702A (en) 2003-09-19 2005-04-07 Sony Corp Transmitting device and method, receiving device and method, and transmitting/receiving system and method
JP2005142613A (en) 2003-11-04 2005-06-02 Nippon Telegr & Teleph Corp <Ntt> Information disclosure system
WO2006016328A1 (en) 2004-08-10 2006-02-16 Koninklijke Philips Electronics N.V. Method and apparatus for use in off-line p2p communication
US20060174120A1 (en) 2005-02-02 2006-08-03 Seamless Peer 2 Peer, Inc. System and method for providing peer-to-peer communication
JP2006246401A (en) 2005-03-07 2006-09-14 Kddi Corp Hybrid peer-to-peer communication network system, index server thereof, terminal device, and mirror peer creating method in the same system

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005094702A (en) 2003-09-19 2005-04-07 Sony Corp Transmitting device and method, receiving device and method, and transmitting/receiving system and method
JP2005142613A (en) 2003-11-04 2005-06-02 Nippon Telegr & Teleph Corp <Ntt> Information disclosure system
WO2006016328A1 (en) 2004-08-10 2006-02-16 Koninklijke Philips Electronics N.V. Method and apparatus for use in off-line p2p communication
US20060174120A1 (en) 2005-02-02 2006-08-03 Seamless Peer 2 Peer, Inc. System and method for providing peer-to-peer communication
JP2006246401A (en) 2005-03-07 2006-09-14 Kddi Corp Hybrid peer-to-peer communication network system, index server thereof, terminal device, and mirror peer creating method in the same system

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2013152312A1 (en) * 2012-04-06 2013-10-10 Interdigital Patent Holdings, Inc. Optimization of peer-to-peer content delivery service

Similar Documents

Publication Publication Date Title
CN110537346B (en) Safe decentralized domain name system
TWI725655B (en) Method, apparatus and system for program execution and data proof for executing a sub-logic code within a trusted execution environment
CN109862041B (en) Digital identity authentication method, equipment, device, system and storage medium
AU2019204725B2 (en) Retrieving access data for blockchain networks using highly available trusted execution environments
JP6811339B2 (en) Read public data for blockchain networks using a highly available and reliable execution environment
JP3761557B2 (en) Key distribution method and system for encrypted communication
CN101605137B (en) Safe distribution file system
WO2018004783A1 (en) Public key infrastructure using blockchains
US8572387B2 (en) Authentication of a peer in a peer-to-peer network
KR20210095093A (en) Method for providing authentification service by using decentralized identity and server using the same
KR20200080441A (en) Distributed device authentication protocol in internet of things blockchain environment
US11218317B1 (en) Secure enclave implementation of proxied cryptographic keys
EP4096160A1 (en) Shared secret implementation of proxied cryptographic keys
JP5012574B2 (en) Common key automatic sharing system and common key automatic sharing method
JP6976405B2 (en) Access control system and its programs
Liou et al. T-auth: A novel authentication mechanism for the IoT based on smart contracts and PUFs
KR20210095061A (en) Method for providing authentification service by using decentralized identity and server using the same
CN114982195A (en) Request and response protocol with blockchain transactions
JP4552785B2 (en) Encrypted communication management server
JP6939313B2 (en) Distributed authentication system
KR100834576B1 (en) Key management method and apparatus for providing secure communication on p2p network
TW202304172A (en) Location-key encryption system
JP4631869B2 (en) Key distribution method and system for encrypted communication
CN116506104B (en) Method and system for information security interaction of different departments based on cross-chain blockchain
KR102497440B1 (en) Method and system for providing user information management service based on decentralized identifiers

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: 20130424

Year of fee payment: 6

FPAY Annual fee payment

Payment date: 20140430

Year of fee payment: 7

FPAY Annual fee payment

Payment date: 20150527

Year of fee payment: 8

LAPS Lapse due to unpaid annual fee