EthereumKG: Building a Knowledge Graph of the Ethereum Blockchain
摘要
This paper presents a method for transforming raw data from the Ethereum blockchain (block and smart contract data) into a knowledge graph. First, we extend current ontologies (Solidity ontology and EthOn ontology) by creating two new ontologies that model Ethereum blocks and the Application Binary Interfaces (ABI), covering all their properties. Based on these new and existing ontologies, we design and implement a method to generate a knowledge graph based on semantic web standards that integrates Ethereum block, ABI and Solidity data. The result is stored in a triple store that is organised into three interconnected knowledge graphs for blocks, ABIs, and Solidity contracts, containing over 27 million triples. Finally, to demonstrate the applications of the Ethereum knowledge graph, three scenarios are presented. In the first scenario, we explore the graph using SPARQL queries. In the second scenario, we detect similar behaviour wallets that may reflect a single entity. Finally, at the contract level, we use the ABI semantic data to group contracts by functional similarity and detect identical contracts.