首页 文章

在区块链平台上实施智能合约

提问于
浏览
0

在我的论文中,我研究区块链平台上的智能合约 . 几乎所有可能的语言都有许多区块链的实现,有或没有工作机制证明等等 .

但我对常见的区块链不感兴趣 . 我想实现像以太坊这样的东西,即应该有可能以某种方式执行图灵完整代码 .

但是我不知道怎么做 .

你有任何有趣的链接或文章或github存储库?

P.S:我的论文只有研究性质,所以我主要想要实现一般原理的系统,或者说明如何在p2p中利用连接节点(计算机)的强大计算能力 . 区块链的财务方面不符合我的利益,我不想 Build 新硬币:)

谢谢你,埃德加

1 回答

  • 0

    也许这里不是一个提出这个问题的好地方,但只是为了帮助,你可以在它的测试网络中使用以太坊开始你的研究:“ropsten” .

    基于here,您应该按照以下步骤部署并执行Simple Storage Ethereum Contract .

    Environment

    Install Metamask

    首先,您需要在浏览器上安装MetaMask插件 .

    Launch Chrome or Firefox
    Go to the url: https://metamask.io/
    Click on Get Chrome Extension
    

    Metamask将是你的钱包 .

    创建一个新账户:

    Accept Terms of Use
    Set your password
    Backup the seed phrase
    

    种子短语用于恢复帐户 . 它需要恢复密码 .

    不要丢失密码,也不要破坏种子短语!

    将网络更改为测试网络:

    Change network to test network
    Connect on Testnet Network
    

    因为您肯定没有以太坊测试网络节点,并且您只想使用测试以太网,所以您需要在测试网络上连接MetaMask .

    Click on the plugin icon 
    Change the network to: Ropsten Test Network
    

    将网络更改为测试网络

    获得测试以太网:为了执行智能合约,或者只是将以太网发送到另一个帐户,您需要启动以太网 . MetaMask提供了一个«水龙头»,它不时提供一些免费的以太网 .

    Click on BUY
        Click on ROPSTEN TEST FAUCET
    

    你应该被重定向 https://faucet.metamask.io/

    点击购买以太网

    去Ropsten Faucet获得免费测试以太网

    Click on request 1 ether from faucet
    

    如果您看到以下交易,则会成功 .

    如果您收到错误,请在几分钟后尝试 . 如果您看到该交易,则会成功 . 请注意,美元仅供参考 . 如果您收到错误,请在几分钟后尝试 .

    有关更多信息,请转到安装MetaMask,连接到Testnet,获取并发送以太网不要忘记在测试网络上连接

    The Smart Contract

    该 Contract 所做的不仅仅是允许任何人存储世界上任何人都可以访问的唯一号码 . 任何人都可以简单地拨打 Contract 并覆盖您的号码,但号码将始终存储在区块链的历史记录中 . 来源

    pragma solidity ^0.4.0;
    contract SimpleStorage {
        string storedData;
    
        function set(string x) public {
            storedData = x;
        }
    
        function get() public constant returns (string) {
            return storedData;
        }
    }
    

    Add contract in Remix IDE

    Remix是一个用于与以太坊区块链交互的工具,用于开发和调试智能合约 .

    转到https://remix.ethereum.org在左上角,单击对话框中的add:SimpleStorage.sol在Remix中复制并粘贴上面的Smart Contract源单击右上角的“运行”菜单

    Deploy Contract

    您可以根据需要部署任意数量的 Contract . 只要您的账户中有以太网来支付交易费用 .

    Verify that you are in Injected Web3 mode, with an account selected. If not :
    Verify that you are login on MetaMask
    Close and restart Remix (the Contract will be automatically saved)
    Click on Create
    Click on Submit pop up
    

    应出现待处理的交易 .

    在不到一分钟的时间内,应该开采交易,并且应该出现已部署的 Contract .

    验证帐户,单击“创建”,然后等待 .

    Contract 出现,地址可以复制执行 Contract

    部署后,智能合约将显示其方法 .

    蓝色方法用于从区块链中读取数据,它是免费的 . 红色方法用于在区块链上写入数据,它需要燃气 .

    添加«Hello World!设置文本输入字段中的(白色引号)然后单击设置单击提交弹出窗口

    Blue is for read, Red is for write
    

    插入字符串,单击Set Consult the Contract

    智能合约数据可以自由查阅 .

    等到Set事务被挖掘然后,单击Get

    显示先前存储的值 .

    Instantiate an existing contract
    enter image description here

    您可以在混音中实例化和执行现有合约 . 您需要源代码和 Contract 地址 .

    您需要粘贴先前部署的 Contract 的确切源代码获取智能合约地址(参见上文)或用户Etherscan复制地址输入字段中的地址单击At地址

    您现在已实例化以前部署的智能合约 . 您现在可以使用上面看到的 Contract 方法 .

    这种智能合约没有任何保护,因此每个人都可以与此 Contract 互动并更改 Value .

    已创建,部署和执行Solidity Smart Contract执行 .

    您现在可以编辑智能合约以限制所有者选择的作者访问权限 .

相关问题