I've been working on NULL for the past three weeks.
The idea was to build a file escrow system where the application itself doesn't need to hold the user's files or funds.
NULL is a trustless file escrow dApp on Ethereum mainnet. Files are encrypted directly in the browser using AES-256-GCM, so there is no centralized server or database storing the actual file contents.
The transaction flow is handled through an on-chain escrow contract using WETH, while file delivery happens peer-to-peer through encrypted libp2p connections. Once the payment conditions are met, the decryption credentials become available to the buyer, and the file can be decrypted locally. Hash verification is also used to confirm the received file matches the original.
I also implemented a refund window for cases where the seller doesn't complete the transaction, along with an optional arbitrator-based dispute mechanism.
The main challenge was putting the pieces together: browser-side encryption, Ethereum escrow, password handling, peer-to-peer file transfer, relay management, and file integrity verification.
Three weeks of building, testing, breaking things, and fixing them.
[link] [comments]
from hacking: security in practice https://ift.tt/fZhe3Wn
Comments
Post a Comment