PCEVA,PC绝对领域,探寻真正的电脑知识
开启左侧

金士顿KC2000自加密功能测试

[复制链接]
Essence 发表于 2019-6-5 17:46 | 显示全部楼层 |阅读模式
点击数:1138|回复数:2
本帖最后由 Essence 于 2019-6-5 17:51 编辑

在金士顿KC2000的产品标签上,有一行PSID物理安全标识,代表着它能够支持全盘自加密功能。与使用软件进行的硬盘加密相比,开启硬件自加密不影响硬盘性能,并且具备良好的数据安全性。

为什么需要Opal自加密:

传统的ATA加密将密钥直接存储在硬盘当中,所以PC3000等一些底层硬盘工具有机会直接偷到密钥来解锁硬盘,这样的加密方式是不安全的。



为了保障密钥的安全,Opal自加密硬盘的密钥(Media Encryption Key,MEK媒体加密密钥)本身也以加密的形式进行存储。即便拆掉硬盘中闪存直接读取其中的信息,也无法获得真正的加密密钥,无法解密其中数据。MEK由硬盘主控自行随机生成,并且始终只在硬盘内使用、无法被外部操作系统直接读取。


用来加密MEK的是名为Key Encryption Key(KEK,密钥加密密钥)的另一组密码,它是由用户输入的密码经过处理产生的。开机时通过KEK解密MEK,得到的真实数据加密密钥,完成硬盘解锁。MEK只存储在易失性存储器(如DRAM缓存、SRAM缓存)当中,一旦电脑关机、硬盘断电,MEK也就随之消失。所以Opal加密后的硬盘会随着关机而重新进入锁定状态。


使用sedutil设置自加密系统盘:

在获得MEK解锁硬盘之前,整个硬盘的数据都处于被加密状态,所以开机时需要通过一个“影子MBR”来接受用户输入密码,再通过用户密码产生KEK,通过KEK解密出MEK,完成硬盘解锁。

接下来下载sedutil工具,选择RESCUE64img.gz,通过WinRAR等压缩软件将其中的img文件解压出来。



使用Win32DiskImager将img镜像文件写入到优盘当中。接下来的过程会比较繁琐,但是只要仔细认真,一切都会比较顺利。



使用这张制作好的管理U盘引导开机,在提示DriveTrust login:时,输入root并回车。
  1. Starting logging:OK
  2. Initializing random number generator… done.
  3. Starting network:OK
  4. ****************************
  5. *DTA sedutil rescue image RESCUE64-1.15.1.img
  6. *
  7. *Login as root,there is no password
  8. *****************************
  9. DriveTrust login:root
复制代码



输入并执行sedutil-cli –scan,会自动扫描电脑内安装的硬盘,在/dev/nvme0后方出现的2代表KC2000支持Opal 2标准。如果硬盘不支持Opal加密,这里显示的结果为NO。
  1. #sedutil-cli --scan
  2. Scanning for Opal compliant disks
  3. /dev/nvme0 2 KINGSTON SKC2000M81000G        S2681101
  4. /dev/sda No
  5. No more disks present ending scan
复制代码



输入命令linuxpba并用debug作为密码来测试PBA,验证结果是否为OPAL NOT LOCKED:

  1. #linuxpba
  2. DTA LINUX Pre Boot Authorization

  3. Please enter pass-phrase to unlock OPAL drives: *****
  4. Scanning....
  5. Drive /dev/nvme0 KINGSTON SKC2000M81000G    is OPAL NOT LOCKED
复制代码



接下来输入sedutil-cli –initialsetup debug /dev/nvme0启用锁定和PBA:

  1. #sedutil-cli –-initialsetup debug /dev/nvme0
  2. takeOwnership complete
  3. Locking SP Activate Complete
  4. LockingRange0 disabled
  5. LockingRange0 set to RW
  6. MBRDone set on
  7. MBRDone set on
  8. MBREnable set on
  9. Initial setup of TPer complete on /dev/nvme0
复制代码



输入并执行下面多个命令:
  1. #sedutil-cli --enablelockingrange 0 debug /dev/nvme0
  2. LockingRange0 enabled ReadLocking,WriteLocking


  3. #sedutil-cli --setlockingrange 0 lk debug /dev/nvme0
  4. LockingRange0 set to LK

  5. #sedutil-cli --setmbrdone off debug /dev/nvme0
  6. MBRDone set off

  7. #gunzip /usr/sedutil/UEFI64-1.15.1.img.gz

  8. #sedutil-cli --loadpbaimage debug /usr/sedutil/UEFI64-1.15.1.img /dev/nvme0
  9. Writing PBA to /dev/nvme0
  10. 33554432 of 33554432 100% blk=20382
  11. PBA image /usr/sedutil/UEFI64-1.15.1.img written to /dev/nvme0
复制代码




测试PBA:密码使用debug。验证PBA是否解锁了驱动器,正常结果应为OPAL Unlocked。

  1. #linuxpba

  2. DTA LINUX Pre Boot Authorization

  3. Please enter pass-phrase to unlock OPAL drives: *****
  4. Scanning....
  5. Drive /dev/nvme0 KINGSTON SKC2000M81000G                is OPAL Unlocked
复制代码



实装真正的密码:
包括SID和ADMIN1密码,两个密码可以不一致。下面的zhimakaimen请用自己的密码代替,这里只用作演示用。不建议使用这个弱密码。

  1. #sedutil-cli --setsidpassword debug zhimakaimen /dev/sdc
  2. #sedutil-cli --setadmin1pwd  debug zhimakaimen /dev/sdc
  3. Admin1 password changed
复制代码



通过下面的命令来验证没有输错密码。
  1. #sedutil-cli --setmbrdone on zhimakaimen /dev/nvme0
  2. MBRDone set on
复制代码


输入poweroff回车,让电脑关机。硬盘将使用OPAL锁定。重新启动系统时它将启动PBA。

再次开机时从NVMe SSD引导,系统将提示:
  1. DTA LINUX Pre Boot Authorization

  2. Please enter pass-phrase to unlock OPAL drivers:
复制代码


输入之前设定的密码zhimakaimen回车即可解锁硬盘并自动重启。在电脑关机前,硬盘会保持解锁状态。重启不受影响,大家可以先从KC2000引导,然后重启选择Windows系统安装盘开始系统安装。

性能测试:

系统安装完毕后进行一些简单的性能测试,可以看到加密未对KC2000的性能产生影响,这是硬件加密的一个优势:实时加密解密过程不需要消耗电脑CPU资源。



未加密时作为系统盘PCMark 7存储测试评分:6128



开启加密后作为系统盘PCMark 7存储测试评分:6129



彻底解锁并停用Opal加密:

  1. #sedutil-cli -–disableLockingRange 0 zhimakaimen /dev/nvme0
  2. LockingRange0 disabled

  3. #sedutil-cli –-setMBREnable off zhimakaimen /dev/nvme0
  4. MBRDone set on
  5. MBREnable set off
复制代码



解锁后硬盘内文件正常保留。更多sedutil使用方法可参考https://github.com/Drive-Trust-A ... crypting-your-drive

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x

评分

参与人数 1绝对值 +1 收起 理由
jackyi + 1 很给力!

查看全部评分

xdd6622 发表于 2019-6-5 18:54 | 显示全部楼层
加密不影响性能,这个好。加密对商业企业用户很有用,个人没啥需求
haierccc 发表于 2019-6-5 21:01 | 显示全部楼层
这个教程好!        
您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 返回顶部