Breaking VISA PIN

Jul 02, 2008 in bank-en EFTPoS

Hieronder staat een artikel dat ik onlangs gevonden. Dit een van de meest uitgebreide beschrijvingen van Waarde

Ik dacht dat ik zou replicatieonderzoek het hier voor mijn lokale referentie.

Als reactie hebben plaatsgevonden met betrekking tot de grammatica gebruikt in de oorspronkelijke ik hebben een aantal van de voor de hand liggende fouten met behoud van de context van het oorspronkelijke materiaal.

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

--- Original ----

Voorwoord
Heeft u ooit de vraag wat er zou gebeuren als u uw of en iemand vindt. Zou deze persoon te kunnen trekken contanten uit een geldautomaat gissen, ergens, uw Bovendien, als je die vindt iemand de zou u proberen te raden de en neemt de kans om wat te gemakkelijk Natuurlijk het antwoord op beide vragen is "nee". Dit werk heeft geen betrekking op de tweede vraag, is het een kwestie van Hierbij probeer ik naar het antwoord op de eerste vraag.

Alle gegevens die worden gebruikt voor dit werk is openbaar en vrij kunnen worden gevonden op De rest is een kwestie van en programmeren, dus we kunnen leren en heb plezier. Ik licht geen geheimen. Bovendien is de doelstelling (en definitieve van dit werk is aan te tonen dat zijn nog steeds sterk genoeg om voldoende We weten allemaal is niet het

Dit werk analyseert een van de meest voorkomende algoritmen, gebruikt door vele en probeert uit te vinden hoe resistent is om aanvallen. Door "raden" bedoel ik niet de keuze van een willekeurige en probeert haar in een ATM. Het is bekend dat het algemeen zijn wij van drie opeenvolgende proeven om de juiste als we niet ATM houdt de Zoals is vier cijfers lang is het gemakkelijk afleiden dat de kans op een willekeurige gissen is 3 / 10000 = 0,0003, lijkt laag genoeg om veilig te zijn, het betekent dat je moet verliezen uw meer dan drieduizend keer ( of verlies van meer dan drieduizend kaarten tegelijk:) totdat er een redelijke kans op verlies van

Wat ik eigenlijk bedoeld met "gissen" was het breken van de zodat enkele kan je meteen weten de bijbehorende Daarom is dit document studies die mogelijkheid, het analyseren van het en stelt een methode voor de Tenslotte geven we een instrument waarmee de en de huidige resultaten over de geschatte kans om het systeem. Merk op dat, zolang andere algoritmen (andere zoals IBM of validatie handtekeningen zoals of CVC) zijn vergelijkbaar met is deze analyse kan worden gedaan yielding bijna dezelfde resultaten en conclusies.



Een van de meest voorkomende is de Prijs De klant krijgt een en een Gecodeerd in de is een vier-cijferige nummer, genaamd Dit nummer is een cryptografische handtekening van de andere in verband met de Wanneer een gebruiker zijn / haar de ATM leest de codeert en stuurt deze informatie naar een centrale computer. Er een proces wordt berekend met behulp van de klant opgegeven en de van informatie met een cryptografisch Het proces wordt vergeleken met de op de opgeslagen, indien zij voldoen aan de centrale computer keert terug naar de ATM-vergunning voor de Zie in meer detail.

De beschrijving van de kan worden gevonden in twee documenten in verband met de vorige pagina. Samenvattend bestaat in de van een 8-byte (64 bit) string van de zogenaamde Transformed Parameter (TSP), met (DEA) in code reserveren modus (ECB) met behulp van een geheime 64-bits sleutel. De is afgeleid van de output van de dat een 8-byte string. De vier cijfers van de (van links naar rechts) stemmen overeen met de eerste vier decimalen (van links naar rechts) van de output van toen beschouwd als een 16 hexadecimale tekens (16 x 4 bits = 64 bits) string. Als er geen vier decimale cijfers onder de 16 hexadecimale karakters dan de is voltooid genomen (van links naar rechts) niet decimale karakters en decimalizing ze door gebruik te maken van de conversie A-> 0, B-> 1, C-> 2, D -> 3, E-> 4, F-> 5. Hier is een voorbeeld:

Uitgang van 0FAB9CDEFFE7DCBA

0975

De strategie van vermijding decimalization door het overslaan van personages tot vier decimalen zijn gevonden (wat gebeurt er met zijn bijna alle tijden zoals we zullen zien) is heel slim, omdat het voorkomt dat een belangrijke vertekening in de verdeling van de cijfers die is bewezen te worden fataal voor andere systemen, hoewel het effect op dit systeem zou veel lager zijn. Zie ook een gerelateerd probleem is niet van toepassing is op

De TSP, gezien als een 16 hexadecimale tekens (64 bits) string, wordt gevormd (van links naar rechts) met de 11 meest rechtse cijfers van de PAN nummer) met uitzondering van de laatste cijfers (check digit), een cijfer 1 tot 6 die kiest de geheime sleutel versleutelen en ten slotte de vier cijfers van de Hier is een voorbeeld:

PAN: 1234 5678 9012 3445
Toets keuzehandel: 1
2468

TSP: 5678901234412468

Uiteraard het probleem van het breken bestaat in het vinden van de geheime sleutel voor het versleutelen van De methode daarvoor is om een brute kracht zoeken van de belangrijkste ruimte. Merk op dat dit niet de enige methode, zou men kunnen proberen te vinden van een zwakte in de DEA, veel geprobeerd, maar deze oude norm is nog steeds op grote schaal wordt gebruikt (nu vervangen door AES en hoewel). Dit toont het is stevig genoeg, zodat brute kracht is de enige haalbare methode (er zijn enkele beter aanvallen, maar niet praktisch in ons geval, voor een overzicht zie LASEC memo en voor het vuile details zie Biham & Shamir 1990, Biham & Shamir 1991, Matsui 1993, Biham & Biryukov 1994 en Heys 2001).

De sleutel keuzehandel cijfer werd zeer waarschijnlijk ingevoerd ter dekking van de mogelijkheid van een belangrijk compromis. In dat geval krijgen ze gewoon van de uitgifte van nieuwe kaarten met een andere toets selector. Oudere kaarten kunnen worden vervangen door nieuwe of simpelweg het ATM kan transparante schrijven van een nieuw (overeenkomend met de nieuwe sleutel en het houden van dezelfde volgende keer dat de klant gebruik maakt van zijn / haar Voor het schudden van de voor alle gebruikers moeten worden gesteld om hun pincodes, maar het zou pijnlijk zijn voor de om de reden, dus zeer waarschijnlijk zouden zij niet een dergelijk verzoek.

De voorbereiding van de


Een brute kracht bestaat uit het versleutelen van een TSP met bekende met behulp van alle mogelijke encryptie sleutels en vergelijken elk verkregen met de bekende Wanneer er een match is gevonden hebben we een kandidaat-sleutel. Maar hoeveel toetsen we moeten proberen? Zoals we al boven de toets is 64 bits lang, dit zou betekenen dat we moeten proberen 2 ^ 64 sleutels. Dit is echter niet waar. Eigenlijk slechts 56 bits zijn effectief in het want een beetje (het minst significante) van elk octet was historisch voorbehouden als controlesom voor de anderen; in de praktijk deze 8 bits (een voor elk van de 8 octets) worden genegeerd.

Daarom is de sleutel ruimte bestaat uit 2 ^ 56 sleutels. Als we proberen al deze toetsen vinden we slechts een wedstrijd, die overeenkomt met de geheime sleutel? Zeker niet. Krijgen we veel bijpassende sleutels. Dit komt doordat de is slechts een klein deel (een kwart) van de Bovendien is de is ontaardde omdat sommige van de cijfers (die tussen 0 en 5 na de laatste, gezien van links naar rechts, cijfer tussen de 6 en 9) kan afkomstig zijn van een decimale cijfers of uit een decimalized hexadecimale cijfers van de Zo veel sleutels zal een output levert aan dezelfde bijpassende

Wat kunnen we doen om de echte sleutel tot die andere valse positieve sleutels? We hebben gewoon te versleutelen een tweede verschillende TSP, ook bekend met de maar met alleen de kandidaat-sleutels die heeft een positieve matching met de eerste talencombinatie. Er is echter geen garantie zullen we niet krijgen weer veel false positives, samen met de echte toets. Als dat zo is, moeten we een derde pair, herhaal het proces en zo voort.

Voordat we beginnen onze hebben we te weten hoeveel paren zullen we nodig hebben. Voor dat we hebben voor het berekenen van de voor een willekeurige output te leveren een bijpassende alleen door toeval. Er zijn verschillende manieren voor de berekening van dit nummer en hier zal ik gebruik maken van een eenvoudige benadering gemakkelijk te begrijpen, maar dat vereist enige achtergrond in de van

Een kan altijd worden gezien als de verhouding tussen gunstige gevallen aan mogelijke gevallen. In ons probleem is het aantal mogelijke gevallen wordt gegeven door de van 16 elementen (de 0 tot en met F hexadecimale cijfers) in een groep van 16 van hen (de 16 hexadecimale cijfers van het Deze wordt gegeven door 16 ^ 16 ~ 1,8 * 10 ^ 19 die uiteraard samen met 2 ^ 64 (verschillende getallen van 64 bits). Deze reeks getallen kan worden opgedeeld in vijf categorieën:

Degenen met ten minste vier decimalen (0 tot 9) tussen de 16 hexadecimale cijfers (0 t / m F) van het

Die met precies slechts drie decimalen.

Die met precies slechts twee decimale cijfers.

Die met precies alleen een decimaal cijfer.

Degenen zonder decimalen (alle tussen A en F).

Laten we eens berekenen hoeveel nummers valt in elke categorie. Als we het etiket van 16 hexadecimale cijfers van het als X1 van X16 dan kunnen we etiket de eerste vier decimalen van een bepaald aantal van de eerste categorie als Xi, xj, XK en XL. Het aantal verschillende combinaties met dit profiel wordt bepaald door het product 6 I-1 * 10 * 6j-i-1 * 10 * 6k-j-1 * 10 * 6-LK-1 * 10 * 1616-l wanneer de 6 ' s zijn afkomstig uit het aantal mogelijkheden voor een A tot F cijfers, de 10's afkomstig zijn van de mogelijkheden voor een 0 tot 9 cijfers, en de 16 komt van de mogelijkheden voor een 0 tot en met F cijfer. Nu is de totale aantallen in de eerste categorie is gegeven door de som van dit product over I, J, K, L 1 tot 16, maar met i <j <k <l. Als je wat wiskunde werk zie je dit gelijk aan het product van 104 / 6 met de sommering over i 4 tot 16 van (i-1) * (i-2) * (i-3) * 6i-4 * 16 16-i ~ 1,8 * 1019.

En het aantal gevallen in de tweede categorie wordt bepaald door de sommering over I, J, K 1 tot 16 met i <j <k van het product 6i-1 * 10 * 6j-i-1 * 10 * 6k-j -1 * 10 * 616-k waarin u kunt werken, is te zijn 16! / (3! * (16-13)!) * 103 * 13 6 = 16 * 15 * 14 / (3 * 2) * 103 * 613 = 56 * 104 * 613 ~ 7,3 * 1015. Ook voor de derde categorie hebben we de sommering over I, J 1 tot 16 met i <j van 6 i-1 * 10 * 6j-i-1 * 10 * 616-j die gelijk is aan 16! / (2! * (16-14)!) * 102 * 614 = 2 * 103 * 615 ~ 9,4 * 1014. Nogmaals, voor de vierde categorie hebben we de sommering over i van 1 tot 16 van 6i-1 * 10 * 616-i = 160 * 615 ~ 7,5 * 1013. En tot slot het bedrag van de gevallen in de vijfde categorie wordt gegeven door de van zes elementen (A tot F cijfers) in een groep van 16, dat is, 616 ~ 2,8 * 1012.

Ik hoop dat u na de berekeningen tot dit punt, het harde deel is gedaan. Nu als een bewijs dat alles goed is kan je som van het aantal gevallen in de 5 categorieën en zien gelijk aan het totaal aantal mogelijke gevallen hebben we berekend vóór. Heeft de verrichtingen met behulp van 64-bits getallen of afronding (voor praalwagens) of overloop (voor integers) fouten zullen niet toestaan dat u het exacte resultaat.

Tot nu toe hebben we berekend van het aantal mogelijke gevallen in elk van de vijf categorieën, maar we zijn geïnteresseerd in het verkrijgen van het aantal gunstige gevallen plaats. Het is heel makkelijk om de laatste uit de voormalige als dit is alleen de vaststelling van de combinatie van de vier decimale cijfers (of de vereiste hexadecimale cijfers als er geen vier decimale cijfers) van de in plaats van hen vrij. In de praktijk betekent dit dat u de 10 de in de bovenstaande formule in 1's en het vereiste bedrag van 6's in 1's als er geen vier decimalen. Dat wil zeggen, we hebben tot het verdelen van het eerste resultaat met 104, de tweede met 103 * 6, de derde met 102 * 62, het vierde door een 10 * 63 en de vijfde met 64. Dan is het aantal positieve gevallen in de vijf categorieën zijn ongeveer 1,8 * 1015, 1,2 * 1012, 2.6 * 1011, 3,5 * 1010, 2,2 * 109 respectievelijk.

Nu zijn wij in staat te krijgen wat is de voor een om een bij toeval. We hoeven alleen maar om de vijf nummers van gunstige gevallen en delen door het totale aantal mogelijke gevallen. Hiermee verkrijgen we dat de is zeer ongeveer 0.0001 of een op de tienduizend. Is het vreemd dat goed afgerond resultaat? Helemaal niet, kijk dan maar eens op de nummers we hierboven berekende. De eerste categorie overheerst door verschillende ordes van grootte van het aantal gunstige en mogelijke gevallen. Dit is vrij intuïtief als het lijkt duidelijk dat het zeer onwaarschijnlijk is niet met vier decimalen (10 kans van 16 procent cijfers) van 16 hexadecimale cijfers. We zagen eerder dat de relatie tussen het aantal mogelijke en gunstige gevallen in de eerste categorie was een deling door 10 ^ 4, dat is waar onze resultaat p = 0,0001 vandaan komt.

Ons doel voor al deze berekeningen was om uit te vinden hoeveel paren moeten we voeren een succesvolle brute kracht Nu zijn wij in staat voor de berekening van het verwachte aantal valse positieven in een eerste zoeken: het zal het aantal proeven keer de voor een willekeurige vals positieve, dat wil zeggen t * p t = 2 ^ 56, de omvang van de belangrijkste ruimte. Dit komt neer op ongeveer 7,2 * 10 ^ 12, een vrij groot aantal. Het verwachte aantal valse positieven in de tweede zoeken (beperkt tot de positieve sleutels gevonden in het eerste zoekresultaat) zal (t * p) * p, voor een derde zoekopdracht wordt ((t * p) * p) * p en enzovoort. Dus voor n zoekt het verwachte aantal valse positieven zal t * p ^ n.

We kunnen het verkrijgen van het aantal zoekopdrachten te verwachten gewoon een valse positieve van de uiting van de vergelijking t * p ^ n = 1 en voor het oplossen van n. Dus n is gelijk aan de op basis van p 1 / t, die door de eigenschappen van logaritmen zij rendementen n = log (1 / t) / log (p) ~ 4.2. Omdat we niet kunnen doen een fractionele zoeken is het handig om rond dit getal. Dus wat is het verwachte aantal valse positieven als we voeren vijf zoekopdrachten? Het is t * p ^ 5 ~ 0.0007 of ongeveer 1 op de 1400. Dus de hand van vijf paar veilig is om de ware geheime sleutel zonder valse positieven.

De


Zodra we weten dat we moeten vijf paren, hoe kunnen we ze vinden? Natuurlijk moeten we ten minste een met een bekende en vanwege de aard van de dat is het enige wat we nodig hebben. Met andere zoals IBM, wij zouden moeten vijf kaarten, maar dit is niet noodzakelijk met We hoeven alleen maar voor het lezen van de en dan veranderen de vier keer, maar het lezen van de na elke verandering.

Het is nodig om de van de te krijgen van de en de encryptie sleutel selector. Je kan een commerciële of maak er zelf een van de volgende instructies kunt u vinden op de vorige pagina en links daarin. Zodra u een zie de beschrijving van de standaard magnetische tracks om uit te vinden hoe je de van de lezen. In dat document wordt de veld in nummers 1 en 2 wordt gezegd dat vijf tekens lang, maar in feite de ware bestaat uit de laatste vier cijfers. De eerste van de vijf cijfers is de sleutel selector. Ik heb alleen gezien kaarten met een waarde van 1 in deze cijfers, die in overeenstemming is met de norm en met de geheime sleutel nooit in het gedrang komt (en dus ze hoefde niet te verhuizen naar een andere belangrijke verandering van de selector).

Ik heb een eenvoudige C-programma, getpvvkey.c, voor het uitvoeren van de Het bestaat uit een lus om te proberen alle mogelijke sleutels voor het versleutelen van de eerste TSP, indien de afgeleide overeenkomt met de werkelijke een nieuwe TSP is geprobeerd, en zo verder tot er een wanverhouding, in welk geval de sleutel is verwijderd en een nieuwe geprobeerd wordt, of de vijf afgeleide PVVs overeenkomen met de overeenkomstige werkelijke PVVs, in dat geval kunnen we veronderstellen we de geheime sleutel, maar de loop gaat over tot het uitlaten van de belangrijkste ruimte. Dit is gedaan om te verzekeren vinden we de echte sleutel, want er is een kans (hoewel zeer laag) de eerste sleutel gevonden is een vals positief.

Verwacht wordt het programma zou een zeer lange tijd tot het einde en aan het minimaliseren van de risico's van een stroomstoring, computer hangen, enz. doet controleposten in het bestand getpvvkey.dat van tijd tot tijd (de exacte tijd hangt af van de snelheid van de computer, het is ongeveer een uur voor de snelste computers nu in gebruik). Om dezelfde reden als een positieve sleutel gevonden is geschreven op het bestand getpvvkey.key. Het programma geeft alleen een bericht in het begin, de uitgangspositie genomen uit de controlepost bestand eventueel na dat er niets meer wordt weergegeven.

Het is een belangrijk punt in het programma, is het daarom van groot belang voor het optimaliseren van zijn snelheid. Ik heb getest verschillende implementaties: libdes, maakt van SSLeay, openssl, cryptlib, NSS, libgcrypt, catacomben, libtomcrypt, cryptopp, UFC-crypte. Het van de eerste vier zijn gebaseerd op dezelfde code van Eric Young en is de een die het best uitgevoerd (inclusief geoptimaliseerde C en x86 assembler-code). Dus ik koos libdes die het originele uitvoering en gecondenseerde alle relevante code in de bestanden encrypt.c (C-versie) en x86encrypt.s (x86 assembler versie). De code is enigszins gewijzigd om een aantal verbeteringen in een brute force de eerste is een vaste gemeenschappelijke steile in elk en kan daarom worden slechts een keer aan het begin. Een andere verbetering is dat ik schreef een compleet nieuwe functie SETKEY (ik noemde het nextkey) dat is optimaal voor een brute kracht lus.

Om het programma werkt, hoef je alleen maar te in de desbetreffende plaats vijf TSPs en hun PVVs en vervolgens compileren. Ik heb het getest alleen in UNIX-platforms, met behulp van de makefile Makegetpvvkey te compileren (gebruik het commando "make-f Makegetpvvkey"). Het kan compileren op andere systemen, maar je kan het nodig vast te stellen wat dingen. Zorg ervoor dat de definitie van het long64 komt overeen met een 64 bit integer. In principe is er geen afhankelijkheid van de endianness van de processor. Ik heb met succes gecompileerd en draaien op Linux Pentium-, Alpha-Tru64, Mips-Irix en Sparc-Solaris. Als je niet hebt en niet wilt installeren Linux (je weet niet wat je mist ;-) je nog steeds de keuze hebben om Linux op CD en gebruik mijn programma, zie mijn pagina Linux zonder installeren.

Zodra u het geheime als u wilt zoeken de van een willekeurige hoef je alleen maar om een soortgelijk programma (sorry ik heb het niet geschreven, ik ben te lui:) dat zou proberen alle 10 ^ 4 pins door het genereren van de bijbehorende TSP, versleutelen met de (niet langer) geheime sleutel, die de en vergelijken deze met de in de van de U krijgt een wedstrijd voor de echte Slechts een match? Vergeet niet wat we zagen, hebben wij een kans van 0.0001 dat een random overeenkomt met de We proberen 10.000 pincodes (en dus TSPs) dus we verwachten 10000 * 0,0001 = 1 vals positieve gemiddeld.

Dit is een zeer interessant resultaat, het betekent dat gemiddeld elke heeft twee geldige PIN: de en de verwachte vals positief. Ik noem het "valse" maar let op dat zolang het genereert de ware is een als geldig beschouwd als de klant een. Bovendien is er geen manier om te weten dat die, zelfs voor het ATM; alleen de klant weet. Zelfs als de valse positieve zijn niet geldig als u nog drie proeven op het ATM toch genoeg van het gemiddelde. Daarom is de we berekend aan het begin van dit document over willekeurige raden van de moet worden gecorrigeerd. Eigenlijk is het dubbele van die waarde, dat wil zeggen, het is 0,0006 of een van de meer dan 1600, nog steeds veilig laag.

Resultaten


Er is van belang voor het optimaliseren van de samenstelling van het programma en om het uit te voeren in de snelst mogelijke processor te wijten aan de lange termijn verwachte tijd. Ik vond dat de compiler optimalisatie vlag-O krijgt de betere prestaties, dacht enige verbetering wordt bereikt toevoeging van de-fomit-frame-pointer vlag op Pentium-Linux, het-spike-vlag in de Alpha-Tru64, het IPA-vlag op Mips-Irix en de snel-vlag op Sparc-Solaris. Speciale vlaggen (-DDES_PTR-DDES_RISC1-DDES_RISC2-DDES_UNROLL-DASM) voor de hebben over het algemeen voordelen. Al deze vlaggen zijn reeds getest en ik koos voor de beste combinatie voor elke processor (zie makefile), maar u kunt proberen te verfijnen andere vlaggen.

Volgens mijn test de beste prestaties wordt bereikt met de AMD Athlon 1600 MHz processor, meer dan 3,4 miljoen sleutels per seconde. Interessant krijgt betere resultaten dan de Intel Pentium IV 1800 MHz en 2000 MHz (zie de cijfers hieronder, klik op ze om te vergroten). Ik denk dat dit te wijten is aan een I / O-verzadiging, zeker cache geheugen of de dat de AMD-processor (die heeft de helft van de cache van de Pentium) of het moederbord waarin zij actief is, beheert te vermijden. In de eerste figuur hieronder ziet u dat de breken snelheid van alle processors is min of meer een lineaire relatie met de processor snelheid, behalve voor de twee Intel Pentium ik eerder al noemde. Dat is logisch, betekent dit dat voor een dubbele processor snelheid krijg je dubbele snelheid te breken, maar pas op voor verzadiging effecten, in dit geval is het beter de AMD Athlon 1600 MHz, die zal worden zelfs goedkoper dan de Intel Pentium 1800 MHz of 2000 MHz.

In de tweede figuur zien we meer in detail wat wij zouden noemen intrinsieke pauze kracht van de processor. Ik krijg deze waarde gewoon scheidslijnen de pauze snelheid van de processor snelheid, dat wil zeggen, we krijgen het nummer van sleutels geprobeerd per seconde en per MHz. Dit is een maatstaf voor de prestaties van de processor onafhankelijk van zijn snelheid. De resultaten tonen aan dat de beste processor voor deze taak is de AMD Athlon, dan komt de Alpha en zeer dicht nadat het is de Intel Pentium (behalve voor de hogere snelheid die welke zeer slecht als gevolg van de verzadiging effect). Volgende is de Mips-processor en in de laatste plaats is de Sparc. Sommige Alpha en MIPS processors liggen op bodem van schaal omdat ze vroeg releases niet inclusief toebehoren van late versies. Merk op dat ik ook de prestaties van de x86-processors voor C en assembler code als er een groot Het lijkt erop dat gcc is geen goed generator van geoptimaliseerde machine-code, maar natuurlijk weten we niet of een handmatige optimalisatie van assembler-code voor de andere processoren (Alpha, MIPS, SPARC) zou stimuleren hun resultaten in vergelijking met de native C compilers (Ik heb geen gebruik van gcc voor deze andere platforms) als het gebeurt met de x86-processor.

Update

Hier is een artikel waar deze technieken kunnen zijn gebruikt.

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

Financiële Transaction Processing

Jul 02, 2008 in bank-en EFTPoS

Ik heb sinds kort werkzaam in een van de grotere banken in
Door dit werk heb ik gekeken naar de controles en rond de van rondom de Azië-Pacific.

Ik krijg het uitvoeren van een groot veiligheidsrisico en evaluaties.
In de loop der jaren heb ik altijd beschouwd als de van de als een van de belangrijkste overwegingen.

Tot gisteren had ik nog nooit gezien een of Ik denk dat sommige gescripte gebruik van deze instrumenten kunnen zeer interessant.
De site hziggurat29.com

Veel van de andere instrumenten op deze site zijn ook heel uniek en de moeite waard een kijkje.
Grote dank aan ziggurat29 voor het verstrekken van dergelijke hulpmiddelen awesome.

Zoals veel van deze sites zijn van deze aard zijn moeilijk te vinden en vaak lijken te verdwijnen de afgelopen jaren, heb ik ervoor gekozen te worden van de van deze pagina en lokale kopieën van de bestanden.
Het is de moeite waard periodiek bezoek aan de ziggurat29 site af en toe om te zien of aanvullende instrumenten zijn geplaatst.

Een van de buitengewone-bestanden is het Atalla Module en tools. Dus ik vraag me af of en schudden in hun laarzen. Sommige hoe ik denk het niet. ;-)

--- Ziggurat29 ---

Dit zijn alle Windows command-line utilities (tenzij anders vermeld); voeren met de optie-help
te bepalen gebruik.

DUKPT decrypteren (<- de werkelijke bestand te downloaden)

Dit is een dat zal Gecodeerde Blokken die zijn verkregen via de triple Gebruikte ik dit voor het testen van de output van sommige Pad software Ik had aangemaakt, maar het is ook handig voor andere doeleinden te debuggen.

VISA PVV Calculator (<- de werkelijke
bestand te downloaden)

Dit is een dat zal berekenen en verifiëren Waarden die zijn geproduceerd met behulp van de Het heeft een heleboel hulpfuncties, zoals het controleren en vaststellen van een PAN (Luhn het creëren en het versleutelen van decoderen en winning van pincodes van versleutelde blokken, enz.

VISA CVV Calculator (<- de werkelijke bestand te downloaden)

Dit is een dat zal Compute Waarden die zijn geproduceerd met behulp van de MasterCard CVC maakt gebruik van de zodat hij zich zal inzetten voor dat ook. Het zal berekenen CVV3, iCVV, CAVV, aangezien Dit zijn slechts variaties op service-code en de
formaat van de vervaldatum. is gewoon een vergelijking van de berekende waarde met wat u hebt ontvangen, er is dus geen expliciete functie.

Atalla AKB Calculator (<- de werkelijke bestand te downloaden)

Dit is een dat beide zullen genereren en Atalla AKB cryptogrammen. U moet het leesbare MFK voor het uitvoeren van deze handelingen. Wanneer decoderen, het MAC zal ook worden gecontroleerd en worden de resultaten weergegeven.

BogoAtalla (<- de werkelijke bestand aan
download)

Dit is een Atalla (of simulator). Deze (simulatie) van de bekende Atalla Module dat wordt gebruikt door banken en processoren voor cryptografische operaties, zoals het controleren / vertalen van waarbij de transacties door verifiëren
/ CSC-nummers, en het uitvoeren van belangrijke uitwisseling procedures, is geproduceerd voor test doeleinden. Deze uitvoering is niet van de volledige HP Atalla commando ingesteld, maar de net
delen dat ik mezelf nodig. Dat gezegd zijnde, het is compleet genoeg als je de prestaties van het verwerven en / of de afgifte van functies, en zijn met behulp van meer moderne zoals en en moet doen generatie, de en de vertaling.

Dit loopt als een luisterend socket en zorgt voor de inheemse Atalla commando set. Ik heb enkele vrijheden met de fout terug waarden en zijn niet altijd voor high-fidelity er (dat wil zeggen, kunt u een andere fout antwoord van native maar zeker moeten krijgen identieke positieve
antwoorden. Sommige functies geïmplementeerd zou hier normaliter aankoopsystemen premie commando's, maar alle opdrachten uitgevoerd zijn hier beschikbaar. Voorbeelden zijn het genereren van waarden en coderen / decoderen plaintext waarden.

BogoAtalla voor Linksys (<- de werkelijke bestand te downloaden)

Dit is de Atalla voor Linux, en bouwen voor installatie op een OpenWRT systeem. Zorgt voor een echt goedkoop ($ 60 USD) / test apparaat.

Lokale bestanden

bogoatalla002
atallaakbcalc
bogoatalla_10-1_mipsel
dukptdecrypt
visacvvcalc
visapvvcalc

Technologie is altijd worden aangevochten

Jun 18, 2008 in RFID

Ik heb een heel interessant papier gemaakt door de Universiteit van Massachusetts, Laboratories en Innealta, Inc <<

Dit document heeft voornamelijk betrekking op het compromis van contact minder technologieën als de / of niet zijn uitgevoerd of de juiste oplossing heeft gebruikt een ongeschikt van en bespreekt de uitdagingen rond en met betrekking tot financiële transacties bijvoorbeeld en de naleving.

Daarnaast wordt het papier beschrijft een methode die wordt besproken in vele forums over de hele wereld en we zijn nu begonnen om te zien apparatuur wordt geproduceerd voor de / clonners te gebruiken voor schadelijke middelen.

De overkoepelende punt van dit document is gebruik te maken van een passende & die de / van de gebruiker en het doel van de (financiële of niet-financiële) <<

Het papier kan worden gevonden op http://prisms.cs.umass.edu/ ~ kevinfu / papers /

In de moderne & oplossingen nieuwere apparaten kunnen worden gebruikt die over een hoge mate van kracht en zijn derhalve in staat te voeren sterke cryptografische methoden (zoals handtekeningen) ter bescherming van de terwijl de zich voordoet.

Deze systemen vaak gebruik maken van tussen de / scanner en de / voorafgaand aan de uitvoering van de Deze methoden en zijn aanvaard en bewezen te werken binnen het traditionele

Zoals vermeld in het papier, een oplossing te slaan statische digitaal ondertekende en / of gecodeerde die zijn verstrekt aan de / wanneer bevraagd, maar deze nooit verandert van de ene naar de andere. Dit kan een kwaadwillende persoon te vangen en opnieuw inspuiten van de in de in een later stadium. Het alternatief voor de opslag van statische digitaal ondertekende en / of gecodeerde is te onderhandelen over een sleutel-uitwisseling op het moment van de waarbij de / waarde informatie wordt gecodeerd en vervolgens verzonden. Met deze methode worden de
veranderingen op elke en dus ook als een kwaadwillende persoon was om de versleutelde van een zou dit niet worden aanvaard door de als opnieuw geïnjecteerd in een later stadium.

Hoewel dit het geval is, oudere / oplossingen maken vaak gebruik van technologieën die niet geschikt zijn voor de financiële transacties en dus gemakkelijk kunnen worden gebracht en in sommige gevallen zonder medeweten van de of

Ik vind het interessant hoe sommige van deze minder veilige oplossing zijn goedgekeurd voor gebruik door het verwerven van de banken en de regelingen rond de wereld (als ze te horen) in de afgelopen jaren, waar het werd gezien dat deze oplossingen hebben gebruikt technieken of methoden stationeringsfase die kunnen worden aangetast. Deze technologieën en technieken nooit zou worden goedgekeurd binnen de Point of Sale (POS) of traditionele markten.

Er kan alleen worden aangenomen dat de noodzaak om producten op de markt snel ten koste van de goede testen, inzicht in en met de nodige aandacht aan de industrie lessen geleerd is erin geslaagd opnieuw.

Bluetooth

Mar 24, 2008 Bluetooth

Bron

Dit artikel gaat over de draadloze Voor King Harold zie Harold I van Denemarken

is een industriële specificatie voor draadloze personal area networks (pannen).

biedt een manier om verbinding te maken en informatie uit te wisselen tussen apparaten zoals persoonlijke digitale assistenten (pda's), laptops, pc's, printers en digitale camera's via een veilige, lage kosten, wereldwijd beschikbare korte afstand radio frequentie.

kunt deze apparaten met elkaar praten als ze komen in het bereik, zelfs als ze niet in dezelfde ruimte, zolang ze zich binnen 10 meter (32 voet) van elkaar.

De spec is voor het eerst ontwikkeld door Ericsson, dat later geformaliseerd door de Bluetooth Special Interest Group (SIG). De SIG werd officieel aangekondigd op 20 mei 1999. Het werd opgericht door Sony Ericsson, IBM, Intel, Toshiba en Nokia, en later het gezelschap van vele andere bedrijven als Universitair of toepasser leden.

Inhoudsopgave

* 1 Over de naam
* 2 Algemene informatie
o 2,1 Embedded
* 3 functies van versie
o 3.1 1.0 en 1.0b
o 3.2 1.1
o 3.3 1.2
o 3.4 2.0
* 4 Toekomst maakt gebruik van
* 5 betreft
* 6
* 7 Zie ook
* 8 Externe links

Over de naam

Het systeem is vernoemd naar een Deense koning Harald Blåtand (<arold Bluetooth in het Engels), koning van Denemarken en Noorwegen van 935 en 936 respectievelijk tot 940 bekend om zijn eenmaking van voorheen strijdende stammen uit Denemarken, Noorwegen en Zweden. eveneens was bedoeld de eenmaking van de verschillende technologieën zoals computers en mobiele telefoons. De fuseert de Noordse runen voor H en B.

Algemene informatie

Een typische mobiele telefoon headset

De laatste versie die momenteel beschikbaar zijn voor de consument is 2,0, maar weinig fabrikanten zijn begonnen scheepvaart producten nog niet. Apple Computer, Inc aangeboden voor de eerste producten van de ondersteuning van versie 2.0 een einde te maken aan klanten in januari 2005. De kern-chips zijn beschikbaar voor OEM's (vanaf november 2004), zodat er een toevloed van 2.0-apparaten in medio 2005. De vorige versie, die alle eerdere commerciële toestellen zijn gebaseerd, heet 1.2.

is een draadloze radio standaard primair ontworpen voor laag stroomverbruik, met een korte afstand (tot 10 meter [1]) en met een low-cost zendontvangtoestel microchip in elk apparaat.

Het kan worden gebruikt om draadloos verbinding randapparatuur zoals printers of toetsenborden van computers, of om PDA's communiceren met andere nabijgelegen PDA's of computers.

Mobiele telefoons met geïntegreerde zijn ook verkocht in grote aantallen, en in staat zijn om verbinding te maken met computers, PDA's, en met name op de handsfree-apparatuur. BMW was de eerste autofabrikant te installeren handsfree in zijn auto's, het toevoegen van het als een optie op de 3 Serie, 5-serie en X5 voertuigen. Sindsdien hebben andere fabrikanten hebben gevolgd, met tal van voertuigen, met inbegrip van de in 2004 Toyota Prius en de 2004 Lexus LS 430. De carkits kunnen gebruikers met uitgeruste mobiele telefoons om gebruik te maken van enkele van de 's, zoals het voeren van gesprekken, terwijl de zelf kan worden overgelaten in een koffer of in de boot / bijvoorbeeld.

De standaard bevat ook voor krachtigere, meer-range toestellen, geschikt voor de aanleg van draadloze LAN's.

Een de rol van "kapitein" kan communiceren met maximaal 7 apparaten spelen de rol van de "slaaf". Op een gegeven moment in de tijd, kunnen de worden overgedragen tussen de kapitein en een slaaf, maar de kapitein schakelaars snel van slaaf tot slaaf in een round-robin mode. (Gelijktijdige van de kapitein aan meerdere slaven is mogelijk, maar niet vaak gebruikt in de praktijk). Deze groepen van maximaal 8 apparaten (1 master en 7 slaven) worden piconets.

De maakt het ook mogelijk aansluiten van twee of meer piconets samen tot een scatternet, met sommige apparaten als een brug door tegelijkertijd het afspelen van de kapitein een rol in piconet en de slave in een andere rol piconet. Deze apparaten moeten nog komen, maar worden geacht te verschijnen in de komende twee jaar.

Elk apparaat kan een "onderzoek" naar andere apparaten aan te sluiten, en ieder apparaat kan worden geconfigureerd om te reageren op dit onderzoek.

Paren van apparaten kan een vertrouwde relatie door te leren (door de input van de gebruiker) een gedeelde geheim bekend als een "sleutel". Een apparaat dat de wil om te communiceren met alleen een vertrouwd apparaat kan cryptografisch verifiëren van de van het andere apparaat. Vertrouwde apparaten kunnen ook versleutelen van de die zij uitwisselen via de ether, zodat niemand kan luisteren inch

Het protocol werkt in de licentie-vrije ISM band op 2,45 GHz. Ter voorkoming van interferentie met andere protocollen die gebruik maken van de 2,45 de verdeelt de band in 79 kanalen (elk 1 MHz breed) en de veranderingen kanalen tot 1600 keer per seconde. Implementaties met versies 1.1 en 1.2 bereiken snelheden van 723,1 kbit / s. Versie 2.0 implementaties functie Enhanced Rate en daarmee bereikt 2,1 Mbit / s. Technisch versie 2.0-apparaten hebben een hoger energieverbruik, maar de drie keer sneller vermindert de effectieve vermindering van het verbruik is aan de helft van die van 1.x apparaten (uitgaande van gelijke verkeerslading).

verschilt van Wi-Fi in deze laatste biedt een hogere doorvoersnelheid en heeft betrekking op grotere afstanden, maar vergt meer dure en hoger stroomverbruik. Zij maken gebruik van hetzelfde frequentiebereik, maar verschillende multiplexing regelingen. Terwijl is een kabel vervangen voor een verscheidenheid van toepassingen, Wi-Fi is een kabel vervanging alleen voor lokaal netwerk Een samenvatting is glib dat is een draadloze USB dat Wi-Fi draadloos Ethernet.

Veel zijn beschikbaar, waarvan sommige ook een IrDA adapter.

Embedded

en-modules worden in toenemende mate ter beschikking gesteld, die worden geleverd met een ingebouwde stack en een standaard UART poort. De UART-protocol kan zo simpel zijn als de standaard AT-protocol, waardoor het apparaat worden geconfigureerd voor kabel vervanging modus. Dit betekent dat nu slechts een kwestie van uren (in plaats van weken) om de erfenis van draadloze producten die communiceren via UART poort.

Functies bij versie

1.0 en 1.0b

Versies 1.0 en 1.0b had talrijke problemen en de diverse fabrikanten hebben grote moeilijkheden bij het maken van hun producten interoperabel. 1.0 en 1.0b ook verplicht Device Adres in de handshaking proces, waardoor de anonimiteit onmogelijk op een protocol niveau, dat was een grote set-terug voor diensten gepland om te worden gebruikt in zoals consumentisme.

1.1

In versie 1.1 vele errata gevonden in de 1.0b specificaties zijn vastgesteld. Er is extra voor niet-gecodeerde kanalen.

1.2

Deze versie is acht