Tell me more ×
Super User is a question and answer site for computer enthusiasts and power users. It's 100% free, no registration required.

Are they encrypted in disk? How? Are they safe, for example, in the event of someone booting from a Live CD and mounting the hard disk?

How is the encryption key generated? Is it different in Windows and Linux?

share|improve this question
Note that Google refused to implement a master password (as Firefox has) because it would create a false sense of security, and there are tools like Chromepass that can decrypt the passwords database, provided the user is logged in. – Dan Dascalescu Dec 3 '12 at 13:54

3 Answers

The passwords are encrypted and stored in a SQLite database:

The important piece here is CryptProtectData, which is a Windows API function for encrypting data. Data encrypted with this function is pretty solid. It can only be decrypted on the same machine and by the same user that encrypted it in the first place.

share|improve this answer
But how is the encryption key generated? Depending on this I would consider the scheme more or less secure. And what about Linux? – Óscar May 29 '10 at 18:39
@Óscar: On Windows, CryptProtectData uses your Windows credentials (not the password, but some other data) as the key. AFAIK, it's the same function used to protect your certificates, network credentials and all that stuff. – grawity May 29 '10 at 19:23
3  
@Óscar: On Linux, Encryptor::EncryptString does not do anything. There seems to be code for using GNOME Keyring and KDE Wallet. – grawity May 29 '10 at 19:38
Correct. On Linux, KDE Wallet, GNOME Keyring, or one other supported native password store (which I forget offhand) is used instead. – Michael Hampton Oct 7 '12 at 23:47
1  
so...it seems it is possible to have another separate app that basically snoops your chrome passwords, given that you're already logged in and it's running as you? – rogerdpack Nov 26 '12 at 20:35

They are "encrypted" but it's a reversable encryption. Chrome has to send the raw password to the site it was stored for, so if Chrome can decrypt and use it, so can other people. Storing passwords is never 100% safe.

share|improve this answer
But which is the encryption key? – Óscar May 29 '10 at 18:38
1  
Check the answer of sblair. Note that there is a possibility of decryption, no matter how it is stored. With the proper software, anyone could decrypt it. When you have logged into your Windows account until the moment you log out, your passwords are completely usable and completely viewable. Just indicating that there is not a 100% safe solution of storing browser passwords. – BloodPhilia May 29 '10 at 18:39
1  
No but if your computer is hijacked/infected, browser passwords could easily be recovered without you noticing. Once again, all I'm pointing out is that there's no 100% failproof password storage for browsers... Just answering your question about their safety. – BloodPhilia May 29 '10 at 18:48
1  
There is no "master password". CryptProtectData is a Windows API, Windows actually does all the encryption and retrieval, the encryption key is dependent on your user account and system. – BloodPhilia May 29 '10 at 18:52
1  
This should provide you with an explanation of its workings: msdn.microsoft.com/en-us/library/ms995355.aspx – BloodPhilia May 29 '10 at 19:02
show 3 more comments

Google Chrome encrypts passwords and stores them in SQLite DB but they could be easily viewed with the special password recovery applications such as ChromePass (http://www.nirsoft.net/utils/chromepass.html) or SecurePassword Kit (http://www.getsecurepassword.com/)

share|improve this answer

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.