UNPKG

ph-utils

Version:

js 开发工具集,前后端都可以使用(commonjs和es module)

75 lines (74 loc) 2.94 kB
/** * 将原始的二进制数据转换为 Hex String * @param bf 待转换的原始数据 * @param upper 是否需要转换为大写 * @returns */ export declare function bufferToHex(bf: ArrayBuffer | Uint8Array, upper?: boolean): string; /** * SHA 哈希算法 * @param message 待进行 hash 的数据 * @param upper 是否转换为大写, 默认为: false * @param algorithm hash算法, 支持: SHA-1、SHA-256、SHA-384、SHA-512; 默认为: SHA-256 * @returns */ export declare function sha(message: string, upper?: boolean, algorithm?: string): Promise<string>; /** * 哈希算法 * @param message 待进行 hash 的数据 * @param upper 是否转换为大写, 默认为: false * @param algorithm hash算法, 支持: SHA-1、SHA-256、SHA-384、SHA-512; 默认为: SHA-256 * @returns */ export declare function hash(message: string, upper?: boolean, algorithm?: string): Promise<string>; type HMACAlgorithm = "SHA-256" | "SHA-512"; /** * 使用 HMAC 算法计算消息的哈希值 * @param message - 需要计算哈希的消息字符串 * @param secret - 用于生成 HMAC 的密钥 * @param algorithm - HMAC 使用的哈希算法,默认为 "SHA-256" * @param upper - 是否将结果转换为大写,默认为 false * @returns 返回十六进制格式的 HMAC 哈希值 */ export declare function hmacHash(message: string, secret: string, algorithm?: HMACAlgorithm, upper?: boolean): Promise<string>; /** 返回结果类似 */ type AlgorithmResType = "hex" | "hexUpper" | "base64" | "raw"; /** * AES 加密 * @param message 待加密的数据 * @param key 加解密密钥 * @param encode 加密后的数据转换的形式, hex - 转换为16进制字符串, hexUpper - 转换为16进制且大写, base64 - 转换为 base64 形式 * @param iv 加解密向量 * @returns [加密数据,向量] */ export declare function aesEncrypt(message: string, key: string, encode?: AlgorithmResType, iv?: null | Uint8Array | string): Promise<{ ciphertext: string | ArrayBuffer; iv: string; key: string; }>; /** * AES 解密 * @param message 加密后的数据 * @param key 解密密钥 * @param iv 向量 * @param encode 加密后数据的形式: hex | base64 * @returns */ export declare function aesDecrypt(message: Uint8Array | string, key: string, iv: string, encode?: AlgorithmResType): Promise<string>; /** * RSA 加密 * @param key 公钥 * @param message 待加密数据 * @param encode 返回类型 * @returns */ export declare function rsaEncrypt(message: string, publicKey: string, encode?: AlgorithmResType): Promise<string | ArrayBuffer>; /** * RSA 解密 * @param key 私钥, 根据私钥解密 * @param message 加密后的数据 * @param encode 加密后的数据形式 * @returns */ export declare function rsaDecrypt(privateKey: string, message: Uint8Array | string, encode?: AlgorithmResType): Promise<string>; export {};