Aritmética criptográfica comprobada y acuerdo de claves

La versión 2.955.1 preserva las APIs existentes de SHA3, SHAKE y acuerdo de claves con comprobaciones de overflow entero y de rango habilitadas en Delphi y Free Pascal

SHA3-256, SHA3-384, SHA3-512 y SHAKE256 retienen sus salidas existentes en entradas vacías, fronteras de rate, bloques múltiples, actualizaciones en streaming y extracción SHAKE repetida

Los intercambios P-256, P-384 y P-521 usan operaciones explícitas de palabra baja allí donde la implementación de campo trabaja intencionadamente módulo 2^64; las constantes de bit alto y las operaciones Montgomery siguen siendo utilizables en builds de 32 bits comprobados

Admisión de secretos compartidos Montgomery

HPDFX25519 y HPDFX448 comprueban los bytes completos canónicos de la salida y lanzan EInvalidOpException cuando el secreto compartido es todo ceros, incluidas representaciones débiles de campo cuyos limbs internos son distintos de cero

HPDFComputeKeyAgreementSecret traduce este rechazo en False, un SharedSecret vacío y un Issue fresco; una operación válida posterior sigue siendo utilizable

Las coordenadas u no canónicas continúan siguiendo la decodificación de RFC 7748, incluida la regla de bit alto de X25519; la comprobación de secreto cero sigue la comprobación de admisión opcional de la sección 6 de RFC 7748

Aceptación

Seis destinos nativos reales pasan cada uno 360 comparaciones independientes de SHA3/SHAKE y 101 casos de acuerdo de claves, incluidos escalares privados NIST de ancho completo en ambas direcciones, vectores RFC y 1000 iteraciones, rechazo de bajo orden y entradas no canónicas con recuperación

Ambas arquitecturas Delphi pasan además los 11 métodos de consumidor originales de ladder y recipient-envelope sin cambios; los closures reales del compilador se auditan contra la composición de la versión actual

Ejecute Tests/Linux/Run-CheckedCryptoAcceptance.py para la aceptación de consola comprobada normal; Tests/Linux/CheckedCryptoAcceptance.en-us.md describe los comandos del compilador y el generador independiente de vectores

Estas comprobaciones establecen el comportamiento documentado de vectores y rechazos; no establecen ejecución en tiempo constante ni una certificación de canales laterales

Finalización de capacidades restantes