인증시 종종 ZKPP (Zero-knowledge Password Profence)를 따릅니다. EAP 자체는 다소 일반적인 프레임 워크이며 클라이언트를 식별하여 예를 들어 RADIUS와 같은 다음 인증 계층으로 전송할 수 있습니다.
PACE (BSI TR-03110)는 인증에 사용되는 ZKPP 프로토콜의 한 예입니다. EAP-SPEKE는 또 다른 하나입니다.
키의 보안은 클라이언트와 서버 간의 교환에서 키의 일부만 사용하는 것에 의존합니다. 클라이언트는 서버에 키로 암호화 된 nonce를 제공합니다. 따라서 불량 서버는 암호화 된 nonce를 수신하고 일반 텍스트 버전을 보유합니다. 유한 한 시간 내에 불량 서버가 AES-128 암호화를 중단하기에 충분한 정보를 축적 할 수 있기 때문에 이것은 제로 지식이 아닙니다.
따라서 EAP-PSK는 EAP-SPEKE와 같은 EAP를 기반으로하는 다른 제안 된 인증 체계가이 속성을 갖지만 제로 지식 암호 증명의 예로 간주되지 않을 수 있습니다.
EAP-PSK 프로토콜의 문제가있는 부분을 설명하기 위해 RFC 4764에 제시된 메시지 흐름을 고려하십시오.
첫 번째 메시지는 다음과 같은 목적으로 서버에서 피어로 전송됩니다.
* Send a 16-byte random challenge (RAND_S). RAND_S was called RA
in Section 3.2
* State its identity (ID_S). ID_S was denoted by A in
Section 3.2.
o 두 번째 메시지는 피어가 서버로 보내 다음을 수행합니다.
* Send another 16-byte random challenge (RAND_P). RAND_P was
called RB in Section 3.2
* State its identity (ID_P). ID_P was denoted by B in
Section 3.2.
* Authenticate to the server by proving that it is able to
compute a particular MAC (MAC_P), which is a function of the
two challenges and AK:
MAC_P = CMAC-AES-128(AK, ID_P||ID_S||RAND_S||RAND_P)
o 세 번째 메시지는 서버에서 피어로 보내 다음을 수행합니다.
* Authenticate to the peer by proving that it is able to compute
another MAC (MAC_S), which is a function of the peer's
challenge and AK:
MAC_S = CMAC-AES-128(AK, ID_S||RAND_P)
여기서 AK는이 단계에서 사용되는 비밀 키의 일부이며 AES-128의 암호를 해독 할 수있는 불량 서버에 공개 될 수 있습니다.