stellar-auth-server

0.1.7 • Public • Published

Stellar Auth server library

Version Build Status Coverage Status David David Try on RunKit

Server side library for Stellar SEP 0010 implementation.

Installation

Install the package with:

npm install stellar-auth-server --save

Usage

Initialization

const StellarAuth = require('stellar-auth-server');
 
const serverKeyPair = StellarSdk.Keypair.fromSecret('SDL...A2J');
 
// optional param
const options = {
  challengeExpiresIn: 300, // 5 minutes
  invalidSequence: '0',
  anchorName: 'Anchor server'
}
 
const stellarAuth = new StellarAuth(serverKeyPair, options);
  • serverKeyPair
    Server Keypair object.
    Required: true
  • options
    Object with optional params .
    Required: false
    • challengeExpiresIn
      time in seconds in which the challenge expires.
      Default value: 300 (5 minutes)
      Required: false
    • invalidSequence
      Invalid sequence for stellar transaction.
      Default value: '0'
      Required: false
    • anchorName
      Default anchor name.
      Default value: 'Anchor server'
      Required: false

Challenge

const clientPublicKey = 'GBF...3UZ';
const txBase64 = stellarAuth.challenge(clientPublicKey);
return { transaction: txBase64 };

Verify

stellarAuth.verify(txBase64SignedByClient)
.then(result => { token: buildToken(result.hash, result.clientPublicKey) })
.catch(e => { error: translate(e.message) || e.message })

Development

Run all tests:

$ npm install
$ npm test

Run a single test suite:

$ npm run mocha -- test/lib/challenge.spec.js

Run a single test (case sensitive):

$ npm run mocha -- test/lib/challenge.spec.js --grep 'Should have valid timebounds'

Library based on Stellar SEP-0010 implementation

Readme

Keywords

Package Sidebar

Install

npm i stellar-auth-server

Weekly Downloads

1

Version

0.1.7

License

MIT

Unpacked Size

9.13 kB

Total Files

7

Last publish

Collaborators

  • dolcalmi