Quebrar visto PIN

Jul 02, 2008 em e Banking Eftpos

Abaixo está um artigo que encontrei recentemente. Esta uma das mais completas descrições dos Value hacking.

Eu pensei que ela iria replicar aqui o meu local de referência.

Como comentar têm sido feitos na gramática usada texto original, tenho corrigido alguns dos erros óbvios mas preservando o contexto do material original.

http://69.46.26.132/ ~ biggold1/fastget2you/tutorial.php

--- original ----

Prefácio
Alguma vez você já saber o que aconteceria se você perder o seu de crédito ou débito e alguém acha isso. Deveria esta pessoa ser capaz de retirar dinheiro de um caixa eletrônico adivinhação, de algum modo, seu PIN? Além disso, se você fosse alguém que acha do iria tentar adivinhar o ter a chance de obter algum fácil? Claro que a resposta às duas perguntas devem ser "não". Esse trabalho não lida com a segunda pergunta, é uma questão de Tento, assim, responder à primeira pergunta.

Todas as informações utilizadas para esse trabalho é público e pode ser encontrado livremente na O resto é uma questão de programação, assim podemos aprender algo e ter algum divertimento. Eu não revelam segredos. Além disso, o objectivo (ea final), do presente trabalho é demonstrar que a algoritmos são fortes o suficiente para fornecer suficiente. Nós todos conhecemos

Este trabalho analisa uma das mais comuns algoritmos, usado por muitos débito) e tenta descobrir como é resistente aos adivinhando ataques. Por "adivinhar" Não me refiro a uma escolha aleatória tentando-o em um caixa eletrônico. É sabido que nós geralmente são dadas três tentativas consecutivas de entrar à direita se não ATM mantém o Como quatro dígitos longos, é fácil deduzir que a chance de um aleatória é adivinhação 3 / 10000 = 0,0003, parece ser baixo o suficiente para ser seguro, isso significa que você precisa perder o seu mais de três mil vezes ( ou a perder mais de três mil cartões ao mesmo tempo:) até que haja uma probabilidade razoável de perder

O que eu realmente entende por "adivinhar" foi quebrar a de modo que nenhum dado você pode saber as imediatamente associada Por conseguinte, este documento estudos possibilidade de que, analisando o e propor um método para ataque. Finalmente vamos dar uma ferramenta que implementa ataque e apresentar resultados sobre as estimativas dos chance de quebrar o sistema. Note que, enquanto outras relacionados com algoritmos (outros formatos, tais como IBM assinaturas, como a validação ou CVC) são semelhantes aos a mesma análise pode ser feito rendendo quase os mesmos resultados e conclusões.



Uma das mais comuns algoritmos é o Value O cliente é dado um uma Codificados na é um número de quatro algarismos, chamados Este número é um criptográfico assinatura do outros o Quando um usuário digita o seu a ATM lê a criptografa e envia todas estas informações para um computador central. Existe um julgamento é computado usando o cliente entrou as criptográfico com um O julgamento é comparado com o armazenadas no se corresponderem ao computador central retorna ao ATM autorização a transação. Veja mais em pormenor.

A descrição do pode ser encontrada em dois documentos ligados na página anterior. Em resumo, consiste na de um 8 byte (64 bits) seqüência dados, chamado Transformado Parâmetro (SFT), sendo (DEA) em Código Livro modo (BCE) utiliza uma chave secreta de 64 bit. O é obtido a partir do resultado processo de encriptação, que é uma seqüência byte 8. Os quatro algarismos do (da esquerda para a direita) correspondem aos primeiros quatro dígitos decimais (da esquerda para a direita), da saída do quando considerada como um hexadecimal 16 caracteres (16 x 4 bits = 64 bits) corda. Se não existirem quatro dígitos decimais entre os 16 caracteres hexadecimais, em seguida, o está concluída tomadas (da esquerda para a direita) e caracteres não decimal decimalizing-los usando a conversão A-> 0, B-> 1, C-> 2, D -> 3, E-> 4, F-> 5. Aqui está um exemplo:

Saída de 0FAB9CDEFFE7DCBA

0975

A estratégia de evitar decimalização saltitando por até quatro dígitos decimais personagens encontram-se (o que acontece com quase todas as vezes ser como veremos adiante) é muito inteligente, porque evita um viés importante na distribuição dos dígitos que tenha sido provado ser fatal para outros sistemas, embora o impacto sobre o sistema seria muito mais baixa. Veja também relacionada com um problema que não se aplicam a

O TSP, encarada como hexadecimais 16 uma caractere (64 bits) corda, é formada (da esquerda para a direita) com os 11 dígitos direita do PAN excluindo o último dígito (check dígito), um dígito de 1 a 6 que seleciona o cifrando-chave secreta e finalmente os quatro dígitos do Aqui está um exemplo:

PAN: 1234 5678 9012 3445
Chave seletor: 1
2468

TSP: 5678901234412468

Obviamente, o problema da quebra consiste em encontrar a chave secreta para criptografar O método para isso é fazer uma pesquisa de força bruta a tecla espaço. Note que este não é o único método, pode-se tentar encontrar um ponto fraco na DEA, muitos tentaram, mas este padrão antigo ainda é largamente utilizado (agora substituído pelo AES e embora). Isso demonstra que é robusto o suficiente para que força bruta é o único método viável (existem algumas melhores práticas ataques, mas não no nosso caso, para ver um resumo LASEC memo e para ver os detalhes sujos Biham & Shamir 1990, Biham & Shamir 1991, Matsui 1993, Biham & Biryukov 1994 e Heys 2001).

A chave era muito provável selector dígito introduzido para cobrir a possibilidade de um compromisso fundamental. Nesse caso, só têm de emitir novos cartões utilizando outra tecla selector. Mais antigos cartões podem ser substituídas por outras novas, ou simplesmente o caixa eletrônico transparente possível escrever uma nova (correspondente à nova chave e mantendo o mesmo próxima vez que o cliente utiliza o seu Para o shake de todos os usuários devem ser convidados a mudar os seus PINs, no entanto, seria embaraçoso para o para explicar o motivo, então muito provavelmente não teriam de fazer tal pedido.

Preparando ataque


Um consiste em criptografar o SFT com uma conhecida utilizando todas as chaves possíveis criptografar e comparar cada obtidas com o conhecido Quando uma correspondência for encontrada, temos um candidato chave. Mas quantas chaves, temos de tentar? Como dissemos acima da chave de 64 bit é longo, isso significaria que temos que tentar 2 ^ 64 chaves. No entanto isso não é verdade. De facto, apenas 56 bits são eficazes na chaves porque um bit (o menos importante) fora de cada octeto foi historicamente reservado como um checksum para os outros, na prática, esses 8 bits (um para cada um dos 8 octetos) são ignoradas.

Por conseguinte, o tecla espaço é constituído por 2 ^ 56 chaves. Se tentarmos todas estas chaves é que iremos encontrar uma e apenas um jogo, correspondente ao chave secreta? Certamente que não. Iremos obter muitas correspondências chaves. Isso ocorre porque o é apenas uma pequena parte (um quarto) do saída. Além disso, o é degenerada, porque alguns dos dígitos (aquelas entre 0 e 5 após a última, visto da esquerda para a direita, algarismos entre 6 e 9) pode vir da uma decimal de um dígito ou decimalized dígito hexadecimal do saída. Assim, muitas chaves irá produzir um saída que retorna para a mesma correspondência

Então o que podemos fazer para encontrar a verdadeira chave entre os outros falsos positivos chaves? Basta que temos para criptografar um segundo diferentes TSP, também conhecida com mas utilizando apenas as teclas candidato que deu uma correspondência positiva com o primeiro-TSP par. No entanto não há garantia de não entraremos novamente muitos falsos positivos, juntamente com a verdadeira chave. Se assim for, teremos um terceiro par, repita o processo e assim por diante.

Antes de começarmos o nosso temos de saber quantos pares vamos precisar. Por que temos de calcular a de um aleatória saída para produzir um alinhamento apenas por acaso. Existem várias formas de calcular este número e aqui vou usar uma abordagem simples de fácil compreensão, mas que exige algum conhecimento em probabilidades.

A pode ser visto como a razão de casos favoráveis a possíveis casos. No nosso problema, o número de casos possíveis é dada pela de 16 elementos (0 até o F dígitos hexadecimais) em um grupo de 16 deles (os 16 dígitos hexadecimais do de saída). Esta é dada por 16 ^ 16 ~ 1,8 * 10 ^ 19, que obviamente coincide com 2 ^ 64 (números diferentes de 64 bits). Este conjunto de números podem ser divididos em cinco categorias:

Aqueles com pelo menos quatro dígitos decimais (0 a 9) dentre os 16 dígitos hexadecimais (0 a F) do saída.

Exatamente aqueles com apenas três dígitos decimais.

Exatamente aqueles com apenas dois dígitos decimais.

Exatamente aqueles com apenas um dígito decimal.

Aqueles sem dígitos decimais (todos entre A e F).

Vamos calcular quantos números de queda em cada categoria. Se formos rotular os 16 dígitos hexadecimais do saída que X1 para x16 então podemos rotular os quatro primeiros dígitos decimais de um determinado número de primeira categoria como o Xi, XJ, Xk e XL. O número de combinações diferentes com este perfil é dado pelo produto 6 i-1 * 10 * 6 undecies-i-1 * 10 * 6k-j-1 * 10 * 6 p.-1 * 10 * 1616-l, se a 6 ' s provir do número de possibilidades de um dígito de A a F, os 10's vêm das possibilidades de um dígito de 0 a 9 e os 16 vem da possibilidade de um 0 a F dígito. Agora, os números totais na primeira categoria é simplesmente dado pelo somatório do produto ao longo deste i, j, k, l de 1 a 16, mas com i <j <k <l. Se você fizer alguma matemática vai ver este trabalho é igual ao produto do 104 / 6 com o somatório ao longo i, de 4 a 16 de (i-1) * (i-2) * (i-3) * 6i-4 * 16 16-i ~ 1,8 * 1019.

Analogamente, o número de casos na segunda categoria é dada pela soma mais de i, j, k, de 1 a 16 com i <j <k do produto 6i-1 * 10 * 6 undecies-i-1 * 10 * 6k-j -1 * 10 * 616-k, que você pode trabalhar com isso de ser 16! / (3! * (16-13)!) * 103 * 6 13 = 16 * 15 * 14 / (3 * 2) * 103 * 613 = 56 * 104 * 613 ~ 7,3 * 1015. Da mesma forma para a terceira categoria, temos o somatório ao longo i, j, de 1 a 16 com i <j, de 6 i-1 * 10 * 6 undecies-i-1 * 10 * 616-j, que equivale a 16! / (2! * (16-14)!) * 102 * 614 = 2 * 103 * 615 ~ 9,4 * 1014. Mais uma vez, para a quarta categoria, temos o somatório i longo de 1 a 16 do 6 i-1 * 10 * 616-i = 160 * 615 ~ 7,5 * 1013. E por último a quantidade de casos na quinta categoria é dada pela seis elementos (A a F dígitos) em um grupo de 16, ou seja, 616 ~ 2,8 * 1012.

Espero que você seguiu os cálculos até este ponto, a parte mais difícil está feito. Agora, como uma prova de que tudo esteja certo que você pode soma do número de casos em 5 categorias e ver o que equivale ao número total de casos possíveis calculado antes de nós. Fazer operações usando os números de 64 bits ou de arredondamento (para carros alegóricos) ou transbordamento (para inteiros) erros não vão deixar você pegar o resultado exato.

Até agora temos calculado o número de possíveis casos em cada uma das cinco categorias, mas estamos interessados em obter o número de casos favoráveis ao invés. É muito fácil tirar o último a partir do antigo como este não é apenas, que fixa a combinação dos quatro dígitos decimais (ou o exigido dígitos hexadecimais, se não houver quatro dígitos decimais) do vez de deixá-las free. Na prática, isso significa transformar os 10's na fórmula acima em 1's e exigido o montante de 6 a 1 em caso de não existirem quatro dígitos decimais. Ou seja, nós temos que dividir o primeiro resultado por 104, eo segundo por 103 * 6, o terceiro por um 102 * 62, a um quarto por 10 * 63 ea quinta por um 64. Em seguida, o número de casos favoráveis nas cinco categorias são aproximadamente 1,8 * 1015, 1,2 * 1012, 2,6 * 1011, 3,5 * 1010, 2,2 * 109, respectivamente.

Agora somos capazes de obter aquilo que a probabilidade de um saída para coincidir com uma por acaso. Só temos de acrescentar as cinco números de casos favoráveis e divida-o pelo número total de casos possíveis. Fazendo isso temos que obter probabilidade é muito 0,0001 ou aproximadamente um em cada dez mil. É bem estranho esse resultado arredondado? Nem por isso, basta ter um olhar para os números que calculamos acima. A primeira categoria domina por várias ordens de grandeza do número de casos possíveis e favoráveis. Isto é bastante intuitivo como parece claro que é muito pouco provável que não tenha quatro dígitos decimais (10 chances de 16 por dígito) entre os 16 dígitos hexadecimais. Nós vimos anteriormente que a relação entre o número de casos possíveis e favoráveis na primeira categoria foi uma divisão por 10 ^ 4, que é onde o nosso resultado p = 0,0001 vem.

Nosso objetivo era para todos estes cálculos para saber quantos pares que precisamos para desempenhar um bom Agora estamos aptos a calcular o número esperado de falso-positivos em uma primeira pesquisa: ele será o número de tentativas vezes a de um único aleatória falsos positivos, ou seja, p * t onde t = 2 ^ 56, o tamanho da chave espaço. Isto equivale a aproximadamente 7,2 * 10 ^ 12, um número bastante grande. O número esperado de falsos positivos no segundo pesquisa (restrito ao chaves positivo encontrado na primeira busca) será (p * t) * p, para uma terceira pesquisa será ((p * t) * p) e p * assim por diante. Assim, para pesquisas n o número esperado de falsos positivos serão p * t ^ n.

Podemos obter o número de pesquisas obrigados a esperar apenas um falso positivo por expressar a equação p * t ^ n = 1 e resolvendo para n. Então n é igual logarítmo na base de 1 p / t, o que por propriedades de logaritmos ele retorna n = log (1 / t) / log (p) ~ 4.2. Uma vez que não podemos fazer uma pesquisa fracionário que for conveniente para arredondar este número para cima. Portanto o que é esperado o número de falsos positivos se nos cinco realizar pesquisas? É p * t ^ 5 ~ 0,0007 ou aproximadamente 1 em 1400. Assim, utilizando cinco pares é seguro para obter a verdadeira chave secreta, sem falsos positivos.

O


Uma vez que sabemos que precisamos cinco pares, como vamos buscá-las? Claro que precisamos de pelo menos um com a conhecida e devido à natureza do que é a única coisa de que precisamos. Com outros sistemas, tais como IBM, que precisamos cinco cartões, porém este não é necessária com Só temos de ler a em seguida, alterar o quatro vezes, mas a leitura do após cada mudança.

É necessário ler a cartão para obter o e as cifrando-chave selector. Você pode comprar um comercial fazer um você mesmo seguindo as instruções que você pode encontrar na página anterior e links nele. Depois que você tiver um vê esta descrição da norma magnético trilhas para saber como obter o partir dos dados lidos. Nesse documento, o campo em faixas 1 e 2 é dito ao longo de cinco caracteres, mas na verdade os verdadeiros consiste de quatro últimos dígitos. O primeiro dos cinco dígitos é a chave selector. Tenho visto somente cartões com um valor de 1, neste dígito, o que é consistente com o padrão e com a chave secreta de nunca ser comprometida (e, portanto, eles não precisam se deslocar para outra chave mudando o selector).

Eu fiz um simples programa C, getpvvkey.c, para realizar ataque. É constituído por um circuito fechado para experimentar várias chaves para encriptar os primeiros TSP, se os derivados corresponde a verdade uma nova TSP é tentado, e assim sucessivamente até que haja um desfasamento, caso em que a chave é descartado e um novo é julgado, ou a cinco derivados PVVs correspondem à verdade PVVs correspondente, caso em que podemos assumir que temos o chave secreta, porém o circuito até ao momento em que vai a esgotar a tecla espaço. Isso é feito para garantir que encontramos a verdadeira chave, porque existe uma chance (apesar de muito baixo) a primeira chave encontrada é um falso positivo.

Espera-se que o programa ia levar muito tempo para terminar e para minimizar os riscos de um corte de energia, computador sair, etc ela faz checkpoints em getpvvkey.dat o arquivo de vez em quando (o tempo exato depende da velocidade do computador, é de cerca de uma hora para os computadores mais rápidos agora em uso). Pela mesma razão, se for encontrada uma chave positiva, é lima getpvvkey.key escrito sobre o. O programa só exibe uma mensagem no início, começando a posição assumida desde o ponto de verificação se algum arquivo, depois que nada mais é exibido.

O um ponto chave no programa, é, pois, muito importantes para otimizar a sua velocidade. Eu testei várias implementações: libdes, SSLeay, openssl, cryptlib, NSS, libgcrypt, catacumbas, libtomcrypt, cryptopp, ufc-crypt. O funções dos quatro primeiros são baseados no mesmo código de Eric Young e é o que teve melhor desempenho (inclui otimizados C e código assembler x86). Assim eu escolhi libdes qual foi a aplicação original e condensados todos os arquivos relevantes no código encrypt.c (versão C) e x86encrypt.s (montador versão x86). O código foi ligeiramente modificada para realizar algumas melhorias em ataque: a primeira é uma ladeira íngreme fixos comuns em cada TSP e, portanto, podem ser feitas apenas uma vez no começo. Outra melhoria é que eu escrevi uma função totalmente nova setkey (Eu liguei para ele nextkey), o que é óptimo para uma força bruta loop.

Para obter o programa de trabalho que você só precisa lugar correspondente cinco TSPs e seus PVVs e, em seguida, compilá-lo. Eu testei-a apenas em plataformas UNIX, usando o makefile Makegetpvvkey para compilar (use o comando "make-f Makegetpvvkey"). Ele pode compilar em outros sistemas, mas pode ser necessário corrigir algumas coisas. Tenha certeza de que a do tipo long64 corresponde a um 64 bits inteiro. Em princípio, não há dependência do endianness do processador. Tenho compilou com sucesso e executá-la no Pentium-Linux, Alfa-Tru64, Mips-Irix-Sparc e Solaris. Se você não tem e não quiser instalar o Linux (você não sabe o que está faltando ;-) você ainda tem a opção de executar o Linux em CD e usar o meu programa, ver a minha página executando o Linux sem instalá-lo.

Depois de ter encontrado o segredo chave se você quiser achar o de uma arbitrariedade você só tem que escrever um programa semelhante (desculpe eu não tenho escrito, eu estou demasiado preguiçoso:) que iria tentar todas as 10 ^ 4 PINs por gerar correspondem a TSP, criptografando-a com o (não mais) chaves secretas, decorrentes da e compará-lo com o na cartão. Você vai ter um jogo de verdade o Apenas um jogo? Lembrar o que vimos acima, temos uma chance de que um 0,0001 aleatória corresponde à Nós, tentam 10000 PINs (e, portanto, TSPs), assim esperamos 10000 * 0,0001 = 1 falso positivo, em média.

Este é um resultado muito interessante, isso significa que, em média, cada válido PINs tem dois: o cliente os falsos positivos esperados. Eu chamo-lhe "falsas", mas nota que, enquanto ele gera o verdadeiro que é um tão válida quanto a do cliente de uma. Além disso, não há maneira de saber o que é que, mesmo para o caixa eletrônico; só cliente sabe. Mesmo que o falso positivo não eram válidas como você ainda tem três ensaios no caixa eletrônico qualquer forma, chega, em média. Portanto probabilidade é calculada no início do presente documento sobre aleatória adivinhação do tem de ser corrigida. Na verdade ele é o dobro desse valor, ou seja, é um fora de 0,0006 ou superior a 1600, ainda pouco segura.

Resultados


É importante para otimizar a compilação do programa e para executá-lo no processador mais rápido possível devido ao longo tempo esperado correr. Achei que o compilador otimização-O pavilhão fica-se com a melhor performance, o pensamento é conseguido adicionando algumas melhorias a-fomit-frame-pointer bandeira sobre Pentium-Linux, cravo-da-bandeira no Alpha Tru64, o IPA-bandeira em Mips-Irix e do fast-bandeira no Sparc-Solaris. Especial bandeiras (-DDES_PTR-DDES_RISC1-DDES_RISC2-DDES_UNROLL-DASM) para o código geralmente têm benefícios também. Todos esses pavilhões já foram testados e eu escolhi a melhor combinação para cada processador (ver makefile), mas você pode tentar afinar outras bandeiras.

De acordo com a minha testa o melhor desempenho é alcançado com o processador AMD Athlon 1600 MHz, superior a 3,4 milhões de chaves por segundo. É interessante que obtém melhores resultados do Intel Pentium IV 1800 MHz e 2000 MHz (veja números abaixo, clique nelas para ampliar). Creio que isso se deve a alguns I / O saturação, certamente memória cache ou de que o processador AMD (que tem metade do cache do Pentium) ou da placa-mãe na qual ele está sendo executado, consegue evitar. Na primeira figura abaixo você pode ver que o quebrando velocidade de todos os processadores tem mais ou menos uma relação linear com a velocidade do processador, exceto para os dois Intel Pentium que eu mencionei antes. Isto é lógico, isso significa que, para uma dupla velocidade do processador você poderá obter dupla ruptura velocidade, mas esteja atento aos efeitos saturação, neste caso, é melhor o AMD Athlon 1600 MHz, que será ainda mais barato do que o Intel Pentium 1800 MHz MHz ou 2000.

Na segunda figura podemos ver com mais detalhe o que fazemos apelo intrínseco quebrar o poder do processador. Recebo este valor simplesmente dividindo a velocidade por quebrar a velocidade do processador, isto é, ficamos com o número de chaves procurei por segundo e por MHz. Esta é uma medida do desempenho do processador independentemente da sua velocidade. Os resultados mostram que o melhor processador para esta tarefa é o AMD Athlon, em seguida, vem o Alpha e depois de muito perto é o Intel Pentium (exceto para a velocidade mais elevada aquelas que desempenham muito pobre devido à saturação efeito). Seguinte é o processador Mips e no último lugar está o Sparc. Alguns processadores Alpha e Mips estão localizados na parte inferior do importância porque elas são as primeiras liberações não incluindo acessórios da tarde versões. Repare que eu incluído o desempenho dos processadores x86 para C e código assembler já que há uma diferença. Parece que um gcc não é bom gerador de código otimizado máquina, mas obviamente não sabemos se um manual de otimização da montadora código para os outros processadores (Alpha, MIPS, Sparc) melhorará os seus resultados comparados com os nativos compiladores C (Eu não uso o gcc para estas outras plataformas), como acontece com o processador x86.

Atualizar

Aqui está um artigo em que essas técnicas podem ter sido utilizados.

http://redtape.msnbc.com/2008/08/could-a-hacker.html

Processamento de transação financeira

Jul 02, 2008 em e Banking Eftpos

Fui recentemente trabalhando dentro de um dos maiores bancos Austrália.
Através deste trabalho que tenho vindo a olhar para os controles mecanismos envolvendo a débito ao redor da Ásia-Pacífico.

Recebo realizar muitas de segurança e avaliações.
Ao longo dos anos tenho semper considerou protecção do como uma das principais considerações.

Até ontem eu nunca tinha visto um ou ferramentas. Acho que alguns scripts uso dessas ferramentas pode ser muito interessante.
O site hziggurat29.com

Muitas das outras ferramentas neste site são também muito original e merece uma olhada.
Big graças a ziggurat29 para fornecer tais ferramentas awesome.

Como muitos desses sites são desta natureza são difíceis de encontrar e, muitas vezes, parecem desaparecer com o passar dos anos, tenho escolheu para replicar a texto a partir desta página e fornecer cópias locais dos arquivos.
Vale a pena visitar periodicamente o site ziggurat29 e agora cada vez mais para ver se alguma ferramentas adicionais foram postadas.

Um dos arquivos mais extraordinário é o ATALLA Module e ferramentas. Então eu pergunto se e estão tremendo nas suas botas. De alguma maneira eu não penso assim. ;-)

--- Ziggurat29 ---

Estes são todos os utilitários de linha de comando do Windows (exceto onde indicado); executar com a opção-ajuda
para determinar sua utilização.

DUKPT Decrypt (<- o próprio arquivo para download)

Este é um irá criptografados blocos que tenham sido produzidos por intermédio da método. Eu usei isso para testar a saída de alguns Pad software eu tinha criado, mas também é útil para outras finalidades eliminando erros.

VISA PVV Calculator (<- o real
arquivo para download)

Este é um irá calcular e verificar Valores que foram produzidas utilizando o Tem um monte de funções auxiliares, tais como verificar e fixar uma PAN (Luhn criando e criptografando blocos, e desencriptar extração de PINs cifrada blocos, etc

VISA CVV Calculator (<- o próprio arquivo para download)

Este é um irá computar Valores que foram produzidas utilizando o MasterCard CVC usa o CVV de forma que ele vai trabalhar para isso também. Computar-se-á CVV3, iCVV, CAVV, uma vez que estes são apenas variações sobre o serviço eo código
formato da data de validade. é simplesmente o valor calculado comparando com o que você tem recebido, de forma explícita, não há função.

ATALLA AKB Calculator (<- o próprio arquivo para download)

Este é um irá tanto gerar e ATALLA AKB cryptograms. Você vai precisar do plaintext MFK para realizar estas operações. Quando desencriptar, o MAC também será verificado e os resultados demonstrados.

BogoAtalla (<- o arquivo real para
Baixar)

Este é um ATALLA (ou simulador). Este software (simulação) do conhecido ATALLA Module que é usado por bancos e processadores para operações criptográficas, como a verificação / traduzindo blocos, que autoriza operações por verificando
/ CSC números, realizando troca de chaves e procedimentos, foi produzido para fins de teste. Essa implementação não é completa do HP ATALLA comando set, mas sim apenas a
porções que eu mesmo necessária. Dito isto, é bastante completo, se você estiver realizando aquisição e / ou emissão e estão a utilizar sistemas mais modernos, como a e e preciso fazer a verificação, e tradução.

Isto funciona como uma escuta socket e gerencia o nativo ATALLA comando set. Tomei algumas liberdades com o erro e devolver valores não tenham lutado para a alta-fidelidade existe (ou seja, você pode obter uma resposta diferente a partir de erro nativo mas Definitivamente idênticos deve ficar positivo
Respostas. Algumas funcionalidades implementadas aqui exijam normalmente compra prémio comandos, mas todos os comandos executados estão disponíveis aqui. Exemplos são geradoras valores e criptografar / descriptografar plaintext valores.

BogoAtalla para Linksys (<- o próprio arquivo para download)

Este é o ATALLA portado para o GNU / Linux e construir para instalação em um sistema OpenWRT. Aproveita-se realmente de uma barata ($ 60 USD) / teste dispositivo.

Arquivos Locais

bogoatalla002
atallaakbcalc
bogoatalla_10-1_mipsel
dukptdecrypt
visacvvcalc
visapvvcalc