22
33var crypto = require ( 'crypto' ) ;
44var ece = require ( './ece.js' ) ;
5- var base64 = require ( 'urlsafe-base64' ) ;
65var assert = require ( 'assert' ) ;
76
87function usage ( ) {
@@ -57,11 +56,11 @@ function filterTests(fullList) {
5756
5857function logbuf ( msg , buf ) {
5958 if ( typeof buf === 'string' ) {
60- buf = base64 . decode ( buf ) ;
59+ buf = Buffer . from ( buf , 'base64url' ) ;
6160 }
6261 log ( msg + ': [' + buf . length + ']' ) ;
6362 for ( var i = 0 ; i < buf . length ; i += 48 ) {
64- log ( ' ' + base64 . encode ( buf . slice ( i , i + 48 ) ) ) ;
63+ log ( ' ' + buf . slice ( i , i + 48 ) . toString ( 'base64url' ) ) ;
6564 }
6665}
6766
@@ -71,7 +70,7 @@ function reallySaveDump(data){
7170 var r = { } ;
7271 Object . keys ( d ) . forEach ( function ( k ) {
7372 if ( Buffer . isBuffer ( d [ k ] ) ) {
74- r [ k ] = base64 . encode ( d [ k ] ) ;
73+ r [ k ] = d [ k ] . toString ( 'base64url' ) ;
7574 } else if ( d [ k ] instanceof Object ) {
7675 r [ k ] = dumpFix ( d [ k ] ) ;
7776 } else {
@@ -306,12 +305,12 @@ function useDH(version) {
306305 // keyData is used for cross library verification dumps
307306 var keyData = {
308307 sender : {
309- private : base64 . encode ( ephemeralKey . getPrivateKey ( ) ) ,
310- public : base64 . encode ( ephemeralKey . getPublicKey ( ) )
308+ private : ephemeralKey . getPrivateKey ( ) . toString ( 'base64url' ) ,
309+ public : ephemeralKey . getPublicKey ( ) . toString ( 'base64url' )
311310 } ,
312311 receiver : {
313- private : base64 . encode ( staticKey . getPrivateKey ( ) ) ,
314- public : base64 . encode ( staticKey . getPublicKey ( ) )
312+ private : staticKey . getPrivateKey ( ) . toString ( 'base64url' ) ,
313+ public : staticKey . getPublicKey ( ) . toString ( 'base64url' )
315314 }
316315 } ;
317316 encryptDecrypt ( input , encryptParams , decryptParams , keyData ) ;
@@ -323,30 +322,30 @@ function checkExamples(version) {
323322 {
324323 args : {
325324 version : 'aes128gcm' ,
326- key : base64 . decode ( 'yqdlZ-tYemfogSmv7Ws5PQ' ) ,
325+ key : Buffer . from ( 'yqdlZ-tYemfogSmv7Ws5PQ' , 'base64url ') ,
327326 keyid : '' ,
328- salt : base64 . decode ( 'I1BsxtFttlv3u_Oo94xnmw' ) ,
327+ salt : Buffer . from ( 'I1BsxtFttlv3u_Oo94xnmw' , 'base64url ') ,
329328 rs : 4096
330329 } ,
331330 plaintext : Buffer . from ( 'I am the walrus' ) ,
332- ciphertext : base64 . decode ( 'I1BsxtFttlv3u_Oo94xnmwAAEAAA-NAV' +
331+ ciphertext : Buffer . from ( 'I1BsxtFttlv3u_Oo94xnmwAAEAAA-NAV' +
333332 'ub2qFgBEuQKRapoZu-IxkIva3MEB1PD-' +
334- 'ly8Thjg' ) ,
333+ 'ly8Thjg' , 'base64url' ) ,
335334 } ,
336335 {
337336 args : {
338337 version : 'aes128gcm' ,
339- key : base64 . decode ( 'BO3ZVPxUlnLORbVGMpbT1Q' ) ,
338+ key : Buffer . from ( 'BO3ZVPxUlnLORbVGMpbT1Q' , 'base64url ') ,
340339 keyid : 'a1' ,
341- salt : base64 . decode ( 'uNCkWiNYzKTnBN9ji3-qWA' ) ,
340+ salt : Buffer . from ( 'uNCkWiNYzKTnBN9ji3-qWA' , 'base64url ') ,
342341 rs : 25 ,
343342 pad : 1
344343 } ,
345344 plaintext : Buffer . from ( 'I am the walrus' ) ,
346- ciphertext : base64 . decode ( 'uNCkWiNYzKTnBN9ji3-qWAAAABkCYTHO' +
345+ ciphertext : Buffer . from ( 'uNCkWiNYzKTnBN9ji3-qWAAAABkCYTHO' +
347346 'G8chz_gnvgOqdGYovxyjuqRyJFjEDyoF' +
348347 '1Fvkj6hQPdPHI51OEUKEpgz3SsLWIqS_' +
349- 'uA' )
348+ 'uA' , 'base64url' )
350349 }
351350 ] . filter ( function ( v ) {
352351 return v . args . version === version ;
0 commit comments