Age | Commit message (Collapse) | Author |
|
also cleaned up some other parts that were not needed anymore
|
|
|
|
|
|
|
|
|
|
|
|
|
|
still missing some error handling, this in Django specs and the right http verbs
|
|
* still need to fix the algo for auth
* Also need to get the http verbs right
|
|
|
|
|
|
|
|
|
|
|
|
* srp_register now is part of srp.js
* moved server specific stuff into plainXHR (such as fetching the seed from the server)
* fixed tests
|
|
|
|
|
|
no real change yet
|
|
We can replace this if we want to use jquery ajax or similar. Also this has all the urls so it's super easy to overwrite
|
|
|
|
We can easily overwrite the corresponding functions
|
|
|
|
|
|
|
|
|
|
* removed Django code - we're keeping the tests - so I hope the two can still be used together
* removed js packer - everyone has their own packaging strategy these days
* cleaned up the repository - we only have js so javascript directory does not make much sense
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
* added a small hook in srp to set a, A and Astr for testing
* moved generic functions for tests to SpecHelper
|
|
Not sure if this was needed. Tests will throw exceptions when it's in but maybe some legacy browsers require it.
|
|
|
|
|
|
|
|
Functions exist to create headers that include javascript files, and create javascript functions for login and registration. There are also
functions that create login and registration forms.
These functions don't necessarily account for everything a web developer might want to do, but it should simplify things for most developers and
provide guidelines for developers who want to build on top of this functionality.
Views.py now builds the login and register pages based on these functions. The register page now uses the login.html template, and the
register.html template should be deleted in the next release.
|
|
includes AES.
|
|
site-by-site basis.
|
|
made them hidden fields in the form. This way a bookmarklet will be
able to read the fields, and authentication can be done without trusting the javascript sent by the server.
I also organized urls.py
|
|
must send the server the password. I wasn't happy about doing this
in plaintext, so I've incorporated slowAES on both the client and the server to encrypt the password before it is sent, using the key generated
in the first SRP transaction.
|
|
|
|
If a user exists in the auth table but not the srp table, the server sends back the algorithm and salt needed to hash the password. The hashed
password is used to authenticate the user.
After the server authenticates the user and the user verifies the identity of the server, the user sends the password in plaintext. The server
uses the plaintext password to calculate the verifier and stores. Finally, the client reinitiates the login process.
|
|
login script is now .3 kb smaller, but there is a new 1.1 kb
register file. I think that registrations are rare enough relative to logins that this should be a worthwhile tradeoff. This also prepares a
framework for importing an update file, which will allow existing installations to upgrade from less secure authentication protocols, so some of
the overhead in srp.js that was added here will help reduce the size as we add the update functionality.
|
|
authentication backend framework.
|
|
|
|
Made srpPath a part of the SRP object to reduce namespace clutter.
|
|
or not, and loads the packed or unpacked hash files accordingly.
It occurs to me that perhaps all of the hash functions should be put into a single object to reduce namespace pollution.
|