Seagate / openSeaChest

Cross platform utilities useful for performing various operations on SATA, SAS, NVMe, and USB storage devices.
Other
485 stars 61 forks source link

Unlocking a drive locked with Toolkit using openSeaChest? #32

Open john-connett opened 4 years ago

john-connett commented 4 years ago

I have some Seagate Backup Plus Ultra Touch drives that can be locked, with a password, using Toolkit on Windows.

It would be really useful to be able to unlock them on other platforms (FreeBSD, Linux, OmniOS, ...) using either a utility or the libraries from openSeaChest.

Are there any example scripts or code to do this?

vonericsen commented 4 years ago

Hi @john-connett, I am looking into what is required to do this with openSeaChest or what will need to be implemented to get this functionality.

vonericsen commented 4 years ago

Hi @john-connett, I haven't forgotten about this, but I do finally have some information about how the drive you mentioned is locked/unlocked. It's using TCG Opal specification to do the locking on the SED drive that it is using. We do not currently have open source TCG code, but we are starting an internal discussion about open sourcing what we have. I do not have a timeline for this right now, but I will keep this updated as much as I can.

john-connett commented 4 years ago

Many thanks. I had a quick look at 'Unlock Drive for Windows.exe' which is available from the drive when it is locked. It's a .NET Assembly (Framework 4.0) which appears to call a native dll with six functions with names starting with 'SecureDrive' such as 'SecureDriveUnlock'. My guess is that the equivalent of this native dll is what would be useful to support cross-platform compatibility.

An open source tool I have found for SED drives is sedutil-cli. Versions are available from Drive Trust Alliance (https://github.com/Drive-Trust-Alliance/sedutil) and SEDutil (https://sedutil.com/).

I look forward to your updates.