原创 16 智能合約入門--水龍頭合約

一、智能合約入門(一)用Remix寫一個水龍頭合約 1、合約代碼 //沒有“^”則表示指定版本 pragma solidity ^0.4.19; //Our first contract is faucet! contract

原创 17 geth客戶端了解和安裝

一、以太坊客戶端 1、什麼是以太坊客戶端 以太坊客戶端是一個軟件應用程序,它實現以太坊規範並通過p2p網絡與其他以太坊客戶端進行通信。如果不同的以太坊客戶端符合參考規範和標準化通信協議,則可以進行相互操作。 以太坊是一個開源項目

原创 22 solidity的簡單合約

一、solidity(上) 1、Solidity是什麼 Solidity 是一門面向合約的、爲實現智能合約而創建的高級編程語言。這門語言受到了 C++,Python 和 Javascript 語言的影響,設計的目的是能在以太坊虛

原创 21 以太坊虛擬機(EVM)

一、以太坊虛擬機(EVM)簡介 1、以太坊虛擬機(EVM) 以太坊虛擬機 EVM 是智能合約的運行環境 作爲區塊驗證協議的一部分,參與網絡的每個節點都會運行EVM。他們會檢查正在驗證的塊中列出的交易,並運行由EVM中的交易觸發的

原创 04windows中搭建以太坊私有鏈

一、下載安裝Geth 1、Geth簡介 Geth可以當客戶端來使用: 打開Geth,用戶可以創建自己的以太坊私有鏈、管理賬戶、挖礦、交易、部署執行智能合約等,用戶還可以下載以太坊主鏈、解析主鏈上任意交易數據等。 Geth可以當服務

原创 三、《區塊鏈+安全技術指南》雜記

一、應用與智能合約層的安全控制 1、web與移動客戶端應用安全 注入; 失效的身份認證與會話管理; 跨站腳本漏洞; 不安全的直接對象引用; 安全配置錯誤; 敏感數據泄露; 功能機訪問控制缺失; 跨站請求僞造; 使用已知易攻擊組件

原创 11 Ubuntu下nodejs、npm、truffle、vscode指定版本安裝

1、truffle安裝版本號記錄 https://www.pianshen.com/article/650021715/ 2、安裝方法 https://blog.csdn.net/mcgrady_tracy/article/det

原创 15 初識以太坊

一、初識以太坊(一)賬戶和錢包 1、以太坊單位 以太坊的貨幣單位稱爲以太,也稱爲ETH或符號Ξ ether被細分爲更小的單位,直到可能的最小單位,稱爲wei;1 ether = 10^18 wei 以太的值總是在以太坊內部表示爲

原创 05win7與win10兩節點搭建私有鏈

一、條件 1、設備:win7、win10 2、兩臺電腦均需要安裝geth,安裝教程見04windows中搭建以太坊私有鏈 注意:兩臺電腦的初始化配置文件genesis.json要相同。 二、啓動geth 1、節點1 geth --

原创 26 用web3js寫以太坊腳本

一、 var Web3 = require('web3'); var web3 = new Web3(new Web3.providers.HttpProvider("http://localhost:8545")); var

原创 19 以太坊賬戶

一、以太坊賬戶(上) 1、從UTXO談起 比特幣在基於UTXO的結構中存儲有關用戶餘額的數據:系統的整個狀態就是一組UTXO的集合,每個UTXO都有一個所有者和一個面值(就像不同的硬幣),而交易會花費若干個輸入的UTXO,並根據

原创 二、《區塊鏈+開啓智能新時代》雜記

一、區塊鏈+供應鏈 1、應用於採購和防僞 超長期智能合約:買賣雙方爲未來可能出現的危機制定合約,並制定時限。 可簡化採購過程:提出採購需求——供應商尋源——簽訂採購合同和採購訂單——供應商交貨付款(過程中數據動態更新)。 2、

原创 23 代幣&投票合約的編譯與解讀

一、簡單代幣合約(上) pragma solidity >0.4.22 <0.6.0; contract Coin { //鑄幣者 address public minter; //地址到代幣餘額的映射 mappin

原创 27 以太坊編譯部署腳本

一、 編譯是對合約進行部署和測試的前置步驟,編譯步驟的目標是把源代碼轉成 ABI 和 Bytecode,並且能夠處理編譯時拋出的錯誤,確保不會在包含錯誤的源代碼上進行編譯。 1、目錄結構 2、合約源碼 pragma solidi

原创 24 深入理解solidity

一、 1、solidity源文件佈局 pragma (版本雜注) 源文件可以被版本雜注pragma所註解,表明要求的編譯器版本 例如:pragma solidity ^0.4.0; 源文件將既不允許低於 0.4.0 版本的編譯器