Настоящее изобретение относится, в общем, к области аутентификации пользователей. Настоящее изобретение подходит для применения в ситуациях, когда пользователю необходимо вводить идентификатор, или код (например, PIN-код, пароль и т.п.), который проверяют перед выполнением требуемой операции. Упомянутая операция может быть операцией любого типа. Настоящее изобретение подходит также, без ограничения перечисленным, для верификации пользователей на мобильных устройствах, например, на смартфоне или планшетном компьютере.
Существуют методы аутентификации для множества различных ситуаций, в которых необходима проверка подлинности личности и/или авторизация, перед тем, как будет выполнено некоторое действие или будет предоставлен доступ к контролируемому или администрируемому ресурсу, например, устройству, зданию, компьютерной системе, финансовому счету, сервису и т.п.
Одним из популярных подходов к аутентификации является запись некоторого заранее выбранного идентификатора, содержащего некий код или комбинацию символов, который затем держат в секрете в защищенном хранилище, доступном только авторизованным сторонам. Для удобства такие идентификаторы в настоящем документе называют персональными кодами идентификации (Personal Identification Code, PIC), и при этом важно отметить, что идентификатор может включать не только цифровые знаки, но и другие символы, а также их комбинации. Применение термина PIC-код в данном документе не подразумевает ограничения настоящего изобретения каким-либо конкретным типом или форматом идентификатора пользователя.
После выбора идентификатора и присвоения его авторизованному лицу (или группе лиц), пользователь должен предоставлять правильный идентификатор всякий раз при запросе им разрешения на выполнение контролируемых операций или доступа к ресурсу, или сервису. Введенный пользователем идентификатор сравнивают с хранимым вариантом. Если введенные данные совпадают с хранимым идентификатором, то делают вывод о том, что личность пользователя верифицирована, и предоставляют доступ. В противном случае, если введенные данные не совпадают с заранее сохраненным вариантом, в доступе отказывают.
Применение PIN-кодов стало повсеместным, в особенности в банковской и финансовой сферах. Верификация на базе PIN-кода стала привычной и заслужила доверие пользователей. Финансовые учреждения также предпочитают верификацию PIN-кодом, поскольку она является более надежной формой верификации, чем, например, подпись. При этом, когда применяют аутентификацию транзакций при помощи PIN-кода, ответственность за ущерб, в случае мошеннических действий в связи с транзакцией, возлагается на пользователя, который предоставил PIN-код. Такой подход отличается от транзакций «без предъявления карты», например, онлайн-транзакций, где ответственность за ущерб остается на выпустившей карту организации.
Еще один из подходов к аутентификации предполагает применение специального устройства для захвата биометрических данных, связанных с уникальными физическими или поведенческими параметрами человека, например, такими параметрами могут быть узор радужной оболочки глаза, геометрия ладони или отпечаток пальца. Преимущество биометрической аутентификации заключается в том, что пользователю не нужно запоминать никаких паролей или кодов, вся необходимая информация всегда по определению присутствует у человека, где бы он ни находился, и соответственно, пользователю также не нужно носить с собой никакого дополнительного оборудования, такого, например, как аппаратные ключи и т.п. Следовательно, биометрическая аутентификация является простым и удобным методом, удобным для оконечных пользователей.
Однако несмотря на свои преимущества, биометрическая аутентификация еще не получила широкого признания в некоторых отраслях, включая банковскую сферу. Одна из причин заключается в том, что инфраструктура банковской отрасли основана на механизмах с верификацией при помощи четырехзначных цифровых PIN-кодов. Инфраструктура включает платежные терминалы, банкоматы, коммутаторы и аппаратуру в банке-эмитенте и банке-эквайере, все из которых для перехода от PIN-идентификации на биометрическую необходимо заменить или модернизировать, что связано с высокими расходами. Еще одна проблема связана с защитой биометрических данных, которые могут быть получены злоумышленниками из общедоступных источников. К примеру, голос может быть записан, а отпечатки пальцев могут быть «сняты» в публичном месте. Кроме того, сменить хранимый PIN-код, или идентификатор, не представляет труда, но это невозможно в случае биометрических данных, таких как отпечаток пальца, узор радужной оболочки глаза и т.п.
Эти проблемы могут быть частично решены за счет применения двух- или трехфакторной идентификации, когда для аутентификации используют по меньшей мере два из следующего:
- то, что пользователь знает (например, PIN-код, пароль);
- то, чем пользователь является (например, отпечаток пальца, узор сетчатки глаза, образы лица или голоса);
- то, что есть у пользователя (например, смарт-карта, аппаратный ключ, мобильное устройство). Соответственно, система, которая подразумевает аутентификацию пользователя одновременно PIN-кодом и биометрическими данными на устройстве, которым пользователь владеет или которым пользователь управляет, позволяет получить повышенный уровень защищенности.
Что касается мобильных технологий, все большее количество пользователей применяют портативные вычислительные устройства, такие как смартфоны и планшетные компьютеры, для операций, в которых подлинность личности является критичной, например, для банковских операций. Однако подобные устройства, как известно, не обеспечивают высокого уровня безопасности, а пароли, PIN-коды и другие важные аутентификационные данные не всегда могут быть полностью защищены от доступа посторонних лиц. Соответственно, создание решений для аутентификации, гарантирующих безопасность даже при использовании на мобильных устройствах, является очень сложной задачей.
Одно из таких решений было предложено в документе WO 2014/013252, где описана идея, заключающаяся в передаче, с сервера на пользовательское устройство (ПК, мобильный телефон, планшетный компьютер и т.п.) изображения скремблированной клавиатуры (клавиатуры с перемешанными клавишами). На устройстве формируется действующая, функциональная клавиатура, а принятое изображение отображают на экране в той же позиции, что и действующую клавиатуру. Изображение наложено на клавиатуру и закрывает ее, хотя она остается функциональной в фоновом режиме. Позиции клавиш реальной, находящейся снизу, клавиатуры не совпадают с позициями таких же «клавиш» (клавиш с такими же символами) на изображении. Пользователь может видеть только изображение скремблированной клавиатуры, и соответственно, когда пользователь касается некоторой части изображения или щелкает по ней мышью, выбирая вводимые символы, реальная клавиатура интерпретирует ввод пользователя иначе, в результате чего в память устройства попадает закодированный вариант пользовательского ввода. То есть, поскольку реальный идентификатор (например, PIN-код) никогда не попадает ни в буфер клавиатуры, ни в какую либо иную область памяти, злоумышленники не смогут получить к нему доступ. Затем закодированный идентификатор передают на удаленный сервер, которому известна схема размещения клавиш на изображении клавиатуры, и который, следовательно, способен декодировать пользовательский ввод. Фактически, создается отношение соответствия между различными конфигурациями клавиатуры, и это отношение соответствия применяют для кодирования и декодирования идентификатора. Подобное решение обладает значительными преимуществами по сравнению с другими методами аутентификации, поскольку пользователь не должен запоминать дополнительных идентификаторов, не должен использовать специальное или дополнительное оборудование и не вводит свой реальный пользовательский идентификатор в незащищенное устройство. В документе ЕР 1615181 А1 описан способ аутентификации, в котором в компонент формирования изображений вводят случайную строку. Формирователь изображений принимает случайную строку и формирует визуальные данные, пригодные для отображения на клиентском терминале. Эти визуальные данные затем применяют для изменения внешнего вида отображаемой на терминале информации, в результате чего пользователю отображают множество символов, и затем пользователь вводит свой PIN-код при помощи выбора этих символов. Все входные данные, выбранные пользователем, регистрируются клиентским терминалом как позиционные данные (например, «первая строка, второй столбец») Эти позиционные данные затем преобразуются, клиентским терминалом, в символьные данные, например, цифру 2. В отличие от подхода, предложенного в WO 2014/013252, для кодирования при вводе данных не применяется действующая клавиатура, замаскированная наложенным изображением. Вместо этого для постобработки позиционных данных и получения кодированного варианта пользовательского ввода применяют специально созданный алгоритм. В настоящем изобретении предложено альтернативное решение.
Итак, в соответствии с настоящим изобретением предложено решение для аутентификации, которое определено в приложенной формуле изобретения. В настоящем изобретении предложен способ верификации. Он может использоваться для верификации личности пользователя перед предоставлением доступа к контролируемому ресурсу. Контролируемый ресурс может быть физическим или электронным, цифровым или виртуальным. Настоящее изобретение позволяет получить усовершенствованное решение для обеспечения безопасности. Настоящее изобретение может включать следующий шаг:
формирование действующей скремблированной клавиатуры и размещение упомянутой клавиатуры в зоне отображения на экране, сопряженном с электронным устройством;
отображение изображения нескремблированной клавиатуры по меньшей мере в части упомянутой зоны отображения, таким образом, чтобы пользователь мог нажимать по меньшей мере на одну действующую клавишу посредством упомянутого изображения (т.е. через него).
Таким образом, упомянутые изображение и клавиатура могут располагаться в одной и той же зоне отображения на одном экране. Пользователь может набирать, или вводить, идентификатор, «выбирая» часть изображения. В результате, при помощи действующей клавиатуры, может формироваться закодированный вариант пользовательского идентификатора и выполняться ввод его в устройство. Следовательно, для кодирования, или трансляции, идентификатора не требуется ни преобразования, ни обработки идентификатора или его позиционных данных после ввода. Предпочтительно действующую скремблированную клавиатуру формируют во время исполнения программы (во время использования) при помощи вызова фрагмента кода. Действующая скремблированная клавиатура может формироваться при помощи подпрограммы, которая поставляется в качестве стандартной вместе с устройством. На упомянутом изображении может быть показан клавиатура, которая является используемой по умолчанию клавиатурой, сопряженной с упомянутым устройством. Действующая клавиатура может представлять собой или включать в себя обработчик событий (или «слушатель событий» в альтернативной терминологии программирования). Упомянутые события могут быть событиями клавиатуры, событиями сенсорного экрана или иными событиями, связанными со вводом.
Изображение может формироваться на устройстве или может приниматься в устройстве из удаленного вычислительного ресурса. Таким удаленным вычислительным ресурсом может быть сервер.
Действующая клавиатура может формироваться с использованием конфигурации клавиатуры, полученной с использованием случайного, или псевдослучайного, числа или биометрических данных, относящихся к пользователю. Порядок действующих клавиш на действующей клавиатуре может по меньшей мере частично определяться с использованием биометрических данных, полученных от пользователя или ассоциированных с пользователем. Предпочтительно, биометрические данные могут включать, или в результате их обработки могут быть получены, одну или более строк, массивов или последовательностей значений, которые могут применяться для определения порядка действующих клавиш.
В данном документе выражение «биометрические данные» может использоваться для указания на данные, которые получают непосредственно от пользователя (т.е. «сырые» биометрические данные, захватываемые датчиком). Оно может также указывать на биометрические данные, вычисленные на основе данных, полученные в результате процедуры захвата биометрических данных. К примеру, они могут быть обработанными данными, полученными, или вычисленными, после процедуры биометрической аутентификации. Могут быть сформированы множество действующих клавиатур. По меньшей мере одна клавиатура в этом множестве может быть скремблированной. Могут быть формированы множество изображений клавиатуры. По меньшей мере одно изображение в этом множестве может быть изображением нескремблированной клавиатуры.
Может быть сформировано отношение соответствия между клавишами, показанными на изображении нескремблированной клавиатуры и клавишами действующей клавиатуры. Такое отношение соответствие позволяет получить закодированную версию ввода, полученного от пользователя, и ввести его в устройство. Предложенный способ может включать шаг передачи закодированной версии ввода в удаленный вычислительный ресурс. Электронное устройство может быть любым устройством, имеющим процессор и вычислительные способности. Оно может быть портативным вычислительным устройством. Оно может быть мобильным телефоном, планшетным компьютером, платежным терминалом, портативным компьютером, портативным вычислительным устройством или персональным компьютером.
Также, в соответствии с настоящим изобретением, предложена система, выполненная с возможностью и сконфигурированная для реализации любых из вариантов осуществления способа, описанного в настоящем документе. Все отличительные признаки, описанные в отношении способа, могут быть также применимы для системы и наоборот. Итак, предложена система верификации, включающая:
электронное устройство;
экран, сопряженный с электронным устройством;
при этом электронное устройство выполнено с возможностью следующего:
формирование действующей скремблированной клавиатуры и размещения упомянутой клавиатуры в зоне отображения на экране; и
отображение изображения нескремблированной клавиатуры по меньшей мере в части упомянутой зоны отображения, таким образом, чтобы пользователь мог нажимать по меньшей мере на одну действующую клавишу посредством упомянутого изображения. В одном или более из вариантов осуществления настоящее изобретение может включать устройство или способ, по существу или частично соответствующие описанию в документе WO 2014/013252. Однако в документе WO 2014/013252 описана система, где множество конфигураций скремблированной клавиатуры передают из удаленного сервера в электронное устройство для использования при формировании множества скремблированный действующих клавиатур. Также, в документе WO 2014/013252 описано использование скремблированного изображения, накладываемого на действующую клавиатуру.
Однако в соответствии с настоящим изобретением на изображении клавиатуры показана нескремблированная клавиатура. Могут формироваться более одного изображения, которые используют, накладывая их поверх одной или более скремблированных клавиатур. Среди этого множества изображений на одном или более изображений могут быть показаны скремблированные клавиатуры, однако по меньшей мере на одном изображении в этом множестве должна быть показана нескремблированная клавиатура. Использование нескремблированного изображения, наложенного, или отображаемого поверх действующей клавиатуры, дает то преимущество, что пользователю отображается знакомая и ожидаемая конфигурация клавиатуры. В результате снижается количество ошибок ввода, совершаемых пользователем, по сравнению с применением скремблированной клавиатуры.
Поскольку изображение не скремблировано, то чтобы выполнить декодирование, отношение соответствия между нескремблированным изображением и скремблированной действующей клавиатурой должно быть известно удаленному устройству (серверу), или передано на него. Соответственно, применение нескремблированного изображения ставит несколько нетривиальных задач, которые должны быть решены настоящим изобретением.
Может формироваться множество изображений клавиатуры и/или множество действующих клавиатур. Однако по меньшей мере на одном изображении должна быть показана нескремблированная клавиатура, размещаемая поверх скремблированной действующей клавиатуры, в результате чего получают отношение соответствия между «клавишами» на изображении и действующими клавишами нижележащей действующей клавиатуры.
Выражение «нескремблированная» в этом контексте следует понимать в том смысле, что клавиши, показанные на изображении, соответствуют стандартному формату, или конфигурации. Порядок «клавиш», показанных на изображении, может быть привычным для пользователя. Значения, присвоенные соответствующим клавишам, таким образом, могут быть последовательными. Они могут иметь возрастающий или убывающий порядок.
Напротив, выражение «скремблированная» следует понимать в том смысле, что порядок клавиш рандомизирован, или как-то отличается от заданного по умолчанию, стандартного или привычного порядка. Стандартная конфигурация может быть стандартной для данного устройства. Выражение «скремблированное» может использоваться для указания на то, что клавиши в конфигурации клавиатуры изменены по сравнению с опорной конфигурацией. Опорная конфигурация может быть задана конфигурацией клавиатуры, которая является «родной» для устройства, или поставляется вместе с ним в качестве стандартной.
Изображение может формироваться на электронном устройстве пользователя или может приниматься в устройстве из независимого ресурса.
Одна или более конфигураций клавиатуры могут передаваться в устройство из удаленного вычислительного ресурса, например, из сервера. Одна или более конфигураций клавиатуры могут применяться для формирования скремблированной действующей клавиатуры. Конфигурация клавиатуры может передаваться в устройство в виде имени файла.
В дополнение или альтернативно, одна или более скремблированных конфигураций клавиатуры могут формироваться непосредственно в или на упомянутом электронном устройстве. Упомянутые одна или более скремблированных конфигураций клавиатуры могут затем использоваться для формирования по меньшей мере действующей клавиатуры и/или по меньшей мере одного изображения клавиатуры. Изображение клавиатуры и/или действующая клавиатура могут быть также сформированы в или на упомянутом электронном устройстве.
Преимущество настоящего изобретения заключается в том, что рабочая нагрузка перекладывается с удаленного ресурса на локальное устройство. Оно также снимает необходимость передавать конфигурацию (или конфигурации) в устройство.
Действующая клавиатура может быть сформирована за счет исполнения подпрограммы, например, функции, метода или процедуры, на упомянутом электронном устройстве. Эта подпрограмма может быть частью библиотеки. Такая библиотека может быть размещена в электронном устройстве в качестве стандартной библиотеки. Исполнение подпрограммы может обеспечивать формирование объекта клавиатуры в энергозависимой памяти электронного устройства. Объект клавиатуры может представлять собой виртуальную, электронную модель механической клавиатуры. Действующая клавиатура может формироваться во время исполнения программы.
Выражение «в или на» следует понимать в том смысле, что конфигурацию скремблированной клавиатуры формируют при помощи собственно электронного устройства, или при помощи одного или более устройств, связанных с упомянутым электронным устройством, например, связанных с упомянутым электронным устройством при помощи физического или беспроводного соединения. Скремблированная конфигурация клавиатуры, таким образом, может формироваться локально в электронном устройстве (клиенте), вместо приема ее от удаленного ресурса (сервера).
Выражение «конфигурация клавиатуры» в настоящем документе применяют как указывающее на порядок, схему расположения клавиш или их позиции на клавиатуре. Оно может также применяться для указания на порядок «клавиш» в соответствии с их отрисовкой на изображении клавиатуры, однако при этом следует отметить, что в реальности такое изображение не обязательно должно включать действующие (операбельные) клавиши.
Предпочтительно, скремблированную конфигурацию клавиатуры формируют в или на упомянутом электронном устройстве при помощи программного компонента, который может быть назван компонентом формирования клавиатуры (keypad generation component, KGC) и который может быть выполнен с возможностью формирования изображения (или изображений) и/или действующей клавиатуры (или клавиатур).
В дополнение или альтернативно, он может быть выполнен с возможностью формирования одной или более конфигураций, которые определяют схему размещения клавиш на скремблированной действующей клавиатуре (или клавиатурах). Компонент формирования клавиатуры может быть выполнен с возможностью формирования устройства ввода PIN-кода (PED). Оно может быть виртуальным, не физическим PED-устройством. Упомянутый компонент может быть установлен на электронном устройстве после загрузки из удаленного ресурса (т.е. удаленного по отношению к упомянутому электронному устройству). Таким удаленным ресурсом может быть сервер. Он может быть облачным ресурсом.
Упомянутый программный компонент может быть сконфигурирован для приема входных данных. Он может быть сконфигурирован для использования этих входных данных с целью создания одной или более конфигурации клавиатуры для применения при формировании изображения (или изображений) клавиатуры и/или действующей клавиатуры (или клавиатур). Упомянутыми входными данными может быть псевдо- или истинно случайное число, или им могут быть биометрические данные, связанные с пользователем. Упомянутый пользователь может быть ассоциирован с упомянутым электронным устройством, однако это не является обязательным.
Изображение клавиатуры может быть одним из представлений клавиатуры. Оно может быть как статичным, так и подвижным изображением. Оно может включать «водяные знаки». Изображение можно отличить от действующей клавиатуры в том смысле, что изображение напоминает клавиатуру, однако не обладает никакими функциями реальной клавиатуры. Соответственно, несмотря на то, что части изображения могут представлять, или изображать, «клавиши» и могут казаться таковыми пользователю, само изображение и его части не обладают никакими функциональными свойствами. Соответственно, щелчок мышью, касание или выбор части изображения иным образом не могут, сами по себе, иметь результатом ввод, принимаемый электронным устройством. В одном или более вариантах осуществления настоящего изобретения одна или более клавиш, показанных на изображении, могут нести цветовые коды, водяные знаки или другую маркировку, которая дает пользователю возможность визуально убедиться в том, что данное изображение происходит из легитимного источника.
Напротив, действующая клавиатура обладает функциональностью и свойствами, которые специалисты в данной области техники могут считать соответствующими реальной действующей клавиатуре. То есть, действующая клавиатура может включать множество клавиш, или кнопок. Клавиатуру конфигурируют таким образом, чтобы каждая клавиша, или кнопка, имела связанное с ней значение (например, цифру, букву или иной символ). Подобное присвоение значений клавишам, как правило, выполняют после создания клавиатуры (при вызове подпрограммы во время исполнения), однако присвоение может меняться и после создания, если клавиатура является реконфигурируемой. В любом случае установление соответствия между значениями и клавишами выполняют до того, как пользователь начнет набирать ввод, и значит, когда пользователь выбирает требуемую клавишу, ее заранее заданное значение помещают в соответствующую часть памяти электронного устройства. Этой частью памяти может быть буфер клавиатуры.
Настоящее изобретение дает пользователю возможность предоставлять ввод в электронное устройство путем задействования одной или более клавиш действующей клавиатуры при помощи, или посредством, упомянутого изображения. Изображение клавиатуры может быть наложено поверх действующей клавиатуры, то есть, действующую клавиатуру размещают (отображают) в некоторой зоне отображения экрана, однако при этом изображение клавиатуры отображают, по меньшей мере частично, в той же самой зоне отображения, и оно, таким образом, закрывает, или маскирует, действующую клавиатуру от взгляда пользователя. Действующая клавиатура может, будучи невидимой для пользователя, ожидать ввода в фоновом режиме. Предпочтительно, изображение маскирует действующую клавиатуру полностью, так что пользователю кажется, что он видит действующую клавиатуру, тогда как в реальности пользователь может видеть только изображение клавиатуры. Предпочтительно, символы на действующих клавишах нижележащей клавиатуры могут не соответствовать расположению «клавиш», показанных на изображении клавиатуры. Несоответствие возникает, поскольку на изображении показана нескремблированная клавиатура, а нижележащая клавиатура является скремблированной. Другими словами, конфигурация действующей клавиатуры может не совпадать, или не быть идентичной, с конфигурацией клавиатуры, показанной на изображении. Следовательно, когда пользователь выбирает нечто, выглядящее как клавиша, на изображении клавиатуры, действующая клавиатура, являющаяся активной в этой зоне отображения и ожидающая ввода, может обеспечивать ввод в память устройства другого символа. Таким образом реальный (т.е. имевшийся в виду) пользовательский ввод никогда не будет принят ни в одном из фрагментов памяти устройства. Он никогда не сможет попасть в буфер клавиатуры. За счет отношения соответствия между различными конфигурациями, используемыми для формирования клавиатуры и изображения, создают закодированную версию идентификатора.
Этот отличительный признак обладает значительными преимуществами, которые заключаются в том, что реальный пользовательский ввод не может быть получен никакими сторонними лицами, даже если они получат несанкционированный доступ к электронному устройству. Настоящее изобретение также отличается от известных решений в том отношении, что на существующем уровне техники данные, например, позиционные данные или идентификатор, принимают от пользователя и помещают в память, а затем преобразуют в кодированную версию введенных пользователем данных. В течение сеанса авторизации на электронном устройстве могут быть сформированы одна или множество действующих клавиатур. В дополнение или альтернативно, одно или множество изображений клавиатуры могут формироваться в течение сеанса, при этом одна или более клавиатур могут формироваться на основе одной (скремблированной) конфигурации клавиатуры.
Могут быть сформированы множество действующих клавиатур и/или изображений клавиатуры. Они могут быть организованы, или упорядочены, в виде последовательности, стека, очереди или иной структуры данных.
Одна из множества клавиатур может быть назначена, или выбрана, в качестве активной действующей клавиатуры для приема ввода от пользователя. Активная действующая клавиатура может быть клавиатурой, размещенной «под» изображением, то есть, при выборе пользователем части изображения на экране, может срабатывать активная действующая клавиатура. Предпочтительно, в любой момент времени имеется только одна активная клавиатура. Остальные действующие клавиатуры из множества действующих клавиатур могут находиться в состоянии бездействия, или быть неактивными, до тех пор, пока не будут назначены в качестве активной клавиатуры. Таким образом, может формироваться множество действующих клавиатур, которое организуют в виде некоторой структуры данных. Может выполняться итеративный перебор по этой структуре данных, что позволяет со временем менять действующую клавиатуру, назначенную в качестве активной. Такое изменение может осуществляться после истечения заданного периода времени или по наступлении некоторого события, например, после приема ввода от пользователя. Следовательно, после ввода от пользователя активная действующая клавиатура может быть заменена, или переключена, на другую действующую клавиатуру из упомянутого множества. Предыдущая действующая клавиатура может быт удалена из памяти или помечена как подлежащая удалению после того, как она станет неактивной. Таким образом, после приема ввода (нажатия на клавишу) при помощи некоторой действующей клавиатуры, она может быть удалена из электронного устройства.
Альтернативно, вместо циклического перебора по множеству заранее сформированных действующих клавиатур, для каждого ввода, по необходимости, может формироваться новая действующая клавиатура. Каждая вновь сформированная действующая клавиатура может иметь отличающуюся от других конфигурацию клавиш. Новая действующая клавиатура может формироваться, когда от пользователя ожидается или требуется ввод. К примеру, если идентификатор содержит четыре цифры, первая клавиатура может применяться для приема первого ввода, затем может быть сформирована вторая клавиатура для приема второго ввода и так далее для всех четырех операций ввода. Также, в дополнение к множеству действующих клавиатур, или вместо него, может создаваться изменяемая (модифицируемая клавиатура). Конфигурация изменяемой действующей клавиатуры может быть изменена после, или в результате, некоторого события, например, приема ввода от пользователя или после истечения заданного периода времени. То есть, одна действующая клавиатура может оставаться активной, однако схема расположения ее клавиш может меняться. Для определения различных конфигураций клавиатуры могут применяться скремблированные конфигурации клавиатуры. Скремблированные конфигурации клавиатуры могут формироваться при помощи генератора истинно случайных чисел или генератора псевдослучайных чисел. Истинно или псевдослучайное число (далее просто «случайное число») может подаваться в качестве входных данных в программный компонент, который называют компонентом формирования клавиатуры. Следовательно, всякий раз, когда настоящее изобретение применяет один и тот же пользователь, при использовании, в качестве входных данных в компоненте конфигурирования, случайных чисел могут получаться различные конфигурации клавиатуры.
Предпочтительно, случайное число формируют локально в электронном устройстве. Оно может быть сформировано в процессоре электронного устройства или при помощи устройства, имеющего связь (проводную или беспроводную) с этим электронным устройством. То есть, оно может формироваться съемным устройством, или устройством, связанным с электронным устройством по протоколу беспроводной связи, например, Bluetooth, NFC и т.п.
Скремблированные конфигурации клавиатуры могут формироваться с использованием биометрических данных, относящихся к пользователю. Биометрические данные могут формироваться, или захватываться, множеством различных образов. Что касается формирования упомянутого выше случайного числа, его, предпочтительно, формируют при помощи электронного устройства или локально по отношению к электронному устройству. Биометрические данные могут включать любые виды данных, относящихся к физическим или поведенческим параметрам пользователей. Они могут включать данные, относящиеся к отпечатку пальцев, рисунку радужной оболочки глаза или другие данные, а также данные, вычисленные на их основе. Биометрические данные могут быть вычислены на основе «сырых» биометрических данных, которые захватывают при помощи устройства захвата биометрических данных. Настоящее изобретение не ограничено в отношении применяемого типа биометрических данных, а также способа их сбора или обработки. На существующем уровне техники известны различные системы захвата и анализа биометрических данных, которые могут рассматриваться как подходящие для применения вместе с настоящим изобретением. В результате обработки биометрических данных может быть получена некоторая последовательность, или идентификатор, уникальный для данного пользователя. Упомянутая последовательность может быть строкой значений или символов. Эта строка может подаваться в программный компонент (KGC) с целью определения порядка клавиш на одной или более действующих клавиатурах и/или изображениях, сформированных электронным устройством или в электронном устройстве. Следовательно, всякий раз, когда настоящее изобретение применяет один и тот же пользователь, при использовании, в качестве входных данных в программном компоненте, биометрических данных, могут получаться идентичные конфигурации клавиатуры. Биометрические данные могут использоваться для формирования значения рандомизации, которое затем используют при создании различных конфигураций. В дополнение или альтернативно, в качестве входных данных алгоритма конфигурирования клавиатуры может применяться какой-либо другой вид данных. Эти данные могут быть получены на основе биометрических данных пользователя или в некоторой связи с ними. Например, они могут быть криптографическим ключом. Криптографический ключ может использоваться при формировании значения рандомизации, которое вводят в компонент формирования клавиатуры. Такой ключ может быть приватным или публичным криптографическим ключом, который ассоциирован с пользователем и/или с цифровым кошельком, принадлежащим пользователю. Кошелек может храниться на упомянутом электронном устройстве. Криптографический ключ может быть сформирован в ходе процедуры биометрической аутентификации или процедуры регистрации, включающих захват биометрических данных пользователя. К примеру, публичный и/или приватный ключ могут быть сформированы во время создания, настройки или регистрации цифрового кошелька, например, кошелька Bitcoin или иной криптовалюты.
Упомянутое электронное устройство может быть мобильным и/или портативным устройством, таким как смартфон, планшетный компьютер, платежный терминал, считыватель платежных карт или устройство чтения смарт-карт. В дополнение или альтернативно, оно может быть персональным вычислительным устройством, ассоциированным с пользователем и/или на котором зарегистрирован пользователь. Это отличает настоящее изобретение от систем, известных на существующем уровне техники, которые предназначены для использования в неперсональных вычислительных устройствах, таких как банкоматы. Выражение «персональное вычислительное устройство» в настоящем документе используют для указания на электронные вычислительные устройства, например, ПК, портативный компьютер, мобильный телефон или планшетный компьютер, которые могут быть ассоциированы с некоторым лицом, зарегистрированы на некоторое лицо и/или находиться во владении некоторого лица.
Предпочтительно, действующую клавиатуру и/или изображение клавиатуры удаляют из устройства после одной или более операций ввода от пользователя или по истечении заданного периода времени. Позиция упомянутой зоны отображения на экране и/или ее размеры могут быть заданы при помощи вызова процедуры или метода. Зона отображения может содержать множество подзон, при этом каждая подзона может соответствовать клавише клавиатуры. Такие подзоны могут называться «оперативными точками» ('hot spots'). Выбор конкретной оперативной точки на экране может приводить в действие клавишу активной действующей клавиатуры, в результате чего (закодированный) ввод попадает в память.
Предпочтительно, способ включает шаг сохранения закодированной версии идентификатора пользователя в памяти, сопряженной с электронным устройством, при этом идентификатор принимают при помощи действующей клавиатуры через изображение клавиатуры, то есть, идентификатор пользователя ни в какой момент времени не хранится на устройстве в незакодированном виде.
Способ может включать шаги сохранения закодированной версии идентификатора, введенного в электронное устройство при помощи действующей клавиатуры, через изображение клавиатуры; и передачи закодированной версии идентификатора в удаленный вычислительный ресурс.
Скремблированная конфигурация клавиатуры может быть также передана в удаленный вычислительный ресурс. Или, в удаленный вычислительный ресурс могут быть переданы множество скремблированных конфигураций клавиатуры. Удаленный вычислительный ресурс, например, сервер, может декодировать закодированную версию идентификатора пользователя. В нем одна или более скремблированных конфигураций клавиатуры могут использоваться для декодирования закодированной версии идентификатора пользователя.
Настоящее изобретение может быть выполнено с возможностью формирования одной конфигурации клавиатуры для каждого значения в идентификаторе пользователя. В дополнение, оно может формировать конфигурацию клавиатуры, которую используют при формировании изображения клавиатуры.
В настоящем изобретении предложено также электронное вычислительное устройство, выполненное с возможностью исполнения описанного выше способа и сконфигурированное для этих целей. Устройство может включать экран и по меньшей мере один программный компонент, выполненный с возможностью и сконфигурированный для выполнения любых из описанных выше вариантов способа. Упомянутый экран может быть сенсорным экраном.
Устройство может включать, или быть сопряжено, или осуществлять связь со следующим:
генератор истинно случайных чисел и/или генератор псевдослучайных чисел;
средства захвата или формирования биометрических данных, относящихся к пользователю; и/или средства считывания данных со смарт-карты. Смарт-картой может быть платежная карта. Она может быть интеллектуальной картой (IC) любого типа, которая не зависит от функционирования устройства, т.е. она не может быть SIM-картой. В настоящем изобретении предложен также способ верификации, включающий следующие шаги:
применение биометрических данных, относящихся к человеку, для формирования конфигурации клавиатуры;
использование этой конфигурации клавиатуры для формирования действующей клавиатуры и/или изображения клавиатуры. Любые из описанных выше отличительных признаков, или все эти признаки, могут быть также применимы и для данного аспекта настоящего изобретения. Могут быть сформированы множество изображений клавиатуры, и при этом по меньшей мере одно изображение представляет собой изображение нескремблированной клавиатуры.
Предпочтительно, упомянутой конфигурацией клавиатуры является скремблированная конфигурация клавиатуры. Таким образом, порядок клавиш клавиатуры, определяемый конфигурацией, может быть отличающимся по сравнению с заданной по умолчанию или опорной конфигурацией.
Способ может включать следующие шаги:
захват, формирование или прием биометрических данных в или на электронном устройстве;
формирование действующей клавиатуры и/или изображения клавиатуры в или на упомянутом электронном устройстве. В настоящем изобретении предложено также электронное платежное устройство, включающее:
сенсорный экран;
компонент, выполненный с возможностью считывания платежной карты или другой интеллектуальной карты (IC); и
программное обеспечение, выполненное с возможностью: формирования по меньшей мере одной конфигурации клавиатуры на основе биометрических данных, относящихся к человеку, и/или истинно или псевдослучайного числа; и формирования изображения клавиатуры и/или действующей клавиатуры с использованием по меньшей мере одной конфигурации клавиатуры.
Предпочтительно, упомянутая платежная карта или иная интеллектуальная карта (CI) являются отдельными от электронного устройства. Карта может быть физически независимой от электронного устройства. Она может быть финансовой картой, то есть, банковской или кредитной картой. Предпочтительно, она не предоставляет никакой функциональности для устройства. Она может представлять собой особое устройство, не являющееся SIM-картой. Также, в соответствии с настоящим изобретением предложен способ верификации, включающий следующие шаги:
отображение изображения нескремблированной клавиатуры поверх первой действующей клавиатуры в зоне экрана, сопряженного с электронным устройством;
использование первой действующей клавиатуры для получения первого нажатия на клавишу от пользователя; и использование по меньшей мере одной дополнительной клавиатуры для получения по меньшей мере одного дополнительного нажатия на клавишу;
при этом конфигурацию первой и/или по меньшей мере одной дополнительной действующей клавиатуры и/или конфигурацию изображения клавиатуры определяют с использованием входной последовательности, сформированной или захваченной локально по отношению к упомянутому электронному устройству.
Любые из описанных выше отличительных признаков, или все эти признаки, могут быть также применимы и для данного аспекта настоящего изобретения.
Упомянутое нескремблированное изображение может быть наложено поверх скремблированной действующей клавиатуры, как это было описано выше в отношении других аспектов настоящего изобретения. Таким образом, изображение может служить маской, или покровом, который по меньшей мере частично закрывает действующую клавиатуру. То есть, пользователь может видеть изображение нескремблированной клавиатуры вместо скремблированной действующей клавиатуры, и таким образом, когда пользователь выбирает некоторую часть изображения на экране, обеспечивается срабатывание действующей клавиатуры. Следовательно, способ позволяет принимать в память (например, буфер клавиатуры) закодированную версию пользовательского ввода.
На электронном устройстве могут быть сформированы одна или множество действующих клавиатур. В любой момент времени в качестве активной может быть выбрана, или подготовлена, только одна действующая клавиатура. Активной клавиатурой может быть клавиатура, которая запущена на устройстве для получения следующего нажатия клавиши от пользователя.
Упомянутая входная последовательность может быть псевдослучайным числом. В дополнение или альтернативно, входная последовательность может быть сформирована с использованием биометрических данных, относящихся к пользователю. Может быть создана закодированная версия идентификатора. Закодированный идентификатор может включать упомянутое первое нажатие клавиши. Он может включать по меньшей мере одно дополнительное нажатие клавиши. Идентификатор может представлять собой код, пароль или идентификатор любого другого типа, ассоциированный с пользователем.
Скремблированная клавиатура может включать конфигурацию клавиш, имеющую рандомизированный порядок, или порядок, отличающийся от заданной по умолчанию или опорной конфигурации клавиатуры. Для получения каждого нажатия на клавишу от пользователя может применяться отличающаяся от других скремблированная действующая клавиатура. Каждая действующая клавиатура из упомянутого множества может отличаться от других в этом множестве, являясь отдельной, или особой, действующей клавиатурой. Альтернативно, может формироваться только одна изменяемая действующая клавиатура, а порядок клавиш может реконфигурироваться для каждого нажатия на клавишу. Следовательно, отличие между клавиатурами может заключаться в наличии различных конфигураций клавиш.
Упомянутое электронное устройство может быть мобильным или портативным устройством, таким как смартфон, планшетный компьютер или платежный терминал. Электронное устройство может включать программные и/или аппаратные средства для считывания данных с карты. Такой картой может быть интеллектуальная карта IC или смарт-карта, например, платежная карта. Карта может не зависеть от функционирования электронного устройства. Другими словами, карта не может быть SIM-картой или другой «картой», неотделимой от функционирования устройства. Один или более аспектов настоящего изобретения могут быть описаны как обеспечение решения для двухфакторной аутентификации. Оно позволяет получить решение, в котором:
1) При помощи биометрических данных верифицируют подлинность личности пользователя; и
2) Авторизацию от пользователя на выполнение транзакции верифицируют на основе ввода правильного, заранее заданного идентификатора.
Важно отметить, что для ясности и краткости некоторые из отличительных признаков, описанных выше в связи с одним из аспектов настоящего изобретения могут быть опущены при описании других его аспектов. Однако все отличительные признаки, упомянутые выше в связи с любым из аспектов настоящего изобретения равноприменимы для всех других его аспектов. Отличительные признаки, описанные в связи с системой, могут быть также применимы по отношению к способу, и наоборот. Для более глубокого понимания этих и других аспектов настоящего изобретения следует обратиться к рассмотренному ниже конкретному варианту его осуществления. Далее, исключительно в качестве примера, будет описан один из вариантов осуществления настоящего изобретения, с помощью примеров и со ссылками на приложенные чертежи, где:
на фиг. 1 представлена блок-схема алгоритма, иллюстрирующая один из возможных вариантов осуществления настоящего изобретения в соответствии со с предложенным способом.
В настоящем изобретении предложено решение надежной аутентификации для верификации подлинности личности человека. Настоящее изобретение может применяться как часть более общей процедуры, или системы авторизации, которые не описаны в данном документе.
В одном из вариантов своего осуществления настоящее решение отличается от метода аутентификации, описанного в документе WO 2014/013252, который предполагает отображение скремблированной клавиатуры, закрывающей от взгляда пользователя действующую клавиатуру, на пользовательском электронном устройстве, например, на мобильном телефоне. Соответственно, пользователь, как ему кажется, видит действующую клавиатуру, которая, однако, является изображением, лишенным какой бы то ни было функциональности. Однако в соответствии с настоящим изобретением вместе со скремблированной действующей клавиатурой используют по меньшей мере одно нескремблированное изображение.
Действующая клавиатура, лежащая под изображением, содержит клавиши, или кнопки, имеющие присвоенные им символы, в соответствии с существующим уровнем техники. Такая действующая клавиатура может называться виртуальной. Пользователь вводит свой идентификатор, например, PIN-код, пароль, персональный идентификационный код (personal identification code, PIC), выбирая части экрана (где показаны «клавиши») в соответствии с символами идентификатора. Действующая клавиатура, которая была сформирована под изображением, регистрирует нажатия на клавиши пользователем и вводит символы, присвоенные выбранным клавишам клавиатуры, в буфер. Это позволяет создать закодированную версию реального идентификатора и передать ее на удаленный сервер для верификации. Важно отметить, что в настоящем изобретении не выполняют операцию трансляции, или кодирования, пользовательского ввода, в отличие от некоторых систем на существующем уровне техники. В подобных существующих системах «реальный» идентификатор перед кодированием попадает в буфер клавиатуры. Это дает возможность посторонним лицам получить несанкционированный доступ к идентификатору пользователя через буфер. Однако в настоящем изобретении данная проблема решена, поскольку реальная версия идентификатора никогда не хранится в буфере, даже временно.
Поскольку порядок клавиш на действующей клавиатуре отличается от порядка клавиш, показанных на изображении, «реальный» ввод пользователя никогда фактически не попадает в память телефона. Это является значительным преимуществом, поскольку, соответственно, реальный идентификатор не может быть несанкционировано получен из телефона посторонними. Также, не зная конфигурацию клавиш одновременно и в действующей клавиатуре, и на изображении клавиатуры, закодированный идентификатор декодировать невозможно.
В одном из вариантов осуществления настоящего изобретения изображение клавиатуры и/или конфигурацию клавиш для действующей клавиатуры формируют на пользовательском устройстве. Преимущество данного подхода заключается в том, что вычислительная нагрузка перекладывается на клиентское (пользовательское) устройство, вместо сервера. Альтернативно, изображение и/или конфигурацию передают в устройство из удаленного сервера. В других вариантах осуществления настоящего изобретения может применяться смешанный подход, - формирование на устройстве и получение изображений/конфигураций с сервера.
В одном из вариантов осуществления настоящего изобретения программный компонент, установленный на пользовательском устройстве, принимает ввод. Он применяет этот ввод для определения конфигурации клавиш для одной или более действующих клавиатур. В дополнение или альтернативно, он применяет этот ввод для определения конфигурации «клавиш», отображаемых на одном или более изображениях клавиатуры. Действующая клавиатура (или клавиатуры) и/или изображение (или изображения) клавиатуры могут затем формироваться с использованием конфигураций, полученных при помощи программного компонента. Однако при этом используют по меньшей мере одно изображение нескремблированной клавиатуры. В одном из вариантов осуществления настоящего изобретения входными данными для компонента формирования является случайное число. В еще одном из вариантов осуществления настоящего изобретения входными данными являются биометрические данные, относящиеся к пользователю. Биометрическими данными может быть, например, отпечаток пальца. Специалисты в данной области техники должны понимать, что могут применяться биометрические данные любого типа. Настоящее изобретение не ограничено в отношении формата, типа или способа захвата биометрических данных.
Если в качестве входных данных используют случайное число, результирующие конфигурации будут отличаться всякий раз при использовании настоящего изобретения. Однако, если в качестве входных данных используют биометрические данные, результирующие конфигурации всякий раз при применении настоящего изобретения будут одинаковыми. Это так, поскольку биометрические данные пользователя, например, отпечаток пальца, узор сетчатки глаза или другие данные, остаются неизменными и всегда дают одинаковые входные данные. В обоих вариантах осуществления настоящего изобретения входные данные формируют в пользовательском устройстве или с его помощью. Другими словами, их формируют локально по отношению к пользовательскому устройству, а не на удаленном ресурсе. Входные данные могут формироваться при помощи одного или более компонентов, которые образуют часть пользовательского устройства или находятся в непосредственной близости от пользовательского устройства и соединены с ним физическим или беспроводным интерфейсом. В действии, пользователь регистрируется в системе, которая соответствует настоящему изобретению. Затем на пользовательское устройство загружают требуемое программное обеспечение, включающее упомянутый компонент формирования. Далее в настоящем документе пользовательское устройство будет называться мобильным телефоном, однако может также применяться любое другое электронное устройство, обладающее вычислительными способностями. Когда необходимо верифицировать подлинность личности пользователя, формируют необходимые входные данные, либо при помощи генератора случайных числе, либо при помощи устройства захвата биометрических данных. К примеру, пользователь может прижимать палец к экрану мобильного телефона, или может направлять камеру на себя, произносить нечто в микрофон и т.п. Устройство захвата биометрических данных формирует строку, которая является представлением захваченных биометрических параметров.
Биометрические данные или случайное число (строку) затем подают в компонент формирования клавиатуры. В компоненте формирования клавиатуры эти входные данные используют для формирования множества конфигураций клавиатуры. Предпочтительно, порядок символов, или значений, в каждой из конфигураций уникален, то есть, повторяющиеся конфигурации отсутствуют. Конфигурации клавиатуры могут формироваться на основе случайной строки или строки биометрических данных с использованием значений, или подстрок, выбранных из строки. К примеру, для первой 10-символьной конфигурации цифровой клавиатуры могут применяться первые десять значений строки, следующие десять значений могут применяться для второй конфигурации и т.п. То есть, компонент должен гарантировать, что строка будет достаточно длинной и обеспечит необходимые значения для всех конфигураций клавиатуры.
В одном из примеров осуществления настоящего изобретения, включающем клавиатуру с цифрами от 0 до 9, в каждой конфигурации, формируемой при помощи настоящего изобретения, будет присутствовать десять значений (т.е. знаков, цифр или символов). Количество формируемых конфигураций будет равно количеству значений в идентификаторе пользователя плюс один. Это позволяет формировать по одной скремблированной действующей клавиатуре для каждого нажатия на клавишу, запрашиваемого у пользователя для ввода идентификатора, и еще одну конфигурацию для изображения клавиатуры. К примеру, в одном из вариантов осуществления настоящего изобретения идентификатор пользователя может состоять из 4 значений, и при этом компонент формирования конфигураций будет создавать 5 конфигураций: по одной для каждой цифры в идентификаторе и одну для формирования изображения, которое будет видимо пользователю.
В каждый момент времени будет «активной» только одна действующая клавиатура. То есть, когда пользователь выбирает клавишу (то, что выглядит, как клавиша) на изображении, только активная клавиатура будет способна зарегистрировать ввод от пользователя. В одном из вариантов осуществления настоящего изобретения, где в начале сеанса аутентификации, при помощи пользовательского устройства заранее формируют множество действующих клавиатур, только одну из них назначают, размещают или исполняют в качестве активной действующей клавиатуры для приема следующего нажатия на клавишу пользователем. После приема ввода активная клавиатура может быть некоторым образом изменена (например, могут быть переконфигурированы клавиши) или ее выбор в качестве активной клавиатуры может быть отменен (например, путем удаления из памяти или удаления из стека).
Однако нужно отметить, что идентификатор пользователя может быть любого другого типа и любой длины, и включать при этом значения любых типов. Он может включать знаки, или символы, любого типа. По меньшей мере одно такое изображение является изображением используемой по умолчанию (нескремблированной) клавиатуры. Таким образом, «клавиши», показанные на изображении, отображают в последовательном порядке, как и ожидается пользователем, в соответствии, например, со стандартной клавиатурой устройства. В других вариантах осуществления настоящего изобретения для приема всех нажатий на клавиши пользователем может формироваться и применяться только одна нижележащая действующая клавиатура. В дополнительных вариантах осуществления настоящего изобретения поверх одной или более действующих клавиатур может применяться более одного изображения клавиатуры. Такое множество изображений может включать по меньшей мере одно изображение скремблированной клавиатуры. Изображение может изменяться после каждого ввода (нажатия на клавишу) от пользователя, или может меняться после заранее заданного события, например, трех неправильных попыток. К примеру, скремблированное изображение может использоваться для получения идентификатора пользователя, однако если эта операция будет неуспешной, или если верификация будет неудачной, используют другое изображение скремблированной клавиатуры, и повторяют процедуру аутентификации. После трех неуспешных попыток с применением скремблированных изображений, пользователю может быть отображено изображение нескремблированной клавиатуры. Следует отметить, что скремблированное изображение может применяться совместно со скремблированной или нескремблированной действующей клавиатурой. Однако когда применяют нескремблированное изображение, его размещают таким образом, чтобы оно маскировало скремблированную действующую клавиатуру, в результате чего получают требуемое отношение соответствия для целей кодирования.
В соответствии с иллюстрацией фиг.1, общий замысел, используемый в тех вариантах осуществления настоящего изобретения, где конфигурацию клавиатуры формируют на устройствах, может быть описан следующим образом:
1. Формирование входной строки в или на пользовательском устройстве при помощи захвата биометрических данных или формирования случайного числа, - см. фиг. 1, шаг 101.
2. Подача входной строки в компонент формирования клавиатуры (KGC), - шаг 102.
3. В компоненте формирования входную строку используют для формирования пяти конфигураций клавиатуры, - шаг 103.
4. Использование одной из конфигурации клавиатуры для формирования и отображения изображения скремблированной клавиатуры, и использование остальных конфигураций для формирования четырех скремблированных действующих клавиатур, которые помещают под изображение;
наложение изображения поверх активной действующей клавиатуры, таким образом, что когда пользователь осуществляет ввод (нажатие на клавишу) при помощи изображения, активная клавиатуры считывает ввод в буфер, - шаг 104.
5. Создание закодированной версии идентификатора пользователя на основе множества вводов, зарегистрированных действующей клавиатурой (или клавиатурами), - шаг 105.
6. Передача закодированной версии идентификатора пользователя и пяти конфигураций клавиатуры в удаленное местоположение для декодирования, - шаг 106.
7. Если пользователем введен неверный идентификатор (т.е. верификация прошла неуспешно), повторение процедуры аутентификации; в ходе последующей процедуры аутентификации (например, после трех неуспешных попыток), повторение процедуры с использованием изображения нескремблированной клавиатуры вместе со скремблированной действующей клавиатурой.
В одной из реализаций конфигурации клавиатуры, которые получены на основе (случайной или биометрической) входной строки, могут использоваться в качестве входных данных для вызова процедуры, исполняемой и помещаемой в стек переменных исполняемой программы.
Один из примеров осуществления настоящего изобретения может быть представлен следующим образом:
В рассмотренном примере всякий раз для ожидаемого нажатия на клавишу формируют новую клавиатуру. В одной из альтернативных реализаций в начале сеанса может быть заранее сформировано множество клавиатур с различными конфигурациями, которые помещают в некоторую структуру данных. Затем кодированный результат может быть получен путем итерации по этой структуре данных.
В еще одной из реализаций может быть сформирована только одна изменяемая действующая клавиатура. Затем упомянутое множество конфигураций может использоваться для изменения порядка клавиш на одной и той же действующей клавиатур всякий раз при регистрации нажатия на клавишу.
После создания закодированного идентификатора пользователя он может быть передан на удаленный сервер для сравнения с хранимой версией идентификатора. Для декодирования идентификатора серверу необходима информация о соответствии клавиш на клавиатуре (клавиатурах) и на изображении. Соответственно, конфигурации клавиатуры, сформированные пользовательским устройством, также передают на сервер.
Настоящее изобретение может быть реализовано в платежном терминале. Платежный терминал может иметь в своем составе компонент чтения карт, благодаря которому данные могут считываться с микросхемы и/или с магнитной полосы интеллектуальной карты, или при помощи технологий NFC/бесконтактной связи. Платежный терминал может быть специальным устройством для обработки платежей и аутентификации пользователя для подобных транзакций. Соответственно, платежный терминал не является вычислительным устройством общего назначения, таким как смартфон или ПК. В других вариантах осуществления настоящего изобретения оно может быть реализовано на неспециализированном устройстве, например, на мобильном телефоне, планшетном компьютере, персональном компьютере, портативном компьютере и т.п. Такое неспециализированное устройство может быть ассоциировано с отдельным пользователем или с группой пользователей. Например, оно может быть телефоном, зарегистрированным на некоторого пользователя.
Соответственно, настоящее изобретение позволяет получить решение для безопасной аутентификации, даже когда его реализуют на мобильном устройстве. Формирование конфигураций клавиатуры на пользовательском устройстве обладает преимуществами постольку, поскольку обработку данных выполняют локально, а не удаленно. Сочетание биометрических данных с идентификатором, например, PIN-кодом, позволяет реализовать мультифакторную аутентификацию, которая подразумевает идентификацию пользователя на устройстве («то, кем является пользователь») и затем аутентификацию при помощи идентификатора («то, что известно пользователю»). Это позволяет частично решить проблемы с безопасностью, возникающие при применении исключительно биометрической аутентификации.
Следует отметить, что упомянутые выше варианты осуществления настоящего изобретения лишь иллюстрируют настоящее изобретение, не ограничивая его. Специалисты в данной области техники, в пределах объема настоящего изобретения, который задан приложенной формулой изобретения, могут быть способны предложить множество альтернативных вариантов его осуществления. В формуле изобретения все числовые обозначения, указанные в скобках, не следует рассматривать как ограничивающие. Выражения «включающий» и «включают», а также аналогичные им, не исключают наличия дополнительных элементов или шагов, не перечисленных в каком-либо пункте формулы изобретения или в настоящем документе в целом. В настоящем документе термин «включает» означает «содержит или состоит из», а «включающий», означает «содержащий или состоящий из». Упоминание какого-либо элемента в единственном числе не исключает множественности таких элементов и наоборот. Настоящее изобретение может быть реализовано опри помощи аппаратного обеспечения, включающего несколько независимых элементов, а также при помощи соответствующим образом запрограммированного компьютера. В пунктах формулы изобретения, описывающих устройство, и включающих перечисление нескольких средств, некоторые из этих средств могут быть реализованы при помощи одного аппаратного элемента. Сам факт того, что несколько средств перечислены в отличающихся друг от друга зависимых пунктах формулы изобретения, не исключает того, что какая-либо комбинация из этих средств не может также эффективно применяться.
название | год | авторы | номер документа |
---|---|---|---|
Способы и системы аутентификации | 2016 |
|
RU2724310C2 |
Способ и система аутентификации | 2016 |
|
RU2720563C2 |
Способ и система аутентификации | 2013 |
|
RU2639674C2 |
Способ и система аутентификации | 2013 |
|
RU2759365C1 |
УСТРОЙСТВО И СПОСОБ ДЛЯ ИДЕНТИФИКАЦИИ И АУТЕНТИФИКАЦИИ | 2007 |
|
RU2469391C2 |
СПОСОБ И УСТРОЙСТВО ДЛЯ ПРОВЕРКИ ПОДЛИННОСТИ ИЛИ ПРАВА С ИСПОЛЬЗОВАНИЕМ РАЗОВЫХ КОДОВ ТРАНЗАКЦИЙ | 2006 |
|
RU2414001C2 |
УПРАВЛЕНИЕ ДВЕРНЫМ ЗАМКОМ И СИГНАЛИЗАТОРОМ ТОПЛИВОЗАПРАВОЧНОЙ КОЛОНКИ | 2017 |
|
RU2737077C2 |
ТЕРМИНАЛ СВЯЗИ | 2008 |
|
RU2439656C2 |
ОСУЩЕСТВЛЕНИЕ ДОСТУПА К СЧЕТУ В ПУНКТЕ ПРОДАЖИ | 2012 |
|
RU2597515C2 |
ТЕРМИНАЛ СВЯЗИ | 2008 |
|
RU2488158C2 |
Изобретение относится к области аутентификации пользователя. Технический результат изобретения заключается в повышении уровня защищенности при использовании безопасного ввода идентификатора пользователя. Способ верификации включает этапы: формирование действующей скремблированной клавиатуры и ее размещение в зоне отображения на экране, сопряженном с электронным устройством; отображение изображения нескремблированной клавиатуры в пределах по меньшей мере части упомянутой зоны отображения таким образом, чтобы действующая клавиатура была скрыта от взгляда, по меньшей мере частично, и пользователь мог нажимать по меньшей мере на одну действующую клавишу действующей скремблированной клавиатуры посредством изображения нескремблированной клавиатуры. При этом формируют отношение соответствия между клавишами, показанными на изображении нескремблированной клавиатуры, и клавишами действующей клавиатуры, и это отношение соответствия позволяет ввести закодированную версию ввода, полученного от пользователя, в электронное устройство. 2 н. и 15 з.п. ф-лы, 1 ил.
1. Способ верификации, включающий следующие шаги:
формирование действующей скремблированной клавиатуры и размещение упомянутой клавиатуры в зоне отображения на экране, сопряженном с электронным устройством;
отображение изображения нескремблированной клавиатуры в пределах по меньшей мере части упомянутой зоны отображения, таким образом, чтобы действующая клавиатура была скрыта от взгляда, по меньшей мере частично, и пользователь мог нажимать по меньшей мере на одну действующую клавишу действующей скремблированной клавиатуры посредством изображения нескремблированной клавиатуры,
при этом формируют отношение соответствия между клавишами, показанными на изображении нескремблированной клавиатуры, и клавишами действующей клавиатуры, и это отношение соответствия позволяет ввести закодированную версию ввода, полученного от пользователя, в электронное устройство.
2. Способ по п.1, в котором скремблированную действующую клавиатуру формируют во время исполнения программы при помощи вызова фрагмента кода.
3. Способ по п.1 или 2, в котором скремблированную действующую клавиатуру формируют при помощи подпрограммы, которую поставляют в качестве стандартной вместе с устройством.
4. Способ по любому из предшествующих пунктов, в котором на упомянутом изображении показана клавиатура, которая является используемой по умолчанию клавиатурой, сопряженной с устройством.
5. Способ по любому из предшествующих пунктов, в котором
упомянутое изображение формируют на устройстве; или
упомянутое изображение принимают в устройстве из удаленного вычислительного ресурса.
6. Способ по любому из предшествующих пунктов, в котором действующую клавиатуру формируют с использованием конфигурации клавиатуры, полученной с использованием случайного, или псевдослучайного, числа или биометрических данных, относящихся к пользователю.
7. Способ по любому из предшествующих пунктов, в котором порядок действующих клавиш на действующей клавиатуре по меньшей мере частично определяют с использованием биометрических данных, полученных от пользователя или ассоциированных с пользователем, при этом, предпочтительно, биометрические данные включают, или в результате их обработки получают, одну или более строк, массивов или последовательностей значений, которые применяют для определения порядка действующих клавиш.
8. Способ по любому из предшествующих пунктов, в котором формируют множество действующих клавиатур, при этом по меньшей мере одна клавиатура в этом множестве является скремблированной клавиатурой.
9. Способ по любому из предшествующих пунктов, в котором формируют множество изображений клавиатуры, при этом по меньшей мере одно изображение в этом множестве является изображением нескремблированной клавиатуры.
10. Способ по любому из предшествующих пунктов, включающий шаг передачи отношения соответствия в удаленное устройство или сервер.
11. Способ по любому из предшествующих пунктов, который используется для верификации личности пользователя перед предоставлением доступа к контролируемому ресурсу.
12. Способ по любому из предшествующих пунктов, в котором закодированная версия идентификатора создается из множества закодированных вводов, зарегистрированных действующей клавиатурой.
13. Способ по любому из предшествующих пунктов, в котором устройство представляет собой платежный терминал и содержит компонент чтения карт, благодаря которому данные могут считываться с микросхемы и/или с магнитной полосы интеллектуальной карты, или при помощи технологий NFC/бесконтактной связи.
14. Способ по любому из предшествующих пунктов, включающий шаг передачи закодированной версии ввода в удаленный вычислительный ресурс.
15. Способ по любому из предшествующих пунктов, в котором электронное устройство является мобильным телефоном, планшетным компьютером, платежным терминалом, портативным компьютером, портативным вычислительным устройством или персональным компьютером.
16. Система верификации, включающая:
электронное устройство;
экран, сопряженный с электронным устройством;
при этом электронное устройство выполнено с возможностью:
формирования действующей скремблированной клавиатуры и размещения упомянутой клавиатуры в зоне отображения на экране; и
отображения изображения нескремблированной клавиатуры в пределах по меньшей мере части упомянутой зоны отображения, таким образом, чтобы действующая клавиатура была скрыта от взгляда, по меньшей мере частично, и пользователь мог нажимать по меньшей мере на одну действующую клавишу действующей скремблированной клавиатуры посредством изображения нескремблированной клавиатуры,
при этом формируют отношение соответствия между клавишами, показанными на изображении нескремблированной клавиатуры, и клавишами действующей клавиатуры, и это отношение соответствия позволяет ввести закодированную версию ввода, полученного от пользователя, в электронное устройство.
17. Система по п.16, предназначенная и сконфигурированная для выполнения способа по любому из пп.1-15.
Способ защиты переносных электрических установок от опасностей, связанных с заземлением одной из фаз | 1924 |
|
SU2014A1 |
СПОСОБ ПОДГОТОВКИ ТОПЛИВНОГО ГАЗА | 2012 |
|
RU2520207C2 |
US 8078885 B2, 13.12.2011 | |||
Пломбировальные щипцы | 1923 |
|
SU2006A1 |
ПРОГРАММИРУЕМАЯ КЛАВИАТУРА | 2007 |
|
RU2408055C2 |
Авторы
Даты
2020-04-17—Публикация
2016-05-27—Подача