Algorytmy uwierzytelniania
Protocol++® obejmuje obsługę niezbędnych algorytmów uwierzytelniania dostępnych na stronie www.protocolpp.com, które można również uruchomić samodzielnie. W przypadku wykrycia w czasie wykonywania większość algorytmów użyje akceleracji sprzętowej. Ta funkcja jest dostępna od kilku lat
-
akceleracja sprzętowa x86, x64 (x86-64) używana po wykryciu (funkcja jest włączona od kilku lat)
-
wykrywanie funkcji procesora w czasie wykonywania i wybór kodu
-
obsługuje montaż liniowy w stylu GCC i MSVC oraz MASM dla x64
-
x86, x64 (x86-64), x32 zapewnia implementacje SSE2, SSE4 i AVX
-
AES, CRC, GCM i SHA wykorzystują akcelerację sprzętową ARM, Intel i PowerPC, jeśli jest dostępna
-
Losowe generowanie danych wykorzystuje instrukcje SIMD
-
Zawarte algorytmy to:
-
MD5
-
SHA
-
SHA2-224 (akceleracja sprzętowa)
-
SHA2-256 (akceleracja sprzętowa)
-
SHA2-384 (akceleracja sprzętowa)
-
SHA2-512 (akceleracja sprzętowa)
-
SHA3-224 (akceleracja sprzętowa)
-
SHA3-256 (akceleracja sprzętowa)
-
SHA3-384 (akceleracja sprzętowa)
-
SHA3-512 (akceleracja sprzętowa)
-
WSTRZĄŚNIJ128
-
WSTRZĄŚNIJ256
-
HMAC-MD5
-
HMAC-SHA
-
HMAC-SHA2-224 (akceleracja sprzętowa)
-
HMAC-SHA2-256 (akceleracja sprzętowa)
-
HMAC-SHA2-384 (akceleracja sprzętowa)
-
HMAC-SHA2-512 (akceleracja sprzętowa)
-
HMAC-SHA3-224(M)Keccak[448](M || 01, 224) (przyspieszenie sprzętowe)
-
HMAC-SHA3-256(M)Keccak[512](M || 01, 256) (przyspieszenie sprzętowe)
-
HMAC-SHA3-384(M)Keccak[768](M || 01, 384) (przyspieszenie sprzętowe)
-
HMAC-SHA3-512(M)Keccak[1024](M || 01, 512) (przyspieszenie sprzętowe)
-
POLY1305
-
SM3 — chiński standard uwierzytelniania bezprzewodowego
-
CRC32 — IEEE CRC 32-bit (przyspieszenie sprzętowe)
-
CRC32 — IETF CRC 32-bitowy (przyspieszany sprzętowo)
-
CRC24
-
CRC16-CCITT
-
CRC12
-
CRC11
-
CRC8
-
CRC7
-
CRC5
-
Ogólne CRC z wielomianem, wartością początkową i wymaganiami dotyczącymi inwersji w konstrukcji
-
AES-GMAC (akceleracja sprzętowa)
-
AES-CMAC (akceleracja sprzętowa)
-
AES-XCBC-MAC (akceleracja sprzętowa)
-
SNOW3G F9 — algorytm uwierzytelniania LTE/3GPP
-
SNOW-V GHASH (F9 lub AEAD) - algorytm uwierzytelniania LTE 5G
-
ZUC F9 - algorytm uwierzytelniania LTE/3GPP
-
ZUC-256-MAC z 16- i 25-bajtowymi IV - algorytm uwierzytelniania LTE 5G
