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

Side by Side Diff: chrome/common/extensions/api/platform_keys.idl

Issue 1371103002: platformKeys: Document supported algorithms and hash functions. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 5 years, 2 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
« no previous file with comments | « no previous file | no next file » | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright 2015 The Chromium Authors. All rights reserved. 1 // Copyright 2015 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 // Use the <code>chrome.platformKeys</code> API to access client certificates 5 // Use the <code>chrome.platformKeys</code> API to access client certificates
6 // managed by the platform. If the user or policy grants the permission, an 6 // managed by the platform. If the user or policy grants the permission, an
7 // extension can use such a certficate in its custom authentication protocol. 7 // extension can use such a certficate in its custom authentication protocol.
8 // E.g. this allows usage of platform managed certificates in third party VPNs 8 // E.g. this allows usage of platform managed certificates in third party VPNs
9 // (see $(ref:vpnProvider chrome.vpnProvider)). 9 // (see $(ref:vpnProvider chrome.vpnProvider)).
10 namespace platformKeys { 10 namespace platformKeys {
(...skipping 102 matching lines...) Expand 10 before | Expand all | Expand 10 after
113 // <code>callback</code>. 113 // <code>callback</code>.
114 [nocompile] static void selectClientCertificates( 114 [nocompile] static void selectClientCertificates(
115 SelectDetails details, 115 SelectDetails details,
116 SelectCallback callback); 116 SelectCallback callback);
117 117
118 // Passes the key pair of <code>certificate</code> for usage with 118 // Passes the key pair of <code>certificate</code> for usage with
119 // $(ref:platformKeys.subtleCrypto) to <code>callback</code>. 119 // $(ref:platformKeys.subtleCrypto) to <code>callback</code>.
120 // |certificate|: The certificate of a $(ref:Match) returned by 120 // |certificate|: The certificate of a $(ref:Match) returned by
121 // $(ref:selectClientCertificates). 121 // $(ref:selectClientCertificates).
122 // |parameters|: Determines signature/hash algorithm parameters additionally 122 // |parameters|: Determines signature/hash algorithm parameters additionally
123 // to the parameters fixed by the key itself. The same parameters are 123 // to the parameters fixed by the key itself. The same parameters are
pneubeck (no reviews) 2015/09/28 13:22:26 the space at the beginning of the line led to weir
124 //   accepted as by WebCrypto's <code>importKey</code> function, e.g. 124 // accepted as by WebCrypto's <a
125 // <code>RsaHashedImportParams</code> for a RSASSA-PKCS1-v1_5 key. 125 // href="http://www.w3.org/TR/WebCryptoAPI/#SubtleCrypto-method-importKey">i mportKey</a>
126 // For RSASSA-PKCS1-v1_5 keys, additionally the parameters 126 // function, e.g. <code>RsaHashedImportParams</code> for a RSASSA-PKCS1-v1_5
127 // <code>{ 'hash': { 'name': 'none' } }</code> are supported. The sign 127 // key. For RSASSA-PKCS1-v1_5 keys, additionally the parameters <code>{
128 // function will then apply PKCS#1 v1.5 padding and but not hash the 128 // "hash": { "name": "none" } }</code> are supported. The sign function will
129 // given data. 129 // then apply PKCS#1 v1.5 padding and but not hash the given data.
130 // <p>Currently, this function only supports the "RSASSA-PKCS1-v1_5"
131 // algorithm with one of the hashing algorithms "none", "SHA-1", "SHA-256",
132 // "SHA-384", and "SHA-512".</p>
130 [nocompile] static void getKeyPair(ArrayBuffer certificate, 133 [nocompile] static void getKeyPair(ArrayBuffer certificate,
131 object parameters, 134 object parameters,
132 GetKeyPairCallback callback); 135 GetKeyPairCallback callback);
133 136
134 // An implementation of WebCrypto's 137 // An implementation of WebCrypto's
135 // <a href="http://www.w3.org/TR/WebCryptoAPI/#subtlecrypto-interface"> 138 // <a href="http://www.w3.org/TR/WebCryptoAPI/#subtlecrypto-interface">
136 // SubtleCrypto</a> 139 // SubtleCrypto</a>
137 // that allows crypto operations on keys of client certificates that are 140 // that allows crypto operations on keys of client certificates that are
138 // available to this extension. 141 // available to this extension.
139 [nocompile] static object subtleCrypto(); 142 [nocompile] static object subtleCrypto();
140 143
141 // Checks whether <code>details.serverCertificateChain</code> can be trusted 144 // Checks whether <code>details.serverCertificateChain</code> can be trusted
142 // for <code>details.hostname</code> according to the trust settings of the 145 // for <code>details.hostname</code> according to the trust settings of the
143 // platform. 146 // platform.
144 // Note: The actual behavior of the trust verification is not fully 147 // Note: The actual behavior of the trust verification is not fully
145 // specified and might change in the future. 148 // specified and might change in the future.
146 // The API implementation verifies certificate expiration, validates the 149 // The API implementation verifies certificate expiration, validates the
147 // certification path and checks trust by a known CA. 150 // certification path and checks trust by a known CA.
148 // The implementation is supposed to respect the EKU serverAuth and to 151 // The implementation is supposed to respect the EKU serverAuth and to
149 // support subject alternative names. 152 // support subject alternative names.
150 static void verifyTLSServerCertificate(VerificationDetails details, 153 static void verifyTLSServerCertificate(VerificationDetails details,
151 VerificationCallback callback); 154 VerificationCallback callback);
152 }; 155 };
153 }; 156 };
154 157
OLDNEW
« no previous file with comments | « no previous file | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698