nl_tokens: If the provider supports encryption initializes and stores keys .
pl_tokens: function initEncryption ( provider , bigIp ) { const PRIVATE_KEY_OUT_FILE = '/tmp/tempPrivateKey.pem' ; let passphrase ; if ( provider . hasFeature ( CloudProvider . FEATURE_ENCRYPTION ) ) { logger . debug ( 'Generating public/private keys for autoscaling.' ) ; return cryptoUtil . generateRandomBytes ( PASSPHRASE_LENGTH , 'base64' ) . then ( ( response ) => { passphrase = response ; return cryptoUtil . generateKeyPair ( PRIVATE_KEY_OUT_FILE , { passphrase , keyLength : '3072' } ) ; } ) . then ( ( publicKey ) => { return provider . putPublicKey ( this . instanceId , publicKey ) ; } ) . then ( ( ) => { return bigIp . installPrivateKey ( PRIVATE_KEY_OUT_FILE , AUTOSCALE_PRIVATE_KEY_FOLDER , AUTOSCALE_PRIVATE_KEY , { passphrase } ) ; } ) . then ( ( ) => { return bigIp . save ( ) ; } ) . catch ( ( err ) => { logger . <mask> ( 'initEncryption error' , err && err . message ? err . message : err ) ; return q . reject ( err ) ; } ) ; } return q ( ) ; }