當前位置: 首頁>>代碼示例>>Python>>正文


Python interfaces.HMACBackend方法代碼示例

本文整理匯總了Python中cryptography.hazmat.backends.interfaces.HMACBackend方法的典型用法代碼示例。如果您正苦於以下問題:Python interfaces.HMACBackend方法的具體用法?Python interfaces.HMACBackend怎麽用?Python interfaces.HMACBackend使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在cryptography.hazmat.backends.interfaces的用法示例。


在下文中一共展示了interfaces.HMACBackend方法的8個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的Python代碼示例。

示例1: __init__

# 需要導入模塊: from cryptography.hazmat.backends import interfaces [as 別名]
# 或者: from cryptography.hazmat.backends.interfaces import HMACBackend [as 別名]
def __init__(self, key, algorithm, backend, ctx=None):
        if not isinstance(backend, HMACBackend):
            raise UnsupportedAlgorithm(
                "Backend object does not implement HMACBackend.",
                _Reasons.BACKEND_MISSING_INTERFACE
            )

        if not isinstance(algorithm, hashes.HashAlgorithm):
            raise TypeError("Expected instance of hashes.HashAlgorithm.")
        self._algorithm = algorithm

        self._backend = backend
        self._key = key
        if ctx is None:
            self._ctx = self._backend.create_hmac_ctx(key, self.algorithm)
        else:
            self._ctx = ctx 
開發者ID:aliyun,項目名稱:oss-ftp,代碼行數:19,代碼來源:hmac.py

示例2: __init__

# 需要導入模塊: from cryptography.hazmat.backends import interfaces [as 別名]
# 或者: from cryptography.hazmat.backends.interfaces import HMACBackend [as 別名]
def __init__(self, algorithm, length, salt, info, backend):
        if not isinstance(backend, HMACBackend):
            raise UnsupportedAlgorithm(
                "Backend object does not implement HMACBackend.",
                _Reasons.BACKEND_MISSING_INTERFACE
            )

        self._algorithm = algorithm

        if not (salt is None or isinstance(salt, bytes)):
            raise TypeError("salt must be bytes.")

        if salt is None:
            salt = b"\x00" * (self._algorithm.digest_size // 8)

        self._salt = salt

        self._backend = backend

        self._hkdf_expand = HKDFExpand(self._algorithm, length, info, backend) 
開發者ID:aliyun,項目名稱:oss-ftp,代碼行數:22,代碼來源:hkdf.py

示例3: __init__

# 需要導入模塊: from cryptography.hazmat.backends import interfaces [as 別名]
# 或者: from cryptography.hazmat.backends.interfaces import HMACBackend [as 別名]
def __init__(self, algorithm, length, salt, otherinfo, backend):

        _common_args_checks(algorithm, length, otherinfo)
        self._algorithm = algorithm
        self._length = length
        self._otherinfo = otherinfo
        if self._otherinfo is None:
            self._otherinfo = b""

        if not (salt is None or isinstance(salt, bytes)):
            raise TypeError("salt must be bytes.")
        if salt is None:
            salt = b"\x00" * algorithm.block_size
        self._salt = salt

        if not isinstance(backend, HMACBackend):
            raise UnsupportedAlgorithm(
                "Backend object does not implement HMACBackend.",
                _Reasons.BACKEND_MISSING_INTERFACE
            )
        self._backend = backend
        self._used = False 
開發者ID:aliyun,項目名稱:oss-ftp,代碼行數:24,代碼來源:concatkdf.py

示例4: __init__

# 需要導入模塊: from cryptography.hazmat.backends import interfaces [as 別名]
# 或者: from cryptography.hazmat.backends.interfaces import HMACBackend [as 別名]
def __init__(self, key, length, algorithm, backend):
        if not isinstance(backend, HMACBackend):
            raise UnsupportedAlgorithm(
                "Backend object does not implement HMACBackend.",
                _Reasons.BACKEND_MISSING_INTERFACE
            )

        if len(key) < 16:
            raise ValueError("Key length has to be at least 128 bits.")

        if not isinstance(length, six.integer_types):
            raise TypeError("Length parameter must be an integer type.")

        if length < 6 or length > 8:
            raise ValueError("Length of HOTP has to be between 6 to 8.")

        if not isinstance(algorithm, (SHA1, SHA256, SHA512)):
            raise TypeError("Algorithm must be SHA1, SHA256 or SHA512.")

        self._key = key
        self._length = length
        self._algorithm = algorithm
        self._backend = backend 
開發者ID:aliyun,項目名稱:oss-ftp,代碼行數:25,代碼來源:hotp.py

示例5: __init__

# 需要導入模塊: from cryptography.hazmat.backends import interfaces [as 別名]
# 或者: from cryptography.hazmat.backends.interfaces import HMACBackend [as 別名]
def __init__(self, algorithm, length, salt, info, backend):
        if not isinstance(backend, HMACBackend):
            raise UnsupportedAlgorithm(
                "Backend object does not implement HMACBackend.",
                _Reasons.BACKEND_MISSING_INTERFACE
            )

        self._algorithm = algorithm

        if not (salt is None or isinstance(salt, bytes)):
            raise TypeError("salt must be bytes.")

        if salt is None:
            salt = b"\x00" * self._algorithm.digest_size

        self._salt = salt

        self._backend = backend

        self._hkdf_expand = HKDFExpand(self._algorithm, length, info, backend) 
開發者ID:tp4a,項目名稱:teleport,代碼行數:22,代碼來源:hkdf.py

示例6: __init__

# 需要導入模塊: from cryptography.hazmat.backends import interfaces [as 別名]
# 或者: from cryptography.hazmat.backends.interfaces import HMACBackend [as 別名]
def __init__(self, algorithm, length, salt, info, backend):
        if not isinstance(backend, HMACBackend):
            raise UnsupportedAlgorithm(
                "Backend object does not implement HMACBackend.",
                _Reasons.BACKEND_MISSING_INTERFACE
            )

        self._algorithm = algorithm

        if salt is None:
            salt = b"\x00" * self._algorithm.digest_size
        else:
            utils._check_bytes("salt", salt)

        self._salt = salt

        self._backend = backend

        self._hkdf_expand = HKDFExpand(self._algorithm, length, info, backend) 
開發者ID:tp4a,項目名稱:teleport,代碼行數:21,代碼來源:hkdf.py

示例7: __init__

# 需要導入模塊: from cryptography.hazmat.backends import interfaces [as 別名]
# 或者: from cryptography.hazmat.backends.interfaces import HMACBackend [as 別名]
def __init__(self, key, length, algorithm, backend,
                 enforce_key_length=True):
        if not isinstance(backend, HMACBackend):
            raise UnsupportedAlgorithm(
                "Backend object does not implement HMACBackend.",
                _Reasons.BACKEND_MISSING_INTERFACE
            )

        if len(key) < 16 and enforce_key_length is True:
            raise ValueError("Key length has to be at least 128 bits.")

        if not isinstance(length, six.integer_types):
            raise TypeError("Length parameter must be an integer type.")

        if length < 6 or length > 8:
            raise ValueError("Length of HOTP has to be between 6 to 8.")

        if not isinstance(algorithm, (SHA1, SHA256, SHA512)):
            raise TypeError("Algorithm must be SHA1, SHA256 or SHA512.")

        self._key = key
        self._length = length
        self._algorithm = algorithm
        self._backend = backend 
開發者ID:tp4a,項目名稱:teleport,代碼行數:26,代碼來源:hotp.py

示例8: __init__

# 需要導入模塊: from cryptography.hazmat.backends import interfaces [as 別名]
# 或者: from cryptography.hazmat.backends.interfaces import HMACBackend [as 別名]
def __init__(self, algorithm, length, salt, otherinfo, backend):

        _common_args_checks(algorithm, length, otherinfo)
        self._algorithm = algorithm
        self._length = length
        self._otherinfo = otherinfo
        if self._otherinfo is None:
            self._otherinfo = b""

        if salt is None:
            salt = b"\x00" * algorithm.block_size
        else:
            utils._check_bytes("salt", salt)

        self._salt = salt

        if not isinstance(backend, HMACBackend):
            raise UnsupportedAlgorithm(
                "Backend object does not implement HMACBackend.",
                _Reasons.BACKEND_MISSING_INTERFACE
            )
        self._backend = backend
        self._used = False 
開發者ID:tp4a,項目名稱:teleport,代碼行數:25,代碼來源:concatkdf.py


注:本文中的cryptography.hazmat.backends.interfaces.HMACBackend方法示例由純淨天空整理自Github/MSDocs等開源代碼及文檔管理平台,相關代碼片段篩選自各路編程大神貢獻的開源項目,源碼版權歸原作者所有,傳播和使用請參考對應項目的License;未經允許,請勿轉載。