UNPKG

insight-via-api

Version:

A Viacoin blockchain REST and web socket API service for Viacore Node.

37 lines (32 loc) 1.04 kB
'use strict'; var bitcore = require('viacore-lib'); var _ = bitcore.deps._; var Message = require('viacore-message'); var Common = require('./common'); function MessagesController(node) { this.node = node; this.common = new Common({log: this.node.log}); } MessagesController.prototype.verify = function(req, res) { var self = this; var address = req.body.address || req.query.address; var signature = req.body.signature || req.query.signature; var message = req.body.message || req.query.message; if(_.isUndefined(address) || _.isUndefined(signature) || _.isUndefined(message)) { return self.common.handleErrors({ message: 'Missing parameters (expected "address", "signature" and "message")', code: 1 }, res); } var valid; try { valid = new Message(message).verify(address, signature); } catch(err) { return self.common.handleErrors({ message: 'Unexpected error: ' + err.message, code: 1 }, res); } res.json({'result': valid}); }; module.exports = MessagesController;