summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorQuinn Slack <sqs@cs.stanford.edu>2011-04-19 05:14:28 -0700
committerQuinn Slack <sqs@cs.stanford.edu>2011-04-19 05:14:28 -0700
commit5fdfb69a7b773e37ab919970bc9877377183a40b (patch)
tree20a44318b5520f04e51e845a791e126bd39ff547
parent3d9bf6ed796e7c976186fb7117b3f4b995d50526 (diff)
downloadsjcl-5fdfb69a7b773e37ab919970bc9877377183a40b.zip
sjcl-5fdfb69a7b773e37ab919970bc9877377183a40b.tar.gz
sjcl-5fdfb69a7b773e37ab919970bc9877377183a40b.tar.bz2
test srp x and v
-rw-r--r--test/srp_test.js15
1 files changed, 9 insertions, 6 deletions
diff --git a/test/srp_test.js b/test/srp_test.js
index bbbd928..d5219e7 100644
--- a/test/srp_test.js
+++ b/test/srp_test.js
@@ -5,15 +5,18 @@ new sjcl.test.TestCase("SRP known-answer (RFC 5054) tests", function (cb) {
return;
}
- var i, kat = sjcl.test.vector.srp, tv, N, g, v;
+ var i, kat = sjcl.test.vector.srp, tv, N, g, v, x;
for (i=0; i<kat.length; i++) {
tv = kat[i];
- N = sjcl.keyexchange.srp.knownGroups[tv.known_group_size].N;
- g = sjcl.keyexchange.srp.knownGroups[tv.known_group_size].g;
- v = sjcl.keyexchange.srp.makeVerifier(tv.I, tv.P, tv.s, N, g)
- print("-> v = " + v);
- this.require(sjcl.bitArray.equal(v, tv.v), "srpv #"+i);
+ N = sjcl.keyexchange.srp.knownGroup(tv.known_group_size).N;
+ g = sjcl.keyexchange.srp.knownGroup(tv.known_group_size).g;
+ tv.s = sjcl.codec.hex.toBits(tv.s);
+ x = sjcl.keyexchange.srp.makeX(tv.I, tv.P, tv.s);
+ this.require(sjcl.codec.hex.fromBits(x).toUpperCase() === tv.x, "srpx #"+i);
+
+ v = sjcl.keyexchange.srp.makeVerifier(tv.I, tv.P, tv.s, N, g);
+ this.require(v.equals(new sjcl.bn(tv.v)), "srpv #"+i);
}
cb && cb();
});