LTO-5 の暗号化を試す (Ubuntu 22.04, stenc)

LTO-4 以降のドライブでは、AES-256のキーをドライブに渡すことにより暗号化が可能です。
また、データは圧縮された後に暗号化されるようです。

暗号化するソフトは企業から色々出ているようですが、オープンソースでは stenc と呼ばれるものがありました。

https://github.com/scsitape/stenc

Ubuntu 22.04 の環境では、stenc は apt から入れると v1.0.7 が入りましたが、バグで動きませんでした。
暗号化しようとすると、Sense Code: Illegal Request (0x05) とエラーが出ます。

最新版の v2.0.0 を使いました。
Readme通りにコンパイルします。

git clone https://github.com/scsitape/stenc.git
cd stenc/
autoreconf --install
./autogen.sh && ./configure  
make check     # optionally run the catch testing framework
make

現在の状態を表示

$ sudo stenc -f /dev/nst0
Status for /dev/nst0 (HP Ultrium 5-SCSI Z6ED)
--------------------------------------------------
Reading:                         Not decrypting
Writing:                         Not encrypting
Key instance counter:            0
Current block status:            Unable to determine
Supported algorithms:
1    AES-256-GCM-128
     Key descriptors allowed, maximum 32 bytes
     Raw decryption mode allowed, raw read disabled by default

AES-256のキーを生成します。どういう仕組みなのかよく分かってませんでしたが、以下のサイトで理解しました。-k の後のパスワードと自動生成された salt を利用してキーを生成してるんですね。ファイルの暗号化の場合には暗号化されたファイルの先頭に salt の情報が来るらしいです。

https://qiita.com/angel_p_57/items/bc50c5cfbb0276e07707

$ openssl enc -aes-256-cbc -k password -P -md sha1
*** WARNING : deprecated key derivation used.
Using -iter or -pbkdf2 would be better.
salt=xxxxx
key=xxxxxxxx
iv =xxxxx

この中の key を抜き取って、例えば myaes.key というファイル名にして保存します。

ドライブにキーを渡して暗号化を有効にします。–ckod とすると、テープを抜いた時にキーがアンロードされます。

$ sudo stenc -f /dev/nst0 -e on -k myaes.key -a 1 --ckod

状態を表示すると、Encrypting と Decrypting が有効になってます。

$ sudo stenc -f /dev/nst0
Status for /dev/nst0 (HP Ultrium 5-SCSI Z6ED)
--------------------------------------------------
Reading:                         Decrypting (AES-256-GCM-128)
                                 Unencrypted blocks not readable
Writing:                         Encrypting (AES-256-GCM-128)
                                 Protecting from raw read
Key instance counter:            1
Current block status:            Unable to determine
Supported algorithms:
1    AES-256-GCM-128
     Key descriptors allowed, maximum 32 bytes
     Raw decryption mode allowed, raw read disabled by default

本体の Encrypting のところが青く光りました。

後はtarで焼くなりLTFS作るなりできます。

暗号化オフ

$ sudo stenc -f /dev/nst0 -e off

おすすめ

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です