Let’s Talk About Ethereum Transaction Transparency

  • Make Ethereum transactions transparent for users.
  • Be community driven, with potential economic incentives for users to participate.
  • Run completely decentralized, eliminating any reliance on a central party.
Transaction transparency is increased with TAP.
Placing a bid on AuctionHouse
Metamask Popup
  • The user may not have reviewed the contract code.
  • The user may not have the right background/experience to review the contract code correctly.
  • The user may not have reviewed the frontend code to ensure it’s actually invoking the intended contract code.
  • The contract code may invoke other contracts, for which the code isn’t even verified.

Presenting TAP

TAP with personal reputation
  • Description of the function being called
  • Does the function use gas?
  • Does the function accept ETH?
  • Does the function send you ETH?
  • Does the function update ownership of an asset?
  • Are there known exploits? What are they? How severe are they?
  • Does the function call external contracts? Do we know which ones?
  • In what scenarios does the function throw and risk losing your gas?
  • What is the overall risk level of using this function?
Full TAP report for one contract method
  1. Reputational incentives — a user with a high reputation on TAP gets the benefit of being recognized as knowledgable in the community, and gets associated benefits in their career or projects. This is similar to having a high rating on StackOverflow.
  2. Economic incentives — bounties can be provided by contract authors in order to ensure that their contract is safe and trusted before going live, or bounties can be provided by community members for high value contracts that they want to have trust in before investing money. Designing an effective and ungameable bounty distribution system will be a challenge, but there are models out there that indicate it should be possible. We’re open to suggestions from the community on the best models.
  1. In wallets/transaction signers. Present the data to the user immediately prior to signing transactions so that they can dig in and review the details.
  2. On block explorers, where people looking at the status of a given contract can dig in to attestations for specific functions.
  3. On DApps themselves. When you are asking your user to sign a transaction, link to the TAP report for that transaction to give them full transparency.

TAP Project Status

  1. Finalize the attestation schema.
  2. Finish TAP.js interface that handles integration between IPFS and Ethereum.
  3. Launch a sample frontend that allows users to easily submit and view attestations.
  4. Deploy contracts to the Ethereum mainnet after testing on the Ropsten testnet.
  5. Eventually upgrade the protocol to support bounties.




Building live streaming on the blockchain at Livepeer. Previously Founder, VP Eng at Wildcard and Hyperpublic (acquired by Groupon).

Love podcasts or audiobooks? Learn on the go with our new app.

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store
Doug Petkanics

Doug Petkanics

Building live streaming on the blockchain at Livepeer. Previously Founder, VP Eng at Wildcard and Hyperpublic (acquired by Groupon).

More from Medium

How to use Polymarket

Raise ETH Yield to 2.5% APY

What is a dapp on the blockchain?

Solana-Ethereum Wormhole Suffers Second Largest Hack in DeFi History. Should We Still Use Bridges?