| OLD | NEW | 
|   1 <!DOCTYPE html> |   1 <!DOCTYPE html> | 
|   2 <html> |   2 <html> | 
|   3 <head> |   3 <head> | 
|   4 <script src="../resources/js-test.js"></script> |   4 <script src="../resources/js-test.js"></script> | 
|   5 <script src="resources/common.js"></script> |   5 <script src="resources/common.js"></script> | 
|   6 </head> |   6 </head> | 
|   7 <body> |   7 <body> | 
|   8 <p id="description"></p> |   8 <p id="description"></p> | 
|   9 <div id="console"></div> |   9 <div id="console"></div> | 
|  10  |  10  | 
|  11 <script> |  11 <script> | 
|  12 description("Tests generateKey() with bad RSASSA-PKCS1-v1_5 parameters."); |  12 description("Tests generateKey() with bad RSASSA-PKCS1-v1_5 parameters."); | 
|  13 jsTestIsAsync = true; |  13 jsTestIsAsync = true; | 
|  14  |  14  | 
|  15 extractable = true; |  15 extractable = true; | 
|  16 keyUsages = ['sign', 'verify']; |  16 keyUsages = ['sign', 'verify']; | 
|  17  |  17  | 
|  18 Promise.resolve(null).then(function() { |  18 Promise.resolve(null).then(function() { | 
 |  19     debug("\ngenerateKey() with a modulusLength -30..."); | 
|  19     return crypto.subtle.generateKey({name: 'RSASSA-PKCS1-v1_5', hash: {name: 's
    ha-1'}, modulusLength: -30}, extractable , keyUsages); |  20     return crypto.subtle.generateKey({name: 'RSASSA-PKCS1-v1_5', hash: {name: 's
    ha-1'}, modulusLength: -30}, extractable , keyUsages); | 
|  20 }).then(failAndFinishJSTest, function(result) { |  21 }).then(failAndFinishJSTest, function(result) { | 
|  21     logError(result); |  22     logError(result); | 
|  22  |  23  | 
 |  24     debug("\ngenerateKey() with modulusLength NaN..."); | 
|  23     return crypto.subtle.generateKey({name: 'RSASSA-PKCS1-v1_5', hash: {name: 's
    ha-1'}, modulusLength: NaN}, extractable , keyUsages); |  25     return crypto.subtle.generateKey({name: 'RSASSA-PKCS1-v1_5', hash: {name: 's
    ha-1'}, modulusLength: NaN}, extractable , keyUsages); | 
|  24 }).then(failAndFinishJSTest, function(result) { |  26 }).then(failAndFinishJSTest, function(result) { | 
|  25     logError(result); |  27     logError(result); | 
|  26  |  28  | 
 |  29     debug("\ngenerateKey() without modulusLength..."); | 
|  27     return crypto.subtle.generateKey({name: 'RSASSA-PKCS1-v1_5', hash: {name: 's
    ha-1'}}, extractable , keyUsages); |  30     return crypto.subtle.generateKey({name: 'RSASSA-PKCS1-v1_5', hash: {name: 's
    ha-1'}}, extractable , keyUsages); | 
|  28 }).then(failAndFinishJSTest, function(result) { |  31 }).then(failAndFinishJSTest, function(result) { | 
|  29     logError(result); |  32     logError(result); | 
|  30  |  33  | 
 |  34     debug("\ngenerateKey() without publicExponent..."); | 
|  31     return crypto.subtle.generateKey({name: 'RSASSA-PKCS1-v1_5', hash: {name: 's
    ha-1'}, modulusLength: 10}, extractable , keyUsages); |  35     return crypto.subtle.generateKey({name: 'RSASSA-PKCS1-v1_5', hash: {name: 's
    ha-1'}, modulusLength: 10}, extractable , keyUsages); | 
|  32 }).then(failAndFinishJSTest, function(result) { |  36 }).then(failAndFinishJSTest, function(result) { | 
|  33     logError(result); |  37     logError(result); | 
|  34  |  38  | 
 |  39     debug("\ngenerateKey() with publicExponent that is an integer..."); | 
|  35     return crypto.subtle.generateKey({name: 'RSASSA-PKCS1-v1_5', hash: {name: 's
    ha-1'}, modulusLength: 10, publicExponent: 10}, extractable , keyUsages); |  40     return crypto.subtle.generateKey({name: 'RSASSA-PKCS1-v1_5', hash: {name: 's
    ha-1'}, modulusLength: 10, publicExponent: 10}, extractable , keyUsages); | 
|  36 }).then(failAndFinishJSTest, function(result) { |  41 }).then(failAndFinishJSTest, function(result) { | 
|  37     logError(result); |  42     logError(result); | 
|  38  |  43  | 
 |  44     debug("\ngenerateKey() with publicExponent that is null..."); | 
|  39     return crypto.subtle.generateKey({name: 'RSASSA-PKCS1-v1_5', hash: {name: 's
    ha-1'}, modulusLength: 10, publicExponent: null}, extractable , keyUsages); |  45     return crypto.subtle.generateKey({name: 'RSASSA-PKCS1-v1_5', hash: {name: 's
    ha-1'}, modulusLength: 10, publicExponent: null}, extractable , keyUsages); | 
|  40 }).then(failAndFinishJSTest, function(result) { |  46 }).then(failAndFinishJSTest, function(result) { | 
|  41     logError(result); |  47     logError(result); | 
|  42  |  48  | 
 |  49     debug("\ngenerateKey() with modulusLength that is 10..."); | 
|  43     return crypto.subtle.generateKey({name: 'RSASSA-PKCS1-v1_5', hash: {name: 's
    ha-1'}, modulusLength: 10, publicExponent: new Uint8Array(0)}, extractable , key
    Usages); |  50     return crypto.subtle.generateKey({name: 'RSASSA-PKCS1-v1_5', hash: {name: 's
    ha-1'}, modulusLength: 10, publicExponent: new Uint8Array(0)}, extractable , key
    Usages); | 
|  44 }).then(failAndFinishJSTest, function(result) { |  51 }).then(failAndFinishJSTest, function(result) { | 
|  45     logError(result); |  52     logError(result); | 
|  46  |  53  | 
 |  54     debug("\ngenerateKey() with publicExponent that is 0 bytes long..."); | 
|  47     return crypto.subtle.generateKey({name: 'RSASSA-PKCS1-v1_5', hash: {name: 's
    ha-1'}, modulusLength: 1024, publicExponent: new Uint8Array(0)}, extractable , k
    eyUsages); |  55     return crypto.subtle.generateKey({name: 'RSASSA-PKCS1-v1_5', hash: {name: 's
    ha-1'}, modulusLength: 1024, publicExponent: new Uint8Array(0)}, extractable , k
    eyUsages); | 
|  48 }).then(failAndFinishJSTest, function(result) { |  56 }).then(failAndFinishJSTest, function(result) { | 
|  49     logError(result); |  57     logError(result); | 
|  50  |  58  | 
 |  59     debug("\ngenerateKey() with invalid hash name..."); | 
|  51     return crypto.subtle.generateKey({name: 'RSASSA-PKCS1-v1_5', hash: {name: 'N
    OT-A-HASH'}, modulusLength: 10, publicExponent: new Uint8Array(3)}, extractable 
    , keyUsages); |  60     return crypto.subtle.generateKey({name: 'RSASSA-PKCS1-v1_5', hash: {name: 'N
    OT-A-HASH'}, modulusLength: 10, publicExponent: new Uint8Array(3)}, extractable 
    , keyUsages); | 
|  52 }).then(failAndFinishJSTest, function(result) { |  61 }).then(failAndFinishJSTest, function(result) { | 
|  53     logError(result); |  62     logError(result); | 
|  54  |  63  | 
 |  64     debug("\ngenerateKey() without hash name..."); | 
|  55     return crypto.subtle.generateKey({name: 'RSASSA-PKCS1-v1_5', modulusLength: 
    10, publicExponent: new Uint8Array(3)}, extractable , keyUsages); |  65     return crypto.subtle.generateKey({name: 'RSASSA-PKCS1-v1_5', modulusLength: 
    10, publicExponent: new Uint8Array(3)}, extractable , keyUsages); | 
|  56 }).then(failAndFinishJSTest, function(result) { |  66 }).then(failAndFinishJSTest, function(result) { | 
|  57     logError(result); |  67     logError(result); | 
|  58 }).then(finishJSTest, failAndFinishJSTest); |  68 }).then(finishJSTest, failAndFinishJSTest); | 
|  59  |  69  | 
|  60 </script> |  70 </script> | 
|  61  |  71  | 
|  62 </body> |  72 </body> | 
|  63 </html> |  73 </html> | 
| OLD | NEW |