/// export * as bigInt from 'big-integer'; export * as gmCrypto from 'gm-crypto'; /** * @module Hex * @description hex(十六进制)字符串相互转换 */ export declare const Hex: { /** * 字符串 转 hex * @param {string} str 要转换的字符串 * @returns {hex} hex字符串 */ encode(str: any): string | null; /** * hex 转 字符串 * @param {hex} hex 要转换的hex字符串 * @returns {string} hex转换后的字符串 */ decode(hex: any): string | null; }; /** * @module Utf8 * @description utf8字符串相互转换 */ export declare const Utf8: { /** * 字符串 转 utf8 * @param {string} str 要转换的字符串 * @returns {utf8} utf8字符串 */ encode(str: any): string | null; /** * utf8 转 字符串 * @param {utf8} utf8 要转换的utf8字符串 * @returns {string} utf8转换后的字符串 */ decode(utf8: any): string | null; }; /** * @module Base64 * @description base64字符串相互转换 */ export declare const Base64: { _KEY: string; /** * base64编码 * @param {string} str 要编码的字符串 * @returns {base64} base64编码后的字符串 */ encode(str: any): string | null | undefined; /** * base64解码 * @param {base64} b64 要解码的base64字符串 * @returns {string} 解码后的base64字符串 */ decode(b64: any): string | null; }; /** * @module SMT * @description 基于SM4算法的数据加解密 * @returns {function} getDH() 获取DH密钥交换信息 * @returns {function} encrypt() 使用SM4算法(默认ECB模式)对原始数据进行加密 * @returns {function} decrypt() 使用SM4算法对加密后的数据进行解密 */ export declare const SMT: { _BIG: any; _KEY: string; /** * 获取DH密钥交换信息 * @param {string} g DH密钥交换算法的底数,通常为一个大整数。 * @param {string} p DH密钥交换算法的模数,通常为一个大质数。 * @param {string} server_number 服务器编号,用于DH密钥交换算法生成解密密钥 * @returns {object} result 返回DH密钥交换数据对象 * @returns {string} result.key * @returns {string} result.key16 * @returns {string} result.bigKey * @returns {string} result.client_number */ getDH(g: string, p: string, server_number: string): { key: string; key16: string; bigKey: string; client_number: any; } | null; /** * 使用SM4算法(默认ECB模式)对原始数据进行加密 * @param {string | ArrayBuffer | Buffer} originalData 需要加密的原始数据,类型为string或Buffer。 * @param {string} g SM4算法的g参数,通常为一个大整数。 * @param {string} p SM4算法的p参数,通常为一个大质数。 * @param {string} server_number 服务器编号,用于生成解密密钥 * @param {object} options 其他可选配置项,例如输入输出编码格式设置 * @param {string} options.inputEncoding 'utf8'【默认】 * @param {string} options.outputEncoding 'base64'【默认】 * @returns 加密后的数据,默认以base64编码形式返回。如果加密过程中发生错误或失败,则返回null。 */ encrypt(originalData: string | ArrayBuffer | Buffer, g: string, p: string, server_number: string, options?: {}): { result: any; key?: string | undefined; key16?: string | undefined; bigKey?: string | undefined; client_number?: any; } | null; /** * 使用SM4算法对加密后的数据进行解密 * @param {string | ArrayBuffer | Buffer} encryptedData 需要解密的数据,类型为string或Buffer。 * @param {string} key 解密的key,长度为32位的16进制字符串,由SMT.encode方法生成。 * @param {string} options 其他可选配置项,例如输入输出编码格式设置 * @param {string} options.inputEncoding 'base64'【默认】 * @param {string} options.outputEncoding 'utf8'【默认】 * @returns 解密后的数据,默认以String字符串形式返回。如果解密过程中发生错误或失败,则返回null。 */ decrypt(encryptedData: string | ArrayBuffer | Buffer, key: string, options?: {}): { result: any; } | null; }; interface Ioptions { mode?: 'ECB' | 'CBC'; iv?: string; inputEncoding?: string; outputEncoding?: string; } /** * 基于MS4算法的公共key,进行加密和解密。 * @param {String} key 加解密的密钥(32位的十六进制字符串)【注:前后端要一致,一般由后端提供】! * @returns {Function} encrypt(originalData) 加密函数 * @returns {Function} decrypt(encryptedData) 解密函数 */ export declare function useMS4(key?: string): { /** * SM4加密函数 * @param {string|ArrayBuffer|Buffer} originalData 需要加密的文本数据 * @param {Object} options 配置选项,例如输入输出编码 * @returns {String} 加密后的文本数据 */ encrypt(originalData: string | ArrayBuffer | Buffer, options?: Ioptions): string; /** * SM4解密函数 * @param {string|ArrayBuffer|Buffer} encryptedData 需要解密的密文数据 * @param {Object} options 配置选项,例如输入输出编码 * @returns {String} 解密后的文本数据 */ decrypt(encryptedData: string | ArrayBuffer | Buffer, options?: Ioptions): string; } | null; /** * 获取Web浏览器地址栏URL ?参数 * @param {string} key 要获取URL参数的key * @param {string} url 要获取的URL地址 * @returns {string} */ export declare function getQuery(key: string, url?: string): string | void | null; declare const _default: { SM2: any; SM3: any; SM4: any; bigInt: any; Hex: { /** * 字符串 转 hex * @param {string} str 要转换的字符串 * @returns {hex} hex字符串 */ encode(str: any): string | null; /** * hex 转 字符串 * @param {hex} hex 要转换的hex字符串 * @returns {string} hex转换后的字符串 */ decode(hex: any): string | null; }; Utf8: { /** * 字符串 转 utf8 * @param {string} str 要转换的字符串 * @returns {utf8} utf8字符串 */ encode(str: any): string | null; /** * utf8 转 字符串 * @param {utf8} utf8 要转换的utf8字符串 * @returns {string} utf8转换后的字符串 */ decode(utf8: any): string | null; }; Base64: { _KEY: string; /** * base64编码 * @param {string} str 要编码的字符串 * @returns {base64} base64编码后的字符串 */ encode(str: any): string | null | undefined; /** * base64解码 * @param {base64} b64 要解码的base64字符串 * @returns {string} 解码后的base64字符串 */ decode(b64: any): string | null; }; SMT: { _BIG: any; _KEY: string; /** * 获取DH密钥交换信息 * @param {string} g DH密钥交换算法的底数,通常为一个大整数。 * @param {string} p DH密钥交换算法的模数,通常为一个大质数。 * @param {string} server_number 服务器编号,用于DH密钥交换算法生成解密密钥 * @returns {object} result 返回DH密钥交换数据对象 * @returns {string} result.key * @returns {string} result.key16 * @returns {string} result.bigKey * @returns {string} result.client_number */ getDH(g: string, p: string, server_number: string): { key: string; key16: string; bigKey: string; client_number: any; } | null; /** * 使用SM4算法(默认ECB模式)对原始数据进行加密 * @param {string | ArrayBuffer | Buffer} originalData 需要加密的原始数据,类型为string或Buffer。 * @param {string} g SM4算法的g参数,通常为一个大整数。 * @param {string} p SM4算法的p参数,通常为一个大质数。 * @param {string} server_number 服务器编号,用于生成解密密钥 * @param {object} options 其他可选配置项,例如输入输出编码格式设置 * @param {string} options.inputEncoding 'utf8'【默认】 * @param {string} options.outputEncoding 'base64'【默认】 * @returns 加密后的数据,默认以base64编码形式返回。如果加密过程中发生错误或失败,则返回null。 */ encrypt(originalData: string | ArrayBuffer | Buffer, g: string, p: string, server_number: string, options?: {}): { result: any; key?: string | undefined; key16?: string | undefined; bigKey?: string | undefined; client_number?: any; } | null; /** * 使用SM4算法对加密后的数据进行解密 * @param {string | ArrayBuffer | Buffer} encryptedData 需要解密的数据,类型为string或Buffer。 * @param {string} key 解密的key,长度为32位的16进制字符串,由SMT.encode方法生成。 * @param {string} options 其他可选配置项,例如输入输出编码格式设置 * @param {string} options.inputEncoding 'base64'【默认】 * @param {string} options.outputEncoding 'utf8'【默认】 * @returns 解密后的数据,默认以String字符串形式返回。如果解密过程中发生错误或失败,则返回null。 */ decrypt(encryptedData: string | ArrayBuffer | Buffer, key: string, options?: {}): { result: any; } | null; }; useMS4: typeof useMS4; getQuery: typeof getQuery; }; export default _default;