ihordiachenko
7/13/2017 - 2:44 PM

Ed25519 signature examples

Ed25519 signature examples

'use strict';

var ed25519 = require("ed25519");

module.exports.sign = function(message, secretKey) {
    secretKey = new Buffer(secretKey, 'base64');
    message = new Buffer(message, 'utf-8');

    var signature = ed25519.Sign(message, secretKey);
    return signature.toString('base64');
};

module.exports.verify = function(message, signature, publicKey) {
    signature = new Buffer(signature, 'base64');
    message = new Buffer(message, 'utf-8');
    publicKey = new Buffer(publicKey, 'base64');

    try {
        return ed25519.Verify(message, signature, publicKey);
    } catch (e) {
        return false;
    }
};