@@ -2,6 +2,7 @@ var fs = require('fs');
22var assert = require ( 'chai' ) . assert ;
33var _ = require ( 'lodash' ) ;
44var NodeRSA = require ( '../src/NodeRSA' ) ;
5+ var OAEP = require ( '../src/schemes/oaep' ) ;
56
67describe ( 'NodeRSA' , function ( ) {
78 var keySizes = [
@@ -10,7 +11,8 @@ describe('NodeRSA', function () {
1011 { b : 512 , e : 257 } ,
1112 { b : 512 , e : 65537 } ,
1213 { b : 768 } , // 'e' should be 65537
13- { b : 1024 } // 'e' should be 65537
14+ { b : 1024 } , // 'e' should be 65537
15+ { b : 2048 } // 'e' should be 65537
1416 ] ;
1517
1618 var environments = [ 'browser' , 'node' ] ;
@@ -151,6 +153,7 @@ describe('NodeRSA', function () {
151153 for ( var size in keySizes ) {
152154 ( function ( size ) {
153155 it ( 'should make key pair ' + size . b + '-bit length and public exponent is ' + ( size . e ? size . e : size . e + ' and should be 65537' ) , function ( ) {
156+ this . timeout ( 15000 ) ;
154157 generatedKeys . push ( new NodeRSA ( { b : size . b , e : size . e } , { encryptionScheme : 'pkcs1' } ) ) ;
155158 assert . instanceOf ( generatedKeys [ generatedKeys . length - 1 ] . keyPair , Object ) ;
156159 assert . equal ( generatedKeys [ generatedKeys . length - 1 ] . isEmpty ( ) , false ) ;
@@ -669,9 +672,6 @@ describe('NodeRSA', function () {
669672 } ) ;
670673
671674 it ( 'should verify ' + i , function ( ) {
672- if ( ! key . verify ( suit . data , signed [ i ] ) ) {
673- key . verify ( suit . data , signed [ i ] ) ;
674- }
675675 assert ( key . verify ( suit . data , signed [ i ] ) ) ;
676676 } ) ;
677677 } ) ( i ) ;
@@ -685,11 +685,20 @@ describe('NodeRSA', function () {
685685 environment : env
686686 } ) ;
687687 var signed = key . sign ( 'data' ) ;
688- if ( ! key . verify ( 'data' , signed ) ) {
689- key . verify ( 'data' , signed ) ;
690- }
691688 assert ( key . verify ( 'data' , signed ) ) ;
692689 } ) ;
690+
691+ if ( scheme === 'pss' ) {
692+ it ( 'signing with custom algorithm (' + alg + ') with max salt length' , function ( ) {
693+ var a = alg . toLowerCase ( ) ;
694+ var key = new NodeRSA ( generatedKeys [ generatedKeys . length - 1 ] . exportKey ( ) , {
695+ signingScheme : { scheme : scheme , hash : a , saltLength : OAEP . digestLength [ a ] } ,
696+ environment : env
697+ } ) ;
698+ var signed = key . sign ( 'data' ) ;
699+ assert ( key . verify ( 'data' , signed ) ) ;
700+ } ) ;
701+ }
693702 } ) ( signHashAlgorithms [ env ] [ alg ] ) ;
694703 }
695704 } ) ;
0 commit comments