SSD真的安全吗?你看或者不看,真相就在这里…

简介: 当一块SSD坏掉了,需要扔掉的时候,你是否想过,SSD里面是否已经真的删除干净,是否还有你私密的数据呢?特别是对银行业或者军工的SSD,里面包含了很多机密的数据,如果轻易的处理掉,很有可能会被别有用心的人利用,造成不可挽回的损失。或者,换到另一个场景,你有一块机密的SSD丢了或者被偷了,如果你的SSD没有做任何保护的话,SSD里面存储的信息就直接暴露给别人了。


目前针对SSD数据安全有以下几种方案:
1. 数据加密
就加密而言,并不存在绝对的无法破解的加密技术,尽管从理论上讲AES256 bit加密方式无法通过暴力方式破解,但解密专家通过旁路攻击等手段仍存在破解AES的可能性,因此,有效的办法往往是通过几种加密方式的组合加强密码破解的难度,如:银行系统通常会采用一组私人密码加上硬件Key随机密码,二者组合才可以访问网银系统的方式达到安全防护的目的。


软件加密可以通过固件写入到SSD中,无法被删除和更改,无需安装,用户只需要通过运行软件就可以方便的对磁盘分区进行加密。

目前数据加密可以通过软件或者硬件的方式实现。



几乎所有的SSD控制器都支持硬件AES加密(例如,Renice AES 加密原理图如下)。



在上一篇文章中,有提到指纹加密技术在SSD中的应用。(详细内容请参考本公众号上一篇文章哈, “全球首款指纹加密移动SSD TEK-1 PRO,数据安全再次升级”)。


2. 安全擦除
安全擦除功能分为加密块擦除、加密块和物理块擦除、军级擦除三种擦除级别,擦除程度依次加强,这三种级别的安全擦除均可保证擦除后数据不可恢复:

(1) 加密块擦除:主要擦除SSD控制器的各类映射表,如坏块管理、动态映射表、静态映射表、碎片回收表等,通过擦除NAND Flash的各类映射表,造成数据完全不可恢复,擦除时间小于3s。执行加密块擦除后,映射数据完全丢失,SSD数据完全不可恢复。

(2) 加密块和物理块擦除:除了进行加密块擦除外,还对所有的NAND Flash Block执行Erase操作,保证所有NAND Flash存储单元值恢复为出厂状态,即0xFF,擦除速度为3GB/s。执行加密块和物理块擦除后,映射数据及物理块数据完全丢失,SSD数据完全不可恢复。

(3) 军级擦除:军级擦除由加密块擦除、物理块擦除、NAND Flash存储单元Overwrite组成,加密块擦除和物理块擦除同上,NAND Flash存储单元Overwrite是向NAND Flash的每一个Page写入特定的数据或随机的数据。执行军级擦除后,映射数据完全丢失,NAND Flash所有Block执行过Erase操作,NAND Flash所有Page执行了特定或随机数据写操作,SSD数据完全不可恢复。

以上三种安全擦除对SSD本身并不会造成任何物理损毁。

3. 物理销毁
对于军事等敏感数据,使用软件删除或者数据覆盖等删除手段,并不一定完全避免数据被恢复的可能,相对而言,对物理介质进行损坏从数据安全性而言更加可靠,也是最直接最暴力的手段。比如,Renice公司提供一种通过高压将芯片击穿的方式从物理上避免芯片数据被恢复的可能。


此外还有通过强化学剂溶解(比如各种酸)或者强力通电或者磁场,加热烧灼,熔化的方式进行销毁。


物理烧毁的难点在于如何保证SSD上所有的Nand Flash都被烧毁而无遗漏任何一个Nand Flash,例如:一块儿SSD上通常会有16片Nand Flash,是否会存在只烧毁一部分Nand Flash,而其他Nand Flash因为各种原因并没有按照设计要求真正被烧毁的情况。

销毁后Nand Flash状况:




目前市场上很多厂商有推出带有“一键销毁”功能的SSD, 一般配有两个按钮:绿色按钮为智能销毁模式,可将所有数据格式删除;想刺激那就按红色按钮,如同谍战电影般,青烟冒出主控、闪存均被烧毁,存储数据瞬间灰飞烟灭。


相关文章
|
缓存 移动开发 JavaScript
PCIe 参考时钟架构 (Refclk Architecture)
PCIe 参考时钟架构 (Refclk Architecture)
6353 0
PCIe 参考时钟架构 (Refclk Architecture)
|
存储 NoSQL Redis
Redis从入门到精通之底层数据结构字典/哈希表详解
Redis中的字典(Dictionary)是一种高效的数据结构,用于存储键值对,常用于实现哈希表(Hash Table)。在本文中,我们将深入了解Redis中的字典/哈希表,包括字典的结构和操作等。字典/哈希表适合存储大量的键值对,并需要快速地查找键对应的值的场景。在实际应用中,需要根据具体的业务场景选择合适的底层数据结构。例如,如果需要按照键的顺序进行访问,可以使用有序集合(Sorted Set)等其他数据结构。
346 63
Redis从入门到精通之底层数据结构字典/哈希表详解
|
前端开发 JavaScript Java
基于Java+Springboot+Vue开发的体育场馆预约管理系统
基于Java+Springboot+Vue开发的体育场馆预约管理系统(前后端分离),这是一项为大学生课程设计作业而开发的项目。该系统旨在帮助大学生学习并掌握Java编程技能,同时锻炼他们的项目设计与开发能力。通过学习基于Java的体育场馆管理系统项目,大学生可以在实践中学习和提升自己的能力,为以后的职业发展打下坚实基础。
247 2
基于Java+Springboot+Vue开发的体育场馆预约管理系统
|
SQL Java 数据库连接
Mybatis中Mapper.xml 文件使用注释遇到的坑
Mybatis中Mapper.xml 文件使用注释遇到的坑
|
存储 开发工具 git
Git 版本控制系统的完整指南
Git 是一个流行的版本控制系统。它是由 Linus Torvalds 于 2005 年创建的,自那时以来由 Junio Hamano 维护。 它用于: 跟踪代码更改 跟踪谁做出了更改 编写协作
905 1
|
机器学习/深度学习 人工智能 自然语言处理
AIGC时代,大模型微调如何发挥最大作用?
AIGC时代,大模型微调如何发挥最大作用?
763 0
|
存储 固态存储 内存技术
探访SSD数据归属地之NAND闪存
闪存转换层FTL是NAND闪存总管,负责NAND闪存的衣食住行,所以请出大总管之前,先来欣赏一下NAND闪存的内在气质。
|
机器学习/深度学习 弹性计算 编解码
阿里云服务器ECS架构X86计算是什么?和ARM有什么区别?
阿里云服务器ECS架构X86计算是什么?和ARM有什么区别?
772 0
|
固态存储 内存技术
SSD主控与NAND闪存之多通道交互
目前主流的SSD会有4或者8个Channel,SSD主控有一个专门的模块管理不同Channel之间的读写操作。

热门文章

最新文章