Comments 131
А еще в середине статьи обещано показать, как делаются закладки на фабрике, но так и не показано. Ай-яй-яй.
Про время на чтение — я постараюсь как-то считать его и писать в начале, но в целом можешь каждый раз рассчитывать на лонгрид.
Отдельно замечу, что оба описанных метода защиты от ненадёжной фабрики помогают от несанкционированного копирования, но не спасают от популярных в узких кругах “закладок”. Более того, чуть дальше я расскажу о том, как делать “закладки” в топологии самим.
Я так понял, что о закладках будет рассказано со стороны фабрики, которая хочет добавить что-то в выпускаемый по чужому заказу чип. Кейс 3 же показывает опции для разработчика по защите от реверса.
И сделать все это (включая реверс-инжиниринг) надо не срывая сроков, то есть за считанные дни или максимум пару недель до изготовления фотошаблонов, что нереально, а большой срыв сроков — это тоже проблема, особенно в том случае, если заказчик может что-то подозревать.
Сделать первую партию как надо, а потом подменить часть шаблонов тоже маловероятно, потому что новые шаблоны дороги, а фотографирование и сличение кристаллов разных партий — дешево и быстро.
Антенну же просто нельзя сделать незаметной, у нее физические ограничения есть. В условном билете метро чип маленький, а антенна для практически контактного приема данных размером с весь билет.
Поэтому, с моей точки зрения, закладки в микросхему реалистично может вносить только разработчик микросхемы или разработчик IP-блока, но никак не фабрика.
Фактуры по теме нет и не предвидится, и в итоге все сведется к комментарию выше, наполненному водой для объема, а также к разговору о том, что существование закладок можно подтвердить, показав один пример, а их несуществование надо строго доказать, что сделать невозможно.
Поэтому я пожалуй, о чем-то другом напишу в следующий раз. Но идеи интересных тем принимаются, а то у меня сейчас в черновиках только пара вещей на неопределенно далекое будущее.
Да и ещё такой весьма интересный вопрос, не так давно производители в целях борьбы с подделками собирались встраивать в каждый корпус RFID-чип с серийным номером… КАК? Опять же это вопрос касательно антенны… Для СВЧ вроде 70ГГц антенна может быть вполне расположена в пределах чипа. Даже четвертьволновой диполь уместится на 0.5мм линейного размера где-нибудь с краешка чипа, даже за контактными площадками.
0.5мм линейного размераПолмиллиметра — это не «где-нибудь с краешка чипа», а «обоже, что это за огромная дурища мозолит мне глаза на фото, мы такого точно не проектировали».
заказчик закладки, а у него может быть дополнительная информация о чипе который собираются производить на фабрикеТо есть, заказчик закладки отреверсил дизайн еще до того, как файлы с топологией попали на фабрику? Я с очень большим трудом представляю себе такой сценарий.
закладка может быть уже готовая под конкретный внешний интерфейс и вообще не подключена к внешним выводам микросхемыНо для того, чтобы подключить ее к внутренним узлам микросхемы, надо найти эти нужные внутренние узлы, а дальше собрать закладку на запасных частях — и все это в очень сжатые сроки. Собственно, для того, чтобы нужные внутренние узлы нельзя было найти за разумное время, топологию синтезируют для всей микросхемы целиком, чтобы не было логично выглядящего datapath.
Да и ещё такой весьма интересный вопрос, не так давно производители в целях борьбы с подделками собирались встраивать в каждый корпус RFID-чип с серийным номером… КАК?Если метка контактная или почти контактная — то почему бы и нет, в большой корпус микропроцессора или, скажем, DC/DC гибридного модуля такое положить вполне реально и даже может быть экономически оправдано.
Также у меня вызывает вопросы экономическая составляющая этой идеи, особенно для чипов, которые сами по себе стоят единицы центов.
Размер антенны, эффективный размер, пропорционален длине волны ею излучаемой/принимаемой. Для 20...70ГГц это миллиметры. Причем, 1/8 и даже 1/16 длины волны остаётся всё ещё приличной антенной для NFC.
Чипы стоимость которых в несколько центов никто не захочет подделывать — это слишком убыточно.
А что там с совместимостью? Метка используется для проверки оригинальности чипа разве что максимум — перед монтажом. А в работе, активные поля активирующие метку скорей всего будут влиять и на работу чипа и являются неприемлемыми в принципе.
Метка может быть даже магнитной — как штрих-код только в виде неоднородностей магнитного поля. Но тогда весело будет, ведь эту метку можно обнулить и не так уж сложно…
Для 20...70ГГцА сколько там у нас граничная частота транзисторов то в защищаемом чипе?:)
Спасибо
Когда то читал, что на пластине с процессорами разбрасывают по площади мультивибраторы для быстрой отбраковке по частоте, но подзабыл порядок.
ps В детстве задержку инвертора на К155-ой знал каждый кто умел:), а сейчас «помигать диодом на 32-битном МК» — память обычно заканчивается быстрее чем такты:)
В современных процессорах транзисторы имеют такой же порядок скорости переключения, чтобы обеспечить надёжную работу логики на гигагерцовых частотах.
спутниковая связь — непосредственно антенна там сантиметры(отражатель не антенна!), а пробивает десятки тысяч километров.
Про десятки тысяч километров вы малость загнули. :)
До спутников Iridium всего навсего около 800 км.
Все остальное — забота разработчика, и в нормальной ситуации вся валидация производится самостоятельно, а не сторонними фирмами.
Но если отдать произвольную часть разработки микросхемы (в том числе верификацию) на аутсорс, то да, можно ожидать, что на этом этапе принципиально возможна утечка информации.
Есть ещё другой вариант — когда чип изготавливается по лицензии другой фирмы, и этому чипу уже с десяток лет просто нормы меняются и требуется разработка нового шаблона…
хоть даже на свободное место и протянуть трассы к интересуемым линиям
1) Расположенный на свободном месте левый блок офигеть какой заметный, даже при простейшей визуальной инспекции.
2) «Заказчик закладки» должен быть настолько влиятелен, чтобы фабрика ради него рисковала репутацией. Вы много таких знаете?
3) Если у фабрики нет репутации, которой не хочется рисковать, то в тексте статьи есть кейс методов работы с ненадежной фабрикой.
Скопировать метку может и можно будет, но легко это сделать получится только из уже существующей, а значит на рынке появятся миллионы клонов одной и той же микросхемы, а в базе будет уже отметка где и кому продан исходный чип. Т.е. кроме всего прочего нужно будет ещё и следить чтобы не засветится с покупкой чипа с которого снимать копию. И в конце концов, можно делать клоны и без чипа вовсе, только на серьёзные фабрики не продашь, разве что только в розницу для бытовухи или собственных нужд но это ведь и уровень дохода совершенно не тот.
Вот как пример — китайские клоны PlasmaPen… внутри стоят чипы ВООБЩЕ без маркировки.
Да и ещё такой весьма интересный вопрос, не так давно производители в целях борьбы с подделками собирались встраивать в каждый корпус RFID-чип с серийным номером… КАК?
Скорее всего не в каждый корпус, а в каждую упаковку.
Подозреваю, что это журналисты «раздули» до чипа :)
Даже четвертьволновой диполь уместится на 0.5мм линейного размера где-нибудь с краешка чипа
Так-то антенны (нерезонансные) уже есть, это любая из линий питания. Проблема в блокирующих конденсаторах по питанию, но, возможно, не все ставят керамику в параллель плёночным/танталовым/какие-там-ещё-сейчас-есть, или керамика достаточно низкочастотная, чтобы десятки ГГц не пропустить.
Про время на чтение — я постараюсь как-то считать его и писать в начале
Было бы замечательно если бы эта функция была у хабра из коробки.
Хотя я-то читаю только в дороге, а она у меня очень длинная, так что я практически ни на какие объёмы не жалуюсь. Мне даже ГПиМРМ показался не очень большим (какая-то неделя чтения), хотя там ведь реально объём с три «обычных» книги.
FIB конечно манит, но ценники от 0.6М$ (чистый FIB) до 1.8М$ (комбинированный FIB-SEM с полевой эмиссией)… Впрочем, в капиталистическом мире покупать такое никогда не приходится, достаточно арендовать на время в сервисной компании… А можно чуть больше информации про то, как FIB-ом диэлектрики наносят?
По Z80 — говорят в оригинальном дизайне была ловушка от реверс-инженеринга, приводившая к неработоспособным чипам при попытке топологию скопировать визуально… Не находилась в документе или еще где-то?
По Z80 — говорят в оригинальном дизайне была ловушка от реверс-инженеринга, приводившая к неработоспособным чипам при попытке топологию скопировать визуально… Не находилась в документе или еще где-то?В этом чипе ничего такого нет, но скорее всего там примерно то же самое, что описано в этой статье.
А можно чуть больше информации про то, как FIB-ом диэлектрики наносят?Можно. По ссылке рассказ в принципе о «nanofabrication» с помощью FIB, а еще можно погуглить по запросу «FIB local deposition», там в научных статьях много найдется, если у тебя есть к ним доступ (или к сайхабу).
Нужна будет инфа — пиши-звони;)
У FIB есть система GIS (gas-injection-system), куда можно любой газ подать, разложить ионным пучком и осадить SiO2, Pt, Cr и т.д.
Мораль: используя в своем проекте EEPROM, накрывайте ее сверху металлом. Причем желательно не только сплошным щитом от излучения, но и какими-то значимыми линиями, чтобы щит нельзя было аккуратно стравить. Впрочем, тут тоже скрывается засада, потому что
Эээ… Это типа «продолжение следует»? :) Или просто потерялся фрагмент текста? Очень уж хочется узнать про «засаду».
UPD
jok40 готово, спасибо за наблюдательность. То ли случайно удалил при копировании, то ли случайно не перенес, а глаз а время написания настолько замылился, что при вычитке упустил это(
пример вскрытия микроконтроллера PIC12C508A
Тут стоить заметить, что вскрывать PICи и ATмеги нет никакой практической нужды, в силу чисто логических ошибок дизайна, позволяющих с помощью не хитрых танцев с бубнами вокруг питания их спокойненько читать… Ошибки признавались, дыры закрывались, но так, что всякий раз оставалось что-то новенькое.
+ не знаю как у Пик, у Атмелов есть заводской бэкдор, и есть он не только в микроконтроллерах, ах-ах, и не только бэкдор там тоже есть!!!
Как-то не похоже это на заботу о защите интеллектуальной собственности потребителей, когда разные производители, конкуренты, дружно наступают на одни и те-же грабли.
есть заводской бэкдорВы про тестовый JTAG? Так он у всех есть, вопрос в том, что его надо отключать и желательно отключать как следует. Но да, вы правы, и PIC, и Atmel — не образцы ответственного отношения к данным, у Atmel например, военные защищенные ПЛИС вскрывались какое-то время назад.
… мне кажется странным, что вместо того, что-бы тупо промолчать на команду чтения или вернуть какое-нибудь ругательство, некоторые камушки строят из себя генератор случайных чисел, который при внимательном рассмотрении не такой уж и случайный, ну это так, догадочка, которая вполне могла-бы быть подтверждена, если-бы всё не было ещё проще
хитрых танцев с бубнами вокруг питания
А что за танцы с бубном?
… после того как это стало достоянием общественности, они изменили логику, что-бы фьюзы стирались в конце, мол спите спокойно, НО ;-)
Это не конец истории, как вы наверное догадываетесь.
In my view Baikal-T1 is a large step forward for Russian civilian microelectronics. It uses modern commercial core, it is designed using industry-standard flow and manufactured using high-volume commercial technologies. Finally it uses open source compiler and OS — which makes it much easier to support and work with comparing to infamous Elbrus. Using non-standard solutions in situations where they could have been avoided was the curse of Russian microelectronics, until Baikal.
хоть кто-то похвалил наш Байкал!
Михаил Сваричевский, хоть и умеет писать по-английски (хотя предложение, начинающееся с «In my view», c головой выдает человека, родной язык которого — русский), вообще ни разу не «хоть кто-то» в деле популяризации российской микроэлектроники. Но если вам интересно, то он не единственный, кто хвалит, и не единственный из тех, кто умеет писать по-английски)
In my view
А как сказать, чтобы не выдавало?
Учитель запрещал вам говорить «I think» не потому, что эта фраза плоха, а потому, что она самая простая, а ему было важно научить вас более сложным конструкциям.
У меня довольно большой опыт общения на английском и чтения текстов, написанных по-английски людьми разных национальностей. Я ни в коем случае не претендую на истину в последней инстанции (мой собственный английский тоже очень далек от идеала), но национальность автора по цитате я угадал верно.
«In my view» site:bloomberg.com
About 1.400 results
«I believe that» site:bloomberg.com
About 2.150 results
«In my opinion» site:bloomberg.com
About 4.360 results
«I think that» site:bloomberg.com
About 7.980 results
Чёрт. Это мне напомнило положительные отзывы на отечественные фильмы на IMDB. Ну, когда один человек — один отзыв :)
Хорошая статья, но хотелось бы почитать аналогичную статью с более близкой к людям тематикой:
Как защититься от реверс-инжиниринга печатной платы и схемы устройства? Есть простые способы?
Их общих соображений мне кажется, что защитить печатную плату должно быть сложнее, потому что на ней сильно меньше компонентов, чем в микросхеме, а размеры элементов гораздо больше, что упрощает и ускоряет работу.
Вероятно, как-то помочь может маскировка используемых микросхем — сошлифовка заводской маркировки, заливка компаундом или использование распайки кристаллов на плату, а не чипов в корпусах.
Вероятно, как-то помочь может превращение платы в программно-аппаратную систему и защита софтовой части, чтобы электрическая схема без ПО или прошивки была бесполезна для взломщика.
Вот вот, это интересно.
А то мы наткнулись на реверсинжиниринговую копию своей платы совершенно случайно — когда нам в ремонт принесли изделие, думая что это наше. И человек даже уже взялся ее ремонтировать, как вдруг заметил, что компоненты немного непривычно стоят. Оказалась подделка, причем отечественная.
Удачи в борьбе с пиратами!
А патенты, кстати, не работают у вас? Мы думали запатентовать принцип работы платы, но не смогли оценить затраты на это.
Та фирма, что сделала подделку, нам известна, и они почти официально ее продают. Вышли на них через тех же, кто приносил в ремонт.
Месть — блюдо, которое, подают холодным. Хотя дело конечно же не в мести, а в защите своих
Я вам историю расскажу, весёлую, у владельца китайских контрактников полного цикла, были и другие производства, и очень ему наш продукт понравился, так понравился что он решил сделать свой, на основе моей схемы и прошивки, разбираться с которой по началу никто и не стал, ведь всё так прекрасно работало…
… когда пошли возвраты и предъявы, произвести продукции они успели впрок, и мои друзья были очень недовольны демпингом, но кроме ругани поделать ничего не могли, опыт прежних разборок с китайцами у них был негативным, а тут вдруг продажи конкурента приостанавливаются, но не на долго через пару месяцев опять, но предлагали уже существенно меньшие объёмы, там то-же была моя прошивка, но уже такая-же как на прилавках в Европе и США, вся разница была в EEPROM читать который штатными методами было конечно-же нельзя, там был адрес электронной почты, по которому так никто и не написал, но… Спустя ещё некоторое время мы сами предложили выкупить всё что произведено и прошито по цене чуть ниже себестоимости, китайцы начали торговаться, мы отказались платить за то, уже что было заказано сказав что уходим к другим контрактникам, а им не судьба продать то, что они произвели не перепаяв контроллеры. И они не поверили!!! Пока сами не убедились, что это так, и наличие моего адреса в EEPROM даже не проверяется, причина какая-то другая, но код дико обфусцирован (виртуалочка), и при выкусывании возможности работы с фьюзами и EEPROMом не работает. Только тут, до них дошло, что собственная разработка прошивки стоила бы им значительно меньше денег и времени, чем они уже потратили, и продать русским всё по дешевке, выгоднее чем пытаться спасти проект ибо не факт что вообще получится. В общем, когда дело касается денег, можно и лицо потерять, хотя на самом деле нет, но наших засранцев вопрос лица не сильно волновал, и они таки согласились.
А дальше в ход пошел жестокий маркетинг, у нас были хорошие каналы продаж и возможность давить народившихся конкурентов ценой, рынок насыщался и мои товарищи единолично съели большую его часть, оставив китайцам лишь гнилой хвост, где их добили официалы…
ps. вот такая история, а при аффилированностьи разработки, производства, продаж и финансов, возможны истории ещё более фантастические, когда технически продукт вообще не нуждается в защите, и произвести его могут многие, но не будут этого делать, ибо произвести мало, нужно ещё продать, что бы за вычетом всех расходов, тебе чего нибудь осталось…
Вы полностью правы, у задачи бизнеса «обезопасить себя от конкурентов и не потерять прибыль» есть огромное множество решений, технических, юридических и экономических, и всегда важно понимать, какое их сочетание даст максимальный экономический эффект.
1) транзит некоторых выводов (JTAG в первую очередь) сквозь небольшую CPLD-шку через внутренние шарики BGA и внутренние слои печатной платы.
2) известны технологии по размещению бескорпусных чипов в толще печатных плат (между платой и препрегом), встречал инфо, что так сделаны некоторые интегрированные DC-DC от TI.
заливка/закрытие/спиливание - к сажалению больше не спасают
посмотрел это:
A Look Inside Apple's $130 USB-C Cable
и до чертиков напуган
( причем, т к это томография - то можно даже РСВ просматривать послойной )
оборудование даже не обязательно Покупать ( хотя оно и недорогое, относительно) - можно просто арендоватьили заказать услугу.
Не оч дешево, какю нить ЛЕД мигалку вряд ли станут взламывать, но если вещичка стОящая взлома - то "нет больше тайны" (с)
Еще, например, видел решения, которые выравнивают время обработки сравнения вводимого пользователем ключа с эталоном, чтобы не допустить взлома через пропорциональность времени обработки номеру несовпадающего бита в ключе.
А в целом анализ потребляемой мощности — это очень перспективная для взлома и очень сложная для защиты тема, ее не описать подробно в обзорной статье, там можно копать вглубь сколько угодно.
Из ремарок — IP-блок, и в целом IP — это же подразумевается интеллектуальная собственность (intellectual property), а сокращение не расшифровано в начале текста. Первый раз был даже небольшой ступор при чтении фразы про раскрытие IP.
Спасибо за отличную статью!
Восстановление перемычек, чтение памяти и меткие правки оной — дело, безусловно, понятное и полезное. Но вот реверс чисто цифровых схем и, в частности процессоров, как мне кажется, уже не работает и работать не может в силу безумной сложности дизайна. Восстановление схемы не приблизит к пониманию того, как оно работает и уж точно не даст возможности что-то там нетривиально исправить. Пример выше с Байкалом — а это не самый производительный процессор на сегодня — но уже с ним невозможно ничего сделать. Там даже при наличии документации и полного доступа к исходникам сложно понять, как, почему и зачем он работает. Потому что это процессор с внеочередным исполнением, с точными (ну, почти:) исключениями, внятным предсказанием ветвлений, не самым глупым модулем выборки-хранения и ещё кучей свистелок и перделок, которые никому, кроме разработчиков, не интересны. Точное знание о предсказателе ветвлений реверсерам принесёт только вред — там немало сил потрачено на правильную работу с неспекулятивными и некешированными режимами, и оно специфично для мипс (delay slots!) Сами же алгоритмы многократно описаны в книгах и статьях, и это вопрос разумного применения уже известного, а не сверхсекретных нанотехнологий и инноваций.
Ну и вот, к чему это я: ценность реверса, кмк, сильно преувеличена, а нетривиальные закладки и вовсе близки к ненаучной фантастике.
ценность реверса, кмк, сильно преувеличенаТак не процессорами едиными. В аналоговой схемотехнике удачные схемотехнические решения стоят огромных денег и при этом могут состоять из буквально десятков транзисторов.
Опять же, вскрытием и частичным реверсом, например, можно проверить тип предсказателя ветвлений в процессоре конкурентов, а то вдруг они давно уже нейросетями все делают, а вы до сих пор лаптем щи хлебаете. Или наоборот, пока вы делаете что-то очень замороченное, конкуренты вернулись к более простому решению, заставив его работать более эффективно.
Так что с одной стороны, я склонен согласиться с тем, что ценность реверс-инжиниринга часто преувеличивают (про опасность закладок даже начинать не хочется), но свое место под солнцем у него было, есть и будет.
https://www.youtube.com/user/TheSignalPathBlog
Причем, автор оговорился о том, что рассаказать может не всё.
Ну а с процессорами — да, интересно, конечно, что там у конкурентов. Но если у вас на руках готовый чип — вы уже опоздали минимум на три года.
Да и такое часто в Microprocessor Report открытым текстом пишут, за существенно меньшие деньги. А еще бывает, что у конкурентов все примитивнее и даже тупо хуже, но с лучшей техподдержкой, например :)
еще бывает, что у конкурентов все примитивнее и даже тупо хуже, но с лучшей техподдержкой, напримерЭто тоже бывает полезно понять, хотя лучше бы это понять подешевле, чем с помощью реверса)
Но если у вас на руках готовый чип — вы уже опоздали минимум на три года.Для промышленной или, например, космической электроники это может быть вполне приемлемо. Существует огромное количество микросхем с жизненным циклом в 15-20 лет. И на них еще санкции бывают.
Ну вот персональный девайс для генерации и хранения ЭЦП, вот купил я его, может даже посмотрел в микроскоп (в теории, я не умею) — проверил что схема реализована, та, что в публичном доступе (только блок памяти невиден), как-то ему скомандовал — сгенери мне случайный ключ, он сгенерил и как-то сохранил, теперь я могу командовать — вот тебе данные, подпиши или зашифруй.
И главное что мне нужно знать, что никто не сможет прочитать мой закрытый ключ без вскрытия, а при вскрытии он сломается.
Есть ли хоть какое-то приближение решения этой задачи?
В своё время я делал такие ячейки и такую память — она ничем не лучше с точки зрения безопасности.
ПыСы: Сорри, поторопился откомменить, недочитав.
Прощу прощения у OLEGator_by и worldmind :-)
Абсолютной защиты не существует. Существует время принятия мер при компрометации или потере ключа, которое должно быть меньше, чем время извлечения информации из ключа.
Абсолютной защиты не существует.
понятно, но очень хочется надеятся, что какое-то решение есть
Существует время принятия мер при компрометации или потере ключа, которое должно быть меньше, чем время извлечения информации из ключа.
в принципе да, хотя тут много частных «но».
понятно, но очень хочется надеятся, что какое-то решение естьНет, абсолютно устойчивого решения принципиально не существует, и попытки бесконечно близко к нему приблизиться бесплодны, потому что стоимость растет нелинейно.
Необходимо сначала задать обоснованные требования по безопасности, а потом их выполнить.
Детектировать — легко, нужен только сформированный транзистор на подложке с фиксированным порогом открытия. Но тут есть засада — если детектор будет один, его можно нейтрализовать однократным действием(уничтожив транзистор или перерезав шину с сигналом), заставляя думать схему что батарея в норме. Да впрочем как и любую систему самоуничтожения с единственной точкой принятия решения. Нужно несколько параллельных систем контролирующих состояние друг друга. А это может вылиться в большую частоту ложных срабатываний, понижающих надёжность функционирования чипа.
А расскажите, пожалуйста, зачем на рис. 9 у площадок перемычки разная площадь\форма?
И таки да — спасибо автору за статью!
А по полному и безошибочному файлу с топологией электрическая схема прекрасно восстанавливается в штатных САПР для проектирования микросхем, там процедура сравнения восстановленной из топологии схемы с исходной — неотъемлемая часть верификации дизайна.
добавлю от себя 2 аспекта которые не раскрыты и не затронуты
1)Случай когда делается закладка не при производстве а при проектировании(вопрос взаимного доверия не обсуждается, по умолчанию все
Многие дизайн центры выполняют разработку для сторонних заказчиков, в том числе и военных. Так вот последние не могут внести изменения однако должны контролировать отсутствие закладок в конечном продукте. Необходимость проверки требуется на уровне приёмки. И вот в этом случае и необходим реверсинженеринг. Однако это не всегда исследование уже готовой микросхемы а скорей анализ топологии(которая далеко не всегда отдаётся с полной иерархией и описаним функционала). Вот тут уже и возникает проблема, не мог ли разработчик микросхемы(а иногда и IP блока) заложить закладку? Такого рода закладки существуют в в очень большом количестве микросхем, и многие разработчики( и я в том числе) такие закладки(скрытые возможности, не задокументированные режимы) делаю для ускорения тестирования и случае наличия ошибки — для выяснения местоположения и обхода ошибки. Так вот тут встаёт 2 противоположные задачи — конечного заказчика — найти если есть такого плана закладки(достаточно найти подозрительные места, а рассказывать зачем это нужно уже разработчик будет) и второе — задача разработчика спрятать так эти скрытые возможности чтоб не нашёл заказчик.
Это постоянная борьба «света и тьмы».
Отдельный вопорос — что делать в случае если реализована закладка которую невозможно обнаружить в файлах топологии, и которая проявит себя в реальной микросхеме.
2) есть такой метод защиты PUF функции которая довольно хорошо позволяет защитить микросхему от копирования и взлома. В данное время довольно интересная тема. Данный аспект не затронут.
о даже на хабре что-то было
Что касается PUF и много чего ещё — мне показалось, что это будет излишним для обзорной статьи базового уровня (а что-то — излишним для статьи, доступной в интернете). Этот текст и так очень длинный получился. Кроме того, я аналоговый разработчик, а не цифровой, и о многих вещах просто не могу компетентно написать. Так что, если вам есть, как раскрыть тему, я бы с огромным удовольствием почитал.
Про то, как именно реализовано в новых моделях, не могу точно сказать, а как обстояло дело раньше, показано на последнем рисунке и в тексте над ним. Там же есть ссылка на подробную работу, где много внимания уделено PIC.
Мне больше интересно с точки зрения защиты, как узнать модели из PIC которые не вскрываются (вы их назвали «почти любые»).
И такой вопрос, возможно повысить или усложнить вскрытие данной защиты «подножными методами и средствами»? У меня, например, был такой случай — в схеме на ноги, которые участвовали в подключении к программатору, было подано не штатное напряжение, после этого программатор не распознавал чип вообще, но при этом чип работал без потери функций, за исключением ног подключаемых к программатору.
Открою секрет — лет 15 назад обнаружил(не спрашивайте как) что у микросхемы 24FC65(64k I2C EEPROM)(сейчас уже не знаю работает такое, может уже новая ревизия вышла этих микросхем) есть backdor —
в этой схеме есть область памяти которую возможно защитить от записи. После установки бита защиты она доступна только на чтение. Однако!, если подать на один из входов адреса отрицательное напряжение величиной ниже порога транзистора, и подать секретную комбинацию, то микросхема начинает игнорировать бит защиты, и сам этот бит также возможно переписать.
И такая ситуация с многими микросхемами.
Я и сам в свои проекты такого рода пасхалки закладывал, только с намного более сложными комбинациями.
А компьютерная томография не используется для восстановление полной 3D структуры чипа? Кажется разрешения типа 6.6мкм должно хватать?
Да и полная 3D-структура в большинстве случаев не нужна, чипы же принципиально двухмерные, поэтому обычно для анализа можно их травить и фотографировать послойно.
Более того, эту архитектуру можно просто купить (тот же ARM свободно лицензируется).Не путайте архитектуру и микроархитектуру.
Защищать купленное ядро общего назначения действительно резонов немного, а вот какие-то критичные части системы или вещи, составляющие ноу-хау — вполне. Например, массово защищают шифровальные блоки (скажем, в чипах для всяких Smart TV). Самые передовые разработчики так и вовсе реализуют критичные ноу-хау во встроенных FPGA с защищенной неизвлекаемой прошивкой.
То же самое может касаться, скажем, предсказателя ветвлений с какой-то новой архитектурой (пример полностью выдуман).
Главный недостаток как оптического микроскопа, так и SEM
Частично решается тем, что в SEM есть EDX, а ещё есть связка FIB-TEM-EDX, а нормы для массового производства (всякие преобразователи, делители, а не ЦПУ Xeon) всё равно в районе 100-200 нм. Так что при серьёзном подходе и тип, и уровень легирования узнать можно.
Кстати, есть JTAG, который после тестирования отключается, нет?
при серьёзном подходе и тип, и уровень легирования узнать можно.При действительно серьезном подходе почти все, сказанное в этой статье, неверно)
Кстати, есть JTAG, который после тестирования отключается, нет?Конечно есть. Вопрос в том, как он отключается, и в том, нельзя ли его включить обратно. А то отрезать контроллер от кристалла — это одно, а записать бит EEPROM — другое.
sharps.org/wp-content/uploads/BECKER-CHES.pdf
One of the major concerns are Trojans inserted during manufacturing e.g. by an
untrusted foundry, but most of the published hardware Trojans are implemented
at the HDL level. In this paper, we will therefore focus on Trojans inserted into
designs at the layout level, after the place & route phase.
с картинками из того же источника
Да, просто упомянутое средство защиты от реверса тут предлагается использовать для «нападения».
И, разумеется, не приводя никаких реальных примеров закладок.Это студенческая работа. Какие уж тут закладки :)
А вот здесь (осторожно, трафик!) — отчет от реверс-инжиниринге процессора Zilog Z80-CTC,
Этот документ о Z80-CTC (counter-timer-circuit), это счётчик-таймер. Это не процессор. Предлагаю поправить текст, чтобы не вводить в заблуждение.
Что то вспомнил. Когда СпН в авгане захватил ПЗРК Стингер, то при разборке, сработал механизм, в общем, потребовалось захватить ещё один экземпляр. Это я к тому, если устройство секретное, то может оснащать особо секретные узлы устройствами ликвидации, например пиротехническими шашками, лучше термитными. Можно конечно и БЧ подрывать, только это чревато. По этому оснащаем надёжными маломощными ликвидаторами секретных узлов. Конечно, это всё про военную технику. Хотя и гражданская техника тоже может.
Защита микросхем от реверс-инжиниринга и несанкционированного проникновения