Обновить

Номер карты, пароль и сид-фраза в виде запоминающихся предложений

Уровень сложностиПростой
Время на прочтение8 мин
Охват и читатели7.4K
Всего голосов 5: ↑4 и ↓1+3
Комментарии13

Комментарии 13

Самое интересное пропустили. Ну ладно, просто словари слов - это понятно, а вот как шаблоны для предложений вычислялись и что получилось - это интереснее. 15тыс шаблонов - в корпусах, вроде, такого количества просто нет, если агрессивно все формы в одну лексему сводить.

А по поводу удобства и 'однозначно согласованное предложение на родном языке запомнить проще, чем не связанные слова типа BIP39' - увы, когда я генератор паролей пытался делать с грамматически правильным фразами, в результате пришел к выводу, что запомнить, увы не сильно проще. Все равно оно достаточно случайное, чтобы проблемы создавать, а правильность построения убивает энтропию и требует большей длины. Уж лучше по исходным случайным словам самому предложение придумать. Заодно и лучше запомнишь, потому что сам придумывал.

И все осложняется тем, что если запомнить надо несколько фраз - шаблонная структура приводит к тому, что ты начинаешь фразы друг с другом путать и перемешивать.

15тыс шаблонов - в корпусах, вроде, такого количества просто нет

Там можно посмотреть какой шаблон используется при генерации. Как то:

[Прил] [Фамилия И.п.] [глагол «что»] [Прил] [предмет В.п.] [Прил] [Фамилия Р.п.] или [Прил] [Профессия И.п.] [глагол «что»] [Прил] [предмет В.п.] [Прил] [Фамилия Р.п.] . Эти различаются одним словом - фамилия и профессия - уже как разные шаблоны.

Все равно оно достаточно случайное, чтобы проблемы создавать, а правильность построения убивает энтропию и требует большей длины.

Верно. Но вроде если ввести раз 10 с подглядыванием в шпаргалку - потом в голове что-то откладывается и уже можно методом перебора вспомнить, благо контрольная сумма подстрахует.

Уж лучше по исходным случайным словам самому предложение придумать. Заодно и лучше запомнишь, потому что сам придумывал.

Тут да, видимо вы правы. Для детерминистической генерации паролей на основе мастер-фразы делал другую программу - тут пост. Нужно будет в нее seed-фразу добавить.

Эти различаются одним словом - фамилия и профессия - уже как разные шаблоны.

Все равно нужны объяснения. Почему 'Фамилия' и 'Профессия' - это отдельные словари и элементы шаблона а не один 'возможные подлежащие'.

Если делать так - тогда эти два шаблона сливаются в один, но зато возможных вариантов для позиции становится больше.

Пояснение на примере:

Раздельные словари: Врач Петров читает книгу.

Один словарь: Врач повар читает книгу.

Во. Именно этого в статье и нет - из каких соображений оно выбиралось и как создавались шаблоны.
Очевидно, 15тыс штук - это не ручная работа. Кластеризация 'профессия - это отдельная сущность, а не просто подлежащее' откуда взялась?

Очевидно, 15тыс штук - это не ручная работа

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

Разницы нет. Где-то все равно был сделан выбор, почему так а не эдак. Руками или автоматикой. Его объяснение - интересно, но отсудствует.

Так а в чем вопрос? Выше же пример почему имя лучше держать отдельно от профессии - "Врач Петров" - норм, а вот "Врач повар" уже режет слух.

Тут у меня только догадки - возможно за счет увеличения количества шаблонов как-то можно дотянуть до 6 слов на 8 байт (без потери вариативности), скорее всего это максимум что получится. Но сильно не изменит удобство использования.

Так а в чем вопрос? 

Как эти группы формировались и откуда взялись. Ну ладно, увидели контрпример, что вот это выглядит коряво и.. почему решили, что тут именно профессию от имен разделить надо и как именно?
Потому что "Врач стажер читает книгу" - уже почти нормально же?

< EDIT после заглядывая в исходник>

Ни или вот там есть 'prof' (профессия) и 'role'. Не одно и то же.

Причем 'врач' - это prof, а 'барабанщик' - это role. Как вообще было решено, что тут разделить как-то надо, чем отличаются, почему барабанщик - не профессия?

Как эти группы формировались и откуда взялись.

Я только задал идею - сделать шаблоны, сначала только 256 штук (выиграть байт за счет шаблонов). Потом попробовали больше - уже LLM-ка на то и LLM-ка чтобы анализировать язык. Опытным путем чего-то там нагенерила, получилось больше чем байт, но до 2 байт не дотянуло.

Может быть не самый оптимальный вариант, никто об этом долго не думал. Но скорее всего до 6 слов на 8 байт (с учетом контрольной суммы и вариаций) и после оптимизация дотянуть не получится.

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

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

Значит, у нее был момент решения и она знает - почему.

Вы переоцениваете LLM-ки. Скорее решение отчасти рандомное и могло быть другим, причем разница между решениями - не особо влияет на удобство использования.

Там был момент, что я просил попробовать сделать как можно больше шаблонов, попробовать дотянуть до 2 байт если возможно - до 2 байт не получилось.

В любом случае - пока интерес к самой концепции не наблюдается. Попробую будет ли мне самому удобно, возможно это была первая и последняя версия.

Прикольный проект, надо будет попробовать. Еще отлично что вот так работает standalone, а не онлайн.

Зарегистрируйтесь на Хабре, чтобы оставить комментарий

Публикации