| OLD | NEW |
| 1 // Copyright 2013 The Chromium Authors. All rights reserved. | 1 // Copyright 2013 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 "content/renderer/webcrypto/webcrypto_util.h" | 5 #include "content/renderer/webcrypto/webcrypto_util.h" |
| 6 | 6 |
| 7 #include "base/base64.h" | 7 #include "base/base64.h" |
| 8 #include "base/logging.h" | 8 #include "base/logging.h" |
| 9 #include "third_party/WebKit/public/platform/WebCryptoAlgorithm.h" | 9 #include "third_party/WebKit/public/platform/WebCryptoAlgorithm.h" |
| 10 #include "third_party/WebKit/public/platform/WebCryptoAlgorithmParams.h" | 10 #include "third_party/WebKit/public/platform/WebCryptoAlgorithmParams.h" |
| (...skipping 89 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 100 } | 100 } |
| 101 | 101 |
| 102 Status Status::ErrorImportEmptyKeyData() { | 102 Status Status::ErrorImportEmptyKeyData() { |
| 103 return Status("No key data was provided"); | 103 return Status("No key data was provided"); |
| 104 } | 104 } |
| 105 | 105 |
| 106 Status Status::ErrorUnexpectedKeyType() { | 106 Status Status::ErrorUnexpectedKeyType() { |
| 107 return Status("The key is not of the expected type"); | 107 return Status("The key is not of the expected type"); |
| 108 } | 108 } |
| 109 | 109 |
| 110 Status Status::ErrorKeyAlgorithmMismatch() { |
| 111 return Status("The key's algorithm doesn't match that of operation"); |
| 112 } |
| 113 |
| 110 Status Status::ErrorIncorrectSizeAesCbcIv() { | 114 Status Status::ErrorIncorrectSizeAesCbcIv() { |
| 111 return Status("The \"iv\" has an unexpected length -- must be 16 bytes"); | 115 return Status("The \"iv\" has an unexpected length -- must be 16 bytes"); |
| 112 } | 116 } |
| 113 | 117 |
| 114 Status Status::ErrorDataTooLarge() { | 118 Status Status::ErrorDataTooLarge() { |
| 115 return Status("The provided data is too large"); | 119 return Status("The provided data is too large"); |
| 116 } | 120 } |
| 117 | 121 |
| 118 Status Status::ErrorUnsupported() { | 122 Status Status::ErrorUnsupported() { |
| 119 return Status("The requested operation is unsupported"); | 123 return Status("The requested operation is unsupported"); |
| (...skipping 199 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 319 return 64; | 323 return 64; |
| 320 case blink::WebCryptoAlgorithmIdSha384: | 324 case blink::WebCryptoAlgorithmIdSha384: |
| 321 case blink::WebCryptoAlgorithmIdSha512: | 325 case blink::WebCryptoAlgorithmIdSha512: |
| 322 return 128; | 326 return 128; |
| 323 default: | 327 default: |
| 324 NOTREACHED(); | 328 NOTREACHED(); |
| 325 return 0; | 329 return 0; |
| 326 } | 330 } |
| 327 } | 331 } |
| 328 | 332 |
| 333 bool IsAlgorithmAsymmetric(const blink::WebCryptoAlgorithm& algorithm) { |
| 334 // TODO(padolph): include all other asymmetric algorithms once they are |
| 335 // defined, e.g. EC and DH. |
| 336 return (algorithm.id() == blink::WebCryptoAlgorithmIdRsaEsPkcs1v1_5 || |
| 337 algorithm.id() == blink::WebCryptoAlgorithmIdRsaSsaPkcs1v1_5 || |
| 338 algorithm.id() == blink::WebCryptoAlgorithmIdRsaOaep); |
| 339 } |
| 340 |
| 329 } // namespace webcrypto | 341 } // namespace webcrypto |
| 330 | 342 |
| 331 } // namespace content | 343 } // namespace content |
| OLD | NEW |