mirror of
https://github.com/davidhalter/typeshed.git
synced 2025-12-08 04:54:47 +08:00
81 lines
3.7 KiB
Python
81 lines
3.7 KiB
Python
import sys
|
|
from _typeshed import ReadableBuffer
|
|
from collections.abc import Callable
|
|
from types import ModuleType
|
|
from typing import AnyStr, final, overload
|
|
from typing_extensions import Self, TypeAlias
|
|
|
|
_DigestMod: TypeAlias = str | Callable[[], HASH] | ModuleType | None
|
|
|
|
openssl_md_meth_names: frozenset[str]
|
|
|
|
class HASH:
|
|
@property
|
|
def digest_size(self) -> int: ...
|
|
@property
|
|
def block_size(self) -> int: ...
|
|
@property
|
|
def name(self) -> str: ...
|
|
def copy(self) -> Self: ...
|
|
def digest(self) -> bytes: ...
|
|
def hexdigest(self) -> str: ...
|
|
def update(self, obj: ReadableBuffer, /) -> None: ...
|
|
|
|
if sys.version_info >= (3, 10):
|
|
class UnsupportedDigestmodError(ValueError): ...
|
|
|
|
if sys.version_info >= (3, 9):
|
|
class HASHXOF(HASH):
|
|
def digest(self, length: int) -> bytes: ... # type: ignore[override]
|
|
def hexdigest(self, length: int) -> str: ... # type: ignore[override]
|
|
|
|
@final
|
|
class HMAC:
|
|
@property
|
|
def digest_size(self) -> int: ...
|
|
@property
|
|
def block_size(self) -> int: ...
|
|
@property
|
|
def name(self) -> str: ...
|
|
def copy(self) -> Self: ...
|
|
def digest(self) -> bytes: ...
|
|
def hexdigest(self) -> str: ...
|
|
def update(self, msg: ReadableBuffer) -> None: ...
|
|
|
|
@overload
|
|
def compare_digest(a: ReadableBuffer, b: ReadableBuffer, /) -> bool: ...
|
|
@overload
|
|
def compare_digest(a: AnyStr, b: AnyStr, /) -> bool: ...
|
|
def get_fips_mode() -> int: ...
|
|
def hmac_new(key: bytes | bytearray, msg: ReadableBuffer = b"", digestmod: _DigestMod = None) -> HMAC: ...
|
|
def new(name: str, string: ReadableBuffer = b"", *, usedforsecurity: bool = True) -> HASH: ...
|
|
def openssl_md5(string: ReadableBuffer = b"", *, usedforsecurity: bool = True) -> HASH: ...
|
|
def openssl_sha1(string: ReadableBuffer = b"", *, usedforsecurity: bool = True) -> HASH: ...
|
|
def openssl_sha224(string: ReadableBuffer = b"", *, usedforsecurity: bool = True) -> HASH: ...
|
|
def openssl_sha256(string: ReadableBuffer = b"", *, usedforsecurity: bool = True) -> HASH: ...
|
|
def openssl_sha384(string: ReadableBuffer = b"", *, usedforsecurity: bool = True) -> HASH: ...
|
|
def openssl_sha512(string: ReadableBuffer = b"", *, usedforsecurity: bool = True) -> HASH: ...
|
|
def openssl_sha3_224(string: ReadableBuffer = b"", *, usedforsecurity: bool = True) -> HASH: ...
|
|
def openssl_sha3_256(string: ReadableBuffer = b"", *, usedforsecurity: bool = True) -> HASH: ...
|
|
def openssl_sha3_384(string: ReadableBuffer = b"", *, usedforsecurity: bool = True) -> HASH: ...
|
|
def openssl_sha3_512(string: ReadableBuffer = b"", *, usedforsecurity: bool = True) -> HASH: ...
|
|
def openssl_shake_128(string: ReadableBuffer = b"", *, usedforsecurity: bool = True) -> HASHXOF: ...
|
|
def openssl_shake_256(string: ReadableBuffer = b"", *, usedforsecurity: bool = True) -> HASHXOF: ...
|
|
|
|
else:
|
|
def new(name: str, string: ReadableBuffer = b"") -> HASH: ...
|
|
def openssl_md5(string: ReadableBuffer = b"") -> HASH: ...
|
|
def openssl_sha1(string: ReadableBuffer = b"") -> HASH: ...
|
|
def openssl_sha224(string: ReadableBuffer = b"") -> HASH: ...
|
|
def openssl_sha256(string: ReadableBuffer = b"") -> HASH: ...
|
|
def openssl_sha384(string: ReadableBuffer = b"") -> HASH: ...
|
|
def openssl_sha512(string: ReadableBuffer = b"") -> HASH: ...
|
|
|
|
def hmac_digest(key: bytes | bytearray, msg: ReadableBuffer, digest: str) -> bytes: ...
|
|
def pbkdf2_hmac(
|
|
hash_name: str, password: ReadableBuffer, salt: ReadableBuffer, iterations: int, dklen: int | None = None
|
|
) -> bytes: ...
|
|
def scrypt(
|
|
password: ReadableBuffer, *, salt: ReadableBuffer, n: int, r: int, p: int, maxmem: int = 0, dklen: int = 64
|
|
) -> bytes: ...
|