KR20200013206A - Freight booking system and method based on blockchains - Google Patents

Freight booking system and method based on blockchains Download PDF

Info

Publication number
KR20200013206A
KR20200013206A KR1020180088234A KR20180088234A KR20200013206A KR 20200013206 A KR20200013206 A KR 20200013206A KR 1020180088234 A KR1020180088234 A KR 1020180088234A KR 20180088234 A KR20180088234 A KR 20180088234A KR 20200013206 A KR20200013206 A KR 20200013206A
Authority
KR
South Korea
Prior art keywords
transaction
freight
consensus
node
block
Prior art date
Application number
KR1020180088234A
Other languages
Korean (ko)
Inventor
임장순
Original Assignee
임장순
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 임장순 filed Critical 임장순
Priority to KR1020180088234A priority Critical patent/KR20200013206A/en
Publication of KR20200013206A publication Critical patent/KR20200013206A/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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q50/00Systems or methods specially adapted for specific business sectors, e.g. utilities or tourism
    • G06Q50/28Logistics, e.g. warehousing, loading, distribution or shipping
    • 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/083Shipping

Landscapes

  • Business, Economics & Management (AREA)
  • Engineering & Computer Science (AREA)
  • Economics (AREA)
  • General Business, Economics & Management (AREA)
  • Theoretical Computer Science (AREA)
  • Human Resources & Organizations (AREA)
  • Marketing (AREA)
  • Operations Research (AREA)
  • General Physics & Mathematics (AREA)
  • Strategic Management (AREA)
  • Tourism & Hospitality (AREA)
  • Physics & Mathematics (AREA)
  • Entrepreneurship & Innovation (AREA)
  • Quality & Reliability (AREA)
  • Development Economics (AREA)
  • Health & Medical Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Primary Health Care (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

The present invention relates to a freight transportation reservation system and a method thereof. In particular, a blockchain technology is used in the invention. In the invention, to receive a predetermined transportation service by using a freight transportation reservation system (1000) built by a service provider, a freight transportation subscriber (100), a consignee (200), and a freight carrier (300) individually need to download, to smartphones (150, 250, 350) thereof, an application (450) provided by a transportation reservation service provider and sign up for a membership. The service of this invention is provided by allowing customers to be connected, on the web, to an operating server (400) of the service provider through the application (450). A smart contract for transportation reservation is also made on the web. When freight is safely transported to the consignee (200), the operating server (400) automatically pays the transaction amount to the freight carrier (300) wherein the transaction amount is paid by points. A part of the transaction amount is evenly distributed to freight transportation-related groups and automatically paid thereto, thereby being capable of being used for the public services of the groups.

Description

블록체인 기반의 화물예약시스템 및 방법{Freight booking system and method based on blockchains}Freight booking system and method based on blockchains}

이 발명은 블록체인 기술을 이용하여, 화물예약시장 안에서 서로 다른 이해관계를 갖는 조직들(화물운송업자, 화물 운송예약을 자주 의뢰하는 기업체, 화물운송노조, 화물운송협회) 사이에 컨소시엄 블록체인 네트워크를 구성하고, 스마트계약(smart contract)을 활용하여 신뢰성있는 운송비용 지급체계와 컨소시엄 조직 사이의 거래 수수료를 공동분배하고 운송단가를 합의하여, 화물운송예약을 하는 시스템 및 방법에 관한 것이다. The invention uses blockchain technology to build a consortium blockchain network between organizations with different interests in the freight reservation market (freight forwarders, companies that frequently request freight forwarding, freight forwarding unions, freight forwarding associations). The present invention relates to a system and a method for making a freight transportation reservation by constructing and using a smart contract to co-distribute a transaction fee between a reliable transportation cost payment system and a consortium organization and agree on a freight cost.

일반적으로 블록체인 네트워크에서 거래가 일어나면, 블록체인(20)을 구성하는 모든 시스템 구성원들의 합의를 통해 거래가 정당한지, 정당하지 않은지 판별하여 정당하다면, 거래는 새롭게 생성된 블록(10)에 포함되어 시스템의 블록체인(20)에 추가된다. 블록체인(20)은 활용도에 따라 공적 블록체인(public blockchain), 컨소시엄 블록체인(consocium blockchain), 사적 블록체인(private blockchain)의 세 종류로 나누어 진다.In general, when a transaction takes place in the blockchain network, the transaction is included in the newly created block 10 to determine whether the transaction is just or not through agreement of all system members constituting the blockchain 20. It is added to the blockchain 20. The blockchain 20 is divided into three types according to the utilization: a public blockchain, a consocium blockchain, and a private blockchain.

공적 블록체인은 불특정 다수가 참여할 수 있는 블록체인이고, 비트코인(Bitcoin)과 이더리움(Ethereum)이 대표적이다. The public blockchain is a blockchain in which an unspecified majority can participate, and Bitcoin and Ethereum are representative.

사적 블록체인과 컨소시엄 블록체인은 허가된 조직 또는 사용자만 참여할 수 있는 형태의 블록체인이다. 그리고 사적 블록체인의 경우 단일 조직에서 구성된 블록체인 네트워크이다. Private blockchains and consortium blockchains are blockchains in which only authorized organizations or users can participate. And in the case of private blockchain, it is a blockchain network constructed in a single organization.

이에 반해, 컨소시엄 블록체인은 특정된 여러 조직 사이의 신뢰성을 위해 구성된 블록체인 네트워크이다. 대표적으로는 IBM의 Hyperledger가 있다. 이 발명의 블록체인(20)도 여기에 해당한다. Consortium blockchains, on the other hand, are blockchain networks configured for reliability between specified organizations. One example is IBM's Hyperledger. The blockchain 20 of this invention also corresponds to this.

그리고 컨소시엄 블록체인에서 채택하는 합의방식 - 블록생성 규칙 - 의 경우 비경쟁방식 가운데 BFT(Byzantine Fault Tolerance)와 PBFT(practical Byzintine fault tolerance)와 같은 합의 알고리즘 방식을 사용한다. 특히 BFT 합의 알고리즘 방식에서는 n개의 합의노드 가운데 (n-1)/3개 이하의 합의노드가 악의적인 행동을 하여도, 합의를 정상적으로 끌어낼 수 있는 합의규칙이다. In the case of the consensus blockchain adopted by the consortium blockchain, the consensus blockchain uses consensus algorithms such as Byzantine Fault Tolerance (BFT) and Practical Byzintine Fault Tolerance (PBFT). In particular, in the BFT consensus algorithm method, even if (n-1) / 3 or less consensus nodes out of n consensus nodes act malicious, they can draw consensus normally.

한편, 이 분야의 종래 기술들이 안고 있는 문제점을 살펴보면, 현재 화물예약 및 중개시장의 경우 운송의뢰자가 중개업자를 통해 서버로 운송의뢰를 등록하고, 서버에 올라온 의뢰건들을 화물운송자들이 화물중개프로그램을 통하여 계약하는 형태로 운송예약시스템이 운영되고 있고, 특히 중앙서버의 경우 중개업자가 단독적으로 운영하기 때문에 중개업자가 운송의뢰등록, 단가와 수수료책정에 대한 권한을 독점하고 있다. 그래서 실제 화물중개시장에서 중개업자들은 이러한 권한을 남용하여 수수료를 심하게 올린다거나 의뢰자는 10만원에 의뢰하였으나, 중개업자가 5만원에 올려서 차익을 본다거나 하는 일들이 벌어지고 있다. 이로 인해 운전자들은 수수료를 굉장히 많이 지급하게 되므로써 일에 대한 제대로 된 보상을 받지 못하게 되는 경우가 비일비재하였다. On the other hand, if you look at the problems of the prior art in this field, in the current cargo reservation and brokerage market, the transport client registers the transport request to the server through the broker, the freight forwarders through the cargo brokerage program As the contract is operated, the transportation reservation system is operated. Especially, the central server is operated exclusively by the broker, so the broker monopolizes the authority to register the transport request, set the unit price and the fee. So, in the real brokerage market, brokers have abused this authority and raised commissions severely, or the client commissioned 100,000 won, but the brokers raised their profits by raising it to 50,000 won. As a result, drivers are paying a lot of fees, which often prevents them from receiving proper compensation for their work.

그리고 최초의 암호화폐인 비트코인은 중앙집중화된 화폐의 발행문제에 초점을 맞춰 권한을 분산시킴으로써 탈중앙화된 화폐를 구현하였다. 그러나 현재 암호화폐의 경우 화폐로서의 가치변동성과 정부 규제의 문제로 실제 사업에 암호화폐개념을 도입하여 운영하기에는 많은 문제점이 있다. In addition, Bitcoin, the first cryptocurrency, implemented decentralized money by decentralizing its focus on the issue of centralized money. However, in the case of cryptocurrency, there are many problems in introducing and operating the concept of cryptocurrency in actual business due to the problems of value volatility and government regulation.

특히 현재 화물운송예약시장에서 중앙집권적시스템의 문제는 중앙집중화된 화폐발행이 아니고 운송단가 책정, 수수료 상승, 운송의뢰 등록의 신뢰성 부족에 있다.In particular, the problem of the centralized system in the freight forwarding reservation market is not the centralized issuance of money, but the lack of reliability in the pricing of fees, the increase of fees, and the registration of transport requests.

따라서 인터넷을 통한 상거래의 증가로 화물예약이 폭발적으로 증가하고 있어서 이러한 종래의 화물예약시스템이 가지고 있는 문제점을 시급히 해결해야 할 필요성이 점점 커지고 있는 상황이다.Therefore, the cargo reservation is exploding due to the increase of commerce through the Internet, and the need to solve the problems of the conventional cargo reservation system is urgently increasing.

이 발명은 종래 화물운송예약 기술의 문제점을 해결하기 위해 화물운송업자노조, 대규모 화물운송 의뢰기업, 화물운송협회로 구성된 컨소시엄을 구성하여 블록체인 기반의 화물운송예약시스템 및 방법에 대한 기술을 제공하는 것을 목적으로 한다.The present invention is to provide a blockchain-based freight transport reservation system and method by forming a consortium consisting of freight forwarders union, large freight forwarding companies, freight forwarding association to solve the problems of conventional freight forwarding reservation technology. The purpose.

이 발명의 다른 목적은 기존의 화물예약시스템에 존재했던 의뢰자와 운전자사이의 운송비용지급체계와 운송처리에 대한 문제점을 스마트 계약 기술을 활용하여 운송처리에 따른 운송비용과 수수료지급이 스마트 계약에 따라 신뢰성있게 자동적으로 이루어 질 수 있도록 하는 기술을 제공하는 것이다.Another object of the present invention is to solve the problems of transport cost payment system and transport process between client and driver in the existing cargo reservation system by using smart contract technology. It is to provide a technology that can be done reliably and automatically.

이 발명의 또 다른 목적은 컨소시엄 조직에 자발적인 참여의 유인책으로 화물시장 안에서 거래의 수수료의 일부분을 컨소시엄 조직 사이에 공동분배하는 방법과 운송단가를 합의하여 적용하는 방법을 제공하는 것이다.It is another object of the present invention to provide a method of voluntary participation in a consortium organization, a method of co-distributing a part of the transaction fee between consortium organizations in the freight market, and a method of applying a unit price of freight.

이 발명의 또 다른 목적은 암호화폐 개념이 적용되지 않은 포인트개념의 중앙집중화된 코인의 발행을 통해 블록체인 네트워크에서의 운송비용으로 사용하는 기술을 제공하는 것이다.It is another object of the present invention to provide a technology that uses the cost of transportation in a blockchain network through the issuance of a centralized coin of a point concept without the concept of cryptocurrency.

이처럼 이 발명은 다양하게 변형될 수 있고 여러 가지 형태를 취할 수 있으며 아래 발명의 상세한 설명에서는 그에 따른 특별한 실시예에 대해서만 기술하였다. 하지만 이 발명은 아래 발명의 상세한 설명에서 언급된 특별한 형태로 한정되는 것이 아닌 것으로 이해되어야 하며, 오히려 첨부된 청구범위에 의해 정의되는 이 발명의 정신과 범위 안에 있는 모든 변형물과 균등물 및 대체물을 포함하는 것으로 이해되어야 한다.As such, the present invention may be variously modified and may take various forms, and only the specific embodiments thereof are described in the following detailed description. It is to be understood, however, that the invention is not limited to the specific forms referred to in the description below, but rather includes all modifications, equivalents and substitutions within the spirit and scope of the invention as defined by the appended claims. Should be understood as

이 발명에 따른 화물운송예약시스템의 바람직한 일 실시예는, 화물운송예약 서비스 제공사가 구축한 화물운송예약시스템(1000)을 이용하여 소정의 운송서비스를 제공받기 위해서는 사전에 화물운송예약자(100), 수취인(200), 화물운송업자(300)가 각각 화물예약 서비스 제공사가 제공하는 실시간으로 쿼리가능한 앱(450)을 자신들의 스마트폰(150,250,350)에 다운받아 고객으로 회원가입을 해야 하며, 위 시스템(1000)은,A preferred embodiment of the freight reservation system according to the present invention, in order to receive a predetermined transportation service using the freight reservation system 1000 built by the freight reservation service provider 100 freight reservation in advance 100, Recipient 200, freight forwarder 300, respectively, the real-time queryable app 450 provided by the cargo reservation service provider to download their smartphones (150, 250, 350) to register as a customer, the above system (1000) )silver,

- 사용자를 위한 인증서와 개인키를 발급하는 인증기관(610); 및 A certification authority 610 that issues a certificate and a private key for the user; And

- 위 시스템(1000)의 각종 거래에 대한 조직 사이의 합의를 도출하기 위한 합의노드(620); A consensus node 620 to derive consensus between organizations for the various transactions of the system 1000;

를 구비하고, 화물운송업에 종사하는 서로 다른 이해 관계를 가진 조직들 사이에 각종 거래와 관련된 합의를 도출하기 위한 합의클러스트(600);Consensus cluster 600 for obtaining a consensus related to various transactions between organizations having different interests engaged in the freight forwarding business;

- 화물운송예약시스템(1000)의 운영체계 프로그램(410) 및 운영자료(415)를 저장하고 있는 저장수단(420); Storage means 420 for storing an operating system program 410 and operating data 415 of the freight transportation reservation system 1000;

- 위 시스템(1000)의 각종 데이터를 저장하기 위한 저장수단(430); Storage means (430) for storing various data of the system (1000);

- 위 시스템(1000)의 각종 거래를 인증하기 위해 사전에 최초인증기관(900)으로부터 인증받고 거래를 보낸 사용자가 인증서를 발급받은 조직의 공개키를 사용해서 정당한 회원 사용자에 대해 정당성을 검증하고 인증서를 발급하는 인증기관(440); -In order to authenticate the various transactions of the system 1000, the user who has been authenticated by the initial certification authority 900 in advance and sent the transaction verifies the validity of the valid member user by using the public key of the organization where the certificate was issued. Issuing a certification authority 440;

- 회원정보를 저장하고 인증기관으로 부터받은 사용자의 개인키와 인증서를 고객에게 전달하기 위한 인증서버(460); A certificate server 460 for storing member information and delivering the user's private key and certificate received from the certification authority to the customer;

- 내부에 원장(40), 공개키와 개인키를 구비하고 있고, 고객들이 보낸 거래가 정당한 회원 고객으로부터 온 거래인지 여부를 검증하고, 스마트 계약(smart contract)에 따른 거래 결과를 생성하여 자신의 개인키로 서명한 뒤 거래를 발생시킨 고객에게 전달하는 검증노드(470); 및 It has a ledger 40, a public key and a private key inside, verifies whether the transaction sent by the customer is from a legitimate member customer, and generates the transaction result according to the smart contract. A verification node 470 that signs the key and delivers it to the customer who initiated the transaction; And

- 위 시스템(1000)의 거래에 따라 운송비용지급수단으로 소정의 포인트를 사용하며 회원고객의 요청시 회원고객의 입금액에 따라 해당하는 포인트를 발행하는 환전소(480); An exchange office 480 that uses predetermined points as means of payment for transportation costs according to the transaction of the system 1000 and issues corresponding points according to the deposit amount of the member customer upon request of the member customer;

를 구비하고 위 운영체계 프로그램(410)을 작동시키기 위한 운영서버(400);It is provided with an operating server 400 for operating the operating system program (410);

- 여기서 위 서로 다른 이해 관계를 가진 조직들은 화물을 대량으로 운송의뢰하는 기업화물운송의뢰자(500), 화물운송업 종사자들의 공익적 활동을 위한 화물운송협회(700), 화물운송업자들의 노동조합(800)이 포함되며, -Organizations with different interests are the corporate freight forwarding clients (500) who commission cargoes in large quantities, the Freight Forwarding Association (700), and the freight forwarders' unions (800). This includes,

- 위 조직(500,700,800)들은 각각 -The above organizations (500, 700, 800) each

- 해당 조직에 속하는 사용자가 인증서버(460)를 통해 회원가입시 해당 조직에 속하는 회원을 관리하고 사용자등록을 요청하며 등록 뒤 인증서버(460)로 로그인시 인증서버(460)로부터 로그인한 회원에 대한 인증서와 개인키 발급을 의뢰받는 인증기관(510,710,810); 및 -When a user belonging to the organization registers through the authentication server 460, manages the members belonging to the organization, requests user registration, and logs in to the authentication server 460 when logging in with the authentication server 460 after registration. Certificate authorities (510, 710, 810) for requesting issuance of certificates and private keys; And

- 이때 조직별로 인증기관을 별도로 설치하여 인증서를 바탕으로 참여자의 소속을 명확히 구분하고 해당 블록체인 네트워크에 참여하기 위한 인증서와 개인키 발급 권한을 분산시키며, -At this time, by separately installing a certification authority for each organization, based on the certificate, it clearly identifies the participant's affiliation and distributes the authority to issue certificates and private keys to participate in the blockchain network.

- 각각 내부에 원장(40), 공개키와 개인키를 구비하고 있고, 고객들이 보낸 거래가 정당한 회원 고객으로부터 온 거래인지 여부를 검증하고, 스마트 계약(smart contract)에 따른 거래 결과를 생성하여 자신의 개인키로 서명한 뒤 거래를 발생시킨 고객에게 전달하는 검증노드(520,720,820); Each of them has a ledger 40, a public key and a private key, verifies whether a transaction sent by the customer is from a legitimate member customer, and generates a transaction result according to a smart contract. A verification node (520, 720, 820) for signing with a private key and forwarding it to the customer who initiated the transaction;

를 구비하며, Equipped with,

를 포함하여 이루어지고,It is made, including

이때, 위 운영체계 프로그램((410)은 이 시스템의 운영을 위해 블록체인기술에 기반한 이 발명의 청구항 2 내지 청구항 10의 화물운송예약방법에 따라 작성되는 것이 특징이다.
At this time, the operating system program (410) is characterized in that it is prepared according to the cargo transportation reservation method of claims 2 to 10 of the present invention based on the block chain technology for the operation of this system.

그리고 이 발명에 따른 화물예약시스템에 적용되는 화물운송예약방법의 바람직한 일 실시예는, And a preferred embodiment of the cargo transportation reservation method applied to the cargo reservation system according to the present invention,

화물운송예약자(100)의 화물운송예약의뢰 등록거래를 위한 모듈 A;Module A for freight transport reservation request registration transaction of the freight carrier;

모듈 A에 따른 화물운송업자(300)의 화물운송계약 거래를 위한 모듈 B; 및Module B for a freight forwarding contract transaction of the freight forwarder 300 according to module A; And

모듈 A와 모듈 B에 따른 화물수취인(200)의 화물운송확인 거래를 위한 모듈 C;A module C for a freight confirmation transaction of the freight recipient 200 according to the module A and the module B;

를 구비하여 이루어지며,It is made with

이때, 위 각 모듈은 블록체인기술을 이용하여 구현되는 것이 특징이다.
At this time, each of the above module is characterized by using a blockchain technology.

이 실시예에서, 위 모듈 A는,In this embodiment, module A above,

화물운송예약자(100)가 앱(450)을 통해 운영서버(400)에 로그인하면 운영서버(400)는 인증서버(460)를 통해 신원인증을 하여 인증이 되면 화물운송예약자(100)에게 인증서(C1)와 개인키(PK1)를 전송하는 단계(S1100);If the freight shipping scheduler 100 is logged in to the operation server 400 through the app 450, the operation server 400 is authenticated through the authentication server 460 to be authenticated when the certificate to the freight shipping scheduler 100 ( C1) and transmitting the private key PK1 (S1100);

C1과 PK1을 전달받은 화물운송예약자(100)는 화물운송의뢰를 위해 소정의 화물운송정보를 입력하는 단계(S1200);Receiving the C1 and PK1 freight forwarding subscriber 100 inputs a predetermined freight transport information for the freight transport request (S1200);

- 이때, 화물운송예약자(100)에 대한 개인정보는 인증서버(460)에 저장된 회원정보를 바탕으로 자동으로 운영서버(400)에 등록되고, -At this time, the personal information for the freight transportation reservation 100 is automatically registered in the operation server 400 based on the member information stored in the authentication server 460,

위 운송정보가 입력되면 운영서버(400)는 위 운송정보에 포함된 출발지와 목적지 정보에 따라 운송거리를 자동으로 계산하는 단계(S1300);When the above transport information is input, the operation server 400 automatically calculates a transport distance according to the origin and destination information included in the above transport information (S1300);

화물운송예약자(100)가 앱(450)에서 운송정보를 입력한 뒤 화물운송의뢰 등록버튼을 누르면 화물운송예약자(100)의 스마트폰(150)에 설치된 앱(450)은 운송의뢰등록 거래(T1), 인증서(C1), 개인키(PK1)로 서명한 거래내용과 함께 검증노드(470)로 자동으로 전송하여 화물운송예약의뢰 등록 거래(T1)를 실행하는 단계(S1400);If the freight shipping subscriber 100 enters the transport information in the app 450, and then press the button to register the freight transport request, the app 450 installed on the smart phone 150 of the freight transport subscriber 100 is a transport request registration transaction (T1) (S1400) executing a freight transport reservation request registration transaction (T1) by automatically transmitting to the verification node (470) together with the transaction information signed by the certificate (C1) and the private key (PK1);

운송의뢰등록 거래(T1) 내용이 검증노드(470)로 전송되면 검증노드(470)는 이 거래(T1)가 정당한 사용자에 의해 전송된 것인지 여부를 인증서(C1)을 발급한 인증기관(440)의 공개키(PK0)를 통해 사용자의 정당성을 검증하는 단계(S1500);When the contents of the transport request registration transaction (T1) are transmitted to the verification node (470), the verification node (470) determines whether the transaction (T1) has been transmitted by a legitimate user. Verifying legitimacy of the user through the public key PK0 (S1500);

검증노드(470)는 화물운송예약자(100)로부터 거래(T1)가 전송되면 스마트 계약의 화물운송의뢰등록함수가 저장수단(420) 안의 운영자료(415)로부터 원격 프로시져 호출(Remote Procedure Call) 프로토콜을 사용하여 호출되어 운송 거리, 화물의 무게 및 부피를 바탕으로 운송 단가가 제네시스 블록(30)에 저장된 합의된 운송단가(34)를 바탕으로 자동으로 책정되고, 운송 단가와 의뢰인(100)의 포인트 보유금액을 비교하여 만약 운송 단가보다 의뢰인(100)의 포인트 보유금액이 적으면 운송등록을 거부하고, 만약 보유금액이 운송 단가보다 많거나 같으면, 임의거래주소를 생성하여 해당 주소에 운송단가에 해당하는 포인트를 의뢰인(100)의 포인트 계좌에서 차감하여 임의거래주소에 넣는 단계(S1600);The verification node 470 sends a remote procedure call protocol from the operation data 415 in the storage means 420 when the transaction T1 is transmitted from the freight forwarder 100. Called using, the transportation unit price is automatically based on the agreed transportation unit price 34 stored in the Genesis block 30 based on the transportation distance, the weight and volume of the cargo, and the transportation unit price and the point of the client 100 By comparing the holding amount, if the point holding amount of the client 100 is smaller than the shipping unit price, the registration is rejected. If the holding amount is more than or equal to the shipping unit price, a random transaction address is generated to correspond to the shipping unit price. Subtracting the point from the point account of the client 100 and putting it in an arbitrary transaction address (S1600);

검증노드(470)는 원장갱신내용이 포함되고 검증노드(470)의 개인키(PK0)로 서명된 거래 결과(TR1)를 만드는 단계(S1700);The verification node 470 includes a transaction result TR1 including the ledger update contents and signed with the private key PK0 of the verification node 470 (S1700);

검증노드(470)는 만들어진 거래 결과(TR1)를 화물운송예약자(100)에게 전송하는 단계(S1800);The verification node 470 transmits the made transaction result TR1 to the freight transport subscriber 100 (S1800);

화물운송예약자(100)의 앱(450)은 위 거래 결과(TR1)를 전송받으면 이를 자동으로 합의 클러스터(600)로 전송하는 단계(S1900);App 450 of the freight shipping subscriber 100 is automatically sent to the consensus cluster 600 when receiving the transaction result (TR1) (S1900);

거래 결과(TR1)를 전송받은 합의 클러스트(600)는 내부적으로 합의클러스트(600)에서 리더가 되는 합의노드(620)가 거래결과를 모아 순차정리하여 새 블록(10)을 생성하고 생성된 새 블록(10)에 합의노드(620)의 개인키로 서명한 내용을 첨부 한 뒤 리더가 되는 합의노드(620)는 서명된 새 블록(10)을 모든 합의노드(620)와 검증노드로 전파하는 단계(S2000); 및Consensus cluster 600, which received the transaction result TR1, internally generates a new block 10 by sequentially arranging the transaction results by the consensus node 620, which is the leader in the consensus cluster 600, and generates the new block 10. After attaching the content signed by the private key of the consensus node 620 to (10), the consensus node 620, which becomes the leader, propagates the signed new block 10 to all the consensus nodes 620 and the verification node ( S2000); And

서명된 새 블록(10)을 전파받은 각 합의노드(620)는 이 블록(10)에 포함된 서명을 검증하고, 이 블록(10)에 포함된 거래의 정당성을 검증한 뒤, 정당하다면 각 합의노드(620)는 이 블록(10)을 자신의 개인키로 서명하여 시스템(1000) 안의 모든 검증노드로 전파하고, 이 서명된 N개의 블록(10)들을 전달 받은 각 검증노드는 이 N개 블록(10) 가운데 N-((N-1)/3)개의 블록(10)이 동일하면 해당 블록(10)을 정당한 블록(10)으로 판단하여 자신의 블록체인(20)에 추가하고, 원장상태저장소(45)를 갱신하는 단계(S2100);Each consensus node 620 that has propagated the new signed block 10 verifies the signature contained in this block 10, verifies the validity of the transactions contained in this block 10, and if so, each consensus. Node 620 signs this block 10 with its private key and propagates it to all verification nodes in system 1000, and each verification node that has received these signed N blocks 10 receives these N blocks ( 10) If N-((N-1) / 3) blocks 10 are the same, the block 10 is judged as a legitimate block 10 and added to its blockchain 20, and ledger state storage Updating 45 (S2100);

를 구비하여 이루어지고,Made with

이때, 위 단계(S2000)에서 리더가 되는 합의노드(620)는 계속해서 바뀌고,At this time, the consensus node 620 that becomes the leader in the above step (S2000) is continuously changed,

N은 전체 합의노드(620)의 갯수인 것이 바람직하다.
N is preferably the number of total consensus nodes 620.

그리고 이 실시예에서, 위 모듈 B는,And in this embodiment, the above module B is

화물운송업자(300)가 앱(450)을 통해 운영서버(400)에 로그인하면 운영서버(400)는 인증서버(460)를 통해 신원인증을 하여 인증이 되면 화물운송업자(300)에게 인증서(C2)와 개인키(PK2)를 전달하는 단계(S2200);When the freight transporter 300 logs in to the operation server 400 through the app 450, the operation server 400 authenticates the identity through the authentication server 460 and is authenticated to the freight transporter 300 by the certificate (C2). And transmitting the private key PK2 (S2200);

인증서(C2)와 개인키(PK2)를 전달받은 화물운송업자(300)는 등록된 화물운송의뢰 등록 건들을 검색하기 위해 소정의 운송검색정보를 입력하는 단계(S2300);The freight forwarder 300, which has received the certificate C2 and the private key PK2, inputs predetermined transport search information to search for registered freight forwarding registration cases (S2300);

- 이때, 화물운송업자(300)에 대한 개인정보는 인증서버(460)에 저장된 회원정보를 바탕으로 자동으로 운영서버(400)에 등록되고, -At this time, the personal information for the freight forwarder 300 is automatically registered in the operation server 400 based on the member information stored in the authentication server 460,

화물운송업자(300)가 실시간으로 쿼리가능한 앱(450)을 통해 시스템(1000) 안의 각 검증노드(470,520,720,820) 내부의 원장상태저장소(45)에 저장된 화물운송의뢰 등록건들을 위 검증노드(470,520,720,820) 가운데 하나에서 확인하는 단계(S2400);Among the verification nodes (470, 520, 720, 820) of the freight transport request registration stored in the ledger state storage 45 in each verification node (470, 520, 720, 820) in the system 1000 through the app 450, which can be queryed in real time by the freight carrier (300) Checking in one (S2400);

화물운송업자(300)가 등록된 화물의뢰를 확인하여 원하는 화물의뢰를 선택하여 계약하는 거래(T2)를 수행하는 단계(S2500);Cargo transporter 300 performs a transaction (T2) to check the registered cargo request to select the desired cargo request and contract (S2500);

화물운송업자(300)가 앱(450)에서 등록된 화물의뢰 계약버튼을 누르면 화물운송업자(300)의 스마트폰(350)에 설치된 앱(450)은 계약 거래(T2), 인증서(C2), 개인키(PK2)로 서명한 거래내용을 검증노드(470)로 자동으로 전송하는 단계(S2600);Freight forwarder 300, the app 450 installed on the smart phone 350 of the freight forwarder 300 when pressing the registered request button on the freight contract contract (T2), certificate (C2), private key (S2600) automatically transmitting the transaction content signed with (PK2) to the verification node (470);

계약 거래(T2)가 검증노드(470)로 전송되면 검증노드(470)는 이 거래(T2)가 정당한 사용자에 의해 전송된 것인지 여부를 인증서(C2)을 발급한 인증기간(440)의 공개키(PK0)를 통해 사용자(300)의 정당성을 검증하는 단계(S2700);When the contract transaction (T2) is sent to the verification node (470), the verification node (470) determines whether the transaction (T2) has been sent by a legitimate user, or the public key of the authentication period (440) that issued the certificate (C2). Verifying the validity of the user 300 through PK0 (S2700);

검증노드(470)는 화물운송업자(300)로부터 거래(T2)가 전송되면 이 거래(T2)에 대해 원장갱신내용이 포함되고 검증노드(470)의 개인키(PK0)로 서명된 거래 결과(TR2)를 만드는 단계(S2800);When the transaction T2 is transmitted from the freight forwarder 300, the verification node 470 includes the ledger renewal content for the transaction T2 and the transaction result (TR2) signed with the private key PK0 of the verification node 470. Step (S2800);

검증노드(470)는 위 만들어진 거래 결과(TR2)를 화물운송업자(300)에게 전송하는 단계(S2900);The verification node 470 transmits the transaction result TR2 made above to the freight forwarder 300 (S2900);

화물운송업자(300)의 앱(450)은 위 거래 결과(TR2)를 전송받으면 자동으로 합의 클러스터(600)로 전송하는 단계(S3000);App 450 of the freight carrier 300 is automatically sent to the consensus cluster 600 when receiving the transaction result (TR2) (S3000);

거래 결과(TR2)를 전송받은 합의 클러스트(600)는 내부적으로 합의클러스트(600)에서 리더가 되는 합의노드(620)가 거래결과를 모아 순차정리하여 새 블록(10)을 생성하고 생성된 새 블록(10)에 합의노드(620)의 개인키로 서명한 내용을 첨부 한 뒤 리더가 되는 합의노드(620)는 서명된 새 블록(10)을 모든 합의노드(620)와 검증노드로 전파하는 단계(S3100); The settlement cluster 600 that has received the transaction result TR2 is internally generated by the settlement node 620, which is the leader in the settlement cluster 600, gathers the transaction results, generates a new block 10, and generates a new block. After attaching the content signed by the private key of the consensus node 620 to (10), the consensus node 620, which becomes the leader, propagates the signed new block 10 to all the consensus nodes 620 and the verification node ( S3100);

서명된 새 블록(10)을 전파받은 각 합의노드(620)는 이 블록(10)에 포함된 서명을 검증하고, 이 블록(10)에 포함된 거래의 정당성을 검증한 뒤, 정당하다면 각 합의노드(620)는 이 블록(10)을 자신의 개인키로 서명하여 시스템(1000) 안의 모든 검증노드로 전파하고, 이 서명된 N개의 블록(10)들을 전달 받은 각 검증노드는 이 N개 블록(10) 가운데 N-((N-1)/3)개의 블록(10)이 동일하면 해당 블록(10)을 정당한 블록(10)으로 판단하여 자신의 블록체인(20)에 추가하고, 각각 검증노드 내부의 원장상태저장소(45)를 갱신하는 단계(S3200); 및Each consensus node 620 that has propagated the new signed block 10 verifies the signature contained in this block 10, verifies the validity of the transactions contained in this block 10, and if so, each consensus. Node 620 signs this block 10 with its private key and propagates it to all verification nodes in system 1000, and each verification node that has received these signed N blocks 10 receives these N blocks ( 10) If N-((N-1) / 3) blocks 10 are the same, the corresponding block 10 is determined to be a legitimate block 10 and added to the own blockchain 20, each of which is a verification node. Updating the internal ledger state storage 45 (S3200); And

계약 거래(T2)를 실행한 화물운송업자(300)는 화물을 화물운송예약자(100)에게서 받아 적재한 뒤 수취인(200)에게 운송하는 단계(S3300);Cargo carrier 300 that executes the contract transaction (T2) receives the load from the freight shipping scheduler 100 and loads the freight to the recipient 200 (S3300);

를 구비하여 이루어지고,Made with

이때, 위 단계(S3100)에서 리더가 되는 합의노드(620)는 계속해서 바뀌고,At this time, the consensus node 620 that becomes the leader in the above step (S3100) continues to change,

N은 전체 합의노드(620)의 갯수인 것이 바람직하다.
N is preferably the number of total consensus nodes 620.

그리고 이 실시예에서, 위 모듈 C는,And in this embodiment, module C above,

화물을 운송받은 수취인(200)은 운송내용을 확인한 뒤 운송이 계약 내용과 같이 정확하게 이루어졌으면 앱(450)에서 수령버튼을 눌러서 수령확인 거래(T3)를 실행하는 단계(S3400);Recipient receiving the cargo 200 checks the contents of the transport and if the transportation is made exactly as the contract details, and executes the receipt confirmation transaction (T3) by pressing the receipt button in the app 450 (S3400);

수취인(200)의 스마트폰(250)에 설치된 앱(450)은 수령확인 거래(T3) 내용, 인증기관(440)이 수취인(200)을 인증하고 발급한 인증서(C3), 개인키(PK3)로 서명한 거래내용을 검증노드(470)로 자동으로 전송하는 단계(S3500);The app 450 installed on the smartphone 250 of the payee 200 is a receipt confirmation transaction (T3) contents, a certificate (C3), and a private key (PK3) that the certification authority 440 authenticates and issues the payee 200. Automatically transmitting the signed transaction details to the verification node 470 (S3500);

수령확인 거래(T3)가 검증노드(470)로 전송되면 검증노드(470)는 이 거래(T3)가 정당한 사용자(200)에 의해 전송된 것인지 여부를 인증서(C3)를 발급한 인증기관(440)의 공개키(PK0)를 통해 사용자(200)의 정당성을 검증하는 단계(S3600);When the receipt confirmation transaction (T3) is sent to the verification node (470), the verification node (470) determines whether the transaction (T3) has been sent by the legitimate user (200) or the certification authority (440) that issued the certificate (C3). Verifying legitimacy of the user 200 through the public key PK0 of step S3600;

검증노드(470)는 수취인(200)으로부터 거래(T3)가 전송되면 이 거래(T3)에 대해 원장갱신내용이 포함되고 검증노드(470)의 개인키(PK0)로 서명된 거래 결과(TR3)를 만드는 단계(S3700);When the transaction T3 is transmitted from the payee 200, the verification node 470 includes the ledger renewal content for the transaction T3 and is signed with the private key PK0 of the verification node 470 (TR3). Creating step (S3700);

검증노드(470)는 만들어진 거래 결과(TR3)를 수취인(200)에게 전송하는 단계(S3800);The verification node 470 may transmit the created transaction result TR3 to the payee 200 (S3800);

수취인(200)의 앱(450)은 위 거래 결과(TR3)를 전송받으면 자동으로 합의 클러스터(600)로 전송하는 단계(S3900);App 450 of the recipient 200 is automatically sent to the consensus cluster 600 when receiving the transaction result (TR3) (S3900);

거래 결과(TR3)를 전송받은 합의 클러스트(600)는 내부적으로 합의클러스트(600)에서 리더가 되는 합의노드(620)가 거래결과를 모아 순차정리하여 새 블록(10)을 생성하고 생성된 새 블록(10)에 합의노드(620)의 개인키로 서명한 내용을 첨부 한 뒤 리더가 되는 합의노드(620)는 서명된 새 블록(10)을 모든 합의노드(620)와 검증노드로 전파하는 단계(S4000); 및Consensus cluster 600, which has received the transaction result TR3, internally generates a new block 10 by sequentially arranging the transaction results by the consensus node 620, which is the leader in the consensus cluster 600, and generates a new block. After attaching the content signed by the private key of the consensus node 620 to (10), the consensus node 620, which becomes the leader, propagates the signed new block 10 to all the consensus nodes 620 and the verification node ( S4000); And

서명된 새 블록(10)을 전파받은 각 합의노드(620)는 이 블록(10)에 포함된 서명을 검증하고, 이 블록(10)에 포함된 거래의 정당성을 검증한 뒤, 정당하다면 각 합의노드(620)는 이 블록(10)을 자신의 개인키로 서명하여 시스템(1000) 안의 모든 검증노드로 전파하고, 이 서명된 N개의 블록(10)들을 전달 받은 각 검증노드는 이 N개 블록(10) 가운데 N-((N-1)/3)개의 블록(10)이 동일하면 해당 블록(10)을 정당한 블록(10)으로 판단하여 자신의 블록체인(20)에 추가하여 블록체인(20)을 갱신하고 블록체인(20) 갱신에 따라 원장상태저장소(45)의 임의거래주소의 운송비용을 차감하고 화물운송업자(300)의 거래주소에 해당 금액을 추가시킨 상태로 원장상태저장소(45)를 갱신하는 단계(S4100); Each consensus node 620 that has propagated the new signed block 10 verifies the signature contained in this block 10, verifies the validity of the transactions contained in this block 10, and if so, each consensus. Node 620 signs this block 10 with its private key and propagates it to all verification nodes in system 1000, and each verification node that has received these signed N blocks 10 receives these N blocks ( 10) If N-((N-1) / 3) blocks 10 are the same, the block 10 is judged as a legitimate block 10 and added to its blockchain 20 to blockchain 20 ), And according to the blockchain 20 update, subtract the transportation cost of the arbitrary transaction address of the ledger state store 45 and add the corresponding amount to the transaction address of the freight forwarder 300, and then the state ledger state store 45 Updating (S4100);

를 구비하여 이루어지고,Made with

이때, 위 단계(S4000)에서 리더가 되는 합의노드(620)는 계속해서 바뀌고,At this time, the consensus node 620 that becomes the leader in the above step (S4000) continues to change,

위 단계(S4100)에서 N은 전체 합의노드(620)의 갯수이며,In step S4100, N is the total number of consensus nodes 620,

위 단계(S4100)에서 화물운송업자(300)의 거래주소에 해당 금액을 추가시킴으로써 소정의 운송 금액을 자동으로 지급하고,In the above step (S4100) by adding the corresponding amount to the transaction address of the freight forwarder 300, a predetermined amount of payment is automatically paid,

이 시스템(1000) 안의 어떠한 검증노드로 쿼리를 하더라도 모든 검증노드는 항상 동기화된 상태의 원장상태저장소(45)를 가지고 있어서, 화물운송업자(300)가 거래주소에 보유중인 포인트, 임의거래주소에 보유중인 포인트, 화물운송의뢰자(100)가 거래주소에 보유중인 포인트 내역을 동일하게 저장하고 있는 것이 바람직하다.
No matter which verification node is queried in the system 1000, all verification nodes always have a ledger state store 45 in a synchronized state, so that the freight forwarder 300 holds points at random transaction addresses Points being, the freight forwarding client 100 preferably stores the same details of points held in the transaction address.

또한, 이 실시예에서, 위 소정의 화물운송정보는 화물운송 의뢰인(100)의 이름, 주소 및 연락처, 출발지, 목적지, 화물 수취인(200)의 이름, 주소 및 연락처, 적재목록, 화물의 무게, 화물의 부피, 화물 내용에 대한 정보를 포함하는 것이 바람직하다.In addition, in this embodiment, the predetermined freight information is the name, address and contact information of the freight client 100, the origin, destination, the name of the freight recipient 200, address and contact information, load list, weight of the cargo, It is desirable to include information about the volume and content of the cargo.

이 실시예에서, 화물운송 수수료의 컨소시엄 조직내 공동분배를 위한 모듈 D를 더 포함하는 것이 바람직하다.
In this embodiment, it is preferred to further include a module D for co-distribution within the consortium of freight charges.

이 실시예에서, 위 모듈 D는,In this embodiment, the above module D is

화물운송에 따른 수수료 발생시점을 합의클러스터(600)에 참여하는 컨소시엄 조직들(300,500,700,800)이 합의하여 결정하는 단계(S210); 및Determining the time point of the fee due to the freight by consortium organizations (300,500,700,800) participating in the consensus cluster (600) (S210); And

위 수수료 발생시점이 화물운송 의뢰등록시로 결정되면, 화물운송 의뢰등록시 사전에 소정의 로직으로 정의된 스마트 계약의 화물운송의뢰등록함수가 위 운영자료(415)로부터 호출되어 실행되면서 의뢰금액의 소정 비율 만큼의 금액을 임의거래주소로 이동시키고 나머지 금액은 1/N로 나누어 각 컨소시엄조직(500,700,800)이 관리하는 포인트 거래주소에 추가하는 단계(S220); 또는If the point of occurrence of the fee is determined at the time of registering the freight request, the freight rate request registration function of the smart contract defined by the predetermined logic at the time of registering the freight request is called and executed from the operation data 415, and then the predetermined rate of the requested amount. Moving the amount to an arbitrary transaction address and adding the remaining amount to 1 / N to the point transaction address managed by each consortium (500, 700, 800) (S220); or

위 수수료 발생시점이 화물운송의 스마트 계약시로 결정되면, 화물운송의 스마트 계약시 화물운송업자(300)가 시스템(1000) 내부의 각 노드(500,700,800)에 전송되는 복수의 화물운송등록 의뢰건들 가운데 특정 의뢰건을 선택하여 스마트 계약을 체결하면 사전에 소정의 로직으로 정의된 스마트 계약의 화물운송계약함수가 위 운영자료(415)로부터 호출되어 실행되면서 의뢰금액의 소정 비율 만큼의 금액을 임의거래주소로 이동시키고 나머지 금액은 1/N로 나누어 각 컨소시엄조직(500,700,800)이 관리하는 포인트 거래주소에 추가하는 단계(S230); 또는When the point of occurrence of the fee is determined as the smart contract of the freight, the freight carrier 300 during the smart contract of the freight transport among the plurality of freight registration registration requests transmitted to each node (500, 700, 800) in the system 1000 When a smart contract is concluded by selecting a specific request, the freight transport contract function of the smart contract defined by the predetermined logic is called and executed from the operation data 415 above, and an amount of a certain amount of the requested amount is assigned to the random transaction address. Moving to and adding the remaining amount by 1 / N to the point trading address managed by each consortium organization 500, 700, and 800 (S230); or

위 수수료 발생시점이 수취인(200)의 화물 수령확인시로 결정되면, 취인(200)에 의해 화물 수령확인이 이루어지면 사전에 소정의 로직으로 정의된 화물수령확인함수가 위 운영자료(415)로부터 호출되어 실행되면서 의뢰금액의 소정 비율 만큼의 금액을 임의거래주소로 이동시키고 나머지 금액은 1/N로 나누어 각 컨소시엄조직(500,700,800)이 관리하는 포인트 거래주소에 추가하는 단계(S240);If the point of occurrence of the fee is determined at the time of receipt of the cargo by the recipient 200, when the receipt of cargo is confirmed by the recipient 200, the cargo receipt confirmation function defined in advance by the predetermined logic is determined from the operation data 415. Calling and executing, moving a predetermined amount of the requested amount to a random transaction address, and adding the remaining amount to 1 / N to the point transaction address managed by each consortium organization (500, 700, 800) (S240);

를 구비하여 이루어지며,It is made with

이때, N은 전체 합의노드(620)의 갯수인 것이 바람직하다.
In this case, N is preferably the number of total consensus nodes 620.

이 실시예에서, 화물예약시스템에 적용되는 화물운송 단가 합의를 위한 모듈 E를 더 포함하는 것이 바람직하다.In this embodiment, it is preferable to further include a module E for freight freight unit price agreement applied to the cargo reservation system.

이 실시예에서, 위 모듈 E는,In this embodiment, the module E is

최초 컨소시엄 네크워크 구성시 최초로 만들어지는 제네시스 블록(30)에 컨소시엄 조직(300,500,700,800)들 사이에 합의된 운송단가(35) 정보를 저장시키는 단계(S310);Storing transportation unit price 35 information agreed between the consortium organizations 300, 500, 700, and 800 in the Genesis block 30, which is initially created during the initial consortium network construction (S310);

위 합의된 운송단가(35) 정보가 제네시스 블록(30)에 저장된 뒤, 네트워크 운영중 새로이 운송단가 조정의 필요성을 느끼는 특정 컨소시엄조직이 있으면 해당 조직은 각 조직에서 운영하는 운영관련 웹 어플리케이션을 이용하여 사전에 스마트계약에 정의된 운송단가조정요청 함수를 호출하는 거래를 생성한 뒤 거래 내용을 해당 조직의 개인키인 해당 조직 내부 인증기관의 개인키로 서명하여 네트워크 안의 각 검증노드로 전달하는 단계(S320);After the agreed transportation unit price 35 information is stored in the Genesis block 30, and there is a specific consortium organization that feels the necessity of adjusting the transportation unit price during network operation, the organization uses an operation related web application operated by each organization. After creating a transaction that calls the transport price adjustment request function defined in the smart contract in advance, the transaction contents are signed with the private key of the corresponding organization's internal certification authority, which is the private key of the corresponding organization, and delivered to each verification node in the network (S320). );

위 거래내용을 전달받은 각 검증노드는 전달받은 거래의 정당성 확보를 위해 해당 거래내용을 보낸 주체가 정당한 주체인지와 해당 거래가 정당한지 여부를 검증한 뒤, 정당하다고 판단되면 원장갱신내용을 포함하는 거래의 결과를 생성한 뒤 각 검증노드의 개인키로 서명한 뒤 조직의 운영관련 웹 어플리케이션에 전달하는 단계(S330);Each verification node that has received the above transaction details verifies whether the entity that sent the transaction is a legitimate entity and whether the transaction is justified to ensure the justification of the transaction. Generating a result of the signature and then signing it with a private key of each verification node and delivering the result to an operation related web application of the organization (S330);

서명된 거래결과를 전달받은 웹 어플리케이션은 해당 거래결과를 합의클러스터(600)로 전달하는 단계(S340);Receiving the signed transaction results, the web application step of transmitting the transaction results to the consensus cluster 600 (S340);

합의노드들(620) 가운데 리더가 되는 합의노드(620)는 거래결과를 모아 순차정리하여 새로운 블록(10)을 생성하고 생성된 새 블록(10)에 리더가 되는 합의노드(620)의 개인키로 서명한 내용을 첨부하는 단계(S350);The consensus node 620, which is the leader among the consensus nodes 620, generates a new block 10 by sequentially gathering the transaction results and generates the new block 10 with the private key of the consensus node 620 that is the leader in the generated new block 10. Attaching the signed contents (S350);

리더가 되는 합의노드(620)는 서명한 블록(10)을 모든 합의노드(620)와 검증노드로 전파하는 단계(S360);The consensus node 620 to be a leader may include propagating the signed block 10 to all the consensus nodes 620 and verification nodes (S360);

각 합의노드(620)는 위 전파된 블록(10)에 포함된 서명을 검증하고, 해당 블록(10)에 포함된 거래의 정당성을 검증한 뒤, 정당하다고 판단되면 각 합의노드(620)는 해당 블록(10)을 자신의 개인키로 서명하여 모든 검증노드로 전파하는 단계(S370);Each consensus node 620 verifies the signature included in the propagated block 10, verifies the validity of the transaction included in the block 10, and if it is determined that the consensus node 620 is determined to be right, Signing block 10 with its private key and propagating it to all verification nodes (S370);

위 서명된 블록(10)을 전달 받은 각 검증노드는 모든 합의노드(620)들로부터 모두 N-((N-1)/3)개의 동일한 블록(10)이 전달되면 이를 정당한 블록(10)으로 판단하고 자신의 블록체인(20)에 추가하고, 자신의 원장상태저장소(45)를 갱신하는 단계(S380);Each verification node that receives the above-signed block 10 receives all N-((N-1) / 3) identical blocks 10 from all of the consensus nodes 620 and transfers the same block 10 to the legitimate block 10. Judging and adding it to its own blockchain 20, and updating its ledger state store 45 (S380);

- 여기서 N은 이 시스템(1000) 안의 합의노드(620)의 총 개수, Where N is the total number of consensus nodes 620 in this system 1000,

위 각 검증노드의 갱신된 원장상태저장소(45)에는 위 특정 조직에 의한 운송단가합의를 요청하는 상태가 등록이 되어, 모든 조직에서는 각 조직의 운영관련 웹 어플리케이션을 통해 실시간으로 운송단가합의 요청들을 확인할 수 있어서, 각 조직에서는 동의함, 동의하지 않음의 여부를 체크하여 스마트계약에 사전 정의된 운송단가합의투표 함수를 호출하는 거래를 생성하여 조직의 개인키로 서명한 뒤 검증노드로 전달하는 단계(S390); In the updated ledger state store 45 of each verification node, a state for requesting a transport unit price agreement by the specific organization is registered, and all organizations request transport unit price requests in real time through each organization's operation-related web application. Each organization checks whether it agrees or disagrees, and creates a transaction that calls a transport unit price voting function predefined in the smart contract, signs it with the organization's private key, and passes it to the verification node ( S390);

위 운송단가합의투표 함수를 호출하는 거래내용을 전달받은 각 검증노드는 전달받은 거래의 정당성 확보를 위해 해당 거래내용을 보낸 주체가 정당한 주체인지와 해당 거래가 정당한지 여부를 검증한 뒤, 정당하다고 판단되면 원장갱신내용을 포함하는 거래의 결과를 생성한 뒤 각 검증노드의 개인키로 서명한 뒤 조직의 운영관련 웹 어플리케이션에 전달하는 단계(S400);Each verification node that receives the transaction details that call the above unit price voting function verifies that it is legitimate after verifying whether the entity that sent the transaction is legitimate and whether the transaction is legitimate in order to secure the justification of the transaction received. Generating a result of the transaction including the ledger update contents and then signing the private key of each verification node and delivering the result to an operation related web application of the organization (S400);

서명된 거래결과를 전달받은 웹 어플리케이션은 해당 거래결과를 합의클러스터(600)로 전달하는 단계(S410);Receiving the signed transaction results, the web application transfers the transaction results to the consensus cluster 600 (S410);

합의노드들(620) 가운데 리더가 되는 합의노드(620)는 거래결과를 모아 순차정리하여 새로운 블록(10)을 생성하고 생성된 새 블록(10)에 리더가 되는 합의노드(620)의 개인키로 서명한 내용을 첨부하는 단계(S420);The consensus node 620, which is the leader among the consensus nodes 620, generates a new block 10 by sequentially gathering the transaction results and generates the new block 10 with the private key of the consensus node 620 that is the leader in the generated new block 10. Attaching the signed contents (S420);

리더가 되는 합의노드(620)는 서명한 블록(10)을 모든 합의노드(620)와 검증노드로 전파하는 단계(S430);The consensus node 620 to be a leader may include propagating the signed block 10 to all consensus nodes 620 and verification nodes (S430);

각 합의노드(620)는 위 전파된 블록(10)에 포함된 서명을 검증하고, 해당 블록(10)에 포함된 거래의 정당성을 검증한 뒤, 정당하다고 판단되면 각 합의노드(620)는 해당 블록(10)을 자신의 개인키로 서명하여 모든 검증노드로 전파하는 단계(S440); 및Each consensus node 620 verifies the signature included in the propagated block 10, verifies the validity of the transaction included in the block 10, and if it is determined that the consensus node 620 is determined to be right, Signing block 10 with its private key and propagating it to all verification nodes (S440); And

위 서명된 블록(10)을 전달 받은 각 검증노드는 모든 합의노드(620)들로부터 모두 N-((N-1)/3)개의 동일한 블록(10)이 전달되면 이를 정당한 블록(10)으로 판단하고 자신의 블록체인(20)에 추가하고, 자신의 원장상태저장소(45)를 갱신하는 단계(S450);Each verification node that receives the above-signed block 10 receives all N-((N-1) / 3) identical blocks 10 from all of the consensus nodes 620 and transfers the same block 10 to the legitimate block 10. Judging and adding it to its own blockchain 20, and updating its ledger state store 45 (S450);

를 구비하여 이루어지고,Made with

이때, 스마트계약에서 사전 정의된 위 운송단가합의투표 함수는 N개의 조직중 75%이상의 동의가 쌓일 경우 자동으로 운송단가를 운송의뢰등록함수에서 사용하는 운송단가로 적용하는 로직을 가지고 있는 것이 바람직하다.
At this time, it is preferable that the above-mentioned transport unit price voting function defined in the smart contract has a logic of automatically applying the unit price as the unit price used in the request for transport registration function when more than 75% of the N organizations agree. .

이 실시예에서, 환전소(480)에 의해 화물예약시스템(1000)에 적용되는 포인트의 발행을 위한 모듈 F를 더 포함하는 것이 바람직하다.In this embodiment, it is preferable to further include a module F for issuance of points applied to the cargo reservation system 1000 by the exchange office 480.

이 실시예에서, 위 모듈 F는,In this embodiment, the above module F is

위 환전소(480)는 사용자의 충전요청이 있으면 사용자의 정당성 검증 과정을 거쳐 검증이 되면 사용자가 소정의 금액을 입금하는 단계(S510);The exchange office 480 is a step of depositing a predetermined amount of money by the user when the user's request for charging is verified through the user's validity verification process (S510);

입금이 제대로 이루어진 것을 확인한 뒤, 환전소(480)는 포인트 충전 거래를 실행하여 환전소(480)의 개인키로 서명하여 첨부한 거래 내용을 검증노드(470)로 전송하면 검증노드(470)는 포인트충전함수를 일으킨 주체가 환전소(480)가 맞는지 첨부된 인증서와 서명을 바탕으로 거래의 정당성을 검증하는 단계(S520); 및After confirming that the payment is made correctly, the exchange office 480 executes the point charging transaction and signs the transaction details attached with the private key of the exchange office 480 to the verification node 470, and then the verification node 470 performs the point charging function. Verifying the legitimacy of the transaction based on the attached certificate and the signature that the subject causing the exchange is correct (S520); And

거래의 정당성이 검증되면, 충전소(480)는 스마트 계약의 포인트충전함수가 저장수단(420) 안의 운영자료(415)로부터 원격 프로시져 호출(Remote Procedure Call) 프로토콜을 사용해서 호출하여 사용자가 입금한 금액을 바탕으로 해당하는 포인트를 계산하여 충전을 요청한 사용자의 포인트를 증가시키는 로직을 수행하는 단계(S530);When the transaction is verified, the charging station 480 calls the point charging function of the smart contract from the operation data 415 in the storage means 420 using the remote procedure call protocol to deposit the amount deposited by the user. Performing logic to increase a point of the user who requested charging by calculating a corresponding point based on the operation (S530);

를 구비하여 이루어지고,Made with

이때 소정의 보안수단(485)을 통해 환전소(480)의 개인키관리를 하는 것이 바람직하다.At this time, it is preferable to manage the private key of the exchange office 480 through a predetermined security means (485).

이 발명의 실시로 인해, 중앙집중형의 기존 화물중개시스템을 탈피하여 분산시스템의 네트워크를 구축함으로써 중앙집중식의 특징으로 인해 발생하는 수수료의 대폭적인 상승과 운송의뢰와 관련한 신뢰문제를 없앨 수 있다.Due to the implementation of the present invention, it is possible to eliminate the centralized existing cargo brokerage system and build a network of distributed systems, thereby eliminating the significant increase in commissions and the trust issues associated with transport requests.

또한 블록체인의 장점(위변조방지, 거래의 추적성 및 정당성 검증, 서비스가용성)이 적용되어 블록체인 원장을 통한 객관적인 거래이력을 확인할 수 있으므로, 운송 중 사고나 파손된 물품에 대한 사후처리가 용이해지며, P2P 네트워크의 특성이 적용되어 서비스 가용성이 보장된다. In addition, the advantages of blockchain (forgery prevention, transaction traceability and legitimacy verification, service availability) can be applied to verify objective transaction history through the blockchain ledger, making it easier to post-process accidents or damaged goods during transportation. Service characteristics are guaranteed by applying the characteristics of P2P network.

또한 기존시스템에 존재했던 의뢰자와 운송업자 사이의 운송비용 지급체계와 운송처리에 대한 문제점을 스마트 계약을 활용하여 운송처리에 따른 운송비용과 수수료 지급이 스마트 계약에 따라 이루어지게 하여 운전자와 운송의뢰자 사이의 거래의 신뢰성을 높힐 수 있다. In addition, by using the smart contract, the transport cost payment system and the problem of transport processing between the client and the transporter existed in the existing system. It can increase the credibility of the transaction.

그리고 블록체인 네트워크와 연동된 모바일 앱을 통해서 운송의뢰자와 운송업자가 화물예약 네트워크 안에서 간편하게 거래를 일으킬 수 있도록 편의성을 제공한다. And through the mobile app linked with the blockchain network, it provides convenience for transporters and carriers to easily make transactions within the cargo reservation network.

또한 스마트 계약을 활용하여 컨소시엄 조직에 참여할 경우 거래 수수료의 일부분에 대한 공동이익을 신뢰성있게 분배하는 메커니즘을 제공함으로써 자발적인 컨소시엄조직 참여를 유도할 수 있다. In addition, smart contracts can lead to voluntary consortium participation by providing a mechanism for reliably distributing common interests for a portion of transaction fees when participating in consortium organizations.

그리고 운송단가 역시 모든 조직의 합의를 통해 결정되기 때문에 기존 중앙집중시스템식으로 운영하던 중개인의 임의적 운송단가조정(운송단가상승, 하락)으로 인한 운송업자, 의뢰자들의 불만을 감소시킬 수 있다.In addition, since the freight price is determined through agreement of all organizations, it is possible to reduce complaints of transporters and clients due to arbitrarily adjusted freight price adjustment (rising and falling freight price) of brokers operating in the existing centralized system.

도 1은 이 발명에서 사용되는 블록, 블록 헤더, 제네시스 블록, 블록체인 및 원장의 구성도.
도 2는 이 발명에 따른 화물예약시스템의 전체 블록구성도 및 상세 블록구성도.
도 3은 도 2의 시스템에 적용되는 이 발명에 따른 화물운송예약방법의 흐름도.
도 4는 도 3의 화물운송예약방법의 흐름도를 화물예약시스템의 각 구성원 중심으로 나타낸 도면.
도 5는 이 발명에 따른 의뢰자와 운송업자 사이의 운송비용 전달 과정을 나타낸 도면.
도 6은 이 발명에 따른 운송거래 수수료를 컨소시엄 조직 사이에서 공동분배하는 방법의 흐름도.
도 7은 이 발명에 따른 화물운송 단가를 합의하는 방법의 흐름도.
도 8은 이 발명에 따른 포인트 발행 방법의 흐름도.
1 is a block diagram of a block, a block header, a genesis block, a blockchain, and a ledger used in the present invention.
Figure 2 is a block diagram and a detailed block diagram of the entire cargo reservation system according to the present invention.
3 is a flow chart of a freight forwarding reservation method according to the present invention applied to the system of FIG.
Figure 4 is a view showing the flow chart of the freight booking method of Figure 3 centered on each member of the freight reservation system.
5 is a view showing a shipping cost transfer process between a client and a carrier according to the present invention.
6 is a flow chart of a method for co-distributing transportation transaction fees between consortium organizations in accordance with the present invention.
7 is a flowchart of a method of agreeing a freight rate according to the present invention.
8 is a flowchart of a point issuing method according to the present invention.

이 발명을 첨부한 도면들을 참조하여 상세히 설명한다. 먼저, 이 발명의 상세한 설명에서 사용하는 이 분야 기술 용어들에 대한 간단한 정의는 아래와 같다.This invention will be described in detail with reference to the accompanying drawings. First, a brief definition of technical terms in this field used in the detailed description of the present invention is as follows.

- 블록(block): 블록(10)은 하나의 헤더(header)(15)와 하나의 기다란 거래 리스트로(18) 이루어진 자료 구조(date structure)이다. 이 거래 리스트(18)에서 각 거래의 순서는 거래가 발생한 시간 순서에 따라 정해진다. Block: Block 10 is a date structure consisting of one header 15 and one long list of transactions 18. The order of each transaction in this transaction list 18 is determined according to the order of time at which the transaction occurred.

도 1a에 블록(10)의 구성도가 예시되어 있고, 도 1b는 도 1a의 헤더(15)의 내부 구성도로서 현재 블록의 해시(11), 이전 블록의 해시(12) 및 time stamp(13) 를 구비하여 이루어진다. 이때, 한 블록(10)은 여러 개의 거래 정보를 포함한다. 이 거래들은 거래가 발생한 시간 순서대로 기록되어 있다. 이처럼 블록(10)은 일종의 자료들의 집합체이며, 블록(10)의 크기는 보통 1메가바이트 정도이고 경우에 따라서는 이보다 훨씬 큰 크기를 가질 수도 있다. FIG. 1A illustrates a block diagram of the block 10, and FIG. 1B is an internal block diagram of the header 15 of FIG. 1A. The hash 11 of the current block, the hash 12 of the previous block, and the time stamp 13 are illustrated. ) Is provided. At this time, one block 10 includes a plurality of transaction information. These transactions are recorded in the order in which they occurred. As such, the block 10 is a kind of collection of data, and the size of the block 10 is usually about 1 megabyte, and in some cases, may be much larger than this.

- 블록체인(blockchain): 블록체인은 2008년 사토시 나카모토(Satoshi Nakamoto)가 발표한 암호화폐(crypto currency) 비트코인(bitccoin)에 대한 논문 "purely peer-to-peer version of electronic cash"를 통해 처음 등장한 개념이다. 블록체인은 제 3의 신뢰기관(중개기관)없이 개인 간의 거래를 신뢰성 있게 이루는 비중앙집중방식의 즉 분산방식의 원장기술로서, 참여하고 있는 모든 컨소시엄 조직들이 각자 동일한 블록체인(20)을 즉 동일한 거래 원장(transaction ledger) 데이터를 보유하고 항상 동기화하는 기술이다. Blockchain: Blockchain was published in 2008 through Satoshi Nakamoto's article on crypto currency bitcoin, called "purely peer-to-peer version of electronic cash." This is the first concept. Blockchain is a decentralized, or distributed ledger technology that reliably conducts transactions between individuals without a third-party trust agency (intermediary) .All participating consortium organizations share the same blockchain 20 A transaction ledger technology that holds and always synchronizes transaction ledger data.

블록체인(20)은 보안을 위해 모든 거래 정보(거래 증명서 포함)를 해시함수로 암호화한다. 그래서 암호화된 열쇠(key)가 있어야만 해당 정보를 읽을 수 있다. 그리고 블록체인(20)은 여러 컨소시엄 조직에 분산되어 저장되므로 정보의 손실을 방지한다.The blockchain 20 encrypts all transaction information (including transaction certificates) with a hash function for security. So you must have an encrypted key to read that information. The blockchain 20 is distributed and stored in various consortium organizations to prevent loss of information.

그리고 블록체인(20)의 각 블록(10)은 생성된 시간 순으로 순차적으로 연결된다(도 1d 참조). 이를 위해 각 블록(예로서 10B)은 이전 블록(예로서 10A)의 해시를 포함하고 있고 서로 해시체인의 형태로 순차적으로 연결되어 있어서, 각 블록체인(20)은 최초부터 현재까지의 모든 거래내역을 포함하고 있다.Each block 10 of the blockchain 20 is sequentially connected in the generated time order (see FIG. 1D). To this end, each block (eg 10B) contains a hash of the previous block (eg 10A) and is sequentially connected to each other in the form of a hash chain, so that each block chain 20 has all transactions from the beginning to the present. It includes.

도 1d는 블록체인(20)의 개념도이다. 맨 위에 제네시스 블록(30), 그 뒤로 새로이 추가되는 블록들(10A,10B,…,10K,…)이 블록체인(20)을 이루고 있다. 이때 각 블록 10A, 10B, …, 10K, … 등은 각 블록이 생성된 순서를 나타낸다.1D is a conceptual diagram of the blockchain 20. The genesis block 30 at the top and the newly added blocks 10A, 10B, ..., 10K, ... form the blockchain 20. At this time, each block 10A, 10B,... , 10K,… And the like indicate the order in which each block is generated.

한편, 각 블록(10)엔 순서가 정해진 거래 리스트(18)가 있고, 블록체인(20)을 이루는 각 블록(10)은 시간 순서대로 연결되어 있다. 즉 블록체인(20)엔 각 블록(10)의 순서가 기재되어 있다. 따라서 블록체인(20)의 자료구조를 이용하면 모든 거래의 순서를 확정지을 수 있다.On the other hand, each block 10 has an ordered transaction list 18, and each block 10 constituting the block chain 20 is connected in chronological order. In other words, the blockchain 20 describes the order of each block 10. Therefore, the data structure of the blockchain 20 can be used to determine the order of all transactions.

- 제네시스 블록(genesis block): 어느 블록체인(20)의 최초의 블록(30)이 제네시스 블록(30)이다. 도 1c에 제네시스 블록(30)의 내부 구성도가 도시되어 있다. 이 발명에서는 제네시스 블록(30)이 합의노드(620)들에 의해 사전에 합의된 운송단가(35) 정보를 포함하고 있다. Genesis block: The first block 30 of any blockchain 20 is the Genesis block 30. 1C shows an internal configuration diagram of the Genesis block 30. In the present invention, the Genesis block 30 includes information about the transport unit price 35 previously agreed by the settlement nodes 620.

- 블록체인 원장상태저장소(Blockchain ledger state storage): 원장상태저장소(45)는 도 1e에서 처럼 원장(40) 안에 블록체인(20)과 함께 배치되어 있으며, 이것은 블록체인(20) 갱신에 따른 블록체인 네트워크 시스템 참가자들(100,200,300,500,700,800)의 최종상태를 저장하는 블록체인 상태 데이터베이스이다. 블록체인 네트워크를 통해 제출된 모든 거래 내용은 블록체인 원장(40) 안의 블록체인(20)에 저장되며, 블록체인 네트워크 참가자들 거래계좌의 현재 포인트 자산 및 참가자 상태, 임의거래주소의 포인트 내역 및 운송의뢰상태는 원장상태저장소(45)에 저장된다. 원장(40)은 각 참가자 즉 사용자(peer) 집합에 분산시키고, 원장(40)에 대한 업데이트는 소정의 합의 알고리즘을 사용하여 모든 컨소시엄 조직들(300,500,700,800)에 의해 검증받아서 승인된 데이터를 블록체인(20)으로 만들어 모든 조직들 사이에 일관성있게 유지되도록 한다.Blockchain ledger state storage: The ledger state storage 45 is arranged in the ledger 40 together with the blockchain 20, as shown in FIG. 1E, which is a block according to the blockchain 20 update. It is a blockchain state database that stores the final state of the chain network system participants (100, 200, 300, 500, 700, 800). All transaction details submitted through the blockchain network are stored in the blockchain 20 within the blockchain ledger 40, and the current point assets and participant status of the trading account of the blockchain network participants, the point details and transportation of random trading addresses. The requested state is stored in the ledger state storage 45. The ledger 40 is distributed to each participant, or set of peers, and updates to the ledger 40 are validated by all consortium organizations 300, 500, 700, and 800 using a predetermined consensus algorithm and the approved blockchain ( 20) to ensure consistency across all organizations.

예를 들어 A계좌의 현 상태가 현재 포인트 100코인을 보유하고 있고, B계좌에서 A계좌로 포인트 10코인(coin)을 송금하는 거래가 발생하면 이 거래 발생으로 인해 블록체인(20)이 갱신되고, 따라서 'A계좌의 최종상태는 포인트 110코인을 보유하고 있다'라는 결과가 원장상태저장소(45)에 저장된다. 즉 원장(40) 안의 원장상태저장소(45)에는 위 송금거래의 결과로 현재 사용자 A의 계좌 상태가 포인트 110 코인임을 보여주고, 블록체인(20)에는 B계좌에서 A계좌로 포인트 10코인의 송금 거래가 발생했음이 저장된다. 다시 말해, 원장상태저장소(45)에는 일반장부의 잔액에 해당하는 정보가 기록된다고 볼 수 있고, 거래리스트(18)에는 일반장부의 입출금 거래의 구체적 내용이 기록된다고 볼 수 있다. 이때 블록체인(20)에 저장된 거래 정보는 소정의 합의알고리즘에 의해 검증되어 승인된 데이터이다.For example, if the current state of account A currently holds 100 coins, and a transaction that transfers 10 coins from account B to account A occurs, the blockchain 20 is updated due to the transaction. Therefore, the result of "the final state of the A account has point 110 coins" is stored in the ledger state storage 45. That is, the ledger state storage 45 in the ledger 40 shows that the current user A's account status is 110 coins as a result of the above remittance transaction, and the blockchain 20 transfers 10 coins from the B account to the A account. The transaction has been saved. In other words, it can be seen that the information corresponding to the balance of the general ledger is recorded in the ledger state storage 45, and the detailed contents of the deposit and withdrawal transaction of the general ledger are recorded in the transaction list 18. At this time, the transaction information stored in the blockchain 20 is data verified and approved by a predetermined consensus algorithm.

원장(ledger): 원장(40)은 합의클러스터(600)의 각 조직의 검증노드(520,720,820)와 운영서버(400) 내부의 검증노드(470) 안에 배치되고, 원장 안에는 원장상태저장소(45)와 블록체인(20)이 배치된다(도 1e 참조).Ledger (ledger): The ledger 40 is disposed in the verification node (520, 720, 820) and the verification node 470 in the operation server 400 of each organization of the consensus cluster 600, the ledger state repository 45 and The blockchain 20 is arranged (see FIG. 1E).

- 인증기관(certified authority): 인증기관은 최상위인증기관(root CA)에서 발급한 공개키와 개인키를 가지고 있으며, 합의클러스터(600)의 각 조직마다 존재하여, 조직의 구성원들(해당 조직을 통해 거래를 일으킨 사용자들)에게 인증서와 개인키를 발급하는 노드이다. 이 발명의 도 2b, 도 2c에는 다수의 인증기관들(440,510,610,710,810)이 도시되어 있다.Certified authority: A certification authority has a public key and a private key issued by a root CA, and exists in each organization of the consensus cluster 600. Nodes that issue certificates and private keys to users who made transactions through them. 2B and 2C of the present invention, a plurality of certification authorities 440, 510, 610, 710 and 810 are shown.

- 최상위인증기관: 웹사이트의 HTTPS 보안을 위한 인증기관으로서 구글, 모질라, 마이크로소프트 등이 각각 다수의 최상위인증기관들을 운영하고 있다. 이 발명에서 도 2a의 최초인증기관(900)은 최상위인증기관이 아니며, 그 하부의 인증기관이다.Top Certificate Authorities: These are the top certification authorities for the HTTPS security of websites, and Google, Mozilla, and Microsoft each operate a number of top certification authorities. In this invention, the initial certification authority 900 of FIG. 2A is not the highest certification authority, but is the certification authority below it.

- 인증서버: 클라이언트 프로그램(예로서, 다운받은 앱)을 사용하는 사용자(100,200,300)가 회원가입시 기재한 신원정보를 바탕으로 신원인증을 수행하여 정상적으로 처리시 인증기관으로부터 인증서와 개인키를 발급받아 클라이언트 사용자에게 전달하는 역할을 하고 있으며, 회원정보 역시 데이터베이스에 저장하여 보유하고 있다. 또한 회원정보의 해시(hash)를 블록체인에 저장하기 위한 거래(transaction)를 일으켜 블록체인(20)에 회원정보의 해시값을 저장하는 역할을 한다. 이 발명에서는 서비스 제공자의 운영서버(400) 안에 인증서버(460)가 도시되어 있다.-Authentication server: A user (100,200,300) using a client program (for example, a downloaded app) performs an identity authentication based on the identity information written at the time of membership registration. It plays a role of delivering to the user, and the member information is also stored in the database. In addition, it generates a transaction for storing the hash of the member information in the blockchain, and serves to store the hash value of the member information in the blockchain 20. In the present invention, the authentication server 460 is shown in the operation server 400 of the service provider.

- 고객(client): 거래를 생성하고, 거래 내역을 확인하는 구성원이 고객이다. 참가자(participant)라고도 하며, 블록체인 네트워크의 구성원이다. 고객은 자산을 소유하고 거래를 제출할 수 있다.Client: The customer who creates a transaction and checks the transaction details. Also known as a participant, it is a member of the blockchain network. The customer can own the asset and submit the transaction.

이 발명의 시스템에서 자신의 모바일 단말기(150,250,350)에 서비스 제공자의 앱(application) 프로그램(450)을 다운받아 설치한 구성원들(100,200,300)이 고객이다. 이 앱(450)은 사용자에게 블록체인 네트워크에 참여할수 있는 인터페이스를 제공한다. 또한 이 앱(450)은 인증서버(460)로부터 개인키와 인증서를 전달받아 저장하는 역할도 한다. 이 발명 도 2a에는 다수의 고객들(100,200,300)이 도시되어 있다.In the system of the present invention, members 100, 200, and 300 who have downloaded and installed an application program 450 of a service provider on their mobile terminals 150, 250, and 350 are customers. The app 450 provides the user with an interface to participate in the blockchain network. The app 450 also serves to store and receive the private key and certificate from the authentication server (460). 2a, a plurality of customers 100, 200, 300 are shown.

- 검증노드: 각 검증노드(470,520,720,820)는 각각 원장(40)과 자신의 공개키를 보유하고 있으며, 모든 검증노드와 합의노드의 공개키도 보유하고 있습니다. 또한 자신의 개인키도 보유하고 있습니다.-Verification node: Each verification node (470, 520, 720, 820) has its own ledger (40) and its own public key, and also has the public keys of all verification nodes and consensus nodes. It also has its own private key.

고객들이 보낸 거래가 정당한 참여자로부터 온 거래인지 검증하는 역할을 한다. 또한 스마트계약(smart contract)을 실행하여 거래 결과를 생성하여 각 검증노드의 개인키로 서명한 뒤 거래를 발생시킨 고객에게 전달하는 역할을 한다. 이 발명의 도 2b와 도 2e에 검증노드들(470,520,720,820)이 도시되어 있다. It verifies that the transactions sent by customers are from legitimate participants. In addition, it executes a smart contract to generate a transaction result, sign it with the private key of each verification node, and deliver it to the customer who created the transaction. Validation nodes 470, 520, 720, and 820 are shown in FIGS. 2B and 2E of the present invention.

이 발명에서 채택하고 있는 컨소시엄 블록체인 네트워크 시스템(1000)에서는 합의 클러스트(600)에서 거래 결과를 전달받으면 합의 클러스트(600)에서 리더가 되는 합의노드(620)(매번 바뀜)가 거래 결과들을 수집하여 새로운 블록(10)을 생성한 뒤 나머지 합의노드(620)와 모든 검증노드로 전파한다. 나머지 합의노드(620)는 새로 생성된 블록(10)의 정당성을 검증하여 정당하다고 판단되면 이 블록(10)에 대한 서명을 이 블록(10)에 첨부하여 모든 검증노드(470,520,720,820)로 전파하고 합의노드 n개 가운데 n-((n-1)/3)개 이상의 서명된 블록(10)이 도착하면 이 블록(10)은 정상적인 블록(10)으로 간주하고, 각 검증노드(470,520,720,820)는 이 블록(10)을 블록체인(20)에 추가하며, 원장상태저장소(45)를 갱신한다. 검증노드는 거래를 생성한 고객의 거래계좌의 포인트 잔액이 충분한지, 중복으로 사용하지 않는지 등 거래에 대한 검증을 별도로 수행한다. In the consortium blockchain network system 1000 adopted in the present invention, when a transaction result is received in the consensus cluster 600, the consensus node 620 (each time) that becomes a leader in the consensus cluster 600 collects the transaction results. The new block 10 is generated and then propagated to the remaining consensus nodes 620 and all verification nodes. The remaining consensus node 620 verifies the validity of the newly created block 10 and if it is determined to be valid, attaches the signature for this block 10 to this block 10, propagates to all verification nodes 470, 520, 720, 820 and agrees. If more than n-((n-1) / 3) signed blocks 10 of n nodes arrive, this block 10 is considered a normal block 10, and each verification node (470, 520, 720, 820) receives this block. (10) is added to the blockchain 20, and the ledger state store 45 is updated. The verification node performs verification of the transaction separately, such as whether the point balance of the transaction account of the customer who created the transaction is sufficient or not used in duplicate.

- 합의 클러스터(agreement cluster): 특정 컨센서스에 참여하는 각 조직(400,500,700,800)이 보유한 합의노드(agreement node)(620)가 클러스터링 된 형태이며, 고객들(100,200,300)로부터 거래결과를 받아 합의를 통해 정당성을 판별하고, 순차정리하여 블록들(100)을 생성해 모든 검증노드로 전파하는 역할을 한다. 이 발명 도 2a의 600이 합의 클러스터의 예이다.-Agreement cluster: An agreement node (620) held by each organization (400, 500, 700, 800) participating in a specific consensus is clustered form. And sequentially clean up blocks 100 and propagate them to all verification nodes. 600 of this invention FIG. 2A is an example of a consensus cluster.

- 합의노드: 이 발명에서 합의노드(620)는 블록생성노드의 역할을 수행한다. 도 4b를 보면 이 발명의 예에서는 네 개의 합의노드가 도시되어 있다. 각 합의노드는 운영서버(400), 대량 화물운송의뢰 기업(500), 화물운송협회(700), 화물운송업자노조(800)와의 합의를 위한 것이다.Consensus Node: In this invention, the consensus node 620 plays the role of a block generation node. 4B, four consensus nodes are shown in this example of the invention. Each consensus node is for agreement with the operation server 400, the bulk freight forwarding company (500), freight forwarding association (700), freight forwarders union (800).

- 노드: 노드는 거래 내역을 보관하고, 거래를 승인, 블록체인(20)의 분산을 합의하는 기능을 수행한다. 검증노드, 합의노드가 그 예이다. 조직의 컴퓨터나 스마트폰은 노드역할을 하고, 조직 이외의 모든 고객의 컴퓨터나 스마트폰은 클라이언트의 역할을 한다.Node: The node stores the transaction history, approves the transaction, and performs the function of agreeing the distribution of the blockchain 20. For example, verifying node and consensus node. An organization's computer or smartphone acts as a node, and all the customers' computers or smartphones act as clients.

- 스마트 계약(smart contract): 고객(100,200,300)이 블록체인 네트워크에서 거래를 일으키면(즉, 스마트 계약에 사전에 정의된 함수를 호출하면) 소정의 조건에 따라 자동으로 사전에 스마트 계약에 정의된 로직에 따라서 거래의 결과가 도출되도록 하는 계약이다.Smart contract: when a customer (100,200,300) initiates a transaction in a blockchain network (i.e., calls a function predefined in a smart contract), the logic defined in advance in the smart contract automatically under certain conditions Is a contract that allows the outcome of a transaction to be derived.

- 운영관련 웹 어플리케이션 : 운영관련 웹 어플리케이션(540,740,840)은 운송단가 합의, 수수료 합의를 위해 사용되는 각 조직별로 운영하는 웹 어플리케이션이다(도 2a 참조). 운영서버(400)의 경우 웹 어플리케이션은 운영체계 프로그램(410)에 포함되며, 운송거리를 자동으로 계산하는 모듈을 포함하는 즉, 일종의 서버역할도 담당하는 운영체계 프로그램에 포함되어 있다.-Operation-related web application: Operation-related web application (540,740,840) is a web application that is operated by each organization used for the transportation unit price agreement, fee agreement (see Figure 2a). In the case of the operation server 400, the web application is included in the operating system program 410, and includes a module that automatically calculates the transportation distance, that is, included in the operating system program that is in charge of a kind of server role.

1. 화물운송예약시스템1. Freight Transportation Reservation System

이 발명에 따른 블록체인 네트워크 기반의 화물운송예약시스템(1000)의 구성은 도 2a ~ 도 2c와 같다. 이 발명의 시스템(1000)에서는, 화물운송예약 서비스 제공사가 구축한 화물운송예약시스템(1000)을 이용하여 소정의 운송서비스를 제공받기 위해서는 사전에 화물운송예약자(100), 수취인(200), 화물운송업자(300)가 각각 화물예약 서비스 제공사가 제공하는 실시간으로 쿼리가능한 앱(450)을 자신들의 스마트폰(150,250,350)에 다운받아 고객으로 회원가입을 해야 한다. The configuration of a block transportation network based freight transportation reservation system 1000 according to the present invention is as shown in Figs. 2a to 2c. In the system 1000 of the present invention, in order to receive a predetermined transportation service using the cargo transportation reservation system 1000 built by the cargo transportation reservation service provider, the cargo transportation scheduler 100, the recipient 200, and the cargo in advance. The carrier 300 should download a queryable app 450 in real time provided by the cargo reservation service provider to their smartphones 150, 250, and 350 to register as a customer.

그리고 이 시스템(1000)은,And this system 1000,

- 사용자를 위한 인증서와 개인키를 발급하는 인증기관(610); 및 A certification authority 610 that issues a certificate and a private key for the user; And

- 위 시스템(1000)의 각종 거래에 대한 조직 사이의 합의를 도출하기 위한 합의노드(620); A consensus node 620 to derive consensus between organizations for the various transactions of the system 1000;

를 구비하고, 화물운송업에 종사하는 서로 다른 이해 관계를 가진 조직들 사이에 각종 거래와 관련된 합의를 도출하기 위한 합의클러스트(600);Consensus cluster 600 for obtaining a consensus related to various transactions between organizations having different interests engaged in the freight forwarding business;

- 화물운송예약시스템(1000)의 운영체계 프로그램(410) 및 운영자료(415)를 저장하고 있는 저장수단(420); Storage means 420 for storing an operating system program 410 and operating data 415 of the freight transportation reservation system 1000;

- 위 시스템(1000)의 각종 데이터를 저장하기 위한 저장수단(430); Storage means (430) for storing various data of the system (1000);

- 위 시스템(1000)의 각종 거래를 인증하기 위해 사전에 최초인증기관(900)으로부터 인증받고 거래를 보낸 사용자가 인증서를 발급받은 조직의 공개키를 사용해서 정당한 회원 사용자에 대해 정당성을 검증하고 인증서를 발급하는 인증기관(440); -In order to authenticate the various transactions of the system 1000, the user who has been authenticated by the initial certification authority 900 in advance and sent the transaction verifies the validity of the valid member user by using the public key of the organization where the certificate was issued. Issuing a certification authority 440;

- 회원정보를 저장하고 인증기관으로 부터받은 사용자의 개인키와 인증서를 고객에게 전달하기 위한 인증서버(460); A certificate server 460 for storing member information and delivering the user's private key and certificate received from the certification authority to the customer;

- 내부에 원장(40), 공개키와 개인키를 구비하고 있고, 고객들이 보낸 거래가 정당한 회원 고객으로부터 온 거래인지 여부를 검증하고, 스마트 계약(smart contract)에 따른 거래 결과를 생성하여 자신의 개인키로 서명한 뒤 거래를 발생시킨 고객에게 전달하는 검증노드(470); 및 It has a ledger 40, a public key and a private key inside, verifies whether the transaction sent by the customer is from a legitimate member customer, and generates the transaction result according to the smart contract. A verification node 470 that signs the key and delivers it to the customer who initiated the transaction; And

- 위 시스템(1000)의 거래에 따라 운송비용지급수단으로 소정의 포인트를 사용하며 회원고객의 요청시 회원고객의 입금액에 따라 해당하는 포인트를 발행하는 환전소(480); An exchange office 480 that uses predetermined points as means of payment for transportation costs according to the transaction of the system 1000 and issues corresponding points according to the deposit amount of the member customer upon request of the member customer;

를 구비하고 위 운영체계 프로그램(410)을 작동시키기 위한 운영서버(400);It is provided with an operating server 400 for operating the operating system program (410);

- 여기서 위 서로 다른 이해 관계를 가진 조직들은 화물을 대량으로 운송의뢰하는 기업화물운송의뢰자(500), 화물운송업 종사자들의 공익적 활동을 위한 화물운송협회(700), 화물운송업자들의 노동조합(800)이 포함되며, -Organizations with different interests are the corporate freight forwarding clients (500) who commission cargoes in large quantities, the Freight Forwarding Association (700), and the freight forwarders' unions (800). This includes,

- 위 조직(500,700,800)들은 각각 -The above organizations (500, 700, 800) each

- 해당 조직에 속하는 사용자가 인증서버(460)를 통해 회원가입시 해당 조직에 속하는 회원을 관리하고 사용자등록을 요청하며 등록 뒤 인증서버(460)로 로그인시 인증서버(460)로부터 로그인한 회원에 대한 인증서와 개인키 발급을 의뢰받는 인증기관(510,710,810); 및 -When a user belonging to the organization registers through the authentication server 460, manages the members belonging to the organization, requests user registration, and logs in to the authentication server 460 when logging in with the authentication server 460 after registration. Certificate authorities (510, 710, 810) for requesting issuance of certificates and private keys; And

- 이때 조직별로 인증기관을 별도로 설치하여 인증서를 바탕으로 참여자의 소속을 명확히 구분하고 해당 블록체인 네트워크에 참여하기 위한 인증서와 개인키 발급 권한을 분산시키며, -At this time, by separately installing a certification authority for each organization, based on the certificate, it clearly identifies the participant's affiliation and distributes the authority to issue certificates and private keys to participate in the blockchain network.

- 각각 내부에 원장(40), 공개키와 개인키를 구비하고 있고, 고객들이 보낸 거래가 정당한 회원 고객으로부터 온 거래인지 여부를 검증하고, 스마트 계약(smart contract)에 따른 거래 결과를 생성하여 자신의 개인키로 서명한 뒤 거래를 발생시킨 고객에게 전달하는 검증노드(520,720,820); Each of them has a ledger 40, a public key and a private key, verifies whether a transaction sent by the customer is from a legitimate member customer, and generates a transaction result according to a smart contract. A verification node (520, 720, 820) for signing with a private key and forwarding it to the customer who initiated the transaction;

를 구비하며, Equipped with,

를 포함하여 이루어지고,It is made, including

이때, 위 운영체계 프로그램((410)은 이 시스템의 운영을 위해 블록체인기술에 기반한 이 발명의 청구항 2 내지 청구항 12의 화물운송예약방법에 따라 작성되는 것이 특징이다.
At this time, the operating system program (410) is characterized in that it is prepared in accordance with the cargo transportation reservation method of claim 2 to 12 of the present invention based on the block chain technology for the operation of this system.

2. 화물운송예약방법2. How to book freight

도 3은 도 2의 시스템에 적용되는 화물운송예약방법의 흐름도를 나타낸다. 그리고 도 4는 도 3의 화물운송예약방법의 흐름도를 화물예약시스템의 각 구성원 중심으로 나타낸 것이다. 도 4의 (1) 내지 (16)은 각 구성원 사이의 처리 흐름을 보여준다. 여기서 시스템개발회사는 이 발명에 따른 화물운송예약 서비스를 제공하는 사업자를 뜻한다.
3 is a flowchart illustrating a freight transportation reservation method applied to the system of FIG. 2. And Figure 4 shows a flow chart of the cargo transportation reservation method of Figure 3 centered on each member of the cargo reservation system. 4 (1) to (16) show the processing flow between each member. Here, the system development company refers to a provider that provides a freight forwarding reservation service according to the present invention.

이 발명의 화물운송예약방법은 Freight shipping reservation method of the present invention

화물운송예약자(100)의 화물운송예약의뢰 등록거래를 위한 모듈 A;Module A for freight transport reservation request registration transaction of the freight carrier;

모듈 A에 따른 화물운송업자(300)의 화물운송계약 거래를 위한 모듈 B; 및Module B for a freight forwarding contract transaction of the freight forwarder 300 according to module A; And

모듈 A와 모듈 B에 따른 화물수취인(200)의 화물운송확인 거래를 위한 모듈 C;A module C for a freight confirmation transaction of the freight recipient 200 according to the module A and the module B;

를 구비하여 이루어지며,It is made with

이때, 위 각 모듈은 블록체인기술을 이용하여 구현되는 것이 특징이다. 이제 각 모듈별로 그 구성을 살펴본다.
At this time, each of the above module is characterized by using a blockchain technology. Now look at the configuration of each module.

(1) 모듈 A(1) module A

이 발명에서 모듈 A는,In this invention, module A,

화물운송예약자(100)가 앱(450)을 통해 운영서버(400)에 로그인하면 운영서버(400)는 인증서버(460)를 통해 신원인증을 하여 인증이 되면 화물운송예약자(100)에게 인증서(C1)와 개인키(PK1)를 전송하는 단계(S1100);If the freight shipping scheduler 100 is logged in to the operation server 400 through the app 450, the operation server 400 is authenticated through the authentication server 460 to be authenticated when the certificate to the freight shipping scheduler 100 ( C1) and transmitting the private key PK1 (S1100);

C1과 PK1을 전달받은 화물운송예약자(100)는 화물운송의뢰를 위해 소정의 화물운송정보를 입력하는 단계(S1200);Receiving the C1 and PK1 freight forwarding subscriber 100 inputs a predetermined freight transport information for the freight transport request (S1200);

- 이때, 화물운송예약자(100)에 대한 개인정보는 인증서버(460)에 저장된 회원정보를 바탕으로 자동으로 운영서버(400)에 등록되고, -At this time, the personal information for the freight transportation reservation 100 is automatically registered in the operation server 400 based on the member information stored in the authentication server 460,

위 운송정보가 입력되면 운영서버(400)는 위 운송정보에 포함된 출발지와 목적지 정보에 따라 운송거리를 자동으로 계산하는 단계(S1300);When the above transport information is input, the operation server 400 automatically calculates a transport distance according to the origin and destination information included in the above transport information (S1300);

화물운송예약자(100)가 앱(450)에서 소정의 운송정보를 입력한 뒤 화물운송의뢰 등록버튼을 누르면 화물운송예약자(100)의 스마트폰(150)에 설치된 앱(450)은 운송의뢰등록 거래(T1), 인증서(C1), 개인키(PK1)로 서명한 거래내용과 함께 검증노드(470)로 자동으로 전송하여 화물운송예약의뢰 등록 거래(T1)를 실행하는 단계(S1400);If the freight transporter 100 enters the predetermined transport information in the app 450 and then presses the button for freight request to register the app installed on the smart phone 150 of the freight transporter 100 is a transport request registration transaction (T1) executing the freight reservation reservation registration transaction T1 by automatically transmitting to the verification node 470 together with the transaction contents signed by the T1, the certificate C1, and the private key PK1 (S1400);

운송의뢰등록 거래(T1) 내용이 검증노드(470)로 전송되면 검증노드(470)는 이 거래(T1)가 정당한 사용자에 의해 전송된 것인지 여부를 인증서(C1)을 발급한 인증기관(440)의 공개키(PK0)를 통해 사용자의 정당성을 검증하는 단계(S1500);When the contents of the transport request registration transaction (T1) are transmitted to the verification node (470), the verification node (470) determines whether the transaction (T1) has been transmitted by a legitimate user. Verifying legitimacy of the user through the public key PK0 (S1500);

검증노드(470)는 화물운송예약자(100)로부터 거래(T1)가 전송되면 스마트 계약의 화물운송의뢰등록함수가 저장수단(420) 안의 운영자료(415)로부터 원격 프로시져 호출(Remote Procedure Call) 프로토콜을 사용하여 호출되어 운송 거리, 화물의 무게 및 부피를 바탕으로 운송 단가가 제네시스 블록(30)에 저장된 합의된 운송단가(34)를 바탕으로 자동으로 책정되고, 운송 단가와 의뢰인(100)의 포인트 보유금액을 비교하여 만약 운송 단가보다 의뢰인(100)의 포인트 보유금액이 적으면 운송등록을 거부하고, 만약 보유금액이 운송 단가보다 많거나 같으면, 임의거래주소를 생성하여 해당 주소에 운송단가에 해당하는 포인트를 의뢰인(100)의 포인트 계좌에서 차감하여 임의거래주소에 넣는 단계(S1600);The verification node 470 sends a remote procedure call protocol from the operation data 415 in the storage means 420 when the transaction T1 is transmitted from the freight forwarder 100. Called using, the transportation unit price is automatically based on the agreed transportation unit price 34 stored in the Genesis block 30 based on the transportation distance, the weight and volume of the cargo, and the transportation unit price and the point of the client 100 By comparing the holding amount, if the point holding amount of the client 100 is smaller than the shipping unit price, the registration is rejected. If the holding amount is more than or equal to the shipping unit price, a random transaction address is generated to correspond to the shipping unit price. Subtracting the point from the point account of the client 100 and putting it in an arbitrary transaction address (S1600);

검증노드(470)는 원장갱신내용이 포함되고 검증노드(470)의 개인키(PK0)로 서명된 거래 결과(TR1)를 만드는 단계(S1700);The verification node 470 includes a transaction result TR1 including the ledger update contents and signed with the private key PK0 of the verification node 470 (S1700);

검증노드(470)는 만들어진 거래 결과(TR1)를 화물운송예약자(100)에게 전송하는 단계(S1800);The verification node 470 transmits the made transaction result TR1 to the freight transport subscriber 100 (S1800);

화물운송예약자(100)의 앱(450)은 위 거래 결과(TR1)를 전송받으면 이를 자동으로 합의 클러스터(600)로 전송하는 단계(S1900);App 450 of the freight shipping subscriber 100 is automatically sent to the consensus cluster 600 when receiving the transaction result (TR1) (S1900);

거래 결과(TR1)를 전송받은 합의 클러스트(600)는 내부적으로 합의클러스트(600)에서 리더가 되는 합의노드(620)가 거래결과를 모아 순차정리하여 새 블록(10)을 생성하고 생성된 새 블록(10)에 합의노드(620)의 개인키로 서명한 내용을 첨부 한 뒤 리더가 되는 합의노드(620)는 서명된 새 블록(10)을 모든 합의노드(620)와 검증노드로 전파하는 단계(S2000); 및Consensus cluster 600, which received the transaction result TR1, internally generates a new block 10 by sequentially arranging the transaction results by the consensus node 620, which is the leader in the consensus cluster 600, and generates the new block 10. After attaching the content signed by the private key of the consensus node 620 to (10), the consensus node 620, which becomes the leader, propagates the signed new block 10 to all the consensus nodes 620 and the verification node ( S2000); And

서명된 새 블록(10)을 전파받은 각 합의노드(620)는 이 블록(10)에 포함된 서명을 검증하고, 이 블록(10)에 포함된 거래의 정당성을 검증한 뒤, 정당하다면 각 합의노드(620)는 이 블록(10)을 자신의 개인키로 서명하여 시스템(1000) 안의 모든 검증노드로 전파하고, 이 서명된 N개의 블록(10)들을 전달 받은 각 검증노드는 이 N개 블록(10) 가운데 N-((N-1)/3)개의 블록(10)이 동일하면 해당 블록(10)을 정당한 블록(10)으로 판단하여 자신의 블록체인(20)에 추가하고, 원장상태저장소(45)를 갱신하는 단계(S2100);Each consensus node 620 that has propagated the new signed block 10 verifies the signature contained in this block 10, verifies the validity of the transactions contained in this block 10, and if so, each consensus. Node 620 signs this block 10 with its private key and propagates it to all verification nodes in system 1000, and each verification node that has received these signed N blocks 10 receives these N blocks ( 10) If N-((N-1) / 3) blocks 10 are the same, the block 10 is judged as a legitimate block 10 and added to its blockchain 20, and ledger state storage Updating 45 (S2100);

를 구비하여 이루어지고,Made with

이때, 위 단계(S2000)에서 리더가 되는 합의노드(620)는 계속해서 바뀌고,At this time, the consensus node 620 that becomes the leader in the above step (S2000) is continuously changed,

N은 전체 합의노드(620)의 갯수인 것이 특징이다.N is characterized by the number of total consensus nodes (620).

이때, 모듈 A의 수행이 완료되면 바로 모듈 B가 수행된다. 그리고 이 발명에서 위 소정의 화물운송정보는 화물운송 의뢰인(100)의 이름, 주소 및 연락처, 출발지, 목적지, 화물 수취인(200)의 이름, 주소 및 연락처, 적재목록, 화물의 무게, 화물의 부피, 화물 내용에 대한 정보를 포함하는 것이 바람직하다.At this time, when the execution of the module A is completed, the module B is performed. In the present invention, the predetermined freight transportation information is the name, address and contact information of the freight forwarding client 100, origin, destination, freight recipient 200, name, address and contact number, load list, weight of cargo, volume of cargo. It is desirable to include information about the cargo content.

한편, 이 발명에서는 포인트 저장소가 따로 존재하는 것이 아니고, 스마트계약에 따라서 임의거래주소생성과 임의거래주소에 포인트 이동이 이루어진다. 그리고 스마트계약이 생성한 거래 결과에 따라 블록(10)이 생성되고, 블록체인(20)이 갱신됨에 따라 원장상태저장소(45)에 임의거래주소에 특정포인트가 있다는 상태가 저장되는 것이다.
On the other hand, in the present invention, the point store does not exist separately, and the point movement is made to the random transaction address and the random transaction address according to the smart contract. The block 10 is generated according to the transaction result generated by the smart contract, and as the blockchain 20 is updated, the state in which the specific state is stored in the ledger state store 45 at a random transaction address is stored.

(2) 모듈 B(2) module B

이 발명의 모듈 B는,Module B of this invention,

화물운송업자(300)가 앱(450)을 통해 운영서버(400)에 로그인하면 운영서버(400)는 인증서버(460)를 통해 신원인증을 하여 인증이 되면 화물운송업자(300)에게 인증서(C2)와 개인키(PK2)를 전달하는 단계(S2200);When the freight transporter 300 logs in to the operation server 400 through the app 450, the operation server 400 authenticates the identity through the authentication server 460 and is authenticated to the freight transporter 300 by the certificate (C2). And transmitting the private key PK2 (S2200);

인증서(C2)와 개인키(PK2)를 전달받은 화물운송업자(300)는 등록된 화물운송의뢰 등록 건들을 검색하기 위해 소정의 운송검색정보를 입력하는 단계(S2300);The freight forwarder 300, which has received the certificate C2 and the private key PK2, inputs predetermined transport search information to search for registered freight forwarding registration cases (S2300);

- 이때, 화물운송업자(300)에 대한 개인정보는 인증서버(460)에 저장된 회원정보를 바탕으로 자동으로 운영서버(400)에 등록되고, -At this time, the personal information for the freight forwarder 300 is automatically registered in the operation server 400 based on the member information stored in the authentication server 460,

화물운송업자(300)가 실시간으로 쿼리가능한 앱(450)을 통해 시스템(1000) 안의 각 검증노드(470,520,720,820) 내부의 원장상태저장소(45)에 저장된 화물운송의뢰 등록건들을 위 검증노드(470,520,720,820) 가운데 하나에서 확인하는 단계(S2400);Among the verification nodes (470, 520, 720, 820) of the freight transport request registration stored in the ledger state storage 45 in each verification node (470, 520, 720, 820) in the system 1000 through the app 450, which can be queryed in real time by the freight carrier (300) Checking in one (S2400);

화물운송업자(300)가 등록된 화물의뢰를 확인하여 원하는 화물의뢰를 선택하여 계약하는 거래(T2)를 수행하는 단계(S2500);Cargo transporter 300 performs a transaction (T2) to check the registered cargo request to select the desired cargo request and contract (S2500);

화물운송업자(300)가 앱(450)에서 등록된 화물의뢰 계약버튼을 누르면 화물운송업자(300)의 스마트폰(350)에 설치된 앱(450)은 계약 거래(T2), 인증서(C2), 개인키(PK2)로 서명한 거래내용을 검증노드(470)로 자동으로 전송하는 단계(S2600);Freight forwarder 300, the app 450 installed on the smart phone 350 of the freight forwarder 300 when pressing the registered request button on the freight contract contract (T2), certificate (C2), private key (S2600) automatically transmitting the transaction content signed with (PK2) to the verification node (470);

계약 거래(T2)가 검증노드(470)로 전송되면 검증노드(470)는 이 거래(T2)가 정당한 사용자에 의해 전송된 것인지 여부를 인증서(C2)을 발급한 인증기간(440)의 공개키(PK0)를 통해 사용자(300)의 정당성을 검증하는 단계(S2700);When the contract transaction (T2) is sent to the verification node (470), the verification node (470) determines whether the transaction (T2) has been sent by a legitimate user, or the public key of the authentication period (440) that issued the certificate (C2). Verifying the validity of the user 300 through PK0 (S2700);

검증노드(470)는 화물운송업자(300)로부터 거래(T2)가 전송되면 이 거래(T2)에 대해 원장갱신내용이 포함되고 검증노드(470)의 개인키(PK0)로 서명된 거래 결과(TR2)를 만드는 단계(S2800);When the transaction T2 is transmitted from the freight forwarder 300, the verification node 470 includes the ledger renewal content for the transaction T2 and the transaction result (TR2) signed with the private key PK0 of the verification node 470. Step (S2800);

검증노드(470)는 위 만들어진 거래 결과(TR2)를 화물운송업자(300)에게 전송하는 단계(S2900);The verification node 470 transmits the transaction result TR2 made above to the freight forwarder 300 (S2900);

화물운송업자(300)의 앱(450)은 위 거래 결과(TR2)를 전송받으면 자동으로 합의 클러스터(600)로 전송하는 단계(S3000);App 450 of the freight carrier 300 is automatically sent to the consensus cluster 600 when receiving the transaction result (TR2) (S3000);

거래 결과(TR2)를 전송받은 합의 클러스트(600)는 내부적으로 합의클러스트(600)에서 리더가 되는 합의노드(620)가 거래결과를 모아 순차정리하여 새 블록(10)을 생성하고 생성된 새 블록(10)에 합의노드(620)의 개인키로 서명한 내용을 첨부 한 뒤 리더가 되는 합의노드(620)는 서명된 새 블록(10)을 모든 합의노드(620)와 검증노드로 전파하는 단계(S3100); The settlement cluster 600 that has received the transaction result TR2 is internally generated by the settlement node 620, which is the leader in the settlement cluster 600, gathers the transaction results, generates a new block 10, and generates a new block. After attaching the content signed by the private key of the consensus node 620 to (10), the consensus node 620, which becomes the leader, propagates the signed new block 10 to all the consensus nodes 620 and the verification node ( S3100);

서명된 새 블록(10)을 전파받은 각 합의노드(620)는 이 블록(10)에 포함된 서명을 검증하고, 이 블록(10)에 포함된 거래의 정당성을 검증한 뒤, 정당하다면 각 합의노드(620)는 이 블록(10)을 자신의 개인키로 서명하여 시스템(1000) 안의 모든 검증노드로 전파하고, 이 서명된 N개의 블록(10)들을 전달 받은 각 검증노드는 이 N개 블록(10) 가운데 N-((N-1)/3)개의 블록(10)이 동일하면 해당 블록(10)을 정당한 블록(10)으로 판단하여 자신의 블록체인(20)에 추가하고, 각각 검증노드 내부의 원장상태저장소(45)를 갱신하는 단계(S3200); 및Each consensus node 620 that has propagated the new signed block 10 verifies the signature contained in this block 10, verifies the validity of the transactions contained in this block 10, and if so, each consensus. Node 620 signs this block 10 with its private key and propagates it to all verification nodes in system 1000, and each verification node that has received these signed N blocks 10 receives these N blocks ( 10) If N-((N-1) / 3) blocks 10 are the same, the corresponding block 10 is determined to be a legitimate block 10 and added to the own blockchain 20, each of which is a verification node. Updating the internal ledger state storage 45 (S3200); And

계약 거래(T2)를 실행한 화물운송업자(300)는 화물을 화물운송예약자(100)에게서 받아 적재한 뒤 수취인(200)에게 운송하는 단계(S3300);Cargo carrier 300 that executes the contract transaction (T2) receives the load from the freight shipping scheduler 100 and loads the freight to the recipient 200 (S3300);

를 구비하여 이루어지고,Made with

이때, 위 단계(S3100)에서 리더가 되는 합의노드(620)는 계속해서 바뀌고,At this time, the consensus node 620 that becomes the leader in the above step (S3100) continues to change,

N은 전체 합의노드(620)의 갯수인 것이 특징이다.
N is characterized by the number of total consensus nodes (620).

(3) 모듈 C(3) module C

이 발명의 모듈 C는,Module C of this invention,

화물을 운송받은 수취인(200)은 운송내용을 확인한 뒤 운송이 계약 내용과 같이 정확하게 이루어졌으면 앱(450)에서 수령버튼을 눌러서 수령확인 거래(T3)를 실행하는 단계(S3400);Recipient receiving the cargo 200 checks the contents of the transport and if the transportation is made exactly as the contract details, and executes the receipt confirmation transaction (T3) by pressing the receipt button in the app 450 (S3400);

수취인(200)의 스마트폰(250)에 설치된 앱(450)은 수령확인 거래(T3) 내용, 인증기관(440)이 수취인(200)을 인증하고 발급한 인증서(C3), 개인키(PK3)로 서명한 거래내용을 검증노드(470)로 자동으로 전송하는 단계(S3500);The app 450 installed on the smartphone 250 of the payee 200 is a receipt confirmation transaction (T3) contents, a certificate (C3), and a private key (PK3) that the certification authority 440 authenticates and issues the payee 200. Automatically transmitting the signed transaction details to the verification node 470 (S3500);

수령확인 거래(T3)가 검증노드(470)로 전송되면 검증노드(470)는 이 거래(T3)가 정당한 사용자(200)에 의해 전송된 것인지 여부를 인증서(C3)를 발급한 인증기관(440)의 공개키(PK0)를 통해 사용자(200)의 정당성을 검증하는 단계(S3600);When the receipt confirmation transaction (T3) is sent to the verification node (470), the verification node (470) determines whether the transaction (T3) has been sent by the legitimate user (200) or the certification authority (440) that issued the certificate (C3). Verifying legitimacy of the user 200 through the public key PK0 of step S3600;

검증노드(470)는 수취인(200)으로부터 거래(T3)가 전송되면 이 거래(T3)에 대해 원장갱신내용이 포함되고 검증노드(470)의 개인키(PK0)로 서명된 거래 결과(TR3)를 만드는 단계(S3700);When the transaction T3 is transmitted from the payee 200, the verification node 470 includes the ledger renewal content for the transaction T3 and is signed with the private key PK0 of the verification node 470 (TR3). Creating step (S3700);

검증노드(470)는 만들어진 거래 결과(TR3)를 수취인(200)에게 전송하는 단계(S3800);The verification node 470 may transmit the created transaction result TR3 to the payee 200 (S3800);

수취인(200)의 앱(450)은 위 거래 결과(TR3)를 전송받으면 자동으로 합의 클러스터(600)로 전송하는 단계(S3900);App 450 of the recipient 200 is automatically sent to the consensus cluster 600 when receiving the transaction result (TR3) (S3900);

거래 결과(TR3)를 전송받은 합의 클러스트(600)는 내부적으로 합의클러스트(600)에서 리더가 되는 합의노드(620)가 거래결과를 모아 순차정리하여 새 블록(10)을 생성하고 생성된 새 블록(10)에 합의노드(620)의 개인키로 서명한 내용을 첨부 한 뒤 리더가 되는 합의노드(620)는 서명된 새 블록(10)을 모든 합의노드(620)와 검증노드로 전파하는 단계(S4000); 및Consensus cluster 600, which has received the transaction result TR3, internally generates a new block 10 by sequentially arranging the transaction results by the consensus node 620, which is the leader in the consensus cluster 600, and generates a new block. After attaching the content signed by the private key of the consensus node 620 to (10), the consensus node 620, which becomes the leader, propagates the signed new block 10 to all the consensus nodes 620 and the verification node ( S4000); And

서명된 새 블록(10)을 전파받은 각 합의노드(620)는 이 블록(10)에 포함된 서명을 검증하고, 이 블록(10)에 포함된 거래의 정당성을 검증한 뒤, 정당하다면 각 합의노드(620)는 이 블록(10)을 자신의 개인키로 서명하여 시스템(1000) 안의 모든 검증노드로 전파하고, 이 서명된 N개의 블록(10)들을 전달 받은 각 검증노드는 이 N개 블록(10) 가운데 N-((N-1)/3)개의 블록(10)이 동일하면 해당 블록(10)을 정당한 블록(10)으로 판단하여 자신의 블록체인(20)에 추가하여 블록체인(20)을 갱신하고 블록체인(20) 갱신에 따라 원장상태저장소(45)의 임의거래주소의 운송비용을 차감하고 화물운송업자(300)의 거래주소에 해당 금액을 추가시킨 상태로 원장상태저장소(45)를 갱신하는 단계(S4100); Each consensus node 620 that has propagated the new signed block 10 verifies the signature contained in this block 10, verifies the validity of the transactions contained in this block 10, and if so, each consensus. Node 620 signs this block 10 with its private key and propagates it to all verification nodes in system 1000, and each verification node that has received these signed N blocks 10 receives these N blocks ( 10) If N-((N-1) / 3) blocks 10 are the same, the block 10 is judged as a legitimate block 10 and added to its blockchain 20 to blockchain 20 ), And according to the blockchain 20 update, subtract the transportation cost of the arbitrary transaction address of the ledger state store 45 and add the corresponding amount to the transaction address of the freight forwarder 300, and then the state ledger state store 45 Updating (S4100);

를 구비하여 이루어지고,Made with

이때, 위 단계(S4000)에서 리더가 되는 합의노드(620)는 계속해서 바뀌고,At this time, the consensus node 620 that becomes the leader in the above step (S4000) continues to change,

위 단계(S4100)에서 N은 전체 합의노드(620)의 갯수이며,In step S4100, N is the total number of consensus nodes 620,

위 단계(S4100)에서 화물운송업자(300)의 거래주소에 해당 금액을 추가시킴으로써 소정의 운송 금액을 자동으로 지급하고,In the above step (S4100) by adding the corresponding amount to the transaction address of the freight forwarder 300, a predetermined amount of payment is automatically paid,

이 시스템(1000) 안의 어떠한 검증노드로 쿼리를 하더라도 모든 검증노드는 항상 동기화된 상태의 원장상태저장소(45)를 가지고 있어서, 화물운송업자(300)가 거래주소에 보유중인 포인트, 임의거래주소에 보유중인 포인트, 화물운송의뢰자(100)가 거래주소에 보유중인 포인트 내역을 동일하게 저장하고 있는 것이 특징이다.No matter which verification node is queried in the system 1000, all verification nodes always have a ledger state store 45 in a synchronized state, so that the freight forwarder 300 holds points at random transaction addresses. Points being, the freight forwarding client 100 is characterized by storing the same details of points held in the transaction address.

한편, 이 발명에서는 모든 검증노드가 새 블록을 전달받으면 블록체인 갱신에 따라서 원장상태저장소(45)의 임의거래주소에서 운송비용이 차감되고 화물운송업자(300)의 주소에 운송비용이 추가된 상태가 갱신된다. On the other hand, in the present invention, if all the verification nodes receive the new block, the transport cost is deducted from the random transaction address of the ledger state store 45 according to the blockchain update, and the transport cost is added to the address of the freight forwarder 300. Is updated.

스마트계약의 수령확인함수의 경우, 먼저 수령확인함수를 일으킨 사용자가 운송의뢰등록시 수취인으로 등록된 사용자가 맞는지 확인한 뒤, 해당 거래가 맡겨놓고 있는 포인트에 대응되는 임의거래주소에서 운송비용을 차감하고 차감한 비용만큼을 수취인의 포인트계좌로 전송하는 로직을 포함하고 있다. 포인트 계좌의 경우 단순히 원장상태저장소에 어떤 사용자가 얼마만큼의 포인트를 보유하고 있다는 것을 나타낸다.In the case of the receipt confirmation function of the smart contract, the user who caused the receipt confirmation function first checks whether the user registered as the recipient at the time of registration of the transport request is correct, and then deducts and subtracts the transportation cost from the random transaction address corresponding to the point in charge of the transaction. It includes logic to send the cost to the recipient's point account. In the case of a point account, it simply indicates that a user has how many points in the ledger state store.

따라서 어떠한 검증노드로 쿼리를 하는지에 상관없이 모든 검증노드는 항상동기화된 상태의 원장상태저장소(45)를 가지고 있으므로, 화물운송업자(300)의 주소에 보유한 포인트, 임의거래주소의 포인트, 화물운송의뢰자(100) 주소에 보유한 포인트 내역을 동일하게 저장하고 있다. Therefore, regardless of which verification node is being queried, all verification nodes always have the ledger state store 45 in a synchronized state. Therefore, points held at the address of the freight forwarder 300, points of random transaction addresses, and freight forwarding clients (100) The point details held at the address are stored in the same manner.

도 5는 위에서 설명한 이 발명에 따른 의뢰자와 운송업자 사이의 운송비용 전달 과정을 도식적으로 나타내고 있다. 스마트계약서의 코인은 이 발명의 포인트를 뜻한다.
5 is a schematic diagram illustrating a transport cost transfer process between a client and a carrier according to the present invention described above. Coin in the smart contract means the point of this invention.

(4) 모듈 D (4) module D

도 2의 시스템(1000)은 화물운송 수수료의 컨소시엄 조직내 공동분배를 위한모듈 D를 더 포함하여 이루어진다. 그리고 모듈 D는 도 6에 도시되어 있고, 특히 도 6b는 모듈 D에 따라 수수료를 공동분배하는 예를 도식적으로 보여주고 있다.The system 1000 of FIG. 2 further comprises a module D for co-distribution within a consortium of freight charges. And module D is shown in FIG. 6, and in particular FIG. 6B schematically shows an example of co-distributing fees according to module D. FIG.

이 발명의 모듈 D는,Module D of the present invention,

화물운송에 따른 수수료 발생시점을 합의클러스터(600)에 참여하는 컨소시엄 조직들(300,500,700,800)이 합의하여 결정하는 단계(S210); 및Determining the time point of the fee due to the freight by consortium organizations (300,500,700,800) participating in the consensus cluster (600) (S210); And

위 수수료 발생시점이 화물운송 의뢰등록시로 결정되면, 화물운송 의뢰등록시 사전에 소정의 로직으로 정의된 스마트 계약의 화물운송의뢰등록함수가 위 운영자료(415)로부터 호출되어 실행되면서 의뢰금액의 소정 비율 만큼의 금액을 임의거래주소로 이동시키고 나머지 금액은 1/N로 나누어 각 컨소시엄조직(500,700,800)이 관리하는 포인트 거래주소에 추가하는 단계(S220); 또는If the point of occurrence of the fee is determined at the time of registering the freight request, the freight rate request registration function of the smart contract defined by the predetermined logic at the time of registering the freight request is called and executed from the operation data 415, and then the predetermined rate of the requested amount. Moving the amount to an arbitrary transaction address and adding the remaining amount to 1 / N to the point transaction address managed by each consortium (500, 700, 800) (S220); or

위 수수료 발생시점이 화물운송의 스마트 계약시로 결정되면, 화물운송의 스마트 계약시 화물운송업자(300)가 시스템(1000) 내부의 각 노드(500,700,800)에 전송되는 복수의 화물운송등록 의뢰건들 가운데 특정 의뢰건을 선택하여 스마트 계약을 체결하면 사전에 소정의 로직으로 정의된 스마트 계약의 화물운송계약함수가 위 운영자료(415)로부터 호출되어 실행되면서 의뢰금액의 소정 비율 만큼의 금액을 임의거래주소로 이동시키고 나머지 금액은 1/N로 나누어 각 컨소시엄조직(500,700,800)이 관리하는 포인트 거래주소에 추가하는 단계(S230); 또는When the point of occurrence of the fee is determined as the smart contract of the freight, the freight carrier 300 during the smart contract of the freight transport among the plurality of freight registration registration requests transmitted to each node (500, 700, 800) in the system 1000 When a smart contract is concluded by selecting a specific request, the freight transport contract function of the smart contract defined by the predetermined logic is called and executed from the operation data 415 above, and an amount of a certain amount of the requested amount is assigned to the random transaction address. Moving to and adding the remaining amount by 1 / N to the point trading address managed by each consortium organization 500, 700, and 800 (S230); or

위 수수료 발생시점이 수취인(200)의 화물 수령확인시로 결정되면, 취인(200)에 의해 화물 수령확인이 이루어지면 사전에 소정의 로직으로 정의된 화물수령확인함수가 위 운영자료(415)로부터 호출되어 실행되면서 의뢰금액의 소정 비율 만큼의 금액을 임의거래주소로 이동시키고 나머지 금액은 1/N로 나누어 각 컨소시엄조직(500,700,800)이 관리하는 포인트 거래주소에 추가하는 단계(S240);If the point of occurrence of the fee is determined at the time of receipt of the cargo by the recipient 200, when the receipt of cargo is confirmed by the recipient 200, the cargo receipt confirmation function defined in advance by the predetermined logic is determined from the operation data 415. Calling and executing, moving a predetermined amount of the requested amount to a random transaction address, and adding the remaining amount to 1 / N to the point transaction address managed by each consortium organization (500, 700, 800) (S240);

를 구비하여 이루어지며,It is made with

이때, N은 전체 합의노드(620)의 갯수인 것이 특징
In this case, N is the number of total consensus nodes 620

(5) 모듈 E(5) module E

도 2의 시스템(1000)은 화물예약시스템에 적용되는 화물운송 단가 합의를 위한 모듈 E를 더 포함하여 이루어진다. 그리고 모듈 E에 따라 조직들 사이에서 운송단가를 합의를 통해 조정하는 예를 도식적으로 보여주고 있다.The system 1000 of FIG. 2 further includes a module E for freight freight unit price agreement applied to the freight reservation system. And in accordance with Module E, we show an example of consensus adjustment of transport costs between organizations.

이 발명에 따른 모듈 E는,Module E according to the invention,

최초 컨소시엄 네크워크 구성시 최초로 만들어지는 제네시스 블록(30)에 컨소시엄 조직(300,500,700,800)들 사이에 합의된 운송단가(35) 정보를 저장시키는 단계(S310);Storing transportation unit price 35 information agreed between the consortium organizations 300, 500, 700, and 800 in the Genesis block 30, which is initially created during the initial consortium network construction (S310);

위 합의된 운송단가(35) 정보가 제네시스 블록(30)에 저장된 뒤, 네트워크 운영중 새로이 운송단가 조정의 필요성을 느끼는 특정 컨소시엄조직이 있으면 해당 조직은 각 조직에서 운영하는 운영관련 웹 어플리케이션을 이용하여 사전에 스마트계약에 정의된 운송단가조정요청 함수를 호출하는 거래를 생성한 뒤 거래 내용을 해당 조직의 개인키인 해당 조직 내부 인증기관의 개인키로 서명하여 네트워크 안의 각 검증노드로 전달하는 단계(S320);After the agreed transportation unit price 35 information is stored in the Genesis block 30, and there is a specific consortium organization that feels the necessity of adjusting the transportation unit price during network operation, the organization uses an operation related web application operated by each organization. After creating a transaction that calls the transport price adjustment request function defined in the smart contract in advance, the transaction contents are signed with the private key of the corresponding organization's internal certification authority, which is the private key of the corresponding organization, and delivered to each verification node in the network (S320). );

위 거래내용을 전달받은 각 검증노드는 전달받은 거래의 정당성 확보를 위해 해당 거래내용을 보낸 주체가 정당한 주체인지와 해당 거래가 정당한지 여부를 검증한 뒤, 정당하다고 판단되면 원장갱신내용을 포함하는 거래의 결과를 생성한 뒤 각 검증노드의 개인키로 서명한 뒤 조직의 운영관련 웹 어플리케이션에 전달하는 단계(S330);Each verification node that has received the above transaction details verifies whether the entity that sent the transaction is a legitimate entity and whether the transaction is justified to ensure the justification of the transaction. Generating a result of the signature and then signing it with a private key of each verification node and delivering the result to an operation related web application of the organization (S330);

서명된 거래결과를 전달받은 웹 어플리케이션은 해당 거래결과를 합의클러스터(600)로 전달하는 단계(S340);Receiving the signed transaction results, the web application step of transmitting the transaction results to the consensus cluster 600 (S340);

합의노드들(620) 가운데 리더가 되는 합의노드(620)는 거래결과를 모아 순차정리하여 새로운 블록(10)을 생성하고 생성된 새 블록(10)에 리더가 되는 합의노드(620)의 개인키로 서명한 내용을 첨부하는 단계(S350);The consensus node 620, which is the leader among the consensus nodes 620, generates a new block 10 by sequentially gathering the transaction results and generates the new block 10 with the private key of the consensus node 620 that is the leader in the generated new block 10. Attaching the signed contents (S350);

리더가 되는 합의노드(620)는 서명한 블록(10)을 모든 합의노드(620)와 검증노드로 전파하는 단계(S360);The consensus node 620 to be a leader may include propagating the signed block 10 to all the consensus nodes 620 and verification nodes (S360);

각 합의노드(620)는 위 전파된 블록(10)에 포함된 서명을 검증하고, 해당 블록(10)에 포함된 거래의 정당성을 검증한 뒤, 정당하다고 판단되면 각 합의노드(620)는 해당 블록(10)을 자신의 개인키로 서명하여 모든 검증노드로 전파하는 단계(S370);Each consensus node 620 verifies the signature included in the propagated block 10, verifies the validity of the transaction included in the block 10, and if it is determined that the consensus node 620 is determined to be right, Signing block 10 with its private key and propagating it to all verification nodes (S370);

위 서명된 블록(10)을 전달 받은 각 검증노드는 모든 합의노드(620)들로부터 모두 N-((N-1)/3)개의 동일한 블록(10)이 전달되면 이를 정당한 블록(10)으로 판단하고 자신의 블록체인(20)에 추가하고, 자신의 원장상태저장소(45)를 갱신하는 단계(S380);Each verification node that receives the above-signed block 10 receives all N-((N-1) / 3) identical blocks 10 from all of the consensus nodes 620 and transfers the same block 10 to the legitimate block 10. Judging and adding it to its own blockchain 20, and updating its ledger state store 45 (S380);

- 여기서 N은 이 시스템(1000) 안의 합의노드(620)의 총 개수, Where N is the total number of consensus nodes 620 in this system 1000,

위 각 검증노드의 갱신된 원장상태저장소(45)에는 위 특정 조직에 의한 운송단가합의를 요청하는 상태가 등록이 되어, 모든 조직에서는 각 조직의 운영관련 웹 어플리케이션을 통해 실시간으로 운송단가합의 요청들을 확인할 수 있어서, 각 조직에서는 동의함, 동의하지 않음의 여부를 체크하여 스마트계약에 사전 정의된 운송단가합의투표 함수를 호출하는 거래를 생성하여 조직의 개인키로 서명한 뒤 검증노드로 전달하는 단계(S390); In the updated ledger state store 45 of each verification node, a state for requesting a transport unit price agreement by the specific organization is registered, and all organizations request transport unit price requests in real time through each organization's operation-related web application. Each organization checks whether it agrees or disagrees, and creates a transaction that calls a transport unit price voting function predefined in the smart contract, signs it with the organization's private key, and passes it to the verification node ( S390);

위 운송단가합의투표 함수를 호출하는 거래내용을 전달받은 각 검증노드는 전달받은 거래의 정당성 확보를 위해 해당 거래내용을 보낸 주체가 정당한 주체인지와 해당 거래가 정당한지 여부를 검증한 뒤, 정당하다고 판단되면 원장갱신내용을 포함하는 거래의 결과를 생성한 뒤 각 검증노드의 개인키로 서명한 뒤 조직의 운영관련 웹 어플리케이션에 전달하는 단계(S400);Each verification node that receives the transaction details that call the above unit price voting function verifies that it is legitimate after verifying whether the entity that sent the transaction is legitimate and whether the transaction is legitimate in order to secure the justification of the transaction received. Generating a result of the transaction including the ledger update contents and then signing the private key of each verification node and delivering the result to an operation related web application of the organization (S400);

서명된 거래결과를 전달받은 웹 어플리케이션은 해당 거래결과를 합의클러스터(600)로 전달하는 단계(S410);Receiving the signed transaction results, the web application transfers the transaction results to the consensus cluster 600 (S410);

합의노드들(620) 가운데 리더가 되는 합의노드(620)는 거래결과를 모아 순차정리하여 새로운 블록(10)을 생성하고 생성된 새 블록(10)에 리더가 되는 합의노드(620)의 개인키로 서명한 내용을 첨부하는 단계(S420);The consensus node 620, which is the leader among the consensus nodes 620, generates a new block 10 by sequentially gathering the transaction results and generates the new block 10 with the private key of the consensus node 620 that is the leader in the generated new block 10. Attaching the signed contents (S420);

리더가 되는 합의노드(620)는 서명한 블록(10)을 모든 합의노드(620)와 검증노드로 전파하는 단계(S430);The consensus node 620 to be a leader may include propagating the signed block 10 to all consensus nodes 620 and verification nodes (S430);

각 합의노드(620)는 위 전파된 블록(10)에 포함된 서명을 검증하고, 해당 블록(10)에 포함된 거래의 정당성을 검증한 뒤, 정당하다고 판단되면 각 합의노드(620)는 해당 블록(10)을 자신의 개인키로 서명하여 모든 검증노드로 전파하는 단계(S440); 및Each consensus node 620 verifies the signature included in the propagated block 10, verifies the validity of the transaction included in the block 10, and if it is determined that the consensus node 620 is determined to be right, Signing block 10 with its private key and propagating it to all verification nodes (S440); And

위 서명된 블록(10)을 전달 받은 각 검증노드는 모든 합의노드(620)들로부터 모두 N-((N-1)/3)개의 동일한 블록(10)이 전달되면 이를 정당한 블록(10)으로 판단하고 자신의 블록체인(20)에 추가하고, 자신의 원장상태저장소(45)를 갱신하는 단계(S450);Each verification node that receives the above-signed block 10 receives all N-((N-1) / 3) identical blocks 10 from all of the consensus nodes 620 and transfers the same block 10 to the legitimate block 10. Judging and adding it to its own blockchain 20, and updating its ledger state store 45 (S450);

를 구비하여 이루어지고,Made with

이때, 스마트계약에서 사전 정의된 위 운송단가합의투표 함수는 N개의 조직중 75%이상의 동의가 쌓일 경우 자동으로 운송단가를 운송의뢰등록함수에서 사용하는 운송단가로 적용하는 로직을 가지고 있는 것이 특징이다.
In this case, the above-mentioned function of voting of the unit cost of transportation is defined in the smart contract and it has the logic of automatically applying the unit of transport price to the unit of transport used in the transport request registration function when more than 75% of N organizations agree. .

6. 모듈 F6. Module F

도 2의 화물예약시스템(1000)에 적용되는 환전소(480)에 의한 포인트의 발행방법을 나타내는 모듈 F를 더 포함하여 이루어진다. 그리고 모듈 F는 도 8에 도시된 바와 같이,It further comprises a module F indicating a method for issuing points by the exchange office 480 is applied to the cargo reservation system 1000 of FIG. And module F is shown in Figure 8,

위 환전소(480)는 사용자의 충전요청이 있으면 사용자의 정당성 검증 과정을 거쳐 검증이 되면 사용자가 소정의 금액을 입금하는 단계(S510);The exchange office 480 is a step of depositing a predetermined amount of money by the user when the user's request for charging is verified through the user's validity verification process (S510);

입금이 제대로 이루어진 것을 확인한 뒤, 환전소(480)는 포인트 충전 거래를 실행하여 환전소(480)의 개인키로 서명하여 첨부한 거래 내용을 검증노드(470)로 전송하면 검증노드(470)는 포인트충전함수를 일으킨 주체가 환전소(480)가 맞는지 첨부된 인증서와 서명을 바탕으로 거래의 정당성을 검증하는 단계(S520); 및After confirming that the payment is made correctly, the exchange office 480 executes the point charging transaction and signs the transaction details attached with the private key of the exchange office 480 to the verification node 470, and then the verification node 470 performs the point charging function. Verifying the legitimacy of the transaction based on the attached certificate and the signature that the subject causing the exchange is correct (S520); And

거래의 정당성이 검증되면, 충전소(480)는 스마트 계약의 포인트충전함수가 저장수단(420) 안의 운영자료(415)로부터 원격 프로시져 호출(Remote Procedure Call) 프로토콜을 사용해서 호출하여 사용자가 입금한 금액을 바탕으로 해당하는 포인트를 계산하여 충전을 요청한 사용자의 포인트를 증가시키는 로직을 수행하는 단계(S530);When the transaction is verified, the charging station 480 calls the point charging function of the smart contract from the operation data 415 in the storage means 420 using the remote procedure call protocol to deposit the amount deposited by the user. Performing logic to increase a point of the user who requested charging by calculating a corresponding point based on the operation (S530);

를 구비하여 이루어지고,Made with

이때 소정의 보안수단(485)을 통해 환전소(480)의 개인키관리를 하는 것이 바람직하다. 그 이유는 환전소(480)가 개인키를 관리하기 때문에 이에 대한 보호가 매우 중요하기 때문이다.At this time, it is preferable to manage the private key of the exchange office 480 through a predetermined security means (485). This is because the exchange office 480 manages the private key, so protection thereof is very important.

이 발명은 화물운송시스템에서 사용할 수 있는 기술이어서 산업상 이용가능성이 매우 높다. 특히 블록체인 기술을 활용하였기에 보안성이 강화된 것이 특징이어서 온라인에서 이루어지는 P2P 화물운송계약시에 매우 유용할 것으로 사료된다.This invention is a technology that can be used in the cargo transportation system, the industrial applicability is very high. In particular, the blockchain technology is used to enhance security, which is very useful for online P2P freight contracts.

10,10A,10B,…,10K: 블록
11: 현재블록의 해시
12: 이전블록의 해시
13: time stamp
15: 블록 헤더
18: 거래 리스트
20: 블록체인(blockchain)
30: 제네시스 블록(Genesis block)
35: 합의된 운송단가
40: 원장
45: 원장상태저장소
100: 화물운송예약자
150: 화물운송예약사용자의 스마트폰
200: 화물수취인
250: 화물수취인의 스마트폰
300: 화물운송업자
350: 화물운송업자의 스마트폰
400: 시스템(1000)의 운영서버
410: 운영체계 프로그램
415: 운영자료
420,430: 저장수단
440: 인증기관(Certified Authority: CA)
450: 앱(Application)
460: 인증서버(Certified Server)
470: 검증노드
480: 환전수단
485: 보안수단
500: 대량 화물운송의뢰 기업
510: 인증기관
520: 검증노드
540,740,840: 운영관련 웹 어플리케이션
600: 합의클러스터(Consensus Cluster)
610: 인증기관
620: 합의노드
700: 화물운송협회
710: 인증기관
720: 검증노드
800: 화물운송업자노조
810: 인증기관
820: 검증노드
900: 최초인증기관(Root CA)
1000: 화물예약시스템
C1,C2,C3: 인증서
PK0: 공개키
PK1,PK2,PK3: 개인키
10, 10A, 10B,... , 10K: block
11: hash of the current block
12: hash of previous block
13: time stamp
15: block header
18: List of transactions
20: blockchain
30: Genesis block
35: agreed freight price
40: ledger
45: Ledger State Store
100: Freight forwarder
150: freight forwarding user's smartphone
200: consignee
250: Cargo Consignee's Smartphone
300: freight forwarder
350: freight forwarder's smartphone
400: operation server of the system (1000)
410: operating system program
415: Operational data
420,430: storage means
440: Certified Authority (CA)
450: Application
460: Certified Server
470: verification node
480: currency exchange means
485: security measures
500: bulk freight forwarding company
510: certification authority
520: verification node
540,740,840: Operational Web Applications
600: Consensus Cluster
610: certification authority
620: consensus node
700: Freight Transportation Association
710: certification authority
720: verification node
800: Freight Forwarders Union
810: certification authority
820: verification node
900: Root CA
1000: Freight Reservation System
C1, C2, C3: Certificate
PK0: public key
PK1, PK2, PK3: Private Key

Claims (12)

화물운송예약 서비스 제공사가 구축한 화물운송예약시스템(1000)을 이용하여 소정의 운송서비스를 제공받기 위해서는 사전에 화물운송예약자(100), 수취인(200), 화물운송업자(300)가 각각 화물예약 서비스 제공사가 제공하는 실시간으로 쿼리가능한 앱(450)을 자신들의 스마트폰(150,250,350)에 다운받아 고객으로 회원가입을 해야 하는 화물운송예약시스템(1000)에서,
위 시스템(1000)은,
- 사용자를 위한 인증서와 개인키를 발급하는 인증기관(610); 및
- 위 시스템(1000)의 각종 거래에 대한 조직 사이의 합의를 도출하기 위한 합의노드(620);
를 구비하고, 화물운송업에 종사하는 서로 다른 이해 관계를 가진 조직들 사이에 각종 거래와 관련된 합의를 도출하기 위한 합의클러스트(600);
- 화물운송예약시스템(1000)의 운영체계 프로그램(410) 및 운영자료(415)를 저장하고 있는 저장수단(420);
- 위 시스템(1000)의 각종 데이터를 저장하기 위한 저장수단(430);
- 위 시스템(1000)의 각종 거래를 인증하기 위해 사전에 최초인증기관(900)으로부터 인증받고 거래를 보낸 사용자가 인증서를 발급받은 조직의 공개키를 사용해서 정당한 회원 사용자에 대해 정당성을 검증하고 인증서를 발급하는 인증기관(440);
- 회원정보를 저장하고 인증기관으로 부터받은 사용자의 개인키와 인증서를 고객에게 전달하기 위한 인증서버(460);
- 내부에 원장(40), 공개키와 개인키를 구비하고 있고, 고객들이 보낸 거래가 정당한 회원 고객으로부터 온 거래인지 여부를 검증하고, 스마트 계약(smart contract)에 따른 거래 결과를 생성하여 자신의 개인키로 서명한 뒤 거래를 발생시킨 고객에게 전달하는 검증노드(470); 및
- 위 시스템(1000)의 거래에 따라 운송비용지급수단으로 소정의 포인트를 사용하며 회원고객의 요청시 회원고객의 입금액에 따라 해당하는 포인트를 발행하는 환전소(480);
를 구비하고 위 운영체계 프로그램(410)을 작동시키기 위한 운영서버(400);
- 여기서 위 서로 다른 이해 관계를 가진 조직들은 화물을 대량으로 운송의뢰하는 기업화물운송의뢰자(500), 화물운송업 종사자들의 공익적 활동을 위한 화물운송협회(700), 화물운송업자들의 노동조합(800)이 포함되며,
- 위 조직(500,700,800)들은 각각
- 해당 조직에 속하는 사용자가 인증서버(460)를 통해 회원가입시 해당 조직에 속하는 회원을 관리하고 사용자등록을 요청하며 등록 뒤 인증서버(460)로 로그인시 인증서버(460)로부터 로그인한 회원에 대한 인증서와 개인키 발급을 의뢰받는 인증기관(510,710,810); 및
- 이때 조직별로 인증기관을 별도로 설치하여 인증서를 바탕으로 참여자의 소속을 명확히 구분하고 해당 블록체인 네트워크에 참여하기 위한 인증서와 개인키 발급 권한을 분산시키며,
- 각각 내부에 원장(40), 공개키와 개인키를 구비하고 있고, 고객들이 보낸 거래가 정당한 회원 고객으로부터 온 거래인지 여부를 검증하고, 스마트 계약(smart contract)에 따른 거래 결과를 생성하여 자신의 개인키로 서명한 뒤 거래를 발생시킨 고객에게 전달하는 검증노드(520,720,820);
를 구비하며,
를 포함하여 이루어지고,
이때, 위 운영체계 프로그램((410)은 이 시스템의 운영을 위해 블록체인기술에 기반한 소정의 화물운송예약방법에 따라 작성되는 것이 특징인, 화물운송예약시스템.
In order to receive a predetermined transportation service using the freight transportation reservation system 1000 established by the freight transportation reservation service provider, the freight forwarding subscriber 100, the recipient 200, and the freight forwarder 300 each have a freight reservation service. In real-time queryable app 450 provided by the provider to their smartphones (150, 250, 350) to download the cargo transportation reservation system 1000 to be a member,
The system 1000,
A certification authority 610 that issues a certificate and a private key for the user; And
A consensus node 620 to derive consensus between organizations for the various transactions of the system 1000;
Consensus cluster 600 for obtaining a consensus related to various transactions between organizations having different interests engaged in the freight forwarding business;
Storage means 420 for storing an operating system program 410 and operating data 415 of the freight transportation reservation system 1000;
Storage means (430) for storing various data of the system (1000);
-In order to authenticate the various transactions of the system 1000, the user who has been authenticated by the initial certification authority 900 in advance and sent the transaction verifies the validity of the valid member user by using the public key of the organization where the certificate was issued. Issuing a certification authority 440;
A certificate server 460 for storing member information and delivering the user's private key and certificate received from the certification authority to the customer;
It has a ledger 40, a public key and a private key inside, verifies whether the transaction sent by the customer is from a legitimate member customer, and generates the transaction result according to the smart contract. A verification node 470 that signs the key and delivers it to the customer who issued the transaction; And
An exchange office 480 that uses predetermined points as means of payment for transportation costs according to the transaction of the system 1000 and issues corresponding points according to the deposit amount of the member customer upon request of the member customer;
It is provided with an operating server 400 for operating the operating system program (410);
-Organizations with different interests above can be referred to as a corporate freight forwarding client (500) who commissions freight in large quantities, a freight transport association (700) for the public interest of workers in the freight forwarding industry, and a union of freight forwarders (800). This includes,
-The above organizations (500, 700, 800) each
-When a user belonging to the organization registers through the authentication server 460, manages the members belonging to the organization, requests user registration, and logs in to the authentication server 460 when logging in with the authentication server 460 after registration. Certificate authorities (510, 710, 810) for requesting issuance of certificates and private keys; And
-At this time, by separately installing a certification authority for each organization, based on the certificate, it clearly identifies the participant's affiliation and distributes the authority to issue certificates and private keys to participate in the blockchain network
Each of them has a ledger 40, a public key and a private key, and verifies whether a transaction sent by the customer is from a legitimate member customer, and generates a transaction result according to a smart contract. A verification node (520, 720, 820) for signing with a private key and forwarding it to the customer who initiated the transaction;
Equipped with
Including,
At this time, the operating system program (410) is characterized in that it is prepared according to a predetermined freight forwarding reservation method based on blockchain technology for the operation of the system, freight forwarding reservation system.
제 1항의 화물예약시스템에 적용되는 소정의 화물운송예약방법에서,
위 소정의 화물운송예약방법은,
화물운송예약자(100)의 화물운송예약의뢰 등록거래를 위한 모듈 A;
모듈 A에 따른 화물운송업자(300)의 화물운송계약 거래를 위한 모듈 B; 및
모듈 A와 모듈 B에 따른 화물수취인(200)의 화물운송확인 거래를 위한 모듈 C;
를 구비하여 이루어지며,
이때, 위 각 모듈은 블록체인기술을 이용하여 구현되는 것이 특징인, 화물운송예약방법.
In the predetermined cargo transportation reservation method applied to the cargo reservation system of claim 1,
The above prescribed cargo reservation method is
Module A for freight transport reservation request registration transaction of the freight carrier;
Module B for a freight forwarding contract transaction of the freight forwarder 300 according to module A; And
A module C for a freight confirmation transaction of the freight recipient 200 according to the module A and the module B;
It is made with
At this time, each module is characterized in that it is implemented using a blockchain technology, freight forwarding reservation method.
제 2항에서, 위 모듈 A는,
화물운송예약자(100)가 앱(450)을 통해 운영서버(400)에 로그인하면 운영서버(400)는 인증서버(460)를 통해 신원인증을 하여 인증이 되면 화물운송예약자(100)에게 인증서(C1)와 개인키(PK1)를 전송하는 단계(S1100);
C1과 PK1을 전달받은 화물운송예약자(100)는 화물운송의뢰를 위해 소정의 화물운송정보를 입력하는 단계(S1200);
- 이때, 화물운송예약자(100)에 대한 개인정보는 인증서버(460)에 저장된 회원정보를 바탕으로 자동으로 운영서버(400)에 등록되고,
위 운송정보가 입력되면 운영서버(400)는 위 운송정보에 포함된 출발지와 목적지 정보에 따라 운송거리를 자동으로 계산하는 단계(S1300);
화물운송예약자(100)가 앱(450)에서 운송정보를 입력한 뒤 화물운송의뢰 등록버튼을 누르면 화물운송예약자(100)의 스마트폰(150)에 설치된 앱(450)은 운송의뢰등록 거래(T1), 인증서(C1), 개인키(PK1)로 서명한 거래내용과 함께 검증노드(470)로 자동으로 전송하여 화물운송예약의뢰 등록 거래(T1)를 실행하는 단계(S1400);
운송의뢰등록 거래(T1) 내용이 검증노드(470)로 전송되면 검증노드(470)는 이 거래(T1)가 정당한 사용자에 의해 전송된 것인지 여부를 인증서(C1)을 발급한 인증기관(440)의 공개키(PK0)를 통해 사용자의 정당성을 검증하는 단계(S1500);
검증노드(470)는 화물운송예약자(100)로부터 거래(T1)가 전송되면 스마트 계약의 화물운송의뢰등록함수가 저장수단(420) 안의 운영자료(415)로부터 원격 프로시져 호출(Remote Procedure Call) 프로토콜을 사용하여 호출되어 운송 거리, 화물의 무게 및 부피를 바탕으로 운송 단가가 제네시스 블록(30)에 저장된 합의된 운송단가(34)를 바탕으로 자동으로 책정되고, 운송 단가와 의뢰인(100)의 포인트 보유금액을 비교하여 만약 운송 단가보다 의뢰인(100)의 포인트 보유금액이 적으면 운송등록을 거부하고, 만약 보유금액이 운송 단가보다 많거나 같으면, 임의거래주소를 생성하여 해당 주소에 운송단가에 해당하는 포인트를 의뢰인(100)의 포인트 계좌에서 차감하여 임의거래주소에 넣는 단계(S1600);
검증노드(470)는 원장갱신내용이 포함되고 검증노드(470)의 개인키(PK0)로 서명된 거래 결과(TR1)를 만드는 단계(S1700);
검증노드(470)는 만들어진 거래 결과(TR1)를 화물운송예약자(100)에게 전송하는 단계(S1800);
화물운송예약자(100)의 앱(450)은 위 거래 결과(TR1)를 전송받으면 이를 자동으로 합의 클러스터(600)로 전송하는 단계(S1900);
거래 결과(TR1)를 전송받은 합의 클러스트(600)는 내부적으로 합의클러스트(600)에서 리더가 되는 합의노드(620)가 거래결과를 모아 순차정리하여 새 블록(10)을 생성하고 생성된 새 블록(10)에 합의노드(620)의 개인키로 서명한 내용을 첨부 한 뒤 리더가 되는 합의노드(620)는 서명된 새 블록(10)을 모든 합의노드(620)와 검증노드로 전파하는 단계(S2000); 및
서명된 새 블록(10)을 전파받은 각 합의노드(620)는 이 블록(10)에 포함된 서명을 검증하고, 이 블록(10)에 포함된 거래의 정당성을 검증한 뒤, 정당하다면 각 합의노드(620)는 이 블록(10)을 자신의 개인키로 서명하여 시스템(1000) 안의 모든 검증노드로 전파하고, 이 서명된 N개의 블록(10)들을 전달 받은 각 검증노드는 이 N개 블록(10) 가운데 N-((N-1)/3)개의 블록(10)이 동일하면 해당 블록(10)을 정당한 블록(10)으로 판단하여 자신의 블록체인(20)에 추가하고, 원장상태저장소(45)를 갱신하는 단계(S2100);
를 구비하여 이루어지고,
이때, 위 단계(S2000)에서 리더가 되는 합의노드(620)는 계속해서 바뀌고,
N은 전체 합의노드(620)의 갯수인 것이 특징인, 화물운송예약방법.
The method of claim 2, wherein the module A,
If the freight shipping scheduler 100 is logged in to the operation server 400 through the app 450, the operation server 400 is authenticated through the authentication server 460 to be authenticated when the certificate to the freight shipping scheduler 100 ( C1) and transmitting the private key PK1 (S1100);
Receiving the C1 and PK1 freight forwarding subscriber 100 inputs a predetermined freight transport information for the freight transport request (S1200);
-At this time, the personal information for the freight transportation reservation 100 is automatically registered in the operation server 400 based on the member information stored in the authentication server 460,
When the above transport information is input, the operation server 400 automatically calculates a transport distance according to the origin and destination information included in the above transport information (S1300);
If the freight shipping subscriber 100 enters the transport information in the app 450, and then press the button to register the freight transport request, the app 450 installed on the smart phone 150 of the freight transport subscriber 100 is a transport request registration transaction (T1) (S1400) executing a freight transport reservation request registration transaction (T1) by automatically transmitting to the verification node (470) together with the transaction information signed by the certificate (C1) and the private key (PK1);
When the contents of the transport request registration transaction (T1) are transmitted to the verification node (470), the verification node (470) determines whether the transaction (T1) has been transmitted by a legitimate user. Verifying legitimacy of the user through the public key PK0 (S1500);
The verification node 470 sends a remote procedure call protocol from the operation data 415 in the storage means 420 when the transaction T1 is transmitted from the freight forwarder 100. Called using, the transportation unit price is automatically based on the agreed transportation unit price 34 stored in the Genesis block 30 based on the transportation distance, the weight and volume of the cargo, and the transportation unit price and the point of the client 100 By comparing the holding amount, if the point holding amount of the client 100 is smaller than the shipping unit price, the registration is rejected. If the holding amount is more than or equal to the shipping unit price, a random transaction address is generated to correspond to the shipping unit price. Subtracting the point from the point account of the client 100 and putting it in an arbitrary transaction address (S1600);
The verification node 470 includes a transaction result TR1 including the ledger update contents and signed with the private key PK0 of the verification node 470 (S1700);
The verification node 470 transmits the made transaction result TR1 to the freight transport subscriber 100 (S1800);
App 450 of the freight shipping subscriber 100 is automatically sent to the consensus cluster 600 when receiving the transaction result (TR1) (S1900);
Consensus cluster 600, which received the transaction result TR1, internally generates a new block 10 by sequentially arranging the transaction results by the consensus node 620, which is the leader in the consensus cluster 600, and generates the new block 10. After attaching the content signed by the private key of the consensus node 620 to (10), the consensus node 620, which becomes the leader, propagates the signed new block 10 to all the consensus nodes 620 and the verification node ( S2000); And
Each consensus node 620 that has propagated the new signed block 10 verifies the signature contained in this block 10, verifies the validity of the transactions contained in this block 10, and if so, each consensus. Node 620 signs this block 10 with its private key and propagates it to all verification nodes in system 1000, and each verification node that has received these signed N blocks 10 receives these N blocks ( 10) If N-((N-1) / 3) blocks 10 are the same, the block 10 is judged as a legitimate block 10 and added to its blockchain 20, and ledger state storage Updating 45 (S2100);
Made with
At this time, the consensus node 620 that becomes the leader in the above step (S2000) is continuously changed,
N is characterized in that the total number of nodes (620), freight booking method.
제 2항에서, 위 모듈 B는,
화물운송업자(300)가 앱(450)을 통해 운영서버(400)에 로그인하면 운영서버(400)는 인증서버(460)를 통해 신원인증을 하여 인증이 되면 화물운송업자(300)에게 인증서(C2)와 개인키(PK2)를 전달하는 단계(S2200);
인증서(C2)와 개인키(PK2)를 전달받은 화물운송업자(300)는 등록된 화물운송의뢰 등록 건들을 검색하기 위해 소정의 운송검색정보를 입력하는 단계(S2300);
- 이때, 화물운송업자(300)에 대한 개인정보는 인증서버(460)에 저장된 회원정보를 바탕으로 자동으로 운영서버(400)에 등록되고,
화물운송업자(300)가 실시간으로 쿼리가능한 앱(450)을 통해 시스템(1000) 안의 각 검증노드(470,520,720,820) 내부의 원장상태저장소(45)에 저장된 화물운송의뢰 등록건들을 위 검증노드(470,520,720,820) 가운데 하나에서 확인하는 단계(S2400);
화물운송업자(300)가 등록된 화물의뢰를 확인하여 원하는 화물의뢰를 선택하여 계약하는 거래(T2)를 수행하는 단계(S2500);
화물운송업자(300)가 앱(450)에서 등록된 화물의뢰 계약버튼을 누르면 화물운송업자(300)의 스마트폰(350)에 설치된 앱(450)은 계약 거래(T2), 인증서(C2), 개인키(PK2)로 서명한 거래내용을 검증노드(470)로 자동으로 전송하는 단계(S2600);
계약 거래(T2)가 검증노드(470)로 전송되면 검증노드(470)는 이 거래(T2)가 정당한 사용자에 의해 전송된 것인지 여부를 인증서(C2)을 발급한 인증기간(440)의 공개키(PK0)를 통해 사용자(300)의 정당성을 검증하는 단계(S2700);
검증노드(470)는 화물운송업자(300)로부터 거래(T2)가 전송되면 이 거래(T2)에 대해 원장갱신내용이 포함되고 검증노드(470)의 개인키(PK0)로 서명된 거래 결과(TR2)를 만드는 단계(S2800);
검증노드(470)는 위 만들어진 거래 결과(TR2)를 화물운송업자(300)에게 전송하는 단계(S2900);
화물운송업자(300)의 앱(450)은 위 거래 결과(TR2)를 전송받으면 자동으로 합의 클러스터(600)로 전송하는 단계(S3000);
거래 결과(TR2)를 전송받은 합의 클러스트(600)는 내부적으로 합의클러스트(600)에서 리더가 되는 합의노드(620)가 거래결과를 모아 순차정리하여 새 블록(10)을 생성하고 생성된 새 블록(10)에 합의노드(620)의 개인키로 서명한 내용을 첨부 한 뒤 리더가 되는 합의노드(620)는 서명된 새 블록(10)을 모든 합의노드(620)와 검증노드로 전파하는 단계(S3100);
서명된 새 블록(10)을 전파받은 각 합의노드(620)는 이 블록(10)에 포함된 서명을 검증하고, 이 블록(10)에 포함된 거래의 정당성을 검증한 뒤, 정당하다면 각 합의노드(620)는 이 블록(10)을 자신의 개인키로 서명하여 시스템(1000) 안의 모든 검증노드로 전파하고, 이 서명된 N개의 블록(10)들을 전달 받은 각 검증노드는 이 N개 블록(10) 가운데 N-((N-1)/3)개의 블록(10)이 동일하면 해당 블록(10)을 정당한 블록(10)으로 판단하여 자신의 블록체인(20)에 추가하고, 각각 검증노드 내부의 원장상태저장소(45)를 갱신하는 단계(S3200); 및
계약 거래(T2)를 실행한 화물운송업자(300)는 화물을 화물운송예약자(100)에게서 받아 적재한 뒤 수취인(200)에게 운송하는 단계(S3300);
를 구비하여 이루어지고,
이때, 위 단계(S3100)에서 리더가 되는 합의노드(620)는 계속해서 바뀌고,
N은 전체 합의노드(620)의 갯수인 것이 특징인, 화물운송예약방법.
The method of claim 2, wherein the module B,
When the freight transporter 300 logs in to the operation server 400 through the app 450, the operation server 400 authenticates the identity through the authentication server 460 and is authenticated to the freight transporter 300 by the certificate (C2). And transmitting the private key PK2 (S2200);
The freight forwarder 300, which has received the certificate C2 and the private key PK2, inputs predetermined transport search information to search for registered freight forwarding registration cases (S2300);
-At this time, the personal information for the freight forwarder 300 is automatically registered in the operation server 400 based on the member information stored in the authentication server 460,
Among the verification nodes (470, 520, 720, 820) of the freight transport request registration stored in the ledger state storage 45 in each verification node (470, 520, 720, 820) in the system 1000 through the app 450 that can be queried in real time by the app 450 Checking in one (S2400);
Cargo transporter 300 performs a transaction (T2) to check the registered cargo request to select the desired cargo request and contract (S2500);
Freight forwarder 300, the app 450 installed on the smart phone 350 of the freight forwarder 300 when pressing the registered request button on the freight contract contract (T2), certificate (C2), private key (S2600) automatically transmitting the transaction content signed with (PK2) to the verification node (470);
When the contract transaction (T2) is sent to the verification node (470), the verification node (470) determines whether the transaction (T2) has been sent by a legitimate user, or the public key of the authentication period (440) that issued the certificate (C2). Verifying the validity of the user 300 through PK0 (S2700);
When the transaction T2 is transmitted from the freight forwarder 300, the verification node 470 includes the ledger renewal content for the transaction T2 and the transaction result (TR2) signed with the private key PK0 of the verification node 470. Step (S2800);
The verification node 470 transmits the transaction result TR2 made above to the freight forwarder 300 (S2900);
App 450 of the freight carrier 300 is automatically sent to the consensus cluster 600 when receiving the transaction result (TR2) (S3000);
The settlement cluster 600 that has received the transaction result TR2 is internally generated by the settlement node 620, which is the leader in the settlement cluster 600, gathers the transaction results, generates a new block 10, and generates a new block. After attaching the content signed by the private key of the consensus node 620 to (10), the consensus node 620, which becomes the leader, propagates the signed new block 10 to all the consensus nodes 620 and the verification node ( S3100);
Each consensus node 620 that has propagated the new signed block 10 verifies the signature contained in this block 10, verifies the validity of the transactions contained in this block 10, and if so, each consensus. Node 620 signs this block 10 with its private key and propagates it to all verification nodes in system 1000, and each verification node that has received these signed N blocks 10 receives these N blocks ( 10) If N-((N-1) / 3) blocks 10 are the same, the corresponding block 10 is determined to be a legitimate block 10 and added to the own blockchain 20, each of which is a verification node. Updating the internal ledger state storage 45 (S3200); And
Cargo carrier 300 that executes the contract transaction (T2) receives the load from the freight shipping scheduler 100 and loads the freight to the recipient 200 (S3300);
Made with
At this time, the consensus node 620 that becomes the leader in the above step (S3100) continues to change,
N is characterized in that the total number of nodes (620), freight booking method.
제 2항에서, 위 모듈 C는,
화물을 운송받은 수취인(200)은 운송내용을 확인한 뒤 운송이 계약 내용과 같이 정확하게 이루어졌으면 앱(450)에서 수령버튼을 눌러서 수령확인 거래(T3)를 실행하는 단계(S3400);
수취인(200)의 스마트폰(250)에 설치된 앱(450)은 수령확인 거래(T3) 내용, 인증기관(440)이 수취인(200)을 인증하고 발급한 인증서(C3), 개인키(PK3)로 서명한 거래내용을 검증노드(470)로 자동으로 전송하는 단계(S3500);
수령확인 거래(T3)가 검증노드(470)로 전송되면 검증노드(470)는 이 거래(T3)가 정당한 사용자(200)에 의해 전송된 것인지 여부를 인증서(C3)를 발급한 인증기관(440)의 공개키(PK0)를 통해 사용자(200)의 정당성을 검증하는 단계(S3600);
검증노드(470)는 수취인(200)으로부터 거래(T3)가 전송되면 이 거래(T3)에 대해 원장갱신내용이 포함되고 검증노드(470)의 개인키(PK0)로 서명된 거래 결과(TR3)를 만드는 단계(S3700);
검증노드(470)는 만들어진 거래 결과(TR3)를 수취인(200)에게 전송하는 단계(S3800);
수취인(200)의 앱(450)은 위 거래 결과(TR3)를 전송받으면 자동으로 합의 클러스터(600)로 전송하는 단계(S3900);
거래 결과(TR3)를 전송받은 합의 클러스트(600)는 내부적으로 합의클러스트(600)에서 리더가 되는 합의노드(620)가 거래결과를 모아 순차정리하여 새 블록(10)을 생성하고 생성된 새 블록(10)에 합의노드(620)의 개인키로 서명한 내용을 첨부 한 뒤 리더가 되는 합의노드(620)는 서명된 새 블록(10)을 모든 합의노드(620)와 검증노드로 전파하는 단계(S4000); 및
서명된 새 블록(10)을 전파받은 각 합의노드(620)는 이 블록(10)에 포함된 서명을 검증하고, 이 블록(10)에 포함된 거래의 정당성을 검증한 뒤, 정당하다면 각 합의노드(620)는 이 블록(10)을 자신의 개인키로 서명하여 시스템(1000) 안의 모든 검증노드로 전파하고, 이 서명된 N개의 블록(10)들을 전달 받은 각 검증노드는 이 N개 블록(10) 가운데 N-((N-1)/3)개의 블록(10)이 동일하면 해당 블록(10)을 정당한 블록(10)으로 판단하여 자신의 블록체인(20)에 추가하여 블록체인(20)을 갱신하고 블록체인(20) 갱신에 따라 원장상태저장소(45)의 임의거래주소의 운송비용을 차감하고 화물운송업자(300)의 거래주소에 해당 금액을 추가시킨 상태로 원장상태저장소(45)를 갱신하는 단계(S4100);
를 구비하여 이루어지고,
이때, 위 단계(S4000)에서 리더가 되는 합의노드(620)는 계속해서 바뀌고,
위 단계(S4100)에서 N은 전체 합의노드(620)의 갯수이며,
위 단계(S4100)에서 화물운송업자(300)의 거래주소에 해당 금액을 추가시킴으로써 소정의 운송 금액을 자동으로 지급하고,
이 시스템(1000) 안의 어떠한 검증노드로 쿼리를 하더라도 모든 검증노드는 항상 동기화된 상태의 원장상태저장소(45)를 가지고 있어서, 화물운송업자(300)가 거래주소에 보유중인 포인트, 임의거래주소에 보유중인 포인트, 화물운송의뢰자(100)가 거래주소에 보유중인 포인트 내역을 동일하게 저장하고 있는 것이 특징인, 화물운송예약방법.
The method of claim 2, wherein the module C,
Recipient receiving the cargo 200 checks the contents of the transport and if the transportation is made exactly as the contract details, and executes the receipt confirmation transaction (T3) by pressing the receipt button in the app 450 (S3400);
The app 450 installed on the smartphone 250 of the payee 200 is a receipt confirmation transaction (T3) contents, a certificate (C3), and a private key (PK3) that the certification authority 440 authenticates and issues the payee 200. Automatically transmitting the signed transaction details to the verification node 470 (S3500);
When the receipt confirmation transaction (T3) is sent to the verification node (470), the verification node (470) determines whether the transaction (T3) has been sent by the legitimate user (200) or the certification authority (440) that issued the certificate (C3). Verifying legitimacy of the user 200 through the public key PK0 of step S3600;
When the transaction T3 is transmitted from the payee 200, the verification node 470 includes the ledger renewal content for the transaction T3 and is signed with the private key PK0 of the verification node 470 (TR3). Creating step (S3700);
The verification node 470 may transmit the created transaction result TR3 to the payee 200 (S3800);
App 450 of the recipient 200 is automatically sent to the consensus cluster 600 when receiving the transaction result (TR3) (S3900);
Consensus cluster 600, which has received the transaction result TR3, internally generates a new block 10 by sequentially arranging the transaction results by the consensus node 620, which is the leader in the consensus cluster 600, and generates a new block. After attaching the content signed by the private key of the consensus node 620 to (10), the consensus node 620, which becomes the leader, propagates the signed new block 10 to all the consensus nodes 620 and the verification node ( S4000); And
Each consensus node 620 that has propagated the new signed block 10 verifies the signature contained in this block 10, verifies the validity of the transactions contained in this block 10, and if so, each consensus. Node 620 signs this block 10 with its private key and propagates it to all verification nodes in system 1000, and each verification node that has received these signed N blocks 10 receives these N blocks ( 10) If N-((N-1) / 3) blocks 10 are the same, the block 10 is judged as a legitimate block 10 and added to its blockchain 20 to blockchain 20 ), And according to the blockchain 20 update, subtract the transportation cost of the arbitrary transaction address of the ledger state store 45 and add the corresponding amount to the transaction address of the freight forwarder 300, and then the state ledger state store 45 Updating (S4100);
Made with
At this time, the consensus node 620 that becomes the leader in the above step (S4000) continues to change,
In step S4100, N is the total number of consensus nodes 620,
In the above step (S4100) by adding the corresponding amount to the transaction address of the freight forwarder 300, a predetermined amount of payment is automatically paid,
No matter which verification node is queried in the system 1000, all verification nodes always have a ledger state store 45 in a synchronized state, so that the freight forwarder 300 holds points at random transaction addresses Points being, characterized in that the freight forwarding client (100) stores the same details of points held in the transaction address, freight forwarding reservation method.
제 3항에서, 위 소정의 화물운송정보는 화물운송 의뢰인(100)의 이름, 주소 및 연락처, 출발지, 목적지, 화물 수취인(200)의 이름, 주소 및 연락처, 적재목록, 화물의 무게, 화물의 부피, 화물 내용에 대한 정보를 포함하는 것이In claim 3, the above predetermined freight transportation information is the name, address and contact information of the freight forwarding client 100, origin, destination, freight recipient 200 name, address and contact information, load list, the weight of the cargo, the cargo To include information about volume and cargo content 제 2항에서, 화물운송 수수료의 컨소시엄 조직내 공동분배를 위한 모듈 D를 더 포함하는 것이 특징인, 화물운송예약방법.3. The method of claim 2, further comprising a module D for co-distribution within a consortium of freight charges. 제 7항에서, 위 모듈 D는,
화물운송에 따른 수수료 발생시점을 합의클러스터(600)에 참여하는 컨소시엄 조직들(300,500,700,800)이 합의하여 결정하는 단계(S210); 및
위 수수료 발생시점이 화물운송 의뢰등록시로 결정되면, 화물운송 의뢰등록시 사전에 소정의 로직으로 정의된 스마트 계약의 화물운송의뢰등록함수가 위 운영자료(415)로부터 호출되어 실행되면서 의뢰금액의 소정 비율 만큼의 금액을 임의거래주소로 이동시키고 나머지 금액은 1/N로 나누어 각 컨소시엄조직(500,700,800)이 관리하는 포인트 거래주소에 추가하는 단계(S220); 또는
위 수수료 발생시점이 화물운송의 스마트 계약시로 결정되면, 화물운송의 스마트 계약시 화물운송업자(300)가 시스템(1000) 내부의 각 노드(500,700,800)에 전송되는 복수의 화물운송등록 의뢰건들 가운데 특정 의뢰건을 선택하여 스마트 계약을 체결하면 사전에 소정의 로직으로 정의된 스마트 계약의 화물운송계약함수가 위 운영자료(415)로부터 호출되어 실행되면서 의뢰금액의 소정 비율 만큼의 금액을 임의거래주소로 이동시키고 나머지 금액은 1/N로 나누어 각 컨소시엄조직(500,700,800)이 관리하는 포인트 거래주소에 추가하는 단계(S230); 또는
위 수수료 발생시점이 수취인(200)의 화물 수령확인시로 결정되면, 취인(200)에 의해 화물 수령확인이 이루어지면 사전에 소정의 로직으로 정의된 화물수령확인함수가 위 운영자료(415)로부터 호출되어 실행되면서 의뢰금액의 소정 비율 만큼의 금액을 임의거래주소로 이동시키고 나머지 금액은 1/N로 나누어 각 컨소시엄조직(500,700,800)이 관리하는 포인트 거래주소에 추가하는 단계(S240);
를 구비하여 이루어지며,
이때, N은 전체 합의노드(620)의 갯수인 것이 특징인, 화물운송예약방법.
The method of claim 7, wherein the module D,
Determining the time point of the fee due to the freight by consortium organizations (300,500,700,800) participating in the consensus cluster (600) (S210); And
If the point of occurrence of the fee is determined at the time of registering the freight request, the freight rate request registration function of the smart contract defined by the predetermined logic at the time of registering the freight request is called and executed from the operation data 415, and then the predetermined rate of the requested amount. Moving the amount to an arbitrary transaction address and adding the remaining amount to 1 / N to the point transaction address managed by each consortium (500, 700, 800) (S220); or
When the point of occurrence of the fee is determined as the smart contract of the freight, the freight carrier 300 during the smart contract of the freight transport among the plurality of freight registration registration requests transmitted to each node (500, 700, 800) in the system 1000 When a smart contract is concluded by selecting a specific request, the freight transport contract function of the smart contract defined by the predetermined logic is called and executed from the operation data 415 above, and an amount of a certain amount of the requested amount is assigned to the random transaction address. Moving to and adding the remaining amount by 1 / N to the point trading address managed by each consortium organization 500, 700, and 800 (S230); or
If the point of occurrence of the fee is determined at the time of receipt of the cargo by the recipient 200, when the receipt of cargo is confirmed by the recipient 200, the cargo receipt confirmation function defined in advance by the predetermined logic is determined from the operation data 415. Calling and executing, moving a predetermined amount of the requested amount to a random transaction address, and adding the remaining amount to 1 / N to the point transaction address managed by each consortium organization (500, 700, 800) (S240);
It is made with
At this time, N is characterized in that the total number of nodes 620, the cargo transportation reservation method.
제 2항에서, 화물예약시스템에 적용되는 화물운송 단가 합의를 위한 모듈 E를 더 포함하는 것이 특징인, 화물운송예약방법.The method of claim 2, characterized in that it further comprises a module E for freight freight price agreement applied to the cargo reservation system. 제 9항에서, 위 모듈 E는,
최초 컨소시엄 네크워크 구성시 최초로 만들어지는 제네시스 블록(30)에 컨소시엄 조직(300,500,700,800)들 사이에 합의된 운송단가(35) 정보를 저장시키는 단계(S310);
위 합의된 운송단가(35) 정보가 제네시스 블록(30)에 저장된 뒤, 네트워크 운영중 새로이 운송단가 조정의 필요성을 느끼는 특정 컨소시엄조직이 있으면 해당 조직은 각 조직에서 운영하는 운영관련 웹 어플리케이션을 이용하여 사전에 스마트계약에 정의된 운송단가조정요청 함수를 호출하는 거래를 생성한 뒤 거래 내용을 해당 조직의 개인키인 해당 조직 내부 인증기관의 개인키로 서명하여 네트워크 안의 각 검증노드로 전달하는 단계(S320);
위 거래내용을 전달받은 각 검증노드는 전달받은 거래의 정당성 확보를 위해 해당 거래내용을 보낸 주체가 정당한 주체인지와 해당 거래가 정당한지 여부를 검증한 뒤, 정당하다고 판단되면 원장갱신내용을 포함하는 거래의 결과를 생성한 뒤 각 검증노드의 개인키로 서명한 뒤 조직의 운영관련 웹 어플리케이션에 전달하는 단계(S330);
서명된 거래결과를 전달받은 웹 어플리케이션은 해당 거래결과를 합의클러스터(600)로 전달하는 단계(S340);
합의노드들(620) 가운데 리더가 되는 합의노드(620)는 거래결과를 모아 순차정리하여 새로운 블록(10)을 생성하고 생성된 새 블록(10)에 리더가 되는 합의노드(620)의 개인키로 서명한 내용을 첨부하는 단계(S350);
리더가 되는 합의노드(620)는 서명한 블록(10)을 모든 합의노드(620)와 검증노드로 전파하는 단계(S360);
각 합의노드(620)는 위 전파된 블록(10)에 포함된 서명을 검증하고, 해당 블록(10)에 포함된 거래의 정당성을 검증한 뒤, 정당하다고 판단되면 각 합의노드(620)는 해당 블록(10)을 자신의 개인키로 서명하여 모든 검증노드로 전파하는 단계(S370);
위 서명된 블록(10)을 전달 받은 각 검증노드는 모든 합의노드(620)들로부터 모두 N-((N-1)/3)개의 동일한 블록(10)이 전달되면 이를 정당한 블록(10)으로 판단하고 자신의 블록체인(20)에 추가하고, 자신의 원장상태저장소(45)를 갱신하는 단계(S380);
- 여기서 N은 이 시스템(1000) 안의 합의노드(620)의 총 개수,
위 각 검증노드의 갱신된 원장상태저장소(45)에는 위 특정 조직에 의한 운송단가합의를 요청하는 상태가 등록이 되어, 모든 조직에서는 각 조직의 운영관련 웹 어플리케이션을 통해 실시간으로 운송단가합의 요청들을 확인할 수 있어서, 각 조직에서는 동의함, 동의하지 않음의 여부를 체크하여 스마트계약에 사전 정의된 운송단가합의투표 함수를 호출하는 거래를 생성하여 조직의 개인키로 서명한 뒤 검증노드로 전달하는 단계(S390);
위 운송단가합의투표 함수를 호출하는 거래내용을 전달받은 각 검증노드는 전달받은 거래의 정당성 확보를 위해 해당 거래내용을 보낸 주체가 정당한 주체인지와 해당 거래가 정당한지 여부를 검증한 뒤, 정당하다고 판단되면 원장갱신내용을 포함하는 거래의 결과를 생성한 뒤 각 검증노드의 개인키로 서명한 뒤 조직의 운영관련 웹 어플리케이션에 전달하는 단계(S400);
서명된 거래결과를 전달받은 웹 어플리케이션은 해당 거래결과를 합의클러스터(600)로 전달하는 단계(S410);
합의노드들(620) 가운데 리더가 되는 합의노드(620)는 거래결과를 모아 순차정리하여 새로운 블록(10)을 생성하고 생성된 새 블록(10)에 리더가 되는 합의노드(620)의 개인키로 서명한 내용을 첨부하는 단계(S420);
리더가 되는 합의노드(620)는 서명한 블록(10)을 모든 합의노드(620)와 검증노드로 전파하는 단계(S430);
각 합의노드(620)는 위 전파된 블록(10)에 포함된 서명을 검증하고, 해당 블록(10)에 포함된 거래의 정당성을 검증한 뒤, 정당하다고 판단되면 각 합의노드(620)는 해당 블록(10)을 자신의 개인키로 서명하여 모든 검증노드로 전파하는 단계(S440); 및
위 서명된 블록(10)을 전달 받은 각 검증노드는 모든 합의노드(620)들로부터 모두 N-((N-1)/3)개의 동일한 블록(10)이 전달되면 이를 정당한 블록(10)으로 판단하고 자신의 블록체인(20)에 추가하고, 자신의 원장상태저장소(45)를 갱신하는 단계(S450);
를 구비하여 이루어지고,
이때, 스마트계약에서 사전 정의된 위 운송단가합의투표 함수는 N개의 조직중 75%이상의 동의가 쌓일 경우 자동으로 운송단가를 운송의뢰등록함수에서 사용하는 운송단가로 적용하는 로직을 가지고 있는 것이 특징인, 화물운송예약방법.
The method of claim 9, wherein the module E,
Storing transportation unit price 35 information agreed between the consortium organizations 300, 500, 700, and 800 in the Genesis block 30, which is initially created during the initial consortium network construction (S310);
After the agreed transportation unit price 35 information is stored in the Genesis block 30, and there is a specific consortium organization that feels the necessity of adjusting the transportation unit price during network operation, the organization uses an operation related web application operated by each organization. After creating a transaction that calls the transport price adjustment request function defined in the smart contract in advance, the transaction contents are signed with the private key of the corresponding organization's internal certification authority, which is the private key of the organization, and delivered to each verification node in the network (S320 );
Each verification node that has received the above transaction details verifies whether the entity that sent the transaction is a legitimate entity and whether the transaction is justified to ensure the justification of the transaction. Generating a result of the signature and then signing it with a private key of each verification node and delivering the result to an operation related web application of the organization (S330);
Receiving the signed transaction results, the web application step of transmitting the transaction results to the consensus cluster 600 (S340);
The consensus node 620, which is the leader among the consensus nodes 620, generates a new block 10 by sequentially gathering the transaction results and generates the new block 10 with the private key of the consensus node 620 that is the leader in the generated new block 10. Attaching the signed contents (S350);
The consensus node 620 to be a leader may include propagating the signed block 10 to all the consensus nodes 620 and verification nodes (S360);
Each consensus node 620 verifies the signature included in the propagated block 10, verifies the validity of the transaction included in the block 10, and if it is determined that the consensus node 620 is determined to be right, Signing block 10 with its private key and propagating it to all verification nodes (S370);
Each verification node that receives the above-signed block 10 receives all N-((N-1) / 3) identical blocks 10 from all of the consensus nodes 620 and transfers the same block 10 to the legitimate block 10. Judging and adding it to its own blockchain 20, and updating its ledger state store 45 (S380);
Where N is the total number of consensus nodes 620 in this system 1000,
In the updated ledger state store 45 of each verification node, a state requesting a transport unit price agreement by the specific organization is registered, and all organizations request the unit price of the transport unit price in real time through each organization's operation-related web application. Each organization checks whether it agrees or disagrees, and creates a transaction that calls a transport unit price voting function predefined in the smart contract, signs it with the organization's private key, and passes it to the verification node ( S390);
Each verification node that receives the transaction details that call the above unit price voting function verifies that it is legitimate after verifying whether the entity that sent the transaction is legitimate and whether the transaction is legitimate in order to secure the justification of the transaction received. Generating a result of the transaction including the ledger update contents and then signing the private key of each verification node and delivering the result to an operation related web application of the organization (S400);
Receiving the signed transaction results, the web application transfers the transaction results to the consensus cluster 600 (S410);
The consensus node 620, which is the leader among the consensus nodes 620, generates a new block 10 by sequentially gathering the transaction results and generates the new block 10 with the private key of the consensus node 620 that is the leader in the generated new block 10. Attaching the signed contents (S420);
The consensus node 620 to be a leader may include propagating the signed block 10 to all consensus nodes 620 and verification nodes (S430);
Each consensus node 620 verifies the signature included in the propagated block 10, verifies the validity of the transaction included in the block 10, and if it is determined that the consensus node 620 is determined to be right, Signing block 10 with its private key and propagating it to all verification nodes (S440); And
Each verification node that receives the above-signed block 10 receives all N-((N-1) / 3) identical blocks 10 from all of the consensus nodes 620 and transfers the same block 10 to the legitimate block 10. Judging and adding it to its own blockchain 20, and updating its ledger state store 45 (S450);
Made with
At this time, the above-mentioned function of voting of the freight price agreement defined in the smart contract has a logic of automatically applying the freight price to the freight price used by the freight request registration function when more than 75% of the N organizations agree. , How to book freight.
제 2항에서, 환전소(480)에 의해 화물예약시스템(1000)에 적용되는 포인트의 발행을 위한 모듈 F를 더 포함하는 것이 특징인, 화물운송예약방법.3. The method of claim 2, further comprising a module F for issuance of points applied to the cargo reservation system (1000) by an exchange office (480). 제 11항에서, 위 모듈 F는,
위 환전소(480)는 사용자의 충전요청이 있으면 사용자의 정당성 검증 과정을 거쳐 검증이 되면 사용자가 소정의 금액을 입금하는 단계(S510);
입금이 제대로 이루어진 것을 확인한 뒤, 환전소(480)는 포인트 충전 거래를 실행하여 환전소(480)의 개인키로 서명하여 첨부한 거래 내용을 검증노드(470)로 전송하면 검증노드(470)는 포인트충전함수를 일으킨 주체가 환전소(480)가 맞는지 첨부된 인증서와 서명을 바탕으로 거래의 정당성을 검증하는 단계(S520); 및
거래의 정당성이 검증되면, 충전소(480)는 스마트 계약의 포인트충전함수를 저장수단(420) 안의 운영자료(415)로부터 원격 프로시져 호출(Remote Procedure Call) 프로토콜을 사용해서 호출하여 사용자가 입금한 금액을 바탕으로 해당하는 포인트를 계산하여 충전을 요청한 사용자의 포인트를 증가시키는 로직을 수행하는 단계(S530);
를 구비하여 이루어지고,
이때 소정의 보안수단(485)을 통해 환전소(480)의 개인키관리를 하는 것이 특징인, 화물운송예약방법.
The module F of claim 11, wherein
The exchange office 480 is a step of depositing a predetermined amount of money by the user when the user's request for charging is verified through the user's validity verification process (S510);
After confirming that the payment is made correctly, the exchange office 480 executes the point charging transaction and signs the transaction details attached with the private key of the exchange office 480 to the verification node 470, and then the verification node 470 performs the point charging function. Verifying the legitimacy of the transaction based on the attached certificate and the signature that the subject causing the exchange is correct (S520); And
If the transaction is verified, the charging station 480 calls the point charging function of the smart contract from the operation data 415 in the storage means 420 by using the remote procedure call protocol and deposits the money deposited by the user. Performing logic to increase a point of the user who requested charging by calculating a corresponding point based on the operation (S530);
Made with
At this time, characterized in that the private key management of the exchange office 480 through a predetermined security means 485, cargo transportation reservation method.
KR1020180088234A 2018-07-29 2018-07-29 Freight booking system and method based on blockchains KR20200013206A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020180088234A KR20200013206A (en) 2018-07-29 2018-07-29 Freight booking system and method based on blockchains

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020180088234A KR20200013206A (en) 2018-07-29 2018-07-29 Freight booking system and method based on blockchains

Publications (1)

Publication Number Publication Date
KR20200013206A true KR20200013206A (en) 2020-02-06

Family

ID=69569386

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020180088234A KR20200013206A (en) 2018-07-29 2018-07-29 Freight booking system and method based on blockchains

Country Status (1)

Country Link
KR (1) KR20200013206A (en)

Cited By (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111581278A (en) * 2020-04-08 2020-08-25 浙商银行股份有限公司 Bin list circulation system and method based on block chain technology
KR102158276B1 (en) * 2020-02-18 2020-09-25 (주)와이오엘 Cargo Transportation System Based On Blockchains
KR102173426B1 (en) * 2020-07-08 2020-11-03 주식회사 아이오트러스트 Privacy preserving public key infrastructure based self sign and verification system and method in decentralized identity
CN111915325A (en) * 2020-06-24 2020-11-10 普华云创科技(北京)有限公司 Tracing method and system for block chain transaction information and computer readable storage medium
CN112101856A (en) * 2020-08-17 2020-12-18 北京康拓红外技术股份有限公司 Railway freight transportation management platform and method based on block chain technology
CN112184480A (en) * 2020-09-18 2021-01-05 西安交通大学 Electric energy quality tracing system and method based on block chain
CN112417512A (en) * 2020-10-14 2021-02-26 安徽中科晶格技术有限公司 Cross-border trade private data management system and method based on block chain
CN112950220A (en) * 2021-03-10 2021-06-11 湖南大学 Enterprise digital identity management system and method based on block chain
CN113469799A (en) * 2020-03-30 2021-10-01 腾讯科技(深圳)有限公司 Loan qualification determining method, device, equipment and storage medium
CN113568920A (en) * 2021-07-23 2021-10-29 西安建筑科技大学 Parking resource integration method and system based on block chain
KR102323755B1 (en) * 2020-11-23 2021-11-09 부산대학교 산학협력단 Logistics method and system based on privacy blockchain platform
CN114170013A (en) * 2021-12-03 2022-03-11 西安交通大学 Point-to-point energy system transaction method based on block chain
KR20220119900A (en) * 2021-02-22 2022-08-30 주식회사 컨테인어스 Method and system for dispatching freight cars based on block chain
CN111915325B (en) * 2020-06-24 2024-04-26 云南花伍科技有限公司 Method, system and computer readable storage medium for tracing blockchain transaction information

Cited By (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102158276B1 (en) * 2020-02-18 2020-09-25 (주)와이오엘 Cargo Transportation System Based On Blockchains
CN113469799B (en) * 2020-03-30 2023-07-25 腾讯科技(深圳)有限公司 Loan qualification determining method, device, equipment and storage medium
CN113469799A (en) * 2020-03-30 2021-10-01 腾讯科技(深圳)有限公司 Loan qualification determining method, device, equipment and storage medium
CN111581278B (en) * 2020-04-08 2023-12-22 浙商银行股份有限公司 Warehouse order circulation system and method based on block chain technology
CN111581278A (en) * 2020-04-08 2020-08-25 浙商银行股份有限公司 Bin list circulation system and method based on block chain technology
CN111915325A (en) * 2020-06-24 2020-11-10 普华云创科技(北京)有限公司 Tracing method and system for block chain transaction information and computer readable storage medium
CN111915325B (en) * 2020-06-24 2024-04-26 云南花伍科技有限公司 Method, system and computer readable storage medium for tracing blockchain transaction information
KR102173426B1 (en) * 2020-07-08 2020-11-03 주식회사 아이오트러스트 Privacy preserving public key infrastructure based self sign and verification system and method in decentralized identity
CN112101856A (en) * 2020-08-17 2020-12-18 北京康拓红外技术股份有限公司 Railway freight transportation management platform and method based on block chain technology
CN112184480A (en) * 2020-09-18 2021-01-05 西安交通大学 Electric energy quality tracing system and method based on block chain
CN112184480B (en) * 2020-09-18 2023-10-24 西安交通大学 Electric energy quality tracing system and method based on block chain
CN112417512A (en) * 2020-10-14 2021-02-26 安徽中科晶格技术有限公司 Cross-border trade private data management system and method based on block chain
CN112417512B (en) * 2020-10-14 2024-03-26 安徽中科晶格技术有限公司 Cross-border trade privacy data management system and method based on blockchain
KR102323755B1 (en) * 2020-11-23 2021-11-09 부산대학교 산학협력단 Logistics method and system based on privacy blockchain platform
WO2022107971A1 (en) * 2020-11-23 2022-05-27 부산대학교 산학협력단 Privacy blockchain platform-based logistics method and logistics system
KR20220119900A (en) * 2021-02-22 2022-08-30 주식회사 컨테인어스 Method and system for dispatching freight cars based on block chain
CN112950220B (en) * 2021-03-10 2023-09-26 湖南大学 Enterprise digital identity management system and method based on blockchain
CN112950220A (en) * 2021-03-10 2021-06-11 湖南大学 Enterprise digital identity management system and method based on block chain
CN113568920A (en) * 2021-07-23 2021-10-29 西安建筑科技大学 Parking resource integration method and system based on block chain
CN114170013A (en) * 2021-12-03 2022-03-11 西安交通大学 Point-to-point energy system transaction method based on block chain
CN114170013B (en) * 2021-12-03 2024-01-12 西安交通大学 Block chain-based point-to-point energy system transaction method

Similar Documents

Publication Publication Date Title
KR20200013206A (en) Freight booking system and method based on blockchains
US11790350B2 (en) Methods and systems for digital reward processing
US11423374B2 (en) Application of dynamic tokens
CN108961030B (en) Data processing method, apparatus, system, medium, and device for electronic ticket
US11150271B2 (en) Method or system for management of a device for energy consumption by applying blockchain protocol
CN108885745B (en) Blockchain-based exchange with tokenization
CN109191219B (en) Data processing method, device, storage medium and equipment for electronic bill
CN103975352B (en) The stored value card that can be supplemented with money safely
CN109034924A (en) Electronic bill generation method, device, storage medium and computer equipment
US20200027080A1 (en) Scalable reconciliation of crypto assets in a blockchain network
KR20180104767A (en) Method and system for using digital signatures to create trusted digital asset delivery
CN117611331A (en) Method and system for efficiently transferring entities on a point-to-point distributed book using blockchains
CN109165943A (en) About the data processing method of electronic bill, device, storage medium and equipment
JP2017515252A (en) An apparatus, system, or method that facilitates the transfer of value between parties with low or no confidence
CN112163954B (en) Transaction method and device based on block chain
CN113283957B (en) Entity product transaction method based on blockchain
KR102204313B1 (en) Server and method of donation management based on block cahin
US20180152429A1 (en) Systems and methods for publicly verifiable authorization
KR101799235B1 (en) Assurance system and method for escrow service
CN111311277B (en) Bill processing method and device based on block chain network and related equipment
Gómez et al. Blockverse: A cloud blockchain-based platform for tracking in affiliate systems
WO2021060340A1 (en) Transaction information processing system
KR20200014121A (en) Method and system for providing block chain service
US20230351432A1 (en) Systems And Methods Of Facilitating Merchant Coupon Distribution On A Blockchain Network
KR102171395B1 (en) Method for proving principal and interest receipt based on block chain

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
AMND Amendment
E601 Decision to refuse application
X091 Application refused [patent]
AMND Amendment