0xmonaco CTF 体验心得
由开发人员、艺术家和设计师组成的集体 MatchBoxDAO 宣布推出 MatchBox Arena。该团队将其称为“Web3 公司的世界杯”,并表示游戏锦标赛旨在找出哪家公司拥有最好的技术团队。首先,可以代表公司和世界顶级的crypto公司(uniswap,polygon,ledger,chainlink。。。)同台竞技真的是一个非常荣幸的事情。所以我牺牲了宝贵的春节假期,就一直在打这个比赛。 这次CTF是一个用solidity操控汽车的算法比赛(终于遇到我非常感兴趣的地方了)介绍这本质上来说是一次博弈实验,而不是一次简单的代码hackthon。更像是一个社会实验,涉及纯技术方面、经济激励、效用优化模式和理性的压力测试。对于每一个参赛者,你需要实现自己的Car合约,特别是takeyourturn这个函数。对于每一轮你都需要做出决策,具体有五种决策: 1)加速(ACCELERATE) 2)炮弹(SHELL) 3)超级炮弹(SUPER_SHELL) 4)香蕉(BANANA) 5)盾(SHIELD) 有点像跑跑卡丁车?是的。。每一种决策都会耗费掉你的金额,你的金额总量是17500。而...

成长 -- 随笔(2)
深夜陷入了沉思,回顾了一下自己的成长历程。距离上一次的成长随笔已经过去7个月了~~ https://mirror.xyz/0xaaE7a1AD2764626d09a233a9bC06C38b413637cf/By3P_3NiIriKGObdbWlFo0mDdwFDY1v9VFbjaUMmObU 既然是随笔,我觉得格式什么的,就随意了~~ 这段时间我学了啥呢~~ Uniswap V2, V3; 精通Curve ( 3 Pool, Meta Pool, Compond Pool, AAVE Pool) ~~~ Balancer V2, Kyber, Bancor ; AAVE, Clipper, DODO, Mstable, Saddle, Shell, Wombat ~~~ DODO, DODO V2, Fraxswap ~~ 对我来说,能力提升最大的是打CTF。比赛的过程,纠错发现bug的攻防真的很能提升一个人的合约能力~~~ 最开心的是,认识了组内Andrew和Jimmy两位Crypto科学家~~ 最感激的是,Melvin带着我做项目,耐心和孜孜不倦地引导我去激发自己的潜能~~...
成长 -- 随笔
我完全不敢想象自己的成长速度。 1个月前,我还在和慢雾的群上问curve的合约代码的语言是的时候。余弦大佬回了我是vyper。我现在已经可以把vyper语言看懂了, 并且对于原理也掌握了。 把curve代码看了一下一遍,其实也发现不过如此。白皮书,其实也没这么深奥。跟当年打ACM的那种级别比,还是差得有点远。 Hardhat也越来越熟悉了。当时那个编写测试用例还要问XD的那个毛头小子,已经成长了好多。 我觉得我现在完全可以独立撑起一个商业项目,唯一卡住的地方可能是JS还是不太熟悉。基本功能是OK的,但是遇到一些比较少见的bug。估计,要问人。 对于以前的我来说,3,4天吃透一个主流Defi协议,我真的想都不敢想。如果只是调研,我觉得我还是勉强可以一试。 这种成长的速度我只能用指数级别来形容。我看了一下一个月前的自己,觉得好菜。 我很希望我一个月之后,再回头看现在的我,也是觉得现在的我很菜~~ end


0xmonaco CTF 体验心得
由开发人员、艺术家和设计师组成的集体 MatchBoxDAO 宣布推出 MatchBox Arena。该团队将其称为“Web3 公司的世界杯”,并表示游戏锦标赛旨在找出哪家公司拥有最好的技术团队。首先,可以代表公司和世界顶级的crypto公司(uniswap,polygon,ledger,chainlink。。。)同台竞技真的是一个非常荣幸的事情。所以我牺牲了宝贵的春节假期,就一直在打这个比赛。 这次CTF是一个用solidity操控汽车的算法比赛(终于遇到我非常感兴趣的地方了)介绍这本质上来说是一次博弈实验,而不是一次简单的代码hackthon。更像是一个社会实验,涉及纯技术方面、经济激励、效用优化模式和理性的压力测试。对于每一个参赛者,你需要实现自己的Car合约,特别是takeyourturn这个函数。对于每一轮你都需要做出决策,具体有五种决策: 1)加速(ACCELERATE) 2)炮弹(SHELL) 3)超级炮弹(SUPER_SHELL) 4)香蕉(BANANA) 5)盾(SHIELD) 有点像跑跑卡丁车?是的。。每一种决策都会耗费掉你的金额,你的金额总量是17500。而...

成长 -- 随笔(2)
深夜陷入了沉思,回顾了一下自己的成长历程。距离上一次的成长随笔已经过去7个月了~~ https://mirror.xyz/0xaaE7a1AD2764626d09a233a9bC06C38b413637cf/By3P_3NiIriKGObdbWlFo0mDdwFDY1v9VFbjaUMmObU 既然是随笔,我觉得格式什么的,就随意了~~ 这段时间我学了啥呢~~ Uniswap V2, V3; 精通Curve ( 3 Pool, Meta Pool, Compond Pool, AAVE Pool) ~~~ Balancer V2, Kyber, Bancor ; AAVE, Clipper, DODO, Mstable, Saddle, Shell, Wombat ~~~ DODO, DODO V2, Fraxswap ~~ 对我来说,能力提升最大的是打CTF。比赛的过程,纠错发现bug的攻防真的很能提升一个人的合约能力~~~ 最开心的是,认识了组内Andrew和Jimmy两位Crypto科学家~~ 最感激的是,Melvin带着我做项目,耐心和孜孜不倦地引导我去激发自己的潜能~~...
成长 -- 随笔
我完全不敢想象自己的成长速度。 1个月前,我还在和慢雾的群上问curve的合约代码的语言是的时候。余弦大佬回了我是vyper。我现在已经可以把vyper语言看懂了, 并且对于原理也掌握了。 把curve代码看了一下一遍,其实也发现不过如此。白皮书,其实也没这么深奥。跟当年打ACM的那种级别比,还是差得有点远。 Hardhat也越来越熟悉了。当时那个编写测试用例还要问XD的那个毛头小子,已经成长了好多。 我觉得我现在完全可以独立撑起一个商业项目,唯一卡住的地方可能是JS还是不太熟悉。基本功能是OK的,但是遇到一些比较少见的bug。估计,要问人。 对于以前的我来说,3,4天吃透一个主流Defi协议,我真的想都不敢想。如果只是调研,我觉得我还是勉强可以一试。 这种成长的速度我只能用指数级别来形容。我看了一下一个月前的自己,觉得好菜。 我很希望我一个月之后,再回头看现在的我,也是觉得现在的我很菜~~ end
Share Dialog
Share Dialog

Subscribe to shaneson.eth

Subscribe to shaneson.eth
距离10月1号,刚好快1个月了。
那个时候,我利用国庆假期,把代码重构,部署正式网,写aptos-web3,跑通Aptos SDK~
项目审计结束,而且准备上线了。有很多经验想记录下来,不管是留给后人也好,还是留给自己,应该很有意义。
我目前除了我在读的内部文档,我没有找到过更好的 aptos move入门教程。所以,下面这篇Move Book可以暂时先入门,但是离上手还远远不足。
https://www.chainfeeds.xyz/feed/detail/6f7bba60-8a0e-466c-a219-b2d243405556
官方的文档太过简单,从入门到大神的本质是需要不断的练习和实践。所以我们需要很多的开源用例,去测试,运行,和实践。这里推荐官方的Turial文档,把里面的项目全部过一遍。那你就已经具备了开发Move项目的能力了。
这里有全部常用的项目代码模版:
Token
NFT
Dex ( uniswap V2 )
Diem 稳定币
https://github.com/move-language/move
我个人觉得,除了要掌握Aptos和EVM系的存储差异之外,最重要最重要的是,理解:面向资源编程。贴一个我上周分享的一页PPT。直接面向资源的存储和写入,可以让编程开发不需要再去理解很高层的动态抽象,不需要像EVM那样理解数据存储在合约状态的逻辑,直接面向底层的存储和读取,让开发者更加清楚底层逻辑。(当然了,假如对c/c++, rust这类不熟悉的话,可能就会很难受了)
在turial实践的过程中,不断地去感受Move的核心思想和EVM系的差异。

我几乎可以断言,假如把aptos-core的std库从头到尾过一遍,熟悉每一个函数的用法,灵活掌握权限和存储的底层逻辑,那么几乎可以开发任何的事情。因为Aptos Move的开发本质上其实是基于std库的二次开发,Move里最高级的用法其实都体现在std库里,只要过一遍,心里只要有一个底,那么用起来就可以信手拈来。

让所有EVM开发者都赞叹不已的,必然是pda的用户。把这个能力用活,可以做到:
批量用户的创建
批量用户的管理
执行交易时的风险隔离,通过合约来保证绝对安全
合约可以实现金库管理员的绝对控制,用合约来管理管理员的权限

距离10月1号,刚好快1个月了。
那个时候,我利用国庆假期,把代码重构,部署正式网,写aptos-web3,跑通Aptos SDK~
项目审计结束,而且准备上线了。有很多经验想记录下来,不管是留给后人也好,还是留给自己,应该很有意义。
我目前除了我在读的内部文档,我没有找到过更好的 aptos move入门教程。所以,下面这篇Move Book可以暂时先入门,但是离上手还远远不足。
https://www.chainfeeds.xyz/feed/detail/6f7bba60-8a0e-466c-a219-b2d243405556
官方的文档太过简单,从入门到大神的本质是需要不断的练习和实践。所以我们需要很多的开源用例,去测试,运行,和实践。这里推荐官方的Turial文档,把里面的项目全部过一遍。那你就已经具备了开发Move项目的能力了。
这里有全部常用的项目代码模版:
Token
NFT
Dex ( uniswap V2 )
Diem 稳定币
https://github.com/move-language/move
我个人觉得,除了要掌握Aptos和EVM系的存储差异之外,最重要最重要的是,理解:面向资源编程。贴一个我上周分享的一页PPT。直接面向资源的存储和写入,可以让编程开发不需要再去理解很高层的动态抽象,不需要像EVM那样理解数据存储在合约状态的逻辑,直接面向底层的存储和读取,让开发者更加清楚底层逻辑。(当然了,假如对c/c++, rust这类不熟悉的话,可能就会很难受了)
在turial实践的过程中,不断地去感受Move的核心思想和EVM系的差异。

我几乎可以断言,假如把aptos-core的std库从头到尾过一遍,熟悉每一个函数的用法,灵活掌握权限和存储的底层逻辑,那么几乎可以开发任何的事情。因为Aptos Move的开发本质上其实是基于std库的二次开发,Move里最高级的用法其实都体现在std库里,只要过一遍,心里只要有一个底,那么用起来就可以信手拈来。

让所有EVM开发者都赞叹不已的,必然是pda的用户。把这个能力用活,可以做到:
批量用户的创建
批量用户的管理
执行交易时的风险隔离,通过合约来保证绝对安全
合约可以实现金库管理员的绝对控制,用合约来管理管理员的权限

<100 subscribers
<100 subscribers
No activity yet