KR20220047132A - Method and System for Enhancing Trust of Supply Chain Using Blockchain Platform with Robust Data Model and Verification Mechanisms - Google Patents

Method and System for Enhancing Trust of Supply Chain Using Blockchain Platform with Robust Data Model and Verification Mechanisms Download PDF

Info

Publication number
KR20220047132A
KR20220047132A KR1020210050079A KR20210050079A KR20220047132A KR 20220047132 A KR20220047132 A KR 20220047132A KR 1020210050079 A KR1020210050079 A KR 1020210050079A KR 20210050079 A KR20210050079 A KR 20210050079A KR 20220047132 A KR20220047132 A KR 20220047132A
Authority
KR
South Korea
Prior art keywords
transaction
data
anomaly
supply chain
blockchain system
Prior art date
Application number
KR1020210050079A
Other languages
Korean (ko)
Other versions
KR102620822B1 (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 한국과학기술원
Publication of KR20220047132A publication Critical patent/KR20220047132A/en
Application granted granted Critical
Publication of KR102620822B1 publication Critical patent/KR102620822B1/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
    • G06Q10/00Administration; Management
    • G06Q10/08Logistics, e.g. warehousing, loading or distribution; Inventory or stock management
    • G06Q10/087Inventory or stock management, e.g. order filling, procurement or balancing against orders
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q10/00Administration; Management
    • G06Q10/10Office automation; Time management
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/321Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving a third party or a trusted authority
    • 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
    • H04L2209/38

Landscapes

  • Engineering & Computer Science (AREA)
  • Business, Economics & Management (AREA)
  • Computer Security & Cryptography (AREA)
  • Human Resources & Organizations (AREA)
  • Strategic Management (AREA)
  • Economics (AREA)
  • Entrepreneurship & Innovation (AREA)
  • Quality & Reliability (AREA)
  • Operations Research (AREA)
  • Marketing (AREA)
  • Tourism & Hospitality (AREA)
  • Physics & Mathematics (AREA)
  • General Business, Economics & Management (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Finance (AREA)
  • Accounting & Taxation (AREA)
  • Development Economics (AREA)
  • Data Mining & Analysis (AREA)
  • Financial Or Insurance-Related Operations Such As Payment And Settlement (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

A system and a method for strengthening trust in a supply chain using a blockchain platform with a robust data model and a verification mechanism are presented. The system for strengthening trust in a supply chain using a blockchain platform with a robust data model and a verification mechanism proposed in the present invention includes: a client that manages private and public keys, creates transactions, and sends the same to verifiers; a validator that receives transactions from the client, sends the transactions to corresponding peer nodes, and sends the transactions to execute a transaction processor while checking that all nodes agree on a generated output; and the transaction processor that causes a transaction handler to perform a predefined task on the basis of an action field representing the type of transactions received. The quality of blockchain data is improved.

Description

강인한 데이터 모델 및 검증 메커니즘을 갖춘 블록체인 플랫폼을 이용한 공급망의 신뢰 강화 방법 및 시스템{Method and System for Enhancing Trust of Supply Chain Using Blockchain Platform with Robust Data Model and Verification Mechanisms}Method and System for Enhancing Trust of Supply Chain Using Blockchain Platform with Robust Data Model and Verification Mechanisms

본 발명은 강인한 데이터 모델 및 검증 메커니즘을 갖춘 블록체인 플랫폼을 이용한 공급망의 신뢰 강화 방법 및 시스템에 관한 것이다. The present invention relates to a method and system for strengthening trust in a supply chain using a blockchain platform with a robust data model and verification mechanism.

공급망은 제품을 생산하고 클라이언트들에게 이동시키는 데 관여하는 객체와 에이전트의 네트워크다[1]. 오늘날 공급망은 매우 복잡하다. 세계무역에서 서로 다른 시스템과 요구사항을 가진 국가들간의 복수 이해당사자들은 필연적으로 복잡한 관계를 보이기 때문이다. 결과적으로, 이러한 복잡한 공급망을 관리하는 것은 상당히 어렵고 비용이 많이 든다. Gartner에 따르면, 공급망 관리 시장은 2021년까지 총 소프트웨어 수익에서 190억 달러 이상을 초과할 것이다[2]. 최근, 블록체인 기술의 등장은 공급망과 물류 업계의 엄청난 관심을 끌고 있다[3]. 블록체인은 변조에 탄력이 있는 트랜잭션 기록을 공유하기 위한 분권화 및 분산형 시스템이다. 이를 통해 네트워크를 통한 자산의 안전한 교류가 보장되며, 참여 노드 간 데이터의 엔드 투 엔드 가시성이 가능해진다. 나아가 스마트 계약[4]을 통해 비즈니스 로직을 블록체인에 내장할 수 있어, 적은 노력으로 비즈니스 프로세스의 자동화를 촉진하고 유연성을 높여 블록체인의 적용성을 확대한다.A supply chain is a network of objects and agents involved in producing products and moving them to clients [1]. Supply chains today are very complex. This is because in world trade, multiple stakeholders with different systems and requirements inevitably show complex relationships. As a result, managing such complex supply chains is quite difficult and expensive. According to Gartner, the supply chain management market will exceed $19 billion in total software revenue by 2021[2]. Recently, the emergence of blockchain technology has attracted tremendous attention from the supply chain and logistics industry [3]. Blockchain is a decentralized and decentralized system for sharing transaction records that are resilient to tampering. This ensures secure exchange of assets over the network and enables end-to-end visibility of data between participating nodes. Furthermore, business logic can be embedded in the blockchain through smart contracts [4], which promotes automation of business processes with little effort and increases the flexibility to expand the applicability of the blockchain.

다만 상대적으로 단순한 데이터 구조로 인해 블록체인은 공급망 관리에 필수적인 데이터 검색과 검증 등 복잡한 운영을 처리하는 데 있어 일부 단점을 드러내고 있다. 이러한 난제에 대처하기 위해 자원 기술 프레임워크(Resource Description Framework; RDF)[5]와 같은 그래프 데이터 모델을 통합하는 접근법이 제안되었다 [6]-[10]. 이러한 방향에 대한 초기 연구 중 하나는 블록체인과 시맨틱(Semantic) 웹이 어떻게 상호 이익을 얻을 수 있는지를 소개하고 공급망, 데이터 시장, 온라인 교육 자격 증명과 같은 잠재적인 사용 사례를 제시한다[6]. Kim[7]은 공급망 입증 개선의 시도로 공급망의 도메인 지식을 표현하기 위해 TOVE 추적성 온톨로지 같은 기존 온톨로지를 적용하였다. 마찬가지로, Ruta[8]는 로직 기반 시맨틱 중개 프로세스를 이용한 공급망에서의 유연한 객체 발견 방법을 제안하였다.However, due to the relatively simple data structure, the blockchain exposes some shortcomings in handling complex operations such as data retrieval and verification essential for supply chain management. In order to cope with these difficulties, an approach that integrates graph data models such as Resource Description Framework (RDF) [5] has been proposed [6]-[10]. One of the earliest studies in this direction introduces how blockchain and the Semantic Web can mutually benefit and presents potential use cases such as supply chains, data markets, and online educational credentials [6]. Kim [7] applied existing ontology such as TOVE traceability ontology to express domain knowledge of supply chain in an attempt to improve supply chain verification. Similarly, Ruta [8] proposed a flexible object discovery method in the supply chain using a logic-based semantic mediation process.

이러한 종래기술들은 시맨틱 추론 기술뿐만 아니라 풍부한 도메인 어휘를 가진 공급망 지식의 표현을 바탕으로 블록체인의 활용성을 높이기 위한 것이다. 그러나 종래기술 중 블록을 확인하기 전에 철저한 비즈니스 논리 검증에 주의를 기울인 것도 없다. 실제로 앞서 언급한 애플리케이션이 의도한 대로 완전히 작동하기 위해서는 의미론적으로 올바른 데이터가 블록체인에 존재하도록 하는 것이 중요하다. 블록체인에 기록된 데이터는 사실상 불변성이기 때문에 적절한 필터링 과정 없이 유효하지 않은 트랜잭션이 이뤄져 전체 네트워크에 전파될 경우 공급망 이해관계자와 소비자에게 심각한 문제를 일으킬 수 있다. 따라서 체계적이고 완전하게 검증 가능한 프로세스를 활용하지 않으면 공급망용 블록체인 애플리케이션은 오류가 발생하기 쉬워 분산 레저(distributed ledger)의 신뢰에 심각한 위협이 될 수 있다. These prior technologies are intended to increase the utility of the block chain based on the expression of supply chain knowledge with a rich domain vocabulary as well as semantic reasoning technology. However, none of the prior art paid attention to thorough business logic verification before checking the block. Indeed, for the aforementioned applications to fully function as intended, it is important to ensure that semantically correct data exists on the blockchain. Since the data recorded on the blockchain is virtually immutable, it can cause serious problems for supply chain stakeholders and consumers if invalid transactions are made and propagated to the entire network without proper filtering. Therefore, without the use of systematic and fully verifiable processes, blockchain applications for supply chains can be error-prone and pose a serious threat to the trust of the distributed ledger.

본 발명이 이루고자 하는 기술적 과제는 블록체인의 향상된 데이터 품질을 제공하기 위해 이상 징후 감지 계층이 있는 공급망용 블록체인 플랫폼을 제공하는데 있다. 제안하는 플랫폼의 주요 목표는 공급망의 유효한 흐름에 대한 잘못된 트랜잭션을 사전에 감지함으로써 블록체인의 데이터 품질을 향상시키는 것이다.The technical task of the present invention is to provide a blockchain platform for the supply chain with an anomaly detection layer in order to provide improved data quality of the blockchain. The main goal of the proposed platform is to improve the data quality of the blockchain by proactively detecting erroneous transactions against valid flows in the supply chain.

일 측면에 있어서, 본 발명에서 제안하는 강인한 데이터 모델 및 검증 메커니즘을 갖춘 블록체인 플랫폼을 이용한 공급망의 신뢰 강화 시스템은 개인 및 공용 키를 관리하고 트랜잭션을 생성한 후 검증자에게 전송하는 클라이언트, 클라이언트로부터 트랜잭션을 수신 받아 해당 피어 노드로 트랜잭션을 전송하고, 모든 노드가 생성된 출력에 동의하는지 확인하면서 해당 트랜잭션 프로세서를 실행하도록 트랜잭션을 전송하는 검증자 및 수신된 트랜잭션 유형을 나타내는 액션 필드에 따라 해당 트랜잭션 핸들러가 미리 정의된 태스크를 수행하도록 하는 트랜잭션 프로세서를 포함한다. In one aspect, the supply chain trust enhancement system using a blockchain platform with a robust data model and verification mechanism proposed in the present invention manages private and public keys, creates a transaction, and transmits it to a validator, from a client to a validator. A validator that receives a transaction, sends it to its peer node, and executes that transaction processor, ensuring that all nodes agree on the output generated, and the corresponding transaction handler depending on the action field indicating the received transaction type. includes a transaction processor for performing predefined tasks.

트랜잭션 프로세서는 트랜잭션 핸들러, RDF 생성기, RDF 저장소 및 이상 징후 감지기를 포함하고, 트랜잭션 핸들러를 통해 인코딩된 트랜잭션 페이로드를 디코딩하여 필드로 분할하고, 이후 수신된 트랜잭션 유형을 나타내는 액션 필드에 따라 트랜잭션 핸들러가 물리적 객체의 이동 중에 캡처한 공급망 이벤트 데이터를 추가하는 트랜잭션의 미리 정의된 태스크를 수행하도록 한다. The transaction processor includes a transaction handler, an RDF generator, an RDF store and an anomaly detector, and decodes the transaction payload encoded through the transaction handler and splits it into fields, and then, according to the action field indicating the received transaction type, the transaction handler Allows you to perform predefined tasks of transactions that add supply chain event data captured during the movement of physical objects.

트랜잭션 프로세서는 직병렬 변환된 페이로드에 기술된 공급망 이벤트 데이터를 이용하여, RDF 생성기를 통해 그래프 생성 규칙에 따라 두 개의 정점과 두 개의 정점을 연결하는 에지로 구성된 그래프 구성요소로 이루어진 트리플 집합을 생성한 후, RDF 저장소에 미리 저장된 집합과 관련하여 이상 징후 감지기를 통해 이상 징후 여부를 탐지한다. The transaction processor uses the supply chain event data described in the deserialized payload to generate a triple set of graph components consisting of two vertices and an edge connecting the two vertices according to the graph creation rules through the RDF generator. After that, in relation to the set pre-stored in the RDF storage, an anomaly is detected through an anomaly detector.

트랜잭션 프로세서는 이상 징후 감지기가 검증자의 글로벌 상태와 상호 작용하여 이상 징후 여부를 탐지하도록 하고, 이상 징후 감지기를 통해 이상 징후가 감지되지 않는 경우, 트랜잭션 핸들러는 현재 트랜잭션에 대해 생성된 트리플 집합을 RDF 저장소에 추가하고 블록 및 글로벌 상태를 업데이트한다. The transaction processor causes the anomaly detector to interact with the validator's global state to detect anomalies, and if no anomaly is detected by the anomaly detector, the transaction handler stores the set of triples generated for the current transaction into RDF storage. to and update the block and global state.

트랜잭션 프로세서는 이상 징후 감지기가 검증자의 글로벌 상태와 상호 작용하여 이상 징후 여부를 탐지하도록 하고, 이상 징후 감지기를 통해 이상 징후가 감지되는 경우, 해당 트랜잭션을 무효화하고, 해당 트랜잭션에 대한 글로벌 상태는 업데이트되지 않고, 감지된 이상 징후에 관한 해당 트랜잭션을 시스템에 적용하도록 한다. The transaction processor causes the anomaly detector to interact with the validator's global state to detect anomalies, and if an anomaly detector detects an anomaly, invalidates the transaction, and the global state for that transaction is not updated. Instead, the transaction related to the detected anomaly is applied to the system.

본 발명의 실시예에 따른 트랜잭션 페이로드는 물리적 객체의 이동 중에 캡처한 공급망 이벤트 데이터 구성요소만을 포함하고, 상기 이벤트 데이터 구성요소 중 GTS(Global Traceability Standard)에 정의된 이벤트 유형, 관련 객체의 식별자, 타임스탬프, 위치 및 비즈니스 단계 필드로 단순화된 이벤트 데이터인 KDE(Key Data Element) 및 오프체인 데이터베이스 접속 링크를 포함하는 증거 추적을 위해 필요한 데이터만을 통합한다.A transaction payload according to an embodiment of the present invention includes only supply chain event data components captured during the movement of a physical object, and among the event data components, an event type defined in Global Traceability Standard (GTS), an identifier of a related object, Incorporates only the data needed for evidence tracking, including Key Data Element (KDE), event data simplified with timestamp, location, and business stage fields, and links to off-chain database connections.

트랜잭션 프로세서는 물리적 객체의 이동 중에 캡처한 공급망 이벤트 데이터를 관리하기 위해 트랜잭션 프로세서에 저장된 접속 링크를 통해 오프체인 데이터베이스에 저장된 상기 이벤트 데이터에 관한 특정 위치의 고도 및 경도, 속성, 센서 데이터를 포함하는 추가 데이터에 접속하여 추가적인 이상 징후를 여부를 탐지한다. The transaction processor is configured to manage supply chain event data captured during the movement of a physical object, via an access link stored in the transaction processor, an additional including elevation and longitude, attributes, sensor data of a particular location with respect to said event data stored in an off-chain database Access the data to detect additional anomalies.

이상 징후 감지기는 각 트랜잭션에 대해 관련 아이템의 위치가 변경되었는지 여부, 변경된 경우 글로벌 상태에서 임계 데이터를 읽고 평균 이동 속도가 미리 정해진 범위 내에 있는지 여부를 확인하는 속도 조건 및 미리 정해진 체류 시간 조건을 포함하는 일관성 규칙을 이용하는 일관성 규칙 기반 이상 징후 감지 및 그래프 모델을 사용하여 제품 수명 주기의 일관성을 보장하는 알고리즘을 통한 그래프 기반 이상 징후 감지 방법을 이용한다. The anomaly detector includes, for each transaction, whether the location of the related item has changed, and if so, a speed condition that reads critical data from the global state and checks whether the average movement speed is within a predetermined range, and a predetermined dwell time condition. Consistency rule-based anomaly detection using consistency rules and graph-based anomaly detection methods using graph models to ensure consistency of product lifecycles.

또 다른 일 측면에 있어서, 본 발명에서 제안하는 강인한 데이터 모델 및 검증 메커니즘을 갖춘 블록체인 플랫폼을 이용한 공급망의 신뢰 강화 방법은 클라이언트가 개인 및 공용 키를 관리하고 트랜잭션을 생성한 후 검증자에게 전송하는 단계, 검증자가 클라이언트로부터 트랜잭션을 수신 받아 해당 피어 노드로 트랜잭션을 전송하고, 모든 노드가 생성된 출력에 동의하는지 확인하면서 해당 트랜잭션 프로세서를 실행하도록 트랜잭션을 전송하는 단계 및 수신된 트랜잭션 유형을 나타내는 액션 필드에 따라 트랜잭션 프로세서를 통해 해당 트랜잭션 핸들러가 미리 정의된 태스크를 수행하도록 하는 단계를 포함한다.In another aspect, the method for strengthening trust in the supply chain using a blockchain platform with a robust data model and verification mechanism proposed by the present invention is a method in which a client manages private and public keys and creates a transaction and sends it to a validator. step, the validator receives the transaction from the client, sends the transaction to the corresponding peer node, and sends the transaction to execute the corresponding transaction processor while verifying that all nodes agree on the output generated, and an action field indicating the type of transaction received and causing the transaction handler to perform a predefined task through the transaction processor.

본 발명의 실시예들에 따르면 변칙적인 트랜잭션의 감지를 위한 두 가지 방법, 즉 기본 일관성 규칙 기반 탐지를 통해 체류 시간 또는 속도 조건과 같은 일반적인 일관성 규칙을 제시하고 이러한 조건을 위반하는 명백한 오류 트랜잭션을 포착하며, 시간 그래프 기반 탐지를 통해 변칙적인 패턴을 찾기 위해 그래프의 서브셋을 통과하여 오류 트랜잭션을 포착할 수 있다. 공급망의 유효한 흐름에 대한 잘못된 트랜잭션을 사전에 감지함으로써 블록체인의 데이터 품질을 향상시킬 수 있다.According to embodiments of the present invention, there are two methods for the detection of anomalous transactions, namely, presenting general consistency rules such as dwell time or rate conditions through basic consistency rule-based detection, and catching obviously erroneous transactions that violate these conditions. It can catch erroneous transactions by traversing a subset of the graph to look for anomalous patterns through time graph-based detection. By proactively detecting erroneous transactions against valid flows in the supply chain, the data quality of the blockchain can be improved.

도 1은 본 발명의 일 실시예에 따른 강인한 데이터 모델 및 검증 메커니즘을 갖춘 블록체인 플랫폼을 이용한 공급망의 신뢰 강화 시스템의 구성을 나타내는 도면이다.
도 2는 본 발명의 일 실시예에 따른 트랜잭션 예시를 나타내는 도면이다.
도 3은 본 발명의 일 실시예에 따른 글로벌 상태 유형을 나타내는 도면이다.
도 4는 본 발명의 일 실시예에 따른 이벤트 유형에 대한 변환 규칙을 나타내는 도면이다.
도 5는 본 발명의 일 실시예에 따른 해당 트랜잭션의 라이프 사이클 순서가 올바른지 확인하기 위한 알고리즘이다.
도 6은 본 발명의 일 실시예에 따른 체인에 따라 집계된 모든 하위 아이템이 상위 아이템과 시간 순서대로 연결 해제되는지 여부를 확인하기 위한 알고리즘이다.
도 7은 본 발명의 일 실시예에 따른 강인한 데이터 모델 및 검증 메커니즘을 갖춘 블록체인 플랫폼을 이용한 공급망의 신뢰 강화 방법을 설명하기 위한 흐름도이다.
1 is a diagram showing the configuration of a supply chain trust enhancement system using a blockchain platform equipped with a robust data model and verification mechanism according to an embodiment of the present invention.
2 is a diagram illustrating an example of a transaction according to an embodiment of the present invention.
3 is a diagram illustrating a global state type according to an embodiment of the present invention.
4 is a diagram illustrating a conversion rule for an event type according to an embodiment of the present invention.
5 is an algorithm for checking whether the life cycle order of a corresponding transaction is correct according to an embodiment of the present invention.
6 is an algorithm for checking whether all lower-level items aggregated according to a chain are disconnected from upper-level items in chronological order according to an embodiment of the present invention.
7 is a flowchart illustrating a method for strengthening trust in a supply chain using a blockchain platform equipped with a robust data model and verification mechanism according to an embodiment of the present invention.

공급망이 극도로 복잡해짐에 따라, 전통적인 공급망 관리 체계는 효율적인 리스크 관리를 위한 자원을 추적하는 데 한계가 있음을 드러낸다. 최근 공급망용 블록체인 기반 솔루션이 이런 한계를 극복할 수 있는 가능성을 보이고 있다. 그러나, 이러한 영역의 수많은 실제적인 문제들은 현재까지 완전히 해결되지 않고 있다. 따라서, 본 발명에서는 그 중에서 가장 중요한 문제들 중 하나인 트랜잭션(transaction)에서의 비즈니스 로직의 검증에 대해 깊이 연구한다. As supply chains become extremely complex, traditional supply chain management systems reveal limitations in tracking resources for effective risk management. Recently, blockchain-based solutions for supply chains have shown the potential to overcome these limitations. However, many practical problems in this area have not been completely resolved to date. Therefore, in the present invention, one of the most important problems among them, verification of business logic in a transaction, is studied in depth.

본 발명에서는, 비즈니스 상황 데이터를 바탕으로 트랜잭션의 의미적 정확성을 검증하는 변칙 검출 프레임워크에 의해 가능하게 되는 공급망용 새로운 분산 레저(distributed ledger) 시스템을 제안한다. 제안하는 블록체인 데이터 모델은 실제 비즈니스 표준을 기반으로 공급망에서 발생한 이벤트를 정확하게 나타낼 수 있도록 맞춤 제작됐다. 검증의 보다 효율적인 추적을 용이하게 하기 위해, 공급망 네트워크를 나타내기 위해 그래프 데이터 모델을 활용한다. 데이터 모델 위에, 트랜잭션의 변칙성을 검증하는 스마트 계약 기반의 변칙 탐지 프레임워크를 제시한다. 일관성 규칙 기반 및 그래프 기반 탐지 방법이 고안된다. 제안하는 모델의 실현가능성은 하이퍼레저 소투스(Hyperledger Sawtooth)를 사용하여 구현된 시스템에 의해 나타낸다. 이상 징후 감지 계층이 어떻게 시스템에 연결될 수 있는지, 그것이 다른 시스템 구성 요소들과 어떻게 상호작용하는지, 그리고 이 새로운 기능에서 전체적인 시스템 흐름이 어떻게 작동하는지 나타낸다. 시나리오 기반 시뮬레이션을 통해 시스템을 평가하고, 통합된 많은 사용 사례에 대해, 제안하는 시스템의 정확성과 효율성을 입증한다. 이하, 본 발명의 실시 예를 첨부된 도면을 참조하여 상세하게 설명한다.In the present invention, we propose a new distributed ledger system for supply chain enabled by an anomaly detection framework that verifies the semantic correctness of a transaction based on business context data. The proposed blockchain data model is tailored to accurately represent events that occurred in the supply chain based on real business standards. To facilitate more efficient tracking of validation, a graph data model is utilized to represent the supply chain network. On the data model, we present a smart contract-based anomaly detection framework that verifies the anomaly of transactions. Consistency rule-based and graph-based detection methods are devised. The feasibility of the proposed model is indicated by the system implemented using Hyperledger Sawtooth. It shows how the anomaly detection layer can be connected to the system, how it interacts with other system components, and how the overall system flow works in this new feature. Evaluate the system through scenario-based simulation, and prove the accuracy and effectiveness of the proposed system for many integrated use cases. Hereinafter, embodiments of the present invention will be described in detail with reference to the accompanying drawings.

본 발명에서는 블록체인의 향상된 데이터 품질을 제공하기 위해 이상 징후 감지 계층이 있는 공급망용 블록체인 플랫폼을 제안한다. 제안하는 플랫폼의 주요 목표는 공급망의 유효한 흐름에 대한 잘못된 트랜잭션을 사전에 감지함으로써 블록체인의 데이터 품질을 향상시키는 것이다. 이러한 목표를 달성하기 위해, 기초적인 데이터 모델의 필수적인 역할을 강조한다. 제안하는 시스템은 상호운용성에 필수적인 공급망의 표준화된 이벤트 모델링과 공급망 구성 요소와 그 상호작용을 정밀하게 기술하고 분석할 수 있는 RDF 기반 지식 표현 상에 구축된다. In the present invention, we propose a blockchain platform for supply chain with anomaly detection layer to provide improved data quality of blockchain. The main goal of the proposed platform is to improve the data quality of the blockchain by proactively detecting erroneous transactions against valid flows in the supply chain. To achieve this goal, we emphasize the essential role of the underlying data model. The proposed system is built on standardized event modeling of supply chain essential for interoperability and RDF-based knowledge representation that can precisely describe and analyze supply chain components and their interactions.

제안하는 데이터 모델에 기초하여, 변칙적인 트랜잭션의 감지를 위한 두 가지 방법, 즉 기본 일관성 규칙에 근거한 탐지와 그래프 기반 탐지를 제안한다. 체류 시간 또는 속도 조건과 같은 일반적인 일관성 규칙을 제시하고 이러한 조건을 위반하는 명백한 오류 트랜잭션을 어떻게 포착할 수 있는지 설명한다. 시간 그래프 기반 검출은 변칙적인 패턴을 찾기 위해 그래프의 서브셋을 통과하여 수행된다. 이상 징후 검출 계층을 포함하는 시스템 아키텍처를 설계하고, Hyperledger Sawtooth[11]를 사용하여 시스템을 구현했다. 시나리오 기반의 시뮬레이션을 통해 시스템의 실현 가능성을 입증한다. 시스템의 정확성과 효과성은 사용 사례를 시뮬레이션한 결과를 통해 확인할 수 있다.Based on the proposed data model, we propose two methods for the detection of anomalous transactions, namely, the detection based on the basic consistency rule and the graph-based detection. We present general consistency rules, such as dwell time or rate conditions, and explain how we can catch obviously erroneous transactions that violate these conditions. Temporal graph-based detection is performed by traversing a subset of the graph to find anomalous patterns. A system architecture including an anomaly detection layer was designed, and the system was implemented using Hyperledger Sawtooth [11]. Prove the feasibility of the system through scenario-based simulation. The accuracy and effectiveness of the system can be verified by simulating the use case.

본 발명의 실시예에 따르면, 글로벌 표준을 기반으로 공급망용 블록체인의 신뢰성 있는 데이터 모델을 정의하고 있고, 이것은 블록체인의 데이터 품질 유지뿐만 아니라 상호운용 가능한 데이터 교환의 중요한 요소이다.According to an embodiment of the present invention, a reliable data model of the blockchain for supply chain is defined based on global standards, which is an important element of interoperable data exchange as well as maintaining data quality of the blockchain.

본 발명에서는 공급망용 블록체인 시스템에 이상 징후 감지 계층이 필요하다는 점을 강조하고, 블록체인을 활용한 공급망 비즈니스 논리 검증을 위한 스마트 계약 기반 이상 감지를 처음으로 제안한다.The present invention emphasizes the need for an anomaly detection layer in a blockchain system for supply chains, and proposes smart contract-based anomaly detection for supply chain business logic verification using blockchain for the first time.

본 발명의 실시예에 따르면, Hyperledger Sawtooth를 활용하여 유연한 시스템을 구축하였으며, 시나리오 기반의 평가를 실시하여 시스템의 실현 가능성을 나타낸다. According to an embodiment of the present invention, a flexible system is constructed using Hyperledger Sawtooth, and scenario-based evaluation is performed to indicate the feasibility of the system.

구조화된 디지털 표현 형태로 물리적 객체의 흐름을 나타내기 위해, 자동 데이터 캡처 기술뿐만 아니라 고유한 식별 체계도 핵심 역할을 한다. RFID 태그와 바코드와 같은 데이터 캐리어들은 공급망 데이터의 자동 캡처를 위해 사용된다. 정보 시스템은 데이터 캐리어를 스캔함으로써 물리적 객체와 관련된 기계 판독이 가능한 데이터의 흐름을 얻는다. 또한, 세계적으로 고유한 식별 체계는 비즈니스 트랜잭션의 맥락에서 물리적 객체에 대한 단일 공유 뷰를 가질 수 있다.In order to represent the flow of physical objects in the form of structured digital representations, automatic data capture technologies as well as unique identification schemes play a key role. Data carriers such as RFID tags and barcodes are used for automatic capture of supply chain data. An information system obtains a stream of machine-readable data associated with a physical object by scanning the data carrier. Additionally, a globally unique identification scheme can have a single, shared view of a physical object in the context of a business transaction.

데이터 모델은 자동 캡처 후 고유하게 식별된 객체에 대한 컨텍스트 데이터의 스트림을 처리하는데 필요하다. EPCIS(Electronic Product Code Information Service)[12]는 공급망 데이터를 생성하고 공유하기 위한 데이터 모델 및 서비스 인터페이스를 정의하기 위해 GS1에서 비준한 글로벌 표준이다. 특히 EPCIS 데이터 모델은 공급망에서 관찰된 사건에 대한 상세한 설명을 가능하게 한다. 데이터 모델은 공급망 이벤트 데이터의 구성요소를 정의하며, 이는 이벤트의 대상, 시기, 장소 및 이유의 4차원으로 비즈니스 단계의 완료를 나타낸다. A data model is needed to process a stream of context data for a uniquely identified object after automatic capture. Electronic Product Code Information Service (EPCIS) [12] is a global standard ratified by GS1 to define data models and service interfaces for creating and sharing supply chain data. In particular, the EPCIS data model enables detailed descriptions of observed events in the supply chain. The data model defines the components of supply chain event data, which represent the completion of a business phase in the four dimensions of what, when, where, and why the event.

EPCIS 데이터 모델은 이벤트를 다음과 같은 일반 유형으로 분류한다: The EPCIS data model classifies events into the following general types:

객체 이벤트: 두 개 이상의 실체 간의 상호작용이 명시적으로 표현되는 다음의 세 가지 사건 유형과 달리, 이 사건은 한 아이템의 단일 사업 단계의 완료를 나타낸다(예를 들어, 랩톱 컴퓨터 A가 생산됨). Object event: Unlike the following three event types, where the interaction between two or more entities is explicitly expressed, this event represents the completion of a single business phase of an item (for example, laptop computer A is produced). .

집계 이벤트: 이 이벤트 유형은 하위 아이템으로 지정된 아이템이 상위 아이템에 집계되거나(임시) 상위 아이템에 집계되는 이벤트를 의미한다(예를 들어, 제품 A가 컨테이너 B에서 적재/하역됨). Aggregation Event: This event type refers to an event in which an item designated as a child item is aggregated into a parent item (temporary) or aggregated into a parent item (eg, product A is loaded/unloaded from container B).

변환 이벤트: 입력 아이템이 주어지면 변환 이벤트는 출력 아이템으로 변환한다(예를 들어, 원료를 최종 제품으로 변환함).Conversion Event: Given an input item, a conversion event transforms it into an output item (eg, transforms a raw material into a final product).

트랜잭션 이벤트: 이 이벤트 유형의 지정된 아이템은 해당 트랜잭션에 관련된다(예를 들어, 트랜잭션 T에 대해 제품 A와 B를 구매함). Transactional event: A specified item of this event type is related to that transaction (eg purchases products A and B for transaction T).

Hyperledger[13]는 Linux 재단이 광범위한 사업에 적용할 수 있는 프라이빗 블록체인을 위한 시스템과 도구를 개발하기 위해 주최하는 오픈소스 프로젝트이다. Hyperledger 프로젝트에 따라 개별적이고 협력적으로 개발된 Fabric [14], Sawtooth[11], Iroha[15]와 같은 여러 하위 프로젝트가 있다. 그 중에서도 Sawtooth를 사용하여 고모듈화(컨센서스 알고리즘이나 트랜잭션 프로세서와 같은 핵심 요소는 접속 가능)가 되어 있고, 코어 시스템은 최적화(병렬 트랜잭션 실행은 병렬 스케줄러에 의해 활성화됨)가 잘 되어 있어 시스템을 구축했다. 액터들(actor)이 동적으로 정책이나 시스템 구성요소를 변경하고 조정하는 확장 가능한 공급망 시스템을 구축하기 위해서는 고모듈화가 필요하다. 또한, 공급망에서 생산되는 대규모 실시간 데이터를 매일 처리하기 위해 고도로 최적화된 시스템을 이용해야 한다. 다음은 Sawtooth의 핵심 구성요소들이다.Hyperledger [13] is an open source project hosted by the Linux Foundation to develop systems and tools for a private blockchain that can be applied to a wide range of businesses. There are several subprojects such as Fabric [14], Sawtooth [11], and Iroha [15] developed individually and collaboratively under the Hyperledger project. Among them, using Sawtooth, it is highly modular (key elements such as a consensus algorithm and transaction processor can be accessed), and the core system is well optimized (parallel transaction execution is activated by a parallel scheduler) to build a system. . High modularity is required to build a scalable supply chain system in which actors dynamically change and adjust policies or system components. They also need to use highly optimized systems for daily processing of the large-scale, real-time data produced by the supply chain. The following are the key components of Sawtooth.

검증자(Validator)는 (모듈러(modular)) 컨센서스 알고리즘을 적용해 트랜잭션을 수집하고 서로 다른 노드에 걸쳐 블록을 일관적으로 만드는 업무를 담당하는 노드다. 저널은 실행을 위해 트랜잭션을 트랜잭션 프로세서로 전송하는 검증기에 포함된 시스템 단위로서, 트랜잭션 배치를 포함하는 블록을 커밋(commit)한다. 글로벌 상태 또한 검증자의 일부분이다. 트랜잭션 프로세서에서 트랜잭션을 실행한 결과가 포함된 키 값 저장소다. 트랜잭션 프로세서는 스마트 계약 머신과 견줄 만하다. 트랜잭션을 받으면 트랜잭션의 타당성(예를 들어, 데이터 형식, 해시 값 등)을 확인하고 해당 취급 루틴에 정의된 내용에 따라 상태를 업데이트한다. A validator is a node in charge of collecting transactions by applying a (modular) consensus algorithm and making blocks consistent across different nodes. A journal is a system unit included in a verifier that sends a transaction to a transaction processor for execution, and commits a block containing a transaction batch. The global state is also part of the validator. A key-value store that contains the results of executing a transaction in a transaction processor. Transaction processors are comparable to smart contract machines. When a transaction is received, it checks the validity of the transaction (eg data type, hash value, etc.) and updates the state according to what is defined in its handling routine.

도 1은 본 발명의 일 실시예에 따른 강인한 데이터 모델 및 검증 메커니즘을 갖춘 블록체인 플랫폼을 이용한 공급망의 신뢰 강화 시스템의 구성을 나타내는 도면이다. 1 is a diagram showing the configuration of a supply chain trust enhancement system using a blockchain platform equipped with a robust data model and verification mechanism according to an embodiment of the present invention.

제안하는 강인한 데이터 모델 및 검증 메커니즘을 갖춘 블록체인 플랫폼을 이용한 공급망의 신뢰 강화 시스템은 클라이언트(110), 검증자(120) 및 트랜잭션 프로세서(130)를 포함한다. The proposed supply chain trust enhancement system using a blockchain platform with a robust data model and verification mechanism includes a client 110 , a validator 120 , and a transaction processor 130 .

클라이언트(110)는 개인 및 공용 키를 관리하고 트랜잭션을 생성한 후 검증자에게 전송한다. The client 110 manages the private and public keys, creates a transaction, and sends it to the verifier.

검증자(120)는 클라이언트로부터 트랜잭션을 수신 받아 해당 피어 노드로 트랜잭션을 전송하고, 모든 노드가 생성된 출력에 동의하는지 확인하면서 해당 트랜잭션 프로세서를 실행하도록 트랜잭션을 전송한다. The verifier 120 receives the transaction from the client, transmits the transaction to the corresponding peer node, and transmits the transaction to execute the corresponding transaction processor while confirming that all nodes agree on the generated output.

트랜잭션 프로세서(130)는 수신된 트랜잭션 유형을 나타내는 액션 필드에 따라 해당 트랜잭션 핸들러가 미리 정의된 태스크를 수행하도록 한다. 트랜잭션 프로세서(130)는 트랜잭션 핸들러(131), RDF 생성기(132), RDF 저장소(133) 및 이상 징후 감지기(134)를 포함한다. The transaction processor 130 causes the corresponding transaction handler to perform a predefined task according to the action field indicating the received transaction type. The transaction processor 130 includes a transaction handler 131 , an RDF generator 132 , an RDF storage 133 , and an anomaly detector 134 .

트랜잭션 프로세서(130)는 트랜잭션 핸들러(131)를 통해 인코딩된 트랜잭션 페이로드를 디코딩하여 필드로 분할하고, 이후 수신된 트랜잭션 유형을 나타내는 액션 필드에 따라 트랜잭션 핸들러(131)가 물리적 객체의 이동 중에 캡처한 공급망 이벤트 데이터를 추가하는 트랜잭션의 미리 정의된 태스크를 수행하도록 한다. The transaction processor 130 decodes the transaction payload encoded through the transaction handler 131 and divides it into fields, and then, according to the action field indicating the received transaction type, the transaction handler 131 captures during the movement of the physical object. Allows you to perform predefined tasks in transactions that add supply chain event data.

트랜잭션 프로세서(130)는 직병렬 변환된 페이로드에 기술된 공급망 이벤트 데이터를 이용하여, RDF 생성기(132)를 통해 그래프 생성 규칙에 따라 두 개의 정점과 두 개의 정점을 연결하는 에지로 구성된 그래프 구성요소로 이루어진 트리플 집합을 생성한 후, RDF 저장소(133)에 미리 저장된 집합과 관련하여 이상 징후 감지기(134)를 통해 이상 징후 여부를 탐지한다. The transaction processor 130 uses the supply chain event data described in the deserialized payload, and through the RDF generator 132, a graph component composed of two vertices and an edge connecting the two vertices according to a graph generation rule. After generating a triple set consisting of

트랜잭션 프로세서(130)는 이상 징후 감지기(134)가 검증자의 글로벌 상태와 상호 작용하여 이상 징후 여부를 탐지하도록 한다. 이상 징후 감지기(134)를 통해 이상 징후가 감지되지 않는 경우, 트랜잭션 핸들러(131)는 현재 트랜잭션에 대해 생성된 트리플 집합을 RDF 저장소(133)에 추가하고 블록 및 글로벌 상태를 업데이트한다. 반면에, 이상 징후 감지기(134)를 통해 이상 징후가 감지되는 경우, 해당 트랜잭션을 무효화하고, 해당 트랜잭션에 대한 글로벌 상태는 업데이트되지 않고, 감지된 이상 징후에 관한 해당 트랜잭션을 시스템에 적용하도록 한다. The transaction processor 130 allows the anomaly detector 134 to interact with the validator's global state to detect anomalies. If no anomaly is detected through the anomaly detector 134, the transaction handler 131 adds the triple set generated for the current transaction to the RDF storage 133 and updates the block and global state. On the other hand, when an anomaly is detected through the anomaly detector 134, the transaction is invalidated, the global state for the transaction is not updated, and the transaction related to the detected anomaly is applied to the system.

이상 징후 감지기(134)는 각 트랜잭션에 대해 관련 아이템의 위치가 변경되었는지 여부, 변경된 경우 글로벌 상태에서 임계 데이터를 읽고 평균 이동 속도가 미리 정해진 범위 내에 있는지 여부를 확인하는 속도 조건 및 미리 정해진 체류 시간 조건을 포함하는 일관성 규칙을 이용하는 일관성 규칙 기반 이상 징후 감지 및 그래프 모델을 사용하여 제품 수명 주기의 일관성을 보장하는 알고리즘을 통한 그래프 기반 이상 징후 감지 방법을 이용한다. For each transaction, the anomaly detector 134 determines whether the location of the related item has changed, if so, reads critical data from the global state and checks whether the average moving speed is within a predetermined range, a speed condition and a predetermined dwell time condition Consistency rule-based anomaly detection using consistency rules including

본 발명의 실시예에 따르면, 트랜잭션 페이로드는 물리적 객체의 이동 중에 캡처한 공급망 이벤트 데이터 구성요소만을 포함하고, 상기 이벤트 데이터 구성요소 중 GTS(Global Traceability Standard)에 정의된 이벤트 유형, 관련 객체의 식별자, 타임스탬프, 위치 및 비즈니스 단계 필드로 단순화된 이벤트 데이터인 KDE(Key Data Element) 및 오프체인 데이터베이스 접속 링크를 포함하는 증거 추적을 위해 필요한 데이터만을 통합한다. According to an embodiment of the present invention, a transaction payload includes only supply chain event data components captured during the movement of a physical object, and among the event data components, an event type defined in Global Traceability Standard (GTS), an identifier of a related object Incorporates only the data needed for evidence tracking, including Key Data Element (KDE), event data simplified to , timestamp, location, and business phase fields, and links to off-chain database connections.

트랜잭션 프로세서(130)는 물리적 객체의 이동 중에 캡처한 공급망 이벤트 데이터를 관리하기 위해 트랜잭션 프로세서에 저장된 접속 링크를 통해 오프체인 데이터베이스(140)에 저장된 상기 이벤트 데이터에 관한 특정 위치의 고도 및 경도, 속성, 센서 데이터를 포함하는 추가 데이터에 접속하여 추가적인 이상 징후를 여부를 탐지한다. The transaction processor 130 is configured to manage the supply chain event data captured during the movement of the physical object, through the connection link stored in the transaction processor, the elevation and longitude, attributes of a specific location with respect to the event data stored in the off-chain database 140, Access to additional data including sensor data to detect additional anomalies.

본 발명의 일 실시예에 따른 강인한 데이터 모델 및 검증 메커니즘을 갖춘 블록체인 플랫폼을 이용한 공급망의 신뢰 강화 시스템에 관하여 도 1을 참조하여 더욱 상세히 설명한다. A system for strengthening trust in the supply chain using a blockchain platform with a robust data model and verification mechanism according to an embodiment of the present invention will be described in more detail with reference to FIG. 1 .

본 발명의 일 실시예에 따른 블록체인 플랫폼은 Hyperledger Sawtooth를 기반으로 구축되고, 클라이언트(110), 검증자(120) 및 트랜잭션 프로세서(130)를 포함한다. The blockchain platform according to an embodiment of the present invention is built based on Hyperledger Sawtooth, and includes a client 110 , a validator 120 , and a transaction processor 130 .

클라이언트(110)는 자신의 개인 및 공용 키를 관리하고 트랜잭션을 생성한 후 REST API를 통해 검증자(120)에게 트랜잭션을 전송한다(도 1의 1a). After the client 110 manages its own private and public key and creates a transaction, it transmits the transaction to the verifier 120 through the REST API ( 1a in FIG. 1 ).

검증자(120)는 분산 레저(distributed ledger)의 주요 태스크를 담당한다. 즉, 클라이언트(130)의 트랜잭션이 주어지면 검증자(120)는 자신의 피어(peer) 노드로 트랜잭션을 전송하고, 모든 노드가 생성된 출력에 동의하는지 확인하면서 트랜잭션 프로세서(130)를 실행하도록 한다. 마지막으로, 트랜잭션 프로세서(130)는 스마트 계약의 비즈니스 로직을 실행한다. The validator 120 is responsible for the main task of the distributed ledger. That is, when the transaction of the client 130 is given, the verifier 120 transmits the transaction to its peer node, and executes the transaction processor 130 while confirming that all nodes agree on the generated output. . Finally, the transaction processor 130 executes the business logic of the smart contract.

검증자(120)는 클라이언트(110) 또는 인접 검증자(111)로부터 트랜잭션을 받는 두 가지 소스가 있다(도 1의 1a 및 1b). 검증자(120)에 직접 연결된 로컬 클라이언트(110)는 트랜잭션의 모든 필수 필드를 설정하고 트랜잭션을 이진 형식으로 직렬화한 후 일괄적으로 포장한 후 전송할 수 있다. 또한, 클라이언트(110)로부터 트랜잭션을 수신하는 검증자(120)가 그것을 피어링 검증자에게 알리기 때문에, 피어투피어[peer-to-peer] 전송에 사용되는 가십(gossip)(에피데믹(epidemic)) 프로토콜 [16]은 검증자(120)가 트랜잭션을 얻는 또 다른 소스이다.There are two sources for the verifier 120 to receive transactions from the client 110 or the adjacent verifier 111 ( 1a and 1b in FIG. 1 ). The local client 110 directly connected to the verifier 120 may set all required fields of the transaction, serialize the transaction in binary format, package it in a batch, and then transmit it. Also, gossip (epidemic) used for peer-to-peer transmission, as the verifier 120 receiving the transaction from the client 110 informs the peering verifier of it. Protocol [16] is another source for validators 120 to obtain transactions.

검증자(120)가 트랜잭션을 수신하면 검증자(120)는 해당 트랜잭션 프로세서(130)에 이를 전달하며(도 1의 2), 여기서 인코딩된 트랜잭션 페이로드가 디코딩되어 필드로 분할된다. 이후 트랜잭션 유형을 나타내는 작업 필드에 따라 해당 트랜잭션 핸들러(131)가 미리 정의된 태스크를 수행한다. 트랜잭션에는 미리 정의된 구성 데이터 등 메타데이터를 등록하는 트랜잭션과 물리적 객체의 이동 중에 캡처한 공급망 이벤트 데이터를 추가하는 트랜잭션의 두 종류가 있다.When the verifier 120 receives the transaction, the verifier 120 forwards it to the corresponding transaction processor 130 (2 in FIG. 1), where the encoded transaction payload is decoded and divided into fields. Thereafter, the corresponding transaction handler 131 performs a predefined task according to the operation field indicating the transaction type. There are two types of transactions: those that register metadata such as predefined configuration data, and those that add supply chain event data captured during the movement of physical objects.

본 발명에서는 공급망 이벤트 데이터가 포함된 트랜잭션을 처리하는 절차에 초점을 맞춘다. 첫 번째 단계로서, 직병렬 변환된 페이로드에 기술된 공급망 이벤트 데이터를 고려하여, RDF 생성기(132)는 그래프 생성 규칙에 따라 정점 두 개와 이를 연결하는 에지로 구성된 그래프 구성요소로 이루어진 트리플 집합을 생성한다(도 1의 5). 그런 다음 생성된 트리플 집합은 RDF 저장소(133)에 저장된 기존 집합과 관련하여 이상 징후 감지기(134)에서 검사한다(도 1의 4). 이상 징후 감지기(134)는 또한 구성 데이터와 관련 제품의 최신 상태를 모두 검색하기 위해 글로벌 상태 및 저널과 상호 작용한다. 이상 징후 감지기(134)에서 이상 징후가 감지되지 않는 경우 트랜잭션 핸들러(131)는 현재 트랜잭션에 대해 생성된 트리플 집합을 RDF 저장소(133)에 추가(도 1의 5.2)하고 블록 및 글로벌 상태를 업데이트한다(도 1의 5.1 및 5.3).The present invention focuses on a procedure for processing a transaction containing supply chain event data. As a first step, considering the supply chain event data described in the deserialized payload, the RDF generator 132 generates a triple set of graph elements consisting of two vertices and an edge connecting them according to the graph generation rules. (5 in FIG. 1). Then, the generated triple set is checked by the anomaly detector 134 in relation to the existing set stored in the RDF storage 133 ( 4 in FIG. 1 ). Anomaly detector 134 also interacts with the global status and journal to retrieve both configuration data and up-to-date status of related products. If no anomaly is detected by the anomaly detector 134, the transaction handler 131 adds the triple set generated for the current transaction to the RDF storage 133 (5.2 in Fig. 1) and updates the block and global state. (5.1 and 5.3 in Fig. 1).

이와는 대조적으로, 주어진 트랜잭션이 스마트 계약의 어떤 일관성 조건을 위반하는 것으로 판명되면 예외를 제기하여 트랜잭션이 무효화된다. 따라서 해당 트랜잭션에 대한 글로벌 상태는 업데이트되지 않는다. 대신 이상 징후 감지(예를 들어, 위반되는 특정 규칙 및 이상 이벤트 데이터의 요약도 포함)를 지정하는 트랜잭션을 시스템에 적용해야 한다. In contrast, if a given transaction is found to violate some consistency condition of the smart contract, it will raise an exception to invalidate the transaction. Therefore, the global state for that transaction is not updated. Instead, a transaction must be applied to the system that specifies the detection of anomalies (for example, also a summary of the specific rules being violated and the anomalous event data).

본 발명의 실시예에 따른 트랜잭션은 블록체인 시스템에서 데이터 전송의 단위이다. 예를 들어, 클라이언트 어플리케이션에 의한 입력으로 트랜잭션이 주어지면, 블록체인 시스템은 새로운 데이터 입력이나 반환 쿼리 결과를 추가한다. 예를 들어, 머신(RFID 또는 바코드 태그를 갖는) 또는 휴먼 엔드 유저(human end user)는 트랜잭션을 전송하여 시스템과 통신할 수 있다. A transaction according to an embodiment of the present invention is a unit of data transmission in a block chain system. For example, given a transaction as input by a client application, the blockchain system adds new data input or return query results. For example, a machine (with an RFID or barcode tag) or a human end user can communicate with the system by sending a transaction.

본 발명의 실시예에 따른 트랜잭션을 설계하기 위해 다음의 세 가지 요건을 고려한다. 첫째, 트랜잭션은 실제 공급망을 고려하여 물리적 자원과 그 상호작용의 디지털 표현을 모델링해야 한다. 둘째, 데이터 동기화를 위한 P2P 통신의 부하가 네트워크 크기에 관해서 기하급수적으로 되는 분산 시스템의 성능을 향상시키기 위해 트랜잭션은 가능한 경량일 필요가 있다. 마지막으로 유연한 데이터 관리를 위해 몇 가지 유형의 데이터 등록 및 쿼리가 지원되어야 한다. In order to design a transaction according to an embodiment of the present invention, the following three requirements are considered. First, a transaction must model a digital representation of a physical resource and its interactions, taking into account the actual supply chain. Second, in order to improve the performance of distributed systems where the load of P2P communication for data synchronization becomes exponential with respect to network size, transactions need to be as lightweight as possible. Finally, several types of data registration and querying must be supported for flexible data management.

도 2는 본 발명의 일 실시예에 따른 트랜잭션 예시를 나타내는 도면이다. 2 is a diagram illustrating an example of a transaction according to an embodiment of the present invention.

본 발명의 실시예에 따른 트랜잭션 페이로드는 EPCIS 데이터 모델을 준수하도록 설계되었다. EPCIS 데이터 모델은 이벤트 데이터와 마스터 데이터(다시 말해, 관련 위치의 좌표와 같은 추가 정적 데이터)로 구성되지만, 본 발명에서는 페이로드에 이벤트 데이터 구성요소만을 포함한다. 사건 데이터 구성요소 중, GTS(Global Traceability Standard)에 정의된 바와 같이 증거 추적을 위해 필요한 최소한의 데이터를 통합한다[17]. 구체적으로는, GTS에 정의된 KDE(Key Data Element)는 이벤트 유형, 관련 객체의 식별자, 타임스탬프, 위치 및 비즈니스 단계 필드로 단순화된 이벤트 데이터이다. 또한, 오프체인 데이터베이스 접속 링크가 본 발명의 실시예에 따른 트랜잭션에 포함되어 있다. The transaction payload according to the embodiment of the present invention is designed to conform to the EPCIS data model. The EPCIS data model consists of event data and master data (ie, additional static data such as coordinates of related locations), but in the present invention, only the event data component is included in the payload. Among the incident data components, as defined in the Global Traceability Standard (GTS), the minimum data required for evidence tracing is integrated [17]. Specifically, the Key Data Element (KDE) defined in GTS is event data that is simplified to the event type, identifier of the related object, timestamp, location, and business level fields. In addition, an off-chain database connection link is included in the transaction according to an embodiment of the present invention.

본 발명의 실시예에 따른 블록체인은 공급망 이벤트 데이터를 주로 다룬다. 그러나 실제 공급망을 관리하려면 이벤트에 대한 보다 세밀한 설명(예를 들어, 특정 위치의 고도 및 경도와 같은 속성)과 센서 데이터(예를 들어, 온도)와 같은 수많은 추가 데이터가 필요하다. 이러한 데이터는 오프체인 데이터베이스라고 불리는 블록체인의 외부에 있는 여분의 저장소를 사용하여 관리할 수 있다. 본 발명의 실시예에 따른 트랜잭션에 저장된 URL을 사용하면, 추가 데이터에 접속하여 추가 탐지를 수행할 수 있다. 더욱이 데이터의 해시를 감시함으로써 오프체인 데이터의 무결성을 유지할 수 있다. The blockchain according to the embodiment of the present invention mainly deals with supply chain event data. However, managing the actual supply chain requires more detailed descriptions of events (eg, attributes such as altitude and longitude of a particular location) and numerous additional data such as sensor data (eg, temperature). This data can be managed using extra storage external to the blockchain called an off-chain database. By using the URL stored in the transaction according to the embodiment of the present invention, additional detection can be performed by accessing additional data. Moreover, the integrity of off-chain data can be maintained by monitoring the hash of the data.

본 발명의 실시예에 따른 블록체인, 특히 프라이빗 블록체인은 RSM(Replicated State Machine)의 확장으로 간주된다[18]. 제안하는 시스템의 각 노드에는 각각의 상태가 있으며, 시스템은 모든 피어링 노드가 통일 상태에 대한 컨센서스(consensus)에 도달하도록 보장한다. 본 발명의 실시예에 따른 글로벌 상태는 공급망 내 아이템의 최근 상태와 블록체인의 관리에 필요한 메타데이터를 나타낸다. 이벤트 데이터로 신규 트랜잭션이 등록되면서 관련 아이템 정보를 동적으로 업데이트하지만, 전체 아이템 이력 데이터를 보유하지는 않는다. 명확히 하기 위해, 본 발명의 실시예에 따른 글로벌 상태의 목적은 공급망 또는 구성 설정에 있는 아이템의 현재 상태를 즉시 접속하여 모니터링하고 이상 징후 감지에 대한 일반적인 일관성 규칙을 확인하는 것이다. A blockchain, particularly a private blockchain, according to an embodiment of the present invention is considered an extension of the Replicated State Machine (RSM) [18]. Each node in the proposed system has its own state, and the system ensures that all peering nodes reach a consensus on a unified state. The global status according to an embodiment of the present invention represents the recent status of items in the supply chain and metadata required for blockchain management. As a new transaction is registered as event data, related item information is dynamically updated, but the entire item history data is not retained. For the sake of clarity, the purpose of a global state according to an embodiment of the present invention is to immediately access and monitor the current state of an item in a supply chain or configuration setting, and to ascertain general consistency rules for anomaly detection.

글로벌 상태는 영구(키(key), 값(value)) 스토리지에 의해 유지된다. 주소 지정 가능한 라딕스 머클 트리(radix merkle tree)(패트리샤 트리(patricia trie)라고도 함)는 본 발명의 실시예에 따른 데이터 구조에 사용된다. 이를 통해(키, 값) 쌍을 암호화된 방식으로 저장할 수 있고 검색 속도가 크게 향상된다. 트랜잭션 처리기가 클라이언트 또는 다른 검증자로부터 트랜잭션을 수신할 때 트랜잭션 프로세서에서 상태가 업데이트된다. Global state is maintained by persistent (key, value) storage. Addressable radix merkle trees (also called patricia trie) are used in data structures according to embodiments of the present invention. This allows (key, value) pairs to be stored in an encrypted way and greatly speeds up retrieval. State is updated in the transaction processor when the transaction processor receives a transaction from a client or other validator.

도 3은 본 발명의 일 실시예에 따른 글로벌 상태 유형을 나타내는 도면이다. 3 is a diagram illustrating a global state type according to an embodiment of the present invention.

도 3에 도시된 바와 같이, 본 발명의 실시예에 따른 여러 가지 글로벌 상태 유형을 정의한다. 유형에 따라 다른 키와 값을 사용하여 글로벌 상태의 특정 주소를 업데이트한다. 상태 유형은 이벤트 데이터 상태와 메타데이터 상태의 두 가지 형태로 분류된다. 객체 이벤트는 트랜잭션에서 디코딩된 컨텍스트 데이터의 튜플(예를 들어, 시간(time), 위치(location), 비즈니스 단계(bizstep), 이벤트 유형(event type))을 저장하는 키로 아이템의 식별자(다시 말해, 이벤트의 제목)를 사용한다. 마찬가지로, 다른 이벤트 유형도 관련된 아이템을 나타내는 여분의 필드를 가지고 있다는 점을 제외하고 동일한 튜플을 업데이트한다. 여러 개의 객체가 다대일 또는 다대다 관계를 나타내도록 지정할 수 있다. 이벤트 데이터 외에도 규칙 기반 이상 감지 시 사용되는 구성 데이터(예를 들어, 체류 시간 조건 및 속도 조건)와 예외 로그와 같은 메타데이터가 글로벌 상태에 포함될 수 있다. As shown in Fig. 3, various global state types are defined according to an embodiment of the present invention. Update a specific address in the global state with different keys and values depending on the type. State types are classified into two types: event data state and metadata state. An object event is a key that stores a tuple of context data decoded in a transaction (e.g., time, location, business step, event type) and the identifier of the item (that is, title of the event). Similarly, other event types update the same tuple, except that they have extra fields representing related items. Multiple objects can be specified to represent a many-to-one or many-to-many relationship. In addition to event data, the global state can include configuration data used for rule-based anomaly detection (eg dwell time conditions and speed conditions) and metadata such as exception logs.

본 발명의 실시예에 따른 이상 징후 감지기는 트랜잭션 프로세서에서 구현된다. 스마트 계약 기반 이상 감지 기능은 일관성 규칙 기반과 그래프 기반 감지라는 두 가지 광범위한 유형으로 분류될 수 있다. The anomaly detector according to an embodiment of the present invention is implemented in a transaction processor. Smart contract-based anomaly detection can be divided into two broad types: consistency rule-based and graph-based detection.

이상 징후 탐지의 첫 단계는 공급망의 모든 트랜잭션에 대해 명확하게 충족되어야 하는 기본적인 일관성 규칙과 관련이 있다. 본 발명에서는 [19]에 의해 정의된 규칙의 일부를 참조한다. 다음은 [19]에서 통합한 일반적인 규칙이다: The first step in anomaly detection involves basic consistency rules that must be explicitly met for every transaction in the supply chain. In the present invention, reference is made to some of the rules defined by [19]. Here is the general rule incorporated in [19]:

속도 조건: 제품의 이동 속도는 최대 운송 속도(예를 들어, 트럭, 선박 또는 비행기)를 초과할 수 없다. 이 규칙을 어긴 것은 분명히 복제 태그와 같은 위조품을 가리킨다. Speed Conditions: The speed of movement of the product cannot exceed the maximum transport speed (eg truck, ship or airplane). Violation of this rule clearly points to counterfeit products such as duplicate tags.

체류 시간 조건: 제품, 특히 유제품과 같은 유통기한이 있는 식품이 특정 장소에 머무르는 기간은 때때로 제한적이다. 공급망 시스템은 이러한 상태를 모니터링하고 사전 정의된 구성에 대한 위반이 발생하는지 감지할 필요가 있다.Retention time conditions: The length of time a product, particularly an expiry-dated food product, such as dairy, stays in a particular location is sometimes limited. Supply chain systems need to monitor these conditions and detect any violations of predefined configurations.

블록체인을 이용해 이러한 주요 규칙을 분석하는 제안하는 솔루션은 다음과 같다: A proposed solution to analyze these key rules using blockchain is:

속도 조건: 아이템 A가 시간 tk 및 위치 lk를 갖는 이벤트 ek와 연관되어 있다고 가정한다. 다음 이벤트 ek+1가 시간 tk+1 및 위치 lk+1을 갖는 경우, 거리(lk, lk+1)/(tk+1 - tk)가 미리 정의된 임계값 범위(vmin과 vmax 사이)를 훨씬 초과하면 이벤트 ek+1이 위조로 탐지된다. 이를 블록체인에 구현하기 위해 구성 파일을 사용하여 임계값 데이터(vmin, vmax)를 글로벌 상태로 등록한다. 제안하는 시스템은 각 트랜잭션에 대해 관련 아이템의 위치가 변경되었는지, 변경된 경우 글로벌 상태에서 임계 데이터를 읽고 평균 이동 속도가 올바른 범위에 있는지 확인한다.Velocity condition: Assume that item A is associated with an event e k with time t k and location l k . If the next event e k+1 has time t k+1 and location l k+1 , then the distance (l k , l k+1 )/(t k+1 - t k ) is a predefined threshold range ( If it is far exceeded (between v min and v max ), the event e k+1 is detected as a forgery. To implement this on the blockchain, a configuration file is used to register threshold data (v min , v max ) as a global state. For each transaction, the proposed system reads critical data from the global state if the location of the related item has changed and if so, checks whether the average movement speed is within the correct range.

체류 시간 조건: 체류 시간 일관성 규칙은 구성된 임계값 데이터를 사용하여 확인할 수 있다. 이 경우 임계값 데이터를 글로벌 상태에 등록할 때 예를 들어, 관련 아이템, 위치의 식별자의 페어를 키로 사용할 수 있다. 다시 말해, 글로벌 상태는 특정 아이템이 특정 위치에 머무르기 위한 시간 제한을 가지고 있다. 이상 징후는 아이템이 특정 위치에 머무르는 기간을 측정하여 확인할 수 있다.Dwell Time Conditions: Dwell time consistency rules can be verified using configured threshold data. In this case, when the threshold data is registered in the global state, for example, a pair of an identifier of a related item and a location can be used as a key. In other words, the global state has a time limit for a specific item to stay in a specific location. Anomalies can be identified by measuring the length of time an item stays in a specific location.

또한, 본 발명의 실시예에 따른 이상 징후 감지기에서 보다 복잡한 검증을 처리하기 위해 그래프 데이터 모델을 활용할 수 있다. 먼저 효율적인 데이터 분석을 위해 일시적 측면을 고려하는 그래프 표현을 정의한다. 그래프 모델을 사용하여 제품 수명 주기의 일관성을 보장하는 알고리즘을 제안한다. 마지막으로, 그래프의 변조 방지 기록을 보장하는 검증 프로토콜을 제안한다. In addition, the graph data model may be utilized to process more complex verification in the anomaly detector according to an embodiment of the present invention. First, we define a graph representation that considers temporal aspects for efficient data analysis. We propose an algorithm for ensuring product lifecycle consistency using a graph model. Finally, we propose a verification protocol that guarantees tamper-proof recording of graphs.

먼저, 공급망 내 아이템들이 시간 변화에 대해 어떻게 서로 연관되어 있는지 분석하는 것이 필수적이다. 글로벌 상태의 단점은 공급망 엔티티들 간의 관계를 효과적으로 보여줄 수 없다는 것이다. 따라서, 본 발명에는 그래프 모델을 사용한다. First, it is essential to analyze how items in the supply chain are related to each other over time. A disadvantage of the global state is that it cannot effectively show the relationships between supply chain entities. Therefore, the present invention uses a graph model.

본 발명의 실시예에 따르면, RDF(Resource Description Framework) [5], W3C 표준을 이용하여 종종 (s, p, o)로 알려진 자원 간의 3개로 이루어진 관계를 정의한다. 여기서 s (subject)는 o (object)와 p (predicate) 관계를 갖는다. 구체적으로 말하면, 분석을 위한 공급망 네트워크의 시간적 역동성을 정확하게 고려하기 위해 시간 정보로 술부에 주석을 달아서 시간적 RDF[20]를 통합한다.According to an embodiment of the present invention, a three-part relationship between resources, often known as (s, p, o), is defined using the Resource Description Framework (RDF) [5] and W3C standards. Here, s (subject) has the relation o (object) and p (predicate). Specifically, we integrate the temporal RDF [20] by annotating the predicate with temporal information to accurately consider the temporal dynamics of the supply chain network for analysis.

도 4는 본 발명의 일 실시예에 따른 이벤트 유형에 대한 변환 규칙을 나타내는 도면이다.4 is a diagram illustrating a conversion rule for an event type according to an embodiment of the present invention.

트랜잭션 프로세서에서 미리 정의된 스마트 계약 로직을 이용하여 상태를 업데이트하는 글로벌 상태와 마찬가지로 그래프 생성 로직도 자동 실행을 위한 스마트 계약에 내장될 수 있다. 일단 트랜잭션 프로세서의 트랜잭션 핸들러가 트랜잭션을 수신하면, 상황별 이벤트 데이터는 해당 트리플 집합으로 변환된다. 도 4는 각 이벤트 유형에 대한 변환 규칙을 나타낸다. 집계 이벤트는 집계(예를 들어, 로딩)와 분리(예를 들어, 언로딩)로 나뉜다는 점에 유의한다. 각 트랜잭션은 두 개의 트리플 집합(subject, predicate:[time], object)을 생성하며, 여기서 술어는 시간에 따라 주석을 달게 된다. 예를 들어, 도 4 (a)에서 도시된 바와 같이, 객체 이벤트는 (product EPC, atStep:[t], business step) 및 (product EPC, locatedAt:[t], location)로 번역된다.Similar to a global state that updates state using predefined smart contract logic in a transaction processor, graph generation logic can also be embedded in smart contracts for automatic execution. Once the transaction handler of the transaction processor receives the transaction, the contextual event data is converted into the corresponding triple set. 4 shows the conversion rules for each event type. Note that aggregation events are divided into aggregation (eg, loading) and detachment (eg, unloading). Each transaction creates two sets of triples (subject, predicate:[time], object), where predicates are annotated with time. For example, as shown in Fig. 4 (a), the object event is translated into (product EPC, atStep:[t], business step) and (product EPC, locatedAt:[t], location).

본 발명의 실시예에 따르면, 트랜잭션이 비동기적이고 동적인 방식으로 등록된다고 가정할 경우, 비즈니스 단계의 주문 일관성을 추적하는 것이 중요하다. 복잡한 관계를 보여주는 대규모 데이터로 시스템이 팽창할 경우 이는 더욱 어려워진다.In accordance with an embodiment of the present invention, it is important to track order consistency in the business phase, assuming that transactions are registered in an asynchronous and dynamic manner. This becomes even more difficult when the system swells with large amounts of data showing complex relationships.

이러한 작업에서는 페어와이즈(pairwise) 비즈니스 단계의 일관성을 검증하는 데 초점을 맞춘다. 상술된 속도 조건 및 체류 시간 조건과 함께, 이러한 개념은 [19]에서 처음 도입되었다. 하지만 본 발명에서는 보다 실용적이고 복잡한 상황을 고려하여 문제를 완전히 재구성하고, 구체적인 그래프 기반 감지 알고리즘을 제안한다. 본 발명의 실시예에 따른 미리 정의된 용어는 다음과 같다: This work focuses on verifying the consistency of the pairwise business phase. Together with the velocity conditions and residence time conditions described above, this concept was first introduced in [19]. However, in the present invention, the problem is completely reconstructed in consideration of a more practical and complex situation, and a specific graph-based detection algorithm is proposed. The predefined terms according to the embodiment of the present invention are as follows:

Pairwise-bizstep: 아이템 통합 및 분리를 설명하는 비즈니스 단계(예를 들어, 로딩-언로딩, 패킹-언패킹 등)Pairwise-bizstep: A business step that describes the consolidation and separation of items (eg loading-unloading, packing-unpacking, etc.)

pre-biz-list: pairwise-bizstep(예를 들어, 로딩, 패킹 등)에 선행하는 비즈니스 단계 목록pre-biz-list: List of business steps that precede pairwise-bizstep (eg loading, packing, etc.)

post-biz-list: pairwise-bizstep(예를 들어, 언로딩, 언패킹 등)으로 이어지는 비즈니스 단계post-biz-list: business steps leading to pairwise-bizstep (eg unloading, unpacking, etc.)

본 발명의 실시예에 따른 일련의 트랜잭션을 고려할 때, 트랜잭션 순서는 다음을 보장해야 한다: 하위 아이템 C가 상위 P로 통합된다고 가정할 때, P와의 분리를 제외한 C와 관련된 다음 이벤트는 예외적인 것으로 간주된다. 이는 집계된 아이템 체인의 일부가 되는 모든 아이템에 대해 반복적으로 유지된다.When considering a series of transactions according to an embodiment of the present invention, the transaction order should ensure that: assuming that a child item C is consolidated into a parent P, the following events related to C except for separation from P are exceptional. is considered This is maintained recursively for every item that becomes part of the aggregated item chain.

다음과 같은 경우 페어와이즈(pairwise) 비즈니스 단계 일관성 검증은 중대한 작업으로 간주된다: Pairwise business-level consistency verification is considered a critical task if:

집계의 누적: 누적된 아이템 스택(예를 들어, 더 큰 용기에 포함된 작은 팔레트 더미)을 형성하기 위한 일련의 집계 이벤트가 집계된 아이템의 가시성에 악영향을 미칠 수 있다.Accumulation of aggregation: A series of aggregation events to form a stacked stack of items (eg, a small pile of pallets contained in a larger container) can adversely affect the visibility of the aggregated items.

동적 설정의 여러 소스로부터의 통합: 추적 아이템의 복잡성은 다대일 통합 매핑을 위해 증가한다. 이러한 관계가 역동적으로 나타날 경우 이는 악화된다. Integration from multiple sources of dynamic configuration: The complexity of tracking items increases for many-to-one integration mappings. It is exacerbated when these relationships emerge dynamically.

도 5는 본 발명의 일 실시예에 따른 해당 트랜잭션의 라이프 사이클 순서가 올바른지 확인하기 위한 알고리즘이다. 5 is an algorithm for checking whether the life cycle order of a corresponding transaction is correct according to an embodiment of the present invention.

도 5에 도시된 알고리즘 1을 참조하면, G는 RDF 저장소에 저장된 그래프인 반면 TxG는 트랜잭션에서 생성된 그래프(도 4의 형태)이다. 주어진 트랜잭션의 비즈니스 단계가 집계를 나타내는지, 분리 또는 기타를 나타내는지에 따라 일관성 검사에 서로 다른 측정 지표가 사용된다. 집계의 경우, 이미 집계된 하위 아이템을 집계하려는 시도가 이상 징후로 간주된다. 분리의 경우, 해당 집계 이벤트가 올바른 순서로 존재하지 않는 경우, 그러한 트랜잭션은 변칙적이다. 집계나 분리 이외의 사업 단계를 갖는 트랜잭션은 해당 아이템이 속한 상위 아이템이 순서대로 분리되는지 검증할 필요가 있다. 이때 일련의 집계 이벤트가 연속적으로 발생했다고 가정한다.Referring to Algorithm 1 shown in Fig. 5, G is a graph stored in the RDF storage, whereas TxG is a graph generated in a transaction (in the form of Fig. 4). Different metrics are used for consistency checking depending on whether the business phase of a given transaction represents aggregation, segregation, or otherwise. In the case of aggregation, an attempt to aggregate an already aggregated sub-item is considered an anomaly. In the case of detachment, such a transaction is anomalous if the corresponding aggregate events do not exist in the correct order. Transactions with a business stage other than aggregation or separation need to verify that the parent item to which the item belongs is separated in order. In this case, it is assumed that a series of aggregation events occur consecutively.

도 6은 본 발명의 일 실시예에 따른 체인에 따라 집계된 모든 하위 아이템이 상위 아이템과 시간 순서대로 연결 해제되는지 여부를 확인하기 위한 알고리즘이다.6 is an algorithm for checking whether all lower-level items aggregated according to a chain are disconnected from upper-level items in chronological order according to an embodiment of the present invention.

도 5의 알고리즘 1의 마지막 케이스를 처리하는 절차는 도 6의 알고리즘 2에 자세히 설명되어 있다. 알고리즘 2는 집계된 아이템(각각 child-parent 관계를 나타내는 인접한 쌍)의 체인에 따라 집계된 모든 하위 아이템이 상위 아이템과 시간 순서대로 연결 해제되는지 여부를 점검한다. 이는 마지막으로 집계된 아이템을 먼저 상위 아이템과 분리해야 한다는 것을 의미한다. 이 프로세스는 또한 사업 단계가 쌍으로 이루어졌는지를 검증한다. 집계 또는 분리(라인 2, 10)의 가장 최근 술어를 찾기 위해 SPARQL 쿼리를 사용하여 대상 정보를 검색한다. The procedure for processing the last case of Algorithm 1 of FIG. 5 is described in detail in Algorithm 2 of FIG. 6 . Algorithm 2 checks whether all aggregated child items are unlinked in chronological order with their parent items according to the chain of aggregated items (adjacent pairs each representing a child-parent relationship). This means that the last aggregated item must first be separated from the parent item. This process also verifies that the business steps are paired. Retrieve the target information using a SPARQL query to find the most recent predicate of an aggregate or dissociation (lines 2, 10).

본 발명의 실시예에 따른 그래프 변조 방지 기록을 위해 RDF 저장소에 저장된 그래프 데이터가 변조되지 않도록 RDF 다이제스트 계산을 사용하여 그래프의 무결성을 검증하는 프로토콜을 제안한다. 이것은 실제 시스템에서 RDF 그래프의 지문을 계산하는 데 널리 사용되는 메커니즘이다: 공통 애플리케이션에는 디지털 서명, 컨텐츠 기반 식별자 생성, 그래프의 변조 방지 기록 등이 포함된다[21].According to an embodiment of the present invention, we propose a protocol for verifying the integrity of a graph using RDF digest calculation so that graph data stored in RDF storage is not tampered with for graph tamper-proof recording. This is a widely used mechanism for computing the fingerprint of RDF graphs in real systems: common applications include digital signatures, content-based identifier generation, and tamper-proof recording of graphs [21].

제안된 프로토콜은 다음과 같다. RDF 다이제스트를 계산한 후 리더 노드는 트랜잭션 헤더 내부에 다이제스트를 추가하고, 트랜잭션을 포함하는 블록을 피어링 노드로 전파한다. 이후 트랜잭션을 수신하는 각 피어링 노드가 이상 감지 계층을 통과하면 다이제스트를 계산하고, 계산된 값이 트랜잭션 헤더에 저장된 다이제스트와 같으면 노드는 RDF 저장소를 업데이트하고 트랜잭션을 커밋한다. 이러한 방식으로 노드는 그래프 데이터의 타당성에 대한 컨센서스에 도달할 수 있다. The proposed protocol is as follows. After calculating the RDF digest, the leader node adds the digest inside the transaction header and propagates the block containing the transaction to the peering node. Then, when each peering node receiving the transaction passes the anomaly detection layer, it computes a digest, and if the calculated value is the same as the digest stored in the transaction header, the node updates the RDF store and commits the transaction. In this way, nodes can reach a consensus on the validity of the graph data.

도 7은 본 발명의 일 실시예에 따른 강인한 데이터 모델 및 검증 메커니즘을 갖춘 블록체인 플랫폼을 이용한 공급망의 신뢰 강화 방법을 설명하기 위한 흐름도이다.7 is a flowchart illustrating a method for strengthening trust in a supply chain using a blockchain platform equipped with a robust data model and verification mechanism according to an embodiment of the present invention.

제안하는 강인한 데이터 모델 및 검증 메커니즘을 갖춘 블록체인 플랫폼을 이용한 공급망의 신뢰 강화 방법은 클라이언트가 개인 및 공용 키를 관리하고 트랜잭션을 생성한 후 검증자에게 전송하는 단계(710), 검증자가 클라이언트로부터 트랜잭션을 수신 받아 해당 피어 노드로 트랜잭션을 전송하고, 모든 노드가 생성된 출력에 동의하는지 확인하면서 해당 트랜잭션 프로세서를 실행하도록 트랜잭션을 전송하는 단계(720) 및 수신된 트랜잭션 유형을 나타내는 액션 필드에 따라 트랜잭션 프로세서를 통해 해당 트랜잭션 핸들러가 미리 정의된 태스크를 수행하도록 하는 단계(730)를 포함한다. The proposed method for strengthening trust in the supply chain using a blockchain platform with a robust data model and verification mechanism is a step 710 where the client manages private and public keys, creates a transaction, and sends it to the verifier. The verifier sends the transaction from the client. sending the transaction to the corresponding peer node, sending the transaction to execute the corresponding transaction processor while verifying that all nodes agree on the generated output ( 720 ) and the transaction processor according to the action field indicating the received transaction type and a step 730 of allowing the corresponding transaction handler to perform a predefined task.

단계(710)에서, 클라이언트가 개인 및 공용 키를 관리하고 트랜잭션을 생성한 후 검증자에게 전송한다. In step 710, the client manages the private and public keys and creates a transaction and sends it to the verifier.

단계(720)에서, 검증자가 클라이언트로부터 트랜잭션을 수신 받아 해당 피어 노드로 트랜잭션을 전송하고, 모든 노드가 생성된 출력에 동의하는지 확인하면서 해당 트랜잭션 프로세서를 실행하도록 트랜잭션을 전송한다. In step 720, the verifier receives the transaction from the client and transmits the transaction to the corresponding peer node, and transmits the transaction to execute the corresponding transaction processor while confirming that all nodes agree on the generated output.

단계(730)에서, 수신된 트랜잭션 유형을 나타내는 액션 필드에 따라 트랜잭션 프로세서를 통해 해당 트랜잭션 핸들러가 미리 정의된 태스크를 수행하도록 한다. In step 730, the corresponding transaction handler performs a predefined task through the transaction processor according to the action field indicating the received transaction type.

트랜잭션 프로세서는 트랜잭션 핸들러, RDF 생성기, RDF 저장소 및 이상 징후 감지기를 포함한다. The transaction processor includes a transaction handler, an RDF generator, an RDF store, and an anomaly detector.

트랜잭션 프로세서는 트랜잭션 핸들러를 통해 인코딩된 트랜잭션 페이로드를 디코딩하여 필드로 분할하고, 이후 수신된 트랜잭션 유형을 나타내는 액션 필드에 따라 트랜잭션 핸들러가 물리적 객체의 이동 중에 캡처한 공급망 이벤트 데이터를 추가하는 트랜잭션의 미리 정의된 태스크를 수행하도록 한다. The transaction processor decodes the transaction payload encoded through the transaction handler, splits it into fields, and then adds the supply chain event data captured during the movement of the physical object by the transaction handler according to the action field indicating the type of transaction received in advance of the transaction. Let the defined task be performed.

트랜잭션 프로세서는 직병렬 변환된 페이로드에 기술된 공급망 이벤트 데이터를 이용하여, RDF 생성기를 통해 그래프 생성 규칙에 따라 두 개의 정점과 두 개의 정점을 연결하는 에지로 구성된 그래프 구성요소로 이루어진 트리플 집합을 생성한 후, RDF 저장소에 미리 저장된 집합과 관련하여 이상 징후 감지기를 통해 이상 징후 여부를 탐지한다(740). The transaction processor uses the supply chain event data described in the deserialized payload to generate a triple set of graph components consisting of two vertices and an edge connecting the two vertices according to the graph creation rules through the RDF generator. After that, in relation to the set pre-stored in the RDF storage, the presence or absence of an anomaly is detected through an anomaly detector ( 740 ).

트랜잭션 프로세서는 이상 징후 감지기가 검증자의 글로벌 상태와 상호 작용하여 이상 징후 여부를 탐지하도록 한다. 이상 징후 감지기를 통해 이상 징후가 감지되지 않는 경우, 단계(750)에서 트랜잭션 핸들러는 현재 트랜잭션에 대해 생성된 트리플 집합을 RDF 저장소에 추가하고 블록 및 글로벌 상태를 업데이트한다. 반면에, 이상 징후 감지기를 통해 이상 징후가 감지되는 경우, 단계(760)에서 해당 트랜잭션을 무효화하고, 해당 트랜잭션에 대한 글로벌 상태는 업데이트되지 않고, 감지된 이상 징후에 관한 해당 트랜잭션을 시스템에 적용하도록 한다. The transaction processor allows the anomaly detector to interact with the validator's global state to detect anomalies. If no anomaly is detected through the anomaly detector, in step 750, the transaction handler adds the triple set generated for the current transaction to the RDF storage and updates the block and global state. On the other hand, if an anomaly is detected through the anomaly detector, the transaction is invalidated in step 760, the global state for the transaction is not updated, and the transaction related to the detected anomaly is applied to the system. do.

이상 징후 감지기는 각 트랜잭션에 대해 관련 아이템의 위치가 변경되었는지 여부, 변경된 경우 글로벌 상태에서 임계 데이터를 읽고 평균 이동 속도가 미리 정해진 범위 내에 있는지 여부를 확인하는 속도 조건 및 미리 정해진 체류 시간 조건을 포함하는 일관성 규칙을 이용하는 일관성 규칙 기반 이상 징후 감지 및 그래프 모델을 사용하여 제품 수명 주기의 일관성을 보장하는 알고리즘을 통한 그래프 기반 이상 징후 감지 방법을 이용한다. The anomaly detector includes, for each transaction, whether the location of the related item has changed, and if so, a speed condition that reads critical data from the global state and checks whether the average movement speed is within a predetermined range, and a predetermined dwell time condition. Consistency rule-based anomaly detection using consistency rules and graph-based anomaly detection methods using graph models to ensure consistency of product lifecycles.

본 발명의 실시예에 따르면, 트랜잭션 페이로드는 물리적 객체의 이동 중에 캡처한 공급망 이벤트 데이터 구성요소만을 포함하고, 상기 이벤트 데이터 구성요소 중 GTS(Global Traceability Standard)에 정의된 이벤트 유형, 관련 객체의 식별자, 타임스탬프, 위치 및 비즈니스 단계 필드로 단순화된 이벤트 데이터인 KDE(Key Data Element) 및 오프체인 데이터베이스 접속 링크를 포함하는 증거 추적을 위해 필요한 데이터만을 통합한다. According to an embodiment of the present invention, a transaction payload includes only supply chain event data components captured during the movement of a physical object, and among the event data components, an event type defined in Global Traceability Standard (GTS), an identifier of a related object Incorporates only the data needed for evidence tracking, including Key Data Element (KDE), event data simplified to , timestamp, location, and business phase fields, and links to off-chain database connections.

트랜잭션 프로세서는 물리적 객체의 이동 중에 캡처한 공급망 이벤트 데이터를 관리하기 위해 트랜잭션 프로세서에 저장된 접속 링크를 통해 오프체인 데이터베이스에 저장된 상기 이벤트 데이터에 관한 특정 위치의 고도 및 경도, 속성, 센서 데이터를 포함하는 추가 데이터에 접속하여 추가적인 이상 징후를 여부를 탐지한다. The transaction processor is configured to manage supply chain event data captured during the movement of a physical object, via an access link stored in the transaction processor, an additional including elevation and longitude, attributes, sensor data of a particular location with respect to said event data stored in an off-chain database Access the data to detect additional anomalies.

이상에서 설명된 장치는 하드웨어 구성요소, 소프트웨어 구성요소, 및/또는 하드웨어 구성요소 및 소프트웨어 구성요소의 조합으로 구현될 수 있다. 예를 들어, 실시예들에서 설명된 장치 및 구성요소는, 예를 들어, 프로세서, 콘트롤러, ALU(arithmetic logic unit), 디지털 신호 프로세서(digital signal processor), 마이크로컴퓨터, FPA(field programmable array), PLU(programmable logic unit), 마이크로프로세서, 또는 명령(instruction)을 실행하고 응답할 수 있는 다른 어떠한 장치와 같이, 하나 이상의 범용 컴퓨터 또는 특수 목적 컴퓨터를 이용하여 구현될 수 있다. 처리 장치는 운영 체제(OS) 및 상기 운영 체제 상에서 수행되는 하나 이상의 소프트웨어 애플리케이션을 수행할 수 있다.  또한, 처리 장치는 소프트웨어의 실행에 응답하여, 데이터를 접근, 저장, 조작, 처리 및 생성할 수도 있다.  이해의 편의를 위하여, 처리 장치는 하나가 사용되는 것으로 설명된 경우도 있지만, 해당 기술분야에서 통상의 지식을 가진 자는, 처리 장치가 복수 개의 처리 요소(processing element) 및/또는 복수 유형의 처리 요소를 포함할 수 있음을 알 수 있다.  예를 들어, 처리 장치는 복수 개의 프로세서 또는 하나의 프로세서 및 하나의 콘트롤러를 포함할 수 있다.  또한, 병렬 프로세서(parallel processor)와 같은, 다른 처리 구성(processing configuration)도 가능하다.The device described above may be implemented as a hardware component, a software component, and/or a combination of the hardware component and the software component. For example, devices and components described in the embodiments may include, for example, a processor, a controller, an arithmetic logic unit (ALU), a digital signal processor, a microcomputer, a field programmable array (FPA), It may be implemented using one or more general purpose or special purpose computers, such as a programmable logic unit (PLU), microprocessor, or any other device capable of executing and responding to instructions. The processing device may execute an operating system (OS) and one or more software applications running on the operating system. A processing device may also access, store, manipulate, process, and generate data in response to execution of the software. For convenience of understanding, although one processing device is sometimes described as being used, one of ordinary skill in the art will recognize that the processing device includes a plurality of processing elements and/or a plurality of types of processing elements. It can be seen that can include For example, the processing device may include a plurality of processors or one processor and one controller. Other processing configurations are also possible, such as parallel processors.

소프트웨어는 컴퓨터 프로그램(computer program), 코드(code), 명령(instruction), 또는 이들 중 하나 이상의 조합을 포함할 수 있으며, 원하는 대로 동작하도록 처리 장치를 구성하거나 독립적으로 또는 결합적으로(collectively) 처리 장치를 명령할 수 있다.  소프트웨어 및/또는 데이터는, 처리 장치에 의하여 해석되거나 처리 장치에 명령 또는 데이터를 제공하기 위하여, 어떤 유형의 기계, 구성요소(component), 물리적 장치, 가상 장치(virtual equipment), 컴퓨터 저장 매체 또는 장치에 구체화(embody)될 수 있다.  소프트웨어는 네트워크로 연결된 컴퓨터 시스템 상에 분산되어서, 분산된 방법으로 저장되거나 실행될 수도 있다. 소프트웨어 및 데이터는 하나 이상의 컴퓨터 판독 가능 기록 매체에 저장될 수 있다.Software may comprise a computer program, code, instructions, or a combination of one or more thereof, which configures a processing device to operate as desired or is independently or collectively processed You can command the device. The software and/or data may be any kind of machine, component, physical device, virtual equipment, computer storage medium or apparatus, to be interpreted by or to provide instructions or data to the processing device. may be embodied in The software may be distributed over networked computer systems and stored or executed in a distributed manner. Software and data may be stored in one or more computer-readable recording media.

실시예에 따른 방법은 다양한 컴퓨터 수단을 통하여 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능 매체에 기록될 수 있다.  상기 컴퓨터 판독 가능 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다.  상기 매체에 기록되는 프로그램 명령은 실시예를 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다.  컴퓨터 판독 가능 기록 매체의 예에는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(magnetic media), CD-ROM, DVD와 같은 광기록 매체(optical media), 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical media), 및 롬(ROM), 램(RAM), 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다.  프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함한다.  The method according to the embodiment may be implemented in the form of program instructions that can be executed through various computer means and recorded in a computer-readable medium. The computer-readable medium may include program instructions, data files, data structures, etc. alone or in combination. The program instructions recorded on the medium may be specially designed and configured for the embodiment, or may be known and available to those skilled in the art of computer software. Examples of the computer-readable recording medium include magnetic media such as hard disks, floppy disks and magnetic tapes, optical media such as CD-ROMs and DVDs, and magnetic such as floppy disks. - includes magneto-optical media, and hardware devices specially configured to store and execute program instructions, such as ROM, RAM, flash memory, and the like. Examples of program instructions include not only machine language codes such as those generated by a compiler, but also high-level language codes that can be executed by a computer using an interpreter or the like.

이상과 같이 실시예들이 비록 한정된 실시예와 도면에 의해 설명되었으나, 해당 기술분야에서 통상의 지식을 가진 자라면 상기의 기재로부터 다양한 수정 및 변형이 가능하다.  예를 들어, 설명된 기술들이 설명된 방법과 다른 순서로 수행되거나, 및/또는 설명된 시스템, 구조, 장치, 회로 등의 구성요소들이 설명된 방법과 다른 형태로 결합 또는 조합되거나, 다른 구성요소 또는 균등물에 의하여 대치되거나 치환되더라도 적절한 결과가 달성될 수 있다.As described above, although the embodiments have been described with reference to the limited embodiments and drawings, various modifications and variations are possible from the above description by those skilled in the art. For example, the described techniques are performed in an order different from the described method, and/or the described components of the system, structure, apparatus, circuit, etc. are combined or combined in a different form than the described method, or other components Or substituted or substituted by equivalents may achieve an appropriate result.

그러므로, 다른 구현들, 다른 실시예들 및 특허청구범위와 균등한 것들도 후술하는 특허청구범위의 범위에 속한다.Therefore, other implementations, other embodiments, and equivalents to the claims are also within the scope of the following claims.

<참고자료><References>

[1] J. T Mentzer, W. Dewitt, J. S Keebler, S. Min, N. Nix, C. Smith, and Z. Zacharia, "Defining supply chain management," Journal of Business Logistics, vol. 22, 09 2001. [1] J. T Mentzer, W. Dewitt, J. S Keebler, S. Min, N. Nix, C. Smith, and Z. Zacharia, "Defining supply chain management," Journal of Business Logistics, vol. 22, 09 2001.

[2] "Supply chain market value to surge past 13 billion dollars by end of 2017." https://www.supplychaindigital.com/scm/supply-chain-marketvalue-surge-past-13-billion-end-2017. Accessed: 2018-12-18. [2] "Supply chain market value to surge past 13 billion dollars by end of 2017." https://www.supplychaindigital.com/scm/supply-chain-marketvalue-surge-past-13-billion-end-2017. Accessed: 2018-12-18.

[3] "How blockchain will transform the supply chain and logistics industry." https://www.forbes.com/sites/bernardmarr/2018/03/23/howblockchain-will-transform-the-supply-chain-and-logisticsindustry/#213a04965fec. Accessed: 2018-12-18. [3] "How blockchain will transform the supply chain and logistics industry." https://www.forbes.com/sites/bernardmarr/2018/03/23/howblockchain-will-transform-the-supply-chain-and-logisticsindustry/#213a04965fec. Accessed: 2018-12-18.

[4] N. Szabo, "Formalizing and securing relationships on public networks," First Monday, vol. 2, no. 9, 1997. [4] N. Szabo, “Formalizing and securing relationships on public networks,” First Monday, vol. 2, no. 9, 1997.

[5] "RDF Primer. W3C Recommendation." https://www.w3.org/TR/rdf11- primer/. Accessed: 2019-01-04. [5] "RDF Primer. W3C Recommendation." https://www.w3.org/TR/rdf11-primer/. Accessed: 2019-01-04.

[6] M. D. English, S. Auer, and J. Domingue, "Block chain technologies & the semantic web : A framework for symbiotic development," 2015. [6] M. D. English, S. Auer, and J. Domingue, “Block chain technologies & the semantic web: A framework for symbiotic development,” 2015.

[7] H. Kim and M. Laskowski, "Towards an ontology-driven blockchain design for supply chain provenance," 08 2016. [7] H. Kim and M. Laskowski, “Towards an ontology-driven blockchain design for supply chain provenance,” 08 2016.

[8] M. Ruta, F. Scioscia, S. Ieva, G. Capurso, and E. D. Sciascio, "Supply chain object discovery with semantic-enhanced blockchain," in Proceedings of the 15th ACM Conference on Embedded Network Sensor Systems, SenSys 2017, Delft, Netherlands, November 06-08, 2017, pp. 60:1-60:2, 2017. [8] M. Ruta, F. Scioscia, S. Ieva, G. Capurso, and E. D. Sciascio, “Supply chain object discovery with semantic-enhanced blockchain,” in Proceedings of the 15th ACM Conference on Embedded Network Sensor Systems, SenSys 2017 , Delft, Netherlands, November 06-08, 2017, pp. 60:1-60:2, 2017.

[9] A. Third and J. Domingue, "Linked data indexing of distributed ledgers," in Proceedings of the 26th International Conference on World Wide Web Companion, Perth, Australia, April 3-7, 2017, pp. 1431- 1436, 2017. [9] A. Third and J. Domingue, “Linked data indexing of distributed ledgers,” in Proceedings of the 26th International Conference on World Wide Web Companion, Perth, Australia, April 3-7, 2017, pp. 1431-1436, 2017.

[10] M. Sopek, P. Gradzki, W. Kosowski, D. Kuzinski, R. Trojczak, and ' R. Trypuz, "Graphchain: A distributed database with explicit semantics and chained RDF graphs," in Companion of the The Web Conference 2018 on The Web Conference 2018, WWW 2018, Lyon , France, April 23-27, 2018, pp. 1171-1178, 2018. [10] M. Sopek, P. Gradzki, W. Kosowski, D. Kuzinski, R. Trojczak, and ' R. Trypuz, "Graphchain: A distributed database with explicit semantics and chained RDF graphs," in Companion of the Web Conference 2018 on The Web Conference 2018, WWW 2018, Lyon, France, April 23-27, 2018, pp. 1171-1178, 2018.

[11] "Hyperledger Sawtooth." https://https://sawtooth.hyperledger.org/docs/ core/releases/latest/. Accessed: 2018-12-18. [11] "Hyperledger Sawtooth." https://https://sawtooth.hyperledger.org/docs/core/releases/latest/. Accessed: 2018-12-18.

[12] "EPC Information Service (EPCIS)." https://www.gs1.org/sites/ default/files/docs/epc/EPCIS-Standard-1.2-r-2016-09-29.pdf. Accessed: 2018-12-29. [12] "EPC Information Service (EPCIS)." https://www.gs1.org/sites/default/files/docs/epc/EPCIS-Standard-1.2-r-2016-09-29.pdf. Accessed: 2018-12-29.

[13] "Hyperledger." https://www.hyperledger.org/. Accessed: 2018-12-29. [13] "Hyperledger." https://www.hyperledger.org/. Accessed: 2018-12-29.

[14] "Hyperledger Fabric." https://www.hyperledger.org/projects/fabric. Accessed: 2019-03-24. [14] "Hyperledger Fabric." https://www.hyperledger.org/projects/fabric. Accessed: 2019-03-24.

[15] "Hyperledger Iroha." https://www.hyperledger.org/projects/iroha. Accessed: 2019-03-24. [15] "Hyperledger Iroha." https://www.hyperledger.org/projects/iroha. Accessed: 2019-03-24.

[16] D. Kempe, J. M. Kleinberg, and A. J. Demers, "Spatial gossip and resource location protocols," in Proceedings on 33rd Annual ACM Symposium on Theory of Computing, July 6-8, 2001, Heraklion, Crete, Greece, pp. 163-172, 2001. [16] D. Kempe, J. M. Kleinberg, and A. J. Demers, "Spatial gossip and resource location protocols," in Proceedings on 33rd Annual ACM Symposium on Theory of Computing, July 6-8, 2001, Heraklion, Crete, Greece, pp. 163-172, 2001.

[17] "GS1 Global Traceability 2.0." https://www.gs1.org/sites/default/files/ docs/traceability/GS1 Global Traceability Standard i2.pdf. Accessed: 2019-03-24. [17] "GS1 Global Traceability 2.0." https://www.gs1.org/sites/default/files/docs/traceability/GS1 Global Traceability Standard i2.pdf. Accessed: 2019-03-24.

[18] A. Aggarwal and Y. Guo, "A simple reduction from state machine replication to binary agreement in partially synchronous or asynchronous networks," IACR Cryptology ePrint Archive, vol. 2018, p. 60, 2018. [18] A. Aggarwal and Y. Guo, “A simple reduction from state machine replication to binary agreement in partially synchronous or asynchronous networks,” IACR Cryptology ePrint Archive, vol. 2018, p. 60, 2018.

[19] A. Ilic, T. Andersen, and F. Michahelles, "Increasing supply-chain visibility with rule-based rfid data analysis," IEEE Internet Computing, vol. 13, pp. 31-38, Jan. 2009. [19] A. Ilic, T. Andersen, and F. Michaeles, “Increasing supply-chain visibility with rule-based rfid data analysis,” IEEE Internet Computing, vol. 13, pp. 31-38, Jan. 2009.

[20] A. Gomez-P ' erez and J. Euzenat, eds., ' The Semantic Web: Research and Applications, Second European Semantic Web Conference, ESWC 2005, Heraklion, Crete, Greece, May 29 - June 1, 2005, Proceedings, vol. 3532 of Lecture Notes in Computer Science, Springer, 2005. [20] A. Gomez-P 'erez and J. Euzenat, eds., 'The Semantic Web: Research and Applications, Second European Semantic Web Conference, ESWC 2005, Heraklion, Crete, Greece, May 29 - June 1, 2005, Proceedings, vol. 3532 of Lecture Notes in Computer Science, Springer, 2005.

[21] C. Sayers and A. H. Karp, "Rdf graph digest techniques and potential applications," 05 2004. [21] C. Sayers and A. H. Karp, “Rdf graph digest techniques and potential applications,” 05 2004.

[22] "ZeroMQ Document." http://zeromq.org/intro:read-the-manual. Accessed: 2019-04-10. [22] "ZeroMQ Document." http://zeromq.org/intro:read-the-manual. Accessed: 2019-04-10.

[23] "Rdflib." https://rdflib.readthedocs.io. Accessed: 2019-04-09.[23] "Rdflib." https://rdflib.readthedocs.io. Accessed: 2019-04-09.

Claims (16)

개인 및 공용 키를 관리하고 트랜잭션을 생성한 후 검증자에게 전송하는 클라이언트;
클라이언트로부터 트랜잭션을 수신 받아 해당 피어 노드로 트랜잭션을 전송하고, 모든 노드가 생성된 출력에 동의하는지 확인하면서 해당 트랜잭션 프로세서를 실행하도록 트랜잭션을 전송하는 검증자; 및
수신된 트랜잭션 유형을 나타내는 액션 필드에 따라 해당 트랜잭션 핸들러가 미리 정의된 태스크를 수행하도록 하는 트랜잭션 프로세서
를 포함하는 블록체인 시스템.
Clients that manage private and public keys, create transactions and send them to validators;
a verifier that receives the transaction from the client, transmits the transaction to the corresponding peer node, and transmits the transaction to execute the corresponding transaction processor while confirming that all nodes agree on the generated output; and
A transaction processor that causes the corresponding transaction handler to perform a predefined task depending on the action field indicating the type of transaction received.
A blockchain system that includes
제1항에 있어서,
상기 트랜잭션 프로세서는,
트랜잭션 핸들러, RDF 생성기, RDF 저장소 및 이상 징후 감지기를 포함하고,
상기 트랜잭션 핸들러를 통해 인코딩된 트랜잭션 페이로드를 디코딩하여 필드로 분할하고, 이후 수신된 트랜잭션 유형을 나타내는 액션 필드에 따라 트랜잭션 핸들러가 물리적 객체의 이동 중에 캡처한 공급망 이벤트 데이터를 추가하는 트랜잭션의 미리 정의된 태스크를 수행하도록 하는
블록체인 시스템.
According to claim 1,
The transaction processor,
Includes transaction handlers, RDF generators, RDF stores and anomaly detectors;
A predefined of transaction that decodes the transaction payload encoded through the transaction handler and splits it into fields, and then adds the supply chain event data captured during the movement of the physical object by the transaction handler according to the action field indicating the received transaction type. to do the task
blockchain system.
제2항에 있어서,
상기 트랜잭션 프로세서는,
직병렬 변환된 페이로드에 기술된 공급망 이벤트 데이터를 이용하여, 상기 RDF 생성기를 통해 그래프 생성 규칙에 따라 두 개의 정점과 두 개의 정점을 연결하는 에지로 구성된 그래프 구성요소로 이루어진 트리플 집합을 생성한 후, 상기 RDF 저장소에 미리 저장된 집합과 관련하여 이상 징후 감지기를 통해 이상 징후 여부를 탐지하는
블록체인 시스템.
3. The method of claim 2,
The transaction processor,
After generating a triple set consisting of two vertices and an edge connecting the two vertices according to the graph generation rule through the RDF generator using the supply chain event data described in the serial-to-parallel converted payload, , to detect whether anomalies are detected through an anomaly detector in relation to a set stored in advance in the RDF storage.
blockchain system.
제3항에 있어서,
상기 트랜잭션 프로세서는,
상기 이상 징후 감지기가 검증자의 글로벌 상태와 상호 작용하여 이상 징후 여부를 탐지하도록 하고,
상기 이상 징후 감지기를 통해 이상 징후가 감지되지 않는 경우, 상기 트랜잭션 핸들러는 현재 트랜잭션에 대해 생성된 트리플 집합을 상기 RDF 저장소에 추가하고 블록 및 글로벌 상태를 업데이트하는
블록체인 시스템.
4. The method of claim 3,
The transaction processor,
allow the anomaly detector to interact with the global state of the validator to detect anomalies;
If no anomaly is detected through the anomaly detector, the transaction handler adds the triple set generated for the current transaction to the RDF storage and updates the block and global state
blockchain system.
제3항에 있어서,
상기 트랜잭션 프로세서는,
상기 이상 징후 감지기가 검증자의 글로벌 상태와 상호 작용하여 이상 징후 여부를 탐지하도록 하고,
상기 이상 징후 감지기를 통해 이상 징후가 감지되는 경우, 해당 트랜잭션을 무효화하고, 해당 트랜잭션에 대한 글로벌 상태는 업데이트되지 않고, 감지된 이상 징후에 관한 해당 트랜잭션을 시스템에 적용하도록 하는
블록체인 시스템.
4. The method of claim 3,
The transaction processor,
allow the anomaly detector to interact with the global state of the validator to detect anomalies;
When an anomaly is detected through the anomaly detector, the transaction is invalidated, the global state for the transaction is not updated, and the transaction related to the detected anomaly is applied to the system.
blockchain system.
제2항에 있어서,
상기 트랜잭션 페이로드는 물리적 객체의 이동 중에 캡처한 공급망 이벤트 데이터 구성요소만을 포함하고, 상기 이벤트 데이터 구성요소 중 GTS(Global Traceability Standard)에 정의된 이벤트 유형, 관련 객체의 식별자, 타임스탬프, 위치 및 비즈니스 단계 필드로 단순화된 이벤트 데이터인 KDE(Key Data Element) 및 오프체인 데이터베이스 접속 링크를 포함하는 증거 추적을 위해 필요한 데이터만을 통합하는
블록체인 시스템.
3. The method of claim 2,
The transaction payload contains only supply chain event data components captured during the movement of a physical object, and among the event data components, the event type defined in Global Traceability Standard (GTS), the identifier of the relevant object, the timestamp, location and business Integrates only the data needed for evidence tracking, including Key Data Element (KDE), event data simplified by step fields, and an off-chain database access link.
blockchain system.
제6항에 있어서,
상기 트랜잭션 프로세서는,
물리적 객체의 이동 중에 캡처한 공급망 이벤트 데이터를 관리하기 위해 트랜잭션 프로세서에 저장된 접속 링크를 통해 오프체인 데이터베이스에 저장된 상기 이벤트 데이터에 관한 특정 위치의 고도 및 경도, 속성, 센서 데이터를 포함하는 추가 데이터에 접속하여 추가적인 이상 징후를 여부를 탐지하는
블록체인 시스템.
7. The method of claim 6,
The transaction processor,
To manage supply chain event data captured during the movement of physical objects, access additional data, including elevation and longitude, attributes, and sensor data of a specific location, pertaining to said event data stored in an off-chain database via a connection link stored in a transaction processor to detect whether additional anomalies are
blockchain system.
제2항에 있어서,
상기 이상 징후 감지기는,
각 트랜잭션에 대해 관련 아이템의 위치가 변경되었는지 여부, 변경된 경우 글로벌 상태에서 임계 데이터를 읽고 평균 이동 속도가 미리 정해진 범위 내에 있는지 여부를 확인하는 속도 조건 및 미리 정해진 체류 시간 조건을 포함하는 일관성 규칙을 이용하는 일관성 규칙 기반 이상 징후 감지 및 그래프 모델을 사용하여 제품 수명 주기의 일관성을 보장하는 알고리즘을 통한 그래프 기반 이상 징후 감지 방법을 이용하는
블록체인 시스템.
3. The method of claim 2,
The anomaly detector is
For each transaction, it uses consistency rules that include a pre-determined dwell time condition and a rate condition to check whether the location of the related item has changed, if so, read critical data from the global state and check whether the average travel speed is within a pre-determined range. Consistency rules-based anomaly detection and graph-based anomaly detection methods using graph models to ensure consistency in product lifecycles.
blockchain system.
클라이언트가 개인 및 공용 키를 관리하고 트랜잭션을 생성한 후 검증자에게 전송하는 단계;
검증자가 클라이언트로부터 트랜잭션을 수신 받아 해당 피어 노드로 트랜잭션을 전송하고, 모든 노드가 생성된 출력에 동의하는지 확인하면서 해당 트랜잭션 프로세서를 실행하도록 트랜잭션을 전송하는 단계; 및
수신된 트랜잭션 유형을 나타내는 액션 필드에 따라 트랜잭션 프로세서를 통해 해당 트랜잭션 핸들러가 미리 정의된 태스크를 수행하도록 하는 단계
를 포함하는 블록체인 시스템의 동작 방법.
The client manages the private and public keys, creates a transaction, and sends it to the verifier;
transmitting the transaction so that the verifier receives the transaction from the client, transmits the transaction to the corresponding peer node, and executes the corresponding transaction processor while confirming that all nodes agree on the generated output; and
According to the action field indicating the received transaction type, the transaction processor causes the corresponding transaction handler to perform a predefined task.
A method of operation of a blockchain system comprising a.
제9항에 있어서,
상기 수신된 트랜잭션 유형을 나타내는 액션 필드에 따라 트랜잭션 프로세서를 통해 해당 트랜잭션 핸들러가 미리 정의된 태스크를 수행하도록 하는 단계는,
트랜잭션 핸들러, RDF 생성기, RDF 저장소 및 이상 징후 감지기를 포함하는 트랜잭션 프로세서가 트랜잭션 핸들러를 통해 인코딩된 트랜잭션 페이로드를 디코딩하여 필드로 분할하고, 이후 수신된 트랜잭션 유형을 나타내는 액션 필드에 따라 상기 트랜잭션 핸들러가 물리적 객체의 이동 중에 캡처한 공급망 이벤트 데이터를 추가하는 트랜잭션의 미리 정의된 태스크를 수행하도록 하는
블록체인 시스템의 동작 방법.
10. The method of claim 9,
The step of causing the transaction handler to perform a predefined task through the transaction processor according to the action field indicating the received transaction type includes:
A transaction processor including a transaction handler, an RDF generator, an RDF store and an anomaly detector decodes the transaction payload encoded through the transaction handler and splits it into fields, and then, according to the action field indicating the received transaction type, the transaction handler Enables you to perform predefined tasks in transactions that add supply chain event data captured during the movement of physical objects.
How the blockchain system works.
제10항에 있어서,
직병렬 변환된 페이로드에 기술된 공급망 이벤트 데이터를 이용하여, 상기 RDF 생성기를 통해 그래프 생성 규칙에 따라 두 개의 정점과 두 개의 정점을 연결하는 에지로 구성된 그래프 구성요소로 이루어진 트리플 집합을 생성한 후, 상기 RDF 저장소에 미리 저장된 집합과 관련하여 이상 징후 감지기를 통해 이상 징후 여부를 탐지하는
블록체인 시스템의 동작 방법.
11. The method of claim 10,
After generating a triple set consisting of two vertices and an edge connecting the two vertices according to the graph generation rule through the RDF generator using the supply chain event data described in the serial-to-parallel converted payload, , to detect whether anomalies are detected through an anomaly detector in relation to a set stored in advance in the RDF storage.
How the blockchain system works.
제11항에 있어서,
상기 이상 징후 감지기가 검증자의 글로벌 상태와 상호 작용하여 이상 징후 여부를 탐지하고,
상기 이상 징후 감지기를 통해 이상 징후가 감지되지 않는 경우, 상기 트랜잭션 핸들러는 현재 트랜잭션에 대해 생성된 트리플 집합을 상기 RDF 저장소에 추가하고 블록 및 글로벌 상태를 업데이트하는
블록체인 시스템의 동작 방법.
12. The method of claim 11,
The anomaly detector interacts with the validator's global state to detect anomalies,
If no anomaly is detected through the anomaly detector, the transaction handler adds the triple set generated for the current transaction to the RDF storage and updates the block and global state
How the blockchain system works.
제11항에 있어서,
상기 이상 징후 감지기가 검증자의 글로벌 상태와 상호 작용하여 이상 징후 여부를 탐지하도록 하고,
상기 이상 징후 감지기를 통해 이상 징후가 감지되는 경우, 해당 트랜잭션을 무효화하고, 해당 트랜잭션에 대한 글로벌 상태는 업데이트되지 않고, 감지된 이상 징후에 관한 해당 트랜잭션을 시스템에 적용하도록 하는
블록체인 시스템의 동작 방법.
12. The method of claim 11,
allow the anomaly detector to interact with the global state of the validator to detect anomalies;
When an anomaly is detected through the anomaly detector, the transaction is invalidated, the global state for the transaction is not updated, and the transaction related to the detected anomaly is applied to the system.
How the blockchain system works.
제10항에 있어서,
상기 트랜잭션 페이로드는 물리적 객체의 이동 중에 캡처한 공급망 이벤트 데이터 구성요소만을 포함하고, 상기 이벤트 데이터 구성요소 중 GTS(Global Traceability Standard)에 정의된 이벤트 유형, 관련 객체의 식별자, 타임스탬프, 위치 및 비즈니스 단계 필드로 단순화된 이벤트 데이터인 KDE(Key Data Element) 및 오프체인 데이터베이스 접속 링크를 포함하는 증거 추적을 위해 필요한 데이터만을 통합하는
블록체인 시스템의 동작 방법.
11. The method of claim 10,
The transaction payload contains only supply chain event data components captured during the movement of a physical object, and among the event data components, the event type defined in Global Traceability Standard (GTS), the identifier of the relevant object, the timestamp, location and business Integrates only the data needed for evidence tracking, including Key Data Element (KDE), event data simplified by step fields, and an off-chain database access link.
How the blockchain system works.
제14항에 있어서,
트랜잭션 프로세서가 물리적 객체의 이동 중에 캡처한 공급망 이벤트 데이터를 관리하기 위해 트랜잭션 프로세서에 저장된 접속 링크를 통해 오프체인 데이터베이스에 저장된 상기 이벤트 데이터에 관한 특정 위치의 고도 및 경도, 속성, 센서 데이터를 포함하는 추가 데이터에 접속하여 추가적인 이상 징후를 여부를 탐지하는
블록체인 시스템의 동작 방법.
15. The method of claim 14,
Additions including elevation and longitude, attributes, and sensor data of a specific location with respect to said event data stored in an off-chain database via a connection link stored in the transaction processor for the transaction processor to manage supply chain event data captured during the movement of a physical object Accessing data to detect additional anomalies
How the blockchain system works.
제10항에 있어서,
상기 이상 징후 감지기는 각 트랜잭션에 대해 관련 아이템의 위치가 변경되었는지 여부, 변경된 경우 글로벌 상태에서 임계 데이터를 읽고 평균 이동 속도가 미리 정해진 범위 내에 있는지 여부를 확인하는 속도 조건 및 미리 정해진 체류 시간 조건을 포함하는 일관성 규칙을 이용하는 일관성 규칙 기반 이상 징후 감지 및 그래프 모델을 사용하여 제품 수명 주기의 일관성을 보장하는 알고리즘을 통한 그래프 기반 이상 징후 감지 방법을 이용하는
블록체인 시스템의 동작 방법.
11. The method of claim 10,
The anomaly detector includes, for each transaction, whether the location of the related item has changed, if changed, a speed condition for reading critical data from the global state and checking whether the average moving speed is within a predetermined range, and a predetermined dwell time condition Consistency rule-based anomaly detection using consistency rules that
How the blockchain system works.
KR1020210050079A 2020-10-08 2021-04-16 Method and System for Enhancing Trust of Supply Chain Using Blockchain Platform with Robust Data Model and Verification Mechanisms KR102620822B1 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR1020200129858 2020-10-08
KR20200129858 2020-10-08

Publications (2)

Publication Number Publication Date
KR20220047132A true KR20220047132A (en) 2022-04-15
KR102620822B1 KR102620822B1 (en) 2024-01-04

Family

ID=81211922

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020210050079A KR102620822B1 (en) 2020-10-08 2021-04-16 Method and System for Enhancing Trust of Supply Chain Using Blockchain Platform with Robust Data Model and Verification Mechanisms

Country Status (1)

Country Link
KR (1) KR102620822B1 (en)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116366273A (en) * 2022-09-09 2023-06-30 简单汇信息科技(广州)有限公司 Private data sending method based on blockchain
CN116414817A (en) * 2023-06-08 2023-07-11 荣耀终端有限公司 Track point processing method, electronic equipment and storage medium
CN117725954A (en) * 2024-02-18 2024-03-19 韶山盈芯物联网科技有限公司 Digital supply chain data management method and system based on RFID

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20190093012A (en) * 2018-01-31 2019-08-08 지송학 The method for block generation and validation in block-chain system
KR102023094B1 (en) * 2019-03-26 2019-09-19 국방과학연구소 System and Method for Management of Unmanned Aerial Vehicle Mission Using Blockchain Network
KR20190136053A (en) * 2017-05-25 2019-12-09 알리바바 그룹 홀딩 리미티드 Method and device for writing service data to blockchain system
KR20200081101A (en) * 2018-12-27 2020-07-07 부산대학교 산학협력단 Blockchain system for providing anonymity of privacy information and method for providing anonymity of privacy information in a blockchain

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20190136053A (en) * 2017-05-25 2019-12-09 알리바바 그룹 홀딩 리미티드 Method and device for writing service data to blockchain system
KR20190093012A (en) * 2018-01-31 2019-08-08 지송학 The method for block generation and validation in block-chain system
KR20200081101A (en) * 2018-12-27 2020-07-07 부산대학교 산학협력단 Blockchain system for providing anonymity of privacy information and method for providing anonymity of privacy information in a blockchain
KR102023094B1 (en) * 2019-03-26 2019-09-19 국방과학연구소 System and Method for Management of Unmanned Aerial Vehicle Mission Using Blockchain Network

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116366273A (en) * 2022-09-09 2023-06-30 简单汇信息科技(广州)有限公司 Private data sending method based on blockchain
CN116366273B (en) * 2022-09-09 2023-11-17 简单汇信息科技(广州)有限公司 Private data sending method based on blockchain
CN116414817A (en) * 2023-06-08 2023-07-11 荣耀终端有限公司 Track point processing method, electronic equipment and storage medium
CN117725954A (en) * 2024-02-18 2024-03-19 韶山盈芯物联网科技有限公司 Digital supply chain data management method and system based on RFID

Also Published As

Publication number Publication date
KR102620822B1 (en) 2024-01-04

Similar Documents

Publication Publication Date Title
KR102620822B1 (en) Method and System for Enhancing Trust of Supply Chain Using Blockchain Platform with Robust Data Model and Verification Mechanisms
US20200057994A1 (en) System and method for forming, storing, managing, and executing contracts
Esposito et al. A knowledge-based platform for big data analytics based on publish/subscribe services and stream processing
Das et al. A secure and distributed construction document management system using blockchain
Oh et al. Enhancing trust of supply chain using blockchain platform with robust data model and verification mechanisms
Hofman Supply chain risk analysis with linked open data
Srivastava et al. Fraud detection in the distributed graph database
Singh et al. Cloud security ontology (CSO)
Betti et al. Smart contracts-enabled simulation for hyperconnected logistics
EP3076289B1 (en) Method, program, and apparatus, for managing a stored data graph
Byun et al. Efficient and privacy-enhanced object traceability based on unified and linked EPCIS events
Cerny et al. Catalog and detection techniques of microservice anti-patterns and bad smells: A tertiary study
Elayni et al. Using MongoDB databases for training and combining intrusion detection datasets
Garcia Bringas et al. Can BlockChain technology provide information systems with trusted database? The case of HyperLedger Fabric
Yan et al. Handling conditional queries and data storage on Hyperledger Fabric efficiently
Esmaeili et al. Conformance checking of the activity network with the social relationships structure in the context of social commerce
Dhanda Big data storage and analysis
Blanco et al. Onto-CARMEN: Ontology-driven approach for Cyber–Physical System Security Requirements meta-modelling and reasoning
da Cruz et al. Monitoring SOA-based applications with business provenance
Laval et al. Analysis of data exchange among heterogeneous IoT systems
Schuchardt et al. Applying content management to automated provenance capture
Zou et al. Blockchain-Based Cross-Border Supply Chain Model
Ajitha et al. Reduction of traffic on roads using big data applications
Goniwada Datafication Data-Sharing Pipeline
Galkin Enterprise Application Integration Architecture Recovery

Legal Events

Date Code Title Description
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right