Cipher suite · 0xC1,0x02

TLS_GOSTR341112_256_WITH_28147_CNT_IMIT

TLS_GOSTR341112_256_WITH_28147_CNT_IMIT (0xC1,0x02) is a cipher suite for TLS 1.2: GOST key exchange, GOST authentication, GOST28147-CNT encryption and IMIT message authentication. ssl.sh rates it Weak.

WeakTLS 1.2Data updated

Details

IANA name
TLS_GOSTR341112_256_WITH_28147_CNT_IMIT
Hex code
0xC1,0x02 (49410)
OpenSSL
Not available in OpenSSL 3.5
GnuTLS
TLS_GOSTR341112_256_28147_CNT_IMIT (min. TLS 1.2)
Key exchange
GOST
Authentication
GOST
Encryption
GOST28147-CNT
MAC
IMIT
TLS versions
TLS 1.2
IANA "Recommended"
N — not evaluated or not recommended · DTLS-OK: N
References
RFC 9189

What each component means

A cipher suite names the algorithms a client and server agree on in one handshake. TLS_GOSTR341112_256_WITH_28147_CNT_IMIT combines GOST key exchange, GOST authentication, GOST28147-CNT encryption and IMIT integrity protection. Each part is explained below with its known weaknesses; for the bigger picture see how cipher suites work.

Key exchange and authentication: GOST. The suite uses the Russian GOST R 34.10-2012 elliptic-curve algorithms with the 256-bit GOST R 34.11-2012 (Streebog) hash, as specified for TLS 1.2 in RFC 9189 (2022); the server authenticates with a GOST certificate.

Encryption: GOST 28147-89 in counter (CNT) mode, a Soviet-era 64-bit block cipher with a 256-bit key, paired with the GOST IMIT message authentication code as specified in RFC 9189 (2022). Encryption and integrity are separate steps, unlike in an AEAD.

Why this rating

ssl.sh rating: Weak. The reasons:

  • Not an AEAD cipher: confidentiality and integrity rely on a separate MAC construction.
  • No forward secrecy: the session keys are protected by the server's long-term key (static RSA/DH/ECDH, PSK or Kerberos), so a leaked key decrypts recorded traffic.

How ssl.sh rates cipher suites

Which TLS libraries support it

Support for TLS_GOSTR341112_256_WITH_28147_CNT_IMIT as read from each library's own source code or official documentation on 2026-11-10. “Enabled by default” means the library negotiates it with no configuration; “off by default” means it is implemented but has to be switched on.

LibraryStatusDetails
OpenSSL 3.5Not supported
GnuTLSImplementedname TLS_GOSTR341112_256_28147_CNT_IMIT; minimum protocol TLS 1.2
BoringSSLNot supported
Go crypto/tlsNot supported
NSS 3.133Not supported
FirefoxNot supported
Java 21 (SunJSSE)Not supported
Windows Schannel (Windows 11 / Server 2022)Not supported
rustls 0.23.46Not supported

None of the 9 libraries tracked here enables it by default. Also implemented by: GnuTLS.

NSS shows the library's own defaults; Firefox switches every NSS suite off at start-up and re-enables only those with a security.ssl3.* or security.tls13.* preference. Java defaults are derived from the jdk.tls.disabledAlgorithms value Oracle documents for JDK 21, which later updates may extend. The OpenSSL and GnuTLS rows only show whether the suite is implemented.

History and standards status

TLS_GOSTR341112_256_WITH_28147_CNT_IMIT (0xC1,0x02) is registered in the IANA TLS Cipher Suites registry with RFC 9189, “GOST Cipher Suites for Transport Layer Security (TLS) Protocol Version 1.2” (March 2022, Informational) as its specification. The registry marks it N, which per RFC 8447 (2018) means it either hasn't been through the IETF consensus process, has limited applicability or is meant only for specific use cases, not necessarily that it is flawed.

Enable or disable it in Nginx and Apache

OpenSSL 3.5 doesn't implement this suite, so stock Nginx and Apache httpd builds can't offer it and you don't need to disable it.

How to test whether a server accepts it

OpenSSL 3.5 cannot offer TLS_GOSTR341112_256_WITH_28147_CNT_IMIT, so openssl s_client can't test it directly; use a scanner that implements the suite itself.

nmap's ssl-enum-ciphers script connects repeatedly, trying one suite at a time, and lists every suite the server accepts with a grade from A to F. Look for TLS_GOSTR341112_256_WITH_28147_CNT_IMIT in its output:

nmap --script ssl-enum-ciphers -p 443 example.com

To decode a name or hex code, use the cipher suite lookup; the SSL checker shows which protocol versions a live server accepts and the cipher suite it negotiates.

FAQ

Is TLS_GOSTR341112_256_WITH_28147_CNT_IMIT secure?

Only with caveats: ssl.sh rates it weak. Not an AEAD cipher: confidentiality and integrity rely on a separate MAC construction.

Can TLS_GOSTR341112_256_WITH_28147_CNT_IMIT be used with TLS 1.3?

No. TLS 1.3 has its own suites that name only the AEAD and the hash, and TLS 1.2 suites can't be used in a TLS 1.3 handshake. TLS_GOSTR341112_256_WITH_28147_CNT_IMIT works with TLS 1.2. The closest TLS 1.3 suite is TLS_AES_128_GCM_SHA256, which TLS 1.3 combines with a separately negotiated key exchange such as X25519.

How do I disable TLS_GOSTR341112_256_WITH_28147_CNT_IMIT in Nginx or Apache?

There is nothing to disable: OpenSSL 3.5, which Nginx and Apache httpd normally use, does not implement TLS_GOSTR341112_256_WITH_28147_CNT_IMIT, so they cannot negotiate it.

Which clients and libraries still support TLS_GOSTR341112_256_WITH_28147_CNT_IMIT?

Implemented, default state not tracked here: GnuTLS. Not supported: OpenSSL 3.5, BoringSSL, Go crypto/tls, NSS 3.133, Firefox, Java 21 (SunJSSE), Windows Schannel (Windows 11 / Server 2022) and rustls 0.23.46.

Better alternatives

Sources

  1. IANA — TLS Cipher Suites registry
  2. OpenSSL 3.5 — openssl-ciphers(1)
  3. GnuTLS — lib/algorithms/ciphersuites.c
  4. BoringSSL — ssl/ssl_cipher.cc (main) (2026-11-10)
  5. Go — src/crypto/tls/cipher_suites.go (master) (2026-11-10)
  6. Go — src/crypto/tls/defaults.go (master) (2026-11-10)
  7. NSS — lib/ssl/ssl3con.c (as vendored in Firefox) (2026-11-10)
  8. NSS — TAG-INFO (2026-11-10)
  9. Firefox — security/manager/ssl/nsNSSComponent.cpp (2026-11-10)
  10. Firefox — modules/libpref/init/StaticPrefList.yaml (2026-11-10)
  11. Oracle — JDK 21 Providers Documentation: SunJSSE Cipher Suites (2026-11-10)
  12. Oracle — JDK 21 JSSE Reference Guide: jdk.tls.disabledAlgorithms (2026-11-10)
  13. Microsoft Learn — TLS Cipher Suites in Windows 11 (2026-11-10)
  14. Microsoft Learn — TLS Cipher Suites in Windows Server 2022 (2026-11-10)
  15. docs.rs — rustls 0.23.46 crypto::aws_lc_rs (default provider) (2026-11-10)
  16. RFC Editor — RFC index
  17. Nmap — ssl-enum-ciphers