summaryrefslogtreecommitdiffstats
path: root/crypto
Commit message (Collapse)AuthorAgeFilesLines
* Add RSAPrivateKey stub implementation for iOS.msarda@chromium.org2012-08-202-0/+76
| | | | | | | | | RSAPrivateKey is not used on iOS, but code calling it is compiled. To avoid ifdef'ing in the client code, the class is stubbed out. Review URL: https://chromiumcodereview.appspot.com/10823309 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@152300 0039d316-1c4b-4281-b951-d872f2087c98
* Upstream minor iOS crypto diffs.msarda@chromium.org2012-08-142-2/+5
| | | | | | | | | | This CL upstreams two minor changes of crypto for iOS: * nss_util.cc: On iOS, the default NSS root certificates need to be initialized when no persistent database is used. * symmetric_key_unittest.cc: Turn off an OS X-specific code path for iOS. Review URL: https://chromiumcodereview.appspot.com/10831307 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@151545 0039d316-1c4b-4281-b951-d872f2087c98
* Built crypto and crypto_unittests for iOSmsarda@chromium.org2012-08-093-7/+27
| | | | | | | | | | | Adds iOS support to crypto.gyp. Both targets now build, but the tests may not run correctly, and not all the crypto code is correct yet for iOS. BUG=NONE Review URL: https://chromiumcodereview.appspot.com/10830183 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@150775 0039d316-1c4b-4281-b951-d872f2087c98
* Added crypto random-number generatormniknami@chromium.org2012-08-026-7/+78
| | | | | | | | | | | Added a cryptographic random-number generator to crypto/. Modified sync to use this function instead. May also be used by Cloud Print in the future. Review URL: https://chromiumcodereview.appspot.com/10698177 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@149689 0039d316-1c4b-4281-b951-d872f2087c98
* Add a DCHECK to ECSignatureCreator::SetFactoryForTesting to help avoid ↵rch@chromium.org2012-08-011-0/+4
| | | | | | | | use-after-free problems. Review URL: https://chromiumcodereview.appspot.com/10828118 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@149506 0039d316-1c4b-4281-b951-d872f2087c98
* Make 'License' field in third-party metadata requiredsteveblock@chromium.org2012-08-011-0/+1
| | | | | | | | | | | | | | | | This will simplify the addition of a tool to check licenses for the purpose of the Android WebView build. See also http://codereview.chromium.org/10827099 Also adds other missing fields to these README.chromium files as required by presubmit checks and fixes a regex used to enforce this. BUG=138921 Review URL: https://chromiumcodereview.appspot.com/10821103 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@149423 0039d316-1c4b-4281-b951-d872f2087c98
* src/crypto should build on the x86_64 architecture.mmaerean@adobe.com2012-07-302-42/+81
| | | | | | | | | | This patch solves the build issues that are directly related to building crypto for the x86_64 architecture. BUG=136072 Review URL: https://chromiumcodereview.appspot.com/10738003 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@149047 0039d316-1c4b-4281-b951-d872f2087c98
* crypto: Tag some overridden methods with OVERRIDE.tfarina@chromium.org2012-07-301-4/+5
| | | | | | | | | | BUG=115047 R=rsleevi@chromium.org Review URL: https://chromiumcodereview.appspot.com/10824076 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@148928 0039d316-1c4b-4281-b951-d872f2087c98
* crypto: special case ∞+a, a+∞ and a+a in p224.agl@chromium.org2012-07-272-44/+113
| | | | | | | | | | | | | | | | | | | | In unrelated work, I found that the group addition formula used in p224.cc doesn't work when one of the arguments is the point at infinity. This change catches that case and simplifies the ScalarMult loop as a consequence. In the course of doing this, I found a couple of bugs in Contract that would have produced the wrong answer is very rare cases. I also added a catch for a+a. This can't happen in the ScalarMult loop, but it could happen from SPAKE2 at a rate of 1 in ~2**220 evaluations. BUG=none TEST=crypto_unittests Review URL: https://chromiumcodereview.appspot.com/10822019 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@148815 0039d316-1c4b-4281-b951-d872f2087c98
* Declare password_data_count_ as int to match the return type of itswtc@chromium.org2012-07-191-1/+1
| | | | | | | | | | | getter method. R=rsleevi@chromium.org BUG=none TEST=none Review URL: https://chromiumcodereview.appspot.com/10800038 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@147541 0039d316-1c4b-4281-b951-d872f2087c98
* Remove #pragma once from cryptoajwong@chromium.org2012-07-1128-42/+14
| | | | | | Review URL: https://chromiumcodereview.appspot.com/10695140 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@146077 0039d316-1c4b-4281-b951-d872f2087c98
* NSS Channel ID: don't check ECC support on every socket creation.mattm@chromium.org2012-07-093-4/+46
| | | | | | | | | | | Add static function to ECPrivateKey to get which NSS slot it uses. BUG=127506 Review URL: https://chromiumcodereview.appspot.com/10700099 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@145777 0039d316-1c4b-4281-b951-d872f2087c98
* Convert SSLClientSocketNSS to use the NSS Channel ID callback.mattm@chromium.org2012-06-261-1/+1
| | | | | | | | | | BUG=129174,127506 TEST=run a TLS Channel ID supporting server, try connecting to it. TBR=joi@chromium.org Review URL: https://chromiumcodereview.appspot.com/10560020 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@144093 0039d316-1c4b-4281-b951-d872f2087c98
* Use NSS for symmetric key crypto operations on Windows and Mac.ddorwin@chromium.org2012-06-158-501/+58
| | | | | | | | | | | | | | | Encryptor, HMAC, and SymmetricKey now use NSS on all platforms except Android. This allows us to use them inside the sandbox, something that was not possible when using the platform APIs. On Windows, Native Client 64-bit builds still use the the platform APIs. BUG=127803,124741 TEST=Existing tests since there is no change in functionality. Review URL: https://chromiumcodereview.appspot.com/10543146 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@142356 0039d316-1c4b-4281-b951-d872f2087c98
* Fixing gcc 4.7 building problems.shenhan@google.com2012-06-053-10/+18
| | | | | | | | | | | | | | | | | | | | | | | | | | a) - gcc-4.7 improved the implicit headers that it includes. with <4.7, the gthr-default.h file always pulls in unistd.h. with >=4.7, they avoided that include when possible. so code that isn't including unistd.h itself but needs it now breaks. b) - narrowing conversion in initiliazation list now raises an 'ill-formed conversion' warning, which causes error when -Werror is given. [THIS PART IS NOW REVERTED IN THE PATCH} c) - included patches from pastebin - http://pastebin.com/raw.php?i=p3UKs7Cg Note - this may not be fixing all the gcc 4.7 build problems for all parts, but rather than submitting one big-fix-for-all CL, we'd better do it incrementally (given that all the modification is reasonable and minor) so that at least some parts get a successful gcc 4.7 build. BUG=None TEST=Built successfully using GCC-4.7 under chromium chroot Review URL: https://chromiumcodereview.appspot.com/10451068 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@140470 0039d316-1c4b-4281-b951-d872f2087c98
* Remove TPMTokenInfoDelegate to make TPM initialization code path simplehashimoto@chromium.org2012-05-172-103/+55
| | | | | | | | | | | Move Cryptohome D-Bus method calls to chromeos::CertLibrary BUG=125848 TEST=can login Review URL: https://chromiumcodereview.appspot.com/10332191 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@137646 0039d316-1c4b-4281-b951-d872f2087c98
* Upstream: Depend on OpenSSL directly instead of via system.gypjingzhao@chromium.org2012-05-161-1/+1
| | | | | | | | | | | | | build/android/system.gyp has an extra level of abstraction for openssl which is currently not really doing anything since we don't yet support using the system openssl on android. Remove it for now, because this stops there from being two targets called "ssl" (this one and the one for linux) - solving some problems with the android build backend for gyp. Review URL: https://chromiumcodereview.appspot.com/10332106 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@137379 0039d316-1c4b-4281-b951-d872f2087c98
* Remove crypto::IsTPMTokenAvailblehashimoto@chromium.org2012-05-162-16/+0
| | | | | | | | | BUG=126674 TEST=build success Review URL: https://chromiumcodereview.appspot.com/10381151 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@137357 0039d316-1c4b-4281-b951-d872f2087c98
* Change the way _EXPORT macros look.thakis@chromium.org2012-05-151-0/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | With the current setup, if you have a header file my_class.h class BASE_EXPORT MyClass { public: void MyInlineMethod() { /* do stuff, inline */ } }; then every cc file that includes my_class.h will have a public symbol for MyInlineMethod (because inline methods need to be emitted to every translation unit, and the linker sorts them out). With the components build, the linker can't decide to drop these inline methods, so every .so that uses this header file will have the same public symbol. With this proposed change, the symbol will only be visible in the target the header file belongs to, and it will be hidden in all other components. That's cleaner, and it also prevents accident hidden dependencies (say target A depends on B, and B depends on C. A accidentally uses an inline function from a class in C. With this change, that would result in a linker error, and an explicit dependency from A on C would have to be added). Also add a missing CHROMEOS_IMPLEMENTATION define which went unnoticed until now. BUG=90078 TEST=Things still build. TBR=ben, tony, viettrungluu, thestig, agl, willchan Review URL: https://chromiumcodereview.appspot.com/10386108 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@137130 0039d316-1c4b-4281-b951-d872f2087c98
* Add a wrong key that should be detected by all implementations.wtc@chromium.org2012-05-111-5/+24
| | | | | | | | | | R=rsleevi@chromium.org BUG=127586 TEST=EncryptorTest.DecryptWrongKey Review URL: https://chromiumcodereview.appspot.com/10378095 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@136493 0039d316-1c4b-4281-b951-d872f2087c98
* Don't sign extensions with an unsupported/invalid private keyrsleevi@chromium.org2012-05-041-13/+16
| | | | | | | | | | BUG=125997 TEST=manually test with unsupported/invalid key Review URL: http://codereview.chromium.org/10370002 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@135292 0039d316-1c4b-4281-b951-d872f2087c98
* win: Fix a few minor issues found by clang.thakis@chromium.org2012-05-021-11/+5
| | | | | | | | | | | | No intended functionality change. BUG=82385 TEST=compiles Review URL: http://codereview.chromium.org/10332002 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@134988 0039d316-1c4b-4281-b951-d872f2087c98
* Demonstrate that not all wrong keys can be detected by padding error.wtc@chromium.org2012-04-271-0/+14
| | | | | | | | | | R=xhwang@chromium.org BUG=124434 TEST=crypto_unittests --gtest_filter=EncryptorTest.DecryptWrongKey Review URL: http://codereview.chromium.org/10247001 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@134220 0039d316-1c4b-4281-b951-d872f2087c98
* Add a warning about Decrypt() being used as a padding oracle.wtc@chromium.org2012-04-251-1/+9
| | | | | | | | | R=agl@chromium.org,rsleevi@chromium.org BUG=124434 TEST=none Review URL: https://chromiumcodereview.appspot.com/10216004 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@133822 0039d316-1c4b-4281-b951-d872f2087c98
* Add a wrong key test into EncryptorTest.xhwang@chromium.org2012-04-231-1/+45
| | | | | | | | | | | | | The behavior of crypto::Encryptor::Decrypt() funcion is different on different platforms. Add this test to test this. BUG=124434 TEST=this is a new test Review URL: http://codereview.chromium.org/10146012 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@133569 0039d316-1c4b-4281-b951-d872f2087c98
* Properly pass NSS parameters when initializing the PKCS#11 module on CrOSrsleevi@chromium.org2012-04-061-52/+7
| | | | | | | | | | | | | | | | When initializing the CHAPS PKCS#11 module in CrOS, properly pass the NSS parameters to SECMOD_LoadUserModule. This ensures that the default flags for the default slot to mark the slot as friendly, which means it is not necessary to call C_Login before calling any read-only operations. Any actions that fail in read-only mode will still call C_Login. BUG=118206, chromium-os:28842 TEST=See bug Review URL: http://codereview.chromium.org/9963127 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@131075 0039d316-1c4b-4281-b951-d872f2087c98
* Forces TPM slot to be "Friendly", allowing NSS to avoid lockinggspencer@chromium.org2012-04-031-3/+48
| | | | | | | | | | | Also added VLOG(1) logging for PKCS11 slot info. BUG=chromium:118206 TEST=Ran on device, tried to repro bug, and was unable to. Confirmed that friendly bit was set (based on log output). Review URL: https://chromiumcodereview.appspot.com/9969019 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@130474 0039d316-1c4b-4281-b951-d872f2087c98
* Fix some grammar in comments, error messages and documentation.gavinp@chromium.org2012-04-031-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Thanks to all my reviewers, you are legion. I hope I didn't waste too much of your time. BUG=None Review URL: http://codereview.chromium.org/9854039 Review URL: http://codereview.chromium.org/9854043 Review URL: http://codereview.chromium.org/9863058 Review URL: http://codereview.chromium.org/9863059 Review URL: http://codereview.chromium.org/9887005 Review URL: http://codereview.chromium.org/9890002 Review URL: http://codereview.chromium.org/9891002 Review URL: http://codereview.chromium.org/9895003 Review URL: http://codereview.chromium.org/9896002 Review URL: http://codereview.chromium.org/9896003 Review URL: http://codereview.chromium.org/9897002 Review URL: http://codereview.chromium.org/9897003 Review URL: http://codereview.chromium.org/9903004 Review URL: http://codereview.chromium.org/9904003 Review URL: http://codereview.chromium.org/9904002 Review URL: http://codereview.chromium.org/9904004 Review URL: http://codereview.chromium.org/9906002 Review URL: http://codereview.chromium.org/9906001 Review URL: http://codereview.chromium.org/9906003 Review URL: http://codereview.chromium.org/9909001 Review URL: http://codereview.chromium.org/9909002 Review URL: http://codereview.chromium.org/9909003 Review URL: http://codereview.chromium.org/9909004 Review URL: http://codereview.chromium.org/9910001 Review URL: http://codereview.chromium.org/9910002 Review URL: http://codereview.chromium.org/9910010 Review URL: http://codereview.chromium.org/9911001 Review URL: http://codereview.chromium.org/9912001 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@130359 0039d316-1c4b-4281-b951-d872f2087c98
* init key_ in ctortbreisacher@chromium.org2012-03-301-1/+3
| | | | | | | | | | CID=16392 BUG=none TEST=none Review URL: https://chromiumcodereview.appspot.com/9861027 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@129953 0039d316-1c4b-4281-b951-d872f2087c98
* Add base::HostToNetXX() & NetToHostXX(), and use them to replace htonX() & ↵wez@chromium.org2012-03-283-30/+30
| | | | | | | | | | | | | | ntohX() in Chrome. This primarily addresses issues with code using the OS-provided htonX() & ntohX() functions from within the Chrome sandbox. Under Windows these functions are provided by ws2_32.dll, which is no longer available within Chrome's sandbox. The new base::HostToNetXX() and NetToHostXX() functions are safe for use by sandboxed code on Windows, and provide a single place where future fixes for other platforms can be made. BUG=117252 Review URL: http://codereview.chromium.org/9716020 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@129476 0039d316-1c4b-4281-b951-d872f2087c98
* New CRYPTO_EXPORT macros.thakis@chromium.org2012-03-282-2/+3
| | | | | | | | | BUG=90078 TEST=none Review URL: https://chromiumcodereview.appspot.com/9873017 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@129368 0039d316-1c4b-4281-b951-d872f2087c98
* Fix a few warnings that -Wnull-conversion of a future clang will complain about.thakis@chromium.org2012-03-282-7/+8
| | | | | | | | | | | BUG=none TEST=none TBR=OWNERS NOTRY=true Review URL: http://codereview.chromium.org/9845017 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@129337 0039d316-1c4b-4281-b951-d872f2087c98
* Reland - Create a database for NaCl validation caching that is shared ↵nduca@google.com2012-03-273-21/+70
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | between processes. Originally reverted in 129077 due to perf regression. Followup commit will fix up expectations. http://chromegw.corp.google.com/i/chromium/builders/Linux%20x64/builds/25780 This change primarily entails creating a SyncChannel between sel_ldr and the browser. Queries to the database could be made from any thread inside sel_ldr, so the query mechanism needs to be thread safe. This feature is currently disabled by default, and requires an environment variable to enable. A few changes need to be made before this features is safe and can be enabled, such as making sure each installation has a unique, crypographically secure key. BUG= http://code.google.com/p/nativeclient/issues/detail?id=2515 TEST= Run NaCl w/ NACL_VALIDATION_CACHE=1 Review URL: http://codereview.chromium.org/9796006 TBR=ncbray@chromium.org Review URL: https://chromiumcodereview.appspot.com/9808113 TBR=nduca@google.com Review URL: https://chromiumcodereview.appspot.com/9860020 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@129082 0039d316-1c4b-4281-b951-d872f2087c98
* Revert 129061 - Create a database for NaCl validation caching that is shared ↵nduca@google.com2012-03-273-70/+21
| | | | | | | | | | | | | | | | | | | | | | | | | | | between processes. Reverted due to perf regression, see http://chromegw.corp.google.com/i/chromium/builders/Linux%20x64/builds/25780 This change primarily entails creating a SyncChannel between sel_ldr and the browser. Queries to the database could be made from any thread inside sel_ldr, so the query mechanism needs to be thread safe. This feature is currently disabled by default, and requires an environment variable to enable. A few changes need to be made before this features is safe and can be enabled, such as making sure each installation has a unique, crypographically secure key. BUG= http://code.google.com/p/nativeclient/issues/detail?id=2515 TEST= Run NaCl w/ NACL_VALIDATION_CACHE=1 Review URL: http://codereview.chromium.org/9796006 TBR=ncbray@chromium.org Review URL: https://chromiumcodereview.appspot.com/9808113 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@129077 0039d316-1c4b-4281-b951-d872f2087c98
* Create a database for NaCl validation caching that is shared between processes.ncbray@chromium.org2012-03-273-21/+70
| | | | | | | | | | | | | | | | | | | This change primarily entails creating a SyncChannel between sel_ldr and the browser. Queries to the database could be made from any thread inside sel_ldr, so the query mechanism needs to be thread safe. This feature is currently disabled by default, and requires an environment variable to enable. A few changes need to be made before this features is safe and can be enabled, such as making sure each installation has a unique, crypographically secure key. BUG= http://code.google.com/p/nativeclient/issues/detail?id=2515 TEST= Run NaCl w/ NACL_VALIDATION_CACHE=1 Review URL: http://codereview.chromium.org/9796006 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@129061 0039d316-1c4b-4281-b951-d872f2087c98
* Move *keychain_mac* files to crypto/akalin@chromium.org2012-03-175-0/+993
| | | | | | | | | | | | | | | | This is in preparation for moving password_manager/encryptor* to crypto/. This also fixes an ODR violation; mock_keychain_mac.cc was being compiled in two targets which are linked together. BUG=118564 TEST= Review URL: http://codereview.chromium.org/9699112 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@127358 0039d316-1c4b-4281-b951-d872f2087c98
* mac: Make crypto_unittests depend on nsprthakis@chromium.org2012-03-151-0/+5
| | | | | | | | | | | | nss_util_unittest.cc calls PR_ImplodeTime, so this dependency is needed in the components build. BUG=90078 TEST=none Review URL: http://codereview.chromium.org/9701059 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@126958 0039d316-1c4b-4281-b951-d872f2087c98
* Don't enforce the old HMAC key size requirement in FIPS 198 Sec. 3.wtc@chromium.org2012-03-142-2/+8
| | | | | | | | | | | This requirement has been removed in FIPS 198-1. R=rsleevi@chromium.org BUG=none TEST=none Review URL: https://chromiumcodereview.appspot.com/9695058 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@126674 0039d316-1c4b-4281-b951-d872f2087c98
* Refactor Pickle Read methods to use higher performance PickleIterator.jbates@chromium.org2012-03-074-22/+19
| | | | | | | | | | | | | | | | There was a lot of redundant error checking and initialization code in all Pickle Read methods because of the void** iterator type. This change replaces the void* iterator with PickleIterator, which encapsulates the read pointer so that less error checking and initialization code is needed for reading. PickleIterator has all the necessary data to do the actual reading. The advantage of having it provide Read methods (as opposed to leaving them solely in the Pickle interface) is that the callers do not need to pass around the const Pickle* once they have a PickleIterator. Followup CLs will refactor the call sites to remove const Pickle* arguments where they are now unnecessary. Then the Pickle::Read* methods can be removed entirely. The alternative approach would have been to change the Pickle::Read methods to non-const and remove the iterator parameter (making Read methods advance an internal read pointer). Unfortunately, the const Read with iterator design is entrenched throughout the chromium code, making this a much more complex change with the same performance outcome. BUG=13108 Review URL: https://chromiumcodereview.appspot.com/9447084 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@125447 0039d316-1c4b-4281-b951-d872f2087c98
* Avoid loading ws2_32.dll just to get htons() and friends.wez@chromium.org2012-03-061-0/+8
| | | | | | | | | | | | Chrome does not load ws2_32.dll into the renderer sandbox, so code calling these functions would fail attempting to load the DLL. This CL replaces the calls with direct use of the MSVC byte-swap intrinsics. BUG=115477,116591 TEST=Chromoting client does not crash on connect on Windows. Review URL: http://codereview.chromium.org/9614004 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@125110 0039d316-1c4b-4281-b951-d872f2087c98
* Convert blocking chromeos::CryptohomeClient::Pkcs11* methods to asynchashimoto@chromium.org2012-02-282-44/+68
| | | | | | | | | | | | CryptohomeLibrary::Pkcs11* methods are removed. crypto::EnsureTPMTokenReady (renamed to InitializeTPMToken) and TPMTokenInfoDelegate::IsTokenReady are also converted to async. BUG=chromium-os:16552 TEST=Login as a user, open chrome://cryptohome and see "token_name" is displayed correctly, open chrome://settings/certificates and see "Import and Bind to Device…" button is enabled (can be pushed). Review URL: http://codereview.chromium.org/9421045 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@123956 0039d316-1c4b-4281-b951-d872f2087c98
* Fix SpdySession::WriteCredentialFrame ECPrivateKey creation args.mattm@chromium.org2012-02-287-36/+95
| | | | | | | | | | | | | | | It was passing the DER certificate instead of a SubjectPublicKeyInfo. Also adds ECSignatureCreator::SetFactoryForTesting method to allow easier testing of code that uses ECSignatureCreator. BUG=none TEST=SpdyHttpStreamTest.SendCredentialsEC Review URL: http://codereview.chromium.org/9455006 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@123940 0039d316-1c4b-4281-b951-d872f2087c98
* Properly parse UTF8Strings in certificates on Windows.rsleevi@chromium.org2012-02-153-18/+19
| | | | | | | | | | BUG=114168 TEST=https://www.verisign.co.jp appears correctly regardless of system locale. Additionally, net_unittests:X509TypesTest* should cover this. Review URL: https://chromiumcodereview.appspot.com/9358080 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@122053 0039d316-1c4b-4281-b951-d872f2087c98
* Make nss/TPM integration in ChromeOS more robust.stevenjb@chromium.org2012-02-151-3/+1
| | | | | | | | | | | | Change-Id: I09e942098cb780f110c115f5097f57e8344170cb BUG=chromium-os:26177 TEST=See issue. Ensure certificates still work with VPN and wifi. Review URL: http://codereview.chromium.org/9389028 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@122037 0039d316-1c4b-4281-b951-d872f2087c98
* mac: Add _EXPORT macros, crypto/.thakis@chromium.org2012-02-091-1/+1
| | | | | | | | | BUG=90078 TEST=none Review URL: https://chromiumcodereview.appspot.com/9369020 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@121185 0039d316-1c4b-4281-b951-d872f2087c98
* Add EnsureNSSInit in SymmetricKey::Import.xhwang@chromium.org2012-02-091-1/+2
| | | | | | | | | | BUG=none TEST=crypto unit tests Review URL: http://codereview.chromium.org/9359027 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@121152 0039d316-1c4b-4281-b951-d872f2087c98
* Use a forward declaration of RSAPrivateKey in crypto/signature_creator.h.wtc@chromium.org2012-02-086-7/+13
| | | | | | | | | | R=rch@chromium.org BUG=none TEST=no compilation errors Review URL: http://codereview.chromium.org/9348001 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@120872 0039d316-1c4b-4281-b951-d872f2087c98
* Upstream: Build crypto_unittests for Android.jingzhao@chromium.org2012-02-071-2/+2
| | | | | | Review URL: http://codereview.chromium.org/9328034 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@120727 0039d316-1c4b-4281-b951-d872f2087c98
* Fix an SECItem leak in the new ECSignatureCreator class.rnk@chromium.org2012-02-011-14/+9
| | | | | | | | | | | R=rch@chromium.org BUG=111317 TEST=ran drmemory on ECSignatureCreator.BasicTest, no longer reports leak Review URL: http://codereview.chromium.org/9302016 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@120085 0039d316-1c4b-4281-b951-d872f2087c98
* crypto: P224::Contract could produce a non-minimal representation.agl@chromium.org2012-01-311-2/+35
| | | | | | | | | | | | | | | I missed an overflow in Contract because I suspected that the prime elimination would take care of it. It didn't, and I forgot to get back to the overflow. Because of this, Contract may have produced a non-minimal representation, causing flakey failures ~0.02% of the time. BUG=110972 TEST=crypto_unittests Review URL: http://codereview.chromium.org/9104013 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@119775 0039d316-1c4b-4281-b951-d872f2087c98