A password management app with support for sharing with groups.
Pull request Compare This branch is 20 commits behind github-archive:master.
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Failed to load latest commit information.
app
config
db
docs
lib/tasks
log
public
script
spec
vendor/assets
.env
.gitignore
.rspec
.travis.yml
CONTRIBUTING.md
Gemfile
Gemfile.lock
Guardfile
README.md
Rakefile
config.ru

README.md

Swordfish Build Status

Swordfish is an experiment in building a group-optimized password management app. It is currently very alpha. Browse all the issues to see what features are planned.

mockup

Is it secure?

Storing passwords on a server might seem like filling a lake in Alaska with honey and expecting to keep bears out. I don't think it's like that. Why?

Even if an attacker gets access to your server or database, all secure items are encrypted client side. The server has no idea what it is storing and no way of decrypting it.

When you sign up, a RSA public/private keypair is generated in your browser. All sensitive data is encrypted with your private key, which is password-protected and never transferred to the server. No sensitive data is ever transmitted over the wire unless it is encrypted with secrets only available on the client.

Recommended Reading

Working on Swordfish

Use the bootstrap script to get the environment set up.

script/bootstrap

Now you will need to run the database migrations before you run the server.

bundle exec rake db:create db:migrate

Finally you can start the application.

script/rails s

Running the tests requries PhatomJS. If you're on Mac OS X you can use homebrew to install this for you.

brew install phantomjs

If you hack on Swordfish and end up adding or editing features you will want to run the tests.

bundle exec rake

Want to join the core team?