It was really exciting for us at AlphaWallet to see that DEVCON 6 is looking to adopt Ethereum based tickets, as we have already implemented Ethereum based tickets for other events.
Our proposal for DEVCON 6 is to use an attestation based ticketing system that is managed by smart contracts and integrated with pretix.
- Tickets would be distributed to the attendee’s email account, along with the purchase confirmation email. The ticket has a QR code and a link with the same content. The QR code/link contains a signed attestation from DEVCON that binds the ticket with the user’s email address.
- Crypto users will be able to associate his or her Ethereum address with their ticket, using a DApp browser, in order to use blockchain for voting, receiving free or discounted crypto etc.
- Non-crypto users can use the QR codes to access the venue and still have access to all the services provided through a traditional ticket
Attestation Based Ticketing
Attestation based ticketing ensures privacy, flexibility and cost efficiency for the blockchain implementation of ticketing. It involves two attestations:
- Attestation linking ticket with an email address (provided by ticketing system at the time of purchase of the ticket)
- [for crypto users] Attestation linking Ethereum address with email address (acquired by the user through a DApp browser)
Attestation #1 is the ticket. Attestation #2 is to be issued by http://attestation.id
The process of acquiring attestation #2 would be a simple guided process for the users. It will be through visiting a website, where the user will have to verify their email to receive an attestation that will be saved in the Dapp browser as a cookie or in the user’s wallet if the wallet can recognise attestations.
When the user wishes to interact with a smart contract function, such as voting, the user will call the smart contract providing 1) the email address attestation; 2) the ticket attestation on that email address. Together they prove that the transaction sender’s Ethereum address is that of the valid attendee. Such an implementation would preserve the privacy of the user, as these attestations do not reveal the actual email address. Please check out the safe protocol for more details.
The advantage of such a design is:
- Ethereum address is optional for those who don’t want to use blockchain at all.
- For users who link a ticket to his or her Ethereum address, the process to bind that with the ticket is independent of the ticket issuing process. The buyer can get the needed email address attestation before or after purchasing Ethereum tickets.
- If the user loses his or her wallet, then the user can redo the process to get a new email address attestation of the original email.
- The ticket can be made tradable within rules specified by the smart contract.
Suitability for DEVCON 6 requirements
- Integration with pretix: the system is to be built through providing a module or customising Pretix, which is already a mature ticketing system. This will be done through a collaboration between pretix and AlphaWallet team.
- Payment with Crypto, Fiat and stable coins: Possible as the solution will be integrated with Pretix, which already supports these features.
- Build for all: The blockchain functionalities are opt-in. The ticket & the associated QR code/link distributed through email can behave as a traditional ticket.
- Support for different ticket types: The ticket can support any and all ticketing types, including but not limited to - general admission, discounted and free tickets.
- Limiting the ability to resell: The tickets’ resale-ability and tradeability can be restricted through the smart contract.
- Ability to purchase more than one ticket. Yes, attendees can purchase more than one ticket.
- Sybil Resistance Mechanism: Would be restricted through email
- Refunds and Automation: Can be automated for crypto users through smart contracts. Non-crypto users will have the same functionality as that offered by Pretix
- Ability for teams to grant special services: tickets can be used to claim special discounts and services. As the ticket can be easily verified by any services without going through any centralised trusted 3rd parties, tickets can be used as the integration point for any other services.
- Check-in process: The ticket usher app developed by AlphaWallet team for FIFA and UEFA supports the user to check-in without internet & can be integrated with Pretix
- Quality Experience: The AlphaWallet team’s experience in implementing VIP tickets for FIFA and UEFA on Ethereum, will ensure that the ticket experiences for attendees and organisers will be world-class
- DIP-0 requirements: Yes, will submit a DIP draft soon.
- Interoperability: The solution can be integrated into on-chain, off-chain or hybrid implementations. The exact approach can be designed after understanding the implementation of raffle and auction mechanisms.
Response to Outstanding Questions
- Token Standard: Our preference is to use 721 compatible standards, as most of the infrastructures support 721
- Sybil resistance mechanism: Email
- ZKP and privacy of Ethereum addresses: The Ethereum address is associated with the email through attestation. The ticket is linked with Email in attestation(off-chain, no privacy issue), Email is linked with Ethereum address( off-chain, no privacy issue), Ethereum address can be linked with Ticket(Onchain), can be further improved by applying ZKP in attestation verification
- Cheap transfers and interactions: Ticket sales do not require on-chain transactions unless the user wants to pay using crypto. Majority of ticket usage does not require on-chain transactions. Only when the user wants to transfer or resell the tickets, they or the buyer need to pay a transaction fee. The fees can be further reduced by using xDai or similar side chains, but it will break the Interoperability with other mainnet smart contracts, eg using Devcon tickets as collateral to borrow money.