1. Trust Minimization: To reduce the reliance on trusted third parties for entering, processing and finalizing transactions and smart contracts.
2. Immutability: Accounts, balances and smart contracts cannot be modified except by holders of corresponding private keys by entering transactions according to protocol rules.
3. Fungibility: Native tokens must all be the same and interchangeable globally.
4. Finality: Transactions and executed smart contract code cannot be reversed once entered, processed and finalized according to protocol rules.
5. Censorship resistance: As long as they are compliant with protocol rules, transactions or smart contracts cannot be prevented from being entered, processed and finalized.
6. Permissionlessness: As long as they are compliant with protocol rules, anyone from any place in the world can create accounts, enter transactions and smart contracts, or participate in the network as a competent developer, miner, validator, node operator, user, or any other prescribed participant or stakeholder.
7. Auditability: Transaction and smart contract history must be analyzable and reconcilable by anyone or by holders of corresponding private keys.
8. Reconcilability: Transaction and smart contract history must match mathematically to the latest and all future states according to protocol rules.
9. Least authority: Developers, miners, validators, node operators, users, and all other prescribed participants and stakeholders must limit their participation to practicing only the functions of their roles in accordance with protocol rules and these common principles.
10. Adherence: Developers, miners, validators, node operators, users, and all other participants and stakeholders must make sure they collectively decide and implement future changes to the protocol in accordance with these common principles.
Code Is Law