KR102406242B1 - Blockchain-based patch management device for patent specification management in patent brokering process - Google Patents

Blockchain-based patch management device for patent specification management in patent brokering process Download PDF

Info

Publication number
KR102406242B1
KR102406242B1 KR1020200039240A KR20200039240A KR102406242B1 KR 102406242 B1 KR102406242 B1 KR 102406242B1 KR 1020200039240 A KR1020200039240 A KR 1020200039240A KR 20200039240 A KR20200039240 A KR 20200039240A KR 102406242 B1 KR102406242 B1 KR 102406242B1
Authority
KR
South Korea
Prior art keywords
patent specification
patch
file
block
block chain
Prior art date
Application number
KR1020200039240A
Other languages
Korean (ko)
Other versions
KR20210121865A (en
Inventor
정부연
Original Assignee
주식회사 현신특허컨설팅
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 주식회사 현신특허컨설팅 filed Critical 주식회사 현신특허컨설팅
Priority to KR1020200039240A priority Critical patent/KR102406242B1/en
Publication of KR20210121865A publication Critical patent/KR20210121865A/en
Application granted granted Critical
Publication of KR102406242B1 publication Critical patent/KR102406242B1/en

Links

Images

Classifications

    • 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
    • G06Q30/00Commerce
    • G06Q30/06Buying, selling or leasing transactions
    • G06Q30/0601Electronic shopping [e-shopping]
    • G06Q30/0613Third-party assisted
    • 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
    • G06Q50/00Information and communication technology [ICT] specially adapted for implementation of business processes of specific business sectors, e.g. utilities or tourism
    • G06Q50/10Services
    • G06Q50/18Legal services
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/06Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols the encryption apparatus using shift registers or memories for block-wise or stream coding, e.g. DES systems or RC4; Hash functions; Pseudorandom sequence generators
    • H04L9/0643Hash functions, e.g. MD5, SHA, HMAC or f9 MAC
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/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)
  • Business, Economics & Management (AREA)
  • General Business, Economics & Management (AREA)
  • Strategic Management (AREA)
  • General Physics & Mathematics (AREA)
  • Accounting & Taxation (AREA)
  • Finance (AREA)
  • Tourism & Hospitality (AREA)
  • Economics (AREA)
  • Marketing (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Security & Cryptography (AREA)
  • Power Engineering (AREA)
  • Technology Law (AREA)
  • Development Economics (AREA)
  • Health & Medical Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Human Resources & Organizations (AREA)
  • Primary Health Care (AREA)
  • Stored Programmes (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

본 발명은 특허 중개 과정에서의 특허 명세서 관리용 블록체인 기반 패치 관리 장치에 관한 것으로, 적어도 하나의 패치가 적용되는 특허 명세서 파일 그룹 내의 복수의 특허 명세서 파일들에 관한 해시 테이블을 생성하는 해시 테이블 생성부, 상기 특허 명세서 파일 그룹에 대한 패치가 적용되는 경우 상기 해시 테이블을 기초로 상기 복수의 특허 명세서 파일들 각각에 관하여 특허 명세서 파일 블록이 횡방향으로 확장되는 제1 특허 명세서 블록체인을 구축하는 제1 블록체인 구축부 및 상기 특허 명세서 파일 그룹에 대한 패치가 적용되는 경우 상기 해시 테이블을 기초로 상기 복수의 특허 명세서 파일들에 관하여 특허 명세서 파일 블록이 종방향으로 연결되는 제2 특허 명세서 블록체인을 구축하는 제2 블록체인 구축부를 포함한다.The present invention relates to a block chain-based patch management apparatus for managing patent specifications in a patent brokerage process, and generates a hash table for generating a hash table for a plurality of patent specification files in a patent specification file group to which at least one patch is applied. When a patch for the group of patent specification files is applied, a first patent specification block chain in which a patent specification file block is horizontally expanded for each of the plurality of patent specification files based on the hash table is constructed 1 When the patch for the 1 block chain construction unit and the patent specification file group is applied, based on the hash table, a second patent specification block chain in which the patent specification file block is connected in the longitudinal direction with respect to the plurality of patent specification files It includes a second block chain construction unit to build.

Description

특허 중개 과정에서의 특허 명세서 관리용 블록체인 기반 패치 관리 장치{BLOCKCHAIN-BASED PATCH MANAGEMENT DEVICE FOR PATENT SPECIFICATION MANAGEMENT IN PATENT BROKERING PROCESS}Blockchain-based patch management device for patent specification management in the patent brokerage process

본 발명은 패치 관리 기술에 관한 것으로, 더욱 상세하게는 특허 명세서에 관한 관리 시스템의 다양한 패치 버전과 파일 변경을 블록체인을 통해 효과적으로 관리할 수 있는 특허 중개 과정에서의 특허 명세서 관리용 블록체인 기반 패치 관리 장치에 관한 것이다.The present invention relates to patch management technology, and more particularly, a blockchain-based patch for patent specification management in the patent brokerage process that can effectively manage various patch versions and file changes of the patent specification management system through blockchain It is about the management device.

차세대 SCADA의 패치 흐름은 제작사로부터 제공받은 패치파일에 대해 공급사 테스트베드에서 기능점검 후 중앙 SCADA PDS 서버에서 테스트, 이 후 전사업소에 맞추어 배포하는 형태로 구성될 수 있다.The next-generation SCADA patch flow can be configured in the form of testing the patch file provided by the manufacturer in the test bed of the supplier, testing it in the central SCADA PDS server, and then distributing it to all business offices.

특히, 패치 이력은 일반 문서로 관리되며 패치 상세 내용 공유에 대한 적절한 프로세스가 존재하지 않고, 패치 전과 후 변경된 파일에 대한 리스트업과 버전 관리가 미흡한 문제점이 존재한다.In particular, patch history is managed as a general document, and there is no proper process for sharing patch details, and there are problems in that there is insufficient list-up and version management of files that have been changed before and after patching.

한국공개특허 제10-2005-0117393(2005.12.14)호는 패치관리 장치 및 방법과 그 프로그램을 기록한 기록매체에 관한 것으로, 패치 라이브러리를 로딩하는 단계와, 패치 라이브러리를 참조하는 프로세스를 검색하는 단계와, 패치 라이브러리를 검색된 프로세스와 링크하는 단계를 포함하는 패치관리 방법을 제공함으로써 현재 작동중인 시스템을 재부팅하지 않고서도 패치파일을 적용할 수 있고 응용 프로그램이 참조하는 라이브러리를 응용 프로그램의 실행 중에도 패치할 수 있는 기술을 개시하고 있다.Korean Patent Application Laid-Open No. 10-2005-0117393 (2005.12.14) relates to a patch management apparatus and method and a recording medium recording the program, the steps of loading a patch library and searching for a process referring to the patch library And, by providing a patch management method including the step of linking the patch library with the searched process, a patch file can be applied without rebooting the currently running system, and the library referenced by the application can be patched even while the application is running. technology is disclosed.

한국공개특허 제10-2005-0117393(2005.12.14)호Korean Patent Publication No. 10-2005-0117393 (2005.12.14)

본 발명의 일 실시예는 특허 명세서에 관한 관리 시스템의 다양한 패치 버전과 파일 변경을 블록체인을 통해 효과적으로 관리할 수 있는 특허 중개 과정에서의 특허 명세서 관리용 블록체인 기반 패치 관리 장치를 제공하고자 한다.An embodiment of the present invention is to provide a blockchain-based patch management device for patent specification management in a patent brokerage process that can effectively manage various patch versions and file changes of a patent specification management system through blockchain.

본 발명의 일 실시예는 해시테이블 생성 후 파일별 무결성 및 버전 관리를 위한 블록체인, 패치별 변경되는 파일들에 대한 블록체인을 구축할 수 있는 특허 중개 과정에서의 특허 명세서 관리용 블록체인 기반 패치 관리 장치를 제공하고자 한다.An embodiment of the present invention is a blockchain-based patch for patent specification management in the patent brokerage process that can build a block chain for file-specific integrity and version management after hash table creation, and a block chain for files that are changed for each patch We want to provide a management device.

본 발명의 일 실시예는 패치별 블록체인을 통해 사업소간 적용된 패치에 대한 검증 가능하고 누락된 파일이나 위/변조된 파일을 탐지할 수 있는 특허 중개 과정에서의 특허 명세서 관리용 블록체인 기반 패치 관리 장치를 제공하고자 한다.One embodiment of the present invention is a blockchain-based patch management for patent specification management in the patent brokerage process that can verify and detect missing or forged/falsified files for patches applied between offices through patch-specific block chain. We want to provide a device.

실시예들 중에서, 특허 중개 과정에서의 특허 명세서 관리용 블록체인 기반 패치 관리 장치는 적어도 하나의 패치가 적용되는 특허 명세서 파일 그룹 내의 복수의 특허 명세서 파일들에 관한 해시 테이블을 생성하는 해시 테이블 생성부, 상기 특허 명세서 파일 그룹에 대한 패치가 적용되는 경우 상기 해시 테이블을 기초로 상기 복수의 특허 명세서 파일들 각각에 관하여 특허 명세서 파일 블록이 횡방향으로 확장되는 제1 특허 명세서 블록체인을 구축하는 제1 블록체인 구축부 및 상기 특허 명세서 파일 그룹에 대한 패치가 적용되는 경우 상기 해시 테이블을 기초로 상기 복수의 특허 명세서 파일들에 관하여 특허 명세서 파일 블록이 종방향으로 연결되는 제2 특허 명세서 블록체인을 구축하는 제2 블록체인 구축부를 포함한다.Among the embodiments, the block chain-based patch management device for patent specification management in the patent brokerage process is a hash table generator that generates a hash table for a plurality of patent specification files in a patent specification file group to which at least one patch is applied. , a first to construct a first patent specification block chain in which a patent specification file block is horizontally expanded for each of the plurality of patent specification files based on the hash table when the patch for the patent specification file group is applied When a patch for the block chain construction unit and the patent specification file group is applied, based on the hash table, build a second patent specification block chain in which the patent specification file block is connected in the longitudinal direction with respect to the plurality of patent specification files It includes a second block chain construction unit.

개시된 기술은 다음의 효과를 가질 수 있다. 다만, 특정 실시예가 다음의 효과를 전부 포함하여야 한다거나 다음의 효과만을 포함하여야 한다는 의미는 아니므로, 개시된 기술의 권리범위는 이에 의하여 제한되는 것으로 이해되어서는 아니 될 것이다.The disclosed technology may have the following effects. However, this does not mean that a specific embodiment should include all of the following effects or only the following effects, so the scope of the disclosed technology should not be understood as being limited thereby.

본 발명의 일 실시예에 따른 특허 중개 과정에서의 특허 명세서 관리용 블록체인 기반 패치 관리 장치는 해시테이블 생성 후 파일별 무결성 및 버전 관리를 위한 블록체인, 패치별 변경되는 파일들에 대한 블록체인을 구축할 수 있다.The block chain-based patch management device for patent specification management in the patent brokerage process according to an embodiment of the present invention is a block chain for file-specific integrity and version management after hash table creation, and a block chain for files changed per patch. can be built

본 발명의 일 실시예에 따른 특허 중개 과정에서의 특허 명세서 관리용 블록체인 기반 패치 관리 장치는 패치별 블록체인을 통해 사업소간 적용된 패치에 대한 검증 가능하고 누락된 파일이나 위/변조된 파일을 탐지할 수 있다.A block chain-based patch management device for patent specification management in the patent brokerage process according to an embodiment of the present invention detects a verifiable and missing or forged/falsified file for patches applied between offices through a block chain for each patch can do.

도 1은 본 발명에 따른 패치 관리 시스템의 구성을 설명하는 도면이다.
도 2는 도 1에 있는 패치 관리 장치의 물리적 구성을 설명하는 도면이다.
도 3은 도 1에 있는 패치 관리 장치의 기능적 구성을 설명하는 블록도이다.
도 4는 도 1에 있는 패치 관리 장치에서 수행되는 블록체인 기반 패치 관리 과정을 설명하는 순서도이다.
도 5는 패치 관리 장치에서 수행되는 블록체인화 과정의 일 실시예를 설명하는 도면이다.
1 is a diagram for explaining the configuration of a patch management system according to the present invention.
FIG. 2 is a diagram for explaining a physical configuration of the patch management apparatus shown in FIG. 1 .
3 is a block diagram illustrating a functional configuration of the patch management apparatus shown in FIG. 1 .
4 is a flowchart illustrating a blockchain-based patch management process performed in the patch management device of FIG. 1 .
5 is a diagram for explaining an embodiment of a block chaining process performed in a patch management device.

본 발명에 관한 설명은 구조적 내지 기능적 설명을 위한 실시예에 불과하므로, 본 발명의 권리범위는 본문에 설명된 실시예에 의하여 제한되는 것으로 해석되어서는 아니 된다. 즉, 실시예는 다양한 변경이 가능하고 여러 가지 형태를 가질 수 있으므로 본 발명의 권리범위는 기술적 사상을 실현할 수 있는 균등물들을 포함하는 것으로 이해되어야 한다. 또한, 본 발명에서 제시된 목적 또는 효과는 특정 실시예가 이를 전부 포함하여야 한다거나 그러한 효과만을 포함하여야 한다는 의미는 아니므로, 본 발명의 권리범위는 이에 의하여 제한되는 것으로 이해되어서는 아니 될 것이다.Since the description of the present invention is merely an embodiment for structural or functional description, the scope of the present invention should not be construed as being limited by the embodiment described in the text. That is, since the embodiment may have various changes and may have various forms, it should be understood that the scope of the present invention includes equivalents capable of realizing the technical idea. In addition, since the object or effect presented in the present invention does not mean that a specific embodiment should include all of them or only such effects, it should not be understood that the scope of the present invention is limited thereby.

한편, 본 출원에서 서술되는 용어의 의미는 다음과 같이 이해되어야 할 것이다.On the other hand, the meaning of the terms described in the present application should be understood as follows.

"제1", "제2" 등의 용어는 하나의 구성요소를 다른 구성요소로부터 구별하기 위한 것으로, 이들 용어들에 의해 권리범위가 한정되어서는 아니 된다. 예를 들어, 제1 구성요소는 제2 구성요소로 명명될 수 있고, 유사하게 제2 구성요소도 제1 구성요소로 명명될 수 있다.Terms such as “first” and “second” are for distinguishing one component from another, and the scope of rights should not be limited by these terms. For example, a first component may be termed a second component, and similarly, a second component may also be termed a first component.

어떤 구성요소가 다른 구성요소에 "연결되어"있다고 언급된 때에는, 그 다른 구성요소에 직접적으로 연결될 수도 있지만, 중간에 다른 구성요소가 존재할 수도 있다고 이해되어야 할 것이다. 반면에, 어떤 구성요소가 다른 구성요소에 "직접 연결되어"있다고 언급된 때에는 중간에 다른 구성요소가 존재하지 않는 것으로 이해되어야 할 것이다. 한편, 구성요소들 간의 관계를 설명하는 다른 표현들, 즉 "~사이에"와 "바로 ~사이에" 또는 "~에 이웃하는"과 "~에 직접 이웃하는" 등도 마찬가지로 해석되어야 한다.When a component is referred to as “connected” to another component, it may be directly connected to the other component, but it should be understood that other components may exist in between. On the other hand, when it is mentioned that a certain element is "directly connected" to another element, it should be understood that the other element does not exist in the middle. On the other hand, other expressions describing the relationship between elements, that is, "between" and "between" or "neighboring to" and "directly adjacent to", etc., should be interpreted similarly.

단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한 복수의 표현을 포함하는 것으로 이해되어야 하고, "포함하다"또는 "가지다" 등의 용어는 실시된 특징, 숫자, 단계, 동작, 구성요소, 부분품 또는 이들을 조합한 것이 존재함을 지정하려는 것이며, 하나 또는 그 이상의 다른 특징이나 숫자, 단계, 동작, 구성요소, 부분품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.The singular expression is to be understood as including the plural expression unless the context clearly dictates otherwise, and terms such as "comprises" or "have" refer to the embodied feature, number, step, action, component, part or these It is intended to indicate that a combination exists, and it should be understood that it does not preclude the possibility of the existence or addition of one or more other features or numbers, steps, operations, components, parts, or combinations thereof.

각 단계들에 있어 식별부호(예를 들어, a, b, c 등)는 설명의 편의를 위하여 사용되는 것으로 식별부호는 각 단계들의 순서를 설명하는 것이 아니며, 각 단계들은 문맥상 명백하게 특정 순서를 기재하지 않는 이상 명기된 순서와 다르게 일어날 수 있다. 즉, 각 단계들은 명기된 순서와 동일하게 일어날 수도 있고 실질적으로 동시에 수행될 수도 있으며 반대의 순서대로 수행될 수도 있다.In each step, identification numbers (eg, a, b, c, etc.) are used for convenience of description, and identification numbers do not describe the order of each step, and each step clearly indicates a specific order in context. Unless otherwise specified, it may occur in a different order from the specified order. That is, each step may occur in the same order as specified, may be performed substantially simultaneously, or may be performed in the reverse order.

본 발명은 컴퓨터가 읽을 수 있는 기록매체에 컴퓨터가 읽을 수 있는 코드로서 구현될 수 있고, 컴퓨터가 읽을 수 있는 기록 매체는 컴퓨터 시스템에 의하여 읽혀질 수 있는 데이터가 저장되는 모든 종류의 기록 장치를 포함한다. 컴퓨터가 읽을 수 있는 기록 매체의 예로는 ROM, RAM, CD-ROM, 자기 테이프, 플로피 디스크, 광 데이터 저장 장치 등이 있다. 또한, 컴퓨터가 읽을 수 있는 기록 매체는 네트워크로 연결된 컴퓨터 시스템에 분산되어, 분산 방식으로 컴퓨터가 읽을 수 있는 코드가 저장되고 실행될 수 있다.The present invention can be embodied as computer-readable codes on a computer-readable recording medium, and the computer-readable recording medium includes all types of recording devices in which data readable by a computer system is stored. . Examples of the computer-readable recording medium include ROM, RAM, CD-ROM, magnetic tape, floppy disk, optical data storage device, and the like. In addition, the computer-readable recording medium is distributed in a computer system connected to a network, so that the computer-readable code can be stored and executed in a distributed manner.

여기서 사용되는 모든 용어들은 다르게 정의되지 않는 한, 본 발명이 속하는 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미를 가진다. 일반적으로 사용되는 사전에 정의되어 있는 용어들은 관련 기술의 문맥상 가지는 의미와 일치하는 것으로 해석되어야 하며, 본 출원에서 명백하게 정의하지 않는 한 이상적이거나 과도하게 형식적인 의미를 지니는 것으로 해석될 수 없다.All terms used herein have the same meaning as commonly understood by one of ordinary skill in the art to which the present invention belongs, unless otherwise defined. Terms defined in the dictionary should be interpreted as being consistent with the meaning of the context of the related art, and cannot be interpreted as having an ideal or excessively formal meaning unless explicitly defined in the present application.

도 1은 본 발명에 따른 패치 관리 시스템의 구성을 설명하는 도면이다.1 is a diagram for explaining the configuration of a patch management system according to the present invention.

도 1을 참조하면, 패치 관리 시스템(100)은 사용자 단말(110), 패치 관리 장치(130) 및 데이터베이스(150)를 포함할 수 있다.Referring to FIG. 1 , the patch management system 100 may include a user terminal 110 , a patch management apparatus 130 , and a database 150 .

사용자 단말(110)은 패치 요청에 따라 패치 파일을 수신하여 적용할 수 있는 컴퓨팅 장치에 해당할 수 있고, 스마트폰, 노트북 또는 컴퓨터로 구현될 수 있으며, 반드시 이에 한정되지 않고, 태블릿 PC 등 다양한 디바이스로도 구현될 수 있다. 사용자 단말(110)는 패치 관리 장치(130)와 네트워크를 통해 연결될 수 있고, 복수의 사용자 단말(110)들은 패치 관리 장치(130)와 동시에 연결될 수 있다. The user terminal 110 may correspond to a computing device capable of receiving and applying a patch file in response to a patch request, and may be implemented as a smartphone, a notebook computer, or a computer, but is not necessarily limited thereto, and various devices such as a tablet PC can also be implemented. The user terminal 110 may be connected to the patch management apparatus 130 through a network, and a plurality of user terminals 110 may be simultaneously connected to the patch management apparatus 130 .

패치 관리 장치(130)는 사용자 단말(110)에 적용되는 패치의 이력을 관리할 수 있는 컴퓨터 또는 프로그램에 해당하는 서버로 구현될 수 있다. 패치 관리 장치(130)는 사용자 단말(110)과 블루투스, WiFi, 통신망 등을 통해 무선으로 연결될 수 있고, 네트워크를 통해 사용자 단말(110)과 데이터를 주고받을 수 있다.The patch management apparatus 130 may be implemented as a server corresponding to a computer or program capable of managing the history of patches applied to the user terminal 110 . The patch management apparatus 130 may be wirelessly connected to the user terminal 110 through Bluetooth, WiFi, a communication network, etc., and may exchange data with the user terminal 110 through the network.

일 실시예에서, 패치 관리 장치(130)는 데이터베이스(150)와 연동하여 패치 이력 관리에 관한 동작을 수행할 수 있다. 한편, 패치 관리 장치(130)는 도 1과 달리, 데이터베이스(150)를 내부에 포함하여 구현될 수 있다. 또한, 패치 관리 장치(130)는 프로세서, 메모리, 사용자 입출력부 및 네트워크 입출력부를 포함하여 구현될 수 있으며, 이에 대한 구체적인 설명은 생략한다.In an embodiment, the patch management apparatus 130 may interwork with the database 150 to perform an operation related to patch history management. Meanwhile, unlike FIG. 1 , the patch management apparatus 130 may be implemented by including the database 150 therein. Also, the patch management apparatus 130 may be implemented including a processor, a memory, a user input/output unit, and a network input/output unit, and a detailed description thereof will be omitted.

데이터베이스(150)는 패치 관리 장치(130)의 동작 과정에서 필요한 다양한 정보들을 저장하는 저장장치에 해당할 수 있다. 데이터베이스(150)는 사용자 단말(110)로부터 수집된 패치 적용 여부 및 패치와 연관된 시스템 정보를 저장할 수 있고, 사용자 단말(110)에 의해 수행되는 패치 설치의 결과 정보를 저장할 수 있으며, 반드시 이에 한정되지 않고, 특허 중개 과정에서의 특허 명세서 관리용 블록체인 기반 패치 관리 과정에서 다양한 형태로 수집 또는 가공된 정보들을 저장할 수 있다.The database 150 may correspond to a storage device for storing various types of information required in the operation process of the patch management device 130 . The database 150 may store whether or not the patch is applied and system information related to the patch collected from the user terminal 110, and may store result information of the patch installation performed by the user terminal 110, but is not necessarily limited thereto. It is possible to store information collected or processed in various forms in the process of managing a block chain-based patch for patent specification management in the process of patent brokerage.

도 2는 도 1에 있는 패치 관리 장치의 물리적 구성을 설명하는 도면이다.FIG. 2 is a diagram for explaining a physical configuration of the patch management apparatus shown in FIG. 1 .

도 2를 참조하면, 패치 관리 장치(130)는 프로세서(210), 메모리(230), 사용자 입출력부(250) 및 네트워크 입출력부(270)를 포함하여 구현될 수 있다.Referring to FIG. 2 , the patch management apparatus 130 may be implemented to include a processor 210 , a memory 230 , a user input/output unit 250 , and a network input/output unit 270 .

프로세서(210)는 패치 관리 장치(130)가 동작하는 과정에서의 각 단계들을 처리하는 프로시저를 실행할 수 있고, 그 과정 전반에서 읽혀지거나 작성되는 메모리(230)를 관리할 수 있으며, 메모리(230)에 있는 휘발성 메모리와 비휘발성 메모리 간의 동기화 시간을 스케줄할 수 있다. 프로세서(210)는 패치 관리 장치(130)의 동작 전반을 제어할 수 있고, 메모리(230), 사용자 입출력부(250) 및 네트워크 입출력부(270)와 전기적으로 연결되어 이들 간의 데이터 흐름을 제어할 수 있다. 프로세서(210)는 패치 관리 장치(130)의 CPU(Central Processing Unit)로 구현될 수 있다.The processor 210 may execute a procedure for processing each step in the process in which the patch management device 130 operates, and manage the memory 230 read or written throughout the process, and the memory 230 ) can schedule the synchronization time between volatile and non-volatile memory in The processor 210 may control the overall operation of the patch management device 130 , and is electrically connected to the memory 230 , the user input/output unit 250 , and the network input/output unit 270 to control data flow between them. can The processor 210 may be implemented as a central processing unit (CPU) of the patch management apparatus 130 .

메모리(230)는 SSD(Solid State Drive) 또는 HDD(Hard Disk Drive)와 같은 비휘발성 메모리로 구현되어 패치 관리 장치(130)에 필요한 데이터 전반을 저장하는데 사용되는 보조기억장치를 포함할 수 있고, RAM(Random Access Memory)과 같은 휘발성 메모리로 구현된 주기억장치를 포함할 수 있다.The memory 230 is implemented as a non-volatile memory such as a solid state drive (SSD) or a hard disk drive (HDD) and may include an auxiliary storage device used to store overall data required for the patch management device 130, It may include a main memory implemented as a volatile memory such as random access memory (RAM).

사용자 입출력부(250)는 사용자 입력을 수신하기 위한 환경 및 사용자에게 특정 정보를 출력하기 위한 환경을 포함할 수 있다. 예를 들어, 사용자 입출력부(250)는 터치 패드, 터치 스크린, 화상 키보드 또는 포인팅 장치와 같은 어댑터를 포함하는 입력장치 및 모니터 또는 터치스크린과 같은 어댑터를 포함하는 출력장치를 포함할 수 있다. 일 실시예에서, 사용자 입출력부(250)는 원격 접속을 통해 접속되는 컴퓨팅 장치에 해당할 수 있고, 그러한 경우, 패치 관리 장치(130)는 서버로서 수행될 수 있다.The user input/output unit 250 may include an environment for receiving a user input and an environment for outputting specific information to the user. For example, the user input/output unit 250 may include an input device including an adapter such as a touch pad, a touch screen, an on-screen keyboard, or a pointing device, and an output device including an adapter such as a monitor or a touch screen. In an embodiment, the user input/output unit 250 may correspond to a computing device accessed through remote access, and in such a case, the patch management device 130 may be implemented as a server.

네트워크 입출력부(270)은 네트워크를 통해 외부 장치 또는 시스템과 연결하기 위한 환경을 포함하고, 예를 들어, LAN(Local Area Network), MAN(Metropolitan Area Network), WAN(Wide Area Network) 및 VAN(Value Added Network) 등의 통신을 위한 어댑터를 포함할 수 있다.The network input/output unit 270 includes an environment for connecting with an external device or system through a network, for example, a local area network (LAN), a metropolitan area network (MAN), a wide area network (WAN), and a VAN (Wide Area Network) (VAN). It may include an adapter for communication such as Value Added Network).

도 3은 도 1에 있는 패치 관리 장치의 기능적 구성을 설명하는 블록도이다.3 is a block diagram illustrating a functional configuration of the patch management apparatus shown in FIG. 1 .

도 3을 참조하면, 패치 관리 장치(130)는 해시 테이블 생성부(310), 제1 블록체인 구축부(330), 제2 블록체인 구축부(350) 및 제어부(370)를 포함할 수 있다.Referring to FIG. 3 , the patch management apparatus 130 may include a hash table generation unit 310 , a first block chain construction unit 330 , a second block chain construction unit 350 , and a control unit 370 . .

해시 테이블 생성부(310) 적어도 하나의 패치가 적용되는 특허 명세서 파일 그룹 내의 복수의 특허 명세서 파일들에 관한 해시 테이블을 생성할 수 있다. 여기에서, 해시 테이블은 패치 적용의 대상이 되는 특허 명세서 파일 그룹 내의 모든 파일들에 대응되는 엔트리를 가진 테이블로서 각 엔트리는 대응되는 파일의 최신 버전에 대한 해시값을 저장할 수 있다.The hash table generator 310 may generate a hash table for a plurality of patent specification files in a patent specification file group to which at least one patch is applied. Here, the hash table is a table having entries corresponding to all files in the patent specification file group to be patched, and each entry may store a hash value of the latest version of the corresponding file.

즉, 해시 테이블 생성부(310)는 동일한 패치가 적용되는 특허 명세서 파일들을 그룹화하여 특허 명세서 파일 그룹을 생성할 수 있고, 특허 명세서 파일 그룹 별로 독립적인 해시 테이블을 생성할 수 있다. 각 해시 테이블의 엔트리는 대응되는 특허 명세서 파일의 해시값을 저장할 수 있고, 해당 특허 명세서 파일과 연관된 특허 명세서 파일 블록과 연결될 수 있다. 따라서, 패치 관리 장치(130)는 해시 테이블 생성부(310)에 의해 생성된 해시 테이블을 기초로 패치 이력 또는 패치 버전과 연관된 특정 특허 명세서 파일에 접근할 수 있다.That is, the hash table generator 310 may create a patent specification file group by grouping patent specification files to which the same patch is applied, and may generate an independent hash table for each patent specification file group. Each hash table entry may store a hash value of a corresponding patent specification file, and may be linked to a patent specification file block associated with the corresponding patent specification file. Accordingly, the patch management apparatus 130 may access a specific patent specification file associated with a patch history or patch version based on the hash table generated by the hash table generator 310 .

제1 블록체인 구축부(330)는 특허 명세서 파일 그룹에 대한 패치가 적용되는 경우 해시 테이블을 기초로 복수의 특허 명세서 파일들 각각에 관하여 특허 명세서 파일 블록이 횡방향으로 확장되는 제1 특허 명세서 블록체인을 구축할 수 있다. 여기에서, 특허 명세서 파일 블록은 하나의 특허 명세서 파일에 대응하여 생성되고 블록체인을 구성하는 블록에 해당할 수 있다. 특허 명세서 파일 블록은 블록 헤더(header)와 블록 바디(body)로 구성될 수 있으며, 블록 헤더는 해시값들을 저장하며, 블록 바디는 패치 내용을 저장할 수 있다.The first block chain construction unit 330 is a first patent specification block in which the patent specification file block is horizontally expanded with respect to each of the plurality of patent specification files based on the hash table when the patch for the patent specification file group is applied You can build a chain. Here, the patent specification file block is generated corresponding to one patent specification file and may correspond to a block constituting a block chain. The patent specification file block may be composed of a block header and a block body, the block header may store hash values, and the block body may store patch contents.

또한, 제1 특허 명세서 블록체인은 특허 명세서 파일 별로 패치가 적용되어 버전업(version up)된 특허 명세서 파일들을 서로 연결함으로써 생성될 수 있고, 각 특허 명세서 파일들은 이전 블록의 해시값과 해당 특허 명세서 파일의 해시값을 포함하는 특허 명세서 파일 블록으로 표현되어 이전 블록에 대응되는 특허 명세서 파일과 연결될 수 있다. 한편, 제1 특허 명세서 블록체인은 하나의 특허 명세서 파일에 대해 연속하여 생성되고 각 버전에 대응되는 특허 명세서 파일 블록들은 횡방향으로 확장되어 연결될 수 있다.In addition, the first patent specification block chain can be created by linking the version-updated patent specification files by applying a patch to each patent specification file, and each patent specification file includes the hash value of the previous block and the corresponding patent specification. It is expressed as a patent specification file block including the hash value of the file and can be linked to the patent specification file corresponding to the previous block. On the other hand, the first patent specification block chain is continuously generated for one patent specification file, and the patent specification file blocks corresponding to each version can be extended and connected in the lateral direction.

보다 구체적으로, 해시 테이블의 각 엔트리는 특허 명세서 파일 그룹에 포함된 각 특허 명세서 파일들과 일대일 대응될 수 있고, 각 엔트리에 저장된 해시값은 가장 최근에 버전업된 특허 명세서 파일의 해시값에 해당할 수 있다. 따라서, 패치 관리 장치(130)는 해시 테이블의 각 엔트리를 통해 각 특허 명세서 파일의 가장 최신 버전에 접근할 수 있고, 해당 버전에 대응되는 특허 명세서 파일 블록의 이전 블록 해시값을 통해 이전 버전의 특허 명세서 파일에 반복적으로 접근할 수 있다.More specifically, each entry in the hash table may correspond one-to-one with each patent specification file included in the patent specification file group, and the hash value stored in each entry corresponds to the hash value of the most recently versioned patent specification file. can do. Accordingly, the patch management device 130 can access the most recent version of each patent specification file through each entry in the hash table, and the previous version of the patent through the hash value of the previous block of the patent specification file block corresponding to the version. The specification file can be accessed recursively.

일 실시예에서, 제1 블록체인 구축부(330)는 복수의 특허 명세서 파일들 중 패치가 적용되는 적어도 하나의 대상 특허 명세서 파일을 검출하는 제1 단계, 해시 테이블을 기초로 적어도 하나의 대상 특허 명세서 파일에 대응하는 제1 특허 명세서 파일 블록을 결정하는 제2 단계, 제1 특허 명세서 파일 블록에 해시 함수를 적용하여 제1 해시값을 산출하는 제3 단계, 적어도 하나의 대상 특허 명세서 파일에 패치를 적용하여 목적 특허 명세서 파일을 생성하고 목적 특허 명세서 파일에 대한 제2 해시값을 산출하는 제4 단계, 제1 해시값과 제2 해시값을 포함하는 제2 파일 블록을 생성하는 제5 단계 및 제2 해시값을 기초로 해시 테이블을 갱신하는 제6 단계를 수행할 수 있다.In one embodiment, the first block chain construction unit 330 is a first step of detecting at least one target patent specification file to which a patch is applied among a plurality of patent specification files, at least one target patent based on a hash table A second step of determining a first patent specification file block corresponding to the specification file, a third step of calculating a first hash value by applying a hash function to the first patent specification file block, patching at least one target patent specification file A fourth step of generating a target patent specification file by applying and calculating a second hash value for the target patent specification file, a fifth step of generating a second file block including a first hash value and a second hash value; A sixth step of updating the hash table based on the second hash value may be performed.

보다 구체적으로, 제1 블록체인 구축부(330)는 복수의 특허 명세서 파일들 중 패치가 적용되는 적어도 하나의 대상 특허 명세서 파일을 검출할 수 있다. 특허 명세서 파일 그룹을 대상으로 패치가 수행되는 경우라고 하더라도, 패치의 내용에 따라 특정 특허 명세서 파일만 변경될 수 있으며, 제1 블록체인 구축부(330)는 패치로 인해 파일 변경이 예상되는 특허 명세서 파일을 대상 특허 명세서 파일로서 검출할 수 있다.More specifically, the first block chain construction unit 330 may detect at least one target patent specification file to which a patch is applied from among a plurality of patent specification files. Even if the patch is performed on the patent specification file group, only a specific patent specification file may be changed according to the contents of the patch, and the first block chain construction unit 330 is a patent specification whose file change is expected due to the patch. The file may be detected as a target patent specification file.

또한, 제1 블록체인 구축부(330)는 해시 테이블을 기초로 적어도 하나의 대상 특허 명세서 파일에 대응하는 제1 특허 명세서 파일 블록을 결정할 수 있다. 제1 블록체인 구축부(330)는 해시 테이블에 저장된 해시값을 기초로 대상 특허 명세서 파일에 대응되는 특허 명세서 파일 블록에 접근할 수 있다.Also, the first block chain construction unit 330 may determine a first patent specification file block corresponding to at least one target patent specification file based on the hash table. The first block chain construction unit 330 may access the patent specification file block corresponding to the target patent specification file based on the hash value stored in the hash table.

또한, 제1 블록체인 구축부(330)는 제1 특허 명세서 파일 블록에 해시 함수를 적용하여 제1 해시값을 산출할 수 있다. 이 경우, 패치 관리 장치(130)는 해시 함수를 사전에 정의하여 활용할 수 있으며, 예를 들어 해시 함수는 SHA-256에 해당할 수 있다. 즉, 제1 블록체인 구축부(330)는 제1 특허 명세서 파일 블록 전체를 해시 함수에 입력하여 출력으로서 제1 해시값을 획득할 수 있다.Also, the first block chain construction unit 330 may calculate a first hash value by applying a hash function to the first patent specification file block. In this case, the patch management apparatus 130 may define and utilize a hash function in advance, for example, the hash function may correspond to SHA-256. That is, the first block chain construction unit 330 may obtain the first hash value as an output by inputting the entire first patent specification file block to the hash function.

또한, 제1 블록체인 구축부(330)는 적어도 하나의 특허 명세서 대상 파일에 패치를 적용하여 목적 특허 명세서 파일을 생성하고 목적 특허 명세서 파일에 대한 제2 해시값을 산출할 수 있다. 제1 블록체인 구축부(330)는 패치 파일을 기초로 대상 특허 명세서 파일에 패치를 적용할 수 있고, 패치 적용 결과로서 목적 특허 명세서 파일을 생성할 수 있다. 목적 특허 명세서 파일은 패치 적용으로 생성된 특허 명세서 파일에 해당할 수 있고, 패치에 관한 정보를 포함하여 생성될 수 있다. 예를 들어, 패치에 관한 정보는 패치에 관한 시점, 버전, 용량 및 내역 등을 포함할 수 있다.In addition, the first block chain construction unit 330 may apply a patch to at least one patent specification target file to generate a target patent specification file and calculate a second hash value for the target patent specification file. The first block chain construction unit 330 may apply a patch to the target patent specification file based on the patch file, and may generate a target patent specification file as a result of applying the patch. The target patent specification file may correspond to a patent specification file generated by applying a patch, and may be generated including information about the patch. For example, the information about the patch may include a time point, a version, a capacity, and a history of the patch.

또한, 제1 블록체인 구축부(330)는 목적 특허 명세서 파일에 대해 해시 함수를 적용하여 제2 해시값을 산출할 수 있다. 이 때, 사용되는 해시 함수는 제1 해시값 산출에 사용되는 해시 함수와 동일할 수 있으나, 반드시 이에 한정되지 않고, 필요한 경우 서로 다른 해시 함수를 사용할 수 있다.Also, the first block chain construction unit 330 may calculate a second hash value by applying a hash function to the target patent specification file. In this case, the hash function used may be the same as the hash function used for calculating the first hash value, but is not limited thereto, and different hash functions may be used if necessary.

또한, 제1 블록체인 구축부(330)는 제1 해시값과 제2 해시값을 포함하는 제2 특허 명세서 파일 블록을 생성할 수 있다. 제2 특허 명세서 파일 블록은 대상 특허 명세서 파일에 대해 버전업된 특허 명세서 파일에 대응될 수 있고, 이전 블록의 해시값을 포함하여 정의됨으로써 제1 특허 명세서 파일 블록과 연결될 수 있다.Also, the first block chain construction unit 330 may generate a second patent specification file block including a first hash value and a second hash value. The second patent specification file block may correspond to the versioned patent specification file for the target patent specification file, and may be defined including the hash value of the previous block, thereby being linked to the first patent specification file block.

또한, 제1 블록체인 구축부(330)는 제2 해시값을 기초로 해시 테이블을 갱신할 수 있다. 즉, 제1 블록체인 구축부(330)는 해시 테이블에 대해 가장 최신의 버전업된 특허 명세서 파일의 해시값으로 최신화 할 수 있다.Also, the first block chain construction unit 330 may update the hash table based on the second hash value. That is, the first block chain construction unit 330 may update the hash table with the hash value of the latest versioned patent specification file.

제2 블록체인 구축부(350)는 특허 명세서 파일 그룹에 대한 패치가 적용되는 경우 해시 테이블을 기초로 복수의 특허 명세서 파일들에 관하여 특허 명세서 파일 블록이 종방향으로 연결되는 제2 특허 명세서 블록체인을 구축할 수 있다. 즉, 제2 블록체인 구축부(350)는 패치 버전 별로 연관된 특허 명세서 파일 블록들을 서로 연결함으로써 패치 버전별 이력 관리를 지원할 수 있다.The second block chain construction unit 350 is a second patent specification block chain in which the patent specification file block is longitudinally connected with respect to a plurality of patent specification files based on the hash table when the patch for the patent specification file group is applied can be built That is, the second block chain construction unit 350 may support history management for each patch version by linking the patent specification file blocks related to each patch version with each other.

일 실시예에서, 제2 블록체인 구축부(350)는 갱신된 해시 테이블에 연결된 복수의 특허 명세서 파일들 각각의 최신 버전에 대응되는 특허 명세서 파일 블록들을 종방향으로 순차적으로 연결할 수 있다.In one embodiment, the second block chain construction unit 350 may sequentially connect the patent specification file blocks corresponding to the latest version of each of the plurality of patent specification files connected to the updated hash table in the longitudinal direction.

여기에서, 제2 블록체인은 패치 별로 버전업(version up)된 특허 명세서 파일들을 서로 연결함으로써 생성될 수 있고, 각 특허 명세서 파일들은 이전 특허 명세서 블록의 해시값과 해당 특허 명세서 파일의 해시값을 포함하는 특허 명세서 파일 블록으로 표현되어 이전 특허 명세서 블록에 대응되는 특허 명세서 파일과 연결될 수 있다. 한편, 제2 특허 명세서 블록체인은 하나의 패치 버전마다 독립적으로 생성되고 제2 특허 명세서 블록체인에 연결되는 특허 명세서 파일 블록들은 종방향으로 확장되어 연결될 수 있다.Here, the second block chain can be created by linking the versioned patent specification files for each patch with each other, and each patent specification file contains the hash value of the previous patent specification block and the hash value of the corresponding patent specification file. It is expressed as an included patent specification file block and may be linked to a patent specification file corresponding to the previous patent specification block. On the other hand, the second patent specification block chain is independently generated for each patch version, and the patent specification file blocks connected to the second patent specification block chain can be extended and connected in the longitudinal direction.

보다 구체적으로, 해시 테이블의 엔트리 중 첫 번째 엔트리는 특허 명세서 파일 그룹의 첫 번째 특허 명세서 파일에 대응되고, 해시값은 첫 번째 특허 명세서 파일의 최신 버전의 특허 명세서 파일블록에 대응될 수 있다. 따라서, 해당 첫 번째 특허 명세서 파일에 대응되는 종방향의 제1 특허 명세서 블록체인을 구성하는 각 특허 명세서 파일블록들은 각 패치 버전이 적용된 첫 번째 특허 명세서 파일에 해당할 수 있다. 즉, 해시 테이블의 첫 번째 엔트리와 연결된 제1 블록체인의 각 특허 명세서 파일블록들은 각 패치 버전에 대응되는 제2 특허 명세서 블록체인의 첫 번째 특허 명세서 파일블록들과 각각 연결될 수 있다.More specifically, a first entry among entries in the hash table may correspond to a first patent specification file of a patent specification file group, and the hash value may correspond to a patent specification fileblock of the latest version of the first patent specification file. Therefore, each patent specification file block constituting the first patent specification block chain in the longitudinal direction corresponding to the first patent specification file may correspond to the first patent specification file to which each patch version is applied. That is, each patent specification fileblock of the first block chain connected to the first entry of the hash table may be connected with the first patent specification fileblocks of the second patent specification block chain corresponding to each patch version, respectively.

따라서, 패치 관리 장치(130)는 해시 테이블의 첫 번째 엔트리를 통해 각 패치 버전과 연관된 특허 명세서 파일 그룹의 모든 파일들에 접근할 수 있다. 제2 특허 명세서 블록체인은 특허 명세서 파일 그룹의 모든 파일들이 연결되고 해당 버전에 대응되는 특허 명세서 파일 블록의 이전 블록 해시값을 통해 해당 버전의 다른 특허 명세서 파일에 반복적으로 접근할 수 있다.Accordingly, the patch management apparatus 130 may access all files of the patent specification file group associated with each patch version through the first entry of the hash table. In the second patent specification block chain, all files in the patent specification file group are connected, and the previous block hash value of the patent specification file block corresponding to the version can be accessed repeatedly to other patent specification files of the corresponding version.

결과적으로, 특허 명세서 파일 그룹에 대해 새로운 패치 버전이 적용될 때마다 해시 테이블은 갱신될 수 있고, 제2 블록체인 구축부(350)는 패치 적용 결과에 따라 갱신된 해시 테이블의 각 엔트리와 연결된 특허 명세서 파일 블록들을 순차적으로 연결하여 제2 특허 명세서 블록체인을 구축할 수 있다.As a result, the hash table may be updated whenever a new patch version is applied to the patent specification file group, and the second block chain construction unit 350 connects each entry in the hash table updated according to the patch application result. The second patent specification block chain can be constructed by sequentially connecting the file blocks.

일 실시예에서, 특허 명세서 파일 블록은 초기 해시값, 이전 블록 해시값 및 파일 해시값을 포함하고 이전 블록 해시값은 해당 특허 명세서 파일 블록이 참여하는 특허 명세서 블록체인 별로 독립적으로 산출되어 해시값 테이블에 저장될 수 있다. 초기 해시값은 특허 명세서 블록체인의 첫 번째 특허 명세서 파일블록의 경우 이전 블록 해시값이 존재하지 않기 때문에 이전 블록 해시값에 대응하여 기본적으로 설정된 해시값에 해당할 수 있다. 이전 블록 해시값은 해당 특허 명세서 파일 블록과 연결된 이전 블록에 대해 해시 함수를 적용하여 산출된 해시값에 해당할 수 있다. 파일 해시값은 특허 명세서 파일 블록에 대응하는 특허 명세서 파일에 해시 함수를 적용하여 산출된 해시값에 해당할 수 있다.In one embodiment, the patent specification file block includes an initial hash value, a previous block hash value, and a file hash value, and the previous block hash value is independently calculated for each patent specification block chain in which the corresponding patent specification file block participates, and the hash value table can be stored in In the case of the first patent specification file block of the patent specification block chain, the initial hash value may correspond to a hash value set by default in response to the previous block hash value because the previous block hash value does not exist. The previous block hash value may correspond to a hash value calculated by applying a hash function to the previous block connected to the corresponding patent specification file block. The file hash value may correspond to a hash value calculated by applying a hash function to the patent specification file corresponding to the patent specification file block.

하나의 특허 명세서 파일 블록은 제1 및 제2 블록체인들에 중복하여 연결될 수 있고, 결과적으로 초기 해시값, 이전 블록 해시값 및 파일 해시값을 모두 포함하여 생성될 수 있다. 또한, 이전 블록 해시값은 해당 특허 명세서 파일 블록이 참여하는 특허 명세서 블록체인 별로 독립적으로 산출될 수 있고, 블록체인이 복수인 경우 이전 블록 해시값도 복수개만큼 산출될 수 있다. 이 때, 특허 명세서 파일 블록은 복수의 이전 블록 해시값들을 하나의 해시값 테이블에 저장할 수 있다. 즉, 해시값 테이블은 복수개의 이전 블록 해시값들을 저장하는 해시 테이블에 해당할 수 있다.One patent specification file block may be duplicatedly connected to the first and second block chains, and as a result, it may be generated including all of the initial hash value, the previous block hash value, and the file hash value. In addition, the previous block hash value may be independently calculated for each patent specification block chain in which the corresponding patent specification file block participates, and if there are multiple block chains, a plurality of previous block hash values may also be calculated. In this case, the patent specification file block may store a plurality of previous block hash values in one hash value table. That is, the hash value table may correspond to a hash table storing a plurality of previous block hash values.

일 실시예에서, 해시값 테이블은 해당 특허 명세서 파일 블록이 참여한 블록체인을 식별하기 위한 식별코드와 이전 블록 해시값을 하나의 엔트리로서 저장할 수 있다. 특허 명세서 파일 블록은 해시값 테이블을 통해 참여한 특허 명세서 블록체인 별로 이전 블록 해시값을 저장할 수 있고, 패치 관리 장치(130)는 해시값 테이블에 저장된 식별코드를 통해 특허 명세서 파일 블록이 특허 명세서 블록체인을 통해 연결된 이전 특허 명세서 파일 블록에 대한 정보를 효과적으로 획득할 수 있다.In one embodiment, the hash value table may store an identification code for identifying the block chain in which the corresponding patent specification file block participated and the previous block hash value as one entry. The patent specification file block can store the previous block hash value for each participating patent specification block chain through the hash value table, and the patch management device 130 converts the patent specification file block into the patent specification block chain through the identification code stored in the hash value table. It is possible to effectively obtain information about the previous patent specification file block connected through

제어부(370)는 패치 관리 장치(130)의 전체적인 동작을 제어하고, 해시 테이블 생성부(310), 제1 블록체인 구축부(330) 및 제2 블록체인 구축부(350) 간의 제어 흐름 또는 데이터 흐름을 관리할 수 있다.The control unit 370 controls the overall operation of the patch management device 130 , and a control flow or data between the hash table generation unit 310 , the first block chain construction unit 330 , and the second block chain construction unit 350 . You can manage the flow.

도 4는 도 1에 있는 패치 관리 장치에서 수행되는 블록체인 기반 패치 관리 과정을 설명하는 순서도이다.4 is a flowchart illustrating a blockchain-based patch management process performed in the patch management device of FIG. 1 .

도 4를 참조하면, 패치 관리 장치(130)는 해시 테이블 생성부(310)를 통해 적어도 하나의 패치가 적용되는 파일 그룹 내의 복수의 파일들에 관한 해시 테이블을 생성할 수 있다(단계 S410).Referring to FIG. 4 , the patch management apparatus 130 may generate a hash table regarding a plurality of files in a file group to which at least one patch is applied through the hash table generator 310 (step S410 ).

패치 관리 장치(130)는 제1 블록체인 구축부(330)를 통해 파일 그룹에 대한 패치가 적용되는 경우 해시 테이블을 기초로 복수의 파일들 각각에 관하여 파일 블록이 횡방향으로 확장되는 제1 블록체인을 구축할 수 있다(단계 S430).When a patch for a file group is applied through the first block chain construction unit 330, the patch management device 130 is a first block in which a file block is horizontally expanded for each of a plurality of files based on a hash table. A chain can be built (step S430).

패치 관리 장치(130)는 제2 블록체인 구축부(350)를 통해 파일 그룹에 대한 패치가 적용되는 경우 해시 테이블을 기초로 복수의 파일들에 관하여 파일 블록이 종방향으로 연결되는 제2 블록체인을 구축할 수 있다(단계 S450).When a patch for a file group is applied through the second block chain construction unit 350, the patch management device 130 is a second block chain in which the file blocks are connected in the vertical direction with respect to a plurality of files based on the hash table. can be constructed (step S450).

도 5는 패치 관리 장치에서 수행되는 블록체인화 과정의 일 실시예를 설명하는 도면이다.5 is a diagram for explaining an embodiment of a block chaining process performed in a patch management device.

도 5를 참조하면, 패치 관리 장치(130)는 패치가 적용되는 특허 명세서 파일 그룹의 모든 특허 명세서 파일에 대해 블록체인화를 수행할 수 있다. 즉, 특허 명세서 파일 그룹의 각 특허 명세서 파일들은 패치가 적용될 때마다 버전업 되어 변경될 수 있으므로, 패치 관리 장치(130)는 특허 명세서 파일 별로 패치 버전에 대한 관리를 처리할 수 있다. 패치 관리 장치(130)는 각 특허 명세서 파일들에 대한 버전 관리 및 파일 위/변조 방지를 위한 무결성 검증을 위해 블록체인화를 제공할 수 있다.Referring to FIG. 5 , the patch management apparatus 130 may perform block chaining on all patent specification files of a patent specification file group to which a patch is applied. That is, since each patent specification file in the patent specification file group may be updated and changed whenever a patch is applied, the patch management apparatus 130 may manage the patch version for each patent specification file. The patch management device 130 may provide block chaining for version management for each patent specification file and integrity verification for file forgery/falsification prevention.

도 5에서, 패치 관리 장치(130)는 복수의 특허 명세서 파일들, 예를 들어, AD2RTDB, ADCR, ADDD 및 ADCMT에 대해 각각 블록체인을 형성할 수 있다. 패치 관리 장치(130)는 각 특허 명세서 블록체인에 대해 해시 테이블을 구축하여 관리할 수 있다. 해시 테이블은 각 특허 명세서 파일에 대한 버전별 파일 정보를 블록체인화 하여 저장할 수 있다.In FIG. 5 , the patch management device 130 may form a block chain for a plurality of patent specification files, for example, AD2RTDB, ADCR, ADDD, and ADCMT. The patch management device 130 may build and manage a hash table for each patent specification block chain. The hash table can block-chain file information for each version of each patent specification file and store it.

특허 명세서 파일 AD2RTDB의 경우 v1 블록부터 v4 블록까지 연결될 수 있고, 특허 명세서 파일 ADCR의 경우 v1 블록부터 v3 블록까지 연결될 수 있으며, 특허 명세서 파일 ADDD의 경우 v1 블록부터 v4 블록까지 연결될 수 있고, 특허 명세서 파일 ADCMT의 경우 v1 블록부터 v2 블록까지 연결될 수 있다. 각 특허 명세서 블록체인은 v1 블록부터 v2, v3, ... 순서로 정렬되어 횡방향으로 확장될 수 있다.In the case of patent specification file AD2RTDB, blocks v1 to v4 can be linked, in case of patent specification file ADCR, blocks v1 to v3 can be linked, and in case of patent specification file ADDD, blocks v1 to v4 can be linked, and patent specification For file ADCMT, it can be connected from block v1 to block v2. Each patent specification blockchain is arranged in the order from v1 block to v2, v3, ... and can be expanded laterally.

한편, 패치가 적용되는 특허 명세서 파일 그룹의 모든 특허 명세서 파일에 대해 블록체인화를 수행할 수 있다. 즉, 특허 명세서 파일 그룹의 각 특허 명세서 파일들은 패치가 적용될 때마다 버전업 되어 변경될 수 있으므로, 패치 관리 장치(130)는 패치 버전에 대한 관리를 처리할 수 있다. 패치 관리 장치(130)는 각 패치 버전에 대한 특허 명세서 파일 정보를 블록체인 형태로 구축할 수 있고, 이 경우 생성된 패치 버전별 블록체인은 종방향으로 확장되는 형태로 형성될 수 있다.On the other hand, blockchainization can be performed on all patent specification files in the patent specification file group to which the patch is applied. That is, since each patent specification file in the patent specification file group may be updated and changed whenever a patch is applied, the patch management apparatus 130 may manage the patch version. The patch management device 130 may build the patent specification file information for each patch version in the form of a block chain, and in this case, the generated block chain for each patch version may be formed in a longitudinally extended form.

패치 관리 장치(130)는 해시 테이블 및 블록체인을 통해 패치 이력 관리, 파일 버전 관리 및 파일 무결성 보장을 제공할 수 있다. 특히, 패치 관리 장치(130)는 각 특허 명세서 파일별 횡방향 특허 명세서 블록체인을 구축하여 특허 명세서 파일의 버전별 이력 관리를 제공할 수 있다. 예를 들어, 패치 관리 장치(130)는 횡방향 블록체인을 통해 각각의 특허 명세서 파일들에 대한 버전을 관리하고 누락된 특허 명세서 파일이나 위/변조된 특허 명세서 파일을 탐지 가능할 수 있다.The patch management device 130 may provide patch history management, file version management, and file integrity assurance through a hash table and a block chain. In particular, the patch management device 130 may provide history management for each version of the patent specification file by establishing a lateral patent specification block chain for each patent specification file. For example, the patch management device 130 may manage a version for each patent specification file through a horizontal block chain and detect a missing patent specification file or a forged/falsified patent specification file.

또한, 패치 관리 장치(130)는 각 패치 버전별 종방향 특허 명세서 블록체인을 구축하여 패치의 버전별 이력 관리를 제공할 수 있다. 예를 들어, 패치 관리 장치(130)는 종방향 블록체인을 통해 사업소간 적용된 패치에 대한 검증을 수행할 수 있다.In addition, the patch management apparatus 130 may provide a history management for each version of the patch by building a vertical patent specification block chain for each patch version. For example, the patch management device 130 may perform verification of patches applied between offices through a vertical block chain.

상기에서는 본 발명의 바람직한 실시예를 참조하여 설명하였지만, 해당 기술 분야의 숙련된 당업자는 하기의 특허 청구의 범위에 기재된 본 발명의 사상 및 영역으로부터 벗어나지 않는 범위 내에서 본 발명을 다양하게 수정 및 변경시킬 수 있음을 이해할 수 있을 것이다.Although the above has been described with reference to preferred embodiments of the present invention, those skilled in the art can variously modify and change the present invention within the scope without departing from the spirit and scope of the present invention as set forth in the claims below. You will understand that it can be done.

100: 패치 관리 시스템
110: 사용자 단말 130: 패치 관리 장치
150: 데이터베이스
210: 프로세서 230: 메모리
250: 사용자 입출력부 270: 네트워크 입출력부
310: 해시 테이블 생성부 330: 제1 블록체인 구축부
350: 제2 블록체인 구축부 370: 제어부
100: patch management system
110: user terminal 130: patch management device
150: database
210: processor 230: memory
250: user input/output unit 270: network input/output unit
310: hash table generation unit 330: first block chain construction unit
350: second block chain construction unit 370: control unit

Claims (1)

적어도 하나의 패치가 적용되는 특허 명세서 파일 그룹 내의 복수의 특허 명세서 파일들에 관한 해시 테이블을 생성하는 해시 테이블 생성부;
상기 특허 명세서 파일 그룹에 대한 패치가 적용되는 경우 상기 해시 테이블을 기초로 상기 복수의 특허 명세서 파일들 각각에 관하여 특허 명세서 파일 블록이 횡방향으로 확장되는 제1 특허 명세서 블록체인을 구축하는 제1 블록체인 구축부; 및
상기 특허 명세서 파일 그룹에 대한 패치가 적용되는 경우 상기 해시 테이블을 기초로 상기 복수의 특허 명세서 파일들에 관하여 특허 명세서 파일 블록이 종방향으로 연결되는 제2 특허 명세서 블록체인을 구축하는 제2 블록체인 구축부를 포함하고,
상기 제1 블록체인 구축부는 상기 복수의 파일들 중 상기 패치가 적용되는 적어도 하나의 대상 파일을 검출하는 제1 단계, 상기 해시 테이블을 기초로 상기 적어도 하나의 대상 파일에 대응하는 제1 파일 블록을 결정하는 제2 단계, 상기 제1 파일 블록에 해시 함수를 적용하여 제1 해시값을 산출하는 제3 단계, 상기 적어도 하나의 대상 파일에 상기 패치를 적용하여 목적 파일을 생성하고 상기 목적 파일에 대한 제2 해시값을 산출하는 제4 단계, 상기 제1 해시값과 상기 제2 해시값을 포함하는 제2 파일 블록을 생성하는 제5 단계 및 상기 제2 해시값을 기초로 상기 해시 테이블을 갱신하는 제6단계를 수행하고,
상기 제2 블록체인 구축부는 갱신된 상기 해시 테이블에 연결된 복수의 특허 명세서 파일들 각각의 최신 버전에 대응되는 특허 명세서 파일 블록들을 종방향으로 순차적으로 연결하며,
상기 제1 특허 명세서 블록체인은 하나의 특허 명세서 파일에 대해 연속하여 생성되고 각 버전에 대응되는 특허 명세서 파일 블록들은 횡방향으로 확장되어 연결되고,
상기 제2 특허 명세서 블록체인은 하나의 패치 버전마다 독립적으로 생성되고 각 특허 명세서 파일에 대응되는 특허 명세서 파일 블록들은 종방향으로 확장되어 연결되는 것을 특징으로 하는 특허 중개 과정에서의 특허 명세서 관리용 블록체인 기반 패치 관리 장치.
a hash table generator generating a hash table for a plurality of patent specification files in a patent specification file group to which at least one patch is applied;
A first block for constructing a first patent specification block chain in which a patent specification file block is horizontally expanded for each of the plurality of patent specification files based on the hash table when the patch for the patent specification file group is applied chain builder; and
When the patch for the patent specification file group is applied, based on the hash table, a second blockchain constructing a second patent specification block chain in which the patent specification file block is connected in the longitudinal direction with respect to the plurality of patent specification files including a construction part;
The first block chain construction unit generates a first file block corresponding to the at least one target file based on the first step of detecting at least one target file to which the patch is applied from among the plurality of files, and the hash table. A second step of determining, a third step of calculating a first hash value by applying a hash function to the first file block, applying the patch to the at least one target file to generate an object file, A fourth step of calculating a second hash value, a fifth step of generating a second file block including the first hash value and the second hash value, and updating the hash table based on the second hash value perform step 6;
The second block chain construction unit sequentially connects the patent specification file blocks corresponding to the latest version of each of the plurality of patent specification files connected to the updated hash table in the longitudinal direction,
The first patent specification block chain is continuously generated for one patent specification file, and the patent specification file blocks corresponding to each version are extended and connected in the lateral direction,
The second patent specification block chain is independently generated for each patch version, and the patent specification file blocks corresponding to each patent specification file are extended and connected in the longitudinal direction. Block for patent specification management in the patent brokerage process Chain-based patch management device.
KR1020200039240A 2020-03-31 2020-03-31 Blockchain-based patch management device for patent specification management in patent brokering process KR102406242B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020200039240A KR102406242B1 (en) 2020-03-31 2020-03-31 Blockchain-based patch management device for patent specification management in patent brokering process

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020200039240A KR102406242B1 (en) 2020-03-31 2020-03-31 Blockchain-based patch management device for patent specification management in patent brokering process

Publications (2)

Publication Number Publication Date
KR20210121865A KR20210121865A (en) 2021-10-08
KR102406242B1 true KR102406242B1 (en) 2022-06-10

Family

ID=78610039

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020200039240A KR102406242B1 (en) 2020-03-31 2020-03-31 Blockchain-based patch management device for patent specification management in patent brokering process

Country Status (1)

Country Link
KR (1) KR102406242B1 (en)

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101954268B1 (en) * 2017-10-24 2019-03-05 한국조폐공사 Method for managing electronic document based on blockchain, and electronic document management server using the same

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20050117393A (en) 2004-06-10 2005-12-14 주식회사 하우리 Apparatus and method for patch management, and computer-readable storage medium recorded with patch management program
CN107402824B (en) * 2017-05-31 2020-06-02 创新先进技术有限公司 Data processing method and device
KR20200012321A (en) * 2018-07-26 2020-02-05 김춘산 Block Chain Based Intellectual Property Management System and Method

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101954268B1 (en) * 2017-10-24 2019-03-05 한국조폐공사 Method for managing electronic document based on blockchain, and electronic document management server using the same

Also Published As

Publication number Publication date
KR20210121865A (en) 2021-10-08

Similar Documents

Publication Publication Date Title
USRE49042E1 (en) Data replication between databases with heterogenious data platforms
JP6731783B2 (en) Tamper detection system and tamper detection method
CN109831487B (en) Fragmented file verification method and terminal equipment
US20180069756A1 (en) Automated change approval
US8543543B2 (en) Hash-based file comparison
CN107391758B (en) Database switching method, device and equipment
JP5644777B2 (en) File group consistency verification system, file group consistency verification method, and file group consistency verification program
WO2019195501A1 (en) Cloud platforms, services, and methods
JP2010541070A (en) Creating and deploying scalable distributed applications
US20200073781A1 (en) Systems and methods of injecting fault tree analysis data into distributed tracing visualizations
CN111949529B (en) System debugging method, device, computer equipment and storage medium
CN111190915B (en) Prop identification or role identification determining method, server and storage medium
US20170109376A1 (en) Method for managing data using in-memory database and apparatus thereof
US11018860B2 (en) Highly available and reliable secret distribution infrastructure
CN109858285B (en) Block chain data processing method, device, equipment and medium
CN107273159A (en) Difference patch upgrading method and device suitable for embedded system
US9898518B2 (en) Computer system, data allocation management method, and program
CN108762787B (en) Software repairing method, device, computer equipment and storage medium
CN109165712A (en) Distributed generation method, device and computer storage medium by stages number
KR102406242B1 (en) Blockchain-based patch management device for patent specification management in patent brokering process
CN112579591B (en) Data verification method, device, electronic equipment and computer readable storage medium
KR20190126992A (en) Method for generating non-deterministic data using a specific selection node in blockchain-based system
CN114138734A (en) Web-based version management method facing database and file resource
CN114138711A (en) File migration method and device, storage medium and electronic equipment
CN112862449A (en) Structural chemical industry bill generation method and device, computer equipment and storage medium

Legal Events

Date Code Title Description
E902 Notification of reason for refusal
AMND Amendment
E601 Decision to refuse application
AMND Amendment
X701 Decision to grant (after re-examination)