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

时间:2018-06-30 02:06:46

标签: blockchain smartcontracts

在我的论文中,我研究了区块链平台上的智能合约。几乎有每种可能的语言,区块链有很多实现,带有或不带有工作证明机制,等等。

但是我对通用区块链不感兴趣。我想实现以太坊之类的东西,即应该有可能以某种方式执行图灵完整代码。

但是我不知道如何。

您是否有任何有趣的链接或文章或github存储库?

P.S:我的论文仅具有研究性,所以我主要想针对一般原理实现该系统,也许展示如何利用p2p中连接的节点(计算机)的强大计算能力。区块链的财务方面出于我的兴趣,我不想建立新的硬币:)

谢谢你, 埃德加

1 个答案:

答案 0 :(得分:0)

也许这里不是问这个问题的好地方,而只是寻求帮助, 您可以在测试网络“ ropsten”中使用以太坊开始研究。

基于here,您应按照以下步骤部署和执行简单存储以太坊合约。

环境

安装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水龙头以免费获得以太币

Click on request 1 ether from faucet

如果您看到下面的交易,那就成功了。

如果遇到错误,请稍后再试。 如果您看到交易,则说明交易成功。请注意,美元仅供参考。 如果遇到错误,请稍后再试。

有关更多信息,请转到安装MetaMask,连接到Testnet,获取并发送以太坊  别忘了连接测试网络

智能合约

此合同的作用不仅仅在于允许任何人存储世界上任何人都可以访问的唯一号码。任何人都可以简单地调用合同并覆盖您的号码,但是该号码将始终存储在区块链的历史记录中。 来源

pragma solidity ^0.4.0;
contract SimpleStorage {
    string storedData;

    function set(string x) public {
        storedData = x;
    }

    function get() public constant returns (string) {
        return storedData;
    }
}

在Remix IDE中添加合同

Remix是用于与以太坊区块链进行交互以开发和调试智能合约的工具。

转到https://remix.ethereum.org 点击左上角的+ 在对话框中添加:SimpleStorage.sol 将以上智能合约源复制并粘贴到Remix中 点击右上方菜单上的运行

部署合同

您可以根据需要部署任意数量的合同。前提是您的帐户上有以太币来支付交易。

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

应显示待处理的交易。

应在不到一分钟的时间内完成交易,并显示已部署的合同。

验证帐户,单击创建,然后等待。

合同出现,可以复制地址 执行合同

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

蓝色方法用于从区块链读取数据,它是免费的。红色方法用于在区块链上写入数据,这会耗费大量汽油。

添加«Hello World!在“设置”文本输入框中输入»(用引号引起来) 然后点击设置 点击提交弹出窗口

Blue is for read, Red is for write

插入字符串,单击设置 查阅合同

可以免费查询智能合约数据。

等待直到挖掘Set交易 然后,点击获取

显示先前存储的值。

实例化现有合同 enter image description here

您可以实例化并执行remix中的现有合同。您需要源代码和合同地址。

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

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

此智能合约没有任何保护,因此每个人都可以与该合约进行交互并更改其价值。

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

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