manikawnth / kangeyam

Bull for the things

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Design principles

  1. All of the events are emitted by kevents.js. It is responsible to start the server or throw any exception

Client

Client should have the following properties while registering

  • salt question - Secret question . Answer is part of the salt. Not a passphrase (required input. store in clear text)
  • client_id - A v4 uuid (generated by system) (unique key)
  • created time - generated by system
  • publishable - Array of topics that the client can publish
  • subscribable - Array of topics that the client can subscribe to (Not implemented yet)
  • pass - A password hash

Entry to the client database happens through admin console. Client record in the database looks like the following:

{
    client_id : 'string',   //v4 uuid
    create_time : 'Date',   //UTC Date time
    salt_question : 'string' //What is your favorite honeymoon place? (Answer is not stored)
    pass : 'string' //pbkdf2 hashed version of the password generated through password gen utility
    publishable: 'array' //['topic1', 'topic2']
    subscribable: 'array' //['topic1', 'topic2']

}

Eg: mqtt pub -h localhost -p 8443 -i mani -u mani -P pass -t hola -m amigos -C mqtts --insecure

About

Bull for the things

License:MIT License


Languages

Language:JavaScript 100.0%