Giter Club home page Giter Club logo

offlinepass's Introduction

OfflinePass

Self Service Password Manager

Generate all your passwords deterministically using your Master Key.

Your Master Key is your one and only backup of all passwords.

Philosophy

  • No central server. No server at all. Fully client side. Works Offline.
  • No data to store or share.
  • No data or passwords to backup. Backup your Master Key only.
  • No hidden agenda or false promise of security. We’re open source. Check the code for yourself.

Source Code

https://github.com/sireto/offlinepass

Master Security Key (MSK)

All you need to store is Master Security Key (MSK). This key is used to generate all the passwords deterministically. So as long as you have your MSK, all of your passwords (past, present and future) can be recovered. It is your responsibility to keep it safe. If you loose it, you'll loose all your passwords.

How Offline Pass works?

Passwords are generated using secure hash functions using the following algorithm

PasswordHash = hmac(MSK,Message,sha256_algorithm)
Password     = No_of_password_changed$PasswordHash
  • The generated passwords are based on MSK ,Message.
  • Message = Host | Identity | Year | No of password changed
  • MSK: Master Security Key
  • Host: Host indicates the URL of the app or website. For eg. facebook.com, twitter.com, gmail.com, github.com, ...
  • Identity: Identity can be your username, email address or phone number you use to login to the app or website.
  • No of password changed : It indicates number of password changes on selected year. By default it is set to 0.
  • Year : Year you changed your password. By default it is set to current year.

Example To generated Twitter password for [email protected] on 2023: First, convert all details into lowercase and concatinate it to Message.

Message = `twitter.com | [email protected] | 2023 | 0`

Then, the generated password is:

PasswordHash = hmac(MSK,Message,sha256_algorithm)
             = hmac("H@rdPassw0rd",`twitter.com | [email protected] | 2023 | 0`,"SHA-256")
             = 87booSaeaKYnhgEq

Password     = No_of_password_changed$PasswordHash 
             = 0$87booSaeaKYnhgEq

base58 encoding is used after using hmac to get shorter length eg. 16 characters.

License

Apache v2 License.

Contributing

If you're interested in contributing, you can do so by creating an issue (bug report, feature requests, questions, ...) or submitting a Pull Request.

offlinepass's People

Contributors

kneerose avatar nabinkawan avatar sireto-git avatar xoriole avatar spannercode avatar

Stargazers

 avatar Joseph Rana avatar  avatar  avatar  avatar Juhel_Phanju avatar YaBoiRupan avatar Anish Shilpakar avatar  avatar  avatar

Watchers

Sudip Bhattarai avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.