• <tr id="yyy80"></tr>
  • <sup id="yyy80"></sup>
  • <tfoot id="yyy80"><noscript id="yyy80"></noscript></tfoot>
  • 99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

    基于區(qū)塊鏈的數(shù)字資產(chǎn)安全發(fā)行及管理技術(shù)實現(xiàn)

    2019-03-20 14:37:35孟嘉霖馬兆豐王自亮王真高宏民
    網(wǎng)絡(luò)空間安全 2019年10期
    關(guān)鍵詞:智能合約區(qū)塊鏈安全性

    孟嘉霖 馬兆豐 王自亮 王真 高宏民

    摘?? 要:區(qū)塊鏈具有去中心化、全局賬本、不可篡改和安全可信等特點,在數(shù)字資產(chǎn)發(fā)行和管理方面都具有極為獨特的優(yōu)勢和特點。文章提出了基于以太坊區(qū)塊鏈技術(shù)的數(shù)字資產(chǎn)發(fā)行及管理方法,設(shè)計實現(xiàn)了以太坊錢包為核心的關(guān)鍵技術(shù),并基于ERC20實現(xiàn)了數(shù)字資產(chǎn)發(fā)行及資產(chǎn)管理的智能合約,通過上層應(yīng)用調(diào)用智能合約實現(xiàn)了數(shù)字資產(chǎn)轉(zhuǎn)賬、分段鎖倉及銷毀等一系列的關(guān)鍵功能。最后,從賬戶安全和合約安全兩個方面,全面分析了實現(xiàn)賬戶和智能合約的安全性,分析表明了文章所實現(xiàn)的以太坊數(shù)字資產(chǎn)發(fā)行及管理系統(tǒng)具有良好的功能和安全性能,能滿足數(shù)字資產(chǎn)的安全發(fā)行和管理技術(shù)要求,可為基于以太坊區(qū)塊鏈的數(shù)字資產(chǎn)發(fā)行提供了一個通用應(yīng)用實現(xiàn)。

    關(guān)鍵詞:區(qū)塊鏈;以太坊;智能合約;數(shù)字資產(chǎn)發(fā)行及管理;安全性

    中圖分類號:TP311;TP393????????? 文獻(xiàn)標(biāo)識碼:A

    Blockchain-based implementation of secure issuance and management technology of digital assets

    Meng Jialin? Ma Zhaofeng? Wang Ziliang? Wang Zhen? Gao Hongming

    (1. The School of Cyberspace Security, Beijing University of Posts and Telecommunications, Beijing 100876;

    2. Joint Laboratory of blockchain and security technology, Beijing University of Posts and Telecommunications, Beijing 100876;

    3. China Mobile Communications Group, Shandong Co., Ltd, ShandongJinan 250001)

    Abstract: Blockchain has the characteristics of decentralization, global ledger, non tampering, security and credibility, and has unique advantages and characteristics in the issuance and management of digital assets. This paper puts forward the method of digital asset issuance and management based on Ethereum blockchain technology, designs and realizes the core key technology of Ethereum wallet, and realizes the smart contract of digital asset issuance and asset management based on erc20. Through the upper application, the smart contract is called to realize a series of key functions, such as digital asset transfer, phased locking and destruction. Finally, from two aspects of account security and contract security, comprehensive analysis of the implementation security of accounts and smart contract. The analysis shows that the Ethereum digital asset distribution and management system implemented in this paper has good function and security performance, can meet the technical requirements of digital asset security distribution and management, and can provide a general application implementation for digital asset distribution based on Ethereum blockchain.

    Key words: blockchain; ethereum; smart contract; digital asset issuance and management; security

    1 引言

    隨著科技的進(jìn)步,互聯(lián)網(wǎng)讓人們的生活和工作變得更加便利、高效,同時數(shù)字資產(chǎn)也得到了很大的發(fā)展?,F(xiàn)有的數(shù)字資產(chǎn)交易技術(shù)是把數(shù)據(jù)信息存儲在一個中心化數(shù)據(jù)庫中,因此很容易出現(xiàn)安全漏洞。

    數(shù)字資產(chǎn)(Digital assets)是指個人或企業(yè)擁有或控制,以電子數(shù)據(jù)的形式存在,在日?;顒又谐钟幸詡涑鍪刍蛱幱谏a(chǎn)過程中的非貨幣性資產(chǎn)。數(shù)字資產(chǎn)具有強(qiáng)烈的金融屬性,一直以來都備受大眾和政府部門的重視和監(jiān)督[1],數(shù)字資產(chǎn)一旦發(fā)生漏洞將會造成不可逆轉(zhuǎn)的甚至災(zāi)難性的影響。因此營造安全、可靠的數(shù)字資產(chǎn)交易環(huán)境就顯得尤為重要。

    2008年,中本聰(Satoshi Nakamoto)發(fā)表了《比特幣:一種點對點的電子現(xiàn)金系統(tǒng)》一文[2],從此奠定了區(qū)塊鏈技術(shù)和加密數(shù)字貨幣發(fā)明的基礎(chǔ)。區(qū)塊鏈技術(shù)具有去中心化、不易篡改和驗證節(jié)點共同維護(hù)等特點,為數(shù)字資產(chǎn)創(chuàng)造了新的安全模式下的管理方式。隨著區(qū)塊鏈技術(shù)的不斷發(fā)展,越來越多的人對區(qū)塊鏈進(jìn)行開發(fā)和研究,但這同時也暴露了區(qū)塊鏈技術(shù)存在的弊端。2018損失六十億的美鏈漏洞為全世界區(qū)塊鏈的安全問題敲響了警鐘。因此,采用合理的通用化技術(shù)來支撐基于區(qū)塊鏈的數(shù)字資產(chǎn)有極其重要的意義。

    2 以太坊區(qū)塊鏈體系架構(gòu)

    以太坊(Ethereum)是一個開源的有智能合約功能的公共區(qū)塊鏈平臺,通過其專用加密貨幣以太幣(Ether,簡稱“ETH”)提供的去中心化以太坊虛擬機(jī)EVM(Ethereum Virtual Machine)來處理點對點合約。

    以太坊的架構(gòu)可大致分為兩層,分別是應(yīng)用層和基礎(chǔ)設(shè)施層,如圖1所示。

    應(yīng)用層有DApp(Decentralized Application,分布式應(yīng)用)和以太坊錢包等多種衍生應(yīng)用,是目前開發(fā)者最為活躍的一層。

    基礎(chǔ)設(shè)施層包含了區(qū)塊鏈的基礎(chǔ)功能如賬戶管理、區(qū)塊鏈管理、智能合約等。它為訪問應(yīng)用層提供了接口,封裝了區(qū)塊鏈的操作細(xì)節(jié)。其中,智能合約運(yùn)行在以太坊虛擬機(jī)EVM中。智能合約系統(tǒng)將合約代碼化,由特定的事件驅(qū)動觸發(fā)執(zhí)行。以太坊系統(tǒng)中有PoW和PoS兩種共識算法。HTTP、RPC、Whipser等協(xié)議為以太坊提供供系統(tǒng)各模塊相互調(diào)用的協(xié)議支持。

    2.1 以太坊數(shù)字簽名算法

    以太坊的數(shù)字簽名算法采用的是橢圓曲線數(shù)字簽名算法(ECDSA),它是利用橢圓曲線加密技術(shù)進(jìn)行的數(shù)字簽名方法。假設(shè)發(fā)送者需要發(fā)送消息給接收者,首先需要定義橢圓曲線加密所用的參數(shù),將這組參數(shù)表示為()。其中,CURVE表示橢圓曲線點域和幾何方程,G是所有點倍積運(yùn)算的基點,n是該橢圓曲線的可倍積階數(shù),且。

    其次發(fā)送者要創(chuàng)建一個密鑰對,即一個私鑰和一個公鑰。私鑰是()范圍內(nèi)一個隨機(jī)數(shù):(公式)(1)

    公鑰是私鑰和基點的橢圓曲線點倍積:(公式)(2)

    2.1.1 簽名算法

    簽名方對消息m簽名,具體步驟為:

    (1)計算(公式)

    (2)計算z,來自二進(jìn)制e的最高位(最左邊)L_n個bits,而L_n是上述橢圓曲線參數(shù)中的可倍積階數(shù)n的二進(jìn)制長度;

    (3)從內(nèi)()內(nèi),隨機(jī)選擇一個整數(shù)k;

    (4)計算一個橢圓曲線上點:(公式)(3)

    (5)計算r值,如果()則返回步驟3重新計算;(公式)(4)

    (6)計算s值,如果(),則返回步驟3重新計算;(公式)(5)

    (7)生成的 就是數(shù)字簽名。

    2.1.2 驗證算法

    接收方的驗證分為兩部分,首先進(jìn)行公鑰的驗證,其次驗證簽名文件。

    (1)公鑰的驗證

    1)公鑰的坐標(biāo)應(yīng)是有效地,不會等于一個極限值空點;

    2)驗證是位于該橢圓曲線上的點;

    3)曲線的可倍積階數(shù)n與公鑰的點倍積不存在;

    (6)

    (2)簽名文件的驗證

    1)驗證 r 和 s 均處于范圍內(nèi);

    2)計算;

    3)計算 z,來自e的最高位L_n個bits;

    4)計算參數(shù) w

    (7)

    5)計算參數(shù)u1和u2

    (8)

    6)計算(x1,y1),如果(x1,y1)不是橢圓曲線上的點,則驗證失敗;

    (9)

    7)如果以下恒等式不成立,則驗證失敗。

    (10)

    2.2 以太坊共識機(jī)制

    工作量證明機(jī)制PoW(Proof of Work)是以太坊目前的共識機(jī)制,PoW是對算力的證明,是產(chǎn)生新區(qū)塊時必須滿足的要求。在以太坊網(wǎng)絡(luò)中,節(jié)點通過計算隨機(jī)的哈希值來爭奪記賬權(quán),求得正確解的能力既是節(jié)點算力的體現(xiàn)。PoW機(jī)制要求每個節(jié)點基于自身算力去求解SHA256計算難題,即尋找一個隨機(jī)數(shù)Nonce,使得區(qū)塊頭部元數(shù)據(jù)的SHA256哈希值小于區(qū)塊頭中設(shè)定的目標(biāo)難度[3]:

    (11)

    其中,H為SHA256哈希函數(shù);n為隨機(jī)數(shù)Nonce;h為區(qū)塊頭部數(shù)據(jù);t為目標(biāo)難度最先求得正確解的節(jié)點即算力最強(qiáng)的節(jié)點,即可獲得新區(qū)塊的記賬權(quán)。

    工作量證明機(jī)制的主要特性是計算的不對稱性,即工作方需要消耗大量的算力來得到一個結(jié)果,而驗證方卻很容易通過結(jié)果來驗證其準(zhǔn)確性。

    2.3 以太坊智能合約

    20 世紀(jì)末,Nick Szabo將智能合約定義為:“一個智能合約是一套以數(shù)字形式定義的承諾,包括合約參與方可以在上面執(zhí)行這些承諾的協(xié)議?!盵4] 智能合約一旦部署成功便不可再更改。

    智能合約為數(shù)字資產(chǎn)提供了一種基礎(chǔ)協(xié)議,使得所有加入到這個區(qū)塊鏈的網(wǎng)絡(luò)節(jié)點都被強(qiáng)制遵守此協(xié)議,因此可以有序的執(zhí)行智能合約的規(guī)定從而完成數(shù)字資產(chǎn)的確權(quán)。

    2.3.1 P2P網(wǎng)絡(luò)

    以太坊采用全分布式結(jié)構(gòu)化的P2P網(wǎng)絡(luò),主要采用了Kademlia(簡稱Kad)算法實現(xiàn),Kad是一種分布式哈希表(Distributed Hash Table, DHT)技術(shù)。在Kad網(wǎng)絡(luò)中,各節(jié)點通過哈希算法散列為256位ID,任何接入P2P網(wǎng)絡(luò)的節(jié)點都具有唯一的一個節(jié)點ID。

    2.3.2 EVM以太坊虛擬機(jī)

    EVM本質(zhì)上是一個堆棧機(jī)器,它最直接的功能是執(zhí)行智能合約。以太坊通過EVM支持智能合約的調(diào)用和執(zhí)行,調(diào)用時根據(jù)合約地址獲取代碼,生成具體的執(zhí)行環(huán)境,然后將代碼加載到EVM虛擬機(jī)中運(yùn)行。目前,開發(fā)智能合約最常用的高級語言為solidity[5],在使用solidity實現(xiàn)智能合約邏輯后,通過編譯器編譯成元數(shù)據(jù),最后發(fā)布到以太坊上。

    2.4 以太坊數(shù)據(jù)結(jié)構(gòu)

    2.4.1 Merkle樹

    Merkle樹是一種哈希二叉樹,它是一種用作快速歸納和校驗大規(guī)模數(shù)據(jù)完整性的數(shù)據(jù)結(jié)構(gòu)。Merkle樹的葉子節(jié)點代表區(qū)塊的各個交易,每個葉子節(jié)點都有一個哈希值。

    2.4.2 以太坊區(qū)塊結(jié)構(gòu)

    以太坊的區(qū)塊由一個包含元數(shù)據(jù)的區(qū)塊頭(Block Header)和緊跟其后構(gòu)成區(qū)塊主體(Block)的一長串交易組成。

    以太坊區(qū)塊鏈中每個區(qū)塊頭都包含指向三個樹的指針:狀態(tài)樹(Root)、交易(TxHash)、收據(jù)樹(ReceiptHash)。狀態(tài)樹是系統(tǒng)狀態(tài)的哈希值。系統(tǒng)狀態(tài)是跨塊存在的,交易數(shù)和收據(jù)樹只存儲本區(qū)塊的交易和收據(jù)。以太坊區(qū)塊頭的結(jié)構(gòu)如表1所示,以太坊的區(qū)塊鏈的結(jié)構(gòu)如圖2所示。

    3 以太坊數(shù)字資產(chǎn)發(fā)行及管理技術(shù)

    3.1 ERC體系結(jié)構(gòu)

    ERC(Ethereum Request for Comment)即以太坊通用征求意見協(xié)議。ERC是用來處理以太坊網(wǎng)絡(luò)成員提出的請求和對請求的采納,ERC為開發(fā)者提供了技術(shù)的指導(dǎo),也對以太坊網(wǎng)絡(luò)的發(fā)展提供了建議。

    開發(fā)者可以通過提交EIP(Ethereum Improvement Proposal,以太坊改進(jìn)建議), 向以太坊社區(qū)提交新的ERC標(biāo)準(zhǔn)提案。提交內(nèi)容包括協(xié)議規(guī)范和合約標(biāo)準(zhǔn)。

    3.1.1 ERC20

    ERC20旨在為以太坊上的token合約提供一個特征與接口的共同標(biāo)準(zhǔn),讓開發(fā)人員可以對新代幣在以太坊生態(tài)系統(tǒng)中的作用進(jìn)行編程。ERC20標(biāo)準(zhǔn)[6]如表2所示。

    3.2 賬戶管理

    以太坊的全局“共享狀態(tài)”是由多個賬戶來組成的,這些賬戶可以通過消息傳遞架構(gòu)來與其他賬戶進(jìn)行交互。每個賬戶都有一個與之關(guān)聯(lián)的狀態(tài)和一個20字節(jié)的地址。以太坊的地址是一個160位的標(biāo)識符,用于識別帳戶。

    以太坊有兩種類型的賬戶。

    (1)外部賬戶:外部賬戶沒有代碼,可以通過創(chuàng)建和簽名一筆交易,從一個外部賬戶發(fā)送消息。

    (2)合約賬戶:合約賬戶不能自行發(fā)起新的交易,合約帳戶只能觸發(fā)交易以響應(yīng)其他的交易。每當(dāng)合約賬戶收到一條消息時,合約內(nèi)部的代碼就會被激活,允許它對內(nèi)部存儲進(jìn)行讀取、寫入和發(fā)送其它消息或者創(chuàng)建合約。

    3.2.1 公鑰、私鑰及地址

    公鑰(Public Key)與私鑰(Private Key)是通過算法得到的一個密鑰對,公鑰是密鑰對外公開的部分,任何人都可以獲得,私鑰則只有用戶自己可以擁有,一旦泄露就會存在安全隱患。公鑰通常用于加密會話密鑰驗證數(shù)字簽名,或者加密只能用于對應(yīng)的私鑰解密的數(shù)據(jù)。

    私鑰是一組64位的16進(jìn)制字符,通過私鑰可以訪問一個賬戶。以太坊的私鑰是通

    過橢圓曲線算法secp256k1曲線生成的。

    公鑰是由私鑰通過 secp256k1曲線轉(zhuǎn)化為的65字節(jié)非壓縮格式。公鑰進(jìn)行Keccak-256哈希運(yùn)算,取最后的40位16進(jìn)制字符串,開頭添加0x即生成了地址(Address)。

    3.2.2 助記詞和Keystore文件

    在創(chuàng)建錢包的過程中會生成一個助記詞,助記詞一般由12個單詞構(gòu)成,2個單詞之間由1個空格隔開,這些單詞都來源于一個固定的詞庫,是由私鑰經(jīng)過一定算法得到的,所以私鑰與助記詞之間可以相互推導(dǎo)轉(zhuǎn)化。助記詞是私鑰的另一種形式,其功能等同于私鑰。

    Keystore文件是以太坊賬戶獨有的,用于簽署交易的以太坊私鑰的加密文件,是以太坊賬戶的一種表現(xiàn)形式。它包含了以太坊賬戶的地址,賬戶密文的私鑰和MAC地址等一系列的信息。

    3.2.3 錢包的實現(xiàn)

    錢包的本質(zhì)是一個私鑰,它是一個隨機(jī)

    的哈希值字符串,擁有了私鑰就擁有了該錢包的使用權(quán)。

    以太坊錢包的實現(xiàn)原理可以簡要概括為錢包助記詞生成的種子(Seed),種子生成私鑰,私鑰通過加密算法得到公鑰,公鑰經(jīng)過哈希運(yùn)算得到錢包地址。通過助記詞生成錢包,同時顯示其地址、私鑰以及衍生路徑。

    錢包實現(xiàn)的關(guān)鍵代碼如表3所示。

    通過私鑰或助記詞可以恢復(fù)錢包,獲得錢包地址,實現(xiàn)關(guān)鍵代碼如表4所示。3.3 基于ECR20數(shù)字資產(chǎn)的安全發(fā)行及管理

    本文實現(xiàn)了基于ERC20技術(shù)標(biāo)準(zhǔn)的數(shù)字資產(chǎn)管理系統(tǒng),該系統(tǒng)實現(xiàn)了數(shù)字資產(chǎn)的發(fā)行、數(shù)字資產(chǎn)的分配、數(shù)字資產(chǎn)的轉(zhuǎn)賬及分段鎖倉等功能。系統(tǒng)界面如圖3所示。

    3.3.1 轉(zhuǎn)賬的實現(xiàn)

    在以太坊轉(zhuǎn)賬有三個核心步驟。

    (1) 交易創(chuàng)建。用交易發(fā)起者的私鑰對交易進(jìn)行簽名,廣播到網(wǎng)絡(luò)之后所有節(jié)點都可以用交易發(fā)起者的公鑰進(jìn)行驗證。

    (2)交易驗證。對簽名進(jìn)行廣播并驗證。由網(wǎng)絡(luò)中的節(jié)點進(jìn)行驗證工作。驗證通過后交易進(jìn)入交易池并等待打包。

    (3) 交易記錄。礦工打包交易并生成新的區(qū)塊。礦工打包交易時優(yōu)先選擇礦工費高、占用內(nèi)存小的交易。當(dāng)?shù)V工挖礦成功時,會向全網(wǎng)廣播該區(qū)塊,通過網(wǎng)絡(luò)中其他節(jié)點的驗證后,該區(qū)塊加到區(qū)塊鏈上,開始下一輪的挖礦。

    轉(zhuǎn)賬實現(xiàn)關(guān)鍵代碼如表5所示。

    3.3.2 分段鎖倉的實現(xiàn)

    數(shù)字資產(chǎn)的鎖倉是指將代幣進(jìn)行一定期限的鎖定,鎖定的代幣不允許在市場上流通交易,到期時才能解鎖買賣。

    分段鎖倉是指將資產(chǎn)先預(yù)分發(fā)給某一賬戶,但是此時資產(chǎn)是凍結(jié)的狀態(tài),無法進(jìn)行交易。合約在一段時間之后逐漸釋放資產(chǎn),可以分階段完成,例如第一階段釋放40%的資產(chǎn),第二階段釋放30%,最后釋放30%。

    分段鎖倉實現(xiàn)關(guān)鍵代碼如表6所示。

    鎖倉的優(yōu)點是鎖倉降低了代幣的流動性,增加了用戶的黏性,人為地打破了原有的供需關(guān)系,代幣數(shù)量變少,價格自然上漲,同時鎖倉到期還能夠得到相應(yīng)的利息和獎勵。

    3.3.3 資產(chǎn)銷毀的實現(xiàn)

    資產(chǎn)的銷毀是為了滿足管理的需求,將賬戶的總資產(chǎn)進(jìn)行定量銷毀。

    銷毀資產(chǎn)實現(xiàn)關(guān)鍵代碼如表7所示。

    4 以太坊安全風(fēng)險分析

    4.1 賬戶安全風(fēng)險分析

    在區(qū)塊鏈中,擁有了賬戶的密鑰就相當(dāng)于擁有了賬戶的使用權(quán),密鑰直接關(guān)系到賬戶的安全, 因此密鑰也極容易成為攻擊者的攻擊目標(biāo)。用戶存儲和使用不當(dāng)而導(dǎo)致密鑰泄露會給用戶帶來極大的經(jīng)濟(jì)損失。區(qū)塊鏈的不可篡改性也使得密鑰一旦丟失或被盜,用戶將遭受不可逆轉(zhuǎn)的損失。

    在以太坊中有離線存儲、本地存儲和托管錢包等幾種常見的密鑰管理方法。其中,離線存儲將密鑰保存在離線的物理存儲介質(zhì)如u盤中并將之與網(wǎng)絡(luò)隔離,防止網(wǎng)絡(luò)攻擊。本地存儲是將密鑰直接或者加密后存儲在本地的設(shè)備上。托管錢包是通過第三方服務(wù)器為用戶提供密鑰保管服務(wù)[7]。

    4.2 智能合約安全風(fēng)險分析

    4.2.1 短地址攻擊

    短地址攻擊是針對基于ERC20標(biāo)準(zhǔn)的token 轉(zhuǎn)賬時產(chǎn)生的問題。在調(diào)用transfer方法時,實際發(fā)送交易的是abi編碼后的16進(jìn)制代碼,其中每個參數(shù)長度是固定的,如果長度不足會自動補(bǔ)0。

    當(dāng)調(diào)用transfer函數(shù)進(jìn)行轉(zhuǎn)賬時,交易的輸入數(shù)據(jù)分為三個部分,將三部分整合在一起就是交易數(shù)據(jù)。

    (1) 4 字節(jié),方法的哈希值(hash):a901237b

    (2)32字節(jié),以太坊地址(address),高位補(bǔ)0:000000000000000000000000acd11956de450986109372cade7d8c02ac5be8a0

    (3) 32字節(jié),轉(zhuǎn)移的代幣數(shù)量(amount):

    0000000000000000000000000000000000000000000000000000000000000010

    漏洞源于此,如果address的最后是以0結(jié)尾的,而攻擊者少輸入最后的0,amount編碼高位補(bǔ)0,導(dǎo)致amount編譯值比實際輸入值大。從而實現(xiàn)轉(zhuǎn)移超出實際應(yīng)該transfer的數(shù)量的token。

    當(dāng)調(diào)用transfer方法時,傳入的參數(shù)為:

    0x87a22ca9

    0000000000000000000000008a52c6425de450986109372cade7d8c02ac5be8a0

    0000000000000000000000000000000000000000000000000000000000000002

    若輸入時不慎漏掉了以太坊賬戶地址最后的“a0”,輸入?yún)?shù)就變成了:

    0x87a22ca9

    0000000000000000000000008a52c6425de450986109372cade7d8c02ac5be800

    00000000000000000000000000000000000000000000000000000000000002

    由于address字段缺失1個字節(jié),EVM會把a(bǔ)mount高位的一個字節(jié)的0填充到地址部分,這樣使得amount左移1個字節(jié),即向左移位8,此時amount就成了512,遠(yuǎn)大于用戶原本輸入的轉(zhuǎn)賬金額,會造成大量的損失。

    規(guī)避地址漏洞的最有效地方法是在ERC20合約中執(zhí)行輸入?yún)?shù)的驗證。

    4.2.2 重入攻擊(DAO)

    在以太坊中智能合約中進(jìn)行轉(zhuǎn)賬操作,一旦向被攻擊者劫持的合約地址發(fā)起轉(zhuǎn)賬交易,迫使執(zhí)行攻擊合約的回調(diào)函數(shù),回調(diào)函數(shù)中包含回調(diào)自身代碼,將會導(dǎo)致代碼“重新進(jìn)入”合約。這種合約漏洞被稱為“重入漏洞”。

    以太坊中向合約調(diào)用send、transfer、call函數(shù)時都會調(diào)用回調(diào)函數(shù),其中send和transfer每次傳遞給回調(diào)的函數(shù)只有2300 gas,此gas只能用于日志的記錄,因為其他操作都將超過2300 gas。但是call則會把剩余的所有 gas 都傳給回調(diào)函數(shù),這有可能導(dǎo)致循環(huán)調(diào)用。

    帶有重入漏洞的合約代碼如表8所示。

    call.value()函數(shù)可以導(dǎo)致合約外部的代碼執(zhí)行。如果是由另一個合約進(jìn)行訪問,這就意味著此合約的回調(diào)函數(shù)被執(zhí)行了,將會在余額設(shè)置為0之前,再次遞歸調(diào)用withdraw(),從而獲得比現(xiàn)有余額更多的資金。

    避免重入攻擊有效方法有三種[8]。

    (1)在轉(zhuǎn)賬給外部合約時使用transfer或者send函數(shù),并使用require檢測結(jié)果。

    (2)在轉(zhuǎn)賬前對金額進(jìn)行算術(shù)處理。

    (3)引入互斥鎖。也就是說要添加一個在代碼執(zhí)行過程中鎖定合約的狀態(tài)變量,阻止重入調(diào)用。

    修改后的合約代碼如表9所示。

    5 結(jié)束語

    以太坊的出現(xiàn)引領(lǐng)了區(qū)塊鏈2.0時代的到來,在以太坊蓬勃發(fā)展的同時,理清以太坊的基本原理以及其可能存在的安全問題顯得尤為重要。本文對以太坊的體系架構(gòu)、ERC技術(shù)標(biāo)準(zhǔn)和以太坊賬戶等進(jìn)行了詳細(xì)的分析。實現(xiàn)了以太坊錢包和基于ERC20標(biāo)準(zhǔn)的數(shù)字資產(chǎn)的轉(zhuǎn)賬、分段鎖倉和銷毀。

    最后從以太坊賬戶安全和智能合約安全兩個方面分析了以太坊的安全風(fēng)險問題,有利于規(guī)避漏洞,營造更安全的以太坊開發(fā)環(huán)境。分析表明了本文所實現(xiàn)的以太坊數(shù)字資產(chǎn)發(fā)行及管理系統(tǒng)具有良好的功能和安全性能,能滿足同質(zhì)數(shù)字資產(chǎn)的安全發(fā)行和管理技術(shù)要求,可為基于以太坊區(qū)塊鏈的數(shù)字資產(chǎn)發(fā)行提供了一個通用應(yīng)用的實現(xiàn)。

    參考文獻(xiàn)

    [1] ?劉宗媛.中國區(qū)塊鏈政策環(huán)境回顧、分析與展望[J].網(wǎng)絡(luò)空間安全,2019,10(04):111-117.

    猜你喜歡
    智能合約區(qū)塊鏈安全性
    兩款輸液泵的輸血安全性評估
    新染料可提高電動汽車安全性
    區(qū)塊鏈技術(shù)在互聯(lián)網(wǎng)保險行業(yè)的應(yīng)用探討
    區(qū)塊鏈技術(shù)的應(yīng)用價值分析
    商情(2016年40期)2016-11-28 11:24:12
    “區(qū)塊鏈”的茍且、詩和遠(yuǎn)方
    基于區(qū)塊鏈技術(shù)的數(shù)字貨幣與傳統(tǒng)貨幣辨析
    區(qū)塊鏈技術(shù)在會計中的應(yīng)用展望
    會計之友(2016年17期)2016-11-02 16:05:15
    ApplePay橫空出世 安全性遭受質(zhì)疑 拿什么保護(hù)你,我的蘋果支付?
    智能合約與金融合約
    商(2016年6期)2016-04-20 17:50:36
    用“區(qū)塊鏈”助推中企走出去
    97超碰精品成人国产| 日韩欧美精品v在线| 美女高潮的动态| 最后的刺客免费高清国语| 国产一区二区亚洲精品在线观看| 插逼视频在线观看| 青春草视频在线免费观看| 国产精品久久久久久久久免| 毛片女人毛片| 精品一区在线观看国产| 免费电影在线观看免费观看| 一级毛片黄色毛片免费观看视频| 美女被艹到高潮喷水动态| 如何舔出高潮| 久久久久精品性色| 国产免费视频播放在线视频| a级毛片免费高清观看在线播放| 亚洲精品自拍成人| 十八禁网站网址无遮挡 | av在线亚洲专区| 熟妇人妻不卡中文字幕| 久久国内精品自在自线图片| 97在线视频观看| 亚洲成人中文字幕在线播放| 伦理电影大哥的女人| 成人美女网站在线观看视频| 成人亚洲精品av一区二区| 亚洲国产色片| 18禁裸乳无遮挡免费网站照片| 嫩草影院新地址| 免费av毛片视频| 午夜福利在线在线| 亚洲电影在线观看av| 日韩,欧美,国产一区二区三区| 直男gayav资源| 亚洲欧美日韩另类电影网站 | 天堂俺去俺来也www色官网| 午夜激情久久久久久久| 最新中文字幕久久久久| 午夜福利网站1000一区二区三区| h日本视频在线播放| 人人妻人人看人人澡| 亚洲精品一区蜜桃| 干丝袜人妻中文字幕| 精品久久久精品久久久| 免费观看性生交大片5| 深爱激情五月婷婷| 欧美国产精品一级二级三级 | 69人妻影院| 丰满人妻一区二区三区视频av| 国产高潮美女av| 国产毛片在线视频| 精品人妻一区二区三区麻豆| 日韩 亚洲 欧美在线| 亚洲欧美日韩卡通动漫| 美女国产视频在线观看| 婷婷色麻豆天堂久久| 国产成人精品久久久久久| 久久久久国产网址| 久热这里只有精品99| 青春草视频在线免费观看| 国产成人a区在线观看| 成人亚洲精品av一区二区| 成人鲁丝片一二三区免费| 性色avwww在线观看| 久久影院123| 18禁在线播放成人免费| 嫩草影院精品99| 七月丁香在线播放| 国产黄频视频在线观看| 国产精品一区二区性色av| 日本黄大片高清| 色网站视频免费| 亚洲成色77777| 一个人看的www免费观看视频| 欧美人与善性xxx| 成人午夜精彩视频在线观看| 亚洲三级黄色毛片| 狠狠精品人妻久久久久久综合| 99热全是精品| 亚洲精品成人av观看孕妇| 亚洲精品成人av观看孕妇| 国产亚洲av嫩草精品影院| 舔av片在线| 亚洲伊人久久精品综合| 国产亚洲5aaaaa淫片| 国产有黄有色有爽视频| 亚洲性久久影院| 欧美97在线视频| 九九爱精品视频在线观看| 少妇人妻精品综合一区二区| 欧美成人一区二区免费高清观看| 国产一区二区亚洲精品在线观看| 久久久久精品久久久久真实原创| 国产免费一级a男人的天堂| 成人免费观看视频高清| 久久久欧美国产精品| 新久久久久国产一级毛片| 免费看av在线观看网站| 下体分泌物呈黄色| 丰满少妇做爰视频| 黄色怎么调成土黄色| 激情 狠狠 欧美| 一本—道久久a久久精品蜜桃钙片 精品乱码久久久久久99久播 | 中文天堂在线官网| 亚洲精品久久久久久婷婷小说| 免费高清在线观看视频在线观看| 国产黄色免费在线视频| 婷婷色综合大香蕉| 亚洲av国产av综合av卡| 永久免费av网站大全| 汤姆久久久久久久影院中文字幕| 国产极品天堂在线| 日本与韩国留学比较| 大陆偷拍与自拍| av福利片在线观看| kizo精华| 国产一区二区三区综合在线观看 | 国产午夜精品久久久久久一区二区三区| 天堂中文最新版在线下载 | 国内精品美女久久久久久| 免费观看在线日韩| 国产成人精品久久久久久| .国产精品久久| 九九在线视频观看精品| 中文资源天堂在线| 99久久人妻综合| 亚洲人成网站在线播| 婷婷色av中文字幕| 麻豆乱淫一区二区| 久久精品夜色国产| 乱系列少妇在线播放| 五月天丁香电影| 高清欧美精品videossex| av国产久精品久网站免费入址| 美女xxoo啪啪120秒动态图| 久久久久久国产a免费观看| 美女国产视频在线观看| 亚洲av成人精品一二三区| 日韩不卡一区二区三区视频在线| 精品久久久久久电影网| 日韩三级伦理在线观看| 五月玫瑰六月丁香| 欧美少妇被猛烈插入视频| 嫩草影院精品99| 一二三四中文在线观看免费高清| 欧美激情在线99| 国模一区二区三区四区视频| 97热精品久久久久久| 久久国内精品自在自线图片| 狂野欧美激情性bbbbbb| 国产69精品久久久久777片| 内地一区二区视频在线| 伊人久久国产一区二区| 伊人久久国产一区二区| 久久久a久久爽久久v久久| 国产伦精品一区二区三区四那| 国产免费又黄又爽又色| 久热这里只有精品99| 亚洲欧美日韩东京热| 欧美最新免费一区二区三区| 熟女电影av网| 亚洲av中文av极速乱| 国产午夜精品久久久久久一区二区三区| 精品人妻视频免费看| 久久99热这里只有精品18| av免费在线看不卡| 一边亲一边摸免费视频| 午夜免费鲁丝| 女人十人毛片免费观看3o分钟| 欧美一区二区亚洲| 久久人人爽av亚洲精品天堂 | 中文欧美无线码| 亚洲成人精品中文字幕电影| 久久精品人妻少妇| 1000部很黄的大片| 国内精品美女久久久久久| 肉色欧美久久久久久久蜜桃 | 久久人人爽av亚洲精品天堂 | 各种免费的搞黄视频| 亚洲av免费在线观看| 最近最新中文字幕免费大全7| 久久99热这里只有精品18| 国产一区亚洲一区在线观看| 中国三级夫妇交换| 激情 狠狠 欧美| 免费观看无遮挡的男女| 国产精品嫩草影院av在线观看| 亚洲人与动物交配视频| 久久久久性生活片| 涩涩av久久男人的天堂| 国产探花在线观看一区二区| 成年女人在线观看亚洲视频 | 久久久成人免费电影| 国产亚洲91精品色在线| 深爱激情五月婷婷| 亚洲欧美日韩卡通动漫| 亚洲aⅴ乱码一区二区在线播放| 久久97久久精品| 国产精品嫩草影院av在线观看| 麻豆精品久久久久久蜜桃| 国产精品蜜桃在线观看| 日韩一区二区视频免费看| 国产毛片a区久久久久| 亚洲,欧美,日韩| 高清午夜精品一区二区三区| 日产精品乱码卡一卡2卡三| 欧美日韩在线观看h| 亚洲国产精品专区欧美| 国产视频首页在线观看| 亚洲精品影视一区二区三区av| 18禁在线无遮挡免费观看视频| 国产成人a∨麻豆精品| 美女内射精品一级片tv| 18禁裸乳无遮挡免费网站照片| 国产在视频线精品| 久久久久网色| 少妇人妻精品综合一区二区| 啦啦啦啦在线视频资源| 国产成人精品一,二区| 久久久欧美国产精品| 一个人看的www免费观看视频| 日本-黄色视频高清免费观看| 日韩成人伦理影院| 国产黄片美女视频| 久久热精品热| 中国三级夫妇交换| 久久精品久久精品一区二区三区| 乱系列少妇在线播放| 欧美成人精品欧美一级黄| 可以在线观看毛片的网站| 人妻制服诱惑在线中文字幕| 午夜福利网站1000一区二区三区| 国产真实伦视频高清在线观看| 成人国产麻豆网| 五月玫瑰六月丁香| 亚洲精品国产成人久久av| 欧美zozozo另类| 国产精品熟女久久久久浪| 高清毛片免费看| 日韩一区二区视频免费看| 色网站视频免费| 日韩中字成人| 听说在线观看完整版免费高清| 青青草视频在线视频观看| 国产精品久久久久久av不卡| 国产精品99久久99久久久不卡 | 少妇高潮的动态图| 国产男女超爽视频在线观看| 亚洲精品aⅴ在线观看| 国产精品无大码| 七月丁香在线播放| 国产亚洲最大av| 国产高清有码在线观看视频| 欧美成人一区二区免费高清观看| 春色校园在线视频观看| a级毛色黄片| av在线app专区| 亚洲欧美成人精品一区二区| 免费av不卡在线播放| 两个人的视频大全免费| 欧美亚洲 丝袜 人妻 在线| 少妇人妻久久综合中文| 丰满乱子伦码专区| 男男h啪啪无遮挡| 水蜜桃什么品种好| 成人亚洲精品av一区二区| 观看免费一级毛片| 国产伦精品一区二区三区四那| 在线精品无人区一区二区三 | 国产又色又爽无遮挡免| 女人久久www免费人成看片| 国产永久视频网站| 99热国产这里只有精品6| 国产亚洲午夜精品一区二区久久 | 成人综合一区亚洲| 99久久九九国产精品国产免费| 国产永久视频网站| 国产精品久久久久久精品电影| a级毛片免费高清观看在线播放| 亚洲高清免费不卡视频| 性色av一级| 毛片一级片免费看久久久久| 狂野欧美白嫩少妇大欣赏| 国产日韩欧美亚洲二区| 99久久九九国产精品国产免费| 人妻夜夜爽99麻豆av| 国产午夜精品久久久久久一区二区三区| 亚洲综合色惰| 免费观看性生交大片5| 欧美精品一区二区大全| 亚洲欧洲国产日韩| 看十八女毛片水多多多| 色视频www国产| 美女内射精品一级片tv| 久久久久网色| 久热久热在线精品观看| 久久这里有精品视频免费| 国产白丝娇喘喷水9色精品| 精品人妻视频免费看| 一级a做视频免费观看| 51国产日韩欧美| 久久久欧美国产精品| 亚洲激情五月婷婷啪啪| 亚洲婷婷狠狠爱综合网| 伊人久久精品亚洲午夜| 亚洲av电影在线观看一区二区三区 | 男人添女人高潮全过程视频| 成人国产av品久久久| 日本-黄色视频高清免费观看| 噜噜噜噜噜久久久久久91| 18禁动态无遮挡网站| 亚洲激情五月婷婷啪啪| 国产成人aa在线观看| 亚洲在久久综合| 久久久精品94久久精品| 欧美潮喷喷水| 久久人人爽人人爽人人片va| 久久久久久久亚洲中文字幕| 亚洲av.av天堂| 中文字幕亚洲精品专区| 97人妻精品一区二区三区麻豆| 男人爽女人下面视频在线观看| 精品酒店卫生间| 欧美性感艳星| 日韩在线高清观看一区二区三区| 国产成年人精品一区二区| 国产一级毛片在线| av在线观看视频网站免费| 国产淫片久久久久久久久| 色网站视频免费| 天美传媒精品一区二区| 亚洲,欧美,日韩| 精品久久久久久久久av| 男人添女人高潮全过程视频| 久久久国产一区二区| 乱码一卡2卡4卡精品| 日韩精品有码人妻一区| 久久久久久久国产电影| 国产一区二区在线观看日韩| 国产精品久久久久久久久免| 亚洲欧美日韩无卡精品| 又爽又黄无遮挡网站| 亚洲av欧美aⅴ国产| 精品久久久精品久久久| 美女脱内裤让男人舔精品视频| 一区二区三区四区激情视频| 日本熟妇午夜| 丰满乱子伦码专区| 日韩在线高清观看一区二区三区| 精品久久国产蜜桃| 欧美潮喷喷水| 免费不卡的大黄色大毛片视频在线观看| 国产老妇伦熟女老妇高清| 中文字幕制服av| 日日摸夜夜添夜夜爱| 成年av动漫网址| 黄色一级大片看看| 亚洲国产欧美在线一区| 狂野欧美激情性bbbbbb| 18+在线观看网站| 亚洲精品自拍成人| 久久97久久精品| 亚洲国产成人一精品久久久| 国内揄拍国产精品人妻在线| 建设人人有责人人尽责人人享有的 | 中文字幕免费在线视频6| 国产真实伦视频高清在线观看| 国产精品99久久99久久久不卡 | 少妇人妻精品综合一区二区| 亚洲激情五月婷婷啪啪| 天堂俺去俺来也www色官网| 国产精品一区二区在线观看99| 在线看a的网站| 搡老乐熟女国产| 亚洲最大成人手机在线| 午夜激情福利司机影院| 日韩电影二区| 国内精品美女久久久久久| 国产精品一及| 久久精品国产a三级三级三级| 成人黄色视频免费在线看| 青春草国产在线视频| 日日啪夜夜撸| 成人鲁丝片一二三区免费| 中文字幕av成人在线电影| 简卡轻食公司| 亚洲一区二区三区欧美精品 | 国产精品成人在线| 婷婷色av中文字幕| 3wmmmm亚洲av在线观看| 内地一区二区视频在线| 亚洲综合色惰| 欧美97在线视频| 啦啦啦在线观看免费高清www| 中文字幕人妻熟人妻熟丝袜美| 国产真实伦视频高清在线观看| 韩国高清视频一区二区三区| 日韩欧美精品v在线| 少妇熟女欧美另类| 一区二区三区精品91| 免费在线观看成人毛片| 日日啪夜夜撸| 国产精品久久久久久久久免| 日韩制服骚丝袜av| 丝袜喷水一区| 精品午夜福利在线看| 丝瓜视频免费看黄片| 国产精品秋霞免费鲁丝片| 别揉我奶头 嗯啊视频| 99久久精品热视频| 直男gayav资源| 免费av毛片视频| 极品少妇高潮喷水抽搐| 亚洲精品色激情综合| 熟妇人妻不卡中文字幕| 国产精品国产三级国产av玫瑰| 精品亚洲乱码少妇综合久久| 免费不卡的大黄色大毛片视频在线观看| 在线观看人妻少妇| 国产av不卡久久| 亚洲精品乱码久久久v下载方式| 中文天堂在线官网| 男女国产视频网站| 国产精品爽爽va在线观看网站| 成人鲁丝片一二三区免费| 岛国毛片在线播放| 国产黄a三级三级三级人| 别揉我奶头 嗯啊视频| 免费高清在线观看视频在线观看| 我要看日韩黄色一级片| 亚洲不卡免费看| 婷婷色麻豆天堂久久| 精品久久久久久久末码| 观看免费一级毛片| 男女啪啪激烈高潮av片| 午夜免费鲁丝| 又黄又爽又刺激的免费视频.| 日韩一本色道免费dvd| 嫩草影院入口| 国产日韩欧美亚洲二区| 亚洲av中文av极速乱| 欧美成人a在线观看| 午夜视频国产福利| 日韩伦理黄色片| 亚洲人与动物交配视频| 波野结衣二区三区在线| 99久久精品国产国产毛片| 欧美日韩一区二区视频在线观看视频在线 | 亚洲最大成人手机在线| 亚洲av中文av极速乱| 亚洲精品456在线播放app| 99久久精品热视频| 成人美女网站在线观看视频| 丰满乱子伦码专区| 国产毛片a区久久久久| 69av精品久久久久久| 大陆偷拍与自拍| 99久国产av精品国产电影| av网站免费在线观看视频| 麻豆乱淫一区二区| 在线观看一区二区三区| 国产色爽女视频免费观看| 欧美国产精品一级二级三级 | tube8黄色片| 国产黄a三级三级三级人| 人妻一区二区av| 欧美激情在线99| 一个人看的www免费观看视频| 久久午夜福利片| 身体一侧抽搐| 三级国产精品片| 精品国产三级普通话版| 亚洲人成网站高清观看| 精品久久国产蜜桃| 人妻制服诱惑在线中文字幕| 18禁裸乳无遮挡免费网站照片| 免费观看av网站的网址| 午夜激情福利司机影院| 国产真实伦视频高清在线观看| 亚洲国产成人一精品久久久| 国产精品国产三级国产av玫瑰| 国产淫语在线视频| 一级毛片久久久久久久久女| 黄色日韩在线| 2021少妇久久久久久久久久久| 永久免费av网站大全| 啦啦啦啦在线视频资源| 少妇人妻久久综合中文| 亚洲丝袜综合中文字幕| 黄色怎么调成土黄色| 波野结衣二区三区在线| 亚洲人与动物交配视频| 精华霜和精华液先用哪个| 亚洲精品一区蜜桃| 一级a做视频免费观看| 欧美+日韩+精品| 18禁在线无遮挡免费观看视频| 久久久久久久久久人人人人人人| 久久久色成人| 亚洲精品亚洲一区二区| 18禁动态无遮挡网站| 大码成人一级视频| 尾随美女入室| videossex国产| 日韩欧美 国产精品| 水蜜桃什么品种好| 日韩精品有码人妻一区| 久久这里有精品视频免费| 亚洲色图综合在线观看| 人妻夜夜爽99麻豆av| 国产中年淑女户外野战色| 国产一区二区在线观看日韩| 大又大粗又爽又黄少妇毛片口| 亚洲精品国产色婷婷电影| 国产成人一区二区在线| 国产精品精品国产色婷婷| 国产日韩欧美在线精品| 七月丁香在线播放| 99久久人妻综合| 久久久久精品久久久久真实原创| 熟女人妻精品中文字幕| 成人毛片60女人毛片免费| 国产成人aa在线观看| 男人舔奶头视频| 亚洲精品第二区| av播播在线观看一区| 免费看日本二区| 亚洲精品成人久久久久久| 欧美3d第一页| 22中文网久久字幕| 日韩 亚洲 欧美在线| 国产亚洲5aaaaa淫片| 成人二区视频| eeuss影院久久| 中文字幕免费在线视频6| 久久99热这里只有精品18| 99热这里只有精品一区| 国产伦精品一区二区三区视频9| a级毛色黄片| 精品久久久久久久久亚洲| 九九爱精品视频在线观看| 97超视频在线观看视频| 老师上课跳d突然被开到最大视频| 亚洲国产精品专区欧美| 国产亚洲av片在线观看秒播厂| 又大又黄又爽视频免费| 久久精品久久久久久久性| freevideosex欧美| 日本黄色片子视频| 制服丝袜香蕉在线| 最近手机中文字幕大全| 亚洲国产高清在线一区二区三| 国产精品久久久久久av不卡| 久久鲁丝午夜福利片| 久久韩国三级中文字幕| 午夜日本视频在线| 97在线人人人人妻| 国产综合精华液| 国产精品一区二区性色av| 午夜精品国产一区二区电影 | 啦啦啦啦在线视频资源| 国产成人精品婷婷| 免费大片黄手机在线观看| 熟女人妻精品中文字幕| 日韩精品有码人妻一区| 少妇的逼水好多| 卡戴珊不雅视频在线播放| 欧美精品人与动牲交sv欧美| 熟妇人妻不卡中文字幕| 搡老乐熟女国产| 成年女人看的毛片在线观看| 日本黄色片子视频| 免费不卡的大黄色大毛片视频在线观看| 中国美白少妇内射xxxbb| 精品久久久精品久久久| 日本与韩国留学比较| 极品少妇高潮喷水抽搐| 午夜免费鲁丝| 国内少妇人妻偷人精品xxx网站| 中文字幕免费在线视频6| 亚洲精品国产色婷婷电影| 一级毛片黄色毛片免费观看视频| 成年免费大片在线观看| 久久久久久伊人网av| 国产伦理片在线播放av一区| 高清欧美精品videossex| 成人黄色视频免费在线看| 日韩一区二区视频免费看| 性插视频无遮挡在线免费观看| 麻豆久久精品国产亚洲av| 亚洲精品中文字幕在线视频 | 免费电影在线观看免费观看| 国产又色又爽无遮挡免| 免费观看的影片在线观看| 亚洲熟女精品中文字幕| 久久久久久久亚洲中文字幕| 国产av国产精品国产| 亚洲一区二区三区欧美精品 | 精品一区在线观看国产| 欧美日韩综合久久久久久| 日本黄色片子视频| 五月玫瑰六月丁香| 国产欧美亚洲国产| 免费在线观看成人毛片| 亚洲一级一片aⅴ在线观看| 免费看光身美女| 色婷婷久久久亚洲欧美| 美女主播在线视频| 成人欧美大片| 久久久精品欧美日韩精品| 黄色一级大片看看| 久久久色成人| 成人毛片a级毛片在线播放| 免费在线观看成人毛片|