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

Unified Diff: chrome/common/extensions/api/platform_keys_internal.idl

Issue 884073002: Implement chrome.platformKeys.getKeyPair(). (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@cert_impl2
Patch Set: Rebased. Created 5 years, 10 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 side-by-side diff with in-line comments
Download patch
Index: chrome/common/extensions/api/platform_keys_internal.idl
diff --git a/chrome/common/extensions/api/platform_keys_internal.idl b/chrome/common/extensions/api/platform_keys_internal.idl
index 0e2d827c125a628748b6d01557ea71738d12c25d..d3338b4fcabbd652ed07554e817398b031fee03d 100644
--- a/chrome/common/extensions/api/platform_keys_internal.idl
+++ b/chrome/common/extensions/api/platform_keys_internal.idl
@@ -12,6 +12,14 @@ namespace platformKeysInternal {
// |signature| The signature, a octet string.
callback SignCallback = void(ArrayBuffer signature);
+ // Called back by <code>getPublicKey</code>.
+ // |publicKey| The Subject Public Key Info (see X.509) of the requested
+ // certificate.
+ // |algorithm| A partial WebCrypto KeyAlgorithm containing all information
+ // that is available from the Subject Public Key Info. It does not contain
+ // signature/hash parameters.
+ callback GetPublicKeyCallback = void(ArrayBuffer publicKey, object algorithm);
+
interface Functions {
// See documentation in platformKeys.
static void selectClientCertificates(
@@ -23,9 +31,11 @@ namespace platformKeysInternal {
// |tokenId| The id of a Token returned by |getTokens|.
// |publicKey| The Subject Public Key Info of a key previously generated by
// |generateKey| in DER encoding.
- // |hashAlgorithmName| The recognized algorithm name as specified by
- // WebCrypto of the hash algorithm that will be used to digest |data|
+ // |hashAlgorithmName| The recognized algorithm name of the hash algorithm,
+ // as specified by WebCrypto, that will be used to digest |data|
// before signing. Currently supported are: SHA-{1,256,384,512}.
+ // If instead the algorithm name "none" is provided, no hashing will be
+ // applied, the data is PKCS#1 v1.5 padded but not hashed.
// TODO(pneubeck): use an enum once supported:
// http://www.crbug.com/385539 .
// |data| The data to sign.
@@ -37,5 +47,10 @@ namespace platformKeysInternal {
DOMString hashAlgorithmName,
ArrayBuffer data,
SignCallback callback);
+
+ // Calls back <code>callback</code> with details about the key certified by
+ // <code>certificate</code>.
+ static void getPublicKey(ArrayBuffer certificate,
+ GetPublicKeyCallback callback);
};
};

Powered by Google App Engine
This is Rietveld 408576698