Адреса IPv6 в форме 862A:7373:3386:BF1F:8D77:D3D2:220F:D7E0
гораздо сложнее запомнить или даже расшифровать, чем 4 октета IPv4.
Там уже была попытка смягчить это, делая IPv6 - адрес как - то более запоминающимся.
Существует ли намеренно слабая хеш-функция, которую можно было бы обратить вспять, чтобы обнаружить, что фраза, скажем: «Это относительно мягко и легко определить, если фраза согнута так, чтобы не стоить платить» , хэширует целевой адрес IPv6? Хэш, конечно, будет иметь много входных данных для выбора, и потенциально более запоминающееся предложение, такое как пример фразы, может быть предложено автоматически.
Я предполагаю, что есть две части: во-первых, слабый хеш с хорошим распределением в обоих направлениях. Второй - это алгоритм выбора запоминающихся фраз из множества коллизий (короткие, состоящие из слов определенного языка, возможно, даже следуя упрощенной грамматике).
Хотя хеш-функция должна быть слабой, я не сомневаюсь, что усилия все еще значительны - однако, как только фраза известна, вычисление хеша по целевому адресу происходит очень быстро.
РЕДАКТИРОВАТЬ
Я нашел эту связанную идею, Piphilology , для запоминания некоторых цифр π:
Как же мне хочется выпить, конечно же, алкоголика после тяжелых лекций с участием квантовой механики!
источник
Ответы:
Возьмите IP-адрес и список слов. Затем включите IP-адрес в список слов из списка слов на основе цифр адреса, базы {длины списка слов}.
Так, например, используя список слов в режиме diceware и ваш пример, я получаю:
862A:7373:3386:BF1F:8D77:D3D2:220F:D7E0
->mew hades cup viii 72 grit photo pick raid dey
(или, возможно, наоборот, и / или дополненный на другом конце).Обратите внимание, это не с потерями. Хотя вы можете относительно легко применить любые методы с потерями для этого. Вы можете просто обрезать IP-адрес или выбирать только каждый второй бит или что-то еще, прежде чем запускать его через это сопоставление.
источник
Похоже, у вас есть два варианта использования:
Я полагаю, что вам придется выкатить свое собственное решение здесь. Адреса IPv6 достаточно длинные, поэтому вам, вероятно, придется использовать такую функцию, как SHA1, чтобы охватить адресное пространство.
Чтобы максимизировать количество встречающихся фраз, вы можете попробовать игнорировать гласные или сто самых распространенных слов.
источник