创建一个工程,新建一个EncryptedToken合约。

代码如下:

pragma solidity ^0.4.4;contract EncryptedToken  {uint INITIAL_SUPPLY = 666666; //允许发布的代币数量mapping (address => uint) balances;function EncryptedToken() {balances[msg.sender] = INITIAL_SUPPLY;}//转账到一个指定的地址function transfer(address _to, uint _amount) {assert(balances[msg.sender] >= _amount);balances[msg.sender] -= _amount;balances[_to] += _amount;}//查看地址余额function balanceOf(address _owner) constant returns (uint) {return balances[_owner];}
}

然后进行:truffle develop

再编译:compile

接着在项目migrations中创建2_deploy_encryptedToken.js文件。

var EncryptedToken = artifacts.require("./EncryptedToken.sol");module.exports = function(deployer) {deployer.deploy(EncryptedToken);
};

接着部署:migrate

与合约互动

先声明一个变量 contract。

truffle(develop)> let contract

给变量赋值

truffle(develop)> contract = EncryptedToken.deployed().then(instance => contract = instance)

此时contract获得值,进行转账查询等操作。

代币默认创建再第一个地址上:0x627306090abab3a6e1400e9345bc60c78a8bef57,对其进行查询。

Accounts:
(0) 0x627306090abab3a6e1400e9345bc60c78a8bef57
(1) 0xf17f52151ebef6c7334fad080c5704d77216b732
(2) 0xc5fdf4076b8f3a5357c5e395ab970b5b54098fef
(3) 0x821aea9a577a9b44299b9c15c88cf3087f3b5544
(4) 0x0d1d4e623d10f9fba5db95830f7d3839406c6af2
(5) 0x2932b7a2355d6fecc4b5c0b6bd44cc31df247a2e
(6) 0x2191ef87e392377ec08e7c08eb105ef5448eced5
(7) 0x0f4f2ac550a1b4e2280d04c21cea7ebd822934b5
(8) 0x6330a553fc93768f612722bb8c2ec78ac90b3bbc
(9) 0x5aeda56215b167893e80b4fe645ba6d5bab767de
truffle(develop)> contract.balanceOf("0x627306090abab3a6e1400e9345bc60c78a8bef57")
等价于:truffle(develop)> contract.balanceOf(web3.eth.coinbase)

转账

contract.transfer(web3.eth.accounts[1], 666)

Solidify实现一个智能合约16(创建一个简单的代币)相关推荐

  1. 智能合约内部调用另一个智能合约

    最近在看以太坊,顺便记录一下,这篇文章的目的是一个智能合约调用另一个智能合约的方法,写个demo记录一下 pragma solidity ^0.4.18;contract DataContract { ...

  2. Solidify实现一个智能合约2(属性和行为的访问权限)

    属性的访问权限 属性:状态变量 属性的权限有三种:public internal private pragma solidity ^0.4.4;/* 属性的权限有三种:public internal ...

  3. 以太坊源码linux下如何编译,以太坊教程:搭建环境、编写编译一个智能合约

    本以太坊教程主要是介绍:搭建一个开发环境.编写编译一个智能合约. 以太坊是什么 以太坊(Ethereum)是一个开源的有智能合约功能的公共区块链平台.通过其专用加密货币以太币(Ether)提供去中心化 ...

  4. 智能合约_AElf智能合约开发-第一个AElf智能合约

    第一个AElf智能合约 如果AElf脚手架项目能够正常启动并使用单节点产生区块,现在就可以着手做第一个智能合约了:Hello World. 开发AElf智能合约只需要简单的C#语法,并且这些语法都可以 ...

  5. 以太坊教程:搭建环境、编写编译一个智能合约

    本以太坊教程主要是介绍:搭建一个开发环境.编写编译一个智能合约. 以太坊是什么 以太坊(Ethereum)是一个开源的有智能合约功能的公共区块链平台.通过其专用加密货币以太币(Ether)提供去中心化 ...

  6. 基于以太坊的测试链发布一个智能合约

    1,创建账户 使用METAMASK钱包来进行操作,具体的创建过程请自行查阅.创建好的账户如下图所示,账户余额显示为0 详情下面显示对应账户的地址,这个是最关键的信息 首先选择左上角头像旁边的按键,切换 ...

  7. 我自己可以挖矿了!使用Ethereum C++客户端Aleth建一个私有网络,并使用Remix部署一个智能合约

    本文是按照这个教程执行的结果记录:Creating a private network and deploying a contract with Remix Ethereum Aleth在Wins上 ...

  8. 智能合约怎么创建合约_可出售智能合约的协议

    智能合约怎么创建合约 by Pablo Ruiz 帕勃罗·鲁伊斯(Pablo Ruiz) 可出售智能合约的协议 (A Protocol for Sellable Smart Contracts) Et ...

  9. SAP PM 入门系列11 - 一个维护通知单只能创建一个维护订单?

    SAP PM 入门系列11 - 一个维护通知单只能创建一个维护订单? 在SAP系统里,执行事务代码IW34,输入Notification号码100314924,以及Order type ZM03,试图 ...

最新文章

  1. msf实战提权windows_ATTamp;CK实战 | 红队评估一(上)
  2. GPU Gems2 - 10 动态辐照度环境映射实时计算
  3. JAVA 开发axis2_基于Apache axis2开发Java Web服务
  4. ffmpeg 参数_使用FFMPEG进行视频转码
  5. mysql做千万条压测数据
  6. java xmladapte_java – Jaxb:全局绑定使用XMLAdapter进行双...
  7. cfree运行程序错误的原因_ARM Cortex-M 系列 MCU错误代码自动追踪库的使用经验分享
  8. 还在被网络上各种关于单片机行业的收入搞的眼花缭乱而烦恼吗
  9. 公众号openid能做用户识别_四川养老公众号开发哪里能做
  10. 局域网游戏联机原理解析
  11. Python二维码应用(一)QRcode二维码生成识别
  12. 东八区转为0时区_世界时间与北京时间怎么转换,世界标准(0时差)时间以哪个国家为准?...
  13. 1个月到2岁半的育儿方案,有了它宝宝都不用去上早教啦
  14. 记2012.12.20北京CISSP考试通过-“末日”前终于拿到“船票”
  15. linux系统的一点感触
  16. 为什么Wannacry 勒索病毒加密的部分数据能恢复?
  17. 励志语录(忙碌的同时也要停下来思考人生)
  18. 【Web技术】1159- 浅析 Web 录屏技术方案与实现
  19. mysql安装出现应用程序无法正常启动(oxc000007b)的解决方案
  20. Silverlight视频语音聊天项目

热门文章

  1. http的长连接和短连接的区别
  2. 移动机器人底盘-四轮差速模型(四轮独立)
  3. anaconda中安装pip3
  4. FinalShell国产ssh连接工具简单的使用教程
  5. Word中安装MathType先后出现错误‘53‘、‘48‘未找到MathPage.wll解决办法
  6. 服务器里误删找回,服务器数据删除?别担心,4个方法轻松找回!
  7. ubuntu明明白白安装中文字体
  8. rpm 安装 忽略依赖_rpm卸载软件忽略循环依赖
  9. Windows10+小米R3G设置HP deskjet 1100局域网共享
  10. Linux下python如何解压rar文件,RAR解压文件