검사가 적용된 암호 산술과 키 합의

Version 2.955.1은 Delphi와 Free Pascal에서 정수 오버플로와 범위 검사를 켠 상태로 기존 SHA3, SHAKE, 키 합의 API를 유지합니다

SHA3-256, SHA3-384, SHA3-512, SHAKE256은 빈 입력, rate 경계, 여러 블록, 스트리밍 갱신, 반복 SHAKE 추출을 거쳐 기존 출력을 유지합니다

P-256, P-384, P-521 교환은 필드 구현이 의도적으로 2^64 나머지로 동작하는 곳마다 명시적인 low-word 연산을 사용합니다. 높은 비트 상수와 Montgomery 연산은 checked 32비트 빌드에서도 계속 쓸 수 있습니다

Montgomery 공유 비밀 수용

HPDFX25519와 HPDFX448은 완전한 정규화 출력 바이트를 검사하고, 공유 비밀이 모두 0이면 EInvalidOpException을 일으킵니다. 내부 limb이 0이 아닌 약한 필드 표현도 포함됩니다

HPDFComputeKeyAgreementSecret은 이 거부를 False, 빈 SharedSecret, 새로운 Issue로 바꿉니다. 이어지는 유효한 연산은 계속 쓸 수 있습니다

비정규 u 좌표는 X25519 높은 비트 규칙을 포함해 RFC 7748 디코딩을 계속 따릅니다. 0 비밀 검사는 RFC 7748 6절의 선택적 수용 검사를 따릅니다

인수

여섯 실제 네이티브 대상은 각각 독립 SHA3/SHAKE 비교 360건과 키 합의 case 101건을 통과합니다. 양방향 전체 폭 NIST 개인 scalar, RFC 벡터와 1,000회 반복, low-order 거부, 비정규 입력, 복구가 포함됩니다

Delphi 아키텍처 양쪽은 바뀌지 않은 원본 ladder와 수신자 봉투 소비자 메서드 11건도 통과합니다. 실제 컴파일러 클로저는 현재 릴리스 조합에 대해 감사됩니다

일반 checked 콘솔 인수는 Tests/Linux/Run-CheckedCryptoAcceptance.py로 실행하고, 컴파일러 명령과 독립 벡터 생성기는 Tests/Linux/CheckedCryptoAcceptance.en-us.md에 설명되어 있습니다

이 검사들은 문서화된 벡터와 거부 동작을 확립합니다. 상수 시간 실행이나 부채널 인증을 확립하지는 않습니다

남은 기능 완성