Move是Meta为其稳定币项目Diem开发的编程语言,Diem的愿景是作为一款全球性的数字原生货币,集稳定性、低通胀、全球普遍接受和可互换性于一体。其愿景决定了Move是为金融而生的编程语言。Move的特点主要有以下五个方面:将资产作为一等公民编程
通过静态调用、虚拟机沙盒等确保其安全性可验证性灵活性合约可组合性将资产作为一等公民编程
Move语言通过Resource为数字资产定义。Move语言中数字资产以被特殊定义的代码/resource/表示和存储。
Beosin发现Move VM严重级别漏洞:金色财经报道,近日,区块链安全公司Beosin发现Move VM严重级别漏洞。Beosin安全研究团队在Move虚拟机中发现了一个没有限制递归调用深度而导致的栈溢出漏洞,这个漏洞可以导致整个网络崩溃(total network shutdown),还会让新的validator节点无法加入到网络中,甚至有可能导致硬分叉(hard fork)。Sui mainnet_v1.2.1、Aptos mainnet_v1.4.3以前的版本都受此漏洞影响。目前该漏洞已被官方修复。Suimainnet_v1.2.1、Aptosmainnet_v1.4.3、Move-language 2023年6月10日之后的版本修复了此漏洞。[2023/6/15 21:37:59]
Move语言抽象了资源的四个属性:可复制、可索引、可丢弃、可存储,通过这四个属性的不同组合,用户可以方便的定义出任何类型的资源。
Move to Earn链游Walken宣布完成470万美元融资:金色财经报道,基于Solana的Move to Earn链游Walken宣布完成470万美元融资,Infinity Ventures Crypto与Shima Capital领投,Morningstar Ventures、Ghaf Capital Partners、Huobi Ventures、Dex Ventures等参投。新融资将用于迅速扩大游戏开发规模,并在可持续经济的基础上进一步完善产品。
据介绍,Walken将加密奖励与步行、跑步等体力活动结合起来,通过持续移动或赢得比赛来提升玩家在游戏中的角色,同时帮助玩家培养更健康的生活习惯。Walken目前处于封闭测试阶段,将在6月底正式发布,随后将上线WLKN代币。(Cointelegraph)[2022/6/2 3:57:30]
Move规定资源会存储在由所有者的帐户控制的模块里,经过验证的所有者以/签名者/表示,这些资源的所有者具有最高决定权,只有所有者能够决定资源的存储和转移。
加州脱美计划组织“Calexit movement”寻求把加密货币作为其金融支柱:一项受英国脱欧启发的名为“Calexit movement”的计划希望加州脱离美国,成为独立国家。该计划背后的人现在正在寻求把加密货币作为其金融支柱。该组织最近任命了区块链专家Alastair Caithness来分析如何利用像比特币这样的数字资产来保障全民基本收入。Caithness对未来基于加密货币经济的想法表示赞赏,他认为这种形式可以“以前所未有的规模为免费医疗、免费教育和基本收入形式提供资金”。根据相关计划,州政府已同意今年向“ Calexit”举行公开请愿,可能在2024年之前进行正式投票。(cointelegraph)[2020/9/2]
资源的设计让数字资产转移不是账户间余额数值的简单加减,而是存储位置间的移动,避免重入和双花攻击。
重入和双花攻击是黑客攻击常见类型。重入指的是黑客抓住项目方转账模式的漏洞,制造恶意合约,在接受转账的同时再次调用项目方转账函数,在不改变账户余额的情况下不断提走资金。双花攻击则更好理解,用同一笔钱多次完成支付。
资源确定数字资产仅在存储位置之间转移,避免了重入。不凭空产生或销毁数字资产,避免了双花攻击。通过静态调用、虚拟机沙盒等确保其安全性
Move语言采用静态调用,静态调用指程序A在调用程序B时,在运行之前就已经确定调用的对象,在运营过程中不改变调用对象。
静态调用提升了运行的安全性。动态调用过程中,恶意用户可以通过制造恶意合约,调用项目方函数,从而完成攻击。静态调用解决了动态调用存在的问题,增强网络运行的稳定性。
MoveVM是Move编程语言的虚拟机沙盒,虚拟沙盒让采用Move语言的区块链具备确定性,合约调用被放在同一个沙盒当中,在此过程中合约的状态的安全性主要要通过编程语言内部的安全性进行隔离,而非依赖虚拟机进行隔离。可验证性
Move编程语言采用形式化验证。简而言之,形式化验证是用数字工具分析的手段证明程序的安全性。此前提到的静态调用、虚拟机沙盒能够提升验证的安全性。灵活性
Move的灵活性体现在可以通过transaction脚本来z由组合各种transaction来实现不同的功能,一个脚本可以调用多个transaction。
Move通过面向泛型编程,保障了合约的扩展性,增加了代码的复用能力。合约可组合性
Move语言的合约可组合性源自于其Module的设计,基于Module间的组合只需要对Module进行升级和优化,所有使用过这个Module的其他合约都会自动使用最新的版本,加速使用Move语言的智能合约升级优化的速度。
Module相当于给这些智能合约提供了统一的兼容空间,智能合约就像乐高玩具的各个部分,通过任意组合产生新的产品。文章来自
郑重声明: 本文版权归原作者所有, 转载文章仅为传播更多信息之目的, 如作者信息标记有误, 请第一时间联系我们修改或删除, 多谢。