ChaCha20

E6785

ChaCha20 is a modern stream cipher designed by Daniel J. Bernstein, widely used for its high performance and strong security in protocols like TLS.

All labels observed (5)

How this entity was disambiguated

Statements (50)

Predicate Object
instanceOf cryptographic primitive ⓘ
stream cipher ⓘ
symmetric-key algorithm ⓘ
AEADName Poly1305 ⓘ
surface form: ChaCha20-Poly1305
basedOn ChaCha20 self-linksurface differs ⓘ
surface form: ChaCha stream cipher family

Salsa20 ⓘ
blockFunctionSize 512-bit ⓘ
category software-oriented cipher ⓘ
cipherSuiteName TLS_AES_128_CCM_8_SHA256 (variant context) ⓘ
TLS_ECDHE_ECDSA_WITH_CHACHA20_POLY1305_SHA256 ⓘ
TLS_ECDHE_RSA_WITH_CHACHA20_POLY1305_SHA256 ⓘ
comparedWith AES-CTR ⓘ
Salsa20 ⓘ
counterSize 32-bit ⓘ
cryptanalysisStatus no practical attacks known on full 20-round cipher as of 2024 ⓘ
designer Daniel J. Bernstein ⓘ
designerAffiliation University of Illinois at Chicago ⓘ
firstPublished 2008 ⓘ
formsAEADWith Poly1305 ⓘ
IANAName Poly1305 ⓘ
surface form: CHACHA20-POLY1305
keySize 256-bit ⓘ
license public domain ⓘ
nonceSize 96-bit ⓘ
property designed for high performance in software ⓘ
does not require hardware acceleration for good performance ⓘ
resistant to cache-timing attacks in typical implementations ⓘ
suitable for mobile devices ⓘ
uses 4x4 matrix state ⓘ
roundCount 20 ⓘ
securityGoal confidentiality ⓘ
securityLevel 128-bit security ⓘ
specifiedWith Poly1305 ⓘ
standardizedIn RFC 7539 ⓘ
RFC 8439 ⓘ
stateSize 16 32-bit words ⓘ
status publicly analyzed ⓘ
widely deployed ⓘ
usedInProtocol Noise protocol framework ⓘ
QUIC ⓘ
SSH ⓘ
TLS 1.2 ⓘ
RFC 8446 ⓘ
surface form: TLS 1.3

IPsec ⓘ
surface form: WireGuard
usesOperation add-rotate-xor (ARX) ⓘ
bitwise XOR ⓘ
bitwise rotation ⓘ
modular addition ⓘ
weakerVariant ChaCha12 ⓘ
ChaCha8 ⓘ
wordSize 32-bit ⓘ

How these facts were elicited

Referenced by (19)

Full triples — surface form annotated when it differs from this entity's canonical label.

TLS → supportsAlgorithmFamily → ChaCha20 ⓘ
ChaCha20 → basedOn → ChaCha20 self-linksurface differs ⓘ
this entity surface form: ChaCha stream cipher family
RC4 stream cipher → replacedBy → ChaCha20 ⓘ
subject surface form: RC4
Poly1305 → oftenUsedWith → ChaCha20 ⓘ
Poly1305 → combinedConstruction → ChaCha20 ⓘ
this entity surface form: ChaCha20-Poly1305
Poly1305 → combinedAsAEADWith → ChaCha20 ⓘ
Salsa20 → relatedTo → ChaCha20 ⓘ
RFC 7539 → title → ChaCha20 ⓘ
this entity surface form: ChaCha20 and Poly1305 for IETF Protocols
RFC 7539 → defines → ChaCha20 ⓘ
RFC 7539 → specifies → ChaCha20 ⓘ
this entity surface form: ChaCha20 stream cipher
RFC 8439 → defines → ChaCha20 ⓘ
RFC 8439 → specifies → ChaCha20 ⓘ
this entity surface form: ChaCha20 stream cipher
ChaCha → hasVariant → ChaCha20 ⓘ
OpenSSL → supportsAlgorithm → ChaCha20 ⓘ
BoringSSL → supportsAlgorithm → ChaCha20 ⓘ
WireGuard VPN protocol → usesCryptography → ChaCha20 ⓘ
subject surface form: WireGuard
Yoav Nir → title → ChaCha20 ⓘ
subject surface form: RFC 7539
this entity surface form: ChaCha20 and Poly1305 for IETF Protocols
XChaCha20-Poly1305 AEAD construction → basedOn → ChaCha20 ⓘ
this entity surface form: ChaCha20 stream cipher