Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(72)

Side by Side Diff: chrome/browser/chromeos/cros/cert_library.cc

Issue 11991002: Merge 176800 (Closed) Base URL: svn://svn.chromium.org/chrome/branches/1364/src/
Patch Set: Created 7 years, 11 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
OLDNEW
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #include "chrome/browser/chromeos/cros/cert_library.h" 5 #include "chrome/browser/chromeos/cros/cert_library.h"
6 6
7 #include <algorithm> 7 #include <algorithm>
8 8
9 #include "base/chromeos/chromeos_version.h" 9 #include "base/chromeos/chromeos_version.h"
10 #include "base/command_line.h" 10 #include "base/command_line.h"
(...skipping 179 matching lines...) Expand 10 before | Expand all | Expand 10 after
190 CHECK(BrowserThread::CurrentlyOn(BrowserThread::UI)); 190 CHECK(BrowserThread::CurrentlyOn(BrowserThread::UI));
191 return server_certs_; 191 return server_certs_;
192 } 192 }
193 193
194 virtual const CertList& GetCACertificates() const OVERRIDE { 194 virtual const CertList& GetCACertificates() const OVERRIDE {
195 CHECK(BrowserThread::CurrentlyOn(BrowserThread::UI)); 195 CHECK(BrowserThread::CurrentlyOn(BrowserThread::UI));
196 return server_ca_certs_; 196 return server_ca_certs_;
197 } 197 }
198 198
199 virtual std::string EncryptToken(const std::string& token) OVERRIDE { 199 virtual std::string EncryptToken(const std::string& token) OVERRIDE {
200 // Don't care about token encryption while debugging.
201 if (!base::chromeos::IsRunningOnChromeOS())
202 return token;
203
200 if (!LoadSupplementalUserKey()) { 204 if (!LoadSupplementalUserKey()) {
201 LOG(WARNING) << "Supplemental user key is not available for encrypt."; 205 LOG(WARNING) << "Supplemental user key is not available for encrypt.";
202 return std::string(); 206 return std::string();
203 } 207 }
204 crypto::Encryptor encryptor; 208 crypto::Encryptor encryptor;
205 if (!encryptor.Init(supplemental_user_key_.get(), crypto::Encryptor::CTR, 209 if (!encryptor.Init(supplemental_user_key_.get(), crypto::Encryptor::CTR,
206 std::string())) { 210 std::string())) {
207 LOG(WARNING) << "Failed to initialize Encryptor."; 211 LOG(WARNING) << "Failed to initialize Encryptor.";
208 return std::string(); 212 return std::string();
209 } 213 }
210 std::string salt = 214 std::string salt =
211 CrosLibrary::Get()->GetCryptohomeLibrary()->GetSystemSalt(); 215 CrosLibrary::Get()->GetCryptohomeLibrary()->GetSystemSalt();
212 std::string nonce = salt.substr(0, kKeySize); 216 std::string nonce = salt.substr(0, kKeySize);
213 std::string encoded_token; 217 std::string encoded_token;
214 CHECK(encryptor.SetCounter(nonce)); 218 CHECK(encryptor.SetCounter(nonce));
215 if (!encryptor.Encrypt(token, &encoded_token)) { 219 if (!encryptor.Encrypt(token, &encoded_token)) {
216 LOG(WARNING) << "Failed to encrypt token."; 220 LOG(WARNING) << "Failed to encrypt token.";
217 return std::string(); 221 return std::string();
218 } 222 }
219 223
220 return StringToLowerASCII(base::HexEncode( 224 return StringToLowerASCII(base::HexEncode(
221 reinterpret_cast<const void*>(encoded_token.data()), 225 reinterpret_cast<const void*>(encoded_token.data()),
222 encoded_token.size())); 226 encoded_token.size()));
223 } 227 }
224 228
225 virtual std::string DecryptToken( 229 virtual std::string DecryptToken(
226 const std::string& encrypted_token_hex) OVERRIDE { 230 const std::string& encrypted_token_hex) OVERRIDE {
231 // Don't care about token encryption while debugging.
232 if (!base::chromeos::IsRunningOnChromeOS())
233 return encrypted_token_hex;
234
227 if (!LoadSupplementalUserKey()) { 235 if (!LoadSupplementalUserKey()) {
228 LOG(WARNING) << "Supplemental user key is not available for decrypt."; 236 LOG(WARNING) << "Supplemental user key is not available for decrypt.";
229 return std::string(); 237 return std::string();
230 } 238 }
231 return DecryptTokenWithKey(supplemental_user_key_.get(), 239 return DecryptTokenWithKey(supplemental_user_key_.get(),
232 CrosLibrary::Get()->GetCryptohomeLibrary()->GetSystemSalt(), 240 CrosLibrary::Get()->GetCryptohomeLibrary()->GetSystemSalt(),
233 encrypted_token_hex); 241 encrypted_token_hex);
234 } 242 }
235 243
236 // net::CertDatabase::Observer implementation. Observer added on UI thread. 244 // net::CertDatabase::Observer implementation. Observer added on UI thread.
(...skipping 362 matching lines...) Expand 10 before | Expand all | Expand 10 after
599 net::X509Certificate* cert = GetCertificateAt(index); 607 net::X509Certificate* cert = GetCertificateAt(index);
600 net::X509Certificate::OSCertHandle cert_handle = cert->os_cert_handle(); 608 net::X509Certificate::OSCertHandle cert_handle = cert->os_cert_handle();
601 std::string id = x509_certificate_model::GetPkcs11Id(cert_handle); 609 std::string id = x509_certificate_model::GetPkcs11Id(cert_handle);
602 if (id == pkcs11_id) 610 if (id == pkcs11_id)
603 return index; 611 return index;
604 } 612 }
605 return -1; // Not found. 613 return -1; // Not found.
606 } 614 }
607 615
608 } // chromeos 616 } // chromeos
OLDNEW
« no previous file with comments | « chrome/browser/chromeos/chrome_browser_main_chromeos.cc ('k') | chrome/browser/chromeos/login/existing_user_controller.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698