yeying.client.tool package
Subpackages
Submodules
yeying.client.tool.authenticate module
- class yeying.client.tool.authenticate.Authenticate(block_address: BlockAddress)
Bases:
object- create_header(body=None)
- get_did()
- sign_data(data: bytes)
- verify_header(header, body=None)
- yeying.client.tool.authenticate.verify_data(did: str, data: bytes, signature: str)
yeying.client.tool.crypto_service module
- class yeying.client.tool.crypto_service.AssetCipher(block_address: BlockAddress, security_algorithm: SecurityAlgorithm)
Bases:
object提供资产加密和解密功能
- decrypt(data: bytes) bytes
解密数据
- encrypt(data: bytes) bytes
加密数据
- class yeying.client.tool.crypto_service.CipherTypeEnum(*values)
Bases:
Enum- CIPHER_TYPE_AES_GCM_256 = 1
- CIPHER_TYPE_UNKNOWN = 0
- exception yeying.client.tool.crypto_service.InvalidPassword
Bases:
Exception无效密码异常
- yeying.client.tool.crypto_service.convert_to_algorithm_name(cipher_type: CipherTypeEnum) str
将密码类型转换为算法名称
- yeying.client.tool.crypto_service.decode_base64(data: str) bytes
Base64解码
- yeying.client.tool.crypto_service.decrypt(key: bytes, data: bytes, iv: bytes, algorithm: str = 'AES-GCM') bytes
使用AES-GCM解密数据
- yeying.client.tool.crypto_service.derive_from_block_address(block_address: BlockAddress) bytes
使用私钥和公钥通过ECDH派生密钥
- yeying.client.tool.crypto_service.encrypt(key: bytes, data: bytes, iv: bytes, algorithm: str = 'AES-GCM') bytes
使用AES-GCM加密数据
- yeying.client.tool.crypto_service.trim_left(s: str, trim_str: str) str
yeying.client.tool.identity_service module
- yeying.client.tool.identity_service.compute_hash(content: bytes) bytes
计算 SHA-256 哈希值
- yeying.client.tool.identity_service.convert_cipher_type_from(type_str: str) <google.protobuf.internal.enum_type_wrapper.EnumTypeWrapper object at 0x7fca5bce7d70>
- yeying.client.tool.identity_service.convert_to_algorithm_name(cipher_type: <google.protobuf.internal.enum_type_wrapper.EnumTypeWrapper object at 0x7fca5bce7d70>) str
将加密类型枚举转换为对应的算法名称
- Parameters:
cipher_type – 加密类型枚举值
- Returns:
对应的算法名称字符串
- yeying.client.tool.identity_service.decrypt(name: str, key: bytes, iv: bytes, content: bytes) bytes
- yeying.client.tool.identity_service.decrypt_block_address(block_address: str, security_algorithm: SecurityAlgorithm, password: str) BlockAddress
- yeying.client.tool.identity_service.derive_raw_key_from_string(algorithm_name: str, password: str) bytes
从字符串派生原始密钥 注意:Python 中通常直接返回密钥字节,而不是密钥对象