The blockchain oracle writes external data to the blockchain, which is a general method for the blockchain to retrieve external data. This paper investigates the research and practice of blockchain oracles, summarizes the relationship between the certainty of target data and data aggregation methods, and divides blockchain oracles into “strong-voting-protocol” and “weak-voting-protocol” blockchain oracles. Blockchain oracle projects are more and more open and extensible. This paper applies a distributed key generation algorithm based on elliptic curve groups to implement off-chain data aggregation and single on-chain signature verification. As a result, the cost of signature verification and data aggregation for smart contracts is saved, which is suitable for large-scale distributed blockchain oracles. In similar overseas research and applications, blockchain oracle nodes need to mortgage digital assets to obtain identity credit, which is difficult to replicate in China. In order to solve this problem, this paper uses non-fungible tokens to map node identities, allowing the owner of the blockchain oracle to manage node identities; combined with the global public key update process, the node joining status is traceable. Compared with similar research, this paper is closer to the distributed system paradigm.