Finding blockchain consensus bugs with fork-aware differential testing분기 인식 차등 퍼징을 이용한 블록체인 합의 버그 탐지

Cited 0 time in webofscience Cited 0 time in scopus
  • Hit : 4
  • Download : 0
Designing a good consensus algorithm is of the utmost importance in blockchains, as is its implementation and operation. In a world where multiple independently-developed implementations of a single consensus algorithm coexist in a blockchain system, however, it is difficult to ensure that all clients have the identical implementation of the same consensus algorithm. In this paper, we present a coverage-guided differential testing framework for finding consensus bugs—that is, discrepancies between multiple implementations of a consensus algorithm—in general proof-of-work (PoW) or proof-of-stake (PoS) based blockchain systems. Our tool, which we call Forky, is able to discover a broader range of consensus bugs than existing tools. Utilizing novel fork-aware test cases and bug oracle for differential fuzzing, Forky effectively tests clients with arbitrary temporary forks and their resolutions. We use Forky to test 30 Bitcoin implementations (of all four major clients: Bitcoin Core, Bitcoin Knots, bcoin, and btcd) and discover two new consensus bugs that require temporary forks during testing, both of which are currently exploitable in the live network. We open source Forky in the hopes that it will be widely adopted to secure other PoW/PoS blockchains.
Advisors
강민석researcher
Description
한국과학기술원 :정보보호대학원,
Publisher
한국과학기술원
Issue Date
2023
Identifier
325007
Language
eng
Description

학위논문(석사) - 한국과학기술원 : 정보보호대학원, 2023.8,[iv, 30 p. :]

Keywords

네트워크 보안▼a블록체인 보안▼a분산 네트워크; Network security▼aBlockchain security▼aDistributed network

URI
http://hdl.handle.net/10203/320739
Link
http://library.kaist.ac.kr/search/detail/view.do?bibCtrlNo=1045973&flag=dissertation
Appears in Collection
IS-Theses_Master(석사논문)
Files in This Item
There are no files associated with this item.

qr_code

  • mendeley

    citeulike


rss_1.0 rss_2.0 atom_1.0