Technical Interactions
The interaction between uploaders and purchasers is facilitated by the marketplace's infrastructure through a well-defined workflow:

Uploader Tokenization
The uploader submits a dataset via the mintDataset function in the DatasetToken contract or native pallet, specifying its CID, size, and access tiers. The system validates the CID against IPFS, encrypts the dataset with AES-256 (GCM mode), and stores metadata in Patricia Tries, costing 245,000 weight equivalent in testnet simulations.
Purchaser Browsing
The purchaser queries metadata at Tier 0 using the getDataset function or pallet call, retrieving details like schema and statistical summaries without cost.
Access Request
The purchaser requests access via the accessDataset function or pallet extrinsic, submitting a zk-SNARK proof of token holdings and specifying duration (e.g., 30 days) and tier (e.g., Tier 3). Off-chain workers dynamically adjust tier requirements based on demand, using a median-based aggregation of access frequency (e.g., 800 accesses/hour in testnet) to ensure fair allocation.
Access Granting
Upon verification through the verification infrastructure, the system grants access, emitting an AccessExtended event (375 weight) through the event system and providing the purchaser with the CID for IPFS retrieval, secured by PoSp.
