KR101934444B1 - A Managing Method Of The Integrity Data of Documents Or Securities - Google Patents

A Managing Method Of The Integrity Data of Documents Or Securities Download PDF

Info

Publication number
KR101934444B1
KR101934444B1 KR1020180038932A KR20180038932A KR101934444B1 KR 101934444 B1 KR101934444 B1 KR 101934444B1 KR 1020180038932 A KR1020180038932 A KR 1020180038932A KR 20180038932 A KR20180038932 A KR 20180038932A KR 101934444 B1 KR101934444 B1 KR 101934444B1
Authority
KR
South Korea
Prior art keywords
block
hash value
integrity
key
information
Prior art date
Application number
KR1020180038932A
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 KR1020180038932A priority Critical patent/KR101934444B1/en
Application granted granted Critical
Publication of KR101934444B1 publication Critical patent/KR101934444B1/en

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/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/602Providing cryptographic facilities or services
    • 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06KGRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
    • G06K19/00Record carriers for use with machines and with at least a part designed to carry digital markings
    • G06K19/06Record carriers for use with machines and with at least a part designed to carry digital markings characterised by the kind of the digital marking, e.g. shape, nature, code
    • G06K19/06009Record carriers for use with machines and with at least a part designed to carry digital markings characterised by the kind of the digital marking, e.g. shape, nature, code with optically detectable marking
    • G06K19/06037Record carriers for use with machines and with at least a part designed to carry digital markings characterised by the kind of the digital marking, e.g. shape, nature, code with optically detectable marking multi-dimensional coding
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q40/00Finance; Insurance; Tax strategies; Processing of corporate or income taxes
    • G06Q40/02Banking, e.g. interest calculation or account maintenance
    • 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

Abstract

The present invention is suitable for extracting a hash value by using main information of a concealed document in a two-dimensional bar code and an encryption key and is capable of proving integrity of a document by comparing a sampled hash value with a hash value of a lower part of a two-dimensional bar code or comparing a hash value existing in a block chain. According to the present invention, a method for managing integrity data of a document and securities makes difficult visual identification of an encryption key which encrypts main information of a document by concealing in a two-dimensional bar code and has a lower possibility of forgery because the concealed encryption key is not delivered or is lost partially in copying, and is capable of proving whether a document is not an original copy.

Description

문서 및 유가증권의 무결성 데이터 관리 방법{A Managing Method Of The Integrity Data of Documents Or Securities }[0001] The present invention relates to a method and apparatus for managing the integrity and data of documents and securities,

본 발명은 문서 및 유가증권의 무결성 데이터 관리 방법에 관한 것으로서, 암호화키 은닉 방법을 사용하여 2차원 바코드를 생성하고, 이를 통하여 문서의 위변조 여부를 판정할 수 있으며, 온라인의 블록체인에 등록하여 분산 공개 장부를 유지함으로써 해당 문서의 무결성이 유지되도록 하는 블록체인을 이용한 문서 및 유가증권의 무결성 데이터 관리 방법에 관한 것이다. The present invention relates to a method for managing integrity data of a document and securities, and a two-dimensional barcode is generated by using an encryption key concealing method, and it is possible to determine whether a document is forged or falsified, And a method for managing integrity data of documents and securities using a block chain that maintains the integrity of the document by maintaining a public book.

인증서, 성적표, 증명서, 계약서 등의 문서(전자문서, 출력문서를 포함)와 수표 등의 유가증권의 경우 그 내용을 위조 또는 변조하여 출력하거나 출력된 문서의 내용을 수정하여 행사하는 경우가 많다. 이는 피해 당사자 개인 재산의 손실을 초래하며 및 시장 경제 시스템의 신뢰가 저하되는 문제를 야기한다In the case of securities such as certificates, transcripts, certificates, contracts (including electronic documents and output documents) and checks, there are many cases in which the content of the securities is forged or altered, or the content of the output document is modified. This results in the loss of personal property of the victim and the problem of the reliability of the market economy system being degraded

사문서의 경우 그 진정성을 증명하기 위하여 서명을 하거나 도장을 날인하지만, 서명을 모방하거나 도장을 위조하여 날인함으로써 문서 감정을 통하여 사후에 그 진정성을 확인하고 있다. 공문서의 경우에도 암호화된 2차원 바코드(Ex. QR코드 등)을 사용하여 진위확인 장치 등 위변조 장치가 마련되어 있는 경우가 있으나 이 또한 변조의 가능성을 배제할 수 없다. 또 고성능 사무자동화 기기의 대중화로 위조화폐 및 위변조 수표를 제작하고 이를 행사하여 피해가 발생하는 경우가 있다. 이를 방지하기 위하여 금융기관에 위변조 식별 장치를 비치하고 있지만 고가이며, 이마저도 정교한 변조 및 위조를 감별하지 못하는 한계로 국민 불안감이 증대될 수 있다. In the case of an apostate, it is signed or stamped in order to prove its authenticity, but it is authenticated after the document through emotions by imitating the signature or forging the seal. In the case of an official document, there is a case where a forgery-proof device such as an authenticity check device is provided using an encrypted two-dimensional bar code (Ex. QR code, etc.). However, the possibility of modulation can not be excluded. In addition, due to the popularization of high-performance office automation equipment, counterfeit currency and counterfeit checks are produced and exercised, causing damage. In order to prevent this, financial institutions are equipped with a forgery and identification device, but it is expensive, and the insecurity of the public can be increased due to the limitation of discrimination between sophisticated modulation and counterfeiting.

또한, 개인의 재산을 관리하는 금융 기관이나, 문서의 진본 확인 등의 업무를 수행하는 인증 기관들은 해당 금융 정보 및 무결성 정보를 중앙 서버에 집중하여 제3자가 그 정보를 변조할 수 없도록 관리하고 있다. 이러한 특징 때문에 정보의 손실 또는 변조를 막기 위하여 복제 또는 분산처리를 하여 데이터를 관리하며, 철저한 보안 관리 정책을 도입하고 있다. In addition, a financial institution that manages an individual's property, or a certification body performing work such as authenticating a document, focuses the financial information and integrity information on a central server so that a third party can not tamper with the information . Because of this feature, data is managed by replication or distributed processing to prevent loss or tamper of information, and thorough security management policy is introduced.

하지만 이러한 정보의 은닉과 집중화는 정보의 관리 주체가 단일 실패 지점이 된다는 문제점이 발생하고 곧, 중앙 데이터베이스에 악의적 공격이 성공했을 시 즉시 개인의 피해로 이어지게 된다. However, the concealment and centralization of such information causes a problem that the subject of information management becomes a single failure point, and soon, when a malicious attack on the central database succeeds, it leads to personal injury immediately.

따라서, 본 발명은 이러한 단일 실패 지점 문제를 해결하기 위하여 블록체인 기법을 도입하여 정보를 감추고 중앙 집중화시키는 것이 아닌, 정보를 누구에게나 공개, 생성할 수 있도록 하고 이 정보들 간의 체인을 형성함으로써 중간에 어떤 정보가 변조되면 체인에 연결된 다른 정보들과의 무결성이 깨지도록 하여 전체 무결성을 유지할 수 있도록 한다. Therefore, the present invention adopts a block chain technique to solve such a single point of failure, thereby not disclosing and centralizing information but allowing information to be disclosed and created to anyone and forming a chain between the information When some information is tampered with, integrity of other information connected to the chain is broken so as to maintain full integrity.

대한민국 특허청 등록특허공보 제10-1796690호Korea Patent Office Registration No. 10-1796690 대한민국 특허청 등록특허공보 제10-1680540호Korea Patent Office Registration No. 10-1680540

상술한 종래 기술의 문제점을 해결하기 위하여 본 발명은 원본 문서의 주요한 정보를 2차원 바코드 내에 은닉하고, 상기 2차원 바코드 내에 존재하는 Align Key의 부분에 미세하게 다른 색 패턴을 출력함으로써 삽입된 정보를 육안으로 관찰하기 어렵고 복사시 전달되지 않도록 하여 암호화키 은닉을 이용한 문서의 무결성 검증 시스템을 형성할 수 있도록 하는 블록체인을 이용한 문서 및 유가증권의 무결성 데이터 관리 방법을 제공하는 것이다. According to an aspect of the present invention, there is provided an information processing method comprising: hiding main information of an original document in a two-dimensional bar code and outputting a slightly different color pattern to a part of an Align Key existing in the two- And to provide an integrity data management method of a document and securities using a block chain which is capable of forming a document integrity verification system using an encryption key concealment so that it is difficult to observe with the naked eye and is not transmitted during copying.

또한, 본 발명은 블록체인 기법을 도입하여 정보를 누구에게나 공개, 생성할 수 있도록 하고, 이 정보들 간에 체인을 형성함으로써 중간에 어떤 정보가 변조되면 체인에 연결된 다른 정보들과의 무결성이 깨지도록 하여 전제 무결성을 유지하고 이를 입증할 수 있도록 하는 블록체인을 이용한 문서 및 유가증권의 무결성 데이터 관리 방법을 제공하는 것이다. In addition, the present invention introduces a block-chain technique so that information can be disclosed and created to anyone, and when a certain information is modulated in the middle by forming a chain between the information, the integrity of other information connected to the chain is broken The present invention provides a method for managing integrity data of documents and securities using a block chain that maintains integrity of an entire document and verifies the same.

상술한 기술적 과제를 달성하기 위하여 본 발명의 일 측면에서는, 2차원 바코드 내에 은닉한 문서의 주요 정보 및 암호화키를 이용하여 해쉬값을 추출하고, 추출된 해쉬값을 2차원 바코드 하단부의 해쉬값과 비교하거나, 블록체인 내에 존재하는 해쉬값을 비교하여 문서의 무결성을 입증할 수 있도록 하는 것을 특징으로 한다. According to an aspect of the present invention, there is provided a method of extracting a hash value using key information and an encryption key of a document hidden in a two-dimensional barcode, and extracting the extracted hash value from a hash value at the lower end of the two- Or to compare the hash values present in the block chain to verify the integrity of the document.

또한, 상기 문서 및 유가증권의 무결성 데이터 관리 방법은 오프라인과 온라인을 통하여 무결성을 입증할 수 있도록 하는 것을 특징으로 하는 것을 특징으로 한다. In addition, the method of managing the integrity data of the document and the securities is characterized in that integrity can be verified through offline and online.

또한, 오프라인을 이용한 무결성 데이터 관리 방법은 진위 여부가 필요한 원본 문서의 2차원 코드 부분의 상측을 해석하여 주요정보를 추출하는 주요정보 추출단계(S110)와;In addition, a method of managing integrity data using offline includes a main information extraction step (S110) of extracting main information by analyzing an upper side of a two-dimensional code portion of an original document that needs authenticity;

상기 주요정보 추출단계(S110)에서 추출된 주요정보를 이용하여 Align key에 은닉된 암호화키에 대한 정보를 추출하는 암호화키 추출단계(S120)와An encryption key extracting step (S120) of extracting information on the encryption key hidden in the Align key by using the key information extracted in the key information extracting step (S110)

상기 주요정보 추출단계(S110)와 암호화키 추출단계(S120)에서 추출된 주요정보와 암호화키를 이용하여 해쉬값을 산출하는 해쉬값 추출단계(S130)와;A hash value extraction step (S130) of calculating a hash value using the key information and the encryption key extracted in the key information extraction step (S110) and the encryption key extraction step (S120);

촬영된 2차원 코드의 하부에 위치한 서명을 통하여 위변조확인코드를 추출하는 위변조확인코드 추출단계(S140) 및;A forgery verification code extraction step (S140) of extracting a forgery verification code through a signature located under the photographed two-dimensional code;

상기 해쉬값 추출단계(S130)에서 추출된 해쉬값과 위변조확인코드 추출단계(S140)에서 추출된 해쉬값을 비교하여 바코드의 무결성을 입증 및 위변조 확인 단계(S150)를 포함하는 것을 특징으로 한다. And a step S150 of verifying the integrity of the barcode and forging the barcode by comparing the hash value extracted in the hash value extracting step S130 with the hash value extracted in the forbidden verification code extracting step S140.

또한, 상기 주요정보 추출단계(S110)에서 추출된 주요정보는 2차원 코드의 상측에 평문의 형태로 형성하며, 상기 주요 정보는 유가정보의 경우 일련번호, 금액, 발행기관, 발행지점을 포함하는 것을 특징으로 한다. In addition, the main information extracted in the main information extracting step (S110) is formed in the form of a plain text on the upper side of the two-dimensional code. In the case of the price information, the main information includes a serial number, an amount, .

또한, 상기 암호화키 추출단계(S120)는 2차원 바코드의 모서리에 형성된 Align key를 왼쪽 위 모서리부터 시계방향으로 해석하며, 상기 Align key는 미세 황색 망점으로 명암을 달리하여 0과1의 2진수로 표현하여 총 24자리로 산출되는 것을 특징으로 하는 것을 특징으로 한다. In the encryption key extracting step (S120), the Align key formed at the corner of the two-dimensional bar code is interpreted in a clockwise direction from the upper left corner. The Align key is a binary code of 0 and 1 And is calculated as a total of 24 digits.

또한, 상기 Align key는 4자리씩 나누어 16진수로 변환하고, 마지막 4bit가 패리티 비트가 되어 앞의 5자리 숫자에 대한 유효성 검증에 사용될 수 있도록 하는 것을 특징으로 한다. In addition, the Align key is divided into four hexadecimal digits, and the last 4 bits become parity bits so that the Align key can be used for validity verification of the previous 5 digits.

또한, 상기 위변조 확인 단계(S150)는 촬영된 2차원 코드의 상측에서 추출된 주요정보와 암호키를 통해 산출된 해쉬값과 2차원 코드의 하측에서 추출된 해쉬값을 비교함으로서 데이터의 무결성을 입증하는 것을 특징으로 한다. In addition, the forgery falsification confirmation step S150 may verify the integrity of the data by comparing the hash value calculated through the key information extracted from the upper side of the photographed two-dimensional code and the encryption key with the hash value extracted from the lower side of the two- .

또한, 상기 온라인을 이용한 무결성 데이터 관리 방법은 다수의 노드에게 제공된 블록체인을 이용하여 데이터의 무결성을 입증하는 것으로서, Also, the on-line integrity data management method verifies the integrity of data using a block chain provided to a plurality of nodes,

블록체인 전체 정보를 담고 있는 노드와 인접한 노드를 동기화하는 노드의 동기화단계(S210)와;A step (S210) of synchronizing a node containing a whole block chain with a node synchronizing adjacent nodes;

상기 노드에서 입력된 2차원 바코드에 대한 주요정보를 이용하여 암호키를 생성하는 암호키 생성단계(S220)와;A cryptographic key generation step (S220) of generating a cryptographic key using key information about a two-dimensional barcode inputted from the node;

상기 암호키 생성단계(S220)에서 추출된 암호키를 이용하여 해쉬값을 검출하는 해쉬값 검출단계(S230)와; A hash value detection step (S230) of detecting a hash value using the cryptographic key extracted in the cryptographic key generation step (S220);

상기 해쉬값 검출단계(S230)에서 검출된 해쉬값이 블록 내에 존재하는지의 여부를 판단하기 위하여 블록내 해쉬값을 검색하는 블록내의 해쉬값과 검색단계(S240) 및; A hash value in a block for searching an intra-block hash value to search for whether the hash value detected in the hash value detection step S230 exists in the block;

상기 블록내의 해쉬값 검색단계(S240)에서 일체한 블록이 검색되고 체인이 깨진 상태인지 여부를 판단하여 문서의 무결성이 입증되었다고 판단하는 블록체인 무결성확인단계(S250)를 포함하는 것을 특징으로 한다.  And a block chain integrity checking step S250 of determining whether the integrity of the document has been verified by determining whether the entire block is searched and the chain is broken in the hash value search step S240 in the block.

또한, 상기 노드는 새로 생성된 블록 정보를 인근 노드에 전송하여 새로 생성된 블록이 추가되어도 모든 노드가 동일한 블록체인을 유지할 수 있도록 하는 것을 특징으로 한다. In addition, the node transmits the newly generated block information to neighboring nodes, so that even if a newly generated block is added, all nodes can maintain the same block chain.

또한, 상기 암호키 생성단계(S220)에서 암호키는 2차원 바코드의 모서리에 형성된 Align key를 왼쪽 위 모서리부터 시계방향으로 해석하며, 상기 Align key는 미세 황색 망점으로 명암을 달리하여 0과1의 2진수로 표현하여 총 24자리로 산출되는 것을 특징으로 하는 것을 특징으로 한다. In the encryption key generation step S220, the encryption key interprets the Align key formed at the corner of the two-dimensional bar code in the clockwise direction from the upper left corner, and the Align key is defined as a fine yellow halftone dot, And a total of 24 digits is calculated as a binary number.

또한, 상기 Align key는 4자리씩 나누어 16진수로 변환하고, 마지막 4bit가 패리티 비트가 되어 앞의 5자리 숫자에 대한 유효성 검증에 사용될 수 있도록 하는 것을 특징으로 한다. In addition, the Align key is divided into four hexadecimal digits, and the last 4 bits become parity bits so that the Align key can be used for validity verification of the previous 5 digits.

또한, 상기 블록내의 해쉬값 검색단계(S240)에서 상기 블록은 여러 사용자의 문서 주요 정보에 대한 해쉬 값이 저장될 수 있도록 하는 것을 특징으로 한다. In the hash value retrieving step (S240), the block may store a hash value of document main information of a plurality of users.

또한, 상기 블록체인 무결성확인단계(S250)는 블록헤더에서 산출된 블록해쉬를 이용하여 블록체인의 무결성을 확인하는 것으로서, The block chain integrity checking step S250 checks the integrity of the block chain using the block hash calculated in the block header,

상기 블록해쉬는 최초 블록(Genesis Block)을 제외한 모든 블록에 앞 블록의 블록 해쉬 값을 담을 수 있도록 하고, 상기 블록에 변형이 발생되면 블록 해쉬가 달라지며 이는 앞블록 블록해쉬와 뒷블록 블록해쉬가 서로 일치하지 않으므로 블록의 무결성을 확인할 수 있도록 하는 것을 특징으로 한다. The block hash may contain a block hash value of a previous block in all blocks except for a genesis block, and when a block is deformed, a block hash is changed. That is, a previous block block hash and a back block block hash So that the integrity of the block can be confirmed.

상술한 바와 같은 본 발명의 실시예들에 의하면, 문서의 주요 정보를 암호화하는 키를 2차원 바코드 내에 은닉함으로서 육안으로 식별하기 어렵고, 은닉된 암호화 키는 사본화 과정에서 복사본에 전달되지 않거나 일부 손실되므로 위변조의 가능성이 낮고, 원본이 아님을 증명하는데 사용할 수 있는 효과를 지닌다. According to the embodiments of the present invention as described above, it is difficult to visually identify a key for encrypting key information of a document in a two-dimensional barcode, and the hidden encryption key is not transferred to the copy in the copying process, So that the possibility of forgery and falsification is low and it can be used to prove that it is not original.

또한, 본 발명은 문서에 대한 무결성의 입증이 요구될 때 2차원 바코드 내에 은닉된 암호화키와, 바코드 상단부에 존재하는 문서 주요 정보를 사용하여 암호화를 수행하고 이의 해쉬 값을 추출하여 바코드 하단부의 해쉬 값과 비교함으로써 바코드 무결성을 입증할 수 있으며, 이는 인터넷 망의 연결 없이 제공되는 소프트웨어 및 앱을 통하여 오프라인에서도 수행될 수 있는 효과를 도모할 수 있다. In addition, when proof of integrity of a document is required, the present invention performs encryption using the encryption key hidden in the two-dimensional bar code and the document key information existing at the upper end of the barcode, extracts the hash value of the encryption key, The barcode integrity can be verified by comparing with the value of the barcode, and this can be performed in offline by means of the software and the app provided without connection of the Internet network.

또한, 본 발명은 온라인에서는 부가적으로 삽입된 무결성 입증 정보를 블록체인으로 구성하여 정보의 관리 주체가 정보를 생산/접근하는 참여자 전체이므로 데이터 관리주체에 의한 위변조 역시 불가능하며, 다중 노드에 분산하는 공개 장부의 형태로 중복 저장한 후 시스템을 이용하는 모든 사용자에게 공개하므로 정보의 투명한 관리가 보장되어 사용자의 신뢰를 향상시키고, 다수에 의한 무결성 입증 정보의 신뢰성 향상을 도모할 수 있는 효과를 지닌다. In addition, the present invention can not be falsified by a data management subject because it is the entire participant who generates information / access to information by constructing a block chain of an additional integrity verification information on-line, Since it is stored in the form of a public book and is publicly available to all users who use the system, transparent management of information is ensured, thereby improving the trust of the user and enhancing the reliability of the integrity verification information by a large number of users.

도 1은 본 발명의 일 실시예에 따른 블록체인을 이용한 문서 및 유가증권의 무결성 데이터 관리 시스템을 개략적으로 도시한 구성도이고,
도 2는 본 발명의 일 실시예에 따른 블록체인을 이용한 문서 및 유가증권의 무결성 데이터 관리 시스템에 포함된 검증서버를 개략적으로 도시한 구성도이고,
도 3은 본 발명의 일 실시예에 따라 문서 및 유가증권의 무결성 데이터 관리 시스템의 검증서버로부터 암호화키와 해쉬값을 추출하고자 하는 2차원 바코드를 개략적으로 도시한 도면이고,
도 4는 본 발명의 일 실시예에 따른 블록체인을 이용한 문서 및 유가증권의 무결성 데이터 관리 시스템에 포함된 블록을 개략적으로 도시한 구성도이고,
도 5는 본 발명의 일 실시예에 따르는 무결성 입증 코드를 사용한 오프라인 무결성 확인 방법을 나타내는 순서도이고,
도 6은 본 발명의 일 실시예에 따르는 무결성 입증 코드를 사용한 오프라인 무결성 확인 방법을 개략적으로 나타낸 도면이고,
도 7는 본 발명의 일 실시예에 따른 블록체인을 사용한 온라인 무결성 확인 방법을 나타내는 순서도이다.
BRIEF DESCRIPTION OF THE DRAWINGS FIG. 1 is a block diagram schematically illustrating an integrity data management system for a document and a security using a block chain according to an embodiment of the present invention.
FIG. 2 is a block diagram schematically illustrating a verification server included in a document and securities integrity data management system using a block chain according to an embodiment of the present invention.
3 is a view schematically showing a two-dimensional barcode for extracting an encryption key and a hash value from a verification server of a document and securities integrity data management system according to an embodiment of the present invention,
FIG. 4 is a block diagram schematically illustrating a block included in an integrity data management system of a document and a security using a block chain according to an embodiment of the present invention.
5 is a flowchart illustrating an offline integrity verification method using an integrity verification code according to an embodiment of the present invention,
6 is a diagram schematically illustrating an offline integrity verification method using an integrity verification code according to an embodiment of the present invention,
7 is a flowchart illustrating an online integrity checking method using a block chain according to an embodiment of the present invention.

본 발명은 다양한 변경을 가할 수 있고 여러 가지 실시예를 가질 수 있는바, 특정 실시예들을 도면에 예시하고 상세한 설명에 상세하게 설명하고자 한다. 그러나 이는 본 발명을 특정한 실시 형태에 대해 한정하려는 것이 아니며, 본 발명의 사상 및 기술 범위에 포함되는 모든 변경, 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다. 각 도면을 설명하면서 유사한 참조부호를 유사한 구성요소에 대해 사용하였다. While the invention is susceptible to various modifications and alternative forms, specific embodiments thereof are shown by way of example in the drawings and will herein be described in detail. It is to be understood, however, that the invention is not to be limited to the specific embodiments, but includes all modifications, equivalents, and alternatives falling within the spirit and scope of the invention. Like reference numerals are used for like elements in describing each drawing.

제1, 제2, A, B 등의 용어는 다양한 구성요소들을 설명하는데 사용될 수 있지만, 상기 구성요소들은 상기 용어들에 의해 한정되어서는 안 된다. 상기 용어들은 하나의 구성요소를 다른 구성요소로부터 구별하는 목적으로만 사용된다. 예를 들어, 본 발명의 권리 범위를 벗어나지 않으면서 제1 구성요소는 제2 구성요소로 명명될 수 있고, 유사하게 제2 구성요소도 제1 구성요소로 명명될 수 있다. 및/또는 이라는 용어는 복수의 관련된 기재된 항목들의 조합 또는 복수의 관련된 기재된 항목들 중의 어느 항목을 포함한다.The terms first, second, A, B, etc. may be used to describe various elements, but the elements should not be limited by the terms. The terms are used only for the purpose of distinguishing one component from another. For example, without departing from the scope of the present invention, the first component may be referred to as a second component, and similarly, the second component may also be referred to as a first component. And / or < / RTI > includes any combination of a plurality of related listed items or any of a plurality of related listed items.

어떤 구성요소가 다른 구성요소에 "연결되어" 있다거나 "접속되어" 있다고 언급된 때에는, 그 다른 구성요소에 직접적으로 연결되어 있거나 또는 접속되어 있을 수도 있지만, 중간에 다른 구성요소가 존재할 수도 있다고 이해되어야 할 것이다. 반면에, 어떤 구성요소가 다른 구성요소에 "직접 연결되어" 있다거나 "직접 접속되어" 있다고 언급된 때에는, 중간에 다른 구성요소가 존재하지 아니하는 것으로 이해되어야 할 것이다. It is to be understood that when an element is referred to as being "connected" or "connected" to another element, it may be directly connected or connected to the other element, . On the other hand, when an element is referred to as being "directly connected" or "directly connected" to another element, it should be understood that there are no other elements in between.

본 명세서에서 사용한 용어는 단지 특정한 실시예를 설명하기 위해 사용된 것으로, 본 발명을 한정하려는 의도가 아니다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 본 명세서에서, "포함한다", "가진다" 등과 관련된 용어는 명세서상에 기재된 특징, 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.The terminology used herein is for the purpose of describing particular embodiments only and is not intended to be limiting of the invention. The singular expressions include plural expressions unless the context clearly dictates otherwise. In this specification, terms related to "comprising "," having ", and the like are intended to specify the presence of stated features, integers, steps, operations, elements, parts, or combinations thereof, But do not preclude the presence or addition of one or more other features, integers, steps, operations, elements, components, or combinations thereof.

본 명세서에서 다르게 정의되지 않는 한, 기술적이거나 과학적인 용어를 포함해서 여기서 사용되는 모든 용어들은 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미를 포함한다. 일반적으로 사용되는 사전에 정의되어 있는 것과 같은 용어들은 관련 기술의 문맥상 의미와 일치하는 의미로 해석되어야 하며, 본 명세서에서 명백하게 정의하지 않는 한, 이상적이거나 과도하게 형식적인 의미로 해석되지 않는다.Unless otherwise defined herein, all terms used herein, including technical or scientific terms, have the same meaning as commonly understood by one of ordinary skill in the art to which this invention belongs. Terms such as those defined in commonly used dictionaries should be interpreted in a manner consistent with the contextual meaning of the related art, and are not to be construed as ideal or overly formal, unless explicitly defined herein.

도 1은 본 발명의 일 실시예에 따른 블록체인을 이용한 문서 및 유가증권의 무결성 데이터 관리 시스템을 개략적으로 도시한 구성도이다. BRIEF DESCRIPTION OF THE DRAWINGS FIG. 1 is a block diagram schematically illustrating an integrity data management system for a document and a security using a block chain according to an embodiment of the present invention; FIG.

도 1과 같이, 무결성 데이터 관리 시스템은, 다수개의 노드(100)와, 원본 문서의 주요한 정보를 추출하여 이를 암호화하고 추출된 해쉬값을 블록에 제공하는 검증서버(200)와, 상기 노드(100)로부터 수집된 정보를 블록체인에 기록하는 블록체인(300)을 포함한다. 1, the integrity data management system includes a plurality of nodes 100, a verification server 200 that extracts key information of an original document, encrypts the extracted information, and provides the extracted hash value to the block, And a block chain (300) for recording the information collected from the mobile terminal (200) in a block chain.

상기 무결성 데이터 관리 시스템은, 네트워크 내 노드들이 블록체인으로 연결되어 있고, 문서와 유가증권의 주요정보를 은닉한 암호화키로부터 추출된 해쉬값을 블록에 삽입하고, 이를 노드에 제공하여 분산 공개 장부를 유지할 수 있도록 하며, 주요 정보와 암호화키에 대한 해쉬 값을 기반으로 블록체인의 각 블록을 순회하며 블록 내 문서 정보 해쉬와 일치하는 블록을 찾는다. 이에 따라 블록이 검색되고 체인이 깨진 상태가 아니라면, 해당 문서는 무결성이 입증되었다고 판단한다.The integrity data management system includes a hash value extractor for extracting a hash value extracted from an encryption key hiding key information of a document and securities connected to each other in a block chain and providing the hash value to a node, And it searches each block in the block chain based on the hash value of the key information and the encryption key, and finds a block that matches the document information hash in the block. Accordingly, if the block is searched and the chain is not in a broken state, the document is judged to be verified as having integrity.

이때, 상기 블록체인은 "블록 후보"들의 블록 헤더값을 해시 함수에 넣고 돌려, 그 실행 결과가 네트워크에서 정한 "난이도(difficulty)" 이하의 값이 될 때까지 블록 헤더의 논스(nonce)값을 바꿔나가는 과정을 거침으로서 무결성을 유지할 수 있도록 한다. At this time, the block chain inserts the block header value of the "block candidates " into the hash function, and returns the nonce value of the block header until the execution result is less than the " So that integrity can be maintained through the process of changing.

상기 노드(100)는 pc 또는 서버를 일컫는 것으로, 블록체인 네트워크에 연결되어 모든 블록 정보를 수집할 수 있도록 한다. The node 100 refers to a PC or a server, and is connected to a block-chain network to collect all block information.

상기 노드(100)는 풀 노드(Full Block Chain Node)와 라이트 노드(Lightweight Node)로 나뉘어지며, 상기 풀 노드(Full Block Chain Node)는 모든 기능을 가지고 있는 노드로서, 블록체인의 최초의 블록부터 현재 새롭게 생성되는 블록까지 모든 블록정보를 가지고 있으며, 모든 블록체인 정보를 수집하고 저장하는 역할을 수행한다. The node 100 is divided into a full block chain node and a lightweight node. The full block chain node is a node having all the functions. It has all block information up to the newly generated block, and collects and stores all block chain information.

상기 라이트 노드(Lightweight Node)는 모든 블록정보의 원본을 가지고 있지 않고 일종의 요약본 즉 헤더정보만 가지고 있는 노드로서, 모든 블록정보를 가지고 있지 않으므로 개별 거래에 대한 트랜잭션을 확인하기 위해 상기 플노드에게 블록정보를 요청하여 이 거래가 검증된 거래인지 확인할 수 있도록 한다. Since the light node does not have all of the block information and does not have all the block information, it is necessary to inform the flow node of the block information To ensure that this transaction is a verified transaction.

상기 풀 노드와 라이트 노드로 구분하는 이유는 저장 용량이 좋은 데스크탑의 경우에는 모든 데이터를 저장하고 있어도 상관없지만 모바일의 경우에는 모든 데이터를 저장할 수 없음으로 이를 구분하여 각자의 역할이 이루어질 수 있도록 한다. The reason for distinguishing between the pool node and the light node is that, in the case of a desktop having a good storage capacity, all data may be stored, but in the case of a mobile, all data can not be stored.

이때, 상기 노드(100)는 개인 단말기나, 개인의 재산을 관리하는 금융 기관 또는 문서의 진본 확인 등의 업무를 수행하는 인증 기관들의 단말기를 포함한다. At this time, the node 100 includes a terminal of a personal terminal, a financial institution that manages the property of an individual, or a terminal of a certification authority that performs tasks such as authenticating a document.

상기 검증서버(200)는 원본 문서의 주요한 정보를 추출하고, 암호화키를 생성하여 이 정보를 암호화 하고, 암호화 된 결과에 대한 해쉬 값을 추출하여 주요 정보와 해쉬 값을 2차원 바코드로 출력하고, 이 과정에서 사용한 암호화키는 생성된 바코드 내에 은닉하는 것으로서, 도 2에 도시된 바와 같이, 주요정보수집부(210), 암호키 생성부(220), 해쉬값산출부(230)를 포함한다. The verification server 200 extracts key information of the original document, generates an encryption key, encrypts the information, extracts a hash value of the encrypted result, outputs the key information and the hash value as a two-dimensional barcode, As shown in FIG. 2, the encryption key used in the process hides in the generated barcode, and includes a main information collection unit 210, a cryptographic key generation unit 220, and a hash value calculation unit 230.

이때, 상기 2차원 바코드는 도 3에 도시된 바와 같이 왼쪽 상하단과 오른쪽 상단의 3모서리에 암호화키가 은닉되어 있고, 2차원 바코드의 상측에는 문서의 주요정보가 평문의 형태로 삽입되어 있고, 하측에는 위변조를 확인할 수 있는 확인코드가 삽입되어 있다. 상기 주요정보와 암호화키에서 추출된 해쉬값과 2차원 바코드의 하측에 위치한 위변조 확인코드값이 서로 상이할 경우에는 이를 변조된 문서로 판단한다. As shown in FIG. 3, the two-dimensional bar code has secret keys encapsulated at three corners of the left and right upper and lower left corners, main information of the document is inserted in the form of a plain text on the upper side of the two- A confirmation code is inserted to confirm forgery and falsification. If the hash value extracted from the key information and the encryption key is different from the value of the forgery verification code located at the lower side of the two-dimensional bar code, the hash value is judged to be a modulated document.

상기 주요정보수집부(210)는 인증서, 성적표, 증명서, 계약서 등의 문서(전자문서, 출력문서를 포함)와 수표 등의 유가증권에 대한 주요정보를 수집하는 것으로서, 문서에 인쇄되어 있는 2차원 바코드를 이용하여 주요정보를 수집할 수 있도록 한다. The main information collecting unit 210 collects important information about securities such as a certificate, a transcript, a certificate, a contract (including an electronic document and an output document) and a check, Use barcodes to collect key information.

상기 주요정보는 문서 또는 유가 증권에 대한 핵심적인 정보로서, 유가정보의 경우에는 일련번호, 금액, 발행기관, 발행지점 등을 포함하며, 이는 평문의 형태로 2차원 코드(예: QR코드)로 출력될 수 있도록 한다.The key information is the key information about the document or securities. In case of the price information, it includes the serial number, the amount, the issuing institution, the issuing point, etc. It is a two-dimensional code (QR code, for example) Output.

상기 암호키 생성부(220)는 상기 주요정보수집부(210)에서 수집된 정보와 같이 2차원 코드의 인식에 사용되는 Align Key에 은닉되는 임의의 비밀키를 생성하는 것으로서, 상기 주요정보수집부(210)에 수집된 주요정보를 암호화한다. The encryption key generating unit 220 generates an arbitrary secret key that is hidden in an Align Key used for recognizing the two-dimensional code as the information collected by the main information collecting unit 210, (210).

상기 암호키는 18자리의 16진수 키로 생성하여 2진수로 변환하여 사용하며, 암호키가 은닉되는 Align Key는 3곳으로 각 Align Key에 6개의 키를 2진수 형태로 은닉한다. 은닉된 서명 정보의 구성으로 인쇄된 2차원 코드의 Align Key의 색상과 유사한 색상으로 인쇄하여 복사 시 정보가 소멸되도록 하며, 검출 시에는 자체 제작한 촬영 소프트웨어를 사용하여 미세한 명도차를 검출하여 계산한다.The cryptographic key is generated using an 18-digit hexadecimal key and converted into a binary number, and the Align Key concealed by the cryptographic key is concealed in three places and the six keys in each Align Key in binary form. Dimensional code is printed in a color similar to the color of the Align Key of the printed two-dimensional code by the configuration of the hidden signature information so that the information is eliminated during copying. In detecting the fine information, the fine brightness difference is detected and calculated using the self- .

예를 들면, 도 3에 도시된 바와 같이, 왼쪽 위 모서리부터 시계방향으로 100110010101100000101000 으로 해석할 수 있으며, 이는 다시 4자리씩 나누어 16진수로 변환하여 995828로 변환할 수 있다. 이때, 마지막 4bit(밑줄 부분, 8)는 패리티 비트로 앞의 5자리 숫자에 대한 유효성 검증에 사용한다. 패리티는 전술한 2진수의 나열을 5자리씩 나눈 후 5자리 내에 존재하는 1의 개수가 짝수이면 0, 홀수이면 1로 표현한다. 패리티 비트 검증이 통과하지 못하면 바코드 인식 오류로 처리하며, 패리티 비트에 문제가 없으면 2차원 바코드 전체에 존재하는 3개의 Align Key를 좌측상단, 우측상단, 좌측하단의 순으로 패리티 비트를 제외한 후 연결하여 전체 암호화 Key를 생성할 수 있도록 한다. For example, as shown in FIG. 3, it can be interpreted as 10011001010110000010 1000 in the clockwise direction from the upper left corner, and it can be converted into hexadecimal and converted into 995828 by dividing by four digits. In this case, the last 4 bits (underlined part, 8) are used for validity of the preceding 5 digits with parity bits. The parity is expressed as 0 when the number of 1s present in 5 digits is odd and 1 when 1 is odd. If the parity bit verification fails, it is treated as a barcode recognition error. If there is no problem with the parity bit, the three alignment keys existing in the entire two-dimensional bar code are connected in the order of left top, right top and left bottom except for the parity bits So that the entire encryption key can be generated.

본 발명에서는 Align Key에 정보를 은닉하는 방법을 예시로 설명하였으나, 미세한 명도차만을 사용하는 기법이기 때문에, QR 코드의 내부에도 적용이 가능하다.  In the present invention, a method of concealing information in an Align Key has been described as an example. However, since it is a technique using only a small brightness difference, it can be applied to the inside of a QR code.

상기 해쉬값산출부(230)는 상기 주요정보수집부(210)에 수집된 주요정보와 암호키 생성부(220)에서 생성된 암호키를 이용하여 암호화한 주요정보 및 서명을 해쉬값으로 산출하고 이를 저장한다. The hash value calculation unit 230 calculates the hash value of the key information and signature encrypted using the key information collected in the key information collection unit 210 and the encryption key generated in the encryption key generation unit 220 And stores it.

상기 해쉬값산출부(230)에서 산출된 해쉬값은 후술되는 블록체인(300)의 블록에 제공되어 블록내에 저장될 수 있도록 한다. The hash value calculated by the hash value calculator 230 is provided to a block of the block chain 300 to be described later so that the hash value can be stored in the block.

또한, 상기 해쉬값산출부(230)에서 산출된 해쉬값은 문서의 위변조확인코드와 비교판단하여 문서의 위변조 여부를 검증할 수 있도록 하는 것으로 오프라인 또는 온라인을 통하여 문서의 무결성을 입증할 수 있도록 한다. In addition, the hash value calculated by the hash value calculation unit 230 can be verified by comparing the hash value with the forgery verification code of the document to verify whether the document is forged or falsified, so that the integrity of the document can be verified offline or online .

상기 블록체인(300)은 다수의 블록이 연결된 것으로서, 상기 블록은 거래부, 헤더부, 블록해쉬를 포함하며, 상기 거래부는 다수의 거래 기록을 포함하고, 헤더부는 보안용 추가 데이터를 포함하며, 블록해시는 해더부에 있는 모든 데이터를 넣어 만든다. 따라서, 블록해시는 헤더부에 어떠한 변화가 생기면 당연히 블록 해시가 변하게 된다. The block chain 300 includes a plurality of blocks, and the block includes a transaction unit, a header unit, and a block hash. The transaction unit includes a plurality of transaction records. The header unit includes additional data for security. A block hash is created by inserting all the data in the header. Therefore, if there is any change in the header part of the block hashing, the block hash will naturally change.

이때, 상기 블록헤더는 도 4에 도시된 바와 같이, 현재 블록체인 구조의 버전, 이전 블록의 블록 해쉬, 문서 주요 정보의 해쉬, 블록 생성 시간, 블록 생성 난이도, Nonce 정보를 포함한다. 4, the block header includes a version of the current block chain structure, a block hash of the previous block, a hash of the document key information, a block generation time, a block generation difficulty, and nonce information.

상기 문서 주요 정보 해쉬에는 상기 검증서버(200)의 해쉬값산출부(230)에서 산출된 해쉬값을 수신하여 저장한다. The hash value calculated by the hash value calculation unit 230 of the verification server 200 is received and stored in the document key information hash.

한편, 상기 블록에는 여러 사용자의 문서 주요 정보에 대한 해쉬 값이 저장될 수 있지만, 본 발명에서는 기본적으로 한 블록에 한 문서에 대한 해쉬 값을 유지하는 것을 가정한다.Meanwhile, a hash value of document main information of a plurality of users may be stored in the block. However, in the present invention, it is assumed that a hash value for one document is maintained in one block.

상기 블록 해쉬는 블록 생성 난이도에 따라 특정 값 보다 작은 해쉬 값만을 생성하도록 제한할 수 있다. 하지만 해쉬 코드는 알고리즘의 특성 상 입력에 따라 어떠한 값이 나올지 예측할 수 없기 때문에 Nonce 값을 0부터 증가시키며 블록해쉬를 추출하고 이 값이 블록 생성 난이도에 정의된 수보다 크면 Nonce의 값을 1 증가시킨 후 다시 해쉬 값을 추출한다. The block hash can be limited to generate only a hash value smaller than a specific value according to the block generation difficulty level. However, since the hash code can not predict what value will be output according to the characteristics of the algorithm, the nonce value is increased from 0 and the block hash is extracted. If the value is larger than the number defined in the block generation difficulty, the nonce value is increased by 1 Then, the hash value is extracted again.

이 과정을 계속해서 반복하며 블록 생성 난이도 보다 작은 블록 해쉬를 계산하도록 한다. 단, Nonce의 경우 경우에 따라 사용하지 않을 수 있다.This process is continued and it is calculated to calculate a block hash smaller than the block generation difficulty. However, in case of nonce, it may not be used in some cases.

해쉬 값은 SHA-256 알고리즘을 통하여 추출하며 추출된 해쉬 값에 대하여 다시 한 번 해쉬 값을 추출하는 이중 해쉬 구조를 사용한다. 해쉬 값은 항상 고정된 길이로 추출되며, 원 정보가 1bit 라도 변경되면 전체 해쉬 값이 바뀌게 된다. 또한 원문에서 해쉬 값을 추출할 수는 있지만 해쉬 값에서 원문을 복원할 수 없다는 특징이 있다.The hash value is extracted through the SHA-256 algorithm and a double hash structure is used to extract the hash value again for the extracted hash value. The hash value is always extracted as a fixed length, and if the original information is changed by 1 bit, the entire hash value is changed. In addition, the hash value can be extracted from the original text, but the original text can not be restored from the hash value.

한편, 최초 블록(Genesis Block)을 제외한 모든 블록에는 앞 블록의 블록 해쉬 값을 담기 때문에 연결된 형태의 체인으로 생각할 수 있고, 체인의 특정 블록 내용에 변형이 가해지면, 변형된 블록의 블록 해쉬가 달라지고 이를 담고 있는 다음 블록의 앞블록 블록 해쉬 값과 일치되지 않기 때문에 체인이 깨지게 된다. 따라서 악의적인 목적을 가진 누군가가 중간의 문서 정보를 변형하기 위해서는 뒷부분에 연결되어 있는 모든 블록의 블록 해쉬 값을 변경하여야 한다. 뒷부분에 연결되어 있는 모든 블록의 해쉬값을 구하기 위해서는 블록 생성 난이도보다 작은 해쉬 값을 다시 구해야 하고 이는 난이도에 따라 Nonce를 증가시키며 조건에 맞는 해쉬값이 도출되기까지 많은 연산과 이에 따른 계산 시간이 소요되고, 블록은 그 순간에도 생성되어 추가되고 있기 때문에, 블록체인이 충분히 길다면 이를 모두 변경하는 것은 불가능에 가깝다고 할 수 있다.Since all block except Genesis Block contains the block hash value of the previous block, it can be regarded as connected chain. If block specific contents of chain are deformed, block hash of deformed block is different The chain is broken because it does not match the hash value of the preceding block of the next block containing the lag. Therefore, in order for a malicious object to transform the intermediate document information, the block hash value of all blocks connected to the rear side must be changed. To obtain the hash value of all blocks connected to the backward part, the hash value smaller than the block generation difficulty needs to be obtained again. This increases the nonce according to the degree of difficulty. It takes many operations and calculation time to derive the hash value satisfying the condition Since blocks are created and added at that moment, if the block chain is long enough, it is almost impossible to change all of them.

상기와 같은 구성으로 이루어진 블록체인을 이용한 문서 및 유가증권의 무결성 데이터 관리 방법은 문서에 대한 무결성의 입증이 요구될 때 2차원 바코드 내에 은닉된 암호화키와, 바코드 상단부에 존재하는 문서 주요 정보를 사용하여 암호화를 수행하고 이의 해쉬 값을 추출하여 바코드 하단부의 해쉬 값과 비교함으로써 바코드 무결성을 입증한다. 이 과정은 인터넷 망의 연결 없이 제공되는 소프트웨어 및 앱을 통하여 오프라인에서 수행될 수 있다는 장점이 있다. 또한, 온라인에서는 부가적으로 삽입된 무결성 입증 정보를 블록체인으로 구성하여 다중 노드에 분산 공개 장부의 형태로 중복 저장한 후 시스템을 이용하는 모든 사용자에게 공개하여 다수에 의한 무결성 입증 정보의 신뢰성 향상을 도모한다. A method for managing integrity and data of a document and a security using a block chain having the above-described configuration is characterized in that when an integrity of a document is required to be verified, an encryption key hidden in a 2D barcode and a document key information And the hash value is extracted and compared with the hash value at the lower end of the barcode to verify the barcode integrity. This process is advantageous in that it can be performed offline through software and apps provided without connection to the Internet. On the other hand, on-line integrated integrity verification information is constructed as a block chain and redundantly stored in the form of distributed open books on multiple nodes, and then released to all users using the system to improve the reliability of the integrity verification information by a large number do.

도 5는 본 발명의 일 실시예에 따르는 무결성 입증 코드를 사용한 오프라인 무결성 확인 방법을 나타내는 순서도이다.5 is a flowchart illustrating an offline integrity verification method using an integrity verification code according to an embodiment of the present invention.

도 5에 도시된 바와 같이, 오프라인에서 무결성 입증코드를 이용한 확인 절차는 주요정보 추출단계(S110)와, 암호화키 추출단계(S120)와, 해쉬값 추출단계(S130), 위변조확인코드 추출단계(S140) 및 위변조 확인 단계(S150)를 포함한다. As shown in FIG. 5, the confirmation procedure using the integrity verification code in off-line includes a key information extraction step S110, an encryption key extraction step S120, a hash value extraction step S130, a forgery verification code extraction step S140) and a forgery and falsification confirmation step (S150).

상기 주요정보 추출단계(S110)는 진위 여부가 필요한 원본 문서의 2차원 코드 부분 예를 들면 QR 코드의 부분의 상측을 해석하여 주요정보를 추출할 수 있도록 한다. The key information extracting step S110 may extract the main information by interpreting the upper part of the two-dimensional code part of the original document, for example, the QR code, which requires authenticity.

먼저, 스캐너 또는 촬영장비를 통하여 상기 QR 코드의 정보를 수집하고 이는 검증서버(200)의 주요정보수집부(210)를 통해 QR 코드에 포함된 주요 정보를 수집하고 이를 저장한다. First, information on the QR code is collected through a scanner or an imaging device, and the main information collection unit 210 of the verification server 200 collects important information included in the QR code and stores the collected information.

상기 주요정보는 도 6 에 도시된 바와 같이, QR 코드의 상측에 위치하며 평문의 형태로 형성하며, 상기 주요 정보는 유가정보의 경우 일련번호, 금액, 발행기관, 발행지점 등을 포함한다. 따라서, 추출된 주요정보는 화면 출력 등의 방법으로 사용자가 문서나 수표에 출력된 주요 정보와 대조할 수 있는 기능을 제공한다.As shown in FIG. 6, the main information is formed in the form of a plain text located on the upper side of the QR code, and the main information includes a serial number, an amount, an issuing authority, a issuing point, etc. in the case of price information. Therefore, the extracted main information provides a function to allow the user to check the main information output to the document or check by a method such as screen output.

상기 암호화키 추출단계(S120)는 상기 주요정보 추출단계(S110)에서 추출된 주요정보를 이용하여 Align key에 은닉된 암호화키에 대한 정보를 추출하는 단계이다. The encryption key extraction step S120 is a step of extracting information on the encryption key hidden in the Align key using the main information extracted in the main information extraction step S110.

암호화키를 추출하는 방법은 상기 주요정보수집부(210)에서 수집된 주요정보를 이용하여 생성된 암호키를 추출하는 것으로, 이는 암호키 생성부(220)를 통해 생성된 암호키를 포함한다. The method for extracting the encryption key includes extracting a cryptographic key generated using the main information collected by the main information collecting unit 210, and includes a cryptographic key generated through the cryptographic key generating unit 220. [

상기 암호키 생성부(220)는 Align key를 왼쪽 위 모서리부터 시계방향으로 해석하게 되는데, 미세 황색 망점을 이용하여 1과 0으로 읽을 수 있도록 하며 총 24자리로 산출된다. 이를 다시 4자리씩 나누어 16진수로 변환하고, 이때 마지막 4bit가 패리티 비트가 되어 앞의 5자리 숫자에 대한 유효성 검증에 사용될 수 있도록 한다. The cryptographic key generation unit 220 interprets the Align key in a clockwise direction from the upper left corner. The cryptographic key generation unit 220 calculates a total of 24 digits so that it can be read as 1 and 0 using a fine yellow dots. This is converted into a hexadecimal number by dividing it into 4 digits, and the last 4 bits become a parity bit so that it can be used for validity verification of the previous 5 digits.

상기 패리티는 2진수의 나열을 5자리씩 나눈 후 5자리 내에 존재하는 1의 개수가 짝수이면 0, 홀수이면 1로 표현한다. 이때, 패리티 비트 검증이 통과하지 못하면 바코드 인식 오류로 처리하며, 패리티 비트에 문제가 없으면 2차원 바코드 전체에 존재하는 3개의 Align Key를 좌측상단, 우측상단, 좌측하단의 순으로 패리티 비트를 제외한 후 연결하여 전체 암호화 Key로 해석될 수 있도록 한다. The parity is represented by 0 if the number of 1s present in 5 digits is an odd number, and by 1 when the number is odd. If there is no problem with the parity bit, the three alignment keys existing in the entire two-dimensional bar code are removed in the order of the upper left corner, the upper right corner, and the lower left corner in the order of excluding the parity bits So that it can be interpreted as a whole encryption key.

상기 해쉬값 추출단계(S130)는 상기 주요정보 추출단계(S110)와 암호화키 추출단계(S120)추출된 주요정보와 암호화키를 이용하여 해쉬값을 산출하는 것으로 해쉬값산출부(230)를 통해 산출될 수 있도록 한다. The hash value extraction step S 130 calculates a hash value using the key information and the encryption key extracted in the key information extraction step S 110 and the encryption key extraction step S 120, .

상기 위변조확인코드 추출단계(S140)는 촬영된 QR 코드의 하부에 위치한 서명을 통하여 위변조확인코드를 추출하는 것으로서, 이는 해쉬값을 말한다. The forgery verification code extraction step (S140) extracts a forgery verification code through a signature located under the photographed QR code, which is a hash value.

상기 위변조 확인 단계(S150)는 촬영된 QR 코드의 상측에서 추출된 해쉬값과 상기 위변조확인코드 추출단계(S140)에서 QR 코드의 하측에서 추출된 해쉬값을 비교함으로서 바코드의 무결성을 입증할 수 있도록 한다. The forgery falsification confirmation step S150 may verify the integrity of the barcode by comparing the hash value extracted from the upper side of the photographed QR code with the hash value extracted from the lower side of the QR code in the forgery verification code extraction step S140 do.

상기와 같이 오프라인에서도 2차원 바코드를 이용하여 문서의 위변조 여부를 확인할 수 있도록 하고, 문서의 주요 정보를 암호화 하는 키를 2차원 바코드 내에 은닉함으로써 육안으로 키를 식별하기 곤란하고, 은닉된 암호화 키는 사본화 과정에서 복사본에 전달되지 않거나, 일부 소실되어 원본이 아님을 증명하는데에 사용할 수 있으며, 별도 제작한 고가의 출력장비 등이 아닌, 시판 중인 레이저 토너 출력 방식의 사무자동화 기기만으로 시스템 구현이 가능한 효과를 지닌다. It is difficult to visually identify the key by hiding the key for encrypting the main information of the document in the two-dimensional barcode by making it possible to check whether the document is forged or falsified by using the two-dimensional barcode in the off- It can be used to prove that it is not transferred to the copy in the copying process, or it can be used to prove that the original is not lost. Also, it is possible to implement the system using only the office automation equipment of the commercially available laser toner output method Effect.

도 7는 본 발명의 일 실시예에 따른 블록체인을 사용한 온라인 무결성 확인 방법을 나타내는 순서도이다. 7 is a flowchart illustrating an online integrity checking method using a block chain according to an embodiment of the present invention.

도 7에 따른 블록 체인을 사용한 온라인 무결성 확인 방법은 주요정보에 대한 노드의 동기화단계(S210), 암호키 생성단계(S220), 해쉬값 검출단계(S230), 블록내의 해쉬값 검색단계(S240) 및 블록체인 무결성확인단계(S250)을 포함한다. The on-line integrity checking method using the block chain according to FIG. 7 includes a synchronization step S210 of the node, a cryptographic key generation step S220, a hash value detection step S230, a hash value search step S240, And block chain integrity verification step S250.

분산 공개 장부는 누구나 접근이 가능한 것으로 악의적 공격에 따른 분산 공개 장부의 보호를 위하여 똑같은 내용의 분산 공개 장부를 여러개의 다중 노드 시스템을 구성하여 저장한다. 블록은 생성되면 노드에 전송되며, 무결성 입증 시스템을 통하여 등록된 문서 정보는 노드에 등록된 마지막 유휴 블록에 전송되어 저장된다. Distributed public books are accessible to all. In order to protect distributed public books due to malicious attacks, multiple distributed public books with the same contents are constructed and stored in multiple multi-node systems. The block is transmitted to the node when it is created, and the document information registered through the integrity verification system is transmitted to the last idle block registered in the node and stored.

상기 노드의 동기화단계(S210)는 블록체인 전체 정보를 담고 있는 노드와 인접한 노드를 동기화하는 단계로서, 새로 생성된 블록 정보를 인근 노드에 전송하여 새로 생성된 블록이 추가되어도 모든 노드가 동일한 블록체인을 유지하도록 한다.The step of synchronizing the node (S210) is a step of synchronizing the node containing the entire information of the block chain with the adjacent node. Even if the newly generated block is added by transmitting the newly generated block information to the neighboring node, .

상기 암호키 생성단계(S220)는 문서의 2차원 바코드에서 추출한 주요정보를 이용하여 암호키를 생성하는 단계로서, 촬영된 2차원 바코드를 이용하여 추출된 주요정보와 Align key에 은닉된 암호화키에 대한 정보를 추출하여 암호키를 생성하는 단계이다. The cryptographic key generation step S220 is a step of generating a cryptographic key using the main information extracted from the two-dimensional barcode of the document. The cryptographic key generation step S220 is a step of generating the cryptographic key using the key information extracted using the captured two- And generates a cryptographic key.

암호화키를 추출하는 방법은 상기 주요정보수집부(210)에서 수집된 주요정보를 이용하여 생성된 암호키를 추출하는 것으로, 이는 암호키 생성부(220)를 통해 생성된 암호키를 포함한다. The method for extracting the encryption key includes extracting a cryptographic key generated using the main information collected by the main information collecting unit 210, and includes a cryptographic key generated through the cryptographic key generating unit 220. [

상기 암호키 생성부(220)는 Align key를 왼쪽 위 모서리부터 시계방향으로 해석하게 되는데, 미세 황색 망점을 이용하여 1과 0으로 읽을 수 있도록 하며 총 24자리로 산출된다. 이를 다시 4자리씩 나누어 16진수로 변환하고, 이때 마지막 4bit가 패리티 비트가 되어 앞의 5자리 숫자에 대한 유효성 검증에 사용될 수 있도록 한다. The cryptographic key generation unit 220 interprets the Align key in a clockwise direction from the upper left corner. The cryptographic key generation unit 220 calculates a total of 24 digits so that it can be read as 1 and 0 using a fine yellow dots. This is converted into a hexadecimal number by dividing it into 4 digits, and the last 4 bits become a parity bit so that it can be used for validity verification of the previous 5 digits.

상기 패리티는 2진수의 나열을 5자리씩 나눈 후 5자리 내에 존재하는 1의 개수가 짝수이면 0, 홀수이면 1로 표현한다. 이때, 패리티 비트 검증이 통과하지 못하면 바코드 인식 오류로 처리하며, 패리티 비트에 문제가 없으면 2차원 바코드 전체에 존재하는 3개의 Align Key를 좌측상단, 우측상단, 좌측하단의 순으로 패리티 비트를 제외한 후 연결하여 전체 암호화 Key로 해석될 수 있도록 한다. The parity is represented by 0 if the number of 1s present in 5 digits is an odd number, and by 1 when the number is odd. If there is no problem with the parity bit, the three alignment keys existing in the entire two-dimensional bar code are removed in the order of the upper left corner, the upper right corner, and the lower left corner in the order of excluding the parity bits So that it can be interpreted as a whole encryption key.

상기 해쉬값 검출단계(S230)는 암호키 생성단계(S220)에서 추출된 암호키를 이용하여 해쉬값을 검출하는 단계로서, 해쉬값산출부(230)를 통해 산출될 수 있도록 한다. The hash value detection step S230 is a step of detecting a hash value using the cryptographic key extracted in the cryptographic key generation step S220, and can be calculated through the hash value calculation unit 230. [

상기 블록내의 해쉬값 검색단계(S240)는 상기 해쉬값 검출단계(S230)에서 검출된 해쉬값이 블록내에 존재하는지의 여부를 판단하기 위하여 블록내 해쉬값을 검색하는 단계로서, 상기 해쉬값 검출단계(S230)에서 검출된 해쉬값을 기반으로 블록체인의 각 블록을 순회하여 블록 내 문서 정보 해쉬와 일치하는 블록을 찾는다. The step of retrieving the hash value in the block S240 is a step of retrieving an in-block hash value to determine whether the hash value detected in the hash value detection step S230 exists in the block, (Block S230), the blocks corresponding to the in-block document information hash are searched for.

상기 블록체인 무결성확인단계(S250)는 상기 블록내의 해쉬값 검색단계(S240)에서 일체한 블록이 검색되고 체인이 깨진 상태인지 여부를 판단하여 문서의 무결성이 입증되었다고 판단하는 단계이다. The block chain integrity checking step S250 is a step of determining whether the integrity of the document has been verified by determining whether an integrated block is searched and a chain is broken in the hash value search step S240 in the block.

이를 다시 설명하면, 블록헤더를 이용하여 블록해쉬를 산출하며, 상기 블록해쉬는 최초 블록(Genesis Block)을 제외한 모든 블록에 앞 블록의 블록 해쉬 값을 담기 때문에 연결된 형태의 체인으로 생각할 수 있다.In other words, the block hash is calculated using the block header. The block hash can be regarded as a connected chain because all the blocks excluding the first block include the block hash value of the previous block.

이때, 체인의 특정 블록 내용에 변형이 가해지면, 변형된 블록의 블록 해쉬가 달라지고 이를 담고 있는 다음 블록의 앞블록 블록 해쉬 값과 일치되지 않기 때문에 체인이 깨지게 된다At this time, if deformation is applied to the contents of a specific block of the chain, the block hash of the modified block is changed, and the chain is broken because it does not match the hash value of the preceding block of the next block

따라서, 악의적인 목적을 가진 누군가가 중간의 문서 정보를 변형하기 위해서는 뒷부분에 연결되어 있는 모든 블록의 블록 해쉬 값을 변경하여야 한다. 뒷부분에 연결되어 있는 모든 블록의 해쉬값을 구하기 위해서는 블록 생성 난이도보다 작은 해쉬 값을 다시 구해야 하고 이는 난이도에 따라 Nonce를 증가시키며 조건에 맞는 해쉬값이 도출되기까지 많은 연산과 이에 따른 계산 시간이 소요되고, 블록은 그 순간에도 생성되어 추가되고 있기 때문에, 블록체인이 충분히 길다면 이를 모두 변경하는 것은 불가능에 가깝다고 할 수 있어, 블록체인의 무결성을 입증할 수 있도록 한다. Therefore, in order for a malicious person to modify the intermediate document information, the block hash value of all blocks connected to the back side must be changed. To obtain the hash value of all blocks connected to the backward part, the hash value smaller than the block generation difficulty needs to be obtained again. This increases the nonce according to the degree of difficulty. It takes many operations and calculation time to derive the hash value satisfying the condition Since a block is created and added at that moment, if the block chain is sufficiently long, it is almost impossible to change all of the blocks so that the integrity of the block chain can be verified.

본 발명은 인터넷 망의 연결 없이 제공되는 소프트웨어 및 앱을 통하여 오프라인에서 수행될 수 있다는 장점이 있고, 온라인에서는 부가적으로 삽입된 무결성 입증 정보를 블록체인으로 구성하여 다중 노드에 분산 공개 장부의 형태로 중복 저장한 후 시스템을 이용하는 모든 사용자에게 공개하여 다수에 의한 무결성 입증 정보의 신뢰성 향상을 도모할 수 있도록 한다. The present invention is advantageous in that it can be performed offline by means of software and apps provided without connection to the Internet network. On the other hand, on-line integrated integrity verification information is formed into a block chain, And it is disclosed to all users using the system after redundant storage so that reliability of the integrity authentication information by a plurality can be improved.

이상 본 발명의 바람직한 실시예를 참조하여 설명하였지만, 해당 기술 분야의 숙련된 당업자는 하기의 특허 청구의 범위에 기재된 본 발명의 사상 및 영역으로부터 벗어나지 않는 범위 내에서 본 발명을 다양하게 수정 및 변경시킬 수 있음을 이해할 수 있을 것이다.It will be apparent to those skilled in the art that various modifications and variations can be made in the present invention without departing from the spirit or scope of the invention as defined in the appended claims. It can be understood that it is possible.

100 : 노드
200 : 검증서버
210 : 주요정보수집부
220 : 암호키 생성부
230 : 해쉬값산출부
300 : 블록체인
100: node
200: verification server
210: Main information collecting section
220: Cryptographic key generation unit
230: Hash value calculation unit
300: Block Chain

Claims (13)

2차원 바코드내에 은닉한 문서의 주요 정보 및 암호화키를 이용하여 해쉬값을 추출하고, 추출된 해쉬값을 2차원 바코드 하단부의 해쉬값과 비교하거나, 블록체인내에 존재하는 해쉬값을 비교하여 문서의 무결성을 입증할 수 있도록 하며;
상기 문서 및 유가증권의 무결성 데이터 관리 방법은 오프라인과 온라인을 통하여 무결성을 입증할 수 있도록 하며;
상기 오프라인을 이용한 무결성 데이터 관리 방법은 진위 여부가 필요한 원본 문서의 2차원 코드 부분의 상측을 해석하여 주요정보를 추출하는 주요정보 추출단계(S110)와;
상기 주요정보 추출단계(S110)에서 추출된 주요정보를 이용하여 Align key에 은닉된 암호화키에 대한 정보를 추출하는 암호화키 추출단계(S120)와
상기 주요정보 추출단계(S110)와 암호화키 추출단계(S120)추출된 주요정보와 암호화키를 이용하여 해쉬값을 산출하는 해쉬값 추출단계(S130)와;
촬영된 2차원 코드의 하부에 위치한 서명을 통하여 위변조확인코드를 추출하는 위변조확인코드 추출단계(S140) 및;
상기 해쉬값 추출단계(S130)에서 추출된 해쉬값과 위변조확인코드 추출단계(S140)에서 추출된 해쉬값을 비교하여 바코드의 무결성을 입증 및 위변조 확인 단계(S150)를 포함하는 것을 특징으로 하는 문서 및 유가증권의 무결성 데이터 관리 방법.
The hash value is extracted by using the key information and encryption key of the document hidden in the 2D barcode, the extracted hash value is compared with the hash value at the lower end of the 2D barcode, or the hash value existing in the block chain is compared, To demonstrate integrity;
The integrity and data management methods of the documents and securities enable integrity to be demonstrated both offline and online;
The method for managing integrity data using off-line includes: extracting main information by analyzing an upper side of a two-dimensional code portion of an original document requiring truth or authenticity (S110);
An encryption key extracting step (S120) of extracting information on the encryption key hidden in the Align key by using the key information extracted in the key information extracting step (S110)
A hash value extraction step (S130) of calculating the hash value using the extracted key information and the encryption key in the key information extraction step (S110) and the encryption key extraction step (S120);
A forgery verification code extraction step (S140) of extracting a forgery verification code through a signature located under the photographed two-dimensional code;
And a verification step (S150) of verifying integrity and forgery of the barcode by comparing the hash value extracted in the hash value extraction step (S130) with the hash value extracted in the forgery verification code extraction step (S140) And integrity data management of securities.
삭제delete 삭제delete 제1항에 있어서,
상기 주요정보 추출단계(S110)에서 추출된 주요정보는 2차원 코드의 상측에 평문의 형태로 형성하며, 상기 주요 정보는 유가정보의 경우 일련번호, 금액, 발행기관, 발행지점을 포함하는 것을 특징으로 하는 문서 및 유가증권의 무결성 데이터 관리 방법.
The method according to claim 1,
The main information extracted in the main information extracting step (S110) is formed in the form of a plain text on the upper side of the two-dimensional code, and the main information includes serial number, amount, issuing authority and issuing point in the case of price information And how to manage the integrity data of the securities.
제1항에 있어서,
상기 암호화키 추출단계(S120)는 2차원 바코드의 모서리에 형성된 Align key를 왼쪽 위 모서리부터 시계방향으로 해석하며, 상기 Align key는 미세 황색 망점으로 명암을 달리하여 0과1의 2진수로 표현하여 총 24자리로 산출되는 것을 특징으로 하는 것을 특징으로 하는 문서 및 유가증권의 무결성 데이터 관리 방법.
The method according to claim 1,
In the encryption key extracting step (S120), the Align key formed at the corner of the two-dimensional bar code is interpreted in a clockwise direction from the upper left corner. The Align key is represented by binary numbers of 0 and 1 And calculating a total of 24 digits of the integrity data of the document and the security data.
제5항에 있어서,
상기 Align key는 4자리씩 나누어 16진수로 변환하고, 마지막 4bit가 패리티 비트가 되어 앞의 5자리 숫자에 대한 유효성 검증에 사용될 수 있도록 하는 것을 특징으로 하는 문서 및 유가증권의 무결성 데이터 관리 방법.
6. The method of claim 5,
Wherein the Align key is divided into four hexadecimal digits and the last four bits are parity bits so that the Align key can be used for validity verification of the previous five digits.
제1항에 있어서,
상기 위변조 확인 단계(S150)는 촬영된 2차원 코드의 상측에서 추출된 주요정보와 암호키를 통해 산출된 해쉬값과 2차원 코드의 하측에서 추출된 해쉬값을 비교함으로서 데이터의 무결성을 입증하는 것을 특징으로 하는 문서 및 유가증권의 무결성 데이터 관리 방법.
The method according to claim 1,
The forgery falsification confirmation step (S150) is to verify the integrity of the data by comparing the key information extracted from the upper side of the photographed two-dimensional code and the hash value calculated through the encryption key with the hash value extracted from the lower side of the two- Characterized by the integrity and data management of documents and securities.
2차원 바코드내에 은닉한 문서의 주요 정보 및 암호화키를 이용하여 해쉬값을 추출하고, 추출된 해쉬값을 2차원 바코드 하단부의 해쉬값과 비교하거나, 블록체인내에 존재하는 해쉬값을 비교하여 문서의 무결성을 입증할 수 있도록 하며;
상기 문서 및 유가증권의 무결성 데이터 관리 방법은 오프라인과 온라인을 통하여 무결성을 입증할 수 있도록 하며;
상기 온라인을 이용한 무결성 데이터 관리 방법은 다수의 노드에게 제공된 블록체인을 이용하여 데이터의 무결성을 입증하는 것으로서,
블록체인 전체 정보를 담고 있는 노드와 인접한 노드를 동기화하는 노드의 동기화단계(S210)와;
상기 노드에서 입력된 2차원 바코드에 대한 주요정보를 이용하여 암호키를 생성하는 암호키 생성단계(S220)와;
상기 암호키 생성단계(S220)에서 추출된 암호키를 이용하여 해쉬값을 검출하는 해쉬값 검출단계(S230)와;
상기 해쉬값 검출단계(S230)에서 검출된 해쉬값이 블록내에 존재하는지의 여부를 판단하기 위하여 블록내 해쉬값을 검색하는 블록내의 해쉬값과 검색단계(S240) 및;
상기 블록내의 해쉬값 검색단계(S240)에서 일체한 블록이 검색되고 체인이 깨진 상태인지 여부를 판단하여 문서의 무결성이 입증되었다고 판단하는 블록체인 무결성확인단계(S250)를 포함하는 것을 특징으로 하는 문서 및 유가증권의 무결성 데이터 관리 방법.
The hash value is extracted by using the key information and encryption key of the document hidden in the 2D barcode, the extracted hash value is compared with the hash value at the lower end of the 2D barcode, or the hash value existing in the block chain is compared, To demonstrate integrity;
The integrity and data management methods of the documents and securities enable integrity to be demonstrated both offline and online;
The on-line integrity data management method verifies the integrity of data using a block chain provided to a plurality of nodes,
A step (S210) of synchronizing a node containing a whole block chain with a node synchronizing adjacent nodes;
A cryptographic key generation step (S220) of generating a cryptographic key using key information about a two-dimensional barcode inputted from the node;
A hash value detection step (S230) of detecting a hash value using the cryptographic key extracted in the cryptographic key generation step (S220);
A hash value in a block for searching an intra-block hash value to search for whether the hash value detected in the hash value detection step S230 exists in the block;
And a block chain integrity check step S250 for determining whether the integrity of the document is verified by determining whether a block is searched and a chain is broken in the hash value search step S240 in the block And integrity data management of securities.
제8항에 있어서,
상기 노드는 새로 생성된 블록 정보를 인근 노드에 전송하여 새로 생성된 블록이 추가되어도 모든 노드가 동일한 블록체인을 유지할 수 있도록 하는 것을 특징으로 하는 문서 및 유가증권의 무결성 데이터 관리 방법.
9. The method of claim 8,
Wherein the node transmits the newly generated block information to a neighboring node so that all nodes can maintain the same block chain even if a newly generated block is added.
제8항에 있어서,
상기 암호키 생성단계(S220)에서 암호키는 2차원 바코드의 모서리에 형성된 Align key를 왼쪽 위 모서리부터 시계방향으로 해석하며, 상기 Align key는 미세 황색 망점으로 명암을 달리하여 0과1의 2진수로 표현하여 총 24자리로 산출되는 것을 특징으로 하는 것을 특징으로 하는 문서 및 유가증권의 무결성 데이터 관리 방법.
9. The method of claim 8,
In the encryption key generation step (S220), the encryption key interprets an Align key formed at the corner of the two-dimensional bar code in a clockwise direction from the upper left corner, and the Align key is a binary code of 0 and 1 And calculating a total of 24 digits of the integrity data of the document and the security.
제10항에 있어서,
상기 Align key는 4자리씩 나누어 16진수로 변환하고, 마지막 4bit가 패리티 비트가 되어 앞의 5자리 숫자에 대한 유효성 검증에 사용될 수 있도록 하는 것을 특징으로 하는 문서 및 유가증권의 무결성 데이터 관리 방법.
11. The method of claim 10,
Wherein the Align key is divided into four hexadecimal digits and the last four bits are parity bits so that the Align key can be used for validity verification of the previous five digits.
제8항에 있어서,
상기 블록내의 해쉬값 검색단계(S240)에서 상기 블록은 여러 사용자의 문서 주요 정보에 대한 해쉬 값이 저장될 수 있도록 하는 것을 특징으로 하는 문서 및 유가증권의 무결성 데이터 관리 방법.
9. The method of claim 8,
Wherein the hash value of the document key information of the plurality of users is stored in the hash value search step of the block (S240).
제8항에 있어서,
상기 블록체인 무결성확인단계(S250)는 블록헤더에서 산출된 블록해쉬를 이용하여 블록체인의 무결성을 확인하는 것으로서,
상기 블록해쉬는 최초 블록(Genesis Block)을 제외한 모든 블록에 앞 블록의 블록 해쉬 값을 담을 수 있도록 하고, 상기 블록에 변형이 발생되면 블록 해쉬가 달라지며 이는 앞블록 블록해쉬와 뒷블록 블록해쉬가 서로 일치하지 않으므로 블록의 무결성을 확인할 수 있도록 하는 것을 특징으로 하는 문서 및 유가증권의 무결성 데이터 관리 방법.
9. The method of claim 8,
In the block chain integrity check step S250, the integrity of the block chain is verified using the block hash calculated in the block header,
The block hash may contain a block hash value of a previous block in all blocks except for a genesis block, and when a block is deformed, a block hash is changed. That is, a previous block block hash and a back block block hash And the integrity of the block can be verified because they do not match with each other.
KR1020180038932A 2018-04-04 2018-04-04 A Managing Method Of The Integrity Data of Documents Or Securities KR101934444B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020180038932A KR101934444B1 (en) 2018-04-04 2018-04-04 A Managing Method Of The Integrity Data of Documents Or Securities

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020180038932A KR101934444B1 (en) 2018-04-04 2018-04-04 A Managing Method Of The Integrity Data of Documents Or Securities

Publications (1)

Publication Number Publication Date
KR101934444B1 true KR101934444B1 (en) 2019-01-02

Family

ID=65021426

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020180038932A KR101934444B1 (en) 2018-04-04 2018-04-04 A Managing Method Of The Integrity Data of Documents Or Securities

Country Status (1)

Country Link
KR (1) KR101934444B1 (en)

Cited By (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102046059B1 (en) * 2019-03-20 2019-11-18 엘에스웨어(주) Apparatus and method changing information of block chain
KR102088346B1 (en) * 2019-09-24 2020-03-12 엘에스웨어(주) Apparatus and method changing information of block chain linked to external storage
KR20200101504A (en) * 2019-01-29 2020-08-28 주식회사 크로스앵글 Method for providing information on blockchain and device for performing the same
KR20210002978A (en) * 2019-07-01 2021-01-11 건국대학교 산학협력단 Method for storing blockchain based file modification evidence and appratus using the same
KR20210058595A (en) * 2019-11-14 2021-05-24 한국조폐공사 Method for enhancing security of qr code using proof-of-work, user terminal and affiliate terminal using the same
CN113160888A (en) * 2020-01-07 2021-07-23 中芯未来(北京)科技有限公司 DNA synthetic sequence supervision method based on block chain
KR102404693B1 (en) * 2021-10-07 2022-06-07 주식회사 대신스페샬 method of preventing the counterfeiting securities using adhesive tape
CN115150150A (en) * 2022-06-28 2022-10-04 北京送好运信息技术有限公司 Information recording method based on block chain technology
US20230037567A1 (en) * 2021-08-05 2023-02-09 Bank Of America Corporation Access control for updating documents in a digital document repository
CN117852103A (en) * 2024-03-07 2024-04-09 南昌大学 Trusted data tracing method and system based on blockchain trust root concept
CN117852103B (en) * 2024-03-07 2024-05-14 南昌大学 Trusted data tracing method and system based on blockchain trust root concept

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101346924B1 (en) 2010-10-20 2014-01-06 김장익 Encryption and decoding method of two dimensional code pattern, distribution management method, and readign equipment by using the same
KR101710032B1 (en) * 2016-10-13 2017-02-24 주식회사 마크애니 Apparatus and system for preventing product falsification based on electronic documents content and method thereof
KR101727585B1 (en) 2015-12-17 2017-04-18 대한민국 A Document Having Printed Means Of Preventing From Forging/Manipulating
KR101784219B1 (en) * 2016-06-15 2017-10-12 주식회사 코인플러그 Financial institution document verification system that is based on the block chain
JP2017208032A (en) 2016-05-20 2017-11-24 株式会社テララコード研究所 Authenticity determination method

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101346924B1 (en) 2010-10-20 2014-01-06 김장익 Encryption and decoding method of two dimensional code pattern, distribution management method, and readign equipment by using the same
KR101727585B1 (en) 2015-12-17 2017-04-18 대한민국 A Document Having Printed Means Of Preventing From Forging/Manipulating
JP2017208032A (en) 2016-05-20 2017-11-24 株式会社テララコード研究所 Authenticity determination method
KR101784219B1 (en) * 2016-06-15 2017-10-12 주식회사 코인플러그 Financial institution document verification system that is based on the block chain
KR101710032B1 (en) * 2016-10-13 2017-02-24 주식회사 마크애니 Apparatus and system for preventing product falsification based on electronic documents content and method thereof

Cited By (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20200101504A (en) * 2019-01-29 2020-08-28 주식회사 크로스앵글 Method for providing information on blockchain and device for performing the same
KR102170454B1 (en) 2019-01-29 2020-10-28 주식회사 크로스앵글 Method for providing information on blockchain and device for performing the same
KR102046059B1 (en) * 2019-03-20 2019-11-18 엘에스웨어(주) Apparatus and method changing information of block chain
KR20210002978A (en) * 2019-07-01 2021-01-11 건국대학교 산학협력단 Method for storing blockchain based file modification evidence and appratus using the same
KR102230764B1 (en) 2019-07-01 2021-03-19 건국대학교 산학협력단 Method for storing blockchain based file modification evidence and appratus using the same
KR102088346B1 (en) * 2019-09-24 2020-03-12 엘에스웨어(주) Apparatus and method changing information of block chain linked to external storage
KR102477213B1 (en) * 2019-11-14 2022-12-13 한국조폐공사 Method for enhancing security of qr code using proof-of-work, user terminal and affiliate terminal using the same
KR20210058595A (en) * 2019-11-14 2021-05-24 한국조폐공사 Method for enhancing security of qr code using proof-of-work, user terminal and affiliate terminal using the same
CN113160888B (en) * 2020-01-07 2024-01-19 中芯未来(北京)科技有限公司 DNA synthesis sequence supervision method based on block chain
CN113160888A (en) * 2020-01-07 2021-07-23 中芯未来(北京)科技有限公司 DNA synthetic sequence supervision method based on block chain
US20230037567A1 (en) * 2021-08-05 2023-02-09 Bank Of America Corporation Access control for updating documents in a digital document repository
US11880479B2 (en) * 2021-08-05 2024-01-23 Bank Of America Corporation Access control for updating documents in a digital document repository
KR102404693B1 (en) * 2021-10-07 2022-06-07 주식회사 대신스페샬 method of preventing the counterfeiting securities using adhesive tape
CN115150150A (en) * 2022-06-28 2022-10-04 北京送好运信息技术有限公司 Information recording method based on block chain technology
CN115150150B (en) * 2022-06-28 2024-01-26 北京送好运信息技术有限公司 Information recording method based on block chain technology
CN117852103A (en) * 2024-03-07 2024-04-09 南昌大学 Trusted data tracing method and system based on blockchain trust root concept
CN117852103B (en) * 2024-03-07 2024-05-14 南昌大学 Trusted data tracing method and system based on blockchain trust root concept

Similar Documents

Publication Publication Date Title
KR101934444B1 (en) A Managing Method Of The Integrity Data of Documents Or Securities
Bhargav-Spantzel et al. Privacy preserving multi-factor authentication with biometrics
Aydar et al. Private key encryption and recovery in blockchain
CN101174949B (en) Biological authentication method and system
Joshi et al. Security vulnerabilities against fingerprint biometric system
CN111612966B (en) Bill certificate anti-counterfeiting detection method and device based on image recognition
KR102332226B1 (en) Blockchain network system being capable of verifying a blockchain ledger and method for verifying a blockchain ledger
KR20020047131A (en) Method of data protection
JP5676592B2 (en) Robust biometric feature extraction with and without reference points
CN111612963B (en) Bill voucher anti-counterfeiting detection method and device based on intelligent equipment
CN101542971A (en) Fuzzy biometrics based signatures
ES2910352T3 (en) Strong authentication procedure of an individual
Mthethwa et al. Proposing a blockchain-based solution to verify the integrity of hardcopy documents
CN105117920B (en) A kind of method for anti-counterfeit of Pictures Electronics voucher and device
Husain et al. Printed document integrity verification using barcode
Elgohary et al. Improving uncertainty in chain of custody for image forensics investigation applications
Cavoukian et al. Keynote paper: Biometric encryption: Technology for strong authentication, security and privacy
Mark et al. A secured online voting system by using blockchain as the medium
US20230259901A1 (en) Issuing entity and method for issuing electronic coin data sets, and payment system
CN111612964B (en) Bill certificate anti-counterfeiting detection method and device based on block chain
Frassen et al. Fuzzy vault for 3D face recognition systems
Smejkal et al. Strong authentication using dynamic biometric signature
Joshi Session passwords using grids and colors for web applications and PDA
Bayly et al. Fractional biometrics: safeguarding privacy in biometric applications
Pun et al. Review of the electronic transactions ordinance: can the personal identification number replace the digital signature

Legal Events

Date Code Title Description
GRNT Written decision to grant