区块链
文章平均质量分 92
yitahutu79
小李今天打代码了吗?
展开
-
区块链中的库(solidity0.8.13)
这意味着如果库函数被调用,它的代码在调用合约的上下文中执行,即 this 指向调用合约,特别注意,他访问的是调用合约存储的状态。形式的占位符,该占位符是完整的库名称的keccak256哈希的十六进制编码的34个字符的前缀,例如:如果该库存储在libraries目录中名为bigint.sol的文件中,则完整的库名称为。EVM 为了实现这些,合约所调用的内部库函数的代码及内部调用的所有函数都在编译阶段被包含到调用合约中,然后使用一个 JUMP 指令调用来代替 DELEGATECALL。...原创 2022-08-13 00:07:39 · 328 阅读 · 0 评论 -
链下数据互操作
链下数据互操作主要解决链上链下数据的安全可信交互问题。区块链多方共识、难以篡改的特点可以保证链上数据的安全共享,但在保证与链下系统交互过程中的安全可信方面存在难点。因此该过程中要格外重视数据可信、隐私保护、安全监管问题。链下数据互操作所处位置及关键问题如图所示。链上链下交互场景中需从数据可信、隐私保护、安全监管三个方面来保证交互过程的可信、安全、合规。(1)数据可信包括数据来源可信、数据传输可信、计算可信三个方面,数据来源可信包括可信第三方数据源,如银行数据、政府数据等具有信任基础的数据源,以及通过共识增原创 2022-07-22 21:54:08 · 1174 阅读 · 0 评论 -
链上链下协同计算
区块“链”的链,包含“数据链”和“节点链”。数据链指用链式结构组织区块数据,构成数据校验和追溯的链条;“节点链”指多个节点通过网络连接在一起,互相共享信息,其中的共识节点则联合执行共识算法,产生并确认区块。交易“上链”的简要过程如下:1、记账者们收录交易,按链式数据结构打包成“区块”。2、共识算法驱动大家验证新区块里的交易,确保计算出一致的结果。3、数据被广播到所有节点,稳妥存储下来,每个节点都会存储一个完整的数据副本。交易一旦“上链”,则意味着得到完整执行,达成了“分布式事务性”。简单地说,就像一段话经过原创 2022-07-08 21:37:44 · 3704 阅读 · 0 评论 -
预言机链上链下调研
从名字看,很多人会认为,预言机是一种市场预测的工具,其实并不是如此,预言机其实是用于区块链网络中的一种数据服务。预言家的英文叫oracle,这个又与甲骨文公司的数据库同名,但是在区块链世界中,它们毫无关系。因为oracle这个最早出自于古希腊宗教,其含义就是预言。那么预言家到底是什么?我们用一句简单的话概括“区块链外信息写入区块链内的机制一般被称为预言机。”预言机(Oracle)这个名字容易让人对它产生误会,其实预言机并不是用来预测什么的。预言机:是一个将数据从区块链外传输到区块链内的机制。这么说可能更容易原创 2022-07-01 22:11:02 · 1147 阅读 · 0 评论 -
区块链论文一般发表在哪些地方?
计算机领域的大多数优秀工作一般都首发会议,首发会议,首发会议。区块链方向也是一样。(不是说所有的期刊论文都不好,只是顶会普遍更看重工作是 surprising的,而期刊普遍对创新性要求低一些,更强调科学的严谨性。另外,北美有很多大牛几乎从不发期刊的,他们的一个工作,如果冲刺顶会失败了,工作的创新性随着时间流逝也不幸消失了,就会扔到preprint上算了,而其实这些工作的质量往往也是很高的,远远超过大量的顶级期刊论文,比如悲催的Snow White协议https://eprint.iacr.org/2016/原创 2022-06-24 17:45:37 · 3986 阅读 · 3 评论 -
libra白皮书
白皮书作者:Zachary Amsden, Ramnik Arora, Shehar Bano, Mathieu Baudet, Sam Blackshear, Abhay Bothra, George Cabrera,Christian Catalini, Konstantinos Chalkias, Evan Cheng, Avery Ching, Andrey Chursin, George Danezis,Gerardo Di Giacomo, David L. Dill, Hui Ding, Ni原创 2022-06-21 01:25:52 · 554 阅读 · 0 评论 -
探讨BFT的关键细节及Libra的Consensus组件
Libra涉及的东西比较多,我们从三条线介绍Libra的设计与实现:通过分析Node启动并加入到Libra网络的过程,介绍Network组件的设计与实现;围绕Transaction的生命周期,分析其接收交易、打包区块、运行上链的过程,介绍Libra的Mempool、Executor以及Storage、VM等核心组件;围绕LibraBFT,介绍Consensus组件以及区块达成共识的过程前面我们讲述Libra的第二条主线——Transaction的生命周期,了解了Libra核心组件大概的设计和实现。其中Con原创 2022-06-17 22:41:45 · 410 阅读 · 0 评论 -
以Transaction的生命周期为线索剖析Libra核心组件
Libra涉及的东西比较多,我们从三条线介绍Libra的设计与实现:通过分析Node启动并加入到Libra网络的过程,介绍Network组件的设计与实现;围绕Transaction的生命周期,分析其接收交易、打包区块、运行上链的过程,介绍Libra的Mempool、Executor以及Storage、VM等核心组件;围绕LibraBFT,介绍Consensus组件以及区块达成共识的过程前面我们讲述了Libra的第一条主线——Node启动以及加入网络的过程,详细介绍了Network组件的设计与实现。这里原创 2022-06-17 22:20:14 · 177 阅读 · 0 评论 -
剖析Libra的Network组件
在进入主题之前,我们先对Libra有一个整体的认识:看过Libra技术白皮书的朋友,应该都记得这张图,下面简单介绍一下这些核心的组件(后面还会有更详细的讨论): a. AdmissionControl服务:简称AC,翻译过来叫准入控制,可以理解为Libra的网关,将跟用户打交道的接口暴露给用户,例如提交Transaction、获取用户状态等等 b. Mempool服务:存储未上链交易 c. Consensus组件:LibraBFT共识组件 d. VirtualMachine组件:简称VM,运行M原创 2022-06-17 17:53:33 · 114 阅读 · 0 评论 -
从智能合约的演进看 Move 的架构设计
开始这个题目之前,我们可以先讨论一个比较大一点的话题,到底什么是『智能合约』?其实『智能合约』这个词在业界争议也很大,每个人有每个人的看法。我们为了方便讨论,在当前主题背景下给它做一个限定。运行在链上的,由用户自定义的程序通过链节点的重复校验以及共识机制,使其具有不依赖于权威方的独立约束力首先它是运行在链上,由用户自定义的程序。如果是在链上直接实现的,哪怕是通过插件的机制,我们这里也不把它叫做智能合约。其次,因为有了链的重复校验以及共识能力,让这种程序具有了约束力。这个约束力不来自于你对某一方的信任,即原创 2022-06-17 17:05:48 · 462 阅读 · 0 评论 -
智能合约到底是什么?
所以那次争论中,也有人建议叫做 “stored procedures”,就是数据库的存储过程。如果把区块链看做一个分布式数据库的话,从技术实现上来看,智能合约确实很像数据库存储过程。使用一种新的编程语言也不是更本区别,如果使用更通用的 VM,可以和其他的程序使用完全一样的编程语言。另外大家常说的确定性(deterministic),实际上也是图灵机本身具备的特性,只要不引入随机机制,也很难写出不 deterministic 的程序。那为什么新造出个词汇呢?套用一句俗话,我们在谈论『智能合约』的时候,到底指的原创 2022-06-17 16:52:37 · 662 阅读 · 0 评论 -
区块链并行化调研
如果非要给区块链贴关键词的话,可以总结为:“技术很牛”,“前景不可估量”,“现实严重不落地”。现阶段区块链的发展都是以第一个标签为信仰,以第二个标签为动力,着力解决“严重不落地”的问题。从“不落地”到“大规模落地”,需要解决的问题有很多,但区块链本质上是一项技术,任何建立在区块链之上的应用和项目都需要基于靠谱的硬核技术,而区块链在“落地”过程中还未建立起完善的技术基础设施,这是区块链现存的核心也是首要问题。区块链技术基础设施存在哪些问题?目前,区块链技术最大的限制是其串行数据结构 ——出块必须逐一处理——这原创 2022-06-10 21:35:47 · 2107 阅读 · 0 评论 -
HyperLeger Fabric学习(一)
HyperLeger Fabric学习(一)一、HyperLeger简介1、HyperLeger简介2、Hyperledger社区组织结构3、Hyperledger顶级项目二、Hyperledger开发工具1、Linux Foundation ID2、Jira任务和进度管理3、Gerrit代码仓库和Review管理4、RocketChat在线沟通三、HyperLeger Fabric逻辑架构1、HyperLeger Fabric逻辑架构简介2、应用层逻辑架构3、底层逻辑架构4、HyperLeger Fabr原创 2022-05-25 00:30:59 · 1731 阅读 · 0 评论 -
区块链分布式系统
分布式系统核心技术一、分布式系统的一致性问题1、分布式系统的一致性问题2、分布式系统的挑战3、分布式系统一致性的要求4、分布式系统带约束的一致性二、分布式共识算法简介1、分布式共识简介2、分布式共识的挑战3、常见分布式共识算法三、FLP不可能原理1、FLP原理简介2、分布式系统的同步与异步3、FLP原理的意义四、CAP原理1、CAP原理简介2、CAP原理应用场景五、ACID原则与多阶段提交1、ACID原则简介2、两阶段提交算法3、三阶段提交算法六、可靠性指标1、可靠性指标简介2、两个核心时间3、提高可靠性参原创 2022-05-23 20:16:54 · 1355 阅读 · 0 评论 -
CNS合约命名服务
CNS合约命名服务概述名词解释CNS对比以太坊原有调用方式的优势对标ENS模块架构核心流程概述调用以太坊智能合约的流程包括:编写合约;编译合约得到合约接口abi描述;部署合约得到合约地址address;封装合约的abi和地址,通过SDK等工具实现对合约的调用。从合约调用流程可知,调用之前必须准备合约abi以及合约地址address。这种使用方式存在以下的问题:合约abi为较长的JSON字符串,调用方不需直接感知;合约地址为20字节的魔数,不方便记忆,若丢失后将导致合约不可访问;合约原创 2022-05-21 23:38:17 · 445 阅读 · 0 评论 -
链上信使协议AMOP
链上信使协议AMOP链上信使协议介绍逻辑架构普通话题私有话题错误码链上信使协议介绍链上信使协议AMOP(Advanced Messages Onchain Protocol)系统旨在为联盟链提供一个安全高效的消息信道,联盟链中的各个机构,只要部署了区块链节点,无论是共识节点还是观察节点,均可使用AMOP进行通讯,AMOP有如下优势:实时:AMOP消息不依赖区块链交易和共识,消息在节点间实时传输,延时在毫秒级。可靠:AMOP消息传输时,自动寻找区块链网络中所有可行的链路进行通讯,只要收发双方至少有一原创 2022-05-21 21:25:00 · 1326 阅读 · 0 评论 -
区块链分叉
区块链分叉区块链分叉是什么?1.概念介绍2.区块链分叉案例3.区块链分叉的影响软分叉与硬分叉软硬分叉的定义1.硬分叉2.软分叉3.软硬分叉的优缺点参考文章区块链分叉是什么?1.概念介绍分叉有点类似于“分手”,原本大家在同一条区块链里面运行,后来由于意见不合一拍两散各奔东西,你走你的阳光道,我走我的独木桥,从此各不相干。在中心化的系统中升级软件十分简单,召集相干人等开会讨论一个可行方案实施升级即可,即使有意见分歧最终也可由领导拍板决策,但在区块链的去中心化系统中想要“升级”就并不是那么容易了,甚至可原创 2022-05-21 00:52:56 · 611 阅读 · 0 评论 -
rPBFT
rPBFT区块链共识困境POW类算法基于分布式一致性原理的共识算法rPBFT共识算法节点类型核心思想算法流程rPBFT网络优化Prepare包广播优化基于状态包的容错方案流量负载均衡策略区块链共识困境POW类算法POW算法因如下特点,不适用于交易吞吐量大、交易时延要求低的联盟链场景:性能低:10分钟出一个区块,交易确认时延一个小时,耗电多无最终一致性保证吞吐量低基于分布式一致性原理的共识算法基于分布式一致性原理的共识算法,如BFT类和CFT类共识算法具有秒级交易确认时延、最终一致性、吞吐原创 2022-05-19 23:39:30 · 517 阅读 · 0 评论 -
fisco和fabric权限管理的区别
fisco和fabric权限管理的区别一、FISCO BCOS 权限管理引言如何使用角色权限?总结二、Fabric 权限管理参考文章一、FISCO BCOS 权限管理引言FISCO BCOS的权限控制是通过控制账号对系统中表的写权限来实现的。这种权限控制模型非常灵活且强大,用户几乎可以控制任意一项权限,例如,通过控制权限表的写权限管理分配权限;通过控制系统合约所对应表的写权限管理链配置、节点身份管理、合约部署、用户表创建等;通过控制合约表的写权限管理合约写接口的调用。然而,绝对完美是不存在的。强大灵原创 2022-05-19 23:22:36 · 345 阅读 · 0 评论 -
FISCO BCOS 与 Fabric 之较
起“底”联盟链:FISCO BCOS 与 Fabric 之较一、理念:设计背景与发展路径的区别二、应用:带给开发者不同的设计思路三、跨链:关于通道和多链的比较四、社区:成熟度比较五、不得不说一下国产底层的优势总结参考文章在国家政策的鼓励下,区块链技术的研发与推广正在不断升温,技术、标准、平台、框架都在持续发展,这其中,既有来自国外的布道者,也有源自国内的探索者。做为区块链三大部署形态之一的联盟链,因其与现实场景的高度契合性,正在出现越来越多的落地实例。为便于广大开发者、区块链爱好者了解联盟链中较为常见的原创 2022-05-19 23:01:08 · 888 阅读 · 1 评论 -
Fabric通道
Fabric通道一、定义和术语二、数据隔离和保密三、实现1) 引导2) 创建通道3) 关闭通道4) 查询通道5) 链上的交易6) 链上的Chaincode四、APIHyperledger Fabric架构使用具有保证的发布-订阅模式消息传递通道(如Kafka中的主题分区)将共识服务与交易日志(账本)分离。 共识服务由称为Orderers的网络节点提供,并且账本由Peer节点管理。每个Peer节点连接到共识服务的一个或多个通道,就像发布-订阅通信系统中的客户端一样。 在通道上广播的交易按共识的顺序排列(例原创 2022-05-19 22:16:10 · 1054 阅读 · 0 评论 -
fabric架构
区块链开源实现hyperledger fabric架构详解1、区块链解决方案的特性1.1 分布式帐本1.2 智能合约smart contract1.3 数据一致性(共识算法)1.4 非对称加密1.4.1 数字证书 Digital Certificate1.4.2 公钥与私钥1.4.3 证书信任链1.5 小结2、fabric核心概念2.1 开发概念2.2 MSP3、fabric交易提交流程3.1 peer结点的部署3.2 交易的执行流程3.2.1 proposal提案阶段3.2.2 package打包阶段3.转载 2022-05-19 21:53:27 · 1376 阅读 · 0 评论 -
FISCO关键概念
FISCO关键概念关键概念区块链是什么?账本区块交易账户世界状态共识机制节点共识算法智能合约智能合约生命周期智能合约虚拟机图灵完备联盟链概念分析性能性能指标性能优化安全性准入机制权限控制隐私保护物理隔离治理与监管联盟链治理快速部署数据治理运维监控监管审计参考文章关键概念区块链是由多个学科交叉组合形成的一门技术,本章将阐述区块链相关的基本概念,对涉及的基本理论进行科普介绍。如果您已经对这些基本技术很熟悉,可以跳过本章。区块链是什么?区块链(blockchain)是在比特币之后提出的一个概念,在中本聪关原创 2022-05-14 15:05:11 · 458 阅读 · 0 评论 -
Fabric、FISCO BCOS、以太坊对比
Fabric、FISCO BCOS、以太坊对比一、以太坊1.1 什么是工作量证明(POW)1.2 这是如何运作的?1.3 工作量证明的问题1.4 股权证明二、Fabric2.1 产生背景2.2 共识机制2.3 数据隔离2.4 智能合约2.5 权限管控2.6 存储2.7 性能2.8 跨链方案2.9 部署支撑2.10 国密支持2.11 开源协议三、FISCO BCOS3.1 产生背景3.2 共识机制3.3 数据隔离3.4 智能合约3.5 权限管控3.6 存储3.7 性能3.8 跨链方案3.9 部署支撑3.10原创 2022-05-13 17:23:37 · 3449 阅读 · 1 评论 -
Tendermint 共识
Tendermint 共识概述源码分析NewStateOnStartreceiveRoutineenterNewRoundenterProposedecideProposaladdProposalBlockPartsignAddVoteaddVoteenterPrevoteWaitfinalizeCommit补充Tendermint 为什么不会分叉Tendermint 的不足之处参考文章概述 +-----------------------------------原创 2022-05-11 19:18:48 · 232 阅读 · 0 评论 -
以太坊2.0信标链
以太坊2.0信标链分片:未来蓝图以太坊2.0的各个阶段时隙 (slots) 和时段 (epochs)验证者 (validators)、证明 (attestations) 和信标链交联 (crosslinks):分片扎根信标链委员会 (committees):介绍委员会 (committees):关键信标链检查点 Beacon Chain Checkpoints最终确定性 Finality更加深入地了解证明 (attestations)罚没 Slashing信标链验证者激活和生命周期总结参考文章:信标链是以原创 2022-05-10 19:02:36 · 1641 阅读 · 0 评论 -
PBFT论文解读
PBFT论文解读摘要部分1. 概要介绍2. 系统模型3. 服务属性4. 算法4.1 客户端4.2 PBFT 算法主线流程(正常情况)4.3 垃圾回收4.4 view-change 视图变更从节点触发 View Change从节点广播 View Change新的主节点上位从节点接受新的主节点参考文章论文地址:http://pmg.csail.mit.edu/papers/osdi99.pdf PBFT 是 Practical Byzantine Fault Tolerance 的缩写,意为实用拜占庭容错算法原创 2022-05-10 18:46:19 · 1101 阅读 · 0 评论 -
浅谈Casper
众所周知,PoW 算法存在大量资源浪费,算力集中等问题,以太坊从17年开始就一直想要切换到 PoS 算法。但是由于种种客观条件的限制,一直没有实质性的发展。在放了广大区块链爱好者几年鸽子后,以太坊 2.0 终于要使用 PoS 算法了。本着独乐乐不如众乐乐的中国传统美德,Fractal 的技工们决定跟大家分享一下,我们关于下一代以太坊共识协议——Casper的看法。Casper 其实有两个版本,一个是 Vitalik 领导的 Casper FFG,另一个是 Vlad 领导的 Casper CBC,他们的不同原创 2022-05-10 18:01:52 · 963 阅读 · 0 评论 -
Casper FFG共识算法
Casper FFG共识算法Casper FFG算法流程惩罚条件(SlashCondition)证明Safety 和 Plausible LivenessAccountable Safety:Plausible Liveness:动态的验证节点集合无利益攻击(Nothing At Stack Attack)长程攻击(LongRange Attack)大规模崩溃的情况(Castastrophic Crashes)总结参考资料Casper FFG 是 Vitalik提出来的一个PoW/PoS混合的算法,目的是转载 2022-05-10 16:59:55 · 204 阅读 · 0 评论 -
什么是CASPER FFG
CASPER FFG投票证明&最终确定Casper FFG的规则安全性&活性安全证明活性证明译者序:Eth 2.0信标链的共识协议将逐渐从PoW向PoS过渡,在这条全新的链上,如何保障其安全性和活性呢?Casper FFG 作为区块最终确定工具,为eth2带来了福音。通过这篇文章,我们可以对Casper FFG的运行规则、安全性证明和活性证明有一个初步的了解。为了对用户负责,任何区块链都必须保证链上区块的最终确定性和链的活性,而区块链共识机制的根本就是提供这些保障。在Eth2.0中,原创 2022-05-10 16:31:47 · 886 阅读 · 0 评论 -
以太坊源码解读:共识模块入口设计
以太坊源码解读:共识模块入口设计一、前言1.1 模块文件结构1.2 consensus.go文件简介1.2.1 Pow算法入口1.2.2 共识通用引擎接口Engine1.2.3 读取链信息的部分接口1.3 总结参考文章二、以太坊码源解析:POW(1)三、以太坊码源分析:POW(2)一、前言主要是先梳理一下consensus模块的入口文件consensus.go,这里体现了以太坊共识设计的整个设计思路。为后面进一步分析共识算法做好基础工作。1.1 模块文件结构先来看下consensus模块的文件目录:原创 2022-05-06 17:24:13 · 613 阅读 · 0 评论 -
什么是cosmos?
什么是Cosmos?一、Cosmos 简介二、什么是区块链?三、Cosmos 如何打造更广泛的区块链生态系统?3.1 比特币的故事 (区块链 1.0)3.2 以太坊的故事 (区块链 2.0)3.3 COSMOS 愿景 (区块链 3.0)四、什么是 Tendermint BFT 和 ABCI五、Cosmos SDK 和其他应用层框架5.1 ETHERMINT六、IBC 把区块链连接在一起6.0 什么是异构链(HETEROGENEOUS CHAINS)?6.1 IBC 是怎么工作?6.1.1 跟踪(Tracki原创 2022-05-06 17:09:59 · 1429 阅读 · 0 评论 -
什么是ABCI?
什么是ABCI ?一、ABCI 概述二、ABCI 介绍三、关于确定性的说明参考文档一、ABCI 概述通用区块链接口 ABCI 允许任意类型编程语言编写的拜占庭容错复制类的应用程序。初衷迄今为止,实现区块链的源码都是一个巨大的应用(译者注:这里的说法有点绝对,17 年国内有一家公司开源的 CITA 代码把区块链各个功能模块拆分单独部署),也就是一个应用包含了所有的功能模块,包含 P2P 网络,“mempool” 广播交易,共识模块,账户余额,图灵完备的合约模块和用户用户权限模块等。CITA将单个节原创 2022-05-06 16:34:18 · 2431 阅读 · 0 评论 -
什么是Tendermint?(2)
什么是Tendermint?二、Tendermint 共识算法2.1 介绍2.2 算法流程2.3 证明2.3.1 安全性证明2.3.2 活性证明2.3.3 其他2.4 参考文章二、Tendermint 共识算法2.1 介绍分布式一致性算法一般可以分为两类:拜占庭容错和非拜占庭容错。非拜占庭容错算法如 Paxos, Raft 等在当前的分布式系统中已经广泛使用,而拜占庭容错算法的实际应用范围相对来说小很多(特别是在区块链问世之前)。Tendermint 属于拜占庭容错算法,它针对传统的 PBFT原创 2022-05-06 16:21:31 · 272 阅读 · 0 评论 -
什么是Tendermint?(1)
什么是Tendermint?一、Tendermint介绍1.1 什么是 Tendermint?1.2 Tendermint 与同类软件对比1.2.1 Zookeeper, etcd, consul1.2.2 比特币、以太坊及其他加密货币1.2.3 其他区块链项目1.3 cosmos与tendermint1.4 总结1.5 参考文档一、Tendermint介绍1.1 什么是 Tendermint?Tendermint 是一种能够为多台机器安全和保证数据一致性复制应用程序的软件。从安全性层面看,分布式系原创 2022-05-06 16:10:15 · 285 阅读 · 0 评论 -
以太坊码源解析:POW(1)
POW一、介绍1.1 什么是PoW1.2 Ethash共识算法1.2.1 Ethash本质1.2.2 Ethash主要思想1.2.3 如何验证Ethash的随机数一、介绍1.1 什么是PoWPOW,proof of work,即工作量证明,是bitcoin所采用的共识算法。简单来说,pow就是一个证明,由矿工使用算力进行计算,竞争记账权,获得记账权的矿工将获得奖励和记录账本的权力。其过程大致如下:全网矿工会监听全网的数据记录收到数据后,矿工验证交易并构建区块信息,包括区块头和区块体原创 2022-05-06 15:32:01 · 1863 阅读 · 0 评论 -
以太坊码源分析:POW(2)
POW二、源代码分析2.1 共识引擎接口2.2 共识引擎接口的实现2.2.1 Author2.2.2 VerifyHeader2.2.3 另一个verifyHeader2.2.4 VerifyHeaders2.2.5 Prepare2.2.6 Finalize2.2.7 Seal (设置挖矿要用的nonce)2.2.8 mine2.2.9 hashimotoFull2.3 EthHash分析2.3.1 POW接口2.3.2 Ethash 结构体2.4 Ethash算法总结二、源代码分析Ethash模块实原创 2022-05-06 15:19:48 · 733 阅读 · 0 评论 -
陷门函数TDF
1.陷门函数陷门函数:正向计算是很容易的,但若要有效的执行反向计算则必须要知道一些secret/key/knowledge/trapdoor(知识?),也称为伪随机置换,可用于构造公钥密码系统。若 f 为陷门函数,则 y = f (x) 是很容易计算的,但若要计算 x = f(-1) (y) 则是困难的,若已知一些额外的knowledge(trapdoor/key) k , 则计算 x = f(-1) (y,k) 是很容易的。Trapdoor Function(陷门函数)简介2.单向原创 2022-05-04 23:56:21 · 878 阅读 · 0 评论 -
变色龙哈希函数Chameleon Hash Functions
变色龙哈希函数Chameleon Hash Functions一、哈希函数1.1 哈希函数定义1.2 哈希函数性质1.3 哈希函数存在的问题二、 变色龙哈希函数2.1 变色龙哈希函数定义2.2 变色龙哈希函数算法2.3 变色龙哈希安全需求2.4 变色龙哈希函数分析2.5 变色龙哈希函数构造一、哈希函数1.1 哈希函数定义哈希函数Hash()是密码学中经常用到的一个函数(记住它并不是加密技术,独立于非对称加密和对称加密之外的函数),任意大小的输入消息m 经过哈希函数H ( ) 映射成一个固定长度的输出值原创 2022-05-04 23:46:55 · 2160 阅读 · 0 评论 -
MPT详解
1. 前言1.1 概述Merkle Patricia Tree(又称为Merkle Patricia Trie)是一种经过改良的、融合了默克尔树和前缀树两种树结构优点的数据结构,是以太坊中用来组织管理账户数据、生成交易集合哈希的重要数据结构。MPT树有以下几个作用:存储任意长度的key-value键值对数据;提供了一种快速计算所维护数据集哈希标识的机制;提供了快速状态回滚的机制;提供了一种称为默克尔证明的证明方法,进行轻节点的扩展,实现简单支付验证;由于MPT结合了(1)前缀树(2)默克转载 2022-04-29 00:15:54 · 4422 阅读 · 2 评论