KR102002488B1 - Document Acquisition System Using Off-Chain Distributed Storage Based on Block chain - Google Patents

Document Acquisition System Using Off-Chain Distributed Storage Based on Block chain Download PDF

Info

Publication number
KR102002488B1
KR102002488B1 KR1020190038651A KR20190038651A KR102002488B1 KR 102002488 B1 KR102002488 B1 KR 102002488B1 KR 1020190038651 A KR1020190038651 A KR 1020190038651A KR 20190038651 A KR20190038651 A KR 20190038651A KR 102002488 B1 KR102002488 B1 KR 102002488B1
Authority
KR
South Korea
Prior art keywords
electronic document
document
hash value
electronic
unit
Prior art date
Application number
KR1020190038651A
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 KR1020190038651A priority Critical patent/KR102002488B1/en
Application granted granted Critical
Publication of KR102002488B1 publication Critical patent/KR102002488B1/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/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
    • 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/64Protecting data integrity, e.g. using checksums, certificates or signatures
    • 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
    • G06Q10/00Administration; Management
    • G06Q10/10Office automation; Time management
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1097Protocols in which an application is distributed across nodes in the network for distributed storage of data in networks, e.g. transport arrangements for network file system [NFS], storage area networks [SAN] or network attached storage [NAS]
    • 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
    • H04L2209/38
    • 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/50Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols using hash chains, e.g. blockchains or hash trees

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • General Health & Medical Sciences (AREA)
  • Business, Economics & Management (AREA)
  • Software Systems (AREA)
  • Computer Hardware Design (AREA)
  • General Engineering & Computer Science (AREA)
  • Bioethics (AREA)
  • Health & Medical Sciences (AREA)
  • Entrepreneurship & Innovation (AREA)
  • Human Resources & Organizations (AREA)
  • Strategic Management (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Data Mining & Analysis (AREA)
  • General Business, Economics & Management (AREA)
  • Tourism & Hospitality (AREA)
  • Quality & Reliability (AREA)
  • Operations Research (AREA)
  • Marketing (AREA)
  • Economics (AREA)
  • Power Engineering (AREA)
  • Databases & Information Systems (AREA)
  • Storage Device Security (AREA)

Abstract

According to an embodiment of the present invention, a document deposit system using an off-chain distributed storage based on a block chain comprises: an electronic document conversion unit to encode or decode file name, issue time, and issuer information of a first electronic document with a hash value encoded with a public key of a user if original registration of the first electronic document is requested from a web application installed in a user terminal; an electronic suitability determining unit to analyze similarity of a noun sequence between the first electronic document and previously registered electronic documents to determine document registration suitability; a transaction registration unit to register a hash value of the first electronic document and a public key used in the hash value in a block chain node if document registration suitability of the first electronic document is determined from the transaction registration unit; an original verification unit to convert file name, issue time, and issuer information of a third electronic document to be verified into a hash value encoded with the public key of the user if original verification between the third electronic document provided from the web application installed in the user terminal and the first electronic document is requested, then verify identicalness between the hash value of the third electronic document and the hash value of the first electronic document registered in the block chain node, and then track a time at which the first electronic document is deposited to issue a deposit certificate verifying an order relationship to the third electronic document; and a distributed storage to distribute and store the hash value encoding the file name, issue time, and issuer information of the first electronic document converted by the electronic document conversion unit with the public key of the user.

Description

블록체인 기반 오프 체인 분산형 저장소를 활용한 문서 임치 시스템{Document Acquisition System Using Off-Chain Distributed Storage Based on Block chain}{Document Acquisition System Using Off-Chain Distributed Storage Based on Block Chain}

본 발명은 블록체인 기반 오프 체인 분산형 저장소를 활용한 문서 임치 시스템 및 방법에 관한 것이다.The present invention relates to a document imposition system and method utilizing block-chain based off-chain distributed repositories.

중소벤처기업부의 '중소기업 기술보호 실태 조사' 등을 분석해본 결과, 국내 기업의 대다수를 차지하고 있는 중소기업은 사이버 공격에 매우 취약하여 해킹 및 기술 유출 등으로 인한 최근 3년간의 피해액이 3천 21억원에 달한다는 결과가 있다.As a result of analyzing the 'Actual Survey on the Protection of Small and Medium Businesses' by the Ministry of Small and Medium Business Administration, SMEs, which account for the majority of domestic companies, are very vulnerable to cyber attacks, and the damages of the last three years due to hacking and technology leakage amounted to 31.2 billion won There is a result of reaching.

이를 해결하기 위해 기술자료 임치센터의 임치제도, 특허청의 원본증명서비스 등 다양한 서비스가 있지만 이 또한 해킹 및 사이버 공격에 취약하다는 문제점이 있다. In order to solve this problem, there are a variety of services such as the deposit system of the technology data center and the original proof service of the Patent Office, but this is also vulnerable to hacking and cyber attacks.

뿐만 아니라 임치센터의 경우 중소기업의 기술자료 및 전자문서의 원본을 임치센터에 제공해야 한다는 점에서 중소기업의 기술제공에 대한 부담이 따르고, 원본증명서비스의 경우 원본은 따로 보관해주지 않고 전자문서에 관한 해시 값만 보관해준다는 장점이 있지만 원본의 분실 등에는 책임을 져주지 않는다는 단점이 있다. In addition, in the case of the IMC, the technical center of SMEs and the original of the electronic document should be provided to the IMC, so that the burden on the technology provision of SMEs is imposed. In the case of the original proof service, It has the advantage of keeping only the value, but it has the disadvantage of not responsible for the loss of the original.

또한 기술, 전자문서 유출 등 피해가 발생할 경우 원본소지자가 가지고 있는 자료가 원본임을 증명해야 하는 '원고 원본증명 책임주의'에 대한 부담을 위의 서비스를 통해 해결할 수 있으나 그에 따라 임치센터와 원본 증명 센터의 문서 위변조 방지 및 무결성, 보안성 증명에 대한 연구가 필요하다.In addition, it is possible to solve the burden of 'original document proof of responsibility' which should prove that the original document holder has the original document in case of damage such as technology, leakage of electronic document, etc., through the above service, And to prove integrity and security.

등록특허공보 제10-1796690호Patent Registration No. 10-1796690

본 발명이 해결하고자 하는 과제는 블록체인 기반 오프 체인 분산형 저장소를 활용한 문서 임치 시스템을 구축하여 기존의 임치센터와 원본증명서비스의 보안성을 극대화하고 단점을 보완하는데 그 목적이 있다. A problem to be solved by the present invention is to construct a document imposition system that utilizes a block-based off-chain distributed storage, thereby maximizing the security of the existing imitation center and the original proof service and compensating for the disadvantages.

본 발명은 문서 파일의 보관을 블록체인 기반 오프 체인 분산형 저장소를 활용하여 블록체인의 단점을 보완하는데 그 목적이 있다.An object of the present invention is to compensate for the disadvantages of a block chain by utilizing a distributed storage that offsets a document file based on a block chain.

본 발명의 목적은 문서에 양방향 암호화를 적용하여 블록체인 기반 오프 체인 분산형 저장소에 저장되는 문서의 노출을 방지하는데 그 목적이 있다 It is an object of the present invention to prevent the exposure of a document stored in a distributed storage that is off-block-based off-axis by applying bidirectional encryption to the document

상기 과제를 해결하기 위한 본 발명의 일 실시예에 따른 블록체인 기반 오프 체인 분산형 저장소를 활용한 문서 임치 시스템은 사용자 단말에 설치된 웹 어플리케이션으로부터 제공된 제1 전자문서의 원본등록이 요청되면, 상기 제1 전자문서의 파일이름, 발급시기, 발급인 정보를 사용자의 공개 키로 암호화한 해시값으로 암호화하는 전자문서 변환부; 상기 제1 전자문서와 기 등록된 전자문서들 간의 명사 배열의 유사도를 분석하여 문서등록 적합도를 판단하는 전자문서 유사도 판단부; 상기 전자문서 유사도 판단부로부터 상기 제1 전자문서의 문서등록 적합이 판정되면, 상기 제1 전자문서의 해시 값 및 상기 해시 값에 사용된 공개키를 블록 체인 노드에 등록하는 트랜잭션 등록부; 상기 사용자 단말에 설치된 웹 어플리케이션으로부터 제공된 검증하고자 하는 제3 전자문서와 상기 제1 전자문서 간의 원본증명이 요청되면, 상기 제3 전자문서의 파일이름, 발급시기, 발급인 정보를 사용자의 공개 키로 암호화한 해시값으로 변환한 후, 상기 제3 전자문서의 해시값과 상기 블록 체인 노드에 등록된 제1 전자문서의 해시값 간의 동일성을 검증한 후, 제1 전자문서가 임치된 시간을 추적해 제3 전자문서와의 선후관계를 증명한 임치 증명서를 발급하는 원본증명부; 상기 전자문서 변환부에서 변환된 상기 제1 전자문서의 파일이름, 발급시기, 발급인 정보를 사용자의 공개 키로 암호화한 해시값을 분산저장하는 오프 체인 분산형 저장소; 및 하이퍼레저 패브릭 블록체인 네트워크에 피어(peer)로서 참여하여 트랜잭션을 생성하고, 하이퍼레저 익스플로러와 연동하여 상기 분산형 저장소 내의 블록체인 노드들 간의 네트워크를 모니터링하고, 암호화된 전자문서 파일을 보관하며, 전자문서가 훼손될 경우, 해당 전자문서가 저장된 블록체인 노드로부터 전자문서를 제공받아 복구하는 공증센터 노드를 포함하고, 상기 전자문서 유사도 판단부는 형태소 분석 라이브러리를 제공하고, 형태소 분석 라이브러리의 nouns() 함수를 통해 제1 전자문서의 파일이름 및 파일내용 중 명사만을 추출하여 문자열에서 분리시키는 토큰화부; 상기 토큰화부에서 추출된 명사들을 열 또는 행으로 순차 배열하는 배열부; 상기 배열부에서 배열된 문자 열 또는 행의 배열을 fit_transform() 함수를 이용하여 스파스 행렬(Sparse matrix)로 변환 및 toarry() 함수로 스파스 행렬(sparse matrix)을 상기 배열부의 배열 형태로 변환시키는 매트릭스 변환부; 및 TF-IDF(Term Frequency-Inverse Document Frequency) 알고리즘인 식 1을 이용하여 기 등록된 전자문서들과 제1 전자문서들 간에 유사한 단어들의 불린 빈도를 분석하는 유사도 분석부를 포함하고, 상기 유사도 분석부는 기 등록된 전자문서들과 제1 전자문서들 간에 유사한 단어들의 불린 빈도를 산출한 후, 산출된 불린 빈도를 이용하여 문서들 간의 전체 유사도를 분석하고, 상기 전체 유사도가 기 설정값 이상이면 유사하다고 판단한 판단신호를 제공하는 것을 특징으로 한다.
[식 1]
tf(t,d) = (단어 t가 포함된 문서(d)의 수) / (전체문서의 수)
According to an aspect of the present invention, there is provided a document placement system using a distributed store that is off-chain based on a block chain. When a document registration of a first electronic document provided from a web application installed in a user terminal is requested, An electronic document conversion unit for encrypting the file name of the electronic document, the issuing time, and the issuer information by using a hash value encrypted by the user's public key; An electronic document similarity degree judging unit for analyzing a similarity degree of a noun arrangement between the first electronic document and the previously registered electronic documents to determine a document registration suitability; A transaction registration unit for registering the hash value of the first electronic document and the public key used for the hash value in the block chain node when the electronic document similarity degree judging unit judges that the first electronic document is suitable for document registration; When the third electronic document to be verified and the first electronic document to be verified provided from the web application installed in the user terminal are requested, the file name, the issuing time, and the issuer information of the third electronic document are encrypted with the public key of the user The hash value of the first electronic document registered in the block chain node is verified after the hash value of the third electronic document is converted into a hash value, 3 An original proof part that issues an immigration certificate proving the subsequent relationship with the electronic document; An off-chained distributed storage for storing the hash value obtained by encrypting the file name, the issuing time, and the issuer information of the first electronic document converted by the electronic document conversion unit with the public key of the user; And as a peer to the hyperreflective fabric block chain network to create a transaction, to monitor the network between block chain nodes in the distributed repository in conjunction with a hypervisor, to store the encrypted electronic document file, And a notarization center node for receiving and recovering the electronic document from the block chain node where the electronic document is damaged if the electronic document is damaged, wherein the electronic document similarity determining section provides the morpheme analysis library, A tokenizing unit for extracting only a noun from among a file name and a file content of the first electronic document through a function and separating the noun from the character string; An arrangement unit for sequentially arranging the nouns extracted from the tokenizing unit in columns or rows; A character string or an array of rows arranged in the array unit is converted into a sparse matrix using a fit_transform () function and a sparse matrix is converted into an array of the array unit using a toarry () ; And a similarity analyzer for analyzing the frequency of similar words between the first electronic documents and the first electronic documents using Equation 1, which is a TF-IDF (Term Frequency-Inverse Document Frequency) algorithm, The overall similarity between documents is analyzed using the calculated frequency of borrowing after calculating the frequency of similar words between previously registered electronic documents and first electronic documents and if the overall similarity is equal to or greater than a predetermined value And provides the determined judgment signal.
[Formula 1]
tf (t, d) = (number of documents (d) containing the word t) / (number of total documents)

삭제delete

일 실시예에서, 상기 전자문서 유사도 판단부는 형태소 분석 라이브러리의 nouns() 함수를 이용하여 상기 제1 전자문서 내의 문자들 중 명사를 추출 및 배열하고, 상기 배열을 fit_transform() 함수를 이용하여 매트릭스로 변환하는 것을 특징으로 한다.In one embodiment, the electronic document similarity determining unit extracts and arranges a noun among the characters in the first electronic document using the nouns () function of the morphological analysis library, and arranges the arrangement in a matrix using the fit_transform () And converts the data.

삭제delete

삭제delete

삭제delete

삭제delete

삭제delete

삭제delete

본 발명의 일 실시예에 따른 블록체인 기반 오프 체인 분산형 저장소를 활용한 문서 임치 시스템을 이용하면 영업비밀 분쟁이 발생하여 침해 사실을 입증하기 위한 증거 자료 제출이 필요할 때 전자문서의 해시값을 비교하여 원본 검증 및 문서가 임치된 시간을 통해 선후 관계를 증명함으로써 영업비밀 보유 입증 대비책을 제공할 수 있다는 이점이 있다.The use of a document imposition system utilizing a distributed store based on a block-chain-based off-chain according to an embodiment of the present invention allows a hash value of an electronic document to be compared when a trade secret dispute occurs and proof- The advantage is that the proof of originality can be provided by verifying the originality and the time of the document at the time it is imputed.

또 다른 일 예로, 특허권자보다 먼저 기술을 사용해왔으나 특허권 침해로 피소를 당할 경우, 특허권자의 출원 시점보다 선 사용한 사실에 대한 입증이 필요할 때, 특허법 103조의 '선사용에 의한 통상실시권'을 인정받기 위한 하나의 증빙자료로 활용 가능할 수 있다.For example, if a patentee has been used before a patentee, but is found guilty of infringement of a patent right, and a proof of the fact that the patentee filed prior to the filing of the patent application is necessary, It can be used as a single document.

뿐만 아니라 기술 유출 방지를 위해서는 여러가지 물리적 기술적 관리 조치가 필요하나, 무엇보다도 기업 임직원들의 인식 제고가 우선이며, 본 발명을 통해 원본증명 서비스라는 보험적 조치를 취하고 있다는 것을 임직원들에게 공지함으로써, 기업비밀 유출에 대한 잠재적 욕구를 제한하는 효과를 제공할 수 있다.In addition, various physical and technological management measures are necessary to prevent leakage of technology. First of all, it is important to raise the awareness of the employees of the company. By informing the employees that they are taking insurance measures as the original proof service through the present invention, It can provide the effect of limiting the potential need for spillage.

도 1은 하이퍼레저 패브릭 네트워크 구성도를 나타낸 예시도이다.
도 2는 본 발명의 일 실시예에 따른 블록체인 기반 오프 체인 분산형 저장소를 활용한 문서 임치 시스템을 나타낸 블럭도이다.
도 3은 도 2에 도시된 전자문서 유사도 판단부의 세부 구성을 설명한 블록도이다.
도 4는 도 2에 도시된 원본증명부의 기능을 설명한 예시도이다.
도 5는 도 2에 도시된 블록체인 기반 오프 체인 분산형 저장소를 활용한 문서 임치 시스템에서 이루어지는 정보의 흐름을 보여준 예시도이다.
도 6은 본 명세서에 개진된 하나 이상의 실시예가 구현될 수 있는 예시적인 컴퓨팅 환경을 도시한 도이다.
1 is an exemplary view showing a hyper-redundancy fabric network configuration diagram.
Figure 2 is a block diagram illustrating a document placement system utilizing a distributed store of block-chain based offsets according to one embodiment of the present invention.
3 is a block diagram illustrating the detailed configuration of the electronic document similarity degree determination unit shown in FIG.
4 is an exemplary diagram illustrating the function of the original proof part shown in FIG.
FIG. 5 is an exemplary diagram illustrating the flow of information in a document placement system utilizing a block-chain-based off-chain storage depicted in FIG.
6 is a diagram illustrating an exemplary computing environment in which one or more embodiments disclosed herein may be implemented.

이하, 본 명세서의 실시예가 첨부된 도면을 참조하여 기재된다. 그러나, 이는 본 명세서에 기재된 기술을 특정한 실시 형태에 대해 한정하는 것이 아니며, 본 명세서의 실시예의 다양한 변경(modifications), 균등물(equivalents), 및/또는 대체물(alternatives)을 포함하는 것으로 이해되어야 한다. 도면의 설명과 관련하여, 유사한 구성요소에 대해서는 유사한 참조 부호가 사용될 수 있다. 본 명세서에서, "가진다," "가질 수 있다," "포함한다," 또는 "포함할 수 있다" 등의 표현은 해당 특징(예: 수치, 기능, 동작, 또는 부품 등의 구성요소)의 존재를 가리키며, 추가적인 특징의 존재를 배제하지 않는다.Hereinafter, embodiments of the present invention will be described with reference to the accompanying drawings. It should be understood, however, that it is not intended to limit the techniques described herein to specific embodiments but to include various modifications, equivalents, and / or alternatives of the embodiments herein . In connection with the description of the drawings, like reference numerals may be used for similar components. In this specification, the expressions "having," " having, "" comprising," Quot ;, and does not exclude the presence of additional features.

본 명세서에서, "A 또는 B," "A 또는/및 B 중 적어도 하나," 또는 "A 또는/및 B 중 하나 또는 그 이상"등의 표현은 함께 나열된 항목들의 모든 가능한 조합을 포함할 수 있다. 예를 들면, "A 또는 B," "A 및 B 중 적어도 하나," 또는 "A 또는 B 중 적어도 하나"는, (1) 적어도 하나의 A를 포함, (2) 적어도 하나의 B를 포함, 또는 (3) 적어도 하나의 A 및 적어도 하나의 B 모두를 포함하는 경우를 모두 지칭할 수 있다.As used herein, the expressions "A or B," "at least one of A and / or B," or "one or more of A and / or B," may include all possible combinations of the listed items . For example, "A or B," "at least one of A and B," or "at least one of A or B" includes (1) at least one A, (2) Or (3) at least one A and at least one B all together.

본 명세서에서 사용된 "제 1," "제 2," "첫째," 또는 "둘째,"등의 표현들은 다양한 구성요소들을, 순서 및/또는 중요도에 상관없이 수식할 수 있고, 한 구성요소를 다른 구성요소와 구분하기 위해 사용될 뿐 해당 구성요소들을 한정하지 않는다. 예를 들면, 제 1 사용자 기기와 제 2 사용자 기기는, 순서 또는 중요도와 무관하게, 서로 다른 사용자 기기를 나타낼 수 있다. 예를 들면, 본 명세서에 기재된 권리 범위를 벗어나지 않으면서 제 1 구성요소는 제 2 구성요소로 명명될 수 있고, 유사하게 제 2 구성요소도 제 1 구성요소로 바꾸어 명명될 수 있다.As used herein, the terms "first," "second," "first," or "second," and the like may denote various components, But is used to distinguish it from other components and does not limit the components. For example, the first user equipment and the second user equipment may represent different user equipment, regardless of order or importance. For example, without departing from the scope of the rights described herein, the first component can be named a second component, and similarly the second component can also be named a first component.

어떤 구성요소(예: 제 1 구성요소)가 다른 구성요소(예: 제 2 구성요소)에 "(기능적으로 또는 통신적으로) 연결되어((operatively or communicatively) coupled with/to)" 있다거나 "접속되어(connected to)" 있다고 언급된 때에는, 상기 어떤 구성요소가 상기 다른 구성요소에 직접적으로 연결되거나, 다른 구성요소(예: 제 3 구성요소)를 통하여 연결될 수 있다고 이해되어야 할 것이다. 반면에, 어떤 구성요소(예: 제 1 구성요소)가 다른 구성요소(예: 제 2 구성요소)에 "직접 연결되어" 있다거나 "직접 접속되어" 있다고 언급된 때에는, 상기 어떤 구성요소와 상기 다른 구성요소 사이에 다른 구성요소(예: 제 3 구성요소)가 존재하지 않는 것으로 이해될 수 있다.(Or functionally or communicatively) coupled with / to "another component (eg, a second component), or a component (eg, a second component) Quot; connected to ", it is to be understood that any such element may be directly connected to the other element or may be connected through another element (e.g., a third element). On the other hand, when it is mentioned that a component (e.g., a first component) is "directly connected" or "directly connected" to another component (e.g., a second component) It can be understood that there is no other component (e.g., a third component) between other components.

본 명세서에서 사용된 표현 "~하도록 구성된(또는 설정된)(configured to)"은 상황에 따라, 예를 들면, "~에 적합한(suitable for)," "~하는 능력을 가지는(having the capacity to)," "~하도록 설계된(designed to)," "~하도록 변경된(adapted to)," "~하도록 만들어진(made to)," 또는 "~를 할 수 있는(capable of)"과 바꾸어 사용될 수 있다. 용어 "~하도록 구성된(또는 설정된)"은 하드웨어적으로 "특별히 설계된(specifically designed to)" 것만을 반드시 의미하지 않을 수 있다. 대신, 어떤 상황에서는, "~하도록 구성된 장치"라는 표현은, 그 장치가 다른 장치 또는 부품들과 함께 "~할 수 있는" 것을 의미할 수 있다. The phrase " configured to be used "as used herein should be interpreted according to circumstances, such as, for example, having " having the capacity to, To be designed to, "" adapted to, "" made to, "or" capable of ". The term " configured to (or set up) "may not necessarily mean" specifically designed to "in hardware. Instead, in some situations, the expression "configured to" may mean that the device can "do " with other devices or components.

예를 들면, 문구 "A, B, 및 C를 수행하도록 구성된(또는 설정된) 프로세서"는 해당 동작을 수행하기 위한 전용 프로세서(예: 임베디드 프로세서), 또는 메모리 장치에 저장된 하나 이상의 소프트웨어 프로그램들을 실행함으로써, 해당 동작들을 수행할 수 있는 범용프로세서(generic-purpose processor)(예: CPU 또는 application processor)를 의미할 수 있다.For example, a processor configured (or configured) to perform the phrases "A, B, and C" may be implemented by executing one or more software programs stored in a memory device or a dedicated processor (e.g., an embedded processor) , And a generic-purpose processor (e.g., a CPU or an application processor) capable of performing the corresponding operations.

본 명세서에서 사용된 용어들은 단지 특정한 실시예를 설명하기 위해 사용된 것으로, 다른 실시예의 범위를 한정하려는 의도가 아닐 수 있다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함할 수 있다. 기술적이거나 과학적인 용어를 포함해서 여기서 사용되는 용어들은 본 명세서에 기재된 기술 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미를 가질 수 있다. 본 명세서에 사용된 용어들 중 일반적인 사전에 정의된 용어들은, 관련 기술의 문맥상 가지는 의미와 동일 또는 유사한 의미로 해석될 수 있으며, 본 명세서에서 명백하게 정의되지 않는 한, 이상적이거나 과도하게 형식적인 의미로 해석되지 않는다. 경우에 따라서, 본 명세서에서 정의된 용어일지라도 본 명세서의 실시예들을 배제하도록 해석될 수 없다.The terminology used herein is for the purpose of describing particular embodiments only and is not intended to limit the scope of the other embodiments. The singular expressions may include plural expressions unless the context clearly dictates otherwise. Terms used herein, including technical or scientific terms, may have the same meaning as commonly understood by one of ordinary skill in the art having recited herein. General predefined terms used herein may be interpreted in the same or similar sense as the contextual meanings of the related art and are to be understood as meaning ideal or overly formal meanings unless explicitly defined herein . In some cases, the terms defined herein can not be construed to exclude embodiments of the present disclosure.

먼저, 본 발명을 설명하기에 앞서 본 발명은 기술문서 및 전자문서의 유출 및 위변조를 방지하고, 원본증명, 무결성 보안성을 증명 및 검증하기 위한 하이퍼레저 패브릭 네트워크를 기반으로 한다.First, prior to describing the present invention, the present invention is based on a hyperreflective fabric network for preventing leakage and forgery of a technical document and an electronic document, and for proving and verifying an original proof and integrity security.

여기서, 패브릭은 프라빗 블록체인으로, 종래의 퍼블릭 블록체인은 가지지 않는 또는 필요없는 합의 알고리즘의 선택적 사용, 네트워크 참여 권한 통제, 채널 및 멀티 장부 사용 등의 추가적인 여러 기능들을 가진다.Here, the fabric is a basic block chain, and conventional public block chains have additional functions such as selective use of unnecessary or unnecessary consensus algorithms, network participation authority control, channel and multi-book use.

하이퍼레저 패브릭의 구조적 특징은 다음과 같다.The structural characteristics of the hyper leisure fabric are as follows.

첫째, 허가형 블록체인으로서 허가 받은 참여자만 네트워크에 참여할 수 있다.First, only authorized participants can participate in the network as allowed block chains.

둘째, 스마트 컨트랙트에 일반 프로그래밍 언어 사용이 가능하다.Second, it is possible to use a common programming language in smart contracts.

셋째, 스마트 컨트랙트를 일부 노드만 실행하므로 다수의 거래를 병렬적으로 빠르게 처리할 수 있다.Third, the Smart Controct is executed by only a few nodes, so that a large number of transactions can be processed in parallel.

넷째, 채널을 이용해 허가받은 사람들에게만 장부(ledger)를 공개할 수 있다.Fourth, it is possible to disclose a ledger only to authorized people using the channel.

다섯째, 교체 가능한 합의 프로토콜을 사용할 수 있다(SOLO, Kafka 방식, PBFT 등)Fifth, interchangeable agreement protocols can be used (SOLO, Kafka, PBFT, etc.)

여섯째, 허가형 블록체인으로써 네트워크 참여자의 신원을 확인할 수 있기 때문에 문제 발생시 책임소재를 분명히 할 수 있다.Sixth, since the identity of the network participants can be confirmed by the permission block chain, the responsibility of the problem can be clarified.

한편, 하이퍼레저 패브릭(Hyperledger Fabric)은 기본적으로 SOLO(Single Ordering Service Node)라는 싱글 노드 방식과 Kafka 방식이라는 CFT(Crash fault tolerance) 기반 합의 프로토콜을 제공한다. Kafka 방식이 가지는 성질인 CFT(Crash fault tolerance)란 일부 시스템 구성 요소들이 작동하지 않더라도 올바른 합의에 도달할 수 있는 성질을 말한다. 기존 퍼블릭 블록체인에서 주로 사용되는 BFT(Byzantine fault tolerance) 시스템은 시스템 구성요소의 기능적 문제뿐 아니라 악의적인 공격(Malicious attack)까지 고려하므로 CFT 시스템과 비교했을 때 더욱 복잡하며 느리다.Meanwhile, Hyperledger Fabric basically provides a single node method called SOLO (Single Ordering Service Node) and a Crash fault tolerance (CFT) based agreement protocol called Kafka method. Crash fault tolerance (CFT), which is the property of the Kafka scheme, is the property of reaching the right consensus even if some system components do not work. The Byzantine fault tolerance (BFT) system, which is mainly used in existing public block chains, is more complicated and slower than the CFT system because it considers malicious attacks as well as functional problems of system components.

네트워크에 참여하기 위해 특정 주체의 승인(Permission)이 필요하지 않은 퍼블릭 블록체인들과는 달리 프라이빗 블록체인에는 비교적 신뢰할 수 있는 참여자만 관리자의 승인을 받고 네트워크에 참여하게 되므로 악의적인 주체(Malicious actors)의 공격 확률이 매우 작을 것으로 간주한다. 따라서, 프라이빗 블록체인에서는 BFT 기반 합의 프로토콜보다 더 빠르고 간단한 합의 프로토콜 또한 허용 가능한 범위로 간주된다.Unlike public block chains, which do not require the permission of a specific entity to participate in the network, only a relatively reliable participant in the private block chain is authorized by the administrator and participates in the network. Therefore, attacks of malicious actors The probability is assumed to be very small. Thus, in the private block chain, a faster and simpler consensus protocol than the BFT-based consensus protocol is also considered to be an acceptable range.

패브릭을 사용하는 조직은 지원하는 합의 방식을 사용하거나 직접 구현할 수 있는데, 이렇게 합의 방식을 선택할 수 있는 특성을 패브릭에서는 '교체 가능한 합의 프로토콜(Pluggable consensus)을 지원한다'고 한다.Organizations that use the fabric can either use a supported consensus approach or implement it directly, and the fabric supports a "Pluggable consensus" in the ability to choose the consensus method.

프라이빗 블록체인에서는 어떤 네트워크 참여자가 어떤 권한을 가지는지 관리하는 것이 매우 중요한데, 그룹 별로 네트워크의 자원에 접근할 수 있는 권한은 관리자에 의해 정해져 Network Configuration에 저장된다. 또한, 이를 위해 참여자의 ID와 권한을 관리할 주체가 필요하므로, Certificate Authority(이하 CA)가 필요하다. 간단히 말해 CA는 디지털 증명서(Digital certificate)를 발급하는 기관이다. 패브릭 네트워크에 참여하는 그룹들은 모두 개별 CA를 이용하게 된다.In the private block chain, it is very important to control which network participants have privileges. The authority to access network resources for each group is determined by the administrator and stored in the Network Configuration. Also, a Certificate Authority (CA) is required because it requires a subject to manage the ID and authority of the participant. In short, CA is the authority issuing a digital certificate. Groups participating in the fabric network all use individual CAs.

도 1을 참조하면, 하이퍼레져 패브릭 네트워크를 구성하는 요소는 다음과 같다.Referring to FIG. 1, the elements forming the hyperreflex fabric network are as follows.

·그룹 또는 조직(Group or organization)· Group or organization

·오더링 서비스 노드들 (Ordering service nodes)· Ordering service nodes

·CA(Certificate Authority)· Certificate Authority (CA)

·컨소시엄(Consortium)· Consortium

·채널(Channel)· Channel

·채널 설정(Channel configuration)· Channel configuration

·장부(Ledger)· Ledger

·피어(Peer)Peer

·클라이언트 어플리케이션(Client application)· Client application

위의 요소들은 모두 하나 또는 여러 개가 네트워크에 존재할 수 있으며, 각 요소들은 추가되어 네트워크를 확장할 수 있다.All of the above elements can exist in the network, and each element can be added to extend the network.

여기서, 컨소시엄(Consortium)의 사전적 정의는 '함께 협력하기로 동의한 사람 또는 회사의 집단'이다. 하이퍼레져 패브릭에서는 조직들이 하나의 컨소시엄을 구성하면 그 조직들은 트랜잭션 내역을 공유할 수 있다. 따라서, 하이퍼레져 패브릭안의 컨소시엄은 '공동의 목표를 가지고 트랜잭션 내역을 공유하며 협력하는 집단'이라고 볼 수 있겠다. 하나의 네트워크에는 여러 컨소시엄이 존재할 수 있으며 어떤 그룹들이 어떤 컨소시엄을 이루는지는 네트워크 설정 안에 정의된다.Here, the dictionary definition of the consortium is "a group of people or companies that agreed to cooperate together." In hyperreflective fabrics, when organizations form a consortium, they can share transaction history. Therefore, a consortium in hyperreflective fabrics can be seen as a group that shares common transactional goals and collaborates with common goals. There can be multiple consortia in a network, and what consortia are defined within a network configuration.

다음으로, 채널(Channel)은 하이퍼레져 패브릭에서 매우 중요한 컨소시엄 내 그룹간 커뮤니케이션 메커니즘이다. 채널은 데이터 분리(data isolation)와 기밀화를 가능케 하며, 채널용 장부(channel-specific ledger)는 채널 사용 허가를 받은 컨소시엄 멤버들만이 접근 가능하다. 네트워크 설정(Network Configuration)과 별개로 채널 설정(Channel configuration)이 존재하여, 채널 설정 정보에는 채널(Channel)에 접근할 수 있는 피어(peer)의 권한 정보 등 채널 운영에 필요한 모든 정보를 담고 있다. Next, the Channel is a group-to-group communication mechanism in a consortium that is very important in hyperreflective fabrics. Channels allow for data isolation and confidentiality, while channel-specific ledgers are accessible only to consortium members who have permission to use the channel. There is a channel configuration separate from the network configuration. The channel configuration information includes all the information necessary for operating the channel, such as the peer's authority to access the channel.

채널 설정 정보는 블록에 담겨 장부에 기록된다. 채널(Channel)은 네트워크 안에 존재하지만 네트워크 설정(Network configuration)과 채널 설정 사이 중복되는 설정이 없으므로, 네트워크 설정이 변경되어도 채널 설정에 직접적인 영향은 없다.The channel setting information is recorded in a block in a block. The channel exists in the network but there are no overlapping settings between the network configuration and the channel setting, so even if the network setting is changed, there is no direct influence on the channel setting.

프라이버시(Privacy)를 유지하며 효율적인 데이터 공유(data sharing)가 가능하게 만들기 때문에 채널은 퍼블릭 블록체인(Public blockchain)은 가지지 못하는 장점을 제공하는 중요한 기능이다.  Channels are an important feature that provides the advantage of not having a public block chain because it makes it possible to maintain privacy and efficient data sharing.

한 네트워크 안에는 여러 컨소시엄들이 사용하는 채널들이 존재할 수 있다. Within a network, there may be channels used by several consortia.

다음으로, 블록체인에서 장부(Ledger)란 '변경 불가능한 상태 데이터 베이스(immutable state database)'이다. 하이퍼레져 패브릭에서는 한 채널이 한 장부를 가진다. 이 장부를 물리적으로 호스팅 하는 노드들은 피어(Peer)라고 불리며, 한 채널 안의 여러 피어들이 한 장부의 복사본을 가진다. Next, in the block chain, a 'ledger' is an 'immutable state database'. In a hyper-leisure fabric, one channel has one book. Nodes that physically host this book are called peers, and multiple peers in a channel have a copy of a book.

장부의 업데이트는 여러 피어들의 합의(Consensus)를 통해 이루어지기 때문에 일관성을 유지할 수 있다. 피어(Peer)는 장부(Ledger)를 물리적으로 호스팅하고 Chaincode(하이퍼레져 패브릭의 smart contract)를 저장하고 있는 독립체(entity)이다. 피어(Peer)는 CA로부터 Identity를 배정 받고 채널에 참여할 수 있다. The updating of the book is done through consensus of several peers, so it is possible to maintain consistency. A peer is an entity that physically hosts a ledger and stores a Chaincode (smart contract of a hyperreflective fabric). The peer can be assigned an identity from the CA and participate in the channel.

한편, 하이퍼레저 패브릭에서는 아래와 같은 순으로 트랜잭션이 일어난다.On the other hand, in a hyper leisure fabric, transactions occur in the following order.

1.클라이언트 어플리케이션에서 SDK를 통해 트랜잭션 제안(transaction proposal)을 발생시킨다. 1. The client application generates a transaction proposal through the SDK.

2.체인코드의 보증 정책(endorsing policy)에 명시된 노드들(endorsing peers)은 체인코드를 실행한다. 2. The endorsing peers in the endorsing policy of the chain code execute the chain code.

3.각 결과값은 클라이언트 어플리케이션에 전달된다. 3. Each result value is passed to the client application.

4.결과값이 보증 정책을 만족시키면, 결과값은 오더링 서비스(ordering service) 전달된다. 4. If the outcome satisfies the assurance policy, the outcome is delivered to the ordering service.

5.오더링 서비스는 먼저 도착한 순으로 블록을 만들어 채널의 모든 피어(peer)들에게 전달한다. 5. The ordering service creates blocks in the order of arrival and delivers them to all the peers of the channel.

6.모든 피어는 도착한 블록이 보증 정책을 만족시키는지, 장부 상태(ledger state)가 트랜잭션이 일어나는 동안 바뀌지 않았는지 확인한다. 6. All peers verify that the arriving block meets the assurance policy and that the ledger state has not changed during the transaction.

7.각 피어들은 블록을 채널의 체인에 덧붙이며, 장부의 상태를 업데이트 한다.7. Each peer adds a block to the chain of channels and updates the state of the book.

여기까지 하이퍼레저 패브릭 네트워크 구조 및 트랜잭션 순서를 간략하게 설명하였다.So far, we have briefly described the hyperreflex fabric network architecture and transaction sequence.

이하, 첨부된 도면들에 기초하여 본 발명의 일 실시예에 따른 블록체인 기반 오프 체인 분산형 저장소를 활용한 문서 임치 시스템을 보다 상세하게 설명하도록 한다.Hereinafter, a document placement system utilizing a block-chain-based off-chain distributed storage according to an embodiment of the present invention will be described in more detail based on the accompanying drawings.

도 2는 본 발명의 일 실시예에 따른 블록체인 기반 오프 체인 분산형 저장소를 활용한 문서 임치 시스템을 나타낸 블록도이고, 도 3은 도 2에 도시된 전자문서 유사도 판단부의 세부 구성을 설명한 블록도이고, 도 4는 도 2에 도시된 원본증명부의 기능을 설명한 예시도이고, 도 5는 도 2에 도시된 블록체인 기반 오프 체인 분산형 저장소를 활용한 문서 임치 시스템에서 이루어지는 정보의 흐름을 보여준 예시도이다.FIG. 2 is a block diagram illustrating a document imposition system utilizing a block-chain-based off-chain distributed storage according to an embodiment of the present invention. FIG. 3 is a block diagram illustrating a detailed configuration of the electronic document similarity degree determining unit shown in FIG. FIG. 4 is an exemplary view for explaining the function of the original proof part shown in FIG. 2, and FIG. 5 is an example showing a flow of information in the document provision system utilizing the distributed storage that is block chain- .

도 2 내지 도 5를 참조하면, 본 발명의 일 실시예에 따른 블록체인 기반 오프 체인 분산형 저장소를 활용한 문서임치시스템(100)은 전자문서 변환부(110), 전자문서 유사도 판단부(120), 트랜잭션 등록부(130), 원본증명부(140) 및 분산형 저장소(150)를 포함한다.2 to 5, a document imposition system 100 utilizing a block-chain-based off-chain distributed storage according to an exemplary embodiment of the present invention includes an electronic document conversion unit 110, an electronic document similarity determination unit 120 A transaction registration unit 130, an original proof unit 140, and a distributed repository 150.

상기 전자문서 변환부(110)는 사용자 단말에 설치된 웹 어플리케이션으로부터 제1 전자문서의 원본등록을 요청받아, 상기 제1 전자문서의 파일이름, 발급시기, 발급인 정보를 사용자의 공개 키로 암호화한 해시값으로 암호화한다.The electronic document conversion unit 110 receives a request for original registration of a first electronic document from a web application installed in the user terminal and generates a hash of the first electronic document encrypted with the public key of the user, Encrypt by value.

상기 전자문서 유사도 판단부(120)는 상기 제1 전자문서와 기 등록된 전자문서들 간의 명사 배열의 유사도를 분석하여 문서등록 적합도를 판단하기 위한 구성으로, 토큰화부(121), 배열부(122), 매트릭스 변환부(123) 및 유사도 분석부(124)를 포함할 수 있다.The electronic document similarity degree determining unit 120 is configured to determine a document registration fitness by analyzing a similarity degree of a noun arrangement between the first electronic document and preliminarily registered electronic documents. The electronic document similarity degree determining unit 120 includes a tokenizing unit 121, ), A matrix transforming unit 123, and a similarity analyzing unit 124.

상기 토큰화부(121)는 형태소 분석 라이브러리를 제공하고, 형태소 분석 라이브러리의 nouns() 함수를 통해 제1 전자문서의 파일이름 및 파일내용 중 명사만을 추출하여 문자열에서 분리시킨다.The tokenizing unit 121 provides a morpheme analysis library and extracts only nouns from the file name and file contents of the first electronic document through the nouns () function of the morpheme analysis library and separates the nouns from the strings.

여기서, 본원에 개시된 형태소 분석 라이브러리는 특허, 저작권, 논문 등과 관련된 전자문서의 유사도를 형태소, 보다 바람직하게는 단어(명사)를 통해 검증하기 위한 필수 구성일 수 있다.Here, the morphological analysis library disclosed herein may be an essential structure for verifying the similarity of an electronic document related to a patent, a copyright, a dissertation, etc. through a morpheme, more preferably a word (noun).

예로, 전자문서에서 계약서의 경우, 내용이 대부분 동일하고 계약자만 다른 경우가 많기 때문에 특허, 저작권 등의 전자문서에 국한하여 사용한다.For example, in an electronic document, contracts are mostly used for electronic documents such as patents and copyrights, since the contents are mostly the same and only the contractor is different.

상기 배열부(122)는 상기 토큰화부(121)에서 추출된 명사들을 열 또는 행으로 순차 배열한다.The arrangement unit 122 sequentially arranges the nouns extracted from the tokenizing unit 121 in columns or rows.

상기 매트릭스 변환부(123)는 상기 배열부(122)에서 배열된 문자 열 또는 행의 배열을 fit_transform() 함수를 이용하여 스파스 행렬(Sparse matrix)로 변환한다.The matrix conversion unit 123 converts the array of characters or rows arranged in the array unit 122 into a sparse matrix using the fit_transform () function.

또한, 상기 매트릭스 변환부(123)는 toarry() 함수로 스파스 행렬(sparse matrix)을 상기 배열부(122)의 배열 형태로 변환할 수 있다.The matrix transforming unit 123 may transform a sparse matrix into an array of the array unit 122 using a toarry () function.

다음으로, 유사도 분석부(124)는 TF-IDF(Term Frequency-Inverse Document Frequency) 알고리즘인 식 1을 이용하여 기 등록된 전자문서들과 제1 전자문서들 간에 유사한 단어들의 불린 빈도를 분석한다.Next, the similarity analyzer 124 analyzes the frequency of similar words between the first electronic documents and the first electronic documents using Equation 1, which is a TF-IDF (Term Frequency-Inverse Document Frequency) algorithm.

[식 1][Formula 1]

tf(t,d) = (단어 t가 포함된 문서의 수) / (전체문서의 수)tf (t, d) = (the number of documents containing the word t) / (the total number of documents)

참고로, TF-IDF(Term Frequency-Inverse Document Frequency)는 정보 검색과 텍스트 마이닝에서 이용하는 가중치로, 여러 문서로 이루어진 문서군이 있을 때 어떤 단어가 특정 문서 내에서 얼마나 중요한 것인지를 나타내는 통계적 수치이다. 문서의 핵심어를 추출하거나, 검색 엔진에서 검색 결과의 순위를 결정하거나, 문서들 사이의 비슷한 정도를 구하는 등의 용도로 사용할 수 있다.For reference, TF-IDF (Term Frequency-Inverse Document Frequency) is a weighting value used in information retrieval and text mining. It is a statistical value that indicates how important a word is in a specific document when there are document groups composed of several documents. It can be used to extract key words of a document, to rank search results in a search engine, to obtain similarity between documents, and so on.

TF(단어 빈도, term frequency)는 특정 단어가 문서 내에 얼마나 자주 등장하는 지를 나타내는 값이고, DF(문서 빈도, document frequency)는 단어 자체가 문서군 내에서 자주 사용되는 것을 의미하고, 이값의 역수를IDF(역문서 빈도, Iverse document frequency)라 하고, TF-IDF는 TF와 IDF의 곱의 값이다.TF (word frequency, term frequency) is a value that indicates how often a particular word appears in a document. DF (document frequency) means that the word itself is frequently used in a document set, IDF (reverse document frequency), and TF-IDF is a product of TF and IDF.

여기서, TF-IDF는 Scikit-Learn 라이브러리를 사용하여 구할 수 있다.Here, TF-IDF can be obtained using the Scikit-Learn library.

아래의 3가지 문장을 예시적으로 설명한다.The following three sentences are illustrated by way of example.

Figure 112019033928706-pat00001
Figure 112019033928706-pat00001

TF 값 계산Calculate TF value

문서에서 해당 단어가 얼마나 나왔는지 알아야 하므로 각 문서에서 해당 단어들이 얼마나 나왔는지 카운트한다.Since we need to know how many words are in the document, count how many of those words are in each document.

Figure 112019033928706-pat00002
Figure 112019033928706-pat00002

IDF 값 계산Calculate IDF values

IDF 값은 log(전체 문서 수/ 해당 단어가 나타난 문서 수)를 계산한다. 예를 들어, Tom을 계산해보면 해당 단어가 나타난 문서수는 2이고, 현재 전체 문서의 수는 3이므로, Log(3/2) ≒ 0.18 이라는 값이 나온다.The IDF value is log (total number of documents / number of documents in which the word appears). For example, if Tom is calculated, the number of documents in which the word appears is 2, and since the total number of documents is 3, a value of Log (3/2) ≒ 0.18 appears.

Figure 112019033928706-pat00003
Figure 112019033928706-pat00003

TF-IDF 값 계산Calculate TF-IDF value

TF-IDF값은 TF 값과 IDF 값을 곱한 값이다. 'his'단어의 경우 TF의 값이 2이고, IDF 값이 0.48이므로 두개를 곱한 2 × 0.48 = 0.96이 TF-IDF 값이 된다. 아래 표를 보면, Doc1에서는 'play', Doc 2에서는 'loves', Doc3에서는 'his'가 가장 중요한 단어가 된다.The TF-IDF value is a product of the TF value and the IDF value. For the 'his' word, the TF value is 2 and the IDF value is 0.48, so 2 × 0.48 = 0.96, which is the product of the two, becomes the TF-IDF value. In the table below, 'play' in Doc1, 'loves' in Doc 2, and 'his' in Doc3 are the most important words.

Figure 112019033928706-pat00004
Figure 112019033928706-pat00004

이후, TF-IDF 값이 모두 계산되었으므로, 문서 내의 단어들에 수치값을 Scikit-Learn 라이브러리를 이용하여 불린 유사도를 분석할 수 있다. Since all the TF-IDF values have been calculated, the similarity degree can be analyzed using the Scikit-Learn library for numerical values in words in the document.

Figure 112019033928706-pat00005
Figure 112019033928706-pat00005

참고로, 일 예에서 사용된 stop_words = 'english'는 불용어를 제거하은 의미로 아래와 같은 코드를 추가할 수 있다.For reference, stop_words = 'english' used in the example can be replaced with the following code.

Figure 112019033928706-pat00006
Figure 112019033928706-pat00006

한편, 유사도 분석부(124)는 기 등록된 전자문서들과 제1 전자문서들 간에 유사한 단어들의 불린 빈도를 산출한 후, 산출된 불린 빈도를 이용하여 문서들 간의 전체 유사도를 분석할 수 있고, 유사도가 기 설정된 퍼센트 이상이면 유사하다고 판단한 판단신호를 제공한다.On the other hand, the similarity analyzer 124 may calculate the frequency of similar words between previously registered electronic documents and the first electronic documents, and then analyze the overall similarity between the documents using the calculated frequency of borrowing, If the degree of similarity is equal to or greater than a predetermined percentage, a judgment signal that is determined to be similar is provided.

Figure 112019033928706-pat00007
Figure 112019033928706-pat00007

상기 유사도 판단부(124)는 유사도가 일정 기준치 이상일 경우 유일한 내용의 전자문서가 아니라고 판단하며, 제1 전자문서의 등록을 반려할 수 있다.If the degree of similarity is equal to or greater than a predetermined reference value, the similarity determination unit 124 determines that the electronic document is not the only electronic document, and can refuse registration of the first electronic document.

즉, 유사도 판단부(120)는 상기 제1 전자문서와 기 등록된 전자문서들 간의 파일이름, 파일내용 중 명사 배열의 유사도를 분석하여 문서등록의 적합도를 판단한다.That is, the similarity determination unit 120 analyzes the degree of similarity between the file name and the file content between the first electronic document and the previously registered electronic document to determine the suitability of the document registration.

다음으로, 트랜잭션 등록부(130)는 상기 유사도 판단부(120)로부터 상기 제1 전자문서의 문서등록 적합이 판정되면, 상기 제1 전자문서의 해시 값 및 상기 해시 값에 사용된 공개키를 분산데이터베이스의 블록 체인 노드에 등록한다. The transaction registering unit 130 registers the hash value of the first electronic document and the public key used for the hash value in the distribution database 120, In the block chain node of FIG.

여기서, 상술한 트랜잭션 등록부(130)는 후술할 원본증명서(140)에서 임치 증명서를 발급할 경우, 임치 증명서의 발급을 요청한 발급인, 발급 시기 등의 정보를 블록 체인 노드에 등록할 수 있다.Here, when the transaction registration unit 130 issues a rental certificate in the original certificate 140 to be described later, the transaction registration unit 130 may register information such as the issuer requesting issuance of the issuance certificate, issuance time and the like in the block chain node.

다음으로, 상기 원본증명부(140)는 상기 웹 어플리케이션으로부터 제공된 검증하고자 하는 제3 전자문서와 제1 전자문서 간의 원본증명이 요청되면, 상기 제3 전자문서의 파일이름, 발급시기, 발급인 정보를 사용자의 공개 키로 암호화한 해시값으로 변환한 후, 상기 제3 전자문서의 해시값과 상기 블록 체인 노드에 등록된 제1 전자문서의 해시값 간의 동일성을 검증한 후, 제1 전자문서가 임치된 시간을 추적해 제3 전자문서와의 선후관계를 증명한 임치 증명서를 발급한다.Next, when the proof of authenticity between the third electronic document to be verified and the first electronic document provided from the web application is requested, the original proof unit 140 displays the file name of the third electronic document, the issuing time, The hash value of the first electronic document registered in the block chain node and the hash value of the first electronic document registered in the block chain node, And then issues a certificate of immigration proving the subsequent relationship with the third electronic document.

상기 오프 체인 분산형 저장소(150)는 상기 전자문서 변환부에서 변환된 상기 제1 전자문서의 파일이름, 발급시기, 발급인 정보를 사용자의 공개 키로 암호화한 해시값을 분산저장한다.The off-chain distributed storage 150 distributes and stores the hash value obtained by encrypting the file name, the issuing time, and the issuer information of the first electronic document converted by the electronic document conversion unit using the public key of the user.

상기 오프 체인 분산형 저장소(150)는 각각의 노드에 대응되는 서버이거나, 각각의 블록체인 노드를 관리하는 서버일 수 있다. 이에 더하여, 오프 체인 분산형 저장소(150)는 각 노드들에 저장된 전자문서들의 상태 정보를 관리할 수 있다. 그리고, 오프 체인 분산형 저장소(150)는 제1 블록체인 데이터베이스와 제2 블록체인 데이터베이스로 구성될 수 있다. 이때, 제1 블록체인 데이터베이스는 프라이빗 블록체인 데이터베이스로 구성될 수 있으며, 제2 블록체인 데이터베이스는 프라이빗 블록체인 데이터베이스 또는 퍼블릭 블록체인 데이터베이스로 구성될 수 있다.The off-chain distributed storage 150 may be a server corresponding to each node, or a server managing each block-chain node. In addition, the off-chain distributed storage 150 can manage status information of electronic documents stored in each node. In addition, the off-chain distributed storage 150 may be composed of a first block chain database and a second block chain database. In this case, the first block chain database may be a private block chain database, and the second block chain database may be a private block chain database or a public block chain database.

즉, 오프 체인 분산형 저장소(150)는 등록된 전자문서의 외부 침입 및 노출 방지를 위하여 사용자의 공개키로 암호화된 전자문서를 분산 저장할 수 있다.That is, the off-chain distributed storage 150 may distribute and store the electronic document encrypted with the user's public key for preventing intrusion and exposure of the registered electronic document.

한편, 본 발명의 일 실시예에 따른 블록체인 기반 오프 체인 분산형 저장소를 활용한 문서 임치 시스템(100)은 공증센터 노드(160)를 더 포함할 수 있다.Meanwhile, the document imposition system 100 utilizing the block-chain-based off-chain distributed storage according to an exemplary embodiment of the present invention may further include the notarization center node 160.

상기 공증센터(160)는 하나의 노드로 구성되고, 하이퍼레저 패브릭 블록체인 네트워크에 피어(peer)로서 참여하여 트랜잭션을 생성한다.The notarization center 160 is composed of one node and participates as a peer in a hyperreflective fabric block chain network to create a transaction.

상기 공증센터 노드(160)는 하이퍼레저 익스플로러와 연동하여 분산형 저장소(150) 내의 블록체인 노드들 간의 네트워크를 모니터링할 수 있다.The notarization center node 160 can monitor the network between the block chain nodes in the distributed storage 150 in cooperation with the hyperrecessor explorer.

상기 공증센터 노드(160)는 암호화된 전자문서 파일을 보관하며, 전자문서가 훼손될 경우, 해당 전자문서가 저장된 블록체인 노드로부터 전자문서를 제공받아 복구할 수 있다.The notarization center node 160 stores the encrypted electronic document file. When the electronic document is damaged, the notarization center node 160 can receive and recover the electronic document from the block chain node where the corresponding electronic document is stored.

도 6은 본 명세서에 개진된 하나 이상의 실시예가 구현될 수 있는 예시적인 컴퓨팅 환경을 도시하는 도면으로, 상술한 하나 이상의 실시예를 구현하도록 구성된 컴퓨팅 디바이스(1100)를 포함하는 시스템(1000)의 예시를 도시한다. 예를 들어, 컴퓨팅 디바이스(1100)는 개인 컴퓨터, 서버 컴퓨터, 핸드헬드 또는 랩탑 디바이스, 모바일 디바이스(모바일폰, PDA, 미디어 플레이어 등), 멀티프로세서 시스템, 소비자 전자기기, 미니 컴퓨터, 메인프레임 컴퓨터, 임의의 전술된 시스템 또는 디바이스를 포함하는 분산 컴퓨팅 환경 등을 포함하지만, 이것으로 한정되는 것은 아니다.FIG. 6 is a diagram illustrating an exemplary computing environment in which one or more embodiments disclosed herein may be implemented. An example of a system 1000 including a computing device 1100 configured to implement one or more of the above- / RTI > For example, the computing device 1100 may be a personal computer, a server computer, a handheld or laptop device, a mobile device (mobile phone, PDA, media player, etc.), a multiprocessor system, a consumer electronics device, A distributed computing environment including any of the above-described systems or devices, and the like.

컴퓨팅 디바이스(1100)는 적어도 하나의 프로세싱 유닛(1110) 및 메모리(1120)를 포함할 수 있다. 여기서, 프로세싱 유닛(1110)은 예를 들어 중앙처리장치(CPU), 그래픽처리장치(GPU), 마이크로프로세서, 주문형 반도체(Application Specific Integrated Circuit, ASIC), Field Programmable Gate Arrays(FPGA) 등을 포함할 수 있으며, 복수의 코어를 가질 수 있다. 메모리(1120)는 휘발성 메모리(예를 들어, RAM 등), 비휘발성 메모리(예를 들어, ROM, 플래시 메모리 등) 또는 이들의 조합일 수 있다. 또한, 컴퓨팅 디바이스(1100)는 추가적인 스토리지(1130)를 포함할 수 있다. 스토리지(1130)는 자기 스토리지, 광학 스토리지 등을 포함하지만 이것으로 한정되지 않는다. 스토리지(1130)에는 본 명세서에 개진된 하나 이상의 실시예를 구현하기 위한 컴퓨터 판독 가능한 명령이 저장될 수 있고, 운영 시스템, 애플리케이션 프로그램 등을 구현하기 위한 다른 컴퓨터 판독 가능한 명령도 저장될 수 있다. 스토리지(1130)에 저장된 컴퓨터 판독 가능한 명령은 프로세싱 유닛(1110)에 의해 실행되기 위해 메모리(1120)에 로딩될 수 있다. 또한, 컴퓨팅 디바이스(1100)는 입력 디바이스(들)(1140) 및 출력 디바이스(들)(1150)을 포함할 수 있다. The computing device 1100 may include at least one processing unit 1110 and memory 1120. [ The processing unit 1110 may include, for example, a central processing unit (CPU), a graphics processing unit (GPU), a microprocessor, an application specific integrated circuit (ASIC), a field programmable gate array And may have a plurality of cores. The memory 1120 can be a volatile memory (e.g., RAM, etc.), a non-volatile memory (e.g., ROM, flash memory, etc.) or a combination thereof. In addition, the computing device 1100 may include additional storage 1130. Storage 1130 includes, but is not limited to, magnetic storage, optical storage, and the like. The storage 1130 may store computer readable instructions for implementing one or more embodiments as disclosed herein, and other computer readable instructions for implementing an operating system, application programs, and the like. The computer readable instructions stored in storage 1130 may be loaded into memory 1120 for execution by processing unit 1110. In addition, computing device 1100 may include input device (s) 1140 and output device (s) 1150.

여기서, 입력 디바이스(들)(1140)은 예를 들어 키보드, 마우스, 펜, 음성 입력 디바이스, 터치 입력 디바이스, 적외선 카메라, 비디오 입력 디바이스 또는 임의의 다른 입력 디바이스 등을 포함할 수 있다. 또한, 출력 디바이스(들)(1150)은 예를 들어 하나 이상의 디스플레이, 스피커, 프린터 또는 임의의 다른 출력 디바이스 등을 포함할 수 있다. 또한, 컴퓨팅 디바이스(1100)는 다른 컴퓨팅 디바이스에 구비된 입력 디바이스 또는 출력 디바이스를 입력 디바이스(들)(1140) 또는 출력 디바이스(들)(1150)로서 사용할 수도 있다.Here, input device (s) 1140 may include, for example, a keyboard, a mouse, a pen, a voice input device, a touch input device, an infrared camera, a video input device, or any other input device. Also, output device (s) 1150 can include, for example, one or more displays, speakers, printers, or any other output device. In addition, computing device 1100 may use an input device or output device included in another computing device as input device (s) 1140 or output device (s) 1150. [

또한, 컴퓨팅 디바이스(1100)는 컴퓨팅 디바이스(1100)가 다른 디바이스(예를 들어, 컴퓨팅 디바이스(1300))와 통신할 수 있게 하는 통신접속(들)(1160)을 포함할 수 있다. The computing device 1100 may also include communication connection (s) 1160 that allow the computing device 1100 to communicate with other devices (e.g., computing device 1300).

여기서, 통신 접속(들)(1160)은 모뎀, 네트워크 인터페이스 카드(NIC), 통합 네트워크 인터페이스, 무선 주파수 송신기/수신기, 적외선 포트, USB 접속 또는 컴퓨팅 디바이스(1100)를 다른 컴퓨팅 디바이스에 접속시키기 위한 다른 인터페이스를 포함할 수 있다. 또한, 통신 접속(들)(1160)은 유선 접속 또는 무선 접속을 포함할 수 있다. 상술한 컴퓨팅 디바이스(1100)의 각 구성요소는 버스 등의 다양한 상호접속(예를 들어, 주변 구성요소 상호접속(PCI), USB, 펌웨어(IEEE 1394), 광학적 버스 구조 등)에 의해 접속될 수도 있고, 네트워크(1200)에 의해 상호접속될 수도 있다. 본 명세서에서 사용되는 "구성요소", "시스템" 등과 같은 용어들은 일반적으로 하드웨어, 하드웨어와 소프트웨어의 조합, 소프트웨어, 또는 실행중인 소프트웨어인 컴퓨터 관련 엔티티를 지칭하는 것이다. (S) 1160 may include a modem, a network interface card (NIC), an integrated network interface, a radio frequency transmitter / receiver, an infrared port, a USB connection or other Interface. Also, the communication connection (s) 1160 may include a wired connection or a wireless connection. Each component of the computing device 1100 described above may be connected by various interconnects (e.g., peripheral component interconnect (PCI), USB, firmware (IEEE 1394), optical bus architecture, etc.) And may be interconnected by the network 1200. As used herein, the terms "component," "system," and the like generally refer to a computer-related entity, which is hardware, a combination of hardware and software, software, or software in execution.

예를 들어, 구성요소는 프로세서 상에서 실행중인 프로세스, 프로세서, 객체, 실행 가능물(executable), 실행 스레드, 프로그램 및/또는 컴퓨터일 수 있지만, 이것으로 한정되는 것은 아니다. 예를 들어, 컨트롤러 상에서 구동중인 애플리케이션 및 컨트롤러 모두가 구성요소일 수 있다. 하나 이상의 구성요소는 프로세스 및/또는 실행의 스레드 내에 존재할 수 있으며, 구성요소는 하나의 컴퓨터 상에서 로컬화될 수 있고, 둘 이상의 컴퓨터 사이에서 분산될 수도 있다.For example, an element may be, but is not limited to being, a processor, an object, an executable, an executable thread, a program and / or a computer running on a processor. For example, both the application running on the controller and the controller may be components. One or more components may reside within a process and / or thread of execution, and the components may be localized on one computer and distributed among two or more computers.

지금까지 본 발명에 따른 구체적인 실시예에 관하여 설명하였으나, 본 발명의 범위에서 벗어나지 않는 한도 내에서는 여러 가지 변형이 가능함은 물론이다. 그러므로, 본 발명의 범위는 설명된 실시예에 국한되어 정해져서는 안 되며, 후술하는 특허 청구의 범위뿐 아니라 이 특허 청구의 범위와 균등한 것들에 의해 정해져야 한다.While the present invention has been described in connection with what is presently considered to be practical exemplary embodiments, it is to be understood that the invention is not limited to the disclosed embodiments. Therefore, the scope of the present invention should not be limited to the described embodiments, but should be determined by the scope of the appended claims and equivalents thereof.

이상과 같이 본 발명은 비록 한정된 실시예와 도면에 의해 설명되었으나, 본 발명은 상기의 실시예에 한정되는 것은 아니며, 이는 본 발명이 속하는 분야에서 통상의 지식을 가진 자라면 이러한 기재로부터 다양한 수정 및 변형이 가능하다. 따라서, 본 발명 사상은 아래에 기재된 특허청구범위에 의해서만 파악되어야 하고, 이의 균등 또는 등가적 변형 모두는 본 발명 사상의 범주에 속한다고 할 것이다.While the present invention has been particularly shown and described with reference to exemplary embodiments thereof, it is to be understood that the invention is not limited to the disclosed exemplary embodiments, but, on the contrary, Modification is possible. Accordingly, the spirit of the present invention should be understood only by the appended claims, and all equivalent or equivalent variations thereof are included in the scope of the present invention.

100: 문서 임치 시스템
110: 전자문서 변환부
120: 전자문서 유사도 판단부
121: 토큰화부
122: 배열부
123: 매트릭스 변환부
124: 유사도 분석부
130: 트랜잭션 등록부
140: 원본증명부
150: 오프 체인 분산형 저장소
160: 공증센터 노드
100: Document Imposition System
110: electronic document conversion section
120: electronic document similarity judging unit
121: Tokenizer
122:
123: Matrix conversion unit
124:
130: Transaction register
140: Original proof part
150: off-chain distributed storage
160: Notarization center node

Claims (4)

사용자 단말에 설치된 웹 어플리케이션으로부터 제공된 제1 전자문서의 원본등록이 요청되면, 상기 제1 전자문서의 파일이름, 발급시기, 발급인 정보를 사용자의 공개 키로 암호화한 해시값으로 암호화하는 전자문서 변환부;
상기 제1 전자문서와 기 등록된 전자문서들 간의 명사 배열의 유사도를 분석하여 문서등록 적합도를 판단하는 전자문서 유사도 판단부;
상기 전자문서 유사도 판단부로부터 상기 제1 전자문서의 문서등록 적합이 판정되면, 상기 제1 전자문서의 해시 값 및 상기 해시 값에 사용된 공개키를 블록 체인 노드에 등록하는 트랜잭션 등록부;
상기 사용자 단말에 설치된 웹 어플리케이션으로부터 제공된 검증하고자 하는 제3 전자문서와 상기 제1 전자문서 간의 원본증명이 요청되면, 상기 제3 전자문서의 파일이름, 발급시기, 발급인 정보를 사용자의 공개 키로 암호화한 해시값으로 변환한 후, 상기 제3 전자문서의 해시값과 상기 블록 체인 노드에 등록된 제1 전자문서의 해시값 간의 동일성을 검증한 후, 제1 전자문서가 임치된 시간을 추적해 제3 전자문서와의 선후관계를 증명한 임치 증명서를 발급하는 원본증명부;
상기 전자문서 변환부에서 변환된 상기 제1 전자문서의 파일이름, 발급시기, 발급인 정보를 사용자의 공개 키로 암호화한 해시값을 분산저장하는 오프 체인 분산형 저장소; 및
하이퍼레저 패브릭 블록체인 네트워크에 피어(peer)로서 참여하여 트랜잭션을 생성하고, 하이퍼레저 익스플로러와 연동하여 상기 분산형 저장소 내의 블록체인 노드들 간의 네트워크를 모니터링하고, 암호화된 전자문서 파일을 보관하며, 전자문서가 훼손될 경우, 해당 전자문서가 저장된 블록체인 노드로부터 전자문서를 제공받아 복구하는 공증센터 노드를 포함하고,
상기 전자문서 유사도 판단부는
형태소 분석 라이브러리를 제공하고, 형태소 분석 라이브러리의 nouns() 함수를 통해 제1 전자문서의 파일이름 및 파일내용 중 명사만을 추출하여 문자열에서 분리시키는 토큰화부;
상기 토큰화부에서 추출된 명사들을 열 또는 행으로 순차 배열하는 배열부;
상기 배열부에서 배열된 문자 열 또는 행의 배열을 fit_transform() 함수를 이용하여 스파스 행렬(Sparse matrix)로 변환 및 toarry() 함수로 스파스 행렬(sparse matrix)을 상기 배열부의 배열 형태로 변환시키는 매트릭스 변환부; 및
TF-IDF(Term Frequency-Inverse Document Frequency) 알고리즘인 식 1을 이용하여 기 등록된 전자문서들과 제1 전자문서들 간에 유사한 단어들의 불린 빈도를 분석하는 유사도 분석부를 포함하고,
상기 유사도 분석부는
기 등록된 전자문서들과 제1 전자문서들 간에 유사한 단어들의 불린 빈도를 산출한 후, 산출된 불린 빈도를 이용하여 문서들 간의 전체 유사도를 분석하고, 상기 전체 유사도가 기 설정값 이상이면 유사하다고 판단한 판단신호를 제공하는 블록체인 기반 오프 체인 분산형 저장소를 활용한 문서 임치 시스템.
[식 1]
tf(t,d) = (단어 t가 포함된 문서(d)의 수) / (전체문서의 수)
When an original registration of a first electronic document provided from a web application installed in a user terminal is requested, encrypts the file name, the issuing time, and the issuer information of the first electronic document with a hash value encrypted with the user's public key, ;
An electronic document similarity degree judging unit for analyzing a similarity degree of a noun arrangement between the first electronic document and the previously registered electronic documents to determine a document registration suitability;
A transaction registration unit for registering the hash value of the first electronic document and the public key used for the hash value in the block chain node when the electronic document similarity degree judging unit judges that the first electronic document is suitable for document registration;
When the third electronic document to be verified and the first electronic document to be verified provided from the web application installed in the user terminal are requested, the file name, the issuing time, and the issuer information of the third electronic document are encrypted with the public key of the user The hash value of the first electronic document registered in the block chain node is verified after the hash value of the third electronic document is converted into a hash value, 3 An original proof part that issues an immigration certificate proving the subsequent relationship with the electronic document;
An off-chained distributed storage for storing the hash value obtained by encrypting the file name, the issuing time, and the issuer information of the first electronic document converted by the electronic document conversion unit with the public key of the user; And
A transaction is generated by participating as a peer in a hyperreflective fabric block chain network, interworking with a hyperrecessor explorer, monitoring a network between block chain nodes in the distributed repository, storing an encrypted electronic document file, A notarized center node for receiving and recovering an electronic document from a block chain node in which the electronic document is stored when the document is damaged,
The electronic document similarity degree determining unit
A tokenizing unit for providing a morpheme analysis library and extracting only nouns from a file name and file contents of a first electronic document through a nouns () function of a morphological analysis library and separating the nouns from a character string;
An arrangement unit for sequentially arranging the nouns extracted from the tokenizing unit in columns or rows;
A character string or an array of rows arranged in the array unit is converted into a sparse matrix using a fit_transform () function and a sparse matrix is converted into an array of the array unit using a toarry () ; And
A similarity analyzer for analyzing a frequency of similar words between previously registered electronic documents and first electronic documents using Equation 1, which is a TF-IDF (Term Frequency-Inverse Document Frequency)
The similarity analyzer
The overall similarity between documents is analyzed using the calculated frequency of borrowing after calculating the frequency of similar words between previously registered electronic documents and first electronic documents and if the overall similarity is equal to or greater than a predetermined value A document imposition system that utilizes a distributed chain-chained off-chain repository to provide judged decision signals.
[Formula 1]
tf (t, d) = (number of documents (d) containing the word t) / (number of total documents)
제1항에 있어서,
상기 전자문서 유사도 판단부는
형태소 분석 라이브러리의 nouns() 함수를 이용하여 상기 제1 전자문서 내의 문자들 중 명사를 추출 및 배열하고, 상기 배열을 fit_transform() 함수를 이용하여 매트릭스로 변환하는 블록체인 기반 오프 체인 분산형 저장소를 활용한 문서 임치 시스템.
The method according to claim 1,
The electronic document similarity degree determining unit
A block chain-based off-chain distributed store that extracts and arranges nouns of characters in the first electronic document using the nouns () function of the morphological analysis library, and converts the arrays into a matrix using a fit_transform () Used document imposition system.
삭제delete 삭제delete
KR1020190038651A 2019-04-02 2019-04-02 Document Acquisition System Using Off-Chain Distributed Storage Based on Block chain KR102002488B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020190038651A KR102002488B1 (en) 2019-04-02 2019-04-02 Document Acquisition System Using Off-Chain Distributed Storage Based on Block chain

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020190038651A KR102002488B1 (en) 2019-04-02 2019-04-02 Document Acquisition System Using Off-Chain Distributed Storage Based on Block chain

Publications (1)

Publication Number Publication Date
KR102002488B1 true KR102002488B1 (en) 2019-07-23

Family

ID=67439794

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020190038651A KR102002488B1 (en) 2019-04-02 2019-04-02 Document Acquisition System Using Off-Chain Distributed Storage Based on Block chain

Country Status (1)

Country Link
KR (1) KR102002488B1 (en)

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102147085B1 (en) * 2019-12-16 2020-08-24 주식회사 디지털존 Online document managing system based on blockchain technology capable of destroying the online document and control method thereof
KR102201679B1 (en) * 2020-06-12 2021-01-12 박성갑 My data sharing service method
KR102211937B1 (en) 2020-04-29 2021-02-04 에스지에이비엘씨 주식회사 A System of the Role-based Data Protection by using of the Off-Chain Ledger on the Blockchain Network
KR20210014084A (en) * 2019-07-29 2021-02-08 주식회사 그루크리에이티브랩 Method for providing electoric data using block-chain and system thereof
CN112800481A (en) * 2021-01-13 2021-05-14 伙伴愿景(广东)智能科技有限公司 Online community member mutual credit deposit system and method based on block chain and storage medium
CN112910989A (en) * 2021-01-28 2021-06-04 浙江网商银行股份有限公司 Data processing system, method and device based on block chain
KR20220130404A (en) * 2021-03-18 2022-09-27 최혜민 Information notarization server, method and computer program for converting and managing safety management contents into distributed blocks

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101796690B1 (en) 2016-06-28 2017-11-10 상명대학교 천안산학협력단 Firmware integrity verification system based on block chain and the method thereof
KR20180035477A (en) * 2016-09-29 2018-04-06 (주)시지온 Method for selecting headword of electronic document, method for providing electronic document, and computing system performing the same
KR101882802B1 (en) * 2017-04-17 2018-07-27 주식회사 코인플러그 Method for blockchain based management of documents in use of unspent transaction output based protocol and document management server using the same
KR20180110670A (en) * 2016-02-08 2018-10-10 린제이 몰로니 System and method for verifying authenticity of document information

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20180110670A (en) * 2016-02-08 2018-10-10 린제이 몰로니 System and method for verifying authenticity of document information
KR101796690B1 (en) 2016-06-28 2017-11-10 상명대학교 천안산학협력단 Firmware integrity verification system based on block chain and the method thereof
KR20180035477A (en) * 2016-09-29 2018-04-06 (주)시지온 Method for selecting headword of electronic document, method for providing electronic document, and computing system performing the same
KR101882802B1 (en) * 2017-04-17 2018-07-27 주식회사 코인플러그 Method for blockchain based management of documents in use of unspent transaction output based protocol and document management server using the same

Cited By (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20210014084A (en) * 2019-07-29 2021-02-08 주식회사 그루크리에이티브랩 Method for providing electoric data using block-chain and system thereof
KR102355918B1 (en) 2019-07-29 2022-02-07 주식회사 그루크리에이티브랩 Method for providing electoric data using block-chain and system thereof
KR102147085B1 (en) * 2019-12-16 2020-08-24 주식회사 디지털존 Online document managing system based on blockchain technology capable of destroying the online document and control method thereof
KR102211937B1 (en) 2020-04-29 2021-02-04 에스지에이비엘씨 주식회사 A System of the Role-based Data Protection by using of the Off-Chain Ledger on the Blockchain Network
KR102201679B1 (en) * 2020-06-12 2021-01-12 박성갑 My data sharing service method
CN112800481A (en) * 2021-01-13 2021-05-14 伙伴愿景(广东)智能科技有限公司 Online community member mutual credit deposit system and method based on block chain and storage medium
CN112910989A (en) * 2021-01-28 2021-06-04 浙江网商银行股份有限公司 Data processing system, method and device based on block chain
CN112910989B (en) * 2021-01-28 2022-09-02 浙江网商银行股份有限公司 Data processing system, method and device based on block chain
KR20220130404A (en) * 2021-03-18 2022-09-27 최혜민 Information notarization server, method and computer program for converting and managing safety management contents into distributed blocks
KR102662399B1 (en) * 2021-03-18 2024-05-02 최혜민 Information notarization server, method and computer program for converting and managing safety management contents into distributed blocks

Similar Documents

Publication Publication Date Title
KR102002488B1 (en) Document Acquisition System Using Off-Chain Distributed Storage Based on Block chain
Politou et al. Blockchain mutability: Challenges and proposed solutions
Dasgupta et al. A survey of blockchain from security perspective
JP7225208B2 (en) Pseudorandom Number Generation in Blockchain
KR102084674B1 (en) Method for managing content based on blockchain and system performing the method
KR20200011435A (en) Parameterizable Smart Contract
Martinovic et al. Blockchains for governmental services: Design principles, applications, and case studies
Qiao et al. Optimization of dynamic data traceability mechanism in Internet of Things based on consortium blockchain
Allard et al. MET 𝔸 P: revisiting Privacy-Preserving Data Publishing using secure devices
Rghioui Managing patient medical record using blockchain in developing countries: challenges and security issues
Yu et al. Technology and security analysis of cryptocurrency based on blockchain
Sharma et al. Tamper-proof multitenant data storage using blockchain
Huang et al. Smart contract watermarking based on code obfuscation
Politou et al. Privacy in blockchain
Le et al. Distributed secure search in the personal cloud
Aliya et al. Ensuring Information Security of Web Resources Based on Blockchain Technologies
Merrill Better not to know? The SHA1 collision & the limits of polemic computation
Chenli et al. Provnet: Networked blockchain for decentralized secure provenance
Menon et al. A comparatıve analysis on three consensus algorithms: proof of burn, proof of elapsed time, proof of authority
Manohar et al. Identity management in the age of blockchain 3.0
Perwej et al. A technological perspective of blockchain security
Gimenez-Aguilar et al. Malicious uses of blockchains by malware: from the analysis to Smart-Zephyrus
Ehmke et al. Properties of Decentralized Consensus Technology--Why not every Blockchain is a Blockchain
Bari et al. Generalized Immutable Ledger (GILED) using Blockchain Technology
Bouganim et al. Dynamic access-control policies on XML encrypted data

Legal Events

Date Code Title Description
E701 Decision to grant or registration of patent right
GRNT Written decision to grant