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

Side by Side Diff: content/child/webcrypto/platform_crypto.h

Issue 272033003: [refactor] Change ordering of wrapkey parameters (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Created 6 years, 7 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 2014 The Chromium Authors. All rights reserved. 1 // Copyright 2014 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 #ifndef CONTENT_CHILD_WEBCRYPTO_PLATFORM_CRYPTO_H_ 5 #ifndef CONTENT_CHILD_WEBCRYPTO_PLATFORM_CRYPTO_H_
6 #define CONTENT_CHILD_WEBCRYPTO_PLATFORM_CRYPTO_H_ 6 #define CONTENT_CHILD_WEBCRYPTO_PLATFORM_CRYPTO_H_
7 7
8 #include <vector> 8 #include <vector>
9 9
10 #include "base/basictypes.h" 10 #include "base/basictypes.h"
(...skipping 211 matching lines...) Expand 10 before | Expand all | Expand 10 after
222 std::vector<uint8>* modulus, 222 std::vector<uint8>* modulus,
223 std::vector<uint8>* public_exponent); 223 std::vector<uint8>* public_exponent);
224 224
225 // Preconditions: 225 // Preconditions:
226 // * |key| is non-null. 226 // * |key| is non-null.
227 Status ExportKeyPkcs8(PrivateKey* key, 227 Status ExportKeyPkcs8(PrivateKey* key,
228 const blink::WebCryptoKeyAlgorithm& key_algorithm, 228 const blink::WebCryptoKeyAlgorithm& key_algorithm,
229 std::vector<uint8>* buffer); 229 std::vector<uint8>* buffer);
230 230
231 // Preconditions: 231 // Preconditions:
232 // * |key| is non-null
232 // * |wrapping_key| is non-null 233 // * |wrapping_key| is non-null
233 // * |key| is non-null 234 Status WrapSymKeyAesKw(SymKey* key,
234 Status WrapSymKeyAesKw(SymKey* wrapping_key, 235 SymKey* wrapping_key,
235 SymKey* key,
236 std::vector<uint8>* buffer); 236 std::vector<uint8>* buffer);
237 237
238 // Unwraps (decrypts) |wrapped_key_data| using AES-KW and places the results in 238 // Unwraps (decrypts) |wrapped_key_data| using AES-KW and places the results in
239 // a WebCryptoKey. Raw key data remains inside NSS. This function should be used 239 // a WebCryptoKey. Raw key data remains inside NSS. This function should be used
240 // when the input |wrapped_key_data| is known to result in symmetric raw key 240 // when the input |wrapped_key_data| is known to result in symmetric raw key
241 // data after AES-KW decryption. 241 // data after AES-KW decryption.
242 // Preconditions: 242 // Preconditions:
243 // * |wrapping_key| is non-null 243 // * |wrapping_key| is non-null
244 // * |key| is non-null 244 // * |key| is non-null
245 // * |wrapped_key_data| is at least 24 bytes and a multiple of 8 bytes 245 // * |wrapped_key_data| is at least 24 bytes and a multiple of 8 bytes
(...skipping 10 matching lines...) Expand all
256 // interpreted as generic bytes. 256 // interpreted as generic bytes.
257 // Preconditions: 257 // Preconditions:
258 // * |key| is non-null 258 // * |key| is non-null
259 // * |data| is at least 24 bytes and a multiple of 8 bytes 259 // * |data| is at least 24 bytes and a multiple of 8 bytes
260 // * |buffer| is non-null. 260 // * |buffer| is non-null.
261 Status DecryptAesKw(SymKey* key, 261 Status DecryptAesKw(SymKey* key,
262 const CryptoData& data, 262 const CryptoData& data,
263 std::vector<uint8>* buffer); 263 std::vector<uint8>* buffer);
264 264
265 // Preconditions: 265 // Preconditions:
266 // * |key| is non-null
266 // * |wrapping_key| is non-null 267 // * |wrapping_key| is non-null
267 // * |key| is non-null 268 Status WrapSymKeyRsaEs(SymKey* key,
268 Status WrapSymKeyRsaEs(PublicKey* wrapping_key, 269 PublicKey* wrapping_key,
269 SymKey* key,
270 std::vector<uint8>* buffer); 270 std::vector<uint8>* buffer);
271 271
272 // Preconditions: 272 // Preconditions:
273 // * |wrapping_key| is non-null 273 // * |wrapping_key| is non-null
274 // * |key| is non-null 274 // * |key| is non-null
275 // * |algorithm.id()| is for a symmetric key algorithm. 275 // * |algorithm.id()| is for a symmetric key algorithm.
276 Status UnwrapSymKeyRsaEs(const CryptoData& wrapped_key_data, 276 Status UnwrapSymKeyRsaEs(const CryptoData& wrapped_key_data,
277 PrivateKey* wrapping_key, 277 PrivateKey* wrapping_key,
278 const blink::WebCryptoAlgorithm& algorithm, 278 const blink::WebCryptoAlgorithm& algorithm,
279 bool extractable, 279 bool extractable,
280 blink::WebCryptoKeyUsageMask usage_mask, 280 blink::WebCryptoKeyUsageMask usage_mask,
281 blink::WebCryptoKey* key); 281 blink::WebCryptoKey* key);
282 282
283 } // namespace platform 283 } // namespace platform
284 284
285 } // namespace webcrypto 285 } // namespace webcrypto
286 286
287 } // namespace content 287 } // namespace content
288 288
289 #endif // CONTENT_CHILD_WEBCRYPTO_PLATFORM_CRYPTO_H_ 289 #endif // CONTENT_CHILD_WEBCRYPTO_PLATFORM_CRYPTO_H_
OLDNEW
« no previous file with comments | « no previous file | content/child/webcrypto/platform_crypto_nss.cc » ('j') | content/child/webcrypto/webcrypto_impl.cc » ('J')

Powered by Google App Engine
This is Rietveld 408576698