debitcard application with zeitcontrol basiccard

23
DebitCard Application with ZeitControl BasicCard Selim GULLULU 504042001 selim.gullulu@alcatel .com.tr

Upload: keefe

Post on 05-Feb-2016

21 views

Category:

Documents


0 download

DESCRIPTION

DebitCard Application with ZeitControl BasicCard. Selim GULLULU 504042001 [email protected]. Contents. Memory Card vs. Smart Card (ZC BasicCard) BC Versions + Environment&Programming Hardware & Software Definitions Demonstration - Card Personalisation - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: DebitCard Application with ZeitControl BasicCard

DebitCard Application with ZeitControl BasicCard

Selim GULLULU [email protected]

Page 2: DebitCard Application with ZeitControl BasicCard

DebitCard Application with ZeitControl Basiccard 20/12/2005—2 Selim GULLULU 504042001

Contents

> Memory Card vs. Smart Card (ZC BasicCard)

> BC Versions + Environment&Programming

> Hardware & Software Definitions

> Demonstration - Card Personalisation

> Demonstration – Food Automat

Page 3: DebitCard Application with ZeitControl BasicCard

DebitCard Application with ZeitControl Basiccard 20/12/2005—3 Selim GULLULU 504042001

Memory Card vs. Smart Card (ZC BasicCard)

> Memory Cards:EEPROM Storage Only

> ZC BasicCard : Microcontroller with RAM (for operation), ROM (for holding BasicCard OS) and EEPROM for holding your data and your program

> ZC BasicCard : The program executed by the microcontroller has access to the data stored in EEPROM, so the program decides which data is exchanged with the outer world

Page 4: DebitCard Application with ZeitControl BasicCard

DebitCard Application with ZeitControl Basiccard 20/12/2005—4 Selim GULLULU 504042001

BasicCard Versions

The Card Used In

The Project

Page 5: DebitCard Application with ZeitControl BasicCard

DebitCard Application with ZeitControl Basiccard 20/12/2005—5 Selim GULLULU 504042001

Communicating With Smart Card

Page 6: DebitCard Application with ZeitControl BasicCard

DebitCard Application with ZeitControl Basiccard 20/12/2005—6 Selim GULLULU 504042001

BasicCard Environment & Programming

> No Keyboard or Screen ?

> Talks to outside world with bi-directional I/O Contact at 9600 bps or more (ISO/IEC standards 7816-3

and 7816-4)

> Define a command in the card and program it like an ordinary Basic procedure

> Call the command from a ZC-Basic program running on the PC

> Two-byte ID for each defined command (ISO/IEC 7816-4: CLA and INS for CLAss and INStruction

Page 7: DebitCard Application with ZeitControl BasicCard

DebitCard Application with ZeitControl Basiccard 20/12/2005—7 Selim GULLULU 504042001

Command Example

> Command In BasicCard:

Eeprom CustomerCredits

Command &H20 &H02 GetCustomerCredits (Credits)

Credits = CustomerCredits

End Command

> To call the command from PC:

Const swCommandOK = &H9000

Declare Command &H20 &H02 GetCustomerCredits (Credits)

Status = GetCustomerCredits (Credits)

If Status <> swCommandOK Then GoTo CancelTransaction

Page 8: DebitCard Application with ZeitControl BasicCard

DebitCard Application with ZeitControl Basiccard 20/12/2005—8 Selim GULLULU 504042001

Defining EEPROM Variables

> Eeprom Balance As Long

> Eeprom MasterPIN As String*6 = "123456“

> ...

Page 9: DebitCard Application with ZeitControl BasicCard

DebitCard Application with ZeitControl Basiccard 20/12/2005—9 Selim GULLULU 504042001

Technical Summary Of BasicCard(s)

All BasicCard families (Compact,Enhanced,Pro,Multiapp)

> A full implementation of the T=1 block-level communications protocol defined in ISO/IEC 7816-3: Electronic signals and transmission protocols;

> A command dispatcher built around the structures defined in ISO/IEC 7816-4 (CLA INS P1 P2 [LcIDATA] [Le]

> Built-in commands for the execution of ZeitControl’s P-code

> Code for the automatic encyrption and decyption of commands and responses,using AES, DES,or SG-LFSR symmetric-key algorithm

Page 10: DebitCard Application with ZeitControl BasicCard

DebitCard Application with ZeitControl Basiccard 20/12/2005—10 Selim GULLULU 504042001

Technical Summary Of BasicCard(s) (Continued)

Enhanced BasicCards contain all of the above,plus:

> A directory-based, dos-like file system

> IEEE-compatible floating-point arithmetic

Page 11: DebitCard Application with ZeitControl BasicCard

DebitCard Application with ZeitControl Basiccard 20/12/2005—11 Selim GULLULU 504042001

Card Readers

> Whenever you access a BasicCard or a Card Reader from a ZC-Basic Terminal Program, ZeitControl’s P-Code Interpreter uses the current value of the ComPort variable to determines where to look for the Card Reader.

> A ZC-Basic program compiled into an executable file accepts the following values for the ComPort:

1 <= ComPort <= 4: Physical Card Reader on serial port COM1-COM4

Page 12: DebitCard Application with ZeitControl BasicCard

DebitCard Application with ZeitControl Basiccard 20/12/2005—12 Selim GULLULU 504042001

CyberMouse

Page 13: DebitCard Application with ZeitControl BasicCard

DebitCard Application with ZeitControl Basiccard 20/12/2005—13 Selim GULLULU 504042001

Search Card Reader (1)

Page 14: DebitCard Application with ZeitControl BasicCard

DebitCard Application with ZeitControl Basiccard 20/12/2005—14 Selim GULLULU 504042001

Search Card Reader (2)

The Comport

To be used

Page 15: DebitCard Application with ZeitControl BasicCard

DebitCard Application with ZeitControl Basiccard 20/12/2005—15 Selim GULLULU 504042001

Search Card Reader (3)

Use “API select Default Reader” for Windows XP

Page 16: DebitCard Application with ZeitControl BasicCard

DebitCard Application with ZeitControl Basiccard 20/12/2005—16 Selim GULLULU 504042001

ZC BasicCard ActiveX Control Module

Page 17: DebitCard Application with ZeitControl BasicCard

DebitCard Application with ZeitControl Basiccard 20/12/2005—17 Selim GULLULU 504042001

BasicCard VB library

Page 18: DebitCard Application with ZeitControl BasicCard

DebitCard Application with ZeitControl Basiccard 20/12/2005—18 Selim GULLULU 504042001

Command Definitions Ex. – Set Values (in PC)

Private Sub SetValues_Click()

Dim PIN As String * 4

Dim tmp As Long

PIN = PIN1.Text

ErrorMsg.Panels(1).Text = "Verifing..."

DoEvents

MyCard.Err = MyCard.IssuerEncrypt(Key, DesKey)

If MyCard.Err = 0 Then

tmp = Balance.Text * 100

MyCard.Err = MyCard.PersonaliseCard(tmp, PIN, ClientName.Text)

End If

If MyCard.Err = 0 Then

ErrorMsg.Panels(1).Text = "Personalization successful."

Else

ErrorMsg.Panels(1).Text = DebitErrors(0)

End If

MyCard.EndEncryption

MyCard.ReleaseCard

End Sub

Page 19: DebitCard Application with ZeitControl BasicCard

DebitCard Application with ZeitControl Basiccard 20/12/2005—19 Selim GULLULU 504042001

Command Definitions Ex – Set Values (Cont’d) (in PC)

Public Function PersonaliseCard(Amount As Long, _

NewPIN As String, Name As String)

Dim tmp As String * 4

tmp = NewPIN

BasicCard.Param1 = Amount

BasicCard.Param2 = tmp

BasicCard.Param3 = Name

PersonaliseCard = BasicCard.Transaction(&H80, &H0, 3)

Err = BasicCard.LastErr

SW1SW2 = BasicCard.SW1SW2

Page 20: DebitCard Application with ZeitControl BasicCard

DebitCard Application with ZeitControl Basiccard 20/12/2005—20 Selim GULLULU 504042001

Command Definitions Ex. – Set Values (Cont’d) ( BC)

Command &H80 &H00 PersonaliseCard (Amount As Long, NewPIN As String*4, Name$)

Call CheckAlgorithm()

If GetKeyNumber@() <> 0 Then SW1SW2 = swIssuingKeyRequired : Exit

Personalised = False

Balance = Amount

CustomerName$ = Name$

PIN = NewPIN Personalised = True

End Command

Page 21: DebitCard Application with ZeitControl BasicCard

DebitCard Application with ZeitControl Basiccard 20/12/2005—21 Selim GULLULU 504042001

Compiling the ZCBasic Code

Here, the card type we used is selected.

The code that we want to compile

Page 22: DebitCard Application with ZeitControl BasicCard

DebitCard Application with ZeitControl Basiccard 20/12/2005—22 Selim GULLULU 504042001

Downloading The Code To BasicCard

The Com Port taht we attached the reader (Search card Reader)

Page 23: DebitCard Application with ZeitControl BasicCard

DebitCard Application with ZeitControl Basiccard 20/12/2005—23 Selim GULLULU 504042001

Demonstration (Personalisation & Food Automat)