# Method SSL.Context()->get_suites()

Method get_suites

  `array(int) get_suites(int(-1..)|void min_keylength, int(0..2)|void ke_flags, multiset(int)|void blacklisted_ciphers, multiset(KeyExchangeType)|void blacklisted_kes, multiset(HashAlgorithm)|void blacklisted_hashes, multiset(CipherModes)|void blacklisted_ciphermodes)`

Description

  Get the prioritized list of supported cipher suites that satisfy the requirements.

Parameter `min_keylength`

  Minimum supported effective keylength in bits. Defaults to `128`. Specify `-1` to enable null ciphers.

Parameter `ke_mode`

  Level of protection for the key exchange.

  `0` | Require forward secrecy (ephemeral keys).
  `1` | Also allow certificate based key exchanges.
  `2` | Allow anonymous server key exchange. Note that this allows for man in the middle attacks.

Parameter `blacklisted_ciphers`

  Multiset of ciphers that are NOT to be used.

Parameter `blacklisted_kes`

  Multiset of key exchange methods that are NOT to be used.

Parameter `blacklisted_hashes`

  Multiset of hash algoriths that are NOT to be used.

Parameter `blacklisted_ciphermodes`

  Multiset of cipher modes that are NOT to be used.

Note

  Note that the effective keylength may differ from the actual keylength for old ciphers where there are known attacks.