Темой октябрьского номера журнала Computer в этом году является «надежные аппаратные средства» (Trusted Hardware), но полноценная тематическая подборка отсутствует. Теме номера посвящены лишь две из пяти больших статей. Тем не менее, начну обзор именно с них.
Статью «Прекращение пиратства в области интегральных схем» («Ending Piracy of Integrated Circuits») написали Джаррод Рой, Фариназ Кушанфар и Игорь Марков (Jarrod A. Roy, IBM Corp., Farinaz Koushanfar, Rice University, Igor L. Markov, University of Michigan, Ann Arbor).
Значительный рост стоимости производства вынуждает компании, производящие полупроводниковую аппаратуру, переходить к использованию контрактной модели, в которой ведущие фирмы-разработчики привлекают к производству и сборке иностранные предприятия с меньшими операционными расходами. Например, компания AMD передает производство некоторых видов своих интегральных схем предприятиям, разбросанным по всему миру, а Texas Instruments решила отказаться от внутреннего производства 45-нанометровых полупроводниковых устройств, передав его своим партнерским компаниям за пределами США.
В последние годы все более важной проблемой правительства и индустрии становится предотвращение краж конструкторских решений и пиратского воспроизведения интегральных схем иностранными партнерами компаний-производителей полупроводниковых приборов. EPIC (Ending Piracy of Integrated Circuits – прекращение пиратства в области интегральных схем) – это новый метод, защищающий чипы в кремниевой «мастерской» путем автоматического и уникального блокирования каждой интегральной схемы. Каждая интегральная схема блокируется за счет использования методов асимметричного шифрования, и для дешифрации требуется специальный внешний ключ. Этот ключ уникален для каждого чипа, его невозможно воспроизвести, и его может сгенерировать только владелец соответствующих прав на интеллектуальную собственность. Кроме таких автоматически производимых идентификаторов чипов, EPIC опирается на новый комбинационный метод блокирования и оригинальное использование шифрования с открытым ключом (public-key cryptography, PKC).
Обзор EPIC: (a) маршрут проектирования с учетом возможности пиратства, (b) активизация и тестирование чипа.
Для применения метода EPIC не требуются существенные изменения в принятых подходах к разработке, верификации и тестированию интегральных схем. Эксперименты показывают, что использование EPIC приводит лишь к минимальному возрастанию потребляемой мощности и незначительному увеличению задержки. Основные компоненты, требуемые для поддержки EPIC, уже интегрированы в существующие интегральные коммерческие схемы. Авторы проанализировали ряд возможных пиратских атак и пришли к выводу, что EPIC позволил бы все их отразить.
Авторами статьи «Надежные аппаратные средства: выявление и классификация аппаратных троянов» («Trustworthy Hardware: Identifying and Classifying Hardware Trojans») являются Рамеш Карри, Джевавиян Раджендран, Курт Розенфельд и Махаммад Техранипур (Ramesh Karri, Jeyavijayan Rajendran, Polytechnic Institute of New York University, Kurt Rosenfeld, Mohammad Tehranipoor, University of Connecticut).
В течение десятилетий цифровые системы разрабатывались в предположении, что используемые аппаратные средства, хотя не являются абсолютно надежными, не содержат злонамеренных элементов. Это предположение становится все более сомнительным. Во всей индустрии электронных аппаратных средств внутренние процессы компаний-поставщиков постепенно заменяются внешними альтернативами. Собственные системы автоматизации проектирования (САПР) этих компаний вытесняются коммерческим программным обеспечением. Собственные библиотеки для синтеза логических ячеек замещаются IP-ядрами (intellectual property core) сторонних компаний. Производство фотошаблонов и изготовление полупроводниковых приборов отдается внешним компаниям, производящим также и постпроизводственное тестирование. Как можно обеспечить надежность систем при отказе от контроля за производством базовых аппаратных средств?
В соответствии с исследованием, выполненным в 2005 г. Научным советом министерства обороны США (Defense Science Board), в Министерстве обороны потребляется только один или два процента интегральных схем от их общего объема потребления в США. Хотя это составляет лишь малую долю коммерческого рынка, эти интегральные схемы критичны для национальной безопасности. Желательно было бы наличие отдельной, «безопасной» цепочки поставок таких чипов, но это невозможно по экономическим соображениям. Неизбежна зависимость критических систем от средств электроники, произведенных на заводах, которым невозможно полностью доверять.
Нарушение безопасности может произойти на разных стадиях цепочки поставки электроники, не только на стадии производства. Федеральное бюро расследований США в 2004-2006 обнаружило контрафактные маршрутизаторы Cisco в оборонных, финансовых и университетских сетях. Эти подделки отличались низким качеством производства и высокой интенсивностью сбоев. Что позволило контрафактной продукции так просто проникнуть в цепочку поставок? ФБР установило, что американские компании закупали эти электронные устройства напрямую или через посредников у ненадежных источников в зарубежных странах. Кроме того, эти устройства приобретались в режиме онлайн на сайтах аукционов или реселлеров. Хотя в этих случаях злоумышленники, очевидно, желали всего лишь заработать, данный пример живо иллюстрирует уязвимость типичных цепочек поставок.
Проблема низкого качества контрафактной электроники вторична по отношению к угрозе безопасности, возникающей из-за уязвимостей в цепочке поставок. К числу примеров возможных злонамеренных действий, производимых недостоверными интегральными схемами, относятся вывод системы из строя за счет срабатывания «кремниевой бомбы с часовым механизмом», похищение секретной информации с использованием некоторого «стороннего канала» (side channel) или нанесение вреда путем удаленного управления системой. В то время как раньше заклинаниями служили «проектирование с учётом технологических требований» («design for manufacturability») и «проектирование контролепригодных схем» («design for testability»), новым заклинанием должно стать «проектирование с учетом требований надежности» («design for trust»).
Надежные аппаратные средства должны отвечать следующим требованиям:
- демонстрировать только те функциональные возможности, поддержка которых предусматривалась при проектировании – не больше и не меньше;
- скрывать любую информацию о выполняемых вычислениях, которую можно было бы получить через сторонние каналы (например, потребляемая мощность или величина задержки);
- быть открытыми только для своих разработчиков и полностью закрытыми для всех прочих, кому не следует знать что-либо о внутренних деталях аппаратуры.
Простой троян. При обычном функционировании чип посылает на выход зашифрованные данные. После активизации трояна чип обходит модуль шифрования и посылает на выход исходный текст, искажая намерения проектировщика чипа.
В качестве первого шага на пути к созданию «маршрутной карты» надежной аппаратуры необходимо постараться понять возможные угрозы, наибольшую из которых представляют аппаратные трояны. Аппаратный троян – это злокозненная и умышленно тайная модификация некоторого электронного устройства, например, интегральной схемы. Троян может изменить функциональность чипа и, тем самым, подорвать надежность систем, в которых используется троянский чип. В простом примере, показанном на рисунке, троян в канале передачи данных является простым мультиплексором. В статье приводится классификация и анализ разновидностей более сложных аппаратных троянов.
Вне тематической миниподборки в октябрьском номере журнала опубликованы три больших статьи. Статью «Реформирование учебных программ в области информационно-коммуникационной технологии с целью лучшего удовлетворения профессиональных потребностей» («Reforming ICT Graduate Programs to Meet Professional Needs») представили Серджио Лиус Торал, Мария Росио Мартинез-Торрес и Федерико Барреро (Sergio Luis Toral, María Rocio Martínez-Torres, Federico Barrero, University of Seville).
В эпоху знаний информационно-коммуникационная технология (ИКТ) обладает почти неограниченной сферой применений, и высшие учебные заведения должны содействовать реализации этого потенциала. К сожалению, учебные программы в области ИКТ не всегда поддерживают уровни компетентности и профессионализма, требуемые обществом и индустрией ИКТ. Осознавая наличие этого разрыва, многие страны Европейского союза стремятся реформировать свои системы высшего образования. Отчасти реформы инициируются за счет различных событий на национальном уровне, однако также имеется стремление к получению общего качественного выигрыша путем поддержки и развития стандартов образовательных систем в масштабе всей Европы. Например, Болонский процесс концентрируется на выполнении правовых реформ, а также на развитии педагогической инфраструктуры, способствующей большему привлечению студентов к учебному процессу.
Одной из главных целей Болонского процесса является формирование Общеевропейского пространства высшего образования (European Higher Education Area, EHEA), содействующего развитию подходов, ориентированных на учащихся. В свете этих изменений разработчики учебных программ должны стремиться к лучшему пониманию требуемых компетенций – знаний и навыков, которыми должны обладать студенты, становясь профессионалами в некоторой конкретной области. Эти компетенции должны также содействовать самообразованию на протяжении всей жизни профессионалов в своей и соседних профессиональных областях.
Для определения таких компетенций в Европейском союзе выполнялось несколько проектов, из которых наиболее заметными являются Tuning Project, Definition and Selection of Competencies (DeSeCo) и Career-Space. Наибольшее отношение к ИПК имеет проект Career-Space, результаты которого включают рекомендации как от правительства Европейского союза, так и от ведущих представителей индустрии ИПК. К настоящему времени удалось создать углубленные профессиональные профили в области ИКТ.
Чтобы способствовать лучшему понимаю компетенций, связанных с этими профилями, авторы проанализировали учебные магистерские программы в области ИКТ в странах, активно участвующих в Болонском процессе, и сравнили эти программы с профилями, которые были получены при выполнении проекта Career-Space. Это сравнение показывает, что только в 8,6 этих программ студентам обеспечиваются компетенции более двух профилей. В частности, недостаточное внимание уделяется менеджменту в области ИКТ. Результаты исследования могут лечь в основу плана реформ учебных программ, потому что целью реформ должно являться обеспечение более полного соответствия учебных программ требованиям практики.
Нир Кшетри (Nir Kshetri, University of North Carolina–Greensboro) представил статью «‘Облачные’ вычисления в развивающихся экономиках» («Cloud Computing in Developing Economies»).
Сектору «облачных» вычислений (Cloud Computing) в развивающихся странах уделяется значительное внимание со стороны международных и местных IT-компаний, национальных правительств и международных организаций. Например, IBM образовала центры «облачных» вычислений в Китае, Индии, Вьетнаме, Бразилии и Южной Корее. Активный поиск возможностей в развивающемся мире ведут другие игроки cloud computing: Microsoft, VMware, Salesforce, Dell и Parallels. Возможно, еще большее впечатление производит то, что в «облачный» фургон успели запрыгнуть и собственные компании развивающихся стран. В развивающиеся экономики притекают венчурный капитал и другие инвестиции, имеющие отношение к «облачным» вычислениям. Вероятно, можно сказать, что большего внимания развивающийся мир не получал в связи ни с какой другой существенной технологической инновацией.
Однако сведения и выводы о потенциале использования «облачных» вычислений в развивающемся мире, почерпнутые из обзоров, результатов исследования и опыта компаний, являются путаными и в значительной мере несогласованными. Некоторые аналитики полагают, что развивающиеся страны будут привлекательным рынком для «облачных» служб, и предсказывают, что благодаря применению этой технологии в развивающихся странах реальностью скоро станут «здравоохранение 2.0», «банковское дело 2.0» и «образование 2.0».
Теоретически, развивающиеся экономики могли бы догнать развитые страны, если бы «облачная» среда обеспечила им доступ к таким же IT-инфраструктуре, центрам данных и приложениям. Вероятно, «облачный» подход позволяет сократить расходы на поддержку инфраструктуры и выравнивает шансы на достижение успеха малых и средних предприятий. Кроме того, программное обеспечение в «облачной» среде было бы проще устанавливать, поддерживать и обновлять, чем в клиент-серверной среде, в которой программное обеспечение требуется инсталлировать и конфигурировать, обновлять после выхода каждой новой версии. «Облачные» службы обеспечивают пользователям возможность масштабирования при повышении уровня требований. Сторонники «облачного» подхода также утверждают, что по мере того, как программное обеспечение становится свободным за счет использования Web-приложений или доступным в виде служб, может уменьшиться уровень пиратского использования программного обеспечения. Наконец, «облачные» вычисления могли бы содействовать росту внутренней и внешней предпринимательской активности IT-компаний развивающихся стран.
Однако фактически отсутствуют эмпирические данные о том, каким образом эти теории, идеи и гипотезы можно было бы транслировать на язык практики. Пристальный взгляд на раннюю стадию развития «облачной» индустрии показывает, что на пути к развитию и распространению информационно-коммуникационных технологий (ИКТ), а также поднятию уровня предпринимательской активности в развивающихся странах центральными остаются экономические и организационные проблемы. Например, «облачный» подход по своей природе связан с несколькими аспектами безопасности данных.
В последних обзорах отмечается, что многие организации не готовы к «облачной» безопасности. В апреле 2010 г. International Data Corporation (IDC) провела опрос в связи с «облачными» вычислениями в Австралии, Китае, Гонконге, Индии, Южной Корее и Сингапуре. Результаты опроса показывают, что менее 10% респондентов уверены в мерах безопасности, обеспечиваемых «в облаках». Критики также отмечали наличие проблем с пропускной способностью сети и отсутствием связи с заказчиками и поставщиками. Важнейшей проблемой «облачных» вычислений в развивающихся странах является разрыв между теоретической возможностью и практической достижимостью.
Последнюю большую статью номера написали Хуан Хамерс и Ливен Екхаут (Juan Hamers, Lieven Eeckhout, Ghent University, Belgium). Статья называется «Предсказание объема требуемых ресурсов на основе сценариев для обработки медийных данных с учетом качества обслуживания» («Scenario-Based Resource Prediction for QoS-Aware Media Processing»).
Критической проблемой проектирования встраиваемых процессоров является возможность обеспечения все более высокой производительности при постоянно снижающемся уровне энергопотребления. Эту тенденцию можно отчетливо видеть на примере эволюции рынка мобильных телефонов в последние десять лет: сегодняшние смартфоны обеспечивают выполнение различных приложений, включая мультимедийные приложения, игры, поиск в Web, мгновенный обмен сообщениями, электронную почту и т.д. Вместе с тем, время жизни батарей значительно возросло. Другими словами, индустрия встраиваемых процессоров перешла к использованию многоядерной обработки данных для обеспечения высокой производительности, одновременно с этим реализуя методы управления энергопотреблением, такие как динамическое масштабирование напряжения и частоты (dynamic voltage and frequency scaling, DVFS) для снижения энергопотребления.
Для большей части приложений, работающих на мобильных устройствах, имеются требования мягкого реального времени – например, медиа-декодеры должны декодировать видеокадры в пределах некоторого окна времени, около 30 миллисекунд. Аналогично, от интерактивных приложений требуется поддержка сжатого времени отклика. Для таких приложений от основной системы требуется обеспечение некоторого уровня качества обслуживания (quality of service, QoS). Однако трудно предсказать объем требуемых ресурсов процессора и энергии, чтобы, например, успеть декодировать следующий кадр до истечения заданного промежутка времени. Проблема обеспечения QoS усложняется при использовании многоядерных процессоров, поскольку на разных ядрах выполняются разные приложения, совместно потребляя ресурсы, в частности, батарей. Тем самым, проектировщики сталкиваются с проблемой снижения энергопотребления при одновременном обеспечении заданного уровня QoS для каждого из одновременно выполняющихся приложений.
Обработка медиа-данных на основе сценариев включает получение характеристик большого набора медиапотоков; идентификацию фреймов с близким уровнем сложности декодирования кадров, или сценариев; аннотацию произвольных медиапотоков идентификаторами сценариев; профилирование клиентских платформ для обеспечения возможности предсказания объема требуемых ресурсов и выполнения декодирования медиапотоков с эффективным потреблением энергии.
Авторы разработали основанную на сценариях среду управления ресурсами процессора при одновременной поддержке QoS для современных многоядерных процессоров, на которых выполняются приложения обработки медиапотоков. Как показано на рисунке, в среде поддерживаются пять основных шагов.
- Получение характеристик медиапотоков. Сначала в режиме офлайн производится платформенно-независимый анализ набора медиапотоков, описание которых присутствует в базе данных.
- Идентификация сценариев. С использованием покадровых характеристик выявляются группы кадров, называемые сценариями, со схожими показателями сложности декодирования. Основное соображение состоит в том, что для обработки всех кадров, относящихся к одному и тому же сценарию, требуются схожие ресурсы процессора и энергии. Сценарии не зависят от используемой платформы и могут использоваться для различных архитектур процессоров и медиа-декодеров.
- Аннотирование сценариев. Далее произвольные медиапотоки аннотируются метаинформацией сценариев. Это можно делать на шаге после кодирования медиапотока или в процессе его кодирования.
- Профилирование клиентской платформы. Затем выполняются прифилирование клиентской платформы и привязка платформенно-независимых сценариев к платформенно-зависимым данным о производительности процессора и источниках энергии.
- Предсказание ресурсов. Профилирование клиента делает возможным декодирование медиапотоков с эффективным энергопотреблением. В частности, поставщик контента может определить (на основе сценарийного профилирования клиента и различных сценариев, обнаруженных в медиапотоке), обладает ли клиент достаточной мощностью, чтобы быть в состоянии обработать большую часть кадров за заданное время, или достаточна ли емкость батарей, чтобы можно было декодировать весь поток. После этого клиент может решить не загружать медиапоток или потребовать тот же медиаконтент в другом формате, чтобы суметь его декодировать при наличии имеющихся ресурсов. Другими словами, предсказание ресурсов позволяет клиенту и поставщику контента определить, какое QoS следует потребовать и можно обеспечить соответственно.