BR102014017104A2 - pré-geração de chaves de sessão para transações eletrônicas e dispositivos que pré-geram chaves de sessão para transações eletrônicas - Google Patents
pré-geração de chaves de sessão para transações eletrônicas e dispositivos que pré-geram chaves de sessão para transações eletrônicas Download PDFInfo
- Publication number
- BR102014017104A2 BR102014017104A2 BR102014017104A BR102014017104A BR102014017104A2 BR 102014017104 A2 BR102014017104 A2 BR 102014017104A2 BR 102014017104 A BR102014017104 A BR 102014017104A BR 102014017104 A BR102014017104 A BR 102014017104A BR 102014017104 A2 BR102014017104 A2 BR 102014017104A2
- Authority
- BR
- Brazil
- Prior art keywords
- transaction
- session
- cryptographic keys
- user terminal
- keys
- Prior art date
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q20/00—Payment architectures, schemes or protocols
- G06Q20/38—Payment protocols; Details thereof
- G06Q20/382—Payment protocols; Details thereof insuring higher security of transaction
- G06Q20/3829—Payment protocols; Details thereof insuring higher security of transaction involving key management
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/06—Network architectures or network communication protocols for network security for supporting key management in a packet data network
- H04L63/062—Network architectures or network communication protocols for network security for supporting key management in a packet data network for key distribution, e.g. centrally by trusted party
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W12/00—Security arrangements; Authentication; Protecting privacy or anonymity
- H04W12/04—Key management, e.g. using generic bootstrapping architecture [GBA]
- H04W12/041—Key generation or derivation
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W12/00—Security arrangements; Authentication; Protecting privacy or anonymity
- H04W12/04—Key management, e.g. using generic bootstrapping architecture [GBA]
- H04W12/043—Key management, e.g. using generic bootstrapping architecture [GBA] using a trusted network node as an anchor
- H04W12/0431—Key distribution or pre-distribution; Key agreement
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L2463/00—Additional details relating to network architectures or network communication protocols for network security covered by H04L63/00
- H04L2463/061—Additional details relating to network architectures or network communication protocols for network security covered by H04L63/00 applying further key derivation, e.g. deriving traffic keys from a pair-wise master key
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L2463/00—Additional details relating to network architectures or network communication protocols for network security covered by H04L63/00
- H04L2463/062—Additional details relating to network architectures or network communication protocols for network security covered by H04L63/00 applying encryption of the keys
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/12—Applying verification of the received information
Abstract
pré-geração de chaves de sessão para transações eletrônicas e dispositivos que pré-geram chaves de sessão para transações eletrônicas. a presente invenção refere-se a métodos e dispositivos para pré-gerar chaves de sessão para assegurar que transações são providas. uma pluralidade de chaves criptográficas de sessão é gerada a partir de uma chave criptográfica mestre e uma respectiva pluralidade de valores possíveis de um contador de transação. as chaves criptográficas de sessão são criptografadas para prover uma pluralidade de chaves criptográficas de sessão criptografada, que são armazenadas no terminal de usuário. a chave criptográfica mestre é deletada a partir do terminal de usuário após as chaves de sessão ser geradas. para assegurar uma transação, um criptograma é gerado baseado em uma das chaves criptográficas de sessão criptografada e em dados de transação para a transação, e o criptograma é transmitido a um terminal de transação. o contador de transação é atualizado, e a chave criptográfica de sessão criptografada é deletada a partir do terminal de usuário.
Description
Relatório Descritivo da Patente de Invenção para "PRÉ-GERAÇÃO DE CHAVES DE SESSÃO PARA TRANSAÇÕES ELETRÔNICAS E DISPOSITIVOS QUE PRÉ-GERAM CHAVES DE SESSÃO PARA TRANSAÇÕES ELETRÔNICAS".
ANTECEDENTES
[001] Com a proliferação de dispositivos móveis, a indústria de pagamento com cartão está se movendo para pagamento usando o equivalente de um cartão com chip armazenado no dispositivo móvel. Para pagamento móvel, os mesmos dados e algoritmos podem ser armazenados em um dispositivo móvel, e o pagamento credencial é ainda denominado um "cartão" embora não mais fisicamente reside em um cartão de plástico. Como usado no presente documento, a palavra "cartão" significa este tipo de cartão em um dispositivo móvel.
[002] O consórcio "Europay, MasterCard e Visa" (EMV) define especificações para cartões móveis que trabalham dentro d uma infraes-trutura de pagamento segura. Todas as marcas de cartão principais, incluindo Visa, MasterCard, American Express, Discover, etc., são especificações de cartão desenvolvidas que derivam a partir das especificações de EMV.
[003] Em algumas variantes, o cartão contém chaves criptográficas secretas que são armazenadas seguramente e que são usadas para dados de transação com assinatura digital referente a uma transação potencial, tal como uma transação com cartão de crédito ou uma transação com cartão de débito. Os dados de transação assinados digitalmente podem ser usados para verificar a transação, que pode prover segurança melhorada em relação a uma transação com cartão de crédito/débito convencional. Tal cartão pode ser usado, por e-xemplo, em um ponto comercial de terminal (POS) de venda, um caixa eletrônico automático (ATM) ou outro local que provê uma leitora NFC. SUMÁRIO
[004] Algumas modalidades proporcionam métodos de assegurar uma transação entre um terminal de usuário e um terminal de transação. Os métodos incluem gerar uma pluralidade de chaves criptográficas de sessão a partir de uma chave criptográfica mestre e uma respectiva pluralidade de valores possíveis de um contador de transação, armazenar a pluralidade de chaves criptográficas de sessão e uma da respectiva pluralidade de valores do contador de transação no terminal de usuário, criptografar uma pluralidade de chaves criptográficas de sessão para prover uma pluralidade de chaves criptográficas de sessão criptografada, gerar um criptograma baseado em uma primeira da pluralidade de chaves criptográficas de sessão criptografada e dados de transação para a transação, transmitir o criptograma ao terminal de transação, atualizar o contador de transação, e deletar a uma primeira pluralidade de chaves criptográficas de sessão criptografada a partir do terminal de usuário após gerar o criptograma.
[005] Criptografar a pluralidade de chaves criptográficas de sessão pode incluir criptografar com um número de identificação pessoal.
[006] Criptografar a pluralidade de chaves criptográficas de sessão pode incluir camuflar a pluralidade de chaves criptográficas de sessão.
[007] Camuflar a pluralidade de chaves criptográficas de sessão pode incluir criptografar a pluralidade de chaves criptográficas de sessão de tal modo que decodificar qualquer uma da pluralidade de chaves criptográficas de sessão com um número de identificação pessoal incorreto produz uma chave criptográfica de sessão.
[008] Os métodos podem incluir ainda prover a chave criptográfica mestre no terminal de usuário e deletar a chave criptográfica mestre a partir do terminal de usuário após gerar a pluralidade de chaves criptográficas de sessão. Após deletar a chave criptográfica mestre a partir do terminal de usuário, pode haver nenhum dado restante no terminal de usuário que pode ser usado seguramente para decodificar as chaves criptográficas de sessão restantes usando os dados de transação e o criptograma.
[009] Os métodos podem incluir ainda prover a chave criptográfica mestre no terminal de usuário, e deletar a chave criptográfica mestre a partir do terminal de usuário após gerar a pluralidade de chaves criptográficas de sessão.
[0010] Em algumas modalidades, o número de chaves criptográficas de sessão gerado pode incluir um número de valores possíveis do contador de transação e, em outras modalidades, o número de chaves criptográficas de sessão geradas inclui menos do que um número de valores possíveis do contador de transação.
[0011] A chave criptográfica de sessão pode incluir uma pluralidade de chaves criptográficas.
[0012] Gerar o criptograma pode incluir aplicar uma função de ha-sh aos dados de transação e a uma primeira das chaves criptográficas de sessão criptografada.
[0013] Atualizar o contador de transação pode incluir incrementar o contador de transação.
[0014] Um terminal de usuário de acordo com algumas modalidades inclui um processador, uma memória acoplada ao processador, e um módulo de comunicação acoplado ao processador. O processador é configurado para gerar uma pluralidade de chaves criptográficas de sessão a partir de uma chave criptográfica mestre e uma respectiva pluralidade de valores possíveis de um contador de transação, para armazenar as chaves criptográficas de sessão, para criptografar a pluralidade de chaves criptográficas de sessão para prover uma pluralidade de chaves criptográficas de sessão criptografada, para trocar dados de transação referentes a uma transação proposta com um terminal de transação, para gerar um criptograma baseado em uma primei- ra da pluralidade de chaves criptográficas de sessão criptografada e nos dados de transação, para transmitir o criptograma ao terminal de transação usando o módulo de comunicação, para atualizar o contador de transação, e para deletar a uma primeira da pluralidade de chaves criptográficas de sessão criptografada a partir do terminal de usuário.
[0015] Criptografar as chaves criptográficas de sessão pode incluir criptografar a pluralidade de chaves criptográficas de sessão com um número de identificação pessoal.
[0016] O processador pode ser configurado para camuflar a pluralidade de chaves criptográficas de sessão de tal modo que decodificar qualquer uma da pluralidade de chaves criptográficas de sessão criptografada com um número de identificação pessoal incorreto produz uma chave criptográfica de sessão válida.
[0017] Um servidor de provisionamento de acordo com algumas modalidades inclui um processador, uma memória acoplada ao processador e um módulo de comunicação acoplado ao processador. O processador é configurado para gerar uma pluralidade de chaves criptográficas de sessão a partir de uma chave criptográfica mestre e uma respectiva pluralidade de valores possíveis de um contador de transação, e para transmitir a pluralidade de chaves criptográficas de sessão e o contador de transação a um terminal de usuário para uso na segurança de uma transação financeira.
[0018] As chaves criptográficas de sessão podem incluir primeiras chaves criptográficas de sessão, em que o número de primeiras chaves criptográficas de sessão inclui menos do que um número de valores possíveis do contador de transação, e o processador pode ser ainda configurado para gerar chaves criptográficas de sessão adicionais e transmitir as chaves criptográficas de sessão adicionais ao terminal de usuário quando o suprimento de primeiras chaves criptográficas de sessão ao terminal de usuário é reduzido para um nível predetermina- do.
[0019] Algumas modalidades proporcionam métodos incluindo gerar uma pluralidade de itens secretos correspondendo a uma respectiva pluralidade de valores possíveis de um índice, armazenar a pluralidade de itens secretos e uma primeira da pluralidade de valores possíveis do índice em um primeiro terminal, gerar uma mensagem correspondendo a uma primeira da pluralidade de valores possíveis do índice usando um primeiro dos itens secretos, transmitir a mensagem ao segundo terminal, atualizar o índice e deletar a uma primeira da pluralidade de itens secretos a partir do primeiro terminal após gerar a mensagem. A pluralidade de itens secretos pode ser uma senha de uso. O índice pode ser um índice de transação, e a mensagem pode ser um resumo de transação para uma transação entre o primeiro terminal e o segundo terminal.
[0020] Produtos de programa de computador relacionados são divulgados. Nota-se que os aspectos descritos no presente documento com respeito a uma modalidade podem ser incorporados em modalidades diferentes embora não especificamente descritos em relação às mesmas. Isto é, todas as modalidades e/ou aspectos de quaisquer modalidades podem ser combinadas em qualquer modo e/ou combinação. Além do mais, outros sistemas, métodos e/ou produtos de programa de computador de acordo com as modalidades serão ou tornar-se-ão evidentes a um perito na técnica na revisão dos seguintes desenhos e descrição detalhada. É pretendido que todos estes sistemas adicionais, métodos e/ou produtos de programa de computador sejam incluídos nesta descrição, estejam dentro do escopo da presente divulgação, e sejam protegidos pelas reivindicações anexas.
BREVE DESCRIÇÃO DOS DESENHOS
[0021] Os aspectos da presente divulgação são ilustrados a título de exemplo e não estão limitados às figuras anexas.
[0022] A figura 1 é um diagrama de bloco ilustrando siste- mas/métodos de processamento de cartão incluindo um cartão, um ponto de terminal de venda e um emissor do cartão.
[0023] A figura 2 é um diagrama de bloco ilustrando siste- mas/métodos de processamento de cartão incluindo um cartão em um terminal de usuário, um ponto de terminal de venda e um emissor do cartão.
[0024] A figura 3 é um diagrama de bloco ilustrando a geração de um criptograma de transação por um cartão.
[0025] A figura 4 é um diagrama ilustrando a autenticação de uma transação com cartão.
[0026] As figuras 5 e 6 são fluxogramas ilustrando siste- mas/métodos de acordo com as várias modalidades.
[0027] A figura 7 é um diagrama de bloco de um terminal de usuário de acordo com algumas modalidades.
[0028] A figura 8 é um diagrama de bloco ilustrando um servidor de provisionamento de acordo com algumas modalidades.
[0029] A figura 9 é um fluxograma ilustrando sistemas/métodos de provisionamento de acordo com várias modalidades.
[0030] A figura 10 é um fluxograma ilustrando operações para gerar uma chave de sessão camuflada de acordo com algumas modalidades.
DESCRIÇÃO DETALHADA
[0031] As modalidades da presente divulgação serão descritas mais totalmente a seguir com referência aos desenhos anexos. Outras modalidades podem tomar muitas formas diferentes e não devem ser interpretadas como limitadas às modalidades descritas no presente documento. Números iguais referem-se a elementos completamente iguais.
[0032] Nos últimos anos, o consórcio EMV projetou uma solução de pagamento pela qual os dados e algoritmos do cartão podem ser armazenados em um terminal de usuário, tal como um dispositivo móvel, em vez de em um cartão. Neste contexto, o terminal de usuário pode incluir um dispositivo móvel, tal como um telefone móvel, telefone inteligente, tablet, laptop, assistente digital pessoal (PDA) ou qualquer outro dispositivo de computação móvel. No entanto, o termo "terminal de usuário" não é limitado a dispositivos de computação móveis ou sem fio. A credencial de pagamento no dispositivo móvel pode ser ainda denominada um "cartão" para conveniência.
[0033] Para simplicidade, a seguinte discussão será limitada a uma descrição do ponto de compras de venda. No entanto, a descrição é igualmente aplicável a transações de ATM ou similares.
[0034] Com referência à figura 1, durante a compra com cartão, um cartão 10 troca uma pluralidade de manganês com um terminal (POS) de ponto de venda 20 através de um link de comunicação 12. O cartão 10 e o terminal (POS) 20 negociam se a transação será realizada, e em caso afirmativo, como ela será realizada. A informação recebida pelo terminal POS 20 pode ser usada para verificar a transação com o emissor do cartão 30.
[0035] O cartão 10 pode ser um cartão EMV, isto é, qualquer cartão que cumpre com os padrões EMV, ou outra tecnologia similar, ou qualquer outro cartão que inclui um processador e memória.
[0036] Para se comunicar com um terminal POS do comerciante, um terminal de usuário pode usar comunicações de campo próximas (NPC) em vez do contato elétrico físico usado para um cartão. A comunicação de campo próxima (NPC) é um conjunto de padrões que possibilitam uma faixa curta, comunicação sem fio bidirecional entre dispositivos par tocar os mesmos juntos ou trazer os mesmos em estreita proximidade, geralmente não mais do que algumas polegadas. Os padrões NFC cobrem os protocolos de comunicações e os forma- tos de troca de dados e são baseados em padrões de identificação de frequência de rádio (RFID) existentes.
[0037] Com referência à figura 2, um terminal de usuário 100 pode incluir credenciais de pagamento eletrônico, isto é, um "cartão" 110 armazenado em uma memória do terminal 100, e um módulo NFC 115. O módulo NFC pode incluir um transceptor e software e/ou firm-ware associado que possibilita que o terminal de usuário 100 engate em comunicações NFC. Para usar o terminal de usuário 100 possibilitado por NFC para conduzir uma transação, o dispositivo móvel 100 pode ser colocado contra (ou próximo a) ao terminal POS 20 durante vários segundos, durante esse tempo um caminho de comunicação sem fio 112 é estabelecido entre o dispositivo móvel 100 e o terminal POS 20. A transação pode ser negociada entre o cartão 110 e o terminal POS usando o caminho de comunicação sem fio 112.
[0038] Outros tipos de protocolos de comunicação sem fio, tais como Bluetooth e Wi-Fi podem ser usados para estabelecer o caminho de comunicação sem fio 112;
[0039] Como mencionado acima, as credenciais de pagamento e-letrônico no cartão 110 podem incluir chaves criptográficas que são usadas para dados de transação assinado digitalmente para fins de verifícação/autenticação. Para fins de segurança, não é geralmente desejável armazenar este dado sensível em uma memória normal que pode ser submetida a adulteração ou hacker. Em vez disso, os cartões são tipicamente armazenados em um "Elemento Seguro" (SE), que é um chip resistente a adulteração que proporciona armazenagem de dados segunda junto com um microprocessador criptográfico para facilitar a autenticação e segurança da transação, e proporciona memória segura para armazenas aplicações de pagamento. As aplicações de pagamento também podem funcionar no Elemento Seguro.
[0040] No entanto, pode ser pouco prático ou de outro modo inde- sejável para incluir ou usar um Elemento Seguro em um dispositivo móvel. Isto leva a um problema potencial, em que uma chave criptográfica armazenada em um dispositivo móvel pode ser comprometida se o dispositivo móvel é perdido ou furtado. Algumas modalidades proporcionam métodos para gerar, armazenar e/ou usar chaves criptografias de tal modo que elas são menos prováveis de ser comprometidas mesmo se não são armazenadas em um Elemento Seguro ou ambiente similar.
[0041] Algumas modalidades são descritas no presente documento no contexto de uma transação de pagamento compatíveis com EMV em um terminal (POS) de ponto de venda do comerciante usando comunicações de campo próximas (NFC). No entanto, será apreciado que as modalidades descritas no presente documento podem ser usadas em conexão com transações ATM, transações de quiosque abandonado ou de máquina de venda, e outras transações similares. Além do mais, existem muitas variações de protocolo em transações EMV para NFC. As modalidades descritas no presente documento podem ser empregadas com outros protocolos ou padrões.
[0042] Além do mais, embora descrito em conjunto com dispositivos móveis que são configurados para se comunicar através de interface sem fio, será apreciado que algumas modalidades podem ser a-plicáveis a outros tipos de terminais de usuário. Um terminal de usuário pode incluir qualquer dispositivo de computação.
[0043] Com referência novamente à figura 2, para conduzir uma transação, um usuário pode selecionar um cartão 110 dentre a pluralidade de cartões armazenados em um terminal de usuário 100. O cliente pode então reter o terminal de usuário 100 próximo ao terminal POS 20 do comerciante. O terminal POS 20 e o terminal de usuário 100 iniciam uma sessão onde eles se comunicam através de uma interface de NFC 112. O cartão 110 e o terminal POS 20 trocam mensagens de acordo com o protocolo EMV. Incluídos nestas mensagens estão dados de identificação do cartão (dados do cartão), dados de identificação de terminal (dados de terminal), outros dados de transação, e saída de dados por algoritmos de transação funcionando no terminal POS 20 e no cartão 110. Os dados do cartão podem incluir, por exemplo, o Número de Contas Primário (PAN) do cartão 110, o nome do titular do cartão, dados de validade, etc. O dados de terminal podem incluir um código do país do terminal, etc. Os outros dados de transação podem incluir a data, tipo de transação, quantidade de transação, etc. Os dados do cartão, os dados de terminal e/ou os outros dados de transação, ou quaisquer porções destes itens, podem ser referidos geralmente como "dados de transação".
[0044] Ao usar os dados de transação, o cartão 110 e o terminal POS 20 negociam o modo no qual a transação irá prosseguir. O terminal POS 20 pode usar os dados de transação para autorizar a transação com o emissor do cartão 30.
[0045] Com referência à figura 3, no processo de conduzir a transação, o cartão 110 pode gerar um criptograma 126, que é uma mensagem criptografada que é uma forma de resumo de transação que pode ser usada para autenticar a transação para o emissor do cartão 30. O criptograma é gerado codificando os dados de transação 122 usado uma chave criptográfica 120 armazenada no terminal de usuário 100.
[0046] As chaves criptográficas, ou "chaves financeiras", podem incluir, em algumas modalidades, chaves da forma: uma chave simétrica (tal como uma chave 3DES ou um Padrão de Criptografia Avançado (chave AES), um segredo, uma matriz de byte secreta, uma semente, e/ou um dado controlado.
[0047] Para geração do criptograma, versões anteriores de EMV usaram uma chave financeira única, ou chave de criptograma (CK), que é uma chave de 16 bytes (composta de duas chaves DES). Os dados relevantes são combinados, com hash e criptografados usando a CK, para formar o criptograma.
[0048] As versões posteriores de EMV usam um "Aplicativo de Chave Mestre de Criptograma" (MK) de 16 bytes e a partir das quais geram uma "Aplicativo de Chave de Sessão de Criptograma" (SK) de 16 bytes, para cada transação. A chave de sessão é um item secreto que é armazenado no cartão. A chave de sessão, que é diferente para cada transação, é usada para gerar um criptograma em muito do mesmo modo como a CK original que foi usada. Existem vários algoritmos diferentes em uso para gerar uma chave de sessão a partir de uma chave mestre.
[0049] Um criptograma é tipicamente um valor de 8 bytes que pode ser entendido como uma assinatura nos dados de transação. O cartão 110 gera o criptograma ao codificar os dados de transação 122 com a chave criptográfica 120 usando uma função de hash que toma os dados de transação e a chave criptográfica como entradas e gera o criptograma como uma saída. A função de hash usada para gerar o criptograma em uma função matemática de um sentido. Isto é, a chave criptográfica e os dados de transação não podem ser recuperados a partir do criptograma. Também, o criptograma é único para os dados de transação particulares e chave criptográfica que são usados.
[0050] Assim, presumindo que o emissor do cartão 30 conhece a chave criptográfica usada pelo cartão 110, uma vez que o emissor do cartão 30 forneceu os dados de transação pelo terminal POS 20, o e-missor do cartão pode verificar que o cartão 110 gerou o criptograma gerando o criptograma a partir dos dados de transação usando a chave criptográfica conhecida e comparando o mesmo ao criptograma que foi gerado pelo cartão 110.
[0051] Com referência agora à figura 4, para conduzir uma transa- ção, um cartão 110 e um terminal POS podem trocar dados de transação em uma série de mensagens 201. O cartão 110 pode então gerar um criptograma a partir dos dados de transação usando a chave criptográfica armazenada (bloco 202). O cartão 110 transmite o criptograma ao terminal POS 20 através de um link de NFC em uma mensagem 203. Para autenticar a transação, o terminal POS 20 pode então transmitir o criptograma e os dados de transação ao emissor do cartão 30 em uma mensagem 205.
[0052] O emissor do cartão pode verificar o criptograma gerando um criptograma experimental usando os dados de transação providos pelo terminal POS 20 e sua cópia armazenada ou regenerada da chave de criptograma (bloco 206). Baseado no resultado do processo de verificação, o emissor do cartão irá prover uma resposta de autenticação 207 ao terminal POS 20.
[0053] Como indicado acima, as chaves criptográficas podem ser armazenadas em um Ambiente Seguro (SE). O Ambiente Seguro pode ser protegido por um Número de Identificação Pessoal (PIN). Assim, quando o usuário abre o aplicativo de pagamento no terminal de usuário 100, o usuário deve introduzir um PIN, que é checado pelo Ambiente Seguro antes de ser dado acesso aos cartões armazenados no terminal de usuário. O usuário então escolhe um cartão e executa a transação. As chaves criptográficas nunca devem deixar o Ambiente Seguro. Se um ladrão furta um tutu do usuário, o ladrão não pode usar os cartões sem conhecer o PIN. Se o atacante tenta um ataque com "força bruta" experimentando todos os PINs possíveis um após o outro, o atacante geralmente irá falhar, porque o Ambiente Seguro irá travar após um número pré-fixado de tentativas falhadas.
[0054] As comunicações de NFC não são tipicamente criptografadas. Embora seja pretendido que a comunicação de NFC ocorra através de distâncias pequenas de vários centímetros em torno, é possível ler este tráfego através de distâncias maiores usando um receptor sensível. No entanto, mesmo se um atacante intercepta as mensagens de protocolo de EMV contendo dados de transação, o atacante não será capaz de deduzir os valores das chaves criptográficas a partir do criptograma e dos dados de transação.
[0055] Muitos terminais de usuário não têm um Ambiente Seguro. Além do mais, mesmo nos terminais de usuário que incluem um Ambiente Seguro, pode não ser desejável ou possível para uma dada aplicação usar o Ambiente Seguro porque o acesso ao Ambiente Seguro pode ser restrito, por exemplo, pelo sistema de operação do terminal de usuário, pelos fabricantes ou pelo provedor de serviço sem fio.
[0056] Assim, pode ser desejável armazenar os dados do cartão, incluindo chaves criptográficas, em espaço de armazenamento de a-plicação normal em um terminal de usuário. Isto cria um problema, no entanto, no evento do terminal de usuário ser perdido ou furtado, como pode ser geralmente possível (embora difícil) ler o dados do cartão no terminal de usuário.
[0057] Supõe-se, por exemplo, que as chaves financeiras (e outros dados o cartão) foram criptografadas usando um PIN, e armazenadas em memória de aplicativo. Um atacante de posse do terminal de usuário pode instituir um ataque com força bruta contra os dados. Em um ataque com força bruta, um atacante pode tentar cada PIN possível por sua vez até os dados bem formados serem revelados, com nenhum erro relatado.
[0058] Outra forma de proteção da chave financeira (CK ou MK) foi desenvolvida que usa camuflagem criptográfica como descrito, por e-xemplo, na Publicação US n2 2011/0060913, a divulgação da qual é incorporada no presente documento por referência.
[0059] Essencialmente, a camuflagem criptográfica que opera crip-tografando cuidadosamente a chave financeira em um modo que de- codifica a chave com qualquer PIN possível irá revelar uma chave de bloqueio válida, com nenhum relato de erro. Somente tentando uma transação um atacante irá descobrir se o PIN correto foi adivinhado; O emissor do cartão pode bloquear a conta após um número pré-fixado de tentativas, assim anulando o ataque com força bruta.
[0060] No entanto, existe outro ataque que pode derrotar este mecanismo de proteção no contexto de comunicação sem contato (sem fio) entre o terminal de usuário e o terminal POS. Se um atacante grava a troca sem fio entre o terminal de usuário e o terminal POS, e então, subsequentemente, ganha acesso ao terminal de usuário, o atacante estará de posse dos dados de transação e do criptograma a partir da troca de NFC e também estará de posse das chaves camufladas no telefone.
[0061] O atacante pode então testar um ataque com força bruta em que, para cada PIN possível, o atacante descamufla a chave criptográfica, gera um criptograma experimental a partir dos dados de transação, e compara o criptograma experimental ao criptograma atual capturado a partir da troca de NFC. Se o criptograma experimental e o criptograma atual combinam, o atacante sabe qual o PIN correto e, portanto, a chave criptográfica correta foi descoberta.
[0062] Algoritmos do tipo de EMV anteriores para gerar um criptograma usaram a chave criptográfica CK diretamente para criptografar alguns dados e produzir o criptograma. Recentemente, algoritmos mais elaborados foram projetados que não usam a chave criptográfica diretamente. Preferivelmente, a chave criptográfica é tratada como uma "Chave Mestre" (MK), e para cada transação uma "Chave de Sessão" (SK) é gerada a partir da Chave Mestre. A Chave de Sessão é usada no algoritmo de geração do criptograma.
[0063] O algoritmo de EMV denominado "CSK" foi adaptado por várias especificações de cartão importantes para a geração de chaves de sessão a partir da chave mestre. O algoritmo CSK de EMV toma a chave mestre MK e um contador de transação, tal como o Contador de Transação para Aplicação definida por EMV (ATC), como entradas e gera uma chave de sessão SK como uma saída construindo várias sequências de bytes e criptografando as mesmas com a chave mestre, e então escolher certos bytes de saída para se tornar a chave de sessão. O ATC é um contador que é mantido tanto pelo terminal de usuário como pelo emissor do cartão para rastrear o número de transações iniciado pelo terminal de usuário. Em particular, o ATC é um contador que começa em zero e é incrementado uma vez para cada transação. O ATC é armazenado em 2 bytes, e assim suporta 65.536 compras (embora EMV suporte reinicializar o ATC através de um procedimento autenticado envolvendo uma chave financeira diferente. Assim, cada chave de sessão é associada com um valor único do ATC. Outro contador de transação pode ser usado em vez do ATC definido por EMV.
[0064] O ataque de intercepção de protocolo passivo descrito acima trabalha independente de se o cartão usa uma chave criptográfica única, ou usa a chave de sessão alternativa. No caso de chaves de sessão, o atacante pode descamuflar a mestre e usar a mesma para gerar a(s) chave(s) de sessão, que são usadas por sua vez para gerar criptogramas experimentais como acima.
[0065] Algumas modalidades proporcionam uma abordagem que pode superar os interesses de segurança através do armazenamento de dados do cartão, incluindo chaves criptográficas, em um terminal de usuário. De acordo com algumas modalidades, as chaves criptográficas podem ser protegidas no dispositivo, em software, em um modo que diminui a possibilidade de que as chaves financeiras possam ser comprometidas, mesmo se o terminal de usuário for furtado.
[0066] De acordo com algumas modalidades, uma chave criptográfica mestre e um contador de transação são proporcionados. Uma pluralidade de chaves criptográficas de sessão é gerada a partir da chave criptográfica mestre e uma respectiva pluralidade de valores possíveis do contador de transação. As chaves criptográficas de sessão são criptografadas para prover uma pluralidade de chaves criptográficas de sessão criptografada, que são armazenadas no terminal de usuário. A chave criptográfica mestre é então deletada a partir do terminal de usuário.
[0067] Durante a transação, um criptograma é gerado baseado em uma das chaves criptográficas de sessão criptografada e nos dados de transação para a transação. O criptograma é transmitido ao terminal de transação. O contador de transação é atualizado, e a chave criptográfica de sessão criptografada é deletada a partir do terminal de usuário. Assim, mesmo se um atacante intercepta os dados de transação e o criptograma a partir de uma comunicação de NFC, nem a chave de sessão usada para formar o criptograma, nem a chave mestre usada para gerar a chave de sessão pode ser obtida a partir do terminal de usuário.
[0068] Como um exemplo, com referência às figuras 2 e 5, uma chave mestre é provida (bloco 302). Por exemplo, em algumas modalidades, um usuário pode fazer download de dados de cartão para um cartão 110 incluindo uma chave mestre em um terminal de usuário 100. Em outras modalidades, uma chave mestre pode ser provida em um servidor de provisionamento operado pelo emissor do cartão.
[0069] De acordo com algumas modalidades, o servidor de provisionamento ou o terminal de usuário 100 itera através de um número de valores possíveis do contador de transação (possivelmente incluindo todos os valores possíveis do ATC) e gera um número de chaves de sessão usando os valores de contador de transação e a chave mestre (bloco 304). Em algumas modalidades, as chaves de sessão podem ser pré-geradas, por exemplo, por um servidor de provisiona- mento operado pelo emissor do cartão 30 e, subsequentemente, providas ao terminal de usuário 100. Assim, o terminal de usuário 100 não precisa atualmente gerar as chaves de sessão, e a chave mestre não pode ser armazenada no terminal de usuário 100, deste modo aumentando a segurança da chave mestre.
[0070] As chaves de sessão geradas deste modo podem ser armazenadas no terminal de usuário na memória de aplicativo regular. As chaves de sessão podem ocupar muito pouca memória em relação à quantidade de memória disponível nos dispositivos modernos. Por exemplo, 365 chaves de sessão podem ocupar somente cerca de 6 kilobytes de memória. Além do mais, devido a energia de processamento disponível para os dispositivos de computação modernos, o tempo requerido para gerar as chaves de sessão pode ser insignificante. Assim, o cartão 110 pode, em algumas modalidades, gerar um número de chaves de sessão que são esperadas ser usadas no tempo de duração do cartão 110. Em alguns casos, um número de chaves de sessão igual ao número possível total de valores de ATC (por exemplo, 65.536 chaves de sessão) pode ser gerado e armazenado no terminal de usuário 100. As chaves de sessão podem ser armazenadas em uma memória regular do terminal de usuário 100 ou, se estiver disponível, em uma memória segura do terminal de usuário 100. Este número de chaves de sessão pode ocupar cerca de 1 MB de memória no terminal de usuário.
[0071] Em algumas modalidades, nenhuma chave de sessão pode ser armazenada no terminal de usuário, e um usuário pode se conectar a um servidor de provisionamento e adquirir uma chave de sessão como necessário (tanto recebendo a chave mestre temporariamente como tendo o servidor de provisionamento gerado a chave de sessão)l e deletar a chave de sessão imediatamente depois. Notar que isto pode requerer que o usuário esteja online no momento da transação. Es- ta abordagem pode derrotar o ataque de intercepção de mensagem de protocolo também para o método de CK fixo mais antigo que não usa nenhuma chave de sessão.
[0072] O ATC é armazenado em 2 bytes. No entanto, os padrões EMV incluem reiniciar ou "rolar" o ATC após o valor máximo ser alcançado. Neste evento, o suprimento de SKs pode ser reabastecido u-sando um dos métodos acima.
[0073] As novas chaves de sessão podem ser opcionalmente camufladas no modo descrito na Publicação US n- 2011/0060913 referenciada acima (bloco 306). Em particular, as chaves de sessão podem ser camufladas como descrito em mais detalhe abaixo.
[0074] O terminal de usuário então deleta a chave mestre (bloco 308) se ela foi provida ao terminal de usuário.
[0075] Neste ponto, o terminal de usuário armazena (possivelmente em camuflagem) um número de chaves de sessão que podem ser usadas em transações com valores de contador de transação associados.
[0076] Operações para conduzir uma transação são ilustradas nas figuras 2 e 6. Como mostrado ali, quando o usuário deseja conduzir uma transação e introduz o PIN apropriado, o terminal de usuário 100 seleciona uma chave de sessão correta dentre as chaves de sessão pré-armazenadas baseado no valor atual do contador de transação, descamufla a chave de sessão como necessário e usa a chave de sessão para conduzir a transação com um terminal POS 20 (bloco 320).
[0077] Após a transação, o terminal de usuário deleta a chave de sessão (bloco 332) e atualiza o contador de transação (bloco 324). A chave mestre e a chave de sessão usadas podem ser deletadas usando um protocolo que torna a chave de sessão incapaz de ser recuperada a partir do terminal de usuário. Por exemplo, a chave de sessão pode ser apagadas usando técnicas de apagar dados seguras bem conhecidas em que dados pseudo-aleatórios são repetidamente so-brescritos no local de memória físico em que a chave de sessão é armazenada.
[0078] Esta abordagem pode ser altamente resistente à intercepção de protocolo passiva/ ataque com força bruta descrito acima, uma vez que atacante não pode usar PINs experimentais para reproduzir a chave de sessão correspondendo a uma transação anterior. Isto é, devido a chave mestre e a chave de sessão usada terem sido apagadas, elas não estão disponíveis para o atacante usar em uma tentativa de recriar o criptograma e recuperar o PIN. Além do mais, devido as chaves de sessão restantes estarem camufladas, o atacante não pode a-divinhar seguramente as chaves de sessão restantes, mesmo se o a-tacante tiver conhecimento dos dados de transação e do criptograma usados para uma transação anterior.
[0079] Em algumas modalidades, o emissor do cartão pode pré-gerar as chaves de sessão e prover os mesmos ao terminal de usuário. Qualquer número de chaves de sessão pode ser pré-gerado desta forma. Por exemplo, em algumas modalidades um número de tempos de duração de chaves de sessão pode ser pré-gerado. Em outras modalidades, um número de chaves de sessão correspondendo ao número de valores possíveis do contador de transação pode ser pré-gerado. Ainda em outras modalidades, um número limitado de chaves de sessão pode ser pré-gerado, e chaves de sessão adicionais podem ser providos ao terminal de usuário em um tempo de duração tanto provendo as chaves de sessão ao terminal de usuário diretamente ou provendo a chave mestre (ou uma nova chave mestre) ao terminal de usuário e deixando o terminal de usuário gerar mais chaves de sessão a partir da chave mestre.
[0080] As chaves de sessão podem ser derivadas em qualquer tempo antes da transação em que elas são usadas. Isto é, qualquer algoritmo em que o algoritmo de geração de chaves de sessão toma a chave mestre e outros dados de entrada podem ser derivados antes da transação atual contanto que a chave mestre e os outros dados de entrada sejam conhecidos. As chaves de sessão podem, portanto, ser geradas quando o terminal de usuário é provido originalmente. No entanto, qualquer abordagem que não gera todas as chaves de sessão no momento do provisionamento pode envolver manter a chave mestre no servidor de provisionamento, ou prover acesso à mesma.
[0081] A figura 7 é um diagrama de bloco d um terminal de usuário 100 de acordo com algumas modalidades. O terminal de usuário 100 inclui um processador 105, e uma memória 130 e módulo de comunicação 140 acoplados ao processador. A memória 130 armazena o cartão 110 bem como rotinas de processamento que configuram o processador para realizar as operações descritas acima em conexão com as figuras 4 a 6. O módulo de comunicação 140 pode incluir um módulo de comunicação de campo próximo (NFC) 115 que possibilita o terminal de usuário 100 comunicar-se com o terminal POS 20 através do caminho de comunicação sem fio 112 mostrado na figura 2. O módulo de NFC pode incluir um transceptor e software e/ou firmware associado que possibilita o terminal de usuário 100 engatar-se nas comunicações de NFC.
[0082] A figura 8 é um diagrama de bloco de um servidor de provisionamento 400 que pode ser operado, por exemplo, por um emissor do cartão. Algumas operações descritas no presente documento podem ser realizadas pelo servidor de provisionamento 400 quando um cartão é ativado/emitido. Por exemplo, o servidor de provisionamento 400 pode gerar chaves de sessão para ser usadas por um terminal de usuário e transmitir as chaves de sessão ao terminal de usuário. O servidor de provisionamento 400 inclui um processador 412, uma me- mória 414 e um módulo de comunicação 416. O módulo de comunicação 416 pode incluir um transceptor e software/firmware associado que possibilita o servidor de provisionamento 400 a se comunicar com o terminal de usuário 100 através de um link de comunicação 410 que pode incluir, por exemplo, uma rede de comunicação de dados comutados ao pacote, tal como a Internet. A memória 414 pode armazenar rotinas que possibilitam o processador 412 gerar chaves de sessão para o terminal de usuário 100, que podem ser providas ao terminal de usuário 100 através do link de comunicação 410.
[0083] Por exemplo, o servidor de provisionamento pode ser configurado para realizar as operações mostradas na figura 9. Como mostrado ali, quando um cartão 110 é baixado para um terminal de usuário 100 (ver figura 2), ou subsequentemente quando um cartão 110 deve ser atualizado com novas chaves de sessão, o servidor de provisionamento é provido com dados de cartão para o cartão, incluindo uma chave mestre (bloco 452). A chave mestre pode ser uma chave mestre que foi previamente usada para gerar chaves de sessão para o cartão 110, ou pode ser uma nova chave mestre.
[0084] O servidor de provisionamento 400 gera chaves de sessão a partir da chave mestre e de valores possíveis de um contador de transação mantido tanto pelo terminal de usuário 100 como pelo emissor do cartão (bloco 452). O servidor de provisionamento 400 então provê as chaves de sessão geradas ao terminal de usuário 100, por exemplo, através do link de comunicação 410 (bloco 456).
[0085] O servidor de provisionamento 400 pode ser ainda configurado para gerar chaves criptográficas de sessão e transmitir as chaves criptográficas de sessão criptografada adicionais ao terminal de usuário quando o suprimento de chaves criptográficas de sessão no terminal de usuário é reduzido para um nível predeterminado, tal como, por exemplo, para menos do que dez por cento do número original de chaves criptográficas de sessão armazenadas no terminal de usuário.
[0086] A camuflagem das chaves de sessão será agora descrita em mais detalhe. Uma chave de sessão de 16 bytes única é composta internamente de duas chaves DES de 8 bytes. Cada byte de uma chave DES consiste de 7 bits mais ou menos aleatórios, mais um bit de "paridade" que funciona como um tipo de soma de verificação, e é geralmente ignorado. O bit de paridade em cada byte deve ser aleatório, embora a maioria dos algoritmos do tipo CSK não irá fixar os bits de paridade de modo algum, e deixarão os mesmos em um estado pseu-do-aleatório, caso em que nada precisa ser feito. A pode ser criptografada usando um PIN de modo que qualquer decodificação sob qualquer PIN experimental irá produzir uma chave de sessão parecendo válida (isto é, nenhum teste pode provar que a chave de sessão decodificada é inválida). Um modo possível de camuflar a chave de sessão é introduzir o PIN a uma função de geração de máscara e produzir máscara de 16 bytes que é então XOR-ed com chave de sessão.
[0087] A figura 10 ilustra um método 500 para camuflar criptografi-camente uma chave de sessão baseado na figura 2 da Publicação US n- 2011/0060913 referenciada acima. Uma chave de sessão SK de EMV única de 16 bytes é de fato composta de duas chaves DES de 8 bytes. Para camuflar uma chave de sessão é suficiente camuflar cada chave DES e, consequentemente, a seguinte discussão descreve como uma chave DES única pode ser camuflada. No bloco 505, uma chave simétrica é provida para um processo de camuflagem. Nas modalidades ilustradas na figura 10, a chave provida no bloco 505 pode ser de qualquer tipo de chave simétrica, por exemplo, a chave pode ser uma chave Padrão de Criptografia de Dados (DES) que é provida para camuflagem sob um PIN. A chave DES é de 8 bytes de tamanho. Em cada byte, 2 a 8 bits são aleatórios e o primeiro bit é um bit de paridade que é a paridade de 2 a 8 bits. No bloco 510, o bit de paridade em cada byte de chave DES 505 é aleatório, para produzir uma chave modificada no bloco 520. Um PIN é provido no bloco 530, e a chave modificada é criptografa no bloco 540 usando o PIN, para prover uma chave camuflada no bloco 550.
[0088] O método de criptografia usado no bloco 540 pode ser um de vários métodos. A título de exemplo não limitante, três métodos possíveis 540A, 540B, 540C são mostrados na figura 10. O método 540A usa uma Função de Geração de Máscara, tal como MGF1 a partir do padrão PKS #1, para criar uma máscara a partir de PIN 530 e a máscara de XOR (OR exclusivo) com a chave modificada para prover uma chave camuflada no bloco 550. O método 540B criptografa a chave modificada com uma nova chave derivada do PIN para prover uma chave camuflada no bloco 550. Ao usar o método 540B, nenhum preenchimento ou outra informação deve ser armazenada que possa ajudar um intruso a reconhecer uma tentativa de decodificação falhada com um PIN errado, por exemplo, um PIN que não o PIN provido no bloco 530. Embora alguns métodos possíveis sejam descritos no presente documento para criptografar ou ofuscar uma chave modificada para prover uma chave camuflada, é entendido que vários métodos e modalidades alternativos podem ser empregados para criptografar uma chave modificada para prover uma chave camuflada.
[0089] Notar que um atacante usando um ataque com força bruta com todos os PINs possíveis, e com conhecimento total do algoritmo de camuflagem usado no bloco 540, irá produzir sempre uma chave DES validamente camuflada, exceto para os bits de paridade. O atacante não tem nenhum meio de reconhecimento quando o PIN correto foi usado. De acordo com algumas modalidades, a estrutura, se alguma, deve ser removida a partir do dado a ser criptografado/ ofuscado. Isto se aplica aos bits de paridade, no caso de chaves DES, como descrito para a modalidade mostrada na figura 10. No entanto, é en- tendido que uma técnica de camuflagem baseada no método descrito na figura 10, por exemplo, uma combinação de modificar uma chave e criptografar ou ofuscar a chave modificada usando um PIN pode ser usada para qualquer outra chave simétrica padrão, por exemplo, uma chave de Padrão de Criptografia Avançado (AES).
[0090] Como descrito acima, o mecanismo de geração de chave de sessão criptográfica (CSK) de EMV usa uma chave mestre e o Contador de Transação de Aplicativo para gerar uma chave de sessão para uma transação. Alguns algoritmos de geração de chave de sessão também tomam um "Número Imprevisível" (UN) como uma entrada. O UN são vários bytes de dados mais ou menos aleatórios que chegam do terminal do comerciante e devem ser incluídos nos dados de transação usados para o criptograma. Versões de protocolo diferentes usam um UN de tamanho diferente. Além disso, é possível que outros dados, além de, ou em vez do UN possam ser necessários para formar a chave de sessão, mas não conhecidos até o momento da transação.
[0091] Uma vez que UN não é conhecido até o momento da transação, algumas modalidades pré-geram uma chave de sessão para cada UN potencial possível para cada valor possível do contador de transação. O número de transações futuras (valores ATC) suportadas em uma sessão de pré-geração pode ser escolhido apropriadamente baseado nos recursos de computação e/ou armazenamento disponíveis. Por exemplo, para um UN de 2 bytes é possível pré-gerar chaves de sessão para 365 valores ATC em 15 minutos, requerendo 360 MB de armazenamento.
[0092] Como indicado acima, todas as marcas de cartão principais desenvolvem implementações de especificação de EMV. Por exemplo, uma versão MasterCard recente de "PayPass" para pagamentos de NFC móveis usando suas especificações "M/Chip" descreve dois algo- ritmos de geração de SK: um SKD proprietário, e os mecanismos CSK de EMV. O mecanismo de SKD mais antigo toma os MK, ATC e UN como entradas.
[0093] As especificações PayPass também descrevem o mecanismo EMV 2000 para gerar chaves de sessão correspondendo a uma chave mestre financeira diferente (não para gerar criptogramas). Embora a presente discussão tenha focalizado a chave de criptograma, os métodos descritos no presente documento de pré-gerar e camuflar chaves de sessão podem ser aplicáveis neste cenário também.
[0094] Mais geralmente, os sistemas/métodos para pré-gerar e camuflar chaves de sessão podem ser aplicados a muitos sistemas de pagamento com cartão onde os dados do cartão e os algoritmos são armazenados em um dispositivo, e não devem ser considerados limitados aos exemplos específicos descritos no presente documento.
[0095] Como será apreciado por um perito na técnica, os aspectos da presente divulgação podem ser ilustrados e descritos no presente documento em qualquer um de um número de classes patenteáveis ou contexto incluindo qualquer processo novo e útil, máquina, fabricação, ou composição de matéria, ou qualquer melhora nova e útil dos mesmos. Consequentemente, os aspectos da presente divulgação podem ser implementados totalmente em hardware, totalmente em software (incluindo firmware, software residente, microcódigo, etc.) ou combinando implementação de software e hardware que pode ser tudo geralmente referido no presente documento como um "circuito", "módulo", "componente" ou "sistema". Além disso, os aspectos da presente divulgação podem tomar a forma de um produto de programa de computador incorporado em um ou mais meios legíveis por computador tendo código de programa legível por computador incorporado nos mesmos.
[0096] Qualquer combinação de um ou mais meios legíveis por computador pode ser utilizada. Os meios legíveis por computador podem ser um meio de sinal legível por computador ou um meio de armazenamento legível por computador. Um meio de armazenamento legível por computador pode ser, por exemplo, mas não limitado a sistema, aparelho ou dispositivo eletrônico, magnético, ótico, eletromagnético ou semicondutor, ou qualquer combinação apropriada dos acima. Exemplos mais específicos (uma lista não exaustiva) do meio de armazenamento legível por computador podem incluir o seguinte: um disquete de computador portátil, um disco rígido, uma memória de a-cesso aleatório (RAM), uma memória somente de leitura (ROM), uma memória somente de leitura programável que pode ser apagada (E-PROM ou memória Flash), uma fibra ótica apropriada com um repetidor de armazenamento temporário, uma memória somente de leitura de disco compacto portátil (CD-ROM), um dispositivo de armazenamento ótico, um dispositivo de armazenamento magnético, ou qualquer combinação apropriada do acima. No contexto deste documento, um meio de armazenamento legível por computador que pode conter, ou armazenar um programa para uso por ou em conexão com um sistema, aparelho ou dispositivo de execução de instruções.
[0097] Um meio de sinal legível por computador pode incluir um sinal de dados propagado com código de programa legível por computador incorporado no mesmo, por exemplo, na banda base ou como parte de uma onda de transporte. Tal sinal propagado pode tomar qualquer uma de uma variedade de formas, incluindo, mas não limitadas a eletromagnética, ótica ou qualquer combinação apropriada das mesmas. Um meio de sinal legível por computador pode ser qualquer meio legível por computador que não seja um meio de armazenamento legível por computador e que possa comunicar, propagar ou transportar um programa para uso por ou em conexão com um sistema, aparelho ou dispositivo de execução de instruções. O código de pro- grama incorporado em um meio de sinal legível por computador pode ser transmitido usando qualquer meio apropriado, incluindo, mas não limitado sem fio, com fio, cabo de fibra ótica, RF, etc., ou qualquer combinação apropriada do acima.
[0098] O código de programa de computador para transportar as operações para os aspectos da presente divulgação pode ser escrito em qualquer combinação de uma ou mais linguagens de programação, incluindo uma linguagem de programação orientada por objeto tal como JavaScript, Scala, Smalltalk, Eiffel, JADE, Emerald, C++, C#, VB, NET, Python ou semelhante, linguagens de programação de procedimento convencionais, tais como a linguagem de programação "C", Visual Basic, Fortran 2003, Perl, COBOL, 2002, PHP, ABAP, linguagens de programação dinâmicas tais como Python, Ruby e Groovy, ou outras linguagens de programação. O código de programa pode executar totalmente no computador do usuário, parcialmente no computador do usuário, como um pacote de software autônomo, parcialmente no computador do usuário e parcialmente em um computador remoto ou totalmente no computador remoto ou servidor. No último cenário, o computador remoto pode ser conectado ao computador do usuário a-través de qualquer tipo de rede, incluindo uma rede de área local (LAN) ou uma rede de área de longa distância (WAN), ou a conexão pode ser feita a um computador externo (por exemplo, através da Internet usando um Provedor de Serviço de Internet) ou em um ambiente de computação de nuvem ou ofertado como um serviço tal como um Software como um Serviço (SaaS).
[0099] Os aspectos da presente divulgação são descritos no presente documento com referência às ilustrações de fluxogramas e/ou diagramas de bloco de métodos, aparelhos (sistemas) e produtos de programa de computador de acordo com as modalidades da divulgação. Será entendido que cada bloco das ilustrações de fluxogramas e/ou diagramas de blocos, e combinações de blocos nas ilustrações de fluxogramas e/ou diagramas de bloco, podem ser implementados pelas instruções de programa de computador. Estas instruções de programa de computador podem ser providas a um processador de um computador para fim geral, computador para fim especial, ou outro aparelho de processamento de dados programáveis para produzir uma máquina, de modo que as instruções que executam através do processador do computador ou outro aparelho de execução de instruções programável, criam um mecanismo para implementar as fun-ções/ações especificadas no fluxograma e/ou em bloco ou blocos de diagramas de bloco.
[00100] Estas instruções de programa de computador também podem ser armazenadas em um meio de armazenamento legível por computador que quando executado pode direcionar um computador, outro aparelho de processamento de dados programável ou outros dispositivos para funcionar em um modo particular, de modo que as instruções quando armazenadas no meio de armazenamento legível por computador produzem um artigo de fabricação incluindo instruções que quando executadas fazem com que um computador implemente a função/ação especificado no fluxograma e/ou bloco ou blocos de diagramas de bloco. As instruções de programa de computador também podem ser carregadas em um computador, em outro aparelho de execução de instruções programável, ou em outros dispositivos para fazer com que uma série de etapas operacionais seja realizada no computador, outros aparelhos programáveis ou outros dispositivos para produzir um processo implementado por computador de modo que as instruções que executam no computador ou em outro aparelho programável proporcionam processos para implementar as funções/ações especificados no fluxograma e/ou bloco ou blocos de diagramas de bloco.
[00101] O fluxograma e os diagramas de bloco nas figuras ilustram a arquitetura, funcionalidade e operação de implementações de sistemas, métodos e produtos de programa de computador possíveis de acordo com vários aspectos da presente divulgação. A este respeito, cada bloco no fluxograma ou diagramas de bloco representam um módulo, segmento, ou porção de código, que compreende uma ou mais instruções executáveis para implementar a(s) função(ões) lógi-ca(s) especificada(s). Também deve ser notado que, em algumas implementações alternativas, as funções indicadas no bloco podem ocorrer fora da ordem indicada nas figuras. Por exemplo, dois blocos mostrados em sucessão podem, de fato, ser executados substancialmente concomitantemente, ou os blocos podem às vezes ser executados na ordem inversa, dependendo da funcionalidade envolvida. Também será notado que cada bloco dos diagramas de bloco e/ou ilustração de fluxograma, e combinações de blocos nos diagramas de bloco e/ou i-lustração de fluxograma, pode ser implementado por sistemas baseados em hardware para fim especial que realizam as funções ou ações especificadas, ou combinações de hardware para fim especial e instruções de computador.
[00102] A terminologia usada no presente documento é para o fim de descrever aspectos particulares somente e não se destinam a ser limitante da divulgação. Como usado no presente documento, as formas no singular "uma", "um" e "o" destinam-se a incluir as formas no plural também, a menos que o contexto indique claramente ao contrário. Será ainda entendido que os termos "compreende", "compreendendo", "inclui" e/ou "incluindo", quando usados no presente documento, especificam a presença de aspectos, números inteiros, etapas, o-perações, elementos e/ou componentes determinados, mas não excluem a presença ou adição de um ou mais outros aspectos, números inteiros, etapas, operações, elementos, componentes, e/ou grupos dos mesmos.
[00103] As estruturas, materiais, ações e equivalentes correspondentes de qualquer meio ou etapa mais elementos de função nas reivindicações abaixo são destinadas a incluir qualquer estrutura, material ou ação descrito para realizar a função em combinação com outros elementos reivindicados como especificamente reivindicado. A descrição da presente divulgação foi apresentada para fins de ilustração e descrição, mas não pretende ser exaustiva ou limitada à divulgação na forma divulgada. Muitas modificações e variações serão evidentes aos peritos na técnica sem sair do escopo e espírito da divulgação. Os aspectos da divulgação no presente documento foram escolhidos e descritos a fim de explicar melhor os princípios da divulgação e a aplicação prática, e para capacitar outros peritos na técnica a entender a divulgação com várias modificações como são apropriadas para o uso particular contemplado.
REIVINDICAÇÕES
Claims (23)
1. Método de assegurar uma transação entre um terminal de usuário e um terminal de transação caracterizado pelo fato de compreender: gerar uma pluralidade de chaves criptográficas de sessão a partir de uma chave criptográfica mestre e uma respectiva pluralidade de valores possíveis de um contador de transação; criptografar a pluralidade se chaves criptográficas de sessão para prover uma pluralidade de chaves criptográficas de sessão criptografada; armazenar a pluralidade de chaves criptográficas de sessão criptografada e uma da respectiva pluralidade de valores do contador de transação no terminal de usuário; gerar um criptograma baseado em uma primeira da pluralidade de chaves criptográficas de sessão criptografada e dados de transação para a transação; transmitir o criptograma ao terminal de transação; atualizar o contador de transação; e deletar uma primeira da pluralidade de chaves criptográficas de sessão criptografada a partir do terminal de usuário após gerar o criptograma.
2. Método, de acordo com a reivindicação 1, caracterizado pelo fato de que criptografar a pluralidade de chaves criptográficas de sessão compreende criptografar com um número de identificação pessoal.
3. Método, de acordo com a reivindicação 2, caracterizado pelo fato de que criptografar a pluralidade de chaves criptográficas de sessão compreende camuflar a pluralidade de chaves criptográficas de sessão.
4. Método, de acordo com a reivindicação 3, caracterizado pelo fato de que camuflar a pluralidade de chaves criptográficas de sessão compreende criptografar a pluralidade de chaves criptográficas de sessão de tal modo que decodificar qualquer uma da pluralidade de chaves criptográficas de sessão com um número de identificação pessoal incorreto produz uma chave criptográfica de sessão válida.
5. Método, de acordo com a reivindicação 4, caracterizado pelo fato de compreender ainda prover a chave criptográfica mestre no terminal de usuário, e deletar a chave criptográfica mestre a partir do terminal de usuário após gerar a pluralidade de chaves criptográficas de sessão, em que após a deleção da chave criptográfica mestre a partir do terminal de usuário, não há nenhum dado restante no terminal de usuário que possa ser usado seguramente para decodificar as chaves criptográficas de sessão restantes usando os dados de transação e o criptograma.
6. Método, de acordo com a reivindicação 1, caracterizado pelo fato de compreender ainda prover a chave criptográfica mestre no terminal de usuário, e deletar a chave criptográfica mestre a partir do terminal de usuário após gerar a pluralidade de chaves criptográficas de sessão.
7. Método, de acordo com a reivindicação 1, caracterizado pelo fato de transmitir o criptograma compreende transmitir o criptograma ao terminal de transação usando um link de comunicação de campo próximo, um link de comunicação Bluetooth, um link de comunicação Wi-Fi, ou outro link de comunicação sem fio.
8. Método, de acordo com a reivindicação 1, caracterizado pelo fato de que o número de chaves criptográficas de sessão geradas compreende um número de valores possíveis do contador de transação.
9. Método, de acordo com a reivindicação 1, caracterizado pelo fato de que o número de chaves criptográficas de sessão gera- das compreende menos do que um número de valores possíveis do contador de transação.
10. Método, de acordo com a reivindicação 1, caracterizado pelo fato de que a chave criptográfica mestre compreende uma pluralidade de chaves criptográficas.
11. Método, de acordo com a reivindicação 1, caracterizado pelo fato de que gerar o criptograma compreende aplicar uma função de hash aos dados de transação e a uma primeira das chaves criptográficas de sessão criptografada.
12. Método, de acordo com a reivindicação 1, caracterizado pelo fato de que atualizar o contador de transação compreende incrementar o contador de transação.
13. Terminal de usuário, caracterizado pelo fato de compreender: um processador; uma memória acoplada ao processador; e um módulo de comunicação acoplado ao processador; em que o processador é configurado para gerar uma pluralidade de chaves criptográficas de sessão a partir de uma chave criptográfica mestre e uma respectiva pluralidade de valores possíveis de um contador de transação, para codificar a pluralidade de chaves criptográficas de sessão para prover uma pluralidade de chaves criptográficas de sessão criptografada, para armazenar uma pluralidade de chaves criptográficas de sessão criptografada, para trocar os dados de transação referentes a uma transação proposta com um terminal de transação, para gerar um criptograma baseado em uma primeira pluralidade de chaves criptográficas de sessão criptografada e nos dados de transação, para transmitir o criptograma ao terminal de transação usando o módulo de comunicação, para atualizar o contador de transação, e para deletar a uma primeira da pluralidade de chaves cripto- gráficas de sessão criptografada a partir do terminal de usuário.
14. Terminal de usuário, de acordo com a reivindicação 13, caracterizado pelo fato de codificar as chaves criptográficas de sessão compreende codificar a pluralidade de chaves criptográficas de sessão com um número de identificação pessoal.
15. Terminal de usuário, de acordo com a reivindicação 14, caracterizado pelo fato de que o processador é configurado para camuflar a pluralidade de chaves criptográficas de sessão de tal modo que a decodificação de qualquer uma das chaves criptográficas de sessão criptografada com um número de identificação pessoal incorreto produz uma chave criptográfica de sessão válida.
16. Terminal de usuário, de acordo com a reivindicação 13, caracterizado em que o número de chaves criptográficas de sessão geradas compreende um número de valores possíveis do contador de transação.
17. Servidor de provisionamento, caracterizado pelo fato de compreender: um processador; uma memória acoplada ao processador; e um módulo de comunicação acoplado ao processador; em que o processador é configurado para gerar uma pluralidade de chaves criptográficas de sessão a partir de uma chave criptográfica mestre e uma respectiva pluralidade de valores possíveis de um contador de transação, e para transmitir a pluralidade de chaves criptográficas de sessão e o contador de transação a um terminal de usuário para uso na segurança de uma transação financeira.
18. Servidor de provisionamento, de acordo com a reivindicação 17, caracterizado pelo fato de que o número de chaves criptográficas de sessão geradas compreende um número de valores possíveis do contador de transação.
19. Servidor de provisionamento, de acordo com a reivindicação 17, caracterizado pelo fato de que as chaves criptográficas de sessão compreendem primeiras chaves criptográficas de sessão, em que o número das primeiras chaves criptográficas de sessão compreende menos do que um número de valores possíveis do contador de transação, e em que o processador é configurado para gerar chaves criptográficas de sessão adicionais e transmitir as chaves criptográficas de sessão adicionais ao terminal de usuário quando o suprimento das primeiras chaves criptográficas de sessão é reduzido para um nível predeterminado.
20. Produto de programa de computador para assegurar uma transação entre um terminal de usuário e um terminal de transação, caracterizado pelo fato de compreender: um meio de armazenamento legível por computador tendo código de programa legível por computador incorporado no meio, o código de programa legível por computador compreendendo: código de programa legível por computador para gerar uma pluralidade de chaves criptográficas de sessão a partir de uma chave criptográfica mestre e uma respectiva pluralidade de valores possíveis de um contador de transação; código de programa legível por computador para armazenar as chaves criptográficas de sessão e uma da pluralidade de contadores de transação no terminal de usuário; código de programa legível por computador para gerar um criptograma baseado em uma primeira da pluralidade de chaves criptográficas de secção e dados de transação para a transação; código de programa legível por computador para transmitir o criptograma ao terminal de transação; código de programa legível por computador para atualizar o contador de transação; e código de programa legível por computador para deletar a uma primeira da pluralidade de chaves criptográficas de sessão a partir do terminal de usuário após gerar o criptograma.
21. Método, caracterizado pelo fato de compreender: gerar uma pluralidade de itens secretos correspondendo a uma respectiva pluralidade de valores possíveis de um índice; armazenar a pluralidade de itens secretos e uma primeira da pluralidade de valores possíveis do índice em um primeiro terminal; gerar uma mensagem correspondendo a uma primeira da pluralidade de valores possíveis do índice usando um primeiro dos i-tens secretos; transmitir a mensagem ao segundo terminal; atualizar o índice; e deletar a uma primeira da pluralidade de itens secretos a partir do primeiro terminal após gerar a mensagem.
22. Método, de acordo com a reivindicação 21, caracterizado pelo fato de que a pluralidade de itens secretos compreende senhas de uso.
23. Método, de acordo com a reivindicação 21, caracterizado pelo fato de que o índice compreende um índice de transação, e em que a mensagem compreende um resumo de transação para uma transação entre o primeiro terminal e o segundo terminal.
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US13/938,987 US10460314B2 (en) | 2013-07-10 | 2013-07-10 | Pre-generation of session keys for electronic transactions and devices that pre-generate session keys for electronic transactions |
Publications (1)
Publication Number | Publication Date |
---|---|
BR102014017104A2 true BR102014017104A2 (pt) | 2015-10-06 |
Family
ID=51178731
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
BR102014017104A BR102014017104A2 (pt) | 2013-07-10 | 2014-07-10 | pré-geração de chaves de sessão para transações eletrônicas e dispositivos que pré-geram chaves de sessão para transações eletrônicas |
Country Status (4)
Country | Link |
---|---|
US (1) | US10460314B2 (pt) |
EP (1) | EP2852121A3 (pt) |
CN (1) | CN104283687A (pt) |
BR (1) | BR102014017104A2 (pt) |
Families Citing this family (54)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8868463B2 (en) * | 2007-06-08 | 2014-10-21 | At&T Intellectual Property I, L.P. | System and method of managing digital rights |
US9022286B2 (en) | 2013-03-15 | 2015-05-05 | Virtual Electric, Inc. | Multi-functional credit card type portable electronic device |
US10460314B2 (en) * | 2013-07-10 | 2019-10-29 | Ca, Inc. | Pre-generation of session keys for electronic transactions and devices that pre-generate session keys for electronic transactions |
US9276910B2 (en) * | 2013-11-19 | 2016-03-01 | Wayne Fueling Systems Llc | Systems and methods for convenient and secure mobile transactions |
US20150142670A1 (en) * | 2013-11-20 | 2015-05-21 | Sue Zloth | Systems and methods for software based encryption |
RU2661910C1 (ru) * | 2013-12-02 | 2018-07-23 | Мастеркард Интернэшнл Инкорпорейтед | Способ и система для защищенной передачи сообщений сервиса удаленных уведомлений в мобильные устройства без защищенных элементов |
GB2522445A (en) * | 2014-01-24 | 2015-07-29 | Raymond Breen | Secure mobile wireless communications platform |
CA2884611C (en) * | 2014-03-12 | 2024-04-16 | Scott Lawson Hambleton | System and method for authorizing a debit transaction without user authentication |
GB201408539D0 (en) * | 2014-05-14 | 2014-06-25 | Mastercard International Inc | Improvements in mobile payment systems |
US20150356694A1 (en) * | 2014-06-10 | 2015-12-10 | Israel L'Heureux | Customer facing display with customer interaction for order specification |
US20160065374A1 (en) * | 2014-09-02 | 2016-03-03 | Apple Inc. | Method of using one device to unlock another device |
US11399019B2 (en) | 2014-10-24 | 2022-07-26 | Netflix, Inc. | Failure recovery mechanism to re-establish secured communications |
US11533297B2 (en) * | 2014-10-24 | 2022-12-20 | Netflix, Inc. | Secure communication channel with token renewal mechanism |
KR101544722B1 (ko) * | 2014-11-13 | 2015-08-18 | 주식회사 엘지씨엔에스 | 부인 방지 방법, 이를 위한 결제 관리 서버 및 사용자 단말기 |
US9674165B2 (en) * | 2015-05-28 | 2017-06-06 | Nxp B.V. | Efficient key derivation with forward secrecy |
US10009324B2 (en) * | 2015-06-29 | 2018-06-26 | American Express Travel Related Services Company, Inc. | Host card emulation systems and methods |
US20170032370A1 (en) * | 2015-07-27 | 2017-02-02 | Mastercard International Incorporated | Electronic payment transactions using machine readable code without requiring online connection |
TWI536197B (zh) * | 2015-08-28 | 2016-06-01 | 匿名性身分識別方法與系統 | |
US9613306B2 (en) * | 2015-08-31 | 2017-04-04 | American Express Travel Related Services Company, Inc. | Magnetic card swipe emulation systems and methods |
US20170068955A1 (en) * | 2015-09-04 | 2017-03-09 | Ca, Inc. | Verification and provisioning of mobile payment applications |
US10218698B2 (en) * | 2015-10-29 | 2019-02-26 | Verizon Patent And Licensing Inc. | Using a mobile device number (MDN) service in multifactor authentication |
DE102015015502A1 (de) * | 2015-11-30 | 2017-06-01 | Giesecke & Devrient Gmbh | Verfahren und Vorrichtung für die sichere Speicherung elektronischer Identifikationsdokumente auf einem mobilen Endgerät |
EP3185159A1 (en) * | 2015-12-24 | 2017-06-28 | Gemalto Sa | Method and system for enhancing the security of a transaction |
CN108604280B (zh) * | 2016-03-30 | 2021-05-04 | 华为技术有限公司 | 交易方法、交易信息处理方法、交易终端及服务器 |
CN114862385A (zh) * | 2016-04-29 | 2022-08-05 | 华为技术有限公司 | 基于近场通信nfc的交易方法和设备 |
US10764059B2 (en) * | 2016-05-31 | 2020-09-01 | Intel Corporation | Communications security systems and methods |
CN106357663A (zh) * | 2016-09-30 | 2017-01-25 | 中国银联股份有限公司 | 用于hce模式的数据加密方法 |
WO2018136494A1 (en) * | 2017-01-17 | 2018-07-26 | Visa International Service Association | Binding cryptogram with protocol characteristics |
US10754970B2 (en) * | 2017-01-27 | 2020-08-25 | International Business Machines Corporation | Data masking |
EP3364363A1 (en) * | 2017-02-21 | 2018-08-22 | Mastercard International Incorporated | Transaction cryptogram |
US10438198B1 (en) * | 2017-05-19 | 2019-10-08 | Wells Fargo Bank, N.A. | Derived unique token per transaction |
US10547443B2 (en) | 2017-05-24 | 2020-01-28 | Red Hat, Inc. | Session key exchange as a service |
US20190012662A1 (en) * | 2017-07-07 | 2019-01-10 | Symbiont.Io, Inc. | Systems, methods, and devices for reducing and/or eliminating data leakage in electronic ledger technologies for trustless order matching |
GB2565053A (en) * | 2017-07-28 | 2019-02-06 | Streeva Ltd | Key generation in secure electronic payment systems |
WO2019028493A1 (en) * | 2017-08-08 | 2019-02-14 | Token One Pty Ltd | METHOD, SYSTEM AND COMPUTER-READABLE MEDIUM FOR USER AUTHENTICATION |
US10956905B2 (en) * | 2017-10-05 | 2021-03-23 | The Toronto-Dominion Bank | System and method of session key generation and exchange |
US10320843B1 (en) | 2017-12-08 | 2019-06-11 | Symbiont.Io, Inc. | Methods, systems, and devices for encrypted electronic storage and confidential network transfer of private data through a trustless distributed ledger technology system |
US10476847B1 (en) | 2017-12-08 | 2019-11-12 | Symbiont.Io, Inc. | Systems, methods, and devices for implementing a smart contract on a distributed ledger technology platform |
US10581611B1 (en) * | 2018-10-02 | 2020-03-03 | Capital One Services, Llc | Systems and methods for cryptographic authentication of contactless cards |
SG11202102543WA (en) | 2018-10-02 | 2021-04-29 | Capital One Services Llc | Systems and methods for cryptographic authentication of contactless cards |
US10505738B1 (en) * | 2018-10-02 | 2019-12-10 | Capital One Services, Llc | Systems and methods for cryptographic authentication of contactless cards |
US11082229B2 (en) * | 2019-03-18 | 2021-08-03 | Capital One Services, Llc | System and method for pre-authentication of customer support calls |
US10523708B1 (en) | 2019-03-18 | 2019-12-31 | Capital One Services, Llc | System and method for second factor authentication of customer support calls |
US10438437B1 (en) * | 2019-03-20 | 2019-10-08 | Capital One Services, Llc | Tap to copy data to clipboard via NFC |
US10984416B2 (en) * | 2019-03-20 | 2021-04-20 | Capital One Services, Llc | NFC mobile currency transfer |
WO2020210721A1 (en) | 2019-04-12 | 2020-10-15 | Symbiont.Io, Inc. | Systems, devices, and methods for dlt-based data management platforms and data products |
CN110930156B (zh) * | 2019-11-06 | 2023-08-08 | 山东易通发展集团有限公司 | 一种基于m1介质的安全提升方法,系统以及射频ic卡 |
WO2021070177A2 (en) * | 2019-10-10 | 2021-04-15 | Cardlatch Ltd. | System and method for authenticating devices |
CN111212044B (zh) * | 2019-12-24 | 2022-11-01 | 视联动力信息技术股份有限公司 | 一种数据的传输方法、装置和存储介质 |
US11823175B2 (en) * | 2020-04-30 | 2023-11-21 | Capital One Services, Llc | Intelligent card unlock |
US11522686B2 (en) * | 2020-07-16 | 2022-12-06 | Salesforce, Inc. | Securing data using key agreement |
US11682008B2 (en) * | 2020-09-28 | 2023-06-20 | Vadim Nikolaevich ALEKSANDROV | Method of authenticating a customer, method of carrying out a payment transaction and payment system implementing the specified methods |
US11165586B1 (en) * | 2020-10-30 | 2021-11-02 | Capital One Services, Llc | Call center web-based authentication using a contactless card |
US11687930B2 (en) * | 2021-01-28 | 2023-06-27 | Capital One Services, Llc | Systems and methods for authentication of access tokens |
Family Cites Families (81)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5319710A (en) * | 1986-08-22 | 1994-06-07 | Tandem Computers Incorporated | Method and means for combining and managing personal verification and message authentication encrytions for network transmission |
US5200999A (en) * | 1991-09-27 | 1993-04-06 | International Business Machines Corporation | Public key cryptosystem key management based on control vectors |
US5164988A (en) * | 1991-10-31 | 1992-11-17 | International Business Machines Corporation | Method to establish and enforce a network cryptographic security policy in a public key cryptosystem |
US5825880A (en) * | 1994-01-13 | 1998-10-20 | Sudia; Frank W. | Multi-step digital signature method and system |
US5613012A (en) * | 1994-11-28 | 1997-03-18 | Smarttouch, Llc. | Tokenless identification system for authorization of electronic transactions and electronic transmissions |
US5682428A (en) * | 1995-02-13 | 1997-10-28 | Eta Technologies Corporation | Personal access management system |
US5892900A (en) * | 1996-08-30 | 1999-04-06 | Intertrust Technologies Corp. | Systems and methods for secure transaction management and electronic rights protection |
US5901285A (en) * | 1996-12-18 | 1999-05-04 | Intel Corporation | Hierarchical erasure key protection for computer system data |
US6134660A (en) * | 1997-06-30 | 2000-10-17 | Telcordia Technologies, Inc. | Method for revoking computer backup files using cryptographic techniques |
US7328350B2 (en) * | 2001-03-29 | 2008-02-05 | Arcot Systems, Inc. | Method and apparatus for secure cryptographic key generation, certification and use |
US7454782B2 (en) * | 1997-12-23 | 2008-11-18 | Arcot Systems, Inc. | Method and system for camouflaging access-controlled data |
US6263447B1 (en) * | 1998-05-21 | 2001-07-17 | Equifax Inc. | System and method for authentication of network users |
US6484182B1 (en) * | 1998-06-12 | 2002-11-19 | International Business Machines Corporation | Method and apparatus for publishing part datasheets |
US6292899B1 (en) * | 1998-09-23 | 2001-09-18 | Mcbride Randall C. | Volatile key apparatus for safeguarding confidential data stored in a computer system memory |
US7162642B2 (en) * | 1999-01-06 | 2007-01-09 | Digital Video Express, L.P. | Digital content distribution system and method |
US7107462B2 (en) * | 2000-06-16 | 2006-09-12 | Irdeto Access B.V. | Method and system to store and distribute encryption keys |
US6961858B2 (en) * | 2000-06-16 | 2005-11-01 | Entriq, Inc. | Method and system to secure content for distribution via a network |
US7150045B2 (en) * | 2000-12-14 | 2006-12-12 | Widevine Technologies, Inc. | Method and apparatus for protection of electronic media |
DE10108487A1 (de) * | 2001-02-22 | 2002-09-12 | Giesecke & Devrient Gmbh | Verfahren und System zur verteilten Erstellung eines Programms für einen programmierbaren, tragbaren Datenträger |
US7080049B2 (en) * | 2001-09-21 | 2006-07-18 | Paymentone Corporation | Method and system for processing a transaction |
US7020635B2 (en) * | 2001-11-21 | 2006-03-28 | Line 6, Inc | System and method of secure electronic commerce transactions including tracking and recording the distribution and usage of assets |
WO2004102879A1 (en) * | 2003-05-09 | 2004-11-25 | Arcot Systems, Inc. | Method and apparatus for securing pass codes during transmission from capture to delivery |
US7761374B2 (en) * | 2003-08-18 | 2010-07-20 | Visa International Service Association | Method and system for generating a dynamic verification value |
US7090128B2 (en) * | 2003-09-08 | 2006-08-15 | Systems And Software Enterprises, Inc. | Mobile electronic newsstand |
US8713626B2 (en) * | 2003-10-16 | 2014-04-29 | Cisco Technology, Inc. | Network client validation of network management frames |
US7380039B2 (en) * | 2003-12-30 | 2008-05-27 | 3Tera, Inc. | Apparatus, method and system for aggregrating computing resources |
US7584153B2 (en) * | 2004-03-15 | 2009-09-01 | Qsecure, Inc. | Financial transactions with dynamic card verification values |
JP4938673B2 (ja) * | 2004-10-15 | 2012-05-23 | ベリサイン・インコーポレイテッド | ワンタイムパスワード |
US7489781B2 (en) * | 2004-10-29 | 2009-02-10 | Research In Motion Limited | Secure peer-to-peer messaging invitation architecture |
US7711586B2 (en) * | 2005-02-24 | 2010-05-04 | Rearden Corporation | Method and system for unused ticket management |
US7587502B2 (en) * | 2005-05-13 | 2009-09-08 | Yahoo! Inc. | Enabling rent/buy redirection in invitation to an online service |
US7747021B2 (en) * | 2005-05-18 | 2010-06-29 | General Dynamics C4 Systems, Inc. | Method and apparatus for fast secure session establishment on half-duplex point-to-point voice cellular network channels |
JP4595691B2 (ja) * | 2005-06-14 | 2010-12-08 | トヨタ自動車株式会社 | 電子キーシステム |
US7596225B2 (en) * | 2005-06-30 | 2009-09-29 | Alcatl-Lucent Usa Inc. | Method for refreshing a pairwise master key |
US8874477B2 (en) * | 2005-10-04 | 2014-10-28 | Steven Mark Hoffberg | Multifactorial optimization system and method |
FI20051022A (fi) * | 2005-10-11 | 2007-04-12 | Meridea Financial Software Oy | Menetelmä, laite, palvelinjärjestely, järjestelmä ja tietokoneohjelmatuotteet datan tallentamiseksi turvallisesti kannettavassa laitteessa |
US7699233B2 (en) * | 2005-11-02 | 2010-04-20 | Nokia Corporation | Method for issuer and chip specific diversification |
US8769275B2 (en) * | 2006-10-17 | 2014-07-01 | Verifone, Inc. | Batch settlement transactions system and method |
US9846866B2 (en) * | 2007-02-22 | 2017-12-19 | First Data Corporation | Processing of financial transactions using debit networks |
US20080267411A1 (en) * | 2007-04-27 | 2008-10-30 | General Instrument Corporation | Method and Apparatus for Enhancing Security of a Device |
US8667285B2 (en) * | 2007-05-31 | 2014-03-04 | Vasco Data Security, Inc. | Remote authentication and transaction signatures |
KR101445188B1 (ko) * | 2007-11-21 | 2014-10-01 | 삼성전자주식회사 | 무선 센서 네트워크에서 비정상적인 프레임 탐지 방법 및이를 위한 시스템 |
US8265270B2 (en) | 2007-12-05 | 2012-09-11 | Microsoft Corporation | Utilizing cryptographic keys and online services to secure devices |
US20090177892A1 (en) * | 2008-01-09 | 2009-07-09 | Microsoft Corporation | Proximity authentication |
US8225106B2 (en) * | 2008-04-02 | 2012-07-17 | Protegrity Corporation | Differential encryption utilizing trust modes |
US8627483B2 (en) * | 2008-12-18 | 2014-01-07 | Accenture Global Services Limited | Data anonymization based on guessing anonymity |
US8768854B2 (en) | 2009-01-13 | 2014-07-01 | Stephen W. NEVILLE | Secure protocol for transactions |
US8973111B2 (en) * | 2009-02-03 | 2015-03-03 | Inbay Technologies Inc. | Method and system for securing electronic transactions |
US8284945B2 (en) * | 2009-06-02 | 2012-10-09 | Hewlett-Packard Development Company, L.P. | Automatic change of symmetrical encryption key |
US8572394B2 (en) * | 2009-09-04 | 2013-10-29 | Computer Associates Think, Inc. | OTP generation using a camouflaged key |
US9633351B2 (en) * | 2009-11-05 | 2017-04-25 | Visa International Service Association | Encryption switch processing |
US9225526B2 (en) * | 2009-11-30 | 2015-12-29 | Red Hat, Inc. | Multifactor username based authentication |
US9525999B2 (en) * | 2009-12-21 | 2016-12-20 | Blackberry Limited | Method of securely transferring services between mobile devices |
US8613065B2 (en) * | 2010-02-15 | 2013-12-17 | Ca, Inc. | Method and system for multiple passcode generation |
US20110261961A1 (en) * | 2010-04-22 | 2011-10-27 | Qualcomm Incorporated | Reduction in bearer setup time |
US8949616B2 (en) * | 2010-09-13 | 2015-02-03 | Ca, Inc. | Methods, apparatus and systems for securing user-associated passwords used for identity authentication |
US8948382B2 (en) * | 2010-12-16 | 2015-02-03 | Microsoft Corporation | Secure protocol for peer-to-peer network |
US8931069B2 (en) * | 2011-03-09 | 2015-01-06 | Ca, Inc. | Authentication with massively pre-generated one-time passwords |
DE102011051498A1 (de) * | 2011-06-06 | 2012-12-06 | Kobil Systems Gmbh | Gesicherter Zugriff auf Daten in einem Gerät |
US9197293B2 (en) * | 2011-11-02 | 2015-11-24 | Blackberry Limited | Mobile communications device providing secure element data management features and related methods |
KR101931601B1 (ko) * | 2011-11-17 | 2019-03-13 | 삼성전자주식회사 | 무선 통신 시스템에서 단말과의 통신 인증을 위한 보안키 관리하는 방법 및 장치 |
JP6093503B2 (ja) * | 2012-01-31 | 2017-03-08 | 株式会社東海理化電機製作所 | 電子キー登録方法 |
CN102611943A (zh) * | 2012-02-24 | 2012-07-25 | 福建鑫诺通讯技术有限公司 | 在机顶盒上使用附加sim卡实现用户支付的方法 |
US8429409B1 (en) * | 2012-04-06 | 2013-04-23 | Google Inc. | Secure reset of personal and service provider information on mobile devices |
JP5990406B2 (ja) * | 2012-06-06 | 2016-09-14 | 株式会社東海理化電機製作所 | 電子キー登録方法 |
EP2775421B1 (en) * | 2013-03-05 | 2019-07-03 | Wincor Nixdorf International GmbH | Trusted terminal platform |
US10460314B2 (en) * | 2013-07-10 | 2019-10-29 | Ca, Inc. | Pre-generation of session keys for electronic transactions and devices that pre-generate session keys for electronic transactions |
CN113011896B (zh) * | 2013-08-15 | 2024-04-09 | 维萨国际服务协会 | 使用安全元件的安全远程支付交易处理 |
EP2854332A1 (en) * | 2013-09-27 | 2015-04-01 | Gemalto SA | Method for securing over-the-air communication between a mobile application and a gateway |
US9703981B1 (en) * | 2013-11-04 | 2017-07-11 | Mobile Iron, Inc. | Mobile device data encryption |
US10223690B2 (en) * | 2013-11-27 | 2019-03-05 | Ca, Inc. | Alternative account identifier |
US10121147B2 (en) * | 2014-06-20 | 2018-11-06 | Ca, Inc. | Methods of processing transactions and related systems and computer program products |
US9373113B2 (en) * | 2014-09-12 | 2016-06-21 | Amadeus S.A.S. | Payment terminal sharing |
US11399019B2 (en) * | 2014-10-24 | 2022-07-26 | Netflix, Inc. | Failure recovery mechanism to re-establish secured communications |
US11620654B2 (en) * | 2014-12-04 | 2023-04-04 | Mastercard International Incorporated | Methods and apparatus for conducting secure magnetic stripe card transactions with a proximity payment device |
WO2016130759A1 (en) * | 2015-02-13 | 2016-08-18 | D. Light Design, Inc. | Systems and methods for allocation of device resources using multi-character alphanumeric codes |
KR102460096B1 (ko) * | 2015-05-27 | 2022-10-27 | 삼성에스디에스 주식회사 | 클라우드 서비스를 위한 암호화 키 관리 방법 및 그 장치 |
US9674165B2 (en) * | 2015-05-28 | 2017-06-06 | Nxp B.V. | Efficient key derivation with forward secrecy |
WO2017009915A1 (ja) * | 2015-07-10 | 2017-01-19 | 富士通株式会社 | 機器認証システム、管理装置及び機器認証方法 |
KR101966767B1 (ko) * | 2017-05-31 | 2019-04-08 | 삼성에스디에스 주식회사 | 클라우드 서비스를 위한 암호화 키 관리 시스템 |
EP3425867B1 (en) * | 2017-07-05 | 2021-01-13 | Nxp B.V. | Communication devices and associated method |
-
2013
- 2013-07-10 US US13/938,987 patent/US10460314B2/en active Active
-
2014
- 2014-07-10 CN CN201410399632.XA patent/CN104283687A/zh active Pending
- 2014-07-10 EP EP14176472.0A patent/EP2852121A3/en not_active Withdrawn
- 2014-07-10 BR BR102014017104A patent/BR102014017104A2/pt not_active Application Discontinuation
Also Published As
Publication number | Publication date |
---|---|
US10460314B2 (en) | 2019-10-29 |
US20150019442A1 (en) | 2015-01-15 |
EP2852121A3 (en) | 2015-08-26 |
EP2852121A2 (en) | 2015-03-25 |
CN104283687A (zh) | 2015-01-14 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
BR102014017104A2 (pt) | pré-geração de chaves de sessão para transações eletrônicas e dispositivos que pré-geram chaves de sessão para transações eletrônicas | |
JP6818679B2 (ja) | セキュアホストカードエミュレーションクレデンシャル | |
ES2881873T3 (es) | Procedimiento de protección de una ficha de pago | |
US11323275B2 (en) | Verification of identity using a secret key | |
CN105144626B (zh) | 提供安全性的方法和设备 | |
US11063749B2 (en) | Cryptographic key management based on identity information | |
CN104412273B (zh) | 用于进行激活的方法和系统 | |
US20200074465A1 (en) | Verification and provisioning of mobile payment applications | |
CN102262599B (zh) | 一种基于可信根的移动硬盘指纹认证方法 | |
Dmitrienko et al. | Secure free-floating car sharing for offline cars | |
CN106789024B (zh) | 一种远程解锁方法、装置和系统 | |
ES2877522T3 (es) | Método y sistema para mejorar la seguridad de una transacción | |
KR102234825B1 (ko) | 암호 동작들의 안전한 수행 | |
CN111316596B (zh) | 具有身份验证的加密芯片 | |
WO2018219010A1 (zh) | 一种空中发卡方法及装置 | |
NO340355B1 (en) | 2-factor authentication for network connected storage device | |
TWI729236B (zh) | 用於驗證資料的方法、系統及電腦程式、電子裝置、能與伺服器通訊之設備及電腦可讀取記錄媒體 | |
CN110740036A (zh) | 基于云计算的防攻击数据保密方法 | |
US20180240111A1 (en) | Security architecture for device applications | |
ES2770006T3 (es) | Método para gestionar una aplicación | |
CZ2013883A3 (cs) | Způsob autorizace dat |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
B03A | Publication of a patent application or of a certificate of addition of invention [chapter 3.1 patent gazette] | ||
B06F | Objections, documents and/or translations needed after an examination request according [chapter 6.6 patent gazette] | ||
B06U | Preliminary requirement: requests with searches performed by other patent offices: procedure suspended [chapter 6.21 patent gazette] | ||
B11B | Dismissal acc. art. 36, par 1 of ipl - no reply within 90 days to fullfil the necessary requirements |