US 12,147,535 B2
Apparatus and method for tolerating Byzantine faults in blockchain platforms
Chanik Park, Pohang-si (KR); and Jeong Hyeon Ma, Ansan-si (KR)
Assigned to POSTECH RESEARCH AND BUSINESS DEVELOPMENT FOUNDATION, Pohang-si (KR)
Filed by POSTECH Research and Business Development Foundation, Pohang-si (KR)
Filed on Sep. 13, 2021, as Appl. No. 17/473,954.
Claims priority of application No. 10-2020-0117921 (KR), filed on Sep. 14, 2020; and application No. 10-2021-0066732 (KR), filed on May 25, 2021.
Prior Publication US 2022/0083656 A1, Mar. 17, 2022
Int. Cl. G06F 21/55 (2013.01); G06F 11/07 (2006.01); G06F 16/23 (2019.01); H04L 9/00 (2022.01)
CPC G06F 21/554 (2013.01) [G06F 11/073 (2013.01); G06F 11/0757 (2013.01); G06F 11/079 (2013.01); G06F 16/2379 (2019.01); H04L 9/50 (2022.05); G06F 2221/034 (2013.01)] 6 Claims
OG exemplary drawing
 
1. A Byzantine fault tolerance method in a blockchain platform, which is related to a method of a blockchain node changing a blockchain ordering service when an ordering service malfunction is detected, the Byzantine fault tolerance method comprising operations of:
generating, by a blockchain node, a first audit transaction by auditing a first block generated by a current ordering service;
propagating, by the blockchain node, the first audit transaction to other blockchain nodes;
generating, by the blockchain node, a change request message proposing a change of the current ordering service and propagating the change request message to the other blockchain nodes when a malfunction and a malicious attack of the current ordering service has been detected based on the first audit transaction and a plurality of second audit transactions received from the other blockchain nodes;
analyzing, by the blockchain node, a change request message from each of the other blockchain nodes to generate and submit a change proposal transaction for a new ordering service to an ordering service to be changed when it is determined that a predetermined number or more of blockchain nodes make a consensus on the change;
receiving, by the blockchain node, a second block included in the change proposal transaction from the new ordering service and generating and submitting a third audit transaction for a change proposal consensus on the second block; and
analyzing, by the blockchain node, a fourth audit transaction for a change proposal consensus submitted by each blockchain node included in the second block received from the new ordering service and making a consensus on a change to the new ordering service.