KR20180036140A - 파일 해시 값을 이용한 파일 위변조 검사 방법 및 단말 장치 - Google Patents

파일 해시 값을 이용한 파일 위변조 검사 방법 및 단말 장치 Download PDF

Info

Publication number
KR20180036140A
KR20180036140A KR1020160126351A KR20160126351A KR20180036140A KR 20180036140 A KR20180036140 A KR 20180036140A KR 1020160126351 A KR1020160126351 A KR 1020160126351A KR 20160126351 A KR20160126351 A KR 20160126351A KR 20180036140 A KR20180036140 A KR 20180036140A
Authority
KR
South Korea
Prior art keywords
file
hash value
block chain
user terminal
forgery
Prior art date
Application number
KR1020160126351A
Other languages
English (en)
Other versions
KR101948721B1 (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 KR1020160126351A priority Critical patent/KR101948721B1/ko
Publication of KR20180036140A publication Critical patent/KR20180036140A/ko
Application granted granted Critical
Publication of KR101948721B1 publication Critical patent/KR101948721B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/64Protecting data integrity, e.g. using checksums, certificates or signatures
    • 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/62Protecting access to data via a platform, e.g. using keys or access control rules
    • G06F21/6209Protecting access to data via a platform, e.g. using keys or access control rules to a single file or object, e.g. in a secure envelope, encrypted and accessed using a key, or with access control rules appended to the object itself
    • 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/62Protecting access to data via a platform, e.g. using keys or access control rules
    • G06F21/6218Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database
    • G06F21/6245Protecting personal data, e.g. for financial or medical purposes
    • 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/06Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols the encryption apparatus using shift registers or memories for block-wise or stream coding, e.g. DES systems or RC4; Hash functions; Pseudorandom sequence generators
    • H04L9/0643Hash functions, e.g. MD5, SHA, HMAC or f9 MAC
    • 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/30Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy

Abstract

사용자 단말에 의한 파일 위변조 검사 방법에 있어서, 네트워크를 통해 외부 장치에 접속하여 파일을 다운로드하는 단계; 다운로드한 파일의 제 1 해시 값을 계산하는 단계; 및 블록체인에 저장된 파일의 제 2 해시 값과 제 1 해시 값과의 비교 결과에 기초하여 다운로드한 파일의 위변조 여부를 검사하는 단계를 포함하는 것을 특징으로 하는 본 발명의 일 실시예에 따른 파일 위변조 검사 방법이 개시된다.

Description

파일 해시 값을 이용한 파일 위변조 검사 방법 및 단말 장치{METHOD AND APPARATUS FOR EXAMINING FORGERY OF FILE BY USING FILE HASH VALUE}
본 발명은 파일의 위변조를 검사하는 방법 및 장치에 관한 것이다. 보다 구체적으로, 본 발명은 파일 해시 값을 이용한 파일의 위변조를 검사하는 방법 및 장치에 관한 것이다.
네트워크가 발전함에 따라 사용자들은 인터넷에 접속하여 자신이 필요로 하는 다양한 파일을 획득할 수 있다. 그러나, 네트워크 기술의 발전과 함께 해킹 기술 역시 발전하고 있으므로, 다운로드한 파일의 무결성을 검증하는 것은 매우 중요하다 할 수 있다.
해커들은 인터넷에 존재하는 파일에 악성 코드를 포함시키거나, 해킹 프로그램을 삽입하여 해당 파일을 다운로드한 단말로부터 개인 정보들을 무단으로 획득하거나, 해당 단말을 무력화시킬 수 있다.
파일의 무결성을 검증하기 위한 일 방법으로서, 파일 해시 값을 이용하여 파일의 위변조를 검증할 수 있으나, 파일 해시 값 자체도 해커에 의해 위변조될 수 있다는 점에서 한계가 있다. 다른 방안으로서, 파일 해시 값이 아닌 인증서 방식으로 파일의 무결성을 검사할 수도 있지만, 이러한 방안은 신뢰할 수 있는 제3기관의 신용을 요구한다는 점에 이용하기가 다소 복잡하다.
본 발명의 일 실시예에 따른 파일 해시 값을 이용한 파일 위변조 검사 방법 및 단말 장치는 간단한 방법으로 파일의 위변조를 검사하는 것을 목적으로 한다.
또한, 본 발명의 일 실시예에 따른 파일 해시 값을 이용한 파일 위변조 검사 방법 및 단말 장치는 파일 자체뿐만 아니라 파일의 해시 값의 위변조를 차단하는 것을 목적으로 한다.
또한, 본 발명의 일 실시예에 따른 파일 해시 값을 이용한 파일 위변조 검사 방법 및 단말 장치는 다운로드한 파일에 의한 개인 정보 도용 등의 문제를 방지하는 것을 목적으로 한다.
본 발명의 일 실시예에 따른 파일 위변조 검사 방법은,
사용자 단말에 의한 파일 위변조 검사 방법에 있어서, 네트워크를 통해 외부 장치에 접속하여 파일을 다운로드하는 단계; 상기 다운로드한 파일의 제 1 해시 값을 계산하는 단계; 및 블록체인에 저장된 파일의 제 2 해시 값과 상기 제 1 해시 값과의 비교 결과에 기초하여 상기 다운로드한 파일의 위변조 여부를 검사하는 단계를 포함할 수 있다.
상기 위변조 여부를 검사하는 단계는, 상기 블록체인 주소를 획득하는 단계; 상기 블록체인 주소에 기초하여 상기 제 2 해시 값을 조회하는 단계; 및 상기 제 1 해시 값과 상기 제 2 해시 값을 비교하는 단계를 포함할 수 있다.
상기 위변조 여부를 검사하는 단계는, 블록체인 주소에 기초하여 상기 계산된 제 1 해시 값을 상기 블록체인으로 전송하는 단계; 및 상기 블록체인으로부터 상기 제 1 해시 값과 상기 제 2 해시 값과의 비교 결과를 수신하는 단계를 포함할 수 있다.
상기 파일 위변조 검사 방법은, 상기 다운로드한 파일의 내부에 기록된 상기 블록체인 주소를 획득하는 단계를 포함할 수 있다.
상기 파일 위변조 검사 방법은, 상기 외부 장치의 식별 정보를 획득하는 단계; 및 상기 블록체인에 저장된 식별 정보를 상기 획득한 식별 정보와 비교하여, 상기 외부 장치를 인증하는 단계를 더 포함할 수 있다.
본 발명의 다른 실시예에 따른 파일 해시 값의 등록 방법은,
사용자 단말에 의한 파일 해시 값의 등록 방법에 있어서, 파일의 해시 값을 계산하는 단계; 사용자 단말에 저장된 공개키에 기초하여 블록체인 주소를 생성하는 단계; 및 상기 생성된 블록체인 주소에 기초하여 상기 계산된 파일의 해시 값을 블록체인에 등록하는 단계를 포함할 수 있다.
상기 블록체인에 등록하는 단계는, 파일이 업로드된 장치의 식별 정보를 상기 블록체인에 더 등록하는 단계를 포함할 수 있다.
본 발명의 일 실시예에 따른 단말 장치는,
네트워크를 통해 외부 장치에 접속하여 파일을 다운로드하는 통신부; 상기 다운로드한 파일의 제 1 해시 값을 계산하는 해시 값 계산부; 및 블록체인에 저장된 파일의 제 2 해시 값과 상기 제 1 해시 값과의 비교 결과에 기초하여 상기 다운로드한 파일의 위변조 여부를 검사하는 제어부를 포함할 수 있다.
본 발명의 다른 실시예에 따른 단말 장치는,
파일의 해시 값을 계산하는 해시 값 계산부; 및 사용자 단말에 저장된 공개키에 기초하여 블록체인 주소를 생성하고, 상기 생성된 블록체인 주소에 기초하여 상기 계산된 파일의 해시 값을 블록체인에 등록하는 제어부를 포함할 수 있다.
본 발명의 일 실시예에 따른 파일 해시 값을 이용한 파일 위변조 검사 방법 및 단말 장치가 달성할 수 있는 일부의 효과는 다음과 같다.
i) 간단한 방법으로 파일의 위변조를 검사할 수 있다.
ii) 파일 자체뿐만 아니라 파일의 해시 값의 위변조를 차단할 수 있다.
iii) 다운로드한 파일에 의한 개인 정보 도용 등의 문제를 방지할 수 있다.
다만, 본 발명의 일 실시예에 따른 파일 해시 값을 이용한 파일 위변조 검사 방법 및 단말 장치가 달성할 수 있는 효과는 이상에서 언급한 것들로 제한되지 않으며, 언급하지 않은 또 다른 효과들은 아래의 기재로부터 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 명확하게 이해될 수 있을 것이다.
도 1은 본 발명의 일 실시예에 따른 제 1 사용자 단말, 블록체인 및 제 2 사용자 단말을 도시하는 개략적인 도면이다.
도 2는 본 발명의 일 실시예에 따른 파일 해시 값의 등록 방법을 설명하기 위한 순서도이다.
도 3은 제 1 사용자 단말이 블록체인에 파일 해시 값을 등록하기 위해 이용하는 프로토콜을 나타내는 도면이다.
도 4는 본 발명의 일 실시예에 따른 파일 위변조 검사 방법을 설명하기 위한 순서도이다.
도 5는 본 발명의 일 실시예에 따른 제 1 사용자 단말의 구성을 도시하는 블록도이다.
도 6은 본 발명의 일 실시예에 따른 제 2 사용자 단말의 구성을 도시하는 블록도이다.
본 발명은 다양한 변경을 가할 수 있고 여러 가지 실시예를 가질 수 있는 바, 특정 실시예들을 도면에 예시하고, 이를 상세한 설명을 통해 상세히 설명하고자 한다. 그러나, 이는 본 발명을 특정한 실시 형태에 대해 한정하려는 것이 아니며, 본 발명은 본 발명의 사상 및 기술 범위에 포함되는 모든 변경, 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다.
본 발명을 설명함에 있어서, 관련된 공지 기술에 대한 구체적인 설명이 본 발명의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우 그 상세한 설명을 생략한다. 또한, 본 명세서의 설명 과정에서 이용되는 숫자(예를 들어, 제 1, 제 2 등)는 하나의 구성요소를 다른 구성요소와 구분하기 위한 식별기호에 불과하다.
또한, 본 명세서에서, 일 구성요소가 다른 구성요소와 "연결된다" 거나 "접속된다" 등으로 언급된 때에는, 상기 일 구성요소가 상기 다른 구성요소와 직접 연결되거나 또는 직접 접속될 수도 있지만, 특별히 반대되는 기재가 존재하지 않는 이상, 중간에 또 다른 구성요소를 매개하여 연결되거나 또는 접속될 수도 있다고 이해되어야 할 것이다.
또한, 본 명세서에서 '~부(유닛)', '모듈' 등으로 표현되는 구성요소는 2개 이상의 구성요소가 하나의 구성요소로 합쳐지거나 또는 하나의 구성요소가 보다 세분화된 기능별로 2개 이상으로 분화될 수도 있다. 또한, 이하에서 설명할 구성요소 각각은 자신이 담당하는 주기능 이외에도 다른 구성요소가 담당하는 기능 중 일부 또는 전부의 기능을 추가적으로 수행할 수도 있으며, 구성요소 각각이 담당하는 주기능 중 일부 기능이 다른 구성요소에 의해 전담되어 수행될 수도 있음은 물론이다.
이하에서는, 도면을 참조하여 본 발명의 기술적 사상에 따른 예시적인 실시예들에 대해 설명한다.
도 1은 본 발명의 일 실시예에 따른 제 1 사용자 단말(100), 블록체인(200) 및 제 2 사용자 단말(300)을 도시하는 개략적인 도면이다.
도 1에 도시된 제 1 사용자 단말(100)은 파일의 소유자가 사용하는 단말로서, 제 1 사용자 단말(100)의 사용자는 제 1 사용자 단말(100)이나 제 1 사용자 단말(100)과 연결된 외부 서버에 자신이 소유한 파일을 업로드하고, 타 사용자, 예를 들어, 제 2 사용자 단말(300)의 사용자가 해당 파일을 다운로드 받을 수 있게 한다.
도 1은 제 1 사용자 단말(100)을 데스크탑 PC로 도시하고 있지만, 이는 하나의 실시예일뿐이며, 제 1 사용자 단말(100)은 스마트폰, PDA, 노트북, 테블릿 PC, 웨어러블 기기 등과 같이 네트워크 (예를 들어, 인터넷)에 접속할 수 있는 다양한 종류의 기기를 포함할 수 있다.
제 1 사용자 단말(100)은 업로드한 파일의 해시 값을 계산하여 블록체인(200)에 등록한다. 블록체인(200)은 분산 데이터베이스의 한 형태로, 지속적으로 성장하는 데이터 기록 리스트로서 분산 노드의 운영자에 의한 임의 조작이 불가능하도록 고안되었다. 잘 알려진 블록체인(200)의 응용사례는 암호화폐의 거래과정을 기록하는 탈중앙화된 전자장부로서 비트코인이 있다. 제 1 사용자 단말(100)은 파일의 해시 값을 블록체인(200)에 저장함으로써, 해커 등에 의한 위변조를 원천적으로 차단할 수 있다.
제 2 사용자 단말(300)은 제 1 사용자 단말(100) 또는 외부 서버에 접속하여 업로드된 파일을 다운로드한다. 제 2 사용자 단말(300)은 다운로드한 파일의 해시 값을 계산하고, 블록체인(200)에 저장된 파일의 해시 값과 다운로드한 파일의 해시 값과의 비교 결과에 따라 해당 파일의 위변조 여부를 검사한다.
예를 들어, 제 2 사용자 단말(300)은 다운로드한 파일의 해시 값과 블록체인(200)에 저장된 파일의 해시 값이 동일한 경우, 해당 파일은 위변조되지 않은 것으로 판단하며, 반대로 다운로드한 파일의 해시 값과 블록체인(200)에 저장된 파일의 해시 값이 서로 상이한 경우, 해당 파일은 위변조된 것으로 판단한다. 도 1은 제 2 사용자 단말(300)을 스마트폰으로 도시하고 있지만, 이는 하나의 실시예일뿐이며, 제 2 사용자 단말(300)은 데스크탑 PC, PDA, 노트북, 테블릿 PC, 웨어러블 기기 등과 같이 네트워크 (예를 들어, 인터넷)에 접속할 수 있는 다양한 종류의 기기를 포함할 수 있다.
제 1 사용자 단말(100) 및 제 2 사용자 단말(300)은 파일의 해시 값을 계산하는데 있어, 예를 들어, SHA256 등의 해시(hash) 알고리즘을 파일 내부의 데이터에 적용하여 해당 파일의 해시 값을 계산할 수 있다.
본 발명의 일 실시예에 따르면, 파일의 위변조를 검사하기 위해 블록체인(200)이라는 안전 저장 수단을 이용함으로써, 파일 해시 값 자체가 위변조되는 것을 방지할 수 있고, 이에 따라 파일을 다운로드하는 제 2 사용자 단말(300)에 대한 해킹 가능성을 원천적으로 차단할 수 있다.
이하에서는, 도 2 내지 도 4를 참조하여, 제 1 사용자 단말(100) 및 제 2 사용자 단말(300)의 구체적인 동작에 대해 살펴본다.
도 2는 본 발명의 일 실시예에 따른 파일 해시 값의 등록 방법을 설명하기 위한 순서도이다.
S210 단계에서, 제 1 사용자 단말(100)은 파일의 해시 값을 계산한다. 전술한 바와 같이, 제 1 사용자 단말(100)은 해시 알고리즘을 파일 내 데이터에 적용하여 해당 파일의 해시 값을 계산할 수 있다.
S220 단계에서, 제 1 사용자 단말(100)은 해시 값을 등록할 블록체인 주소를 생성한다. 제 1 사용자 단말(100)은 저장되어 있는 공개키를 기반으로 하여 블록체인 주소를 생성할 수 있는데, 구체적으로, 제 1 사용자 단말(100)은 블록체인(200)상의 주소를 생성하기 위하여, 공개키에 해시 알고리즘 및 RIPEMD(RACE Integrity Primitives Evaluation Message Digest)을 적용시킬 수 있다. 이는 아래의 수학식으로 표현될 수 있다.
[수학식]
A = RIPEMD160(SHA256(K))
(K는 공개키이며, A는 계산의 결과값으로 나온 블록 체인 주소)
산출된 A 값을 Base58Check 인코딩 알고리즘에 적용하여 58개의 문자와 검사합(Checksum)을 이용해서 사람이 읽을 수 있는 문자로 바꾸어 주고, 비슷한 모양의 문자를 쓰지 않음으로써 혼란을 방지하며, 주소의 표기나 항목에 대한 에러가 발생하지 않도록 처리한다.
제 1 사용자 단말(100)은 상기 생성한 블록체인(200)의 주소를 업로드한 또는 업로드할 파일의 내부 데이터 중에 메타 데이터로 포함시킬 수 있다.
S230 단계에서, 제 1 사용자 단말(100)은 블록체인 주소를 기초로 블록체인(200)으로 파일 해시 값을 전송하여 파일 해시 값이 블록체인(200)에 저장되도록 한다. 제 1 사용자 단말(100)은 파일의 식별 정보(예를 들어, 파일의 이름, 크기 등)를 블록체인(200)으로 전송하여, 블록체인(200)에 해당 정보가 더 저장되게 할 수도 있다.
파일 해시 값은 블록체인(200)을 구성하는 복수의 서버 각각에 저장될 수 있다. 파일 해시 값은 중앙 집중형 서버가 아닌 블록체인(200)을 구성하는 복수의 서버 각각에 저장됨으로써, 그 무결성이 보증될 수 있으며, 어느 하나의 서버의 동작에 이상이 발생하였더라도 다른 서버가 대신 기능을 할 수 있으므로, 위변조 검사 프로세스의 신뢰성을 향상시킬 수 있다.
구현예에 따라서, 제 1 사용자 단말(100)은 파일이 저장되어 있는 제 1 사용자 단말(100)의 식별 정보(예를 들어, IP 주소 등) 또는 파일을 업로드한 외부 장치의 식별 정보(예를 들어, IP 주소 등)를 블록체인(200)에 더 저장할 수도 있다. 이러한 식별 정보는 파일을 배포하는 장치가 신뢰성이 있는 장치인지 여부를 판단하는데 이용될 수 있다.
도 3은 제 1 사용자 단말(100)이 블록체인(200)에 파일 해시 값을 등록하기 위해 이용하는 프로토콜을 나타내는 도면으로서, 제 1 사용자 단말(100)은 기존의 비트코인 관련 프로토콜 중, 추가적인 데이터로 활용할 수 있는 MultiSig Address(310)에 파일의 식별 정보, 배포할 파일을 저장하고 있는 장치의 식별 정보 등을 기록할 수 있고, OP_RETURN(320)에 파일 해시 값을 기록할 수 있다.
도 4는 본 발명의 일 실시예에 따른 파일 위변조 검사 방법을 설명하기 위한 순서도이다.
S410 단계에서, 제 2 사용자 단말(300)은 외부 장치에 접속하여 파일을 다운로드한다. 제 2 사용자 단말(300)은 네트워크를 통해 외부 장치에 접속하여 파일을 다운로드할 수 있다.
S420 단계에서, 제 2 사용자 단말(300)은 다운로드한 파일의 해시 값을 계산한다. 제 2 사용자 단말(300)은 해시 알고리즘을 파일 내 데이터에 적용하여 해당 파일의 해시 값을 계산할 수 있다.
S430 단계에서, 제 2 사용자 단말(300)은 블록체인(200)에 저장된 파일의 해시 값과 다운로드한 파일의 해시 값의 비교 결과에 기초하여 파일이 위변조되었는지를 검사한다.
일 예로서, 제 2 사용자 단말(300)은 다운로드한 파일 내 메타 데이터에서 블록체인 주소를 획득하고, 획득한 블록체인 주소로 파일의 해시 값을 조회하여 블록체인(200)에 저장된 파일 해시 값을 획득할 수 있다. 그 후 획득한 해시 값을 S420 단계에서 계산된 해시 값과 비교하여 파일의 위변조 여부를 검사할 수 있다. 제 2 사용자 단말(300)은 블록체인(200)에 등록된 해시 값을 조회하기 위해 블록체인(200)으로 블록체인 주소 및 파일의 식별 정보를 전송할 수 있다.
다른 예로서, 제 2 사용자 단말(300)은 다운로드한 파일 내 메타 데이터에서 블록체인 주소를 획득하고, 획득한 블록 체인 주소로 S420 단계에서 계산된 해시 값(및 파일의 식별 정보)을 전송할 수 있으며, 블록체인(200)은 기 저장된 파일의 해시 값과 제 2 사용자 단말(300)로부터 수신된 파일의 해시 값을 비교하고, 비교 결과를 제 2 사용자 단말(300)로 전송할 수도 있다.
다운로드한 파일이 위변조되지 않은 것으로 판단된 경우, 제 2 사용자 단말(300)은 다운로드한 파일이 무결하다는 메시지를 화면에 출력할 수 있으며, 반대로 다운로드한 파일이 위변조된 것으로 판단된 경우, 제 2 사용자 단말(300)은 해당 파일이 위변조되었다는 메시지를 화면에 출력하고, 해당 파일을 자동적으로 삭제할 수도 있다.
구현예에 따라서, 제 2 사용자 단말(300)은 파일을 다운로드한 외부 장치의 식별 정보와 블록체인(200)에 저장된 식별 정보의 비교 결과에 따라 파일을 배포한 외부 장치가 신뢰성이 있는 장치인지를 인증할 수도 있다.
일 예로서, 제 2 사용자 단말(300)은 다운로드한 파일 내 메타 데이터의 블록체인 주소를 기초로 블록체인(200)로부터 소정 장치의 식별 정보를 조회하고, 이를 파일을 배포한 외부 장치의 식별 정보와 비교하여 파일을 배포한 외부 장치가 정당한 장치인지를 인증할 수 있다.
다른 예로서, 제 2 사용자 단말(300)은 다운로드한 파일 내 메타 데이터에서 획득한 블록 체인 주소로 파일을 배포한 외부 장치의 식별 정보를 전송할 수 있으며, 블록체인(200)은 기 저장된 장치의 식별 정보와 제 2 사용자 단말(300)로부터 수신된 식별 정보를 비교하고, 비교 결과를 제 2 사용자 단말(300)로 전송할 수도 있다.
파일을 배포한 외부 장치가 정당하지 않은 것으로 판단된 경우, 제 2 사용자 단말(300)은 외부 장치가 신뢰할 수 없음을 나타내는 메시지를 화면에 출력하여 사용자로 하여금 파일을 다운로드하여 이용할 의사가 있는지를 문의할 수 있다. 제 2 사용자 단말(300)의 사용자는 외부 장치를 신뢰할 수 없는 경우에도 해당 파일을 다운로드하고자 할 수 있으므로, 사용자가 파일을 다운로드하여 이용할 의사가 있는 것으로 선택한 경우, 제 2 사용자 단말(300)은 다운로드한 파일의 해시 값과 블록체인(200)에 등록된 파일의 해시 값을 비교하여 해당 파일이 위변조되었는지를 판단할 수 있고, 위변조되지 않았다면 해당 파일의 이용 가능하다는 메시지를 화면에 출력할 수 있다. 사용자가 파일을 다운로드하여 이용할 의사가 있는 것으로 선택한 경우라도, 다운로드한 파일의 해시 값과 블록체인(200)에 등록된 파일의 해시 값이 서로 상이한 경우, 제 2 사용자 단말(300)은 다운로드한 파일이 위변조된 것으로 판단하고 해당 파일을 삭제할 수 있다.
도 5는 본 발명의 일 실시예에 따른 제 1 사용자 단말(100)의 구성을 도시하는 블록도이다.
도 5를 참조하면, 본 발명의 일 실시예에 따른 제 1 사용자 단말(100)은 메모리(510), 해시 값 계산부(530) 및 제어부(550)를 포함할 수 있다. 메모리(510), 해시 값 계산부(530) 및 제어부(550)는 적어도 하나의 프로세서로 구현될 수 있으며, 메모리(510)에 저장된 프로그램에 따라 동작할 수 있다.
메모리(510)는 제 1 사용자 단말(100)의 사용자가 배포하고자 하는 파일을 저장할 수 있다. 또한, 메모리(510)는 파일의 해시 값을 계산하기 위한 프로그램을 더 저장할 수 있다.
해시 값 계산부(530)는 사용자가 배포하고자 하는 파일의 해시 값을 계산한다.
제어부(550)는 블록체인 주소를 생성하고, 생성한 블록체인 주소를 기초로 파일의 해시 값을 블록체인(200)에 등록한다. 제어부(550)는 파일이 업로드된 장치의 식별 정보 및 파일의 식별 정보를 블록체인(200)에 더 등록할 수도 있다.
도 6은 본 발명의 일 실시예에 따른 제 2 사용자 단말(300)의 구성을 도시하는 블록도이다.
도 6을 참조하면, 본 발명의 일 실시예에 따른 제 2 사용자 단말(300)은 메모리(610), 통신부(630), 해시 값 계산부(650) 및 제어부(670)를 포함한다. 메모리(610), 통신부(630), 해시 값 계산부(650) 및 제어부(670)는 적어도 하나의 프로세서로 구현될 수 있으며, 메모리(610)에 저장된 프로그램에 따라 동작할 수 있다.
메모리(610)는 통신부(630)를 통해 외부 장치로부터 다운로드한 파일을 저장한다. 메모리(610)는 파일의 해시 값을 계산하기 위한 프로그램을 더 저장할 수도 있다.
해시 값 계산부(650)는 다운로드한 파일의 해시 값을 계산한다.
제어부(670)는 계산된 파일의 해시 값과 블록체인(200)에 저장된 파일 해시 값의 비교 결과에 기초하여 파일의 위변조 여부를 검사한다. 제어부(670)는 파일의 위변조 검사 결과를 제 2 사용자 단말(300)의 디스플레이(미도시)에 표시할 수 있다.
또한, 제어부(670)는 파일을 다운로드한 외부 장치의 식별 정보와 블록체인(200)에 저장된 소정 장치의 식별 정보의 비교 결과에 기초하여 외부 장치를 인증할 수 있으며, 그 인증 결과를 제 2 사용자 단말(300)의 디스플레이에 표시할 수도 있다.
한편, 상술한 본 발명의 실시예들은 컴퓨터에서 실행될 수 있는 프로그램으로 작성가능하고, 작성된 프로그램은 매체에 저장될 수 있다.
상기 매체는 마그네틱 저장매체(예를 들면, 롬, 플로피 디스크, 하드디스크 등), 광학적 판독 매체(예를 들면, 시디롬, 디브이디 등)와 같은 저장매체를 포함할 수 있으나, 이에 한정되는 것은 아니다.
첨부된 도면을 참조하여 본 발명의 실시예를 설명하였지만, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자는 본 발명이 그 기술적 사상이나 필수적인 특징을 변경하지 않고서 다른 구체적인 형태로 실시될 수 있다는 것을 이해할 수 있을 것이다. 그러므로 이상에서 기술한 실시예들은 모든 면에서 예시적인 것이며 한정적이 아닌 것으로 이해해야만 한다.
100: 제 1 사용자 단말
510: 메모리
530: 해시 값 계산부
550: 제어부
200: 블록체인
300: 제 2 사용자 단말
610: 메모리
630: 통신부
650: 해시 값 계산부
670: 제어부

Claims (9)

  1. 사용자 단말에 의한 파일 위변조 검사 방법에 있어서,
    네트워크를 통해 외부 장치에 접속하여 파일을 다운로드하는 단계;
    상기 다운로드한 파일의 제 1 해시 값을 계산하는 단계; 및
    블록체인에 저장된 파일의 제 2 해시 값과 상기 제 1 해시 값과의 비교 결과에 기초하여 상기 다운로드한 파일의 위변조 여부를 검사하는 단계를 포함하는 것을 특징으로 하는 파일 위변조 검사 방법.
  2. 제1항에 있어서,
    상기 위변조 여부를 검사하는 단계는,
    상기 블록체인 주소를 획득하는 단계;
    상기 블록체인 주소에 기초하여 상기 제 2 해시 값을 조회하는 단계; 및
    상기 제 1 해시 값과 상기 제 2 해시 값을 비교하는 단계를 포함하는 것을 특징으로 하는 파일 위변조 검사 방법.
  3. 제1항에 있어서,
    상기 위변조 여부를 검사하는 단계는,
    블록체인 주소에 기초하여 상기 계산된 제 1 해시 값을 상기 블록체인으로 전송하는 단계; 및
    상기 블록체인으로부터 상기 제 1 해시 값과 상기 제 2 해시 값과의 비교 결과를 수신하는 단계를 포함하는 것을 특징으로 하는 파일 위변조 검사 방법.
  4. 제2항 또는 제3항에 있어서,
    상기 파일 위변조 검사 방법은,
    상기 다운로드한 파일의 내부에 기록된 상기 블록체인 주소를 획득하는 단계를 포함하는 것을 특징으로 하는 파일 위변조 검사 방법.
  5. 제1항에 있어서,
    상기 파일 위변조 검사 방법은,
    상기 외부 장치의 식별 정보를 획득하는 단계; 및
    상기 블록체인에 저장된 식별 정보를 상기 획득한 식별 정보와 비교하여, 상기 외부 장치를 인증하는 단계를 더 포함하는 것을 특징으로 하는 파일 위변조 검사 방법.
  6. 사용자 단말에 의한 파일 해시 값의 등록 방법에 있어서,
    파일의 해시 값을 계산하는 단계;
    사용자 단말에 저장된 공개키에 기초하여 블록체인 주소를 생성하는 단계; 및
    상기 생성된 블록체인 주소에 기초하여 상기 계산된 파일의 해시 값을 블록체인에 등록하는 단계를 포함하는 것을 특징으로 하는 파일 해시 값의 등록 방법.
  7. 제1항에 있어서,
    상기 블록체인에 등록하는 단계는,
    파일이 업로드된 장치의 식별 정보를 상기 블록체인에 더 등록하는 단계를 포함하는 것을 특징으로 하는 파일 해시 값의 등록 방법.
  8. 네트워크를 통해 외부 장치에 접속하여 파일을 다운로드하는 통신부;
    상기 다운로드한 파일의 제 1 해시 값을 계산하는 해시 값 계산부; 및
    블록체인에 저장된 파일의 제 2 해시 값과 상기 제 1 해시 값과의 비교 결과에 기초하여 상기 다운로드한 파일의 위변조 여부를 검사하는 제어부를 포함하는 것을 특징으로 하는 단말 장치.
  9. 파일의 해시 값을 계산하는 해시 값 계산부; 및
    사용자 단말에 저장된 공개키에 기초하여 블록체인 주소를 생성하고, 상기 생성된 블록체인 주소에 기초하여 상기 계산된 파일의 해시 값을 블록체인에 등록하는 제어부를 포함하는 것을 특징으로 하는 단말 장치.

KR1020160126351A 2016-09-30 2016-09-30 파일 해시 값을 이용한 파일 위변조 검사 방법 및 단말 장치 KR101948721B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020160126351A KR101948721B1 (ko) 2016-09-30 2016-09-30 파일 해시 값을 이용한 파일 위변조 검사 방법 및 단말 장치

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020160126351A KR101948721B1 (ko) 2016-09-30 2016-09-30 파일 해시 값을 이용한 파일 위변조 검사 방법 및 단말 장치

Publications (2)

Publication Number Publication Date
KR20180036140A true KR20180036140A (ko) 2018-04-09
KR101948721B1 KR101948721B1 (ko) 2019-02-18

Family

ID=61977782

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020160126351A KR101948721B1 (ko) 2016-09-30 2016-09-30 파일 해시 값을 이용한 파일 위변조 검사 방법 및 단말 장치

Country Status (1)

Country Link
KR (1) KR101948721B1 (ko)

Cited By (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101977178B1 (ko) 2018-08-16 2019-05-10 주식회사 씨씨미디어서비스 블록체인 기반의 파일 위변조 검사 방법 및 이를 적용한 컴퓨터로 읽을 수 있는 저장매체
CN110445684A (zh) * 2019-08-09 2019-11-12 中国信息通信研究院 一种区块链性能基准测试方法和装置
KR20190142652A (ko) * 2018-06-18 2019-12-27 경북대학교 산학협력단 복약 정보 관리 방법
KR20200000576A (ko) * 2018-06-25 2020-01-03 한신대학교 산학협력단 블록체인 기반 모바일 위조 앱 검출 방법
KR102065315B1 (ko) * 2019-10-04 2020-01-13 주식회사 도우테크 블록체인 기반 파일 보관 및 공유 시스템 및 방법
KR102100178B1 (ko) * 2019-01-21 2020-05-15 퓨렌스 주식회사 블록 체인 기반의 녹취 정보 위변조 확인 시스템 및 그 방법
KR20200059105A (ko) * 2018-11-20 2020-05-28 (주)한국해양기상기술 블록체인 기반의 선박 평형수 처리결과 검증 장치, 방법 및 그 시스템
US20200372184A1 (en) * 2017-11-17 2020-11-26 Telefonaktiebolaget Lm Ericsson (Publ) Method and arrangement for detecting digital content tampering
KR102220891B1 (ko) * 2019-12-18 2021-02-26 한전케이디엔주식회사 시험 성적서 위변조 판단 시스템 및 방법
KR20210059054A (ko) * 2019-11-13 2021-05-25 주식회사 위드 블록체인 기반의 전자문서 위변조 검증시스템
CN113227992A (zh) * 2019-11-27 2021-08-06 天阔株式会社 管理服务器、文档文件管理系统、文档文件管理方法及文档文件管理程序
KR20220079800A (ko) * 2020-10-28 2022-06-14 클라우드마인즈 로보틱스 컴퍼니 리미티드 프로그램 검증 방법 및 장치, 플랫폼 및 사용자 단말기 및 온라인 서비스 시스템

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2011142477A (ja) * 2010-01-07 2011-07-21 Hitachi Ltd 原本性保証方法、管理サーバ、プログラムおよび記憶媒体
KR101149695B1 (ko) * 2011-10-20 2012-05-23 제이콥스 주식회사 금융거래시 전자문서상 자필 전자서명을 이용한 업무처리시스템 및 업무처리방법
KR20120090711A (ko) * 2011-02-08 2012-08-17 (주)바이너리소프트 모바일 단말용 애플리케이션 위변조 검증 시스템 및 방법
US20150379510A1 (en) * 2012-07-10 2015-12-31 Stanley Benjamin Smith Method and system to use a block chain infrastructure and Smart Contracts to monetize data transactions involving changes to data included into a data supply chain.

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2011142477A (ja) * 2010-01-07 2011-07-21 Hitachi Ltd 原本性保証方法、管理サーバ、プログラムおよび記憶媒体
KR20120090711A (ko) * 2011-02-08 2012-08-17 (주)바이너리소프트 모바일 단말용 애플리케이션 위변조 검증 시스템 및 방법
KR101149695B1 (ko) * 2011-10-20 2012-05-23 제이콥스 주식회사 금융거래시 전자문서상 자필 전자서명을 이용한 업무처리시스템 및 업무처리방법
US20150379510A1 (en) * 2012-07-10 2015-12-31 Stanley Benjamin Smith Method and system to use a block chain infrastructure and Smart Contracts to monetize data transactions involving changes to data included into a data supply chain.

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
"블록체인 속 핀테크", url:http://www.bloter.net/archives/230365, 2015.06.17. *

Cited By (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20200372184A1 (en) * 2017-11-17 2020-11-26 Telefonaktiebolaget Lm Ericsson (Publ) Method and arrangement for detecting digital content tampering
US11868509B2 (en) * 2017-11-17 2024-01-09 Telefonaktiebolaget Lm Ericsson (Publ) Method and arrangement for detecting digital content tampering
KR20190142652A (ko) * 2018-06-18 2019-12-27 경북대학교 산학협력단 복약 정보 관리 방법
KR20200000576A (ko) * 2018-06-25 2020-01-03 한신대학교 산학협력단 블록체인 기반 모바일 위조 앱 검출 방법
KR101977178B1 (ko) 2018-08-16 2019-05-10 주식회사 씨씨미디어서비스 블록체인 기반의 파일 위변조 검사 방법 및 이를 적용한 컴퓨터로 읽을 수 있는 저장매체
KR20200059105A (ko) * 2018-11-20 2020-05-28 (주)한국해양기상기술 블록체인 기반의 선박 평형수 처리결과 검증 장치, 방법 및 그 시스템
KR102100178B1 (ko) * 2019-01-21 2020-05-15 퓨렌스 주식회사 블록 체인 기반의 녹취 정보 위변조 확인 시스템 및 그 방법
KR102125784B1 (ko) * 2019-01-21 2020-06-23 퓨렌스 주식회사 블록체인을 활용한 음성 녹취 데이터 검증 방법
CN110445684B (zh) * 2019-08-09 2021-04-02 中国信息通信研究院 一种区块链性能基准测试方法和装置
CN110445684A (zh) * 2019-08-09 2019-11-12 中国信息通信研究院 一种区块链性能基准测试方法和装置
KR102065315B1 (ko) * 2019-10-04 2020-01-13 주식회사 도우테크 블록체인 기반 파일 보관 및 공유 시스템 및 방법
KR20210059054A (ko) * 2019-11-13 2021-05-25 주식회사 위드 블록체인 기반의 전자문서 위변조 검증시스템
CN113227992A (zh) * 2019-11-27 2021-08-06 天阔株式会社 管理服务器、文档文件管理系统、文档文件管理方法及文档文件管理程序
KR102220891B1 (ko) * 2019-12-18 2021-02-26 한전케이디엔주식회사 시험 성적서 위변조 판단 시스템 및 방법
KR20220079800A (ko) * 2020-10-28 2022-06-14 클라우드마인즈 로보틱스 컴퍼니 리미티드 프로그램 검증 방법 및 장치, 플랫폼 및 사용자 단말기 및 온라인 서비스 시스템
EP4044053A4 (en) * 2020-10-28 2022-10-05 CLOUDMINDS ROBOTICS Co., Ltd. METHOD AND DEVICE FOR VERIFYING PROGRAM, PLATFORM, USER TERMINAL AND ONLINE SERVICE SYSTEM

Also Published As

Publication number Publication date
KR101948721B1 (ko) 2019-02-18

Similar Documents

Publication Publication Date Title
KR101948721B1 (ko) 파일 해시 값을 이용한 파일 위변조 검사 방법 및 단말 장치
JP6680840B2 (ja) 不正デジタル証明書の自動検出
TWI753228B (zh) 基於區塊鏈的資料驗證方法及裝置、電子設備
US11757641B2 (en) Decentralized data authentication
US10073916B2 (en) Method and system for facilitating terminal identifiers
US8838976B2 (en) Web content access using a client device identifier
US10032037B1 (en) Establishing application trust levels using taint propagation as a service
CN109376078B (zh) 移动应用的测试方法、终端设备及介质
WO2015062362A1 (zh) 用户登录的方法、设备及系统
US20220329446A1 (en) Enhanced asset management using an electronic ledger
WO2019233951A1 (fr) Une application logicielle et un serveur informatique pour authentifier l'identité d'un créateur de contenu numérique et l'intégrité du contenu du créateur publié
US20220166609A1 (en) Information processing apparatus, information processing method, and program
JP2019510314A (ja) メッセージ偽造防止実施方法及びデバイス
CN110598377A (zh) 基于区块链的软件序列号管理方法以及装置
CN106685945B (zh) 业务请求处理方法、业务办理号码的验证方法及其终端
US9860230B1 (en) Systems and methods for digitally signing executables with reputation information
KR20200000576A (ko) 블록체인 기반 모바일 위조 앱 검출 방법
KR20050039528A (ko) 리소스 획득 방법 및 컴퓨터 판독 가능 매체
CN110347678B (zh) 一种金融数据的存储方法、系统、装置及设备
Hwang et al. Identification of counterfeit android malware apps using hyperledger fabric blockchain
TWI569166B (zh) 資料驗證方法
CN117113437B (zh) 一种文件篡改检测方法、装置、计算机设备及存储介质
KR102658869B1 (ko) 사용자에게 제공된 웹사이트 검증 방법 및 시스템
CN114785677B (zh) 日志管理方法、装置、计算机设备、存储介质和程序产品
US11790057B2 (en) Controlling program execution using an access key

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