7 сезон · выпуск 14 · 11 августа 2022 · 54 мин
Доверенное железо. Как работает аппаратное шифрование
Безопасность и приватность Железо
Слушать · 53:58
Опрос для слушателей: https://form.typeform.com/to/e4324Qbq
Продолжаем говорить о криптографии. В этом эпизоде Сергей Агафьин из компании КриптоПро рассказывает о физических носителях, оберегающих нашу информацию. Разбираемся, как создают и взламывают «флешки» с секретными ключами, магнитные карты и огромные модули безопасности, установленные в банках по всему миру.
Этот подкаст мы делаем совместно с сервисом онлайн-образования Яндекс.Практикум: https://clck.ru/Pfti2
Рекомендации от Сергея: Книги по смарт-картам, например: «Смарт-карты. Настольная книга разработчика», авторы Т.М. Юргенсен и С.Б. Гатери Книга «Cryptographic engineering», автор Брюс Шнайер Конференции: Black Hat, CCC.de, РусКрипто
Подписаться на «Запуск++» в Телеграме: https://t.me/+N_AopnXC0dBkMGQy
Подписаться на Либо/Либо+ в Телеграме, куда включены эпизоды «Запуск++»: https://t.me/+LXZx5JRqO4o0MjJi
Над выпуском работали
- Редакторка
- Маша Агличева
- Продюсерка
- Настя Медведева
- Звукорежиссерка
- Нина Мамотина
- Дизайнер обложки
- Петр Сутупов
Транскрипт
Самат Галимов, Сергей Агафьин · расшифровано автоматически, ошибки возможны
-
Всем привет! Меня зовут Самат Галимов, и это подкаст «Запуск завтра». Как технический директор я пытаюсь разобраться, как устроены сложные и интересные штуки. Я зову профессионалов, с которым можно поговорить простым человеческим языком. Этот подкаст существует благодаря вам, дорогие слушатели. И мы хотим узнать, что вам нравится, а что не нравится. Чего вы хотели бы побольше, а чего, наоборот, поменьше. Специально для этого мы подготовили опрос. Его сделала продюсерка нашего подкаста, и я его сам прошел несколько дней назад. Мне он дико понравился. Взял огромное внимание к деталям, и он просто очень красиво оформлен. Занимает он минут пять. Ссылка на него есть в описании к этому эпизоду. Пожалуйста, пройдите этот опрос, вы нам очень поможете в подготовке нового сезона. На прошлой неделе мы говорили о криптографии, разбирались в том, как мы шифруем и защищаем информацию. Обычно мы после основного эпизода делаем бонусный эпизод, где углубляем, расширяем эту тему. В дополнение к основной криптографии мы решили глубже разобраться в аппаратных ключах шифрования. Это такие специальные устройства, которые помогают нам защищать информацию. Эпизод получился очень жизненный, очень понятный, очень близкий каждому. Поэтому мы решили сделать его публичным, чтобы вы все могли подсмотреть, какие обычные темы мы рассматриваем в запуске плюс-плюс. Чуть глубже, чуть подробнее, но при этом также интересно. Это подкаст в студии «Либо-либо», и мы его сделали вместе с сервисом онлайн-образования «Яндекс.Практикум». У «Практикума» есть курсы по разработке, по анализу данных и по английскому языку. Если вы хотите освоить цифровую профессию, переходите на сайт «Яндекс.Практикум» и учитесь.
-
Привет, Сергей Агафьин, я начальник одного из отделов разработки компании «Криптопро». Я занимаюсь в основном аппаратной криптографией и немного программной тоже.
-
Расскажи, пожалуйста, какие железки, физические артефакты есть в мире криптографии?
-
Если говорить о наиболее популярных распространенных вещах, то, наверное, сейчас больше всего люди сталкиваются с такими вещами, как токены и смарт-карты, это хранилище ключей в виде маленьких персональных устройств, это какие-нибудь платы, которые используются для генерации случайных чисел или для реализации функций обеспечения целостности, проверки контрольных сумм и так далее.
-
Значит, токен, смарт-карта и аппаратный ключ – это все одно и то же, да? Просто разные названия для одного и того же?
-
Можно сказать, что так, да. То есть, смарт-карта – это более общее название, и в целом оно связано с таким форм-фактором, вот как банковская карта. подвидом смарт-карты. То есть, это кусочек пластика, в котором есть чип, Токен— это другой формат этой штучки. Он абсолютно так же работает, в нем абсолютно все то же самое, просто он сделан в виде флешечки. Можно сказать, что это смарт-карта со встроенным считывателем смарт-карты.—
-
USB-контроллером.—
-
Да.—
-
Прикольно. Что они умеют делать? Вот прямо на бытовом уровне или на уровне, вот мы в основном эпизоде на прошлой неделе уже обсудили, что есть криптография с открытым ключом, есть электронная подпись. Что из этого делают смарт-карты, что из этого делают токены?
-
Самые простые смарт-карты, с которыми большинство людей сталкивается, делают достаточно простые вещи— это хранение каких-то бинарных данных произвольного формата внутри себя и выдача их только после того, как предъявится в них пароль. То есть можно сказать, что у этих устройств основная функция— это просто проверка строки пароля, который в них передают. В случае, когда мы говорим о электронной подписи, то они хранят закрытый ключ внутри себя, который под паролем туда записали. И когда человек хочет что-то подписать в каком-то приложении, это приложение запрашивает PIN, пользователь вводит PIN, PIN улетает в смарт-карту по специальному протоколу APDU техническому. Смарт-карта говорит, окей или не окей. Если не окей, то в течение трех, пяти, десяти попыток блокируется. Собственно, это ее главная функция, чтобы иметь счетчик пина, чтобы он сблокировался и больше не было возможности перебора. И если все окей, то выдает ключи в приложение, и приложение само осуществляет подпись.
-
Это такая флешка с паролем, по сути.
-
Да, по сути это реально флешка с паролем. Это самые примитивные карты, но и самые распространенные, потому что, очевидно, они самые дешевые и самые простые в реализации. Последние, наверное, лет пять у нас становятся все более популярными в стране, как мы их называем, активные смарт-карты, активные токены, носители, которые уже умеют в криптографии. То есть в этом случае они сами на борту несут генератор случайных чисел, который генерирует ключевую пару. У них реализована функция подписи. То есть, по сути, приложение уже не должно уметь само подписывать. Оно просто в какой-то момент времени, ну, в случае, если это ВУЦ может послать команду «сгенерируй закрытый ключ», в какой-то момент времени может послать туда либо целиком данные, либо хэш от этих данных и сказать, подпиши. И она подписывает. Это классно в том смысле, что ключ никогда не покидает этот токен или смарт-карту. То есть он там сгенерировался, он там живет, и многие считают, что это гораздо безопаснее.
-
Это такой отдельный компьютер маленький, в который ты посылаешь информацию, которую нужно подписать, например, и он тебе возвращает уже готовые подписанные документы.
-
Именно так. Офигеть.
-
Звучит гораздо сложнее. Если та штука была флешкой, то это уже такой полноценный компьютер.
-
Да, но есть нюанс. Взаимодействие с этими смарт-картами осуществляется по некоторому конкретному специфицированному транспортному протоколу. По сути, мы посылаем туда-сюда бинарные данные конкретного формата, и в этих данных что-то может быть. Так вот, в случае, если мы думаем, что в канале между компьютером, на котором запущена программка, в которой хочет подпись, и карточкой или токеном находится некоторый нарушитель, то есть это может быть какой-нибудь палёный удлинитель или USB-хаб, Это может быть подключение через RDP, например. То есть, когда у тебя смарт-карта воткнута дома, ты подписываешь в программе на работе. Соответственно, вот весь этот канал от дома до работы, он по сути является каналом, через который эти АПДУ-команды летят. Соответственно, если мы говорим о пассивном токене, то через него будет лететь ключ, закрытый ключ, и нарушитель, если он в этом канале какой-то есть, то есть есть кто-то, кто умеет слушать его, он может его прослушать и на основе этой прослушки спокойно собрать ключ. Собственно, были какие-то там PHDays (Positive Hack Days) и на Хабре статьи, где люди внезапно для себя открывали вот это вот свойство пассивных носителей, говорили, что, о господи, угроза атаки и все такое. Хотя это вот неотъемлемое свойство. В случае активных носителей ты, конечно, ключ не получишь, потому что он не покидает смарт-карту, она вот, компьютер, который самодостаточный криптопроцессор, криптовычислитель. Поэтому где бы какой нарушитель, злоумышленник ни сидел, он этот ключ получить не может. Не существует просто технической возможности послать какую-то команду, которая достанет оттуда ключ. Это классно.
-
Окей, хорошо.
-
К сожалению, вот этот самый нарушитель, который сидит, вот этот зловред, или палёный проводник, или удлинитель, что угодно ещё, может слушать канал и в нём увидеть пароль от этой смарт-карты. То есть, вместо того, чтобы ловить ключ, он ловит пароль. Получив пароль, он либо его запоминает, либо прям такой типа «А, пользователь проаутентифицировался, окей», и посылает на подпись, например, хэш, там, не знаю, от платежки на миллион долларов. И карточка такая спокойная его подписывает, потому что ну о чем, мне по этому каналу пришло, что типа вот тебе пароль, и я подписываю.
-
Офигеть.
-
Поэтому здесь не очень, я бы сказал, фундаментальная разница с точки зрения безопасности между этими двумя носителями, если задуматься, если копнуть чуть-чуть поглубже. Существует, конечно, отдельный специфический вид, который мы криптографы России называем функциональными ключевыми носителями, которые умеют защищать этот канал. То есть там используется шифрование, стойкие протоколы аутентификации, которые, в принципе, и эту угрозу позволяют в некоторой мере закрыть. И сейчас, вот как раз, наверное, последние года два наиболее активное проникновение этих носителей пошло в рынок, что позволяет их, в принципе, использовать не только при контактном подключении, но и как NFC-карточки, токены, Bluetooth.
-
NFC— это Near Field Communication, это тот протокол радиосвязи, который применяется в беспроводных картах оплаты. Вот эти Visa, Pay, MasterCard беспроводной, короче, когда ты прикладываешь карточку, она пикает в терминале— вот это NFC. Те, в которых изначально подразумевается, что канал связи открытый.
-
И там встроен некоторый специальный протокол защиты этого канала. Но его было очень сложно построить, сложно обосновать. Это, надо сказать, большое достижение отечественной криптографической мысли, которую, собственно, Евгений Алексеев произвел. Сейчас в этом смысле нарушителям уже похуже, если пользователи используют безопасные носители.
-
Ты что, реально защищаешься от того, что кто-то USB-кабель прослушает, по которому подключен токен? Звучит как-то странновато.
-
С одной стороны, да. С другой стороны, мы все-таки знаем, в каком мире мы живем. То есть можно сказать, что это некоторое упрощение, но многие используют же не просто USB-удлинитель, это, наверное, действительно такой, скорее, простенький примерчик, но более сложные USB-хабы.
-
И это реальная угроза, что в USB-хабе может быть, что он может быть злонамеренным? Такое вообще встречается в дикой природе?
-
Ну, мы же должны рассматривать всё.
-
Я люблю, когда в безопасности так говорят, типа, давай нам миллиард долларов, а то как бы прилетят люди из Марса и нас всех завоюют. Ну, когда ты спрашиваешь, а какая вероятность, они такие, ну почему бы и нет?
-
Есть в области практически прикладной криптографии фундаментальные труды, написанные Брюсом Шнайером, который практически в каждой работе вначале пишет, что вот вы, когда строите свою систему, на ее безопасность закладываете порядка 90% ресурсов. И как бы это окей, потому что у нас вот закон Мура, вот это вот все, соответственно, ну будет у вас работать как четырехлетней давности система. Ну окей. В этом смысле тут одна из угроз. Здесь нужно весь кластер проблем рассматривать. То есть у нас есть большое количество ситуаций, когда мы вставляем напрямую в компьютер устройство. Окей, здесь, может быть, скорее всего, никакой проблемы нет. Потому что если мы начинаем говорить, что мы не доверяем, не знаю, USB-контроллеру внутри ноутбука, ну, наверное, у нас есть проблемы и посерьезнее, чем защищать канал между конкретным токеном и каким-то приложением для подписи. Но есть огромный пласт ситуаций, когда мы токен не включаем напрямую в компьютер. Это может быть упомянут именно удаленный доступ, это может быть подключение по радиоканалу, то есть в случае блютуса он же фонит вообще на всю квартиру. NFC тот же самый. И вот душа безопасника, она не может вот это все оставить в таком виде, когда мы знаем, что есть научные исследования, которые показывают, что можно, грубо говоря, ключ восстановить по аудиоколебаниям из другой комнаты при выполнении подписи на плохом компьютере. Ну, плохом в кавычках. Так что... Нужно соизмерять, что риск утраты закрытого ключа, причём эта компрометация, это же не в смысле, что человек потерял токен. Он потерял токен, он знает, что он потерял токен, он пошёл в удостоверяющий центр, отозвал свой сертификат, и всё. То есть нарушитель, если ничего не успел сделать, то не успел. А здесь его втихую скопировали, и ты не знаешь, что у тебя ключ компрометирован. Такая неявная компрометация произошла. От таких вещей нужно защищаться.
-
Это самый страшный сценарий на самом деле, потому что мне казалось, что основная суть на самом деле физического этого токена, физического ключа в том, что ты реально знаешь, когда он у тебя, а когда ты его потерял. А тут у тебя получается, его как будто скопировали втихую. Ну, реально скопировали ключ, и ты замки не меняешь, думая, что ты в безопасности, а на самом деле нет.
-
Да. Ну, тут, собственно, это в случае пассивного, так. В случае активного, ну, ты можешь не знать, что у тебя там в конкретном компьютере есть зловред условный или какой-нибудь активный излучатель чего-нибудь. Ну, это опять же там какой-нибудь вредоносный хаб, я не знаю, который может в любой момент послать на подпись что-то.
-
Разве нельзя этот токен раскурочить и как-то его считать прямо напрямую, не через прямой вход через USB, а вот прямо, знаешь, взрезать сердце и вытащить его?
-
Короткий ответ— можно. Это очень сложная инженерная задача. С одной стороны, даже если мы говорим об очень простом, дешевом токене, который прикидывается защищенным, в котором, например, используется NXP-шный, например, то какие ресурсы нужно потратить на то, чтобы как-то его вскрыть, проанализировать, не знаю, электронным микроскопом, стравлением, еще что-то, лазерами где-то поснимать. чтобы найти конкретно хранящийся ключ. Это не очень простая задача. С другой стороны, есть действительно дорогие безопасные носители, в которых криптопроцессоры, которые были, в принципе, изначально разработаны для того, чтобы там хранить данные, и они каким-то образом это физически защищают. Так что эту угрозу рассматривают исследователи, но тут, опять же, соотношение рисков. То есть если ты боишься, что твою электронную подпись украдут люди, которые могут потратить миллионы долларов на то, чтобы ее оттуда достать, закупив вот это все оборудование, то, наверное, тебе стоит более тщательно подходить к выбору именно на основе физических характеристик носителя. Если ты боишься потерять токен просто в метро, его какой-нибудь школьник достанет и попробует что-нибудь с ним сделать, ну, наверное, эта угроза не очень реалистичная.
-
Прикольно. Я в одно время занимался криптовалютой, делали стартап. И у меня был такой кошелек, и в нем была кнопка типа «Подписать» и «Отклонить». Там была типа галочка и крестик. И он прямо на дисплейчике, там был маленький дисплейчик, он показывал типа «Вы хотите перевести вот на такой-то адрес вот такую-то сумму?» И ты говоришь «Да, подписать», и он только в этот момент подписывает. Кажется, что это такой еще один дополнительный уровень безопасности. Это только в кошельках применяется или в токенах тоже?
-
Существуют такие устройства. Они бывают двух видов. Первый— это просто токен с кнопкой. Это вот, мне кажется, самое крутое инженерное и простое решение, что я видел, когда ты посылаешь данные какие-то на подпись, а токен вместо того, чтобы делать подпись, начинает дико мигать и просить тебя, по сути, пальчик приложить к нему. Ты прикладываешь, и там что-то происходит.
-
Это даже не отпечаток пальца, это просто приложить палец.
-
Да-да-да. То есть это вот как бы закрывает огромный пласт уязвимости и все равно угроз, связанных с какими-то троянами, еще кем-то, потому что токен мигает, ты как бы это видишь, ты знаешь, что он мигает только в случае, когда тебя что-то требует, поэтому ты можешь сразу заподозрить что-то неладное. А даже если не заподозришь, то ничего не произойдет, пока ты его не приложишь. Я, честно скажу, не знаю, почему эти носители не получили очень широкого распространения. Мне кажется, это очень круто. Возможно, там есть какие-то технические сложности, может, дорого или еще что-то. А второй класс носителей, которые именно выглядят так, как ты описал, по сути, это токен с экранчиком. Когда ему прилетают данные на подпись, у него на экранчике появляется выжимка из этих данных, и там же могут быть кнопки «Да», «Нет». И ты посмотрел и нажал «Да», «Нет». Есть даже специальные считыватели, смарт-карт, которые становятся таким типа человеком посередине, которые перехватывают данные, и пока они не дошли до подпись, до токена, отображают человеку, и если человек нажал «да», то они летят дальше в токен. Но, опять же, по некоторым мне неизвестным причинам, возможно, дело опять-таки в цене, возможно, в технических ограничениях, они не получили очень большого распространения. То есть они применялись как-то у нас, но очень локально, и сейчас, я так понимаю, отмирают. К сожалению, одним из важных ограничений тут является то, что они должны знать формат данных, которые ты подписываешь. То есть если это какая-то платежка, то она должна быть строго структурированная в каком-то конкретном формате, конкретной системы дистанционного банковского обслуживания или еще что-то. Если ты подставляешь токен с экранчиком в другую систему, он может только ломаться, например.
-
минутка саморекламы. Завтра, в пятницу у нас выйдет бонусный эпизод нашего подкаста, запуск плюс плюс. Там мы будем разбираться в строении атомно-силовых микроскопов. Это такие штуки, которые позволяют разглядеть отдельные атомы. Как люди научились это делать, насколько это сложно и где там нужно программирование, мы разберемся с экспертом. Ссылка в описании, подписывайтесь в Apple подкастах и в Телеграме. Очень круто мы с тобой обсудили, что такое вообще аппаратный ключ, смарт-карта, токен безопасности. Теперь я хочу немножечко в практику вообще, насколько широко они распространены, сколько их в России, не знаю, в мире.
-
Я практически уверен, Я уверен, что они явно есть в каждой бухгалтерии какой-нибудь организации. Ну, каждой организации, потому что им надо какую-то отчетность подавать. То есть, например, у нас в компании есть, абсолютно независимо от наших каких-то разработческих процессов, ключи, с помощью которых бухгалтеры отправляют отчетность. Скорее всего, действительно получают не только юридические лица, но и индивидуальные предприниматели. Стопудово все какие-нибудь торговые точки, которые алкоголем торгуют, ЕГАИС, и в связи с этим тоже токены получают. Есть какая-то небольшая группа людей, которые получают как физлица квалифицированные сертификаты, чтобы ими что-то подписывать. Гадать сложно, но я бы сказал, что речь о сотнях тысяч.
-
Офигеть, как прикольно получается, что государство доверяет закрытому ключу, закрытому открытому ключу, вот этой электронной подписи, так же, как и твои собственноручные подписи, так как будто физически присутствуешь. И аппаратный ключ— это как раз способ получить себе такую электронную подпись, то есть начать взаимодействовать с государством или с какими-то компаниями, с корпорациями именно электронным способом.
-
То есть в случае физлица, наверное, здесь не очень какие-то большие риски в том смысле, что кто-то у тебя украдет логин, пароль от госуслуг. Что он сделает? Не мега-серьезные вещи. Но если логин, пароль от личного кабинета налоговой юрлица украдут, это все-таки очень опасно. Поэтому здесь, в этом смысле, как раз требование повышенных уровней безопасности, того, что государство требует для доступа к личному кабинету использование токена, который тебе выдают в ФНС, ну, это оправдано.
-
Сколько такие носители стоят?
-
Я знаю порядок, что это вот несколько тысяч.
-
Несколько тысяч рублей.
-
Двух, до пяти, может быть, шести.
-
А сколько вообще в разных производителях есть этих ключей? Это что-то секретное или их, типа, штампуют все кому ни по пути?
-
Я бы, наверное, сказал, что штук 5 самых популярных производителей в нашей стране. У нас, в принципе, сфера криптографии достаточно герметичная. Здесь не так много компаний, которые исторически работают, и довольно высокий порог входа из-за лицензии на разработку. Поэтому между ними как-то распределен рынок. я как-то не отдаю никому из них предпочтение, я не знаю, у разных какие-то заказчики, кто-то работает на одного заказчика, но этот заказчик может быть условным, не знаю, Сбербанком, что как бы сразу говорит, что у тебя 70% рынка, хотя никто, кроме Сбербанка, о тебе, грубо говоря, мог и не слышать.
-
А можно ли создать абсолютно защищенный токен, аппаратный ключ, с которым мы будем уверены, что его нельзя абсолютно никак вскрыть?
-
Я думаю, это невозможно, потому что вся история информационной безопасности показывает, что ни в одной ситуации не существует абсолютно надёжных мер. Ты не можешь ничего сделать такого, что гарантирует навсегда безопасность от всех угроз. Я вот даже пример могу привести, отлично, я его в книжке профессора английского прочитал. Очень многие думают, что если мы поместим устройство, которое занимается криптографией, в серверную, ну вот если говорить, допустим, о HSM, hardware security модулах, те, которые в банках применяются, еще где-то, и поставить туда охранника, который супердоверенный, проверенный, квалифицированный человек, который вот стоит с автоматом и смотрит на него, то даже эта угроза никоим образом не защитит нас от нарушителя, который будет администратором, то есть того, что кто-то подкупит администратора этого HSM, потому что что? У автоматчика нет нужной квалификации. он может смотреть, что тот что-то делает, но он не особо понимает, что происходит. Тут всё такое. То есть мы можем сферических каких-то коней напридумывать, что вот это мы тут такой корпус сделаем, там, не знаю, без заклёпок будет его не вскрыть, а здесь то, а здесь сё. Но здесь, опять же, во-первых, всё наталкивается на практику, потому что ты что-то нарисовал красиво, а кто это реализует? И как гарантировать, что это сделано правильно, без уязвимостей? И второе, то что мы же можем представлять только угрозы, которые сейчас реальны, а какие будут реальны завтра, послезавтра, это как бы тут все большое искусство.
-
Слушай, ты упомянул HSM, а это как раз моя следующая тема, потому что Apple несколько лет назад раскрыл информацию о том, как они защищают переписку iMessage и бэкапы в iCloud, и там они упоминали некие HSM— Hardware Security Modules, что это типа вот такой ядро, на котором у них все это построено. Можешь про них немножко рассказать, что это такое?
-
Если очень просто, то можно сказать, что компьютер-сейф, сервер-сейф. Это некоторый вычислитель или большой токен, который реализует в себе криптографию, какой-то набор алгоритмов, имеет некоторую точку входа, некоторый интерфейс, он может быть как-то специфицирован. Ну, там, самое популярное, наверное, это PKCS 11. И вот он стоит в серверной какой-то стойке, он достаточно высокопроизводительный, и он нужен для защиты самых-самых ценных ключей. То есть, когда мы говорим о токене, то это какой-то личный ключ обычно или что-то, насчет чего можно о рисках думать. Но когда мы говорим, например, о защите закрытого ключа удостоверяющего центра, или о защите главных ключей платежной системы банковской, то здесь, конечно, никакие токены нам не подойдут. Нам нужно некоторое устройство, которое будет безопасно по огромному количеству критериев, в том числе будет гарантировать каким-то образом то, что нельзя достать ключ оттуда в результате вскрытия. И так далее. HSM— это про это. Они существуют двух видов, чтобы быть максимально точным и никого не обидеть. Первый— это сервера-сейфы, вставляемые в серверные стойки. Второй— это некоторые компании производят платы дополнительные в компьютеры или в сервера, которые выглядят просто как литой кусок металла. с PCI-шиной. И вот ты ее вставляешь, и там каким-то образом и физическая защита организована от защиты от вскрытия, и от излучений, побочек, вот этого всего, и криптографические механизмы. Вот IBM очень любит это делать, я знаю.
-
кто-то их еще в индустрии использует?
-
HSM используется во всех банках, прежде всего, если говорить о основном потребителе, и удостоверяющие центры. Плюс в HSM должны храниться ключи организаций, которые выпускают софт и подписывают его своими закрытыми ключами. То есть, когда мы говорим о подписи приложений для Windows, цифровая подпись с сертификатами, которые выпущены каким-то очень крутым УЦ, DigiCert, еще кем-нибудь, то они должны по правилам многих удостоверяющих центров тоже находиться в HSM-ах.
-
Вау. То есть везде, где цена ошибки вели высока, там применяются HSM-ы?
-
Да, ну я уж не говорю о каких-нибудь государственных организациях, военных и так далее. Это, мне кажется, самоочевидно.
-
Хочу от тебя какую-нибудь байку, потому что ты рассказал про взлом этих флешек, а ИЧСМ что, не пытаются взломать? Вообще есть какие-нибудь истории про взлом ИЧСМ?
-
Честно говоря, наверное, нет. Потому что, боюсь тебя разочаровать, да, потому что когда мы говорим о токенах и о смарт-картах, это такая довольно размазанная тема, потому что они применяются в огромном количестве задач в огромном количестве сфер. Существуют очень дешевые носители на Алиэкспрессе, которые можно за копейки купить. Существуют очень дорогие, которые сложно вскрывать. В случае HSM-ов у тебя не может быть дешевого HSM-а. Он сам по себе, по сути, огромный сейф, невзламываемый, крутой. И они для того, чтобы продаваться, должны соответствовать каким-то требованиям регуляторов. В случае, например, банковской сферы, это организация PCI, которая организована визой, мастер-кардом, American Express, наш NSPK тоже туда входит. И у них безумно строгие требования к безопасности. То есть там должны быть гарантии того, что при любой попытке вскрытия у тебя будут полностью стерты ключи. корректная реализация всех криптоалгоритмов с кучей-кучей дополнительных проверок, которые гарантируют, что не выродится, и ты не получишь какой-нибудь слабый ключ из-за одних единичек, состоящих, и так далее. Гарантированно должны использоваться криптографически строгие протоколы аутентификации, то есть ты не можешь управлять HSM просто по паролю, у тебя должна быть смарт-карта. Не может быть управление HSM выполнено одним пользователем. Всегда должно быть несколько человек. Секретные, самые строгие ключи обязательно должны разделяться. То есть существуют такие криптографические схемы. Это схема разделения секретов. Самая популярная— это схема Шамира пороговая. Когда ты берешь секрет, какой-то ключ, разделяешь его на несколько частей, например, на 5. И можно построить протокол таким образом, что исходный ключ могут собрать не все пять человек, то есть это не просто ксором разделённые, грубо говоря, а, допустим, три человека из пяти.
-
Три из пяти должны собраться в комнате, чтобы всё заработало.
-
Соответственно, если кто-то один потеряет карточку, не страшно. Если два человека будут подкуплены какой-нибудь террористической организацией, тоже не страшно, их мало. Три человека должны собраться, для выполнения действий всегда должны быть дополнительные подтверждения. Здесь все и протоколы управления, и физические механизмы изначально должны быть спроектированы в терминах доказуемой безопасности. То есть если говорить, например, о наших западных партнерах в этой области, то, например, самый популярный производитель HSM для банковской сферы— компания Thales, французская. У них гигантские тысячи человек, которые занимаются только тем, что пытаются проанализировать HSM, который эта же компания разрабатывает.
-
То они пытаются взломать его.
-
Ну, и его, и смарт-карты, которые с ним связаны. А потом передается это все независимой лаборатории, в которой такими же ресурсами обладает, и она пытается дальше это сделать.
-
А что они делают? Какие там способы анализа, способы взломов могут быть? Вообще какие-то подходы могут быть? Я просто начал вспоминать какими-то отрывочными штуками про то, что их чуть ли не в жидкий азот опускают, чтобы они замерзли, и в этот момент, типа, можно их попробовать вскрыть, и аппаратура, типа, не поймет, что ее вскрыли.
-
Я бы сказал, что жидкий азот— это одна из самых тривиальных атак, которые обязательно должны рассматриваться на этапе проектирования этого устройства. То, что нельзя хранить ключи в открытом виде, в обычной оперативной памяти, потому что, ну, хакер подошел с баллончиком, он такой... заморозил и утащил подмышкой HSM. Вот это реалистичная угроза, которую они в том числе рассматривают. То есть там, я не знаю, лазеры травления, еще что-то. Но слушай, когда у тебя на кону стоит закрытый ключ, например, визы, вскрытие которого даст тебе возможность выпускать неограниченное количество карт,
-
Типа половина денег всего мира.
-
И одобрять любые транзакции. Ну, я сейчас утрирую, но порядок угрозы примерно такой. То здесь как бы у тебя бесконечно высокие риски, так что ты должен минимизировать вероятность любой угрозы.
-
Офигеть.
-
На нынешнем уровне развития технологий безопасности в этой сфере это прям всё искусство. И защита, и нападение на них.
-
Сколько такие сервера стоят?
-
В России, наверное, порядка нескольких миллионов рублей.
-
Так, мы сначала поговорили про токены безопасности, потом поговорили про супер нишевые и дико веселые сервера безопасности. Теперь хочу поговорить про вещи, которые мы пользуемся каждый день. Какой-нибудь артефакт криптографический, который есть у всех. Я так думаю, что это банковская карта. Потому что ты с самого начала сказал, что смарт-карты похожи на банковские карты. А банковская карта, она использует криптографию внутри себя?
-
Да. Банковская карта— это и есть смарт-карта. Она по тем же канонам, что и все смарт-карточки реализованы. Карты бывают банковские, разные, они могут на симметричной криптографии, это вот старенькие, такие еще чаще всего, они с магнитной полосой, могут быть на асимметричной криптографии, на RSA и так далее. Сейчас большой ECDSA. Соответственно, там на чипе могут храниться закрытые ключи, могут храниться симметричные ключи, которые позволяют аутентифицировать транзакции. То есть ты прикладываешь карточку или вставляешь карточку, там у тебя может появиться запрос пин-кода, может не появиться запрос пин-кода в зависимости от настроек терминала и карточки. и выполняется некоторый криптографический протокол, который связывает эту карточку с HSM, который хранится в банке. И вот когда HSM подтвердит, что эта карточка настоящая, что на ней есть деньги, что пин, который ты ввел, связанный с этой карточкой, он действительно к ней имеет отношение, то тогда транзакция одобряется.
-
Я правильно тебя услышал, что когда я в какой-нибудь африканской деревне, там такое один раз было, засовываю свою карточку в банкомат, то банкомат связывается с HSM железкой, вот ту, которую мы только что обсуждали, этот суперсейф, который стоит где-то в московском банке, и они друг с другом разговаривают?
-
Именно так. Воу.
-
А без интернета это вообще работает?
-
Без интернета это не работает. Тут есть некоторые подкладки, которые позволяют эту задачу как-то обойти. Например, на терминале, к которому ты прикладываешь карточку, может быть специальный уровень риска настроен, что если покупка до 1000 рублей условно, то она одобряется сразу. Например, какая-нибудь условная кофейня, что не пойдёт в неё человек с отдельной картой, с картой без баланса, ещё что-то. Но потом может она как-то затребовать. Для неё важнее, чтобы этот человек через микросекунду получил одобрение и ушёл. Если есть возможность подключиться, ну там подключается. Если нет возможности, ну там... Человек приложил, не знаю, платиновую визу, ну чего его заставлять ждать свой капучино, на самом деле. Так что такие возможности есть. Но сам по себе терминал, которым ты прикладываешь, он ничего не может сделать. Он может проверить какую-то базовую корректность, То есть есть ситуации, когда на карточку при ее выпуске, ну, собственно, для ее выпуска используются тоже HSM. Они генерируют все данные для карточки и засовывают туда, в банке. Соответственно, эти данные— это какая-то подписанная информация, и терминал может запросить у карточки эту информацию, проверить на сертификате платежной системы через набор шагов, сертификат платежной системы, банка и так далее. что все хорошо, и как-то базово одобрить. Это такая офлайн-аутентификация. Бывает онлайн, которая чаще всего используема, когда именно Deutsche Sema. То есть ты приходишь в Африке в какую-нибудь кофейню, прикладываешь, и у тебя транзакция формируется на этом терминале. Она летит сначала в банк, который эквайр для данного терминала, то есть тот, кто поставил этот терминал в данную кофейню, перешифровывается, летит дальше в какой-нибудь там, не знаю, шлюз из этой страны, перешифровывается, летит по платежной системе виза до НСПК, единой точки входа в платежную систему России, перешифровывается и летит в Сбербанк, например, условно. Там проверяется, и все обратно.
-
Обалдеть. Скажи, пожалуйста, первые банковские карты, я помню, недавно видел прототип этой банковской карты, это картонка, на которую скотчем наклеили магнитную ленту из вот этого бобинного проигрывателя. Ее сделали там в 70-е годы в IBM. Там вообще никакого чипа нет, это не токен, это просто как бы магнитная лента, это просто дискета, короче. что с нее как бы присылается в HSM-модуль моего банка?
-
Существует большое количество протоколов. Давай так, вот один из них, мне кажется, наиболее простой и понятный. Ты проводишь карточкой по считывателю магнитных лент. С ленты считывается номер карточки и какая-то дополнительно связанная информация. Ты обязательно вводишь пин-код. Этот пин-код зашифровывается на ключей терминала. Никакой криптографии в карте не происходит. Действительно, считали, все, вот как бы. ее поэтому легко дублировать. И вот когда использовались магнитные ленты, магнитные карты в большинстве своем очень вот эти вот всякие штучки, вставки в банкоматы были популярны у фродеров. Соответственно, зашифровывается твой пин-код вместе с данными карточки на ключе терминала, летит в головной офис банка, который этот терминал выдал, там он может Либо перешифроваться в зависимости от того, какой банк выпустил карточку, это вот тоже с полосы считывается, и тогда отправиться в сторону этого банка. Либо, если самая простая ситуация, эмитент Эквайр, тот, кто дал терминал кассиру, одна и та же организация, то просто вот прям зашифрованный на этом ключе, ну можно сказать, блок летит в HSM этой организации, расшифровывается, Потому что у него есть этот ключ, он в одной сети согласованный. И проверяется.
-
Получается, пин-код моей карты хранится внутри часа.
-
Не совсем так. Хранится некоторое зашифрованное производное от пин-кода, скажем так. Вау. И не совсем в HSM, потому что она зашифрованная. Хранить в HSM её не обязательно. Только HSM может её расшифровать. Там хранится ключ шифрования. Она хранится где-нибудь рядом в базе данных. Ну и как бы представишь, сколько, например, карточек условных, например, другого банка возьмём, VTB, выпускает, что HSM очень быстро переполнится. Всё-таки не то чтобы мега-сервер, не очень большой жёсткий диск у него. Поэтому они всегда хранятся рядом в каких-то базах данных, и когда необходимо выполнить транзакцию, в базе данных находится нужная зашифрованная информация и засовывается вместе с ключом и данными, которые нужно проверить в HSM. Он выполняет всю криптографию и говорит наружу «да». Это «да» зашифрованное на ключе HSM летит в терминал, в терминале расшифровывается, проверяется, и тогда он дает ответ. Ты что описал,
-
звучит как довольно бронебойная схема. Зачем придумали чипы, вот эти маленькие железные контактные площадки, которые мы видим на банковских картах? Почему сейчас карты нужно вставлять, а не просто прокатывать?
-
А здесь мы возвращаемся к началу нашего разговора о разнице между пассивными и активными носителями. То есть чиповая карта, она сама может подписывать, она сама может эту транзакцию формировать. Соответственно, с нее гораздо сложнее достать какие-то данные. Если мы говорим об обычной карте с магнитной полосой, можно поискать огромное количество cool stories, Group-IB, о том, как они постоянно находят какие-нибудь новые интересные устройства, которые вставляют в порт для смарт-карт в банкоматах, чтобы считать данные магнитной полосы, а потом на их основе делать подделки карты.
-
Окей, то есть магнитную карту очень легко скопировать. Достаточно просто на банкомат налепить вот в то отверстие, в которое засовываешь карту, налепляешь какую-то нашлепку, которая будет считывать карту по мере того, как ты ее дозасовываешь.
-
Да, но тебе, понятное дело, нужно не только это, тебе нужно ещё каким-то образом пин увидеть, поэтому рекомендуют его прикрывать, вот это всё, но в подавляющем большинстве случаев, конечно, как мы вводим пин-код?
-
А в случае, когда карта с чипом, её считать невозможно, потому что этот секретный ключ никогда эту карту не покидает.
-
Ну то есть ты можешь, как я сказал, считать в канале какую-то вот эту подписанную информацию, и если терминал, в котором ты будешь этой поддельной картой платить, скажет, что ему этого достаточно, то, наверное, да. Но это почти нереалистичная история.
-
Все-таки вот обычно злоумышленники пытаются на доверие людей сыграть и как-то с помощью социальной инженерии вытащить деньги. А есть ли злоумышленники, которые пытаются взломать сами карты, вот саму вот эту систему, которую ты сейчас описал, суперсложную, неужто в ней не пытаются найти уязвимость?
-
Честно скажу, что там всё сложно, действительно, но есть большое количество проблем. Связаны они с огромной инертностью всей этой системы. То есть очень-очень-очень сложно внедряются новые технологии. Тут хороший пример, который всегда приводят, это абсолютно подавляющее качество обслуживания в банках и вообще всей банковской системы в России по сравнению с остальным миром. Почему? Потому что мы начали позже развиваться в этой сфере, и мы сразу на самые крутые, новые, современные подходы пришли, их повнедряли, и теперь весь мир нам завидует. Ну, в кавычках, все так говорят. С другой стороны, например, Соединенные Штаты, в которых карты изначально появились, распространялись и прочее, вот у них есть карты с магнитной полосой, и зачем им переходить на что-то новое? Это дорого, тяжело.
-
Терминал надо менять, считыватель надо менять в каких-то деревнях.
-
все это нужно менять, карты дороже, и это большая головная боль. Сейчас эту проблему там решили, там вот регуляторными методами организация, которая занимается защитой банковских систем, она всех заставила перейти на чиповые карты, и сейчас этот процесс уже сходится. Но я когда-то видел статистику, там, по-моему, в 2014 году, не так давно вообще, вот только-только, можно сказать, что-то типа 80, что ли, процентов всех платежей проходило по картам с магнитной полосой. Это вообще в голове не укладывается, но вот так. Поэтому сейчас, например, всё равно, даже несмотря на прогрессивность и развитие технологий, всё равно используются довольно старые алгоритмы, довольно старые протоколы. Очень многие банки, насколько я знаю, используют до сих пор DES, которые были разработаны в 60-70-е годы для каких-то там списанных натовских шифраторов. Это один из первых опубликованных алгоритмов шифрования. Довольно старенький он, и довольно слабенький. У него есть Triple DES, которые позволяют ему продлить жизнь. Но в целом все сейчас считают его уже давно списанным. Ему на замену пришел более популярный, классный, молодежный и невзламываемый алгоритм AES. Пришел он ему на смену в 2001, если мне не изменяет память. Так вот, системы банковских карт до сих пор на него не перешли. на DES. То есть вот 20 лет и как бы ничего.
-
Раз банковская система использует такие старые шифры, это означает, что она уязвима к каким-то видам атак?
-
Тут ключевое слово— банковская система, потому что когда мы говорим о протоколах вот этих вот платежных именно, непосредственных, то есть выполнения транзакций, то здесь, да, они старенькие. Если кто-нибудь что-нибудь вскроет, то, ну, наверное, можно себе представить практическую атаку на это. Но сами банковские системы, они дополнительно еще сверху защищены уже нормальной криптографией, которая на современных алгоритмах с современными методами защиты. И пробраться внутрь этого контура довольно сложно. И сделать с этим тоже тяжеловато что-то. Плюс проблемы, вот эти все, связанные с DES, они уже сейчас, можно сказать, постепенно уходят, потому что весь мир в целом перешел, можно сказать, большей частью на чиповые карты. в чиповых картах RSA, в картах следующего поколения ECDSA, эллиптической криптографии, так что это уже менее вероятно, что будет вскрыто. То есть, скажем так, если будут какие-то реалистичные атаки на алгоритм RSA, то как
-
бы... У нас есть проблемы побольше, мне кажется, чем карточки.
-
Да, у нас проблемы существенно побольше будут.
-
Скажи, пожалуйста, а для меня, как для пользователей, есть разница, какое у меня поколение карточки? И какая криптография там используется?
-
Да, наверное, нет. Потому что, если ты обратишь внимание, то даже на самые современные классные стильные карточки, которые тебе выдаёт какой-нибудь молодёжный банк, сейчас всегда есть даже магнитная полоса. То есть они все поддерживают большое количество легоси, тянут за собой большое количество легоси, поэтому Чтобы тебе не выдали, у тебя могут только как-то улучшаться твои возможности. Дали тебе карточку с NFC, ты можешь платить бесконтактно. Но при этом ты все еще можешь платить и чипом, и магнитной полосой, если найдешь где. Так что, наверное, нет.
-
Вот Apple Pay, Google Pay, Sber Pay, они работают просто через телефон. Там нет отдельного чипа карт. Как это работает? Они, получается, менее защищены?
-
В телефонах есть некоторое внутреннее более-менее защищенное хранилище, доступ к которому можно организовать по NFC. Соответственно, оно прикидывается банковской карточкой и как-то взаимодействует, если мы говорим об оплате телефоном. Тут же две стороны есть. С одной стороны оплата телефоном, с другой стороны оплата в интернете. Если мы говорим про оплату телефоном, то он прикидывается банковской карточкой. Когда ты регистрируешь Google Pay у себя в учетке, ты вводишь настоящую банковскую карточку, а тебе дают некоторый псевдономер, который называется токеном. Это вот специальный идентификатор, который связан с твоим настоящим номером. И, по сути, при привлечении вот этой вот третьей стороны, там, Гугла или Эппла, у тебя получается некоторая фейковая сущность на телефоне, которая при взаимодействии Гугла с платежным центром превращается в настоящий и происходит списание.
-
Я очень хочу тебя спросить про генераторы случайных чисел. А сколько я понимаю, это очень важная штука. Можешь про них рассказать? Что это такое? Зачем они нужны?
-
Как я говорю студентам на лекциях, генераторы случайных чисел— это краеугольный камень любой криптографической системы, без аккуратного выбора которого ты не можешь даже начинать разговор о том, что у тебя что-то безопасно. Это действительно вещь такая очень своеобразная, о которой никто не задумывается, потому что многие даже не знают, что там какие-то случайные числа в этих протоколах есть. Большей частью людей, в принципе, не нужно. Но когда мы говорим о какой-то теоретической модели, алгоритма, шифра, чего угодно, там есть всегда какие-нибудь слова в духе. Мы выбираем случайный ключ. Мы выбираем там случайное число, которое будет использоваться тут в протоколе. Мы выбираем случайное то-то. И под словом «случайное» всегда подразумевают некоторый теоретический концепт. То есть это вот что-то, что, не знаю, в философском смысле случайное.
-
То есть каждый раз брать пятерку не подходит.
-
Да, да. Это, кстати говоря, была уязвимость PlayStation 3, если мне не изменяет память, когда они примерно так и действовали. Они для всех процедур подписи использовали то ли константное, то ли одно из очень-очень-очень короткого множества значений. Там, где нужно было брать случайное число. И хакеры благодаря этому прекрасно получили закрытый ключ, вскрыли и взломали эту консоль. Короче, когда мы говорим о генераторах случайных чисел, то здесь важно понимать, что на практике мы всегда должны помнить, для кого они случайны. То есть, с одной стороны, кому-то может быть 5, 4, 2, 1, 7, 8, там любое число названное, не знаю, случайно, потому что ну ты не ожидал этого, это для тебя непредсказуемо.
-
А я с тобой уже полгода живу, я знаю, что ты на любую фразу случайно именно это отвечаешь.
-
Ну да. С другой стороны, мы можем, например, сказать, а вот там в каком-нибудь чипе Intel есть супердатчик случайных чисел, который мы можем заиспользовать. Но, например, для какого-нибудь... Агентства национальной безопасности? Агентства национальной безопасности или инженера компании Intel, который его разработал, это будет не случайно. То есть тут вопрос такой. Многие немножко путают понятия и думают, что случайность последовательности какой-то или набора чисел можно проверить, можно в этом убедиться. Действительно, есть статистические критерии, такие специальные математические алгоритмы, в которые ты просто кидаешь эту последовательность, а оно тебе говорит «да», «нет». Есть вот NIST.
-
Есть вот стандартные.
-
Да-да-да. Можно скачать, там, по-моему, прям Пайтоновская реализация. Запускаешь на какую-то свою последовательность, он тебе говорит, ок, не ок. Всё супер. У Кнута куча тестов описано в втором томе, по-моему. Но нужно понимать, что это именно статистические свойства последовательности.
-
То есть она выглядит как случайная?
-
Да. Она именно что выглядит. Она похожа на случайную. Она хорошо распределена как-то равномерно. Она может быть красивой и замечательной каким-то свойством удовлетворять, но это всё никаким образом не говорит о её природе.
-
Я бы немножко по-другому сформулировал. Ничего она не говорит о том, что кто-то другой не может её предсказать.
-
Да, именно так. Вот единственный класс датчиков, которые являются именно непредсказуемыми для всех, являются физические датчики случайных чисел. Это вот прям устройство, всегда устройство. которые вставляются в компьютер или подключаются к нему, и на основе каких-то физических процессов генерируют истинную случайность. То есть это вот что-то из квантового мира. Это могут быть атмосферные шумы, это могут быть шумы тока при ПН-переходе в диоде, это могут быть какие-нибудь излучения радиоактивные, что угодно. Вот именно то, что в физике описывается именно терминами теории вероятностей. И действительно, вот эти датчики, можно говорить, что они выдают последовательности, непредсказуемые для всех нарушителей. То есть кто бы ты ни был, даже если ты спроектировал конкретно этот датчик, то ты ничего с этим не сделаешь, потому что есть как бы уравнение квантовой физики, которое тебе не позволит ничего получить.
-
Уравнению я верю, а вот людям, которые сделали такой датчик, уже как бы сложнее. Насколько большой доверием должен быть человек, который собрал это устройство?
-
Но у него может быть сертификат регулятора, если этот регулятор является важной организацией в конкретной стране, не буду показывать пальцем на российского, то доверие тут стопроцентное, и никаких проблем быть не может. Но если мы говорим о каких-то менее доверенных организациях, например, компании Intel, самый крутой пример, который вообще можно привести, то здесь вопросики лезут как червячки. Многие знают, что, например, в процессорах интел реализован физический датчик случайных чисел.—
-
Я не знал, прикольно так.—
-
RDRAND.—
-
То есть есть прямо ассемблерная команда, которая
-
Вся эта технология называется Intel SecureKey или SecurityKey. Ну, что-то такое SecureKey, наверное. Собственно, появилась лет 10 назад в процессорах, в AMD-шных тоже есть. И тогда Intel это позиционировала, что, пацаны, мы решили проблему. Всё, теперь вы все можете использовать наш датчик. Он идеально безопасный. Вот бумажка, где нарисовано, как он реализован. Пользуйтесь. Конечно же, буквально в первый или второй год его появления он вызвал большой скепсис. Появились работы, которые показывали, что, вообще говоря, если посмотреть на его структуру, можно предположить, что если вот сюда вот Intel сделает подкладку какую-то, то выходная последовательность будет статистически хорошей, но вот этих вот статистически хороших последовательностей всего там 2 в 8, допустим, разных может быть, или 2 в 16.
-
Ой, это не так много.
-
Да. И поэтому вы никак не обнаружите, что у вас, например, партия процессоров плохая в конкретную страну какую-нибудь, опять же, не будем показывать пальцем направленные. О, господи! Но перебрать это все очень легко.
-
Офигеть! И причем реально же можно таргетировать прямо, типа, эту партию процессоров мы оставляем в Америке, а вот эту экспортируем.
-
Более того, даже если у тебя никаких аппаратных закладок нет, то нынешние процессоры, они же бесконечно сложные, используют микрокод на выходе из всего этого. что там с новым обновлением микрокода прилетело, непонятно. Что в партии, из которой ты используешь, тоже ничего не понятно. Поэтому, вообще говоря, сейчас, если посмотреть на самых авторитетных в этой области людей, а именно линуксоидов, то они прям с большой опаской до сих пор относятся к этой технологии.
-
Блин, криптография такая тема, я, честно говоря, собирался сделать один эпизод, я уже пишу второй и понимаю, что темы не заканчиваются. Где узнать про аппаратный безопасность побольше?
-
Это неприятный вопрос, потому что особо нигде, к сожалению, ни русскоязычных, ни англоязычных источников хороших по этой теме, даже по какой-то одной конкретной выбранной темочке нет. Есть книги по смарт-картам. Их огромное количество, там на Амазоне есть, на русский переведенное какое-то количество есть. Но они все содержат местами обрывочную информацию, а местами это вот прям справочник. То есть если ты работаешь со смарт-картами и хочешь либо их делать, либо с ними взаимодействовать, то ты можешь купить и пользоваться. А как, не знаю, научно-популярная какая-то книжка, чтобы читать или там разобраться, то, наверное, такого нет. к сожалению. Я бы сказал, что очень много вещей, именно полезных для технорей, которые не каждый день сталкиваются с криптографией, можно найти в книгах Брюса Шнайра. Это прям топ-топ понятного и адекватного объяснения того, чем занимается криптография, чем не занимается. Я бы рекомендовал читать только на английском, потому что русскоязычные переводы настолько вырвиглазные, что прям больно даже о них думать. Cryptographic Engineering, которая описывает именно по пунктикам, как строить безопасную хорошую систему. Что такое шифры? Как реализовать? Как использовать? Что такое закрытый ключ? Как хранить? Как это? Как генерировать случайные числа? Что такое псевдослучайные числа? Что такое случайные? Что такое физические датчики? И вот это вот всё. То есть, прочитав эту книжку, в целом можно сказать, что какой-то базовый бэкграунд для понимания систем криптографии именно в практической сфере уже будет. Все остальное ну как-то гуглить, искать. То есть я думаю, вот мы набор тегов как-то понадавали, в какую сторону смотреть. И здесь уже можно как-то отдельно разбираться.
-
Я так вспоминаю, есть две конференции, Black Hat и Triple C, не знаю, как там это, ccc.de, на которых регулярно бывают доклады про какие-то аппаратно-криптографические штуки. Можно ли на них опираться? Стоит ли их вообще замечать или нет?
-
Да, безусловно. Плюс еще я бы добавил, что в России есть уже конференции свои по криптографии, как прикладной, так и теоретической.
-
Посоветуй какие-нибудь конференции, на которых можно понять, о чем говорят.
-
Ну, прежде всего, РусКрипто, которая каждый год в марте проходит в Подмосковье. У них на сайте выложены материалы за Мне кажется, все годы. Так что там по презентациям можно полистать, посмотреть. Там всегда много докладов именно по и аппаратной криптографии, и по каким-то банковским системам и прочему. То есть если хочется именно быть в тренде, то туда. CTCrypt, который больше в теоретическую сторону, но иногда всякие протокольные и интересные вещи, связанные с прикладной криптографией, тоже затрагивает. Кайф.
-
Сережа, спасибо тебе огромное. Было очень круто.
-
Спасибо. Всегда пожалуйста.