On Jul 3, 2012, at 10:01 AM, Jim Klo wrote: > Yes, and as a matter of fact, i just got digital signature validation using OpenPGP within a map function working a few minutes ago! > Here's a link to the relevant code: https://github.com/jimklo/TheCollector/blob/master/dataservices/thecollector-resources/views/lib/sig_utils.js As far as I can tell, this code uses a data schema where the signed contents are wrapped in some kind of OpenPGP encoding: > var msg_list = openpgp.read_message(doc.digital_signature.signature); > for (var i=0; i isValid |= msg_list[i].verifySignature(); > } It looks like msg_list is the actual document payload, which has to be decoded using openpgp.read_message. This is IMHO not a very good solution because it hides the document contents away — for example, all the map functions and any app logic that uses documents will have to know to call read_message, which will also make them slower. The schema I implemented (see my previous message) doesn't alter the basic document format. The signature is in a nested object but applies to the entire document contents (minus the signature itself of course). There's no need to change any code that reads documents; the only time you have to know about the signature scheme is while verifying the signature. It's even possible to have multiple signatures on a document. —Jens