KR20200081391A - 블록체인을 디지털 트윈의 세트에 연계하기 위한 컴퓨터 구현형 시스템 및 방법 - Google Patents

블록체인을 디지털 트윈의 세트에 연계하기 위한 컴퓨터 구현형 시스템 및 방법 Download PDF

Info

Publication number
KR20200081391A
KR20200081391A KR1020207013361A KR20207013361A KR20200081391A KR 20200081391 A KR20200081391 A KR 20200081391A KR 1020207013361 A KR1020207013361 A KR 1020207013361A KR 20207013361 A KR20207013361 A KR 20207013361A KR 20200081391 A KR20200081391 A KR 20200081391A
Authority
KR
South Korea
Prior art keywords
data
computer
blockchain
digest
implemented method
Prior art date
Application number
KR1020207013361A
Other languages
English (en)
Other versions
KR102575120B1 (ko
Inventor
실비아 바르톨루치
시모네 마데오
Original Assignee
엔체인 홀딩스 리미티드
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Priority claimed from GBGB1718182.7A external-priority patent/GB201718182D0/en
Priority claimed from GBGB1719212.1A external-priority patent/GB201719212D0/en
Priority claimed from GBGB1804744.9A external-priority patent/GB201804744D0/en
Application filed by 엔체인 홀딩스 리미티드 filed Critical 엔체인 홀딩스 리미티드
Publication of KR20200081391A publication Critical patent/KR20200081391A/ko
Application granted granted Critical
Publication of KR102575120B1 publication Critical patent/KR102575120B1/ko

Links

Images

Classifications

    • 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/3215Cryptographic 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 using a plurality of channels
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/27Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures therefor
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/64Protecting data integrity, e.g. using checksums, certificates or signatures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • G06F30/20Design optimisation, verification or simulation
    • 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/06Resources, workflows, human or project management; Enterprise or organisation planning; Enterprise or organisation modelling
    • G06Q10/067Enterprise or organisation modelling
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/06Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols the encryption apparatus using shift registers or memories for block-wise or stream coding, e.g. DES systems or RC4; Hash functions; Pseudorandom sequence generators
    • H04L9/0618Block ciphers, i.e. encrypting groups of characters of a plain text message using fixed encryption transformation
    • H04L9/0637Modes of operation, e.g. cipher block chaining [CBC], electronic codebook [ECB] or Galois/counter mode [GCM]
    • 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/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0891Revocation or update of secret information, e.g. encryption key update or rekeying
    • 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/3236Cryptographic 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 using cryptographic hash functions
    • 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/3236Cryptographic 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 using cryptographic hash functions
    • H04L9/3239Cryptographic 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 using cryptographic hash functions involving non-keyed hash functions, e.g. modification detection codes [MDCs], MD5, SHA or RIPEMD
    • 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/3297Cryptographic 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 time stamps, e.g. generation of time stamps
    • 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
    • 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
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/38Payment protocols; Details thereof
    • G06Q20/389Keeping log of transactions for guaranteeing non-repudiation of a transaction
    • H04L2209/38

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Business, Economics & Management (AREA)
  • General Engineering & Computer Science (AREA)
  • Human Resources & Organizations (AREA)
  • Strategic Management (AREA)
  • Computer Hardware Design (AREA)
  • Economics (AREA)
  • Entrepreneurship & Innovation (AREA)
  • Software Systems (AREA)
  • General Health & Medical Sciences (AREA)
  • Bioethics (AREA)
  • Health & Medical Sciences (AREA)
  • Databases & Information Systems (AREA)
  • General Business, Economics & Management (AREA)
  • Geometry (AREA)
  • Educational Administration (AREA)
  • Operations Research (AREA)
  • Marketing (AREA)
  • Development Economics (AREA)
  • Evolutionary Computation (AREA)
  • Quality & Reliability (AREA)
  • Game Theory and Decision Science (AREA)
  • Tourism & Hospitality (AREA)
  • Computing Systems (AREA)
  • Data Mining & Analysis (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Financial Or Insurance-Related Operations Such As Payment And Settlement (AREA)

Abstract

디지털 트윈의 세트로부터 획득된 데이터를 위한 저장 시스템으로서 블록체인 기술을 사용하는 컴퓨터 구현형 방법 및 시스템이 기술된다. 블록체인은 디지털 트윈의 세트에 의해 산출된 데이터의 변경불가한 트랜잭션 이력을 생성하는 데에 사용될 수 있다. 에러 또는 고장의 경우, 이해 당사자는 이후에 데이터의 변경불가한 기록을 액세스하고 분석할 수 있다. 발명은 비트코인 블록체인 또는 다른 블록체인 프로토콜과 함께 사용될 수 있다.

Description

블록체인을 디지털 트윈의 세트에 연계하기 위한 컴퓨터 구현형 시스템 및 방법
이 출원은 일반적으로 블록체인 네트워크(blockchain network)와의 구현에 적합한 컴퓨터 구현형(computer-implemented) 방법 및 시스템에 관련된다. 발명은 특히 비트코인(Bitcoin) 블록체인과의 사용에 적합하나, 이에 한정되지 않는다. 발명은 또한 컴퓨터 구현형 시스템에서의 보안(security), 무결성(integrity) 및 효율에 관련된다.
많은 수의 데이터 소스 및 다양한 모델에 의존하여 산업 자산이 설계된다. 데이터 과학자는 엄청난 양의 데이터와 작업하는 한편 전문화된 팀은 별도로 모델을 창출하고 그들의 특정 과업을 위해 분석을 수행한다. 최신의 정보 및 계산이 중대 결정을 위해 쉽게 이용가능하지 않을 수 있고, 유리되어(in silos) 작업하는 이 방식은 비용과 비효율을 조장하고, 불확실을 야기하며, 막대한 양의 시간과 리소스가 허비된다.
디지털 트윈(digital twin)은 실제의 객체(object), 프로세스(process) 또는 서비스(service)의 가상 동적 사본(virtual dynamic copy)인데 이를 통해 테스트(test)를 수행하고 에러(error) 또는 고장(failure)을 방지하는 것이 가능하다. 제품, 항공기 또는 차량의 기계적 부분, 생산 프로세스, 기타 등등의 디지털 트윈을 생성하는 것이 가능하다. 디지털 트윈은 시뮬레이션, 실시간 데이터 및 응답의 혁명적인 조합으로서 여겨질 수 있다.
프로세스 또는 시스템을 시뮬레이션하는(simulating) 행위는 시뮬레이션에 관여된 모든 변수가 과거와, 충분히 큰 시간프레임(timeframe)(이 동안에 테스트 대상 시스템(system under test)이 관측되었고 모든 입력/출력 변수가 기록되었음(recorded)) 내에서 어떻게 거동하였는지에 대한 지식을 상정한다. 과거의 지식을 갖는 것은 좋은 시뮬레이터(simulator)를 이룩하기(building) 위한 전제조건이다. 실시간 정보를 이 프로세스에 추가할 가능성은 전체 시뮬레이션의 정밀성 및 정확성을 시스템 또는 프로세스의 정확한 거동을 미러링하는(mirroring) 데까지 극적으로 증가시킬 수 있다.
도 1은 물리적 시스템을 위한 디지털 트윈의 단순한 도식적인 예시를 보여준다. 센서는, 예를 들어, 항공기의 부분일 수 있는 물리적 시스템에 대한 데이터를 모은다. 이력적(historical) 데이터는, 이후에 물리적 시스템을 추가의 실시간 데이터가 시스템에 주어짐에 따라 시뮬레이션하도록 전개되는 디지털 트윈을 구축하는 데에 사용된다. 디지털 트윈은 물리적 시스템의 파라미터를 모니터링하고, 물리적 시스템의 현재의 상태를 가늠하며, 물리적 시스템의 장래의 상태를 예측하고, 이전에 언급된 바와 같이 테스트를 수행하고 고장을 예측하는 데에 사용될 수 있다.
아래에서 논의되는 바와 같이 현재의 디지털 트윈 기술에 있어서 다수의 문제가 식별되었다.
디지털 트윈의 신뢰성(reliability) 및 보안은 디지털 트윈이 의존하는 데이터의 보안에 달려 있다. 디지털 트윈의 동작이 실시간 동작 동안에 부당변경될(tampered) 수 없도록, 그리고 디지털 트윈이 물리적 시스템의 상태를 올바로 반영하도록, 이상적으로 데이터는 변경불가(immutable)하여야 한다. 이는, 예를 들어, 디지털 트윈이 물리적 시스템의 실시간 상태를 적절히 표현하지 않도록 제3자가 데이터에 손대는(interfering) 것을 방지하기 위하여 중요할 수 있다. 이는 디지털 트윈이 물리적 시스템에서의 동작 에러 또는 고장으로 이어질 수가 있는 오도 정보(misleading information)를 제공하는 것을 초래할 수 있다.
나아가, 저장된 데이터는 시스템의 성능의 정확하고 신뢰가능한 이력적 기록이 유지되도록 변경불가하여야 한다. 이는, 예를 들어, 만일 물리적 시스템이 고장나고 물리적 시스템이 왜 고장났는지를 확증하기(confirm) 위하여 데이터가 체크될(checked) 필요가 있는 경우, 그리고 만일 어떤 책무든 물리적 시스템의 사용자나 제조 편에 존재하는 경우 중요할 수 있다. 그것은 어떤 행동(action)이 앞선 행동의 수행에 의존할 수 있는 프로세스에서 또한 중요할 수 있다. 이 경우에, 제3자는 잠재적으로, 저장된 데이터가, 어떤 행동이 수행되지 않은 경우에, 그것이 수행된 것처럼 보이도록 하기 위하여 이를 바꿀 수가 있다.
추가의 문제는 다수의 이해 당사자 각각의, 데이터에 대한 액세스가능성(accessibility)의 것이다. 당사자는 상충되는 이해를 십분 가질 수 있으며 그래서 보안적이고 변경불가하지만 모든 당사자에 의해 액세스가능한, 데이터의 정확하고 불편부당한 기록을 갖는 것이 유리할 것이다.
또 추가의 문제는 항공기 내의 블랙 박스 레코더(black box recorder)와 같은 종래의 데이터 저장 솔루션(solution)은 사고의 경우에 손상되거나 손실될 수 있다는 것이다.
또 다른 문제는 일단 이전의 행동이 완료되었으면 추가의 행동이 요구되는 시나리오에서, 디지털 트윈은 추가의 행동이 요구됨을 나타낼 수 있으나 그것이 실제로 수행됨을 보장할 수 없다는 것이다. 예를 들어, 디지털 트윈은 어떤 물리적 프로세스가 완료됨을 나타낼 수 있는데, 이리하여 물리적 프로세스의 완료에 대한 지불(payment)과 같은 추가의 단계를 요구한다. 그러나, 디지털 트윈은 그러한 지불이 실제로 행해짐을 보장할 수 없고 따라서 프로세스의 당사자가 믿을 만하고 프로세스를 적절히 완료하기 위하여 지불하거나, 그렇지 않으면 미리 지불(이는 그러면 프로세스의 제공자의 신용에 달려 있음)함에 의존한다.
본 문서에 제시된 솔루션을 제공함으로써 이들 문제를 다루는 것이 본 발명의 실시예의 목적이다.
전술된 문제는 디지털 트윈을 사용하는 실시간 애플리케이션을 포함하는 물리적 시스템 및 프로세스로부터 획득된 데이터를 위한 저장 시스템으로서 블록체인 기술을 사용함으로써 다루어질 수 있다. 디지털 트윈으로부터 생성된 데이터는, 예를 들어, 물리적 시스템의 하나 이상의 파라미터를 모니터링하는 하나 이상의 센서에 의해 생성된 물리적 시스템의 하나 이상의 파라미터와 연관된 데이터일 수 있다. 블록체인은 디지털 트윈에 의해 산출된 데이터의 변경불가한 트랜잭션(transaction) 이력을 생성하는 데에 사용될 수 있다. 에러, 고장, 사건 또는 사고의 경우, 이해 당사자는 이후 데이터의 변경불가한 세트를 액세스하고 분석할 수 있다. 이는 항공기와 같은 안전 결정적(safety-critical) 시스템에서 특히 중요할 수 있다. 나아가, 블록체인은 데이터의 분산된(distributed) 저장을 제공하기에, 그러면 개별 저장 유닛의 손상 또는 손실에 민감하지 않다. 더 나아가, 디지털 트윈으로부터의 데이터는 블록체인 네트워크 상에서의 디지털 스마트 계약(digital smart contract)의 구현에서 활용될 수 있다. 이는 실제의 물리적 시스템의 상태를 나타내는 디지털 트윈에 의해 수신된 데이터에 따라 블록체인 네트워크에 의해 단계가 실행될 수 있음을 보장할 수 있다. 즉, 블록체인 네트워크는 디지털 트윈을 통합한(incorporating) 시스템 또는 프로세스에 관련된 여러 당사자가 있는 디지털 스마트 계약을 실행하는 데에 사용될 수 있다.
현재의 블록체인 기술은 상대적으로 적은 양의 데이터가 상대적 빈번하지 않은 시간 기간에서 저장될 것이 요구되는 경우에 전술된 기능성을 충족시키는 것이 가능하다. 그러나, 블록 크기 제한, 그리고 블록이 대략적으로 10분마다 블록체인 내에 통합될 뿐이라는 사실은, 표준적인 블록체인 기술은 생성되는 데이터의 양이 매우 많고/거나 높은 빈도/충실도(fidelity)로, 가령 매 초 또는 밀리초(millisecond), 데이터를 저장한다는 요구사항이 있는 실시간 애플리케이션을 위한 저장 시스템으로서 그다지 알맞지 않음을 의미한다. 그러한 실시간 시스템을 위한 저장 시스템으로서 블록체인을 활용하기 위해서 이들 이슈를 극복하는 것에의 접근법이 본 문서에서 기술된다.
본 발명의 실시예가 다양한 형태로 제공될 수 있다. 예를 들어, 실행되는 경우에, 본 문서에 기술된 바와 같은 방법을 수행하도록 하나 이상의 프로세서를 구성하는 컴퓨터 실행가능(computer-executable) 명령어를 포함하는 컴퓨터 판독가능 저장 매체(computer readable storage medium)가 제공될 수 있다. 인터페이스 디바이스(interface device); 인터페이스 디바이스에 커플링된(coupled) 하나 이상의 프로세서(들); 및 하나 이상의 프로세서(들)에 커플링된 메모리를 포함하되, 메모리 상에는, 실행되는 경우에, 본 문서에 기술된 바와 같은 방법을 수행하도록 하나 이상의 프로세서(들)을 구성하는 컴퓨터 실행가능 명령어가 저장된 전자 디바이스가 또한 제공될 수 있다. 본 문서에 기술된 바와 같은 컴퓨터 구현형 방법은 또한 디지털 트윈, 버퍼(buffer), 블록체인 네트워크 노드(node), 또는 상기 컴포넌트의 조합을 포함하는 시스템 중 하나 이상으로 구현될 수 있다. 컴포넌트는 서로 원격으로 위치될 수가 있거나 컴포넌트 중 하나 이상은 일체화될(integrated) 수 있다.
상세한 설명에서 기술된 바와 같이, 블록체인 네트워크를 위한 컴퓨터 구현형 방법이 제공되는데, 컴퓨터 구현형 방법은 다음을 포함한다:
디지털 트윈의 세트로부터 데이터를 수신하는 것;
액세스가능한 분산된 저장 시스템(accessible distributed storage system) 내에 상기 데이터를 저장하는 것;
디지털 트윈의 세트로부터 수신된 데이터의 압축된 버전(compressed version)을 나타내는 데이터 구조(data structure)의 다이제스트(digest)를 계산하는 것; 및
블록체인(blockchain) 상의 저장을 위해 다이제스트를 송신하는 것.
상세한 설명에서 실시예가 기술되는데 여기서 분산된 저장 시스템은 분산된 해시 테이블(distributed hash table)을 포함하고 데이터 구조의 다이제스트는 디지털 트윈의 세트로부터 수신된 데이터로부터 도출된 머클 트리(Merkle tree)의 루트(root)이다. 그러나, 방법론은 디지털 트윈의 세트로부터 수신된 데이터의 압축된 버전을 나타내는 데이터 구조의 연관된 다이제스트를 갖는 상이한 암호학적(cryptographic) 기능을 사용하여 또한 구현될 수 있다.
데이터 구조(가령 머클 트리)는 액세스가능한 분산된 저장 시스템(가령 분산된 해시 테이블)의 어느 노드 내에 데이터가 저장되었는지를 식별하도록 구성될 수 있다. 나아가, 데이터 구조는 액세스가능한 분산된 저장 시스템 내에 저장될 수 있다. 더 나아가, 데이터 구조의 다이제스트(가령 머클 트리의 루트)는 블록체인 상의 저장을 위한 포워딩(forwarding) 전에 버퍼에 송신될 수 있는데, 버퍼는 데이터 구조의 다이제스트에 의해 나타내어지는 정보의 샘플링 빈도(sampling frequency)를 선택한다. 버퍼는 다이제스트 정보를 포함한 메시지를 생성하고 블록체인 상의 저장을 위해 보안 채널을 통해서 메시지를 송신할 수 있다. 수신기는 버퍼로부터 메시지를 수신하고 분산된 저장 시스템을 액세스하여 메시지를 확인할(verify) 수 있다. 확인 후에, 수신기는 그러면 블록체인 상의 저장을 위해 데이터 구조의 다이제스트를 송신할 수 있다.
어떤 구성에 따르면, 디지털 트윈의 세트로부터 수신된 데이터로부터 도출된 제2 다이제스트를 갖는 제2 데이터 구조(가령 디지털 트윈의 세트로부터 수신된 데이터로부터 도출된 제2 루트를 갖는 제2 머클 트리)가 제공될 수 있다. 각각의 데이터 구조로부터의 다이제스트는 액세스가능한 분산된 저장 시스템 내에 저장될 수 있다. 나아가, 각각의 데이터 구조로부터의 다이제스트는 버퍼 내에 저장될 수 있다. 이후 버퍼는 다이제스트가 동일한지를 확증하기 위하여 양 다이제스트 모두를 사용하여 분산된 저장 시스템을 액세스할 수 있고, 만일 그렇다면, 버퍼는 블록체인 상의 저장을 위해 다이제스트 중 하나를 송신한다. 달리, 만일 다이제스트가 상이하다고 밝혀지면, 다이제스트는 어느 디지털 트윈이 상응하고 있지(responding) 않은지를 검출하기 위하여 확인될 수 있다.
실행되는 경우에, 본 문서에 기술된 바와 같은 방법을 수행하도록 하나 이상의 프로세서를 구성하는 컴퓨터 실행가능 명령어를 포함하는 컴퓨터 판독가능 저장 매체(computer readable storage medium)가 또한 제공된다.
다음을 포함하는 전자 디바이스가 또한 제공된다:
인터페이스 디바이스;
인터페이스 디바이스에 커플링된 하나 이상의 프로세서(들);
하나 이상의 프로세서(들)에 커플링된 메모리(메모리에는, 실행되는 경우에, 본 문서에 기술된 바와 같은 방법을 수행하도록 하나 이상의 프로세서(들)를 구성하는 컴퓨터 실행가능 명령어가 저장됨).
더 나아가, 본 문서에 기술된 바와 같은 방법을 수행하도록 구성된 시스템이 제공되는데, 시스템은 다음을 포함한다:
디지털 트윈의 세트;
디지털 트윈의 세트로부터의 데이터를 저장하기 위한 액세스가능한 분산된 저장 시스템;
디지털 트윈의 세트로부터 수신된 데이터의 압축된 버전을 나타내는 데이터 구조의 다이제스트를 계산하기 위한 프로세서; 및
블록체인 상의 저장을 위해 다이제스트를 송신하기 위한 송신기.
본 발명은 그것이 구체적으로 단일의 디지털 트윈보다는 디지털 트윈의 세트로부터의 데이터 스트림을 관리하기 위한 블록체인 방법론에 지향된다는 점에서 디지털 트윈에 관한 선행 기술과 상이하다. 발명적 개념은 디지털 트윈의 세트로부터 데이터를 수신하는 것, 액세스가능한 분산된 저장 시스템 내에 상기 데이터를 저장하는 것, 디지털 트윈의 세트로부터 수신된 데이터의 압축된 버전을 나타내는 데이터 구조의 다이제스트를 계산하는 것, 그리고 블록체인 상의 저장을 위해 다이제스트를 송신하는 것을 수반한다.
기술된 실시예에서 분산된 저장 시스템은 분산된 해시 테이블을 포함하고 데이터 구조의 다이제스트는 디지털 트윈의 세트로부터 수신된 데이터로부터 도출된 머클 트리의 도중에(in route) 있다. 즉, 각각의 디지털 트윈을 위한 별개의 머클 트리보다는 디지털 트윈의 세트를 위해 공통의 머클 트리가 사용된다. 본 발명은 디지털 트윈으로부터의 많은 양의 데이터를 다루면서 또한 데이터가 보안적으로 확인될 수 있게 하는 문제에 대한 솔루션을 제공한다. 본 사안에서, 솔루션은 많은 양의 데이터가 디지털 트윈의 세트로부터 관리될 수 있게 하는 한편 블록체인 상에 저장될 것이 요구되는 데이터의 양을 압축하고 또 그래도 데이터의 확인을 가능하게 한다. 이는 아래에서 간략히 논의되는 것과 같은 선행 기술과 대조된다.
US2017/0284974는 디지털 트윈 시스템을 개시한다. 그러나, 블록체인 상에 그러한 디지털 트윈 시스템으로부터의 데이터를 저장하는 것의 어떤 개시도 있다고 보이지 않으며, 본 명세서에서 기술된 바와 같은 구체적인 방법론의 어떤 개시도 확실히 없다.
CN105812126은 인간의 생리적 데이터의 획득 및 블록체인 상에서의 이 데이터의 저장을 개시하는 것으로 보일 것이다. 그러나, 디지털 트윈의 세트로부터의 데이터를 처리하기 위해 본 명세서에서 기술된 바와 같은 방법론의 어떤 개시도 있다고 보이지 않는다.
"Boeing Improves Operations with Blockchain and the Internet of Things"라는 표제로 된 Carlo Gutierrez 논설은 디지털 트윈을 활용하는 것 및 블록체인 상에 데이터를 저장하는 것을 개시한다고 보일 것이다. 그러나, 그 문헌은 비교적 고수준의 개관을 제공할 뿐이며 이것이 실제로 어떻게 달성되는지에 대한 어떤 세부사항도 있다고 보이지 않는다. 역시, 디지털 트윈의 세트로부터의 데이터를 처리하기 위해 본 명세서에서 기술된 바와 같은 방법론의 어떤 개시도 없다.
"Digital Twin on Blockchain, Enabling the Circular Economy"라는 표제로 된 Burkhard Blechschmidt에 의한 논설은 디지털 트윈 및 블록체인을 수반하는 애플리케이션에 관한 다른 고수준 문헌이다. 역시 어떻게 이것이 실제로 달성되는지에 대한 어떤 세부사항도 없으며 디지털 트윈의 세트로부터의 데이터를 다루기 위해 본 명세서에서 기술된 바와 같은 특정한 방법론의 어떤 개시도 확실히 없다.
"3D Opportunity for Blockchain"이라는 표제로 된 Trouton 등의 논설은 또한 시스템 데이터를 관리하기 위해서 디지털 트윈과의 조합으로 된 블록체인 기술의 사용을 개시한다고 보인다. 역시, 어떻게 시스템이 데이터를 처리하고 세이브하도록(save) 구성되는지에 대한 어떤 세부사항도 있다고 보이지 않는다. 특히, 디지털 트윈의 세트로부터의 데이터 스트림을 다루기 위해 본 명세서에서 기술된 바와 같은 방법론의 어떤 개시도 있다고 보이지 않는다.
"Implementing First Industry 4.0 Use Cases with DAG Tangle- Machine Tagging for Digital Twins"라는 표제로 된 Stocker에 의한 논설은 또한 데이터를 다루기 위해서 디지털 트윈과의 조합으로 된 블록체인 기술의 사용을 개시한다고 보인다. 역시, 어떻게 시스템이 데이터를 처리하고 세이브하도록 구성되는지에 대한 어떤 세부사항도 있다고 보이지 않는다. 특히, 디지털 트윈의 세트로부터의 데이터를 처리하기 위해 본 명세서에서 기술된 바와 같은 방법론의 어떤 개시도 있다고 보이지 않는다.
본 발명의 양상은 본 문서에 기술된 실시예로부터 명백하고 이를 참조하여 설명될 것이다. 오직 예로서, 그리고 첨부된 도면을 참조하여, 본 발명의 실시예가 이제 기술될 것인데, 첨부된 도면에서,
도 1은 물리적 시스템을 위한 디지털 트윈의 단순한 도식적인 예시를 보여주고,
도 2는 머클 트리의 예를 보여주며,
도 3은 2개의 상이한 머클 트리를 보여주고,
도 4(a) 내지 도 4(c)는 4개의 디지털 트윈, 4개의 디지털 트윈으로부터의 데이터로부터 도출된 루트를 갖는 머클 트리, 그리고 루트가 저장되는 블록 체인을 포함하는 시스템을 보여주며,
도 5(a) 및 도 5(b)는 디지털 트윈에 의해 생성된 데이터를 위한 존재 증명(proof of existence)으로서의 블록체인의 사용을 예시하는데, 시스템은 도 4(a) 내지 도 4(c)에 도시된 것과 유사하나 디지털 트윈으로부터의 데이터가 분산된 해시 테이블 내에 저장되도록 수정되고 여기서 제2의, 복제(duplicate) 머클 트리가 제공되되 이는 디지털 트윈 및 블록체인 네트워크 간의 연결의 오작동(malfunctioning)의 경우에 축퇴(degeneracy)를 제공하며,
도 6은 이력의 증분 해싱(incremental hashing)을 위한 머클 트리 기반 프로토콜에 관여된 당사자를 예시하며,
도 7은 이력의 증분 해싱을 위한 머클 트리 기반 프로토콜에 관여된 국면을 예시하고,
도 8은 이력의 증분 해싱을 위한 머클 트리 기반 프로토콜에 관여된 단계를 예시하며,
도 9는 디지털 트윈 및 블록체인 네트워크 간의 연결의 오작동의 경우에 축퇴를 제공하는, 앞서 도 5(a) 및 도 5(b)에서 도시된 미러링된 또는 복제 머클 트리를 예시하고,
도 10은 송신의 신뢰성을 체크하고 일관된(consistent) 데이터를 유지하기 위해서인 미러링된 루트 및 확인을 위한 단계를 보여주며,
도 11은 다양한 실시예가 구현될 수 있는 컴퓨팅 환경을 예시하는 개략도이다.
이 문헌에서 우리는 용어 '블록체인'을 모든 형태의 전자적인, 컴퓨터 기반의 분산 원장(distributed ledger) 기술을 포함하도록 사용한다. 이는, 합의(consensus) 기반 블록체인 및 트랜잭션 체인(transaction-chain) 기술, 허가형(permissioned) 및 비허가형(un-permissioned) 원장, 공유형(shared) 원장 및 이들의 변형을 포함하나, 이에 한정되지 않는다. 비록 다른 블록체인 구현이 제안되고 개발되었기는 하나, 블록체인 기술의 가장 널리 알려진 애플리케이션은 비트코인(Bitcoin) 원장이다. 편의 및 예시의 목적으로 본 문서에서 비트코인이 언급될 수 있으나, 발명은 비트코인 블록체인과의 사용에 한정되지 않으며 대안적인 블록체인 구현 및 프로토콜은 본 발명의 범위 내에 속한다는 점에 유의하여야 한다.
블록체인은, 결국 트랜잭션 및 다른 정보로 구성되는 블록으로 구성된, 컴퓨터 기반의 탈중앙화된(decentralized) 분산된(distributed) 시스템으로서 구현되는 합의 기반의, 전자적 원장이다. 비트코인의 경우, 각각의 트랜잭션은 블록체인 시스템 내의 참여자 간의 디지털 자산의 제어의 전이(transfer of control)를 인코딩하는 데이터 구조이며, 적어도 하나의 입력 및 적어도 하나의 출력을 포함한다. 각각의 블록은 이전의 블록의 해시(hash)를 포함한다. 블록체인에 그 개시 이래 기입된 모든 트랜잭션의 영속적인 불변의 기록을 생성하기 위하여 블록이 함께 연쇄되게(chained) 된다. 트랜잭션은 그것의 입력 및 출력 내에 임베딩된(embedded) 스크립트(script)로 알려진 작은 프로그램을 포함하는데, 이는 트랜잭션의 출력이 어떻게, 그리고 누구에 의해 액세스될 수 있는지를 명시한다. 비트코인 플랫폼 상에서, 이들 스크립트는 스택 기반의(stack-based) 스크립팅 언어(scripting language)를 사용하여 기입된다.
트랜잭션이 블록체인에 기입되기 위해서, 그것은 "유효화되어야"(validated) 한다. 몇몇 네트워크 노드는 채굴자(miner)로서 작용하며 각각의 트랜잭션이 유효함을 보장하기 위하여 작업을 수행하는데, 무효한(invalid) 트랜잭션은 네트워크로부터 거부된다. 예를 들어, 노드 상에 설치된 소프트웨어 클라이언트는 미지출 트랜잭션 출력(unspent transaction output)(UTXO)을 참조하는 트랜잭션에 대해 이 유효화 작업을 수행한다. 유효화는 그것의 잠금(locking) 및 잠금해제(unlocking) 스크립트를 실행함으로써 수행될 수 있다. 만일 잠금 및 잠금해제 스크립트의 실행이 참(TRUE)으로 평가되는 경우, 그리고 만일 어떤 다른 조건이 충족되는 경우, 트랜잭션은 유효하고 트랜잭션은 블록체인에 기입될 수 있다. 그러므로, 트랜잭션이 블록체인에 기입되기 위해서, 그것은 i) 트랜잭션을 수신하는 노드에 의해 유효화되어야 하고 - 만일 트랜잭션이 유효화되면, 노드는 그것을 네트워크 내의 다른 노드에 중계함; ii) 채굴자에 의해 이룩된 새로운 블록에 추가되어야 하며; iii) 채굴되어야, 즉 과거의 트랜잭션의 공개 원장(public ledger)에 추가되어야 한다. 트랜잭션은 트랜잭션을 실제로 비가역적(irreversible)이게 하기 위해 충분한 수의 블록이 블록체인에 추가된 경우에 확증된다고 간주된다. 기입 시에, 비트코인 블록체인 네트워크는 대략적으로 2000개의 트랜잭션을 포함하는 블록크기에 기반하며 블록은 대략적으로 10분마다 채굴된다.
블록체인 기술은 암호화폐(cryptocurrency) 구현의 사용으로 가장 널리 알려져 있지만, 새로운 시스템을 구현하기 위하여 디지털 기업가는 비트코인이 기반을 둔 암호학적 보안 시스템 및 블록체인 상에 저장될 수 있는 데이터 양자 모두의 사용을 살펴보기 시작했다. 순전히 암호화폐 부문에서 명명된 지불에 한정되지 않는 자동화된 직무 및 프로세스를 위해 블록체인이 사용될 수가 있다면 대단히 유리할 것이다. 그러한 솔루션은 그것의 애플리케이션에서 더욱 다방면적이면서도 블록체인의 이득(가령, 이벤트의 영속적인 부당변경 방지 기록(tamper proof record), 분산된 처리 등)을 활용할 수 있을 것이다.
연구의 한 영역은 "스마트 계약"의 구현을 위한 블록체인의 사용이다. 이들은 머신 판독가능(machine-readable) 계약 또는 동의의 조항의 실행을 자동화하기 위해 설계된 컴퓨터 프로그램이다. 자연 언어로 기입될 전통적인 계약과 달리, 스마트 계약은 결과를 산출하기 위해서 입력을 처리할 수 있는 규칙을 포함하는 머신 실행가능(machine executable) 프로그램인데, 이는 그 결과에 의존하여 행동이 수행되도록 할 수 있다.
본 명세서는 디지털 트윈과의 조합이 된, 그리고 선택적으로 또한 스마트 계약의 사용과의 조합이 된 블록체인의 사용을 기술한다. 앞서 기술된 바와 같이, 디지털 트윈은 공급 관리 프로세스를 단순화할 수 있고 안전 결정적 시스템(가령 항공기 및 항공우주 산업 또는 운송 전반)을 위한 중요한 진단 도구일 수 있다. 디지털 트윈 및 블록체인 기술의 조합을 위한 잠재적인 애플리케이션은 여럿이다. 예를 들어, 디지털 트윈에 의해 생성된 정보를 안전하게 저장하기 위해 또는 디지털 트윈을 통합한 시스템 또는 프로세스에 관련된 여러 관여 당사자와의 계약을 실행하기 위해 블록체인 네트워크가 사용될 수 있다. 디지털 트윈은 물리적 시스템 및 블록체인 간의 인터페이스(interface)로서 효과적으로 기능할 수 있어서 시스템 또는 프로세스에 대한 데이터가 디지털 트윈에 의해 획득되고 블록체인 상에 저장될 수 있고 블록체인은 블록체인 상에 저장된 하나 이상의 스마트 계약에 따라, 수신된 데이터에 기반하여 어떤 행동을 트리거할(trigger) 수 있다.
디지털 트윈에 의해 생성되는 실시간 데이터의 양은 미러링되고 있는 시스템의 복잡도에 따라서 달라질 수 있다. 예를 들어, 사무실의 온도를 미러링하는 디지털 트윈이 구축될 수 있다. 이 경우에, 방의 온도가 통상적으로 갑작스러운 변동을 갖지 않음을 고려하면, 네트워크를 통하여 송신될 데이터의 양을 감소시키기 위해서, 온도의 값을 1분마다(또는 5분마다) 송신하는 것이 합당할 수 있다. 1분마다의 온도의 값의 경우, 디지털 트윈은 1시간마다 온도의 60개의 값을, (실시간으로) 기록하고 송신할 것이다.
데이터의 그러한 양은 블록체인 상의 저장을 위해 확실히 합리적이며, 그것은 어떤 주요한 이슈도 야기하지 않는다. 그러나, 만일 미러링되고 있는 시스템이, 예를 들어, 비행 중인 항공기의 엔진(engine)이거나, 기차 여정 중인 기차의 기통(cylinder)인 경우 상황은 더 복잡해진다. 이들 예에서, 1초마다 값을 송신하는 것조차 충분하지 않을 수 있고, 더 높은 충실도, 가령 1밀리초마다 샘플(항공기의 경우 매우 가능함)을 보장하는 것이 필수적일 수가 있다. 역시, 기록되는 변수의 수는 달라질 수 있고 복잡한 시스템에는 높은 충실도로 많은 수의 변수를 기록한다는 요구사항이 있을 수 있다.
디지털 트윈에 의해 송신되는 데이터의 양과 빈도를 고려할 필요성은 특정 객체 또는 프로세스에 관련된 정보를 저장하기 위한 가능한 백본 인프라스트럭처(backbone infrastructure)로서 블록체인을 고려하는 경우에 제약을 수반하는 중요한 전제이다. 디지털 트윈에 의해 생성된 데이터의 양은 매우 많고, 따라서 그러한 많은 양의 데이터를 관리하는 것은 디지털 트윈의 구조를 블록체인과 인터페이스하고자 하는 경우에 극도로 어려울 수 있다. 이 명세서에서 머클 트리에 기반하고 다음의 특성을 포함하는 개선된 프로토콜이 기술된다:
1. 우리는 DHT(Distributed Hash Table(분산된 해시 테이블)) 내에의 디지털 트윈의 세트에 의해 생성된 매우 많은 양의 정보의 저장 및 공개 블록체인(public Blockchain) 상에의 머클 트리의 루트의 대응 값의 저장을 가능하게 하는 솔루션을 제안한다.
2. 우리는 디지털 트윈의 세트에 의해 생성된 데이터의 존재 증명으로서의, 그리고 DHT의 어느 노드 내에 실제의 데이터가 저장되었는지를 식별하기 위한 방식으로서의 머클 트리 구조의 사용을 제안한다.
3. 우리는 버퍼로부터 수신기에 송신되는 데이터를 위한 보안 및 신뢰성의 추가적인 계층을 도입하기 위해 미러링된 머클 트리(mirrored Merkle tree)의 개념을 제안한다.
머클 트리
해시 함수(hash function)는 입력을 취하고 고정 길이 출력을 생성하는 일방향(one-way) 함수이다. 잘 설계된 해시 함수는 두 입력이 높은 확률로 동일한 출력(충돌)을 생성하지 않을 것이라는 속성에 기반한다. 따라서, 해시는 콘텐트(content)의 주어진 단편(piece)을 위한 고유한 식별자(identifier)로서 간주될 수 있다.
예를 들면, F는 그것을 작은 청크(chuck)들로 나누고, 그것들을 네트워크에 걸쳐 분산함으로써 피어 대 피어(peer-to-peer) 네트워크 내에 저장될 수 있다. 이 프로세스에 관여된 피어는 충분한 대역폭 및 디스크 공간을 제공하도록 요구된다. 더욱이, 피어는 익명(anonymous)이고 불신되어서(untrusted), 콘텐트가 적법함(legitimate)을 우선 확인하지 않고 피어로부터 F를 받아들이는 것은 위험할 것이다.
머클 트리는 우리로 하여금 피어의 네트워크에 걸쳐 데이터를 효율적으로 확인할 수 있게 하는 고유한 속성을 갖는다. 머클 트리는 도 2에 도시된 바와 같이, 이진 트리(binary tree)인데 이의 노드는 데이터의 단편(piece) 대신에 해시를 저장한다. 리프 노드(leaf node)는 데이터의 부분의 해시를 저장하는 한편, 부모 노드(parent node)는 좌측 및 우측 자식의 연접(concatenation)의 해시를 저장한다.
근본적인 속성은 도 3에 도시된 바와 같이, 우리가 2개의 머클 트리를 비교하기 위해 체크할 필요가 있는 무이한 요소는 루트라는 것이다. 2개의 루트 RS가 상이하기 때문에 2개의 머클 트리는 상이하다. 따라서, 2개의 트리는 데이터의 2개의 상이한 세트, 가령 좌측의 {a, b, c, d} 및 우측의 {a, b, c, e}를 나타낸다.
이력의 증분 해싱
블록체인 내에 저장된 정보는 디지털 트윈에 의해 생성된 데이터가 아니고, 주어진 프레임의 시간 T 내에서 생성된, 주어진 양의 데이터 D의 서명된(signed) 해시일 뿐이다.
이력의 증분 해싱은 다음의 단계에 기반한다:
1. 디지털 트윈은 주어진 빈도f로 데이터를 기록하기 시작한다;
2. 데이터가 사적 노드(private node) 내에 기록된다;
3. 시간 T 0 에서, 노드는 디지털 트윈에 의해 기록된 데이터를 해싱하는 제1 해시(H 0 ): 시간 T 0 에서 H 0 =H(D)를 생성하고 해시를 로컬로(locally)도 그리고 블록체인 상에도 기록한다;
4. 시간 T 0 +x에서, 새로운 해시 하나하나는 이전의 것과 연계될(linked) 것인바(두 번째 해시는 H 0 와 연계될 것임 및 기타 등등), 블록체인 상에 기록될 해시의 체인(chain)을 생성한다.
블록체인은 해시의 시퀀스(sequence)를 포함할 것인데, 이는 디지털 트윈에 의해 생성된 전체 데이터 이력을 다시 이룩하는 데에, 그리고 기록된 정보의 진정성(authenticity)을 사적 노드에 의해 확인하는 데에 사용될 수 있다.
더욱이, 만일 디지털 트윈이 결정적인 정보를 발신하고 있으면, 가령 그것이 안전 결정적 동작에 관여된 디바이스의 기계적 부분을 미러링하고 있으면, 정보는 네트워크를 통하여 보안 채널을 거쳐서 발신되어야 한다.
존재 증명으로서 사용되는 블록체인
머클 트리의 속성은 - 복잡한 시스템(가령 항공기)에 연결된 - 디지털 트윈으로부터 수집된 데이터를 저장하고 확인하는 프로세스를 더욱 효율적이게 하기 위해서 이용될 수 있다. 사실, 디지털 트윈의 수만큼 많은 해시를 저장하는 것 대신에, 도 4(a) 내지 도 4(c)에 도시된 바와 같이, 관측 대상 시스템(System Under Observation: SUO)을 나타내는 머클 트리의 루트만을 저장하는 것이 가능하다.
도 4(a)는 항공기의 특정 부분을 모방하는 4개의 디지털 트윈 {a, b, c, d}에 의해 모니터링되는 관측 대상 시스템을 보여준다. 디지털 트윈은 주어진 레이트(rate)로 데이터를 생성한다. 데이터는 사적 노드(또는 여러 노드) 내에 저장되고 그것의 해시는 루트를 계산하는 데에 사용된다(도 4(b)). 블록체인 상에 저장되는 유일한 정보는 머클 트리의 루트이다(도 4(c)). 이는 디지털 트윈의 어레이(array)에 의해 생성된 정보의 양이 블록체인에 대한 저장 요구사항에 영향을 미치지 않음을 의미한다. 각각의 타임스탬프(timestamp)(머클 트리의 루트)를 생성하는 데에 사용되는 빈도는 애플리케이션에 달려 있음에 또한 유의하시오.
이 방식으로, 우리는 생성된 데이터를 위해 존재의 온체인(on-chain) 증명을 이룩하는 데에 머클 트리 및 디지털 트윈을 사용할 수 있다. 도 5(a) 및 도 5(b)는 디지털 트윈에 의해 생성된 데이터를 위한 존재 증명으로서의 블록체인의 사용을 예시한다. 블록체인(도 5(b)) 상에 저장되는 정보는 도 5(a)에 도시된 바와 같이, 디지털 트윈의 어레이에 의해 생성되고, 분산된 해시 테이블(Distributed Hash Table: DHT) 내에 저장된 데이터의 세트의, 어떤 시간에서의, 존재를 증명하는 데에 사용될 것이다. 기록된 해시는 DHT의 어느 노드가 소정의 정보를 포함하는지를 식별하는 데에 또한 사용될 수가 있다.
다음 섹션에서, 우리는 (단일의 또는 조합이 된) 머클 트리를 사용하여 디지털 트윈에 의해 생성된 데이터를 저장하기 위하여 개선된 프로토콜을 제시한다.
이력의 증분 해싱을 위한 머클 트리 기반 프로토콜
우리는 디지털 트윈의 어레이에 의해 생성된 정보의 저장을 위한 보증된(certified) 시스템으로서 블록체인을 사용하기 위해 머클 트리 및 이력의 증분 해싱에 기반한 최적화된 솔루션을 제안한다.
도 6은 하나의 솔루션에 관여된 당사자의 방안을 보여준다. 보안 채널을 구현하기 위해서, 우리는 발신기(도 6에서 우리의 경우 (A)에 버퍼) 및 수신기 간의 공유 키(shared key) K를 생성할 필요가 있고, 전제조건은 키 K가 오직 발신기 및 수신기에 알려져 있다는 것이다. 버퍼의 역할은 디지털 트윈의 세트를 나타내는 머클 트리를 보안 채널에 연결하는 인터페이스로서 작동하는 것이다. 이 프로세스 동안에, - 디지털 트윈에 의해 생성된 미가공(raw) 데이터 및 머클 트리의 해시로 구성된 - 데이터 S의 스트림은 이산(discrete) 메시지의 시퀀스 {m 1 , m 2 , …, m n }로 변환된다. 버퍼는 생성된 데이터 전부를 수집하고, 저장하고 송신하는 것을 맡을 것이다. S의 이산화 및 n개의 요구되는 메시지의 생성 후에, 키 K i 를 위한 새로운 값이 각각의 메시지 m i 에 대해 생성될 것이다. 보안 채널이 수립될 때마다, 예를 들면 메시지 m i 가 발신될 때마다, 고유한 키(세션 키(session key))를 마련하기 위해 버퍼 및 수신기 간에 키 협상 프로토콜(key negotiation protocol)이 사용된다. 버퍼는 얼마나 많은 이산 메시지가 발신될 것인지를, 예를 들어 송신 시의 네트워크의 사정에 따라, 결정할 것이다.
채널을 통하여 발신되는 각각의 메시지 m i 에 대해, 버퍼는 해시 H(m i )를 계산하고 저장할 것이다. 그러면 그것은 메시지 m h = H(m 1 ), H(m 2 ), …, H(m n )를 작성하고 m H = H(m h )를 부기하여 절차를 마무리할 것이다. 수신기는 메시지의 시퀀스를 수신하는데, 이는 m h m H 를 사용하여 확인될 수 있다.
프로토콜
이전의 섹션에서 기술된 솔루션은 만일 SUO를 미러링하는 디지털 트윈의 세트가 대규모의 데이터를 생성하지 않는 프로세스/시스템에 관련되거나 제한된 경우 작동한다. SUO가 많은 수의 디지털 트윈에 의해 특징지어지거나, 디지털 트윈의 세트가 더 많은 양의 데이터를 요구하는 많은 변수에 의해 기술되는 복잡한 시스템을 미러링하고 있는 경우에, 주어진 시간에서의 (미가공 데이터를 포함한) 메시지 및 연관된 머클 트리의 루트 양자 모두의 송신은, 효율적이지 않을 수 있다. 이 섹션에서, 우리는 (i) 직접적으로 DHT 상에의 미가공 데이터의 저장 및 (ii) 연관된 머클 트리의 루트의 계산, 송신 및 블록체인 상에서의 저장에 의해 특징지어지는 프로토콜을 제시한다.
제안된 프로토콜은 도 7에 도시된 바와 같은 다음의 단계에 기반한다:
1. 시스템 (a)을 미러링하는 디지털 트윈의 세트에 의해 (연속적으로) 제공되는 데이터는 DHT (b) 내에 저장된다.
2. 머클 트리 (a)는 시스템을 미러링하는 모든 디지털 트윈을 함께 연계하는 데에 사용된다. 트리의 루트만이 송신되고 블록체인 상에 저장될 것이다.
3. 단계 (b) 동안에, 버퍼는 머클 트리의 루트에 의해 나타내어진 정보의 샘플링 빈도를 선택하는 것을 담당한다. 빈도는 제어 대상 시스템(system under control) 및 요망되는 레졸루션(resolution)에 좌우될 것이다.
4. 단계 (b)에서 버퍼에 의해 생성된 메시지는, 보안 채널 (c)을 통하여 발신되고 이후 단계 (d)에서 수신기에 의해 수신된다.
5. 수신기는 디지털 트윈의 세트에 의해 생성된 데이터가 여기에 저장되는 DHT에 대한 액세스를 갖는다. DHT는 정보의 무결성을 확인하는 데에 사용될 수 있다. 사용되는 DHT는 사적 플랫폼(private platform)이다. 따라서, 비인가 사용자(non-authorized user)는 DHT 내에 저장된 정보에 대한 액세스를 가질 수 없다.
6. 최종 단계로서, 머클 트리의 루트의 해시가 블록체인 상에 저장된다.
수신기 (b)는 SUO 및 블록체인 간의 인터페이스로서 작용한다. 머클 트리의 수신된 루트의 수가 매우 많으므로, 그리고 네트워크 지연시간(latency)을 고려하면, 블록체인 상의 공개 때까지 수신된 정보를 임시로 저장하는 것이 필요하다. 추가적으로, 수신기는 주어진 루트가 올바르며 주어진 머클 트리에 의해 나타내어지는지를 확인하는 것이 또한 가능한데:
· 메시지 m h m H 를 체크하는 것에 의해서; 그리고
· 관련 DHT를 액세스하는 것에 의해서이다.
도 8은 이력의 증분 해싱을 위한 머클 트리 기반 프로토콜에 관여된 단계를 예시한다.
전술된 접근법은 디지털 트윈의 세트로부터의 많은 양의 데이터의 관리를 가능하게 하나, 한가지 잠재적인 문제는 디지털 트윈 및 네트워크 간의 연결의 오작동 때문에 초래되는 비일관적(inconsistent) 데이터일 수 있다. 이다음 섹션에서, 우리는 프로토콜의 신뢰성 및 보안을 증가시킬 수정된 솔루션을 예시한다.
미러링된 머클 트리
송신 프로토콜에서의 단계 B의 신뢰성을 증가시키기 위해서, 즉 머클 트리의 루트가 버퍼 내에 올바로 저장되어 있는지를 가늠하기 위해서, 우리는 도 9에 도시된 바와 같은 복제된 구조를 제안한다.
머클 트리의 루트의 2개의 해시 R 및 R'가 DHT 내에 그리고 버퍼 내에 저장되며, 디지털 트윈의 어레이가 일관된 데이터를 제공하고 있는지를 확인하는 데에 사용될 수 있다. 머클 트리의 루트의 일관성을 체크하기 위해서 버퍼에 캐시 시스템(cache system)이 추가된다.
버퍼는 루트의 3개의 세트를 포함한다: 캐시 세트(cache set), 확증된 세트(confirmed set) 및 확증되지 않은 세트(unconfirmed set). 다음의 단계는 프로토콜의 추가적인 부분을 기술한다:
· 캐시 세트는 미러링된 트리에 의해 생성된 루트의 쌍(pair), R 및 R'를 포함한다.
· 버퍼는 루트 R 및 R'를 사용하여 DHT를 액세스할 수 있다.
· 만일 R 및 R'로써의 DHT에의 액세스가 성공적이면, 2개의 루트는 동일하니, 즉 루트 R는 확증된 세트 내에 전송된다.
· 만일 R 및 R'로써의 DHT에의 액세스가 불합치(discordant)하면, 루트 R는 확증되지 않은 세트로 전송된다.
확증된 세트 내의 루트는 네트워크를 통하여 전송되는 반면, 확증되지 않은 세트 내의 루트는 어느 디지털 트윈(들)이 적절히 상응하고 있지 않은지를 검출하기 위해서 확인된다. 도 10은 미러링된 루트 및 확인을 위한 단계를 보여준다.
컴퓨팅 환경
도 11은 다양한 실시예가 구현될 수 있는 컴퓨팅 환경을 예시하는 개략도이다. 본 개시의 적어도 하나의 실시예를 실시하는 데에 사용될 수 있는 컴퓨팅 디바이스(2600)의 예시적인, 단순화된 블록도가 제공된다. 다양한 실시예에서, 컴퓨팅 디바이스(2600)는 위에서 예시되고 기술된 시스템 중 임의의 것을 구현하는 데에 사용될 수 있다. 예를 들어, 컴퓨팅 디바이스(2600)는 데이터 서버(data server), 웹 서버(web server), 휴대가능 컴퓨팅 디바이스(portable computing device), 개인용 컴퓨터(personal computer), 또는 임의의 전자 컴퓨팅 디바이스로서의 사용을 위해 구성될 수 있다. 도 11에 도시된 바와 같이, 컴퓨팅 디바이스(2600)는 주 메모리(main memory)(2608) 및 지속적 스토리지(persistent storage)(2610)를 포함하는 저장 서브시스템(2606)과 통신하도록 구성될 수 있는 (2602로 집합적으로 라벨표시된) 메모리 제어기 및 하나 이상의 레벨의 캐시 메모리를 가진 하나 이상의 프로세서를 포함할 수 있다. 주 메모리(2608)는 도시된 바와 같이 동적 랜덤 액세스 메모리(Dynamic Random-Access Memory: DRAM)(2618) 및 판독 전용 메모리(Read-Only Memory: ROM)(2620)를 포함할 수 있다. 저장 서브시스템(2606) 및 캐시 메모리(2602)는 본 개시에 기술된 바와 같은 트랜잭션 및 블록과 연관된 세부사항과 같은 정보의 저장을 위해 사용될 수 있다. 프로세서(들)(2602)는 본 개시에 기술된 바와 같은 임의의 실시예의 단계 또는 기능성을 제공하는 데에 활용될 수 있다.
프로세서(들)(2602)는 또한 하나 이상의 사용자 인터페이스 입력 디바이스(2612), 하나 이상의 사용자 인터페이스 출력 디바이스(2614) 및 네트워크 인터페이스 서브시스템(2616)과 통신할 수 있다.
버스 서브시스템(2604)은 컴퓨팅 디바이스(2600)의 다양한 컴포넌트 및 서브시스템으로 하여금 의도된 바와 같이 서로 통신할 수 있게 하기 위한 메커니즘을 제공할 수 있다. 버스 서브시스템(2604)이 단일 버스로서 도식적으로 도시되나, 버스 서브시스템의 대안적인 실시예는 여러 버스를 활용할 수 있다.
네트워크 인터페이스 서브시스템(2616)은 다른 컴퓨팅 디바이스 및 네트워크에 인터페이스를 제공할 수 있다. 네트워크 인터페이스 서브시스템(2616)은 컴퓨팅 디바이스(2600)로부터 다른 시스템에 데이터를 송신하고, 이로부터 데이터를 수신하기 위한 인터페이스로서의 역할을 할 수 있다. 예를 들어, 네트워크 인터페이스 서브시스템(2616)은 데이터 기술자로 하여금 디바이스를 네트워크에 연결할 수 있게 할 수 있어서 데이터 기술자는 데이터 센터와 같은 원격 위치에 있으면서 디바이스에 데이터를 송신하고 디바이스로부터 데이터를 수신하는 것이 가능할 수 있다.
사용자 인터페이스 입력 디바이스(2612)는 하나 이상의 사용자 입력 디바이스, 예컨대 키보드; 포인팅(pointing) 디바이스, 예컨대 일체화된 마우스(mouse), 트랙볼(trackball), 터치패드(touchpad), 또는 그래픽스 태블릿(graphics tablet); 스캐너(scanner); 바코드(barcode) 스캐너; 디스플레이 내에 통합된 터치 스크린(touch screen); 오디오 입력 디바이스, 예컨대 음성 인식 시스템, 마이크(microphone); 및 다른 유형의 입력 디바이스를 포함할 수 있다. 일반적으로, 용어 "입력 디바이스"의 사용은 컴퓨팅 디바이스(2600)에 정보를 입력하기 위한 모든 가능한 유형의 디바이스 및 메커니즘을 포함하도록 의도된다.
하나 이상의 사용자 인터페이스 출력 디바이스(2614)는 디스플레이 서브시스템, 프린터, 또는 비시각적(non-visual) 디스플레이, 예컨대 오디오 출력 디바이스 등을 포함할 수 있다. 디스플레이 서브시스템은 음극선관(Cathode Ray Tube: CRT), 평판 디바이스(flat-panel device), 예컨대 액정 디스플레이(Liquid Crystal Display: LCD), 발광 다이오드(Light Emitting Diode: LED) 디스플레이, 또는 프로젝션(projection) 또는 다른 디스플레이 디바이스일 수 있다. 일반적으로, 용어 "출력 디바이스"의 사용은 컴퓨팅 디바이스(2600)로부터 정보를 출력하기 위한 모든 가능한 유형의 디바이스 및 메커니즘을 포함하도록 의도된다. 하나 이상의 사용자 인터페이스 출력 디바이스(2614)는, 예를 들어, 기술된 프로세스 및 거기에서의 변형을 수행하는 애플리케이션과의 사용자 상호작용을, 그러한 상호작용이 적절할 수 있는 경우에 수월하게 하기 위해 사용자 인터페이스를 제시하는 데에, 사용될 수 있다.
저장 서브시스템(2606)은 본 개시의 적어도 하나의 실시예의 기능성을 제공할 수 있는 기본적인 프로그래밍 및 데이터 구성체를 저장하기 위한 컴퓨터 판독가능 저장 매체를 제공할 수 있다. 애플리케이션(프로그램, 코드 모듈, 명령어)은, 하나 이상의 프로세서에 의해 실행되는 경우에, 본 개시의 하나 이상의 실시예의 기능성을 제공할 수 있고, 저장 서브시스템(2606) 내에 저장될 수 있다. 이들 애플리케이션 모듈 또는 명령어는 하나 이상의 프로세서(2602)에 의해 실행될 수 있다. 저장 서브시스템(2606)은 본 개시에 따라 사용되는 데이터를 저장하기 위한 저장소(repository)를 추가적으로 제공할 수 있다. 예를 들어, 주 메모리(2608) 및 캐시 메모리(2602)는 프로그램 및 데이터를 위한 휘발성 스토리지(volatile storage)를 제공할 수 있다. 지속적 스토리지(2610)는 프로그램 및 데이터를 위한 지속적(비휘발성(non-volatile)) 스토리지를 제공할 수 있고 플래시 메모리(flash memory), 하나 이상의 솔리드 스테이트 드라이브(solid state drive), 하나 이상의 자기적 하드 디스크 드라이브(magnetic hard disk drive), 연관된 탈거가능(removable) 매체를 가진 하나 이상의 플로피 디스크 드라이브(floppy disk drive), 연관된 탈거가능 매체를 가진 하나 이상의 광학 드라이브(optical drive)(가령 CD-ROM 또는 DVD 또는 블루레이(Blue-Ray)) 드라이브 및 다른 비슷한 저장 매체를 포함할 수 있다. 그러한 프로그램 및 데이터는 본 개시에 기술된 바와 같은 트랜잭션 및 블록과 연관된 데이터뿐만 아니라 본 개시에 기술된 바와 같은 하나 이상의 실시예의 단계를 수행하기 위한 프로그램을 포함할 수 있다.
컴퓨팅 디바이스(2600)는 휴대가능 컴퓨터 디바이스(portable computer device), 태블릿 컴퓨터(tablet computer), 워크스테이션(workstation), 또는 아래에 기술된 임의의 다른 디바이스를 포함하는 다양한 유형의 것일 수 있다. 추가적으로, 컴퓨팅 디바이스(2600)는 하나 이상의 포트(port)(가령, USB, 헤드폰 잭(headphone jack), 라이트닝 커넥터(Lightning connector) 등)를 통해서 컴퓨팅 디바이스(2600)에 연결될 수 있는 다른 디바이스를 포함할 수 있다. 컴퓨팅 디바이스(2600)에 연결될 수 있는 디바이스는 광섬유 커넥터(fibre-optic connector)를 수용하도록 구성된 복수의 포트를 포함할 수 있다. 따라서, 이 디바이스는 광학 신호를, 처리를 위해 디바이스를 컴퓨팅 디바이스(2600)에 연결하는 포트를 통해서 송신될 수 있는 전기 신호로 변환하도록 구성될 수 있다. 컴퓨터 및 네트워크의 늘 변화하는 성질로 인해, 도 11에 묘사된 컴퓨팅 디바이스(2600)의 설명은 디바이스의 바람직한 실시예를 예시하는 목적으로 단지 구체적인 예로서 의도된다. 도 11에 묘사된 시스템보다 더 많거나 더 적은 컴포넌트를 갖는 많은 다른 구성이 가능하다.
개요
이 명세서에서 우리는 디지털 트윈의 어레이에 의해 생성된 데이터를 저장하기 위한 머클 트리의 사용에 기반한 솔루션을 제시하였다.
디지털 트윈에 의해 생성된 정보를 저장하기 위해 공개 블록체인을 사용하는 것의 주요 이슈는 디지털 트윈에 의해 생성된 데이터의 양이 매우 크며, 공개 분산 원장 내에 그러한 거대한 데이터세트를 저장하는 것은 그것의 구조에 의해 부과되는 기술적 제한이 주어진다면 가능하지 않을 것이라는 사실이다.
이 명세서에서:
1. 우리는 DHT(Distributed Hash Table(분산된 해시 테이블)) 내에의 디지털 트윈의 세트에 의해 생성된 매우 많은 양의 정보의 저장 및 공개 블록체인 상에서의 머클 트리의 루트의 대응 값의 저장을 가능하게 하는 솔루션을 기술하였다.
2. 우리는 디지털 트윈의 세트에 의해 생성된 데이터의 존재 증명으로서의, 그리고 DHT의 어느 노드 내에 실제의 데이터가 저장되었는지를 식별하기 위한 방식으로서의 머클 트리 구조의 사용을 기술하였다.
3. 우리는 버퍼로부터 수신기에 송신되는 데이터를 위한 보안 및 신뢰성의 추가적인 계층을 도입하기 위해 미러링된 머클 트리의 개념을 기술하였다.
앞서 언급된 실시예는 발명을 한정하기보다는 예시한다는 점, 그리고 당업자는 부기된 청구항에 의해 정의된 바와 같은 발명의 범위로부터 벗어나지 않고서 많은 대안적인 실시예를 설계하는 것이 가능할 것이라는 점에 유의하여야 한다. 청구항에서, 괄호 안에 놓인 임의의 참조 부호는 청구항을 한정하는 것으로 해석되어서는 안 된다. 단어 “포함하는"(comprising) 및 "포함한다"(comprises), 그리고 유사한 것은, 전체적으로 명세서 또는 임의의 청구항 내에 열거된 것이 아닌 요소 또는 단계의 존재를 배제하지 않는다. 본 명세서에서, "comprises"는 "includes or consists of"를 의미하고 "comprising"은 "including or consisting of"를 의미한다. 요소의 단수형 참조는 그러한 요소의 복수형 참조를 배제하지 않으며 반대로도 마찬가지이다. 발명은 몇 개의 구별되는 요소를 포함하는 하드웨어에 의해서, 그리고 적절하게 프로그래밍된 컴퓨터에 의해서 구현될 수 있다. 몇 개의 수단을 나열하는 디바이스 청구항에서, 이들 수단 중 몇 개는 하드웨어의 동일한 한 아이템에 의해 체현될(embodied) 수 있다. 상호간에 상이한 종속 청구항에서 어떤 조치가 상술된다는 단순한 사실이 이들 조치의 조합이 이익이 되도록 사용될 수 없음을 나타내지는 않는다.

Claims (15)

  1. 블록체인 네트워크(blockchain network)를 위한 컴퓨터 구현형(computer-implemented) 방법으로서,
    디지털 트윈의 세트로부터 데이터를 수신하는 단계와,
    액세스가능한 분산된 저장 시스템 내에 상기 데이터를 저장하는 단계와,
    상기 디지털 트윈의 세트로부터 수신된 상기 데이터의 압축된 버전(compressed version)을 나타내는 데이터 구조의 다이제스트(digest)를 계산하는 단계와,
    블록체인 상의 저장을 위해 상기 다이제스트를 송신하는 단계를 포함하는,
    컴퓨터 구현형 방법.
  2. 제1항에 있어서,
    상기 데이터 구조는 상기 액세스가능한 분산된 저장 시스템의 어느 노드 내에 상기 데이터가 저장되었는지를 식별하도록 구성된,
    컴퓨터 구현형 방법.
  3. 제1항 또는 제2항에 있어서,
    상기 데이터 구조는 상기 액세스가능한 분산된 저장 시스템 내에 저장된,
    컴퓨터 구현형 방법.
  4. 제1항 내지 제3항 중 어느 한 항에 있어서,
    상기 데이터 구조의 다이제스트는 상기 블록체인 상의 저장을 위한 포워딩(forwarding) 전에 버퍼에 송신되되, 상기 버퍼는 상기 데이터 구조의 다이제스트에 의해 나타내어진 정보의 샘플링 빈도를 선택하는,
    컴퓨터 구현형 방법.
  5. 제4항에 있어서,
    상기 버퍼는 상기 다이제스트 정보를 포함한 메시지를 생성하고 상기 블록체인 상의 저장을 위해 보안 채널을 통해서 상기 메시지를 송신하는,
    컴퓨터 구현형 방법.
  6. 제5항에 있어서,
    수신기가 상기 버퍼로부터 상기 메시지를 수신하고 상기 분산된 저장 시스템에 액세스하여 상기 메시지를 확인하는,
    컴퓨터 구현형 방법.
  7. 제6항에 있어서,
    확인 후에, 상기 수신기는 상기 블록체인 상의 저장을 위해 상기 데이터 구조의 다이제스트를 송신하는,
    컴퓨터 구현형 방법.
  8. 제1항 내지 제3항 중 어느 한 항에 있어서,
    상기 디지털 트윈의 세트로부터 수신된 상기 데이터로부터 도출된 제2 다이제스트를 갖는 제2 데이터 구조를 더 포함하는,
    컴퓨터 구현형 방법.
  9. 제8항에 있어서,
    각각의 데이터 구조로부터의 다이제스트들은 상기 액세스가능한 분산된 저장 시스템 내에 저장되는,
    컴퓨터 구현형 방법.
  10. 제9항에 있어서,
    각각의 데이터 구조로부터의 다이제스트들은 제4항의 버퍼 내에 저장되고, 상기 버퍼는 두 다이제스트들 모두를 사용하여 상기 분산된 저장 시스템에 액세스하여 상기 다이제스트들이 동일한지를 확증하고, 동일한 경우, 상기 버퍼는 블록체인 상의 저장을 위해 상기 다이제스트들 중 하나를 송신하는,
    컴퓨터 구현형 방법.
  11. 제10항에 있어서,
    상기 다이제스트들이 상이하다고 밝혀지면, 상기 다이제스트들은 어느 디지털 트윈이 상응하고 있지 않은지를 검출하기 위해 확인되는,
    컴퓨터 구현형 방법.
  12. 제1항 내지 제3항 중 어느 한 항에 있어서,
    상기 분산된 저장 시스템은 분산된 해시 테이블(distributed hash table)을 포함하고, 상기 데이터 구조의 다이제스트는 상기 디지털 트윈의 세트로부터 수신된 상기 데이터로부터 도출된 머클 트리(Merkle tree)의 루트(root)인,
    컴퓨터 구현형 방법.
  13. 실행되는 경우, 제1항 내지 제12항 중 어느 한 항의 방법을 수행하도록 하나 이상의 프로세서를 구성하는 컴퓨터 실행가능 명령어를 포함하는 컴퓨터 판독가능 저장 매체.
  14. 전자 디바이스로서,
    인터페이스 디바이스와,
    상기 인터페이스 디바이스에 커플링된(coupled) 하나 이상의 프로세서와,
    상기 하나 이상의 프로세서에 커플링된 메모리를 포함하되, 상기 메모리 상에는, 실행되는 경우, 제1항 내지 제12항 중 어느 한 항의 방법을 수행하도록 상기 하나 이상의 프로세서를 구성하는 컴퓨터 실행가능 명령어가 저장된,
    전자 디바이스.
  15. 제1항 내지 제12항 중 어느 한 항의 방법을 수행하도록 구성된 시스템으로서,
    디지털 트윈의 세트와,
    상기 디지털 트윈의 세트로부터의 데이터를 저장하기 위한 액세스가능한 분산된 저장 시스템과,
    상기 디지털 트윈의 세트로부터 수신된 상기 데이터의 압축된 버전을 나타내는 데이터 구조의 다이제스트를 계산하기 위한 프로세서와,
    블록체인 상의 저장을 위해 상기 다이제스트를 송신하기 위한 송신기를 포함하는,
    시스템.
KR1020207013361A 2017-11-02 2018-10-23 블록체인을 디지털 트윈의 세트에 연계하기 위한 컴퓨터 구현형 시스템 및 방법 KR102575120B1 (ko)

Applications Claiming Priority (7)

Application Number Priority Date Filing Date Title
GB1718182.7 2017-11-02
GBGB1718182.7A GB201718182D0 (en) 2017-11-02 2017-11-02 Computer-implemented system and method
GBGB1719212.1A GB201719212D0 (en) 2017-11-20 2017-11-20 Computer-implemented system and method
GB1719212.1 2017-11-20
GB1804744.9 2018-03-23
GBGB1804744.9A GB201804744D0 (en) 2018-03-23 2018-03-23 Computer-implemented system and method
PCT/IB2018/058258 WO2019087007A1 (en) 2017-11-02 2018-10-23 Computer-implemented systems and methods for linking a blockchain to a set of digital twins

Publications (2)

Publication Number Publication Date
KR20200081391A true KR20200081391A (ko) 2020-07-07
KR102575120B1 KR102575120B1 (ko) 2023-09-07

Family

ID=64051640

Family Applications (3)

Application Number Title Priority Date Filing Date
KR1020207013361A KR102575120B1 (ko) 2017-11-02 2018-10-23 블록체인을 디지털 트윈의 세트에 연계하기 위한 컴퓨터 구현형 시스템 및 방법
KR1020207013421A KR102586278B1 (ko) 2017-11-02 2018-10-23 블록체인을 디지털 트윈에 연결하기 위한 컴퓨터 구현 시스템 및 방법
KR1020207013416A KR102606945B1 (ko) 2017-11-02 2018-10-23 블록체인 기술과 디지털 트윈을 결합하기 위한 컴퓨터 구현 시스템 및 방법

Family Applications After (2)

Application Number Title Priority Date Filing Date
KR1020207013421A KR102586278B1 (ko) 2017-11-02 2018-10-23 블록체인을 디지털 트윈에 연결하기 위한 컴퓨터 구현 시스템 및 방법
KR1020207013416A KR102606945B1 (ko) 2017-11-02 2018-10-23 블록체인 기술과 디지털 트윈을 결합하기 위한 컴퓨터 구현 시스템 및 방법

Country Status (7)

Country Link
US (5) US11722302B2 (ko)
EP (3) EP3704607A1 (ko)
JP (6) JP7297742B2 (ko)
KR (3) KR102575120B1 (ko)
CN (3) CN111295659A (ko)
SG (3) SG11202004052RA (ko)
WO (3) WO2019087006A1 (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US12026181B2 (en) 2020-12-16 2024-07-02 Electronics And Telecommunications Research Institute Network environment synchronization apparatus and method

Families Citing this family (25)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110378691A (zh) * 2019-06-18 2019-10-25 重庆金融资产交易所有限责任公司 基于部署中心的区块链部署方法、装置和计算机设备
CN110380893B (zh) * 2019-06-19 2022-08-12 深圳壹账通智能科技有限公司 通讯故障分析方法、装置及区块链通讯平台
WO2021061800A1 (en) * 2019-09-23 2021-04-01 Avery Dennison Retail Information Services, Llc Systems and methods of digital triggers and digital twins
US11263337B2 (en) * 2020-02-11 2022-03-01 International Business Machines Corporation Continuous engineering migration of digital twin files from private to open sourced
EP3945378A1 (de) * 2020-07-27 2022-02-02 Siemens Aktiengesellschaft Digital-twin basierte prozesssteuerung in einem internet-of-things-netzwerk
CN111967062A (zh) * 2020-08-21 2020-11-20 支付宝(杭州)信息技术有限公司 基于区块链的数据处理系统、方法及装置
CN112711631B (zh) * 2020-11-27 2022-07-08 国网山东省电力公司营销服务中心(计量中心) 数字孪生信息同步方法、系统、可读存储介质及设备
US12021997B2 (en) * 2020-12-18 2024-06-25 VeriTX Corp. Blockchain tokenization of aircraft and other complex machinery
US20220237111A1 (en) * 2021-01-23 2022-07-28 Dido Solutions, Inc. Distributed immutable data object testing
CN113344131A (zh) * 2021-06-30 2021-09-03 商汤国际私人有限公司 网络训练方法及装置、电子设备和存储介质
KR102397921B1 (ko) * 2021-08-23 2022-05-13 한화시스템(주) 디지털 트윈 기술 및 운용 데이터를 이용한 항공기의 예방 정비 정보 제공 시스템 및 그 방법
KR102390279B1 (ko) * 2021-08-31 2022-04-22 한화시스템(주) 디지털 트윈 기술을 활용한 항공기 조종석 장비 최적 위치 제공 시스템 및 그 방법
CN115225662B (zh) * 2021-09-22 2023-09-19 北京邮电大学 一种基于数字孪生和区块链的高效可信能源数据处理方法
CN113965398B (zh) * 2021-10-29 2022-12-27 电子科技大学 一种车联网场景下基于孪生区块链的车辆身份认证方法
US20230259934A1 (en) * 2022-02-16 2023-08-17 Adp, Inc. Classifying transactions in a web service environment
CN114266864B (zh) * 2022-03-02 2022-07-29 杭州华鲤智能科技有限公司 一种对实物的真实状态变化进行存证的方法
CN114943109A (zh) * 2022-05-24 2022-08-26 天津天河云筑工科技有限公司 基于bim的工程项目数字化交付方法及系统
CN115189908B (zh) * 2022-05-24 2024-05-14 安世亚太科技股份有限公司 一种基于网络数字孪生体的随机攻击生存性评估方法
CN115314513B (zh) * 2022-06-16 2023-09-19 北京邮电大学 基于区块链的信任孪生方法及相关设备
CN115102747B (zh) * 2022-06-17 2024-03-29 中铁水利信息科技有限公司 基于数字孪生的互联网管理平台
JP7320311B1 (ja) * 2022-07-27 2023-08-03 株式会社bajji 取引システム、取引方法、及び管理サーバ
CN115484032A (zh) * 2022-09-13 2022-12-16 中国联合网络通信集团有限公司 数字孪生数据安全存储方法、装置、电子设备及存储介质
CN115238529B (zh) * 2022-09-23 2022-12-16 北自所(北京)科技发展股份有限公司 基于数字孪生的化纤长丝工艺溯源方法、装置及存储介质
CN115688491B (zh) * 2022-12-30 2023-03-10 长江水利委员会长江科学院 一种基于区块链的水利数字孪生仿真模拟方法
US11899516B1 (en) * 2023-07-13 2024-02-13 T-Mobile Usa, Inc. Creation of a digital twin for auto-discovery of hierarchy in power monitoring

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105812126A (zh) * 2016-05-19 2016-07-27 齐鲁工业大学 健康区块链数据加密密钥的轻量级备份与高效恢复方法
US20170284974A1 (en) * 2016-03-31 2017-10-05 General Electric Company System for sensing and locating delamination
EP3382616A1 (de) * 2017-03-31 2018-10-03 Siemens Aktiengesellschaft Verfahren und vorrichtung zum rechnergestützten bereitstellen eines sicherheitsgeschützten digitalen zwillings

Family Cites Families (84)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4918589A (en) 1985-10-31 1990-04-17 Allen-Bradley Company, Inc. Method and apparatus for linking processors in a hierarchical control system
US5034686A (en) 1986-02-03 1991-07-23 The Boeing Company Weapon interface system evaluation apparatus and method
GB2338325B (en) 1994-10-03 2000-02-09 Univ Westminster Data processing method and apparatus for parallel discrete event simulation
JP3734946B2 (ja) * 1997-12-15 2006-01-11 松下電器産業株式会社 データ送出装置、データ受信装置及びデータ伝送装置
JP2006279179A (ja) * 2005-03-28 2006-10-12 Toshio Kato データ2重化を活用した暗号処理方式
JP5101965B2 (ja) * 2007-09-25 2012-12-19 京セラ株式会社 受信装置
US7802048B2 (en) * 2008-09-15 2010-09-21 Raytheon Company Smart translator box for AGM-65 aircraft “Maverick” analog interface to MIL-STD-1760 store digital interface
US9449090B2 (en) * 2009-05-29 2016-09-20 Vizio Inscape Technologies, Llc Systems and methods for addressing a media database using distance associative hashing
US9823133B2 (en) 2009-07-20 2017-11-21 Applied Materials, Inc. EMI/RF shielding of thermocouples
US20110157473A1 (en) * 2009-12-30 2011-06-30 Hoon Choi Method, apparatus, and system for simultaneously previewing contents from multiple protected sources
US9569771B2 (en) * 2011-04-29 2017-02-14 Stephen Lesavich Method and system for storage and retrieval of blockchain blocks using galois fields
US8749361B2 (en) * 2011-09-15 2014-06-10 Symantec Corporation Method and system for tactile signaled authentication
US20140088927A1 (en) * 2012-09-27 2014-03-27 Siemens Product Lifecycle Management Software Inc. Systems and methods for simulation of virtual model
US9336141B2 (en) * 2013-03-13 2016-05-10 Cloud Physics, Inc. Hash-based spatial sampling for efficient cache utility curve estimation and cache allocation
US9418020B2 (en) * 2013-03-13 2016-08-16 Cloud Physics, Inc. System and method for efficient cache utility curve construction and cache allocation
US9426185B1 (en) * 2013-06-03 2016-08-23 Ayla Networks, Inc. Proximity based communication with embedded system
US20180094953A1 (en) 2016-10-01 2018-04-05 Shay C. Colson Distributed Manufacturing
US10061791B2 (en) * 2013-10-30 2018-08-28 Microsoft Technology Licensing, Llc Data management for connected devices
WO2015144971A1 (en) 2014-03-27 2015-10-01 Nokia Technologies Oy Method and apparatus for automatic inter-device authorisation
US9672499B2 (en) 2014-04-02 2017-06-06 Modernity Financial Holdings, Ltd. Data analytic and security mechanism for implementing a hot wallet service
US20160098723A1 (en) 2014-10-01 2016-04-07 The Filing Cabinet, LLC System and method for block-chain verification of goods
US9749297B2 (en) 2014-11-12 2017-08-29 Yaron Gvili Manicoding for communication verification
US20160164884A1 (en) 2014-12-05 2016-06-09 Skuchain, Inc. Cryptographic verification of provenance in a supply chain
US10484168B2 (en) * 2015-03-02 2019-11-19 Dell Products L.P. Methods and systems for obfuscating data and computations defined in a secure distributed transaction ledger
JP6364132B2 (ja) * 2015-03-31 2018-07-25 ナスダック, インコーポレイテッドNasdaq, Inc. ブロックチェーン取引記録のシステムおよび方法
KR101712726B1 (ko) * 2015-04-27 2017-03-14 갤럭시아커뮤니케이션즈 주식회사 해시 코드를 이용하는 콘텐츠의 무결성 및 유효성 검증 방법 및 시스템
WO2016191176A1 (en) 2015-05-22 2016-12-01 Nix John A Cryptographic unit for public key infrastructure (pki) operations
US11080665B1 (en) * 2015-06-08 2021-08-03 Blockstream Corporation Cryptographically concealing amounts and asset types for independently verifiable transactions
JP6636058B2 (ja) * 2015-07-02 2020-01-29 ナスダック, インコーポレイテッドNasdaq, Inc. 分散トランザクションデータベースにおける出所保証のシステムおよび方法
US10339523B2 (en) * 2015-07-14 2019-07-02 Fmr Llc Point-to-point transaction guidance apparatuses, methods and systems
US10402792B2 (en) * 2015-08-13 2019-09-03 The Toronto-Dominion Bank Systems and method for tracking enterprise events using hybrid public-private blockchain ledgers
US11398915B2 (en) 2016-08-26 2022-07-26 Samsung Electronics Co., Ltd. Apparatus and method for two-way authentication
DE102015217855A1 (de) 2015-09-17 2017-03-23 Siemens Aktiengesellschaft Prüfung einer Konsistenz zwischen Referenzdaten eines Fertigungsobjektes und Daten eines digitalen Zwillings des Fertigungsobjektes
GB2557556A (en) 2015-11-25 2018-06-20 Walmart Apollo Llc Unmanned aerial delivery to secure location
JP6608256B2 (ja) * 2015-11-26 2019-11-20 株式会社bitFlyer Blockchain 電子データの存在証明プログラムおよび存在証明サーバ
EP3384448B1 (en) * 2015-11-30 2020-10-14 Shapeshift AG Systems and methods for improving security in blockchain-asset exchange
KR101678795B1 (ko) * 2015-11-30 2016-11-22 전삼구 블록체인 인증을 이용하는 IoT 기반 사물 관리 시스템 및 방법
US10805393B2 (en) 2015-12-02 2020-10-13 Olea Networks, Inc. System and method for data management structure using auditable delta records in a distributed environment
US10176481B2 (en) 2015-12-21 2019-01-08 Beston Technologies Pty Ltd Method and apparatus for managing and providing provenance of product using blockchain
US9610476B1 (en) 2016-05-02 2017-04-04 Bao Tran Smart sport device
WO2017139666A1 (en) 2016-02-11 2017-08-17 Daniel Conner Scalable data verification with immutable data storage
KR20170109300A (ko) * 2016-03-21 2017-09-29 (주)제이하우스 지식재산권(ipr)의 스타트업을 지원하는 방법
AU2017240796A1 (en) 2016-03-31 2018-10-25 Clause, Inc. System and method for creating and executing data-driven legal contracts
ES2956770T3 (es) 2016-03-31 2023-12-27 Aglive Int Pty Ltd Sistema de información para la verificación de artículos
US10628537B2 (en) * 2016-04-12 2020-04-21 Dassault Systemes Simulia Corp. Simulation augmented reality system for emergent behavior
US10152760B2 (en) 2016-04-24 2018-12-11 Christoph Adam Kohlhepp Methods for an autonomous robotic manufacturing network
US10257270B2 (en) 2016-04-26 2019-04-09 International Business Machines Corporation Autonomous decentralized peer-to-peer telemetry
KR101701131B1 (ko) * 2016-04-28 2017-02-13 주식회사 라피 이종간 블록체인 연결을 이용한 데이터 기록/검증 방법 및 시스템
GB201607476D0 (en) 2016-04-29 2016-06-15 Eitc Holdings Ltd Operating system for blockchain IOT devices
US10046228B2 (en) * 2016-05-02 2018-08-14 Bao Tran Smart device
US10532268B2 (en) 2016-05-02 2020-01-14 Bao Tran Smart device
US10022613B2 (en) * 2016-05-02 2018-07-17 Bao Tran Smart device
US20230186201A1 (en) * 2016-05-09 2023-06-15 Strong Force Iot Portfolio 2016, Llc Industrial digital twin systems providing neural net-based adjustment recommendation with data relevant to role taxonomy
US11774944B2 (en) * 2016-05-09 2023-10-03 Strong Force Iot Portfolio 2016, Llc Methods and systems for the industrial internet of things
US20200348662A1 (en) * 2016-05-09 2020-11-05 Strong Force Iot Portfolio 2016, Llc Platform for facilitating development of intelligence in an industrial internet of things system
US20210157312A1 (en) * 2016-05-09 2021-05-27 Strong Force Iot Portfolio 2016, Llc Intelligent vibration digital twin systems and methods for industrial environments
US20200225655A1 (en) * 2016-05-09 2020-07-16 Strong Force Iot Portfolio 2016, Llc Methods, systems, kits and apparatuses for monitoring and managing industrial settings in an industrial internet of things data collection environment
CN106022681A (zh) 2016-05-13 2016-10-12 杭州云象网络技术有限公司 一种基于区块链的物流追踪方法
EP3458985A1 (en) 2016-05-17 2019-03-27 Nokia Technologies Oy Method, device and system for verifying user health data
WO2017201489A1 (en) 2016-05-20 2017-11-23 Moog Inc. Secure and traceable manufactured parts
GB201609450D0 (en) 2016-05-27 2016-07-13 Chain Of Things Ltd Device security chain of proof
US11144911B2 (en) 2016-06-20 2021-10-12 Intel Corporation Technologies for device commissioning
EP3472994B1 (en) 2016-06-20 2020-10-21 Innogy Innovation Gmbh Software defined networking system
US10972448B2 (en) 2016-06-20 2021-04-06 Intel Corporation Technologies for data broker assisted transfer of device ownership
US10079881B2 (en) 2016-06-30 2018-09-18 International Business Machines Corporation Device self-servicing in an autonomous decentralized peer-to-peer environment
US11514448B1 (en) * 2016-07-11 2022-11-29 Chicago Mercantile Exchange Inc. Hierarchical consensus protocol framework for implementing electronic transaction processing systems
KR101795695B1 (ko) 2016-07-14 2017-12-01 주식회사 코인플러그 메신저 서비스를 통하여 송수신하는 데이터에 대한 기록 서비스 및 검증 서비스를 제공하는 방법, 및 이를 이용한 서버
US11907406B2 (en) 2016-08-01 2024-02-20 Cryptowerk Corp. Computer-implemented method and system of tamper-evident recording of a plurality of service data items
WO2018037148A1 (en) 2016-08-22 2018-03-01 Nokia Technologies Oy Method and apparatus for blockchain verification of healthcare prescriptions
CN110249350A (zh) 2016-09-20 2019-09-17 河谷控股Ip有限责任公司 经由样本跟踪链进行样本跟踪、系统和方法
US10938571B2 (en) 2016-10-26 2021-03-02 Acronis International Gmbh System and method for verification of data transferred among several data storages
WO2018089843A1 (en) 2016-11-10 2018-05-17 Saavha, Inc. Secured auditing system based on verified hash algorithm
US10554746B2 (en) * 2016-11-14 2020-02-04 International Business Machines Corporation Decentralized immutable storage blockchain configuration
JP6533771B2 (ja) 2016-11-15 2019-06-19 富士通株式会社 通信方法、装置、及びプログラム
US10346762B2 (en) * 2016-12-21 2019-07-09 Ca, Inc. Collaborative data analytics application
CN106815526A (zh) * 2016-12-27 2017-06-09 苏州春禄电子科技有限公司 一种基于区块链技术的安全型数据库存储系统
US20170173262A1 (en) 2017-03-01 2017-06-22 François Paul VELTZ Medical systems, devices and methods
CN107103054B (zh) * 2017-04-12 2019-03-26 北京航空航天大学 一种私有区块链的智能合约异步执行存储系统与实现方法
CN107122985A (zh) 2017-05-09 2017-09-01 广东工业大学 一种基于物联网和区块链的农产品供应链追溯系统
CN107194822A (zh) 2017-05-25 2017-09-22 河南嘉禾智慧农业科技有限公司 一种基于区块链的农业数据共享系统及方法
CN107301501B (zh) 2017-06-07 2021-03-09 北京汇通金财信息科技有限公司 一种基于区块链技术的分布式发电质量评价方法和装置
CN107301522A (zh) * 2017-06-26 2017-10-27 深圳前海华深安信物联技术有限公司 一种基于区块链的仓单系统及使用方法
CN107240018A (zh) * 2017-07-25 2017-10-10 成都励睿德企业管理有限公司 一种用于支付区块链网络中交易费用的方法和系统
US10469248B2 (en) 2017-10-17 2019-11-05 Amrican Express Travel Related Services Company, Inc. API request and response balancing and control on blockchain

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20170284974A1 (en) * 2016-03-31 2017-10-05 General Electric Company System for sensing and locating delamination
CN105812126A (zh) * 2016-05-19 2016-07-27 齐鲁工业大学 健康区块链数据加密密钥的轻量级备份与高效恢复方法
EP3382616A1 (de) * 2017-03-31 2018-10-03 Siemens Aktiengesellschaft Verfahren und vorrichtung zum rechnergestützten bereitstellen eines sicherheitsgeschützten digitalen zwillings

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
Burkhard Blechschmidt, 'Digital Twin on Blockchain, Enabling the Circular Economy' *

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US12026181B2 (en) 2020-12-16 2024-07-02 Electronics And Telecommunications Research Institute Network environment synchronization apparatus and method

Also Published As

Publication number Publication date
US20200295936A1 (en) 2020-09-17
EP3704607A1 (en) 2020-09-09
JP7405745B2 (ja) 2023-12-26
CN111316279A (zh) 2020-06-19
US11652634B2 (en) 2023-05-16
US20240080196A1 (en) 2024-03-07
EP3704605A1 (en) 2020-09-09
JP7297742B2 (ja) 2023-06-26
KR20200081394A (ko) 2020-07-07
US11722302B2 (en) 2023-08-08
EP3704606A1 (en) 2020-09-09
CN111295660A (zh) 2020-06-16
KR102586278B1 (ko) 2023-10-11
KR102606945B1 (ko) 2023-11-29
JP2024015396A (ja) 2024-02-01
US12010233B2 (en) 2024-06-11
JP2021501935A (ja) 2021-01-21
SG11202004052RA (en) 2020-05-28
SG11202004051QA (en) 2020-05-28
WO2019087007A1 (en) 2019-05-09
US20200295942A1 (en) 2020-09-17
JP2023126499A (ja) 2023-09-07
WO2019087006A1 (en) 2019-05-09
WO2019087008A1 (en) 2019-05-09
CN111295660B (zh) 2024-05-28
JP2021502017A (ja) 2021-01-21
CN111295659A (zh) 2020-06-16
KR102575120B1 (ko) 2023-09-07
US20200295919A1 (en) 2020-09-17
JP2021502018A (ja) 2021-01-21
US20230318836A1 (en) 2023-10-05
SG11202004053SA (en) 2020-05-28
KR20200081395A (ko) 2020-07-07
JP2023107918A (ja) 2023-08-03

Similar Documents

Publication Publication Date Title
KR102575120B1 (ko) 블록체인을 디지털 트윈의 세트에 연계하기 위한 컴퓨터 구현형 시스템 및 방법
CN111416704B (zh) 基于区块链的数据处理方法、装置及系统
Lone et al. Forensic-chain: Blockchain based digital forensics chain of custody with PoC in Hyperledger Composer
JP2022549581A (ja) Dag構造のブロックチェーンにおいてブロックの連続的順序を決定するためのコンピューティング・システム、方法、非一時的コンピュータ可読媒体及びコンピュータ・プログラム
EP3742321A1 (en) Storage of measurement datasets and distributed databases
US20160048703A1 (en) Securing integrity and consistency of a cloud storage service with efficient client operations
CN111782551B (zh) 针对区块链项目的测试方法、装置及计算机设备
Li et al. A secure, reliable and low-cost distributed storage scheme based on blockchain and IPFS for firefighting IoT data
Lu et al. Combining smart construction objects–enabled blockchain oracles and signature techniques to ensure information authentication and integrity in construction
CN114298699B (zh) 非同质化通证的生成方法、获取方法及装置
CN111078569A (zh) 光学字符识别应用的测试方法、装置及存储介质
CN116070252B (zh) 工业互联网节点的批量文件处理方法、装置、设备和介质
Yang et al. Multimedia security in laboratory system based on cloud platform
CN117240739A (zh) 共识算法的测试方法、装置、电子设备及存储介质
Zhao et al. Rake: Semantics assisted network-based tracing framework
Reghunathan Integrating Decentralized Ledger Technologies with the Internet of Things (IoT) to handle Operational Maintenance Data
BATE Auditable Data Provenance in Streaming Data Processing
WO2024042153A1 (en) Method and system for improving quality and accuracy of data of plurality of digital twins interacting in a computer simulated collaborative environment over a distributed network
Ramos San Juan Development of a web service for managing the storing of encrypted data in a public distributed ledger

Legal Events

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