侧边栏壁纸
博主头像
早日退休博主等级

什么时候不更新了,就是退休去了

  • 累计撰写 42 篇文章
  • 累计创建 6 个标签
  • 累计收到 2 条评论

目 录CONTENT

文章目录

区块链小知识

管理员
2023-10-09 / 0 评论 / 0 点赞 / 38 阅读 / 3537 字

DePIN

  • Decentralized Physical Infrastructure Networks - 去中心化物理基础设施网络

Image

椭圆加密 - ECC

DHT

第一代

中央服务器。以文件服务器作为中心,典型的提供FTP的服务器。这种方式对服务器带宽压力和机器性能压力巨大。而且,这种单点集权的模式风险非常大,一旦出现故障,整个服务将停止。

第二代

泛洪式查询。网络中每一个节点都向他邻居节点询问是否拥有资源,如果没有,邻居继续向他的邻居询问。这种广播式的查询缺点明显,每次向外传播都是指数级,很容易就形成蝴蝶效应般的影响,对网络资源消耗非常大,而且容易形成网络风暴。以至于要对广播的广度和深度进行限制。

典型的例子是Gnutella,2000年的一种文件共享网络。广播广度被限制在5个邻居,深度不大于7跳。但5^7=78125这个数量也是很惊人。尽管它没有直接查询中心节点有效率,但它不再依赖一个中心化的索引节点。

第三代

BTtorrent-tracker。BT的网络架构中存在一个中心服务器Tracker,用来保存BT网络巾各节点的IP地址和端口等信息。下载节点刚加入网络时从Trakcer上获得其他节点的地址信息,同时在tracker中注册自己的信息成为一个peer。实现一个节点同时与多个节点交互。

第四代

Bttorrent-DHT。虽然第三代文件共享网络实现了P2P,但也有个缺点,如果tracker被屏蔽或者被黑,那么新节点无法注册,也无法获得peer列表,整个P2P网络就瘫痪。DHT(分布式哈希表)网络的出现,作为BT协议强而有力的拓展,解决了以上问题。

DHT全称 Distributed Hash Table,中文翻译分布式哈希表。它是一种去中心化的分布式系统,特点主要有自动去中心化,强大的容错能力,支持扩展。另外它规定了自己的架构,包括keyspace和overlay network(覆盖网络)两部分。但是他没有规定具体的算法细节,所以出现了很多不同的实现方式,比如Chord,Pastry,Kademlia等。BitTorrent中的DHT是基于Kademlia的一种变形。本文也是根据Kademlia协议描述DHT网络。

预言机

预言机要解决的是智能合约无法直接调用外部 API 的问题,智能合约为啥不能调用 API 呢?

合约 ABI

合约 ABI 是以太坊生态系统中与合约交互的标准方式,不论是外部客户端与合约的交互还是合约与合约之间的交互 - 以太坊官方文档定义

通俗的理解,包含两方面内容

  1. ABI 是合约接口的说明

  2. ABI 定义与合约进行交互数据编码规则

区块链应用常用架构

常见的区块链应用有:浏览器、钱包、Dapp 等,但通常开发架构都是一样的

1、全节点

全节点保存了链的所有原数据,是一切查询、展示的数据本源

2、索引服务

索引服务是从全节点取数据,根据业务需求将链上的原数据倒腾到自己的数据库中,提供查询入口,方便代码的编写

3、后端 API

后端包装数据库成 API,供前端调用

4、合约

5、前端

从后端 API 获取链上数据并渲染,Dapp 还需要实现和钱包、合约的交互

  • 很多区块链提供了 Go SDK 和 JS 库,2、3 就可以不自己开发,直接使用

区块链交易流程

0

评论区