123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117 |
- import { JSEncryptRSAKey } from "./JSEncryptRSAKey";
- export interface IJSEncryptOptions {
- default_key_size?: string;
- default_public_exponent?: string;
- log?: boolean;
- }
- /**
- *
- * @param {Object} [options = {}] - An object to customize JSEncrypt behaviour
- * possible parameters are:
- * - default_key_size {number} default: 1024 the key size in bit
- * - default_public_exponent {string} default: '010001' the hexadecimal representation of the public exponent
- * - log {boolean} default: false whether log warn/error or not
- * @constructor
- */
- export declare class JSEncrypt {
- constructor(options: IJSEncryptOptions);
- private default_key_size;
- private default_public_exponent;
- private log;
- private key;
- static version: string;
- /**
- * Method to set the rsa key parameter (one method is enough to set both the public
- * and the private key, since the private key contains the public key paramenters)
- * Log a warning if logs are enabled
- * @param {Object|string} key the pem encoded string or an object (with or without header/footer)
- * @public
- */
- setKey(key: string): void;
- /**
- * Proxy method for setKey, for api compatibility
- * @see setKey
- * @public
- */
- setPrivateKey(privkey: string): void;
- /**
- * Proxy method for setKey, for api compatibility
- * @see setKey
- * @public
- */
- setPublicKey(pubkey: string): void;
- /**
- * Proxy method for RSAKey object's decrypt, decrypt the string using the private
- * components of the rsa key object. Note that if the object was not set will be created
- * on the fly (by the getKey method) using the parameters passed in the JSEncrypt constructor
- * @param {string} str base64 encoded crypted string to decrypt
- * @return {string} the decrypted string
- * @public
- */
- decrypt(str: string): string | false;
- /**
- * Proxy method for RSAKey object's encrypt, encrypt the string using the public
- * components of the rsa key object. Note that if the object was not set will be created
- * on the fly (by the getKey method) using the parameters passed in the JSEncrypt constructor
- * @param {string} str the string to encrypt
- * @return {string} the encrypted string encoded in base64
- * @public
- */
- encrypt(str: string): string | false;
- /**
- * Proxy method for RSAKey object's sign.
- * @param {string} str the string to sign
- * @param {function} digestMethod hash method
- * @param {string} digestName the name of the hash algorithm
- * @return {string} the signature encoded in base64
- * @public
- */
- sign(str: string, digestMethod: (str: string) => string, digestName: string): string | false;
- /**
- * Proxy method for RSAKey object's verify.
- * @param {string} str the string to verify
- * @param {string} signature the signature encoded in base64 to compare the string to
- * @param {function} digestMethod hash method
- * @return {boolean} whether the data and signature match
- * @public
- */
- verify(str: string, signature: string, digestMethod: (str: string) => string): boolean;
- /**
- * Getter for the current JSEncryptRSAKey object. If it doesn't exists a new object
- * will be created and returned
- * @param {callback} [cb] the callback to be called if we want the key to be generated
- * in an async fashion
- * @returns {JSEncryptRSAKey} the JSEncryptRSAKey object
- * @public
- */
- getKey(cb?: () => void): JSEncryptRSAKey;
- /**
- * Returns the pem encoded representation of the private key
- * If the key doesn't exists a new key will be created
- * @returns {string} pem encoded representation of the private key WITH header and footer
- * @public
- */
- getPrivateKey(): string;
- /**
- * Returns the pem encoded representation of the private key
- * If the key doesn't exists a new key will be created
- * @returns {string} pem encoded representation of the private key WITHOUT header and footer
- * @public
- */
- getPrivateKeyB64(): string;
- /**
- * Returns the pem encoded representation of the public key
- * If the key doesn't exists a new key will be created
- * @returns {string} pem encoded representation of the public key WITH header and footer
- * @public
- */
- getPublicKey(): string;
- /**
- * Returns the pem encoded representation of the public key
- * If the key doesn't exists a new key will be created
- * @returns {string} pem encoded representation of the public key WITHOUT header and footer
- * @public
- */
- getPublicKeyB64(): string;
- }
|