Способ, устройство и система передачи данных

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

 

Область техники, к которой относится изобретение

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

Уровень техники

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

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

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

Сущность изобретения

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

В соответствии с первым аспектом варианта осуществления настоящей заявки предоставляется способ передачи данных, причем способ применим в клиенте, и содержит:

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

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

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

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

Согласно второму аспекту варианта осуществления настоящей заявки предоставляется способ передачи данных, причем способ применим на сервере и содержит:

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

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

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

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

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

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

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

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

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

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

Согласно четвертому аспекту варианта осуществления настоящей заявки предоставляется устройство передачи данных, которое содержит:

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

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

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

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

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

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

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

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

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

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

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

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

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

Согласно шестому аспекту варианта осуществления настоящей заявки предоставляется система передачи данных, которая содержит устройство запросчика данных и устройство поставщика данных;

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

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

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

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

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

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

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

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

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

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

Согласно восьмому аспекту варианта осуществления настоящей заявки, предоставляется система передачи данных и содержит устройство запросчика данных и устройство поставщика данных;

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

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

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

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

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

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

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

Краткое описание чертежей

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

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

Фиг. 1B является блок-схемой последовательности операций варианта осуществления способа передачи данных, предоставленного настоящей заявкой.

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

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

Фиг. 4 является блок-схемой варианта осуществления системы передачи данных, предоставленной настоящей заявкой.

Фиг. 5 является блок-схемой варианта осуществления устройства передачи данных, предоставленного настоящей заявкой.

Фиг. 6 является блок-схемой другого варианта осуществления устройства передачи данных, предоставленного настоящей заявкой.

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

Фиг. 8 является блок-схемой другого варианта осуществления системы передачи данных, предоставленной настоящей заявкой.

Подробное описание изобретения

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

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

Следует понимать, что хотя в настоящей заявке могут использоваться такие термины, как первый, второй и третий, для описания различных видов информации, информация не должна ограничиваться этими терминами. Эти термины предназначены только для дифференциации информации одного типа. Например, не выходя за рамки настоящей заявки, первая информация также может упоминаться как вторая информация, и аналогично, вторая информация также может упоминаться как первая информация. В зависимости от контекста термин «если», используемый здесь, может интерпретироваться как «во время…», «когда…» или «в ответ на определение».

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

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

Чтобы избегать проблем информационной безопасности в современных технологиях и проблемы шифрования и дешифрования, занимающей много времени, настоящая заявка предоставляет способ передачи данных, как показано на фиг. 1В. Фиг. 1B является блок-схемой последовательности операций варианта осуществления способа передачи данных, предоставленного настоящей заявкой. Этот способ может содержать следующие этапы 101-108:

На этапе 101 терминал запросчика данных формирует пару асимметричных ключей, содержащую первый открытый ключ и первый закрытый ключ.

На этапе 102 терминал запросчика данных отправляет запрос данных, переносящий первый открытый ключ, в терминал поставщика данных.

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

В другом примере способ дополнительно содержит:

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Как показано на фиг. 3, фиг. 3 является блок-схемой последовательности операций другого варианта осуществления способа передачи данных, предоставленного настоящей заявкой. Вариант осуществления использует способ передачи данных для передачи начального параметра. Когда способ используется на сервере, он может содержать следующие этапы 301-303:

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

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

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

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

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

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

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

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

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

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

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

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

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

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

В другом примере способ дополнительно содержит:

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

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

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

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

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

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

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

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

Обратимся к фиг. 4. Это - блок-схема варианта осуществления системы передачи данных, предоставленной настоящей заявкой:

Система 40 содержит устройство 41 запросчика данных и устройство 42 поставщика данных.

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

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

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

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

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

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

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

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

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

Обратимся к фиг. 5. Это - блок-схема варианта осуществления устройства передачи данных, предоставленного настоящей заявкой:

Устройство содержит: модуль 51 формирования ключей, модуль 52 отправки запроса, модуль 53 приема информации, модуль 54 формирования общего ключа и модуль 55 дешифрования информации.

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

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

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

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

Модуль 55 дешифрования информации предназначен для использования общего ключа для дешифрования зашифрованного текста и получения начального параметра.

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

В необязательном способе реализации модуль 52 отправки запроса предназначен для:

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

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

Обратимся к фиг. 6. Это - блок-схема другого варианта осуществления устройства передачи данных, предоставленного настоящей заявкой.

Устройство содержит: модуль 61 приема запроса, модуль 62 получения ключа, модуль 63 формирования общего ключа, модуль 64 шифрования информации и модуль 65 отправки информации.

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

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

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

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

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

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

В необязательном способе реализации устройство 60 дополнительно содержит (не показано на фиг.6):

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

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

Исходя из этого, настоящая заявка дополнительно предоставляет носимое устройство. Носимое устройство содержит SE-микросхему, которая предназначена для:

формирования пары асимметричных ключей, содержащей первый открытый ключ и первый закрытый ключ, и отправки запроса данных, переносящего первый открытый ключ, на сервер;

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

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

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

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

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

На этапе 701 терминал запросчика данных формирует первый симметричный ключ.

На этапе 702 терминал запросчика данных отправляет запрос данных, переносящий первый симметричный ключ, в терминал поставщика данных.

На этапе 703 терминал поставщика данных получает второй симметричный ключ, который отличается от первого симметричного ключа.

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Обратимся к фиг. 8. Это - блок-схема другого варианта осуществления системы передачи данных, предоставленной настоящей заявкой:

Система 80 содержит устройство 81 запросчика данных и устройство 82 поставщика данных.

Устройство 81 запросчика данных формирует первый симметричный ключ и отправляет запрос данных, переносящий первый симметричный ключ, в устройство 82 поставщика данных.

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

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

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

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

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

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

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

1. Способ передачи данных, при этом способ применим в клиенте и содержит этапы, на которых:

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

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

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

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

2. Способ по п. 1, при этом отправка запроса данных, переносящего первый открытый ключ, на сервер содержит этапы, на которых:

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

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

3. Способ по п. 1 или 2, при этом клиент расположен в носимом устройстве.

4. Способ по п. 3, при этом носимое устройство содержит умный браслет.

5. Способ передачи данных, при этом способ применим на сервере и содержит этапы, на которых:

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

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

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

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

6. Способ по п. 5, при этом способ дополнительно содержит этапы, на которых:

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

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

7. Способ передачи данных, при этом способ содержит этапы, на которых:

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

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

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

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

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

8. Способ по п. 7, при этом отправка запроса данных, переносящего первый открытый ключ, в терминал поставщика данных содержит этапы, на которых:

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

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

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

9. Способ по п. 7, при этом способ дополнительно содержит этапы, на которых:

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

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

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

10. Устройство передачи данных, при этом устройство содержит:

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

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

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

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

модуль дешифрования информации для использования общего ключа для дешифрования зашифрованного текста для получения начального параметра;

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

11. Устройство передачи данных, при этом устройство содержит:

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

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

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

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

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

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

12. Система передачи данных, при этом система содержит устройство запросчика данных и устройство поставщика данных;

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

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

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

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

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

13. Способ передачи данных, при этом способ содержит этапы, на которых:

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

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

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

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

14. Система передачи данных, при этом система содержит устройство запросчика данных и устройство поставщика данных;

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

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

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

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



 

Похожие патенты:

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

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

Изобретение относится к вычислительной технике. Технический результат заключается в повышении уровня безопасности смарт-терминалов.

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

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

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

Изобретение относится к вычислительной технике. Технический результат заключается в повышении производительности процесса шифрования.

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

Изобретение относится к области вычислительной техники для аутентификации пользователя. Технический результат заключается в повышении эффективности аутентификации пользователя.

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

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

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

Изобретение относится к вычислительной технике. Технический результат заключается в повышении уровня безопасности смарт-терминалов.

Изобретение относится к вычислительной технике. Технический результат заключается в повышении уровня безопасности смарт-терминалов.

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

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

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

Изобретение относится к области вычислительной техники для аутентификации пользователя. Технический результат заключается в повышении эффективности аутентификации пользователя.

Изобретение относится к области вычислительной техники для аутентификации пользователя. Технический результат заключается в повышении эффективности аутентификации пользователя.

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

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

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

Наверх