В криптографии доказательство пароля с нулевым разглашением (ZKPP) — это тип доказательства с нулевым разглашением , который позволяет одной стороне (доказывающему) доказать другой стороне (проверяющему), что она знает значение пароля , не раскрывая ничего другого. чем тот факт, что он знает пароль к верификатору. Этот термин определен в IEEE P1363.2 в отношении одного из преимуществ использования протокола обмена ключами с аутентификацией по паролю (PAKE), который защищен от атак по словарю в автономном режиме. ZKPP не позволяет любой стороне проверять предположения о пароле без взаимодействия со стороной, которая его знает, и, в оптимальном случае, обеспечивает ровно одну попытку при каждом взаимодействии. [ нужна цитата ]
Обычно доказательство пароля с нулевым разглашением используется в системах аутентификации , где одна сторона хочет подтвердить свою личность второй стороне с помощью пароля, но не хочет, чтобы вторая сторона или кто-либо еще узнал что-либо о пароле. Например, приложения могут проверять пароль, не обрабатывая его, а платежное приложение может проверять баланс учетной записи, не касаясь суммы и не узнавая ничего о ней. [1]
Первыми методами демонстрации ZKPP были методы обмена зашифрованными ключами (EKE), описанные Стивеном М. Белловином и Майклом Мерриттом в 1992 году. [2] Значительное количество усовершенствований, альтернатив и вариаций в растущем классе ключей, аутентифицированных паролем. В последующие годы были разработаны методы согласования. Стандарты для этих методов включают IETF RFC 2945, IEEE P1363.2 и ISO-IEC 11770-4. [3]