I. Introduction
Owing to the success of tranditional blockchain such as Bitcoin[1], Ethereum[2] and Hyperledger Fabric[3], blockchain technology has attracted much attention from both academia and industry. With the wide application of blockchain technology in distributed systems, how to efficiently obtain data in blockchain has become a new research hotspot. As shown in Fig. 1, for the traditional blockchain, data is stored in each node of the network in the form of blocks. A block consists of a block header and a block body, where the block header mainly stores the basic information, such as the hash value of the previous block, and the block body stores the actual data. It is worth mentioning that the white paper of blockchain technology does not strictly define the organization form of the data, which suggests that we should traverse all the data in each block in order to acquire the required data.