Смарт-карты: архитектура и функционирование

  • Вид работы:
    Курсовая работа (т)
  • Предмет:
    Информационное обеспечение, программирование
  • Язык:
    Русский
    ,
    Формат файла:
    MS Word
    139,23 Кб
  • Опубликовано:
    2013-11-26
Вы можете узнать стоимость помощи в написании студенческой работы.
Помощь в написании работы, которую точно примут!

Смарт-карты: архитектура и функционирование

Содержание

1. Общие характеристики смарт-карт

. Архитектура микросхемы

. Физическая защита

. Защищенная схема инициализации карты

. Комплексный подход к обеспечению безопасности смарт-карт

 

Введение


Смарт-карта (от английского “smart card” - интеллектуальная карта) пластиковая карта со встроенной микросхемой и процессором, способная выполнять различные программы. В общем, размер, толщина и гибкость смарт-карты разработаны для защиты карты от физических повреждений. Однако, это также ограничивает функциональные способности карты, как-то ёмкость памяти, мощность процессора и других ресурсов, которые могут быть размещены на карте. Важным свойством смарт-карты является ее способность обеспечить безопасную среду для данных и программ приложений. Надежность и безопасность смарт-карты обусловлена тем, что она может контролировать доступ к информации, которая содержится в ее памяти. В сущности, смарт-карта представляет собой защищенное устройство, предназначенное прежде всего для контроля доступа к секретной информации, аутентификации, конфиденциальности и т.д. Смарт-карты являются в некотором роде камнем преткновения в мире компьютерной безопасности. Однако, довольно мало работ посвящено анализу информационной безопасности смарт-карт и тому особому окружению, в котором работают смарт-карты. Целью курсовой работы является изучение надежности и применения смарт- карт в разных сферах, а также перспектив её развития.

 

1. Общие характеристики смарт-карт


Смарт-карта представляет собой микрокомпьютер, реализованный в одном кристалле кремния в виде интегральной схемы (микросхемы), в общем случае состоящей из:

-   центрального процессора (обычно 8- или 1б-разрядного RISC-процессора, хотя на рынке присутствуют и 32-разрядные процессоры);

-        оперативной памяти RAM (обычно объемом от 256 байтов до 2 Кб)

-        постоянного запоминающего устройства ROM (обычно объемом 16-136 Кб, имеются карты с размером ROM около 400 Кб);

-        энергонезависимой перезаписываемой памяти EEPR0M (обычно размером 2-64 Кб, хотя известны карты с EEPR0M в 1 Мб);

-        магистральной шины, состоящей из шины управления, шины данных и адресной шины;

-        модуля управления памятью MMU (Memory Management Unit), обеспечивающего контроль доступа центрального процессора к различным модулям памяти микросхемы;

-        универсального асинхронного приемопередатчика (UART - Universal Asynchronous Receiver Transmitter), работающего через единственную линию ввода/вывода последовательного интерфейса;

-        радио приемо-передающего устройства для бесконтактного интерфейса;

-        генератора тактовой частоты на основе кварцевого резонатора, криптографических сопроцессоров, генератора случайных чисел (RNG - Random Number Generator), генератора проверочной последовательности циклического кода и т.п.

NVM (Non-Volatile Memory) обозначает энергонезависимую перезаписываемую память, в качестве которой сегодня чаще всего используется память EEPROM [1].

Увеличенная фотография микросхемы, имеющей размеры 4,28 мм х 4,96 мм (площадь 21,23 мм2), показана на рисунке.


На фотографии выделены зоны размещения на кристалле памяти RAM (1,3 Кб), ROM (32 Кб), EEPROM (16 Кб), центрального процессора ЕС02000 и криптографического сопроцессора АСЕ. Взаимодействие процессора с другими компонентами микросхемы (например, модулями памяти) происходит с помощью магистральной шины. По этой шине осуществляется не только передача данных, но и адресация устройств, а также обмен специальными служебными сигналами. Смарт-карты, в которых микросхема содержит только модули памяти и не обладает микропроцессором, называют картами памяти или синхронными картами. Такие карты заметно дешевле карт с микропроцессором. Синхронные карты широко используются, например, для оплаты телефонных разговоров в уличных таксофонах, контроля доступа, оплаты проезда в системах общественного транспорта и т.п. Карты памяти применяются для хранения информации в постоянном режиме (информация только считывается с карты) или в режиме с перезаписью. На контактную поверхность карты памяти из микросхемы выведены линии управления адресацией ячеек памяти (линии адресной шины) и линии чтения из выбранных терминалом ячеек памяти и записи в них (линии шины данных). Поскольку на карте нет центрального процессора, поддержка протоколов обмена данными канального и более высоких уровней модели взаимодействия открытых систем невозможна. Поэтому управление обменом данными между карт-ридером и картой происходит на физическом уровне и выполняется карт-ридером. Чаще всего в картах памяти применяется синхронный механизм обмена данными, откуда следует одно из названий карты. В синхронном режиме карт-ридер передает на карту только команды нижнего уровня. В командах указывается адрес памяти и действие, которое нужно произвести с данными по этому адресу: прочитать данные или записать данные. В последнем случае команда также содержит данные, которые должны быть записаны по указанному адресу. В некоторых картах памяти в целях повышения безопасности для записи данных и чтения данных используются секреты, разделяемые картой и терминалом. Терминал должен продемонстрировать карте знание ее секрета, для того чтобы получить разрешение на чтение защищенных таким образом данных или запись данных. Карты, имеющие наряду с модулями памяти центральный микропроцессор, называют асинхронными или микропроцессорными (МПК). Здесь будет идти речь только о микропроцессорных картах. Операционная система микропроцессорных карт поддерживает файловую систему с разграничением доступа к отдельным файлам, криптографические функции, позволяющие существенным образом повысить безопасность операций, выполненных с использованием МПК, протоколы связи карты с ридером и т.п. Для выполнения различных прикладных функций в памяти карты хранятся в общем случае несколько программ-приложений. Например, на карте могут размещаться приложения, поддерживающие обработку финансовых транзакций, идентификацию, аутентификацию держателя карты, схему лояльности, контроль доступа и т.п. Карта может быть контактной, бесконтактной и комбинированной. В первом случае микросхема карты соединена с внешним компьютером с помощью электрического соединения. Физически такое соединение осуществляется через контактную площадку, обеспечивающую восемь отдельных электрических соединений (на практике чаще всего используется пять-шесть соединений) с внешним компьютером, как показано на рисунке.


К используемым контактам относятся:

VCC - контакт для подачи на микросхему внешнего рабочего напряжения питания;

RST - контакт для подачи сигнала, с помощью которого происходит инициализация (перезапуск) микросхемы перед выполнением новой операции;

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

GND - контакт для линии заземления, обеспечивающей общую электрическую землю карт-ридера и микросхемы;

I/O - контакт для линии ввода/вывода, обеспечивающей полудуплексный канал связи между карт-ридером и микросхемой;

VPP - контакт для подачи напряжения питания, используемого для программирования памяти EEPROM [2].

Пять верхних в списке контактов являются обязательными для использования. Последний шестой контакт считается опциональным, и например, в стандарте EMV не используется совсем. Контакт VPP в основном применялся в первых микросхемах, в которых был необходим отдельный источник питания для программирования памяти EEPROM (программирование памяти требует более высокие значения напряжения). Практически все современные микросхемы способны извлекать программирующее напряжение из питания VCC и обходятся без контакта VPP.

 

. Архитектура микросхемы


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

В чем смысл такого подхода?

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

-        В обеспечении заданной функциональности в микросхеме малого размера.

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

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

Можно с уверенностью говорить, что потребность в безопасных переносных средствах, способных хранить информацию и предоставлять безопасную платформу для некоторой вычислительной деятельности, явилась толчком к созданию смарт-карт. В силу высокой защищенности аппаратно-программной платформы смарт- карты она часто используется в качестве надежного средства аутентификации и идентификации ее держателя, а также для выполнения криптографических операций в защищенном режиме. Под защищенным режимом понимается физически защищенный от внешнего наблюдателя характер выполнения картой криптографических операций и хранения ключей. В этом случае речь идет о приложении карты, называемом модулем безопасности или Security Application Module (SAM). В качестве модуля безопасности смарт-карта применяется во многих системах, устройствах. Среди хорошо известных примеров такого использования МПК - SIM-карта сотового телефона, выполняющая функцию аутентификации владельца телефона. Малые же размеры микросхемы позволяют разместить ее в пластиковой карте. Встроенный в пластиковую карту чип при ношении карты, например в бумажнике, подвергается различным физическим воздействиям. Карта изгибается в разные стороны и может подвергаться неожиданным нагрузкам. В обычном электронном оборудовании, при котором компоненты связаны друг с другом электрическим монтажом, и даже в случае соединительных линий на печатной плате, такая физическая среда является причиной многих неисправностей. Когда же все элементы упакованы в одном чипе, то нагрузки прикладываются ко всем элементам в равной степени. Таким образом, если чип сможет в целом сохраниться, то и его компоненты скорее всего будут работоспособны.

3. Проблемы обеспечения безопасности смарт-карт

Безопасность смарт-карты обеспечивается при эффективном взаимодействии средств защиты следующих четырех компонентов:

корпус карты;

аппаратное обеспечение в виде чипа;

операционная система;

приложение.

В пластиковый корпус карты встраивается микроконтроллер [3]. Многие из элементов безопасности, применяемые для корпуса карты, читаются не только машиной, но и могут быть визуально проверены людьми. Методы, используемые для этих целей, характерны не только для смарт-карт, они применяются также для карт других типов. Остальные компоненты - аппаратное обеспечение в виде чипа, операционная система и приложение - защищают данные и программы в микроконтроллере смарт-карты. Безопасность смарт-карты гарантируется только тогда, когда правильно работают все эти компоненты и их защитные механизмы. Если любой из этих компонентов выходит из строя или если какой-либо один из них не удовлетворяет предъявляемым требованиям, смарт-карта теряет свою безопасность. Существуют различные подходы к систематизированной классификации атак на смарт-карты. Ниже будут рассмотрены схемы классификации атак на смарт-карты по наиболее существенным признакам.

Как определено стандартом ISO10202-1, для классификации возможных атак по времени их проведения могут быть использованы фазы жизненного цикла смарт-карты. Рассмотрим классификацию атак в трех основных фазах жизненного цикла смарт-карты: разработке смарт-карт; производстве смарт-карт; применении смарт-карт в приложениях.

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

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

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

Атаки на смарт-карты можно разделить по уровню их проведения на три основных категории:

атаки на социальном уровне;

атаки на физическом уровне;

атаки на логическом уровне [4].

Атаки на социальном уровне в основном направлены против людей, которые работают со смарт-картами на разных фазах жизненного цикла карты. Объектами атаки могут быть разработчики чипов, разработчики программного обеспечения, работники полупроводниковых производств, держатели смарт-карт. Эти атаки могут быть частично отражены техническими мерами, но главным образом их нужно предотвращать с помощью организационных мер. Например, можно легко предотвратить перехват PIN-кода при подсматривании процесса его набора на клавиатуре, если установить непрозрачные экраны по обе стороны клавиатуры. Атаки на социальном уровне против программистов смарт-карты становятся бесполезными при разработке ими процедур, которые будут использоваться открыто, а также при привлечении третьей стороны для оценки программных кодов, разработанных этими программистами. В этом случае безопасность будет определяться только секретными ключами, а знания разработчиков программного обеспечения не смогут быть использованы атакующими. Атаки на смарт-карты на физическом уровне обычно требуют применения сложного технического оборудования, поскольку атакующему необходимо получить физический доступ к аппаратным средствам микроконтроллера смарт-карты. Эти атаки могут быть либо статическими, при которых к микроконтроллеру не подается никакое питание, либо динамическими, при работающем микроконтроллере. Статические атаки на физическом уровне не накладывают никаких временных ограничений на атакующего, который может выполнять свои действия в своем собственном ритме. Однако при динамической атаке требуются соответствующее измерительное оборудование и достаточно быстрая обработка данных.

На логическом уровне были осуществлены наиболее успешные атаки на смарт-карты. Эта категория атак включает классический криптоанализ, а также атаки, использующие известные неисправности в операционной системе смарт-карты и «троянских коней» в исполняемом коде приложений смарт-карты.

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

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

 

. Физическая защита


Целью физической защиты является предотвращение попыток непосредственного извлечения либо модификации информации микропроцессора (МП) смарт-карты в обход предоставляемого интерфейса. Обычно задачей нарушителя является получение некоей ключевой информации, которая позволит осуществить доступ к ресурсам карты легальными методами.

Основные меры противодействия:

-   Разработчики микрокомпьютеров должны сознательно обеспечивать невозможность анализа работы собственного изделия в обход стандартного программного интерфейса.

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

Для каждого вида доступа определяются атрибуты доступа, то есть условия, при которых доступ данного вида возможен. Обычно выделяют четыре атрибута доступа:

-   Проверка наличия санкции владельца карты, производимая путем ввода владельцем пароля.

-        Аутентификация внешнего окружения - той ответной части, которая взаимодействует с картой (центр авторизации, терминальное оборудование).

-        Требование шифрования передаваемых сообщений.

-        Требование снабжения передаваемых сообщений имитовставкой.

Атрибуты доступа должны быть независимы друг от друга, то есть разным видам доступа могут назначаться различные наборы атрибутов и разные наборы ключей. В противном случае выбор эффективных протоколов обмена будет сильно ограничен или невозможен [5].

Хорошим правилом считается использование общих атрибутов доступа и наборов ключей для целой директории, а также наследование их из объемлющей директории.

Серьезная система разграничения доступа должна предусматривать спецификацию ключей, то есть четкое определение, как, при каких обстоятельствах и в каких целях тот или иной ключ может использоваться. Специфицируются:

криптографический алгоритм;

операции допустимые с данным ключом;

условия блокирования/разблокирования ключа и др [6].

Ключи, используемые для аутентификации владельца карты и внешнего окружения, обычно блокируются после заданного числа идущих подряд неверных предъявлении. Это особенно актуально для аутентификации владельца, поскольку обычно длина таких ключей не превышает 4-6 знаков и становится реальным полный перебор вариантов.

Должна предусматриваться диверсификация ключей с целью получения уникальных сессионных ключей для каждой транзакции.

5. Защищенная схема инициализации карты


Грамотно построенная схема инициализации карты чрезвычайно важна для защиты, поскольку карта наиболее уязвима именно на подготовительных этапах по следующим причинам:

на карте отсутствуют ключи, а значит, не могут поддерживаться криптографические протоколы аутентификации и передачи сообщений, в том числе и ключей;

на карте отсутствует идентификационная информация;

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

Процесс инициализации карты охватывает следующие этапы:

изготовление микрокомпьютера;

сборка самой карты;

создание первичных структур данных на карте[7].

Определяющую роль в организации защиты на подготовительных этапах играют организационные меры. С соблюдением режима секретности должны быть выполнены следующие процедуры:

Все отбракованные МК должны гарантированно уничтожаться.

-   Присвоение каждому МК уникального серийного номера (идентификационной информации). Все МК должны быть учтены.

-        Сборка и тестирование карты. Негодные карты должны гарантированно уничтожаться.

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

 

6. Комплексный подход к обеспечению безопасности смарт-карт


Современные достижения технологии производства кристаллов позволяют в чипе прежних размеров дополнительно размещать криптопроцессоры RSA и Triple-DES, таймер, дополнительную оперативную память, одновременно два интерфейса ввода/вывода - контактный и бесконтактный, а также увеличивать разрядность процессоров с 8 до 16 бит, размеры памяти ПЗУ - до 64 Кбайт.

Современный микропроцессорный чип имеет несколько уровней защиты от несанкционированного доступа к хранимой в нем информации: программный, аппаратный и технологический.

Программный уровень реализуется средствами операционной системы, которые используют следующие способы и методы защиты:

назначение индивидуальных атрибутов файлов и индивидуальных прав доступа к ним;

доступ к файлам по заранее заданным правилам (проверка PIN-кода и аутентификация);

блокировка файлов, каталогов или карты;

защита PIN-кодом с противодействием его подбору;

взаимная аутентификация между картой и терминалом;

шифрование канала обмена карты с терминалом;

использование сеансовых (session) ключей для всех криптографических преобразований;

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

детектор пониженного и повышенного напряжения питания;

детектор пониженной и повышенной тактовой частоты;

детектор пониженной и повышенной температуры;

стирание области ОЗУ при сбросе или срабатывании датчиков;

самотестирование структуры чипа;

защита от высокочастотных помех;

генератор случайных тактов ожидания;

уникальный идентификационный номер кристалла;

защита от использования в нештатных режимах работы;

защита от накопления статистических данных по времени выполнения команд и энергопотреблению [2];

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

Вывод


Сокращение числа мошеннических операций с пластиковыми картами свидетельствует о том, что смарт-карты надежное устройство. Подделать микропроцессор, встроенный в чиповую карту, практически невозможно и намного сложнее, чем на магнитную полосу. Копирование данных, кроме как их производителя, невозможно благодаря уникальному внутреннему коду, записанному на каждой карте. Данные на карте могут быть зашифрованы. Сам чип имеет несколько степеней защиты, и подделать информацию, записанную на нем, очень трудно или вообще не возможно. Если карточка была украдена и ненадлежащий недобросовестный владелец захочет ею воспользоваться, то при неправильном введении PIN-кода чип, как правило, блокируется; Чиповые карты позволяют совершать операции в режиме offline, т.е. отсутствие связи с центром. Долговечность использования (чип изнашивается медленнее, чем магнитная полоса). Смарт-карты по сравнению с другими пластиковыми картами обладают высокими эксплуатационными характеристиками. Например: время хранения информации - 10 лет; минимальное число перезаписей - 10 000 раз; время записи одного байта информации - не более 10 мс; температура хранения - от - 20 до +55 градусов; рабочая температура - от 0 до +50 градусов;

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

Похожие работы на - Смарт-карты: архитектура и функционирование

 

Не нашли материал для своей работы?
Поможем написать уникальную работу
Без плагиата!