KR101369250B1 - Server, client and method for verifying integrity of data in peer to peer based network - Google Patents

Server, client and method for verifying integrity of data in peer to peer based network Download PDF

Info

Publication number
KR101369250B1
KR101369250B1 KR1020110146023A KR20110146023A KR101369250B1 KR 101369250 B1 KR101369250 B1 KR 101369250B1 KR 1020110146023 A KR1020110146023 A KR 1020110146023A KR 20110146023 A KR20110146023 A KR 20110146023A KR 101369250 B1 KR101369250 B1 KR 101369250B1
Authority
KR
South Korea
Prior art keywords
file
metadata
integrity
verification
seed
Prior art date
Application number
KR1020110146023A
Other languages
Korean (ko)
Other versions
KR20130077359A (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 KR1020110146023A priority Critical patent/KR101369250B1/en
Priority to PCT/KR2012/011455 priority patent/WO2013100553A1/en
Publication of KR20130077359A publication Critical patent/KR20130077359A/en
Application granted granted Critical
Publication of KR101369250B1 publication Critical patent/KR101369250B1/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/08Network architectures or network communication protocols for network security for authentication of entities
    • H04L63/0823Network architectures or network communication protocols for network security for authentication of entities using certificates
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/64Protecting data integrity, e.g. using checksums, certificates or signatures
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3236Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using cryptographic hash functions
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3247Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving digital signatures
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/104Peer-to-peer [P2P] networks

Abstract

본 발명은 P2P통신 프로토콜을 이용한 P2P기반 파일 업데이트 또는 데이터전송에 있어서, 사용자간 파일 전송의 기준으로 사용되는 메타 데이터 파일(meta data file) 생성 시 메타 데이터 파일의 무결성을 검증할 수 있도록 동일한 해쉬(hash)값을 가지는 메타 데이터 검증 파일을 추가로 생성하여 배포하고, 클라이언트(client)에서는 메타 데이터 파일과 함께 다운로드 받은 메타 데이터 검증 파일을 이용하여 메타 데이터 파일의 무결성을 검증함으로써 메타 데이터 파일의 변조 여부를 사전에 검출할 수 있도록 하여 P2P 방식의 파일 전송 프로토콜의 보안성을 크게 향상시킬 수 있다. 또한, 보안성 향상으로 인하여 비즈니스 환경의 신뢰된 데이터 전송에 P2P통신 프로토콜을 보다 쉽게 적용할 수 있게 된다.According to the present invention, in the P2P-based file update or data transfer using the P2P communication protocol, the same hash (so as to verify the integrity of the metadata file when generating the metadata file used as a standard for file transfer between users) may be used. Create and distribute a metadata verification file having a hash value, and verify the integrity of the metadata file by using the metadata verification file downloaded along with the metadata file. Can be detected in advance, greatly improving the security of the P2P type file transfer protocol. In addition, security enhancements make it easier to apply P2P communication protocols to reliable data transmission in business environments.

Description

P2P기반 네트워크에서 데이터의 무결성 검증을 위한 서버, 클라이언트 및 방법{SERVER, CLIENT AND METHOD FOR VERIFYING INTEGRITY OF DATA IN PEER TO PEER BASED NETWORK}SERVER, CLIENT AND METHOD FOR VERIFYING INTEGRITY OF DATA IN PEER TO PEER BASED NETWORK}

본 발명은 피어-투-피어(Peer-to-Peer, P2P) 기반의 파일 전송 방법에 관한 것으로, 특히 P2P 통신 프로토콜을 이용한 P2P기반 파일 업데이트(file update) 또는 데이터 전송에 있어서, 사용자간 파일 전송의 기준으로 사용되는 메타 데이터 파일(meta data file) 생성 시 메타 데이터 파일의 무결성을 검증할 수 있도록 동일한 해쉬(hash)값을 가지는 메타 데이터 검증 파일을 추가로 생성하여 배포하고, 클라이언트(client)에서는 메타 데이터 파일과 함께 다운로드 받은 메타 데이터 검증 파일을 이용하여 메타 데이터 파일의 무결성을 검증함으로써 메타 데이터 파일의 변조 여부를 사전에 검출할 수 있도록 하여 P2P 방식의 파일 전송 프로토콜의 보안성을 크게 향상시키는 P2P 기반 네트워크에서 데이터의 무결성 검증을 위한 서버, 클라이언트 및 방법에 관한 것이다.
The present invention relates to a peer-to-peer (P2P) based file transfer method, and in particular, in a P2P-based file update or data transfer using a P2P communication protocol, file transfer between users Create and distribute additional metadata verification files with the same hash value to verify the integrity of the metadata file when creating the metadata file used as the standard of the client. P2P greatly improves the security of the P2P file transfer protocol by verifying the integrity of the metadata file by using the metadata verification file downloaded along with the metadata file to detect whether the metadata file has been tampered with. A server, client, and method for verifying the integrity of data in an underlying network.

일반적으로, P2P 기술은 다수의 사용자를 네트워크로 모아서 그 네트워크 내에서 대역폭을 공유하고 정보를 함께 처리하는 개념으로, 일반적인 클라이언트-서버 모드와 다르게 각 클라이언트 단말기가 클라이언트 및 서버 양측으로서 기능하며, 분산되어 있는 협업하는 환경에서 효율적으로 그리고 신뢰성 있게 사용자가 콘텐츠를 획득하게 할 수 있는 효율적인 데이터 송신 접근 방식이다.In general, P2P technology is a concept of collecting a large number of users into a network, sharing bandwidth and processing information together in the network. Unlike general client-server mode, each client terminal functions as both a client and a server, Is an efficient data transmission approach that enables users to acquire content efficiently and reliably in a collaborative environment.

즉, P2P란, 클라이언트-서버 모델과 달리 동등한 계층의 피어 노드(peer node)들이 서로 클라이언트와 서버 역할을 동시에 하면서 파일을 송수신하는 네트워크 통신 모델을 말한다.In other words, P2P refers to a network communication model in which peer nodes of the same layer send and receive files while simultaneously acting as clients and servers, unlike the client-server model.

위와 P2P 기술 중 최근 들어 많이 사용되는 P2P 기술로 토렌트(torrent)가 있다. 토렌트는 그리드 스토리지(grid storage)의 개념을 P2P 네트워크와 같은 오픈(open)환경에 응용한 것으로, 종래 P2P 네트워크에서 파일 단위로 데이터 교환이 행하여지는 것에 반해, 토렌트에서는 파일을 일정 사이즈의 블록(block)으로 분할하고, 분할된 블록 단위로 데이터 교환이 행하여져, 복수의 블록으로 파일이 재구성된다.There is a torrent as a P2P technology which is widely used in the above and P2P technology. Torrent is the application of the concept of grid storage to an open environment such as a P2P network. In the conventional P2P network, data exchange is performed on a per file basis. In the torrent, a file is divided into blocks of a predetermined size ), Data exchange is performed on a divided block basis, and a file is reconstructed into a plurality of blocks.

이와 같은 토렌트에서는 원하는 파일을 보유하는 복수의 호스트 컴퓨터를 인터넷으로 검색하고, 검색된 복수의 호스트 컴퓨터가 각각 상이한 블록을 동시에 요구함으로써 P2P 네트워크 환경에서의 파일 전송의 고속화를 도모하고 있다.In such a torrent, a plurality of host computers holding desired files are searched on the Internet, and a plurality of searched host computers simultaneously request different blocks, thereby speeding up the file transfer in the P2P network environment.

한편, 위와 같은 토렌트는 인터넷을 이용한 데이터 전송 및 다운로드 기술로 안티 바이러스 프로그램(Anti virus program)을 포함하는 다양한 프로그램의 업데이트 기술로 사용될 수 있다.Meanwhile, the torrent as described above may be used as an update technology of various programs including an anti virus program as a data transmission and download technology using the Internet.

이때, 토렌트 프로토콜(torrent protocol) 기반의 분산파일 업데이트는 업데이트 대상파일에 대한 정보를 갖고 있는 시드 파일(seed file)이라고 하는 메타 데이터 파일이 필수적으로 존재한다. At this time, in the torrent protocol-based distributed file update, a meta data file called a seed file having information on an update target file is essentially present.

이러한 시드 파일은 토렌트 프로토콜에서 사용자간 파일 전송의 기준으로 사용되고 있는 중요한 파일로서 서버의 시드 파일과 클라이언트에게 전달된 시드 파일이 동일하다는 것을 보장하는 것이 필요하다.
This seed file is an important file that is used as a standard for file transfer between users in the torrent protocol. It is necessary to ensure that the seed file of the server and the seed file delivered to the client are identical.

(특허문헌)(Patent Literature)

한국공개특허번호 제2009-0115225호(공개일 2009년 11월 04일)
Korean Patent Publication No. 2009-0115225 (published November 04, 2009)

그러나, 종래 토렌트 프로토콜에서는 시드 파일에 대해 무결성을 검증하는 방법이나 장치가 아직 구현되어 있지 않아 공격자에 의해 악의적인 시드 파일의 배포되는 경우 이를 검출할 수 없어 악의적인 공격에 대처할 수 없는 문제점이 있었다.However, in the conventional torrent protocol, a method or device for verifying the integrity of the seed file has not been implemented yet, so when a malicious seed file is distributed by an attacker, there is a problem in that it cannot detect a malicious attack.

따라서, 본 발명은 P2P통신 프로토콜을 이용한 P2P기반 파일 업데이트(file update) 또는 데이터 전송에 있어서, 사용자간 파일 전송의 기준으로 사용되는 메타 데이터 파일(meta data file) 생성 시 메타 데이터 파일의 무결성을 검증할 수 있도록 동일한 해쉬(hash)값을 가지는 메타 데이터 검증 파일을 추가로 생성하여 배포하고, 클라이언트(client)에서는 메타 데이터 파일과 함께 다운로드 받은 메타 데이터 검증 파일을 이용하여 메타 데이터 파일의 무결성을 검증함으로써 메타 데이터 파일의 변조 여부를 사전에 검출할 수 있도록 하여 P2P 방식의 파일 전송 프로토콜의 보안성을 크게 향상시키는 P2P 기반 네트워크에서 데이터의 무결성 검증을 위한 서버, 클라이언트 및 방법을 제공하고자 한다.
Accordingly, the present invention verifies the integrity of the metadata file when generating a metadata file used as a criterion for file transfer between users in P2P-based file update or data transmission using the P2P communication protocol. By additionally generating and distributing the metadata verification file having the same hash value, the client verifies the integrity of the metadata file using the metadata verification file downloaded together with the metadata file. The present invention provides a server, a client, and a method for verifying data integrity in a P2P based network that can detect whether a meta data file has been tampered with, thereby greatly improving the security of a P2P based file transfer protocol.

상술한 본 발명은 P2P 기반 네트워크에서 데이터의 무결성 검증을 위한 서버 장치로서, 메타 데이터 파일을 생성하는 메타 데이터 파일 생성부와, 상기 메타 데이터 파일의 무결성 검증을 위한 메타 데이터 검증 파일을 생성하는 메타 데이터 검증 파일 생성부와, 상기 메타 데이터 검증 파일에 디지털 서명을 수행하는 전자서명부와, 상기 디지털 서명된 메타 데이터 검증 파일에 대한 무결성을 검사하는 메타 데이터 검증 파일 무결성 검사부와, 상기 메타 데이터 파일의 무결성 검증을 위한 메타 데이터 검증 파일을 생성하며, P2P(Peer to Peer) 기반 프로토콜을 이용하여 상기 메타 데이터 파일과 상기 메타 데이터 검증 파일을 전송하는 제어부를 포함한다.The present invention described above is a server device for verifying data integrity in a P2P based network, comprising: a metadata file generator for generating a metadata file; and metadata for generating a metadata verification file for verifying the integrity of the metadata file. A verification file generation unit, an electronic signature unit for digitally signing the metadata verification file, a metadata verification file integrity checking unit for checking the integrity of the digitally signed metadata verification file, and an integrity verification of the metadata file And a control unit for generating a metadata verification file for transmitting the metadata file and the metadata verification file using a peer to peer (P2P) based protocol.

또한, 상기 메타 데이터 검증 파일 생성부는, 상기 메타 데이터 검증 파일에 기록되는 해쉬값을 상기 메타 데이터 파일에 기록되는 해쉬값과 동일한 값으로 설정하는 것을 특징으로 한다.The metadata verification file generation unit may set a hash value recorded in the metadata verification file to the same value as a hash value recorded in the metadata file.

또한, 상기 메타 데이터 검증 파일 무결성 검사부는, 상기 메타 데이터 검증 파일의 상기 디지털 서명의 유효성과 상기 디지털 서명의 인증서 발급자가 정당한지 여부를 검사함으로서 상기 메타 데이터 검증 파일의 무결성을 검증하는 것을 특징으로 한다.The metadata verification file integrity checker may verify the integrity of the metadata verification file by checking the validity of the digital signature of the metadata verification file and whether the issuer of the digital signature is valid. .

또한, 상기 메타 데이터 검증 파일 무결성 검사부는, 상기 디지털 서명의 유효성이 인정되고 상기 인증서 발급자가 정당하다고 검사되며, 상기 메타 데이터 검증 파일의 해쉬값과 상기 메타 데이터 파일의 해쉬값이 동일한 경우, 상기 메타 데이터 검증 파일의 무결성을 검증하는 것을 특징으로 한다.In addition, the metadata verification file integrity checker, if the validity of the digital signature is recognized and the certificate issuer is valid, and if the hash value of the metadata verification file and the hash value of the metadata file are the same, the metadata And verifying the integrity of the data verification file.

또한, 상기 P2P 기반 프로토콜은, 토렌트 프로토콜인 것을 특징으로 한다.In addition, the P2P-based protocol is a torrent protocol.

또한, 상기 메타 데이터 파일은, 업데이트 대상 파일에 대한 정보를 가지고 있는 시드 파일인 것을 특징으로 한다.The meta data file is a seed file having information on a file to be updated.

또한, 본 발명은 P2P 기반 네트워크에서 데이터의 무결성 검증을 위한 클라이언트 장치로서, P2P 기반 프로토콜을 이용하여 메타 데이터 파일과 메타 데이터 검증 파일의 다운로드 시 상기 메타 데이터 파일의 해쉬값과 상기 메타 데이터 검증 파일의 해쉬값이 동일한지 여부를 검사하는 메타 데이터 검증 파일 무결성 검사부와, 상기 메타 데이터 검증 파일에 전자서명된 디지털 서명의 유효성과 상기 디지털 서명의 인증서 발급자가 정당한지 여부를 검사하는 전자서명 검사부와, 무결성이 검증된 메타 데이터 검증 파일을 이용하여 상기 메타 데이터 파일의 무결성을 검증하고, 상기 메타 데이터 파일의 무결성이 검증된 경우 그 메타 데이터 파일을 이용하여 P2P 기반 데이터 전송을 수행하는 제어부를 포함한다.The present invention also provides a client device for verifying data integrity in a P2P-based network. A metadata verification file integrity checker that checks whether the hash values are the same, an electronic signature checker that checks the validity of the digital signature digitally signed in the metadata verification file and whether the issuer of the digital signature is valid; And a controller that verifies the integrity of the metadata file using the verified metadata verification file, and performs P2P based data transmission using the metadata file when the integrity of the metadata file is verified.

또한, 상기 P2P 기반 프로토콜은, 토렌트 프로토콜인 것을 특징으로 한다.In addition, the P2P-based protocol is a torrent protocol.

또한, 상기 메타 데이터 파일은, 업데이트 대상 파일에 대한 정보를 가지고 있는 시드파일인 것을 특징으로 한다.The meta data file may be a seed file having information on an update target file.

또한, 본 발명은 P2P 기반 네트워크에서 데이터의 무결성 검증 방법으로서,메타 데이터 파일을 생성하는 단계와, 상기 메타 데이터 파일의 무결성 검증을 위한 메타 데이터 검증 파일을 생성하는 단계와, 상기 메타 데이터 검증 파일에 디지털 서명을 수행하는 단계와, 상기 디지털 서명된 메타 데이터 검증 파일에 대한 무결성을 검사하는 단계와, 상기 메타 데이터 검증 파일의 무결성이 검증되는 경우, P2P 기반 프로토콜을 이용하여 상기 메타 데이터 파일과 상기 메타 데이터 검증 파일을 전송하는 단계를 포함한다.The present invention also provides a method for verifying data integrity in a P2P based network, the method comprising: generating a metadata file, generating a metadata verification file for verifying the integrity of the metadata file, and verifying the metadata verification file; Performing a digital signature, checking the integrity of the digitally signed metadata verification file, and if the integrity of the metadata verification file is verified, the metadata file and the meta using a P2P based protocol. Transmitting the data verification file.

또한, 상기 메타 데이터 검증 파일을 생성하는 단계는, 상기 메타 데이터 검증 파일에 기록되는 해쉬값을 상기 메타 데이터 파일에 기록되는 해쉬값과 동일한 값으로 설정하는 단계를 포함하는 것을 특징으로 한다.The generating of the metadata verification file may include setting a hash value recorded in the metadata verification file to the same value as a hash value recorded in the metadata file.

또한, 상기 메타 데이터 검증 파일에 대한 무결성을 검사하는 단계는, 상기 메타 데이터 검증 파일에 전자서명된 디지털 서명의 유효성을 검사하는 단계와, 상기 디지털 서명이 유효한 경우, 상기 디지털 서명을 발급한 인증서 발급자가 정당한지 여부를 검사하는 단계를 포함하는 것을 특징으로 한다.The checking of the integrity of the metadata verification file may include: validating a digital signature digitally signed in the metadata verification file; and if the digital signature is valid, a certificate issuer who issues the digital signature. Characterized in that it comprises the step of checking whether it is legitimate.

또한, 상기 메타 데이터 검증 파일에 대한 무결성을 검사하는 단계는, 상기 디지털 서명이 유효성이 인정되고 상기 인증서 발급자가 정당하다고 검사되는 경우, 상기 메타 데이터 검증 파일의 해쉬값과 상기 메타 데이터 파일의 해쉬값이 동일한지 여부를 검사하는 단계와, 상기 메타 데이터 검증 파일의 해쉬값과 상기 메타 데이터 파일의 해쉬값이 동일한 경우 상기 메타 데이터 검증 파일의 무결성을 검증하는 단계를 더 포함하는 것을 특징으로 한다.The checking of the integrity of the metadata verification file may include: a hash value of the metadata verification file and a hash value of the metadata file when the digital signature is recognized as valid and the certificate issuer is verified as being valid. And checking whether the same is the same, and verifying the integrity of the metadata verification file when the hash value of the metadata verification file and the hash value of the metadata file are the same.

또한, 상기 P2P 기반 프로토콜은, 토렌트 프로토콜인 것을 특징으로 한다.In addition, the P2P-based protocol is a torrent protocol.

또한, 상기 메타 데이터 파일은, 업데이트 대상 파일에 대한 정보를 가지고 있는 시드 파일인 것을 특징으로 한다.The meta data file is a seed file having information on a file to be updated.

또한, 본 발명은 P2P 기반 네트워크에서 데이터의 무결성 검증 방법으로서, P2P 기반 프로토콜을 이용하여 메타 데이터 파일과 메타 데이터 검증 파일을 다운로드하는 단계와, 상기 메타 데이터 검증 파일의 무결성을 검사하는 단계와, 상기 메타 데이터 검증 파일의 무결성이 검증되는 경우, 상기 무결성이 검증된 상기 메타 데이터 검증 파일의 해쉬값과 상기 메타 데이터 파일의 해쉬값이 동일한지를 검사하는 단계와, 상기 메타 데이터 검증 파일의 해쉬값과 상기 메타 데이터 파일의 해쉬값이 동일한 경우 상기 메타 데이터 파일을 이용하여 P2P 기반 데이터 전송을 수행하는 단계를 포함한다.The present invention also provides a method for verifying data integrity in a P2P based network, the method comprising: downloading a metadata file and a metadata verification file using a P2P based protocol, checking the integrity of the metadata verification file; If the integrity of the metadata verification file is verified, checking whether a hash value of the metadata verification file whose integrity is verified and a hash value of the metadata file are the same; If the hash values of the metadata file are the same, performing P2P based data transmission using the metadata file.

또한, 상기 메타 데이터 검증 파일의 무결성을 검사하는 단계는, 상기 메타 데이터 검증 파일에 전자서명된 디지털 서명의 유효성을 검사하는 단계와, 상기 디지털 서명이 유효한 경우, 상기 디지털 서명을 발급한 인증서 발급자가 정당한지를 검사하는 단계와, 상기 인증서 발급자가 정당한 경우 상기 메타 데이터 검증 파일의 무결성을 검증하는 단계를 포함하는 것을 특징으로 한다.The checking of the integrity of the metadata verification file may include validating a digital signature digitally signed in the metadata verification file, and if the digital signature is valid, the certificate issuer who issued the digital signature is issued. And checking the legitimacy, and verifying the integrity of the metadata verification file if the certificate issuer is legitimate.

또한, 상기 P2P 기반 프로토콜은, 토렌트 프로토콜인 것을 특징으로 한다.In addition, the P2P-based protocol is a torrent protocol.

또한, 상기 메타 데이터 파일은, 업데이트 대상 파일에 대한 정보를 가지고 있는 시드 파일인 것을 특징으로 한다.
The meta data file may be a seed file having information on an update target file.

본 발명은 P2P통신 프로토콜을 이용한 P2P기반 파일 업데이트(file update)또는 데이터 전송에 있어서, 사용자간 파일 전송의 기준으로 사용되는 메타 데이터 파일(meta data file) 생성 시 메타 데이터 파일의 무결성을 검증할 수 있도록 동일한 해쉬(hash)값을 가지는 메타 데이터 검증 파일을 추가로 생성하여 배포하고, 클라이언트(client)에서는 메타 데이터 파일과 함께 다운로드 받은 메타 데이터 검증 파일을 이용하여 메타 데이터 파일의 무결성을 검증함으로써 메타 데이터 파일의 변조 여부를 사전에 검출할 수 있도록 하여 P2P 방식의 파일 전송 프로토콜의 보안성을 크게 향상시키는 이점이 있다. 또한, 보안성 향상으로 인하여 비즈니스 환경의 신뢰된 데이터 전송에 P2P통신 프로토콜을 보다 쉽게 적용할 수 있는 이점이 있다.
According to the present invention, in the P2P-based file update or data transmission using the P2P communication protocol, the integrity of the metadata file can be verified when generating a metadata file used as a standard for file transfer between users. In order to generate and distribute additional metadata verification files with the same hash value, the client verifies the integrity of the metadata file using the metadata verification file downloaded along with the metadata file. It is possible to detect whether a file has been tampered with in advance, thereby greatly improving the security of the P2P type file transfer protocol. In addition, due to the improved security, there is an advantage that the P2P communication protocol can be more easily applied to the reliable data transmission in the business environment.

도 1은 본 발명의 실시예에 따른 P2P 기반 업데이트 환경의 무결성 검증을 위한 시스템의 네트워크 구성도,
도 2는 본 발명의 실시예에 따른 시드파일 생성서버의 상세 블록 구성도,
도 3은 본 발명의 실시예에 따른 클라이언트의 상세 블록 구성도,
도 4는 본 발명의 실시예에 따른 P2P 기반 업데이트 시스템의 시드파일 생성서버에서 무결성을 보장하는 시드파일을 생성하는 동작 제어 흐름도,
도 5는 본 발명의 실시예에 따른 P2P 기반 업데이트 시스템의 클라이언트에서 시드파일의 무결성을 검증하는 동작 제어 흐름도.
1 is a network configuration diagram of a system for verifying integrity of a P2P based update environment according to an embodiment of the present invention;
2 is a detailed block diagram of a seed file generation server according to an embodiment of the present invention;
3 is a detailed block diagram of a client according to an embodiment of the present invention;
4 is an operation control flowchart of generating a seed file to guarantee integrity in a seed file generation server of a P2P based update system according to an embodiment of the present invention;
5 is an operation control flowchart for verifying the integrity of a seed file in a client of a P2P based update system according to an embodiment of the present invention.

이하, 첨부된 도면을 참조하여 본 발명의 동작 원리를 상세히 설명한다. 하기에서 본 발명을 설명함에 있어서 공지 기능 또는 구성에 대한 구체적인 설명이 본 발명의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우에는 그 상세한 설명을 생략할 것이다. 그리고 후술되는 용어들은 본 발명에서의 기능을 고려하여 정의된 용어들로서 이는 사용자, 운용자의 의도 또는 관례 등에 따라 달라질 수 있다. 그러므로 그 정의는 본 명세서 전반에 걸친 내용을 토대로 내려져야 할 것이다.Hereinafter, with reference to the accompanying drawings will be described in detail the operating principle of the present invention. In the following description of the present invention, when it is determined that a detailed description of a known function or configuration may unnecessarily obscure the subject matter of the present invention, the detailed description thereof will be omitted. The following terms are defined in consideration of the functions of the present invention, and may be changed according to the intentions or customs of the user, the operator, and the like. Therefore, the definition should be based on the contents throughout this specification.

도 1은 본 발명의 실시 예에 따른 P2P 기반 업데이트 환경의 무결성 검증을 위한 시스템의 네트워크 구성을 도시한 것이다. 이하의 설명에서는 P2P 기반 프로토콜 중 하나인 토렌트 프로토콜에서의 P2P 기반 업데이트를 위한 메타 데이터 파일의 무결성 검증에 관한 동작을 예를 들어 설명하나, 다른 P2P 기반 프로토콜에서도 동일하게 적용 가능하다.1 illustrates a network configuration of a system for verifying integrity of a P2P based update environment according to an embodiment of the present invention. In the following description, an operation of verifying the integrity of the metadata file for P2P-based update in the torrent protocol, which is one of the P2P-based protocols, will be described as an example.

시드파일 생성서버(100)는 토렌트 프로토콜(torrent protocol) 등의 P2P기반 프로토콜을 이용하여 배포되는 프로그램의 다운로드(download)와 업데이트(update)를 위한 메타 데이터 파일 즉, 시드파일(seed file)을 생성한다. 이와 같은 시드파일 생성서버(100)는 상업적 목적을 가진 특정 프로그램을 개발하고 배포하는 회사의 서버가 될 수 있으며, 예를 들어 특정 프로그램이 안티 바이러스(anti virus) 프로그램인 경우 해당 프로그램을 개발한 회사의 서버가 될 수 있다.The seed file generation server 100 generates a metadata file, that is, a seed file for downloading and updating a distributed program using a P2P based protocol such as a torrent protocol. do. The seed file generation server 100 may be a server of a company that develops and distributes a specific program for commercial purposes. For example, when the specific program is an anti-virus program, the company that developed the program. Can be your server.

또한, 시드파일 생성서버(100)는 시드파일을 생성함에 있어서, 시드파일의 무결성 검증을 위해 시드파일을 검증할 수 있는 메타 데이터 검증 파일 즉, 시드 검증파일을 추가로 생성하여 파일 업데이트(file update)시 시드 검증 파일을 통해 시드파일을 검증할 수 있도록 함으로써, 클라이언트(300)가 시드파일에 대한 무결성을 검증할 수 있도록 한다. 즉, 시드파일 생성서버(100)는 시드파일의 생성시점에 시드파일과 짝을 이루는 시드 검증 파일을 생성하여 함께 배포한다. 이때 시드 검증 파일에는 시드파일에 대한 해쉬(hash)값이 기록되며, 시드파일 생성서버(100)는 시드 검증 파일 자체에 대한 무결성 검사를 위해 전자서명서버로부터 디지털 서명을 수행하여 배포하게 된다.In addition, in generating the seed file, the seed file generation server 100 updates a file by additionally generating a metadata verification file that can verify the seed file for verifying the integrity of the seed file, that is, a seed verification file. By validating the seed file through the seed verification file, the client 300 may verify the integrity of the seed file. That is, the seed file generation server 100 generates and distributes a seed verification file paired with the seed file at the time of generation of the seed file. In this case, a hash value of the seed file is recorded in the seed verification file, and the seed file generation server 100 performs a digital signature from the digital signature server to distribute the seed verification file for integrity checking.

파일 서버(200)는 시드파일 생성서버(100)에서 제공하는 프로그램의 파일을 저장하여 시드파일을 이용해 특정 프로그램의 파일에 대한 다운로드나 업데이트를 요청하는 클라이언트(client)(300)에게 실제 프로그램의 파일이나 업데이트 파일을 제공하는 서버를 말한다. 예를 들어 시드파일 생성서버(100)가 안티 바이러스 프로그램을 제공하는 회사의 서버인 경우 시드파일 생성서버(100)는 파일서버(200)에 클라이언트(300)에게 제공할 안티 바이러스 엔진 프로그램과 해당 프로그램의 업데이트 파일 등을 파일서버(200)에 저장할 수 있으며, 파일서버(200)는 이와 같이 저장된 프로그램 파일과 업데이트 파일을 각 클라이언트(300)에게 제공한다.The file server 200 stores a file of a program provided by the seed file generation server 100 and uses a seed file to request a client 300 to download or update a file of a specific program. Or a server that provides update files. For example, when the seed file generation server 100 is a server of a company that provides an antivirus program, the seed file generation server 100 may provide an antivirus engine program and a corresponding program to be provided to the client 300 in the file server 200. The update file may be stored in the file server 200, and the file server 200 provides the stored program file and the update file to each client 300.

클라이언트(300)는 토렌트(torrent) 클라이언트 프로그램이 탑재되어 토렌트 기반의 분산파일 업데이트가 가능하게 되는 각 사용자의 PC 등의 단말장치가 될 수 있다. 이와 같은 클라이언트(100)는 토렌트 클라이언트 프로그램의 실행 시 파일서버(200)로부터 시드파일을 다운로드한 후, 시드파일을 이용하여 원하는 특정 프로그램을 다운로드 받게 된다.The client 300 may be a terminal device such as a PC of each user in which a torrent client program is mounted to enable torrent-based distributed file updating. The client 100 downloads the seed file from the file server 200 when the torrent client program is executed, and then downloads a specific program desired by using the seed file.

또한, 클라이언트(300)는 시드파일의 다운로드 시 시드 검증 파일을 함께 다운로드하여 시드 검증 파일의 무결성을 검사한 후, 다시 시드 검증 파일을 이용하여 시드파일의 무결성을 검사하고, 시드파일의 무결성이 검증된 경우에만 시드파일을 이용하여 원하는 프로그램을 다운로드하거나 업데이트를 수행함으로써, 시드파일을 조작하는 악의적인 외부의 공격에 대응할 수 있도록 한다.In addition, the client 300 downloads the seed verification file when the seed file is downloaded and checks the integrity of the seed verification file, and then again checks the integrity of the seed file using the seed verification file, and the integrity of the seed file is verified. In this case, it is possible to cope with malicious external attack that manipulates the seed file by downloading or updating a desired program by using the seed file only.

도 2는 본 발명의 실시예에 따른 시드파일 생성서버(100)의 상세 블록 구성을 도시한 것이다.2 illustrates a detailed block configuration of the seed file generation server 100 according to an embodiment of the present invention.

시드파일 생성부(102)는 토렌트 프로토콜 등과 같은 P2P 기반 프로토콜을 이용하여 특정 프로그램의 다운로드 또는 업데이트가 가능하도록 하는 시드파일을 생성한다. 이와 같은 시드파일은 토렌트 기반의 분산파일 업데이트에서 업데이트 대상파일에 대한 정보를 갖고 있는 메타데이터(metadata) 파일을 의미하는 것으로, 시드 파일에는 업데이트 대상 파일들을 하나의 대용량 파일로 보고 정해진 크기로 나눈 각 블록에 대한 해쉬(hash) 값 정보 등이 포함된다.The seed file generator 102 generates a seed file for enabling the download or update of a specific program using a P2P based protocol such as a torrent protocol. Such a seed file refers to a metadata file that contains information about a file to be updated in a torrent-based distributed file update. The seed file includes each update file as a large file and divided into predetermined sizes. The hash value information for the block is included.

시드 검증 파일 생성부(104)는 시드파일의 무결성 검증을 위해 시드파일을 검증할 수 있는 검증파일을 생성한다. 즉, 시드 검증 파일 생성부(104)는 시드파일의 생성시점에 시드파일과 짝을 이루는 시드 검증 파일을 생성하며, 시드 검증 파일에는 시드파일에 대한 해쉬(hash)값을 기록하게 되며, 이때 이와 같은 해쉬값은 시드파일에 기록되는 해쉬값과 동일하도록 하여 해쉬값의 비교를 통한 시드파일의 검증이 가능하도록 한다.The seed verification file generation unit 104 generates a verification file that can verify the seed file for verifying the integrity of the seed file. That is, the seed verification file generating unit 104 generates a seed verification file paired with the seed file at the time of generation of the seed file, and records a hash value of the seed file in the seed verification file. The same hash value is the same as the hash value recorded in the seed file so that the seed file can be verified by comparing the hash values.

전자서명부(110)는 시드 검증 파일 자체에 대한 무결성 검사를 위해 전자서명서버(150)로부터 전자서명키를 이용하여 시드 검증 파일에 디지털 서명을 수행한다.The digital signature unit 110 performs a digital signature on the seed verification file using the digital signature key from the digital signature server 150 to check the integrity of the seed verification file itself.

시드 검증 파일 무결성 검사부(112)는 시드 검증 파일에 서명된 디지털 서명이 유효한 것인지 즉, 정당한 인증서 발급자에 의해 발급된 것인지와 디지털 서명의 사용기한이 유효한지 여부 등을 검사하여 시드 검증 파일의 무결성을 검사한다. 또한, 시드 검증 파일에 기록된 해쉬값과 시드파일에 기록된 해쉬값이 일치하는지를 검사하여 시드 검증 파일의 무결성을 검사한다.The seed verification file integrity checker 112 verifies the integrity of the seed verification file by checking whether the digital signature signed in the seed verification file is valid, that is, issued by a valid certificate issuer and whether the digital signature is valid. Check it. In addition, the integrity of the seed verification file is checked by checking whether the hash value recorded in the seed verification file and the hash value recorded in the seed file match.

통신부(106)는 인터넷 등의 네트워크를 통해 파일 서버(200)와 특정 프로그램의 데이터 파일 또는 업데이트 파일의 전송을 위한 데이터 송수신을 수행한다. 이와 같은 통신부(106)는 예를 들어 토렌트 프로토콜을 포함하는 P2P 통신 프로토콜을 지원할 수 있다.The communication unit 106 performs data transmission / reception with the file server 200 through a network such as the Internet for transmission of a data file or an update file of a specific program. Such a communication unit 106 may support a P2P communication protocol including, for example, a torrent protocol.

제어부(108)는 시드파일 생성서버(100)의 전반적인 동작을 제어한다. 즉, 제어부(108)는 시드파일 생성부(102)와, 시드 검증 파일 생성부(104)를 통해 시드파일과 시드파일을 검증하기 위한 시드 검증 파일을 생성하며, 전자서명부(110)와 시드 검증 파일 무결성 검사부(112)를 제어하여 시드 검증 파일에 대한 무결성이 검사되도록 제어한다. 또한, 제어부(108)는 이와 같이 무결성이 검증된 시드 검증 파일과 시드파일을 통신부(106)를 통해 파일서버(200)로 전송하여 각 클라이언트(300)가 다운로드받을 수 있도록 한다.The controller 108 controls the overall operation of the seed file generation server 100. That is, the controller 108 generates a seed verification file for verifying the seed file and the seed file through the seed file generator 102 and the seed verification file generator 104, and the seed signature verification with the digital signature unit 110. The file integrity checker 112 controls the integrity of the seed verification file to be checked. In addition, the controller 108 transmits the seed verification file and the seed file whose integrity is verified as described above to the file server 200 through the communication unit 106 so that each client 300 can be downloaded.

도 3은 본 발명의 실시예에 따른 클라이언트(300)의 상세 블록 구성을 도시한 것이다. 3 shows a detailed block diagram of the client 300 according to an embodiment of the present invention.

통신부(302)는 인터넷(internet) 등의 네트워크를 통해 파일 서버(200) 또는 다른 클라이언트와 토렌트 기반의 분산파일 업데이트를 위한 데이터를 송수신한다. 이와 같은 통신부(302)는 예를 들어 토렌트 프로토콜을 포함하는 P2P 통신 프로토콜을 지원할 수 있다.The communication unit 302 transmits and receives data for torrent-based distributed file update with the file server 200 or another client through a network such as the Internet. Such a communication unit 302 may support a P2P communication protocol including, for example, a torrent protocol.

시드 검증 파일 무결성 검사부(308)는 시드파일 생성 서버(100)로부터 생성된 시드 검증 파일에 대해 시드 검증 파일에 기록된 해쉬값과 시드파일에 기록된 해쉬값이 일치하는지를 검사하여 시드 검증 파일의 무결성을 검사한다.The seed verification file integrity checker 308 checks the hash value recorded in the seed verification file and the hash value recorded in the seed file with respect to the seed verification file generated from the seed file generation server 100 to verify the integrity of the seed verification file. Check it.

전자서명 검사부(304)는 시드 검증 파일에 서명된 디지털 서명이 유효한 것인지 즉, 정상적인 인증서 발급자에 의해 발급된 것인지와 디지털 서명의 사용기한이 유효한지 여부 등을 검사하여 시드 검증 파일의 무결성을 검사한다. The digital signature checker 304 checks the integrity of the seed verification file by checking whether the digital signature signed in the seed verification file is valid, that is, issued by a normal certificate issuer, and whether the digital signature is valid. .

제어부(306)는 통신부(302)를 통해 파일 서버(200)로부터 시드파일 생성서버(100)에서 생성한 시드파일과 시드파일의 무결성 검증을 위한 시드 검증 파일을 다운로드받은 후, 전자서명 검사부(304)를 제어하여 시드 검증 파일에 대한 무결성을 검증한다. 또한, 시드 검증 파일 무결성 검사부(308)를 제어하여 시드 검증 파일에 기록된 해쉬값과 시드파일에 기록된 해쉬값이 일치하는지를 검사하여 시드 검증 파일의 무결성을 검증함으로써, 시드파일이 악성코드에 감염되지 않은 정상적인 파일인지를 검증한다. 이어, 제어부(306)는 시드파일의 무결성이 검증된 경우에만 시드파일을 이용하여 원하는 프로그램을 다운로드하거나 업데이트를 수행함으로써, 시드파일을 조작하는 악의적인 외부의 공격에 대응할 수 있도록 한다.The controller 306 downloads the seed file generated by the seed file generation server 100 and the seed verification file for integrity verification of the seed file from the file server 200 through the communication unit 302, and then checks the digital signature checker 304. ) To verify the integrity of the seed verification file. In addition, the seed verification file integrity check unit 308 is controlled to check whether the hash value recorded in the seed verification file and the hash value recorded in the seed file match and verify the integrity of the seed verification file, thereby causing the seed file to be infected with malicious code. Verifies whether the file is a valid file. Subsequently, the controller 306 downloads or updates a desired program using the seed file only when the integrity of the seed file is verified, so that it can cope with a malicious external attack that manipulates the seed file.

도 4는 본 발명의 실시예에 따른 P2P 기반 업데이트 시스템의 시드파일 생성서버(100)에서 무결성을 보장하는 시드파일을 생성하는 동작 제어 흐름을 도시한 것이다. 이하, 도 1, 도 2 및 도 4를 참조하여 본 발명의 실시예를 상세히 설명하기로 한다.4 illustrates an operation control flow for generating a seed file for ensuring integrity in the seed file generation server 100 of the P2P based update system according to an embodiment of the present invention. Hereinafter, embodiments of the present invention will be described in detail with reference to FIGS. 1, 2, and 4. FIG.

먼저, 시드파일 생성서버(100)의 제어부(108)는 시드파일 생성부(102)를 제어하여 파일 전송을 위한 시드파일을 생성한다(S400). 이와 같은 시드파일은 토렌트 기반의 분산파일 업데이트에서 업데이트 대상파일에 대한 정보를 갖고 있는 메타데이터(metadata) 파일을 의미하는 것으로, 시드 파일에는 업데이트 대상 파일들을 하나의 대용량 파일로 보고 정해진 크기로 나눈 각 블록에 대한 해쉬(hash) 값 정보 등이 포함된다.First, the control unit 108 of the seed file generation server 100 controls the seed file generation unit 102 to generate a seed file for file transfer (S400). Such a seed file refers to a metadata file that contains information about a file to be updated in a torrent-based distributed file update. The seed file includes each update file as a large file and divided into predetermined sizes. The hash value information for the block is included.

위와 같이, 시드파일이 생성되는 경우, 제어부(108)는 시드 검증 파일 생성부(104)를 제어하여 시드파일의 무결성 검증을 위한 시드 검증 파일을 생성한다(S402). 이때 시드 검증 파일에는 시드파일에 기록된 해쉬값과 동일한 해쉬값이 기록되며, 이와 같은 해쉬값은 클라이언트(300)에서 시드 검증 파일을 이용한 시드파일의 무결성 검사 시 해쉬값이 동일한지 여부를 검사하는 것에 의해 무결성을 검증하는데 사용된다.As described above, when the seed file is generated, the controller 108 controls the seed verification file generating unit 104 to generate a seed verification file for verifying the integrity of the seed file (S402). In this case, a hash value identical to a hash value recorded in the seed file is recorded in the seed verification file, and the hash value checks whether the hash value is the same when the integrity check of the seed file using the seed verification file is performed by the client 300. Is used to verify integrity.

위와 같이, 동일한 해쉬값이 기록되는 시드 검증 파일이 생성되는 경우 제어부(108)는 전자서명부(110)를 제어하여 전자서명서버(150)로부터 수신된 전자서명키로 시드 검증 파일에 디지털 서명을 수행한다(S404). 이와 같은 디지털 서명은 시드 검증 파일 자체의 무결성을 보장하기 위한 것으로, 클라이언트(300)에서 디지털 서명의 유효성 검사를 통해 시드 검증 파일 자체의 무결성을 검증하는데 사용된다.As described above, when the seed verification file in which the same hash value is recorded is generated, the controller 108 controls the digital signature unit 110 to digitally sign the seed verification file with the digital signature key received from the digital signature server 150. (S404). The digital signature is used to ensure the integrity of the seed verification file itself. The digital signature is used to verify the integrity of the seed verification file itself by validating the digital signature at the client 300.

이어, 제어부(108)는 전자서명부(110)를 통한 시드 검증 파일에 대한 디지털 서명까지 완료한 경우 이와 같이 생성된 시드파일과 시드 검증 파일을 파일 서버(200)로 전송하기 전에 자체적으로 먼저 시드 검증 파일이 제대로 생성되었는지 검사를 수행하게 된다.Subsequently, when the digital signature for the seed verification file through the digital signature unit 110 is completed, the controller 108 first performs seed verification before transmitting the generated seed file and the seed verification file to the file server 200. It will check if the file was created correctly.

즉, 제어부(108)는 시드 검증 파일 무결성 검사부(112)를 제어하여 디지털 서명까지 완료된 시드 검증 파일에 대해 디지털 서명이 유효한지 즉, 디지털 서명의 사용기한이 유효한 서명인지 여부를 검사한다(S406). That is, the controller 108 controls the seed verification file integrity checker 112 to check whether the digital signature is valid for the seed verification file completed up to the digital signature, that is, whether the expiration date of the digital signature is valid (S406). .

이때 만일, 디지털 서명의 유효 기간이 경과되어 디지털 서명의 사용기한이 유효하지 않은 것으로 검사되는 경우(S408), 제어부(108)는 시드파일의 생성이 실패된 것으로 판단하고(S410), 다시 처음부터 시드파일을 생성하게 된다.At this time, if the validity period of the digital signature has elapsed and it is checked that the expiration date of the digital signature is invalid (S408), the controller 108 determines that generation of the seed file has failed (S410), and again from the beginning. It will create a seed file.

그러나, 이와 달리, 디지털 서명의 유효 기간이 경과되지 않아 디지털 서명의 사용기한이 유효한 것으로 검사되는 경우(S408), 제어부(108)는 다시 디지털 서명을 발급한 인증서 발급자를 검사하여 정당한 인증서 발급자에 의해 발급된 디지털 서명인지 여부를 검사한다(S412). 예를 들어, 안티 바이러스 엔진인 V3 프로그램의 배포를 위한 시드파일 생성 과정이라면, 정당한 인증서 발급자는 "안철수 연구소"가 될 수 있으며, 이와 같은 경우 디지털 서명의 인증서 발급자가 "안철수 연구소"가 아닌 다른 주체인 경우 정당한 인증서 발급자가 아닌 것으로 판단될 수 있는 것이다.On the contrary, if the validity period of the digital signature has not elapsed and the expiration date of the digital signature is checked as valid (S408), the controller 108 checks the certificate issuer who issued the digital signature again and then, by a valid certificate issuer. It is checked whether it is an issued digital signature (S412). For example, if the seed file is generated for the distribution of the antivirus engine V3 program, the legitimate certificate issuer may be "AhnLab," in which case the certificate issuer of the digital signature is not a subject other than "AhnLab." In this case, it can be determined that the valid certificate issuer is not.

이때 만일, 디지털 서명의 인증서 발급자가 정당한 발급자가 아닌 경우(S414), 제어부(108)는 시드파일의 생성이 실패된 것으로 판단하고(S410), 다시 처음부터 시드파일을 생성하게 된다.At this time, if the certificate issuer of the digital signature is not a valid issuer (S414), the controller 108 determines that generation of the seed file has failed (S410), and generates a seed file from the beginning.

그러나, 이와 달리, 디지털 서명의 인증서 발급자가 정당한 발급자인 경우(S414), 제어부(108)는 디지털 설명이 정당한 인증서 발급자가 발행한 것으로 검증한다.However, in contrast, if the certificate issuer of the digital signature is a legitimate issuer (S414), the controller 108 verifies that the digital description has been issued by a legitimate certificate issuer.

이어, 제어부(108)는 디지털 서명의 발급자까지 검증이 수행된 경우, 시드 검증 파일의 해쉬값을 검사하여 시드파일의 해쉬값과 일치하는지 여부를 검사한다(S416). 이와 같은 시드 검증 파일의 해쉬값 검사는 시드 검증 파일의 자체 무결성을 위한 디지털 서명 등의 과정에서 시드 검증 파일내 해쉬값이 혹시라도 변경되는 경우를 대비하여 미리 검사하기 위해 수행된다.Subsequently, when verification is performed up to the issuer of the digital signature, the controller 108 checks the hash value of the seed verification file and checks whether it matches the hash value of the seed file (S416). Such a hash value check of the seed verification file is performed in advance in case a hash value in the seed verification file is changed in the process of digital signature for self integrity of the seed verification file.

이때 만일, 시드 검증 파일내 기록된 해쉬값이 시드파일에 기록된 해쉬값과 일치하지 않는 경우(S418), 제어부(108)는 시드파일의 생성이 실패된 것으로 판단하고(S410), 다시 처음부터 시드파일을 생성하게 된다.At this time, if the hash value recorded in the seed verification file does not match the hash value recorded in the seed file (S418), the controller 108 determines that generation of the seed file has failed (S410), and again from the beginning. It will create a seed file.

그러나, 이와 달리, 시드 검증 파일내 기록된 해쉬값이 시드파일에 기록된 해쉬값과 일치하는 경우(S418), 제어부(108)는 시드파일의 생성이 성공한 것으로 판단하고(S420), 시드파일과 시드 검증 파일을 파일 서버(200)로 업로드하여 클라이언트(300)에게 배포될 수 있도록 한다(S422).On the contrary, when the hash value recorded in the seed verification file matches the hash value recorded in the seed file (S418), the controller 108 determines that the generation of the seed file is successful (S420). The seed verification file is uploaded to the file server 200 to be distributed to the client 300 (S422).

도 5는 본 발명의 실시예에 따른 P2P 기반 업데이트 시스템의 클라이언트(300)에서 시드파일의 무결성을 검증하는 동작 제어 흐름을 도시한 것이다. 이하, 도 1, 도 3 및 도 5를 참조하여 본 발명의 실시예를 상세히 설명하기로 한다.5 illustrates an operation control flow for verifying the integrity of the seed file in the client 300 of the P2P based update system according to an embodiment of the present invention. Hereinafter, embodiments of the present invention will be described in detail with reference to FIGS. 1, 3, and 5.

먼저, 토렌트 기반의 분산파일 업데이트를 통해 특정 프로그램에 대한 설치나 업데이트를 수행하고자 토렌트 클라이언트 프로그램이 시작되는 경우 클라이언트(300)의 제어부(306)는 통신부(302)를 통해 인터넷 등의 네트워크상 파일 서버(200)에 접속하여 시드파일 생성서버(100)에서 업로드한 시드파일과 시드 검증 파일을 다운로드받는다(S500, S502).First, when a torrent client program is started to install or update a specific program through torrent-based distributed file update, the control unit 306 of the client 300 may access a file server on a network such as the Internet through the communication unit 302. In step S500, the seed file uploaded from the seed file generation server 100 and the seed verification file are downloaded (S500, S502).

위와 같이, 시드파일과 시드 검증 파일을 다운로드받은 경우 제어부(306)는 시드파일을 이용하여 특정 프로그램의 다운로드 설치 또는 업데이트를 수행하기 전에 먼저 시드파일이 악성코드에 의해 감염되었는지 여부에 대한 무결성을 검증한다.As described above, when the seed file and the seed verification file are downloaded, the control unit 306 first verifies the integrity of the seed file whether or not it has been infected by malware before performing a download installation or update of a specific program using the seed file. do.

즉, 제어부(306)는 먼저 전자서명 검사부(304)를 제어하여 시드 검증 파일에 대한 디지털 서명이 유효한지 즉, 디지털 서명의 사용기한이 유효한 서명인지 여부를 검사한다(S504). That is, the controller 306 first controls the digital signature checker 304 to check whether the digital signature for the seed verification file is valid, that is, whether the expiration date of the digital signature is valid (S504).

이때 만일, 디지털 서명의 유효 기간이 경과되어 디지털 서명의 사용기한이 유효하지 않은 것으로 검사되는 경우(S506), 제어부(306)는 시드파일의 다운로드가 실패된 것으로 판단하고(S508), 시드파일을 이용한 특정 프로그램의 다운로드 설치 또는 업데이트 등을 수행하지 않는다.At this time, if the validity period of the digital signature has elapsed and it is checked that the expiration date of the digital signature is invalid (S506), the controller 306 determines that the seed file has failed to download (S508). Do not download, install or update specific programs.

그러나, 이와 달리, 디지털 서명의 유효 기간이 경과되지 않아 디지털 서명의 사용기한이 유효한 것으로 검사되는 경우(S506), 제어부(306)는 다시 디지털 서명을 발급한 인증서 발급자를 검사하여 정당한 인증서 발급자에 의해 발급된 디지털 서명인지 여부를 검사한다(S510). 예를 들어, 시드파일이 안티 바이러스 엔진인 V3 프로그램의 배포 또는 업데이트를 위한 시드파일이고, 이와 같은 V3 프로그램을 개발하여 배포하는 회사가 "안철수 연구소"라고 하면, 정당한 인증서 발급자는 "안철수 연구소"가 될 수 있으며, 이와 같은 경우 디지털 서명의 인증서 발급자가 "안철수 연구소"가 아닌 다른 주체인 경우 정당한 인증서 발급자가 아닌 것으로 판단될 수 있는 것이다.On the other hand, if the validity period of the digital signature has not elapsed, and the expiration date of the digital signature is checked as valid (S506), the controller 306 checks the certificate issuer who issued the digital signature again by a valid certificate issuer. Check whether the digital signature is issued (S510). For example, if the seed file is a seed file for the distribution or update of the antivirus engine V3 program, and the company that develops and distributes the V3 program is "AhnLab," the proper certificate issuer is "AhnLab." In this case, if the certificate issuer of the digital signature is a subject other than "AhnLab," it may be determined that the certificate issuer is not a valid certificate issuer.

이때 만일, 디지털 서명의 인증서 발급자가 정당한 발급자가 아닌 경우(S512), 제어부(306)는 시드파일의 다운로드가 실패된 것으로 판단하고(S508), 시드파일을 이용한 특정 프로그램의 다운로드 설치 또는 업데이트 등을 수행하지 않는다.At this time, if the certificate issuer of the digital signature is not a valid issuer (S512), the controller 306 determines that the download of the seed file has failed (S508), and downloads, installs or updates a specific program using the seed file. Do not perform.

그러나, 이와 달리, 디지털 서명의 인증서 발급자가 정당한 발급자인 경우(S512), 제어부(306)는 디지털 설명이 정당한 인증서 발급자가 발행한 것으로 검증한다.However, in contrast, if the certificate issuer of the digital signature is a legitimate issuer (S512), the controller 306 verifies that the digital description has been issued by a legitimate certificate issuer.

이어, 제어부(306)는 디지털 서명의 발급자까지 검증이 수행된 경우, 시드 검증 파일의 해쉬값을 검사하여 시드파일의 해쉬값과 일치하는지 여부를 검사한다(S514). 이와 같은 시드 검증 파일의 해쉬값 검사는 시드파일이 정당한 서버로부터 배포된 시드파일인지를 검증하기 위한 것으로 시드파일 생성 시 시드파일과 시드 검증 파일에는 동일한 해쉬값이 기록되게 되므로, 해쉬값의 일치 여부를 검사하여 시드파일의 무결성을 검증하기 위한 것이다.Subsequently, when verification is performed up to the issuer of the digital signature, the controller 306 examines the hash value of the seed verification file and checks whether it matches the hash value of the seed file (S514). The hash value check of the seed verification file is to verify whether the seed file is a seed file distributed from a valid server. When the seed file is generated, the same hash value is recorded in the seed file and the seed verification file. This is to verify the integrity of the seed file by checking.

이때 만일, 시드 검증 파일내 기록된 해쉬값이 시드파일에 기록된 해쉬값과 일치하지 않는 경우(S516), 제어부(306)는 시드파일의 다운로드가 실패된 것으로 판단하고(S508), 시드파일을 이용한 특정 프로그램의 다운로드 설치 또는 업데이트 등을 수행하지 않는다.At this time, if the hash value recorded in the seed verification file does not match the hash value recorded in the seed file (S516), the controller 306 determines that downloading of the seed file has failed (S508), Do not download, install or update specific programs.

그러나, 이와 달리 시드 검증 파일내 기록된 해쉬값이 시드파일에 기록된 해쉬값과 일치하는 경우(S516), 제어부(306)는 시드파일의 다운로드가 성공한 것으로 판단하고, 시드파일을 이용한 파일 다운로드를 수행하여 특정 프로그램의 다운로드 설치 또는 업데이트 등을 수행한다(S518).However, in contrast, when the hash value recorded in the seed verification file coincides with the hash value recorded in the seed file (S516), the controller 306 determines that the seed file has been successfully downloaded, and downloads the file using the seed file. By performing the download installation or update of a specific program (S518).

이어, 제어부(306)는 파일 다운로드가 완료되어 특정 프로그램의 다운로드 설치 또는 업데이트 등이 완료되는 경우(S520) 토렌트 클라이언트 프로그램을 종료한다.Subsequently, the controller 306 terminates the torrent client program when the file download is completed and the download installation or update of the specific program is completed (S520).

상기한 바와 같이, 본 발명은 P2P통신 프로토콜을 이용한 P2P기반 파일 업데이트(file update) 또는 데이터 전송에 있어서, 사용자간 파일 전송의 기준으로 사용되는 메타 데이터 파일(meta data file) 생성 시 메타 데이터 파일의 무결성을 검증할 수 있도록 동일한 해쉬(hash)값을 가지는 메타 데이터 검증 파일을 추가로 생성하여 배포하고, 클라이언트(client)에서는 메타 데이터 파일과 함께 다운로드 받은 메타 데이터 검증 파일을 이용하여 메타 데이터 파일의 무결성을 검증함으로써 메타 데이터 파일의 변조 여부를 사전에 검출할 수 있도록 하여 P2P 방식의 파일 전송 프로토콜의 보안성을 크게 향상시킬 수 있다. 또한, 보안성 향상으로 인하여 비즈니스 환경의 신뢰된 데이터 전송에 P2P통신 프로토콜을 보다 쉽게 적용할 수 있다.As described above, according to the present invention, in the P2P-based file update or data transmission using the P2P communication protocol, the metadata file is generated when a meta data file is used as a standard for file transfer between users. Create and distribute additional metadata verification files with the same hash value to verify the integrity.Clients use the metadata verification files downloaded along with the metadata files to ensure the integrity of the metadata files. By verifying, it is possible to detect whether the meta data file has been tampered with in advance, thereby greatly improving the security of the P2P type file transfer protocol. In addition, due to the improved security, P2P communication protocols can be more easily applied to reliable data transmission in business environments.

한편 상술한 본 발명의 설명에서는 구체적인 실시예에 관해 설명하였으나, 여러 가지 변형이 본 발명의 범위에서 벗어나지 않고 실시될 수 있다. 따라서 발명의 범위는 설명된 실시 예에 의하여 정할 것이 아니고 특허청구범위에 의해 정하여져야 한다.
While the invention has been shown and described with reference to certain preferred embodiments thereof, it will be understood by those skilled in the art that various changes and modifications may be made without departing from the spirit and scope of the invention. Accordingly, the scope of the invention should not be limited by the described embodiments but should be defined by the appended claims.

100 : 시드파일 생성서버 150 : 전자서명서버
200 : 파일서버 300 : 클라이언트
102 : 시드파일 생성부 104 : 시드 검증 파일 생성부
106 : 통신부 108 : 제어부
110 : 전자서명부 112 : 시드검증파일 무결성 검사부
302 : 통신부 304 : 전자서명 검사부
306 : 제어부 308 : 시드검증파일 무결성 검사부
100: seed file generation server 150: digital signature server
200: file server 300: client
102: seed file generation unit 104: seed verification file generation unit
106: communication unit 108: control unit
110: digital signature 112: seed verification file integrity checker
302: communication unit 304: digital signature inspection unit
306: control unit 308: seed verification file integrity check unit

Claims (19)

메타 데이터 파일을 생성하는 메타 데이터 파일 생성부와,
상기 메타 데이터 파일의 무결성 검증을 위한 메타 데이터 검증 파일을 생성하는 메타 데이터 검증 파일 생성부와,
상기 메타 데이터 검증 파일에 디지털 서명을 수행하는 전자서명부와,
상기 디지털 서명된 메타 데이터 검증 파일에 대한 무결성을 검사하는 메타 데이터 검증 파일 무결성 검사부와,
상기 메타 데이터 검증 파일 생성부를 제어하여 상기 메타 데이터 파일의 무결성 검증을 위한 메타 데이터 검증 파일을 생성하며, P2P(Peer to Peer) 기반 프로토콜을 이용하여 상기 메타 데이터 파일과 상기 메타 데이터 검증 파일을 전송하는 제어부
를 포함하는 P2P 기반 네트워크에서 데이터의 무결성 검증을 위한 서버 장치.
A metadata file generator for generating a metadata file;
A metadata verification file generation unit generating a metadata verification file for verifying the integrity of the metadata file;
An electronic signature unit for digitally signing the metadata verification file;
A metadata verification file integrity checker for checking the integrity of the digitally signed metadata verification file;
Controls the metadata verification file generation unit to generate a metadata verification file for verifying the integrity of the metadata file, and transmits the metadata file and the metadata verification file using a peer-to-peer based protocol. Control
Server device for verifying the integrity of the data in a P2P-based network comprising a.
제 1 항에 있어서,
상기 메타 데이터 검증 파일 생성부는,
상기 메타 데이터 검증 파일에 기록되는 해쉬값을 상기 메타 데이터 파일에 기록되는 해쉬값과 동일한 값으로 설정하는 것을 특징으로 하는 P2P 기반 네트워크에서 데이터의 무결성 검증을 위한 서버 장치.
The method of claim 1,
The metadata verification file generation unit,
And a hash value recorded in the metadata verification file to a same value as a hash value recorded in the metadata file.
제 1 항에 있어서,
상기 메타 데이터 검증 파일 무결성 검사부는,
상기 메타 데이터 검증 파일의 상기 디지털 서명의 유효성과 상기 디지털 서명의 인증서 발급자가 정당한지 여부를 검사함으로서 상기 메타 데이터 검증 파일의 무결성을 검증하는 것을 특징으로 하는 P2P 기반 네트워크에서 데이터의 무결성 검증을 위한 서버 장치.
The method of claim 1,
The metadata verification file integrity check unit,
A server for verifying the integrity of data in a P2P based network by verifying the validity of the digital signature of the metadata verification file and whether the issuer of the digital signature is valid. Device.
제 3 항에 있어서,
상기 메타 데이터 검증 파일 무결성 검사부는,
상기 디지털 서명의 유효성이 인정되고 상기 인증서 발급자가 정당하다고 검사되며, 상기 메타 데이터 검증 파일에 기록된 해쉬값과 상기 메타 데이터 파일에 기록된 해쉬값이 동일한 경우, 상기 메타 데이터 검증 파일의 무결성이 검증된 것으로 판단하는 것을 특징으로 하는 P2P 기반 네트워크에서 데이터의 무결성 검증을 위한 서버 장치.
The method of claim 3, wherein
The metadata verification file integrity check unit,
When the validity of the digital signature is recognized and the certificate issuer is verified as valid, and the hash value recorded in the metadata verification file and the hash value recorded in the metadata file are the same, the integrity of the metadata verification file is verified. The server device for verifying the integrity of the data in the P2P-based network, characterized in that it is determined that.
제 1 항에 있어서,
상기 P2P 기반 프로토콜은,
토렌트 프로토콜인 것을 특징으로 하는 P2P 기반 네트워크에서 데이터의 무결성 검증을 위한 서버 장치.
The method of claim 1,
The P2P-
Server device for verifying the integrity of data in a P2P-based network, characterized in that the torrent protocol.
제 5 항에 있어서,
상기 메타 데이터 파일은,
업데이트 대상 파일에 대한 정보를 가지고 있는 시드 파일인 것을 특징으로 하는 P2P 기반 네트워크에서 데이터의 무결성 검증을 위한 서버 장치.
The method of claim 5, wherein
The metadata file includes:
Server device for verifying the integrity of data in a P2P-based network, characterized in that the seed file that has information about the file to be updated.
P2P 기반 프로토콜을 이용하여 메타 데이터 파일과 메타 데이터 검증 파일의 다운로드 시 상기 메타 데이터 파일에 기록된 해쉬값과 상기 메타 데이터 검증 파일에 기록된 해쉬값이 동일한지 여부를 검사하는 메타 데이터 검증 파일 무결성 검사부와,
상기 메타 데이터 검증 파일에 전자서명된 디지털 서명의 유효성과 상기 디지털 서명의 인증서 발급자가 정당한지 여부를 검사하는 전자서명 검사부와,
무결성이 검증된 메타 데이터 검증 파일을 이용하여 상기 메타 데이터 파일의 무결성을 검증하고, 상기 메타 데이터 파일의 무결성이 검증된 경우 그 메타 데이터 파일을 이용하여 P2P 기반 데이터 전송을 수행하는 제어부
를 포함하는 P2P 기반 네트워크에서 데이터의 무결성 검증을 위한 클라이언트 장치.
Metadata verification file integrity checker that checks whether the hash value recorded in the metadata file and the hash value recorded in the metadata verification file are the same when downloading the metadata file and the metadata verification file using a P2P based protocol. Wow,
An electronic signature checker that checks the validity of the digital signature digitally signed in the metadata verification file and whether the issuer of the digital signature is valid;
A control unit that verifies the integrity of the metadata file using the metadata verification file whose integrity is verified, and performs P2P based data transmission using the metadata file when the integrity of the metadata file is verified.
Client device for verifying the integrity of the data in a P2P-based network comprising a.
제 7 항에 있어서,
상기 P2P 기반 프로토콜은,
토렌트 프로토콜인 것을 특징으로 하는 P2P 기반 네트워크에서 데이터의 무결성 검증을 위한 클라이언트 장치.
The method of claim 7, wherein
The P2P-
Client device for verifying the integrity of data in a P2P-based network, characterized in that the torrent protocol.
제 8 항에 있어서,
상기 메타 데이터 파일은,
업데이트 대상 파일에 대한 정보를 가지고 있는 시드파일인 것을 특징으로 하는 P2P 기반 네트워크에서 데이터의 무결성 검증을 위한 클라이언트 장치.
The method of claim 8,
The metadata file includes:
Client device for verifying the integrity of data in a P2P-based network, characterized in that the seed file having information about the file to be updated.
메타 데이터 파일을 생성하는 단계와,
상기 메타 데이터 파일의 무결성 검증을 위한 메타 데이터 검증 파일을 생성하는 단계와,
상기 메타 데이터 검증 파일에 디지털 서명을 수행하는 단계와,
상기 디지털 서명된 메타 데이터 검증 파일에 대한 무결성을 검사하는 단계와,
상기 메타 데이터 검증 파일의 무결성이 검증되는 경우, P2P 기반 프로토콜을 이용하여 상기 메타 데이터 파일과 상기 메타 데이터 검증 파일을 전송하는 단계
를 포함하는 P2P 기반 네트워크에서 데이터의 무결성 검증 방법.
Creating a metadata file,
Generating a metadata verification file for verifying the integrity of the metadata file;
Digitally signing the metadata verification file;
Checking the integrity of the digitally signed metadata verification file;
If the integrity of the metadata verification file is verified, transmitting the metadata file and the metadata verification file using a P2P based protocol
Method of verifying the integrity of data in a P2P-based network comprising a.
제 10 항에 있어서,
상기 메타 데이터 검증 파일을 생성하는 단계는,
상기 메타 데이터 검증 파일에 기록되는 해쉬값을 상기 메타 데이터 파일에 기록되는 해쉬값과 동일한 값으로 설정하는 단계를 포함하는 것을 특징으로 하는 P2P 기반 네트워크에서 데이터의 무결성 검증 방법.
11. The method of claim 10,
Generating the metadata verification file,
And setting the hash value recorded in the metadata verification file to the same value as the hash value recorded in the metadata file.
제 10 항에 있어서,
상기 메타 데이터 검증 파일에 대한 무결성을 검사하는 단계는,
상기 메타 데이터 검증 파일에 전자서명된 디지털 서명의 유효성을 검사하는 단계와,
상기 디지털 서명이 유효한 경우, 상기 디지털 서명을 발급한 인증서 발급자가 정당한지 여부를 검사하는 단계
를 포함하는 것을 특징으로 하는 P2P 기반 네트워크에서 데이터의 무결성 검증 방법.
11. The method of claim 10,
Checking the integrity of the metadata verification file,
Validating the digital signature digitally signed in the metadata verification file;
If the digital signature is valid, checking whether the certificate issuer who issued the digital signature is valid
Integrity verification method of data in a P2P-based network comprising a.
제 12 항에 있어서,
상기 메타 데이터 검증 파일에 대한 무결성을 검사하는 단계는,
상기 디지털 서명이 유효성이 인정되고 상기 인증서 발급자가 정당하다고 검사되는 경우, 상기 메타 데이터 검증 파일에 기록된 해쉬값과 상기 메타 데이터 파일에 기록된 해쉬값이 동일한지 여부를 검사하는 단계와,
상기 메타 데이터 검증 파일에 기록된 해쉬값과 상기 메타 데이터 파일에 기록된 해쉬값이 동일한 경우 상기 메타 데이터 검증 파일의 무결성이 검증된 것으로 판단하는 단계
를 더 포함하는 것을 특징으로 하는 P2P 기반 네트워크에서 데이터의 무결성 검증 방법.
13. The method of claim 12,
Checking the integrity of the metadata verification file,
If the digital signature is validated and the certificate issuer is verified to be valid, checking whether the hash value recorded in the metadata verification file and the hash value recorded in the metadata file are the same;
Determining that the integrity of the metadata verification file is verified when the hash value recorded in the metadata verification file and the hash value recorded in the metadata file are the same.
Integrity verification method of data in a P2P-based network, characterized in that it further comprises.
제 10 항에 있어서,
상기 P2P 기반 프로토콜은,
토렌트 프로토콜인 것을 특징으로 하는 P2P 기반 네트워크에서 데이터의 무결성 검증방법.
11. The method of claim 10,
The P2P-
Method of verifying the integrity of data in a P2P based network, characterized in that the torrent protocol.
제 14 항에 있어서,
상기 메타 데이터 파일은,
업데이트 대상 파일에 대한 정보를 가지고 있는 시드 파일인 것을 특징으로 하는 P2P 기반 네트워크에서 데이터의 무결성 검증 방법.
15. The method of claim 14,
The metadata file includes:
Method for verifying the integrity of data in a P2P-based network, characterized in that the seed file having information about the file to be updated.
P2P 기반 프로토콜을 이용하여 메타 데이터 파일과 메타 데이터 검증 파일을 다운로드하는 단계와,
상기 메타 데이터 검증 파일의 무결성을 검사하는 단계와,
상기 메타 데이터 검증 파일의 무결성이 검증되는 경우, 상기 무결성이 검증된 상기 메타 데이터 검증 파일에 기록된 해쉬값과 상기 메타 데이터 파일에 기록된 해쉬값이 동일한지를 검사하는 단계와,
상기 메타 데이터 검증 파일에 기록된 해쉬값과 상기 메타 데이터 파일에 기록된 해쉬값이 동일한 경우 상기 메타 데이터 파일을 이용하여 P2P 기반 데이터 전송을 수행하는 단계
를 포함하는 P2P 기반 네트워크에서 데이터의 무결성 검증 방법.
Downloading the metadata file and the metadata validation file using a P2P based protocol,
Checking the integrity of the metadata verification file;
When the integrity of the metadata verification file is verified, checking whether the hash value recorded in the metadata verification file whose integrity is verified and the hash value recorded in the metadata file are the same;
Performing P2P-based data transfer using the metadata file when the hash value recorded in the metadata verification file and the hash value recorded in the metadata file are the same.
Method of verifying the integrity of data in a P2P-based network comprising a.
제 16 항에 있어서,
상기 메타 데이터 검증 파일의 무결성을 검사하는 단계는,
상기 메타 데이터 검증 파일에 전자서명된 디지털 서명의 유효성을 검사하는 단계와,
상기 디지털 서명이 유효한 경우, 상기 디지털 서명을 발급한 인증서 발급자가 정당한지를 검사하는 단계와,
상기 인증서 발급자가 정당한 경우 상기 메타 데이터 검증 파일의 무결성이 검증된 것으로 판단하는 단계
를 포함하는 것을 특징으로 하는 P2P 기반 업데이트 환경의 무결성 검증 방법.
17. The method of claim 16,
Checking the integrity of the metadata verification file,
Validating the digital signature digitally signed in the metadata verification file;
If the digital signature is valid, checking whether the certificate issuer who issued the digital signature is valid;
Determining that the integrity of the metadata verification file is verified if the certificate issuer is legitimate
Integrity verification method of a P2P-based update environment comprising a.
제 16 항에 있어서,
상기 P2P 기반 프로토콜은,
토렌트 프로토콜인 것을 특징으로 하는 P2P 기반 네트워크에서 데이터의 무결성 검증방법.
17. The method of claim 16,
The P2P-
Method of verifying the integrity of data in a P2P based network, characterized in that the torrent protocol.
제 17 항에 있어서,
상기 메타 데이터 파일은,
업데이트 대상 파일에 대한 정보를 가지고 있는 시드 파일인 것을 특징으로 하는 P2P 기반 네트워크에서 데이터의 무결성 검증 방법.
The method of claim 17,
The metadata file includes:
Method for verifying the integrity of data in a P2P-based network, characterized in that the seed file having information about the file to be updated.
KR1020110146023A 2011-12-29 2011-12-29 Server, client and method for verifying integrity of data in peer to peer based network KR101369250B1 (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
KR1020110146023A KR101369250B1 (en) 2011-12-29 2011-12-29 Server, client and method for verifying integrity of data in peer to peer based network
PCT/KR2012/011455 WO2013100553A1 (en) 2011-12-29 2012-12-26 Server, client, and method for verifying data integrity in p2p-based network

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020110146023A KR101369250B1 (en) 2011-12-29 2011-12-29 Server, client and method for verifying integrity of data in peer to peer based network

Publications (2)

Publication Number Publication Date
KR20130077359A KR20130077359A (en) 2013-07-09
KR101369250B1 true KR101369250B1 (en) 2014-03-06

Family

ID=48697920

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020110146023A KR101369250B1 (en) 2011-12-29 2011-12-29 Server, client and method for verifying integrity of data in peer to peer based network

Country Status (2)

Country Link
KR (1) KR101369250B1 (en)
WO (1) WO2013100553A1 (en)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105069161A (en) * 2015-08-26 2015-11-18 浪潮软件股份有限公司 Data interaction method and data interaction device
CN107861746B (en) * 2017-12-06 2020-11-27 北京经纬恒润科技有限公司 Vehicle electronic control unit refreshing method and system
US11824840B1 (en) * 2019-02-04 2023-11-21 Meixler Technologies, Inc. System and method for web-browser based end-to-end encrypted messaging and for securely implementing cryptography using client-side scripting in a web browser

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20090013483A (en) * 2007-08-02 2009-02-05 주식회사 플랜티넷 Method for verifying application programs and controlling the execution thereof
KR20100072239A (en) * 2007-09-07 2010-06-30 알토 유니버시티 파운데이션 Process for the fermentation of a lipid from a starting material, which comprises alcohol, soaps and/or fatty acids, involving a step of precipitating alkaline earth metal soaps
KR20100084335A (en) * 2009-01-16 2010-07-26 케이티하이텔 주식회사 Apparatus and method for control digital works
KR20100106110A (en) * 2009-03-23 2010-10-01 삼성전자주식회사 Secure boot data total management system, methods for generating and verifying a verity of matadata for managing secure boot data, computer-readable recording medium storing program for executing any of such methods

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20090013483A (en) * 2007-08-02 2009-02-05 주식회사 플랜티넷 Method for verifying application programs and controlling the execution thereof
KR20100072239A (en) * 2007-09-07 2010-06-30 알토 유니버시티 파운데이션 Process for the fermentation of a lipid from a starting material, which comprises alcohol, soaps and/or fatty acids, involving a step of precipitating alkaline earth metal soaps
KR20100084335A (en) * 2009-01-16 2010-07-26 케이티하이텔 주식회사 Apparatus and method for control digital works
KR20100106110A (en) * 2009-03-23 2010-10-01 삼성전자주식회사 Secure boot data total management system, methods for generating and verifying a verity of matadata for managing secure boot data, computer-readable recording medium storing program for executing any of such methods

Also Published As

Publication number Publication date
WO2013100553A1 (en) 2013-07-04
KR20130077359A (en) 2013-07-09

Similar Documents

Publication Publication Date Title
CN107967416B (en) Copyright right-maintaining detection method, device and system
US8108362B2 (en) Secure content descriptions
KR102618665B1 (en) Version history management using blockchain
US7680937B2 (en) Content publication
EP2172868B1 (en) Information security device and information security system
US8869142B2 (en) Secure content publishing and distribution
JP5802848B2 (en) Computer-implemented method, non-temporary computer-readable medium and computer system for identifying Trojanized applications (apps) for mobile environments
US8572368B1 (en) Systems and methods for generating code-specific code-signing certificates containing extended metadata
CN110597538A (en) Software upgrading method based on OTA upgrading system and OTA upgrading system
EP3687107A1 (en) Information assurance (ia) using an integrity and identity resilient blockchain
EP2748751A1 (en) System and method for day-zero authentication of activex controls
JP2004334842A (en) Method for authenticating content provider and assuring integrity of content
US20190340336A1 (en) License confirmation via embedded confirmation challenge
EP2283447A1 (en) Secure application streaming
WO2006108788A1 (en) Updating of data instructions
CN112861191B (en) Application program monitoring method and device
US8638932B2 (en) Security method and system and computer-readable medium storing computer program for executing the security method
WO2017191472A1 (en) A verification system and method
CN112597485B (en) Information checking method, device and equipment based on block chain and storage medium
TW202226802A (en) Distributed ledger system
CN111506327A (en) Block chain node hot upgrading method and related equipment
KR101369250B1 (en) Server, client and method for verifying integrity of data in peer to peer based network
Cappos et al. Package management security
JP2023525576A (en) Scope of control of authentication keys for software updates
JP6813442B2 (en) Verification device

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

Year of fee payment: 5

FPAY Annual fee payment

Payment date: 20190225

Year of fee payment: 6

FPAY Annual fee payment

Payment date: 20200225

Year of fee payment: 7