写点什么

Arm 和 Docker 合作推出与平台无关的安全系统 API

  • 2019-10-25
  • 本文字数:2029 字

    阅读完需:约 7 分钟

Arm和Docker合作推出与平台无关的安全系统API

在 Arm 和 Docker 的支持下,PARSEC(Platform AbstRaction for SECurity)定义了一个通用的软件标准来处理对象存储和加密服务的安全性问题。该计划重点关注由容器化服务组成的现代系统架构,并努力让多种语言能够更容易地使用安全技术。


PARSEC 用各种流行的编程语言建立了一个面向开发人员的库生态系统。每个库都高度符合工效学标准,并且易于使用。这个不断增长的生态系统让基础设施计算、边缘计算和安全物联网等广泛用例的安全措施变得唾手可得。


PARSEC 承诺将会覆盖到安全系统的所有方面,包括密钥的提供和管理、散列、签名、非对称和对称加密、熵,等等。它的核心组件是一个用 Rust 编写的安全服务,它运行在主机上,并通过原生安全措施提供连接性。这就为那些对底层主机硬件设施一无所知,也没有足够特权来使用它们的客户端提供了访问安全设施的可能性。


分层架构确保了 PARSEC 服务的可扩展性,分层架构支持集成安全程序,安全程序可以是通用的,也可以是供应商提供的。外部客户端可以通过公共前端层访问安全程序,这个层负责处理连线协议和公共 API,以及所有序列化和反序列化工作。


为了了解更多信息,InfoQ 采访了 Docker 和 PARSEC 安全主管 Justin Cormack。


InfoQ:你能介绍一下 Parsec 是何时以及如何诞生的吗?它的主要目标是什么?它的目标是如何实现的?


Justin Cormack:Docker 和 Arm 合作已经有一段时间了,在 4 月份的 DockerCon 大会上,他们宣布将致力于为云计算、边缘计算和物联网提供一个通用的软件管道。我们正在探索一个我们共同感兴趣的领域,包括硬件密钥管理和密码学。从 Docker 的角度来看,很明显,一段时间以来,在安全方面处于领先地位的客户,如金融服务公司和政府,都有一个长期的目标,即所有加密和签名私钥都应该存储在硬件中。这样,即使在发生主机泄露的情况下,私钥也不会被窃取。最糟糕的情况是,它们可能在泄露期间被使用。此外,随着边缘应用程序越来越多地采用 Docker,这种安全性甚至变得比数据中心和云应用程序的安全性更为重要。没有了服务器的物理安全保护,硬件安全机制对于防止篡改和本地攻击来说就变得至关重要。这就是为什么我们要和 Arm 合作开发 Parsec,一种用于硬件安全的通用 API。


InfoQ:Parsec 希望如何改善开源软件的安全状况?


Cormack:我们正在努力解决两个问题。

首先,不同类型的硬件密钥之间几乎没有标准化的 API。TPM、苹果和 Android 有自己的 API,每个制造商有不同的 HSM API,而云提供商也有不同的远程 HSM API。我们正在设计一个通用的 API,基于 Arm PSA API(一个现代密码软件套件)。我们也考虑了其他方案,但我们更喜欢这个 API,因为它不包含遗留的加密操作,并且公开了一组合理的高级接口。此外,我们将进一步对其进行抽象,提供更通用的操作。在集成到硬件中之后,将提供一组受限的操作,你可以要求“使用 TLS 1.3 可接受的签名密钥”或类似的问题,实现可以很灵活,而不是只能“使用 RSA 密钥”。在项目中使用硬件密钥会更容易,不需要为特定的硬件和算法编写代码。

第二个问题是,硬件密钥管理没有为多客户端(如节点上的多个容器)提供多路密钥存储功能。我们可以假设这样一种情况,即单个服务拥有整个 TPM 或 HSM,或者可能提供了一些机制,但是不同的机制之间是不一样的。共享很可能不安全,因为客户端可能会访问到错误的密钥。因此,我们添加了一组通用的共享机制,其中包含了一个 Parsec 守护进程,对多个进程进行身份验证,并提供 API。我们计划重用 SPIFFE 协议(一个 CNCF 项目)的工作成果来进行认证和分发客户端证书。


InfoQ:目前有哪些组织在支持它?


Cormack:目前是 Arm 和 Docker 在合作这个项目。将其开放的目的是希望让其他感兴趣的组织能够更容易地参与进来,我们目前正在与其他可能感兴趣的组织进行交涉。我们欢迎所有愿意合作的组织。


InfoQ:你为什么选择 Rust 呢?使用 Rust 开发这类软件的总体经验是怎样的?


Cormack:Rust 与安全相关的项目越来越多,与密码应用程序有关的社区也在不断增长。作为一名安全工程师,我看到越来越多的安全项目选择 Rust。我们需要的是能够与其他语言交互、安全且可靠的东西。Rust 和 Go 语言是主要的候选语言,而 Rust 胜出了。这是 Docker 使用 Rust 开发的第一个项目,尽管我们在过去曾经讨论过其他一些适合的东西。我们目前正在开发 Rust 和 Go 语言客户端库,并计划在未来增加更多语言版本。


InfoQ:Parsec 目前的状态是怎样的?你如何看待它未来的发展?


Cormack:我们非常早就发布了这个项目,到目前为止,我们做的很多工作都是设计而不是编码,但已经有足够完整的原型来做一些演示和演示大部分架构。但它还处于非常早期的阶段,还不能提供给任何人使用,除了那些有兴趣参与贡献的人。我们将致力于将其集成到其他项目中,稳定客户端库,并添加新的后端,如 TPM。公开做这些事情应该也会鼓舞到其他贡献者。


PARSEC 核心服务可以很容易在Linux上构建和安装


原文链接


PARSEC Is a New Platform-Agnostic API for Secure Systems


2019-10-25 08:001564

评论

发布
暂无评论
发现更多内容

FIL分币平台系统源码/FIL分币平台搭建

Geek_23f0c3

Filecoin fil挖矿

补齐AI人才短板!百度飞桨师资培训高校行走进天津大学

百度大脑

人工智能 飞桨

拼拼有礼系统软件开发案例介绍

開發15347427695

应届生如何拿到高薪和职业方向

hanaper

编程 程序员 音视频 软件工程师 应届生

工作中如何使用GULP构建项目?

加百利

JavaScript 大前端 8月日更 gulp

大数据训练营hive作业

Clarke

互联网通信云崛起的“融云曲线”

融云 RongCloud

3000人群被字节内部技术图谱“炸”翻了,惊艳级实用

Java架构师迁哥

如何用Camtasia进行内容补充?

淋雨

Camtasia

ONES x 知名游戏公司 | 持续快速交付高质量游戏产品

万事ONES

研发管理 解决方案

Linux进程调度-CFS调度器原理分析及实现,懂了

Linux服务器开发

Linux服务器开发 Linux内核 Linux后台开发 CFS调度器 Linux进程调度

详解Guitar Pro的自动化编辑器之节拍自动化

懒得勤快

请珍惜每一次被 Code Review 的机会

escray

学习 极客时间 朱赟的技术管理课 8月日更

容器和虚拟机水火不容?不存在的!

谐云

FastApi-03-查询参数

Python研究所

FastApi 8月日更

Kali Linux --《网络安全》-- 使用 WireShark 对常用协议抓包并分析原理

学神来啦

安全攻防 网络安全 信息安全 Wireshark

下午4点半,浪潮云说直播间精彩继续

云计算

拼拼有礼模式系统开发详解APP

開發15347427695

驶向未来之海的“必备罗盘”:百度智能云升级发布全新智能化中台

百度大脑

人工智能 企业服务

NLP随笔(一)

毛显新

人工智能 自然语言处理 深度学习

业界良心啊!第五次更新的Spring Cloud Alibaba升级太多内容

Java架构追梦

Java 阿里巴巴 架构 SpringCloud Java技术提升

ApacheCon Asia 2021: Apache APISIX 技术议题一览

API7.ai 技术团队

Apache 开源 网关 APISIX

NLP随笔(二)

毛显新

人工智能 自然语言处理 深度学习

阿里高工从入门,基础,进阶到项目实战,全面讲解spring boot

Java 程序员 架构 面试 spring Boot Starter

WICC 2021 技术分论坛 “开箱即用”语聊房Demo成亮点

融云 RongCloud

微前端在平台级管理系统中的最佳实践

中原银行

Android技术分享| 实现视频连麦直播

anyRTC开发者

android 音视频 移动开发 视频直播 视频连麦

AI系统中的偏差与偏见

百度开发者中心

AI 最佳实践 方法论 系统开发 语言 & 开发

ClickHouse存储原理初窥

循环智能

性能优化 OLAP Clickhouse

Java程序员面试需要准备的一些东西

北游学Java

Java 面试

FIL挖矿分币系统搭建(现有源码)

Geek_23f0c3

Filecoin fil FIL分币系统

Arm和Docker合作推出与平台无关的安全系统API_开源_Sergio De Simone_InfoQ精选文章