OLD | NEW |
1 /* | 1 /* |
2 * Copyright (C) 2013 Google Inc. All rights reserved. | 2 * Copyright (C) 2013 Google Inc. All rights reserved. |
3 * | 3 * |
4 * Redistribution and use in source and binary forms, with or without | 4 * Redistribution and use in source and binary forms, with or without |
5 * modification, are permitted provided that the following conditions are | 5 * modification, are permitted provided that the following conditions are |
6 * met: | 6 * met: |
7 * | 7 * |
8 * * Redistributions of source code must retain the above copyright | 8 * * Redistributions of source code must retain the above copyright |
9 * notice, this list of conditions and the following disclaimer. | 9 * notice, this list of conditions and the following disclaimer. |
10 * * Redistributions in binary form must reproduce the above | 10 * * Redistributions in binary form must reproduce the above |
(...skipping 13 matching lines...) Expand all Loading... |
24 * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, | 24 * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, |
25 * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY | 25 * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY |
26 * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT | 26 * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT |
27 * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE | 27 * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE |
28 * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. | 28 * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. |
29 */ | 29 */ |
30 | 30 |
31 // http://www.w3.org/TR/WebCryptoAPI/#subtlecrypto-interface | 31 // http://www.w3.org/TR/WebCryptoAPI/#subtlecrypto-interface |
32 | 32 |
33 typedef DOMString KeyFormat; | 33 typedef DOMString KeyFormat; |
34 typedef DOMString KeyUsage; // from Key interface | 34 typedef DOMString KeyUsage; // from CryptoKey interface |
35 | 35 |
36 // FIXME: use below; needs support for union types http://crbug.com/240176 | 36 // FIXME: use below; needs support for union types http://crbug.com/240176 |
37 typedef (ArrayBuffer or ArrayBufferView) CryptoOperationData; | 37 typedef (ArrayBuffer or ArrayBufferView) CryptoOperationData; |
38 | 38 |
39 [ | 39 [ |
40 GarbageCollected, | 40 GarbageCollected, |
41 NoInterfaceObject, | 41 NoInterfaceObject, |
42 ] interface SubtleCrypto { | 42 ] interface SubtleCrypto { |
43 [CallWith=ScriptState] Promise encrypt(Dictionary algorithm, Key key, ArrayB
uffer data); | 43 [CallWith=ScriptState] Promise encrypt(Dictionary algorithm, CryptoKey key,
ArrayBuffer data); |
44 [CallWith=ScriptState] Promise encrypt(Dictionary algorithm, Key key, ArrayB
ufferView data); | 44 [CallWith=ScriptState] Promise encrypt(Dictionary algorithm, CryptoKey key,
ArrayBufferView data); |
45 | 45 |
46 [CallWith=ScriptState] Promise decrypt(Dictionary algorithm, Key key, ArrayB
uffer data); | 46 [CallWith=ScriptState] Promise decrypt(Dictionary algorithm, CryptoKey key,
ArrayBuffer data); |
47 [CallWith=ScriptState] Promise decrypt(Dictionary algorithm, Key key, ArrayB
ufferView data); | 47 [CallWith=ScriptState] Promise decrypt(Dictionary algorithm, CryptoKey key,
ArrayBufferView data); |
48 | 48 |
49 [CallWith=ScriptState] Promise sign(Dictionary algorithm, Key key, ArrayBuff
er data); | 49 [CallWith=ScriptState] Promise sign(Dictionary algorithm, CryptoKey key, Arr
ayBuffer data); |
50 [CallWith=ScriptState] Promise sign(Dictionary algorithm, Key key, ArrayBuff
erView data); | 50 [CallWith=ScriptState] Promise sign(Dictionary algorithm, CryptoKey key, Arr
ayBufferView data); |
51 | 51 |
52 // FIXME: should be: Promise verify(Dictionary algorithm, Key key, CryptoOpe
rationData signature, CryptoOperationData data); | 52 // FIXME: should be: Promise verify(Dictionary algorithm, CryptoKey key, Cry
ptoOperationData signature, CryptoOperationData data); |
53 [CallWith=ScriptState, Custom, ImplementedAs=verifySignature] Promise verify
(Dictionary algorithm, Key key, object signature, object data); | 53 [CallWith=ScriptState, Custom, ImplementedAs=verifySignature] Promise verify
(Dictionary algorithm, CryptoKey key, object signature, object data); |
54 | 54 |
55 [CallWith=ScriptState] Promise digest(Dictionary algorithm, ArrayBuffer data
); | 55 [CallWith=ScriptState] Promise digest(Dictionary algorithm, ArrayBuffer data
); |
56 [CallWith=ScriptState] Promise digest(Dictionary algorithm, ArrayBufferView
data); | 56 [CallWith=ScriptState] Promise digest(Dictionary algorithm, ArrayBufferView
data); |
57 | 57 |
58 [CallWith=ScriptState] Promise generateKey(Dictionary algorithm, boolean ext
ractable, DOMString[] keyUsages); | 58 [CallWith=ScriptState] Promise generateKey(Dictionary algorithm, boolean ext
ractable, DOMString[] keyUsages); |
59 | 59 |
60 [CallWith=ScriptState] Promise importKey(KeyFormat format, ArrayBuffer keyDa
ta, Dictionary algorithm, boolean extractable, KeyUsage[] keyUsages); | 60 [CallWith=ScriptState] Promise importKey(KeyFormat format, ArrayBuffer keyDa
ta, Dictionary algorithm, boolean extractable, KeyUsage[] keyUsages); |
61 [CallWith=ScriptState] Promise importKey(KeyFormat format, ArrayBufferView k
eyData, Dictionary algorithm, boolean extractable, KeyUsage[] keyUsages); | 61 [CallWith=ScriptState] Promise importKey(KeyFormat format, ArrayBufferView k
eyData, Dictionary algorithm, boolean extractable, KeyUsage[] keyUsages); |
62 [CallWith=ScriptState] Promise importKey(KeyFormat format, Dictionary keyDat
a, Dictionary algorithm, boolean extractable, KeyUsage[] keyUsages); | 62 [CallWith=ScriptState] Promise importKey(KeyFormat format, Dictionary keyDat
a, Dictionary algorithm, boolean extractable, KeyUsage[] keyUsages); |
63 | 63 |
64 [CallWith=ScriptState] Promise exportKey(KeyFormat format, Key key); | 64 [CallWith=ScriptState] Promise exportKey(KeyFormat format, CryptoKey key); |
65 | 65 |
66 [CallWith=ScriptState] Promise wrapKey(KeyFormat format, Key key, Key wrappi
ngKey, Dictionary wrapAlgorithm); | 66 [CallWith=ScriptState] Promise wrapKey(KeyFormat format, CryptoKey key, Cryp
toKey wrappingKey, Dictionary wrapAlgorithm); |
67 | 67 |
68 [CallWith=ScriptState] Promise unwrapKey(KeyFormat format, ArrayBuffer wrapp
edKey, Key unwrappingKey, Dictionary unwrapAlgorithm, Dictionary unwrappedKeyAlg
orithm, boolean extractable, KeyUsage[] keyUsages); | 68 [CallWith=ScriptState] Promise unwrapKey(KeyFormat format, ArrayBuffer wrapp
edKey, CryptoKey unwrappingKey, Dictionary unwrapAlgorithm, Dictionary unwrapped
KeyAlgorithm, boolean extractable, KeyUsage[] keyUsages); |
69 [CallWith=ScriptState] Promise unwrapKey(KeyFormat format, ArrayBufferView w
rappedKey, Key unwrappingKey, Dictionary unwrapAlgorithm, Dictionary unwrappedKe
yAlgorithm, boolean extractable, KeyUsage[] keyUsages); | 69 [CallWith=ScriptState] Promise unwrapKey(KeyFormat format, ArrayBufferView w
rappedKey, CryptoKey unwrappingKey, Dictionary unwrapAlgorithm, Dictionary unwra
ppedKeyAlgorithm, boolean extractable, KeyUsage[] keyUsages); |
70 }; | 70 }; |
OLD | NEW |