test with fixed data to diagnose emscripten problem

This commit is contained in:
Florian Dold 2017-03-09 17:34:06 +01:00
parent 85009860d7
commit f16f20cabd
No known key found for this signature in database
GPG Key ID: D2E4F00F29D02A4B
2 changed files with 21 additions and 0 deletions

View File

@ -13,9 +13,27 @@ test("string hashing", (t: TestLib) => {
test("signing", (t: TestLib) => { test("signing", (t: TestLib) => {
let x = native.ByteArray.fromStringWithNull("hello taler"); let x = native.ByteArray.fromStringWithNull("hello taler");
let priv = native.EddsaPrivateKey.create(); let priv = native.EddsaPrivateKey.create();
console.log("priv", priv.toCrock())
let pub = priv.getPublicKey(); let pub = priv.getPublicKey();
let purpose = new native.EccSignaturePurpose(native.SignaturePurpose.TEST, x); let purpose = new native.EccSignaturePurpose(native.SignaturePurpose.TEST, x);
let sig = native.eddsaSign(purpose, priv); let sig = native.eddsaSign(purpose, priv);
console.log("sig", sig.toCrock())
t.assert(native.eddsaVerify(native.SignaturePurpose.TEST, purpose, sig, pub));
t.pass();
});
test("signing-fixed-data", (t: TestLib) => {
let x = native.ByteArray.fromStringWithNull("hello taler");
let purpose = new native.EccSignaturePurpose(native.SignaturePurpose.TEST, x);
const privStr = "G9R8KRRCAFKPD0KW7PW48CC2T03VQ8K2AN9J6J6K2YW27J5MHN90";
const sigStr = "7V6XY4QGC1406GPMT305MZQ1HDCR7R0S5BP02GTGDQFPSXB6YD2YDN5ZS7NJQCNP61Y39MRHXNXQ1Z15JY4CJY4CPDA6CKQ3313WG38";
let priv = native.EddsaPrivateKey.fromCrock(privStr);
t.assert(privStr == priv.toCrock())
let pub = priv.getPublicKey();
let sig = native.EddsaSignature.fromCrock(sigStr);
t.assert(sigStr == sig.toCrock())
let sig2 = native.eddsaSign(purpose, priv);
t.assert(sig.toCrock() == sig2.toCrock());
t.assert(native.eddsaVerify(native.SignaturePurpose.TEST, purpose, sig, pub)); t.assert(native.eddsaVerify(native.SignaturePurpose.TEST, purpose, sig, pub));
t.pass(); t.pass();
}); });

View File

@ -1159,6 +1159,9 @@ export class EddsaSignature extends PackedArenaObject {
size() { size() {
return 64; return 64;
} }
static fromCrock(s: string): EddsaSignature {
return fromCrock(s, this);
}
} }