Skip to content

Patty240/move-invoke

Repository files navigation

Move-Invoke: Asset Mobility Protocol

Move-Invoke is an innovative blockchain protocol that enables seamless tokenization and transfer of physical assets on the Stacks blockchain. By creating a dynamic bridge between tangible assets and digital representations, the platform revolutionizes ownership models, enabling fractional investment and fluid asset mobility for real-world items like real estate, precious metals, art, and commodities.

Overview

ChainMint provides a complete lifecycle management system for tokenized assets, including:

  • Asset registration and verification
  • Tokenization of verified assets
  • Fractional ownership management
  • Secure token transfers with compliance checks
  • Asset retirement and emergency controls

Architecture

The platform is built around a central smart contract that manages the entire asset lifecycle through various stages:

stateDiagram-v2
    [*] --> Pending: Register Asset
    Pending --> Verified: Verifier Approval
    Pending --> Rejected: Verifier Rejection
    Verified --> Tokenized: Tokenization
    Tokenized --> Retired: Asset Retirement
    Rejected --> [*]
    Retired --> [*]
Loading

Core Components

  1. Asset Registry: Tracks all registered assets and their current status
  2. Token Management: Handles the creation and transfer of asset tokens
  3. Verification System: Manages authorized verifiers and the asset verification process
  4. Compliance Engine: Ensures all transfers meet regulatory requirements

Contract Documentation

Key Data Structures

  • assets: Stores core asset information and status
  • asset-tokens: Contains tokenization details for each asset
  • token-balances: Tracks token ownership
  • authorized-verifiers: Maintains list of approved verifiers
  • asset-transfers: Records transfer history

Access Control

  • Contract Owner: Has administrative privileges
  • Asset Owners: Can manage their registered assets
  • Authorized Verifiers: Can verify assets
  • Token Holders: Can transfer tokens within compliance limits

Getting Started

Prerequisites

  • Clarinet
  • Stacks wallet
  • API access to asset metadata storage

Basic Usage

  1. Register an Asset
(contract-call? .chain-mint register-asset
    "asset123"
    "https://metadata.url/asset123"
    "compliance-hash-123"
)
  1. Verify an Asset
(contract-call? .chain-mint verify-asset
    "asset123"
    true
)
  1. Tokenize an Asset
(contract-call? .chain-mint tokenize-asset
    "asset123"
    u1000000
    u6
    "https://token.uri/asset123"
)

Function Reference

Asset Management

register-asset

(register-asset asset-id metadata-url compliance-hash)

Registers a new physical asset in the system.

verify-asset

(verify-asset asset-id approve)

Verifies or rejects an asset (authorized verifiers only).

tokenize-asset

(tokenize-asset asset-id total-supply decimals token-uri)

Creates tokens for a verified asset.

Token Operations

transfer-tokens

(transfer-tokens asset-id recipient amount)

Transfers tokens between users with compliance checks.

Administrative Functions

add-verifier

(add-verifier verifier)

Adds a new authorized verifier.

emergency-reallocation

(emergency-reallocation asset-id new-owner)

Emergency function for contract governance to transfer asset ownership securely.

Development

Testing

Run the test suite using Clarinet:

clarinet test

Local Development

  1. Clone the repository
  2. Install dependencies
  3. Start Clarinet console:
clarinet console

Security Considerations

Asset Verification

  • Only authorized verifiers can approve assets
  • Verification status cannot be reversed once approved
  • Multiple verification steps recommended for high-value assets

Token Transfers

  • Built-in compliance checks for all transfers
  • Balance verification before transfers
  • Transfer history maintained for audit purposes

Access Control

  • Role-based access control for all sensitive operations
  • Emergency controls limited to contract owner
  • Asset operations restricted to verified owners

Known Limitations

  • Single contract owner
  • Synchronous verification process
  • Basic compliance checks (should be enhanced for production)

About

no description

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors