diff --git a/content/client-lib-development-guide/features.textile b/content/client-lib-development-guide/features.textile index 2c93252904..90e4770cfb 100644 --- a/content/client-lib-development-guide/features.textile +++ b/content/client-lib-development-guide/features.textile @@ -557,7 +557,10 @@ h4. ChannelOptions h4. CipherParams * @(TZ1)@ params to configure encryption for a channel, see "Java CipherParams class":https://github.com/ably/ably-java/blob/master/src/io/ably/util/Crypto.java#L52 as a reference -* @(TZ2)@ The attributes of @CipherParams@ consist of: +* @(TZ2)@ The attributes of @CipherParams@ consist of anything necessary to implement the supported algorithms (eg key and iv), in addition to the following standardised attributes: ** @(TZ2a)@ @algorithm@ string - Default is @AES@. Optionally specify the algorithm to use for encryption, currently only @AES@ is supported -** @(TZ2b)@ @keyLength@ integer - Default is 128. Optionally specify the key length of the cipher, typically 128 or 256 +** @(TZ2b)@ @keyLength@ integer - An integer, from an algorithm-dependent range of possible values. If unspecified, an algorithm-dependent default is used. For AES the allowed values at least include 128 and 256, with a default of 128. ** @(TZ2c)@ @mode@ string - Default is @CBC@. Optionally specify cipher mode, currently only @CBC@ is supported +* @(TZ3)@ @Crypto#getDefaultParams@ function +** @(TZ3a)@ returns a complete @CipherParams@ instance with randomly generated key and iv +** @(TZ3b)@ takes an optional key parameter, returning a @CipherParams@ instance created with that key and with a keyLength calculated from that key