RU2703347C2 - Способ оптимизации выполнения функции, которая генерирует, по меньшей мере , один ключ в устройстве на интегральной схеме - Google Patents

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

Info

Publication number
RU2703347C2
RU2703347C2 RU2017143400A RU2017143400A RU2703347C2 RU 2703347 C2 RU2703347 C2 RU 2703347C2 RU 2017143400 A RU2017143400 A RU 2017143400A RU 2017143400 A RU2017143400 A RU 2017143400A RU 2703347 C2 RU2703347 C2 RU 2703347C2
Authority
RU
Russia
Prior art keywords
data
key
function
buffer
integrated circuit
Prior art date
Application number
RU2017143400A
Other languages
English (en)
Other versions
RU2017143400A3 (ru
RU2017143400A (ru
Inventor
Кин Ти ЛИ
Набиль АМЗИ
Али ЗЕАМАРИ
Николя РУССЕЛЬ
Карин ВИЛЛЕГА
Шарль КУЛЬЕ
Минетт ОЛИВА
Тсу Сун ВОН
Original Assignee
Жемальто Са
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Жемальто Са filed Critical Жемальто Са
Publication of RU2017143400A publication Critical patent/RU2017143400A/ru
Publication of RU2017143400A3 publication Critical patent/RU2017143400A3/ru
Application granted granted Critical
Publication of RU2703347C2 publication Critical patent/RU2703347C2/ru

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0861Generation of secret information including derivation or calculation of cryptographic keys or passwords
    • H04L9/0877Generation of secret information including derivation or calculation of cryptographic keys or passwords using additional device, e.g. trusted platform module [TPM], smartcard, USB or hardware security module [HSM]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/30Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy
    • H04L9/3006Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy underlying computational problems or public-key parameters
    • H04L9/3033Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy underlying computational problems or public-key parameters details relating to pseudo-prime or prime number generation, e.g. primality test
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2209/00Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
    • H04L2209/12Details relating to cryptographic hardware or logic circuitry
    • H04L2209/127Trusted platform modules [TPM]

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computing Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Semiconductor Integrated Circuits (AREA)
  • Mobile Radio Communication Systems (AREA)
  • Storage Device Security (AREA)

Abstract

Изобретение относится к области криптографии. Технический результат заключается в расширении арсенала средств. Способ оптимизации выполнения функции (OP1), причем упомянутая функция (OP1) генерирует, по меньшей мере, один ключ (k1) и выполняется в устройстве на интегральной схеме (IC), которое содержит буфер (BUFF), при этом упомянутый способ (MTH) содержит после приема команды (CMD) упомянутым устройством на интегральной схеме, вычисление, по меньшей мере, одних данных, по которым будет генерироваться упомянутый, по меньшей мере, один ключ, сохранение упомянутых, по меньшей мере, одних данных в упомянутом буфере, выполнение упомянутой команды. 2 н. и 13 з.п. ф-лы, 4 ил.

Description

ОБЛАСТЬ ТЕХНИКИ
Настоящее изобретение относится к способу оптимизации выполнения функции, причем упомянутая функция генерирует, по меньшей мере, один ключ и выполняется в устройстве на интегральной схеме, причем упомянутое устройство на интегральной схеме содержит буфер. Изобретение также относится к соответствующему устройству на интегральной схеме.
Такой способ может использоваться в неограничительном варианте осуществления в любом устройстве на интегральной схеме, которое предназначено для выполнения криптографических процессов.
УРОВЕНЬ ТЕХНИКИ
Устройству на интегральной схеме, которое использует низкопроизводительный процессорный блок, требуется длительное время обработки для выполнения операций, таких как встречающиеся у функции, генерирующей, по меньшей мере, один ключ, такой как криптографический процесс. Одним из общеизвестных криптографических процессов является, например, алгоритм с использованием открытых ключей, который генерирует пару открытого и закрытого ключей. Пара ключей генерируется на месте, то есть, в самом устройстве на интегральной схеме. Для генерирования такой пары ключей алгоритм с использованием открытых ключей содержит первый этап, который идентифицирует два уникальных простых числа. Указанный первый этап является наиболее времязатратным. В зависимости от производительности процессорного блока упомянутое время может варьироваться от 1 секунды до 60 секунд или более.
Одна из проблем данного уровня техники состоит в том, что, когда криптографический процесс занимает слишком длительное время, некоторые оконечные устройства, которые взаимодействуют с устройством на интегральной схеме и ожидают шифрованного сообщения в соответствии с упомянутым криптографическим процессом, могут рассматривать это как отсутствие отклика от упомянутого устройства на интегральной схеме и, следовательно, могут сбрасывать устройство на интегральной схеме в исходное состояние.
СУЩНОСТЬ ИЗОБРЕТЕНИЯ
Целью изобретения является создание способа оптимизации выполнения функции, причем упомянутая функция генерирует, по меньшей мере, один ключ и выполняется в устройстве на интегральной схеме, что позволяет усовершенствовать временную обработку упомянутой функции и что вследствие этого предотвращает сброс устройства на интегральной схеме в исходное состояние.
С этой целью предлагается способ оптимизации выполнения функции, причем упомянутая функция генерирует, по меньшей мере, один ключ и выполняется в устройстве на интегральной схеме, причем упомянутое устройство на интегральной схеме содержит буфер, при этом упомянутый способ содержит:
- после приема команды упомянутым устройством на интегральной схеме:
- вычисление, по меньшей мере, одних данных, по которым будет генерироваться упомянутый, по меньшей мере, один ключ;
- сохранение упомянутых, по меньшей мере, одних данных в упомянутом буфере;
- выполнение упомянутой команды.
Поскольку частично или полностью данные, необходимые для генерирования ключа, реализуются во время команды, т.е., вне функции, время выполнения упомянутой функции будет уменьшаться, позволяя устройству на интегральной схеме своевременно отвечать терминалу.
В соответствии с неограничительными вариантами осуществления изобретения, способ в соответствии с изобретением дополнительно содержит нижеследующие характеристики.
В неограничительном варианте осуществления упомянутый способ дополнительно содержит:
- после приема команды упомянутым устройством на интегральной схеме:
- вычисление упомянутого, по меньшей мере, одного ключа по упомянутым, по меньшей мере, одним данным;
- сохранение упомянутого, по меньшей мере, одного ключа в упомянутом буфере до тех пор, пока не будет осуществлен запрос на выполнение функции (ОР1);
- выполнение упомянутой команды.
В неограничительном варианте осуществления упомянутый способ дополнительно содержит:
- когда упомянутая функция вызывается командой, принимаемой упомянутым устройством на интегральной схеме:
- проверку того, содержит ли упомянутый буфер упомянутые, по меньшей мере, одни данные;
- если упомянутый буфер содержит упомянутые, по меньшей мере, одни данные, получение упомянутых, по меньшей мере, одних данных из упомянутого буфера;
- выполнение упомянутой функции, причем упомянутое выполнение содержит генерирование упомянутого, по меньшей мере, одного ключа по упомянутым, по меньшей мере, одним данным.
В неограничительном варианте осуществления упомянутая команда является предварительно заданной командой.
В неограничительном варианте осуществления упомянутый способ дополнительно содержит вычисление, по меньшей мере, одних данных во время выполнения упомянутой функции, если:
- упомянутый буфер не содержит какие-либо данные, необходимые для упомянутого генерирования ключа; или
- упомянутый буфер не содержит все данные, необходимые для упомянутого генерирования ключа.
В неограничительном варианте осуществления упомянутый способ дополнительно содержит - после приема упомянутой команды - проверку того, является ли буфер полным.
В неограничительном варианте осуществления упомянутый способ дополнительно содержит сохранение в упомянутом буфере, по меньшей мере, одних данных, которые вычислены в течение фазы персонализации упомянутого устройства на интегральной схеме.
В неограничительном варианте осуществления упомянутое вычисление, по меньшей мере, одних данных содержит вычисление пары данных, по которым будет генерироваться пара ключей.
В неограничительном варианте осуществления упомянутая пара ключей содержит открытый ключ и закрытый ключ.
В неограничительном варианте осуществления упомянутая функция является алгоритмом с использованием открытых ключей.
В неограничительном варианте осуществления упомянутый алгоритм с использованием открытых ключей является алгоритмом генерирования RSA-ключей.
В неограничительном варианте осуществления упомянутые, по меньшей мере, одни данные представляют собой простое число.
В неограничительном варианте осуществления упомянутое вычисление, по меньшей мере, одного простого числа содержит:
- генерирование случайного числа;
- проверку того, является ли упомянутое случайное число простым числом, с использованием проверки простоты.
В неограничительном варианте осуществления упомянутое устройство на интегральной схеме является элементом безопасности.
В неограничительном варианте осуществления упомянутое устройство на интегральной схеме представляет собой карту на интегральной схеме, а упомянутая команда представляет собой APDU-команду (команду прикладного протокольного блока данных (APDU)).
Кроме того, предлагается устройство на интегральной схеме для оптимизации выполнения функции, которая генерирует, по меньшей мере, один ключ, причем упомянутое устройство на интегральной схеме содержит буфер и выполнено с возможностью:
- после приема команды:
- вычисления, по меньшей мере, одних данных, по которым будет генерироваться упомянутый, по меньшей мере, один ключ;
- сохранения упомянутых, по меньшей мере, одних данных в упомянутом буфере;
- выполнения упомянутой команды.
В неограничительном варианте осуществления, когда упомянутая функция вызывается командой, принимаемой упомянутым устройством на интегральной схеме, упомянутое устройство на интегральной схеме дополнительно выполнено с возможностью:
- проверки того, содержит ли упомянутый буфер упомянутые, по меньшей мере, одни данные;
- если упомянутый буфер содержит упомянутые, по меньшей мере, одни данные, получения упомянутых, по меньшей мере, одних данных из упомянутого буфера;
- выполнения упомянутой функции, причем упомянутое выполнение содержит генерирование упомянутого, по меньшей мере, одного ключа по упомянутым, по меньшей мере, одним данным.
В неограничительном варианте осуществления упомянутое устройство на интегральной схеме дополнительно выполнено с возможностью:
- вычисления, по меньшей мере, одних данных во время выполнения упомянутой функции, если:
- упомянутый буфер не содержит какие-либо данные, необходимые для упомянутой функции; или
- упомянутый буфер не содержит все данные, необходимые для упомянутой функции.
В неограничительном варианте осуществления упомянутое устройство на интегральной схеме дополнительно выполнено с возможностью:
- после приема команды:
- вычисления упомянутого, по меньшей мере, одного ключа по упомянутым, по меньшей мере, одним данным;
- сохранения упомянутого, по меньшей мере, одного ключа в упомянутом буфере;
- выполнения упомянутой команды.
Кроме того, предлагается компьютерный программный продукт, содержащий набор команд, которые при загрузке в устройство на интегральной схеме инициируют осуществление устройством на интегральной схеме способа в соответствии с любой из вышеописанных характеристик.
КРАТКОЕ ОПИСАНИЕ ЧЕРТЕЖЕЙ
Некоторые варианты осуществления способов и/или устройства в соответствии с вариантами осуществления настоящего изобретения описываются далее исключительно для примера и со ссылкой на прилагаемые чертежи, на которых:
- фиг. 1 представляет собой первую схематическую диаграмму способа в соответствии с неограничительным вариантом осуществления изобретения;
- фиг. 2 представляет собой вторую схематическую диаграмму изображенного на фиг. 1 способа, который содержит дополнительные этапы в соответствии с неограничительным вариантом осуществления;
- фиг. 3 представляет собой вторую схематическую диаграмму изображенного на фиг. 1 способа, который содержит дополнительные этапы в соответствии с неограничительным вариантом осуществления;
- фиг. 4 схематически иллюстрирует неограничительный вариант осуществления устройства на интегральной схеме, которое выполнено с возможностью осуществления способа, изображенного на фиг. 1 - фиг. 3.
ОПИСАНИЕ ВАРИАНТОВ ОСУЩЕСТВЛЕНИЯ ИЗОБРЕТЕНИЯ
В нижеследующем описании общеизвестные специалистам в данной области техники функции или конструкции подробно не описываются, поскольку они будут загромождать изобретение ненужными деталями.
Настоящее изобретение относится к способу оптимизации выполнения функции OP1, причем упомянутая функция генерирует, по меньшей мере, один ключ k1 и выполняется в устройстве на интегральной схеме IC, причем упомянутое устройство на интегральной схеме IC содержит буфер BUFF и процессорный блок PR.
В дальнейшем термин «устройство на интегральной схеме IC» или «IC» используется взаимозаменяемо.
Упомянутый способ MTH иллюстрируется на фиг. 1 в неограничительном варианте осуществления.
Упомянутый способ MTH содержит:
- после приема команды CMD упомянутым устройством на интегральной схеме IC (показанный этап RX(IC, CMD)):
- вычисление, по меньшей мере, одних данных p1, по которым будет генерироваться упомянутый, по меньшей мере, один ключ k1 (показанный этап COMP(IC, CMD, p1(k1));
- сохранение упомянутых, по меньшей мере, одних данных p1 в упомянутом буфере BUFF (показанный этап STOR(IC, p1, BUFF));
- выполнение упомянутой команды CMD (показанный этап EXEC(IC, CMD)).
В неограничительном варианте осуществления упомянутые этапы выполняются с помощью процессорного блока PR устройства на интегральной схеме IC. В неограничительном варианте осуществления процессорный блок PR содержит один или множество процессоров.
Необходимо отметить, что указанные три этапа (вычисление, сохранение, выполнение) могут осуществляться в любом ином порядке или параллельно.
Поэтому, например, этап выполнения упомянутой команды может осуществляться до или после вычисления упомянутых, по меньшей мере, одних данных p1.
Необходимо отметить, что функция содержит одну или множество операций.
В неограничительном варианте осуществления функция OP1, которая генерирует, по меньшей мере, один ключ k1, содержит множество операций.
В неограничительном варианте осуществления функция OP1 является криптографическим процессом, который генерирует криптографические данные, такие как криптографический ключ (ключи).
В неограничительном варианте осуществления упомянутая функция OP1 является алгоритмом с использованием открытых ключей PK. Упомянутый алгоритм с использованием открытых ключей использует пару ключей k1, k2. Таким образом, упомянутая пара ключей k1, k2 содержит открытый ключ k1 и закрытый ключ k2, которые основаны на простых числах p1, p2.
В неограничительном варианте упомянутого варианта осуществления упомянутая функция OP1 является алгоритмом Диффи-Хеллмана.
Еще в одном неограничительном варианте упомянутого варианта осуществления упомянутая функция OP1 является алгоритмом генерирования RSA-ключа.
Поскольку алгоритм генерирования RSA-ключа и алгоритм Диффи-Хеллмана общеизвестны специалистам в данной области техники, они не описываются в настоящем документе.
В неограничительных примерах упомянутая функция OP1 используется алгоритмом RSA.
Поскольку алгоритм RSA общеизвестен специалистам в данной области техники, он не описывается в настоящем документе.
В других неограничительных примерах упомянутая функция OP1 используется алгоритмом на эллиптических кривых или алгоритмом DSA («Алгоритмом Построения Электронной Цифровой Подписи»).
Поскольку алгоритм на эллиптических кривых и алгоритм DSA общеизвестны специалистам в данной области техники, они не описываются в настоящем документе.
Как описывается ниже, когда выполняется вычисление указанных, по меньшей мере, одних данных p1 перед функцией OP1 (которой необходимы упомянутые данные p1), оно позволяет предварительно вычислять упомянутые данные p1 и держать их наготове для использования упомянутой функцией OP1. Причем упомянутые данные p1 являются сложными и времязатратными для вычисления, это позволяет избежать функции OP1 для реализации упомянутого вычисления упомянутых данных p1 и, следовательно, сократить ее собственное время выполнения. Предварительно вычисленные данные p1 хранятся в буфере BUFF до тех пор, пока не будет запрошена функция OP1.
В неограничительном варианте осуществления упомянутая команда CMD является предварительно заданной командой CMD, поскольку она выбирается из списка команд, которые позволяют IC отправлять обратно отклик RSP через некоторое время запаздывания, которое обеспечивает выполнение упомянутого вычисления упомянутых, по меньшей мере, одних данных p1. Она выбирается разработчиком, который разрабатывает функцию OP1 и иные различные функции IC. Следовательно, в неограничительном варианте осуществления данная команда (по которой будет запускаться вычисление упомянутых, по меньшей мере, одних данных p1) выбирается до фазы Ph персонализации упомянутой IC.
Упомянутая команда CMD отправляется в оконечное устройство Т.
Оконечное устройство Т представляет собой любой тип устройства - компьютер или считывающее устройство, которое выполнено с возможностью связи посредством команд CMD либо в контактном, либо в бесконтактном режиме.
Как описывается ниже, в первом неограничительном варианте осуществления устройство на интегральной схеме IC представляет собой карту на интегральной схеме (ICC).
В данном варианте осуществления команда CMD представляет собой APDU-команду APDU_C, которая является прикладным протокольным блоком данных, используемым картой на интегральной схеме (ICC) для связи с оконечным устройством. APDU-команда APDU_C отправляется оконечным устройством на упомянутую карту на интегральной схеме (ICC), которая отвечает APDU-откликом APDU_R.
В неограничительном варианте осуществления APDU-команда APDU_C является командой СОСТОЯНИЕ, задаваемой в неограничительном примере в стандарте ETSI102221. Указанная команда возвращает информацию, касающуюся текущего каталога или текущего приложения в IC.
Еще в одном неограничительном варианте осуществления APDU-команда APDU_C является командой ВЫБОР MD/DF/EF, задаваемой в неограничительном примере в стандарте ETSI102221. Указанная команда выбирает файл или приложение в упомянутой карте на интегральной схеме (ICC).
Разумеется, могут использоваться различные APDU-команды APDU_C, такие как команды СОСТОЯНИЕ и ВЫБОР. Например, команда СОСТОЯНИЕ может использоваться для вычисления одних данных p1, а команда ВЫБОР может использоваться для вычисления других данных p1, причем и те, и другие данные p1, p2 используются для генерирования, по меньшей мере, одного ключа k1.
Во втором неограничительном варианте осуществления устройство на интегральной схеме IC представляет собой модуль HSM аппаратной защиты. В данном варианте осуществления - в неограничительном варианте - команда CMD представляет собой команду PKCS11.
В неограничительных примерах используются следующие команды PKSC11:
- команда KEYPAIRGEN, которая генерирует пару ключей модулем аппаратной защиты HSM;
- команда INIT-TOKEN, которая инициализирует модуль HSM аппаратной защиты;
- команда LOGIN, которая идентифицирует пользователя для модуля аппаратной защиты HSM;
- WRITE-OBJECT, который сохраняет данные в качестве сертификата для модуля аппаратной защиты HSM.
В неограничительном варианте осуществления упомянутый буфер BUFF представляет собой специализированный буфер для хранения упомянутых, по меньшей мере, одних данных p1. Вследствие этого он отличается от APDU-буфера, используемого для APDU-команд и APDU-откликов в варианте осуществления карты на интегральной схеме (ICC). В неограничительных вариантах осуществления упомянутый буфер BUFF находится в энергозависимой памяти, такой как оперативное запоминающее устройство (RAM), или в энергонезависимой памяти, такой как в неограничительном примере электрически стираемое программируемое постоянное запоминающее устройство (EEPROM), флэш-память и т.д.
В неограничительном варианте осуществления (не показан) способ MTH дополнительно содержит:
- после приема команды CMD упомянутым устройством на интегральной схеме IC:
- вычисления упомянутого, по меньшей мере, одного ключа k1 по упомянутым, по меньшей мере, одним данным p1;
- сохранения упомянутого, по меньшей мере, одного ключа k1 в упомянутом буфере BUFF;
- выполнения упомянутой команды CMD.
Таким образом, в данном варианте осуществления и упомянутые, по меньшей мере, одни данные p1, и ключ k1 вычисляются вне функции OP1. Это позволяет избежать функции OP1 для реализации также упомянутого вычисления упомянутого ключа k1.
Упомянутая команда CMD является также предварительно заданной командой, поскольку она выбирается из списка команд, которые позволяют IC отправлять обратно отклик RSP через некоторое время запаздывания, которое обеспечивает выполнение упомянутого вычисления упомянутого, по меньшей мере, одного ключа k1. Так же, как и выше, она выбирается разработчиком, который разрабатывает функцию OP1 в упомянутой IC и иные различные функции IC.
Необходимо отметить, что в данном варианте осуществления вычисление ключа k1 и вычисление упомянутых, по меньшей мере, одних данных p1 может выполняться во время приема той же команды CMD или во время приема других команд CMD.
Таким образом, генерирование указанного, по меньшей мере, одного ключа k1 во время упомянутой функции OP1 означает:
- вычисление упомянутого, по меньшей мере, одного ключа k1; или
- получение упомянутого, по меньшей мере, одного ключа k1 из упомянутого буфера BUFF.
Следовательно, в неограничительном варианте осуществления способ MTH дополнительно содержит получение указанного, по меньшей мере, одного ключа k1 из упомянутого буфера BUFF. Упомянутое получение осуществляется во время выполнения функции OP1.
В неограничительном варианте осуществления способ MTH дополнительно содержит:
- после приема упомянутой команды CMD - проверку того, является ли буфер BUFF полным (показанный этап VERIF(IC, BUFF) на фиг. 2).
В неограничительном варианте осуществления способ MTH дополнительно содержит:
- когда упомянутая функция OP1 вызывается командой CMD, принимаемой упомянутым устройством на интегральной схеме IC (показанный этап RX(IC, CMD(OP1) на фиг. 3):
- проверку того, содержит ли упомянутый буфер BUFF упомянутые, по меньшей мере, одни данные p1, по которым будет генерироваться упомянутый, по меньшей мере, один ключ k1 (показанный этап VERIF(IC, BUFF, p1) на фиг. 2 и фиг. 3);
- если упомянутый буфер BUFF содержит упомянутые, по меньшей мере, одни данные p1, получение упомянутых, по меньшей мере, одних данных p1 из упомянутого буфера BUFF (показанный этап RETRV(IC, BUFF, p1) на фиг. 3);
- выполнение упомянутой функции OP1, причем упомянутое выполнение содержит генерирование упомянутого, по меньшей мере, одного ключа k1 по упомянутым, по меньшей мере, одним данным p1 (показанный этап EXEC(IC, OP1(k1)) на фиг. 2 и фиг. 3).
Необходимо отметить, что, когда указанный, по меньшей мере, один ключ k1 не вычисляется во время выполнения команды CMD (как описано выше в неограничительном варианте осуществления), упомянутая функция OP1 содержит вычисление упомянутого, по меньшей мере, одного ключа k1 по упомянутым, по меньшей мере, одним данным p1.
В неограничительном варианте осуществления способ MTH дополнительно содержит вычисление, по меньшей мере, одних данных p1 во время выполнения упомянутой функции OP1 (показанный этап COMP(IC, OP1, p1) на фиг. 2 и фиг. 3):
- если упомянутый буфер BUFF не содержит какие-либо данные p1, необходимые для упомянутого генерирования ключа; или
- если упомянутый буфер BUFF не содержит все данные p1, необходимые для упомянутого генерирования ключа.
В неограничительном варианте осуществления упомянутое вычисление, по меньшей мере, одних данных содержит вычисление пары данных p1, p2, по которым будет генерироваться пара ключей k1, k2.
В неограничительном варианте осуществления упомянутые, по меньшей мере, одни данные p1 представляют собой простое число.
Вычисление простого числа является сложным и времязатратным. Поэтому следует предварительно вычислять такое простое число.
Необходимо отметить, что для упрощения на фиг. 1-4 p1 представляет собой, по меньшей мере, одно простое число (либо первое простое число p1, либо второе простое число p2, либо оба простых числа p1, p2).
В неограничительном варианте осуществления (не показан) упомянутый способ MTH дополнительно содержит сохранение в упомянутом буфере BUFF, по меньшей мере, одних данных p1, которые вычислены в течение фазы Ph персонализации упомянутого устройства на интегральной схеме IC.
Таким образом, упомянутый буфер BUFF может содержать, по меньшей мере, одни данные p1, которые вычислены в течение фазы Ph персонализации упомянутого устройства на интегральной схеме IC. Таким образом, упомянутое простое число p1 может предварительно вычисляться либо на месте во время команды CMD, либо вне IC. В указанном последнем случае упомянутое простое число p1 загружается (не показано) в течение фазы Ph производства в безопасной среде.
В неограничительном варианте осуществления все указанные дополнительные неограничительные этапы, описанные выше, выполняются с помощью процессорного блока PR устройства на интегральной схеме IC.
Фиг. 2 и фиг. 3 иллюстрируют схематическую диаграмму, содержащую дополнительные неограничительные этапы, упомянутые выше.
В частности, фиг. 2 иллюстрирует этапы (1-6) после приема упомянутой команды CMD, а фиг. 3 иллюстрирует этапы (7-11) после запроса выполняемой функции OP1, т.е., после вызова упомянутой функции OP1 командой.
В неограничительном примере принимается следующее:
- устройство на интегральной схеме (IC) является картой на интегральной схеме (ICC);
- вычисляется пара простых чисел p1, p2, при этом пара ключей k1, k2 вычисляется на основе упомянутой пары простых чисел p1, p2;
- команда CMD, принимаемая устройством на интегральной схеме IC, является APDU-командой, при этом упомянутая APDU-команда APDU_C представляет собой команду СОСТОЯНИЕ;
- отклик RSP, отправляемый устройством на интегральной схеме IC, является APDU-откликом APDU_R;
- буфер не содержит никаких простых чисел, когда IC принимает упомянутую команду СОСТОЯНИЕ;
- вычисление ключа осуществляется во время выполнения упомянутой функции OP1.
Когда IC принимает команду СОСТОЯНИЕ, выполняются нижеследующие этапы.
Следует напомнить, что IC выполняет функцию ведомого в отношении оконечного устройства. Таким образом, до приема APDU-команды APDU_C она находится в режиме сна. Прием APDU-команды APDU_C позволяет упомянутой IC находиться в режиме пробуждения. Таким образом, она сможет выполнять некоторые задачи, такие как перечисленные ниже этапы.
После приема команды СОСТОЯНИЕ упомянутой IC на этапе 1) на этапе 2) упомянутая IC проверяет, содержит ли упомянутый буфер BUFF все простые числа p1, p2 для генерирования пары ключей k1, k2.
Необходимо отметить, что, если упомянутый буфер BUFF содержит все простые числа p1, p2, упомянутая IC будет выполнять функцию OP1, а во время упомянутой функции OP1 - получать предварительно вычисленные простые числа p1, p2 из упомянутого буфера BUFF и вычислять оба ключа k1, k2 по упомянутым простым числам p1, p2 (см. ниже этап 8).
Поскольку это не так, на этапе 3) упомянутая IC проверяет, является ли упомянутый буфер полным.
Необходимо отметить, что данный этап 3) может выполняться до этапа 2).
Необходимо отметить, что, если упомянутый буфер является полным, вычисление обоих простых чисел p1, p2 осуществляется в обычном порядке во время выполнения функции OP1.
Поскольку в приведенном неограничительном примере остается еще много места в буфере BUFF, на этапе 4) упомянутая IC вычисляет первое простое число p1, по которому будут генерироваться упомянутые ключи k1, k2.
В данном неограничительном примере запаздывание для ответа IC на упомянутую команду СОСТОЯНИЕ является достаточно длительным для выполнения упомянутой команды СОСТОЯНИЕ и одного вычисления одного простого числа p1, но недостаточно длительным для вычисления двух простых чисел p1, p2.
Разумеется, когда запаздывание является достаточно длительным, выполняется вычисление двух простых чисел.
В неограничительном варианте осуществления (не показан) вычисление простого числа p1 содержит:
- генерирование случайного числа Sd;
- проверку того, является ли упомянутое случайное число Sd простым числом p1, с использованием проверки PT простоты.
Если проверка простоты является отрицательной, генерирование случайного числа повторяется.
Поскольку данная проверка простоты общеизвестна специалистам в данной области техники, она не описывается в настоящем документе.
На этапе 5) упомянутая IC сохраняет помянутое простое число p1 в упомянутом буфере BUFF.
Таким образом, указанные предварительно вычисленные данные p1 хранятся в упомянутом буфере BUFF до тех ор, пока не будет запрошена функция OP1, которой необходимы упомянутые данные p1.
На этапе 6) упомянутая IC выполняет упомянутую команду СОСТОЯНИЕ.
Таким образом, IC будет отправлять в оконечное устройство APDU-отклик APDU_R, который содержит свое состояние.
Необходимо отметить, что команда СОСТОЯНИЕ часто отправляется на IC оконечным устройством T. Благодаря использованию команды СОСТОЯНИЕ можно часто предварительно вычислять необходимые простые числа p1, p2, в результате чего указанный времязатратный процесс вычисления будет частично выполняться или совсем не выполняться функцией OP1.
С целью увеличения времени на предварительное вычисление упомянутых простых чисел p1, p2 в неограничительном варианте осуществления частота приема упомянутой команды СОСТОЯНИЕ упомянутой IC увеличена. С этой целью упреждающая команда ИНТЕРВАЛ ОПРОСА, определяемая в стандарте ETSI102223, используется для настройки частоты приема упомянутой команды СОСТОЯНИЕ с помощью IC. Таким образом, время, необходимое для предварительного вычисления простых чисел p1, p2, может быть разбито на несколько команд СОСТОЯНИЕ.
Таким образом, в неограничительных вариантах осуществления это обеспечивает:
- вычисление одного простого числа в команде СОСТОЯНИЕ и вычисление другого простого числа в другой команде СОСТОЯНИЕ; или
- вычисление одного простого числа, разбиваемого на несколько команд СОСТОЯНИЕ: различные операции (генерирования случайного числа, проверки простоты), необходимые для вычисления простого числа, выполняются в нескольких командах СОСТОЯНИЕ. В этом случае вычисленные указанные, по меньшей мере, одни данные (по которым будет генерироваться упомянутый, по меньшей мере, один ключ k1) будут в действительности один раз случайно генерироваться, а в другой раз будут представлять собой различные результаты проверки простоты.
Когда функция OP1, которой необходимы упомянутые простые числа p1, p2, вызывается APDU-командой APDU_C, принимаемой упомянутым устройством на интегральной схеме IC на этапе 7), на этапе 8) упомянутая IC проверяет, содержит ли упомянутый буфер BUFF два простых числа p1, p2, по которым будут генерироваться упомянутые ключи k1, k2.
Необходимо отметить, что в приведенном неограничительном примере генерирование одного ключа (k1 или k2) основано на обоих простых числах p1, p2.
Поскольку в неограничительном примере упомянутый буфер BUFF не содержит все простые числа, необходимые для генерирования обоих ключей k1, k2 (поскольку он содержит только первое простое число p1), упомянутая IC вычисляет второе простое число p2 во время выполнения упомянутой функции OP1 (см. этап 10').
Необходимо отметить, что, если упомянутый буфер BUFF не содержит ни одного из двух простых чисел p1, p2, аналогичным образом упомянутая IC вычисляет первое и второе простые числа p1, p2 во время выполнения упомянутой функции OP1.
На этапе 9) упомянутая IC получает простое число, которое находится в упомянутом буфере BUFF, т.е., в данном случае первое простое число p1 из упомянутого буфера BUFF.
Разумеется, когда упомянутый буфер BUFF содержит два простых числа p1, p2, упомянутая IC будет получать оба простых числа из упомянутого буфера BUFF (этап 10', изображенный на фиг. 3).
На этапе 10) упомянутая IC выполняет упомянутую функцию OP1, которая содержит генерирование упомянутой пары ключей k1, k2.
Во время выполнения упомянутой функции OP1 упомянутая IC вычисляет второе простое число p2, как описано выше (этап 10') и вычисляет упомянутую пару ключей k1, k2 по упомянутому полученному простому числу p1 и по упомянутому вычисленному простому числу p2 (этап 10''). Генерирование пары ключей k1, k2 вследствие этого выполняется путем вычисления упомянутой пары ключей k1, k2 во время упомянутой функции OP1.
Таким образом, вышеописанный способ MTH осуществляется устройством на интегральной схеме IC (изображенной на фиг. 4), содержащим процессорный блок PR и буфер BUFF, причем упомянутое устройство на интегральной схеме IC выполнено с возможностью оптимизации выполнения функции OP1, которая генерирует, по меньшей мере, один ключ k1.
В неограничительном примере, изображенном на фиг. 4, буфер содержит только первое простое число p1, а второе простое число p2 вычисляется во время функции OP1 в описанном неограничительном примере.
Упомянутое устройство на интегральной схеме IC является элементом безопасности.
Элемент безопасности является безопасным компонентом, который содержит безопасный чип и может выполнять криптографические функции и быть выполненным с возможностью хранения секретной информации.
В первом неограничительном варианте упомянутый элемент безопасности представляет собой карту на интегральной схеме (ICC), называемую также ICC-картой. ICC-карта может быть контактной или бесконтактной.
В неограничительных примерах данного первого варианта элемент безопасности представляет собой небольшое устройство, припаянный элемент, межмашинный (М2М) модуль, eSE (встроенный элемент безопасности), карту памяти microSD и т.д.
В неограничительных примерах ICC-карта представляет собой банковскую карту, такую как EMV-карта, электронную идентификационную карту, медицинскую карту, водительское удостоверение, паспорт, банковскую карту физического лица, карту финансового обслуживания, карту доступа и т.д.
Во втором неограничительном варианте упомянутый элемент безопасности представляет собой модуль HSM аппаратной защиты. Упомянутый модуль аппаратной защиты выполнен с возможностью подключения к оконечному устройству Т.
Необходимо отметить, что ICC-карта может использоваться в качестве HSM.
Упомянутое IC выполнено с возможностью:
- приема команды CMD (показанная функция RX(IC, CMD) на фиг. 4).
- после приема упомянутой команды CMD:
- вычисления, по меньшей мере, одних данных p1, по которым будет генерироваться упомянутый, по меньшей мере, один ключ k1 (показанная функция COMP(IC, CMD, p1(k1)) на фиг. 4);
- сохранения упомянутых, по меньшей мере, одних данных p1 в упомянутом буфере BUFF (показанная функция STOR(IC, p1, BUFF) на фиг. 4);
- выполнения упомянутой команды CMD (показанная функция EXEC(IC, CMD) на фиг. 4).
В неограничительном варианте осуществления упомянутое IC дополнительно выполнено с возможностью:
- приема команды CMD, которая вызывает функцию OP1 (показанная функция RX(IC, CMD(OP1) на фиг. 4);
- когда упомянутая функция OP1 вызывается командой CMD, принимаемой упомянутым устройством на интегральной схеме IC:
- проверки того, содержит ли упомянутый буфер BUFF упомянутые, по меньшей мере, одни данные p1 (показанная функция VERIF(IC, BUFF, p1) на фиг. 4);
- если упомянутый буфер BUFF содержит упомянутые, по меньшей мере, одни данные p1, получения упомянутых, по меньшей мере, одних данных p1 из упомянутого буфера BUFF (показанная функция RETRV(IC, BUFF, p1) на фиг. 4);
- выполнения упомянутой функции OP1, причем упомянутое выполнение содержит генерирование упомянутого, по меньшей мере, одного ключа k1 по упомянутым, по меньшей мере, одним данным p1 (показанная функция EXEC(IC, OP1(k1)) на фиг. 4).
В неограничительном варианте осуществления упомянутое IC дополнительно выполнено с возможностью:
- после приема упомянутой команды CMD - проверки того, является ли буфер полным (показанная функция VERIF(IC, BUFF) на фиг. 4).
В неограничительном варианте осуществления упомянутое IC дополнительно выполнено с возможностью сохранения в упомянутом буфере BUFF, по меньшей мере, одних данных p1, которые вычислены в течение фазы ph персонализации упомянутого устройства на интегральной схеме IC (показанная функция STOR(IC, p1, ph, BUFF) на фиг. 4).
В неограничительном варианте осуществления упомянутое IC дополнительно выполнено с возможностью вычисления по меньшей мере, одних данных p1 во время выполнения упомянутой функции OP1 (показанная функция COMP(IC, OP1, p1) на фиг. 4).
В неограничительном варианте осуществления упомянутое IC дополнительно выполнено с возможностью:
- после приема упомянутой команды CMD:
- вычисления упомянутого, по меньшей мере, одного ключа k1 по упомянутым, по меньшей мере, одним данным p1 (показанная функция COMP(IC, CMD, k1(p1)) на фиг. 4);
- сохранения упомянутого, по меньшей мере, одного ключа k1 в упомянутом буфере BUFF (показанная функция STOR(IC, k1, BUFF) на фиг. 4); и
- выполнения упомянутой команды CMD.
В неограничительном варианте осуществления упомянутое IC дополнительно выполнено с возможностью:
- получения упомянутого, по меньшей мере, одного ключа k1 из упомянутого буфера BUFF (показанная функция RETRV(IC, BUFF, k1) на фиг. 4); и
- вычисления упомянутого, по меньшей мере, одного ключа k1 по упомянутым, по меньшей мере, одним данным p1 во время выполнения упомянутой функции OP1 (показанная функция COMP(IC, OP1, k1(p1)) на фиг. 4).
В неограничительном варианте осуществления процессорный блок PR упомянутой IC выполнен с возможностью выполнения всех вышеописанных функций.
Следует понимать, что настоящее изобретение не ограничено вышеупомянутыми вариантами осуществления.
В IC может содержаться один компьютерный программный продукт PG или их множество, как показано на фиг. 4. Компьютерный программный продукт содержит набор команд. При этом упомянутый набор команд, содержащихся, например, в памяти IC, может инициировать осуществление IC различных этапов способа MTH.
Таким образом, некоторые варианты осуществления изобретения могут иметь одно или множество из следующих преимуществ:
- его легко реализовать;
- оно позволяет избежать ошибочного сброса устройства на интегральной схеме IC в исходное состояние;
- оно позволяет избежать замены процессорного блока PR устройства на интегральной схеме IC более быстродействующим, что предполагает более высокую стоимость;
- оно позволяет избежать поиска оптимизированной функции OP1, что предполагало бы высокие расходы на исследования;
- при использовании предварительно вычисленных данных p1 длительность выполнения функции OP1 значительно уменьшается до целесообразного интервала времени;
- оно позволяет предварительно вычислять данные p1, которые являются сложными и времязатратными для вычисления.

Claims (38)

1. Способ (MTH) оптимизации выполнения функции (OP1), причем упомянутая функция (OP1) генерирует, по меньшей мере, один ключ (k1) и выполняется в устройстве на интегральной схеме (IC), причем упомянутое устройство на интегральной схеме (IC) содержит буфер (BUFF), при этом упомянутый способ (MTH) содержит
после приема команды (CMD) упомянутым устройством на интегральной схеме (IC):
вычисление, по меньшей мере, одних данных (p1), по которым будет генерироваться упомянутый, по меньшей мере, один ключ (k1);
сохранение упомянутых, по меньшей мере, одних данных (p1) в упомянутом буфере (BUFF) до тех пор, пока не будет запрошено выполнение функции (OP1);
выполнение упомянутой команды (CMD).
2. Способ (MTH) по п. 1, при этом он дополнительно содержит
после приема команды (CMD) упомянутым устройством на интегральной схеме (IC):
вычисление упомянутого, по меньшей мере, одного ключа (k1) по упомянутым, по меньшей мере, одним данным (p1);
сохранение упомянутого, по меньшей мере, одного ключа (k1) в упомянутом буфере (BUFF);
выполнение упомянутой команды (CMD).
3. Способ (MTH) по п. 1 или 2, при этом он дополнительно содержит
когда упомянутая функция (OP1) вызывается командой (CMD), принимаемой упомянутым устройством на интегральной схеме (IC):
проверку того, содержит ли упомянутый буфер (BUFF) упомянутые, по меньшей мере, одни данные (p1);
если упомянутый буфер (BUFF) содержит упомянутые, по меньшей мере, одни данные (p1), получение упомянутых, по меньшей мере, одних данных (p1) из упомянутого буфера (BUFF);
выполнение упомянутой функции (OP1), причем упомянутое выполнение содержит генерирование упомянутого, по меньшей мере, одного ключа (k1) по упомянутым, по меньшей мере, одним данным (p1).
4. Способ (MTH) по любому из предыдущих пп. 1-3, при этом он дополнительно содержит вычисление, по меньшей мере, одних данных (p1) во время выполнения упомянутой функции (OP1), если
упомянутый буфер (BUFF) не содержит какие-либо данные (p1), необходимые для упомянутого генерирования ключа; или
упомянутый буфер (BUFF) не содержит все данные (p1), необходимые для упомянутого генерирования ключа.
5. Способ (MTH) по любому из предыдущих пп. 1-4, при этом он дополнительно содержит после приема упомянутой команды (CMD), проверку того, является ли буфер (BUFF) полным.
6. Способ (MTH) по любому из предыдущих пп. 1-5, при этом он дополнительно содержит сохранение в упомянутом буфере (BUFF), по меньшей мере, одних данных (p1), которые вычислены в течение фазы (Ph) персонализации упомянутого устройства на интегральной схеме (IC).
7. Способ (MTH) по любому из предыдущих пп. 1-6, при этом упомянутое вычисление, по меньшей мере, одних данных (p1) содержит вычисление пары данных (p1, p2), по которым будет генерироваться пара ключей (k1, k2).
8. Способ (MTH) по предыдущему п. 7, при этом упомянутая пара ключей (k1, k2) содержит открытый ключ (k1) и закрытый ключ (k2).
9. Способ (MTH) по любому из предыдущих пп. 1-8, при этом упомянутая функция (OP1) является алгоритмом с использованием открытых ключей (PK).
10. Способ (MTH) по предыдущему п. 9, при этом упомянутый алгоритм с использованием открытых ключей (PK) является алгоритмом генерирования RSA-ключей.
11. Способ (MTH) по любому из предыдущих пп. 1-10, при этом упомянутые, по меньшей мере, одни данные (p1) представляют собой простое число.
12. Способ (MTH) по п. 11, при этом упомянутое вычисление, по меньшей мере, одного простого числа (p1, p2) содержит
генерирование случайного числа (Sd);
проверку того, является ли упомянутое случайное число (Sd) простым числом (p1, p2), с использованием проверки простоты.
13. Способ (MTH) по любому из предыдущих пп. 1-12, при этом упомянутое устройство на интегральной схеме (IC) представляет собой карту на интегральной схеме (ICC), а упомянутая команда (CMD) представляет собой APDU-команду (APDU_C).
14. Устройство на интегральной схеме (IC) для оптимизации выполнения функции (OP1), которая генерирует, по меньшей мере, один ключ (k1), причем упомянутое устройство на интегральной схеме (IC) содержит буфер (BUFF) и выполнено с возможностью
после приема команды (CMD):
вычисления, по меньшей мере, одних данных (p1), по которым будет генерироваться упомянутый, по меньшей мере, один ключ (k1);
сохранения упомянутых, по меньшей мере, одних данных (p1) в упомянутом буфере (BUFF);
выполнения упомянутой команды (CMD).
15. Устройство на интегральной схеме (IC) по п. 14, при этом, когда упомянутая функция (OP1) вызывается командой (CMD), принимаемой упомянутым устройством на интегральной схеме (IC), упомянутое устройство на интегральной схеме (IC) дополнительно выполнено с возможностью
проверки того, содержит ли упомянутый буфер (BUFF) упомянутые, по меньшей мере, одни данные (p1);
если упомянутый буфер (BUFF) содержит упомянутые, по меньшей мере, одни данные (p1), получения упомянутых, по меньшей мере, одних данных (p1) из упомянутого буфера (BUFF);
выполнения упомянутой функции (OP1), причем упомянутое выполнение содержит генерирование упомянутого, по меньшей мере, одного ключа (k1) по упомянутым, по меньшей мере, одним данным (p1).
RU2017143400A 2015-05-13 2016-05-04 Способ оптимизации выполнения функции, которая генерирует, по меньшей мере , один ключ в устройстве на интегральной схеме RU2703347C2 (ru)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
EP15305718.7A EP3094039A1 (en) 2015-05-13 2015-05-13 Method for optimizing the execution of a function which generates at least one key within an integrated circuit device
EP15305718.7 2015-05-13
PCT/EP2016/060034 WO2016180710A1 (en) 2015-05-13 2016-05-04 Method for optimizing the execution of a function which generates at least one key within an integrated circuit device

Publications (3)

Publication Number Publication Date
RU2017143400A RU2017143400A (ru) 2019-06-13
RU2017143400A3 RU2017143400A3 (ru) 2019-08-28
RU2703347C2 true RU2703347C2 (ru) 2019-10-16

Family

ID=53546183

Family Applications (1)

Application Number Title Priority Date Filing Date
RU2017143400A RU2703347C2 (ru) 2015-05-13 2016-05-04 Способ оптимизации выполнения функции, которая генерирует, по меньшей мере , один ключ в устройстве на интегральной схеме

Country Status (3)

Country Link
EP (2) EP3094039A1 (ru)
RU (1) RU2703347C2 (ru)
WO (1) WO2016180710A1 (ru)

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20010042210A1 (en) * 2000-05-11 2001-11-15 Blaker David M. Cryptographic data processing systems, computer program products, and methods of operating same in which a system memory is used to transfer information between a host processor and an adjunct processor
US20040162869A1 (en) * 2002-04-19 2004-08-19 Hiromi Matsuda Calculation device and calculation method
JP2006228146A (ja) * 2005-02-21 2006-08-31 Ntt Docomo Inc Icカード
US20100128869A1 (en) * 2004-12-22 2010-05-27 Sage, Defense Securite Method and device for executing a cryptographic calculation
RU2476015C2 (ru) * 2008-05-11 2013-02-20 Квэлкомм Инкорпорейтед Межсистемный хэндовер между первой и второй сетью с использованием режима ожидания для быстрого повторного соединения с первой сетью

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20010042210A1 (en) * 2000-05-11 2001-11-15 Blaker David M. Cryptographic data processing systems, computer program products, and methods of operating same in which a system memory is used to transfer information between a host processor and an adjunct processor
US20040162869A1 (en) * 2002-04-19 2004-08-19 Hiromi Matsuda Calculation device and calculation method
US20100128869A1 (en) * 2004-12-22 2010-05-27 Sage, Defense Securite Method and device for executing a cryptographic calculation
RU2403682C2 (ru) * 2004-12-22 2010-11-10 Морфо Способ и устройство для выполнения криптографического вычисления
JP2006228146A (ja) * 2005-02-21 2006-08-31 Ntt Docomo Inc Icカード
RU2476015C2 (ru) * 2008-05-11 2013-02-20 Квэлкомм Инкорпорейтед Межсистемный хэндовер между первой и второй сетью с использованием режима ожидания для быстрого повторного соединения с первой сетью

Also Published As

Publication number Publication date
EP3094039A1 (en) 2016-11-16
RU2017143400A3 (ru) 2019-08-28
EP3295605A1 (en) 2018-03-21
RU2017143400A (ru) 2019-06-13
WO2016180710A1 (en) 2016-11-17

Similar Documents

Publication Publication Date Title
US11748737B2 (en) Bank card adding method, and apparatus
JP7007398B2 (ja) トランザクション要求を処理するための方法及び装置
US10404695B2 (en) Portable biometric authentication device and terminal device using near field communication
US11316702B2 (en) Verification-based service authorization
US11706199B2 (en) Electronic device and method for generating attestation certificate based on fused key
EP3195558B1 (en) Efficient and reliable attestation
US20160260095A1 (en) Containerized Computational Task Execution Management Using a Secure Distributed Transaction Ledger
US10303880B2 (en) Security device having indirect access to external non-volatile memory
US20170289193A1 (en) Secure smart terminal and an information processing method
US10185669B2 (en) Secure key derivation functions
KR20150129869A (ko) 공인인증을 위한 보안 토큰 및 그 구동 방법
US20200202328A1 (en) Writing and payment for nfc portable devices
CN109523261B (zh) 区块链终端的交易验证方法、相关装置及可读存储介质
CN108027861A (zh) 安全启动装置、系统和方法
CN110599168B (zh) 基于区块链的数字钱包登录方法、装置以及存储介质
RU2703347C2 (ru) Способ оптимизации выполнения функции, которая генерирует, по меньшей мере , один ключ в устройстве на интегральной схеме
US20100250962A1 (en) Electronic token comprising several microprocessors and method of managing command execution on several microprocessors
US10263772B2 (en) Smart card chip for generating private key and public key pair, and generation method therefor
US10489775B2 (en) Integrated circuit card adapted to transfer first data from a first application for use by a second application
EP2985724B1 (en) Remote load and update card emulation support
EP3244340A1 (en) Method for securely running an application
US11250121B2 (en) Method of operating storage device, and system for storage device
US20220129538A1 (en) Password integrity scoring
KR20100137354A (ko) 가상화 스마트 카드 시스템, 상기 가상화 스마트 카드 시스템 제공방법, 및 데이터 프로세싱 장치
CN115567262A (zh) 基于eID的手机银行在线密码找回方法及装置