Thank you for being a valued part of the CNET community. As of December 1, 2020, the forums are in read-only format. In early 2021, CNET Forums will no longer be available. We are grateful for the participation and advice you have provided to one another over the years.

Thanks,

CNET Support

Question

How to get/decrypt SSD PSID from the drive itself?

Sep 27, 2017 9:01AM PDT

Hi everyone,

I'm now looking for a way to get an SSD PSID (Physical Security ID) from the inside of it.

I know it is an hexadecimal identifier to lock the SSDs from piracy issues.

Supposedly from what I know, if you erase or modify the SMART Values on the inside of an SSD twice, it will lock down and will be unusable.

What I currently know is an PSID example combination algorithm.

Integer value variables are setted.

Each value is a random value multiplied by 65535

Then each value is converted to a Binary Variable with a length of 2.

Finally each value is concatenated and the resulting value is converted to hexadecimal.

What I want to know it's what language can help me to get this information and if there's any library I can use to speed up the process or if there's an algorithm to decrypt is value from the memory addresses, I'm using python 2.7 to code, but if I need to move that module in a separate application with another language, I'll do it. Also if there are some cryptography books I can read to guide myself or some way to revert the algorithm to get the original random number value.

I know my question may be too broad, but if someone could guide me to the correct way of getting this thing done, I would be very grateful because I don't really have an idea from where to start.

If I'm wrong on the forum where this is being posted, please guide me to the correct one.

Thanks in advance!

Discussion is locked

- Collapse -
Answer
For this you look to prior discussions.
Sep 27, 2017 9:18AM PDT
https://www.google.com/search?client=opera&q=decrypt+SSD+PSID finds a few and I'll list the more interesting links.

WHAT YOU MAY HAVE NOT WRITTEN IS THAT YOU WANT THIS FOR FREE.
Unless folk write that, I consider paying for a decrypter to be the correct answer.

More:
https://forum.hddguru.com/viewtopic.php?f=10&t=27027

So the story is clear that decryption is not supported for many reasons. If you want to continue to use the hardware you erase it and start over.

Again, if you are the legit owner of the data, you would have the password and backups so no one helps others break into such drives.
- Collapse -
Thanks for replying
Sep 27, 2017 11:43AM PDT

I've actually done some research on the topic, but besides general information on SSDs Encryption, I haven't found a way to do it.

I'm not intentionally saying I want this for free, if I need to learn to make it, I will make it, but what I need is some guidance on how could I find information related to encryption on SSDs or even books that point out the subject so I know where to start.

I appreciate the help provided, I'm still finding a way to access this information but I've made this post so I can develop some tool for this purpose.

Just to clarify, I'm doing this on educational and learning purposes so I can extend my knowledge on hardware interaction.

- Collapse -
RE: PSID
Sep 27, 2017 12:48PM PDT

I see you posted in https://www.linuxquestions.org/questions/linux-hardware-18/how-to-get-ssd-psid-from-the-drive-itself-ubuntu-14-04-a-4175613615/ and https://hardforum.com/threads/how-to-get-decrypt-an-ssd-psid-from-the-drive-itself.1944742/ also, with no more result than here.

I doubt if it can be done, because I doubt if you access to the location where it's stored inside the SSD via the commands it supports in its SATA-interface. I could be it's in some non-volatile storage in the BIOS-like part of the motherboard of the drive, with some way to overwrite it from the outside world and no way to read it from the outside.
I think it's more difficult than finding the bitlocker key protecting a Windows hard disk because the hardware is less accessible.

- Collapse -
Thanks!
Sep 27, 2017 2:30PM PDT

I know it's difficult, but I've seen some people crack the PS3 PSID to remove the ban from PSN: link1-1, or even some other method to dump the PSID using Netflix as a bridge: link1-2, so that's why I thought it can be done, but as I stated before, I don't know where to start, at least not fully certain it will result. I've done some research and got some SSDs datasheets that point out what memory addresses has information relevant on the drive: link2-1, link2-2. And programs that trim the SSDs block information or test the LBA of them. I assume the best way to get around all these memory address related problems it's with C programming but I don't really know much of it, or at least with the fnctl() or ioctl() modules, which are an important part of the interaction with the SMART values and firmware related information. This is only the things that I got within this day. I know if I start learning plain C from today I won't have an application to get the PSID soon (which is something I don't want to let happen), but anyway, I will keep searching for an answer according till the end of the day.