SSD作为一种数据存储设备,其数据存储的安全性至关重要,为保障数据不被窃取或篡改,往往会对数据进行加密处理,本文将对数据加密技术展开讨论。

数据加密的实现方式主要分为主机端加密与盘内加密。

一、主机端加密

主机端加密即盘外加密,分为软件加密、安全认证、硬件加密。

1、软件加密一般有微软的Bitlocker和Chinasec,Bitlocker是VISTA操作系统自带的计算机本地磁盘加密工具,通过加密硬盘上的所有内容来增强安全性(数据、程序甚至Windows本身);Chinasec则是基于网络和数据的安全管理产品,通过认证、加密、监控和追踪等手段在传统PC终端和移动终端提供系统数据保护、文档加密等整体解决方案。

2、安全认证最常见的就是用户设置Windows登录密码,系统通过密码来辨认用户的身份,从而保障电脑内数据的安全性。

3、硬件加密则是TPM,属于硬加密模板,通过在设备中集成的专用安全硬件来处理设备中的加密密钥,RSA/AES/SHA等加密算法在里面,不少笔记本都会带一个TPM贴片模块,可实现数据加密、密码保护等安全功能,应用性能优于以上两种。

二、盘内加密技术

盘内加密技术分为:对称加密与非对称加密、ATA security、TCG、隐藏分区5种加密方法。

1、对称加密:是指在加密和解密时使用同一密钥,是一种可逆的加密方式。

目前主流的对称加密算法有以下几种:

·DES算法加密流程:整个过程就是将明文按照64比特为一组经过DES加密生成密文,同样将密文按照64比特为一组,连续多组的密文可以通过解密密钥再还原对应的明文。

·3DES算法加密流程:字面上看就是经过三次DES加密的过程,是DES的加强版。

·AES算法加密流程:因此流程较为复杂不做过多展开,大致流程为输入的明文数据会逐字节的去替换,替换完成后再平移,平移完成后再做混合列的N轮迭代,最后进行异或运算生成密文。解密则是反向操作。

·SM4算法加密流程:SM4是一种分组密码算法,其分组长度为128位(即16字节,4字),密钥长度也为128位(即16字节,4字)。其加解密过程采用了32轮迭代机制(与DES、AES类似),每一轮需要一个轮密钥(与DES、AES类似),以及1次反序变换。

2、非对称加密:特点为密文无法反推倒出明文,属于不可逆的流程。

主流非对称加密算法:

·非对称加密算法(消息摘要)-MD5/SHA:用于文件校验、文件的数字签名(保障原始明文在数据传输与明文传输过程中的正确性),文件内容可以是明文。如图所示是无法从摘要推倒出原文的,经常用于网络上的文件传输校验。

·非对称加密算法-RSA:分两个例子来说明。

举例1:公司A要发布一个公众文件(如驱动),生成了公钥和私钥,首先用私钥进行加密签名,以此来证明产品归公司A所有并以此证明产品安全合法,用户下载驱动文件后可用公钥解验签后(类似微软会提示这是一个驱动是否是合法的签名驱动)进行正常使用。

私钥用于签名、公钥用于验签

实际上微软应用程序的数字签名,比图示中的流程更为复杂,因为公私钥的生成证书需要第三方机构颁发以做证明,自己不得随便生成。

举例2:A/B/C要各自发私信给O,但又不想各自的信息给其它两人看见,就用O给他们的公钥加密,由于其它两人没有私钥无法解密,只能O看见A的高密。

公钥用于加密、私钥用于解密,可起到加密的作用

3、加密算法的应用

在非对称加密算法中可以正向的用私钥去发布签名,然后让大家验证,反过来每个人也可以用公钥来对文件进行加密,但在SSD应用过程中没有可以反向操作的过程。

·SSD中加密算法的应用

在SSD内部有一个AES硬件模块,用于主机数据或内部数据的加解密,它的Key由SSD的固件来管理,保存在NAND上或SOC内部的OTP区域,根据IEEE 1667规范,这种SSD内部有加密模块称之为SED(Self-encrypting) SSD,其它的则非Non-SED SSD。

在不同的实现情况下,有的SOC会把AES模块放在前端进行加密,有的会把AES放在后端进行加密。

4、ATA security(安全认证)

前文描述的都是加密算法,在更上一层如系统应用层则需要密钥管理、账号登录等安全机制来认证。

ATA(AT Attachment),是一个很久远的标准,定义了一组存储命令接口,用于存储设备(SSD/HDD)的访问。

ATA security feature:它类似Windows访问密码的概念,访问密码输入正确后整个SSD的空间都可以被读写,否则SSD会拒绝主机的读写请求或其他特殊的应用请求,以此保证SSD能在安全的环境下使用。

ATA Security有两个密码:

·User password:用于限制SSD的访问,包括一些控制命令和数据读写命令,一般BIOS登录解密要求输入的密码即User password来解锁SSD。

·Master password:管理员密码,仅用于解除User Password而并不会锁住硬盘;Master password不会使能SSD的security。

Security state简图

Security erase(安全擦除)方式:

1. Normal erase(普通擦除);

2. Enhance erase (增强擦除)。

有AES和没有AES的差异

5、TCG(安全认证+数据加密)

TCG(Trusted Computing Group)中文名为可信计算组织,最初是由AMD、HP、IBM、Intel、Microsoft建立,旨在建立个人电脑的可信计算概念。它不仅是一个硬盘加密方式,更是一个IT生态,融合了网络、存储、加密硬件模块、基础平台、软件等。

涉及到信息安全,在中国同样也有可信计算组织(TCMU)来保障国内的信息安全技术,由高等院校、知名厂商等建立。

在TCG中与SSD相关的TCG部分则是TCG Storage协议。

如图中所示,在SSD上方有两块SP:Admin SP和Locking SP,Admin SP类似管理员权限集,只有一些管理功能,不负责SSD的逻辑空间的分配或决策;Locking SP即SSD访问空间管理。

TCG Storage是把前面介绍的加密技术都融合了进来,对SSD进行授权管理以及数据安全管理。

其中最主要的是Admin SP,用于密码管理,使能/禁止Locking SP,恢复出厂设置等,Admin SP不直接对SSD的数据空间进行管理,一般用于密码管理,多达几十种。

Locking SP除了基本管理之外,还对数据空间进行管理,如空间分区,每个分区的加密,分区独立锁等,同时也有访问密码的管理。

6、隐藏分区

·TCG MBR shadow

此MBR不是OS中的Master boot record,TCG中的MBR与User空间是重叠的,同一时间内只有一个对Host可见,在SSD没有被完全授权前,真实的User数据空间是无法被访问的,对Host显示的仅为一小块空间,这里面存放一些Preboot的认证程序、数据,认证通过后会切换到真实的User数据空间。

·Shadow area:

在SSD的物理空间里面额外开辟一块区域,在没有获得授权认证时,Host不可见,反之对Host可见。通常用于存放主机厂商的一些数据,用于备份、恢复主机厂商所需的一些数据,相较于TCG会牺牲一些用户的物理存储容量。

随着《中华人民共和国数据安全法》的正式实施,数据安全已上升至国家战略高度,而数据存储作为数据安全中的关键一环,对国家信息安全建设、数字化建设起着至关重要的作用。

作为领先的国产SSD厂商,忆联SSD产品支持目前业界所有标准的加密算法,并包含国密。相关加密算法不仅仅包含了对用户数据的加密,也涵盖了产品固件包的签名发布,以保障固件发布后不会被恶意篡改,从而进一步确保SSD产品安全性。目前,忆联SSD产品使用的加密技术已处于业界领先水平,可为数据搭建起坚实的安全屏障。

数据存储|信息安全技术在SSD中的应用分享相关推荐

  1. Hive数据导入——数据存储在Hadoop分布式文件系统中,往Hive表里面导入数据只是简单的将数据移动到表所在的目录中!...

    转自:http://blog.csdn.net/lifuxiangcaohui/article/details/40588929 Hive是基于Hadoop分布式文件系统的,它的数据存储在Hadoop ...

  2. android模拟器运行 数据存储位置,查看android 模拟器中db(数据库)文件

    大家好,这是我第一次发表技术文章了.各位大师请见谅哈. 进入正题了-- 首先,你得先运行起你的android 模拟器哦. 然后打开windows 中cmd控制台 输入adb shell 效果如图效果1 ...

  3. hbase在zk上的znode数据存储信息

    表格太大放不下,只能做好截图了: 补充内容:flush memstore写操作的流程 prepare阶段:遍历当前Region中的所有Memstore,将Memstore中当前数据集kvset做一个快 ...

  4. 使用python将数据存储在txt文档中

    利用open()函数打开想要写入数据的文件,具体使用代码为: txt = open('文件名', 'a+') # a+ 的意思是如果文件不存在就创建,如果文件存在就在文件内容的后面追加 print(' ...

  5. MySQL存储用户点赞的信息_点赞数据存储方法及设备与流程

    本申请涉及互联网技术领域,尤其涉及一种点赞数据存储方法及设备. 背景技术: 为了增加用户的互动性,许多社交平台为用户提供了投票/点赞,或反对/踩的功能.例如,在网络直播平台上,为了使用户和主播具有良性 ...

  6. Kotlin中的数据存储

    数据存储 1 持久化技术简介 数据持久化就是指将那些内存中的瞬时数据保存到存储设备中,保证即使在手机或计算机关机的情况下,这些数据仍然不会丢失. 保存在内存中的数据是处于瞬时状态的,而保存在存储设备中 ...

  7. 《崔庆才Python3网络爬虫开发实战教程》学习笔记(5):将爬虫爬取到的数据存储到TXT,Word,Excel,Json等文件中

    本篇博文是自己在学习崔庆才的<Python3网络爬虫开发实战教程>的学习笔记系列,此套教程共5章,加起来共有34节课,内容非常详细丰富!如果你也要这套视频教程的话,关注我公众号[小众技术] ...

  8. 一文读懂十大数据存储加密技术

    数据作为新的生产要素,其蕴含的价值日益凸显,而安全问题却愈发突出.密码技术,是实现数据安全最经济.最有效.最可靠的手段,对数据进行加密,并结合有效的密钥保护手段,可在开放环境中实现对数据的强访问控制, ...

  9. 《保护我们的数字遗产:DNA数据存储》白皮书发布

    编者按: 2020年10月,Twist Bioscience.Illumina.Western Digital(西部数据).微软研究院等公司和机构联合成立DNA数据存储联盟(DNA data stor ...

最新文章

  1. 未来几年自动驾驶预测(下)
  2. 数据导出为Excel(未完)
  3. 前端校招准备--HTTP相关面试题总结
  4. GPU代码修改成TPU代码
  5. 【TensorFlow-windows】TensorBoard可视化
  6. Nacos(一)之简介
  7. [SDOI2007] 单词接龙游戏 dp
  8. 面试中 项目遇见的难点答案_5月6日周一晚八点CCtalk直播2019年江苏省考公务员面试冲刺类型题难点解析突破举一反三...
  9. PAT 乙级 1039. 到底买不买(20)Java版
  10. MySQL之终端(Terminal)管理MySQL
  11. 语法错误: leftparen 应在 colon 之前
  12. 如何使用键盘快捷键在Mac上录制屏幕?
  13. 小程序码(getUnlimited,createQRCode)
  14. Python实现统一社会信用代码校验(GB32100-2015)
  15. LCD1602液晶显示屏学习笔记
  16. 《嵌入式 - STM32开发指南》手把手教你搭建STM32开发环境 [Windows版 - 1]
  17. 解决:cv2.error: OpenCV(4.6.0) D:\a\opencv-python\opencv-python\opencv\modules\imgproc\src\contours.cpp
  18. 第十四届蓝桥杯三月真题刷题训练——第 20 天
  19. 图片懒加载的原理和实现
  20. R语言Sys.Date函数获取当前日期、将独立的年、月、日、时间、分钟、秒信息转化为对应的时间信息

热门文章

  1. Centos7下mysql安装详解
  2. stanfordcorenlp识别中文人名实战记录及心得
  3. 统计学习方法感知机(附简单模型代码)
  4. 工业级无线AP是什么
  5. [svn]最常用、频用的10个命令
  6. 浅析电子元器件-TVS管功效最佳化
  7. WPF基础(十八)C#正则表达式:匹配汉字、特殊字符、字母、数字、IP/端口号等等
  8. 【云和恩墨】嵌入云端:12c Policy-Managed Cluster为Oracle DBaaS助力
  9. 官宣:这所“双一流”大学更换校徽
  10. 机器学习对数学的要求_是对您的机器学习模因进行数学调查