1. 以太坊stratum協議原理
參照比特幣的 stratum協議 和 NiceHash的stratum協議規范 編寫了一版以太坊版本的stratum協議說明.
stratum協議是目前最常用的礦機和礦池之間的TCP通訊協議。
以太坊是一個去中心化的網路架構,通過安裝Mist客戶端的節點來轉發新交易和新區塊。而礦機、礦池也同時形成了另一個網路,我們稱之為礦工網路。
礦工網路分成礦機、礦池、錢包等幾個主要部分,有時礦池軟體與錢包安裝在一起,可合稱為礦池。
礦機與礦池軟體之間的通訊協議是 stratum ,而礦池軟體與錢包之間的通訊是 bitcoinrpc 介面。
stratum是 JSON 為數據格式.
礦機啟動,首先以 mining.subscribe 方法向礦池連接,用來訂閱工作。
礦池以 mining.notify 返回訂閱號、ExtraNonce1和ExtraNonce2_size。
Client:
Server:
其中:
是 訂閱號 ;
080c是 extranonce ,Extranonce可能最大3位元組;
礦機以 mining.authorize 方法,用某個帳號和密碼登錄到礦池,密碼可空,礦池返回 true 登錄成功。該方法必須是在初始化連接之後馬上進行,否則礦機得不到礦池任務。
Client:
Server:
難度調整由礦池下發給礦機,以 mining.set_difficulty 方法調整難度, params 中是難度值。
Server:
礦機會在下一個任務時採用新難度,礦池有時會馬上下發一個新任務並且把清理任務設為true,以便礦機馬上以新難度工作。
該命令由礦池定期發給礦機,當礦機以 mining.subscribe 方法登記後,礦池應該馬上以 mining.notify 返回該任務。
Server:
任務ID : bf0488aa ;
seedhash : 。每一個任務都發送一個seedhash來支持盡可能多的礦池,這可能會很快地在貨幣之間交換。
headerhash : 。
boolean cleanjobs : true 。如果設為true,那麼礦工需要清理任務隊列,並立即開始從事新提供的任務,因為所有舊的任務分享都將導致陳舊的分享錯誤。如果是 false 則等當前任務結束才開始新任務。
礦工使用seedhash識別DAG,然後帶著headerhash,extranonce和自己的minernonce尋找低於目標的share(這是由提供的難度而產生的)。
礦機找到合法share時,就以」 mining.submit 「方法向礦池提交任務。礦池返回true即提交成功,如果失敗則error中有具體原因。
Client:
任務ID : bf0488aa
minernonce : 6a909d9bbc0f 。注意minernonce是6個位元組,因為提供的extranonce是2個位元組。如果礦池提供3位元組的extranonce,那麼minernonce必須是5位元組
Server:
一般的礦機與礦池通訊過程就如下所示:
2. 如何抓住區塊鏈技術
區塊鏈產業越來越被重視,企業該如何快速進行區塊鏈的學習呢?企業需要進行一定的調整
最近這段時間,很多人都在討論關於區塊鏈的相關問題,很多對於這個比較陌生的名詞感到非常的好奇,而且最近很多企業也展開了區塊鏈技術的學習以及應用,這也讓很多人感到非常的困惑。為了解答相關的問題,我們首先需要知道區塊鏈是什麼。區塊鏈是信息技術領域的術語,從本質上講,它是共享資料庫,存儲於其中的數據或信息,具有「不可偽造」「全程留痕」「可以追溯」「公開透明」「集體維護」等特徵。區塊鏈作為比特幣的重要概念,本質上是去中心化的資料庫,同時作為比特幣的底層技術,是一串使用密碼學方法相關聯產生的數據塊,每一個數據塊中包含了一批次比特幣網路交易的信息,用於驗證其信息的有效性(防偽)和生成下一個區塊。企業要想進行更快更有效的區塊鏈技術的學習以及應用,就必須聘請相關專業的人才,並對公司進行一定的整改,因為只有這樣才能讓區塊鏈技術在企業中得到真正的發揮以及應用。
一:聘請相關專業人才
決定一家公司成敗的最關鍵因素莫過於就是企業擁有的核心人才數量。如果一家企業想進行更多更好的區塊鏈技術的應用,那麼就必須聘請足夠多的相關技術人員,讓專業的人才把區塊鏈技術真真正正的帶入企業。只有這樣企業才能真正開始掌握區塊鏈技術。
二:進行決策上的改變
區塊鏈是一種全新的概念,也是一種全新的技術,很多人對於未知的事情都是有著本能的恐懼的。作為管理人員,為了更好的發展區塊鏈,為了讓企業得到更多的發展,那麼進行決策上的改變是非常有必要的。努力確保區塊鏈技術能得到正常發展以及應用。
三:投入一定的資金
區塊鏈作為一種全新的科技手段,對於區塊鏈的研究以及開發是非常重要的,因此,加大企業對於區塊鏈的資金投入是非常有必要的,因為只有更多的資金流入,才能區塊鏈技術得到真正的發展。
運用經濟生活知識,說明我國企業應如何抓住區塊鏈技術發展機遇促進自己經營與?(1)面向市場,掌握市場信息,優化產品結構,生產適銷對路的高質量的產品;(經營戰略)
(2)提高自主創新能力,依靠科技進步、科學管理等手段,創立自主品牌,形成競爭優勢;(創新、科技和管理)
(3)加強資源節約和環境保護,走可持續發展道路,發展低碳經濟、循環經濟,建設資源節約型、環境友好型企業。(節能環保或踐行綠色發展理念)
(4)加快轉變經濟發展方式,加快技術改造和結構調整,走新型工業化道路(發展方式)。
(5)提高經營者和勞動者的科技水平,業務素質,職業道德。(素質).維護勞動者的合法權益;
(6)企業要誠信經營,實施名牌戰略,樹立良好的信譽和形象,(誠信、品牌)堅持正當競爭,反對惡性競爭;
(7)企業必須遵循價值規律,按價值規律辦事情;要自覺遵守市場交易原則,維護市場經濟秩序;通過兼並、聯合,把企業做大做強,發展規模經濟。(規模)
(8)適應經濟全球化趨勢,積極參與國際經濟競爭與合作,提高開放型經濟水平,充分利用兩個市場、兩種資源。堅持「引進來」與「走出去」並重的原則
(9)貫徹落實新發展理念;制定正確的經營戰略。
請結合材料選擇、分析
總結不易望採納一下!
如何學習區塊鏈?如果想學習比特幣及區塊鏈方面的知識,還是要系統性地學習。網上這方面討論、資料都很多,但水平參差不齊。建議看一下區塊鏈老師的線上課程。
線上區塊鏈視頻教程是由Steven老師進行直播教學。Steven老師,西交大學學士,北航軟體學院工程碩士。從事IT行業15年,7年編程開發經驗,8年計算機培訓經驗。分別從事過Asp、Asp.net、PHP、Java、Android、HTML5等開發和教學工作。曾出版發行《變身程序猿——Android應用開發》(電子工業出版社),《Steven陪你學Android》、《零基礎學編程》、《解密區塊鏈》系列視頻。
想要學習區塊鏈技術的同學通過三個月線上直播學習,畢業後能夠掌握區塊鏈基本概念、精通智能合約開發與架構設計、掌握代幣開發與ICO發幣、掌握全棧dapp開發。
其區塊鏈技術課程大綱如下:
1.1區塊鏈基本理論0.5周
1.1.1初識區塊鏈
1.1.2認識區塊鏈家族
1.1.3區塊鏈與比特幣常見問題及基本概念
1.1.4區塊鏈應用場景
1.1.5比特幣錢包BitcoinCore
1.1.6testnet環境實現比特幣交易
1.2編程基礎入門3.5周
1.2.1計算機軟硬體基礎
1.2.2字元集及字元編碼
1.2.3HTML+CSS(含HTML5+CSS3)
1.2.4ECMAScript+BOM+DOM
1.2.5jQuery
1.2.6node.js
1.2.7Ajax及Express
1.3Go編程語言6周
1.3.1Go基本語法
1.3.2流程式控制制
1.3.3函數及數據
1.3.4錯誤處理
1.3.5Go面向對象編程
1.3.6Go並發編程
1.3.7Go網路編程
1.3.8Go安全編程
1.3.9Go進階編程(goroutine、channel)
1.3.10資料庫MySQL、LevelDB
1.4區塊鏈1.0——比特幣Bitcoin1周
1.4.1比特幣原理
1.4.2比特幣系統架構
1.4.3密碼演算法(Go語言實現)
1.4.4共識演算法(Go語言實現)
1.4.5比特幣交易原理及交易腳本
1.4.6比特幣RPC編程(node.js實現)
1.4.7比特幣源碼解析
1.5區塊鏈2.0——以太坊Ethereum3周
1.5.1以太坊工作原理及基礎架構
1.5.2以太坊基本概念(賬戶、交易、Gas)
1.5.3以太坊錢包Mist及Metamask
1.5.4以太坊交易
1.5.5ERC20標准Token開發部署
1.5.6以太坊開發IDE——remix-ide
1.5.7智能合約與Solidity
1.5.8Solidity部署、備份及調用
1.5.9框架技術:truffle及web3
1.5.10DApp開發實戰
1.5.11Geth
1.6EOS及星雲鏈開發實戰3周
1.6.1EOS介紹及石墨烯生態系
1.6.2EOS主要特點及發展前景
1.6.3EOS開發智能合約
1.6.4cleos及RPC介面
1.6.5EOS應用開發實戰
1.6.6星雲鏈介紹
1.6.7星雲鏈開發DApp實戰
1.7區塊鏈3.0——超級賬本之Fabric3周
1.7.1超級賬本項目介紹
1.7.2Fabric部署和使用
1.7.3Fabric配置管理
1.7.4Fabric架構設計
1.7.5FabricCA應用與配置
1.7.6應用開發實戰
區塊鏈市場已經開始向大眾打開,迅速抓住學習機遇,掌握區塊鏈技術,站在互聯網時代風口,未來發展必定會勢如破竹!
如何學習區塊鏈技術?區塊鏈具備六大技術特徵,即去中心化、開放性、自治性、匿名性、可編程和可追溯。正是這六大技術特徵使得區塊鏈具備了革命性顛覆性技術的特質,也使其成為元宇宙的重要支撐。
宇宙是否需要區塊鏈?需要首先理解區塊鏈的技術特性,同時不能跳脫於區塊鏈自身發展的趨勢。結合區塊鏈的技術特徵與發展趨勢,我們不妨探索元宇宙與區塊鏈深度協同的可能。
黑龍江省「十四五」數字政府建設規劃近日出台。在區塊鏈方面,《規劃》指出,加快區塊鏈等關鍵技術應用,探索應用量子通信、區塊鏈網路等新技術。依託區塊鏈技術,按需建設與省級部門、市(地)數據高速共享通道,實現數據分鍾級共享,加強全鏈路數據質量監控,建成高保障、高可用的數據供應鏈體系。基於區塊鏈技術,建設電子證照管理應用平台。積極部署區塊鏈服務網路節點,構建場景化區塊鏈應用體系,持續推動數字身份認證鏈、可信電子證照鏈、存證公正鏈、數據共享交換鏈等數字政府公共支撐鏈的建設。探索「區塊鏈+市場監管」,推進「區塊鏈+法治」國家試點建設。
從技術層面來看,小度科技依託於網路公司的AI技術和區塊鏈技術上線數字藏品也是水到渠成,據了解,網路區塊鏈技術有在司法、醫療、金融、政務等十多個領域成功案例,而小度數字藏品平台運用「自家」區塊鏈技術,也為小度數字藏品平台帶來了技術背書。
3. 如何培養區塊鏈技能,培養區塊鏈產業人才已經成為各方共識
沒有基礎如何學習區塊鏈,哪裡學好沒有基礎如何學習區塊鏈的方法主要有兩種,一是自學,二是去培訓。以下是個人觀點和經驗,不喜互噴,謝謝。
區塊鏈學習說真的是一個漫長且艱辛的過程。因為它的技術難度高、注重實踐性、行業內並沒有區塊鏈標准等等。如果決定學習,便需要付出很多的東西。比如時間和精力,網上有自學的平台,比如網易雲課堂、b站、騰訊課堂等。自學的話可以將區塊鏈技術分為多個部分,依次學習最後再整合,多結合區塊鏈行業中的案例進行總結思考。
區塊鏈專業課程有不少的大學已開設,但我並沒有親身經歷。不過想學看哪裡有公開課可以自己多搜集一些,外面的培訓機構很多我並未接觸過不想做評價。謝謝
如何學習區塊鏈?如果想學習比特幣及區塊鏈方面的知識,還是要系統性地學習。網上這方面討論、資料都很多,但水平參差不齊。建議看一下區塊鏈老師的線上課程。
線上區塊鏈視頻教程是由Steven老師進行直播教學。Steven老師,西交大學學士,北航軟體學院工程碩士。從事IT行業15年,7年編程開發經驗,8年計算機培訓經驗。分別從事過Asp、Asp.net、PHP、Java、Android、HTML5等開發和教學工作。曾出版發行《變身程序猿——Android應用開發》(電子工業出版社),《Steven陪你學Android》、《零基礎學編程》、《解密區塊鏈》系列視頻。
想要學習區塊鏈技術的同學通過三個月線上直播學習,畢業後能夠掌握區塊鏈基本概念、精通智能合約開發與架構設計、掌握代幣開發與ICO發幣、掌握全棧dapp開發。
其區塊鏈技術課程大綱如下:
1.1區塊鏈基本理論0.5周
1.1.1初識區塊鏈
1.1.2認識區塊鏈家族
1.1.3區塊鏈與比特幣常見問題及基本概念
1.1.4區塊鏈應用場景
1.1.5比特幣錢包BitcoinCore
1.1.6testnet環境實現比特幣交易
1.2編程基礎入門3.5周
1.2.1計算機軟硬體基礎
1.2.2字元集及字元編碼
1.2.3HTML+CSS(含HTML5+CSS3)
1.2.4ECMAScript+BOM+DOM
1.2.5jQuery
1.2.6node.js
1.2.7Ajax及Express
1.3Go編程語言6周
1.3.1Go基本語法
1.3.2流程式控制制
1.3.3函數及數據
1.3.4錯誤處理
1.3.5Go面向對象編程
1.3.6Go並發編程
1.3.7Go網路編程
1.3.8Go安全編程
1.3.9Go進階編程(goroutine、channel)
1.3.10資料庫MySQL、LevelDB
1.4區塊鏈1.0——比特幣Bitcoin1周
1.4.1比特幣原理
1.4.2比特幣系統架構
1.4.3密碼演算法(Go語言實現)
1.4.4共識演算法(Go語言實現)
1.4.5比特幣交易原理及交易腳本
1.4.6比特幣RPC編程(node.js實現)
1.4.7比特幣源碼解析
1.5區塊鏈2.0——以太坊Ethereum3周
1.5.1以太坊工作原理及基礎架構
1.5.2以太坊基本概念(賬戶、交易、Gas)
1.5.3以太坊錢包Mist及Metamask
1.5.4以太坊交易
1.5.5ERC20標准Token開發部署
1.5.6以太坊開發IDE——remix-ide
1.5.7智能合約與Solidity
1.5.8Solidity部署、備份及調用
1.5.9框架技術:truffle及web3
1.5.10DApp開發實戰
1.5.11Geth
1.6EOS及星雲鏈開發實戰3周
1.6.1EOS介紹及石墨烯生態系
1.6.2EOS主要特點及發展前景
1.6.3EOS開發智能合約
1.6.4cleos及RPC介面
1.6.5EOS應用開發實戰
1.6.6星雲鏈介紹
1.6.7星雲鏈開發DApp實戰
1.7區塊鏈3.0——超級賬本之Fabric3周
1.7.1超級賬本項目介紹
1.7.2Fabric部署和使用
1.7.3Fabric配置管理
1.7.4Fabric架構設計
1.7.5FabricCA應用與配置
1.7.6應用開發實戰
區塊鏈市場已經開始向大眾打開,迅速抓住學習機遇,掌握區塊鏈技術,站在互聯網時代風口,未來發展必定會勢如破竹!
小白如何學習區塊鏈技術?
按照學習順序會較為系統和高效:
(1)通過較為通俗的讀物建立對區塊鏈的輪廓式認識;
(2)了解元老:比特幣;
(3)學習:以太坊和EOS;
(4)學習幾個自己感興趣的項目,並認真吃透至少一個項目白皮書;
(5)通過相關媒體渠道擴展學習,不斷豐富自己的相關知識。
在很多新人眼中,區塊鏈幾乎等於比特幣,所以有必要先了解區塊鏈概貌,就像拿過一本書,先看一下目錄,知道大概包括什麼內容,而不是翻開第一頁就讀。經過第一步的學習,對比特幣、區塊鏈以及交易所和錢包有了一個模糊的概念。動手實踐,是提高學習動力及效率的最佳方式,也能在實踐中提出更有實際意義的問題,帶著問題去尋找答案,學習效果將更好。因此:
(1)選擇一個交易所,比如:huobi.pro,okex.com,bigone,OTCBTC等等,注冊賬戶,在此過程中需要注意的是谷歌驗證器的使用;
(2)買入一點,比如0.03個比特幣,建議分別通過C2C場外交易和通過USDT交易對形式購買,熟悉兩種購買途徑;
(3)下載安裝錢包,比如比特派,注意助記詞的保管;
(4)從交易所轉移一點比特幣到錢包。
完成以上過程的操作,會對交易所、錢包、私鑰、場外交易等有切身的體會了。
鏈喬教育在線旗下學碩創新區塊鏈技術工作站是中國教育部學校規劃建設發展中心開展的「智慧學習工場2020-學碩創新工作站」唯一獲準的「區塊鏈技術專業」試點工作站。專業站立足為學生提供多樣化成長路徑,推進專業學位研究生產學研結合培養模式改革,構建應用型、復合型人才培養體系。
如何學習區塊鏈技術首先,條件允許的話,盡量選擇在一線城市學習,畢竟那裡是技術聚集區。其次,再考察其他方面,例如:師資力量、課程體系、教學模式、就業薪資、學費學時等。直接去試聽,考察學校的真實情況。
Go全棧+區塊鏈課程為幾周?分幾個階段?每個階段講多久?學完每個階段達到什麼程度?
一共22周,分為5個階段,
第一階段4周go語言基礎與網路並發,學完入門go語言,
第二階段4周go語言實戰web開發,爬蟲開發,密碼學,共識演算法,實現輕量級公鏈,學完可以開發golang的網站,爬蟲,實現輕量級區塊鏈
第三階段4周以太坊源碼分析與智能合約Dapp開發,學完掌握以太坊核心與開發智能合約,以及區塊鏈,
第四階段4周超級賬本,比特幣EOS,源碼分析與智能合約實戰,學完以後掌握超級賬本開發,山寨比特幣,分叉EOS,以及智能合約Dapp開發
第五階段6周項目實戰,實戰5個企業級項目,學完可以擁有1年區塊鏈項目經驗
適合人群:
1.沒有編程基礎,想學IT技術的人群;
2.發展受限,想要提升的人群;
3.有編程經驗,想要轉行的人群。
學習目標:
從0開始學習Go語言,通過對Go語言的學習綜合培養區塊鏈專項應用型人才。
就業方向:
1.新技術Go語言開發(Web開發、微服務、分布式)。
2.新領域區塊鏈開發(密碼學安全、區塊鏈系統、區塊鏈應用)。
如何系統快速學習區塊鏈技術Go是一個開源的編程語言,它能讓構造簡單、可靠且高效的軟體變得容易。想學習這門編程語言,首先要找到一份不錯的教程,兄弟連go語言+區塊鏈培訓最近新出了一套go語言的教程,老師講的非常不錯!
伴隨著「區塊鏈」概念在全球范圍內的熱議,金融、物流、徵信、製造、零售等日常生活場景中也悄然加入了相關區塊鏈技術應用。有專家表明,未來區塊鏈將與人們的生活息息相關,區塊鏈技術與大眾日常生活融合是大勢所趨。
區塊鏈市場的火熱引發了大量以區塊鏈技術型人員為基礎的人才性需求,區塊鏈人才受熱捧程度呈光速上升。據拉勾網發布的「2018年區塊鏈高薪清單」顯示,騰訊、小米、蘇寧、京東等國內企業巨頭發布了眾多高薪區塊鏈崗需求,力圖探索區塊鏈相關技術與應用。清單中同時指出,高薪崗位以區塊鏈相關技術型崗位需求為主,其中蘇寧和科達月薪最高已給到100k。
極大的技術型人才市場需求,必然會帶動整個區塊鏈培訓市場的爆發式涌現與增長。培訓模式大都可分為線上培訓、傳統IT機構培訓及主打高端形式的線下短期訓練營等幾種形式,但市場火爆演進過程中也充斥著種種區塊鏈培訓亂象:講師資質注水化、甚至是最基本的姓名都不敢公開,課程大綱不透明、授課質量縮水化,課時安排不合理及培訓收費標准參差不齊等等。
在整個區塊鏈培訓市場規模化發展之下,兄弟連教育攜手資深區塊鏈專家尹成及其清華水木未名團隊成立區塊鏈學院,利用其專業強大的技術講師團隊、細致全面的課程體系及海量真實性企業區塊鏈項目實戰,旨在深耕區塊鏈教培領域,並為企業為社會培養更多專業型技術人才。
尹成資深區塊鏈技術專家兄弟連區塊鏈學院院長畢業於清華大學,曾擔任Google演算法工程師,微軟區塊鏈領域全球最具價值專家,微軟Tech.Ed大會金牌講師。精通C/C++、Python、Go語言、Sicikit-Learn與TensorFlow。擁有15年編程經驗與5年的教學經驗,資深軟體架構師,Intel軟體技術專家,著名技術專家,具備多年的世界頂尖IT公司微軟谷歌的工作經驗。具備多年的軟體編程經驗與講師授課經歷,並在人機交互、教育、信息安全、廣告、區塊鏈系統開發諸多產品。具備深厚的項目管理經驗以及研發經驗,擁有兩項人工智慧發明專利,與開發電子貨幣部署到微軟WindowsAzure的實戰經驗。教學講解深入淺出,使學員能夠做到學以致用。
第一階段:區塊鏈行業及Go編程5周
第二階段:密碼學與共識演算法2周
第三階段:以太坊源碼解析與開發3周
第四階段:超級賬本與Node.js2周
第五階段:比特幣EOS4周
第六階段:項目綜合性實戰
4. 以太坊如何使用web3.js或者rpc介面獲取交易數據交易時間與確認數
如果要查詢主網上的交易記錄,可以使用etherscan。但是,如果是你自己搭建的私鏈,應該如何查詢交易記錄呢?
答案是你需要自己監聽鏈上的日誌,存到資料庫里,然後在這個資料庫中查詢。例如:
varaddr=""
varfilter=web3.eth.filter({fromBlock:0,toBlock:'latest',address:addr});
filter.get(function(err,transactions){
transactions.forEach(function(tx){
vartxInfo=web3.eth.getTransaction(tx.transactionHash);
//這時可以將交易信息txInfo存入資料庫
});
});
web3.eth.filter()用來監聽鏈上的日誌,web3.eth.getTransaction()用來提取指定交易的信息,一旦獲得交易信息,就可以存入資料庫供查詢用了。
推薦一個實戰入門,你可以看看:以太坊教程
5. 以太坊多節點私有鏈部署
假設兩台電腦A和B
要求:
1、兩台電腦要在一個網路中,能ping通
2、兩個節點使用相同的創世區塊文件
3、禁用ipc;同時使用參數--nodiscover
4、networkid要相同,埠號可以不同
1.4 搭建私有鏈
1.4.1 創建目錄和genesis.json文件
創建私有鏈根目錄./testnet
創建數據存儲目錄./testnet/data0
創建創世區塊配置文件./testnet/genesis.json
1.4.2 初始化操作
cd ./eth_test
geth --datadir data0 init genesis.json
1.4.3 啟動私有節點
1.4.4 創建賬號
personal.newAccount()
1.4.5 查看賬號
eth.accounts
1.4.6 查看賬號余額
eth.getBalance(eth.accounts[0])
1.4.7 啟動&停止挖礦
啟動挖礦:
miner.start(1)
其中 start 的參數表示挖礦使用的線程數。第一次啟動挖礦會先生成挖礦所需的 DAG 文件,這個過程有點慢,等進度達到 100% 後,就會開始挖礦,此時屏幕會被挖礦信息刷屏。
停止挖礦,在 console 中輸入:
miner.stop()
挖到一個區塊會獎勵5個以太幣,挖礦所得的獎勵會進入礦工的賬戶,這個賬戶叫做 coinbase,默認情況下 coinbase 是本地賬戶中的第一個賬戶,可以通過 miner.setEtherbase() 將其他賬戶設置成 coinbase。
1.4.8 轉賬
目前,賬戶 0 已經挖到了 3 個塊的獎勵,賬戶 1 的余額還是0:
我們要從賬戶 0 向賬戶 1 轉賬,所以要先解鎖賬戶 0,才能發起交易:
發送交易,賬戶 0 -> 賬戶 1:
需要輸入密碼 123456
此時如果沒有挖礦,用 txpool.status 命令可以看到本地交易池中有一個待確認的交易,可以使用 eth.getBlock("pending", true).transactions 查看當前待確認交易。
使用 miner.start() 命令開始挖礦:
miner.start(1);admin.sleepBlocks(1);miner.stop();
新區塊挖出後,挖礦結束,查看賬戶 1 的余額,已經收到了賬戶 0 的以太幣:
web3.fromWei(eth.getBalance(eth.accounts[1]),'ether')
用同樣的genesis.json初始化操作
cd ./eth_test
geth --datadir data1 init genesis.json
啟動私有節點一,修改 rpcport 和port
可以通過 admin.addPeer() 方法連接到其他節點,兩個節點要要指定相同的 chainID。
假設有兩個節點:節點一和節點二,chainID 都是 1024,通過下面的步驟就可以從節點二連接到節點一。
首先要知道節點一的 enode 信息,在節點一的 JavaScript console 中執行下面的命令查看 enode 信息:
admin.nodeInfo.enode
" enode://@[::]:30303 "
然後在節點二的 JavaScript console 中執行 admin.addPeer(),就可以連接到節點一:
addPeer() 的參數就是節點一的 enode 信息,注意要把 enode 中的 [::] 替換成節點一的 IP 地址。連接成功後,節點一就會開始同步節點二的區塊,同步完成後,任意一個節點開始挖礦,另一個節點會自動同步區塊,向任意一個節點發送交易,另一個節點也會收到該筆交易。
通過 admin.peers 可以查看連接到的其他節點信息,通過 net.peerCount 可以查看已連接到的節點數量。
除了上面的方法,也可以在啟動節點的時候指定 --bootnodes 選項連接到其他節點。 bootnode 是一個輕量級的引導節點,方便聯盟鏈的搭建 下一節講 通過 bootnode 自動找到節點
參考: https://cloud.tencent.com/developer/article/1332424