infrastructure, web3, open source, open access, blockchain, finance
Exploratory work done as an independent researcher and independent contractor, focused on the use of blockchain and open data systems. The following page will encompass work done individually, as well as within the nonprofit project Open Value (when noted), which released everything with open source licensing.
As an experimental framework, this general project navigates the complex interplay between ecosystems, technological systems, and financial models, viewing them as interconnected assemblages. It promotes the development of experimental systems that are reflective, adaptive, and critical, rather than purely solution-driven.
During 2023 in partnership with the nonprofit, I developed a backend, solidity contracts, and SDK that enable the creation of a blockchain network where ERC20 contracts can be created and assigned accompanying data (in the form of a text string) on any chain. The ERC20 contract is immediately made to pair with a base currency (ETH), and initial liquidity is added thus creating the automated market maker K curve, using Uniswap V2 contracts.
This SDK was developed with the understanding that within the wider network of Uniswap and DEXs on Ethereum Mainnet there is a volatile, expansive, and somewhat mysterious economy filled with arbitrage bots and algorithms that transfer currencies assigned to nothing. So a basic question was, what would it mean if currencies represented real world digital objects, or hypermedia? Unlike NFTs, this SDK deals with the concept of 'no ownership' where there is a collective inertia and movement.
The SDK has not been fully documented, but an overview of what it does: it can read many blockchain and Uniswap activities using ethers.js, post on blockchain, and it has many many other uses.
The SDK can be downloaded and found here: ov-network-sdk
The application can be found here: open value application where information and contracts can be interacted with on Mainnet and Sepolia Testnet
The statistics page tracking activity on network can be found here: network tracker where information and activity can be read on Mainnet
The architecture of the SDK uses GraphQL and the decentralized graph to store token names as tokens and in token pairs, so that developers can quickly query tokens by name.
All queries are directly on blockchain without any external third party API. The querying is made possible through ethers.js and is directed through users Metamask or through Infura Provider. The most unique query that does not need third party help is the get balances of contract, which gets all balances of a single token in any wallet or pair in the entire chain.
The SDK is also setup to be connected to any external centralized database.
Also my github repo for creating a simple GraphQL subgraph can be found here. It listens to the token and pair contract, and maintains a realtime list of token names, which can then be queried from the Graph node.
This is a brute force attack program that touches on themes of personal security, computational energy usage, and lore of nefarious programs that are and have been constantly running and can emerge at any momement sending effects to everday life.
"Searching for Null" plunges into the enigma of Ethereum's 0x0000000000000000000000000000000000000000 address, a digital void that harbors 'burned' funds, where transfers are sent to throw away a key. This address, often metaphorically likened to a black hole, receives assets when owners opt to discard their access keys, effectively sending value into a state of absence.
While brute forcing secret keys remains a double-edged sword—redeeming lost assets on one side and facilitating covert heists on the other—this project channels that intense computation to challenge a crypto myth. Could the so-called 'burned' assets ever be reclaimed? And if unearthed, where would they be best sent?
As the program relentlessly generates wallets and secret keys, striving for that elusive alignment with address(0), its journey is visualized through a maze's ever-evolving pathways, with shifting hues capturing its futile computational ebbs and flows. By juxtaposing the energy poured into the crypto architecture against that used for piracy, "Searching for Null" offers a contemplation into a burgeoning synthetic financial folklore.
The code documentation of this program can be found on my github here, although I recommend taking !caution! if replicating the server and using it to attack any address other than address(0) - since theoretically noone owns address(0).
The live website can be accessed here
ipfs-sqlite-blockchain github repository located here
This toolkit takes the sql.js-httpvfs repository and modifies it to read directly from IPFS, where it involves another step to launch an SQlite file that captures the current state of a blockchain network.
The external server recieves webhooks focused on contracts, and updates the SQlite file. The file is uploaded through an IPFS gateway where it recieves an IPFS CID. The CID is kept in a Github Gist file, where the frontend can read to know the location of the latest SQlite file. The repo is a HTTP-Range-request based virtual file system for SQLite. It allows hosting an SQLite database on a static file hoster and querying that database from the browser without fully downloading it.
The benefits of this approach are enabling the decentralization of an off-chain resource, while also allowing scalability because of the file size not matter since it is not being fully downloaded.