You can not select more than 25 topics
			Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
		
		
		
		
		
			
		
			
				
					
					
						
							116 lines
						
					
					
						
							4.6 KiB
						
					
					
				
			
		
		
		
			
			
			
				
					
				
				
					
				
			
		
		
	
	
							116 lines
						
					
					
						
							4.6 KiB
						
					
					
				
								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;
							 | 
						|
								}
							 | 
						|
								
							 |