2015-12-02 2 views
0

я произвел 16 символов буквенно-цифровой секретный ключ в Баш с этой командой:Как долго перебор 16 символов секретный ключ

key=$(cat /dev/urandom | tr -dc 'a-zA-Z0-9' | fold -w 16 | head -n 1) 

Я имею в виду использование этого ключа для шифрования пароля.

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

+0

ну, какой у вас алгоритм шифрования? rot13? Это будет O (1). aes256 O (бесконечность) –

+0

Если вы спрашиваете, является ли это криптографически безопасным, тогда [ответ да] (http://security.stackexchange.com/questions/3936/is-a-rand-from-dev-urandom -Secure-за-а-логин-ключ). –

+0

Я использую библиотеку OpenSSL EVP в C, которая находится здесь: https://www.openssl.org/docs/manmaster/crypto/EVP_EncryptInit.html. Кроме того, @Assaf Lavie, можете ли вы прокомментировать метод грубой силы? – Kingamere

ответ

2

Существует 62 возможности для каждого символа и 16 символов. Это приводит к 62^16 (47672401706823533450263330816) испытаниям худшего случая, или половине этого в среднем. Если атакующий может выполнить миллиард испытаний в секунду, это означает 47672401706823533450 секунд, что составляет около 1511681941489 лет. Я думаю, что это хорошая защита. Вы даже можете отрубить несколько символов и по-прежнему чувствовать себя в полной безопасности.

Обратите внимание: я бы не сказал то же самое, если бы вы выбрали 16-символьный пароль из своего мозга (вместо использования/dev/urandom): человеческие мозги не умеют выбирать хорошие криптографические ключи.

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