Function fujisaki_ringsig::sig::sign [] [src]

pub fn sign(msg: &[u8], tag: &Tag, privkey: &PrivateKey) -> Signature

Sign a message under the given tag with the given private key.

Example:

use fujisaki_ringsig::{sign, verify, KeyPair, Tag};

let msg = b"ready for the chumps on the wall";
let issue = b"testcase 12346".to_vec();

let kp1 = KeyPair::generate();
let kp2 = KeyPair::generate();
let kp3 = KeyPair::generate();

let my_privkey = kp1.privkey;
let pubkeys = vec![kp1.pubkey, kp2.pubkey, kp3.pubkey];
let tag = Tag {
    issue,
    pubkeys,
};

let sig = sign(&*msg, &tag, &my_privkey);
assert!(verify(&*msg, &tag, &sig));