SATA SSD を Secure Erase する

Summary

Secure Erase に対応したデバイスでは Secure Erase を利用するべきです。 Secure Erase で消去するべきな理由は、最近の SSD は NAND の耐久性を向上させるため特定のアドレスへの過度な書き込みをしないように、ウェアレベリングが取り入れられている。この機能は NAND の書き込みアドレスを均等にすることで書き込み寿命を向上させる仕組みです。そのためディスク全体に書き込み処理をしても実際の書き込みアドレスは隠蔽されているため正しく消去されない。

そのため、 Secure Erase 機能を利用するとウェアレベリング機能をオフにし、書き込み処理ができることと大幅に消去完了までの時間が短縮される。

消去方法

消去対象の SSD が Secure Erase に対応しているか確認する

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
> lsblk -o NAME,HCTL,MODEL,SERIAL
NAME     HCTL       MODEL                SERIAL
sdX      4:0:0:0    TEAM T253512GB       TPBF2409XXXXXXXXXXXX
sdY      16:0:0:0   TEAM T253512GB       TPBF2410XXXXXXXXXXXX

> hdparm -I /dev/sdX
Security: 
        Master password revision code = 65534
                supported
        not     enabled
        not     locked
        not     frozen
        not     expired: security count
                supported: enhanced erase
        2min for SECURITY ERASE UNIT. 2min for ENHANCED SECURITY ERASE UNIT.

Secure Erase を利用するには hdparm の結果が not frozen である必要があります。
今回の SSD では enhanced erase にも対応し消去時間は 2min であることが確認できました。

Important
この後の手順を実行するとデータは復元出来ません

P@ssW0rd は Secure Erase が完了すると NULL に設定されるため、作業終了まで使います

1
2
3
4
5
> hdparm --user-master u --security-set-pass P@ssW0rd /dev/sdX
security_password: "P@ssW0rd"

/dev/sdX:
 Issuing SECURITY_SET_PASS command, password="P@ssW0rd", user=user, mode=high

コマンド実行後、再度確認すると not enabled から enabled へ変更さたことが確認できる。

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
  > hdparm -I /dev/sdX
  
  Security: 
          Master password revision code = 65534
                  supported
+                 enabled
          not     locked
          not     frozen
          not     expired: security count
                  supported: enhanced erase
          Security level high
          2min for SECURITY ERASE UNIT. 2min for ENHANCED SECURITY ERASE UNIT.

次のコマンド完全にデータを消去する。 enhanced に対応しているため --security-erase-enhanced を利用する

1
2
3
4
5
> hdparm --user-master u --security-erase-enhanced P@ssW0rd /dev/sdX
security_password: "P@ssW0rd"

/dev/sdX:
 Issuing SECURITY_ERASE command, password="P@ssW0rd", user=user

完了すると下記のように変化し not enabled に変更されます。これで完了です。

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
  > hdparm -I /dev/sdX
  Security:
          Master password revision code = 65534
                  supported
-         not     enabled
          not     locked
          not     frozen
          not     expired: security count
                  supported: enhanced erase
          2min for SECURITY ERASE UNIT. 2min for ENHANCED SECURITY ERASE UNIT.

参考情報

最終更新 2025-03-16 18:29 UTC
Hugo で構築されています。
テーマ StackJimmy によって設計されています。