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

Unified Diff: content/child/webcrypto/openssl/ec_key_openssl.h

Issue 698363002: webcrypto: Add ECDSA algorithm (chromium-side) (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@extract_more
Patch Set: sigh, more android pedantry Created 6 years, 1 month 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 side-by-side diff with in-line comments
Download patch
« no previous file with comments | « content/child/webcrypto/nss/util_nss.cc ('k') | content/child/webcrypto/openssl/ec_key_openssl.cc » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: content/child/webcrypto/openssl/ec_key_openssl.h
diff --git a/content/child/webcrypto/openssl/rsa_key_openssl.h b/content/child/webcrypto/openssl/ec_key_openssl.h
similarity index 71%
copy from content/child/webcrypto/openssl/rsa_key_openssl.h
copy to content/child/webcrypto/openssl/ec_key_openssl.h
index 91de209f985b7382d522b64cbf4d6563438c3bba..edd652dc858a79a6570d72efd2028b9d273f7548 100644
--- a/content/child/webcrypto/openssl/rsa_key_openssl.h
+++ b/content/child/webcrypto/openssl/ec_key_openssl.h
@@ -2,8 +2,8 @@
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
-#ifndef CONTENT_CHILD_WEBCRYPTO_OPENSSL_RSA_KEY_OPENSSL_H_
-#define CONTENT_CHILD_WEBCRYPTO_OPENSSL_RSA_KEY_OPENSSL_H_
+#ifndef CONTENT_CHILD_WEBCRYPTO_OPENSSL_EC_KEY_OPENSSL_H_
+#define CONTENT_CHILD_WEBCRYPTO_OPENSSL_EC_KEY_OPENSSL_H_
#include "content/child/webcrypto/algorithm_implementation.h"
@@ -11,29 +11,21 @@ namespace content {
namespace webcrypto {
-// Base class for an RSA algorithm whose keys additionaly have a hash parameter
-// bound to them. Provides functionality for generating, importing, and
-// exporting keys.
-class RsaHashedAlgorithm : public AlgorithmImplementation {
+// Base class for an EC algorithm. Provides functionality for generating,
+// importing, and exporting keys.
+class EcAlgorithm : public AlgorithmImplementation {
public:
// |all_public_key_usages| and |all_private_key_usages| are the set of
// WebCrypto key usages that are valid for created keys (public and private
// respectively).
- //
- // For instance if public keys support encryption and wrapping, and private
- // keys support decryption and unwrapping callers should set:
- // all_public_key_usages = UsageEncrypt | UsageWrap
- // all_private_key_usages = UsageDecrypt | UsageUnwrap
- // This information is used when importing or generating keys, to enforce
- // that valid key usages are allowed.
- RsaHashedAlgorithm(blink::WebCryptoKeyUsageMask all_public_key_usages,
- blink::WebCryptoKeyUsageMask all_private_key_usages)
+ EcAlgorithm(blink::WebCryptoKeyUsageMask all_public_key_usages,
+ blink::WebCryptoKeyUsageMask all_private_key_usages)
: all_public_key_usages_(all_public_key_usages),
all_private_key_usages_(all_private_key_usages) {}
- // For instance "RSA-OAEP-256".
+ // For instance "ES256".
virtual const char* GetJwkAlgorithm(
- const blink::WebCryptoAlgorithmId hash) const = 0;
+ const blink::WebCryptoNamedCurve curve) const = 0;
Status GenerateKey(const blink::WebCryptoAlgorithm& algorithm,
bool extractable,
@@ -83,12 +75,12 @@ class RsaHashedAlgorithm : public AlgorithmImplementation {
blink::WebCryptoKey* key) const override;
private:
- blink::WebCryptoKeyUsageMask all_public_key_usages_;
- blink::WebCryptoKeyUsageMask all_private_key_usages_;
+ const blink::WebCryptoKeyUsageMask all_public_key_usages_;
+ const blink::WebCryptoKeyUsageMask all_private_key_usages_;
};
} // namespace webcrypto
} // namespace content
-#endif // CONTENT_CHILD_WEBCRYPTO_OPENSSL_RSA_KEY_OPENSSL_H_
+#endif // CONTENT_CHILD_WEBCRYPTO_OPENSSL_EC_KEY_OPENSSL_H_
« no previous file with comments | « content/child/webcrypto/nss/util_nss.cc ('k') | content/child/webcrypto/openssl/ec_key_openssl.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698