debitcard application with zeitcontrol basiccard
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 PresentationTRANSCRIPT
![Page 2: DebitCard Application with ZeitControl BasicCard](https://reader035.vdocuments.mx/reader035/viewer/2022062810/56815d0b550346895dcb0bf9/html5/thumbnails/2.jpg)
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](https://reader035.vdocuments.mx/reader035/viewer/2022062810/56815d0b550346895dcb0bf9/html5/thumbnails/3.jpg)
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](https://reader035.vdocuments.mx/reader035/viewer/2022062810/56815d0b550346895dcb0bf9/html5/thumbnails/4.jpg)
DebitCard Application with ZeitControl Basiccard 20/12/2005—4 Selim GULLULU 504042001
BasicCard Versions
The Card Used InThe Project
![Page 5: DebitCard Application with ZeitControl BasicCard](https://reader035.vdocuments.mx/reader035/viewer/2022062810/56815d0b550346895dcb0bf9/html5/thumbnails/5.jpg)
DebitCard Application with ZeitControl Basiccard 20/12/2005—5 Selim GULLULU 504042001
Communicating With Smart Card
![Page 6: DebitCard Application with ZeitControl BasicCard](https://reader035.vdocuments.mx/reader035/viewer/2022062810/56815d0b550346895dcb0bf9/html5/thumbnails/6.jpg)
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](https://reader035.vdocuments.mx/reader035/viewer/2022062810/56815d0b550346895dcb0bf9/html5/thumbnails/7.jpg)
DebitCard Application with ZeitControl Basiccard 20/12/2005—7 Selim GULLULU 504042001
Command Example
> Command In BasicCard:Eeprom CustomerCreditsCommand &H20 &H02 GetCustomerCredits (Credits)
Credits = CustomerCreditsEnd Command
> To call the command from PC:Const swCommandOK = &H9000Declare Command &H20 &H02 GetCustomerCredits (Credits)Status = GetCustomerCredits (Credits)If Status <> swCommandOK Then GoTo CancelTransaction
![Page 8: DebitCard Application with ZeitControl BasicCard](https://reader035.vdocuments.mx/reader035/viewer/2022062810/56815d0b550346895dcb0bf9/html5/thumbnails/8.jpg)
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](https://reader035.vdocuments.mx/reader035/viewer/2022062810/56815d0b550346895dcb0bf9/html5/thumbnails/9.jpg)
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](https://reader035.vdocuments.mx/reader035/viewer/2022062810/56815d0b550346895dcb0bf9/html5/thumbnails/10.jpg)
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](https://reader035.vdocuments.mx/reader035/viewer/2022062810/56815d0b550346895dcb0bf9/html5/thumbnails/11.jpg)
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](https://reader035.vdocuments.mx/reader035/viewer/2022062810/56815d0b550346895dcb0bf9/html5/thumbnails/12.jpg)
DebitCard Application with ZeitControl Basiccard 20/12/2005—12 Selim GULLULU 504042001
CyberMouse
![Page 13: DebitCard Application with ZeitControl BasicCard](https://reader035.vdocuments.mx/reader035/viewer/2022062810/56815d0b550346895dcb0bf9/html5/thumbnails/13.jpg)
DebitCard Application with ZeitControl Basiccard 20/12/2005—13 Selim GULLULU 504042001
Search Card Reader (1)
![Page 14: DebitCard Application with ZeitControl BasicCard](https://reader035.vdocuments.mx/reader035/viewer/2022062810/56815d0b550346895dcb0bf9/html5/thumbnails/14.jpg)
DebitCard Application with ZeitControl Basiccard 20/12/2005—14 Selim GULLULU 504042001
Search Card Reader (2)
The ComportTo be used
![Page 15: DebitCard Application with ZeitControl BasicCard](https://reader035.vdocuments.mx/reader035/viewer/2022062810/56815d0b550346895dcb0bf9/html5/thumbnails/15.jpg)
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](https://reader035.vdocuments.mx/reader035/viewer/2022062810/56815d0b550346895dcb0bf9/html5/thumbnails/16.jpg)
DebitCard Application with ZeitControl Basiccard 20/12/2005—16 Selim GULLULU 504042001
ZC BasicCard ActiveX Control Module
![Page 17: DebitCard Application with ZeitControl BasicCard](https://reader035.vdocuments.mx/reader035/viewer/2022062810/56815d0b550346895dcb0bf9/html5/thumbnails/17.jpg)
DebitCard Application with ZeitControl Basiccard 20/12/2005—17 Selim GULLULU 504042001
BasicCard VB library
![Page 18: DebitCard Application with ZeitControl BasicCard](https://reader035.vdocuments.mx/reader035/viewer/2022062810/56815d0b550346895dcb0bf9/html5/thumbnails/18.jpg)
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](https://reader035.vdocuments.mx/reader035/viewer/2022062810/56815d0b550346895dcb0bf9/html5/thumbnails/19.jpg)
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 * 4tmp = NewPIN
BasicCard.Param1 = AmountBasicCard.Param2 = tmpBasicCard.Param3 = NamePersonaliseCard = BasicCard.Transaction(&H80, &H0, 3)Err = BasicCard.LastErrSW1SW2 = BasicCard.SW1SW2
![Page 20: DebitCard Application with ZeitControl BasicCard](https://reader035.vdocuments.mx/reader035/viewer/2022062810/56815d0b550346895dcb0bf9/html5/thumbnails/20.jpg)
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 = TrueEnd Command
![Page 21: DebitCard Application with ZeitControl BasicCard](https://reader035.vdocuments.mx/reader035/viewer/2022062810/56815d0b550346895dcb0bf9/html5/thumbnails/21.jpg)
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](https://reader035.vdocuments.mx/reader035/viewer/2022062810/56815d0b550346895dcb0bf9/html5/thumbnails/22.jpg)
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](https://reader035.vdocuments.mx/reader035/viewer/2022062810/56815d0b550346895dcb0bf9/html5/thumbnails/23.jpg)
DebitCard Application with ZeitControl Basiccard 20/12/2005—23 Selim GULLULU 504042001
Demonstration (Personalisation & Food Automat)