如何在 Linux 上使用 LTO 磁带机的 AES 硬件加密?

Jon*_*ein 6 encryption tape

如何在 Linux 上使用 LTO 磁带机的 AES 硬件加密?

我希望 LTO AES 加密比软件解决方案更快。aespipe 在 i7 CPU 上的快速基准测试,对软件 AES 的效果有一个印象

没有AES:

$ cat /dev/zero |  pipebench > /dev/null 
Summary:                                                                       
Piped   16.53 GB in 00h00m03.41s:    4.84 GB/second
Run Code Online (Sandbox Code Playgroud)

使用 AES 管道(可能不是最快的......)

$ cat /dev/zero |  aespipe | pipebench > /dev/null 
Password: 
Summary:                                                                       
Piped    2.73 GB in 00h00m18.27s:  153.43 MB/second
Run Code Online (Sandbox Code Playgroud)

Jon*_*ein 1

我按照sendmoreinfo的建议测试了stenc,它与 LTO-6 驱动器配合得很好。

用法:

插入磁带并询问磁带机的设置:

# stenc -f /dev/nst0 --detail
Run Code Online (Sandbox Code Playgroud)

生成 256 位密钥并存储它:

# stenc -g 256 -k /root/myaes.key -kd Bobs_month_key
Run Code Online (Sandbox Code Playgroud)

将密钥加载到 LTO 磁带机中。有了--ckod它,磁带弹出后就会忘记密钥。

# stenc -f /dev/nst0 -e on -k /root/myaes.key -a 1 --ckod
Run Code Online (Sandbox Code Playgroud)

验证驱动器现在是否启用了 AES:

# stenc -f /dev/nst0 --detail
Status for /dev/nst0
--------------------------------------------------
Device Mfg:              TANDBERG
Product ID:              LTO-6 HH        
Product Revision:        3519
Drive Encryption:        on
Drive Output:            Decrypting
                         Unencrypted data not outputted
Drive Input:             Encrypting
                         Protecting from raw read
Key Instance Counter:    4
Encryption Algorithm:    1
Drive Key Desc.(uKAD):   Bobs_month_key
Volume Encryption:       Encrypted and able to decrypt
                         Protected from raw read
Volume Algorithm:        1
Run Code Online (Sandbox Code Playgroud)

我已经为Gentoo Linux准备了一个包