计算机科学 ›› 2021, Vol. 48 ›› Issue (2): 271-281.doi: 10.11896/jsjkx.200800021
所属专题: 信息安全 虚拟专题
郭上铜, 王瑞锦, 张凤荔
GUO Shang-tong, WANG Rui-jin, ZHANG Feng-li
摘要: 近年来,随着数字加密货币逐步走进人们的视野,其底层的区块链技术也引起了研究者的高度重视。区块链作为一种分布式账本技术,具有多方维护、不可篡改、公开透明等特点。首先,将区块链结构按层级进行划分,从低到高介绍了每层的作用和原理,根据开放程度将区块链分为公有链、联盟链、私有链,以比特币、Hyperledger Fabric为例分析了公有链和联盟链的工作机理。其次,对区块链的底层核心技术共识算法、智能合约、隐私安全做了详细阐述。最后,分析了区块链的研究进展并进行了展望。
中图分类号:
[1] YAO Z J,GE J G.A Summary o the Theory and Application of BlockChain[J].E-Science Technology & Aplication,2017,8(2):3-17. [2] HE P,YU G,ZHANG Y F,et al.Survey on Blockchain Technology and Its Application Prospect[J].Computer Science,2017,44(4):1-7,15. [3] SHAO Q F,ZHANG Z,ZHU Y C,et al.Survey of enterprise blockchains[J].Ruan Jian Xue Bao,2019,30(9):25712592. [4] NAKAMOTO S.Bitcoin:a peer-to-peer electronic cash system[EB/OL].[2020-06-13].https://bitcoin.org / bitcoin.pdf. [5] CAO B,LIN L,LI Y,et al.Review of blockchain research[J].Journal of Chongqing University of Post and Telecommunication(Natural Science Edition),2020,32(1):1-14. [6] Pete Rizzo.Linq [EB/OL].[2020-10-28].http://www.coin-desk.com/hands-on-with-linq-nasdaqs-private-markets-blockchain-project/. [7] EYAL I.Blockchain Technology:Transforming LibertarianCryptocurrency Dreams to Finance and Banking Realities [J].Computer,2017,50(9):38-49. [8] BROWN R G,CARLYLE J,GRIGG I,et al.Corda:An introduction.[EB/OL].[2020-05-10].https://cncorda.readthedocs.io/zh_CN/latest/. [9] BUTERIN V.A next-generation smart contract and decentralized application platform White Paper [EB/OL].[2020-06-18].https://github.com/ethereum/wiki /wiki / White-Paper. [10] YUAN Y,WANG F Y.Blockchain:The State of The Art and Future Trends[J].Acta Automatica Sinica,2016,42(4):481-494. [11] ERKLE R C.Protocols for public key cryptosys-tems[C]//Proceedings of the 1980 IEEE Symposium on Security and Privacy(S&P).Oakland,USA,1980:122-134. [12] ERKLE R C.A digital signature based on a conventional encryption function[C]//Proceedings of the Advances in Cryptology-CRYPTO'87(CRYPT-O).Santa Barbara,USA,1987:369-378. [13] SZYDLO M.Merkle tree traversal in log space and time[C]//Proceedings of the Advances in Cryptology-EUROCRYPT.2004(EUROCRYPT).Interlaken,Switzerland,2004:541-554. [14] Hyperledger Fabric [EB/OL].[2020-10-28].https://wiki.hyperledger.org/display/Fabric. [15] WANG X L,ZHANG J.Survey on peer-to-peer key technologies[J].Application Research of Computers,2010,27(3):801-805. [16] BAYER D,HABER S,STORNETTAW S.Improving the efficiency and reliability of digital time-stamping[C]//Sequences II:Methods in Communication,Security and Computer Science.NewYork,USA:Springer-Verlag,1993:329-334. [17] HABER S,STORNETTA W S.How to time-stamp a digitaldocument[C]//Proceedings of the Advances in Cryptology-CRYPTO'90(CRYPTO).Santa Barbara,USA,1990:437-455. [18] HABER S,STORNETTA W S.Secure names for bit-strings[C]//Proceedings of the 4th ACM Conferenceon Computer and Communications Security(CCS).Zurich,Switzerland,1997:28-35. [19] YANG Y G,ZHANG S X.Review and Research for Consensus Mechanism of Block Chain[J].Journal of Information Security Research,2018,4(4):369-379. [20] GILBERT S,LYNCH N.Brewer's conjecture and the feasibility of consistent,available,partition-tolerant Web services[J].ACM SIGACT News,2002,33(2):51-59. [21] YUAN Y,NI X C,ZENG S,et al.Blockchain Consensus Algorithms:The State of The Art and Future Trends[J].Acta Automatica Sinica,2018,44(11):2011-2022. [22] LAMPORT L.The Part-Time Parliament[J].ACM Transac-tions on Computer Systems,1998,16(2):133-169. [23] ONGARO D,OUSTERHOUT J.In search of an understandable consensus algorithm[C]//The 2014 USENIX Conference on USENIX Annual Technical Conference.USENIX Association,2015:305-320. [24] LAMPORT L,SHOSTAK R,PEASE M.The Byzantine Gene-rals Problem[J].ACM Transactions on Programming Languages and Systems,1982,4(3):382-401. [25] CASTRO M,LISKOV B.Practical Byzantine fault tolerance[C]//Proceedings of the Third USENIX Symposium on Opera-ting Systems Design and Implementation (OSDI).New Orleans,LA,USA,1999:173-186. [26] GOLAN-GUETA G,ABRAHAM I,GROSSMAN S,et al.SBFT:A scalable decentralized trust infrastructure for Blockchains[EB/OL].[2020-05-18].https://arxiv.org/pdf/1804.01626.pdf. [27] AUBLIN P L,MOKHTAR S B,QUÉMA V.Rbft:Redundant byzantine fault tolerance[C]//IEEE.2013 IEEE 33rd International Conference on Distributed Computing Systems.New York:IEEE,2013:297-306. [28] DWORK C,NAOR M.Pricing via Processing or CombattingJunk Mail[C]// Springer-Verlag.1993. [29] BACK A.Hashcash-a Denial of Service Counter-Measure[EB/OL].[2020-06-11].http://www.hashcash.org/papers/hashcash.pdf,2002-8-1. [30] SUNNY K,SCOTT N.PPcoin:Peer-to-Peer Crypto-Currencywith Proof-of-Stake[EB/OL].[2020-06-10].https://decred.org/research/king2012.pdf,2012-8-19. [31] LARIMER D.Transactions as proof-of-Stake[EB/OL].[2020-06-10].https://bravenewcoin.com/assets/Uploads/TransactionsAsProofOfStake10.pdf. [32] BUTERIN V,GRIFFITH V.Casper the Friendly FinalityGadget[OL].http://www.aas.net.cn/article/doi/10.16383/j.aas.2018.c180268. [33] LARIMER D.Delegated Proof-of-stake(DP-oS) [EB /OL].[2020-05-08].http:∥bitsharestalk.org/index.php?topic=4009.60. [34] SZABO N.Formalizing and Securing Relationships on PublicNetworks[EB/OL].[2020-06-18].http://www.firstmonday.org/ojs/index.php/fm/article/view/548/469. [35] JEREMYVINFOLIO.Serpent[EB/OL].[2020-06-20].https://github.com/ethereum/wiki/wiki/Serpent. [36] ETHEREUM.Solidity[EB/OL].[2020-06-20].http://solidity.readthedocs.io/en/latest. [37] DANNEN C.Introducing Ethereum and Solidity:Foundations of Cryptocurrency and Blockchain Programming for Beginners[EB/OL].[2020-06-20].https://lip.hpu.edu.vn/handle/123456789/28117. [38] RON D,SHAMIR A.Quantitative Analysis of the Full Bitcoin Transaction Graph[C/OL] ∥Financial Cryptography and Data Security.Lecture Notes in Computer Science.https://doi.org/10.1007/978-3-642-39884-1_2. [39] LIAO K,ZHAO Z,DOUPE A,et al.Behind closed doors:Measurement and analysis of CryptoLocker ransoms in Bitcoin[C]//Symposium on Electronic Crime Research.Toronto,ON,2016:1-13. [40] EYAL I,SIRER E G.Majority is not Enough:Bitcoin Mining is Vulnerable[J].Communications of the ACM,2018,61(7):95-102. [41] REID F,HARRIGAN M.An Analysis of Anonymity in theBitcoin System[C]// IEEE Third International Conference on IEEE Third International Conference on Privacy.IEEE,2012. [42] ZYSKIND G,NATHAN O,PENTLAND A.DecentralizationPrivacy:Using Blockchain to Protect Personal Data[J].IEEE Security and Privacy Workshops,2015:180-184. [43] MEIKLEJOHN S,POMAROLE M,JORDAN G,et al.A fistful of bitcoins:characterizing payments among men with no names[J].Communications of the ACM,2016,59(4):86-93. [44] ANDROULAKI E,KARAME G O,ROESCHLIN M,et al.Evaluating User Privacy in Bitcoin[C]// International Confe-rence on Financial Cryptography and Data Security.Springer,Berlin,Heidelberg,2013. [45] CHAU M,DAVID L.Untraceable electronic mail,return ad-dresses,and digital pseudonyms[J].Communications of the Acm,1981,24(2):84-90. [46] MAXWELL G.Confidential Transactions[EB/OL].[2020-06-13].https://people.xiph.org/~greg/confidential_values.txt,2017-4-28. [47] BONNEAU J ,NARAYANAN A ,MILLER A,et al.Mixcoin:Anonymity for Bitcoin with Accountable Mixes[C]// International Conference on Financial Cryptography & Data Security.Springer,Berlin,Heidelberg,2014. [48] Dash.Dash is digital cash[EB/OL].[2020-06-15].https:∥www.dash.org/. [49] RIVEST R L,SHAMIR A,TAUMAN Y.How to Leak a Secret[C]// International Conference on the Theory & Application of Cryptology & Information Security.Springer,Berlin,Heidelberg,2001. [50] BERGAN T,ANDERSON O,DEVIETTI J,et al.CryptoNotev 2.0[EB/OL].[2020-06-17].https:∥www.mendeley.com/research-papers/ cryptonote-v-20/,2017-4-28. [51] Monero.AboutMonero[EB/OL].[2020-06-17].https:∥getmon-ero.org/knowledge-base/about. [52] Boolberry.What is Boolberry[EB/OL].[2020-06-17].https:∥www.boolberry.com. [53] Bytecoin.A clear way to your private future[EB/OL].[2020-06-19].https:∥cn.bytecoin.org. [54] GOLDWASSER S,MICALI S,RACKOFF C.The knowledgecomplexity of interactive proof systems[J].SIAM Journal on Computing,1989,18(1):186-208. [55] MIERS I,GARMAN C,GREEN M,et al.Zerocoins:anonymous distributed E-cash from bitcoin[C]// Proceedings of IEEE Symposium on Security and Privacy.USA:IEEE Press,2013:394-411. [56] ASSON E B,CHIESA A,GARMAN C,et al.Zerocash:Decentralized Anonymous Payments from Bitcoin[C]//Proceedings of the 2014 IEEE Symposium on Security and Privacy.NJ:IEEE,2014:459-474. [57] SBEN-SASSON E,CHIESA A,GENKIN D,et al.SNARKs for C:Verifying program executions succinctly and in zero knowledge[C]//Proceedings of the Advances in Cryptology-CRYPTO 2013(CRYPTO).Santa Barbara,USA,2013:90-108. [58] KOSBA A,MILLER A,SHI E,et al.Hawk:The BlockchainModel of Cryptography and Privacy-Preserving Smart Contracts[C]//2016 IEEE Symposium on Security and Privacy (SP).2016:839-858. [59] GENTRY C.Fully homomorphic encryption using ideal lattices[C]//Proceedings of the 41st Annual ACM Symposium on Theory of Computering(STOC).Bethesda,USA,2009:169-178. [60] PEDERSEN T P.Non-Interactive and Information-TheoreticSecure Verifiable SecretSharing[C]//International Cryptology Conference on Advances in Cryptology.Springer-Verlag,1991:129-140. [61] HEILMAN E,KENDLER A,ZOHAR A,et al.Eclipse Attacks on Bitcoin's Peer-to-Peer Network[C]// Usenix Conference on Security Symposium.USENIX Association,2015. [62] MARCUS Y,HEILMAN E,GOLDBERG S.Low-ResourceEclipse Attacks on Ethereum's Peer-to-Peer Network[J].IACR Cryptology ePrint Archive,2018,2018:236. [63] BONNEAU J.Why Buy When You Can Rent?[C]// International Conference on Financial Cryptography and Data Security.Springer Berlin Heidelberg,2016. [64] LIAO K ,KATZ J.Incentivizing Blockchain Forks via WhaleTransactions[C/OL] ∥Financial Cryptography and Data Security.https:∥doi.org/10.1007/978-3-319-70278-0_17. [65] EYAL I.The miner's dilemma[C]//Proceedings of 2015 IEEE Symposium on Security and Privacy (SP 2015).IEEE,2015:89-103. [66] BONNEAU J,MILLER A,CLARK J,et al.SoK:Research Perspectives and Challenges for Bitcoin and Cryptocurrencies[C]// 2015 IEEE Symposium on Security and Privacy.IEEE,2015. [67] NAYAK K,KUMAR S,MILLER A,et al.Stubborn Mining:Generalizing Selfish Mining and Combining with an Eclipse Attack[C]// IEEE European Symposium on Security & Privacy.IEEE,2016. [68] SAPIRSHTEIN A,SOMPOLINSKY Y,ZOHAR A.Optimalselfish mining strategies in Bitcoin[C]//Financial Cryptography and Data Security—FC 2016.Revised Selected Papers.Springer Berlin Heidelberg,2016:515-532. [69] BAG S,RUJ S,SAKURAI K.Bitcoin block withholding attack:Analysis and mitigation[J].IEEE Transactions on Information Forensics and Security,2017,12(8):1967-1978. [70] KWON Y,KIM D,SON Y,et al.Be selfish and avoid dilemmas:Fork after withholding (FAW) attacks on Bitcoin[C]//Proceedings of the 2017 ACM SIGSAC Conference on Computer and Communications Security (CCS 2017).ACM,2017:195-209. [71] BISSIAS G,LEVINE B N,OZISIK A P,et al.An analysis of attacks on Blockchain consensus[EB/OL].[2020-06-22].http:∥arxiv.org/abs/1610.07985. [72] CONTI M,KUMAR E S,LAL C,et al.A survey on security and privacy issues of Bitcoin[J].IEEE Communications Surveys and Tutorials,2018,20(4):3416-3452. [73] SAAD M,NJILLA L,KAMHOUA C,et al.Countering Selfish Mining in Blockchains[C]//2019 International Conference on Computing,Networking and Communications (ICNC).Honolulu,Hawaii:IEEE,2019:360-364. [74] KOKORIS-KOGIAS E,JOVANOVIC P,GASSER L,et al.OmniLedger:A Secure,Scale-Out,Decentralized Ledger via Sharding[C]//2018 IEEE Symposium on Security and Privacy (SP).San Francisco,CA:IEEE,2018:583-598. [75] LUU L,NARAYANAN V,ZHENG C D,et al.A Secure Sharding Protocol For Open Blockchains[C]//The 2016 ACM SIGSAC Conference.Vienna,Austria:ACM,2016:17-30. [76] KWON J,BUCHAMN E.Cosmos:A network of distributedledgers[OL].https://github.com/cosmos/cosmos-sdk/. [77] POON J,DRYJA T.The Bitcoin lightening network:Scalable off-chain instant payments[OL].https://lightning.network/docs. [78] EYAL I,GENCER A E,SIRER E G,et al.Bitcoin-NG:A scalable Blockchain protocol[C]//Proceedings of 13th USENIX Symposium on Networked Systems Design and Implementation(NSDI 2016).Santa Clara,CA,USA,2016:45-59. [79] PASS R,SHI E.FruitChains:A fair Blockchain[C]//Proceedings of the ACM Symposium on Principles of Distributed Computing (PODC 2017).ACM,2017:315-324. [80] SOMPOLINSKY Y,LEWENBERG Y,ZOHAR A.SPECTRE: A fast and scalable crypto currency protocol[J].IACR Cryptology ePrint Archive,2016(2):1159. [81] DUONG T,FAN L,ZHOU H S.2-hop Blockchain:Combining proof-of-work and proof-of-stake securely[J].IACR Cryptology ePrint Archive,2016(4):716. [82] BENTOV I,LEE C,MIZRAHI A,et al.Proof of activity:Extending Bitcoin's proof of work via proof of stake[J].SIGMETRICS Performance Evaluation Review,2014,42(3):34-37. [83] ABRAHAM I,MALKHI D,NAYAK K,et al.Solida:A Blockchain protocol based on reconfigurable Byzantine consensus[C]//Proceedings of 21st International Conference on Principles of Distributed Systems (OPODIS 2017).2017(25):1-19. [84] GILAD Y,HEMO R,MICALI S,et al.Algorand:Scaling Byzantine agreements for cryptocurrencies[C]//Proceedings of the 26th Symposium on Operating Systems Principles.Shanghai,2017:51-68. [85] KOKORIS-KOGIAS E,JOVANOVIC P,GAILLY N,et al.Enhancing Bitcoin security and performance with strong consistency via collective signing[C]//Proceedings of 25th USENIX Security Symposium.USENIX,2016:279-296. [86] ZOU J,DONG Z,SHAO A,et al.3D-DAG:A High Performance DAG Network with Eventual Consistency and Finality[C]//2018 1st IEEE International Conference on Hot Information-Centric Networking (HotICN).Shenzhen:IEEE,2018:262-263. [87] THAM C,CAO B.Stochastic Programming Methods for Workload Assignment in an Ad Hoc Mobile Cloud[J].IEEE Transactions on Mobile Computing,2018,17(7):1709-1722. [88] THAM C,CAO B.Stochastic Programming Methods for Workload Assignment in an Ad Hoc Mobile Cloud[J].IEEE Transactions on Mobile Computing,2018,17(7):1709-1722. [89] LEI A,CRUICKSHANK H,CAO Y,et al.Blockchain- based dynamic key management for heterogeneous intelligent transporttation systems[J].IEEE Internet Things,2017,4(6):1832-1843. [90] TIAGO M.FERNNDEZ C.An Intelligent Power Outlet System for the Smart Home of the Internet of Things[J].International Journal of Distributed Sensor Networks,2015,2015(1):1-11. [91] SIDDIQI M,ALL S V,SIVARAMAN V.Secure light- weightcontext-driven data logging for bodyworn sensing devices[C]//2017 5th International Symposium on Digital Forensic and Security (ISDFS).New York:IEEE,2017:1-6. [92] KSHETRI N.Can blockchain strengthen the Internet ofThings? [J].IT Professional,2017,19(4):68-72. [93] TIAN F.An agrifood supply chain traceability system for Chinabased on RFID &blockchain technology[C]//Proc 13th Int Conf Service Syst Service Manage (ICSSSM).Kunming:IEEE,2016:1-6. [94] SUANKAEWMANEE K,HOANG D T,NIYATO D,et al.Performance Analysis and Application of Mobile Blockchain[C]//2018 International Conference on Computing,Networking and Communications (ICNC).Maui,HI:IEEE,2018:642-646. [95] XU F,YANG F,ZHAO C,et al.Edge Computing and Caching based Blockchain IoT Network[C]//2018 1st IEEE International Conference on Hot Information-Centric Networking (HotICN).Shenzhen:IEEE,2018:238-239. [96] XIA C,CHEN H,LIU X,et al.ETRA:Efficient Three-Stage Resource Allocation Auction for MobileBlockchain in Edge Computing[C]//2018 IEEE 24th International Conference on Parallel and Distributed Systems(IC-PADS).Singapore:IEEE,2018:701-705. [97] ZHANG H,ZHANG Y,GU Y.A Hierarchical Game Framework for Resource Management in Fog Computing[J].IEEE Communications Magazine,2017,55(8):52-57. [98] XIONG Z,ZHANG Y,NIYATO D,et al.When Mobile Blockchain Meets Edge Computing[J].IEEE Communications Magazine,2018,56(8):33-39. [99] RAHMAN M A.Blockchain-Based Mobile Edge ComputingFramework for Secure Therapy Applications[J].IEEE Access,2018(6):72469-72478. |
[1] | 鲁晨阳, 邓苏, 马武彬, 吴亚辉, 周浩浩. 基于分层抽样优化的面向异构客户端的联邦学习 Federated Learning Based on Stratified Sampling Optimization for Heterogeneous Clients 计算机科学, 2022, 49(9): 183-193. https://doi.org/10.11896/jsjkx.220500263 |
[2] | 汤凌韬, 王迪, 张鲁飞, 刘盛云. 基于安全多方计算和差分隐私的联邦学习方案 Federated Learning Scheme Based on Secure Multi-party Computation and Differential Privacy 计算机科学, 2022, 49(9): 297-305. https://doi.org/10.11896/jsjkx.210800108 |
[3] | 王子凯, 朱健, 张伯钧, 胡凯. 区块链与智能合约并行方法研究与实现 Research and Implementation of Parallel Method in Blockchain and Smart Contract 计算机科学, 2022, 49(9): 312-317. https://doi.org/10.11896/jsjkx.210800102 |
[4] | 吕由, 吴文渊. 隐私保护线性回归方案与应用 Privacy-preserving Linear Regression Scheme and Its Application 计算机科学, 2022, 49(9): 318-325. https://doi.org/10.11896/jsjkx.220300190 |
[5] | 黄松, 杜金虎, 王兴亚, 孙金磊. 以太坊智能合约模糊测试技术研究综述 Survey of Ethereum Smart Contract Fuzzing Technology Research 计算机科学, 2022, 49(8): 294-305. https://doi.org/10.11896/jsjkx.220500069 |
[6] | 周航, 姜河, 赵琰, 解相朋. 适用于各单元共识交易的电力区块链系统优化调度研究 Study on Optimal Scheduling of Power Blockchain System for Consensus Transaction ofEach Unit 计算机科学, 2022, 49(6A): 771-776. https://doi.org/10.11896/jsjkx.210600241 |
[7] | 王健. 基于隐私保护的反向传播神经网络学习算法 Back-propagation Neural Network Learning Algorithm Based on Privacy Preserving 计算机科学, 2022, 49(6A): 575-580. https://doi.org/10.11896/jsjkx.211100155 |
[8] | 李博, 向海昀, 张宇翔, 廖浩德. 面向食品溯源场景的PBFT优化算法应用研究 Application Research of PBFT Optimization Algorithm for Food Traceability Scenarios 计算机科学, 2022, 49(6A): 723-728. https://doi.org/10.11896/jsjkx.210800018 |
[9] | 傅丽玉, 陆歌皓, 吴义明, 罗娅玲. 区块链技术的研究及其发展综述 Overview of Research and Development of Blockchain Technology 计算机科学, 2022, 49(6A): 447-461. https://doi.org/10.11896/jsjkx.210600214 |
[10] | 高健博, 张家硕, 李青山, 陈钟. RegLang:一种面向监管的智能合约编程语言 RegLang:A Smart Contract Programming Language for Regulation 计算机科学, 2022, 49(6A): 462-468. https://doi.org/10.11896/jsjkx.210700016 |
[11] | 卫宏儒, 李思月, 郭涌浩. 基于智能合约的秘密重建协议 Secret Reconstruction Protocol Based on Smart Contract 计算机科学, 2022, 49(6A): 469-473. https://doi.org/10.11896/jsjkx.210700033 |
[12] | 毛典辉, 黄晖煜, 赵爽. 符合监管合规性的自动合成新闻检测方法研究 Study on Automatic Synthetic News Detection Method Complying with Regulatory Compliance 计算机科学, 2022, 49(6A): 523-530. https://doi.org/10.11896/jsjkx.210300083 |
[13] | 王思明, 谭北海, 余荣. 面向6G可信可靠智能的区块链分片与激励机制 Blockchain Sharding and Incentive Mechanism for 6G Dependable Intelligence 计算机科学, 2022, 49(6): 32-38. https://doi.org/10.11896/jsjkx.220400004 |
[14] | 孙浩, 毛瀚宇, 张岩峰, 于戈, 徐石成, 何光宇. 区块链跨链技术发展及应用 Development and Application of Blockchain Cross-chain Technology 计算机科学, 2022, 49(5): 287-295. https://doi.org/10.11896/jsjkx.210800132 |
[15] | 李利, 何欣, 韩志杰. 群智感知的隐私保护研究综述 Review of Privacy-preserving Mechanisms in Crowdsensing 计算机科学, 2022, 49(5): 303-310. https://doi.org/10.11896/jsjkx.210400077 |
|