Однократно используемое число (от англ. nonce — «number that can only be used once» — число, которое может быть использовано один раз) в криптографии — одноразовый код, выбранный случайным или псевдослучайным образом, который используется для безопасной передачи основного пароля, предотвращая атаку повторного воспроизведения. В отличие от случайных чисел, здесь не требуется непредсказуемости числа, достаточно неповторяемости.
Сервер генерирует случайный код (nonce) и посылает его клиенту. Клиент использует полученный код, добавляя его к паролю до шифрования, шифрует полученную строку, и возвращает получившееся сообщение серверу. Сервер расшифровывает сообщение, из полученной строки «вычитает» известный ему nonce и сверяет пароль. Данный nonce используется один и только один раз, все последующие передачи паролей с тем же nonce будут отвергнуты сервером, поэтому злоумышленник, перехватив сообщение с зашифрованным паролем, не сможет получить доступ, повторно отправляя перехваченное сообщение на сервер.
Часто nonce включает в себя метку времени (timestamp), чтобы ограничить время существования nonce, однако это требует синхронизации часов сервера и клиента. Для повышения безопасности может применяться также nonce, определяемый клиентом («cnonce»).
Чтобы обеспечить уникальность nonce для сеанса аутентификации, nonce часто генерируется на основе системного времени, из достаточно точного источника timestamp.
![]() |
Это заготовка статьи по криптографии. Вы можете помочь проекту, дополнив её. |
Для улучшения этой статьи желательно: |
Данная страница на сайте WikiSort.ru содержит текст со страницы сайта "Википедия".
Если Вы хотите её отредактировать, то можете сделать это на странице редактирования в Википедии.
Если сделанные Вами правки не будут кем-нибудь удалены, то через несколько дней они появятся на сайте WikiSort.ru .