UNPKG

@webgap/token

Version:

WebGAP Tokenizer module. Handles JWT encoding / decoding features.

71 lines (60 loc) 1.54 kB
/** * (C) Copyright 2014 WebGAP (http://www.webgap.eu/). * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. * * Created by: ManuelMartins * Created on: 10-11-2015 * */ "use strict"; var AbstractAlgorithm = require('./abstract.js'); var hat = require('hat'); var util = require('util'); /** * Token utilities * * @constructor */ function HatAlgorithm() { HatAlgorithm.super_.apply(this, arguments); this.ALGORITHM = 'HAT'; } /* inherit AbstractAlgorithm Module */ util.inherits(HatAlgorithm, AbstractAlgorithm); /** * {@inheritDoc} */ HatAlgorithm.prototype.encode = function (data) { return hat(256); }; /** * {@inheritDoc} */ HatAlgorithm.prototype.decode = function (token, complete) { // it is an authentication token, has no meaning return token; }; /** * {@inheritDoc} */ HatAlgorithm.prototype.generateJWTObject = function (token) { return token; }; /** * {@inheritDoc} */ HatAlgorithm.prototype.isValid = function (token) { return token ? true : false; }; module.exports = HatAlgorithm;