generator
generator copied to clipboard
Feature idea: QR generator
I've been thinking about the ticketing use case of cardinal-namespaces, and something I think could be really cool is to generate a QR code NFT. I think it'd make sense to use a QR code that just encodes the entryName. This would allow events to distribute a non-transferable, easily scannable NFT that uniquely identifies a participant, and use it for check in/out etc. The use case that made me think about this was Hacker Houses, where scanning the QR code on the wristband shows that it's just encoding some kind of ID.
I think this would require a new feature in cardinal-generator, to support a URL with a request of eg https://nft.cardinal.so/img/7wBU2GDPKtXayMgY3DPasYsnkJtuDwgU1m8siuq1skwg?name=puwzqwnr5f152doldvpuwzq4rpup68pl&qr
This would render a QR code encoding puwzqwnr5f152doldvpuwzq4rpup68pl
hi @mcintyre94 thanks for the suggestion!
Are you envisioning a full QR code image? I am thinking we could potentially add ?qr= puwzqwnr5f152doldvpuwzq4rpup68pl which would render a QR code on the bottom corner of the existing image. I am not sure how much value that has though also given that these images can be easily found on-chain publicly and displayed. 1 option maybe embedding qr={publicKey} and then you have to holder the corresponding private key as well but im not sure the use for that
Are you envisioning a full QR code image? I am thinking we could potentially add
?qr= puwzqwnr5f152doldvpuwzq4rpup68plwhich would render a QR code on the bottom corner of the existing image. I am not sure how much value that has though also given that these images can be easily found on-chain publicly and displayed. 1 option maybe embeddingqr={publicKey}and then you have to holder the corresponding private key as well but im not sure the use for that
I like the idea of overlaying a QR code! I think this could make more sense than text for any case where it's meant to be an ID rather than a username - scanning a QR code is easier than reading many strings. It is true though that the QR code could be found and displayed, so maybe it wouldn't really work. Ticketing was a use case mentioned in Cardinal Namespaces docs, how were you thinking that'd work more generally while avoiding the problem of copies?
Ticketing was a use case mentioned in Cardinal Namespaces docs, how were you thinking that'd work more generally while avoiding the problem of copies?
How ticketing works is by representing the ticket as a real NFT, not a QR code. Then if you want to asset ownership you sign a message with your private key, which includes a timestamp in it among a few other fields, and then the scanner looks up that holders publicKey on-chain directly and checks if they do in fact hold the token they say they own
so we view the scanning as a separate functionality that is a sort of component for verifying NFT ownership. This can be used to do ticketing since you have a list of mints, or a collection accepted by the given scanner. And new scanners can be made. And how it works with namespaces is you basically create a scanner that accepts all tokens from that namespaces collection, but the scanner could still be used separately with any other set of NFTs. We plan to open source the whole scanner components shortly its mostly just the UI components for generating the scanner QR codes along with a library for this signed token
https://twitter.com/cardinal_labs/status/1541208948723916800?s=20&t=OZ4a28AKzwSbRe8mHmcZow