Permits

Query Permits

Query permits are an alternative querying method introduced in the SNIP-24 design specification. Query permits use of a cryptographic technique known as public-key encryption coupled with digital signatures.

A permit is a formatted message, it outlines several arguments such as what tokens the permit applies to and what permissions the permit should allow (e.g. should the permit allow the querier to view a userโ€™s transaction history, balance, etc.). Permits are not saved in the smart contract state and do not require the initiation of a blockchain transaction. Therefore, permits are a less permanent way of gaining viewing access with less network strain.

Signing Permits

Users can sign permits with their accountโ€™s private key to give certain dApps or parties viewing access to specific parts of their private data for a specified amount of time. To get viewing access a user sends a query, with the signed permit as an argument, to a smart contract. Once received, the smart contract, using the userโ€™s public key, can validate the identity based on the signature the user provided. If the userโ€™s identity is confirmed, the smart contract returns the data as requested.

For more information on Permits check out the permissioned viewing section under development or the SNIP-24 specification

Last updated