Кембриджский словарь (Cambridge Dictionary) английского языка назвал словом года 2023 слово hallucinate. Неплохой выбор. Однако обоснование не то, на которое можно понадеяться: речь всего лишь о дальнейшей поддержке “хайпа” вокруг ИИ (LLM – конкретно). Для толкового словаря это, наверное, даже правильно, поскольку дескриптивный подход тут лучше прескриптивного.

Hallucinate (“галлюцинировать”), в значении термина AI (LLM ИИ), словарём определяется так: “когда искусственный интеллект галлюцинирует – он (it) выдаёт ложную информацию (false information)”. Заметка по ссылке выше, объясняющая выбор слова, заслуживает прочтения (или прослушивания чтения – там есть прекрасная запись, полностью соответствующая Кембриджу по языку). Заметка отлично иллюстрирует восприятие популярного ИИ со стороны, так сказать, филологии – а это вам не СМИ широкого профиля. Например, там есть рассуждение о том, что рост популярности LLM может привести к возникновению новой специальности – “инженерии подсказок”, так сказать (в оригинале: prompt engineering). Такой специалист по подсказкам ИИ, сколь бы странным это ни показалось, будет “знать, как составлять вопросы и запросы к инструментам ИИ, чтобы получить в точности те ответы, какие вам нужны”. Напоминает некоторые классические литературные произведения. Причём, чем лучше вы вчитываетесь в это описание специальности, тем больше произведений оно напоминает. Зачем вообще ИИ, если характеристики ответа уже известны с высокой точностью?

К сожалению, использование термина “галлюцинировать” в отношении систем LLM, да ещё и в таком толковании, как теперь закрепляет словарь, это не очень-то правильно. LLM – это программы, выводящие цепочки слов. Если эти программы вообще “галлюцинируют”, то они галлюцинируют всегда – просто, в некоторых случаях, выдаваемые потоки слов похожи на “информацию”, которая совпадает с “подлинными фактами”. А так – никаких “галлюцинаций” там быть не может: программа работает одинаково, а восприятие определяется читающим выдачу человеком.

Заметьте, что с “галлюцинированием”, в исходном значении, и так не всё понятно: наличие разнообразных иллюзий, будь то цвет платья или разное понимание звуков, показывает, что “галлюцинации”, как минимум, могут оказывать заметное и непрерывное влияние на восприятие окружающей действительности человеком. Что, впрочем, вряд ли является достаточным основанием для утверждений типа “ИИ – это компьютерная система, которая обладает некоторыми качествами, свойственными человеческому мозгу”, как в словарной статье Hallucinate Кембриджского словаря.



Комментарии (4) »

Кстати, если вдруг придумают алгоритм быстрой факторизации больших полупростых чисел, сломав тем самым RSA, то, конечно, “популярной мотивации” для создания универсального квантового компьютера станет сильно меньше: на этом направлении всегда пишут про алгоритм Шора. А вот с необходимостью перехода на постквантовые криптосистемы, в этом случае, есть интересные особенности.

Так, обнаружение алгоритма быстрой факторизации, естественно, легко может грозить тем, что попутно обнаружится и способ быстро сломать задачи типа привычного эллиптического варианта Диффи-Хеллмана (читай – ECDSA). Однако только из этого не следует автоматически вывод, что переходить требуется именно на постквантовые криптосистемы. Вот тут и начинаются особенности. Во-первых, постквантовые криптосистемы уже разработаны, уже имеют какую-то практическую “классическую” стойкость, уже реализованы, – так что их быстрее внедрить; во-вторых, задачи, на которых базируются те или иные постквантовые криптосистемы, имеют гораздо больше шансов сохранить известную сложность после обнаружения каких-то принципиально новых методов быстрой факторизации – это, конечно, тоже не гарантируется, однако для ускорения факторизации/логарифмирования до сих пор использовались математические конструкции, которые, в общем-то, стоят и за многими постквантовыми алгоритмами.



Комментировать »

Суперпозиция на омонимах может быть развита вплоть до демонстратора важных онтологических принципов, стоящих за квантовыми вычислениями. Фраза “личинка заблокировала собачку в замке” содержит заметно более одного значения среди возможных. Однако, если сопроводить фразу “настроечным” текстом, значение схлопывается в конкретный вариант.

“Насекомые могут мешать работе механизма, бывает, что и личинка заблокировала собачку в замке”. Это вариант для жуковедов. Если же в “настроечном” тексте речь шла о домашних животных феодалов, то собачка вполне может заранее превратиться в маленькую собаку. Фактически, слова начального текста, взятые вместе с фактом интерпретации омонимов, проявляют структуру, на которой успешно строится и понимание “квантовой запутанности” с неравенствами Белла, и другие элементы популярной квантовой механики, которые, почему-то, едва ли не повсеместно спешат назвать “контринтуитивными”.

Если хотите, то упомянутая структура управляет ударением в омографе “замок”. (Тут ещё интересно то, как подобное теряется в LLM, – в “больших языковых моделях” ИИ, – но это отдельная тема.) Как можно этим же способом охватить и принципы квантовых вычислений? Часть уже должна быть понятна из суперпозиции “собачек”. На следующем шаге потребуется представление интерференции состояний. То есть, требуется добавить ещё омонимов, но не каких угодно, а таких, которые окажутся связаны с состояниями уже используемых в целевой фразе. Самый простой вариант – для того, чтобы “собачка” стала механическим элементом, можно использовать “ключ” и “треснул”: “треснул ключ, а личинка заблокировала собачку в замке” (и засов теперь не сдвинуть). Использование “ключа” вызвало интерференцию, резко снизив вероятность интерпретации слова “собачка” как обозначающего мелкое животное белого цвета.

Заметьте, что такая интерпретация всё ещё возможна в принципе, если немного расширить контекст. “Чтобы вновь запустить цирковую карусель, медведь доской треснул ключ, а личинка заблокировала собачку в замке” (круговорот диковин в шапито: гигантская личинка загоняет собачку в макет замка). Интерференция позволяет перегонять вероятность в нужном направлении, а в вычислениях такое должно работать потому, что превращение “собачки” в механическую деталь позволяет определить наличие “ключа” даже в том случае, когда начало фразы не приводится: если ударение в “замке” на последний слог, то где-то раньше стоял “ключ”, который “треснул”. То есть, если представить, что начало предложения может быть разным, то способ постановки ударения в “замке” позволяет определить, механическое там что-то было или нет. Обратное распространение значений. Впрочем, не сказано, кто же тогда предложение читает.

Это забавно. Однако, сколь бы странным подобное рассуждение ни показалось, именно структуры данного типа, существующие выше морфологии, позволяют строить осознаваемые (не всеми, но некоторыми) интерпретации квантовой механики, и даже планировать построение квантовых компьютеров. Но для LLM это недоступно.



Комментировать »

Омонимы различных типов неплохо иллюстрируют разные аспекты образования смысла, и даже могут показывать “квантовые” эффекты. Вот, например, такое предложение: “личинка заблокировала собачку в замке” – в нём присутствует почти что суперпозиция значений, “схлопывание” которой выполняется контекстом. Попробуйте обнаружить базисы вариантов самостоятельно, выполнив пару “измерений”:

Личинка заблокировала собачку в замке.
(1) Из-за перекоса.
(2) В одной из комнат.

(Развитие темы: “Квантовые вычисления для филологов“.)



Комментировать »

Из очевидных, – казалось бы, – особенностей обработки радиосигналов: определять координаты (точечного) источника радиосигнала можно и при помощи одного приёмника, если этот приёмник движется, знает свою траекторию, а также знает параметры сигнала источника в точной привязке ко времени. Тогда можно вычислить рассогласование (по фазе) между сигналами в разных точках траектории приёмника, это рассогласование позволит построить “фазовый фронт”, а по его “кривизне” уже можно рассчитать координаты источника. Грубо говоря, если передатчик-пищалка излучает “чистую синусоиду”, то, определив фазу в одной точке, можно переместить приёмник и посчитать рассогласование фаз между этими точками (но, конечно, нужно учитывать, что не произошло перехода через целый период). На этом же геометрическом принципе основано синтезирование антенных апертур.

Вовсе не обязательно зацепляться именно за “чистые гармоники”, как в простом примере выше, годится произвольный сигнал, характеристики которого известны заранее в развёртке по времени. То есть, фиксируется опорный кадр времени “внутри сигнала” в начальной пространственной точке приёмника, потом новые кадры, записанные в других точках, сдвигаются по времени к опорному кадру – сдвиги как раз и дают нужные данные: разницу в расстоянии до источника. Ну или, если хотите, можно считать, что в начальной точке синхронизируется временная шкала, а потом измеряется расхождение в других точках (это основа радионавигации). Да, схема полностью полагается на предсказуемость свойств сигнала, потому что в двух разных точках этот сигнал измеряется в разное время. И если сигнал передатчика совсем уж непредсказуем, то возникнут проблемы, поскольку непонятно, что с чем сравнивать, и таки придётся использовать несколько приёмников с синхронизацией внешнего времени. Однако очень многие современные сигналы, – в том числе, носители “цифровых каналов связи”, – имеют “внутри” подходящие метки – синхроимпульсы различного типа.



Комментировать »

Есть ещё такой аспект в практическом использовании систем “текстового” ИИ, типа ChatGPT: некоторые пользователи думают, что когда они задают этой системе “задание” написать текст по некоторой теме, то ИИ собирает информацию, проверяет предмет через “поисковые системы” и извлекает данные из “научных статей”.

Собственно, именно на этой интерпретации основана идея, что ИИ “заменит учёных” (оно, конечно, опрос “воображаемого эксперта”, как метод, для некоторых СМИ вполне может если и не заменить, то сильно облегчить, это факт). Чуть более маркетинговое толкование на этом же направлении приводит к предложению использовать ИИ для получения “краткого пересказа” статей.

При этом то, с чем имеют дело пользователи современных систем ИИ в реальности, это всего лишь программы, которые генерируют текстовый вывод по внутренним шаблонам, отталкиваясь от заданных в запросе слов и предложений. То есть, не анализируют публикации, не собирают данные, а генерируют формальный текст по словарю в соответствии с алгоритмом и коэффициентами, взятыми из базы компьютерной нейросети, но делают это очень хорошо, почему и вводят в заблуждение.

А так, конечно, “компьютер не может ошибаться“.



Комментировать »

Cubes– Зачем вы устраиваете эту симуляцию вселенной?
– Чтобы проверить, что симуляция вселенных вообще возможна.

Тут, кстати, тоже есть рекурсия: некоторая “старая” сверхцивилизация запускает симуляцию вселенной, мотивируя расход ресурсов необходимостью проверки, не в симуляции ли находится сама эта сверхцивилизация, ведь такую симуляцию могла запустить Сверхцивилизация (с заглавной буквы). Однако только в том случае, если симуляции вообще возможны. Напрашиваются проблемы вложенности вселенских “гипервизоров”: можно ли запустить гипервизор внутри гипервизора? ну, “докер-контейнеры” можно попробовать, да; а какие будут потери вычислительных ресурсов на такой вложенности?

Тут важны квантовые свойства. Предположим, мы устроим собственную квантовую симуляцию вселенной (со строчной буквы) таким образом, чтобы заведомо сильно нагрузить внешний рекурсивный гипервизор, если он есть. Как это можно проделать? Станем выбирать такую модель, где результат симуляции в каждый временной шаг требует интерференции большого количества возможных квантовых состояний. Учёт этих состояний внешним симулятором-гипервизором должен загрузить доступные этому гипервизору ресурсы. Каждое состояние требуется посчитать и удерживать в памяти для построения корректного результата интерференции – от этого результата зависит дальнейший ход нашей охватывающей симуляции, в которой, предположим, исследователями наблюдаются результаты собственной вложенной симуляции. Если немного сосредоточиться, то тут можно насчитать три уровня: внешняя Вселенная, симуляция “нашей” вселенной, симуляция вселенной внутри симуляции. Тут можно понадеяться на то, что внутри этой третьей симуляции тоже станут запускаться вложенные симуляции вселенных, но, скорее всего, от этого предусмотрена защита. Эффект от срабатывания этой защиты должен подниматься из вложенных симуляций, а значит – можно попробовать его использовать в качестве способа обнаружения гипервизора (что-то это напоминает).

Вообще, именно управление распределением ресурсов гипервизора и нужно детектировать, на этом построено много научных работ о симуляции вселенных. Так, если добавление квантовых состояний требует выделения новых ресурсов, то момент их выделения может проявляться в некотором скачке: ресурсы запрашиваются – симуляция спотыкается и приостановлена – ресурсы выделены – симуляция заработала в прежнем режиме. Забивать ресурсы вселенского гипервизора квантовыми состояниями, запуская симуляции собственных вселенных, можно с экспоненциальным ростом. Как обычно, мешает непонятный и путаный принцип хода времени: если запрос ресурсов и поднимается в гипервизор, то не факт, что ход их перераспределения спускается обратно в симуляцию. То есть, момент “спотыкания” может быть не виден изнутри. Однако можно ожидать, что характерным образом споткнётся время во вложенной симуляции (на третьем уровне). Вот поэтому и имеет смысл запускать квантовую симуляцию вселенной – если споткнётся, то, возможно, всё уже и так в гипервизоре.



Комментировать »

Иллюстрация по теме “больших языковых моделей” (LLM) и “смысла” текста. “Гора мрамора” и “мрамора гора” – практически одно и то же (в смысле значения, а не как формула, конечно), возможные оттенки привнести может только внешний контекст. Но если на “гора мрамора” смотреть как на наивную “сумму” слов “гора” и “мрамора”, то видно, что чего-то не хватает, особенно, в части “мрамора”. Не хватает – структуры, которая отображается только в пару слов, вызывая их морфологические изменения. Эта же структура отвечает и за то, что слова в данном примере “коммутируют” друг с другом: просто, основная структура при перестановке слов не поворачивается, остаётся без изменений (это, в данном случае, свойство русского языка, конечно). Но если всё же повернуть данную структуру, то эффект тут же проявится: “мрамора гора” и “мрамор горы” уже отличаются существенно, так что вышестоящие ветки, так сказать, не коммутируют при перестановках.

“Забрал забрал” – другой занятный пример. В этой странной фразе имеется в виду, что кто-то забрал откуда-то несколько деталей шлемов, а отдельная деталь называется “забрало”. Конструктивный эффект морфологии совпал в буквенном выражении, поэтому структуру фразы можно поворачивать и запись слов при этом не поменяется. Это неплохие примеры “факторизации структур”, в математическом смысле.

Так что, если где-то утверждается, что ИИ c LLM “понимает текст” и “успешно решает творческие задания”, то нужно к этому относиться с существенной долей сомнения, мягко говоря: “плоская” программа – она есть программа “плоская” (даже если там несколько слоёв “нейросетей”).



Комментарии (2) »

Исходная мотивация для квантовых вычислений состоит не в кубитах, а в поиске механизма, который позволил бы вычислить “невычислимое”, ну или хотя бы “сложновычислимое”. Кстати, едва ли не первое описание концепции дано в книге Ю. И. Манина “Вычислимое и невычислимое”, 1980 года (изд. “Советское радио”) – там несколько абзацев в предисловии (с.15) посвящено “квантовым автоматам”, уже эти несколько абзацев точно и полно описывают концепцию того, как квантовые вычисления далее и развивались. Сама книга не о квантовых вычислениях. Тем не менее, в тексте предисловия на примере проблем моделирования известными “классическими” методами простых физико-химических явлений, показана связь с несравнимо большей мощностью пространства квантовых состояний – вот эту мощность и предлагается использовать в реализации будущих вычислительных механизмов.

В вычислительном моделировании белковых молекул ситуация и сейчас, спустя более чем сорок лет, примерно такая же – расчёты требуют многих дней работы суперкомпьютера, но соответствующий процесс геометрического превращения белка происходит за доли секунды. Это одно из направлений, на котором, как считается, могут помочь квантовые компьютеры той или иной системы.

Почему вычислительное моделирование вообще должно работать на скорости, сравнимой с моделируемым процессом? Это моделирование больше похоже на попытку перебора состояний, то есть на обращение некоторой сложной функции-свёртки. Можно было бы попробовать придумать небольшой алгоритм, который моделировать ничего не будет, но вывод даст похожий на какую-нибудь сворачиваемую молекулу. Другими словами, обязательно ли предполагать, что упавшая на каменный пол стеклянная ёлочная игрушка, прежде чем разбиться, вычисляет набор осколков, на которые она разлетится?

Предположим, в симуляции вселенной игрушка могла бы и “зависнуть”, вот буквально в момент удара об пол – если расчёт осколков достаточно сложен; другое дело, что прочие персонажи внутри симуляции всё равно этого не заметили бы, так как ход последовательности событий, споткнувшись на ёлочной игрушке, одинаково приостановился бы для всех находящихся внутри – иначе событие разбития игрушки начало бы отставать по времени от момента падения; впрочем, известно, что такие эффекты относительно легко корректируются позже; кроме того, “разбивку” осколков можно и предвычислить, оформив в виде процедуры, выдающей, как калейдоскоп, разные наборы, которые вычислительно непредсказуемы изнутри симуляции, но укладываются в прочие ограничения, что позволяет пытаться их считать: вычислительная непредсказуемость тут как раз и выводится из экспоненциального роста сложности определения свойств исходной внешней процедуры по её внутреннему выводу.

Впрочем, концептуальная идея квантовых вычислений основана на обратной трактовке ситуации: предположим, есть физический процесс, который явно опережает “по скорости сходимости” все известные для моделирования похожих процессов вычислительные методы, – давайте используем сам этот процесс для вычислений, хоть бы и по какой-то другой задаче. Некая запредельная квантовая процедура быстро определяет конфигурации осколков ёлочной игрушки (волка там какого-нибудь, это не так важно) – давайте сводить другие задачи к модели, полезный результат которой отобразится в конфигурацию осколков. Это больше похоже на “квантовый отжиг” (quantum annealing), но, собственно, такой же подход реализуется и в алгоритме Шора, который описывает, как перевести задачу отыскания периода функции в квантовомеханические “операторы”. Алгоритм математический, а для успешной его работы остаётся найти подходящий физический процесс. С этим могут быть трудности. Естественно, это всё напрямую связано с тем, что пока что толком не понятно, откуда именно берётся “мощность”, стоящая за конкретным, пусть и гипотетическим, квантовым вычислением.

Один из исторических подходов к выводу понятийных основ квантовой механики состоит в следующем сравнении “меньше-больше”: пусть исследователь изучает всё меньшие и меньшие аспекты окружающего мира, тогда, с соответствующим уменьшением инструментов измерения, эти инструменты начинают всё больше и больше влиять на измеряемое. Отсюда хрестоматийное определение: влияние прибора убрать нельзя, а чем выше полагаемая точность измерения, тем больше измеритель влияет на измеряемое – например, на элементарную частицу, на электрон.

Нужно заметить, ничто не мешает пытаться, собственно, измерять параметры скорости хорошо локализованных в пространстве электронов с высокой точностью – проблемы начинаются с предсказуемостью результатов последовательных измерений в одной и той же конфигурации оборудования. Предсказуемо определить измерением, получается, нельзя, а значит – нельзя и знать, то есть, феномен скрывается из области реального. При дальнейшем обобщении, учитывающем прочие эксперименты, включая мысленные (как двухщелевой опыт с фотонами и наблюдателем над щелями), в этом месте и появляется “поле вероятности” из которого можно “выбивать” измерениями разные значения, но уже с хорошо определяемым распределением. Получается, за всеми этими “частицами” стоит некоторое большее поле вероятности, а в нём возможны некоторые волны изменений, порождаемые разными шагами квантового эксперимента, при этом интерференция данных волн влияет на распределение будущих результатов измерений. И если правильно устроить экспериментальный прибор (квантовый компьютер), то, возможно, получится применить результаты превращения вероятностей в измерениях и вычислениях. Однако тут возможны разные интерпретации.



Комментировать »

Anycast (в Интернете) – это, грубо говоря, способ распределить один IP-адрес на несколько узлов. Глобальный anycast подразумевает, что некоторый IP-адрес обозначает разные узлы, расположенные в совсем разных сетях и, возможно, разных регионах. Применяется данная технология, обычно, для того, чтобы сделать входные узлы некоторого глобального распределённого сервиса ближе к локальным пользователям, сохранив нумерацию в IP-адресах (“ближе” здесь обозначает расстояние в смысле сетевых маршрутов пакетов).

Есть занятный, пусть и не самый точный, способ определения того, что какой-то глобальный и маршрутизируемый IP-адрес соответствует anycast-узлу: нужно измерить время ответа (ICMP) при помощи утилиты ping, но сделать это из двух базовых точек, заведомо находящихся в существенно разных регионах, а потом измерить ping между этими точками. Если сумма для времени от точек измерения до измеряемого узла существенно меньше, чем время между базовыми точками, то, скорее всего, тут присутствует anycast. Это неравенство треугольника, и оно тут при помощи anycast нарушается.

Естественно, неравенство треугольника в интернет-сетях может нарушаться и по другим причинам. При этом, так сказать, “плотность” подобных нарушений, измеряемая на выборке узлов, может свидетельствовать о том, что где-то нужно поправить правила балансировки. А вообще, в современной глобальной Сети, из-за усиливающейся “спагеттизации“, подобная сетевая “измерительная геометрия” приобретает всё большее значение: когда трафик ходит через VPN, эффекты от anycast могут быть совсем не такими, как планировалось.



Комментировать »

Один из самых старых способов скрытого получения доверенного доступа к не менее скрытым сервисам в Интернете (как IP-сети) это port knocking (метод “секретного портового стука”). Суть метода изложить не трудно: скрываемый сервис работает на закреплённом за ним номером порта, но доступ для TCP-соединений (например) к этому номеру порта открывается только для тех IP-адресов, которые выполнили установленный набор попыток подключений по другим номерам портов. Чуть более развёрнутое объяснение для тех, кто не сетевой инженер (опять же, используем TCP): TCP-соединение – это соединение “точка-точка”, на каждом из концов соединению соответствует IP-адрес и номер порта, где номер порта, можно считать, это просто 16-битное число; например, 10.11.12.13:14395 -> 10.101.102.103:22 – соединение клиента с номером порта 14395 на серверный номер порта 22 (это обычный номер для SSH); предположим, что доступ на сервере по порту 22 закрыт межсетевым экраном (брандмауэром), то есть, попытка соединения на этот номер порта будет проигнорирована сервером; но если некоторый клиент с IP 10.11.12.13 выполнит попытки TCP-подключения на другие номера портов сервера по заданной ключевой последовательности: 1011, 1022, 1033, то брандмауэр, который фиксирует у себя попытки подключения, откроет подключения по номеру порта 22, но только для соответствующего IP-источника.

Естественно, все номера тут могут быть любыми (из допустимых интервалов). Метод весьма полезный, я его использую для открытия доступа к шлюзам, ведущим в некоторую “закрытую” сеть: совершенно необязательно открывать конкретный сервис на конкретном узле, с тем же успехом можно открыть туннель.

Почему-то данный метод и известен не столь широко, как можно подумать, да и нередко его необоснованно относят к способам защиты из разряда Security through obscurity (“Безопасность через неясность”, в одном из переводов), которые, как бы, “заведомо слабые”, что как раз и есть хороший пример неверного обобщения “принципа Керкгоффса”. Однако данный метод хорош, если используется по назначению и в верном контексте. А если излишне настойчиво обобщать, то и авторизация SSH по ключу может показаться “безопасностью через неясность” – действительно, а как если бы он знал значения байтов секретного ключа и их последовательность? Впрочем, это лирическое отступление.

Идея port knocking очень гибкая, потому что достаточно общая: во-первых, годится и TCP, и UDP, и ещё что угодно “с номерами”; во-вторых, последовательность “стука” не обязательно фиксированная – если есть общий секретный ключ и общее время, то номера можно генерировать псевдослучайным образом; в-третьих, вежливо постучать клиент может в один узел (IP-адрес), а доступ ему откроется на совсем другом (так тоже бывает). Поэтому именно “портовый стук” представляет собой эффективный дополнительный инструмент, затрудняющий обнаружение скрытого сервиса разными активными сканерами (что называется – connection probe). Если последовательность стуков неправильная, то, понятно, никто на неё просто не ответит, поэтому и никакой новой информации получить не выйдет.

Действительно, номера портов, которые открывают возможность соединения, видны в сетевом трафике. Но если это псевдослучайная последовательность, толку, в плане анализа трафика и сервисов, от этого не очень много – мало ли кто и какие порты сканирует? Добавление же контекста в DPI тут существенно повышает сложность анализа трафика. К port knocking можно добавить пакеты (UDP, например), содержащие дополнительные ключи, что, вместе с заменой адресов, совсем хорошо перемешает информацию, ещё больше затруднив анализ и построение контекста. Интересно, что через номера портов, в принципе, можно передавать и выбранный номер входного узла, к которому требуется получить доступ. То есть, конкретный вход в туннель и его свойства определяются выбранной последовательностью “стуков”. Впрочем, если простой port knocking в линуксах, например, относительно легко реализуется силами iptables (типовой межсетевой экран), то расширенные, хитрые способы – потребуют отдельного специализированного модуля, обрабатывающего низкоуровневую информацию о соединениях.



Комментарии (3) »