Skip to main content

linux - SandForce SSD encryption - security and support


I'm currently thinking about buying a ThinkPad X201 and equip it with a SSD drive. Now, to protect my data I always used Linux with LUKS full disk encryption on my laptops. However, as stated in another SuperUser post, this would disable the support for TRIM - so that doesn't seem to be a good idea with a SSD drive.


I've read that SandForce-1200 based SSDs offer integrated AES encryption tied to the BIOS password. However I can't find proper documentation on this. Questions:



  • Any general drawbacks to this approach?

  • I suppose this would require BIOS support for the feature - how to find out if works on a X201?

  • Old BIOS versions only supported short (like 6 or 8 characters) passwords, has this situation improved to provide sufficient security for a disk encryption?


Update: This Source says you can't even set any password on these drives. Huh? That doesn't make sense, why would you even do the complicated AES operatins when you don't allow to use a key?


Thank you for any expert advice on the matter :)



Answer



Answering my own question, this is what I've found out after searching on the net for a couple of hours:



  • The SandForce devices have AES encryption turned on by default, but there are issues with this (see below)

  • If you zero out the drive using ATA Secure Delete, the key will be wiped and later regenerated and thus the old data will not be accessible anymore - making this an acceptable solution when you're about to sell or trash your SSD

  • It is, however, not possible to set a user password that would prevent someone who steals your laptop with an SandForce SSD from reading your data

  • The encryption key is not linked to the ATA security and/or BIOS

  • Setting a user password would be possible if there was a tool for this. OCZ promised a program called their "toolbox" that would allow this very often on their support forums, but when it was finally released in october 2010, it still didn't have the functionality (and still not today)

  • I guess even if you could set the password using the toolbox, it would not be possible to use the device as a boot device any more because you couldn't unlock it from the bios.

  • Using software full-disk-encryption on an SSD seriously impacts the performance of the drive - up to a point where it can be slower than a regular hard disk.


Source for some of this information.


Update: If you're interested, I wrote a little more about the issues in a dedicated blog post.


Comments

Popular Posts

Use Google instead of Bing with Windows 10 search

I want to use Google Chrome and Google search instead of Bing when I search in Windows 10. Google Chrome is launched when I click on web, but it's Bing search. (My default search engine on Google and Edge is http://www.google.com ) I haven't found how to configure that. Someone can help me ? Answer There is no way to change the default in Cortana itself but you can redirect it in Chrome. You said that it opens the results in the Chrome browser but it used Bing search right? There's a Chrome extension now that will redirect Bing to Google, DuckDuckGo, or Yahoo , whichever you prefer. More information on that in the second link.

linux - Using an index to make grep faster?

I find myself grepping the same codebase over and over. While it works great, each command takes about 10 seconds, so I am thinking about ways to make it faster. So can grep use some sort of index? I understand an index probably won't help for complicated regexps, but I use mostly very simple patters. Does an indexer exist for this case? EDIT: I know about ctags and the like, but I would like to do full-text search. Answer what about cscope , does this match your shoes? Allows searching code for: all references to a symbol global definitions functions called by a function functions calling a function text string regular expression pattern a file files including a file

How do I transmit a single hexadecimal value serial data in PuTTY using an Alt code?

I am trying to sent a specific hexadecimal value across a serial COM port using PuTTY. Specifically, I want to send the hex codes 9C, B6, FC, and 8B. I have looked up the Alt codes for these and they are 156, 182, 252, and 139 respectively. However, whenever I input the Alt codes, a preceding hex value of C2 is sent before 9C, B6, and 8B so the values that are sent are C2 9C, C2 B6, and C2 8B. The value for FC is changed to C3 FC. Why are these values being placed before the hex value and why is FC being changed altogether? To me, it seems like there is a problem internally converting the Alt code to hex. Is there a way to directly input hex values without using Alt codes in PuTTY? Answer What you're seeing is just ordinary text character set conversion. As far as PuTTY is concerned, you are typing (and reading) text , not raw binary data, therefore it has to convert the text to bytes in whatever configured character set before sending it over the wire. In other words, when y...

linux - CentOs 7.1 - Install Tomcat 8

I am using this tutorial as a setup reference to getting a Tomcat 8 running on CentOs 7.1 , but after typing: [root@localhost tomcat]# sudo systemctl start tomcat I get the error: Job for tomcat.service failed. See 'systemctl status tomcat.service' and 'journalctl -xn' for details. systemctl status tomcat.service prints the following: [root@localhost tomcat]# systemctl status tomcat.service tomcat.service - Apache Tomcat Web Application Container Loaded: loaded (/etc/systemd/system/tomcat.service; disabled) Active: failed (Result: exit-code) since Wed 2015-11-25 16:54:33 CET; 1min 19s ago Process: 45873 ExecStart=/opt/tomcat/bin/startup.sh (code=exited, status=203/EXEC) Nov 25 16:54:33 localhost.localdomain systemd[1]: Starting Apache Tomcat Web Application Container... Nov 25 16:54:33 localhost.localdomain systemd[1]: tomcat.service: control process exited, code=exited status=203 Nov 25 16:54:33 localhost.localdomain systemd[1]: Failed to start Apache Tomcat Web App...