区块链技术
文章平均质量分 81
记录比特币,区块链相关的技术文章
E等于MC平方
这个作者很懒,什么都没留下…
展开
-
以太坊虚拟机EVM的工作原理是怎样的
在底层,EVM 使用一组指令(称为操作码)来执行特定任务。翻译 2022-09-24 09:31:33 · 1363 阅读 · 3 评论 -
彻底理解solidity中的事件
写了日志有啥用呢?它的作用就是可以被订阅。很多智能合约项目都是传统的web项目+智能合约的这种架构,业务系统有些在链外,那么链上发生的事情就可以基于这种发布订阅机制进行通知,从而打通链上和链下原创 2022-09-16 21:45:45 · 2691 阅读 · 0 评论 -
如何编写一个拍卖的智能合约
拍卖的方式有几种,其中有两种概念你需要先了解下,一种是公开拍卖(open auction),一种叫盲拍(blind auction)。简单来讲就是,前一种拍卖大家都能互相看到对方的出价,而后一种则看不到。原创 2022-08-16 23:05:34 · 833 阅读 · 0 评论 -
如何编写一个投票功能的智能合约
这个方法是调用者委托给另一个账户帮自己投票,这里面有个关键字`storage`,这个关键字可以理解为引用,我们可以类比其他编程语言里引用类型,一个变量如果是引用类型,对其的修改同样造成被引用对象的修改。这里的`sender`变量就是调用者对应的投票对象的引用。...原创 2022-08-14 22:54:51 · 2454 阅读 · 0 评论 -
用go语言撸一个简易版的区块链
区块链的代码非常复杂,但是我们可以从中梳理几个核心的概念,然后对应进行简单的实现。通过这些简易版本的实现我们可以以小窥大。下面我们先来梳理下几个核心的概念。原创 2022-06-20 23:38:04 · 3335 阅读 · 6 评论 -
区块链在非金融领域有哪些值得期待的应用
在密码学中,零知识证明(zero-knowledge proof)或零知识协议(zero-knowledge protocol)是一种方法,通过该方法,一方(the prover, 证明者)可以向另一方(the verifier, 证明者)证明他们知道值x,而无需传达任何信息,除了他们知道值x。零知识证明的本质是,通过简单地揭示信息来证明某人具有某些信息的知识是微不足道的。面临的挑战是在不透露信息本身或任何其他信息的情况下证明拥有这种财产。...原创 2022-06-16 23:27:32 · 1564 阅读 · 1 评论 -
这可能是公认的最web3的产品了
Mirror 的核心创新点在于,结合 DAO、Web3、NFT 所构建的所有权经济模式,为内容创作者提供一套众筹工具集原创 2022-06-13 21:16:18 · 860 阅读 · 0 评论 -
一文让你了解关于DAO的全部
智能合约是 DAO 的核心。 合约界定了组织的规则原创 2022-06-08 20:34:19 · 1336 阅读 · 0 评论 -
一文带你了解NFT的底层技术有哪些
本文就带你了解下是哪些技术支撑着这个全球交易规模数百亿美元的产业。原创 2022-05-29 10:48:05 · 2639 阅读 · 0 评论 -
白话ETH2.0:你要了解的都在这里
无论是以太坊还是比特币区块链,都有个很大的问题就是他们的算法机制对能源有极大的消耗。原创 2022-05-16 21:59:28 · 3608 阅读 · 0 评论 -
以太坊虚拟机EVM究竟是个啥
为什么这些链要做EVM兼容呢?核心当然是以太坊在公链领域的影响力。目前市场上的各种公链此起彼伏,但是以太坊依然是公链领域的龙头。这些新兴的公链需要利用以太坊引流,如果开发者可以把智能合约直接无缝迁移到自己的链上,那就是最好的引流方式。原创 2022-05-10 20:33:12 · 6426 阅读 · 1 评论 -
一文带你了解火爆的区块链互联网Cosmos
区块链市场格局就产生了变化,各种公链像雨后春笋般涌现出来。但由于技术、生态以及一些问题绝大多链与链之间无法连接互通,使得用户的数据、资产、应用割裂,形成孤岛效应。为了解决此问题,业界开始探索跨链技术。原创 2022-05-09 21:00:19 · 1874 阅读 · 0 评论 -
什么事以太坊域名服务
首先有个概念叫DNS,它是域名系统 (Domain Name System) 的缩写,它是由解析器和域名服务器组成的。域名服务器是指保存有该网络中所有主机的域名和对应IP地址,并具有将域名转换为IP地址功能的服务器。而 DNS 服务器中「等级」最高的要数「根域名服务器」,也叫「根 DNS 服务器」。...原创 2022-05-06 21:13:13 · 475 阅读 · 0 评论 -
pybitcointools源码分析之RFC6979
在分析源码之前,一定要先讲讲什么是RFC6979。比特币的签名机制是基于椭圆曲线算法。在椭圆曲线里面k值(用于签名)是要严格保密的,暴露k值就相当于暴露私钥。k值要保证两点:保密唯一有人提出一种方式来产生k值,类似下面这样的公式:k = SHA256(d + HASH(m));其中,d是私钥,m是消息,我们一般会对消息的HASH进行签名,因此这里是HASH(m)。有私钥d,就保证了“保密”,再原创 2017-08-27 18:41:59 · 1946 阅读 · 0 评论 -
pybitcointools源码分析之进制转换
decode函数是把字符串形式表示的数字转换成整型,比如这个例子中的'65535'转换成整数65535原创 2017-08-28 19:08:57 · 815 阅读 · 0 评论 -
pybitcointools源码分析之BIP32实现
在看本篇之前,需要了解一个很重要的背景知识。那就是 HD钱包和 比特币协议 BIP32。关于HD钱包的概念,建议大家去看看<<精通比特币>>原创 2017-08-30 12:44:17 · 2381 阅读 · 3 评论 -
pybitcointools源码分析之由私钥获取公钥
私钥其实就是一串随机的数字而已。有了私钥,我们可以使用椭圆曲线乘法产生一个公钥。原创 2022-05-01 19:43:40 · 2494 阅读 · 0 评论 -
Merkle Tree与区块链
什么是merkle tree假设你已经知道了什么是哈希算法以及哈希是用来干啥的。网络传输数据的时候,A收到B的传过来的文件,需要确认收到的文件有没有损坏。如何解决?有一种方法是B在传文件之前先把文件的hash结果给A,A收到文件再计算一次哈希然后和收到的哈希比较就知道文件有无损坏。但是当文件很大的时候,往往需要把文件拆分很多的数据块各自传输,这个时候就需要知道每个数据块的哈希值。怎么办呢?这种情况,原创 2017-07-06 14:02:59 · 47262 阅读 · 8 评论 -
关于hashcash
来源这个概念最早来自Adam Back的一篇论文Hashcash - A Denial of Service Counter-Measurehashcash是一个基于hash算法的系统用途邮件过滤邮件过滤是hashcash最广泛的应用。比特币比特币的上的应用是为了防止双重支付(double-spending),这个是比特币得以运行的根本,可以防止伪造交易。这部分的细节会单独写一篇文章技术原理原理概述原创 2017-01-07 09:20:30 · 9092 阅读 · 1 评论 -
在testrpc以太坊测试环境部署智能合约
环境ubuntu 16.04, 64位运行testrpc安装过程参考以前的文章。开启一个终端,输入testrpc运行测试节点。testrpc是一个完整的在内存中的区块链仅仅存在于你开发的设备上。相对于 Geth私有链环境,TestRPC 它在执行交易时是实时返回,而不等待默认的出块时间,这样你可以快速验证你新写的代码,当出现错误时,也能即时反馈给你。启动 testrpc...原创 2018-03-13 09:20:54 · 5335 阅读 · 1 评论 -
以太坊DApp开发的入门示例
环境准备ubuntu 16.04, 64位还需要安装以太坊相关的环境: * nodejs * truffle * solidity * testrpc可以参考我之前的一篇文章:http://blog.csdn.net/pony_maggie/article/details/79531534另外,本篇还会用到webpack,安装教程网上也有很多。这部分如果不熟悉的话请自行...原创 2018-03-25 13:33:14 · 22749 阅读 · 2 评论 -
一个简易的区块链demo
别人写的python版本python版本源码地址:https://github.com/dvf/blockchain#installation环境准备我使用的是ubuntu 16.04,其它linux版本也可以。需要安装python3.6+(步骤省略)安装pipenv$ pip install pipenv 创建虚拟执行环境(类似docker一样)root@pony-virtual-machine:原创 2017-10-30 13:37:53 · 16273 阅读 · 3 评论 -
hyperledger fabric chaincode开发示例
Init方法在chaincode被创建或者升级交易的时候被调用,Invode方法在chaincode执行invoke动作时调用。我们的类名叫SimpleAsset原创 2017-11-10 12:39:15 · 3528 阅读 · 0 评论 -
Hyperledger Fabric 开发环境搭建
开发环境介绍仅以我自己的环境为例UBUNTU 16.04 LTS虚拟机dockerdocker-composegitdocker和docker-compose的安装省略原创 2017-11-09 17:27:34 · 10336 阅读 · 1 评论 -
部署测试fabric1.0及源码解析
这个脚本会下载需要的docker镜像以及自动化脚本,执行完毕后,首先会在当前目录看到一个release的文件夹,里面有fabric运行环境的启动脚本。原创 2017-11-15 09:47:18 · 3295 阅读 · 0 评论 -
编译hyperledger fabric官方源码
开发环境介绍UBUNTU 16.04 LTSdockerdocker-composegitgo 1.8以上进入fabric源码目录原创 2017-11-27 16:17:34 · 3422 阅读 · 0 评论 -
mist连接私有网络调试智能合约
环境ubuntu 16.04, 64位首先确保私有网络已经搭建好,可以参考以前的文章。安装mist安装依赖项$ sudo curl https://install.meteor.com/ | sh$ sudo curl -o- -L https://yarnpkg.com/install.sh | bash$ yarn global add electron...原创 2018-03-16 09:30:24 · 3236 阅读 · 1 评论