Source code for zope.password.interfaces

##############################################################################
#
# Copyright (c) 2009 Zope Foundation and Contributors.
# All Rights Reserved.
#
# This software is subject to the provisions of the Zope Public License,
# Version 2.1 (ZPL).  A copy of the ZPL should accompany this distribution.
# THIS SOFTWARE IS PROVIDED "AS IS" AND ANY AND ALL EXPRESS OR IMPLIED
# WARRANTIES ARE DISCLAIMED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
# WARRANTIES OF TITLE, MERCHANTABILITY, AGAINST INFRINGEMENT, AND FITNESS
# FOR A PARTICULAR PURPOSE.
#
##############################################################################
"""Password manager interface
"""
import zope.interface


[docs] class IPasswordManager(zope.interface.Interface): """Password manager utility interface. """ def encodePassword(password): """Return encoded data for the given password Return encoded bytes. """ def checkPassword(encoded_password, password): """Does the encoded password match the given password? Return True if they match, else False. """
[docs] class IMatchingPasswordManager(IPasswordManager): """Password manager with hash matching support""" def match(encoded_password): """Was the given data was encoded with this manager's scheme? Return True when the given data was encoded with the scheme implemented by this password manager. """