“Демультиплексирование” на общем номере порта TCP протоколов более высокого уровня (TLS/XMPP/SSH и т.п.) при помощи сигнатур начальных пакетов, описываемых регулярными выражениями, имеет и особенности “в другую сторону”: всё, что можно на уровне сокета разобрать (статическим) регулярным выражением на стороне сервера, можно быстро разобрать регулярным выражением и на стороне системы DPI. Естественно, в модели, приписывающей существенный вес номеру порта TCP в классификаторе протоколов, такой программный демультиплексор на серверной стороне был бы достаточно эффективен, но в более широком понимании – метод слишком далёк от стеганографического.
Комментировать »
Ещё немного загадочной типографики, в том числе, про часть буквы “Ё”. Точнее, про “две точки” над этой буквой и занятные совпадения, которые вообще-то с точками не связаны, но пришлись к месту. На скриншоте ниже – небольшой фрагмент манускрипта, датируемого десятым веком н.э. (сам древнегреческий текст – “Жизнь святого Порфирия, епископа Газы”, Марк Диакон, – относится к четвёртому веку, но это здесь не важно, поскольку фрагмент взят только для иллюстрации):
Там присутствует буква ипсилон, снабжённая, кроме знака акцента, двумя “точками” (нет, это вовсе не смайлик). Эти две “точки” называются “трема” (или “диерезис”) и вполне себе используются при записи древнегреческого (и даже английского, см. ниже), обозначая разделение гласных. Однако в данном случае дело явно хитрее. В современной типографике соответствующий фрагмент (середина второй строки) выглядит вот так: μετὰ τὸν πρῶτον ὕπνον, что означает “после первого сна”. Над ὕ должен быть знак придыхания, а на рукописном скриншоте знак ударения присутствует отдельно (сверху), соседних гласных нет, так что назначение второй “точки” не ясно. Тем более, что в этом же манускрипте в других сходных случаях двух точек над υ обычно нет, но иногда – встречаются. Это известное, – но какое-то загадочное, – явление, относящееся ещё и к букве ι в манускриптах на древнегреческом. Кстати, “сон” здесь – это тот самый “гипноз”: знак придыхания над ὕ, который объясняет одну “точку”, как раз трансформировался в русское “ги”. А в английском, например, hypnosis.
Трема/диерезис встречается при записи английского, но является большой экзотикой, о которой мало кто знает. Собственно, “Ё” даже в русском-то сейчас используют редко, зато аналогичное, редкое, сочетание знаков есть в английском. Посмотрите: coöperate, сöworker и reëlect. Здесь трема как раз делает “отделяемым” звук, обозначаемый второй буквой. Этот знак тут нужен для того, чтобы не было reel в reëlect и “коровы” (cow) в co-worker. Сейчас, конечно, приём считается устаревшим, а компенсировать можно дефисом.
Во фразе с древнегреческого рукописного скриншота выше упоминается “первый сон”. Как ни странно, но конкретно это сочетание древнегреческих слов относится к несколько необычной версии истории, согласно которой в средние века и ранее в Европе (в частности) ночной сон люди делили на два (или более) “заходов”. Если так, то тут упоминается как раз первый заход на сон. Впрочем, конкретно в этом случае, по контексту, можно предположить, что речь всё же идёт о коротком, “раннем” сне.
Комментировать »
Квантовая часть алгоритма Шора, если его вообще возможно реализовать, выглядит примерно следующим образом. Первому квантовому регистру назначается состояние, представляющее собой суперпозицию всех входных числовых значений. То есть, предположим, что это 1024 “битовых разряда”, тогда получается 2^1024 различных (числовых) значений и тому подобные штуки. Однако физические детали существенно отличаются, при этом основная идея вообще не касается выбранной реализации. То есть, традиционно, в качестве примера приводят отдельные “кубиты”, как некие “конструкты”, принимающие два состояния (“спин вверх/спин вниз” или что-то похожее, это довольно сложно представить) и совместимые с представлениями о суперпозиции. В квантовой суперпозиции и состоит смысл этих конструктов, так что реализация входного регистра не важна: он является лишь входом, через который основную схему предлагается “подключить”, если хотите, к квантовой ирреальности.
Регистр можно, конечно, представлять состоящим из многих кубитов, где каждый кубит базируется на отдельной частице, но можно и считать этот регистр просто единым интерфейсом, который подтянет нужное количество состояний в область реальности, обозримую при помощи моделей физических схем. В кубитах удобнее описывать алгоритмы, поэтому их и используют в мысленных экспериментах (отсюда – модели). При этом, несмотря на оригинальную бра- и кет-нотацию, речь, концептуально, идёт об управлении потоком вероятности: “квантовая вероятность” некоторым образом перетекает из одной конфигурации в другую, при этом схлопываются те части потока, которые коммутируют (опять же, можно не задумываться над значением этого “коммутируют”; схлопываются, интерферируют и – всё; главное, чтобы обратимо). “Квантовая вероятность” – она даже больше комбинаторная, чем вероятность обычная. Это и позволяет надеяться на конкретные числовые результаты: с одной стороны, применяемые тут квантовые эффекты полагаются достаточно случайными, чтобы использовать непрерывное представление для вероятности, с другой – эти же эффекты строго разбиваются на дискретные подмножества состояний (те самые “спин вверх/спин вниз”).
Итак, в случае входного регистра для схемы алгоритма Шора, подходящий поток вероятности должен спуститься через этот регистр в ту часть, которая реализует ключевую функцию всей загадочной машинерии – дискретную экспоненту. То есть, возведение целого числа в целую (даже натуральную) степень по модулю (арифметика остатков). Этот момент в популярных изложениях почему-то не всегда упоминают, а он один из главных: требуется какая-то весьма сложная схема из экзотических объектов, которые пропускали бы входящий поток вероятности и переводили его в результат “вычисления” экспоненты, разделив поток и схлопнув часть веток таким образом, чтобы сформировался периодический результат. “Вычисление” тут должно быть в кавычках.
Если вспомнить математическую часть алгоритма, то речь про вычисление y = A^x (mod M). Обратите внимание на значение A (натуральное число), которое задаёт конкретную схему аппарата для запуска алгоритма Шора! При последовательном вычислении y = A^x (mod M), если показатель x пробегает достаточное количество значений, результат (y) начнёт повторяться, это теоретико-числовая польза от алгоритма, потому что позволяет определить, при каком x A^x == 1 (mod M) и т.д., этому как раз соответствует период данной функции, который мы хотим определить квантовой машиной. Конечно, в случае квантовой машины, никаких подобных вычислений нет: такая машина – супераналоговый прибор, возможно, что ламповый, но скорее холодный, чем тёплый: выход в квантовую ирреальность почему-то требует низких температур. В общем, не предполагается, что происходят какие-то шаги, кто-то переключает реле и сигналы, а на вход “блока функций” поступают разные “иксы”, пусть даже и параллельно. Нет, напротив, подключается несколько миллионов (предположим) загадочных “гейтов”, объединённых в схему, задающую функцию для проверяемого значения A, и всё – предполагается, что в финальном измерении через схему пройдёт поток вероятности, который преобразуется нужным способом и выльется во второй регистр.
Второй регистр тоже можно представлять некоторым единым “бассейном” для входящего потока вероятности, нужного объёма. А можно представлять набором неких кубитов, которых должно быть достаточно много, чтобы получить нужную разрешающую способность. Дело в том, что модели на бумаге можно “записывать” в “действительных числах”, однако, даже если одно действительное число в дополнение к рациональным и влезает в квантовую ирреальность, достать его оттуда полностью точно и за конечное количество измерений – не получится. Это, понятно, не мешает использованию комплексных чисел даже в прикладном квантово-механическом аппарате. Поэтому для окончательного превращения результата в целое число потребуется дополнительно место в пространстве состояний.
Во втором регистре возникает поток вероятности, внутри которого закодирован период ключевой функции, потому что этот поток прошёл через машинерию, реализующую данную функцию. Как физически устроить эту машинерию – не очень понятно. Да и термин “прошёл”, применительно к потоку, тоже достаточно условное обозначение, обусловленное лишь тем, что соответствующие математические формулы в описании будут стоять одна за другой справа.
Машина так устроена, что для этого второго регистра некоторый общий “базис” превращения потока вероятности, который был порядковым или индексным, заменяется на “частотный” – то, что традиционно называется преобразованием Фурье. На графиках это эквивалентно переходу из шаблона, где горизонтальная ось соответствует “времени” (“последовательность событий/состояний”), к шаблону, где горизонтальная ось соответствует частоте (“повторяемость событий/состояний”). Это как раз и есть второй ключевой момент: превращение из индексов в частоты. После этого можно измерять состояние, чтобы получить результат: предполагается, что в выходном регистре, с высокой вероятностью, получится измеренное состояние, которое, используя модель устройства квантовой машины, можно интерпретировать как некоторое значение, кратное периоду функции (детали, связанные с тем, что там должно быть обратное значение, которое ещё не ясно как прочитать и преобразовать, опять же пропускаем). Как это выходное значение будет, так сказать, выглядеть? Например, как набор величин измерений, полученных для каких-то частиц, из которых построен выходной интерфейс. Преобразования, начиная с результатов измерений, уже будут выполняться классическими компьютерами.
Помимо того, что детали работы сложной квантовой машины могут оказаться принципиально невычислимыми, множество дополнительных трудностей добавляет тот факт, что сам поток вероятностей внутри машины достаточно легко разрушается, зацепляясь к окружающей реальности, хоть бы через космические лучи. Чем сложнее квантовая схема, тем больше шансов на такое физическое зацепление. В идеальном случае машина должна бы быть изолирована от реальности даже лучше, чем мысленный эксперимент. И с этим могут возникнуть непредвиденные проблемы.
(См. также про алгоритм Шора и Вселенную кубиками.)
Комментировать »
Попытаться построить квантовый компьютер на тысячи кубитов имеет смысл хотя бы для того, чтобы проверить, что имеющиеся модели работают для больших пространств состояний. Попытка факторизации 1024-битного числа на гипотетическом квантовом компьютере при помощи алгоритма Шора сталкивается с необходимостью как-то действовать в пространстве из 2^1024 состояний (ну, предположим). Влезет ли такое количество состояний во Вселенную? Насколько 2^1024 вообще большое?
Понятно, что какие-то прямые физические воплощения для такого числа придумать не получится, поскольку, например, 2^1024 несравнимо больше, чем масса Земли, подсчитанная в граммах. Но можно пойти на комбинаторные ухищрения. Нарежем пространство Вселенной на 2^80 небольших кубиков. 2^80 выглядит очень похожим на разные оценки “объёма Вселенной”, “количества частиц” и других сходных параметров. Перестановкой этих кубиков можно получать разные конфигурации Вселенной, которые, возможно, будут весьма сходными. Предположим, что количество конфигураций это (2^80)! (факториал, а не восклицание). “Реальный”, – что бы это ни значило, – показатель может быть другим: нужно учитывать возможности по сочетанию получившихся кубиков, их взаимное расположение. Однако для нашего примера это не важно.
Существенно ли (2^80)! превосходит 2^1024? Может показаться, что 2^1024 очень большое число. Однако провести сравнение нетрудно. Заметьте, что при вычислении факториала каждое чётное число повышает степень двойки (иногда – больше чем на единицу), поэтому 2^1024 вкладывается уже в 1026! (ну или примерно так; 1026 = 1024+2, проверьте; естественно, 171! больше 2^1024). Что уж говорить про (2^80)!! (Здесь второй восклицательный знак обозначает восклицание.) Теперь может показаться, что 2^1024 не такое уж и большое число, чтобы не вкладываться в качественно нарезанную Вселенную.
С другой стороны, а кто сказал, что разрешается разбирать объём Вселенной на кубики и переставлять их? Это было только предположение. Тем не менее, для реализации квантового алгоритма квантовым компьютером как раз нечто подобное и требуется, только детали различаются от интерпретации к интерпретации, поэтому иногда переставляются целые разные вселенные (ну, хорошо, не “переставляются”, а “интерферируют”). При этом комбинаторная часть здесь выносится за пределы реальности. То есть, можно предположить, что некая огромная “категория”, содержащая все возможные комбинации состояний и все процессы преобразования между состояниями, локализуется в конкретный результат измерений квантового компьютера, а этот результат помогает в факторизации больших чисел. Тут есть глубоко теоретический математический смысл.
Но, конечно, если Вселенная является симуляцией, то мощностей на 2^1024 состояний может и не хватить. А ведь не исключено, что получение нужной для 1024 битов разрешающей способности может потребовать во много раз больше кубитов, а элементов квантовой схемы – так вообще миллионы могут понадобиться. Впрочем, в симуляции факторизация скорее всего известна заранее: выписать на листке подобранное вручную 1024-битное простое число, удерживая его в области внимания, довольно трудно, а все остальные способы получения больших простых чисел, предположим, представляют собой результат спуска подготовленного значения из машины симуляции вселенных (из гипервизора, так сказать). Да что уж там – даже и выписывание числа может быть “наведённым”: ведь ещё предстоит проверить его простоту (спускается ли структура простых из машины симуляции в симуляцию?).
Так или иначе, но выходит, что реализация квантового алгоритма факторизации выдвигается во внешнюю область, которая не определяется окружающей “физической реальностью”, но объекты из этой области могут в “физическую реальность” проваливаться. Однако считается, что удерживать схему из кубитов там сложно, поэтому элементы достаточно быстро должны бы входить в зацепление с “реальностью”, теряя, тем самым, возможности для эффективной работы. В физике это называется декогеренцией, а для наших целей можно считать, что “категория”, стоящая за квантовым вычислением, “запутывается” (entanglement) с той действительностью, о которой смогли договориться наблюдатели – то есть, локализуется или схлопывается, теряя все полезные свойства. Иногда результатом локализации может быть “результат вычислений”. Хотя, вычисления ли это? Отдельный вопрос.
Комментарии (1) »
Генераторы текстов на заданную тему сейчас вновь популярны. Пример, естественно, ChatGPT. Можно ли автоматическим способом и с высокой точностью определить, что некоторый обозримый текст на естественном языке написан таким качественным компьютерным генератором, а не человеком?
Если эту задачу рассматривать “в максимальной общности”, то она тут же превращается в весьма занятную, почти что философскую, проблему: допуская, что можно надёжно различить тексты, написанные подобной программой и человеком, придётся допустить и то, что программа может выдать текст, который человек написать не смог бы – не смог бы сымитировать. То есть, в тексте, который написал генератор текстов, должно быть проявление некоторого “нечеловеческого интеллекта”.
С одной стороны, внутреннее устройство новомодных больших компьютерных нейросетей уже достаточно необозримо. Эти сети состоят из мешанины формул (по-научному – из “мешанины функционалов”, но в данном случае можно называть объект просто формулой). Разобраться, что и как взвешивается и преобразуется во всей этой мешанине, для человека, “вручную”, не реально. Можно предположить, что перспективная программа-детектор как раз и могла бы обнаружить в тексте проявление всех этих глубинных взаимосвязей, заведомо недоступных для интерпретации и имитации человеком, классифицировав таким образом текст как созданный ИИ. Именно из сходных соображений детекторы сейчас пытаются делать на основе обучения всё тех же (а точнее – таких же) нейросетей. Но точность не велика. А вырожденный результат на этом направлении – это так называемые “водяные знаки” (watermark), которые разработчики нейросетей планируют вводить в результат их работы, как раз с целью последующего точного распознавания.
С другой стороны, такой подход чем-то напоминает объявление числа Пи (π – но с заглавной буквы) самым разумным числом из всех: ведь “в десятичной записи числа Пи можно найти любой текст, с ответами на любые вопросы, как бы этот текст ни зашифровали”, нужно только знать, с какого знака записи начинать читать – вроде и верно, но не слишком-то конструктивно (напоминает классические теоремы существования, времён Коши, а также и саму теорию действительного числа). Но программа, которая позволила бы находить проявления некоторого необозримого ИИ в небольшом, если сравнивать с количеством коэффициентов в формулах нейросети, тексте на естественном языке, сама может оказаться столь же необозримой. А значит, к ней применимы те же рассуждения, и соответствующий процесс вряд ли быстро сойдётся.
При этом, скорее всего, каждый естественный язык является проявлением общей универсальной структуры, которая не может быть видна из “плоской”, – пусть при этом и слоистой, – статистики слов и словосочетаний, построенной алгоритмом (Хомский и др.). А это оставляет большие шансы для успешной имитации человеком текстов, которые универсальная программа-детектор могла бы, при прочих равных, посчитать результатом работы компьютерной нейросети.
К задаче возможно подойти и с другого направления, которое, впрочем, тоже экстремальное: всякий сгенерированный упомянутым компьютерным способом текст представляет собой перестановку слов, выполненную по некоторым правилам (полученным статистической обработкой, но это детали). Соответственно, предельный вариант – это предложение создать программу, которая по корректно отсортированному массиву произвольной длины смогла бы определить конкретный алгоритм, которым данный массив был отсортирован. Понятно, что это невозможно. Для того, чтобы возникли какие-то зацепки, в массиве должны быть хотя бы “ошибки и дефекты”. Но всякий набор “ошибок и дефектов”, подходящий для анализа программой-детектором, может внести и человек, пусть и с помощью ещё одной программы. В общем, тут опять получается известная диагонализация: даже если сузить применение детектора на хорошо известные генераторы текстов, всякий подобный алгоритм детектора можно встроить в тот самый генератор в качестве нового слоя, так что начнут выходить тексты, вводящие детектор в заблуждение. Другими словами: если у вас появилась программа-детектор, которая с высокой точностью классифицирует тексты, сформированные “нейросетевыми генераторами”, то вы можете либо поместить эту программу внутрь другой программы, получив возможность автоматически генерировать тексты, которые (по определению) будут классифицированы как “написанные человеком”, либо силами уже человека формировать текст, который детектор сочтёт продуктом нейросети (см., кстати, решение десятой проблемы Гильберта).
Вообще, эта особенность, с сортировкой массивов, касается всех текстов, представляющих собой обозримые наборы простых фактов. Попробуйте, например, детектировать, человек или автоматический генератор текстов собрал адресный справочник для того или иного района мегаполиса. Особенно, если это вымышленный мегаполис, да. Для подобных результатов, если они, конечно, не слишком объёмные, надёжный детектор невозможен.
Так что, к сожалению, высокоточные детекторы “текстов от нейросетей” вряд ли появятся. Кроме, конечно, детекторов, которые работают на “водяных знаках” – специальных криптографических метках.
Комментарии (1) »
На картинке ниже – фрагмент текста из книги “Изложение алгебры” (или, если хотите, “Трактат об алгебре”), Джона Валлиса: John Wallis, A TREATISE OF ALGEBRA, both historical and practical. Год издания, обратите внимание, 1685.
На первый взгляд, в тексте присутствуют “смайлики”, собранные из символов “;”, “:” и “)”. То есть, один “смайлик” – подмигивающий.
Естественно, это не “смайлики”, что очевидно из контекста. Такие сочетания символов – особенности старой типографики (и, возможно, синтаксиса): размещение знаков пунктуации внутри скобок подобным образом тогда являлось обычной практикой (и, кстати, обратите внимание на буквы и орфографию). В качестве дополнительной иллюстрации – “фотография” автора книги и титульный лист.
(Источник изображений: Google Books.)
Комментировать »
Если выбрать систему координат таким образом, что Солнце движется в ней прямолинейно со скоростью несколько сотен км/сек., то траектория Земли окажется кривой, напоминающей синусоиду. В этой системе координат Земля вовсе не “вращается вокруг Солнца”, в том “наивном” смысле, что не описывает окружность, в центре которой Солнце.
Для навигации на поверхности Земли – удобны другие системы координат, в которых Солнце вращается вокруг Земли, поскольку она зафиксирована. Расхожее утверждение, что “Земля вращается вокруг Солнца” – не более чем фигура речи, пусть и очень популярная. Например, для того, чтобы получить существенные вычислительные преимущества при предсказании астрономических событий Солнечной системы, наблюдаемых с Земли, самой по себе гелиоцентрической системы не достаточно, нужно ещё учитывать геометрию орбит планет, иначе потребуется, как и в развитом геоцентрическом случае, вводить множество дополнительных “параметров”, чтобы наблюдения как-то сходились с моделью.
Существенные искажения смысла, которые сейчас встречаются повсеместно (см. надавнюю записку про соцопрос), возможно, вызваны таким явлением, как упрощённый, массовый “научпоп”: почему-то стало принято считать, будто уровень знаний достиг таких высот, что всё вокруг, от движения планет и устройства космических телескопов до систем связи пятого поколения и превращений элементарных частиц в ускорителях, очень просто, легко и, главное, детально, объясняется “физикой за пятый класс”. Сама “физика за пятый класс” при этом никак не определяется, поскольку важным признаётся именно подход, подразумевающий эквивалентность простых “утверждений”, которые легко запомнить (без осознания), и “научной грамотности”.
Вернёмся к движению планет. То, что Солнце существенно больше Земли, а наблюдаемое движение светила по небу можно объяснить при помощи модели, в которой именно Земля движется вокруг, выяснили ещё древние греки. Но, скажем, измерение годичного параллакса звёзд, как подтверждение движения Земли по орбите, удалось произвести только в 19 веке. Следует ли считать, что до этого момента утверждение “Земля вращается вокруг Солнца” было всего лишь популярным обобщением? Нет, конечно. Это утверждение, в изолированной форме, и сейчас не несёт особого смысла. То есть, процесс выбора моделей мира был длительным, непростым, и не сводился к тому, как сейчас нередко принято объяснять: “Коперник открыл, что Земля вращается вокруг Солнца”. Никаких особенных причин утверждать, что именно Земля движется, нет, а практическое удобство гелиоцентрических систем совсем в другом.
Но главное полезное наблюдение состоит не в этом. Так, в разных системах отсчёта, в разных системах координат, движение светил будет описываться различными формулами, которым соответствуют различные траектории. Результаты нередко выглядят неожиданными: например, траектория Луны, движушейся вокруг Солнца, очень близка к окружности. Действительно, от одной формулы можно перейти к другой. Именно на этом уровне и образуется новое знание, отличающееся от простого заучивания кратких “утверждений”. Это знание позволяет понять, почему разные системы отсчёта, представленные в наивном виде (“Земля вращается вокруг Солнца”), как бы “противоречат” друг другу. То есть, знание, – по крайней мере, математическое, – здесь соответствует механизму разрешения противоречий. Этот механизм находится на пару уровней выше утверждения “Земля вращается вокруг Солнца”. Естественно, астрономические успехи связаны с определением и строгим формулированием элементов этого механизма. На первом этапе – понимание того, что наблюдаемая картина движения светил может быть интерпретирована различными способами. На втором – создание логических конструкций, позволяющих вычленить существенные характеристики того, как различные модели переходят одна в другую, с сохранением наблюдаемого результата. И уже на третьем этапе – выяснение причин такого перехода и их строгое описание. Простое утверждение “Солнце вращается вокруг Земли” не играет сколь-нибудь значительной роли, гораздо важнее понимание того, что подразумевается под “вращением”, насколько это понятие универсально.
Комментировать »
“Коммерсант” пишет про результаты соцопроса, которые связывает, ни много ни мало, с “уровнем научной грамотности” (“невысоким”).
“Как показал опрос ВЦИОМа, 35% россиян считают, что Солнце вращается вокруг Земли. О том, что Земля вращается вокруг Солнца, знает 61% респондентов.”
Понятно, что влияет массовый “научпоп”, а опрос – манипулятивный, но всё равно довольно забавно читать выводы о “научной грамотности”, сделанные по результатам ответа на довольно бессмысленный вопрос, который был сформулирован следующим образом: “Согласны ли вы с утверждением: «Солнце вращается вокруг Земли»?”. Проблема в том, что интерпретация предложенного утверждения зависит от используемой модели и системы координат. Так, можно выбрать систему с зафиксированной Землёй в начале координат и, в таком случае, Солнце вращается вокруг Земли. Подобная система оказывается удобной при решении определённых задач. Можно выбрать систему, где началом координат является Солнце, а Земля движется вокруг – такая система хорошо подходит для других задач. А можно привязать начало координат к какому-нибудь далёкому пульсару. Но все эти хитрости не делают конкретную систему “истинной” настолько, чтобы с ней соглашаться или нет. Поэтому, если уж и судить о “научной грамотности”, то, скорее, как раз по высокой доле “неочевидных” ответов.
Комментарии (3) »
Анонимизация больших объёмов данных, которые собирались для конкретных персон, представляет большую проблему. Особенно, если данные достаточно подробные, уникальные и их много. В недавно опубликованной работе исследователи показывают, что публично доступные “анонимизированные” базы “расшифровок” человеческой ДНК, собранные различными проектами, не только оказываются пригодными для эффективной деанонимизации, но ещё и позволяют идентифицировать людей, которые образцов ДНК ни в какой проект не сдавали (но, понятно, где-то такой образец оставили). Данные ДНК могут показаться разрозненными, но это совсем не так, если смотреть на них с точки зрения биологических механизмов. Интересно, что если наложить на набор данных ДНК генеалогические деревья, сопоставив родственников по фрагментам кода, то исходный набор “анонимных” данных тут же теряет всю свою “вариативность”. Если у вас есть база данных с ФИО и отношениями родства, то достаточно подставить в дерево хотя бы одну реальную персону, как все остальные узлы тут же деанонимизируются самым очевидным образом. При неполных данных – всё равно можно уверенно перескакивать между ветками, обнаруживая двоюродную и троюродную родню.
В работе по ссылке – показано, что механизм наследования достаточно силён для того, чтобы покрыть практически всю популяцию, собрав ДНК лишь у небольшой части людей. И речь тут идёт о том, что публичные “анонимизированные” базы позволяют идентифицировать персон, ДНК которых в базе отсутствует, но нашлись родственники разной степени “отдалённости”. Цитата:
“Используя конкретную модель, мы можем предсказать, что база данных с записями о приблизительно 3 млн жителей США европейского происхождения (2% соответствующего взрослого населения), позволяет найти для 99% населения данной этнической принадлежности как минимум одного троюродного родственника, а для 65% – как минимум одного двоюродного”.
Чтобы сопоставить реальных персон записям в базах ДНК, исследователи используют год рождения, примерное место проживания – это позволяет резко улучшить точность. Собственно, задача складывается в чисто комбинаторную, а комбинаторные соображения очень часто помогают убрать всё лишнее и найти реальную структуру, стоящую за данными. Я довольно давно писал на сходную тему, правда, в привязке к “анонимизированным” данным геолокации.
Комментарии (3) »
Многие слышали про криптографию на эллиптических кривых. Но эллиптические кривые, которые давно являются мощным инструментом теории чисел, можно успешно применить к решению элементарной (по формулировке) арифметической задачки про бананы, яблоки и ананасы. Текст ниже – несколько сокращённая версия моего перевода ответа Quora.com, который дал Alon Amit (англ.).
Читать полностью
Комментировать »
Около года назад я кратко описывал возможную атаку на протокол биткойн, основанную на быстром вычислении дискретного логарифма при помощи квантового компьютера, что ломает подпись ECDSA. Вот, появилась весьма подробная научная публикация на эту же тему: Quantum attacks on Bitcoin, and how to protect against them – в работе рассматриваются и квантовые атака на алгоритм “доказательства проведённой работы” (PoW), они, впрочем, признаны неэффективными на практике.
Комментарии (1) »