Source

django-scrypt / README.rst

Diff from to

File README.rst

 Using source tarballs
 ---------------------
 
-- Download the source tarball for Django-Scrypt from Pypi
+1. Download the source tarball for Django-Scrypt from Pypi
 
-   http://pypi.python.org/pypi/django-scrypt/
+       http://pypi.python.org/pypi/django-scrypt/
 
-- Decompress it and make it your working directory::
+2. Decompress it and make it your working directory::
 
-   $ tar zxvf django-scrypt-0.2.0.tar.gz
-   $ cd django-scrypt-0.2.0
+       $ tar zxvf django-scrypt-0.2.0.tar.gz
+       $ cd django-scrypt-0.2.0
 
-- Install it into your site-packages (if you install to the system's site
-packages you will probably need to be root or you will probably need to use
-``sudo``)
+3. Install it into your site-packages (if you install to the system's site
+   packages you will probably need to be root or you will probably need to use
+   ``sudo``)
 
-   ``$ python setup.py install``
+       ``$ python setup.py install``
 
-- Test your installation
+4. Test your installation
 
-   ``$ python setup.py test``
+       ``$ python setup.py test``
 
 Using Pip and Pypi
 ------------------
 If you are installing to the system-wide site-packages then you will probably
 need to be root or you will probably need to use ``sudo``.
 
-- Use the ``pip`` command to install from Pypi
+1. Use the ``pip`` command to install from Pypi
 
-   ``$ pip install django-scrypt``
+       ``$ pip install django-scrypt``
 
 Basic Usage
 ===========
    that can result in incorrect hashing when run on 64-bit Linux systems. View
    the ``py-scrypt`` issue tracker for the latest information on this issue. [#]_
 
-.. [#] `Issue 6 <https://bitbucket.org/mhallin/py-scrypt/issue/6/hash-dies-with-sigfpe-when-passing-r-or-p>`_
+.. [#] See py-scrypt `Issue 6 <https://bitbucket.org/mhallin/py-scrypt/issue/6/hash-dies-with-sigfpe-when-passing-r-or-p>`_
 
 To use Scrypt as your default password storage algorithm in Django 1.4,
 install it and make the following changes. In your Django 1.4 application
     'django.contrib.auth.hashers.CryptPasswordHasher',
   )
 
-Note: You need to keep the other hasher entries in this list or else Django
-won't be able to upgrade the passwords!
+.. note::
+
+   You need to keep the other hasher entries in this list or else Django
+   won't be able to upgrade the passwords!
 
 You have now changed your app to use Scrypt as the default storage algorithm.
-
 As users login to your system they will automatically upgrade to use Scrypt
 hashes.
 
 Caveat
 ======
 
-Hash Format Change N Removed
-----------------------------
+Hash Format Changes As N Removed
+--------------------------------
 
 In an attempt to shorten the length of the encoded hash, I removed the
 N-value and replaced it with an N-exponent value named Nexp. The reason for
-this is that N must be a power of two {2, 4, 6, ... 16384, etc...} and those
-digits take up room in a 128 character hash storage space. It makes more sense
-to me to store the exponent and just make the actual integer on the fly.
+this is that N must be a power of two {2, 4, 6, ... 16384, ...etc...} and
+those digits take up room in a 128 character hash storage space. It makes
+more sense to me to store the exponent and just make the actual integer on
+the fly.
 
-``N == 16384 == 2 ** 14 therefore Nexp == 14``
+       ``N == 16384 == 2 ** 14 therefore Nexp == 14``
 
-The bad news is that this introduces a backward incompatible change.
+The bad news is that this introduces a backward incompatible change as of
+version 0.2.0.
 
 Django Password Field Character Length Limits
 ---------------------------------------------
 By default, Django limits password field lengths to 128 characters. Using the
 default settings in Django-Scrypt with the Django salting implementation
 should yield encoded hashes less than 128 characters; however, if you override
-the ScryptPasswordHasher class variables you can end up overflowing the field.
+the ScryptPasswordHasher class variables you might end up overflowing the
+field.
 
 The solution is to increase the size of the password field (this example uses
 256 characters but it can be larger). You can do this using the django shell
 
 http://www.kelvinwong.ca/coders
 
-Thanks to Dr Colin Percival for his original Scrypt software [#],
-also to Magnus Hallin for the py-scrypt Python module [#].
+Thanks to Dr Colin Percival for his original Scrypt software [#]_,
+also to Magnus Hallin for the py-scrypt Python module [#]_.
 
-.. [#] http://www.tarsnap.com/scrypt.html
-.. [#] http://pypi.python.org/pypi/scrypt/
+.. [#] Visit http://www.tarsnap.com/scrypt.html
+.. [#] Visit http://pypi.python.org/pypi/scrypt/