diff options
Diffstat (limited to 'chromium/third_party/WebKit/Source/modules/crypto/SubtleCrypto.idl')
-rw-r--r-- | chromium/third_party/WebKit/Source/modules/crypto/SubtleCrypto.idl | 49 |
1 files changed, 36 insertions, 13 deletions
diff --git a/chromium/third_party/WebKit/Source/modules/crypto/SubtleCrypto.idl b/chromium/third_party/WebKit/Source/modules/crypto/SubtleCrypto.idl index f11dc76dbdf..da23af3e960 100644 --- a/chromium/third_party/WebKit/Source/modules/crypto/SubtleCrypto.idl +++ b/chromium/third_party/WebKit/Source/modules/crypto/SubtleCrypto.idl @@ -28,20 +28,43 @@ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ +// http://www.w3.org/TR/WebCryptoAPI/#subtlecrypto-interface + +typedef DOMString KeyFormat; +typedef DOMString KeyUsage; // from Key interface + +// FIXME: use below; needs support for union types http://crbug.com/240176 +typedef (ArrayBuffer or ArrayBufferView) CryptoOperationData; + [ + GarbageCollected, NoInterfaceObject, ] interface SubtleCrypto { - [RaisesException] Promise encrypt(Dictionary algorithm, Key key, ArrayBufferView data); - [RaisesException] Promise decrypt(Dictionary algorithm, Key key, ArrayBufferView data); - [RaisesException] Promise sign(Dictionary algorithm, Key key, ArrayBufferView data); - [RaisesException, ImplementedAs=verifySignature] Promise verify(Dictionary algorithm, Key key, ArrayBufferView signature, ArrayBufferView data); - [RaisesException] Promise digest(Dictionary algorithm, ArrayBufferView data); - - [RaisesException] Promise generateKey(Dictionary algorithm, boolean extractable, DOMString[] keyUsages); - [RaisesException] Promise importKey(DOMString format, ArrayBufferView keyData, Dictionary? algorithm, boolean extractable, DOMString[] keyUsages); - [RaisesException] Promise exportKey(DOMString format, Key key); - - [RaisesException] Promise wrapKey(DOMString format, Key key, Key wrappingKey, Dictionary wrapAlgorithm); - [RaisesException] Promise unwrapKey(DOMString format, ArrayBufferView wrappedKey, Key unwrappingKey, Dictionary unwrapAlgorithm, Dictionary? unwrappedKeyAlgorithm, boolean extractable, DOMString[] keyUsages); -}; + [CallWith=ScriptState] Promise encrypt(Dictionary algorithm, Key key, ArrayBuffer data); + [CallWith=ScriptState] Promise encrypt(Dictionary algorithm, Key key, ArrayBufferView data); + + [CallWith=ScriptState] Promise decrypt(Dictionary algorithm, Key key, ArrayBuffer data); + [CallWith=ScriptState] Promise decrypt(Dictionary algorithm, Key key, ArrayBufferView data); + + [CallWith=ScriptState] Promise sign(Dictionary algorithm, Key key, ArrayBuffer data); + [CallWith=ScriptState] Promise sign(Dictionary algorithm, Key key, ArrayBufferView data); + + // FIXME: should be: Promise verify(Dictionary algorithm, Key key, CryptoOperationData signature, CryptoOperationData data); + [CallWith=ScriptState, Custom, ImplementedAs=verifySignature] Promise verify(Dictionary algorithm, Key key, object signature, object data); + [CallWith=ScriptState] Promise digest(Dictionary algorithm, ArrayBuffer data); + [CallWith=ScriptState] Promise digest(Dictionary algorithm, ArrayBufferView data); + + [CallWith=ScriptState] Promise generateKey(Dictionary algorithm, boolean extractable, DOMString[] keyUsages); + + [CallWith=ScriptState] Promise importKey(KeyFormat format, ArrayBuffer keyData, Dictionary algorithm, boolean extractable, KeyUsage[] keyUsages); + [CallWith=ScriptState] Promise importKey(KeyFormat format, ArrayBufferView keyData, Dictionary algorithm, boolean extractable, KeyUsage[] keyUsages); + [CallWith=ScriptState] Promise importKey(KeyFormat format, Dictionary keyData, Dictionary algorithm, boolean extractable, KeyUsage[] keyUsages); + + [CallWith=ScriptState] Promise exportKey(KeyFormat format, Key key); + + [CallWith=ScriptState] Promise wrapKey(KeyFormat format, Key key, Key wrappingKey, Dictionary wrapAlgorithm); + + [CallWith=ScriptState] Promise unwrapKey(KeyFormat format, ArrayBuffer wrappedKey, Key unwrappingKey, Dictionary unwrapAlgorithm, Dictionary unwrappedKeyAlgorithm, boolean extractable, KeyUsage[] keyUsages); + [CallWith=ScriptState] Promise unwrapKey(KeyFormat format, ArrayBufferView wrappedKey, Key unwrappingKey, Dictionary unwrapAlgorithm, Dictionary unwrappedKeyAlgorithm, boolean extractable, KeyUsage[] keyUsages); +}; |