记录和分享有趣的信息。
Record and share interesting information.
contact: telnotes@laisky.com
Record and share interesting information.
contact: telnotes@laisky.com
读完 Hanne Strager 的《达尔文传》(A Modest Genius),此书改名为“物种起源传”可能更贴切,详细介绍了达尔文构思和最终编写物种起源的前世今生。又了解到了很多有趣的历史小插曲。
达尔文出生于一个教士家庭,但是在游历太平洋的旅途中,因为阅读马尔萨斯的《人口论》和 Charles Lyell 的地质渐变学说,让他对物种的地质分布和渐变产生了兴趣和灵感,最终形成了“物竞天择”的理论。
但是达尔文并没有着急发表他的研究,而是将其束之高阁十年之久。直到出于历史的巧合,在婆罗洲进行调查工作的 Alfred Russel Wallace(华莱士)写信给达尔文,向他请教自己最近构思的“物竞天择”理论,他竟然取了个达尔文一模一样的名字“Nature Selection”。受到华莱士震撼的达尔文才开始紧急筹备发表自己的研究成果,最终在 1859 年出版了他称之为“论文摘要”的 500 页巨著。所以坊间流传的达尔文剽窃华莱士成果完全是无稽之谈,达尔文的研究比华莱士早二十年,而且达尔文和华莱士也互相尊重。话说回来,科学史上多人同时发现实际上也非常常见。
不过达尔文的研究只是针对“现象”而分析得来的相关关系,当时的人们完全不理解其内在的原因和规律。达尔文也因此受到了很多“聪明人”的猛烈攻击,这些人构思了各种千奇百怪的空想实验来试图论证达尔文理论的错误。
要等到 1900 年,人们重新发现 1865 年孟德尔发表的关于豌豆杂交试验的论文。以及 1950 年发现 DNA 后,人类才能最终理解达尔文理论的内在原理和规律。 #book
* 📒摘抄
达尔文出生于一个教士家庭,但是在游历太平洋的旅途中,因为阅读马尔萨斯的《人口论》和 Charles Lyell 的地质渐变学说,让他对物种的地质分布和渐变产生了兴趣和灵感,最终形成了“物竞天择”的理论。
但是达尔文并没有着急发表他的研究,而是将其束之高阁十年之久。直到出于历史的巧合,在婆罗洲进行调查工作的 Alfred Russel Wallace(华莱士)写信给达尔文,向他请教自己最近构思的“物竞天择”理论,他竟然取了个达尔文一模一样的名字“Nature Selection”。受到华莱士震撼的达尔文才开始紧急筹备发表自己的研究成果,最终在 1859 年出版了他称之为“论文摘要”的 500 页巨著。所以坊间流传的达尔文剽窃华莱士成果完全是无稽之谈,达尔文的研究比华莱士早二十年,而且达尔文和华莱士也互相尊重。话说回来,科学史上多人同时发现实际上也非常常见。
不过达尔文的研究只是针对“现象”而分析得来的相关关系,当时的人们完全不理解其内在的原因和规律。达尔文也因此受到了很多“聪明人”的猛烈攻击,这些人构思了各种千奇百怪的空想实验来试图论证达尔文理论的错误。
要等到 1900 年,人们重新发现 1865 年孟德尔发表的关于豌豆杂交试验的论文。以及 1950 年发现 DNA 后,人类才能最终理解达尔文理论的内在原理和规律。 #book
* 📒摘抄
https://blog.laisky.com/p/ddia/ 总算有空把这本“后端圣经” DDIA 完整地读完了,并且整理了摘抄。 #book
前阵子 Bybit 价值 1.4B 的资产被盗,堪称史上最大金额的盗窃案。黑客所使用的盗窃技术其实并不复杂,某种意义上更说明整个区块链业界的安全观念仍然非常欠缺。
区块链的本质就是保存不可修改的数据块,Ethereum 的 EVM 就是运行在这些 append-only 的数据存储层之上的计算机。其中可以被运行的程序称为合约(Contract)。因为合约一旦被部署上链后,它的调用地址、代码就无法修改,只有数据可以被修改。为了让合约能够在不变更地址的前提下实现升级,人们想出了一个办法就是
从函数调用的角度来考虑,这相当于是 proxy 函数调用了 implementation 函数的代码,但是修改的却是 proxy 函数的数据。这种特殊的调用在 EVM 中称为
然而,这次出事的就是这个 proxy-implementation 的设计。黑客部署了一个恶意的合约,这个合约有一个伪装成转账接口的方法,虽然看上去像是转账
Update: Safe 已经承认了,是因 Safe 的前端文件被黑客替换,导致了这一事件。 #blockchain
ref:
* 我曾写过一篇 web3 的简易入门,可以搜索 Upgradable 一节
* 关于 safe-wallet 被黑的分析
区块链的本质就是保存不可修改的数据块,Ethereum 的 EVM 就是运行在这些 append-only 的数据存储层之上的计算机。其中可以被运行的程序称为合约(Contract)。因为合约一旦被部署上链后,它的调用地址、代码就无法修改,只有数据可以被修改。为了让合约能够在不变更地址的前提下实现升级,人们想出了一个办法就是
proxy-Implementation
模式。也就是部署两个独立的合约,逻辑代码通过 implemenation 合约部署,然后再部署一个保存用户数据的 proxy 合约,proxy 合约作为面向用户的入口层,一旦部署就永久使用,以保证调用地址的稳定。proxy 合约中有一个 master 变量,可以理解为是一个指针,指向 implementation 合约的地址,实际的逻辑代码都是通过调用 implementation 合约来完成的。从函数调用的角度来考虑,这相当于是 proxy 函数调用了 implementation 函数的代码,但是修改的却是 proxy 函数的数据。这种特殊的调用在 EVM 中称为
delegateCall
,即在调用者的上下文中执行被调用者的代码逻辑。这一设计通过对数据和逻辑的拆分,让每个面向用户的 proxy 合约保持了地址和数据的一致性,而实现逻辑的 implementation 合约可以像插件一样随时更替。然而,这次出事的就是这个 proxy-implementation 的设计。黑客部署了一个恶意的合约,这个合约有一个伪装成转账接口的方法,虽然看上去像是转账
transfer(address,uint256)
,但是其实际功能是替换 proxy 合约中的 master 属性,也就是替换其所指向的 implementation 合约地址。然后黑客生成了一个对这个恶意合约的调用 transfer("0xbDd077f651EBe7f7b3cE16fe5F2b025BE2969516", "0")
,这个交易看上去像是一个无害的零额转账,但是因为设置了 operation=1
即启动了 delegateCall
,实际上是执行了恶意合约的修改 proxy 合约中 master 属性的逻辑。很可惜,因为 Safe 的网站前端代码被黑客替换,Bybit 的三位管理员都没能注意到这次调用中的 operation=1
这个高度危险的设置,可能误以为是一次零额转账而签署了交易,黑客从而成功将 proxy 合约所指向的 implementation 修改为指向到自己的恶意合约,完全替换了 proxy 合约的逻辑,最终完成了对 1.4B 资产的盗窃。Update: Safe 已经承认了,是因 Safe 的前端文件被黑客替换,导致了这一事件。 #blockchain
ref:
* 我曾写过一篇 web3 的简易入门,可以搜索 Upgradable 一节
* 关于 safe-wallet 被黑的分析
今天看到很多人都在转发说 Trump 废除了有 60 年历史的平权法案(EO 11246: Equal Employment Opportunity)。
刚看到的时候我也觉得非常震惊,随手搜了一下也确实有很多大媒体也报道了这个消息。所以我决定稍微认真调研一下。
可以在白宫的官方网站上找到 Trump 政府发表的 《ENDING ILLEGAL DISCRIMINATION AND RESTORING MERIT-BASED OPPORTUNITY》。仔细阅读后可以发现,实际上平权法案在漫长的历史中包含有大量的修正案,尤其是近年的一些修正案在其中增加了不少 DEI(diversity, equity, inclusion)的内容。而川普本次的撤销针对的正是这些修正案,而不是平权法案本身。
可以看到有三个修正案被废除:
* EO 12898 (1994):关于少数族裔和低收入群体环境正义的政策。
* EO 13583 (2011):建立联邦政府范围内促进劳动力多样性和包容性的倡议。
* EO 13672 (2014):修订《11246号行政令》,禁止联邦承包商基于性取向和性别认同的就业歧视
尤其提到这一条,"Ending permitting identity-based workforce balancing",和我此前提到的高校废除 AA 法案很类似,估计应该能利好亚裔求职者。
* summary by AI
刚看到的时候我也觉得非常震惊,随手搜了一下也确实有很多大媒体也报道了这个消息。所以我决定稍微认真调研一下。
可以在白宫的官方网站上找到 Trump 政府发表的 《ENDING ILLEGAL DISCRIMINATION AND RESTORING MERIT-BASED OPPORTUNITY》。仔细阅读后可以发现,实际上平权法案在漫长的历史中包含有大量的修正案,尤其是近年的一些修正案在其中增加了不少 DEI(diversity, equity, inclusion)的内容。而川普本次的撤销针对的正是这些修正案,而不是平权法案本身。
可以看到有三个修正案被废除:
* EO 12898 (1994):关于少数族裔和低收入群体环境正义的政策。
* EO 13583 (2011):建立联邦政府范围内促进劳动力多样性和包容性的倡议。
* EO 13672 (2014):修订《11246号行政令》,禁止联邦承包商基于性取向和性别认同的就业歧视
尤其提到这一条,"Ending permitting identity-based workforce balancing",和我此前提到的高校废除 AA 法案很类似,估计应该能利好亚裔求职者。
* summary by AI