hyb
2026-01-09 4cb426cb3ae31e772a09d4ade5b2f0242aaeefa0
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
from typing import TypedDict, Callable, TypeVar, Generic
from typing_extensions import Unpack, NotRequired
 
from Crypto.PublicKey.ECC import EccKey
 
T = TypeVar('T')
 
class RequestParams(TypedDict, Generic[T]):
    kdf: Callable[[bytes|bytearray|memoryview], T]
    static_priv: NotRequired[EccKey]
    static_pub: NotRequired[EccKey]
    eph_priv: NotRequired[EccKey]
    eph_pub: NotRequired[EccKey]
 
def import_x25519_public_key(encoded: bytes) -> EccKey: ...
def import_x25519_private_key(encoded: bytes) -> EccKey: ...
def import_x448_public_key(encoded: bytes) -> EccKey: ...
def import_x448_private_key(encoded: bytes) -> EccKey: ...
def key_agreement(**kwargs: Unpack[RequestParams[T]]) -> T: ...