比特幣系統(tǒng)中采用的是基于交易的賬本,在這個模式下并不會顯式記錄每個賬戶上會存在多少錢,而是根據(jù)UTXO推斷余額,既計算擁UTXO中有私鑰的幣總和,隱私保護較好,使用并不太方便(在交易的時候要證明每一個幣的來源,并且在一次交易收到的幣UTXO,消費的時候必須全部都花出去,不能只花一部分)
以太坊中采用的賬戶模式:轉(zhuǎn)賬的時候不需要說明幣的來源,能夠很好的防御雙花攻擊,對于重放攻擊(收款者不誠實,交易時。發(fā)出兩次交易信息),解決方法:加一個交易計數(shù)器nonce,記錄這個賬戶有史以來,一共發(fā)布過多少交易,在轉(zhuǎn)賬的時候要將nonce作為交易的一部分。也就是在系統(tǒng)中,節(jié)點維護賬戶的狀態(tài),不僅僅是balance,還有nonce的值。
同時以太坊支持智能合約,所以相對比特幣地址會更加穩(wěn)定
以太坊賬戶類型:
1.外部賬戶(普通賬戶)
? ? ? ? 用公私鑰控制,本地產(chǎn)生一隊公鑰和私鑰,私鑰掌握賬戶控制權(quán)
? ? ? ? 賬戶狀態(tài):余額balance、nonce
2.合約賬戶
? ? ? ? 合約賬戶狀態(tài):balance和nonce、代碼code、相關(guān)存儲狀態(tài)storage(包括每個存儲到鏈上變量的取值)
? ? ? ? 合約賬戶無法主動發(fā)起交易,只能由外部賬戶發(fā)起。如果是外部賬戶調(diào)用合約賬戶A,夜月賬戶A能夠發(fā)送一個message調(diào)用另外的合約,這種情況是允許的文章來源:http://www.zghlxwxcb.cn/news/detail-826268.html
? ? ? ? 合約賬戶如何被調(diào)用:創(chuàng)建合約的時候會返回一個地址,能夠通過合約地址調(diào)用這個合約,調(diào)用的過程中狀態(tài)會發(fā)生變化(storage)文章來源地址http://www.zghlxwxcb.cn/news/detail-826268.html
到了這里,關(guān)于區(qū)塊鏈技術(shù)學(xué)習(xí)筆記(14) 以太坊賬戶的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!