# This file is dual licensed under the terms of the Apache License, Version # 2.0, and the BSD License. See the LICENSE file in the root of this repository # for complete details. import abc import typing # This exists to break an import cycle. It is normally accessible from the # ciphers module. class CipherAlgorithm(metaclass=abc.ABCMeta): @abc.abstractproperty def name(self) -> str: """ A string naming this mode (e.g. "AES", "Camellia"). """ @abc.abstractproperty def key_sizes(self) -> typing.FrozenSet[int]: """ Valid key sizes for this algorithm in bits """ @abc.abstractproperty def key_size(self) -> int: """ The size of the key being used as an integer in bits (e.g. 128, 256). """ class BlockCipherAlgorithm(metaclass=abc.ABCMeta): @abc.abstractproperty def block_size(self) -> int: """ The size of a block as an integer in bits (e.g. 64, 128). """
Name | Type | Size | Permission | Actions |
---|---|---|---|---|
__pycache__ | Folder | 0755 |
|
|
asymmetric | Folder | 0755 |
|
|
ciphers | Folder | 0755 |
|
|
kdf | Folder | 0755 |
|
|
serialization | Folder | 0755 |
|
|
twofactor | Folder | 0755 |
|
|
__init__.py | File | 180 B | 0644 |
|
_asymmetric.py | File | 485 B | 0644 |
|
_cipheralgorithm.py | File | 1000 B | 0644 |
|
_serialization.py | File | 1.31 KB | 0644 |
|
cmac.py | File | 2.11 KB | 0644 |
|
constant_time.py | File | 387 B | 0644 |
|
hashes.py | File | 5.91 KB | 0644 |
|
hmac.py | File | 2.28 KB | 0644 |
|
keywrap.py | File | 5.79 KB | 0644 |
|
padding.py | File | 6.05 KB | 0644 |
|
poly1305.py | File | 1.67 KB | 0644 |
|