From d176e81d4196adf2936a56e8bb2ee5d184cbe32b Mon Sep 17 00:00:00 2001 From: "Joseph R." Date: Sun, 11 Oct 2015 13:11:02 +0800 Subject: [PATCH 1/3] added additional opt for number of characters --- index.js | 15 +++++++++------ 1 file changed, 9 insertions(+), 6 deletions(-) diff --git a/index.js b/index.js index b4718fc..09b086c 100644 --- a/index.js +++ b/index.js @@ -22,8 +22,10 @@ hotp.gen = function(key, opt) { key = key || ''; opt = opt || {}; var counter = opt.counter || 0; - - var p = 6; + var characters = opt.characters || 4; + var modulo = '1'; + + for(var x = characters; x--;) modulo = modulo + '0'; // Create the byte array var b = new Buffer(intToBytes(counter)); @@ -42,10 +44,11 @@ hotp.gen = function(key, opt) { (h[offset + 1] & 0xff) << 16 | (h[offset + 2] & 0xff) << 8 | (h[offset + 3] & 0xff); - - v = (v % 1000000) + ''; - - return Array(7-v.length).join('0') + v; + console.log(v); + + v = (v % parseInt(modulo)) + ''; + + return Array((characters + 1)-v.length).join('0') + v; }; /** From 05283755fa5b0281a9c6c1bfa5654a9e01a8dd99 Mon Sep 17 00:00:00 2001 From: "Joseph R." Date: Sun, 11 Oct 2015 13:13:48 +0800 Subject: [PATCH 2/3] update index.js --- index.js | 1 - 1 file changed, 1 deletion(-) diff --git a/index.js b/index.js index 09b086c..088b416 100644 --- a/index.js +++ b/index.js @@ -44,7 +44,6 @@ hotp.gen = function(key, opt) { (h[offset + 1] & 0xff) << 16 | (h[offset + 2] & 0xff) << 8 | (h[offset + 3] & 0xff); - console.log(v); v = (v % parseInt(modulo)) + ''; From 7feae3ed61cc5e5bbd209ae351c39af0135fd577 Mon Sep 17 00:00:00 2001 From: "Joseph R." Date: Sun, 11 Oct 2015 13:20:44 +0800 Subject: [PATCH 3/3] default char changed to 6 --- index.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/index.js b/index.js index 088b416..e11c621 100644 --- a/index.js +++ b/index.js @@ -22,7 +22,7 @@ hotp.gen = function(key, opt) { key = key || ''; opt = opt || {}; var counter = opt.counter || 0; - var characters = opt.characters || 4; + var characters = opt.characters || 6; var modulo = '1'; for(var x = characters; x--;) modulo = modulo + '0';