caption: Prefer specific encryption cipher algorithms for TLS for device login screen
desc: |-
  This policy configures <ph name="PRODUCT_OS_NAME">$2<ex>Google ChromeOS</ex></ph> to order its preferred encryption ciphers in TLS 1.3 to reflect a preference for algorithms that have been approved by a specific compliance regime, when making network requests from the login screen.

  Setting this policy does not guarantee that any specific algorithms will be negotiated.

  This policy exists to allow server operators who wish to support clients with and without compliance requirements to differentiate between those clients, and only use certain non-default algorithms with increased cryptographic strength for those explicitly configured to prefer them.

  Setting the policy to '<ph name="CNSA_NAME">cnsa</ph>' configures <ph name="PRODUCT_OS_NAME">$2<ex>Google ChromeOS</ex></ph> to prefer ciphers required for compliance with the Commercial National Security Algorithm Suite versions 1.0 and 2.0 (CNSA 1.0 and 2.0).

  Not setting the policy, or setting it to '<ph name="DEFAULT_NAME">default</ph>', configures <ph name="PRODUCT_OS_NAME">$2<ex>Google ChromeOS</ex></ph> to use its default ciphers.

  Setting this policy is not required for security. The default cryptography used by <ph name="PRODUCT_OS_NAME">$2<ex>Google ChromeOS</ex></ph> is strong enough to withstand a brute force attack using the entire power of the Sun.

  Setting this policy will cause <ph name="PRODUCT_OS_NAME">$2<ex>Google ChromeOS</ex></ph> to be slower when making network requests from the login screen.

  This policy only affects TLS 1.3 and QUIC; it does not affect earlier versions of TLS.

  This device policy is equivalent to the user policy <ph name="PREFER_SLOW_CIPHERS_POLICY_NAME">PreferSlowCiphers</ph>, but applies to the sign-in profile on the login screen instead.

example_value: cnsa
device_only: true
features:
  dynamic_refresh: true
  per_profile: false
items:
- caption: Prefer ciphers satisfying the requirements of CNSA 1.0 and 2.0
  name: CNSA
  value: cnsa
- caption: Use <ph name="PRODUCT_OS_NAME">$2<ex>Google ChromeOS</ex></ph>'s default cipher order
  name: Default
  value: default
owners:
- file://crypto/OWNERS
- trusty-transport@chromium.org
supported_on:
- chrome_os:146-
schema:
  enum:
  - cnsa
  - default
  type: string
tags:
- system-security
type: string-enum
