首页
/ 推荐一款颠覆性的安全操作系统接口——Nuxi CloudABI

推荐一款颠覆性的安全操作系统接口——Nuxi CloudABI

2024-05-23 12:12:45作者:牧宁李

云ABI(CloudABI)虽已停止维护,但它曾经是一项令人惊叹的实验,其理念在今天仍然具有影响力,尤其是对于那些关注软件设计前沿的开发者来说。如果你对安全运行环境和轻量级应用二进制接口感兴趣,那么了解一下Nuxi CloudABI及其相关的云标准C库cloudlibc是值得的。

1、项目介绍

Nuxi CloudABI是一个以能力为基础的安全系统接口,它设计用于类似UNIX的操作系统,旨在提供一个过程只能与其本地创建的资源交互的环境。这意味着只有当进程拥有允许访问特定资源的令牌时,才能执行如文件操作、网络连接等全局资源的控制。这种模式提高了系统的安全性,即使进程中存在漏洞,攻击者也只能影响到该进程本身,而非整个系统。

2、项目技术分析

CloudABI的核心思想是能力型安全,它的设计深受剑桥大学计算机实验室开发的Capsicum框架的影响。相比传统的UNIX ABI,CloudABI精简了许多系统调用,目前只保留了49个,这使得在不同的操作系统上支持CloudABI变得更加容易。同时,配套的cloudlibc是一个基于CloudABI的标准C库,实现了C11和大部分POSIX.1-2008标准,但针对安全性和云计算环境进行了优化。

3、项目及技术应用场景

CloudABI特别适合于集群和云端计算环境,其中进程间的隔离性更强,对外部环境的依赖更小。通过这个接口,可以构建更加安全的服务,比如网络服务器,它可以只访问启动时提供的资源,而无法随意访问其他文件或创建新端口。这种模式降低了系统管理的复杂性,简化了配置,并降低了潜在的安全风险。

4、项目特点

  • 安全优先:删除了可能导致安全问题的函数,如gets()strcpy(),并避免线程不安全的设计。
  • 纯粹的能力型安全:禁止直接访问全局命名空间,鼓励使用如*at()这样的安全接口进行文件系统操作。
  • 面向云计算:删除了一些在云计算环境中意义不大的概念和功能,如用户凭证处理、TTY处理。

虽然CloudABI项目已经不再维护,但其设计理念和实现方式仍可启发我们思考如何构建更安全、更高效的软件运行环境。如果你正在寻找一种创新的安全解决方案,或者想深入理解能力型安全,不妨研究一下这个项目。


最后,值得注意的是,尽管项目已停更,但相关的社区资源如邮件列表和IRC频道仍然可以作为参考和讨论的平台。商业支持方面,Nuxi公司曾为CloudABI提供服务,如有兴趣,可以联系了解详情。

登录后查看全文
热门项目推荐

项目优选

收起
docsdocs
暂无描述
Markdown
827
5.48 K
kernelkernel
openEuler内核是openEuler操作系统的核心,既是系统性能与稳定性的基石,也是连接处理器、设备与服务的桥梁。
C
494
515
ops-nnops-nn
本项目是CANN提供的神经网络类计算算子库,实现网络在NPU上加速计算。
C++
783
1.57 K
pytorchpytorch
作为 Ascend for PyTorch 社区的核心组件,TorchNPU 是昇腾专为 PyTorch 打造的深度学习适配插件,使 PyTorch 框架能够直接调用昇腾 NPU,为开发者提供昇腾 AI 处理器的超强算力。
Python
800
1.14 K
ops-transformerops-transformer
本项目是CANN提供的transformer类大模型算子库,实现网络在NPU上加速计算。
C++
970
2.28 K
kernelkernel
deepin linux kernel
C
32
16
AscendNPU-IRAscendNPU-IR
AscendNPU-IR是基于MLIR(Multi-Level Intermediate Representation)构建的,面向昇腾亲和算子编译时使用的中间表示,提供昇腾完备表达能力,通过编译优化提升昇腾AI处理器计算效率,支持通过生态框架使能昇腾AI处理器与深度调优
C++
480
311
jiuwenswarmjiuwenswarm
JiuwenSwarm 是一款基于openJiuwen开发的智能AI Agent,它能够将大语言模型的强大能力,通过你日常使用的各类通讯应用,直接延伸至你的指尖。
Python
3.01 K
766
cannbot-skillscannbot-skills
CANNBot 是面向 CANN 开发的用于提升开发效率的系列智能体,本仓库为其提供可复用的 Skills 模块。
Markdown
1.26 K
808
cann-learning-hubcann-learning-hub
CANN 学习中心仓,支持在线互动运行、边学边练,提供教程、示例与优化方案,一站式助力昇腾开发者快速上手。
Jupyter Notebook
647
284