Conflict-free replicated data types (CRDTs) and the local-first concept are increasingly employed not only in small-scale collaboration systems among few users who trust each other, but also in large-scale systems, like Matrix for instant messaging and Keyhive for collaborative documents. Since mutual trust is no longer warranted, these systems require Byzantine fault tolerance and fine-grained access control. As of today, Matrix and Keyhive pair an informal specification with an unverified reference implementation. In this work, we follow a bottom-up approach towards constructing formally verified authorization algorithms for Byzantine fault-tolerant local-first systems. As intermediate target for formal verification, we contribute semantics and invariants of a replicated data type for managing simplified collaboration groups, based on capabilities for access control and hash chronicles for replication. To enable future integration into local-first systems like Matrix and Keyhive, we strive for accessibility to system engineers by using the Rust programming language for formal specification, verification, and implementation, enabled by the Verus framework using the Z3 theorem prover at zero runtime cost. We report on our experience and preliminary results following this approach, and discuss next steps towards scaling up access control expressiveness. Whether this approach can be scaled up to the complexity of real-world local-first access control systems like Matrix or Keyhive remains future work, but our findings demonstrate the potential of system-oriented formal verification with Verus.


翻译:冲突自由复制数据类型(CRDTs)和本地优先概念不仅越来越多地应用于少数互信用户间的小规模协作系统,还被用于大规模系统,例如即时通讯领域的Matrix和协作文档领域的Keyhive。由于互信不再有保障,这些系统需要拜占庭容错和细粒度访问控制。目前,Matrix和Keyhive均采用非形式化规范与未经验证的参考实现相结合的方式。本研究遵循自底向上的方法,为拜占庭容错本地优先系统构建形式化验证的授权算法。作为形式化验证的中间目标,我们贡献了管理简化协作组的复制数据类型的语义与不变量,该数据类型基于能力进行访问控制,并利用哈希链实现复制。为便于未来集成至Matrix和Keyhive等本地优先系统,我们力求面向系统工程师的可达性:使用Rust编程语言进行形式化规范、验证与实现,并借助Verus框架(基于Z3定理证明器)实现零运行时开销。我们报告了采用此方法的经验与初步结果,并讨论了提升访问控制表达力的下一步工作。该方案能否扩展到Matrix或Keyhive等真实世界本地优先访问控制系统的复杂度仍有待未来研究,但我们的发现证明了采用Verus进行系统导向形式化验证的潜力。

0
下载
关闭预览

相关内容

《软件定义网络元素与机器代码的形式化验证》
专知会员服务
13+阅读 · 2025年11月18日
生成先验的信号恢复
专知会员服务
22+阅读 · 2023年1月5日
智能合约的形式化验证方法研究综述
专知
16+阅读 · 2021年5月8日
推荐|上交大推出Texygen:文本生成模型的基准测试平台
国家自然科学基金
2+阅读 · 2017年12月31日
国家自然科学基金
0+阅读 · 2017年12月31日
国家自然科学基金
1+阅读 · 2015年12月31日
国家自然科学基金
0+阅读 · 2015年12月31日
国家自然科学基金
3+阅读 · 2015年12月31日
国家自然科学基金
2+阅读 · 2015年12月31日
国家自然科学基金
0+阅读 · 2015年12月31日
国家自然科学基金
0+阅读 · 2014年12月31日
国家自然科学基金
0+阅读 · 2014年12月31日
VIP会员
最新内容
BES:让语言模型通过双向进化搜索自我改进
专知会员服务
0+阅读 · 18分钟前
以色列-美国-伊朗战争中的无人机:关键要点
专知会员服务
3+阅读 · 今天14:04
《Palantir任务保障性软件安全标准(MA-S2)》
专知会员服务
6+阅读 · 今天13:49
基于声学的无人机检测技术综述
专知会员服务
5+阅读 · 今天13:37
《当代混合战争分析框架:俄乌战争经验教训》
专知会员服务
5+阅读 · 今天13:11
战略前沿人工智能的再思考(中文)
专知会员服务
7+阅读 · 5月29日
《量化地基防空系统间接效应的博弈论方法》
专知会员服务
5+阅读 · 5月29日
相关VIP内容
《软件定义网络元素与机器代码的形式化验证》
专知会员服务
13+阅读 · 2025年11月18日
生成先验的信号恢复
专知会员服务
22+阅读 · 2023年1月5日
相关基金
国家自然科学基金
2+阅读 · 2017年12月31日
国家自然科学基金
0+阅读 · 2017年12月31日
国家自然科学基金
1+阅读 · 2015年12月31日
国家自然科学基金
0+阅读 · 2015年12月31日
国家自然科学基金
3+阅读 · 2015年12月31日
国家自然科学基金
2+阅读 · 2015年12月31日
国家自然科学基金
0+阅读 · 2015年12月31日
国家自然科学基金
0+阅读 · 2014年12月31日
国家自然科学基金
0+阅读 · 2014年12月31日
Top
微信扫码咨询专知VIP会员