Autonomy and decentralization: the nodes collectively form the system without any central coordination. Fault tolerance: the system should be reliable (in some sense) even with nodes continuously joining, leaving, and failing .[10] Scalability: the system should function efficiently even with thousands or millions of nodes.