Sorry for the long post, but I want to be as precise as possible:
I use a Toshiba Satellite Pro U200 under Linux (OpenSUSE) for a few years now. Works fine without problem up to now, even the fingerprint reader works. I erased and never used the preinstalled Windows XP.
For security reasons, I now decided to set a ATA hard disk password in case the laptop is lost or stolen (changed disk for a Seagate Momentus 7200 FDE.2 SATA II disk with hardware full disk encryption).
In order to get protection under the full disk encryption, I need to set a ATA password. When booting, the Bios should ask for the password, and unlock the disk only when the password is correct.
My problem is: In the Toshiba laptop there is no way to set the ATA hard disk password directly in the bios (as it is possible in HP laptops, for example). Toshiba provides only one way to set the disk password, that is a Windows XP utility software (named "Assist"). But, I do not want to change the OS only in order to set this password.
Therefore, I tried the linux instructions
hdparm --user-master m --security-set-pass SecretMasterPassword /dev/sda
hdparm --user-master u --security-set-pass SecretUserPassword /dev/sda
which are used for setting ATA passwords. Indeed, at first this seems to work fine. The password is set and the drive gets locked.
When I restart the Laptop, the Bios asks for the hard disk password, as it should do.
But, It does not accept the SecretUserPassword entered before. The response is "wrong password", or similar.
I have no doubt that the password was set correctly: I checked by rebooting the laptop via rescue DVD into linux, and unlocking the drive via
hdparm --user-master u --security-unlock SecretUserPassword /dev/sda
in order to use it. No problem, this works as supposed to. After unlocking, the disk is usable as normal. And, I also can disable the password via
hdparm --user-master u --security-disable SecretUserPassword /dev/sda
After disabling the password, the laptop boots normally again, but I have no password protection.
When I reenable the password, the Toshiba bios again asks for the password when booting, but does not accept the (correct) password when entered.
Does anyone have an explication for this behavior?
Does the Toshiba bios somehow modify the password entered by the user, before it is passed on to the disk? I think this would not be conform to the ATA standard.
Did anyone manage to set/change the ATA password in a way that the disk can be unlocked via the builtin Bios, without installing Windows XP and using Toshiba's "Assist" software?
Thank you for reading this long post until here. Any response is welcome.
In the meantime I found that the problem is not strictly Linux related:
When I set the disk password with the DOS software ATAPW.EXE, I get the exact same behavior as described before: The drive is locked and can be unlocked by ATAPW.EXE (and also by Linux/hdparm). But the U200's bios (Ver 3.7, latest version available) asks for the password, but is not being able to unlock when the (correct) password is entered.
Last try: I installed Windows XP from the recovery CD and tried it with the original Toshiba tools (TOSHIBA password utility TOSPU.EXE, Assist and Security Assist, updated to the latest versions). I was surprised, but did not find any way to set/unset the disk password either. I found options for setting/unsetting the System password etc, but not disk passwords.
It seems that disk passwords are not supported by the Toshiba Satellite Pro U200.