RU2633186C1 - Personal device for authentication and data protection - Google Patents
Personal device for authentication and data protection Download PDFInfo
- Publication number
- RU2633186C1 RU2633186C1 RU2016152039A RU2016152039A RU2633186C1 RU 2633186 C1 RU2633186 C1 RU 2633186C1 RU 2016152039 A RU2016152039 A RU 2016152039A RU 2016152039 A RU2016152039 A RU 2016152039A RU 2633186 C1 RU2633186 C1 RU 2633186C1
- Authority
- RU
- Russia
- Prior art keywords
- data
- token
- computer
- protocol
- tablet
- Prior art date
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/38—Information transfer, e.g. on bus
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/30—Authentication, i.e. establishing the identity or authorisation of security principals
- G06F21/31—User authentication
- G06F21/34—User authentication involving the use of external additional devices, e.g. dongles or smart cards
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/30—Authentication, i.e. establishing the identity or authorisation of security principals
- G06F21/31—User authentication
- G06F21/34—User authentication involving the use of external additional devices, e.g. dongles or smart cards
- G06F21/35—User authentication involving the use of external additional devices, e.g. dongles or smart cards communicating wirelessly
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/606—Protecting data by securing the transmission between two devices or processes
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/40—Network security protocols
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W80/00—Wireless network protocols or protocol adaptations to wireless operation
Landscapes
- Telephonic Communication Services (AREA)
Abstract
Description
Область техники, к которой относится изобретениеFIELD OF THE INVENTION
Настоящее изобретение относится к области обеспечения безопасности информации в рамках компьютерных и телекоммуникационных систем и, в частности, при обмене электронными данными между провайдерами и пользователями интернет-услуг (сервисов).The present invention relates to the field of information security in the framework of computer and telecommunication systems and, in particular, in the exchange of electronic data between providers and users of Internet services (services).
Уровень техникиState of the art
Для обеспечения надежной защиты передаваемых по каналам сети электронных данных, как правило, реализуются криптографические преобразования информации.To ensure reliable protection of electronic data transmitted over the network channels, as a rule, cryptographic transformations of information are implemented.
К таким преобразованиям относятся шифрование/расшифрование данных, создание и проверка электронных подписей (ЭП) сторон под конкретными блоками (пакетами) данных или целыми файлами и документами, а также необходимые для реализации этих основных преобразований дополнительные процедуры хэширования (специального криптографически стойкого сжатия) данных, перед их подписыванием, а также генерация и хранение ключей для шифрования и электронной подписи.Such transformations include data encryption / decryption, creation and verification of electronic signatures (ES) of the parties under specific blocks (packets) of data or entire files and documents, as well as additional hashing procedures (special cryptographically strong compression) of data necessary for implementing these basic transformations, before signing them, as well as generating and storing keys for encryption and electronic signature.
Использование электронной подписи для аутентификации электронных данных получает заметное расширение сферы применения и приобретает значительно более высокий уровень практической значимости, если заверенные с ее помощью электронные данные приобретают статус официальных (электронных) документов в рамках действующих законов и постановлений.The use of an electronic signature for authentication of electronic data receives a significant expansion of the scope and acquires a significantly higher level of practical significance if the electronic data certified with its help acquire the status of official (electronic) documents within the framework of existing laws and regulations.
Придание электронным данным статуса документов в рамках действующего законодательства предусматривает точное и безусловное выполнение всех требований действующих законов и других нормативных актов, в особенности, положений закона РФ «Об электронной подписи». В этом законе, в частности, предусматривается полная ответственность пользователя за надежное сохранение своего закрытого ключа создания электронной подписи в недоступности для посторонних. А также требуется обеспечение правильности выполнения криптографических преобразований - хэширования данных, создания и проверки ЭП, за что отвечает непосредственно производитель средств ЭП.Giving electronic data the status of documents within the framework of the current legislation provides for the exact and unconditional fulfillment of all requirements of existing laws and other regulatory acts, in particular, the provisions of the RF Law “On Electronic Signature”. This law, in particular, provides for the full responsibility of the user for the reliable preservation of his private key to create an electronic signature inaccessible to outsiders. It also requires ensuring the correctness of cryptographic transformations — hashing data, creating and verifying electronic signatures, for which the manufacturer of electronic means is directly responsible.
Кроме того, статья 12 ФЗ-63 «Об электронной подписи» требует, чтобы именно конкретное средство ЭП визуализировало для пользователя информацию, которая аутентифицируется его электронной подписью. Поэтому разработчики современных средств ЭП предложили использовать для реализации технологии ЭП вместе с компьютером специализированные компактные электронные устройства с экраном для визуализации подписываемой информации (получившие у специалистов название «устройства типа Touch Screen»), обычно присоединяемые к компьютеру пользователя через USB-разъем. Простота и функциональная ограниченность самого такого устройства визуализации и его операционной системы служат определенной защитой от возможного заражения исполняемых на нем программ вредоносными программами через сеть, к которой подсоединен компьютер.In addition, Article 12 of Federal Law-63 “On Electronic Signatures” requires that a particular electronic signature means to visualize information for a user that is authenticated by his electronic signature. Therefore, developers of modern electronic devices have suggested using specialized compact electronic devices with a screen to visualize signed information (called “Touch Screen type devices”), which are usually connected to a user's computer via a USB connector, to implement electronic technology together with a computer. The simplicity and functional limitations of such a visualization device and its operating system provide some protection against possible infection of the programs executed on it with malware through the network to which the computer is connected.
Применение программ шифрования по любому из классических симметричных методов для защиты передаваемых по каналам связи данных также обеспечивает их гарантированную защиту от несанкционированного доступа и изменения только при условии сохранения в недоступности для злоумышленника закрытых параметров метода шифрования - ключей шифрования.The use of encryption programs according to any of the classical symmetric methods for protecting data transmitted via communication channels also ensures their guaranteed protection against unauthorized access and changes only if the encrypted method parameters, encryption keys, are kept inaccessible to the attacker.
Применение для шифрования больших массивов данных любого из известных на сегодня методов так называемого «асимметричного шифрования» (шифрования с открытым ключом), для которых ключ шифрования может быть открытым (общедоступным), не может конкурировать по скорости с симметричным шифрованием.The use of any of the currently known methods of so-called “asymmetric encryption” (public key encryption) for encrypting large amounts of data, for which the encryption key can be public (public), cannot compete in speed with symmetric encryption.
Перечисленные выше требования действующих законов приводят к тому, что на практике пользователи во многих случаях применяют для выполнения криптографических преобразований не программы, исполняемые под управлением операционной системы компьютера, планшета или смартфона, а отдельные защищенные аппаратные устройства (модули), присоединяемые по физическому или электромагнитному каналу к их компьютерам, планшетам или смартфонам. Физически они могут быть выполнены как аппаратные токены, смарт-карты, таблетки Touch Memory и т.д.The requirements of the current laws listed above lead to the fact that in many cases, for users of cryptographic transformations, they do not use programs protected under the control system of a computer, tablet or smartphone, but separate protected hardware devices (modules) connected via a physical or electromagnetic channel to their computers, tablets or smartphones. Physically, they can be executed as hardware tokens, smart cards, Touch Memory tablets, etc.
В дальнейшем для обозначения любого из таких внешних аппаратных устройств (модулей) используется единый термин - аппаратный токен или просто токен, если из контекста понятно, что речь идет именно об аппаратном модуле.In the future, to designate any of such external hardware devices (modules), a single term is used - a hardware token or just a token, if it is clear from the context that this is a hardware module.
Такие специализированные аппаратные модули (токены) обеспечивают более надежное, чем в программных модулях на компьютере, сохранение закрытых параметров криптографических преобразований - закрытых ключей. Однако при этом они значительно снижают скорость обработки защищаемой информации по сравнению с реализацией тех же самых криптографических преобразований при помощи прикладных или системных программных модулей на более мощном основном микропроцессорном устройстве пользователя - компьютере, планшете или смартфоне.Such specialized hardware modules (tokens) provide more reliable than in the software modules on the computer, the preservation of private parameters of cryptographic transformations - private keys. However, at the same time, they significantly reduce the processing speed of protected information compared to the implementation of the same cryptographic transformations using application or system software modules on a more powerful main microprocessor device of a user - a computer, tablet or smartphone.
Задачей настоящего изобретения является создание защищенного компактного персонального устройства (аппаратного модуля) аутентификации и защиты данных, присоединяемого по физическому или электромагнитному каналу к компьютеру, планшету или смартфону и позволяющего без снижения уровня защиты информации повысить скорость обмена данными токена с компьютером, планшетом или смартфоном, к которому он подключен.The objective of the present invention is to provide a secure compact personal device (hardware module) for authentication and data protection, connected via a physical or electromagnetic channel to a computer, tablet or smartphone and allowing to increase the rate of token data exchange with a computer, tablet or smartphone without reducing the level of information protection, to to which it is connected.
Сущность изобретенияSUMMARY OF THE INVENTION
Техническим результатом изобретения является повышение скорости обмена данными токена с компьютером, планшетом или смартфоном, к которому он подключен, без снижения уровня защиты информации.The technical result of the invention is to increase the speed of exchanging token data with the computer, tablet or smartphone to which it is connected, without compromising the level of information security.
Персональное устройство аутентификации и защиты данных (токен) включает центральный процессор (CPU), оперативную память (RAM), энергонезависимую память (NVM), соединенные общей шиной, имеющей интерфейс для соединения с коннектором, служащим для подключения токена к компьютеру, планшету или смартфону по физическому или электромагнитному каналу, модуль настройки туннелирования блоков данных и команд протокола прикладного уровня и/или блоков коммуникационного уровня. Модуль настройки туннелирования выполнен с возможностью инкапсулировать блоки данных таким образом, чтобы длина блока данных коммуникационного уровня, в который производится туннелирование, была кратной длине блоков данных прикладного и транспортного уровней, или таким образом, чтобы длина блоков данных прикладного и транспортного уровней была кратной длине блока данных коммуникационного уровня, в который производится туннелирование, а также выполнен с возможностью в зависимости от команды преобразования данных токеном выбора протокола коммуникационного уровня, в который производится туннелирование, таким образом, чтобы при реализации в токене преобразований данных, получаемых из компьютера, планшета или смартфона, путем многократного выполнения одной и той же команды проверять только конечный результат выполнения всей последовательности команд, составляющих преобразование, по ее завершении без контролирования отдельно результатов каждого выполнения этой команды.A personal authentication and data protection device (token) includes a central processor (CPU), random access memory (RAM), non-volatile memory (NVM) connected by a common bus, which has an interface for connecting to a connector used to connect the token to a computer, tablet or smartphone via physical or electromagnetic channel, tuner tuning module for data blocks and application protocol protocol commands and / or communication level blocks. The tunneling tuning module is configured to encapsulate data blocks so that the length of the data block of the communication layer into which tunneling is a multiple of the length of the data blocks of the application and transport layers, or so that the length of the data blocks of the application and transport layers is a multiple of the block length data of the communication level to which tunneling is performed, and is also configured to, depending on the data conversion command, select a gap of the communication level to which tunneling is performed, so that when implementing data tokens received from a computer, tablet or smartphone by repeatedly executing the same command, only check the final result of the entire sequence of commands that make up the conversion completion without separately controlling the results of each execution of this command.
Краткое описание чертежейBrief Description of the Drawings
На фиг. 1 изображена схема взаимодействия сторон, иллюстрирующая пример сценария, в котором аппаратный токен используется для безопасного доступа по каналам сети к удаленному серверу провайдера дистанционных электронных услуг.In FIG. 1 is a diagram of the interaction of the parties, illustrating an example of a scenario in which a hardware token is used for secure access via network channels to a remote server of a provider of remote electronic services.
На фиг. 2 изображена блок-схема архитектуры верхнего уровня безопасного аппаратного токена.In FIG. 2 shows a block diagram of the top-level architecture of a secure hardware token.
На фиг. 3а изображены уровни протоколов обмена данными аппаратного токена и компьютера или планшета, к которому он подключен.In FIG. 3a shows the levels of the data exchange protocols of the hardware token and the computer or tablet to which it is connected.
На фиг. 3б изображены часто используемые протоколы аппаратного токена и компьютера или планшета, к которому он подключен.In FIG. 3b shows the frequently used protocols of the hardware token and the computer or tablet to which it is connected.
Подробное описание изобретенияDETAILED DESCRIPTION OF THE INVENTION
Согласно схеме взаимодействия сторон, приведенной на фиг. 1, пользователь 111 располагает электронным микропроцессорным устройством общего назначения 103 (в этом качестве может выступать: персональный компьютер, планшет, смартфон и т.п.). А также располагает подключаемым к нему по физическому или электромагнитному каналу 105 персональным аппаратным устройством (модулем) аутентификации и защиты данных 101 (токеном). С помощью последнего передаваемые по каналам сети 107, например, по каналам сети Интернет, данные защищаются от постороннего (несанкционированного) доступа и/или изменения.According to the interaction pattern of the parties shown in FIG. 1,
Пользователь 111 желает получить доступ к дистанционному электронному сервису 113, предоставляемому посредством удаленного сервера 109. Предположим для примера, что сервис 113 требует от пользователя 111 идентифицировать себя, предъявив имя (логин) и пароль.The
Если пользователь 111 не может доверять компьютеру, планшету или смартфону 103, полагая, что весьма велик риск того, что на последний могут быть установлены программы, способные перехватить имя и пароль пользователя 111 при их вводе с клавиатуры устройства (имеются в виду так называемые «вредоносные программы», установленные в оперативной памяти компьютера, планшета или смартфона), то он должен от этого защититься.If
Пусть пользователь уже записал свое имя и пароль в память токена 101 (или провайдер дистанционного сервиса сделал это за него). В этом случае пользователь 111 может скомандовать токену 101, передать имя и пароль непосредственно на удаленный сервис 113. Однако, это также небезопасно. Вредоносное ПО, установленное на компьютере 103 или где-то на пути между токеном 101 и удаленным сервисом 113 (например, на одном или нескольких промежуточных узлах сети интернет), может похитить имя и пароль пользователя, перехватывая передаваемые в сети данные.Let the user already write down his name and password in the memory of token 101 (or the remote service provider did it for him). In this case,
Надежные способы защиты передаваемых по каналам сети 107 данных от несанкционированного доступа или изменения в современных токенах 101 реализуются в виде криптографических преобразований хранимых и передаваемых данных.Reliable ways to protect the data transmitted through the channels of the
Общая схема аппаратного токена 101 представлена на фиг. 2. Его архитектура включает центральный процессор 201 (CPU), оперативную память 201 (RAM), энергонезависимую память 205 (NVM), соединенные общей шиной 207, имеющей интерфейс 209 для соединения с коннектором 105, служащим для подключения токена к компьютеру или планшету 103.A general diagram of a
При реализации криптографических преобразований на отдельном аппаратном компактном токене 101 приходится обеспечивать обмен данными между компьютером или планшетом пользователя 103 и подключенным токеном 101 по какому-то из принятых в отрасли информационных технологий протоколов.When implementing cryptographic transformations on a separate hardware
Как показано на фиг. 3а, выделены три основных уровня протоколов обмена данными между прикладными программами, исполняемыми на компьютере, планшете или смартфоне 103 и токеном 101: верхний (прикладной), средний (коммуникационный) и нижний (транспортный).As shown in FIG. 3a, there are three main levels of data exchange protocols between application programs executed on a computer, tablet or
Протокол обмена данными между компьютером 103 и токеном 101, в свою очередь, может быть разделен на протокол нижнего (транспортного) уровня 305 (для современных токенов это, как правило, протокол USB), протокол среднего (коммуникационного) уровня 303 (для современных токенов это, как правило, протоколы MSC или CCID) и протокол верхнего (прикладного) уровня 301 (фиг. 3б).The data exchange protocol between the
При передаче данных от компьютера или планшета 103 в токен 101 преобразуют блоки информации протокола верхнего (прикладного) уровня 301 в блоки информации (пакеты) протокола среднего уровня 303 (например, в пакеты протокола CCID или пакеты протокола MSC), а затем последние преобразуют в блоки информации (пакеты) нижнего (транспортного) уровня (USB) 305 и передают последние в токен.When transmitting data from a computer or
В памяти токена 101 пакеты протокола нижнего уровня 305 преобразуют в пакеты протокола среднего уровня 303, а затем из них восстанавливают пакеты данных протокола верхнего уровня 301, которые уже передаются непосредственно на обработку программными модулями, реализованными в токене 101. При передаче данных от токена 101 в компьютер, планшет или смартфон 103 производят аналогичные последовательности преобразования данных.In the memory of
Все эти преобразования пакетов данных протокола верхнего (прикладного) уровня 301 в пакеты данных нижнего (транспортного) уровня 305, а затем обратные преобразования пакетов данных нижнего (транспортного) уровня 305 в пакеты данных верхнего (прикладного) уровня 301 вызывают такие задержки по времени в процессе обработки информации, которые могут снижать скорость получения данных от токена по сравнению со скоростью обработки информации токеном 101 в несколько раз.All these transformations of the data packets of the protocol of the upper (application)
Например, если в качестве протокола нижнего (транспортного) уровня 305 используют протокол USB 1.1 или протокол USB 2.0 (full speed), то пакет данных нижнего уровня имеет длину 64 Байта. Если при этом в качестве протокола среднего уровня 303 используют широко распространенный протокол CCID, то его пакет данных состоит из 271 Байта, из которых ровно 255 Байт составляют собственно данные.For example, if the protocol USB 1.1 or USB 2.0 (full speed) is used as the protocol of the lower (transport)
В таком случае для передачи в токен одного блока информации из 255 Байт приходится формировать, передавать и ожидать подтверждения о правильности передачи каждого из пяти 64-Байтных пакетов по протоколу нижнего уровня USB 2.0 (full speed).In this case, to transfer one block of information from 255 Bytes to the token, you have to generate, transmit and wait for confirmation of the correctness of the transfer of each of the five 64-Byte packets via the lower-level USB 2.0 protocol (full speed).
Это вызывает заметное снижение реальной скорости получения данных токеном. Наглядно этот процесс можно изобразить следующим образом:This causes a noticeable decrease in the real speed of receiving data with a token. This process can be visualized as follows:
Если в качестве протокола нижнего (транспортного) уровня 305 используют протокол USB 2.0 (high speed), пакеты которого содержат по 512 Байт, то при использовании в качестве протокола среднего уровня 303 протокола CCID с пакетом, содержащим 255 Байт данных и еще дополнительно 16 Байт служебной информации, приходится для передачи в токен 101 каждого блока данных из 255 Байт передавать по каналу целый пакет протокола нижнего уровня 305 USB 2.0 (high speed) из 512 Байт.If the protocol USB 2.0 (high speed) is used as the protocol of the lower (transport)
Это также приводит практически к двукратной потере реальной скорости получения данных токеном 101. Наглядно этот процесс можно изобразить следующим образом:This also leads to almost a double loss of the real speed of receiving data with
Еще одним существенным фактором, понижающим реальную скорость получения и обработки информации токеном 101, является то, что наиболее часто используемый в настоящее время при работе пользовательского устройства - компьютера, планшета или смартфона 103 - с токенами 101 протокол среднего уровня 303 - это известный протокол CCID.Another significant factor that reduces the real speed of receiving and processing information by
При его использовании после отправки компьютером каждого пакета компьютер, планшет или смартфон 103 ожидает от токена 101 подтверждения правильности приема и обработки этого пакета токеном 101. В таком случае оказывается, что мощность центрального процессора токена 201 используется весьма неэффективно, он вынужденно «простаивает» в ожидании завершения процесса получения очередного пакета данных.When using it, after the computer sends each packet, the computer, tablet or
При некоторых криптографических преобразованиях информации, выполняемых токеном 101, можно без потери надежности обработки данных не ожидать реакции токена 101 на обработку каждого отдельного пакета среднего уровня 303. Можно проверять только правильность передачи и обработки токеном 101 всей последовательности пакетов данных протокола среднего уровня, реализующих передачу целого блока данных прикладного уровня (4КБ). Более того в некоторых случаях можно проверять правильность обработки токеном данных только по завершении обработки всех передаваемых с прикладного уровня данных целиком.With some cryptographic transformations of the information performed by the token 101, one can not expect the token 101 to respond to the processing of each individual medium-
Так, если ошибка при передаче или обработке очередного пакета автоматически повлечет ошибку при обработке каждого следующего пакета, то можно проверять правильность передачи всего массива информации и его обработки токеном 101 только по завершении всего процесса обработки массива данных токеном 101.So, if an error in the transmission or processing of the next packet automatically causes an error in the processing of each subsequent packet, then you can verify the correctness of the transfer of the entire array of information and its processing by
Например, процесс хэширования данных токеном состоит в последовательном выполнении его центральным процессором 201 следующих APDU-команд:For example, the process of hashing data with a token consists in the sequential execution by the
- hash.init- hash.init
- N*hash.update- N * hash.update
- hash.final- hash.final
при N-кратном повторении команды hash.update.with N-times repeating the hash.update command.
Если количество блоков последовательно хэшируемых данных N велико, то многочисленные эмпирические проверки для токенов на базе распространенных современных микроконтроллеров показывают, что задержка на ожидание реакции токена на результат обработки каждого блока для токенов с типовыми современными микроконтроллерами в качестве их центрального процессора может составить около 30% - 40% от всего времени обработки последовательности блоков данных токеном.If the number of blocks of sequentially hashed data N is large, then numerous empirical tests for tokens based on common modern microcontrollers show that the delay in waiting for the token to respond to the processing result of each block for tokens with typical modern microcontrollers as their central processor can be about 30% - 40% of the total processing time of the sequence of data blocks with a token.
Поэтому при малой доле ошибочно передаваемых компьютером, планшетом или смартфоном 103 в токен 101 и обрабатываемых токеном 101 из общего числа переданных пакетов (блоков) верхнего или транспортного уровня 305 можно не проверять правильность выполнения каждой команды, но проверять правильность результата только по завершении всего преобразования (например, хэширования всего большого блока данных верхнего уровня) с целым пакетом среднего 303 и даже верхнего (прикладного) уровня 301.Therefore, with a small fraction of the erroneously transferred by the computer, tablet or
Это позволяет сократить общее время обработки всего массива данных токеном почти на все те 30-40%, которые в производимых и широко применяемых в настоящее время токенах затрачиваются на ожидание результата обработки токеном каждого отдельного пакета данных нижнего уровня.This allows us to reduce the total processing time of the entire data array with a token by almost all those 30-40% that are spent in tokens produced and widely used at present to wait for the result of the token processing of each individual data packet of the lower level.
Этот процесс включения или «инкапсуляции» пакетов одного протокола в пакеты другого протокола того же или более высокого уровня называется в области протоколов взаимодействия открытых систем (OSI) туннелированием (см. ГОСТ Р ИСО/МЭК 7498-1-99. - «ВОС. Базовая эталонная модель. Часть 1. Базовая модель». - ОКС: 35.100.70. - Действует с 01.01.2000. - 62 с. [1]) и применяется обычно для повышения надежности передачи данных или для их защиты при помощи шифрования. Однако туннелирование возможно использовать и для различных протоколов одного и того же уровня, а также не для всех пакетов, передающих управляющие команды и данные, а только для тех команд протокола и данных, которые позволяют ускорять процесс обмена данными между компьютером и токеном с их обработкой на процессоре токена.This process of including or “encapsulating” packets of one protocol in packets of another protocol of the same or higher level is called tunneling in the field of open system interaction protocols (OSI) (see GOST R ISO / IEC 7498-1-99. - “OSI. Basic reference model. Part 1. Base model. ”- ACS: 35.100.70. - Effective from 01.01.2000. - 62 p. [1]) and is usually used to increase the reliability of data transfer or to protect it using encryption. However, tunneling can be used for various protocols of the same level, as well as not for all packets transmitting control commands and data, but only for those protocol and data commands that allow to speed up the process of exchanging data between a computer and a token with their processing on token processor.
Например, если инкапсулировать пакеты протокола среднего уровня CCID в пакеты другого протокола также среднего уровня MSC, а также команды PC_to_RDR_XfrBlock, RDR_to_PC_DataBlock, то процесс передачи в токен и обработки блока прикладного уровня размером 4КБ сведется путем инкапсуляции 17 блоков протокола CCID в 9 блоков протокола MSC, которые передаются и обрабатываются на процессоре токена на 30-40% быстрей, чем это производится без такого туннелирования команд и данных. Наглядно этот процесс можно изобразить следующим образом:For example, if you encapsulate CCID mid-level protocol packets into packets of another MSC mid-level protocol packet, as well as PC_to_RDR_XfrBlock, RDR_to_PC_DataBlock commands, then the process of transferring to a token and processing a 4KB application layer block is reduced by encapsulating 17 CCID protocol blocks into 9 MSC protocol blocks, which are transmitted and processed on the token processor 30-40% faster than this without such tunneling of commands and data. This process can be visualized as follows:
При этом если аппаратная реализация токена настроена таким образом, что может принимать данные только по протоколу CCID, то модуль туннелирования деинкапсулирует полученные блоки данных протокола MSC в блоки протокола CCID. Также, при необходимости, модуль туннелирования деинкапсулирует полученные блоки данных из протокола прикладного уровня, в который производилось туннелирование, в протокол прикладного уровня, подходящий для токена.Moreover, if the hardware implementation of the token is configured in such a way that it can only receive data via the CCID protocol, then the tunneling module unencapsulates the received MSC protocol data blocks into CCID protocol blocks. Also, if necessary, the tunneling module unencapsulates the received data blocks from the application layer protocol into which the tunneling was performed, into the application layer protocol suitable for the token.
При выполнении таких криптографических преобразований как хэширование больших массивов данных (длинных строк) из N блоков по 4KB каждый этот процесс сокращения времени обмена данными между токеном и основным устройством (компьютером, планшетом или смартфоном) можно схематически изобразить таким образом:When performing cryptographic transformations such as hashing large amounts of data (long strings) from N 4KB blocks, each of this process of reducing the data exchange time between the token and the main device (computer, tablet or smartphone) can be schematically depicted as follows:
То есть при высокой надежности канала обмена данными между компьютером, планшетом или смартфоном и непосредственно подключенным к нему по физическому или электромагнитному каналу токеном, а он, как правило, в современных устройствах достаточно надежен, можно проверять правильность процесса хэширования только в самом его конце, что позволяет заметно сократить время обработки всей последовательности пакетов данных.That is, with a high reliability of the data exchange channel between a computer, tablet or smartphone and a token directly connected to it via a physical or electromagnetic channel, and it, as a rule, is quite reliable in modern devices, it is possible to check the correctness of the hashing process only at its very end, which can significantly reduce the processing time of the entire sequence of data packets.
Аналогичный прием можно применить при шифровании данных токеном в режиме гаммирования, гаммирования с обратной связью или режиме выработки имитовставки (согласно стандартов на шифрование данных ГОСТ 28147-89 и ГОСТ Р 34.12-2015).A similar technique can be applied when encrypting data with a token in the mode of gamming, gamming with feedback or the mode of generating an insert (according to the standards for data encryption GOST 28147-89 and GOST R 34.12-2015).
В этом случае также можно не проверять правильность выполнения токеном 101 каждой отдельной команды шифрования блока данных транспортного протокола 305, но контролировать только правильность передачи в токен и выполнения шифрования целого блока (пакета) протокола верхнего (прикладного) уровня 301 или целого блока (пакета) протокола среднего (коммуникационного) уровня 303.In this case, it is also possible not to check the correct execution by
Таким образом, если для реализации криптографических преобразований информации при аутентификации пользователей и/или аутентификации отдельных блоков данных, а также при защите данных шифрованием использовать персональный внешний аппаратный модуль (токен) 101:Thus, if for the implementation of cryptographic transformations of information during user authentication and / or authentication of individual data blocks, as well as when protecting data with encryption, use a personal external hardware module (token) 101:
- который соединен с компьютером, планшетом или смартфоном пользователя 103 по физическому или электромагнитному каналу 105 (это может быть физический USB-разъем, электромагнитные каналы NFC, Bluetooth и др.);- which is connected to a computer, tablet, or smartphone of
- для которого протокол обмена данными с компьютером подразделяются на протокол верхнего (прикладного) уровня 301, протокол среднего (коммуникационного) уровня 303 и протокол нижнего (транспортного) уровня 305;- for which the protocol for exchanging data with a computer is divided into a protocol of the upper (application)
- у которого пакеты верхнего (прикладного) уровня 301 или пакеты протокола среднего (коммуникационного) уровня 303 могут быть инкапсулированы в другой протокол того же уровня с длиной пакетов, кратной длине пакетов верхнего (прикладного) 301 и нижнего (транспортного) уровня 305;- in which packets of the upper (application)
- у которого в качестве протокола среднего уровня обмена данными 303 с компьютером 103 используется протокол, который позволяет выполнять в токене 101 преобразования информации, предусматривающие многократное выполнение одной и той же команды, без ожидания результата выполнения каждой копии этой команды, а только результата выполнения всей последовательности команд, составляющих все преобразование,- for which a protocol is used as a medium-level protocol for exchanging
то без снижения уровня безопасности защищаемой шифрованием информации и без понижения надежности аутентификации пользователей и данных при помощи электронной подписи, скорость обработки данных с помощью такого токена будет заметно повышена по сравнению с аналогичным использованием производимых и применяемых в настоящее время аппаратных токенов.then without reducing the security level of information protected by encryption and without reducing the reliability of user and data authentication with an electronic signature, the data processing speed with the help of such a token will be significantly increased compared to the similar use of hardware tokens produced and currently used.
Например, пусть персональное устройство аутентификации и защиты данных (токен) 101 присоединено к персональному компьютеру пользователя 101 непосредственно через USB-разъем 105.For example, let a personal authentication and data protection device (token) 101 be connected to the personal computer of the
Пусть прикладной программный модуль на компьютере 103 для управления обмена данными с токеном 101 обрабатывает данные таким образом, что данные в компьютере 103 с верхнего (прикладного) уровня 301 подаются в протокол среднего (коммуникационного) уровня 303 блоками по 4 Кбайт. Это весьма распространенный вариант преобразования и передачи данных на прикладном уровне в современных компьютерных сетях.Let the application software module on the
Пусть в протоколе среднего (коммуникационного) уровня 303 пакеты инкапсулируются в пакеты широко применяемого в мире протокола MSC (Mass Storage Communications) с длиной блока данных 512 байт.Suppose that packets are encapsulated in packets of the protocol MSC (Mass Storage Communications) widely used in the world with a data block length of 512 bytes in the protocol of the middle (communication)
В качестве протокола нижнего (транспортного) уровня 305 пусть используется распространенный протокол USB 2.0 (high speed) также с длиной блока данных 512 байт.As the protocol of the lower (transport)
Тогда максимальная согласованность длин блоков протоколов среднего 303 и нижнего 305 уровней означает их равенство.Then the maximum consistency of the lengths of the protocol blocks of the middle 303 and lower 305 levels means their equality.
В качестве преобразования данных токеном, которое состоит в многократном выполнении одинаковой команды, выступает хэширование данных (согласно российским стандартам хэширования ГОСТ Р 34.11-94 или ГОСТ Р 34.11-2012 или международным стандартам SHA-1, SHA-256, SHA-3) с повторяющейся многократно командой hash.update, результат выполнения которой не контролируется протоколом среднего уровня 303.The data token transformation, which consists in repeatedly executing the same command, is data hashing (according to Russian hashing standards GOST R 34.11-94 or GOST R 34.11-2012 or international standards SHA-1, SHA-256, SHA-3) with repeating repeatedly by the hash.update command, the result of which is not controlled by the
В качестве конкретного примера реализации предлагаемого технического решения можно рассмотреть следующее устройство (токен), присоединяемое по USB каналу к компьютеру или планшету. Персональное устройство аутентификации и защиты данных, выполненное в виде аппаратного токена, включающее центральный процессор (CPU), оперативную память (RAM), энергонезависимую память (NVM), соединенные общей шиной, имеющей интерфейс для соединения с коннектором, служащим для подключения токена к компьютеру, планшету или смартфону по физическому или электромагнитному каналу, в котором данные в компьютере с верхнего (прикладного) уровня подаются в протокол среднего (коммуникационного) уровня блоками по 4 Кбайт, пакеты протокола среднего уровня инкапсулируются (туннелируются) в пакеты протокола MSC (Mass Storage Communications) с длиной блока данных 512 байт, в качестве протокола нижнего (транспортного) уровня используется протокол USB 2.0 High Speed также с длиной блока данных 512 байт, а в качестве преобразования данных токеном, которое состоит в многократном выполнении одинаковой команды, выступает хэширование данных с повторяющейся многократно командой hash.update, результат выполнения которой не контролируется протоколом среднего уровня MSC (Mass Storage Communications) до завершения выполнения всей последовательности команд хэширования в процессе обработки всего блока данных верхнего уровня или даже всей последовательности блоков информации.As a specific example of the implementation of the proposed technical solution, we can consider the following device (token), connected via USB to a computer or tablet. A personal authentication and data protection device made in the form of a hardware token, including a central processor (CPU), random access memory (RAM), non-volatile memory (NVM) connected by a common bus that has an interface for connecting to a connector used to connect the token to a computer, a tablet or smartphone via a physical or electromagnetic channel, in which data in a computer from the upper (applied) level is transmitted to the protocol of the middle (communication) level in 4 KB blocks, medium-level protocol packets they are encapsulated (tunneled) into packets of the MSC protocol (Mass Storage Communications) with a data block length of 512 bytes, the USB 2.0 High Speed protocol is also used with a data block length of 512 bytes as a protocol of the lower (transport) level, and as a data conversion with a token, which consists in executing the same command repeatedly, hashing the data with the hash.update command repeated many times, the result of which is not controlled by the MSC protocol (Mass Storage Communications) until the completion of the entire sequence NOSTA hashing command during the processing of all the top-level block or even the entire sequence of blocks of information data.
Персональное устройство аутентификации и защиты данных может быть подключено к микропроцессорному устройству с экраном (устройство типа Touch Screen) для визуализации передаваемой на обработку информации через USB-разъем или по электромагнитному каналу.A personal authentication and data protection device can be connected to a microprocessor device with a screen (device like Touch Screen) to visualize the information transmitted for processing through a USB connector or via an electromagnetic channel.
В качестве токена может использоваться смарт-карта, а коннектором с компьютером, планшетом или смартфоном является считыватель смарт-карт, присоединяемый к компьютеру, планшету или смартфону через USB-считыватель по физическому или электромагнитному каналу или встроенный в него.A smart card can be used as a token, and the connector with a computer, tablet or smartphone is a smart card reader connected to a computer, tablet or smartphone via a USB reader through a physical or electromagnetic channel or built into it.
Также персональное устройство аутентификации и защиты данных, выполненное в виде смарт-карты, может быть подключено к микропроцессорному устройству с экраном для визуализации передаваемой на обработку информации, которое содержит также встроенный считыватель смарт-карт.Also, a personal authentication and data protection device, made in the form of a smart card, can be connected to a microprocessor device with a screen for visualizing the information transmitted for processing, which also contains a built-in smart card reader.
В еще одном примере реализации персональное устройство аутентификации и защиты данных может быть выполнено в виде микропроцессорного устройства с экраном для визуализации передаваемой на обработку информации, подключенного к компьютеру, планшету или смартфону через USB-разъем или по электромагнитному каналу.In another example implementation, a personal authentication and data protection device can be made in the form of a microprocessor device with a screen for visualizing information transmitted to the processing connected to a computer, tablet or smartphone via a USB connector or via an electromagnetic channel.
Claims (3)
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
RU2016152039A RU2633186C1 (en) | 2016-12-28 | 2016-12-28 | Personal device for authentication and data protection |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
RU2016152039A RU2633186C1 (en) | 2016-12-28 | 2016-12-28 | Personal device for authentication and data protection |
Publications (1)
Publication Number | Publication Date |
---|---|
RU2633186C1 true RU2633186C1 (en) | 2017-10-11 |
Family
ID=60129264
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
RU2016152039A RU2633186C1 (en) | 2016-12-28 | 2016-12-28 | Personal device for authentication and data protection |
Country Status (1)
Country | Link |
---|---|
RU (1) | RU2633186C1 (en) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
RU2766542C1 (en) * | 2021-04-30 | 2022-03-15 | Акционерное общество "Аладдин Р.Д." | Method and system for remote control of remote electronic devices |
RU220470U1 (en) * | 2022-10-20 | 2023-09-15 | Общество с ограниченной ответственностью "Производственная компания Аквариус" | Hardware-software cryptographic device |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20050080907A1 (en) * | 2003-10-10 | 2005-04-14 | Anatoliy Panasyuk | Encapsulating protocol for session persistence and reliability |
US20050188194A1 (en) * | 2003-10-07 | 2005-08-25 | Koolspan, Inc. | Automatic hardware-enabled virtual private network system |
US20100146279A1 (en) * | 2007-02-05 | 2010-06-10 | Gemalto S.A | Method and system for communication between a usb device and a usb host |
US20130042025A1 (en) * | 2009-12-29 | 2013-02-14 | Gemalto Sa | Token for communicating with a host device, corresponding communication system and method |
KZ27358A4 (en) * | 2012-11-12 | 2013-09-16 | ||
WO2014074650A2 (en) * | 2012-11-08 | 2014-05-15 | Q Factor Communications Corp. | Method & apparatus for improving the performance of tcp and other network protocols in a communications network using proxy servers |
RU2530663C2 (en) * | 2012-11-16 | 2014-10-10 | Открытое Акционерное Общество "Информационные Технологии И Коммуникационные Системы" | Method of transmitting data in digital tcp/ip data networks via http |
US20160219024A1 (en) * | 2015-01-26 | 2016-07-28 | Listal Ltd. | Secure Dynamic Communication Network And Protocol |
-
2016
- 2016-12-28 RU RU2016152039A patent/RU2633186C1/en active
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20050188194A1 (en) * | 2003-10-07 | 2005-08-25 | Koolspan, Inc. | Automatic hardware-enabled virtual private network system |
US20050080907A1 (en) * | 2003-10-10 | 2005-04-14 | Anatoliy Panasyuk | Encapsulating protocol for session persistence and reliability |
US20100146279A1 (en) * | 2007-02-05 | 2010-06-10 | Gemalto S.A | Method and system for communication between a usb device and a usb host |
US20130042025A1 (en) * | 2009-12-29 | 2013-02-14 | Gemalto Sa | Token for communicating with a host device, corresponding communication system and method |
WO2014074650A2 (en) * | 2012-11-08 | 2014-05-15 | Q Factor Communications Corp. | Method & apparatus for improving the performance of tcp and other network protocols in a communications network using proxy servers |
KZ27358A4 (en) * | 2012-11-12 | 2013-09-16 | ||
RU2530663C2 (en) * | 2012-11-16 | 2014-10-10 | Открытое Акционерное Общество "Информационные Технологии И Коммуникационные Системы" | Method of transmitting data in digital tcp/ip data networks via http |
US20160219024A1 (en) * | 2015-01-26 | 2016-07-28 | Listal Ltd. | Secure Dynamic Communication Network And Protocol |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
RU2766542C1 (en) * | 2021-04-30 | 2022-03-15 | Акционерное общество "Аладдин Р.Д." | Method and system for remote control of remote electronic devices |
RU220470U1 (en) * | 2022-10-20 | 2023-09-15 | Общество с ограниченной ответственностью "Производственная компания Аквариус" | Hardware-software cryptographic device |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR102493744B1 (en) | Security Verification Method Based on Biometric Characteristics, Client Terminal, and Server | |
KR102182894B1 (en) | USER DEVICE PERFORMING PASSWROD BASED AUTHENTICATION AND PASSWORD Registration AND AUTHENTICATION METHOD THEREOF | |
CN103051664B (en) | A kind of file management method of cloud storage system, device and this cloud storage system | |
US8959335B2 (en) | Secure password-based authentication for cloud computing services | |
US11159329B2 (en) | Collaborative operating system | |
CN108512846A (en) | Mutual authentication method and device between a kind of terminal and server | |
CN104065653A (en) | Interactive authentication method, device, system and related equipment | |
JP2012530311A5 (en) | ||
US9565211B2 (en) | Managing exchanges of sensitive data | |
US12003632B2 (en) | Secure communication in accessing a network | |
US11153093B2 (en) | Protection of online applications and webpages using a blockchain | |
EP3133791B1 (en) | Double authentication system for electronically signed documents | |
CN111401901A (en) | Authentication method and device of biological payment device, computer device and storage medium | |
CN110798432A (en) | Security authentication method, device and system, mobile terminal | |
CN108959990A (en) | A kind of verification method and device of two dimensional code | |
CN112632573A (en) | Intelligent contract execution method, device and system, storage medium and electronic equipment | |
WO2011141579A2 (en) | System and method for providing security for cloud computing resources using portable security devices | |
CN109495500A (en) | A kind of double factor authentication method based on smart phone | |
KR101836211B1 (en) | Electronic device authentication manager device | |
RU2633186C1 (en) | Personal device for authentication and data protection | |
KR20210005841A (en) | Electronic device integrity check | |
US11481759B2 (en) | Method and system for implementing a virtual smart card service | |
KR102094606B1 (en) | Apparatus and method for authentication | |
Chahal et al. | Challenges and security issues of NoSQL databases | |
KR20210072711A (en) | Method and apparatus for mutual authentication between internet of things device and trusted server |