403Webshell
Server IP : 178.105.222.151  /  Your IP : 216.73.216.38
Web Server : nginx/1.28.3
System : Linux MNK 7.0.0-15-generic #15-Ubuntu SMP PREEMPT_DYNAMIC Wed Apr 22 16:06:43 UTC 2026 x86_64
User : www-data ( 33)
PHP Version : 8.5.4
Disable Function : NONE
MySQL : OFF  |  cURL : ON  |  WGET : ON  |  Perl : ON  |  Python : OFF  |  Sudo : ON  |  Pkexec : OFF
Directory :  /usr/share/doc/python3-passlib/html/narr/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Command :


[ Back ]     

Current File : /usr/share/doc/python3-passlib/html/narr/overview.html
<!DOCTYPE html>

<html lang="en" data-content_root="../">
  <head>
    <meta charset="utf-8" />
    <meta name="viewport" content="width=device-width, initial-scale=1.0" /><meta name="viewport" content="width=device-width, initial-scale=1" />

    <title>Library Overview &#8212; Passlib vlatest Documentation</title>
    <link rel="stylesheet" type="text/css" href="../_static/pygments.css?v=fa44fd50" />
    <link rel="stylesheet" type="text/css" href="../_static/classic.css?v=2bf1fcf8" />
    
    <script src="../_static/documentation_options.js?v=c6e86fd7"></script>
    <script src="../_static/doctools.js?v=9bcbadda"></script>
    <script src="../_static/sphinx_highlight.js?v=dc90522c"></script>
    
    <link rel="icon" href="../_static/logo.ico"/>
    <link rel="index" title="Index" href="../genindex.html" />
    <link rel="search" title="Search" href="../search.html" />
    <link rel="copyright" title="Copyright" href="../copyright.html" />
    <link rel="next" title="New Application Quickstart Guide" href="quickstart.html" />
    <link rel="prev" title="Installation" href="../install.html" /> 
  </head><body>
    <div class="related" role="navigation" aria-label="Related">
      <h3>Navigation</h3>
      <ul>
        <li class="right" style="margin-right: 10px">
          <a href="../genindex.html" title="General Index"
             accesskey="I">index</a></li>
        <li class="right" >
          <a href="../py-modindex.html" title="Python Module Index"
             >modules</a> |</li>
        <li class="right" >
          <a href="quickstart.html" title="New Application Quickstart Guide"
             accesskey="N">next</a> |</li>
        <li class="right" >
          <a href="../install.html" title="Installation"
             accesskey="P">previous</a> |</li>
        <li class="nav-item nav-item-0"><a href="../contents.html">Passlib latest Documentation</a> &#187;</li>
          <li class="nav-item nav-item-1"><a href="index.html" accesskey="U">Walkthrough &amp; Tutorials</a> &#187;</li>
        <li class="nav-item nav-item-this"><a href="">Library Overview</a></li> 
      </ul>
    </div>  

    <div class="document">
      <div class="documentwrapper">
        <div class="bodywrapper">
          <div class="body" role="main">
            
  <section id="library-overview">
<h1>Library Overview<a class="headerlink" href="#library-overview" title="Link to this heading">¶</a></h1>
<p>Passlib is a collection of routines for managing password hashes
such as found in unix “shadow” files, as returned by stdlib’s <code class="xref py py-func docutils literal notranslate"><span class="pre">crypt.crypt()</span></code>,
as stored in mysql and postgres, and various other places.
Passlib’s contents can be roughly grouped into four categories:
password hashes, password contexts, two-factor authentication,
and other utility functions.</p>
<section id="password-hashes">
<h2>Password Hashes<a class="headerlink" href="#password-hashes" title="Link to this heading">¶</a></h2>
<p>All of the hashes supported by Passlib are implemented
as “hasher” classes which can be imported from the <a class="reference internal" href="../lib/passlib.hash.html#module-passlib.hash" title="passlib.hash: all password hashes provided by Passlib"><code class="xref py py-mod docutils literal notranslate"><span class="pre">passlib.hash</span></code></a> module.
In turn, all of the hashers have a uniform interface,
which is documented in the <a class="reference internal" href="hash-tutorial.html#hash-tutorial"><span class="std std-ref">PasswordHash Tutorial</span></a>.</p>
<p><em>A word of warning:</em> Some the hashes in this library are marked as “insecure”,
and are provided for historical purposes only.  Still others are specialized in ways that are not generally useful.
If you are creating a new application and need to choose a password hash,
please read the <a class="reference internal" href="quickstart.html"><span class="doc">New Application Quickstart Guide</span></a> first.</p>
<div class="float-center admonition seealso">
<p class="admonition-title">See also</p>
<ul class="simple">
<li><p><a class="reference internal" href="hash-tutorial.html#hash-tutorial"><span class="std std-ref">PasswordHash Tutorial</span></a> – walkthrough of using a hasher class.</p></li>
<li><p><a class="reference internal" href="quickstart.html"><span class="doc">New Application Quickstart Guide</span></a> – if you need to choose a hash.</p></li>
<li><p><a class="reference internal" href="../lib/passlib.ifc.html#module-passlib.ifc" title="passlib.ifc: abstract interfaces used by Passlib"><code class="xref py py-mod docutils literal notranslate"><span class="pre">passlib.ifc</span></code></a> – PasswordHash API reference</p></li>
<li><p><a class="reference internal" href="../lib/passlib.hash.html#module-passlib.hash" title="passlib.hash: all password hashes provided by Passlib"><code class="xref py py-mod docutils literal notranslate"><span class="pre">passlib.hash</span></code></a> – list of all hashes in Passlib.</p></li>
</ul>
</div>
</section>
<section id="password-contexts">
<h2>Password Contexts<a class="headerlink" href="#password-contexts" title="Link to this heading">¶</a></h2>
<p>Mature applications frequently have to deal with tables of existing password hashes.
Over time, they have to support a number of tasks:</p>
<ul class="simple">
<li><p>Add support for new algorithms, and deprecate old ones.</p></li>
<li><p>Raise the time-cost settings for existing algorithms as computing power increases.</p></li>
<li><p>Perform rolling upgrades of existing hashes to comply with these changes.</p></li>
<li><p>Eventually, these policies must be hardcoded in the source,
or time must be spent implementing a configuration language to encode them.</p></li>
</ul>
<p>In these situations, loading and handling multiple hash algorithms becomes
complicated and tedious. The <a class="reference internal" href="../lib/passlib.context.html#module-passlib.context" title="passlib.context: CryptContext class, for managing multiple password hash schemes"><code class="xref py py-mod docutils literal notranslate"><span class="pre">passlib.context</span></code></a> module provides a single class,
<code class="xref py py-class docutils literal notranslate"><span class="pre">CryptContext</span></code>, which attempts to solve all of these problems
(or at least relieve developers of most of the burden).</p>
<p>This class handles managing multiple password hash schemes,
deprecation &amp; migration of old hashes, and supports a simple configuration
language that can be serialized to an INI file.</p>
<div class="float-center admonition seealso">
<p class="admonition-title">See also</p>
<ul class="simple">
<li><p><a class="reference internal" href="context-tutorial.html#context-tutorial"><span class="std std-ref">CryptContext Tutorial</span></a> – walkthrough of the CryptContext class</p></li>
<li><p><a class="reference internal" href="../lib/passlib.context.html#module-passlib.context" title="passlib.context: CryptContext class, for managing multiple password hash schemes"><code class="xref py py-mod docutils literal notranslate"><span class="pre">passlib.context</span></code></a> – API reference</p></li>
</ul>
</div>
</section>
<section id="two-factor-authentication">
<h2>Two-Factor Authentication<a class="headerlink" href="#two-factor-authentication" title="Link to this heading">¶</a></h2>
<p>While not strictly connected to password hashing, modern applications frequently
need to perform the related task of two-factor authentication.  One of the most
common protocols for doing this is TOTP (<span class="target" id="index-0"></span><a class="rfc reference external" href="https://datatracker.ietf.org/doc/html/rfc6238.html"><strong>RFC 6238</strong></a>).
To help get TOTP in place, the <a class="reference internal" href="../lib/passlib.totp.html#module-passlib.totp" title="passlib.totp: totp / two factor authentaction"><code class="xref py py-mod docutils literal notranslate"><span class="pre">passlib.totp</span></code></a> module provides a set of helper functions
for securely configuring, persisting, and verifying TOTP tokens.</p>
<div class="float-center admonition seealso">
<p class="admonition-title">See also</p>
<ul class="simple">
<li><p><a class="reference internal" href="totp-tutorial.html#totp-tutorial"><span class="std std-ref">TOTP tutorial</span></a> – walkthrough of setting up TOTP integration</p></li>
<li><p><a class="reference internal" href="../lib/passlib.totp.html#module-passlib.totp" title="passlib.totp: totp / two factor authentaction"><code class="xref py py-mod docutils literal notranslate"><span class="pre">passlib.totp</span></code></a> – API reference</p></li>
</ul>
</div>
</section>
<section id="application-helpers">
<h2>Application Helpers<a class="headerlink" href="#application-helpers" title="Link to this heading">¶</a></h2>
<p>Passlib also provides a number of pre-configured <code class="xref py py-class docutils literal notranslate"><span class="pre">CryptContext</span></code> instances
in order to get users started quickly:</p>
<blockquote>
<div><ul class="simple">
<li><p><a class="reference internal" href="../lib/passlib.apps.html#module-passlib.apps" title="passlib.apps: hashing &amp; verifying passwords used in sql servers and other applications"><code class="xref py py-mod docutils literal notranslate"><span class="pre">passlib.apps</span></code></a> – contains pre-configured
instances for managing hashes used by Postgres, Mysql, and LDAP, and others.</p></li>
<li><p><a class="reference internal" href="../lib/passlib.hosts.html#module-passlib.hosts" title="passlib.hosts: hashing &amp; verifying operating system passwords"><code class="xref py py-mod docutils literal notranslate"><span class="pre">passlib.hosts</span></code></a> – contains pre-configured
instances for managing hashes as found in the /etc/shadow files
on Linux and BSD systems.</p></li>
</ul>
</div></blockquote>
<p>Passlib also contains a couple of additional modules which provide
support for certain application-specific tasks:</p>
<blockquote>
<div><ul class="simple">
<li><p><a class="reference internal" href="../lib/passlib.apache.html#module-passlib.apache" title="passlib.apache: reading/writing htpasswd &amp; htdigest files"><code class="xref py py-mod docutils literal notranslate"><span class="pre">passlib.apache</span></code></a> – classes for managing htpasswd and htdigest files.</p></li>
<li><p><a class="reference internal" href="../lib/passlib.ext.django.html#module-passlib.ext.django" title="passlib.ext.django"><code class="xref py py-mod docutils literal notranslate"><span class="pre">passlib.ext.django</span></code></a> – Django plugin which monkeypatches support for (almost) any hash in Passlib.</p></li>
</ul>
</div></blockquote>
</section>
</section>


            <div class="clearer"></div>
          </div>
        </div>
      </div>
      <div class="sphinxsidebar" role="navigation" aria-label="Main">
        <div class="sphinxsidebarwrapper">
            <p class="logo"><a href="../contents.html">
              <img class="logo" src="../_static/masthead.png" alt="Logo of Passlib"/>
            </a></p>
<search id="searchbox" style="display: none" role="search">
  <h3 id="searchlabel">Quick search</h3>
    <div class="searchformwrapper">
    <form class="search" action="../search.html" method="get">
      <input type="text" name="q" aria-labelledby="searchlabel" autocomplete="off" autocorrect="off" autocapitalize="off" spellcheck="false"/>
      <input type="submit" value="Go" />
    </form>
    </div>
</search>
<script>document.getElementById('searchbox').style.display = "block"</script>
<h3><a href="../contents.html">Table of Contents</a></h3>
<ul class="current">
<li class="toctree-l1"><a class="reference internal" href="../index.html">Introduction</a></li>
<li class="toctree-l1 current"><a class="reference internal" href="index.html">Walkthrough &amp; Tutorials</a><ul class="current">
<li class="toctree-l2"><a class="reference internal" href="../install.html">Installation</a></li>
<li class="toctree-l2 current"><a class="current reference internal" href="#">Library Overview</a><ul>
<li class="toctree-l3"><a class="reference internal" href="#password-hashes">Password Hashes</a></li>
<li class="toctree-l3"><a class="reference internal" href="#password-contexts">Password Contexts</a></li>
<li class="toctree-l3"><a class="reference internal" href="#two-factor-authentication">Two-Factor Authentication</a></li>
<li class="toctree-l3"><a class="reference internal" href="#application-helpers">Application Helpers</a></li>
</ul>
</li>
<li class="toctree-l2"><a class="reference internal" href="quickstart.html">New Application Quickstart Guide</a></li>
<li class="toctree-l2"><a class="reference internal" href="hash-tutorial.html"><code class="xref py py-class docutils literal notranslate"><span class="pre">PasswordHash</span></code> Tutorial</a></li>
<li class="toctree-l2"><a class="reference internal" href="context-tutorial.html"><code class="xref py py-class docutils literal notranslate"><span class="pre">CryptContext</span></code> Tutorial</a></li>
<li class="toctree-l2"><a class="reference internal" href="totp-tutorial.html"><code class="xref py py-class docutils literal notranslate"><span class="pre">TOTP</span></code> Tutorial</a></li>
</ul>
</li>
<li class="toctree-l1"><a class="reference internal" href="../lib/index.html">API Reference</a></li>
<li class="toctree-l1"><a class="reference internal" href="../other.html">Other Documentation</a></li>
</ul>

        </div>
      </div>
      <div class="clearer"></div>
    </div>
    <div class="related" role="navigation" aria-label="Related">
      <h3>Navigation</h3>
      <ul>
        <li class="right" style="margin-right: 10px">
          <a href="../genindex.html" title="General Index"
             >index</a></li>
        <li class="right" >
          <a href="../py-modindex.html" title="Python Module Index"
             >modules</a> |</li>
        <li class="right" >
          <a href="quickstart.html" title="New Application Quickstart Guide"
             >next</a> |</li>
        <li class="right" >
          <a href="../install.html" title="Installation"
             >previous</a> |</li>
        <li class="nav-item nav-item-0"><a href="../contents.html">Passlib latest Documentation</a> &#187;</li>
          <li class="nav-item nav-item-1"><a href="index.html" >Walkthrough &amp; Tutorials</a> &#187;</li>
        <li class="nav-item nav-item-this"><a href="">Library Overview</a></li> 
      </ul>
    </div>
    <div class="footer" role="contentinfo">
    &#169; <a href="../copyright.html">Copyright</a> 2008-2025, Assurance Technologies, LLC. Last Updated 2025-12-21.
      Created using <a href="https://www.sphinx-doc.org/">Sphinx</a> 8.2.3.
    </div>
  </body>
</html>

Youez - 2016 - github.com/yon3zu
LinuXploit