[转载]损耗均衡技术
啥叫"损耗均衡技术"感兴趣可以简单了解.学习的多了懂的多点总不是坏处!
“机械硬盘”与“固态硬盘(闪存)”【删除数据】的差异——损耗均衡技术
“损耗均衡技术”是啥玩意儿?
为了介绍后面的章节,需要先扫盲一个小知识——损耗均衡技术(洋文叫“wear leveling”)。
考虑到本文的大部分读者不是 IT 硬件方面的专业人士,俺尽量通俗地扫盲一下。
所谓的“固态硬盘”(SSD),是以【闪存】作为永久性存储介质。平时咱们用的“U盘”也是以【闪存】作为介质。(为了打字省力,本文以下章节凡是提到“闪存介质”,就是指——“采用闪存作为存储介质”的各种东西的【总称】)
“闪存介质”相比“机械硬盘”的一大【缺点】是——写入次数的上限比较低。如果某个存储单元的数据反复更改(反复写入),达到上限后,这个存储单元就坏掉(变为“不可用”)。
“闪存介质”的厂商为了解决这个问题,采用了“损耗均衡技术”(详细介绍请看维基百科的“这个链接”)。比如某个文件,原先存储在“a单元”,当你更改了文件内容并保存,新的内容就不在“a单元”了,而是把新内容存到一个用得最少的“b单元”。此时,“a单元”里面依然有该文件的【旧内容】。
请注意,这个技术是由【硬件层面】(闪存介质的控制器)实现的,对操作系统【不可见】。
“损耗均衡技术”【不利于】彻底删除数据
聪明的读者,看完前一个小节,已经发现问题所在了。
很多时候,为了彻底删除文件,要用“垃圾数据(随机数据)”去覆盖文件的原有内容,从而让原有内容【不可恢复】。这个招数对“机械硬盘”是 OK 的,但对“闪存介质”就不灵了。因为“损耗均衡技术”使得你覆盖的内容存到的【别的】单元,根本【没达到】你想要的目的。
而且俺刚才也说了——“损耗均衡技术”是由硬件层面的存储控制器实现,对操作系统不可见。所以,用【软件方式】难以证明某个存储单元是否【真正被覆盖了】。
对【闪存介质】,如何彻底删除文件?
综上所述,要想在“闪存介质”中彻底删除文件,你需要换一种思路,大致如下:
- 先简单删除该文件
- 用垃圾数据(随机数据)填满该存储介质的剩余空间——要 100% 填满。
(这样才能确保——原先保存过敏感数据的单元,已经被垃圾数据覆盖掉)
注意事项:要填满的是【物理硬盘】的“剩余空间”,而不是【分区】的“剩余空间”。
举个例子:
假设你的固态硬盘有多个分区。敏感文件在“分区1”,你把敏感文件删除后,光填满“分区1”的剩余空间是【不够】滴。
正确做法是——你要把【所有】分区的剩余空间都填满,才能确保之前保存过敏感数据的单元,确实被垃圾数据覆盖掉了。
闪存厂商提供的工具,是否可信/可靠?
某些闪存介质的厂商会提供一些配套的工具/软件,据说可以提供【彻底删除】的功能。
对此,俺表示谨慎的怀疑。因为无法验证其效果。
所以,为了保险起见,还是老老实实去【填满剩余空间】吧。
小结
正式因为“闪存介质”要彻底删除文件,如此之麻烦。所以那些看重隐私保护的同学,更加应该早早用上【全盘加密】。
一旦你在“闪存介质”上使用【全盘加密】,每一个物理存储单元中的数据都是【密文】——“损耗均衡技术”就不再是障碍啦。
如何【快速且彻底】销毁加密盘的数据?
为啥要强调“快速且彻底”?
为啥俺强调【彻底】?——只有彻底地销毁数据,才能对付警方的【取证软件】;
为啥俺强调【迅速】?——警方想要拘捕你,当然不会留给你从容的时间。比如说:当警方人员正在撞门的时候,留给你的时间可能连1分钟都不到。
“销毁”的含义
本章节所说的“销毁”是指——让任何人【包括你自己】再也无法得到加密盘里面的数据。
为啥“哄骗”不可行?
本文发出后,某些热心读者提到了“哄骗”的招数。简单说就是:你假装销毁,但其实并没有。这样做,将来你自己还能继续打开加密盘。
俺认为:这种方法【不够】可靠,甚至是危险的想法。理由如下:
如果你是警方的重点关注对象,或者你是重大案件的关键人物,警方肯定会动用【刑侦和审讯】方面的高手来参与办案。
在这种情况下,你【别想】太容易哄骗对方。除非你自己也受过【严格的】“反侦查和反审讯”方面的训练。
但试问:有几个人具备这个条件?
基于上述理由——只有当你在紧急情况下,无法彻底销毁敏感数据,再考虑“哄骗”的招数。
【错误】方式举例
首先来说说【反面】教材。所谓“错误的方式”指的是——【不够彻底】或者【不够快速】的方式。
错误方式1——用“普通的删除命令”删除加密盘里面的文件
(所谓的“普通删除命令”,比如 linux 下的 rm 命令)
首先,这种做法【不】彻底(会被“取证软件”恢复出来);其次,如果加密盘中的文件很多,这种做法太慢。
错误方式2——用“专门的【擦除】命令”彻底删除加密盘里面的文件
(所谓的“专门的擦除命令”,比如 linux 下的 shred 命令)
这种方式比较彻底,但是【慢】。如果文件很多,就非常慢。
(注:shred 支持【多轮反复擦除】,可以防范专业取证人员对机械硬盘的“剩磁分析”,但也导致其速度很慢。即使你把 shred 设置为“只擦除1轮”,速度还是慢)
错误方式3——快速格式化
这种方式速度快,但是不彻底——被“快格”的分区,数据全都在。
错误方式4——彻底格式化
这种方式比较彻底,但是太慢了。如果格式化的分区有好几个 GB,你就慢慢等吧。
【正确】方式——彻底删除 key files
关于这招,已经提到过多次了。不但本文提到,之前在多篇博文中也提到。
这种方式有两种实现——“软删除”和“硬删除”。
如果 key files 存储在 PC 的硬盘上,用软件方式(比如:shred 命令)彻底擦除内容。为了讨论方便,以下称之为:“软删除 key files”。
如果 key files 放在【外部】的存储介质(比如:U盘、MMC/SD 卡、...),你可以先把存储卡插到 PC 上,然后用软件干掉 key files(依然是“软删除”);但你还可以用【物理方式】直接破坏存储介质(这种情况称为——“硬删除 key files”)。
由于 key files 都很小(通常小于 1MB),所以“软删除 key files”肯定是【既快速又彻底】。
提醒:“软删除”的【局限性】
如果是【机械硬盘】,“软删除”是 OK 的;但如果是【固态硬盘】,“软删除”【不】保险。原因请参见刚才介绍的“损耗均衡技术”。
至于“硬删除”的方式
由于存在几种不同情况,后面俺用一个单独的章节来讨论。
【正确】方式——破坏加密盘的【密钥存储区】
前面俺聊“密钥的存储”,已经提到——磁盘加密软件为了能打开加密的数据,必须把密钥(以【加密形式】)存储在某个地方。通常是存储在加密盘的【头部或尾部】。
当你输入认证因子(“密码”和“key files”),加密软件根据“认证因子”进行一系列数学运算,然后从密钥存储区中解密出【加密盘的密钥】。如果你的认证因子输错了,密钥就解不出,加密盘自然打不开。
所以,如果你用“随机数据”把加密卷的【头部和尾部】两者都覆盖,就足以【彻底破坏】整个加密盘。
密钥存储区通常很小(不到 1KB)。为了保险起见,咱们把覆盖范围扩大一千倍(从 1KB 变为 1MB),彻底覆盖加密盘最开头的 1MB 和最末尾的 1MB,肯定就能毁掉“密钥存储区”了。
再来看“速度”——哪怕老式的机械硬盘,对头尾各写入 1MB 的数据,也可以在1秒内完成。所以这招属于【既彻底又快速】。
提醒:本招数的【局限性】
如果是【机械硬盘】,可以用这招;但如果是【固态硬盘】,这招【不】保险。原因请参见刚才介绍的“损耗均衡技术”。
【在线状态】下的权衡
(所谓的【在线状态】,指的是——出现“紧急情况”时,你的 PC 处于【运行状态】,并且你正在操作它)
在这种情况下,显然【可以用】“破坏加密盘”的方式。
至于“删除 key files”是否可用,取决于你的 key files 存储在哪里?
- 如果你的 key files 存储在 PC 上,也可用“key files 的软删除”。
- 如果你的 key files 位于【外部】存储介质(比如:U盘、MMC/SD 卡、...),并且这个存储介质【没有】插在电脑上,就用“key files 的硬删除”
【离线状态】下的权衡
(所谓的【离线状态】,指的是——出现“紧急情况”时,你的 PC 处于【关机状态】)
由于情况紧急,你已经来不及开机并启动系统。所以,“破坏加密盘”显然不可行;同样的道理,此时“软删除 key files”也不可行。
因此,在【离线状态】下,你只有唯一的选项——“硬删除 key files”。
结论
从上述两种状态的权衡,很自然就可以得出结论——key files 必须位于你【身边】的存储介质中。只有这样才能保证——你在【各种情况】下都能【快速且彻底】地销毁加密数据。
为了让大伙儿一目了然,放一个对照表:
如何【物理破坏】存储卡?
好,现在来谈“硬删除 key files”的方式——也就是“从物理上毁掉存储卡”。
(注:本章节所说的“存储卡”包括:U盘、SD卡、MMC卡...)
再次唠叨:这种“物理破坏”的方式比较粗鲁,是【紧急情况下】的无奈之举。如果你的时间比较从容,应该用前面提到的软件方式——删除敏感文件后,通过填充垃圾数据,塞满整张存储卡的剩余空间。
U 盘的内部结构
为了方便讲解,从维基百科剽窃了一张照片,并附上相应的说明。
1 插头
2 存储控制器
3 测试接点
4 【闪存芯片】
5 石英振荡器
6 发光二极管(LED)
7 写入保护开关
8 预留给第二颗存储器芯片的空间
物理摧毁的关键——破坏【闪存芯片】
对存储卡而言,除了【闪存芯片】,其它的都是浮云。
因为其它所有的部件全被毁掉,只要【闪存芯片】还完好,就可以通过专用的设备,读取出里面保存的数据。
破坏“闪存芯片”——【彻底】的方式
关于这个话题,俺看过一些资料,以及网上的讨论。权衡下来,能够在“短时间”(1分钟内)物理破坏“闪存芯片”的方式,大致有两种:
电磁方式——微波炉
把存储卡放入微波炉并启动。
这么干,不但能毁掉存储芯片,可能你的微波炉也会跟着报废。但在紧急情况下,一个微波炉又算得了什么?
机械方式——砸烂
如果你身边有锤子、扳手(或诸如此类的工具),对准结构图当中那个“傻大黑粗”的家伙狠狠砸下去,砸烂为止。
由于“闪存芯片”比较硬,还可以考虑用某个尖锐的东西作为辅助(学过基础物理学的应该明白——这可以增加压强)。就比如说,把一个钉子架在“闪存芯片”上,然后再用锤子敲击钉子,更容易击穿芯片的外壳。
但如今现代化的家庭或办公室中,要想找一个钉子还真不太容易。那么,啥东西可以作为钉子的替代品捏?俺列几个替代品作为参考(欢迎大伙儿补充)
螺丝刀(尤其是【小型的十字】螺丝刀)
瑞士军刀中某些尖锐的部件(如下图)
不见图 请翻墙
(某种款式瑞士军刀的示意图——几乎每种款式都能找到尖锐的工具)
破坏“闪存芯片”——【不太彻底】的方式
现在介绍【不】那么彻底的方式。也供高风险人士参考。
在紧急情况下,如果你身边没有微波炉也没有砸烂芯片的工具,还有一招是——用冲水马桶把存储卡冲掉。如今的存储卡都比较小,至少不会卡在马桶里。
但要强调的是——这招【不彻底】,因为存储卡浸泡在普通液体(只要不是强酸),即使长达几天时间,还是有可能恢复出数据。
如果你用了这招,那主动权就转到警方这边——考验他们是否愿意到粪坑里去找存储卡了。
预备和演习
如果你确实认为自己是【高风险人士】,本文讲述的这些东西,你【不要】光看看而已。要先做好准备工作,甚至来一次演习(彩排)。
否则真的到了紧急情况,你在慌乱之中很可能会出错。
首次创建时间:2019-03-15 22:03:00
最后修改时间:2020-08-19 21:56:34
_(:3 」∠)_