September 15, 2022 - 10 min read
Move is a blockchain-focused programming language first developed as a part of Facebook’s (now Meta’s) Diem blockchain, a proposed permissioned blockchain-based stablecoin payment system. Since the Diem blockchain has been shut down, Diem and Move language IP was sold to Silvergate Bank in January 2022. However, it should be noted that the Move language itself is open-source, so it can be used and added to by anyone.
Right now, the main two projects that have adopted Move as a primary programming language include the Aptos and Sui blockchains. Aptos is an ambitious project intended to develop a safe and scalable Layer-1 blockchain. Sui is another ambitious Layer-1 blockchain that is intended to create an extremely high-throughput blockchain via horizontal scaling. Other projects which have adopted Move include Starcoin, another Layer-1 blockchain network, which is also intended to create a highly secure and scalable blockchain with an emphasis on secure smart contracts for DeFi, gaming, NFTs, and other popular applications.
Move is a stack-based programming language that provides a major emphasis on access control and scarcity, which is enforced by non-duplicatable default structs. Move provides access control via module access privileges and accounts. Move modules function as programs or libraries designed to transfer, store, and generate digital assets. The language differentiates between public module and private module functions, with only public modules being accessible to other modules. The Move language is based on the popular programming language Rust.
According to Aptos’ blockchain project’s Move documentation:
“In Move, a transaction’s sender is represented by a signer. The signer has the highest level of permission in Move and is the only entity capable of adding resources into an account. In addition, a module developer can require that a signer be present to access resources or modify assets stored within an account.”
When a private key or other asset is saved utilizing Move, the information can only be stored on the local device, which greatly increases security and makes many types of traditional crypto wallet hacking methods impossible.
Aptos was founded by a group of developers who previously worked on the Diem project and were already familiar with programming in Move. These include Aptos CEO Mo Shaikh and Aptos CTO Avery Ching.
Aptos states that its network will be able to process 130,000 TPS (transactions per second) via the utilization of its parallel execution engine (Block-STM). It should be noted that Aptos is still in the development stage, as it has not issued a whitepaper or a ICO/IDO for a native cryptocurrency that is expected to provide security for the blockchain via a proof-of-work consensus mechanism.
Fortunately for Aptos, the project is quite well-funded, as it recently raised $150 million via a Series A funding round led by Jump Crypto and FTX Ventures, the venture capital arm of the prominent FTX crypto exchange. Overall, the company has raised $350 million from a wide scope of investors, including well-respected crypto VC firms a16z and Multicoin Capital.
Aptos’s testnet is expected to launch in September 2022, and, while exact dates are unclear, its native cryptocurrency could ICO quickly after the launch of the Aptos testnet. Overall, Aptos’s goals are extremely ambitious, and the project has a stated vision of scaling to one billion users, which would be more than all other blockchains combined. For context, in mid-2022, it was estimated that there are more than 300 million cryptocurrency users in the world, and though that number could reach one billion within the next year, Aptos would need to completely dominate or even expand the global blockchain market to reach its goals.
Now that we’ve detailed a bit about the Aptos project, let’s get into how Aptos is using move for its development efforts.
Like many public blockchains, such as Solana, Cardano, and Avalanche, the Aptos blockchain runs a proof-of-stake consensus protocol via a series of validator nodes. These nodes order transactions, which are executed on the Move Virtual Machine (MoveVM).
According to Apto’s Move documentation:
“Each validator node translates transactions along with the current blockchain ledger state as input into the VM. The MoveVM processes this input to produce a changeset or storage delta as output. Once consensus agrees and commits to the output, it becomes publicly visible.”
Some of the features of the Aptos Move adapter include:
Libraries that are shipped with the Aptos framework include:
Sui is a decentralized, permissionless Layer-1 blockchain that incorporates high-throughput horizontal scaling. Like Aptos, Sui and its parent company, Mysten Labs, was founded by former Meta employees, including Sam Blackshear, Evan Cheng, Kostas Chalkias, George Danezis, and Adeniyi Abiodun, who had all previously worked on the Diem blockchain project and who were already familiar with the Move programming language.
Some of the features of the Sui blockchain project include:
Like most blockchains, Sui will have regular users, token holders, which participate in governance, and validators, which achieve consensus to execute transactions on the blockchain.
As of August 2022, the Sui project has raised $36 million in Series A funding from prominent names including 16z crypto, FTX Ventures, Coinbase Ventures, Samsung Next, and Lightseed, among others. While it has raised significantly less than its competitor Aptos, it still has the backing of major VCs, some of which (i.e. a16z and FTX Ventures) also invested in Aptos.
According to reports, Sui will eventually release its native token ($SUI), though no launch date has been set. The total supply of the token will be capped at 10 billion), with some tokens being released at launch, some placed in a vesting program, and some distributed as rewards for staking.
Like Aptos, Sui uses Move as its core programming language. However, unlike Aptos, Sui does not use the Move core language developed by Diem and instead uses its own version of the language. Move’s core is relatively simple and, according to Sui:
“[Move… does not integrate blockchain-specific concepts like accounts, transactions, time, [and] cryptography… These features must be provided by the blockchain platform that represents Move… these blockchains do not need their own fork of Move… but adds blockchain-specific features via code that builds on top of these core components.”
Furthermore, key differences between Move core and Sui Move include:
Sui’s implementation of Move is specifically designed to address the fact that existing blockchains are not effectively able to store the massive amounts of data needed by applications, such as social media networks, games or media with advanced graphics, or cloud file storage applications. Therefore, data storage occurs only within Sui, as Sui’s version of Move does not incorporate global storage.
The key ability in Move helps distinguish Sui objects, which can be stored in Sui’s storage, and internal Move objects, which are not. Sui objects to be stored in Sui’s storage are classified as being passed through the “Move-Sui boundary.” Therefore, all structs with key ability begin with an ID type with an ObjectIDF and sequence number, which is “immutable and cannot be transferred to other objects (as each object must have a unique ID).”
Overall, Sui Move is intended to utilize the flexibility and security of Move core, while improving it to reduce finality delays, enhance throughput, and increase the ease of overall programming.
Starcoin is another Layer-1 proof-of-stake blockchain network that utilizes the Move programming language. Much like Aptos and Sui, it claims to have developed the most secure proof-of-stake consensus mechanism and enables highly secure smart contracts. Surprisingly, Starcoin already has a Layer-2, which they define as a “scalable application network capable of secure and seamless states transfer, easy and fast data scaling, low latency, and great operability.”As of September 2022, Starcoin’s native cryptocurrency, Starcoin ($STC), has a market cap of more than $20 million.
Starcoin says that it utilizes Move mainly for its secure smart contract functionality. According to Starcoin, this is partially achieved through Move’s innovation of resource-oriented programming, which helps create resource scarcity. Due to its resource-oriented programming, Move does not allow the dropping or copying of objects, and instead uses a resource type that is constrained from the virtual machine level, preventing security risks from memory copying, as well as making it easier for developers to use and understand the language.
According to Starcoin: “Move has 4 type abilities: Copy, Drop, Key, Store, which can be used in any combination. For resource-type structures, ability without Copy and Drop is enough. It is easy to use, safe and reliable, and can avoid asset loss and unlimited issuance, which can secure assets on the chain.”
Starcoin emphasizes that there the major difference between Move and Solidity is that smart contract data is stored in the centralized contract account which generated the data, which poses a security risk. In contrast, in Move, data is stored in a decentralized fashion in personal accounts, meaning that data ownership belongs to the users, and each user is the only one that can operate their own data. This prevents hackers from modifying everyone’s data in a smart contract, even if bugs do arise.
While the Move programming language may have been developed by Facebook’s Diem project, its usefulness has already resulted in its adoption by three promising blockchain projects, and due to its high level of flexibility and security, the language may well end up being adopted by an increasing number of projects in the near future.
As we’ve discussed, the only three major projects that have publicly announced their adoption of Move are Aptos, Sui, and Starcoin. Aptos and Sui both have teams consisting of former Diem developers already familiar with the intricacies of the language. If these blockchains succeed, independent developers will likely begin to use Move to program smart contracts, dApps, and NFTs on these blockchains, and the language may spread to other new blockchain projects. It’s unclear if Move, or some form of it, will be useful for adoption by existing blockchains, but if so, this could further increase its popularity among blockchain developers.
Sign up for the Supra newsletter for company news, industry insights, and more. You’ll also be the first to know when we come out of stealth mode.