Metadata-Version: 1.1
Name: simple-crypt
Version: 0.1.10
Summary: Simple encryption and decryption for Python 3
Home-page: https://github.com/andrewcooke/simple-crypt
Author: Andrew Cooke
Author-email: andrew@acooke.org
License: UNKNOWN
Description: 
        What Does Simple Crypt Do?
        --------------------------
        
        Simple Crypt encrypts and decrypts data.  It has two functions, ``encrypt``
        and ``decrypt``::
        
            from simplecrypt import encrypt, decrypt
            ciphertext = encrypt('password', plaintext)
            plaintext = decrypt('password', ciphertext)
        
        That's it.  You can see the implementation on
        `github <https://github.com/andrewcooke/simple-crypt/blob/master/src/simplecrypt/__init__.py>`_.
        
        Why Should I Use Simple Crypt?
        ------------------------------
        
        * It uses standard, well-known algorithms, closely following the
          recommendations `here <http://www.daemonology.net/blog/2009-06-11-cryptographic-right-answers.html>`_.
        
        * It uses routines from the established `pycrypto <https://www.dlitz.net/software/pycrypto>`_
          library (the cipher used is AES256).
        
        * It includes a check (an HMAC with SHA256) to warn when ciphertext data are
          modified.
        
        * It tries to make things as secure as possible when poor quality passwords
          are used (PBKDF2 with SHA256, a 128 bit salt, and 10,000 rounds).  But that
          doesn't mean you should use a poor password!
        
        * Using a library, rather than writing your own code, means that we have less
          solutions to the same problem.  That means more chance of finding bugs, which
          means more reliable, more secure code.
        
        * If simple-crypt does have a bug, the use of a header in the ciphertext data
          will help support an upgrade path (I can't promise full backwards support,
          because any solution will depend on the attack, but at least the needed
          information is present).
        
        What Else Should I Know?
        ------------------------
        
        * You must also install ``pycrypto``.
        
        * The outputs from ``encrypt`` and ``decrypt`` are ``bytes``.  If you started
          with string input then you can convert the output from ``decrypt`` using
          ``.decode('utf8')``.
        
        ::
        
            mystring = decrypt('password', ciphertext).decode('utf8')
            
Platform: UNKNOWN
Classifier: Development Status :: 4 - Beta
Classifier: Intended Audience :: Developers
Classifier: License :: Public Domain
Classifier: Programming Language :: Python :: 3
Classifier: Topic :: Security
Classifier: Topic :: Security :: Cryptography
Classifier: Topic :: Software Development
Requires: p
Requires: y
Requires: c
Requires: r
Requires: y
Requires: p
Requires: t
Requires: o
