DenSosnovskyi

33 posts

DenSosnovskyi banner
DenSosnovskyi

DenSosnovskyi

@MarsWhiteHacker

Web3 enthusiast, Smart contracts Auditor, dApps Developer, Solidity, Move/Aptos

Beigetreten Eylül 2022
52 Folgt18 Follower
DenSosnovskyi
DenSosnovskyi@MarsWhiteHacker·
💎 What is the Digital Asset (DA) Standard on Aptos? Aptos redefines NFTs with Digital Assets, where every NFT/token is an Object with its own unique address. Let’s break it down! 🧵👇 🔹 1. Why is Aptos DA different? Unlike traditional NFTs, Aptos Digital Assets are not just tokens—they are on-chain objects with their own unique addresses. This brings: ✅ More efficient storage (no account clutter). ✅ True ownership & portability (each NFT is an independent entity). ✅ Customizability (update metadata, add new traits, and mutate NFTs). Aptos NFTs are smart, adaptable, and built for the future. 🚀 🏗 2. How are Digital Assets created? Aptos NFTs follow a structured approach with two main objects: 🔹 Collection → A group of NFTs with metadata (collection.move module). 🔹 Token → The actual NFT, which belongs to a collection and stores its own attributes (token.move module). Each NFT must be part of a Collection, but the Collection does not own the NFT—creators or users do. 📌 3. Collections: Fixed vs. Unlimited NFTs are grouped into Collections, which can be either: 1️⃣ Fixed Supply → A limited number of NFTs can be minted. 2️⃣ Unlimited Supply → No cap on minting; creators can add more anytime. Each collection contains metadata like name, creator, and URI. 🎨 4. How is NFT metadata stored? Each Aptos NFT stores its properties in a Property Map (property_map.move module), which includes: 🔹 Attribute names (like "rarity" or "power level"). 🔹 Data types (string, number, boolean, etc.). 🔹 Values (e.g., "Legendary", 100, true). This enables dynamic, customizable NFTs with rich metadata. 🚀 5. NFT Actions: Transfer, Burn, Mutate ✅ Transfer → Move NFTs seamlessly between wallets. ✅ Burn/Delete → Permanently remove NFTs from circulation. ✅ Modify Metadata → Update an NFT’s image, description, or attributes after minting. 💰 6. Royalties: How Creators Get Paid Royalties ensure that NFT creators earn a percentage of secondary sales. 📌 Not enforced on-chain → Since Aptos NFTs are objects, they can be transferred freely. 📌 Handled by marketplaces → Royalties are deducted when NFTs are sold through platforms that support them. 📌 Customizable settings → Creators can set royalties at minting and, in some cases, update them later. 🛠 7. Minting NFTs Easily The aptos_token module simplifies NFT creation by allowing users to: ✅ Mint transferable NFTs (with royalties). ✅ Create soulbound NFTs (non-transferable). ✅ Manage NFT properties without writing smart contracts. Perfect for creators who want plug-and-play NFT minting on Aptos. The Aptos Digital Asset standard isn’t just another NFT model—it’s a scalable, efficient, and customizable framework for Web3 creators. #Aptos
English
0
1
1
157
DenSosnovskyi
DenSosnovskyi@MarsWhiteHacker·
💰 The Legacy Coin Standard on Aptos 💰 Before the Fungible Asset Standard (FA), Aptos relied on the Coin standard to define and manage fungible tokens. Even today, APT—the network’s native token—is written using it. So how does it work? Let’s dive in 👇 🧵 1. The Coin Module (0x1::coin) At the core of the Coin standard are two key structs: 1️⃣ Coin → Represents the actual coins users transfer. 2️⃣ CoinStore → The main wallet where a user’s coins are stored. Each coin type (e.g., USDC, APT) is uniquely defined by a struct in a module. 🔨 2. Creating a Coin To create a new coin, a developer has to: 1️⃣ Define a struct (with key ability) to serve as the coin’s type. 2️⃣ Call coin::initialize to register it. This returns three capabilities: ✅ Minting 🪙 ✅ Burning 🔥 ✅ Freezing 🚫 🕵️‍♂️ 3. Account & Coin Registration Before a user can receive a coin, they need: 1️⃣ An Aptos account (created by sending APT). 2️⃣ To register the coin (coin::register), preventing spam deposits. This makes wallets cleaner but adds friction to onboarding new coins. 👛 4. Managing Coins Users can: 1️⃣ Merge or split Coin values. 2️⃣ Deposit and withdraw from CoinStore. 3⃣ Register new CoinStore instances to hold specific coins. Meanwhile, creators control minting, burning, and freezing. 📄 5. Metadata & Supply Tracking When creating a coin, developers could set: 1️⃣ Name, Symbol, Decimals → Purely metadata, not enforced on-chain. 2️⃣ Supply Monitoring (monitor_supply) → Enabled tracking of total supply. However, enabling supply monitoring had a downside: it prevented parallel execution of mint/burn operations, limiting scalability for high-frequency transactions. Many opted to disable it for better performance. 🪙 6. APT & the Legacy of Coin Even though FA is now the preferred standard, APT—the native Aptos token—still runs on the legacy Coin standard. This means: 1️⃣ Existing Coin-based tokens continue to work and can be bridged into FA if needed. 2️⃣ Developers who built on Coin don’t have to migrate immediately but are encouraged to adopt FA for new projects. ❓ 7. Why Move Away from the Coin Standard? Aptos is moving away from the Coin standard in favor of the new Fungible Asset (FA) standard due to its enhanced flexibility and improved asset management features. The FA standard allows assets to be represented as objects rather than just stored within account resources, enabling more dynamic and efficient interactions. It also provides better support for metadata and on-chain composability.
DenSosnovskyi tweet media
English
0
0
1
115
DenSosnovskyi
DenSosnovskyi@MarsWhiteHacker·
🔍 Fungible Asset Standard on Aptos The Fungible Asset (FA) on Aptos is a standard for creating and managing fungible tokens, similar to Ethereum's ERC-20. It enables developers to mint, burn, and transfer tokens securely and efficiently, leveraging Move's resource-oriented design. 📦Core modules to import: Unlike Ethereum, where you write a contract that inherits from the ERC-20 standard, Aptos lets you import prebuilt, battle-tested code for fungible tokens: - fungible_asset.move: for developers to create and manage tokens - primary_fungible_store.move: handles deposits, withdrawals, and transfers in user wallets. 🔑Key objects: The standard leverages Move Objects concept (they are more customizable and extensible). - Metadata Object: contains token information like name, symbol, decimals, and supply. This unique object identifies the token type. - FungibleStore Object: acts as the user’s wallet, storing balances of a specific token type. 🪙Token transfer: When tokens (e.g., 100 USDC) are transferred: - They're temporarily represented as FungibleAsset objects (just like cash). - FungibleAsset are transferred by removing them from one FungibleStore and adding them to another. ⚙️ How It Works: Creating a Token: Developers follow these steps to create and manage a fungible token: 1. Create Metadata Object - Use "object::create_named_object" with a signer to initialize a Metadata object for the token. 2. Call "primary_fungible_store::create_primary_store_enabled_fungible_asset" to set up the token with name, symbol, decimals, supply, URIs for the project and icon. 3. Use the ConstructorRef returned from the created object to generate Refs, which enable the token creator to perform key actions such as minting, burning, freezing, and transferring tokens.
DenSosnovskyi tweet media
English
0
1
2
191
DenSosnovskyi
DenSosnovskyi@MarsWhiteHacker·
🚀 Gas-efficient price comparison tip for developers: Compare prices without division by using cross-multiplication.
DenSosnovskyi tweet media
English
0
1
3
160
DenSosnovskyi
DenSosnovskyi@MarsWhiteHacker·
🌟 Ethereum vs. Aptos Storage: Breakdown Ethereum: 1. Built on a Patricia Merkle Tree with 4 layers: - World State Tree: Tracks global account states. - Storage Tree: Manages per-account data. - Transaction Tree: Logs all transactions per block. - Receipt Tree: Tracks execution outcomes for transactions. 2. Contract-Centric: - Data is tied to contracts, which serve as hubs for both logic and state. - Example: NFTs are created using mappings in ERC-721 contracts, linking token IDs to owners. Aptos: 1. Adopts a forest-like global storage model: - Each account is a tree🌳, branching into: - Resources: Data stored as structs. - Modules: Smart contract code in bytecode format. 2. Account-Centric: - Structs (e.g., NFTs) are stored directly under accounts. - Ownership is tied to accounts, not contracts, offering a cleaner, more intuitive storage design. 💡 Key Differences: Ethereum: - Contracts are the central hub for both data and logic. - Ownership is managed using mappings stored within contract state variables. - Complex storage structure, with data distributed across multiple trees. Aptos: - Accounts serve as unified containers, holding both data and code. - NFTs and other resources are directly tied to accounts, making ownership intuitive and straightforward. - Simplifies data management by consolidating storage under account trees. #Ethereum #Aptos #Blockchain #Move #Web3
DenSosnovskyi tweet media
English
0
0
1
64
DenSosnovskyi
DenSosnovskyi@MarsWhiteHacker·
Short description of Move/Aptos code organization🪄
DenSosnovskyi tweet media
English
0
0
1
92
DenSosnovskyi retweetet
SHERLOCK
SHERLOCK@sherlockdefi·
@MidasRWA @woshilalala @Afriauditor 🏆 @MidasRWA Audit Contest Results 🏆 4. @Loscar04 - $656.97 4. @drynooo - $656.97 4. @blutorque - $656.97 4. deepkin - $656.97 4. @MarsWhiteHacker - $656.97 4. recursiveEth - $656.97 4. wildflowerzx - $656.97
SHERLOCK@sherlockdefi

🚨 New contest: Midas @MidasRWA 🚨 Sign up here: audits.sherlock.xyz/contests/332 Total Rewards: 13,500 USDC nSLOC: 399 Lead Senior Watson: TBD Starts Monday, May 27th at 15:00 UTC Check it out!!

English
1
2
1
658
DenSosnovskyi retweetet
JohnnyTime 🤓🔥
JohnnyTime 🤓🔥@RealJohnnyTime·
Compete in auditing contests, learn on the go, and build a reputation in the Web3 security space. Every challenge is a step closer to mastery! 💪
English
5
4
57
3.1K
DenSosnovskyi retweetet
SHERLOCK
SHERLOCK@sherlockdefi·
@cergyk1337 @0xSimao @BiasedMerc @IronsideSec @armormadeofwoe @drynooo 🏆 @ZivoeFinance Audit Contest Results 🏆 11. recursiveEth - $1,067.81 12. @WhyBhumii - $1,065.93 13. @DzordanTa1567 - $976.63 14. @MarsWhiteHacker - $901.05 15. lemonmon - $881.93 16. @int0x1catedCode - $701.50 17. @amarfares_ - $687.83
SHERLOCK@sherlockdefi

🚨 New contest: Zivoe @ZivoeFinance 🚨 Sign up here: audits.sherlock.xyz/contests/280 Total Rewards: 80,000 USDC nSLOC: 2908 Lead Senior Watson: @cergyk1337 Starts Monday, April 8th at 15:00 UTC Check it out!!

English
1
2
3
832
DenSosnovskyi retweetet
pashov
pashov@pashov·
Easily the most alpha-loaded smart contract security blog post I have recently read Absolutely a must read for all bug hunters on security audits, contests and bug bounty platforms - over 30 attack vectors here Great work by @patrickd_de🫡 ventral.digital/posts/2024/1/1…
English
1
32
173
10.3K
DenSosnovskyi
DenSosnovskyi@MarsWhiteHacker·
My first high finding🚀
DenSosnovskyi tweet media
English
1
0
2
74
Silvermist
Silvermist@0xSilvermist·
To those doing Zivoe, how is it going for you? Am I the only one having bugs with no impact 😑
English
10
0
14
3.5K
DenSosnovskyi
DenSosnovskyi@MarsWhiteHacker·
My first audit and I got this So exciting🚀
DenSosnovskyi tweet media
English
0
1
4
201
DenSosnovskyi
DenSosnovskyi@MarsWhiteHacker·
web2 job during the days, smart contacts hacking at nights 🌑✨ This night I received a certificate for passing the course final test by @RealJohnnyTime 🚀🚀🚀
DenSosnovskyi tweet media
English
0
0
4
1.8K