SmartCard laboration. William Sandqvist

Relevanta dokument
Laborera med SmartCard

Din manual NOKIA C111

NYHET - SÄKERHET - TRYGGHET

RAHAXI Hypercom T4220. Bruksanvisning

Självtest för kassaintegratörer

Krypteringteknologier. Sidorna ( ) i boken

Systemkonstruktion SERIEKOMMUNIKATION

Allmän uppfattning om kreditkortsäkerhet

Manual för kortterminalen. Hypercom M4230

Besöksadress:Svetsarvägen 17, KARIS

Spectracard web report. Spectracard Web Report

Spectracard Web Report

INGENJÖRSHÖGSKOLAN INGENJÖRSHÖGSKOLAN

Programmera i teknik - kreativa projekt med Arduino

Manual för kortterminalen. Hypercom T4220

Grundläggande datavetenskap, 4p

1. Utställa/aktivera onecard

Rutiner för hantering avsiths-kort. Vård- och omsorgsförvaltningen

Hur ofta tar du ut i bankomat i veckan? Vanligtvis tar man ut från bankomat 2-3ggr i veckan. Även vid kortköp plockas pengar ut.

Vop handledning. Användarhandledning till Vop applikationen. UPPGJORD: Mattias Gyllsdorff GODKÄND:Mattias Gyllsdorff REV: A DATUM:

RAHAXI Hypercom T2100

Enkla steg-för-steg guider. Användarguide. Nordeas Mobilbank

ARTEMA DESK MED PINPAD MCU 5900

Säkra protokoll och procedurer

SITHS-VPN Fjärranslutning

Läs detta! Uppgifterna är inte avsiktligt ordnade efter svårighetsgrad. Skriv ditt idnummer på varje blad (så att vi inte slarvar bort dem).

Recap Mera om nya typer Kort Fält. Programmering. Sommarkurs Verónica Gaspes. IDE-sektionen.

General Purpose registers ALU I T H S V N Z C SREG. Antag att vi behöver skriva in talet 25 till register R18

Manual: Hantering av Frisörföretagarnas Elektroniska Presentkort

Att använda pekare i. C-kod

Framtiden & Säkerhet. Säkerhet och trygghet för Bank 2.0 kunder. Logica All rights reserved

Kryptering HEMLIG SKRIFT SUBSTITUTION STEGANOGRAFI KRYPTOGRAFI

Dyna Pass. Wireless Secure Access

Digitala Projekt(EITF40) - Larm

Spekulativ exekvering i CPU pipelining

Tentamen PC-teknik 5 p

Introduktion till programmering

Installationsinstruktion med rekommenderade inställningar Extern Uppkoppling med SITHS-Kort mot Landstinget Västmanland

Vem är vem på kursen. Objektorienterad programvaruutveckling GU (DIT011) Kursbok Cay Horstmann: Big Java 3rd edition.

Lathund för BankID säkerhetsprogram

I den här manualen finner du information om TechPay betalterminal som hanterar betalning med bankkort.

E-legitimationer. Jonas Wiman. LKDATA Linköpings Kommun.

Datorteknik 1 (AVR 1)

Kom igång med Swish i kassan!

Hämta SITHS-certifikat till Telia e-leg och logga in till Telia SITHS Admin med SITHS-certifikat

LABORATION PIC-PROGRAMMERARE

Kretskortslayout TU-3

Snabbinstruktion för biljettförsäljning ombord på Stadstrafiken i Uppsala

EITF40 - RFID-terminal. Joakim Marculescu (dt08jm6), Eric Johansson (dt08ej6)

Handbok för användare. HCC Administration

Installationsanvisning och snabbguide för Vx510, fleranvändare!

Tentamen EDAF30 Programmering i C++

Programmeringsteknik med C och Matlab

Support Manual HoistLocatel Electronic Locks

TOWA AX-100. Kassaregister. Användarhandledning

Krav på säker autentisering över öppna nät

Spire SPm20 Användarmanual

Chapter 4: Writing Classes/ Att skriva egna klasser.

Handbok för kortbetalningar med Babs Paylink/Point

Lathund. Bankkort Business i Internetbanken Företag

Installationsanvisning och snabbguide för Vx familjen!

Utvecklingen från en 8 bitars till en 16 bitars mikroprocessor

AdmiPro Deposition/Lojalitet

Autentisering och Code-Based Access Control

Information om säkerheten i de svenska bankernas nya chipkort

Labb i Datorsystemteknik och programvaruteknik Programmering av kalkylator i Visual Basic

Datorprojekt, del 1. Digitala system 15 p

Testa ditt SITHS-kort

ASSA 3000 CODE Manual. ASSA ABLOY, the global leader in door opening solutions.

MESI i Intel Core 2 Duo

Användarmanual. Att arbeta med Cubicle 2.0

Föreläsning 10. Pekare (Pointers)

Installationsanvisning och snabbguide för Vx familjen!

KALKYLATOR LABORATION4. Laborationens syfte

MSR Gjutarevägen Stenkullen

Din guide till IP RFID. Intertex Nu ännu starkare säkerhet för SIP. Snom - marknadens säkraste IP-telefon. Ur innehållet TALK TELECOM

Innehållsförteckning. Logga in med etjänstekort i Infektionsregistret 3. Installation av kortläsare till e-tjänstekort 3

Bruksanvisning M-ANY PreMium MP3 Art I kartongen: Fjärrkontroll, hörlurar, batterier, USB-kabel, Audiokabel, väska, halssnodd, CD-Rom.

Innehållsförteckning. Figur- och tabellförteckning. Figure 1 Blockschema över hårdvaran...4 Figure 2 Blockschema över programet...

Quick Start Guide Snabbguide

Ditt nya smarta etjänstekort!

eid Support Version

Flödesschema som visar hur man använder Quartus II.

TandD trådlösa loggers med RTR-57U terminal.

Föreläsningsanteckningar till Konstruktionsmetoder

William Sandqvist

Manual för WMR- 252 inbyggnadsmottagare med universaldimmer

Verifiering av MIFARE slinga på SITHS-kort

Uppstart av OS med resp. utan krypering

Tentamen PC-teknik 5 p Lösningar och kommentarer

Micro:bit. Börja skapa egna program

Enchipsdatorer med tillämpningar LABORATION 7, ROBOT

Vx 510. Användarhandbok

Vad finns i paketet. Detta bör finnas i paketet: Ett trådlöst modem, E5 Ett batteri Denna manual samt säkerhetsinformation En USB-kabel En nätadapter

JavaScript del 5 Funktioner

Guide: Programmera Ryze Tello

Grupp 6 Kognitionsergonomi Användbarhet av uttagsautomater

LARMANLÄGGNING. Digitala Projekt, EITF11. Oskar von Knorring Emin Karimov Henrik Akej Handledare: Bertil Lindvall

IE1206 Inbyggd Elektronik

Transkript:

SmartCard laboration

Två processorer SmartCardet innehåller en processor av typen 16F84A. Den processorn saknar både inbyggd oscillator och seriekommunikationsenhet. Seriekommunikationen är därför programmerad med BitBanging, och kortet använder en yttre oscillatorkrets. På kopplingsdäcket sitter en processor av typen 16F690. Den har inbyggd oscillator och inbyggd seriekommunikationsenhet.

Programmera SmartCardet Programmera SmartCardet med PICKit2-programmet

Kommunikationscentral På kopplingsdäcket har vi byggt en kommunikationscentral ( De två dioderna bildar en diodgrind ). För att underlätta felsökning i programmen kan nu all kommunikation mellan PIC-processorn och SmartCardprocessorn övervakas med PICKit2 UART Tool. Om kortet inte säger något, kan Du fylla i det den skulle ha sagt från PC:ns tangentbord ( man in the middle ).

Kommunikationscentralen SmartCard Lås och Nyckel

Att programmera två processorer Du kommer att omväxlande använda PICKit2 för SmartCardet och Skolprocessorn 16F690. Viktigt. Varje gång Du byter anslutningen till den andra processorn skall Du använda Tools Check Communication så att PICKit2 vet vilken processor som är ansluten. Det är jobbigt att omväxlande programmera två processorer! ( Det är ändå jobbigare att programmera 64 processorer! ) FPGA-kort på avdelning ES. Totalt 64 st 32-bitsprocessorer. PUUH!

Lås och nyckel Programmen: smrtlock.hex och smartkey.hex När Du stoppar in SmartCardet i hållaren så frågar kopplingsdäcket: Who is it? SmartCardet svarar: Me please open! Och eftersom detta är rätt svar så öppnar processorn på kopplingsdäcket låset (= lysdioden tänds). När SmartCardet dras ut, stängs låset.

I Banken behövs krypterad kommunikation Kommunikationen mellan tex ett bankkort och en bankomat, är slumpmässigt olika varje gång så att den inte bara kan avlyssnas och spelas in. Ett SmartCard innehåller ett extra minne för krypteringsnyckel och annan information. Det minnet kan bara nås via processorn, ej direkt från någon kontakt. I Bankkortet är processorn Lässkyddad så även programmet är hemligt.

Hur en PIC-processor kan beräkna pseudoslumptal PIC-processorn är dålig på multiplikation och division. Ett sätt att beräkna pseudoslumptal utan mul/div är att använda rotations-instruktionen. Tex. kan PIC-processorn rotera 16 bitar (2 8). I figuren sker "avtappning" från bit 0, 2, 3, och 5. De avtappade bitarna kombineras med EXOR operationer och roteras tillbaka genom Carry-biten. Just denna "avtappning" ger en maximalt lång talsekvens som upprepas först efter 65535 ggr. ( Om alla bitarna är 0 så stannar slumptalssekvensen, så det är denna kombination som måste undvikas! )

Ex. PIC-funktion /* Random number function */ char rand( void ) { /* 0x0000 won't run... */ bit EXOR_out; static char rand_hi, rand_lo; if(!rand_hi &&!rand_lo ) rand_lo = 0x01; EXOR_out = rand_lo.0; EXOR_out ^= rand_lo.2; EXOR_out ^= rand_lo.3; EXOR_out ^= rand_lo.5; Carry = EXOR_out; /* rotate right */ rand_hi = rr( rand_hi); rand_lo = rr( rand_lo); Linear feedback shift registers return rand_lo; }

Så här ser de första 700 8-bitstalen ut char rand( void ); 100 190 223 239 247 251 253 254 255 127 191 223 111 183 219 109

Bankernas Chip and PIN -teknologi Vid ansikte mot ansikte transaktioner: Chip anger vilket/vems kort det är som används ( för att undvika förfalskade kort ) PIN anger att det är kortägaren som använder kortet ( för att förhindra användning av stulna kort ) Wikipedia SmartCard

Ett nyupptäckt säkerhetsproblem? Chip and PIN is broken, 2010 IEEE Symposium on Security and Privacy. Steven Murdoch, Saar Drimer, Ross Anderson, Mike Bond Stulet kort (med manipulerad kortkontakt). Ingen PIN-kod behövs! Chip and PIN broken

En Man in the middle attack Enter PIN Transaction begins Man in the middle PIN correct = 0x9000 1234

En Man in the middle attack Transaction begins

En Man in the middle attack Transaction begins Man in the middle

En Man in the middle attack Enter PIN Transaction begins Man in the middle

En Man in the middle attack Enter PIN Transaction begins 1234 Man in the middle

En Man in the middle attack Enter PIN Transaction begins Man in the middle PIN correct = 0x9000 1234

En Man in the middle attack I got no numbers? So verifying without PIN Man in the middle PIN correct = 0x9000 Enter PIN Transaction begins 1234

En Man in the middle attack I got no numbers? So verifying without PIN I had PIN confirmed Complete the transaction Man in the middle PIN correct = 0x9000 Enter PIN Transaction begins 1234

En Man in the middle attack I got no numbers? So verifying without PIN I had PIN confirmed Complete the transaction Enter PIN Transaction begins 1234 Man in the middle PIN correct = 0x9000 Protokollet är för komplicerat. Kortet och kortläsaren kan tro olika om vilken verifieringsmetod som använts! Det är detta som utnyttjas! Standarden tillåter att verifieringen sker på annat sätt än med PIN till exempel med legitimation och underskrift på kvittot eller utan PIN vid mindre belopp. Det finns också kort utan PIN (tex för personer med handikappet att inte kunna komma ihåg ett PIN)

Transaktionsprotokoll Card authentication och Transaction authorization sker genom utväxlande av kryptogram, men vad hjälper det när Cardholder verification består av ett enkelt klartextmeddelande som går att manipulera!

Hur stort är problemet? Om ett köp signerats med en PIN-kod anser bankerna att Du är ansvarig för köpet. Dom anser att Du varit oaktsam med koden om någon annan har utfört köpet. Detta resonemang håller inte längre! Kommer bankerna att behöva betala ersättning? Problemet gäller butikernas handterminaler, inte bankomater där är det banken som verifierar PIN-numret, inte kortet. Men kanske är det tillräckligt allvarligt att det gäller upp till 730 miljoner kort när de används i affärernas betalningsterminaler?

Var köper man SmartCard? Ett svenskt företag i Mölndal som säljer oprogrammerade SmartCard för tex. elektroniska dörrlås med SmartCard (till hotell, stugbyar mm) är: Hansa-electronic