TLS PRF
Funkcja pseudolosowa, której TLS 1.0–1.2 używał do wyprowadzania sekretu głównego i kluczy sesji, dopóki w TLS 1.3 nie zastąpił jej HKDF.
Sercem jest P_hash: HMAC uruchamiany w łańcuchu, w którym każdy krok przyjmuje poprzednie wyjście i ziarno, aż powstanie dość bajtów. Z sekretu premaster oraz wartości losowych obu stron funkcja wyprowadza najpierw 48-bajtowy sekret główny (master secret), a z niego blok kluczy z kluczami szyfrowania, kluczami MAC i wektorami IV dla obu kierunków.
TLS 1.0 i 1.1 wolały nie stawiać na jedną kartę i łączyły XOR-em P_MD5 z P_SHA1, licząc, że przynajmniej jedna funkcja skrótu wytrzyma. TLS 1.2 (RFC 5246, 2008) przeszedł domyślnie na P_SHA256. Konstrukcja odziedziczyła jednak słabość w powiązaniu sekretu głównego z handshake’em, którą w 2014 roku wykorzystał atak triple handshake; naprawą był rozszerzony sekret główny (RFC 7627). TLS 1.3 zastąpił całe to rozwiązanie przez HKDF.