pseudoyu

pseudoyu

Blockchain | Programming | Photography | Boyi
github
twitter
telegram
mastodon
bilibili
jike

blockchain

Cosmos 区块链架构与 Tendermint 共识机制
前言 工作中我主要参与的是跨链项目的方案架构设计与实现,因为公司既有方案是基于 Cosmos 区块链的,我在一年多的项目中基于 Cosmos SDK 作了一些底层链开发改造,对其技术实现有了一些了解,但由于开发周期比较赶,一直没能对 Cosmos 的架构设计与…
通过状态锁在 Solidity 智能合约中实现两阶段提交
前言 在一些牵扯到多个系统或合约交互的智能合约应用场景中,尤其是一些资产 / 数据准确性较为敏感的业务中,我们需要保证在整个业务流程中数据的原子性。因此,我们需要在合约层面实现类似多阶段提交的机制,即将合约中的状态更改过程分解为预提交和正式提交两个阶段。 本文通过状态锁的机制实现…
cover
cover
cover
cover
cover
cover
cover
cover
cover
cover
cover
cover
cover
cover
cover
cover
cover
cover
cover

Solidity 智能合约开发 - Hardhat 框架使用

前言 经过了前几篇对智能合约基础、Web3.py、ethers.js 的学习,我们已经掌握了通过程序与区块链网络直接交互的基础知识,不熟悉的同学可以回顾一下: Solidity 智能合约开发 - 基础 Solidity 智能合约开发 - 玩转 Web3.py Solidity…
cover
cover
cover
cover
cover

Solidity 智能合约开发 - 玩转 ethers.js

前言 在之前的《Solidity 智能合约开发 - 基础》中,我们学习了 Solidity 的基本语法,并且了解了可以通过 Brownie 与 HardHat 等框架进行调试。而另一篇《Solidity 智能合约开发 - 玩转 Web3.py》中我们也通过 Web3.py…
cover
cover
cover
cover
cover
cover

Solidity 智能合约开发 - 玩转 Web3.py

前言 在前文《Solidity 智能合约开发 - 基础》中,我们学习了 Solidity 的基本语法,并且了解了可以通过 Brownie 与 HardHat 等框架进行调试。但在使用这些封装好的框架之前,我们可以通过 Web3.py 直接与我们本地的 Ganache 节点进行交互…
cover

Solidity 智能合约开发 - 基础

前言 去年读研的时候上的 HKU 的 <COMP7408 Distributed Ledger and Blockchain Technology>,课程中学习了以太坊智能合约的开发,做了一个简单的图书管理 ÐApp,然后毕业设计也选择了基于 Ethereum…
cover

BitXHub 跨链插件(Fabric)源码解读

前言 之前提到过趣链科技的 BitXHub 跨链平台是业界较为完善的跨链开源解决方案,主要通过中继链、网关和插件机制对跨链流程中的功能、安全性和灵活性等进行了优化。 目前公司团队在做一个 BaaS 平台的跨链模块,我在其中负责跨链适配器部分,对应 BitXHub…
分布式系统与区块链共识机制
前言 随着互联网系统日益复杂,大多数系统都从单体架构转向分布式架构,而在区块链这样以分布式技术为基础的技术更是高度依赖数据一致性和共识机制。 本文将介绍分布式系统一致性、共识的概念与其在区块链中的实际应用与发展。 分布式系统 一致性问题 随着业务场景的复杂化…
cover
cover
cover
cover

区块链服务平台(BaaS)简介及架构

前言 目前工作中负责一个针对 Hyperledger Fabric 的区块链即服务 (Blockchain as a Service, BaaS) 平台的链码管理部分,对这 BaaS 平台的架构与实现很感兴趣,作为一个能为开发者提供一站式应用创建、管理和维护区块链的平台…
cover
cover

跨链技术原理与实战

前言 目前区块链底层平台日渐多样,如老牌的 Hyperledger Fabric、Ethereum 等,以及国内的 Hyperchain、Z-ledger 等,而随着区块链应用生态越来越复杂,单链的性能有一定瓶颈,链与链之间的协同与交互(信息同步、共享、合约互操作等…
cover
cover

Hyperledger Fabric Go SDK 事件分析

前言 最近在做跨链适配器,需要在一条本地链上利用 Go SDK 来连接 fabric 网络,并监听事件,所以对 fabric 所支持的事件与 SDK 所提供的监听方法做一下汇总。 Fabric 事件 事件是客户端与 Fabric 网络进行交互的一种方式,如上图所示,Fabric…
cover
cover
cover
cover
cover

Ethereum MPT(Merkle Patricia Tries)详解

前言 最近接到了一个工作任务,将项目智能合约状态树中的数据结构从红黑树改为字典树,并对比一下两个数据结构的性能,Trie 主要参照的是 Ethereum 官方的 Java 实现 ethereum/ethereumj,而红黑树则是自己实现…
cover
cover

IPFS 本地节点搭建(命令行)

前言 上一篇《IPFS 分布式文件存储原理》对于 IPFS 系统的设计理念、功能、工作原理及 IPNS 做了详细的介绍,那么,如何在本地搭建一个 IPFS 节点呢? 本文在macOS 11.2.3系统上搭建了一个 IPFS 节点(命令行版本),并对文件上传、下载、网络同步、pin…
cover
cover
cover

IPFS 分布式存储协议分析与思考

前言 最近在做学校的 Case Study 项目,是一个基于Ethereum平台的音乐版权管理项目,其中对于音乐作品、版权证明文件等上传用到了 IPFS 分布式文件存储技术,主要是利用其去重的特性来检测侵权行为。对 IPFS 这个系统产生了兴趣,阅读了QTech 平台上的IPFS…
cover
cover
cover
cover
cover
cover
cover

Hyperledger Fabric 网络与安全体系浅析

前言 上一篇文章《Hyperledger Fabric 架构详解》对Fabric的架构和工作原理进行了详细的解读与分析,那作为一个企业级的区块链系统,它是如何根据复杂的业务需求搭建网络,在运行过程中存在哪些安全问题,以及Fabric是如何从机制上进行预防的呢? 本文将通过实例阐释…
cover
cover
cover
cover
cover
cover
cover
cover
cover
cover

Hyperledger Fabric 系统架构详解

前言 因为毕业 Case Study 的项目主要是基于Ethereum公链,也没有面向企业的应用场景,所以之前对Hyperledger Fabric的了解大多只是停留在它的权限管理机制、通道、灵活的智能合约编写等几个特色的概念,对它的架构、各个节点的角色、运行机制等都是一知半解…
cover
cover
cover
cover

Ethereum 核心技术解读

前言 比特币作为一种去中心化的数字货币,是极其成功的,但受限于比特币脚本(非图灵完备,只能处理一些简单的逻辑),并不能处理很复杂的业务。而Ethereum引入了智能合约,使去中心化的概念能够应用于更丰富的应用场景,因此也被称为区块链 2.0。本文将对以太坊核心技术进行解读…
cover
cover
cover
cover
cover
cover

比特币核心技术解读

前言 在上一篇文章《区块链基础知识与关键技术》里对区块链的基础知识和关键技术进行了梳理,而比特币是区块链最典型的应用,本文将对比特币核心技术进行解读,如有错漏,欢迎交流指正。 比特币系统 比特币是在 2009 年由中本聪发明的一个数字货币,主要是为了反抗中心化的银行体系…
Ownership of this blog data is guaranteed by blockchain and smart contracts to the creator alone.