2022-04-12
转载:http://ipfsdrop.com/docs/whitepaper/arweave-lightpaper/ 摘要经典的区块链在数据存储方面存在几个众所周知的主要问题。这些问题需要将新的第三方协议集成到现有区块链的上层,因为费用太高,无法进行链上存储。因此,对于经典的区块链来说,访问内容始终会产生成本,而且内容永远不会永久存储。随着对数据存储的需求呈指数增长,对可扩展的分布式低成本数据存储协议的需求是必要的。 在这项工作中,我们介绍Arweave——一种类区块链的区块编织结构。区块编织是一个平台,致力于首次以经济高效的方式提供可扩展的链上存储。随着系统中存储的数据量的增加,达成共识所需的哈希值减少,从而降低了存储数据的成本。该协议现有的REST API使得在区块编织上层构建去中心化的应用程序十..
2022-04-10
《从零开始自己动手写区块链》源码解析解析源码:本书源码的github地址 引用: 《从零开始自己动手写区块链》阅读笔记 本书源码的github地址 模拟器的GUI游戏
2022-03-05
将区块链API化在这个区块链中,我们想要实现三个API,分别是 /api/mine:节点使用这个方法来挖掘新的区块 /api/transactions/new: 账户使用这个方法来建立新的交易 /api/chain: 返回当前的区块链 为了复用我们在上篇写好的代码,我们首先安装express.js,并创建一个新文件 app.js。express是一个基于node的http框架,它可以允许我们接受通过http协议传输的节点信息。我们还需要body-parser帮助我们解码节点发送过来的信息。 实现分布式共识以上我们已经实现了一个单机版的区块链了,但区块链之所以有用,是因为它能被部署到多个节点上去,并且所有节点都能够相互更新,实现分布式的共识。这样的机制保证了我们能够抵御double spending at..
2022-02-28
如何从技术上实现一条区块链?首先,这里假定读者有基本的编程能力,虽然本文用了Javascript来写,但掌握任意一门编程语言的读者阅读起来应该不会有任何难度。 开发准备我们首先需要安装最新版的Node.js 第一步,搭建区块链模型我们首先来搭一个能够新建区块,创建交易的区块链的模型。 'use strict'; //定义一个class,叫BlockChain,每一个区块链都是这个class的实例 class BlockChain { constructor() { this.chain = []; // 储存所有区块 this.difficulty = 4; // 挖矿的难度 } isProofVali..
2022-02-26
ERC721官方简介是:A standard interface for non-fungible tokens, also known as deeds.也叫非同质代币,或者不可置换代币(NFTs)。提到ERC721,一个好理解的例子就是CryptoKitties迷恋猫 ,每一只猫都是独一无二的拥有不同基因,有收藏价值属性。ERC721对于虚拟资产收藏品领域会有很好的应用价值和市场需求。 ERC721是以太坊和 Wanchain 区块链的ERC-721不可替代令牌标准的完整参考实现。它还与其他 EVM 兼容链兼容,如 Binance Smart Chain (BSC)、Avalanche (AVAX) 等。这是一个开源项目,完成了Hardhat测试。 此项目的目的是为任何想要在以太坊和 Wanchain ..
2022-02-24
基于以太坊的战艇游戏(Layer2)源码解析一、游戏介绍每一个玩家都可以看到上图所示的页面。该页面分为两部分,下面部分表示当前玩家的棋盘信息,开始的时候,该玩家随机选择两个格子,用于放置两个战舰;上面部分显示对方玩家的棋盘信息,除了对方玩家的战舰位置。开始的时候,上面部分的棋盘是空的。游戏开始之后,两个玩家轮流猜测对方的战舰的位置,每一次只能猜一个方格。如果对方的战舰不在所猜测的方格中,那么就会在对应位置显示一个水花的图像;反之,则出现一团火的图像。因为双方看不到对方的棋盘,因此,每一次都需要对方玩家回复“所猜测的方格是否有战舰”(我们可以采用密码学的技术检测出对方是否撒谎)。当某一个玩家率先猜中了对方两个战舰的位置,该玩家就赢了,并可以收取自己和对方的赌注。 二、涉及技术使用的编程技术有: HTML; ..
