合集-区块链

摘要:1. Gossip协议基础 1.1 什么是分布式系统 分布式系统(Distributed System)是由多台计算机或计算节点组成的计算机系统,这些计算节点通过网络连接在一起,并协同工作以完成共同的任务或提供服务。与单一计算机系统不同,分布式系统中的计算节点可以分布在不同的地理位置。 以下是分布式 阅读全文
posted @ 2023-10-09 09:11 落雷 阅读(338) 评论(0) 推荐(0) 编辑
摘要:本文介绍Ubuntu 18.04环境下如何配置Fabric开发环境。 安装Golang 因为Fabric是基于Go语言开发的,所以首先需要配置好Golang开发环境。 由于某些原因,国内无法从Golang官网上下载Golang,不过好在国内的Golang开发者们搭建的可供国内Golang爱好者分享的 阅读全文
posted @ 2019-11-08 11:39 落雷 阅读(2454) 评论(0) 推荐(0) 编辑
摘要:因为工作的需要,最近了解了下如何通过sdk来操作Chaincode,本文是sdk使用时的一些操作总结。 在fabric网络启动过程中,一般分为“启动网络 → 创建通道 → 加入通道 → 安装链码 → 实例化链码 → 调用链码”。本文以fabric-sdk-go项目中的end_to_end.go为例, 阅读全文
posted @ 2020-06-14 16:46 落雷 阅读(3150) 评论(0) 推荐(1) 编辑
摘要:比特币又称加密货币,但其实加密货币并没有加密:区块链中的所有信息都是公开的,包括交易的内容、交易的金额以及交易账户的地址。之所以称之为加密货币,主要是因为交易的双方在不与真实世界发生关联的情况下,双方的身份是无法获知的。 比特币中主要用到了密码学中的“哈希”和“签名”。 密码学中用的哈希被称作Cry 阅读全文
posted @ 2020-08-28 10:17 落雷 阅读(867) 评论(2) 推荐(0) 编辑
摘要:原文在这里。文中假定Amazon在区块链上存储用户的购物交易,并以此为例介绍了区块链公链的基本概念和工作原理、区块链与比特币、区块链的优劣以及区块链的前景。本文主要介绍区块链的优劣,举例几个应用场景。 声明:本作品采用署名-非商业性使用-相同方式共享 4.0 国际 (CC BY-NC-SA 4.0) 阅读全文
posted @ 2020-07-16 12:26 落雷 阅读(305) 评论(0) 推荐(0) 编辑
摘要:原文在这里。文中假定Amazon在区块链上存储用户的购物交易,并以此为例介绍了区块链公链的基本概念和工作原理、区块链与比特币、区块链的优劣以及区块链的前景。本文主要介绍公链的基本概念和工作原理、区块链与比特币。 声明:本作品采用署名-非商业性使用-相同方式共享 4.0 国际 (CC BY-NC-SA 阅读全文
posted @ 2020-07-16 09:50 落雷 阅读(589) 评论(0) 推荐(0) 编辑
摘要:本作品采用署名-非商业性使用-相同方式共享 4.0 国际 (CC BY-NC-SA 4.0)进行许可,使用时请注明出处。 在fabric的chaincode开发时,有时候需要用到第三方库提供的功能。这些库有些是没有go的实现,或开发者只提供了库,这时候就需要从chaincode中调用第三方库。而fa 阅读全文
posted @ 2020-06-27 16:16 落雷 阅读(746) 评论(0) 推荐(0) 编辑
摘要:一般来说,匿名通常跟隐私保护联系在一起。在比特币是基于交易的区块链,系统中没有用户的概念,不要求用户使用真名,可以用公钥产生地址,所以比特币具有一定的匿名性。 但比特币中的交易记录在区块链上,区块链是公开的。虽然使用者可以生成任意多的地址来隐藏自己,但由于所有的交易信息的都是公开的,仍可以通过分析链 阅读全文
posted @ 2020-08-28 10:28 落雷 阅读(1828) 评论(0) 推荐(0) 编辑
摘要:Hash指针 指针保存的是本地内存地址,只在本地计算机上才有意义,发送到其它计算机上就没有意义了。所谓的Hash指针只是一种形象的说法,实际系统中用到的时候只有Hash,没有指针。 那么怎么才能找到前一个区块的内容呢?全节点一般是把这些区块存储在一个key-value的数据库中:key是区块的Has 阅读全文
posted @ 2020-08-28 10:26 落雷 阅读(238) 评论(0) 推荐(0) 编辑
摘要:区块链由一条变为两条或者多条,这一过程被称为分叉。导致分叉的原因有很多,按分叉出现的原因可分为两种: state fork(状态分叉) 挖矿时,两个节点差不多同时挖到了矿,此时就会出现一个临时性的分叉,这是由于对于比特币区块链当前状态出现意见分歧而导致的分叉。分叉攻击(forking attack) 阅读全文
posted @ 2020-08-28 10:25 落雷 阅读(507) 评论(0) 推荐(0) 编辑
摘要:挖矿难度 H(version,target,nonce,Hashpre,MerkleTreeRoot)<=target 比特币中使用的Hash算法是SHA-256,产生的Hash值是256位。即整个输出空间是2256。比特币的挖矿难度的调整,就是调整目标空间占输出空间的比 阅读全文
posted @ 2020-08-28 10:24 落雷 阅读(863) 评论(0) 推荐(0) 编辑
摘要:比特币工作在应用层,它的底层是一个P2P网络。比特币的P2P网络是非常简单的,所有节点都是对等的,不会出现某些P2P网络中所谓的超级节点或者中心节点。 比特币网络的设计原则:simple, robust, but not efficient,即简单,健壮,而不是高效。每个节点都会维护一个邻居节点的集 阅读全文
posted @ 2020-08-28 10:23 落雷 阅读(440) 评论(0) 推荐(0) 编辑
摘要:比特币系统是一个基于交易的账本,这意味着存储在账本中的是一笔笔交易。那么在用户进行转账交易时,首先就需要确保用户所持有的数量要大于或等于将要交易的。这要做的目的是为了避免双花问题。 这种基于交易的账本好处在于隐私保护性比较好,缺点在于每次交易都需要说明币的来源。 在比特币的全节点中,会在内存中维护一 阅读全文
posted @ 2020-08-28 10:22 落雷 阅读(441) 评论(0) 推荐(0) 编辑
摘要:双花问题 在比特币系统中,Hash指针有两个用途:指向前一个区块和指向某笔交易。 比特币支付过程中,每笔交易都必须包含输入和输出。 交易输入中需要包含付款方此次交易的币的来源,付款方的公钥,交易输出包括此次要交易的币的数量以及收款方的地址。 币的来源中会包含付款方的地址,这样可以防止盗币事件的发生。 阅读全文
posted @ 2020-08-28 10:21 落雷 阅读(597) 评论(0) 推荐(0) 编辑
摘要:哈希指针(Hash Pointers) 对于一个结构体而言,指向它的指针存储的是它在内存中的首地址;而指向它的哈希指针,不仅保存这它的首地址,还保存着该结构体内容的哈希值。通过哈希指针,不仅可以找到该结构体,还能查验该结构内容是否被篡改过。 区块链 比特币中存储数据用的是区块链。所谓区块链,可以理解 阅读全文
posted @ 2020-08-28 10:20 落雷 阅读(1116) 评论(0) 推荐(0) 编辑
摘要:Merkle 树(Merkle Tree)是一种树状数据结构,通常用于验证大规模数据集的完整性和一致性。它的名字来源于其发明者 Ralph Merkle。Merkle 树在密码学、分布式系统和区块链等领域得到广泛应用,尤其在区块链中,它用于验证交易和区块的完整性,确保数据不被篡改。 下面是 Merk 阅读全文
posted @ 2023-09-27 09:25 落雷 阅读(453) 评论(0) 推荐(0) 编辑
摘要:表象:Return schema invalid. required items must be unique [recovered] 虽然 Fabric v2.2 已经发布了很久了,但之前因为项目历史问题,一直使用的都是 Fabric v1.4.8,所以智能合约也一直使用的都是 github.co 阅读全文
posted @ 2023-09-10 14:33 落雷 阅读(349) 评论(0) 推荐(1) 编辑
摘要:本文是区块链浏览器系列的第五篇,项目完整代码在[这里](https://github.com/mengbin92/browser/tree/main)。 在[上一篇文章](https://mengbin.top/2023-08-20-browser2/)中给浏览器增加了简单的用户认证,至此浏览器的基 阅读全文
posted @ 2023-08-30 15:28 落雷 阅读(121) 评论(0) 推荐(0) 编辑
摘要:## 简介 Hyperledger Fabric的Idemix是一个基于密码学的身份混淆系统,它提供了一种在区块链网络中实现用户隐私的方法。Idemix的主要特性是它的零知识证明系统,这是一种允许用户证明他们拥有某些属性,而无需透露任何其他信息的技术。 以下是一些更详细的关于Idemix的信息: 1 阅读全文
posted @ 2023-08-23 09:58 落雷 阅读(77) 评论(0) 推荐(0) 编辑
摘要:本文是区块链浏览器系列的第四篇。 在[上一篇文章](https://mengbin.top/2023-08-13-blockBrowser/)介绍如何解析区块数据时,使用`session`对客户端上传的pb文件进行区分,到期后自动删除。 在这片文章中,会着重介绍下认证系统的实现,主要分为三部分: - 阅读全文
posted @ 2023-08-22 14:22 落雷 阅读(104) 评论(0) 推荐(0) 编辑

点击右上角即可分享
微信分享提示