Что общего имеют все методы шифрования с закрытым ключом
Перейти к содержимому

Что общего имеют все методы шифрования с закрытым ключом

  • автор:

Что общего имеют все методы шифрования с закрытым ключом

Криптография — наука о методах обеспечения конфиденциальности и аутентичности информации. Математическая криптография возникла как наука о шифровании информации, т.е. как наука о криптосистемах. В классической модели системы секретной связи имеют место два полностью доверяющих друг другу участника, которым необходимо передавать между собой информацию, не предназначенную для третьих лиц. Такая информация называется конфиденциальной или секретной. Задача обеспечения конфиденциальности, т.е. защита секретной информации от противника — первая задача криптографии.

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

При передаче электронных документов (в том числе и через Интернет) возможна как их подмена или редактура, так и — в случае секретного текста — доступ посторонних лиц к передаваемой информации. Таким образом, электронные документы также нуждаются в криптографической защите.

  • Обеспечение уверенности получателя в том, что документ подлинный и корректный, т.е. при передаче не был подменен или отредактирован;
  • Обеспечение невозможности доступа посторонних лиц к содержанию документа.

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

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

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

Криптографические программные продукты

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

Первая группа, очень широко распространенная — это криптопровайдеры (или CSP, Cryptographic Service Providers). CSP не являются самостоятельными приложениями, они предоставляют криптографические функции другим приложениям — например, таким, как почтовые программы. Пользователь фактически не имеет дела непосредственно с CSP, работая с привычным ему пользовательским интерфейсом. CSP обладают универсальностью — один и тот же CSP может использоваться для работы со множеством различных программ. Примером такого продукта производства ООО «Криптоком» является криптопровайдер МагПро CSP.

Вторая группа — это библиотеки криптографических функций. Такие библиотеки содержат готовые функции, решающие криптографические задачи, и могут использоваться для создания новых приложений. Примером такого продукта производства ООО «Криптоком» является программный продукт «МагПро КриптоПакет».

Криптографические алгоритмы

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

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

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

В настоящее время существует множество криптографических алгоритмов, используемых для решения различных криптографических задач.

Алгоритмы, т.е. сами последовательности действий, не являются секретными.

Стандарты на криптографические алгоритмы

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

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

В России существуют собственные государственные стандарты на алгоритмы шифрования и выработки/проверки электронной подписи: ГОСТ 28147-89, ГОСТ Р 34.10-2012, ГОСТ Р 34.10-2012.

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

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

На криптографические алгоритмы существуют стандарты, т.е. официально оформленные совокупности требований, которым эти алгоритмы должны отвечать. Эти стандарты различны в разных странах и изменяются со временем. Популярные американские алгоритмы — RSA, DSA и т.д. — которые часто используются в распространенных программных продуктах, отвечают американским стандартам.

В России также приняты государственные стандарты на криптографические алгоритмы. Российские производители, в том числе ООО «Криптоком», используют в своих программных продуктах алгоритмы, соответствующие российским стандартам.

Криптографические ключи

В качестве секретной информации используются криптографические ключи.

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

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

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

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

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

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

В асимметричной криптографии применяются так называемые ключевые пары (key pairs). Каждая такая пара состоит из двух связанных между собой ключей. Один из этих ключей — закрытый (private key). Он известен только владельцу ключа и ни при каких условиях не должен быть доступен никому другому. Другой ключ — открытый (public key), он может быть доступен любому желающему.

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

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

Ключевая пара, используемая для работы с ЭП (выработки и проверки ЭП), называется ключами подписи (signature keys). Ключевая пара, используемая для зашифрования и расшифрования сообщений, называется ключами обмена (exchange keys).

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

Эта проблема решается с помощью так называемой гибридной криптографии.

В процессе шифрования прежде всего создается одноразовый (так называемый сеансовый) ключ шифрования (session encryption key). Это симметричный ключ, т.е. один и тот же ключ используется и для зашифрования, и для расшифрования. Одноразовым или сеансовым он называется потому, что используется для зашифрования/расшифрования только одного сообщения.

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

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

Зашифрованный ключ шифрования включается в сообщение.

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

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

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

Таким образом, основное требование к процессу зашифрования по асимметричному алгоритму — чтобы к закрытому ключу обмена никто не имел доступа, кроме владельца этого ключа — соблюдается. Для того, чтобы получить доступ к ключу шифрования, необходим доступ к закрытому ключу обмена; но после того, как произведено расшифрование ключа шифрования с помощью закрытого ключа обмена, этот ключ шифрования больше никогда не используется, так что говорить о его компрометации не имеет смысла.

Сертификаты

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

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

Для того чтобы центр выпустил сертификат на открытый ключ, абоненту необходимо прислать заявку (запрос) на такой сертификат. Заявка содержит открытый ключ и всю информацию о нем и о владельце. Центр проверяет подлинность и корректность этой информации (как именно — зависит от регламента центра) и выпускает сертификат, заверяя его своей электронной подписью.

Цепочки доверия

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

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

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

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

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

Датчики случайных чисел и создание ключей

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

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

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

Очень удобны и быстры так называемые аппаратные датчики случайных чисел, представляющие собой физические устройства — платы, подключенные к компьютеру. Такие датчики создают последовательности случайных чисел на основе физических процессов. Генерация последовательностей случайных чисел с помощью аппаратного датчика происходит очень быстро и без участия пользователя.

Но такие датчики устанавливаются не на каждом компьютере. Поэтому часто для создания ключей используется клавиатурный датчик случайных чисел~— программа, использующая для создания последовательности случайных чисел физический процесс нажатия клавиш пользователем. Для инициализации такого датчика пользователю необходимо нажать определенное количество указываемых ему клавиш (если все клавиши нажаты безошибочно, то нужно 40 нажатий; если пользователь допускает ошибочные нажатия, количество необходимых нажатий увеличивается). Создание ключей с помощью клавиатурного датчика — более медленный процесс, чем создание ключей с помощью аппаратного датчика, но его можно осуществить на любом компьютере.

Хранение закрытых ключей

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

  • Устройство должно включать в себя область памяти, достаточной, чтобы записать туда закрытые ключи (иногда эту область памяти называют «хранилищем ключей»);
  • Устройство должно легко подключаться к компьютеру, чтобы ключи могли быть считаны;
  • Устройство должно легко отключаться от компьютера, чтобы злоумышленники не могли считать с него ключи.

Таким условиям удовлетворяет USB-токен «Вьюга», разработанный в ООО «Криптоком». Устройство «Вьюга» включает в себя генератор случайных чисел (т.е. может использоваться как датчик случайных чисел при генерации ключей) и область памяти объема, достаточного для хранения ключей. Устройство подключается к компьютеру через USB-порт. Возможно подключение устройства к компьютеру непосредственно в процессе работы.

Компрометация ключей

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

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

Современная криптография. Алгоритмы шифрования

BLOG-min

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

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

Основные понятия криптографии

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

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

Симметричное шифрование

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

Асимметричное шифрование

Этот алгоритм широко используется во Всемирной сети. Его также называют открытым ключом криптографии (PKC). Алгоритм PKC использует два ключа: открытый и закрытый.

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

Хэш-функции, хэширование

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

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

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

Блочный шифр

Является разновидностью симметричного шифрования. Блочное шифрование подразумевает, что каждый блок данных шифруется или расшифровывается отдельно, причем каждый бит в выходном блоке зависит от каждого бита в соответствующем входном блоке, но не от других битов. Размер блока определяется алгоритмом. В большинстве случаев блоки обычно имеют 64-или 128-разрядный формат. Это означает, что их размер предопределен и остается всегда неизменным.

Потоковый шифр

Использует симметричное шифрование. В отличие от блока, где все шифрование происходит одновременно, потоковое выполняется по одному биту за раз. Преобразование символов открытого сообщения в символы шифрованного происходит в зависимости от их расположения в потоке открытого текста и используемого ключа.

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

Цифровая подпись (ЦП)

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

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

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

Преимущества криптографии

  • Конфиденциальность. Использование криптографии защищает конфиденциальную информацию от несанкционированного доступа.
  • Неотрекаемость, аутентификация. Сообщения, зашифрованные частным ключом или подписанные цифровой подписью, подтверждают личность заявленного отправителя.
  • Контроль и управление доступом. Криптография, используя различные алгоритмы шифрования, обеспечивает ограниченный контроль доступа к хранящейся или передаваемой информации. Благодаря этому, расшифровывать сообщения могут только держатели секретных ключей.
  • Проверка подлинности. Криптографические методы, такие как коды аутентификации сообщений и цифровые подписи, могут защитить информацию от подмены и подделки.
  • Целостность данных. Криптографические хэши используются для сохранения целостности сообщений. С помощью дайджестов можно определить, была ли изменена информация во время ее передачи по сети.

В заключении хочется посоветовать международную криптобиржу Currency.com.
Currency.com основана в 2019 году и является одной из самых перспективных и безопасных криптоплатформ в восточном полушарии. Служба технической поддержки Currency.com работает 24/7 и оперативно отвечает на запросы пользователей.

Запись опубликована 20.11.2018 автором ArtisMedia в рубрике Криптовалюта.

Свежие записи

  • Bitrix CMS: Раскрываем Потенциал для Вашего Веб-Сайта
  • Обновление PHP: Почему это обязательно для вашего сайта
  • Битрикс24 Copilot: Ваш личный помощник для автоматизации и улучшения рабочих процессов
  • Тренды и лучшие практики в кибербезопасности: как защитить свой бизнес онлайн
  • Будущее искусственного интеллекта

Рубрики

Архивы

  • Октябрь 2023 (5)
  • Сентябрь 2023 (2)
  • Август 2023 (2)
  • Июль 2023 (1)
  • Июнь 2023 (2)
  • Май 2023 (1)
  • Апрель 2023 (2)
  • Март 2023 (3)
  • Январь 2023 (2)
  • Декабрь 2022 (1)
  • Ноябрь 2022 (2)
  • Октябрь 2022 (2)
  • Сентябрь 2022 (2)
  • Август 2022 (2)
  • Июнь 2022 (1)
  • Май 2022 (1)
  • Апрель 2022 (1)
  • Март 2022 (7)
  • Январь 2022 (10)
  • Декабрь 2021 (3)
  • Ноябрь 2021 (5)
  • Октябрь 2021 (2)
  • Сентябрь 2021 (2)
  • Июль 2021 (1)
  • Июнь 2021 (1)
  • Май 2021 (3)
  • Февраль 2021 (3)
  • Январь 2021 (1)
  • Декабрь 2020 (1)
  • Ноябрь 2020 (3)
  • Октябрь 2020 (1)
  • Сентябрь 2020 (5)
  • Август 2020 (1)
  • Июль 2020 (3)
  • Июнь 2020 (1)
  • Май 2020 (3)
  • Апрель 2020 (1)
  • Март 2020 (2)
  • Февраль 2020 (1)
  • Декабрь 2019 (1)
  • Ноябрь 2019 (1)
  • Октябрь 2019 (3)
  • Сентябрь 2019 (3)
  • Июль 2019 (1)
  • Май 2019 (3)
  • Апрель 2019 (8)
  • Март 2019 (8)
  • Февраль 2019 (7)
  • Январь 2019 (9)
  • Декабрь 2018 (7)
  • Ноябрь 2018 (8)
  • Октябрь 2018 (8)
  • Сентябрь 2018 (8)
  • Август 2018 (7)
  • Июль 2018 (4)
  • Июнь 2018 (8)
  • Май 2018 (8)
  • Апрель 2018 (6)
  • Март 2018 (3)
  • Февраль 2018 (1)
  • Ноябрь 2017 (1)
  • Октябрь 2017 (2)
  • Август 2017 (4)
  • Июль 2017 (6)
  • Июнь 2017 (5)
  • Май 2017 (1)
  • Апрель 2017 (6)
  • Март 2017 (10)
  • Февраль 2017 (12)
  • Январь 2017 (8)
  • Декабрь 2016 (10)
  • Ноябрь 2016 (12)
  • Октябрь 2016 (11)
  • Сентябрь 2016 (11)
  • Август 2016 (13)
  • Июль 2016 (11)
  • Июнь 2016 (13)
  • Май 2016 (6)
  • Апрель 2016 (7)
  • Март 2016 (5)
  • Февраль 2016 (5)
  • Январь 2016 (5)
  • Декабрь 2015 (2)
  • Ноябрь 2015 (8)
  • Октябрь 2015 (1)
  • Сентябрь 2015 (4)
  • Август 2015 (7)
  • Июль 2015 (5)
  • Июнь 2015 (4)
  • Май 2015 (14)
  • Апрель 2015 (1)
  • Март 2015 (4)
  • Февраль 2015 (6)
  • Январь 2015 (1)
  • Декабрь 2014 (1)
  • Ноябрь 2014 (5)
  • Октябрь 2014 (9)
  • Сентябрь 2014 (9)
  • Февраль 2014 (1)
  • Ноябрь 2013 (2)
  • Сентябрь 2013 (4)
  • Август 2013 (7)
  • Июль 2013 (4)
  • Май 2013 (7)

Простейшие методы шифрования с закрытым ключом

Гаммирование – метод шифрования, основанный на «наложении» гамма-последовательности на открытый текст . Обычно это суммирование в каком-либо конечном поле (суммирование по модулю). Например, в поле GF(2) такое суммирование принимает вид обычного «исключающего ИЛИ». При расшифровке операция проводится повторно, в результате получается открытый текст .

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

Шифры замены (подстановки) основаны на том, что символы исходного текста, обычно разделенные на блоки и записанные в одном алфавите, заменяются одним или несколькими символами другого алфавита в соответствии с принятым правилом преобразования.

Шифр многоалфавитной замены (или подстановки) – группа методов шифрования подстановкой, в которых для замены символов исходного текста используется не один, а несколько алфавитов по определенному правилу.

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

Шифр простой (или одноалфавитной) замены, простой подстановочный шифр, моноалфавитный шифр— группа методов шифрования, которые сводятся к созданию по определённому алгоритму таблицы шифрования, в которой для каждой буквы открытого текста существует единственная сопоставленная ей буква шифртекста . Само шифрование заключается в замене букв согласно таблице. Для расшифровки достаточно иметь ту же таблицу, либо знать алгоритм , по которой она генерируется.

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

Краткие итоги

Симметричные шифры – способ шифрования, в котором для шифрования и расшифровывания применяется один и тот же криптографический ключ . Ключ шифрования должен сохраняться в секрете обеими сторонами.

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

В методах перестановки символы исходного текста меняются местами друг с другом по определенному правилу.

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

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

Частным случаем многоалфавитной подстановки является гаммирование – метод шифрования, основанный на «наложении» гамма-последовательности на открытый текст . Обычно это суммирование в каком-либо конечном поле (суммирование по модулю длины алфавита).

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

Набор для практики

Вопросы для самопроверки
  1. Поясните общую схему симметричного шифрования.
  2. Что общего имеют все методы шифрования с закрытым ключом?
  3. Назовите основные группы методов шифрования с закрытым ключом.
  4. Приведите примеры шифров перестановки.
  5. Сформулируйте общие принципы для методов шифрования подстановкой.
  6. В чем заключаются многоалфавитные подстановки?
  7. Приведите пример шифра одноалфавитной замены.
  8. Опишите алгоритм любого метода шифрования перестановкой. Приведите пример шифрования некоторого сообщения этим методом. Каков алгоритм расшифрования в этом методе?
  9. К какой группе методов шифрования с закрытым ключом относится метод с использованием таблицы Вижинера? Каковы алгоритмы шифрования и расшифрования в этом методе? Приведите пример шифрования некоторого сообщения этим методом.
  10. Каким образом можно зашифровать и расшифровать сообщение методом табличной перестановки, если размер шифруемого сообщения не кратен размеру блока?
  11. Что такое монофонические шифры?
Упражнения для самопроверки
  1. Имеется таблица замены для двух шифров простой замены: шифра №1 и шифра №2.

  • И.РЮУ.ЪФОБГНО
  • CЛХГ.ЪЛХО.ФОО.ЩВ

Расшифруйте сообщения, зашифрованные с помощью шифра №2:

  • \bigtriangledown * ! ( \infty \blacklozenge № >\sharp \oplus» /></li>
<li><img decoding=
АБВГДЕЁЖЗИЙКЛМНОПРСТУФХЦЧШЩЪЫЬЭЮЯ
  • КРИПТОСТОЙКОСТЬ
  • ГАММИРОВАНИЕ
АБВГДЕЖЗИЙКЛМНОПРСТУФХЦЧШЩЪЫЬЭЮЯ_
  • ШВМБУЖНЯ
  • ЯБХЪШЮМХ
  • ЖЕЛТЫЙ_ОГОНЬ
  • МЫ_НАСТУПАЕМ
  • СЛПИЬНАЕ
  • РОИАГДВН
  • МОЙ ПАРОЛЬ – ЙПМ ООЬАЛР
  • СИГНАЛ БОЯ – НИСАГО ЛЯБ
  • ШИРОКОПОЛОСНЫЙ УСИЛИТЕЛЬ (ключ: 41235)
  • ПЕРЕДАЧА ИЗОБРАЖЕНИЯ (ключ: 24513)
  • ЕАУПД_КЕАЗАРЧВ (ключ: 4123)
  • А_НСЫИЛБСАЛЙГ (ключ: 3142)
Таблица замен для пропорционального шифра

Символ Варианты замены Символ Варианты замены
А 760 128 350 201 С 800 767 105
Б 101 Т 759 135 214
В 210 106 У 544
Г 351 Ф 560
Д 129 Х 768
Е 761 130 802 352 Ц 545
Ж 102 Ч 215
З 753 Ш 103
И 762 211 131 Щ 752
К 754 764 Ъ 561
Л 132 354 Ы 136
М 755 742 Ь 562
Н 763 756 212 Э 750
О 757 213 765 133 353 Ю 570
П 743 766 Я 216 104
Р 134 532 Пробел 751 769 758 801 849 035…
  • 353214764134136759136762849754128212350354035767106216753211
  • 351 761756130532128759353134758105757213101752352763211762

Криптографические алгоритмы

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

ФУНКЦИЯ XOR

XOR (исключающее ИЛИ) — критически важная логическая операция, используемая во многих, если не во всех, криптографических алгоритмах. На рисунке 1 показано, как работает эта базовая функция. Ее понимание необходимо перед анализом любого из алгоритмов.

ИСКЛЮЧАЮЩЕЕ ИЛИ — ОСНОВНОЙ ЭЛЕМЕНТ ШИФРОВАНИЯ БЕЗ ПОТЕРИ ДАННЫХ

Благодаря свойствам XOR один из входов может использоваться в качестве ключа для передачи данных на другой вход. Например, если A — одиночный бит ключа шифрования, XOR с битом данных из B «переключает» бит в другое состояние, если A — 1. Повторное применение побитовой операции XOR с ключом и зашифрованным сообщением расшифровывает его.

Рассмотрим пример. Наша цель -зашифровать слово Secret ключом с помощью XOR, а затем расшифровать его с помощью того же ключа и функции XOR. Это делается следующим образом.

1. Выбираем ключ. В его качестве мы выбираем букву k.

2. Преобразуем букву k в двоичный код, используя стандарт кодировки символов ASCII (American Standard Code for Information Interchange). Результат: 01101011.

3. Преобразуем слово Secret в двоичный код. Результат: 01010011 01100101 0110 0011 01110010 01100101 01110100.

4. Применяем операцию XOR к каждой букве слова Secret с ключом k. Получаем зашифрованное сообщение (см. табл. 1).

5. Теперь, чтобы расшифровать зашифрованное сообщение, мы применяем к нему XOR с кодом ключа k. Этот шаг возвращает первоначальное слово Secret (см. табл. 2).

БЕЗОПАСНЫЙ АЛГОРИТМ ХЭШИРОВАНИЯ SHA

Основное назначение функции SHA (Secure Hash Algorithm) состоит в сжатии данных переменного размера в битовую строку фиксированного размера. Эта операция называется хэшированием.

Функции SHA — это семейство алгоритмов хэширования, разрабатываемых в течение длительного времени под наблюдением американского Национального института стандартов и технологий (NIST). Последним из них является функция SHA-3. На рисунке 2 показана основная концепция безопасной генерации хэша.

Таблица 1. Зашифрованное сообщение после применения операции XOR с ключом k

S e c r e t
01010011 01100101 01100011 01110010 01100101 01110100
Результат применения XOR к «ключу» 01101011 01101011 01101011 01101011 01101011 01101011
Зашифрованное значение 00111000 00001110 00001000 00011001 00001110 00011111

Таблица 2. Расшифрованное сообщение после применения операции XOR с кодом ключа k

Зашифрованное значение 00111000 00001110 00001000 00011001 00001110 00011111
Результат применения XOR к «ключу» 01101011 01101011 01101011 01101011 01101011 01101011
Расшифрованное значение 01010011 01100101 01100011 01110010 01100101 01110100
S e c r e t

Рис. 2. Структурная схема базовой концепции безопасной генерации хэша

Рис. 1. Схема работы функции XOR

Функция SHA имеет следующие характеристики.

1. Переменная длина входного текста.

2. Фиксированная длина выходного значения.

3. Это необратимая функция. Используя алгоритм, описанный на рисунке 2, невозможно использовать полученное хэш-значение для регенерации входного текста, кроме как попробовать каждый возможный входной текст. Для достаточно больших входных данных это становится вычислительно невозможным.

4. Если одно и то же входное сообщение подается в функцию SHA, она всегда генерирует один и тот же результирующий хэш.

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

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

Если хэш-функция удовлетворяет всем перечисленным требованиям, она считается сильной хэш-функцией. Некоторые из используемых в настоящее время функций SHA — это SHA-1, SHA-2 и SHA-3.

Теперь давайте рассмотрим, как работают функции SHA. В этой статье мы рассмотрим только SHA-2 и SHA-3. SHA-1 постепенно выводится из применения и не рекомендуется для каких-либо новых устройств.

Рис. 3. Безопасная генерация хэша с помощью функции SHA-256

Рис. 4. Безопасная генерация хэша с помощью функции SHA3-256

КАК РАБОТАЕТ SHA-2?

Функция SHA-2 имеет четыре основных типа, различающихся длиной выходного значения:

1. SHA-224 — хэш имеет длину 224 бит.

2. SHA-256 — хэш имеет длину 256 бит.

3. SHA-384 — хэш имеет длину 384 бит.

4. SHA-512 — хэш имеет длину 512 бит.

В качестве примера рассмотрим SHA-256. На рисунке 3 показана структурная схема алгоритма SHA-256.

БЕЗОПАСНАЯ ГЕНЕРАЦИЯ ХЭША: ФУНКЦИЯ SHA-256

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

КАК РАБОТАЕТ SHA-3?

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

1. SHA3-224 — хэш имеет длину 224 бит.

2. SHA3-256 — хэш имеет длину 256 бит.

3. SHA3-384 — хэш имеет длину 384 бит.

4. SHA3-512 — хэш имеет длину 512 бит.

Давайте рассмотрим в качестве примера SHA3-256. SHA-3 использует функцию криптографической губки Keccak. Аналогично губке, на первом шаге входное сообщение «впитывается» или «поглощается». На следующем этапе «выжимается» выходной хэш. На рисунке 4 представлена структурная схема функции SHA3-256.

БЕЗОПАСНАЯ ГЕНЕРАЦИЯ ХЭША: ФУНКЦИЯ SHA3-256

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

По ее завершении последний 1600-бит блок передается для сжатия. В этом случае, поскольку длина выходного хэша SHA3-256 не превышает 1088 бит, фаза сжатия не нуждается в каких-либо итеративных функциях. Первые 256 бит с последнего этапа и есть выходной хэш.

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

AES (УСОВЕРШЕНСТВОВАННЫЙ СТАНДАРТ ШИФРОВАНИЯ)

Как и у более старых алгоритмов шифрования, например DES (стандарт шифрования данных) и 3DES (тройной стандарт шифрования данных), целью алгоритма AES является обратимое скремблирование и замена входных данных на основе значения входного ключа. Результат называется шифротекстом.

Алгоритм AES был разработан для замены уязвимых для атак алгоритмов DES и 3DES, появившихся ранее. На рисунке 5 описан алгоритм AES.

АЛГОРИТМ AES

Алгоритм AES — это алгоритм шифрования фиксированной ширины. Поэтому входное сообщение сначала дополняется так, чтобы оно заняло целое число 128-бит блоков.

Рис. 5. Краткий обзор алгоритма AES

Рис. 6. Обзор алгоритма DES

Каждый 128-бит блок подается в алгоритм шифрования вместе с ключом шифрования. В зависимости от количества битов в ключе шифрования алгоритм AES выполняет определенное количество раундов сокрытия битов входного блока.

Сокрытие осуществляется с помощью перетасовки битов данных, взятия частей данных и замены их значениями из таблицы поиска (например, шифра Цезаря), а также выполнения операций XOR для переключения битов с 0 на 1 в соответствии со значениями битов в наборе «раундовых ключей», генерируемых из входного ключа шифрования. Раундовый ключ используется один раз для одного из раундов сокрытия и создается «расширением» части ключа шифрования с помощью копирования битов и вставки этих копий между другими битами.

Функция дешифрования AES выполняет обратные операции функции шифрования, используя для расшифровки исходных данных входного блока тот же ключ шифрования.

3DES (ТРОЙНОЙ СТАНДАРТ ШИФРОВАНИЯ ДАННЫХ)

Основная идея алгоритма 3DES заключается в обратимом скремблировании и замене входных данных на основе входного ключа. Результат называется шифротекстом.

Алгоритм 3DES основан на алгоритме DES, разработанном в 1970-х гг. Когда в 1990-х гг. DES был скомпрометирован, стала очевидна необходимость в более безопасном алгоритме. 3DES оказался скорейшим решением проблем с DES. Чтобы понять алгоритм 3DES, сначала следует рассмотреть описание оригинального DES, показанного на рисунке 6.

Рис. 7. Для создания алгоритма 3DES используются три операции DES

Рис. 8. Общее представление о шифровании RSA

АЛГОРИТМ DES

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

Каждый 64-бит блок подается в алгоритм ш ифрования вместе с 56-бит кл ючом шифрования (большинство версий алгоритма принимают 64-бит ключ, но 8 бит игнорируются). функция шифрования использует входной ключ для генерации 16 «подключей», каждый из которых используется для 16 раундов сокрытия битов входного блока. Это сокрытие осуществляется с помощью перетасовки битов данных, взятия частей данных и замены их значениями из таблицы поиска (например, шифра Цезаря), а также выполнения операций XOR для переключения битов с 0 на 1 в соответствии со значениями битов в подключах.

Функция дешифрования DES выполняет обратные операции функции шифрования, используя для расшифровки исходных данных входного блока тот же ключ шифрования.

Посмотрим, как работает 3DES.

ПРЕВРАЩЕНИЕ АЛГОРИТМА DES В 3DES

После открытия уязвимости DES для атак методом «грубой силы» (циклического перебора всех возможных значений ключа до тех пор, пока не обнаружатся исходные блоки сообщений), был разработан простой метод эффективного увеличения размера ключа шифрования. На рисунке 7 представлено решение 3DES.

Алгоритм 3DES — это в прямом смысле три операции DES. Первая и последняя из них являются операциями шифрования, в то время как средняя представляет собой операцию дешифрования. Заметим, что «шифрование» и «дешифрование» — просто названия, присвоенные операциям скремблирования, которые являются обратными друг другу.

Для каждой операции DES, выполняемой в 3DES, используется соответствующий ключ. Часто для первой и третьей операций применяется один и тот же ключ. Использование одного и того же ключа для первой и третьей операций и другого ключа для средней операции эффективно удваивает общую длину ключа. Это делает атаку «грубой силы» намного сложнее и устраняет уязвимости алгоритма DES.

СИСТЕМА ШИФРОВАНИЯ

С открытым ключом RSA

Система RSA, названная в честь своих создателей — Рона Ривеста (Ron Rivest), Ади Шамира (Adi Shamir) и Леонарда Адлемана (Leonard Adleman), является одной из первых асимметричных систем шифрования/дешифрования с открытым ключом. Этот алгоритм использует свойства арифметических операций над абсолютными значениями простых чисел для генерации открытого ключа для шифрования и закрытого ключа для дешифрования. Операции шифрования и дешифрования основаны на этом же принципе. Общее представление об RSA дает рисунок 8.

Операция генерации ключей и шифрования/дешифрования известна как односторонняя функция, или «лазейка». Это математические операции, которые относительно просто вычислить в одном направлении, но трудно в другом. Например, легко выполнить умножение на 2, но труднее вычислить квадратный корень из X.

Рис. 9. ECDSA позволяет проверять цифровые подписи

Рис. 10. Протокол обмена ключами ECDH позволяет двум сторонам установить общий ключ для передачи данных

В случае RSA два больших простых числа умножаются для создания части открытого и закрытого ключей. Умножение — простая операция; разложение на множители для нахождения секретных простых чисел — трудная.

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

Безопасность RSA зависит от больших п ростых ч исел и сложн ых операций. Даже легкий путь с его функцией «лазейки» с большими ключами для очень многих вычислительных систем является затруднительным. Поэтому RSA часто используется в качестве средства передачи общих ключей шифрования, которые можно использовать в более быстрых симметричных алгоритмах, например DES, 3DES и AES для отдельных транзакций.

АЛГОРИТМ ECDSA

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

Цифровые подписи генерируются с помощью входного сообщения, закрытого ключа и случайного числа. Затем открытый ключ можно использовать для проверки того, что владелец подписи (или участник) владеет соответствующим закрытым ключом и потому является подлинным. Эту концепцию иллюстрирует рисунок 9.

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

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

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

ПРОТОКОЛ ОБМЕНА КЛЮЧАМИ ECDH

Протокол обмена ключами Диффи-Хеллмана на эллиптических кривых (ECDH) позволяет двум участникам определить общий ключ для обмена данными; существует только одна часть скрытой информации, называемая закрытым ключом. Без этого ключа одной из вовлеченных сторон перехватчик не сможет легко определить общий ключ. Однако этот алгоритм позволяет объединить закрытый ключ одной стороны и открытый ключ другой стороны для получения результирующего ключа, который является одинаковым для обеих сторон. Эта концепция иллюстрируется рисунком 10.

ОБМЕН КЛЮЧАМИ ECDH

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

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

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

Используя открытые ключи с сертификатами от доверенного центра, участники ECDH могут быть уверены, что их коллега является подлинным участником.

Автор: ЗИЯ САРДАР (ZIA SARDAR), инженер по приложениям, Maxim Integrated

Опубликовано в журнале «Электронные Компоненты» №9, 2020 г.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *