Subject: [Acme] Cleartext JavaScript/JSON signatures using ES6 + Google V8

From: Anders Rundgren <[email-masked]>
Date: Sat, 16 Jan 2016 08:18:25 +0100

By relying on Google's V8 for number serialization, the final interop hurdle was removed.

JCS was developed to match information-rich, multi-signature schemes like https://www.w3.org/Payments/IG/wiki/Main_Page/ProposalsQ42015/SCAI#The_SCAI_line and similar.  JCS has recently been upgraded to match ECMAScript revision 6/Google V8 making JCS compatible with node.js, Chrome, Firefox, Safari and [of course] my Java reference implementation

It should work equally well for ACME...

JSON Cleartext Signature (JCS): https://cyberphone.github.io/openkeystore/resources/docs/jcs.html#ECMAScript_Compatibility_Mode

var signedObject = {
     // The data
     statement: "Hello signed world!",
     otherProperties: [2000, true],
     // The signature
     signature: {
         algorithm: "ES256",
         publicKey: {
             type: "EC",
             curve: "P-256",
             x: "vlYxD4dtFJOp1_8_QUcieWCW-4KrLMmFL2rpkY1bQDs",
             y: "fxEF70yJenP3SPHM9hv-EnvhG6nXr3_S-fDqoj-F6yM"
         },
         value: "2H__TkcV28QpGWPkyVbR1CW0I8L4xARrVGL0LjOeHJLOPozdzRqCTyYfmAippJXqdzgNAonnFPVCSI5A6novMQ"
     }
};

Anders