墙裂推荐!云上机密计算,阿里云上体验了一下海光内存加密和远程认证

本文主要是介绍墙裂推荐!云上机密计算,阿里云上体验了一下海光内存加密和远程认证,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!


🌹作者主页:青花锁 🌹简介:Java领域优质创作者🏆、Java微服务架构公号作者😄

🌹简历模板、学习资料、面试题库、技术互助

🌹文末获取联系方式 📝

在这里插入图片描述


机密计算目录

  • 前言
  • 1、构建CSV机密计算环境
  • 2、检查CSV使能状态
    • 2.1、检查CSV使能状态
    • 2.2、检查CSV相关驱动安装情况
  • 3、跑测试程序
  • 4、远程认证功能
    • 4.1、下载阿里云提供的远程证明样例工具
    • 4.2、为本机生成远程证明报告
    • 4.3、验证远程证明报告
    • 4.4、生成指定UserData的远程证明报告
  • 总结

前言

机密计算是最近几年非常热门的技术,采用加密、隔离等技术保护CPU使用中的数据,配合传输加密和存储加密技术,能够实现数据全流程安全保护。一言以蔽之,都是为了安全可靠。
在这里插入图片描述
目前,主流的CPU厂商都推出了自家的机密计算技术,国产的海光CPU在机密计算支持上做的是比较好的,阿里云上已经支持。今天花十分钟在阿里云上体验了一下CSV内存加密和远程认证,确实是不错,以后云上的数据安全算是有保证了,下面简单说一下体验过程。

1、构建CSV机密计算环境

首先在阿里云的官网手册上找到“[构建CSV机密计算环境]”,按照手册上的步骤创建CSV实例。
在这里插入图片描述

这里只是体验一下,选择“按量付费”比较划算。
在这里插入图片描述
选择实例时,处理器选择“Hygon”,规格选择“ecs.g7h.2xlarge”。
在这里插入图片描述
镜像选择“Alibaba Cloud Linux”,并且要勾选“机密虚拟机”。
在这里插入图片描述
其他选项用默认值,就可以创建一台CSV机密虚拟机实例了。
接下来用创建的实例体验一下CSV内存加密和远程认证功能。

2、检查CSV使能状态

我们在使用CSV加密计算环境前,先检查对应实例的CSV使能状态,以确保对应实例处于安全保护中。

2.1、检查CSV使能状态

通过访问CSV_STATUS(0xC0010131)来检查CSV功能是否开启,该MSR为只读且访问行为无法被Hypervisor拦截,可以在命令行下直接执行。

sudo yum install msr-tools

在这里插入图片描述
在这里插入图片描述

继续执行rdmsr 0xC0010131 ,可以看到有一个CPU支持内存加密。

sudo rdmsr 0xC0010131 --bitfield 1:0

在这里插入图片描述

2.2、检查CSV相关驱动安装情况

sudo modprobe csv-guest
ls -l /dev/csv-guest

下图表示已经安装CSV相关驱动。
在这里插入图片描述

3、跑测试程序

内存加密功能,CSV虚拟机在读写内存时,CPU会自动对内存数据进行加解密,数据加密之后才写入到内存中。

参考龙蜥社区上的测试手册,跑一下测试程序。
在这里插入图片描述

可以看到原始数据和加密之后的数据。
在这里插入图片描述

4、远程认证功能

接下来再测试一下远程认证功能,CSV虚拟机可以生成远程认证报告,报告用每颗芯片独有的芯片密钥签名,用对应的芯片证书对认证报告验签,就可以认证CSV虚拟机的身份。参考阿里云上的测试手册,跑一下测试程序。
在这里插入图片描述

4.1、下载阿里云提供的远程证明样例工具

下载样例工具,可提前检查Python环境。

wget https://enclave-cn-hangzhou.oss-cn-hangzhou.aliyuncs.com/csv/requirements.txt

在这里插入图片描述

wget https://enclave-cn-hangzhou.oss-cn-hangzhou.aliyuncs.com/csv/csv-attestation.py

在这里插入图片描述

sudo pip3 install -r requirements.txt
chmod +x ./csv-attestation.py

在这里插入图片描述
给py程序授予读写权限

chmod +x ./csv-attestation.py

在这里插入图片描述

4.2、为本机生成远程证明报告

sudo ./csv-attestation.py generate -r ./

返回如下结果,代表远程证明报告已被下载下来。
在这里插入图片描述

4.3、验证远程证明报告

sudo ./csv-attestation.py verify -r ./report

执行的样例结果如下,POLICY中的NODEBUG表示当前CSV实例处于非调试状态,NOKS表示虚拟机的加密密钥为当前实例独享,即处于安全的受保护模式。
在这里插入图片描述

4.4、生成指定UserData的远程证明报告

生成远程证明报告时,你可以通过指定UserData,从而生成期望的远程证明报告。

sudo ./csv-attestation.py generate -r ./ -u your-data-like-pubkey-digest

在这里插入图片描述

总结

最后给CSV虚拟机的数据保护功能种个草,安全性、稳定性都不错,起码再也不用担心云上的数据被偷或者被改了。墙裂推荐给业内小伙伴!

这篇关于墙裂推荐!云上机密计算,阿里云上体验了一下海光内存加密和远程认证的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1094608

相关文章

MySQL 内存使用率常用分析语句

《MySQL内存使用率常用分析语句》用户整理了MySQL内存占用过高的分析方法,涵盖操作系统层确认及数据库层bufferpool、内存模块差值、线程状态、performance_schema性能数据... 目录一、 OS层二、 DB层1. 全局情况2. 内存占js用详情最近连续遇到mysql内存占用过高导致

最新Spring Security的基于内存用户认证方式

《最新SpringSecurity的基于内存用户认证方式》本文讲解SpringSecurity内存认证配置,适用于开发、测试等场景,通过代码创建用户及权限管理,支持密码加密,虽简单但不持久化,生产环... 目录1. 前言2. 因何选择内存认证?3. 基础配置实战❶ 创建Spring Security配置文件

java内存泄漏排查过程及解决

《java内存泄漏排查过程及解决》公司某服务内存持续增长,疑似内存泄漏,未触发OOM,排查方法包括检查JVM配置、分析GC执行状态、导出堆内存快照并用IDEAProfiler工具定位大对象及代码... 目录内存泄漏内存问题排查1.查看JVM内存配置2.分析gc是否正常执行3.导出 dump 各种工具分析4.

使用zip4j实现Java中的ZIP文件加密压缩的操作方法

《使用zip4j实现Java中的ZIP文件加密压缩的操作方法》本文介绍如何通过Maven集成zip4j1.3.2库创建带密码保护的ZIP文件,涵盖依赖配置、代码示例及加密原理,确保数据安全性,感兴趣的... 目录1. zip4j库介绍和版本1.1 zip4j库概述1.2 zip4j的版本演变1.3 zip4

Spring Boot spring-boot-maven-plugin 参数配置详解(最新推荐)

《SpringBootspring-boot-maven-plugin参数配置详解(最新推荐)》文章介绍了SpringBootMaven插件的5个核心目标(repackage、run、start... 目录一 spring-boot-maven-plugin 插件的5个Goals二 应用场景1 重新打包应用

Knife4j+Axios+Redis前后端分离架构下的 API 管理与会话方案(最新推荐)

《Knife4j+Axios+Redis前后端分离架构下的API管理与会话方案(最新推荐)》本文主要介绍了Swagger与Knife4j的配置要点、前后端对接方法以及分布式Session实现原理,... 目录一、Swagger 与 Knife4j 的深度理解及配置要点Knife4j 配置关键要点1.Spri

SpringBoot中SM2公钥加密、私钥解密的实现示例详解

《SpringBoot中SM2公钥加密、私钥解密的实现示例详解》本文介绍了如何在SpringBoot项目中实现SM2公钥加密和私钥解密的功能,通过使用Hutool库和BouncyCastle依赖,简化... 目录一、前言1、加密信息(示例)2、加密结果(示例)二、实现代码1、yml文件配置2、创建SM2工具

怎样通过分析GC日志来定位Java进程的内存问题

《怎样通过分析GC日志来定位Java进程的内存问题》:本文主要介绍怎样通过分析GC日志来定位Java进程的内存问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录一、GC 日志基础配置1. 启用详细 GC 日志2. 不同收集器的日志格式二、关键指标与分析维度1.

Python实现对阿里云OSS对象存储的操作详解

《Python实现对阿里云OSS对象存储的操作详解》这篇文章主要为大家详细介绍了Python实现对阿里云OSS对象存储的操作相关知识,包括连接,上传,下载,列举等功能,感兴趣的小伙伴可以了解下... 目录一、直接使用代码二、详细使用1. 环境准备2. 初始化配置3. bucket配置创建4. 文件上传到os

Qt QCustomPlot库简介(最新推荐)

《QtQCustomPlot库简介(最新推荐)》QCustomPlot是一款基于Qt的高性能C++绘图库,专为二维数据可视化设计,它具有轻量级、实时处理百万级数据和多图层支持等特点,适用于科学计算、... 目录核心特性概览核心组件解析1.绘图核心 (QCustomPlot类)2.数据容器 (QCPDataC