Metadata-Version: 2.1
Name: Quart-Bcrypt
Version: 0.0.3a0
Summary: Brcrypt hashing for Quart.
Home-page: https://github.com/crood58/quart-bcrypt
Author: Chris Rood
Author-email: crood58@gmail.com
License: BSD
Download-URL: https://github.com/crood58/quart-bcrypt/archive/refs/tags/0.0.3.tar.gz
Platform: any
Classifier: Environment :: Web Environment
Classifier: Intended Audience :: Developers
Classifier: License :: OSI Approved :: BSD License
Classifier: Operating System :: OS Independent
Classifier: Programming Language :: Python :: 3.7
Classifier: Programming Language :: Python :: 3.8
Classifier: Programming Language :: Python :: 3.9
Classifier: Topic :: Internet :: WWW/HTTP :: Dynamic Content
Classifier: Topic :: Software Development :: Libraries :: Python Modules
Requires-Python: >=3.7
Description-Content-Type: text/markdown
License-File: LICENSE

# Quart-Bcrypt

Quart-Bcrypt is a Quart extension that provides bcrypt hashing utilities for
your application. Orginal code from Flash-Bcrypt, which can be found at 
https://github.com/maxcountryman/flask-bcrypt

Due to the recent increased prevelance of powerful hardware, such as modern
GPUs, hashes have become increasingly easy to crack. A proactive solution to
this is to use a hash that was designed to be "de-optimized". Bcrypt is such
a hashing facility; unlike hashing algorithms such as MD5 and SHA1, which are
optimized for speed, bcrypt is intentionally structured to be slow.

For sensitive data that must be protected, such as passwords, bcrypt is an
advisable choice.

## Installation

Install the extension with the following command:
    
    $ pip3 install quart-bcrypt

## Usage

To use the extension simply import the class wrapper and pass the Quart app
object back to here. Do so like this:

    from quart import Quart
    from quart_bcrypt import Bcrypt
    
    app = Quart(__name__)
    bcrypt = Bcrypt(app)

Two primary hashing methods are now exposed by way of the bcrypt object. Note that you
need to use decode('utf-8') on generate_password_hash().

    pw_hash = bcrypt.generate_password_hash('hunter2').decode('utf-8')
    bcrypt.check_password_hash(pw_hash, 'hunter2') # returns True

## Documentation

View documentation at https://quart-bcrypt.readthedocs.io/en/latest/

