MagicalInternetMoney Save

Magical Internet Money - EVM chain crypto asset manager, with support for ERC-5564 Stealth Addresses and ERC-6538: Stealth Meta-Address Registry (WIP)

Project README

Magical Internet Money

Status: Work In Progress

Magical Internet Money is here to help manage your crypto assets.

Features

  • Multiple addresses
  • EVM chain crypto assets:
    • ETH and ERC-20 Fungible Tokens
    • ERC-721 and ERC-1155 Non-Fungible Tokens
    • ENS Names (ERC-721 and ERC-1155)
    • Stealth Transfers of ETH, ERC-20 and ERC-721 tokens (testing on Sepolia Testnet)
  • All data is stored in your local browser storage
  • Execute simply from GitHub Pages
  • No additional backend servers required
  • On-chain data is used where possible, supplemented with public data sources
  • Source code can be downloaded and run using e.g. anywhere in the ./docs folder

Requirements

  • Web3 browser, connected to Ethereum Mainnet or the Sepolia Testnet currently

URL

https://bokkypoobah.github.io/MagicalInternetMoney/

Notes

This project is currently heavily under development. Clear your browser's LocalStorage and IndexedDB if this dapp is not operating as expected as the configuration data may have a new format.

References


Screenshots

Feb 24 2024
Addresses

ERC-20 Fungible Tokens

ERC-721 and ERC-1155 Non-Fungible Tokens



Old Stuff

An implementation of ERC-5564: Stealth Addresses and ERC-6538: Stealth Meta-Address Registry (using address instead of bytes).

Test it at https://bokkypoobah.github.io/MagicalInternetMoney/ (WIP) connected to the Ethereum Sepolia testnet.


How The ERC-5564: Stealth Addresses Protocol Works

  • Alice wants to pay Bob in ETH/ERC-20/ERC-721 tokens
  • Bob generates a Stealth Meta-Address and provides this to Alice
  • Alice uses Bob's Stealth Meta-Address to compute a random Stealth Address that can be accessed only by Bob
  • Alice transfers the tokens to this address and announces the transfers in the ERC-5564: Stealth Address Announcer contract
  • Bob can access the private keys to their computed Stealth Addresses, using information included in the announcements
  • The ERC-6538: Stealth Meta-Address Registry allows any account to publish their associated Stealth Meta-Addresses

How This Dapp Works

This dapp:

  • Allows Bob's web3 attached account to generate a unique Stealth Meta-Address for each unique associated phrase
  • Allows Alice to compute a random Stealth Address using Bob's Stealth Meta-Address
  • Allows Alice to then execute the transfer to Bob's Stealth Address and announce the transfer to the Announcer
  • Retrieve all event logs published to the Announcer
  • Retrieves all event logs published to the Registry


Sample Screens

Generate And Register New Stealth Meta-Address

Generate New Stealth Meta-Address - Initial Addresses

Click [+] from the Addresses menu to access the Stealth Meta-Address generation screen.

Generate New Stealth Meta-Address - Generate And Sign

Click [Generate] to generate a new Stealth Meta-Address, then sign the phrase with your web3 attached account.

Generate New Stealth Meta-Address - After Generation

Click [Add] to add your newly generated Stealth Meta-Address to your addresses.

Generate New Stealth Meta-Address - Add To Registry

Click [Add/Update] to add your newly generated Stealth Meta-Address to the Stealth Address Registry, then sign and send the web3 transaction.

Generate New Stealth Meta-Address - Addresses

Generate New Stealth Meta-Address - Sync

Click [Sync] to retrieve events from the blockchains.

Generate New Stealth Meta-Address - Registry

The newly registered Stealth Meta-Address.



Stealth Transfer

Stealth Transfer - To Stealth Meta-Address In Registry

Click on the [>] button to send ETH/ERC-20/ERC-721 tokens to that Stealth Meta-Address.

Stealth Transfer - Specify Transfer Amount

Stealth Transfer - Send Transaction

Stealth Transfer - Sync

Stealth Transfer - New Stealth Transfer

Stealth Transfer - New Stealth Transfer Details

Stealth Transfer - Sign Message To View Private Key

Stealth Transfer - Private Key Entered In Web3 Wallet

0.000012345 ETH rounded to 0 in the web3 wallet.



Deployments



Enjoy!

(c) BokkyPooBah / Bok Consulting Pty Ltd 2024. The MIT Licence.

Open Source Agenda is not affiliated with "MagicalInternetMoney" Project. README Source: bokkypoobah/MagicalInternetMoney

Open Source Agenda Badge

Open Source Agenda Rating