Breaking VISA PIN

02 juli 2008 i bank-och EFTPoS

Nedan är en artikel jag hittade nyligen. Detta en av de mest omfattande beskrivningar av Value

Jag trodde jag skulle kopiera det här för min lokala referens.

Som kommentar har gjorts när det gäller grammatik som används i den ursprungliga jag har rättat några av de uppenbara fel samtidigt som det i det ursprungliga materialet.

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

--- ----

Förord
Har du någonsin undrar vad som skulle hända om du förlorar ditt och någon upptäcker det. Skulle denna person kunna ta ut kontanter från en uttagsautomat gissa, på något sätt, din Dessutom, om du var som finner någons skulle du försöka att ta och ta chansen att få lite lätta Naturligtvis är svaret på båda frågorna bör vara "nej". Detta arbete behandlar inte andra fråga är det en fråga om Härmed jag försöker besvara den första frågan.

All information som används för detta arbete är offentliga och kan hittas på Resten är en fråga om och programmering, vilket vi kan lära oss och ha lite kul. Jag avslöjar inga hemligheter. Vidare är målet (och sista med detta arbete är att visa att algoritmer är fortfarande stark nog att ge tillräcklig Vi vet alla inte den

Detta arbete analyserar en av de vanligaste algoritmer, som används av många och försöker ta reda på hur resistent är att gissa attacker. Genom att "gissa" Jag menar inte att välja en slumpmässig och försöker i en uttagsautomat. Det är väl känt att generellt vi får tre försök att ange rätt om vi inte ATM håller Som fyrsiffrigt länge det är lätt att dra slutsatsen att risken för en slumpmässig gissa är 3 / 10000 = 0,0003, det verkar tillräckligt låg för att vara säker, det betyder att du måste förlora ditt fler än tre tusen gånger ( eller förlorar mer än tretusen kort på samma gång:) tills det finns en rimlig chans att förlora

Vad jag egentligen menade med "gissa" var att bryta så att ges något du omedelbart veta tillhörande Detta dokument studier som möjligt, analysera och föreslå en metod för Slutligen ger vi ett verktyg som genomför och presentera resultaten om de uppskattade chansen att bryta systemet. Observera att så länge som andra algoritmer (andra format såsom IBM eller validering signaturer som CVC) liknar samma analys kan göras ger nästan samma resultat och slutsatser.



En av de vanligaste algoritmer är Value Kunden får en och en Encoded i är ett fyrsiffrigt nummer, kallad Denna siffra är en kryptografisk underskrift av andra med anknytning till När en användare skriver in sin ATM läser krypterar och skickar denna information till en central dator. Det en rättegång beräknas med hjälp av kund in och information med en kryptografisk Rättegången jämförs med lagras på om de matchar den centrala datorn återgår till ATM tillstånd för Se mer i detalj.

Beskrivningen av finns i två handlingar i föregående sida. Sammanfattningsvis består i av en 8 byte (64 bitar) sträng av kallas Transformed Parameter (TSP), med (DEA) i Code Book mode (ECB) med hjälp av en hemlig 64-bitars nyckel. Den härrör från produktionen av som är en 8 byte sträng. De fyra siffrorna i (från vänster till höger) motsvarar de fyra första decimalsiffror (från vänster till höger) av produktionen från då betraktas som en 16 hexadecimala tecken (16 x 4 bitar = 64 bitar) sträng. Om det inte finns några fyra decimalsiffror bland de 16 hexadecimala tecken sedan är klar fattas (från vänster till höger) utan decimal tecken och decimalizing dem med hjälp av omställning A-> 0, B-> 1, C-> 2, D -> 3, E-> 4, F-> 5. Här är ett exempel:

Produktion från 0FAB9CDEFFE7DCBA

0975

Strategin att undvika decimaliseringen av hoppa tecken tills fyra decimalsiffror finns (som råkar vara nästan alla gånger som vi kommer att se nedan) är väldigt smart eftersom man undviker en viktig snedvridning i fördelningen av siffror som har visat sig vara dödlig för andra system, även om påverkan på detta system skulle vara mycket lägre. Se också ett problem som inte gäller för

Den TSP, ses som en 16 hexadecimala tecken (64 bitar) sträng, bildas (från vänster till höger) med 11 höger siffrorna i PAN utom den sista siffran (kontrollsiffra), en siffra från 1 till 6 som väljer hemligt kryptera viktiga och slutligen de fyra siffrorna i Här är ett exempel:

PAN: 1234 5678 9012 3445
Key väljaren: 1
2468

TSP: 5678901234412468

Uppenbarligen problemet med att bryta består i att finna hemligheten kryptera viktiga för Metoden för detta är att göra en brute force-sökning av de viktigaste utrymme. Observera att detta inte är den enda metod kan man försöka hitta en svaghet i DEA har många försökt, men det gamla standarden är fortfarande allmänt använd (som nu ersatts med AES och men). Detta visar att det är robust nog för att "brute force" är den enda fungerande metoden (det finns några större attacker, men inte praktiskt i vårt fall, för en sammanfattning se LASEC memo och för smutsiga detaljer se Biham & Shamir 1990, Biham & Shamir 1991, Matsui 1993, Biham & Biryukov 1994 och Heys 2001).

Nyckeln väljaren siffra var mycket sannolikt införas för att täcka risken för en kompromiss. I detta fall de bara har att utfärda nya kort med en annan nyckel väljaren. Äldre kort kan ersättas med nya eller helt enkelt ATM kan öppet skriva en ny (motsvarande den nya nyckeln och behålla samma nästa gång kunden använder sitt För att skaka av alla användare bör uppmanas att ändra sin PIN-koder, men det skulle vara pinsamt för att förklara varför, så mycket troligt att de inte skulle göra en sådan begäran.

Förberedelser


En brute innebär att kryptera ett trippelsuperfosfat med kända använda alla möjliga kryptera nycklar och jämföra varje erhållits med den kända När en matchning hittas vi har en kandidat nyckel. Men hur många nycklar måste vi försöka? Som vi sade ovan nyckeln är 64 bitar långa, så skulle detta innebära att vi måste försöka 2 ^ 64 nycklar. Men detta är inte sant. Faktiskt bara 56 bitar är effektiva för att eftersom en bit (den minsta) av varje oktett var historiskt reserverats som en kontrollsumma för andra, i praktiken de som 8 bitar (en för varje av de 8 octets) ignoreras.

Därför nyckel utrymme består av 2 ^ 56 nycklar. Om vi försöker alla dessa knappar kommer vi hitta en och endast en match, vilket motsvarar hemliga nyckel? Absolut inte. Vi kommer att få många matchande nycklar. Detta beror på att är bara en liten del (en fjärdedel) av produktion. Dessutom är degenererat, eftersom några av de siffror (mellan 0 och 5 efter det att den sista, sett från vänster till höger, siffror mellan 6 och 9) kan komma från en decimal siffra eller från en decimalized hexadecimala siffran i produktion. Alltså många nycklar kommer att producera en produktion vilket innebär att samma matchande

Vad kan vi göra för att hitta den verkliga nyckeln bland de andra falska positiva nycklarna? Bara vi har för att kryptera ett andra olika TSP, även känd men endast med de sökande nycklar som gav en positiv matchning med första par. Men det finns ingen garanti att vi inte kommer att få igen många falska positiva med den verkliga nyckeln. Om så är fallet kommer vi att behöva ett tredje par, upprepa processen och så vidare.

Innan vi börjar vår måste vi veta hur många par kommer vi att behöva. För att vi har för att beräkna för en slumpmässig produktion ge en matchning bara av en slump. Det finns flera sätt att beräkna antalet och här kommer jag att använda en enkel metod lätt att förstå, men som kräver lite bakgrundsinformation i av

En alltid kan ses som förhållandet mellan god fall att eventuella fall. I vårt problem antalet möjliga fall fås genom av 16 delar (0 till F hexadecimala siffror) i en grupp av 16 av dem (16 hexadecimala siffror i output). Detta ges av 16 ^ 16 ~ 1,8 * 10 ^ 19 vilket naturligtvis sammanfaller med 2 ^ 64 (olika nummer av 64 bitar). Denna uppsättning siffror kan delas in i fem kategorier:

De som har minst fyra decimala siffror (0 till 9) bland de 16 hexadecimala siffror (0 till F) av produktion.

De som har exakt tre decimaler.

Personer med exakt två decimaler.

De som har just bara en decimal siffra.

De som inte decimalsiffror (alla mellan A och F).

Låt oss räkna hur många siffror faller inom varje kategori. Om vi märka 16 hexadecimala siffror i produktion som X1 att X16 kan vi märka första fyra decimalsiffror av ett visst antal av den första kategorin som Xi, XJ, XK och XL. Antalet olika kombinationer med den här profilen ges av produkten 6 i-1 * 10 * 6j-i-1 * 10 * 6k-j-1 * 10 * 6 lk-1 * 10 * 1616-l när 6 " har kommit från flera olika möjligheter för en A till F siffran, den 10: s kommer från möjligheterna till en 0-9-siffrigt och 16 kommer från möjligheterna till ett 0-F siffran. Nu är det totala antalet i den första kategorin är helt enkelt som summering av denna produkt under I, J, K, L 1-16, men med i <j <k <l. Om du gör några matematiska arbete kommer du att se detta är lika med produkten av 104 / 6 med summering över i 4-16 (i-1) * (i-2) * (i-3) * 6i-4 * 16 16-i ~ 1.8 * 1019.

Analogt antalet fall i den andra kategorin återfinns genom summering över i, j, k 1-16 med i <j <k av produkten 6i-1 * 10 * 6j-i-1 * 10 * 6k-j -1 * 10 * 616-k som du kan arbeta ut att vara 16! / (3! * (16-13)!) * 103 * 6 13 = 16 * 15 * 14 / (3 * 2) * 103 * 613 = 56 * 104 * 613 ~ 7.3 * 1015. Likaså för den tredje kategorin vi summering över i, j 1-16 med i <j av 6 i-1 * 10 * 6j-i-1 * 10 * 616-j som motsvarar 16! / (2! * (16-14)!) * 102 * 614 = 2 * 103 * 615 ~ 9.4 * 1014. Återigen, för fjärde kategori har vi summering över i 1-16 i 6i-1 * 10 * 616-i = 160 * 615 ~ 7.5 * 1013. Och slutligen den mängd ärenden i femte kategori ges av av sex delar (A till F siffror) i en grupp av 16, det vill säga 616 ~ 2.8 * 1012.

Jag hoppas att ni följt beräkningar upp till denna punkt, det svåra är gjort. Nu som ett bevis på att allt är rätt kan du summan av antalet fall i 5 kategorier och ser det lika med totala antalet möjliga fall vi beräknat innan. Har verksamheten använder 64 bitars nummer eller avrundning (för flottar) eller överloppsrännor (för heltal) fel att inte låta dig få ut det exakta resultatet.

Hittills har vi beräknat antalet möjliga fall i något av de fem kategorier, men vi är intresserade av att få antalet gynnsamma fall istället. Det är mycket lätt att dra dem från den tidigare så detta är bara om fastställande av en kombination av de fyra decimalsiffror (eller krävs hexadecimala siffror om det inte finns fyra decimaler) i i stället för att låta dem fritt. I praktiken innebär detta att vrida 10's i formeln ovan i 1 och det erforderliga beloppet på 6 är i 1: s om det inte finns fyra decimaler. Det vill säga, vi måste dela upp det första resultatet av 104, den andra en av 103 * 6, den tredje en av 102 * 62, den fjärde en av 10 * 63 och den femte en med 64. Då antalet gynnsamma fall i fem kategorier är cirka 1,8 * 1015, 1,2 * 1012, 2,6 * 1011, 3,5 * 1010, 2,2 * 109 respektive.

Nu kan vi uppnå vad är för en produktionen för att matcha en slump. Vi måste bara lägga till fem nummer i god fall och dividera det med antalet möjliga fall. Att göra detta vi får att är mycket ca 0,0001 eller en av tio tusen. Är det konstigt detta väl avrundade resultatet? Inte alls, bara ta en titt på de siffror som vi beräknat ovan. Den första kategorin dominerar flera tiopotenser antalet god och eventuella fall. Det är ganska intuitivt som det verkar tydligt att det är mycket osannolikt att inte ha fyra decimalsiffror (10 chanser av 16 per siffra) bland 16 hexadecimala siffror. Vi såg tidigare att förhållandet mellan antalet möjliga och gynnsamma fall i den första kategorin var en division med 10 ^ 4, det är där våra resultat p = 0,0001 kommer.

Målet för alla dessa beräkningar var att ta reda på hur många par vi behöver för att genomföra en framgångsrik brute Nu kan vi beräkna det förväntade antalet falska positiva resultat i en första sökning: det blir antalet försök gånger för en enda slumpmässigt falskt positiva, dvs t * p där t = 2 ^ 56, storleken av de viktigaste rymden. Detta uppgår till cirka 7,2 * 10 ^ 12, ett ganska stort antal. Det förväntade antalet falska positiva resultat i andra sök (begränsad till den positiva nycklar hittas i första sökning) kommer att bli (t * p) * p, för en tredje sök är ((t * p) * p) * p och så vidare. Således för n sökningar det förväntade antalet falska positiva resultat kommer att t * p ^ n.

Vi kan få hur många sökningar som krävs för att vänta bara ett falskt positivt med att uttrycka ekvationen t * p ^ n = 1 och lösa för n. Så n motsvarar i basen p 1 / t, som på grund av egenskaper hos logaritmer den avkastning n = log (1 / t) / log (p) ~ 4.2. Eftersom vi inte kan göra en fraktionerad sökadressen det är brukligt att runda upp det här numret. Därför vad som är det förväntade antalet falska positiva om vi utföra fem sökningar? Det är t * p ^ 5 ~ 0,0007 eller ca 1 av 1400. Därför använder fem par är säkert att få det riktigt hemlig nyckel med några falska positiva.


När vi vet att vi behöver fem par, hur får vi dem? Naturligtvis behöver vi minst ett med kända och beroende på vilken typ av det är det enda vi behöver. Med andra såsom IBM, skulle vi behöva fem kort, men det är inte nödvändigt med Vi måste bara läsa och sedan ändra gånger, men behandlingen efter varje förändring.

Det är nödvändigt att läsa för att få och kryptera viktiga väljaren. Du kan köpa en eller göra en själv efter instruktioner hittar du på föregående sida och länkar där. När du har en se denna beskrivning av standarden magnetiska spår för att ta reda på hur du får ut det från läsa. I detta dokument område spår 1 och 2 sägs vara fem tecken långa, men faktiskt sant består av de fyra sista siffrorna. Den första av de fem siffrorna är nyckeln väljaren. Jag har bara sett kort med ett värde av 1 i den här siffran, som överensstämmer med standarden och med hemlig nyckel aldrig äventyras (och därmed de inte behöver flytta till en annan nyckel förändras väljaren).

Jag gjorde ett enkelt C-program, getpvvkey.c för att utföra Den består av en slinga för att prova alla möjliga nycklar för att kryptera första TSP, om de härrör matchar sant en ny TSP har försökt, och så vidare tills det finns en obalans, då nyckeln kasseras och en ny prövas, eller fem härrör PVVs matchar motsvarande sant PVVs, då kan vi förmoda vi fick hemlig nyckel, men slingan går vidare tills det avgassystem nyckeln utrymme. Detta görs för att försäkra att vi hittar den verkliga nyckeln eftersom det inte finns en chans (om än mycket liten) den första nyckeln hittades en falsk positiv.

Det förväntas programmet skulle ta mycket lång tid att slutföra och att minimera riskerna för strömavbrott, dator umgås osv det kontrollstationer i filen getpvvkey.dat från tid till annan (exakt tid beror på hur snabbt på datorn, det är ungefär en timme för den snabbaste datorer nu är i bruk). Av samma skäl om en positiv nyckeln hittades den är skriven på filen getpvvkey.key. Programmet visar ett meddelande i början, men utgångsläget tas från gränskontrollkuren ärende om någon, efter det inget mer visas.

är en viktig punkt i programmet är det därför mycket viktigt att optimera sin hastighet. Jag har testat flera utföranden: libdes, SSLeay, OpenSSL, cryptlib, NSS, libgcrypt, katakomb, libtomcrypt, cryptopp, UFC-crypt. hos de fyra första är baserade på samma kod av Eric Young och är den som ger bäst resultat (inkluderar optimerade C och x86 assembler kod). Därför valde jag libdes som var det ursprungliga genomförande och kondenserad all relevant kod i filer encrypt.c (C version) och x86encrypt.s (x86 assembler version). Koden är något modifierad för att uppnå vissa förbättringar i en brute den ursprungliga är en fast gemensamma brant i varje trippelsuperfosfat och kan därför bli bara en gång i början. En annan förbättring är att jag skrev ett helt nytt setkey funktion (jag kallade det nextkey) som är optimalt för en "brute force" loop.

För att få programmet arbetar du bara i motsvarande plats fem TSPs och deras PVVs och sedan sammanställa det. Jag har testat den endast i UNIX-plattformar, med Makefile Makegetpvvkey att sammanställa (använd kommandot "make-f Makegetpvvkey"). Det kan sammanställa på andra system, men du kanske måste fixa några saker. Var noga med att definitionen av den long64 motsvarar en 64-bitars heltal. I princip finns det inget beroende av endianness av processorn. Jag har nu sammanställts och sedan köra det på Pentium-Linux, Alpha-Tru64, Mips-IRIX och Sparc-Solaris. Om du inte har och inte vill installera Linux (som du inte vet vad du saknar ;-) du fortfarande har valet att köra Linux på cd och använda mitt program, se min sida att köra Linux utan att installera det.

När du har hittat den hemliga viktigaste om du vill hitta den av ett godtyckligt du bara måste skriva ett liknande program (ledsen att jag inte har skrivit, jag är för lat:) som skulle prova alla 10 ^ 4 PIN genom att generera motsvarande TSP, kryptera den med den (inte längre) hemlig nyckel, som de och jämföra det med i Du kommer att få en match för det sanna Endast en match? Kom ihåg vad vi såg ovan, vi har en chans att 0,0001 att ett slumpmässigt matchar Vi försöker 10000 PINS (och därför TSPs), vilket vi förväntar oss 10000 * 0,0001 = 1 falskt positiva i genomsnitt.

Detta är ett mycket intressant resultat, innebär det att i genomsnitt varje har två giltiga PINS: kundens och förväntas falskt positiva. Jag kallar den "falska", men konstaterar att så länge det genererar verkliga är en lika giltig som kundens en. Dessutom finns det inget sätt att veta vilket som, även för ATM, bara kunden vet. Även om de falska positiva var inte som du fortfarande har tre försök på ATM ändå, räcker i genomsnitt. Därför vi beräknat i början av detta dokument om slumpmässigt gissa av måste rättas till. Egentligen är det dubbelt så mycket värde, dvs det är 0,0006 eller en av mer än 1600, ändå säkert låg.

Resultat


Det är viktigt att optimera sammanställning av programmet och köra det på snabbast möjliga processor på grund av den långa förväntade körtiden. Jag tyckte att kompilatorn optimeringsförslag flagg-O får bättre resultat, trodde att en viss förbättring uppnås lägger till-fomit-frame-pointer flagga på Pentium-Linux,-spike flagga på Alfa-Tru64, de IPA flagga på Mips-IRIX och de snabba flaggan på Sparc-Solaris. Särskilda flaggor (-DDES_PTR-DDES_RISC1-DDES_RISC2-DDES_UNROLL-DASM) för kod i allmänhet har fördelar också. Alla dessa flaggor redan testats och jag valde den bästa kombinationen för varje processor (se Makefile) men du kan försöka finjustera andra flaggor.

Enligt mina tester de bästa resultaten uppnås med AMD Athlon 1600 MHz-processor, som överstiger 3,4 miljoner nycklar per sekund. Intressant blir det bättre resultat än Intel Pentium IV 1800 MHz och 2000 MHz (se tabellen nedan, klicka på dem för större bild). Jag tror att detta beror på att vissa I / O-mättnad, säkert cache eller att AMD-processor (som har en halv cache av Pentium) eller moderkortet där det körs, lyckas undvika. I den första figuren nedan kan du se att bryta hastighet av alla processorer har mer eller mindre ett linjärt samband med bearbetningsföretagets hastighet, med undantag för de två Intel Pentium jag nämnde innan. Detta är logiskt, det innebär att för en dubbel processor hastighet du får dubbla bryta hastighet, men akta dig för mättnad effekter, i detta fall är det bättre att AMD Athlon 1600 MHz, vilket kommer att bli ännu billigare än Intel Pentium 1800 MHz eller 2000 MHz.

I den andra siffran vi kan se mer i detalj vad vi skulle kalla inneboende bryta strömmen till processorn. Jag får detta värde helt enkelt att dividera bryta hastighet som processorn hastighet, det vill säga vi får antalet nycklar försökte per sekund och per MHz. Detta är ett mått på prestanda bearbetningsföretaget oberoende av hastighet. Resultaten visar att den bästa processor för denna uppgift är det AMD Athlon, därefter kommer Alfa och mycket nära efter det är det Intel Pentium (med undantag för högre hastighet de som utför mycket dålig på grund av mättnad effekt). Nästa är Mips-processorer och i det sista stället är det Sparc. Vissa Alpha och Mips-processorer finns på botten av skalan eftersom de tidiga utgåvor inte inklusive tillbehör sen versioner. Observera att jag ingår resultatet för x86-processorer för C och assembler kod, eftersom det finns en stor Det verkar som gcc är ingen bra generator för optimerad maskinkod, men vi naturligtvis inte vet om en manuell optimering av assembler kod för andra processorer (Alpha, Mips, Sparc) skulle öka sina resultat jämfört med det ursprungliga C-kompilatorer (Jag använde inte gcc för dessa andra plattformar) som händer med x86-processor.

Uppdatera

Här är en artikel om dessa tekniker kan ha använts.

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

Finansiella transaktioner

02 juli 2008 i bank-och EFTPoS

Jag har nyligen arbetar inom ett av de större bankerna i
Genom detta arbete har jag tittar på de kontroller och kring av över hela Asien.

Jag fyller många och bedömningar.
Under åren har jag alltid ansett att som en av de viktigaste överväganden.

Fram till i går hade jag aldrig sett en Jag tror att vissa skript använda dessa verktyg kan vara mycket intressant.
Webbplatsen hziggurat29.com

Många av de andra verktyg på denna webbplats är också mycket unikt och värt en titt.
Stort tack till ziggurat29 för att de så fantastiskt verktyg.

Eftersom många av dessa områden är av detta slag är svåra att hitta och ofta verkar försvinna med åren har jag valt att kopiera från denna sida och ge lokala kopior på filerna.
Det är värt att regelbundet besöka ziggurat29 plats då och då för att se om något ytterligare verktyg har lagts upp.

En av de mer extraordinära filer är Atalla och verktyg. Så jag undrar om och är att skaka i sina stövlar. Vissa så jag tror inte det. ;-)

--- Ziggurat29 ---

Dessa är alla Windows command-line tjänster (utom i de fall då noterat), utföra med hjälp alternativet
att fastställa användningen.

DUKPT Minskas (<- det faktiska fil att ladda ner)

Detta är ett som kommer att krypterade block som har producerats via Jag använde denna för att testa produktionen av vissa Pad program jag hade skapat, men det är också praktiskt för andra debugging syften.

VISA PVV Kalkylator (<- det faktiska
fil att ladda ner)

Detta är ett som kommer att beräkna och kontrollera Värden som har producerats med hjälp av Det har ett gäng Hjälpfunktioner, såsom kontroll och fastställande av ett PAN (Luhn att skapa och kryptera block, dekryptering och utvinna PIN från krypterat block, etc.

VISA CVV Kalkylator (<- det faktiska fil att ladda ner)

Detta är ett som kommer att beräkna Värden som har producerats med hjälp av MasterCard CVC använder så det kommer att arbeta för det också. Det kommer att beräkna CVV3, iCVV, CAVV, eftersom Dessa är bara variationer på service nummer och
Formatet på utgångsdatum. är helt enkelt att jämföra det beräknade värdet med vad du har fått, så det finns ingen tydlig funktion.

Atalla AKB Kalkylator (<- det faktiska fil att ladda ner)

Detta är ett som både kommer att generera och Atalla AKB cryptograms. Du behöver vanlig MFK att utföra dessa operationer. När dekrypteringsprogram, MAC kommer också att kontrolleras och resultaten visas.

BogoAtalla (<- den faktiska filen till
ladda ner)

Detta är en Atalla (eller simulator). Programvaran (simulering) av det välkända Atalla som används av banker och processorer för kryptografisk verksamhet, såsom att kontrollera / översätta block, bemyndigande transaktioner av kontrollera
/ CSC siffror och utför viktiga utbyte förfaranden, producerades för provningsändamål. Detta genomförs inte av den fullständiga HP Atalla kommandot set, utan snarare bara
portioner som jag själv behövde. Med detta sagt, det är fullständigt tillräckligt om du utför förvärva och / eller utfärdande och använder modernare system såsom och och behöver göra generering, och översättning.

Detta löper som en lyssnande socket och behandlar de infödda Atalla kommandot set. Jag har tagit del friheter med felet returvärden och har inte strävat efter high fidelity det (dvs du kan få ett annat fel svar från infödda men definitivt bör få samma positiva
svar. Vissa funktioner genomföras här normalt skulle kräva inköp premiumkategorin kommandon, men alla kommandon här genomföras finns tillgängliga. Exempel på detta är att generera värderingar och kryptera / dekryptera vanlig värden.

BogoAtalla för Linksys (<- det faktiska fil att ladda ner)

Detta är Atalla porterade till Linux och bygga för installation på ett OpenWRT systemet. Leder till ett riktigt billigt ($ 60 USD) / test enheten.

Lokalt Filer

bogoatalla002
atallaakbcalc
bogoatalla_10-1_mipsel
dukptdecrypt
visacvvcalc
visapvvcalc

Teknik är alltid ifrågasätts

18 juni 2008 i RFID

Jag läste en mycket intressant papper skapades av University of Massachusetts, Laboratories och Innealta, Inc. <<

Detta dokument främst rör kompromissen i kontakt mindre om och / eller inte har genomförts korrekt eller lösningen har använts ett olämpligt av och diskuterar de utmaningar runt och med avseende på finansiella transaktioner t.ex. och efterlevnad.

Dessutom uppsatsen beskriver en metod som diskuteras inom många forum runt om i världen och vi har nu börjat se utrustning produceras för / clonners ska användas för skadliga medel.

Det övergripande punkt med detta dokument är att använda en lämplig & lösningar som stöder / och syftet med (ekonomiska eller icke-finansiella) <<

Dokumentet finns på http://prisms.cs.umass.edu/ ~ kevinfu / papers /

In modern & solutions, newer devices can be used which possess a high degree of power and are therefore able to execute strong cryptographic methods (such as signatures) to protect the and information whilst the is occurring.

These systems often utilise between the / scanner and the tag/ prior to performing the . These methods and are accepted and proven to work within the traditional markets.

As mentioned in the paper, some solution store static digitally signed and/or encrypted which is provided to the / when queried, but this never changes from one to another. This may allow a malicious individual to capture and re-inject the into the at a later stage. The alternative to storing static digitally signed and/or encrypted is to negotiate a key exchange at the time of the in which the /value information is encrypted and subsequently transmitted. With this method the transmitted
changes on every and therefore even if a malicious individual was to capture the encrypted from one , this would not be accepted by the if re-injected at a later stage.

Although this is the case today, older / solutions often use technologies which are not appropriate for financial transactions and therefore may be compromised easily and in some cases without the knowledge of the holder, or .

I find this interesting how some of these less secure solution have been approved for use by acquiring banks and the schemes around the world (if they were told) in recent years, where it has been seen that these solutions have utilised techniques or deployment methods which can be compromised. These technologies and techniques would never be approved within the Point of Sale (PoS) or traditional markets.

It can only be assumed that the need to get product to market quickly at the expense of proper testing, understanding and with due consideration to industry lessons learnt has succeeded again.

Bluetooth

Mar 24, 2008 in Bluetooth

Source

This article is about the wireless specification. For King Harold , see Harold I of Denmark

is an industrial specification for wireless personal area networks (PANs).

provides a way to connect and exchange information between devices like personal digital assistants (PDAs), , laptops , PCs , printers and digital cameras via a secure, low-cost, globally available short range radio frequency .

lets these devices talk to each other when they come in range, even if they’re not in the same room, as long as they are within 10 metres (32 feet ) of each other.

The spec was first developed by Ericsson , later formalised by the Bluetooth Special Interest Group (SIG). The SIG was formally announced on May 20 , 1999 . It was established by Sony Ericsson , IBM , Intel , Toshiba and Nokia , and later joined by many other companies as Associate or Adopter members.

Table of contents

* 1 About the name
* 2 General information
o 2.1 Embedded
* 3 Features by version
o 3.1 1.0 and 1.0B
o 3.2 1.1
o 3.3 1.2
o 3.4 2.0
* 4 Future uses
* 5 concerns
* 6 profiles
* 7 See also
* 8 External links

About the name

The system is named after a Danish king Harald Blåtand (< arold Bluetooth in English), King of Denmark and Norway from 935 and 936 respectively, to 940 known for his unification of previously warring tribes from Denmark, Norway and Sweden . likewise was intended to unify different technologies like computers and mobile phones . The logo merges the Nordic runes for H and B.

General information

A typical mobile phone headset

The latest version currently available to consumers is 2.0, but few manufacturers have started shipping any products yet. Apple Computer, Inc. offered the first products supporting version 2.0 to end customers in January 2005. The core chips have been available to OEMs (from November 2004 ), so there will be an influx of 2.0 devices in mid-2005. The previous version, on which all earlier commercial devices are based, is called 1.2.

is a wireless radio standard primarily designed for low power consumption, with a short range (up to 10 meters [1] , ) and with a low-cost transceiver microchip in each device.

It can be used to wirelessly connect peripherals like printers or keyboards to computers, or to have PDAs communicate with other nearby PDAs or computers.

Cell phones with integrated have also been sold in large numbers, and are able to connect to computers, PDAs and, specifically, to handsfree devices. BMW was the first motor vehicle manufacturer to install handsfree in its cars, adding it as an option on its 3 Series , 5 Series and X5 vehicles. Since then, other manufacturers have followed suit, with many vehicles, including the 2004 Toyota Prius and the 2004 Lexus LS 430. The car kits allow users with -equipped cell phones to make use of some of the ’s features, such as making calls, while the itself can be left in a suitcase or in the boot/ , for instance.

The standard also includes for more powerful, longer-range devices suitable for constructing wireless LANs .

A device playing the role of “master” can communicate with up to 7 devices playing the role of “slave”. At any given instant in time, can be transferred between the master and one slave; but the master switches rapidly from slave to slave in a round-robin fashion. (Simultaneous from the master to multiple slaves is possible, but not used much in practice). These groups of up to 8 devices (1 master and 7 slaves) are called piconets .

The specification also allows connecting two or more piconets together to form a scatternet , with some devices acting as a bridge by simultaneously playing the master role in one piconet and the slave role in another piconet. These devices have yet to come, though are supposed to appear within the next two years.

Any device may perform an “inquiry” to find other devices to which to connect, and any device can be configured to respond to such inquiries.

Pairs of devices may establish a trusted relationship by learning (by user input) a shared secret known as a “passkey”. A device that wants to communicate only with a trusted device can cryptographically authenticate the of the other device. Trusted devices may also encrypt the that they exchange over the air so that no one can listen in.

The protocol operates in the license-free ISM band at 2.45 GHz . In order to avoid interfering with other protocols which use the 2.45 band, the protocol divides the band into 79 channels (each 1 MHz wide) and changes channels up to 1600 times per second. Implementations with versions 1.1 and 1.2 reach speeds of 723.1 kbit /s. Version 2.0 implementations feature Enhanced Rate ( ) , and thus reach 2.1 Mbit /s. Technically version 2.0 devices have a higher power consumption, but the three times faster rate reduces the times, effectively reducing consumption to half that of 1.x devices (assuming equal traffic load).

differs from Wi-Fi in that the latter provides higher throughput and covers greater distances but requires more expensive and higher power consumption. They use the same frequency range , but employ different multiplexing schemes. While is a cable replacement for a variety of applications, Wi-Fi is a cable replacement only for local area network . A glib summary is that is wireless USB whereas Wi-Fi is wireless Ethernet .

Many adapters are available, some of which also include an IrDA adapter.

Embedded

devices and modules are increasingly being made available which come with an embedded stack and a standard UART port. The UART protocol can be as simple as the industry standard AT protocol, which allows the device to be configured to cable replacement mode. This means it now only takes a matter of hours (instead of weeks) to enable legacy wireless products that communicate via UART port.

Features by version

1.0 and 1.0B

Versions 1.0 and 1.0B had numerous problems and the various manufacturers had great difficulties in making their products interoperable. 1.0 and 1.0B also had mandatory Device Address (BD_ADDR) in the handshaking process, rendering anonymity impossible at a protocol level, which was a major set-back for services planned to be used in environments, such as Consumerism.

1.1

In version 1.1 many errata found in the 1.0B specifications were fixed. There was added for non-encrypted channels.

1.2

This version is backwards compatible with 1.1 and the major enhancements include

  • Adaptive Hopping (AFH) , which improves resistance to interference by avoiding using crowded frequencies in the hopping sequence
  • Higher speeds in practice
  • extended Synchronous Connections (eSCO) , which improves voice quality of audio links by allowing retransmissions of corrupted packets.
  • Received Signal Strength Indicator (RSSI)
  • Host Controller ( ) for 3-wire UART
  • to timing information for applications.

2.0

This version is backwards compatible with 1.x and the major enhancements include

  • Non-hopping narrowband channel(s) introduced. These are faster but have been criticised as defeating a built-in mechanism of earlier versions; however hopping is hardly a reliable mechanism by today’s . Rather, is based mostly on cryptography.
  • /