Lesson's Progress0 / 6
Access Keys and Permissions
Most commonly, blockchains use a rigid system where every account is linked to a single private key that has complete control over it.
NEAR accounts use a more flexible and secure access key system, allowing accounts to have multiple keys, each with different permission levels.
Full Access Keys
Full Access Keys behave like traditional private keys on other blockchains, meaning they have complete control over the account.
Function Call Keys
Limited permissions for specific smart contracts and operations.
Why This Matters
There are multiple advantages to using multiple access keys with different permissions:
- Key rotation: If one key is compromised, you can replace it without losing your account
- Granular permissions: Different keys can have different levels of access
- Third-party integration: Apps can request limited permissions to your account to do specific tasks for you
Why Function Call Keys?
Imagine you are playing a game that registers your score on the blockchain.
On other protocols this will require you to either share your private key with the game (truly terrible idea), or to sign every single transaction manually.
With NEAR, the game can request a Function Call Key that only allows it call a function to update score on your behalf, nothing else.
This is not what the future of web3 gaming looks like
Quiz
What is the difference between a Full Access Key and a Function Call Key?
A. Full Access Keys are free, Function Call Keys cost money.
B. Full Access Keys have complete control, Function Call Keys have limited permissions for specific contracts.
C. Full Access Keys work on mainnet, Function Call Keys work on testnet.
D. Full Access Keys are for named accounts, Function Call Keys are for implicit accounts.