logo
publist
写文章

简介

该用户还未填写简介

擅长的技术栈

可提供的服务

暂无可提供的服务

区块链研究实验室| 在Solidity智能合约中使用Enums之前要三思

想象一下,你正在写一个Solidity智能合约,其中一个属性可以被描述为类型或状态。换句话说,来自一组有限的选项。你马上对自己说:“太好了,我只会使用枚举类型来表示这个状态变量。”一方面,这种方法有一些好处,比如增加可读性。另一方面,它很容易让你走上一条可能导致问题的棘手道路。好吧,如果枚举(ENUM)成员仅封装在一个合约中并且从未在其他文件中提及过,那么一切都可以。然而DAPP通常由几...

#智能合约#以太坊
区块链研究实验室|构建主链与侧链之间无信任的双向桥接网络

概述我们提出了一种新颖的方法,用于在主链和侧链之间构建无信任的双向桥梁。通过永久停止侧链,即使在乐观的情况下,我们也不再需要严格的同步要求和长时间的退出延迟。而代之的是,只有在侧链暂停很长一段时间后才允许提款。一旦停止了侧链,就可以通过流动性提供者网络使用原子交换立即提取资金以进行使用。可以同时启动新的侧链,以终止旧的侧链以接受并开始处理掉期后的资金。现有提案存在的问题...

区块链研究实验室|简单的区块链数据验证应用程序

简介在本文中,我将用示例代码来讲述我所知道的最简单的区块链应用程序的数据验证问题。想象一下下面的用例。您收到一份经过多方认可的文件,但是又希望确保其的真实性。该文件可能是您正在购买的汽车的服务手册,也可能是一份购房文件,证明您正在购买的房子确实属于卖方。对文件进行数字签名以防止被篡改,这已经不是什么新鲜事。您可以获取文件的内容并使用你的私钥进行加密,生成一个加密文件,将该签名与文件一起...

#以太坊#区块链
使用Java与区块链智能合约进行交互教程

简介本文是一个非常实用的分步教程,其目的是向Java开发人员(特别是)展示一种非常简单的与区块链智能合约进行交互的方式。了解使用库与区块链进行交互的难易程度。环境要求我们将使用Tezos区块链。为了使我们的Java代码与现有的、部署的智能合同交互,我们需要来自TezosRio的TeZOSJ库。 该库有两个版本,一个是专门为Android应用程序开发编写的版本(TezosJ_SDK),另...

区块链研究实验室| 关于polkadot的substrate与runtime编译教程-part1

本文旨在介绍如何开始构建可支持您自己的Runtime模块的自定义Substrate链:我们将通过substrate安装和设置来学习探索substrate配置以及如何使用Polkadot JS浏览链状态专注于介绍runtime模块的结构,这是一种为链添加功能的方法。在substrate进行开发substrate和并发runtime模块是用rust开发的,ru...

#rust
区块链研究实验室-智能合约数据下溢攻击案例分析

攻击#下溢尽管DAO合同并未成为下溢攻击的受害者,但我们可以利用现有的babyDAO合同{}来更好地了解这种过于常见的攻击方式。首先我们了解uint256是什么。 uint256是256位的无符号整数(无符号,只有正整数)。以太坊虚拟机被设计为使用256位作为其字大小,或者由计算机的CPU一次处理的位数。由于EVM的大小限制为256位,因此分配的编号范围为0到4,294,967,295(2...

到底了