Алгоритм аутентификации бедного человека?

Вы можете передавать данные дочерним компонентам, используя props. Но для более крупного приложения это будет сложнее. Итак, вам нужно использовать библиотеку управления состоянием, такую ​​как Redux или MobX.

10
задан Cristi Diaconescu 21 February 2009 в 21:09
поделиться

13 ответов

Моя идея человечески-благоприятного не использующего высокие технологии механизма ответа проблемы:

  1. Bob изменяет проблему каждый раз, когда он получает действительное сообщение (например, он делает соленый хеш текущего времени),
  2. каждое недопустимое сообщение, отправленное Bob, заставляет его ответить с текущей проблемой, таким образом, Alice может запросить его путем отправки пустой почты
  3. после того как Alice знает проблему, она переходит к https://www.pwdhash.com/
    • в "Адресе веб-сайта" она вводит текущую проблему
    • в "Пароле Сайта" она вводит свой личный пароль (который известен Bob),
    • PwdHash генерирует "Хешированный Пароль"
  4. Alice пишет сообщение Bob, с помощью хеша, просто созданного как предмет
  5. Bob получает сообщение, хеширует текущую проблему и пароль Alice согласно алгоритму PwdHash, и видит, соответствует ли его результат теме сообщения
  6. если это делает, Bob принимает сообщение и и отсылает подтверждение, содержащее новую проблему (по существу, это - шаг 1),

Преимущества:

  • дешевый и простой, может даже работать на довольно современных мобильных устройствах
  • человеческая товарищеская встреча (никакая математика, легкая помнить, предпосылки, легко доступные в сети)
  • никакая возможная атака с повторением пакетов
  • никакие пароли в виде открытого текста по проводу
  • не исчерпывает пароли (как шифры Вернама, делают),
  • никакие свойственные ограничения по времени (как маркеры RSA имеют),
  • веб-сайт PwdHash можно сохранить на диске и назвать локально, никакая сторонняя зависимость здесь

Недостатки:

  • Bob и Alice должны предварительно совместно использовать ключ (пароль Alice), поэтому Alice не может изменить свой удаленный пароль
  • взлом пароля Alice является самым легким вектором атаки (но это имеет место почти со всеми защищенными паролем системами),

Обратите внимание, что PwdHash является открытым алгоритмом хеширования, Bob может легко реализовать его. Веб-сайт PwdHash работает без обратных передач, все - сторона клиента JavaScript только, никакие оставленные позади трассировки.

11
ответ дан 3 December 2019 в 13:56
поделиться

Я пропускаю что-то очевидное в предложении простой общественности/закрытого ключа и подписании электронной почты?

Firefox имеет по крайней мере одно расширение для разрешения GPG в веб-почте.

5
ответ дан 3 December 2019 в 13:56
поделиться

Две опции я могу думать:

  • Выпустите карту с одноразовыми паролями (коммуникация перед фактом, ноутбуком)
  • Электронное устройство, которое производит pincodes (избегает атак с повторением пакетов),
6
ответ дан 3 December 2019 в 13:56
поделиться

Разработка на ответе lassevks:

В моей компании мы используем маркеры SecurID от RSA для удаленной аутентификации.

Это дает Вам 6 чисел цифры, которые изменяются каждые 60 секунд как аутентификационный маркер, предположительно, Ваш маркерный генератор и сервер являются единственными во вселенной, которые знают маркер, который допустим прямо сейчас.

Как низкая техническая альтернатива, ряд n (10, 20, 100 - независимо от того, что разумно в Вашем конкретном случае) коды аутентификации времени могут быть даны Alice. Я попросил бы у нее определенного кода (например, номер 42 в списке). После использования этого кода это становится недопустимым для дальнейшего использования.

Править: См. ответ lacop для хорошей реализации низкого технического решения.

4
ответ дан 3 December 2019 в 13:56
поделиться

В дополнение к ответу Treb можно использовать одноразовые пароли, которые можно распечатать вместо SecurID. См. "Идеальные Бумажные Пароли" для деталей.

6
ответ дан 3 December 2019 в 13:56
поделиться

Рассмотрите для создания веб-страницы, которая содержит алгоритм как JavaScript, возможно как загрузка (таким образом, она может загрузить его однажды и нести его вперед на Карте памяти).

Идея состоит в том, что она открывает страницу, проверяет исходный код (весь JavaScript должен быть встроен), и затем вводит ее пароль в текстовом поле на странице. JavaScript переведет это в код, поскольку она вводит (так никакой сетевой трафик, в то время как она делает это; если существует, мог бы быть клавиатурный перехватчик, работающий в фоновом режиме).

После того, как у нее будет код, она может скопировать его где-нибудь.

JavaScript может использовать текущее время в качестве семени. Нарежьте текущее время в пятиминутные интервалы. Большую часть времени использования текущего времени будет достаточно для декодирования пароля и если Вы близко к запуску пятиминутного интервала, попробуйте предыдущим.

Обратитесь на этот сайт за примером: https://www.pwdhash.com/

2
ответ дан 3 December 2019 в 13:56
поделиться

Если Alice может выполнить код своей машины (например, при помощи JavaScript, который найден на некотором общедоступном сайте, как: http://www.functions-online.com/en/sha1.html), она может получить проблему, хешировать ее вместе с паролем и передать ее обратно.

2
ответ дан 3 December 2019 в 13:56
поделиться

Вот другое предложение:

  • Запустите с Обмена ключами Диффи-Хеллмана, приводящего к общему закрытому ключу, известному только, по-видимому-Alice, и Bob.
  • Имейте предопределенный пароль, известный только Alice и Bob.
  • Сделайте, чтобы Alice зашифровала пароль с помощью общего ключа и отправила его Bob
  • Теперь Bob видит, что, по-видимому-Alice, действительно Alice.

Проблемы:

  • Diffie-Hellman не является безопасными небольшими числами использования.
  • Каков был бы простой симметричный алгоритм шифрования (для шифрования пароля)?
1
ответ дан 3 December 2019 в 13:56
поделиться

Если Вы не собираетесь использовать PKI, который является бесспорно лучшим решением, попытайтесь использовать систему ответа проблемы как CRAM-MD5 (хотя я предложил бы другой алгоритм выборки сообщений).

Ваши ограничения делают реализацию безопасной криптографической системы почти неосуществимой. Нет ли ничто, что можно сделать для изменения транспорта?

1
ответ дан 3 December 2019 в 13:56
поделиться

Большая часть простого решения состоит в том, чтобы заставить Bob периодически послать письма на почтовый счет Alice. Когда ей нужно что-то от Bob, она должна ответить использованию одного из этих писем. Bob может поместить некоторые маркеры проверки в почту (почтовый ID или строка, которая должна быть повторена в предмете или теле почты).

Точно так же, как многие из работы схем подтверждения адреса электронной почты.

Недостаток: это только доказывает, что у взломщика есть доступ к почтовой учетной записи Alice, не, что это - на самом деле сама Alice. Для решения этого Вы могли сказать Alice пароль и использовать "прием" страницы HTML JavaScript, таким образом, она может закодировать ключ от Bob, использующего ее пароль.

Это доказало бы, что у нее есть доступ к ее почтовой учетной записи и что она знает пароль.

1
ответ дан 3 December 2019 в 13:56
поделиться

Существует несколько методов, о которых я могу думать:

Установите зашифрованный сервис https, подобный:

http://webnet77.com/cgi-bin/helpers/blowfish.pl

или

http://cybermachine.awardspace.com/encryption.php/

Или Вы могли выпустить одноразовые пароли в сочетании с шифрованием XOR

Или можно записать простое Приложение Java (если Java может быть выполнен в машине), который может быть загружен через www и обеспечивает шифрование с открытым ключом.

0
ответ дан 3 December 2019 в 13:56
поделиться

Простым способом защитить данные в пути, не обмениваясь паролями является three-way-XOR:

  1. Alice создает несколько байтов с помощью своего собственного ключа.
  2. Она XORs данные с этими байтами для создания их нечитабельными.
  3. Alice отправляет зашифрованные данные Bob
  4. Bob создает несколько байтов с помощью своего собственного ключа.
  5. Он XORs данные с этими байтами.
  6. Bob передает двойные зашифрованные данные обратно Alice
  7. Alice применяет свой шаблон XOR еще раз. Теперь, данные только кодируются шаблоном Bob's
  8. Alice передает данные обратно Bob
  9. Bob может теперь декодировать данные со своим собственным шаблоном
0
ответ дан 3 December 2019 в 13:56
поделиться

Хм... это рассчитало бы как третья сторона?

Настройте брата Bob - Charlie, который доступен из Интернета через HTTPS. Отправить сообщение Bob Alice должно было бы сначала войти в систему Charlie (через простой пароль), и затем Charlie даст ей маркер с одним использованием. Затем она посылает свое электронное письмо наряду с маркером Bob.

0
ответ дан 3 December 2019 в 13:56
поделиться
Другие вопросы по тегам:

Похожие вопросы: