KR20210047666A - Device for generating Hash chain and Method for generating Hash chain to have integrity based on continuous data - Google Patents
Device for generating Hash chain and Method for generating Hash chain to have integrity based on continuous data Download PDFInfo
- Publication number
- KR20210047666A KR20210047666A KR1020190131544A KR20190131544A KR20210047666A KR 20210047666 A KR20210047666 A KR 20210047666A KR 1020190131544 A KR1020190131544 A KR 1020190131544A KR 20190131544 A KR20190131544 A KR 20190131544A KR 20210047666 A KR20210047666 A KR 20210047666A
- Authority
- KR
- South Korea
- Prior art keywords
- hash
- sub
- data
- main
- block
- Prior art date
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/22—Indexing; Data structures therefor; Storage structures
- G06F16/2228—Indexing structures
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/23—Updating
- G06F16/2365—Ensuring data consistency and integrity
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/27—Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures therefor
- G06F16/278—Data partitioning, e.g. horizontal or vertical partitioning
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/901—Indexing; Data structures therefor; Storage structures
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/50—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols using hash chains, e.g. blockchains or hash trees
-
- H04L2209/38—
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Databases & Information Systems (AREA)
- General Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Computer Security & Cryptography (AREA)
- Computing Systems (AREA)
- Signal Processing (AREA)
- Computer Networks & Wireless Communication (AREA)
- Storage Device Security (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
Description
본 발명은 해쉬체인 생성장치 및 해쉬체인 생성방법에 관한 것으로, 더욱 상세하게는 무결성 및 조작방지가 필요한 데이터를 위한 해쉬체인 생성장치 및 해쉬체인 생성방법에 관한 것이다. The present invention relates to a hash chain generation apparatus and a hash chain generation method, and more particularly, to a hash chain generation apparatus and a hash chain generation method for data requiring integrity and tampering.
이 부분에 기술된 내용은 단순히 본 실시 예에 대한 배경 정보를 제공할 뿐 종래기술을 구성하는 것은 아니다.The content described in this section merely provides background information on the present embodiment and does not constitute the prior art.
해쉬 체인을 기반으로 무결성과 조작방지 기능을 추가하는 방법은 데이터를 블록 단위로 분할하고 이전블럭의 해쉬값을 현재 생성할 블록에 추가하여 해쉬체인을 완성하는 방법을 사용한다(예, 비트 코인). 도 1은 기존 방식의 컨셉을 도시한 도면을 나타낸다. The method of adding integrity and tamper protection based on the hash chain uses a method of completing the hash chain by dividing the data into blocks and adding the hash value of the previous block to the block to be created (e.g., bitcoin). . 1 shows a diagram showing the concept of the conventional method.
최초 생성된 블록부터 해쉬를 통하여 모든 블록은 체인으로 연결되어 있으며, 모든 데이터를 해쉬 체인 생성 블록이 저장하고 있다. 중간의 특정 데이터의 내용을 변경하고자 하면 데이터를 저장한 모든 노드들의 데이터를 모두 변경해야만 하기 때문에 데이터의 무결성과 조작을 방지하는 효과를 얻을 수 있다. From the first block created, all blocks are chained through a hash, and all data is stored in the hash chain creation block. If you want to change the contents of specific data in the middle, you have to change all the data of all nodes that store the data, so you can get the effect of preventing data integrity and manipulation.
하지만, 해쉬 체인을 생성하는 모든 네트워크의 노드들은 현재까지의 데이터 블록을 모두 저장해야 하기 때문에 막대한 저장공간이 낭비된다. 비트코인과 같은 블록체인을 활용한 코인의 경우는 코인의 이체 이력을 모두 저장하고 있어야한다. 비트코인의 이체내역은 통장의 이체 기록처럼 모든 데이터가 중요하기 때문에 모두 저장한 가치가 있지만, 데이터의 종류에 따라서는 사무실 온도처럼 실제 활용되는 기간이 짧아서 그 시간이 지나가면 가치를 상실하는 데이터도 있다. However, since all the nodes of the network that create the hash chain have to store all the data blocks up to now, a huge amount of storage space is wasted. In the case of a coin using a blockchain such as Bitcoin, all the transfer history of the coin must be stored. Bitcoin's transfer history is worth saving because all data is important like the transfer record of a bankbook, but depending on the type of data, the actual usage period is short, such as office temperature, so data that loses value after that time passes. have.
기존의 해쉬 체인을 활용한 방안에는 데이터 저장 방식에 삭제를 하기 위한 방법이 없어서 생성되는 모든 블록을 저장해야 하는 문제점이 있다. 따라서, 이와 같은 문제점을 해결하기 위한 방안의 모색이 요청된다. There is a problem in that the method using the existing hash chain does not have a method for deleting in the data storage method, so that all blocks created have to be stored. Therefore, it is requested to find a way to solve such a problem.
본 발명은 상기와 같은 문제점을 해결하기 위하여 안출된 것으로서, 본 발명의 목적은, 메인 데이터와 서브 데이터를 입력받고, 메인 데이터를 이용하여 특정 주기로 메인 해쉬블록 생성을 반복함으로써 메인 해쉬체인을 생성하고, 각각의 메인 해쉬블록에 대해 대응되는 주기에 입력된 서브 데이터들을 이용하여 서브 해쉬블록들을 생성함으로써 각각의 메인 해쉬블록에 연결된 서브 해쉬체인들을 생성하는 해쉬체인 생성장치 및 해쉬체인 생성방법을 제공함에 있다. The present invention was conceived to solve the above problems, and an object of the present invention is to generate a main hash chain by receiving main data and sub data, and repeating the generation of the main hash block at a specific period using the main data. , To provide a hash chain generation device and a hash chain generation method for generating sub hash chains connected to each main hash block by generating sub hash blocks using sub data input in a corresponding period for each main hash block. have.
본 발명에서 이루고자 하는 기술적 과제들은 이상에서 언급한 기술적 과제들로 제한되지 않으며, 언급하지 않은 또 다른 기술적 과제들은 아래의 기재로부터 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 명확하게 이해될 수 있을 것이다.The technical problems to be achieved in the present invention are not limited to the technical problems mentioned above, and other technical problems that are not mentioned will be clearly understood by those of ordinary skill in the technical field to which the present invention belongs from the following description. I will be able to.
상기 목적을 달성하기 위한 본 발명의 일 실시예에 따른, 해쉬체인 생성장치는, 특정 주기로 메인 데이터를 입력받고, 서브 데이터를 입력받는 입력부; 및 메인 데이터를 이용하여 특정 주기로 메인 해쉬블록 생성을 반복함으로써 메인 해쉬체인을 생성하고, 각각의 메인 해쉬블록에 대해 대응되는 주기에 입력된 서브 데이터들을 이용하여 서브 해쉬블록들을 생성함으로써 각각의 메인 해쉬블록에 연결된 서브 해쉬체인들을 생성하는 제어부;를 포함한다. According to an embodiment of the present invention for achieving the above object, a hash chain generating apparatus includes: an input unit receiving main data at a specific period and receiving sub data; The main hash chain is created by repeating the generation of the main hash block at a specific period using the main data, and each main hash block is generated by generating sub hash blocks using the sub data input in the corresponding period for each main hash block. It includes; a control unit for generating sub hash chains connected to the block.
그리고, 제어부는, n번째(n은 자연수)로 입력된 제n 메인 데이터에 대해, 이전 메인 해쉬값인 제n-1 메인 해쉬값과 제n 메인 데이터를 이용하여 제n 메인 해쉬값을 생성하며, 제n-1 메인 해쉬값과 제n 메인 데이터와 제n 메인 해쉬값이 함께 저장된 제n 메인 해쉬블록을 생성하고, 특정 주기로 메인 해쉬블록 생성을 반복함으로써 메인 해쉬체인을 생성할 수도 있다. Then, the controller generates an n-th main hash value using the n-th main hash value and the n-th main data, which are the previous main hash values, for the n-th main data input as the n-th (n is a natural number). , The main hash chain may be generated by generating an n-th main hash block in which the n-th main hash value, the n-th main data, and the n-th main hash value are stored together, and the generation of the main hash block is repeated at a specific period.
또한, 제어부는, 제n 메인 해쉬블록에 대응되는 주기 동안 입력된 첫번째 서브 데이터인 제(n,1) 서브데이터에 대해, 제n 메인 해쉬값과 제(n,1) 서브 데이터를 이용하여 제(n,1) 서브 해쉬값을 생성하며, 제n 메인 해쉬값과 제(n,1) 서브 데이터와 제(n,1) 서브 해쉬값이 함께 저장된 제(n,1) 서브 해쉬블록을 생성할 수도 있다. In addition, the control unit uses the n-th main hash value and the (n, 1)-th sub-data for the first sub-data input during the period corresponding to the n-th main hash block. Generates the (n,1) sub hash value, and generates the (n,1)th sub hash block in which the nth main hash value, the (n,1)th sub data, and the (n,1)th sub hash value are stored together. You may.
그리고, 제어부는, 제n 메인 해쉬블록에 대응되는 주기 동안 m번째(m은 자연수)로 입력된 서브 데이터인 제(n,m) 서브데이터에 대해, 제(n,m-1) 서브 해쉬값과 제(n,m) 서브 데이터를 이용하여 제(n,m) 서브 해쉬값을 생성하며, 제(n,m-1) 서브 해쉬값과 제(n,m) 서브 데이터와 제(n,m) 서브 해쉬값이 함께 저장된 제(n,m) 서브 해쉬블록을 생성하며, 제n 메인 해쉬블록에 대응되는 주기 동안 제(n,m) 서브 해쉬블록 생성을 반복함으로써 제n 서브 해쉬체인을 생성할 수도 있다. And, the control unit, for the (n, m)th sub-data, which is the m-th (m is a natural number) inputted sub-data during the period corresponding to the n-th main hash block, the (n, m-1)-th sub hash value The (n,m)th sub hash value is generated using the task (n,m)-th sub-data, and the (n,m-1)th sub hash value, the (n,m)th sub-data, and the (n,m)th sub hash value m) Generates the (n,m)th sub hash block in which the sub hash value is stored together, and repeats the generation of the (n, m)th sub hash block during the period corresponding to the n-th main hash block, thereby creating the n-th sub hash chain. You can also create it.
또한, 메인 데이터는, 특정 주기로 끊김 없이 입력되는 데이터일 수도 있다. Also, the main data may be data that is continuously input at a specific period.
그리고, 메인 데이터는, 데이터의 변화가 연속적인 데이터일 수도 있다. In addition, the main data may be data in which changes in data are continuous.
또한, 메인 데이터는, 카메라로부터 입력되는 비디오 데이터 또는 GPS로부터 입력되는 위치 데이터일 수도 있다. Also, the main data may be video data input from a camera or location data input from a GPS.
그리고, 서브 데이터는, 불규칙적으로 입력되는 데이터일 수도 있다. In addition, the sub data may be data that is input irregularly.
또한, 서브 데이터는, 센서에 의해 감지되는 데이터인 센서 데이터일 수도 있다. In addition, the sub data may be sensor data, which is data sensed by the sensor.
한편, 본 발명의 일 실시예에 따른, 해쉬체인 생성장치에 의한 해쉬체인 생성방법은, 특정 주기로 메인 데이터를 입력받고, 서브 데이터를 입력받는 단계; 메인 데이터를 이용하여 특정 주기로 메인 해쉬블록 생성을 반복함으로써 메인 해쉬체인을 생성하는 단계; 및 각각의 메인 해쉬블록에 대해 대응되는 주기에 입력된 서브 데이터들을 이용하여 서브 해쉬블록들을 생성함으로써 각각의 메인 해쉬블록에 연결된 서브 해쉬체인들을 생성하는 단계;를 포함한다. On the other hand, according to an embodiment of the present invention, a method for generating a hash chain by a hash chain generating device includes the steps of: receiving main data and receiving sub-data at a specific period; Generating a main hash chain by repeating the generation of the main hash block at a specific period using the main data; And generating sub hash blocks connected to each main hash block by generating sub hash blocks using sub data input in a period corresponding to each main hash block.
한편, 본 발명의 일 실시예에 따른, 해쉬체인 생성장치에 의한 해쉬체인 생성방법을 실행하는 컴퓨터 프로그램이 수록된 컴퓨터로 읽을 수 있는 기록매체는, 특정 주기로 메인 데이터를 입력받고, 서브 데이터를 입력받는 단계; 메인 데이터를 이용하여 특정 주기로 메인 해쉬블록 생성을 반복함으로써 메인 해쉬체인을 생성하는 단계; 및 각각의 메인 해쉬블록에 대해 대응되는 주기에 입력된 서브 데이터들을 이용하여 서브 해쉬블록들을 생성함으로써 각각의 메인 해쉬블록에 연결된 서브 해쉬체인들을 생성하는 단계;를 포함하는 해쉬체인 생성방법을 실행하는 컴퓨터 프로그램이 수록된다. Meanwhile, a computer-readable recording medium containing a computer program for executing a method for generating a hash chain by a hash chain generating device according to an embodiment of the present invention receives main data and sub-data at a specific cycle. step; Generating a main hash chain by repeating the generation of the main hash block at a specific period using the main data; And generating sub hash chains connected to each main hash block by generating sub hash blocks by using the sub data input in a period corresponding to each main hash block. Computer programs are included.
한편, 본 발명의 일 실시예에 따른, 해쉬체인 생성장치는, 메인 데이터와 서브 데이터를 입력받는 입력부; 및 n번째(n은 자연수)로 입력된 제n 메인 데이터에 대해, 이전 메인 해쉬값인 제n-1 메인 해쉬값과 제n 메인 데이터를 이용하여 제n 메인 해쉬값을 생성하며, 제n-1 메인 해쉬값과 제n 메인 데이터와 제n 메인 해쉬값이 함께 저장된 제n 메인 해쉬블록을 생성하고, 특정 주기로 메인 해쉬블록 생성을 반복함으로써 메인 해쉬체인을 생성하고, 제n 메인 해쉬블록에 대응되는 주기 동안 입력된 첫번째 서브 데이터인 제(n,1) 서브데이터에 대해, 제n 메인 해쉬값과 제(n,1) 서브 데이터를 이용하여 제(n,1) 서브 해쉬값을 생성하며, 제n 메인 해쉬값과 제(n,1) 서브 데이터와 제(n,1) 서브 해쉬값이 함께 저장된 제(n,1) 서브 해쉬블록을 생성하며, 제n 메인 해쉬블록에 대응되는 주기 동안 m번째(m은 자연수)로 입력된 서브 데이터인 제(n,m) 서브데이터에 대해, 제(n,m-1) 서브 해쉬값과 제(n,m) 서브 데이터를 이용하여 제(n,m) 서브 해쉬값을 생성하며, 제(n,m-1) 서브 해쉬값과 제(n,m) 서브 데이터와 제(n,m) 서브 해쉬값이 함께 저장된 제(n,m) 서브 해쉬블록을 생성하며, 제n 메인 해쉬블록에 대응되는 주기 동안 제(n,m) 서브 해쉬블록 생성을 반복함으로써 제n 서브 해쉬체인을 생성하는 제어부;를 포함한다. Meanwhile, an apparatus for generating a hash chain according to an embodiment of the present invention includes: an input unit receiving main data and sub data; And with respect to the n-th main data input as the n-th (n is a natural number), an n-th main hash value is generated using the n-1th main hash value and the n-th main data, which are the previous main hash values, and the n-th main hash value. 1 A main hash chain is created by creating an n-th main hash block in which the main hash value, the n-th main data, and the n-th main hash value are stored, and the generation of the main hash block is repeated at a specific period, and corresponding to the n-th main hash block For the (n,1)-th sub-data, which is the first sub-data input during a period of time, the (n, 1)-th sub hash value is generated by using the n-th main hash value and the (n, 1)-th sub data, An n-th main hash value, (n,1)-th sub-data and (n, 1)-th sub hash block are stored together, and during a period corresponding to the n-th main hash block For the (n,m)th sub-data, which is the sub-data input as the m-th (m is a natural number), the (n,m-1)th sub hash value and the (n,m)th sub-data are used to ,m) A sub hash value is generated, and the (n,m)th sub hash value, the (n,m)th sub-data, and the (n,m)th sub hash value are stored together And a control unit that generates a hash block and generates an n-th sub hash chain by repeating generation of the (n,m)-th sub hash block during a period corresponding to the n-th main hash block.
본 발명의 다양한 실시예에 따르면, 메인 데이터와 서브 데이터를 입력받고, 메인 데이터를 이용하여 특정 주기로 메인 해쉬블록 생성을 반복함으로써 메인 해쉬체인을 생성하고, 각각의 메인 해쉬블록에 대해 대응되는 주기에 입력된 서브 데이터들을 이용하여 서브 해쉬블록들을 생성함으로써 각각의 메인 해쉬블록에 연결된 서브 해쉬체인들을 생성하는 해쉬체인 생성장치 및 해쉬체인 생성방법을 제공할 수 있게 되어, 연속적, 주기적, 끊김없는 데이터를 메인 해쉬체인으로 생성하고 이를 기반으로 다른 데이터를 서브 해쉬체인으로 엮을 수 있게 되므로, 한정된 저장공간을 가지는 데이터 저장 장치의 데이터에 무결성을 부여하고 조작방지를 할 수 있게 된다. According to various embodiments of the present invention, the main hash chain is generated by receiving main data and sub-data, and repeating the generation of the main hash block at a specific period using the main data, and at a corresponding period for each main hash block. By creating sub hash blocks using the input sub data, it is possible to provide a hash chain generation device and a hash chain generation method that creates sub hash chains connected to each main hash block, thereby providing continuous, periodic, and seamless data. Since it is created as a main hash chain and other data can be woven into a sub hash chain based on this, it is possible to impart integrity to data in a data storage device with a limited storage space and prevent tampering.
본 발명에서 얻을 수 있는 효과는 이상에서 언급한 효과로 제한되지 않으며, 언급하지 않은 또 다른 효과들은 아래의 기재로부터 본 발명이 속하는 기술분야에 서 통상의 지식을 가진 자에게 명확하게 이해될 수 있을 것이다.The effects obtainable in the present invention are not limited to the above-mentioned effects, and other effects not mentioned can be clearly understood by those of ordinary skill in the art from the following description. will be.
본 발명에 관한 이해를 돕기 위해 상세한 설명의 일부로 포함되는, 첨부 도면은 본 발명에 대한 실시 예를 제공하고, 상세한 설명과 함께 본 발명의 기술적 특징을 설명한다.
도 1은 기존 방식의 컨셉을 도시한 도면,
도 2는 본 발명의 일 실시예에 따른, 해쉬체인 생성장치의 구성을 도시한 블록도,
도 3은 본 발명의 일 실시예에 따른, 해쉬체인 생성방법을 설명하기 위해 제공되는 흐름도,
도 4는 본 발명의 일 실시예에 따른, 메인 해쉬체인의 구조를 도시한 도면,
도 5는 본 발명의 일 실시예에 따른, 메인 해쉬체인과 서브 해쉬체인의 구조를 도시한 도면이다. BRIEF DESCRIPTION OF THE DRAWINGS The accompanying drawings, which are included as part of the detailed description to aid in understanding of the present invention, provide embodiments of the present invention, and describe the technical features of the present invention together with the detailed description.
1 is a diagram showing the concept of the conventional method,
2 is a block diagram showing the configuration of an apparatus for generating a hash chain according to an embodiment of the present invention;
3 is a flowchart provided to explain a method of generating a hash chain according to an embodiment of the present invention,
4 is a diagram showing the structure of a main hash chain according to an embodiment of the present invention,
5 is a diagram showing the structure of a main hash chain and a sub hash chain according to an embodiment of the present invention.
본 발명의 과제 해결 수단의 특징 및 이점을 보다 명확히 하기 위하여, 첨부된 도면에 도시된 본 발명의 특정 실시 예를 참조하여 본 발명을 더 상세하게 설명한다.In order to clarify the features and advantages of the problem solving means of the present invention, the present invention will be described in more detail with reference to specific embodiments of the present invention shown in the accompanying drawings.
다만, 하기의 설명 및 첨부된 도면에서 본 발명의 요지를 흐릴 수 있는 공지기능 또는 구성에 대한 상세한 설명은 생략한다. 또한, 도면 전체에 걸쳐 동일한 구성 요소들은 가능한 한 동일한 도면 부호로 나타내고 있음에 유의하여야 한다.However, in the following description and the accompanying drawings, detailed descriptions of known functions or configurations that may obscure the subject matter of the present invention will be omitted. In addition, it should be noted that the same components are denoted by the same reference numerals as much as possible throughout the drawings.
이하의 설명 및 도면에서 사용된 용어나 단어는 통상적이거나 사전적인 의미로 한정해서 해석되어서는 아니 되며, 발명자는 그 자신의 발명을 가장 최선의 방법으로 설명하기 위한 용어의 개념으로 적절하게 정의할 수 있다는 원칙에 입각하여 본 발명의 기술적 사상에 부합하는 의미와 개념으로 해석되어야만 한다.The terms or words used in the following description and drawings should not be interpreted as being limited to their usual or dictionary meanings, and the inventor may appropriately define the concept of terms for describing his or her invention in the best way. It should be interpreted as a meaning and concept consistent with the technical idea of the present invention based on the principle that there is.
따라서 본 명세서에 기재된 실시 예와 도면에 도시된 구성은 본 발명의 가장바람직한 일 실시 예에 불과할 뿐이고, 본 발명의 기술적 사상을 모두 대변하는 것은 아니므로, 본 출원시점에 있어서 이들을 대체할 수 있는 다양한 균등물과 변형예들이 있을 수 있음을 이해하여야 한다.Therefore, the embodiments described in the present specification and the configurations shown in the drawings are only the most desirable embodiments of the present invention, and do not represent all the technical ideas of the present invention. It should be understood that there may be equivalents and variations.
또한, 제1, 제2 등과 같이 서수를 포함하는 용어는 다양한 구성요소들을 설명하기 위해 사용하는 것으로, 하나의 구성요소를 다른 구성요소로부터 구별하는 목적으로만 사용될 뿐, 상기 구성요소들을 한정하기 위해 사용되지 않는다. 예를 들어, 본 발명의 권리 범위를 벗어나지 않으면서 제2 구성요소는 제1 구성요소로 명명될 수 있고, 유사하게 제1 구성요소도 제2 구성요소로 명명될 수 있다. In addition, terms including ordinal numbers such as first and second are used to describe various elements, and are used only for the purpose of distinguishing one element from other elements, and to limit the elements. Not used. For example, without departing from the scope of the present invention, the second element may be referred to as the first element, and similarly, the first element may be referred to as the second element.
더하여, 어떤 구성요소가 다른 구성요소에 "연결되어" 있다거나 "접속되어" 있다고 언급할 경우, 이는 논리적 또는 물리적으로 연결되거나, 접속될 수 있음을의미한다.In addition, when a component is referred to as being "connected" or "connected" to another component, it means that it is logically or physically connected, or can be connected.
다시 말해, 구성요소가 다른 구성요소에 직접적으로 연결되거나 접속되어 있을 수 있지만, 중간에 다른 구성요소가 존재할 수도 있으며, 간접적으로 연결되거나 접속될 수도 있다고 이해되어야 할 것이다.In other words, it should be understood that a component may be directly connected or connected to another component, but another component may exist in the middle, or may be indirectly connected or connected.
또한, 본 명세서에서 기술되는 "포함한다" 또는 "가지다" 등의 용어는 명세서상에 기재된 특징, 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것이존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.In addition, terms such as "comprises" or "have" described herein are intended to designate the existence of features, numbers, steps, actions, components, parts, or a combination thereof described in the specification. It is to be understood that the above other features or the possibility of the presence or addition of numbers, steps, actions, components, parts, or combinations thereof are not preliminarily excluded.
또한, 명세서에 기재된 "…부", "…기", "모듈" 등의 용어는 적어도 하나의 기능이나 동작을 처리하는 단위를 의미하며, 이는 하드웨어나 소프트웨어 또는 하드웨어 및 소프트웨어의 결합으로 구현될 수 있다.In addition, terms such as "... unit", "... group", and "module" described in the specification mean a unit that processes at least one function or operation, which can be implemented by hardware or software or a combination of hardware and software. have.
또한, "일(a 또는 an)", "하나(one)", "그(the)" 및 유사어는 본 발명을 기술하는 문맥에 있어서(특히, 이하의 청구항의 문맥에서) 본 명세서에 달리 지시되거나 문맥에 의해 분명하게 반박되지 않는 한, 단수 및 복수 모두를 포함하는 의미로 사용될 수 있다.In addition, "a or an", "one", "the" and similar words are indicated otherwise in this specification in the context of describing the present invention (especially in the context of the following claims). It may be used in a sense encompassing both the singular and the plural, unless otherwise clearly contradicted by context.
이하에서는 도면을 참조하여 본 발명을 보다 상세하게 설명한다. Hereinafter, the present invention will be described in more detail with reference to the drawings.
도 2는 본 발명의 일 실시예에 따른, 해쉬체인 생성장치의 구성을 도시한 블록도이다. 도 2에 도시된 바와 같이, 해쉬체인 생성장치(100)는 입력부(110), 제어부(120) 및 저장부(130)를 포함한다. 2 is a block diagram showing the configuration of an apparatus for generating a hash chain according to an embodiment of the present invention. As shown in FIG. 2, the hash
입력부(110)는 외부로부터 계속적으로 데이터를 입력받는다. 구체적으로, 입력부(110)는 차량의 블랙박스나 사고영상 저장장치(ADR: Accident Data Recoder)에 의해 생성되는 데이터를 계속적으로 입력받을 수도 있고, 비트코인과 같은 해쉬체인(또는 블록체인) 기반 가상화폐의 경우 거래 내역에 대한 데이터를 계속적으로 입력받을 수도 있다. 이와 같이, 입력부(110)는 외부로부터 다양한 종류의 데이터를 직접적으로 또는 유무선 네트워크를 통해 계속적으로 입력받을 수 있다. The
구체적으로, 입력부(110)는 특정 주기로 메인 데이터를 입력받고, 서브 데이터를 입력받는다. 여기에서, 메인 데이터는, 특정 주기로 끊김 없이 입력되는 데이터이고, 데이터의 변화가 연속적인 데이터일 수 있다. 예를 들어, 메인 데이터는, 카메라로부터 입력되는 비디오 데이터 또는 GPS(Global Positioning System)로부터 입력되는 위치 데이터가 될 수도 있다. Specifically, the
그리고, 서브 데이터는 불규칙적으로 입력되는 데이터이다. 즉, 서브 데이터는 센서에 의해 감지되는 데이터인 센서 데이터일 수도 있다. 예를 들어, 서브 데이터는 충돌 감지 센서에 의해 감지되는 충돌 감지 데이터가 될 수도 있다. 또한, 서브 데이터는 사고 영상 저장 장치에 의해 녹화된 영상 데이터가 될 수도 있음은 물론이다. In addition, the sub data is data that is input irregularly. That is, the sub data may be sensor data, which is data sensed by the sensor. For example, the sub data may be collision detection data detected by a collision detection sensor. In addition, of course, the sub data may be image data recorded by the accident image storage device.
예를 들어, 차량의 블랙박스로부터 데이터가 입력부(110)로 입력된다면, 메인 데이터는 주행 영상 데이터 또는 GPS 위치 데이터가 될 수 있고, 서브 데이터는 이벤트 영상 데이터 또는 충돌 영상 데이터가 될 수 있다. For example, if data is input from a black box of a vehicle to the
제어부(120)는 해쉬체인 생성장치(100)의 전반적인 동작을 제어한다. 구체적으로, 제어부(120)는 도 3의 해쉬체인 생성방법을 수행한다. 도 3은 본 발명의 일 실시예에 따른, 해쉬체인 생성방법을 설명하기 위해 제공되는 흐름도이다. The
먼저, 제어부(120)는 메인 데이터 및 서브 데이터가 입력되도록 입력부(110)를 제어한다(S210).First, the
그리고, 제어부(120)는 메인 데이터를 이용하여 특정 주기로 메인 해쉬블록 생성을 반복함으로써 메인 해쉬체인을 생성한다(S220). Then, the
또한, 제어부(120)는 각각의 메인 해쉬블록에 대해 대응되는 주기에 입력된 서브 데이터들을 이용하여 서브 해쉬블록들을 생성함으로써 각각의 메인 해쉬블록에 연결된 서브 해쉬체인들을 생성한다(S230). In addition, the
여기에서, 해쉬블록은 해쉬 체인에 연결되는 하나의 데이터 단위를 나타내는 것으로, 블록체인의 블록을 나타낸다. 해쉬블록은 이전 해쉬값과 일정 크기의 데이터와 생성된 해쉬값이 함께 저장되며, 생성된 해쉬값은 이전 해쉬값과 데이터를 이용하여 생성되는 해쉬값을 나타낸다. 예를 들어, 제어부(120)는 입력되는 데이터가 동영상일 경우 하나의 영상 프레임을 하나의 데이터 블록하여 해쉬블록으로 설정할 수도 있고, 데이터가 가상화폐의 거래내역일 경우 일정 시간동안의 거래내역을 하나의 데이터 블록하여 해쉬블록을 설정할 수도 있다. Here, the hash block represents one data unit connected to the hash chain, and represents a block of the block chain. The hash block stores the previous hash value, the data of a certain size, and the generated hash value together, and the generated hash value represents the hash value generated by using the previous hash value and data. For example, if the input data is a video, the
또한, 특정 주기는 해쉬블록을 생성하는 단위 주기를 나타내는 것으로, 시간 주기, 데이터 크기 주기 등의 다양한 주기가 될 수 있다. 예를 들어, 제어부(120)는 입력되는 데이터에 대해 1분 주기로 해쉬블록을 설정할 수도 있고, 입력되는 데이터에 대해 1메가바이트 단위로 해쉬블록을 형성할 수도 있으며, 입력되는 데이터가 동영상일 경우 하나의 영상 프레임 단위로 해쉬블록을 생성할 수도 있다.In addition, a specific period indicates a unit period for generating a hash block, and may be various periods such as a time period and a data size period. For example, the
그리고, 해쉬체인(Hash Chain)은 하나의 해쉬규칙에 따라 생성되는 해쉬값들로 형성되는 체인들을 나타낸다. 제어부(120)는 하나의 메인 해쉬체인을 생성하면서, 각각의 메인 해쉬블록에 대해 대응되는 주기에 입력된 서브 데이터들을 이용하여 서브 해쉬블록들을 생성함으로써 각각의 메인 해쉬블록에 연결된 서브 해쉬체인들을 생성한다. And, Hash Chain represents chains formed of hash values generated according to one hash rule. The
이 때, 제어부(120)는 해쉬 알고리즘을 적용함으로써, 해쉬체인의 해쉬값을 생성한다. 여기에서, 해쉬 알고리즘은 다양한 알고리즘이 적용될 수 있으며, 예를 들어, SHA-256 해쉬 알고리즘이 될 수도 있다.At this time, the
구체적으로, 메인 해쉬체인을 생성하는 과정은 도 4를 참고하여 설명한다. 도 4는 본 발명의 일 실시예에 따른, 메인 해쉬체인의 구조를 도시한 도면이다. Specifically, the process of generating the main hash chain will be described with reference to FIG. 4. 4 is a diagram showing the structure of a main hash chain according to an embodiment of the present invention.
제어부(120)는 n번째(n은 자연수)로 입력된 제n 메인 데이터에 대해, 이전 메인 해쉬값인 제n-1 메인 해쉬값과 제n 메인 데이터를 이용하여 제n 메인 해쉬값을 생성하며, 제n-1 메인 해쉬값과 제n 메인 데이터와 제n 메인 해쉬값이 함께 저장된 제n 메인 해쉬블록을 생성하고, 특정 주기로 메인 해쉬블록 생성을 반복함으로써 메인 해쉬체인을 생성한다. The
도 4에는 메인 체인의 5개의 메인 해쉬블록(410, 420, 430, 440, 450)이 서로 연결되어 체인으로 구성된 것을 확인할 수 있다. n번째 메인 해쉬블록인 제n 메인 해쉬블록(410)은 제n-1 메인 해쉬값인 CH(n-1)과 제n 메인 데이터인 CD(n)과 제n 메인 해쉬값인 CH(n)이 함께 저장되어 있는 것을 확인할 수 있다. 그리고, n+1번째 해쉬블록인 제n+1 메인 해쉬블록(420)은 제n 메인 해쉬값인 CH(n)과 제n+1 메인 데이터인 CD(n+1)과 제n+1 메인 해쉬값인 CH(n+1)이 함께 저장되어 있는 것을 확인할 수 있다. 또한, 제n 메인 해쉬블록(410)과 제n+1 메인 해쉬블록(420)은 제n 메인 해쉬값인 CH(n)으로 서로 연결되어 있는 것을 확인할 수 있다. 그리고, 이와 같은 방식으로 5개의 메인 해쉬블록(410, 420, 430, 440, 450)이 서로 연결되어 메인 해쉬체인을 구성하고 있는 것을 확인할 수 있다. In FIG. 4, it can be seen that the five main hash blocks 410, 420, 430, 440, and 450 of the main chain are connected to each other to form a chain. The n-th
이와 같은 방식으로, 제어부(120)는 메인 해쉬체인을 생성하게 된다. In this way, the
그리고, 제어부(120)는 각각의 메인 해쉬블록에 대해 대응되는 주기에 입력된 서브 데이터들을 이용하여 서브 해쉬블록들을 생성함으로써 각각의 메인 해쉬블록에 연결된 서브 해쉬체인들을 생성한다. 구체적으로, 도 5는 본 발명의 일 실시예에 따른, 메인 해쉬체인과 서브 해쉬체인의 구조를 도시한 도면이다. In addition, the
도 5에 도시된 바와 같이, 메인 해쉬체인의 5개의 메인 해쉬블록(410, 420, 430, 440, 450)은 각각 서브 해쉬체인이 연결되어 있는 것을 확인할 수 있다. 구체적으로, 제n 메인 해쉬블록(410)인 CH(n)은 H(n,1), H(n,2), H(n,3), H(n,4)로 구성된 제n 서브 해쉬체인이 연결되어 있는 것을 확인할 수 있다. 그리고, 제n+1 메인 해쉬블록(420)인 CH(n+1)은 H(n+1,1) 내지 H(n+1,6)로 구성된 제n+1 서브 해쉬체인이 연결되어 있는 것을 확인할 수 있다. 또한, 제n+2 메인 해쉬블록(430)인 CH(n+2)은 H(n+2,1) 내지 H(n+2,3)로 구성된 제n+2 서브 해쉬체인이 연결되어 있는 것을 확인할 수 있다. 그리고, 제n+3 메인 해쉬블록(440)인 CH(n+3)은 H(n+3,1) 내지 H(n+3,5)로 구성된 제n+3 서브 해쉬체인이 연결되어 있는 것을 확인할 수 있다. 또한, 제n+4 메인 해쉬블록(450)인 CH(n+4)는 H(n+4,1) 내지 H(n+4,4)로 구성된 제n+4 서브 해쉬체인이 연결되어 있는 것을 확인할 수 있다.As shown in FIG. 5, it can be seen that each of the five main hash blocks 410, 420, 430, 440, and 450 of the main hash chain is connected to the sub hash chain. Specifically, the n-th
제어부(120)는 메인 해쉬블록 각각에 대해 이와 같은 서브 해쉬체인을 생성하기 위해서, 우선 제n 메인 해쉬블록에 대응되는 주기(T) 동안 입력된 첫번째 서브 데이터인 제(n,1) 서브데이터에 대해, 제n 메인 해쉬값과 제(n,1) 서브 데이터를 이용하여 제(n,1) 서브 해쉬값을 생성하며, 제n 메인 해쉬값과 제(n,1) 서브 데이터와 제(n,1) 서브 해쉬값이 함께 저장된 제(n,1) 서브 해쉬블록을 생성하게 된다. 제(n,1) 서브 해쉬블록은 도 5에서 H(n,1)에 대응되게 된다. In order to generate such a sub hash chain for each of the main hash blocks, the
그리고, 제어부(120)는 제n 메인 해쉬블록에 대응되는 주기(T) 동안 m번째(m은 자연수)로 입력된 서브 데이터인 제(n,m) 서브데이터에 대해, 제(n,m-1) 서브 해쉬값과 제(n,m) 서브 데이터를 이용하여 제(n,m) 서브 해쉬값을 생성하며, 제(n,m-1) 서브 해쉬값과 제(n,m) 서브 데이터와 제(n,m) 서브 해쉬값이 함께 저장된 제(n,m) 서브 해쉬블록을 생성하며, 제n 메인 해쉬블록에 대응되는 주기 동안 제(n,m) 서브 해쉬블록 생성을 반복함으로써 제n 서브 해쉬체인을 생성하게 된다. 즉, 도 5에서는 위와 같은 과정으로, H(n,2), H(n,3), H(n,4)가 생성되게 된다. And, the
이와 같은 과정을 통해, 제어부(120)는 메인 해쉬체인을 생성하고, 메인 해쉬체인을 구성하는 메인 해쉬블럭들 각각에 연결된 서브 해쉬체인들을 생성하게 되며, 이를 도식화한 것은 도 5에 도시된 바와 같다. Through this process, the
또한, 이와 같은 과정을 수학식으로 나타내면 다음과 같다In addition, this process can be expressed as an equation as follows.
메인 해쉬체인 : CH(1) = HASH (Main Data (1)) if n=1Main Hash Chain: CH(1) = HASH (Main Data (1)) if n=1
CH(n) = HASH (Main Data (n), CH(n-1)) if n≠1 CH(n) = HASH (Main Data (n), CH(n-1)) if n≠1
서브 해쉬체인 : H(n,1) = HASH (Sub Data (n, 1), CH(n)) if m=1Sub Hash Chain: H(n,1) = HASH (Sub Data (n, 1), CH(n)) if m=1
H(n, m) = HASH (Sub Data (n, m), H(n, m-1) if m≠1 H(n, m) = HASH (Sub Data (n, m), H(n, m-1) if m≠1
여기에서, n,m은 자연수Where n,m are natural numbers
제어부(120)는 해쉬체인을 다른 노드들에 전달하여 데이터를 공유할 수도 있으며, 이를 통해 다른 노드들과 해쉬체인 네트워크를 형성할 수도 있다.The
다시 도 2로 돌아와서, 저장부(130)는 생성된 메인 해쉬체인 및 서브 해쉬체인을 저장하게 된다. 저장부(130)는 다양한 저장장치로 구현될 수 있으며 예를 들어 하드디스크, SSD(Solid State Drive) 등으로 구현될 수도 있음은 물론이다. Returning to FIG. 2 again, the
이와 같은 구성을 통해, 해쉬체인 생성장치(100)는 메인 해쉬체인을 생성하고, 메인 해쉬체인을 구성하는 메인 해쉬블럭들 각각에 연결된 서브 해쉬체인들을 생성할 수 있게 되어, 메인 해쉬블럭의 데이터 무결성을 조사하기 위해 메인 해쉬체인 전체를 조사할 필요 없이 조사 대상인 메인 해쉬블럭에 연결된 서브 해쉬체인만 조사하면 되기 때문에 데이터 무결성을 더욱 빠르게 검증할 수 있며, 서브 해쉬체인에 포함되는 데이터는 유실되더라도 메인 해쉬트리에 영향을 주지 않게 되므로, 한정된 저장공간을 가지는 데이터 저장 장치의 데이터에 무결성을 부여하고 조작방지를 위하여 연속적, 주기적, 끊김없는 데이터를 메인 해쉬체인으로 생성하고 이를 기반으로 다른 데이터를 서브 해쉬체인으로 엮을 수 있게 된다. Through such a configuration, the hash
한편, 도 2에 기재된 해쉬체인 생성장치(100)는 그 자체로 물리적으로 독립된 장치로 구현될 수 있을 뿐만 아니라, 어떤 장치나 시스템의 일부로 포함되어 있는 형태로 구현될 수도 있으며, 스마트폰이나 컴퓨터나 서버 등에 설치된 프로그램 또는 프레임워크 또는 애플리케이션 등의 소프트웨어 형태로 구현될 수도 있음은 물론이다. 또한, 해쉬체인 생성장치(100)의 각 구성요소는 물리적 구성요소로 구현될 수도 있고 소프트웨어의 기능 형태의 구성요소로 구현될 수도 있다. On the other hand, the hash
한편, 본 실시예에 따른 장치의 기능 및 방법을 수행하게 하는 컴퓨터 프로그램을 수록한 컴퓨터로 읽을 수 있는 기록매체에도 본 발명의 기술적 사상이 적용될 수 있음은 물론이다. 또한, 본 발명의 다양한 실시예에 따른 기술적 사상은 컴퓨터로 읽을 수 있는 기록매체에 기록된 컴퓨터로 읽을 수 있는 프로그래밍 언어 코드 형태로 구현될 수도 있다. 컴퓨터로 읽을 수 있는 기록매체는 컴퓨터에 의해 읽을 수 있고 데이터를 저장할 수 있는 어떤 데이터 저장 장치이더라도 가능하다. 예를 들어, 컴퓨터로 읽을 수 있는 기록매체는 ROM, RAM, CD-ROM, 자기 테이프, 플로피 디스크, 광디스크, 하드 디스크 드라이브, 플래시 메모리, 솔리드 스테이트 디스크(SSD) 등이 될 수 있음은 물론이다. 또한, 컴퓨터로 읽을 수 있는 기록매체에 저장된 컴퓨터로 읽을 수 있는 코드 또는 프로그램은 컴퓨터간에 연결된 네트워크를 통해 전송될 수도 있다. On the other hand, it goes without saying that the technical idea of the present invention can be applied to a computer-readable recording medium containing a computer program for performing the functions and methods of the apparatus according to the present embodiment. Further, the technical idea according to various embodiments of the present disclosure may be implemented in the form of a computer-readable programming language code recorded on a computer-readable recording medium. The computer-readable recording medium can be any data storage device that can be read by a computer and can store data. For example, a computer-readable recording medium may be ROM, RAM, CD-ROM, magnetic tape, floppy disk, optical disk, hard disk drive, flash memory, solid state disk (SSD), and the like. In addition, a computer-readable code or program stored in a computer-readable recording medium may be transmitted through a network connected between computers.
본 명세서와 도면에서는 예시적인 장치 구성을 기술하고 있지만, 본 명세서에서 설명하는 기능적인 동작과 주제의 구현물은 다른 유형의 디지털 전자 회로로구현되거나, 본 명세서에서 개시하는 구조 및 그 구조적인 등가물들을 포함하는 컴퓨터 소프트웨어, 펌웨어 혹은 하드웨어로 구현되거나, 이들 중 하나 이상의 결합으로 구현 가능하다.Although this specification and drawings describe exemplary device configurations, functional operations and implementations of the subject matter described herein are implemented as other types of digital electronic circuits, or include structures disclosed herein and structural equivalents thereof. It may be implemented as computer software, firmware, or hardware, or it may be implemented as a combination of one or more of them.
따라서, 상술한 예를 참조하여 본 발명을 상세하게 설명하였지만, 본 발명이속하는 분야의 통상의 기술자라면 본 발명의 범위를 벗어나지 않으면서도 본 예들에 대한 개조, 변경 및 변형을 가할 수 있다.Accordingly, although the present invention has been described in detail with reference to the above-described examples, modifications, changes, and modifications to the examples can be made without departing from the scope of the present invention by those of ordinary skill in the field to which the present invention belongs.
또한, 이상에서는 본 발명의 바람직한 실시예에 대하여 도시하고 설명하였지만, 본 발명은 상술한 특정의 실시예에 한정되지 아니하며, 청구범위에서 청구하는 본 발명의 요지를 벗어남이 없이 당해 발명이 속하는 기술분야에서 통상의 지식을 가진자에 의해 다양한 변형실시가 가능한 것은 물론이고, 이러한 변형실시들은 본 발명의 기술적 사상이나 전망으로부터 개별적으로 이해되어져서는 안될 것이다.In addition, although the preferred embodiments of the present invention have been illustrated and described above, the present invention is not limited to the specific embodiments described above, and the technical field to which the present invention belongs without departing from the gist of the present invention claimed in the claims. In addition, various modifications are possible by those of ordinary skill in the art, and these modifications should not be understood individually from the technical spirit or prospect of the present invention.
100 : 해쉬체인 생성장치
110 : 입력부
120 : 제어부
130 : 저장부100: hash chain generation device
110: input unit
120: control unit
130: storage unit
Claims (12)
메인 데이터를 이용하여 특정 주기로 메인 해쉬블록 생성을 반복함으로써 메인 해쉬체인을 생성하고, 각각의 메인 해쉬블록에 대해 대응되는 주기에 입력된 서브 데이터들을 이용하여 서브 해쉬블록들을 생성함으로써 각각의 메인 해쉬블록에 연결된 서브 해쉬체인들을 생성하는 제어부;를 포함하는 해쉬체인 생성장치.
An input unit receiving main data and receiving sub data at a specific period; And
Each main hash block is created by repeating the creation of the main hash block at a specific period using the main data, and by generating sub hash blocks using the sub data input in the corresponding period for each main hash block. A hash chain generation device comprising a; control unit for generating sub hash chains connected to.
제어부는,
n번째(n은 자연수)로 입력된 제n 메인 데이터에 대해, 이전 메인 해쉬값인 제n-1 메인 해쉬값과 제n 메인 데이터를 이용하여 제n 메인 해쉬값을 생성하며, 제n-1 메인 해쉬값과 제n 메인 데이터와 제n 메인 해쉬값이 함께 저장된 제n 메인 해쉬블록을 생성하고, 특정 주기로 메인 해쉬블록 생성을 반복함으로써 메인 해쉬체인을 생성하는 것을 특징으로 하는 해쉬체인 생성장치.
The method according to claim 1,
The control unit,
For the n-th main data input as the n-th (n is a natural number), an n-th main hash value is generated by using the n-th main hash value and the n-th main data, which are the previous main hash values, and A hash chain generation device, characterized in that the main hash chain is generated by generating an n-th main hash block in which the main hash value, the n-th main data, and the n-th main hash value are stored together, and by repeating the generation of the main hash block at a specific period.
제어부는,
제n 메인 해쉬블록에 대응되는 주기 동안 입력된 첫번째 서브 데이터인 제(n,1) 서브데이터에 대해, 제n 메인 해쉬값과 제(n,1) 서브 데이터를 이용하여 제(n,1) 서브 해쉬값을 생성하며, 제n 메인 해쉬값과 제(n,1) 서브 데이터와 제(n,1) 서브 해쉬값이 함께 저장된 제(n,1) 서브 해쉬블록을 생성하는 것을 특징으로 하는 해쉬체인 생성장치.
The method according to claim 2,
The control unit,
For the (n,1)-th sub-data, which is the first sub-data input during the period corresponding to the n-th main hash block, the (n, 1)-th sub-data is used using the n-th main hash value and the (n, 1)-th sub data Generating a sub hash value, and generating an (n,1)th sub hash block in which the n-th main hash value, the (n,1)-th sub-data, and the (n, 1)-th sub hash value are stored together. Hash chain generation device.
제어부는,
제n 메인 해쉬블록에 대응되는 주기 동안 m번째(m은 자연수)로 입력된 서브 데이터인 제(n,m) 서브데이터에 대해, 제(n,m-1) 서브 해쉬값과 제(n,m) 서브 데이터를 이용하여 제(n,m) 서브 해쉬값을 생성하며, 제(n,m-1) 서브 해쉬값과 제(n,m) 서브 데이터와 제(n,m) 서브 해쉬값이 함께 저장된 제(n,m) 서브 해쉬블록을 생성하며, 제n 메인 해쉬블록에 대응되는 주기 동안 제(n,m) 서브 해쉬블록 생성을 반복함으로써 제n 서브 해쉬체인을 생성하는 것을 특징으로 하는 해쉬체인 생성장치.
The method of claim 3,
The control unit,
For the (n,m)th sub-data, which is the m-th (m is a natural number) inputted sub-data during the period corresponding to the n-th main hash block, the (n, m-1)th sub hash value and the (n, m) The (n,m)th sub hash value is generated using the sub data, and the (n,m-1)th sub hash value, the (n,m)th sub-data, and the (n,m)th sub hash value The (n,m)-th sub hash block stored together is generated, and the n-th sub hash chain is generated by repeating the generation of the (n, m)-th sub hash block during a period corresponding to the n-th main hash block. A hash chain generation device.
메인 데이터는,
특정 주기로 끊김 없이 입력되는 데이터인 것을 특징으로 하는 해쉬체인 생성장치.
The method according to claim 1,
The main data is,
Hash chain generation device, characterized in that the data is input without interruption in a specific period.
메인 데이터는,
데이터의 변화가 연속적인 데이터인 것을 특징으로 하는 해쉬체인 생성장치.
The method of claim 5,
The main data is,
A hash chain generation device, characterized in that the change of data is continuous data.
메인 데이터는,
카메라로부터 입력되는 비디오 데이터 또는 GPS로부터 입력되는 위치 데이터인 것을 특징으로 하는 해쉬체인 생성장치.
The method of claim 6,
The main data is,
A hash chain generator, characterized in that the video data input from the camera or the location data input from the GPS.
서브 데이터는,
불규칙적으로 입력되는 데이터인 것을 특징으로 하는 해쉬체인 생성장치.
The method according to claim 1,
The sub data is,
A hash chain generation device, characterized in that the data is input irregularly.
서브 데이터는,
센서에 의해 감지되는 데이터인 센서 데이터인 것을 특징으로 하는 해쉬체인 생성장치.
The method of claim 8,
The sub data is,
A hash chain generation device, characterized in that the data is sensor data detected by the sensor.
특정 주기로 메인 데이터를 입력받고, 서브 데이터를 입력받는 단계;
메인 데이터를 이용하여 특정 주기로 메인 해쉬블록 생성을 반복함으로써 메인 해쉬체인을 생성하는 단계; 및
각각의 메인 해쉬블록에 대해 대응되는 주기에 입력된 서브 데이터들을 이용하여 서브 해쉬블록들을 생성함으로써 각각의 메인 해쉬블록에 연결된 서브 해쉬체인들을 생성하는 단계;를 포함하는 해쉬체인 생성방법.
In the hash chain generation method by the hash chain generation device,
Receiving main data and sub-data at a specific period;
Generating a main hash chain by repeating the generation of the main hash block at a specific period using the main data; And
Generating sub hash blocks connected to each main hash block by generating sub hash blocks by using the sub data input in a period corresponding to each main hash block; hash chain generation method comprising a.
특정 주기로 메인 데이터를 입력받고, 서브 데이터를 입력받는 단계;
메인 데이터를 이용하여 특정 주기로 메인 해쉬블록 생성을 반복함으로써 메인 해쉬체인을 생성하는 단계; 및
각각의 메인 해쉬블록에 대해 대응되는 주기에 입력된 서브 데이터들을 이용하여 서브 해쉬블록들을 생성함으로써 각각의 메인 해쉬블록에 연결된 서브 해쉬체인들을 생성하는 단계;를 포함하는 해쉬체인 생성방법을 실행하는 컴퓨터 프로그램이 수록된 컴퓨터로 읽을 수 있는 기록매체.
In a computer-readable recording medium containing a computer program for executing a hash chain generation method by a hash chain generation device,
Receiving main data and sub-data at a specific period;
Generating a main hash chain by repeating the generation of the main hash block at a specific period using the main data; And
Generating sub hash chains connected to each main hash block by generating sub hash blocks by using the sub data input in a period corresponding to each main hash block; a computer for executing a hash chain generation method comprising A computer-readable recording medium containing programs.
n번째(n은 자연수)로 입력된 제n 메인 데이터에 대해, 이전 메인 해쉬값인 제n-1 메인 해쉬값과 제n 메인 데이터를 이용하여 제n 메인 해쉬값을 생성하며, 제n-1 메인 해쉬값과 제n 메인 데이터와 제n 메인 해쉬값이 함께 저장된 제n 메인 해쉬블록을 생성하고, 특정 주기로 메인 해쉬블록 생성을 반복함으로써 메인 해쉬체인을 생성하고, 제n 메인 해쉬블록에 대응되는 주기 동안 입력된 첫번째 서브 데이터인 제(n,1) 서브데이터에 대해, 제n 메인 해쉬값과 제(n,1) 서브 데이터를 이용하여 제(n,1) 서브 해쉬값을 생성하며, 제n 메인 해쉬값과 제(n,1) 서브 데이터와 제(n,1) 서브 해쉬값이 함께 저장된 제(n,1) 서브 해쉬블록을 생성하며, 제n 메인 해쉬블록에 대응되는 주기 동안 m번째(m은 자연수)로 입력된 서브 데이터인 제(n,m) 서브데이터에 대해, 제(n,m-1) 서브 해쉬값과 제(n,m) 서브 데이터를 이용하여 제(n,m) 서브 해쉬값을 생성하며, 제(n,m-1) 서브 해쉬값과 제(n,m) 서브 데이터와 제(n,m) 서브 해쉬값이 함께 저장된 제(n,m) 서브 해쉬블록을 생성하며, 제n 메인 해쉬블록에 대응되는 주기 동안 제(n,m) 서브 해쉬블록 생성을 반복함으로써 제n 서브 해쉬체인을 생성하는 제어부;를 포함하는 해쉬체인 생성장치.
An input unit receiving main data and sub data; And
For the n-th main data input as the n-th (n is a natural number), an n-th main hash value is generated by using the n-th main hash value and the n-th main data, which are the previous main hash values, and A main hash chain is created by creating an n-th main hash block in which the main hash value, the n-th main data, and the n-th main hash value are stored together, and by repeating the generation of the main hash block at a specific cycle, For the (n,1)th sub-data, which is the first sub-data input during the period, the (n,1)-th sub hash value is generated using the n-th main hash value and the (n, 1)-th sub-data, An n main hash value, (n,1)th sub-data and (n,1)-th sub hash block are stored together, and m during a period corresponding to the n-th main hash block With respect to the (n,m)th sub-data, which is the sub-data input as the (m is a natural number), using the (n,m-1)th sub hash value and the (n,m)th sub-data, m) A sub hash value is generated, and the (n,m)th sub hash value, the (n,m-1)th sub hash value, the (n,m)th sub-data, and the (n,m)th sub hash value are stored together A hash chain generation apparatus comprising: a control unit for generating a block and generating an n-th sub hash chain by repeating generation of the (n,m)-th sub hash block during a period corresponding to the n-th main hash block.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020190131544A KR102408728B1 (en) | 2019-10-22 | 2019-10-22 | Device for generating Hash chain and Method for generating Hash chain to have integrity based on continuous data |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020190131544A KR102408728B1 (en) | 2019-10-22 | 2019-10-22 | Device for generating Hash chain and Method for generating Hash chain to have integrity based on continuous data |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20210047666A true KR20210047666A (en) | 2021-04-30 |
KR102408728B1 KR102408728B1 (en) | 2022-06-14 |
Family
ID=75740632
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020190131544A KR102408728B1 (en) | 2019-10-22 | 2019-10-22 | Device for generating Hash chain and Method for generating Hash chain to have integrity based on continuous data |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR102408728B1 (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2023286900A1 (en) * | 2021-07-14 | 2023-01-19 | 정연우 | User authentication system and transfer system using blockchain authentication based on real-time proof of location |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102413313A (en) * | 2010-09-26 | 2012-04-11 | 索尼公司 | Data integrity authentication information generation method and device as well as data integrity authentication method and device |
JP2015180097A (en) * | 2011-10-14 | 2015-10-08 | 株式会社日立製作所 | Method for generating signature of data, method for verifying signature of data, and management calculator |
KR20190009958A (en) * | 2017-07-20 | 2019-01-30 | 주식회사 더블체인 | Extendable block chain system and block chain extending method |
KR20190020721A (en) * | 2019-02-22 | 2019-03-04 | 주식회사 엑스블록시스템즈 | Blockchain system and method of creating blockchain |
KR101986081B1 (en) * | 2018-12-24 | 2019-06-05 | (주)소프트제국 | Method for sharing and verifing a block between specific nodes in a blockchain |
KR20190093011A (en) * | 2018-01-31 | 2019-08-08 | 지송학 | The block-chain system with enhanced security and the method of generating a data block using a double block-chain structure |
KR20190113211A (en) * | 2018-03-28 | 2019-10-08 | 주식회사 엑스블록시스템즈 | Blockchain system |
-
2019
- 2019-10-22 KR KR1020190131544A patent/KR102408728B1/en active IP Right Grant
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102413313A (en) * | 2010-09-26 | 2012-04-11 | 索尼公司 | Data integrity authentication information generation method and device as well as data integrity authentication method and device |
JP2015180097A (en) * | 2011-10-14 | 2015-10-08 | 株式会社日立製作所 | Method for generating signature of data, method for verifying signature of data, and management calculator |
KR20190009958A (en) * | 2017-07-20 | 2019-01-30 | 주식회사 더블체인 | Extendable block chain system and block chain extending method |
KR20190093011A (en) * | 2018-01-31 | 2019-08-08 | 지송학 | The block-chain system with enhanced security and the method of generating a data block using a double block-chain structure |
KR20190113211A (en) * | 2018-03-28 | 2019-10-08 | 주식회사 엑스블록시스템즈 | Blockchain system |
KR101986081B1 (en) * | 2018-12-24 | 2019-06-05 | (주)소프트제국 | Method for sharing and verifing a block between specific nodes in a blockchain |
KR20190020721A (en) * | 2019-02-22 | 2019-03-04 | 주식회사 엑스블록시스템즈 | Blockchain system and method of creating blockchain |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2023286900A1 (en) * | 2021-07-14 | 2023-01-19 | 정연우 | User authentication system and transfer system using blockchain authentication based on real-time proof of location |
KR20230011801A (en) * | 2021-07-14 | 2023-01-25 | 정연우 | User authentication system and transfer system using real-time proof of location based blockchain authentication |
Also Published As
Publication number | Publication date |
---|---|
KR102408728B1 (en) | 2022-06-14 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10713491B2 (en) | Object detection using spatio-temporal feature maps | |
EP3771179A1 (en) | Graph data processing method, method and device for publishing graph data computational tasks, storage medium, and computer apparatus | |
EP4068165A1 (en) | Wide and deep machine learning models | |
WO2017201507A1 (en) | Memory-efficient backpropagation through time | |
US20170116157A1 (en) | Parallelizing matrix factorization across hardware accelerators | |
US10339899B2 (en) | Character string display method and apparatus | |
US10491947B1 (en) | Systems and methods for personalized video rendering | |
US11900235B1 (en) | Generating parameter values for recurrent neural networks | |
US11853861B2 (en) | Generating output examples using bit blocks | |
KR20210047666A (en) | Device for generating Hash chain and Method for generating Hash chain to have integrity based on continuous data | |
US11416625B2 (en) | Protecting cryptographic keys stored in non-volatile memory | |
CN107122636A (en) | A kind of APK reinforcement means and device based on SO files | |
US11836665B2 (en) | Explainable process prediction | |
KR20230109931A (en) | Apparatus and method for building a transformer model for video story question and answering | |
US10579428B2 (en) | Data token management in distributed arbitration systems | |
CN107391440B (en) | Processing device and method for output data of fast Fourier transform algorithm | |
KR102084855B1 (en) | Device for generating Hash chain and Method for generating Hash chain | |
WO2021218626A1 (en) | Data storage method and apparatus, device, and storage medium | |
US11720781B2 (en) | Parallel execution of gated activation unit operations | |
KR102416336B1 (en) | Device, method, system and computer readable storage medium for managing blockchain | |
CN105164723A (en) | Shared compositional resources | |
US11182673B2 (en) | Temporal memory adapted for single-shot learning and disambiguation of multiple predictions | |
US10089481B2 (en) | Securing recorded data | |
US9552296B2 (en) | Verifying shared memory integrity | |
US20230205500A1 (en) | Computation architecture synthesis |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
E902 | Notification of reason for refusal | ||
E902 | Notification of reason for refusal | ||
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant |