Есть ли какой-либо инструмент, доступный в сети для преобразования открытого ключа SSH в Fingerprint. Из-за обстоятельств я не могу выполнить команду ssh-keygen -lf.

Или есть какой-нибудь вариант в замазке, которую я могу использовать?

1 ответ1

4

Это очень глупый способ сделать что-то, но если вы не найдете лучшего ответа, вы можете сделать следующее:

  1. Перейти к этому фрагменту кода на ideone.
  2. Нажмите "изменить".
  3. В строке 6 вставьте свой ключ SSH.
  4. Нажмите на зеленую кнопку "ideone it".
  5. Ваш отпечаток пальца появится в поле вывода под кодом.

Для потомков код (в Python 3) выглядит так:

# Code from <https://stackoverflow.com/a/6682934/1535629>
import base64, hashlib

# paste your key on line 6
key = """

"""

def lineToFingerprint(line):
    key = base64.b64decode(line.strip().split()[1].encode('ascii'))
    fp_plain = hashlib.md5(key).hexdigest()
    return ':'.join(a+b for a,b in zip(fp_plain[::2], fp_plain[1::2]))

print(lineToFingerprint(key))

С кредитом @phihag на SO.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .