Towards System-Oriented Formal Verification of Local-First Access Control
This paper presents a bottom-up approach to the formal verification of access control in Byzantine fault-tolerant, local-first systems by using the Rust-based Verus framework to develop verified semantics and invariants for a capability-based replicated data type.
Original paper licensed under CC BY 4.0 (http://creativecommons.org/licenses/by/4.0/). This is an AI-generated explanation of the paper below. It is not written or endorsed by the authors. For technical accuracy, refer to the original paper. Read full disclaimer
Imagine you and a group of friends are trying to collaborate on a shared digital notebook. However, instead of everyone logging into one giant central server (like Google Docs), everyone has their own private copy of the notebook on their own device. You only sync with each other when you have an internet connection.
This is called "Local-First" software. It’s great because it’s fast and works offline, but it creates a massive headache: How do you control who can edit what if there is no "boss" (central server) watching over everyone?
This paper explores how to use advanced math and computer science to build a "digital security guard" for these decentralized systems that is both unhackable and incredibly smart.
The Problem: The "Chaos in the Group Chat"
In a normal system (like Facebook), if you kick someone out of a group, the central server says, "You're out!" and everyone instantly knows.
In a Local-First system, there is no central server. Imagine a group chat where:
- The Sneaky Friend (Byzantine Faults): One person in the group is acting maliciously. They might try to "backdate" a message, pretending they sent a command yesterday to undo a rule you made today.
- The Time Traveler (Concurrency): Two people do things at the exact same time. Person A grants "Editor" rights to Charlie, but at the exact same moment, Person B revokes Charlie's rights. Because there’s no central clock, different people in the group might see different versions of reality.
Without a strict mathematical plan, the group's "rules" will eventually fall apart, and the notebook will become a mess of conflicting permissions.
The Solution: The "Mathematical Rulebook"
The researchers didn't just write code; they wrote a formal specification. Think of this like writing the laws of physics for a tiny universe. Instead of saying, "Try to make sure only admins can change the name," they wrote a mathematical formula that defines exactly what "admin" and "change" mean in every possible scenario.
They focused on three main "Laws of the Universe":
- Authorization Safety: Once a rule is set in stone (like the group's creation), it shouldn't be able to change randomly.
- Query Safety: If you ask the system, "Who is the admin?", the answer should only change if someone actually performed an authorized action.
- Revocation Safety: If a permission is taken away, it should stay taken away, even if a "sneaky friend" tries to pretend the revocation never happened.
The Tool: The "Super-Powered Microscope" (Verus)
To make sure their code actually followed these laws, they used a tool called Verus.
Think of regular programming like building a house and hoping it doesn't fall down. Using Verus is like building a house inside a high-tech simulator that tests every single atom of the structure against the laws of gravity and wind speed before you ever step inside. If there is even a 0.00001% chance that a "sneaky friend" could break a rule, the simulator (the "Theorem Prover") will scream at the engineers until they fix it.
Why This Matters
The researchers are taking a "bottom-up" approach. They aren't trying to fix the entire internet at once. Instead, they are building a tiny, perfectly verified "building block."
If they can prove that this tiny block is indestructible and follows the rules perfectly, they can eventually stack these blocks together to build massive, secure, decentralized systems—like a decentralized Wikipedia or a super-secure messaging app (like Matrix) that even governments or hospitals can use without ever worrying that a single bad actor can break the rules of the group.
In short: They are building the mathematical blueprints for a world where we can collaborate freely without needing a "Big Brother" server to keep us in line.
Drowning in papers in your field?
Get daily digests of the most novel papers matching your research keywords — with technical summaries, in your language.