Scaling the storage of
EVM-compatible
ecosystem
Read the Docs
Upload your files
Crust EVM storage protocol
The Contract
"The Contract" is a storage smart contract implemented by Crust Network within the Ethereum Virtual Machine (EVM) ecosystem, using the Solidity programming language. It provides developers with a storage interface that is natively compatible with the InterPlanetary File System (IPFS). Simultaneously, it offers tamper-proof, perpetual storage guaranteed by the Crust protocol, a payment settlement mechanism based on on-chain oracles, and an upgradable proxy mechanism. This arrangement seamlessly integrates Crust Network's decentralized storage resources into the entire EVM ecosystem.
Key Features
Petabyte-level capacity
With the power of Crust Network's petabyte-level storage capacity, more possibilities are brought to the EVM-compatible ecosystem.
Optional permanent storage
According to different usage requirements, EVM storage provides temporary and permanent storage options.
EVM Native Smart-contract
EVM storage can be easily integrated into the thriving smart contract-enabled EVM-compatible ecosystem.
Upload your first file to EVM storage using Crustfiles
Store, manage, share, and own your data in a decentralized way, with a smooth user experience.
Try it now
Mint W3Bucket on Crust Cloud
Crust Cloud provide S3-like storage service for professional users
Try it now
EVM storage is now available on
EVM Storage API
Dev Guidance
// Take order on Ethereum as an example const { ethers } = require("ethers"); // 1. Get signer const provider = new ethers.providers.JsonRpcProvider("https://mainnet.infura.io/v3/"); const signer = new ethers.Wallet(YOUR_PRIVATE_KEY, provider); // 2. Get storage contract instance const StorageOrderABI = [ "function getPrice(uint size, bool isPermanent) public view returns (uint)", "function placeOrder(string memory cid, uint size, bool isPermanent) external payable", "function placeOrderWithNode(string memory cid, uint size, address nodeAddress, bool isPermanent) public payable" ] const storageOrder = new ethers.Contract("0xE391613d2056e47F74ED5eF1d443d4CDB21AAAd9", StorageOrderABI, signer); // 3. Get price by size and isPermanent const fileCid = "QmfH5zLmBtptUxRSGWazaumGwSsCW3n6P164eRXpbFatmJ"; const fileSize = 5246268; const isPermanent = false; const price = await storageOrder.getPrice(fileSize, isPermanent); // 4. Place storage order await storageOrder.placeOrder(fileCid, fileSize, isPermanent, {value: price});
More possibilities enabled by EVM storage
Dapp Hosting
Personal Cloud
Blockchain storage
Data Market
Social network
NFT metadata storage