记录一次失败的尝试
massa wasm
这是一次失败尝试的复盘,这篇记录的内容耗费了我一整个星期的时间,基本是每天早起一睁眼就在尝试和翻阅文档。虽然失败了心有不甘,但是其中所踩过的坑和一些思考还是有必要记录一下,可以当作后续审计类似项目的参考依据。
Part 0: 起因
在massa的审计过程中,当审计readonly request相关代码时,我发现了一个对于智能合约执行可能造成影响的点https://github.com/massalabs/massa/blob/DEVN.28.3/massa-execution-worker/src/execution.rs#L1700:
match response {
Ok(Respo...
Eigenlayer
Eigenlayer
一年多前写的老东西了,仅作记录。
Overview
Eigenlayer实现了一个Restaking的基础设施,为一些需要链下计算需要解决的共识信任问题提供了一个解决方案。对于普通用户,这套方案将用户质押的闲置资产进行了再次利用,赚取了更多的收益;对于预言机或者L2等需要进行链下计算验证的应用,提供了一个模块化的开发平台,降低了开发的门槛,同时不需要项目方额外进行代币生态的维护。
Eigenlayer是一个restaking项目,它实现了一个自由的restaking平台,允许用户将信标链质押的ETH、原生ETH、LST等资产作为质押物进行再质押。进行再质押的用户可以进一步选择性的将再质押资产质押到平台上的应用,以获取更多的奖励金。
目前,对于一些需要共识...
Btc Layer2 Part3 Bitvm
BTC L2系列的第三篇,关于BitVM
原版用中文写的,后来整理成英文文档原版找不到了,凑合看吧。
Research Document on BitVM and BitVM Bridge: Technical Principles and Examples
Introduction
This document aims to provide a comprehensive technical overview of BitVM and BitVM Bridge, exploring their underlying principles and illustrating their functionalities through practical examples. We ...
Btc Layer2 Part2 Ckb 简介
CKB & RGB++
CKB 简介
CKB(Common Knowledge Base) 是 Nervos Network 的 Layer 1 公链,采用 PoW 共识机制,专注于去中心化应用和资产存储。CKB 使用创新的 Cell 模型,类似比特币的 UTXO 模型,但支持灵活的智能合约执行。每个 Cell 可存储状态数据和代码,合约逻辑通过 RISC-V 虚拟机执行。CKB 提供原生多资产支持与链上存储,确保高安全性与去中心化。其经济模型设计为“存储即挖矿”,鼓励长期数据存储与网络安全维护,适合开发 DeFi、NFT 和区块链基础设施。
CKB交易
CKB 的交易数据结构与比特币(BTC)类似,其中的 UTXO 被称为 Cell。每个 Cell 都绑定一个 Loc...
Btc Layer2 Part1.5 Stacks节点工作流程
Stacks节点工作流程
随着多次升级迭代,Stacks 节点代码包含了不同版本的逻辑。以下内容仅针对 Nakamoto 升级后的最新版本进行讨论。
Stacks 节点的代码结构由多个模块组成,核心入口为 main 函数。main 函数随后会调用 start 函数,启动最新的 Nakamoto 运行主循环。
通过主循环的初始化逻辑,可以识别出 Stacks 节点的几个关键模块:
BitcoinRegtestController:负责 BTC 区块的同步和与 BTC 的通信。
PeerThread:处理节点间的 P2P 通信。
ChainsCoordinator:负责处理 Stacks 区块。
RelayerThread:管理共识的逻辑。
BlockMine...
Btc Layer2 Part1 Overview And Stacks
BTC Layer2
一年多前写的老东西,为了整理成文档翻译成了英文,懒得翻译回去了,仅作记录。
What is Layer2
The current definition of L2 is too broad; anything that interacts with the BTC chain to read or write its state can be called L2, such as inscriptions or staking.
However, I do not agree with this definition. In general, these broad definitions make it very difficult for people...
Euler攻击事件分析
Euler 攻击事件分析
好久没写博客了,今天忽然出了个大事,euler被黑了1.7亿。本身就是熊市,euler也算是比较大型的协议,这次被黑这么多金额属实出乎意料,最主要的是去年实习的时候我还看过这个协议。。本着求知的态度(甩锅)分析了这个攻击事件一晚上,和群里的小伙伴一边交谈一边理清了这次的攻击事件。
Euler介绍
这个协议代码还是很清奇的,所有的功能都是模块化的,当时看的时候就觉得惊为天人,第一次遇到这种写法。
Euler本质上属于抵押借贷协议,与其他协议不同的一点是它有个self borrow的逻辑,允许自己给自己铸造等量的债务token(DToken)和资产凭证token(EToken)。
/// @notice Mint eTokens and a co...
0ctf 2022 nft market
0ctf 2022 NFT Market
这是一个失败的赛后复盘,在比赛中没有做出来这道题目,赛后询问了出题人 @tkmk ,才知道这次的题目关键点在于一个solidity 8.16版本之前的bug。
题目合约
pragma solidity 0.8.15;
import "@openzeppelin/contracts/token/ERC721/ERC721.sol";
import "@openzeppelin/contracts/token/ERC20/ERC20.sol";
import "@openzeppelin/contracts/access/Ownable.sol";
contract TctfNFT is ERC721, Ownable {
co...
57 post articles, 8 pages.