From 425b75a925717eb6f9813503569592a8160c5f34 Mon Sep 17 00:00:00 2001 From: Ian Coleman Date: Mon, 7 Nov 2016 16:56:44 +1100 Subject: [PATCH] Dice entropy conversion to Base 6 is simpler Old: Every dice roll is reduced by 1 New: Replace all 6s with 0s --- src/js/entropy.js | 7 ++++--- tests.js | 4 ++-- 2 files changed, 6 insertions(+), 5 deletions(-) diff --git a/src/js/entropy.js b/src/js/entropy.js index 92300af..8e29d40 100644 --- a/src/js/entropy.js +++ b/src/js/entropy.js @@ -68,15 +68,16 @@ window.Entropy = new (function() { // Find type of entropy being used (binary, hex, dice etc) var base = getBase(rawEntropyStr); // Convert dice to base6 entropy (ie 1-6 to 0-5) + // This is done by changing all 6s to 0s if (base.str == "dice") { var newRawEntropyStr = ""; for (var i=0; i -1) { - newRawEntropyStr += (parseInt(c) - 1).toString(); + if ("12345".indexOf(c) > -1) { + newRawEntropyStr += c; } else { - newRawEntropyStr += c + newRawEntropyStr += "0"; } } rawEntropyStr = newRawEntropyStr; diff --git a/tests.js b/tests.js index 8de6391..809162c 100644 --- a/tests.js +++ b/tests.js @@ -2072,7 +2072,7 @@ page.open(url, function(status) { // dice entropy is converted to base6 try { e = Entropy.fromString("123456"); - if (e.cleanStr != "012345") { + if (e.cleanStr != "123450") { return "Dice entropy is not automatically converted to base6"; } } @@ -2444,7 +2444,7 @@ page.open(url, function(status) { var entropyText = page.evaluate(function() { return $(".entropy-container").text(); }); - if (entropyText.indexOf("012345") == -1) { + if (entropyText.indexOf("123450") == -1) { console.log("Dice entropy is not shown to user as base 6 value"); fail(); } -- 2.41.0