4

Я хочу настроить свой сайт (C#/SQL 2008), чтобы разрешить двухфакторную аутентификацию с помощью Google Authenticator. У меня работает сайт, от получения QR-кода до создания предыдущего/текущего/следующего ключа (я рад принять 3, если часы не синхронизированы).Хранить секретный ключ для TOTP

Очевидно, нам нужно сгенерировать секретный ключ для каждого пользователя, иначе каждый пользователь будет иметь один и тот же пароль.

Мой вопрос - что такое передовая практика для хранения этого ключа? Могу ли я хранить его в виде обычного текста в таблице пользователей или он должен быть зашифрован?

ответ

1

почему нет varchar? насколько я знаю, qr-код из google - это алфавитно-цифровая строка (которую вы могли бы написать вручную, если бы вы не смогли установить сканер qr-кода)

в моем личном проекте для колледжа, я генерирую 128 символов - длинные буквенно-цифровые строки, которые я отправляю в свое пользовательское приложение TOTP, моя база данных хранит эту информацию как VARCHAR (128),

Я думаю, что ответ на лучший вариант зависит от того, вместо 62 буквенно-цифровых цифр, почему бы не использовать всю таблицу ascii? вам нужно будет хранить свои ключи как varbyte правильно?

+0

Я генерирую длинную случайную строку, и я мог бы хранить ее как VARCHAR без каких-либо проблем. Есть ли причина для шифрования ключа перед его хранением? – Greg

+1

до тех пор, пока ваш сервер защищен, нет необходимости шифровать ключ, системы TOTP должны просто защищать ключи от общего доступа, это означает, что до тех пор, пока ваш ключ хранится в частной памяти телефона Android, а ваш Android-телефон не является «В корне, ваше приложение безопасно. пока ваш сервер не взломан, ваша система безопасна. даже если вы пытаетесь зашифровать свои ключи, где вы будете хранить свой ключ шифрования? помните тот факт, что нет такой вещи, как абсолютная безопасность. –

+0

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

Смежные вопросы