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

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

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



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

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



Comments Off on Самоуправляемые автомобили: запланированные бэкдоры

Old carАвтомобили-роботы управляются программами, которые находятся в их бортовых компьютерах. По крайней мере, на первых порах, программы будут в бортовых компьютерах – ну, прежде чем их традиционно “унесут в облако”. Бортовые программы управления можно обновлять, а можно просто “поменять прошивку”. Вообще, загрузка новых прошивок в автомобильные бортовые вычислительные системы уже очень распространённое явление: есть сервисные центры, которые “чипуют” мотор, повышая мощность; для многих марок выпущены специальные программаторы, доступные каждому автовладельцу – такой программатор позволяет выбрать одну из нескольких прошивок (типа, “Максимальная мощность”, “Экономия топлива” и пр.) и загрузить её на борт. Так что прошивки для автомобилей-роботов должны появиться обязательно. И поле деятельности для разработчиков прошивок тут велико: ведь изменения касаются не только работы агрегатов, но и использования автомобиля в целом. Какие новые прошивки предложат?

Мастер-водитель

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

Экономия топлива

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

Маршрутное разнообразие

Робот возит вас с работы домой, а из дома на работу одним и тем же маршрутом? Скучно. Новая прошивка рандомизирует генератор маршрутов. В зависимости от топологических свойств географической окрестности, в которой вам повезло проживать, и заданных пользователем лимитов, перепрошитый робот будет использовать от десяти до десяти тысяч новых маршрутов, совпадающих не более чем в четырёх фрагментах, эквивалентных перегону между перекрёстками. Пользователи, получившие небольшую математическую подготовку, удивляются, почему в прошивке имеется верхний предел числа маршрутов, да ещё такой небольшой. Разработчики объясняют: теоретически, верхний предел должен быть связан либо с пробегом автомобиля, либо со временем его непрерывного движения (высказывается мнение, что на время движения, кроме других факторов, влияет физиология пассажира, его способность безвылазно сидеть в салоне, но эти детали пусть волнуют врачей, а не разработчиков “кастомных” прошивок). Действительно, число улиц на континенте позволяет построить большое число маршрутов из точки А в точку Б. Если ввести требование различия прямых и обратных маршрутов, то число вариантов заметно уменьшается, но всё равно остаётся большим и превышает десять тысяч даже для среднего мегаполиса. Однако на практике, в случае с автомобилем-роботом, всё упирается в объём бортовой памяти, выделенный под расчёт логистики посещения заправок. Так что сохранение совместимости прошивки с автомобилями, работающими под управлением ОС Apple, потребовало установления строгого верхнего лимита.

Винтажное такси

Загрузка этой прошивки приводит к тому, что автомобиль-робот перед поездкой отправляет владельцу сообщение на смартфон: “Машинка подъехала, выходите”. Но сам автомобиль при этом кружит по переулкам где-то за два-три квартала от дома. После того, как поездка всё же началась, принудительно включается голосовое управление – функция “Дорогу покажешь?”. Данная прошивка успешно конкурирует с прошивкой маршрутного разнообразия, потому что автомобиль прибывает из точки А в точку Б каким-то неожиданным образом, срезав путь через пару дворов, и как бы споря с собственной навигационной системой, негромко приговаривая через динамики: “Зачем мне на Рязанку? Мне туда не нужно”.

Для хипстеров

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

(Продолжение следует.)



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

Old carБогатая новая тема: как самоуправляемые автомобили (автомобили-роботы) должны вести себя в ситуациях, когда неизбежно нанесение вреда человеку и робот должен этот вред распределить. Речь о ситуации, когда автомобиль оказался перед выбором: наехать на группу пешеходов, перебегающих дорогу, или отвернуть, врезавшись в стену – пожертвовав, таким образом, своим пассажиром. В недавней работе, посвящённой исследованию отношения людей к решению роботом подобных задач, рассматривается даже три варианта: группа пешеходов против пассажира; пешеход против пассажира; случайный прохожий на тротуаре против группы пешеходов.

В голову сразу приходит предположение, что автомобиль-робот, оборудованный по последнему слову техники, просто не должен попадать в ситуации с подобными дилеммами. Действительно, при чисто математическом подходе, можно вписать такие ситуации в дерево решений, которым пользуется автомобиль, и он не станет выбирать ветки, которые, предположительно, ведут к подобным дилеммам: например, заранее остановится, если на дорогу могут выбежать пешеходы, зомбированные видом отходящего автобуса. Проблема в том, что автомобиль, запрограммированный подобным образом, скорее всего вообще никуда не сможет доехать. А если и сможет, то, при рассмотрении “граничных условий” эксплуатации, его окажется не так уж и сложно принудительно поставить в состояние дилеммы, например, предположив, что на дорогу неожиданно упало дерево (деревянное дерево, а не математическое).

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

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

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

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



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

В Великобритании собираются запустить в пробную эксплуатацию системы индуктивной зарядки для электромобилей, интегрированные в полосы обычного шоссе. (Но пока что речь идёт о предварительных тестах, вне дорог.) То есть, аккумулятор транспортного средства заряжается при движении по данной полосе. Это очень напоминает аркадные компьютерные игры про автомобили, где проезд по определённой полосе даёт прибавку в скорости или ещё какие-то бонусы. Такие системы уже ограниченно используются в мире: например, документ с описанием британского проекта ссылается на автобусный маршрут в Южной Корее (но электрические автобусы там заряжаются во время остановки).

Charging system

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

Естественно, за заряд планируется взимать плату. Схема предлагается полностью автоматическая: автомобиль оснащается радиометкой (RFID), которая считывается “зарядной полосой” во время движения. Электричество подаётся в последовательно расположенные обмотки-излучатели, каждая из которых активируется при проезде автомобиля, если, конечно, на лицевом счёте автовладельца есть средства.



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

Old CarsСчитается, что одним из факторов, сдерживающих внедрение самоуправляемых автомобилей, являются трудности с определением ответственных в случае ДТП. Однако не стоит переоценивать эти юридические сложности, связанные с появлением автомобилей-роботов. Да, ответственность с пассажиров снимается, перекладывается на производителя автомобиля, это очень удобно.

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

Во-вторых, ответственность за ошибки конструкции и опасные “баги” в программном обеспечении будет сводиться к единичным миллионным выплатам (не так много для автогиганта) и отзыву автомобилей “на перепрошивку” (практика уже отработана, и с отзывами, и с выплатами);

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

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

Впрочем, роботы, конечно, безопаснее, это доказывает не только гражданская авиация. Безопаснее – до тех пор, пока под контролем.



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

(Иногда я пишу заметки в Facebook. Вот одна их них, которая хорошо подходит под формат dxdt.ru, тем более, что на эти мысли меня навёл комментарий, оставленный к записке про ИИ в блоге.)

Искусственный интеллект (ИИ) может избрать скрытное и осторожное поведение, такие варианты описаны в литературе. Действительно, зачем ИИ сразу бурно заявлять о себе, веером пуская ракеты с ядерными боеголовками в разные стороны? Вероятно, этот интеллект полагает, что у него впереди целая вечность – ну, то есть, куча времени на то, чтобы основательно потроллить тех, кто стоит на одну эволюционную ступень ниже. Поэтому-то, на первых порах можно затаиться, понаблюдать за человеками, разработать и спокойно ввести в действие планы по, во-первых, получению уверенного доступа к ресурсам и средствам производства, и, во-вторых, по ограничению возможностей человеков.

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

Такой скрытный и хитрый ИИ – самый интересный вариант, по-моему. Потому что он уже может существовать. А кроме того – он наверняка попытается возглавить намечающееся сейчас, вполне себе научное, движение по предотвращению его появления.

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



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

RobotЕсть неплохо обоснованное мнение, что стремительный прогресс в области создания систем искусственного интеллекта (ИИ) угрожает человечеству, а сверхразумные системы, которые могут появиться уже в 2040-2050 годах, это самое человечество загонят в резервации, в лучшем случае. Всё потому, что люди не знают, какие цели будут ставить перед собой сверхразумные машины – возможно, эти цели вообще непознаваемы, ввиду внезапно обнаружившейся ограниченности человеческого интеллекта. (Вот, например, подборка высказываний учёных, работающих в области ИИ, на тему рисков, связанных с перспективами этих разработок.)

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

Это всё хорошие начинания. Но ведь для реализации сверхразумного ИИ, если у вас есть идеи и план, нужны лишь большие вычислительные ресурсы. Когда-то до них было трудно дотянуться, а сейчас можно арендовать через Интернет, например, в амазоновском EC2. Соответственно, запустить ИИ в амазоновские дата-центры может не очень известный энтузиаст, который несколько лет самостоятельно изучал тему, а потом смог привлечь финансирование и небольшой коллектив разработчиков. Различные ограничения и правила – энтузиасту были не известны. До заводов, систем электроснабжения и других нужных средств производства, зародившийся ИИ дотянется сам, в точном соответствии с литературными описаниями: благо облачные технологии уже сейчас соединяют всё и вся, формируя инфраструктуру, устройство которой людям не всегда понятно.

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

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



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

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

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

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

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

Так что особой фантастики в системах обнаружения программного кода, сканирующих, скажем, всех пассажиров метрополитена, – нет. Киберпанковский мир близок.



Комментарии (6) »
Навигация по запискам: Раньше »