/**
* RSA 密钥对密钥 bit 数的类型
*/
export type RsaKeySizeType = 1024 | 2048;
/**
* 在 keySize bit 长度下的 RSA 密钥所能够解密密文的最大长度。
* RSA 加密算法所能够解密的最大密文长度的计算公式为 (keySize / 8) byte
*/
/**
* 修改 RSA 密钥对密钥的 bit 数(密钥的长度)
* 此方法在修改 RSA 密钥对密钥的 bit 数后,会重新计算在新的 keySize bit 长度下 RSA 密钥对密钥所能够
* 加密的最大明文长度以及所能够解密的最大密文长度
*
* @param size 新的 RSA 密钥对密钥的 bit 数(密钥的长度)
*/
export declare const setKeySize: (size: RsaKeySizeType) => void;
/**
* RSA 密钥对属性名称枚举
*/
export declare enum RsaKeyPairPropNameEnum {
PUB_KEY = "publicKey",
PRI_KEY = "privateKey"
}
/**
* RSA 密钥对属性名称常量对象
*/
export declare const RsaKeyPairPropName: {
readonly PUB_KEY: "publicKey";
readonly PRI_KEY: "privateKey";
};
/**
* 获取 RSA 密钥对
* 需要注意的是,返回的 RSA 密钥对中的公钥和私钥字符串都是带 header 和 footer 的
*/
export declare const getKeyPair: () => {
publicKey: string;
privateKey: string;
};
/**
* 获取 base64 编码的 RSA 密钥对
* 需要注意的是,返回的 RSA 密钥对中的公钥和私钥字符串都是不带 header 和 footer 的
*/
export declare const getKeyPairB64: () => {
publicKey: string;
privateKey: string;
};
/**
* 使用 RSA 公钥对明文进行加密
* 当需要加密的明文字符串或 RSA 公钥字符串为空字符串,或者需要加密处理的明文字符串
* 超过所能够加密明文的最大长度,以及加密失败等情况,都会返回传递进来的明文字符串;否则,返回加密后的密文字
* 符串
*
* @param plainText 明文
* @param publicKey RSA 公钥
* @return {string} 加密后的密文
*/
export declare const encryptByPubKey: (plainText: string, publicKey: string) => string;
/**
* 使用 RSA 私钥对密文进行解密
* 当需要解密的密文字符串或 RSA 私钥字符串为空字符串,或者解密失败等情况,都会直接返回
* 传递进来的密文字符串;否则,返回解密后的密文字符串
*
* @param secretText 密文
* @param privateKey 密钥
* @return {string} 密文解密后的明文
*/
export declare const decryptByPriKey: (secretText: string, privateKey: string) => string;