SlideShare une entreprise Scribd logo
1  sur  18
Télécharger pour lire hors ligne
SMART-CARD

              Smart-




!"#$% 18




 2001
;          <
 ?DDKO C$>FGHD# "$CHMI!# $L!"?D!H QFD>T!O (% "#!PH @NK>? ), %U$C@V!U %
C!D?G!AH">! N?EMFI?HGFW J!JP!$#H>F cdserv.dll.
  M!%$C!#"@ DH$JU$C!G?@ "LM?%$AD?@ !DQ$MG?T!@, "%HCHD!@ $ %$NG$IDKU $S!J>?U,
%$ND!>?WV!U LM! M?J$#H QFD>T!O J!JP!$#H>!.




DSSSCT                   File : cdserv.doc                    Ref : CDSERVPG0000                 Revision:2.0          2 / 18
                                      Copyright © Dekart S.R.L (www.dekart.com) - 2001
                This document shall not be disclosed to a third party without prior written consent of Dekart S.R.L.
    !>?>?@ A?"#B C?DD$E$ C$>FGHD#? DH G$IH# JK#B %$"LM$!N%HCHD? % >?>$O JK #$ D! JKP$ Q$MGH ! >?>!G! JK, #$ D! JKP$
                           "MHC"#%?G! JHN L!"BGHDD$E$ M?NMHSHD!@ %P?CHPBT? ?%#$M">!U LM?%.
                                              9 :                                    .
EP?%PHD!H


1.     ?@        ABCDCEAF A G9DCHBI@ CJCKB;L@BAF (EDC99; AN)..................................... 4
     1.1                    ........................................................................................................................................... 4
     1.2                        Y Z                     ............................................................................................................... 4
     1.3                                       Z           ]                        ................................................................................. 4
     1.4       ^                        .............................................................................................................................. 5
2.     B;KB;L@BA@ JAJDAC?@QA CDSERV.DLL .............................................................................. 6

3.     CJTA@ 9H@U@BAF ........................................................................................................................... 6

3.     C A9;BA@ VGBQWAN JAJDAC?@QA CDSERV.DLL ............................................................ 7
     3.1.     VGBQWAF CDSERVINI ..................................................................................................................... 7
     3.2.     VGBQWAF CDOPENCARD ............................................................................................................... 8
     3.3.     VGBQWAF CDGETPURSEDATA ....................................................................................................... 8
     3.4.     VGBQWAF CDCHANGEDATES ......................................................................................................... 9
     3.5.     VGBQWAF CDUPDATEMAXAMOUNT............................................................................................ 10
     3.6.     VGBQWAF CDSERVCLOSE ............................................................................................................. 10
4.          ADCb@BAF................................................................................................................................... 10
     4.1.     9CCJT@BAF CJ CcAJQ;d........................................................................................................... 10
     4.2.       A @ HIKCH; VGBQWAN CUGDF AK                 CE ;           I (BORLAND C++ V.5.01) ....................... 15




DSSSCT                           File : cdserv.doc                                      Ref : CDSERVPG0000                               Revision:2.0                       3 / 18
                                         Copyright © Dekart S.R.L (www.dekart.com) - 2001
                   This document shall not be disclosed to a third party without prior written consent of Dekart S.R.L.
       !>?>?@ A?"#B C?DD$E$ C$>FGHD#? DH G$IH# JK#B %$"LM$!N%HCHD? % >?>$O JK #$ D! JKP$ Q$MGH ! >?>!G! JK, #$ D! JKP$
                              "MHC"#%?G! JHN L!"BGHDD$E$ M?NMHSHD!@ %P?CHPBT? ?%#$M">!U LM?%.
                                                 9 :                                    .
1. ?                                        :                           (E                g)
1.1 9
9G       –    !"#HG? FAH#? L$#MHJPHD!@ MH"FM"$% ! JHND?P!ADKU M?"AH#$% "
!"L$PBN$%?D!HG smart->?M# (D?N%?D!H "!"#HGK).
Payflex - D#HPPH>#F?PBD?@ (smart) >?M#? Q!MGK Schlumberger, >$#$M?@ L$P$IHD? %
$"D$%F "!"#HG JHND?P!ADKU M?"AH#$%, M?NM?J?#K%?HGKU >$GL?D!HO Dekart S.R.L.
SCR-60, Reflex 60, Reflex 72 (Schlumberger), TOWITOKO ChipDrive - "A!#K%?#HP!
smart->?M#, !"L$PBNFWV!H"@ % $#CHPBDKU #HUD$P$E!AH">!U N%HDB@U           . ?J$#?W#
#$PB>$ "$%GH"#D$ " >$GLBW#HM$G, ! FLM?%P@W#"@ LM$EM?GGDKG $JH"LHAHD!HG,
M?J$#?WVHG D? >$GLBW#HMH.
r          - $ME?D!N?T!@, %KL$PD@WV?@ LHM"$D?P!N?T!W >?M# CHMI?#HPHO, %HCFV?@
J?NK >?M#-"AH#$% CHMI?#HPHO ! $JM?J?#K%?WV?@ LP?#gIDKH #M?DN?>T!!.
  W - LM$TH""!DE$%KO THD#M. $CM?NCHPHD!H (FA?"#D!>) "!"#HGK, % N?C?A! >$#$M$E$
%U$C!# $J"PFI!%?D!H #HMG!D?PBD$E$ L$P@, "J$M #M?DN?>T!O $# #HMG!D?P$%, !U
"$M#!M$%>F ! M?""KP>F hG!#HD#?G.
W9 – THD#M "!"#HGK.                ME?D!N?T!@, N?D!G?WV?@"@ LMHC%?M!#HPBD$O
LHM"$D?P!N?T!HO >?M# CHMI?#HPHO ! !U LHMHC?AHO hG!#HD#?G (FA?"#D!>?G "!"#HGK).
W9Q - THD#M "HM#!Q!>?T!! >PWAHO (Certificate authority).                ME?D!N?T!@,
$JH"LHA!%?WV?@ "HM#!Q!>?T!W >PWAHO FA?"#D!>$% "!"#HGK.
       !"# .              QFD>T!! THD#M? "!"#HGK ! THD#M? "HM#!Q!>?T!! >PWAHO
%KL$PD@H# $CD? $ME?D!N?T!@.
U                 : - Q!N!AH">$H P!T$, !"L$PBNFWVHH >?M#F % >?AH"#%H LP?#gID$E$
!D"#MFGHD#? LM! $LP?#H #$%?M? !P! F"PFE!.
                    < – F"P$%D?@ #$%?M$-CHDHID?@ HC!D!T? (MFJP!, PH!, C$PP?MK,
P!#MK, > #·A. ! #.C.), !"L$PBNFHG?@ %      % >?AH"#%H "MHC"#%? LP?#HI?.

1.2 9          :s t
DES (Data Encryption Standard) - #?DC?M# S!QM$%?D!@ C?DDKU. !GGH#M!AD?@
"!"#HG? S!QM$%?D!@ " CP!D$O >PWA? ! S!QMFHG$E$ JP$>? C?DDKU 64 J!#?.
nQQH>#!%D?@ CP!D? >PWA? D? "?G$G CHPH M?%D? 56 ($C!D J!# >?IC$E$ J?O#?
!"L$PBNFH#"@ % >?AH"#%H >$D#M$PBD$E$).
RSA - "!"#HG? S!QM$%?D!@ D? $"D$%H $#>MK#KU >PWAHO. M!GHD@H#"@ % "!"#HGH CP@
"#?#!AH">$O ?F#HD#!Q!>?T!! >?M# CHMI?#HPHO.
SHS (Secure Hash Standard) - #?DC?M# D? UHS-QFD>T!W. #?DC?M# $LMHCHP@H#
?PE$M!#G Secure Hash Algorithm (SHA-1), >$#$MKO G$IH# !"L$PBN$%?#B"@ CP@
"$NC?D!@ ""I?#$E$" LMHC"#?%PHD!@ DH>$#$M$O L$"PHC$%?#HPBD$"#!.          ?>$H
LMHC"#?%PHD!H D$"!# D?N%?D!H $"%$& '(" )*'+ $*,"( +-#*'( .

1.3 Q     :        :     t      <            u
SAM (Secure Application Module) – "LHT!?PBD?@ >?M#?, >$#$M?@ $JH"LHA!%?H#
JHN$L?"D$"#B LM! $LHM?T!@U CHJH#$%?D!@ ! >MHC!#$%?D!@.
Q               (!P! >?M#? LHM"$D?PBDKU >PWAHO) – "LHT!?PBD?@ >?M#?, >$#$M?@
LMHCD?ND?AHD? CP@ N?V!VHDD$E$ UM?DHD!@ >PWA? (>PWAHO) C$"#FL? $#%H#"#%HDDKU
P!T "!"#HGK. ?M#? C$"#FL? LM!D?CPHI!# >$D>MH#D$GF $#%H#"#%HDD$GF P!TF
"!"#HGK ! N?V!VHD? HE$ LHM"$D?PBDKG !CHD#!Q!>?T!$DDKG D$GHM$G (PIN->$C$G).
9    g :g              : - DH!NGHD@HG?@, FD!>?PBD?@ CP@ >?IC$O >?M#K C%$!AD?@
L$"PHC$%?#HPBD$"#B CP!D$O 8 J?O#, N?L!"K%?HG?@ D? >?M#F N?%$C$G !NE$#$%!#HPHG.
DSSSCT                  File : cdserv.doc                    Ref : CDSERVPG0000                 Revision:2.0          4 / 18
                                     Copyright © Dekart S.R.L (www.dekart.com) - 2001
               This document shall not be disclosed to a third party without prior written consent of Dekart S.R.L.
   !>?>?@ A?"#B C?DD$E$ C$>FGHD#? DH G$IH# JK#B %$"LM$!N%HCHD? % >?>$O JK #$ D! JKP$ Q$MGH ! >?>!G! JK, #$ D! JKP$
                          "MHC"#%?G! JHN L!"BGHDD$E$ M?NMHSHD!@ %P?CHPBT? ?%#$M">!U LM?%.
                                             9 :                                    .
BIN (Bank Identification Number) – !CHD#!Q!>?T!$DDKO D$GHM hG!#HD#? (8 T!QM),
"$"#?%PHDDKO % "$$#%H#"#%!! "$ "#?DC?M#$G ISO.
PIN (Personal Identification Number) – LHM"$D?PBDKO !CHD#!Q!>?T!$DDKO D$GHM
L$PBN$%?#HP@ ($# 4 C$ 8 CH"@#!ADKU T!QM). P?CHPHT >?M#K $J@N?D CHMI?#B "%$O PIN
- >$C % "H>MH#H.
PAN (Primary Account Number) – D$GHM >?M#K (19 T!QM), LHM%KH 8 T!QM >$#$M$E$
"$$#%H#"#%FW# BIN.
ID (Identifier) – !CHD#!Q!>?#$M (8 T!QM), $LMHCHP@WV!O !GHD? Q?OP$%, % >$#$MKU
N?L!"K%?W#"@ RSA >PWA! LM$TH""!DE$%$E$ THD#M? ! hG!#HD#?, N?LM$" D?
"HM#!Q!>?T!W ! "HM#!Q!>?#, ? #?>IH PAN->$CK hG!#HD#?. $%L?C?H# " BIN.

1.4 Q v              :
Q v                – %DF#MHDD!H >PWA!, >$#$MKH UM?D@#"@ D? >?M#H C$"#FL? !
LM!GHD@W#"@ CP@ «$#>MK#!@» M?NP!ADKU #HUD$P$E!AH">!U LM!P$IHD!O "!"#HGK,
LM!AHG % J$PBS!D"#%H "PFA?H% $D! "PFI?# CP@ ?>#!%!N?T!! CMFE!U ("H>MH#DKU)
>PWAHO "!"#HGK.
U        t     <        v       -   "M?"LKPHD!H"    >PWA?.    "L$PBNFH#"@   CP@
!DC!%!CF?P!N?T!! %DF#MHDD!U >PWAHO >?M# CHMI?#HPHO.
            v - "H>MH#DKO >PWA "!GGH#M!AD$O "!"#HGK S!QM$%?D!@, !"L$PBNFHGKO
% "!"#HGH CP@ C!%HM"!Q!>?T!! >PWAHO >?M# CHMI?#HPHO.
         - $#>MK#?@ A?"#B >PWA? "!"#HGK S!QM$%?D!@ RSA.
r             - $#>MK#?@ A?"#B >PWA? RSA. $IH# JK#B M?%D$O 3 P!J$ AH#%gM#$GF
A!"PF ZHMG? (Fermat 4 = 2^2^4+1 = 65537).         h>"L$DHD#? M?%D? 3.
9     t          - C%$!AD?@ L$"PHC$%?#HPBD$"#B, L$PFA?HG?@ "LHT!?PBDKG!
>M!L#$EM?Q!AH">!G! GH#$C?G! ! "PFI?V?@ CP@ LM$%HM>! C$"#$%HMD$"#! DH>$#$M$O
L$"PHC$%?#HPBD$"#! C?DDKU.
9      g                          - L$"PHC$%?#HPBD$"#B C%$!ADKU C?DDKU, >$#$M?@
"$NC?g#"@ "LHT!?PBDKG! GHU?D!NG?G! % >?M#?U ! #HMG!D?P?U CP@ G$C!Q!>?T!!
"$$JVHD!O " THPBW !DC!%!CF?P!N?T!! LM$#$>$P? $JGHD? $# $CD$E$ "H?D"? > CMFE$GF




DSSSCT                  File : cdserv.doc                    Ref : CDSERVPG0000                 Revision:2.0          5 / 18
                                     Copyright © Dekart S.R.L (www.dekart.com) - 2001
               This document shall not be disclosed to a third party without prior written consent of Dekart S.R.L.
   !>?>?@ A?"#B C?DD$E$ C$>FGHD#? DH G$IH# JK#B %$"LM$!N%HCHD? % >?>$O JK #$ D! JKP$ Q$MGH ! >?>!G! JK, #$ D! JKP$
                          "MHC"#%?G! JHN L!"BGHDD$E$ M?NMHSHD!@ %P?CHPBT? ?%#$M">!U LM?%.
                                             9 :                                    .
2. B                                         cdserv.dll
        $CFPB cdserv.dll LMHCD?ND?AHD CP@ $J"PFI!%?D!@ >?M#K L$PBN$%?#HP@
(L$PFAHD!@ !DQ$MG?T!! $ >?M#H ! !NGHDHD!@ M@C? L?M?GH#M$% - L$#$P>? >$SHPB>$%,
"M$>? CHO"#%!@ >?M#K).

                                                           !


3. C w
  !D?G!AH">! N?EMFI?HG?@ J!JP!$#H>? cdserv.dll %>PWA?H# % "HJ@ "PHCFWV!H
QFD>T!!:
 • CDservIni – !D!T!?P!N?T!@ LM$TH""?;
 • CDOpenCard – $#>MK#!H >?M#K L$PBN$%?#HP@ " $CD$%MHGHDDKG LM$%HCHD!HG
 ?F#HD#!Q!>?T!! ! A#HD!HG C?DDKU " >?M#K;
 • CDGetPurseData – A#HD!H L$PD$O !DQ$MG?T!! $ >$SHPB>?U >?M#K L$PBN$%?#HP@;
 • CDUpdateMaxAmount – !NGHDHD!H L$#$P>? >$SHPB>? >?M#K L$PBN$%?#HP@;
 • CDChangeDates – !NGHDHD!H "M$>? CHO"#%!@ >?M#K;
 • CDservClose – N?%HMSHD!H LM$TH""?.
  M!GHA?D!H. ?J$#? " G$CFPHG C$PID? D?A!D?#B"@ %KN$%$G QFD>T!! CDservIni !
N?%HMS?#B"@ %KN$%$G QFD>T!! CDservClose.

ZFD>T!!, %U$C@V!H % G$CFPB cdserv.dll, MH?P!N$%?DK D? @NK>?U LM$EM?GG!M$%?D!@
 , C++.

 H$JU$C!G$H $J$MFC$%?D!H:
• $GLBW#HM IBM PC (486 ! %KSH), !GHWV!O "%$J$CDKH L$"PHC$%?#HPBDKH
   L$M#K;
• Smart->?M#K: >?M#? C$"#FL? hG!#HD#?, >?M#? L$PBN$%?#HP@;
• A!#K%?#HPB smart->?M# $CD$E$ !N "PHCFWV!U #!L$%: SCR-60, Reflex 60, Reflex 72
  (Schlumberger), TOWITOKO ChipDrive.

  H$JU$C!G$H LM$EM?GGD$H $JH"LHAHD!H:
•    LHM?T!$DD?@ "!"#HG? MS Windows 9x, NT;
• CT API CP@ "A!#K%?#HPHO TOWITOKO ChipDrive ! Schlumberger Reflex 72;
• Z?OP >PWAHO hG!#HD#? ID_hG!#HD#?.se3 (#MH#B@ EMFLL?);
• Z?OP "HM#!Q!>?#? $#>MK#$E$ >PWA? ID_hG!#HD#?.crt.

  "#?D$%>? G$CFP@ cdserv.dll $"FVH"#%P@H#"@ LM$"#KG HE$ >$L!M$%?D!HG %
"$$#%H#"#%FWV!O >?#?P$E (SYSTEM, SYSTEM32) "!"#HGK Windows.




DSSSCT                  File : cdserv.doc                      Ref : CDSERVPG0000               Revision:2.0          6 / 18
                                     Copyright © Dekart S.R.L (www.dekart.com) - 2001
               This document shall not be disclosed to a third party without prior written consent of Dekart S.R.L.
   !>?>?@ A?"#B C?DD$E$ C$>FGHD#? DH G$IH# JK#B %$"LM$!N%HCHD? % >?>$O JK #$ D! JKP$ Q$MGH ! >?>!G! JK, #$ D! JKP$
                          "MHC"#%?G! JHN L!"BGHDD$E$ M?NMHSHD!@ %P?CHPBT? ?%#$M">!U LM?%.
                                             9 :                                    .
3. C                t        < g                          cdserv.dll
   3.1. V       <      CDservIni

."/,"# :   CDservIni
."/#"! # : ZFD>T!@ $JH"LHA!%?H# !D!T!?P!N?T!W LM$TH""? $J"PFI!%?D!@ >?M#K
           L$PBN$%?#HP@.
0'+*, 1 )   # # 1:
             H$JU$C!G$ D?P!A!H >?M#K C$"#FL? hG!#HD#?, Q?OP? " #MH#BHO
           EMFLL$O >PWAHO hG!#HD#? ! Q?OP? " "HM#!Q!>?#$G $#>MK#$E$ >PWA?
           hG!#HD#?.
3 #("4' ': #include "CDserv.h"
           int CDservIni (char *Port, short ReaderType,
                          char *Iss_KeyFile, char *PIN,
                          char *Iss_ID, char *CRTfile, char *IccNo)
56*$#7 $"##7 :
           Port – F>?N?#HPB D? "#M$>F "$CHMI?VFW !G@ >$GGFD!>?T!$DD$E$ L$M#?
           (D?LM!GHM, COM1, COM2, COM3, COM4).
           ReaderType – THP$H A!"P$, F>?NK%?WVHH #!L "A!#K%?#HP@.
             $CCHMI!%?W#"@ 4 #!L? "A!#K%?#HPHO:

                         ˆ L.L.              M$!N%$C!#HPB / ?N%?D!H                        ReaderType
                           1                  Schlumberger / SCR 60                            0
                           2                 Schlumberger / Reflex 60                          1
                           3                 TOWITOKO / ChipDrive                              2
                           4                 Schlumberger / Reflex 72                          3

            Iss_KeyFile – F>?N?#HPB D? "#M$>F, "$CHMI?VFW LF#B ! !G@ Q?OP? "
            #MH#BHO EMFLL$O >PWAHO hG!#HD#? (C$ 256 "!G%$P$%).
            PIN – F>?N?#HPB D? "#M$>F, "$CHMI?VFW PIN–>$C >?M#K C$"#FL?. PIN–
            >$C G$IH# "$"#$@#B $# 4 C$ 8 CH"@#!ADKU T!QM.
            Iss_ID - F>?N?#HPB D? "#M$>F, "$CHMI?VFW !CHD#!Q!>?#$M (BIN)
            hG!#HD#? (8 CH"@#!ADKU T!QM).
            CRTfile – F>?N?#HPB D? "#M$>F, "$CHMI?VFW LF#B ! !G@ Q?OP? "
            "HM#!Q!>?#$G $#>MK#$E$ >PWA? hG!#HD#? (C$ 256 "!G%$P$%).
576*$#7 $"##7 :
            IccNo – F>?N?#HPB D? JFQHM ("#M$>F), % >$#$M$G JFCH# %$N%M?VgD
            "HM!ODKO D$GHM >?M#K C$"#FL?. ?NGHM JFQHM? C$PIHD JK#B DH GHDHH
            33 J?O#$%.
5*/, "8" * /#"! # :
            1 – % "PFA?H F"LHSD$E$ N?%HMSHD!@ LM$EM?GGK, !D?AH $#M!T?#HPBD$H
            ND?AHD!H >$C? $S!J>! ("G. >$CK $S!J$> L. 4.1).
9: "# ! # 1: H$JU$C!G$ "$JPWCHD!@ "#M$E$E$ "$$#%H#"#%!@ #!L? "A!#K%?#HP@
            (ReaderType) " MH?PBDKG "A!#K%?#HPHG, L$C>PWAgDDKG > C?DD$GF
            L$"PHC$%?#HPBD$GF L$M#F. H"$JPWCHD!H h#$E$ $EM?D!AHD!@ LM!%$C!#
            > DHLMHC">?NFHGKG MHNFPB#?#?G.
       ,7/*," ;<#4=     / ) *: " 7 (BC++ v.5.01) "G. L. 4.2
DSSSCT                  File : cdserv.doc                    Ref : CDSERVPG0000                 Revision:2.0          7 / 18
                                     Copyright © Dekart S.R.L (www.dekart.com) - 2001
               This document shall not be disclosed to a third party without prior written consent of Dekart S.R.L.
   !>?>?@ A?"#B C?DD$E$ C$>FGHD#? DH G$IH# JK#B %$"LM$!N%HCHD? % >?>$O JK #$ D! JKP$ Q$MGH ! >?>!G! JK, #$ D! JKP$
                          "MHC"#%?G! JHN L!"BGHDD$E$ M?NMHSHD!@ %P?CHPBT? ?%#$M">!U LM?%.
                                             9 :                                    .
3.2. V       <      CDOpenCard

."/,"# :    CDOpenCard
."/#"! # : ZFD>T!@ $#>MK%?H# >?M#F L$PBN$%?#HP@ ! LM$%$C!# HH
            ?F#HD#!Q!>?T!W. M$GH #$E$, QFD>T!@ $JH"LHA!%?H# A#HD!H C?DDKU "
            >?M#K L$PBN$%?#HP@.
0'+*, 1 )    # # 1:
              H$JU$C!G$ D?P!A!H >?M#K L$PBN$%?#HP@.
3 #("4' ': #include "CDserv.h"
            int CDOpenCard (char *PANcode, char *SerNo, char *USRname,
                                char *StartDate, char *EndDate)
56*$#7 $"##7 :       #"F#"#%FW#
576*$#7 $"##7 :
            PANcode – F>?N?#HPB D? JFQHM ("#M$>F), % >$#$M$G JFCH# %$N%M?VgD
            PAN->$C >?M#K L$PBN$%?#HP@. ?NGHM JFQHM? C$PIHD JK#B DH GHDHH 20
            J?O#$%.
            SerNo - F>?N?#HPB D? JFQHM ("#M$>F), % >$#$M$G JFCH# %$N%M?VgD
            "HM!ODKO D$GHM >?M#K L$PBN$%?#HP@. ?NGHM JFQHM? C$PIHD JK#B DH
            GHDHH 33 J?O#$%.
            USRname - F>?N?#HPB D? JFQHM ("#M$>F), % >$#$M$G JFCH# %$N%M?VHD$
            !G@ L$PBN$%?#HP@. ?NGHM JFQHM? C$PIHD JK#B DH GHDHH 40 J?O#$%.
            StartDate - F>?N?#HPB D? JFQHM ("#M$>F), % >$#$M$G JFCH# %$N%M?VHD?
            C?#? D?A?P? CHO"#%!@ >?M#K. Z$MG?#           ŠŠ.
            EndDate - F>?N?#HPB D? JFQHM ("#M$>F), % >$#$M$G JFCH# %$N%M?VHD?
            C?#? $>$DA?D!@ CHO"#%!@ >?M#K. Z$MG?#            ŠŠ.
5*/, "8" * /#"! # :
            1 – LM! F"LHSD$G N?%HMSHD!! LM$EM?GGK, !D?AH $#M!T?#HPBD$H
            ND?AHD!H >$C? $S!J>! ("G. >$CK $S!J$> % L. 4.1)
       ,7/*," ;<#4=     / ) *: " 7 (BC++ v.5.01) "G. L. 4.2


   3.3. V       <      CDGetPurseData

."/,"# :   CDGetPurseData
."/#"! # : ZFD>T!@ LM$%HM@H# D?P!A!H >?M#K L$PBN$%?#HP@ % "A!#K%?#HPH !
           $JH"LHA!%?H# L$PFAHD!H L$PD$O !DQ$MG?T!! $ %KJM?DD$G
           hPH>#M$DD$G >$SHPB>H >?M#K L$PBN$%?#HP@.
0'+*, 1 )   # # 1:
             H$JU$C!G$ D?P!A!H >?M#K L$PBN$%?#HP@.
3 #("4' ': #include " CDserv.h"
           int CDGetPurseData (int PurseNo, char *CurCode,
                                 char *AccountNo, char *MaxAmount,
                                 char *LastDebitDate, char *LastCreditDate,
                                 char *PurseBalance, char *OperationHistory)
56*$#7 $"##7 :


DSSSCT                  File : cdserv.doc                    Ref : CDSERVPG0000                 Revision:2.0          8 / 18
                                     Copyright © Dekart S.R.L (www.dekart.com) - 2001
               This document shall not be disclosed to a third party without prior written consent of Dekart S.R.L.
   !>?>?@ A?"#B C?DD$E$ C$>FGHD#? DH G$IH# JK#B %$"LM$!N%HCHD? % >?>$O JK #$ D! JKP$ Q$MGH ! >?>!G! JK, #$ D! JKP$
                          "MHC"#%?G! JHN L!"BGHDD$E$ M?NMHSHD!@ %P?CHPBT? ?%#$M">!U LM?%.
                                             9 :                                    .
PurseNo - D$GHM hPH>#M$DD$E$ >$SHPB>? >?M#K L$PBN$%?#HP@ (1, 2 !P!
            3).
576*$#7 $"##7 :
            CurCode - D? JFQHM ("#M$>F), % >$#$M$G JFCH# %$N%M?VgD >$C %?PW#K
            L$ ISO, LMHC"#?%PHDDKO % ASCII >$CH (4 J?O#?)
            AccountNo – F>?N?#HPB D? JFQHM ("#M$>F), % >$#$M$G JFCH# %$N%M?VgD
            D$GHM "AH#? >$SHPB>?. ?NGHM JFQHM? C$PIHD JK#B DH GHDHH 20 J?O#$%.
            MaxAmount - F>?N?#HPB D? JFQHM ("#M$>F), % >$#$M$G JFCH# %$N%M?VgD
            L$#$P$> %KJM?DD$E$ >$SHPB>? >?M#K L$PBN$%?#HP@. ?NGHM JFQHM?
            C$PIHD JK#B DH GHDHH 5 J?O#$%.
            OperationHistory - F>?N?#HPB D? JFQHM ("#M$>F), % >$#$M$G JFCH#
            %$N%M?VHD? !DQ$MG?T!@ $ 4 L$"PHCD!U $LHM?T!@U " >$SHPB>$G.
              ?DD?@ "#M$>? "$"#$!# !N 4 "#M$> (" DFPH%KG L$"PHCD!G "!G%$P$G),
            >?IC?@ !N >$#$MKU "$CHMI!#:
            •    ?#F $LHM?T!! (3 J?O#?, Q$MG?#       ŠŠ);
            • $C >$GGHM"?D#? (4 J?O#?);
            •    FGGF $LHM?T!! (3 J?O#?).
              ?NGHM JFQHM? C$PIHD JK#B DH GHDHH 100 J?O#$%.
            PurseBalance - F>?N?#HPB D? JFQHM ("#M$>F), % >$#$M$G JFCH#
            %$N%M?VHD? !DQ$MG?T!@ $ J?P?D"?U L$"PH >?IC$O !N 4 L$"PHCD!U
            $LHM?T!O " >$SHPB>$G. ?DD?@ "#M$>? "$"#$!# !N 4 "#M$> (" DFPH%KG
            L$"PHCD!G "!G%$P$G), >?IC?@ !N >$#$MKU "$CHMI!# J?P?D" >$SHPB>?
            (4 J?O#?). ?NGHM JFQHM? C$PIHD JK#B DH GHDHH 40 J?O#$%.
            LastDebitDate - F>?N?#HPB D? JFQHM ("#M$>F), % >$#$M$G JFCH#
            %$N%M?VHD? C?#? L$"PHCDHO $LHM?T!! CHJH#$%?D!@. Z$MG?#         ŠŠ.
            LastCreditDate - F>?N?#HPB D? JFQHM ("#M$>F), % >$#$M$G JFCH#
            %$N%M?VHD? C?#? L$"PHCDHO $LHM?T!! >MHC!#$%?D!@. Z$MG?#
                    ŠŠ.
5*/, "8" * /#"! # :
            1 – LM! F"LHSD$G N?%HMSHD!! LM$EM?GGK, !D?AH $#M!T?#HPBD$H
            ND?AHD!H >$C? $S!J>! ("G. >$CK $S!J$> % L. 4.1)
       ,7/*," ;<#4=     / ) *: " 7 (BC++ v.5.01) "G. L. 4.2


   3.4. V       <      CDChangeDates

."/,"# :   CDChangeDates
."/#"! # : ZFD>T!@ $JH"LHA!%?H# !NGHDHD!H "M$>? CHO"#%!@ >?M#K L$PBN$%?#HP@.
0'+*, 1 )   # # 1:
             H$JU$C!G$ D?P!A!H >?M#K L$PBN$%?#HP@.
3 #("4' ': #include "CDserv.h"
           int CDChangeDates (char * NewStartDate, char * NewEndDate)
56*$#7 $"##7 :
           NewStartDate - F>?N?#HPB D? "#M$>F, "$CHMI?VFW D$%FW C?#F D?A?P?
           CHO"#%!@ >?M#K. Z$MG?#        ŠŠ.
           NewEndDate - F>?N?#HPB D? "#M$>F, "$CHMI?VFW D$%FW C?#F $>$DA?D!@
           CHO"#%!@ >?M#K. Z$MG?#        ŠŠ.
576*$#7 $"##7 :     #"F#"#%FW#
DSSSCT                  File : cdserv.doc                    Ref : CDSERVPG0000                 Revision:2.0          9 / 18
                                     Copyright © Dekart S.R.L (www.dekart.com) - 2001
               This document shall not be disclosed to a third party without prior written consent of Dekart S.R.L.
   !>?>?@ A?"#B C?DD$E$ C$>FGHD#? DH G$IH# JK#B %$"LM$!N%HCHD? % >?>$O JK #$ D! JKP$ Q$MGH ! >?>!G! JK, #$ D! JKP$
                          "MHC"#%?G! JHN L!"BGHDD$E$ M?NMHSHD!@ %P?CHPBT? ?%#$M">!U LM?%.
                                             9 :                                    .
5*/, "8"      * /#"! # :
                1 – LM! F"LHSD$G N?%HMSHD!! LM$EM?GGK, !D?AH $#M!T?#HPBD$H
                ND?AHD!H >$C? $S!J>! ("G. >$CK $S!J$> % L. 4.1)
           ,7/*," ;<#4=    / ) *: " 7 (BC++ v.5.01) "G. L. 4.2


     3.5. V       <      CDUpdateMaxAmount

."/,"# :    CDUpdateMaxAmount
."/#"! # : ZFD>T!@ $JH"LHA!%?H# "GHDF L$#$P>? hPH>#M$DD$E$ >$SHPB>? >?M#K
            L$PBN$%?#HP@.
0'+*, 1 )    # # 1:
              H$JU$C!G$ D?P!A!H SAM->?M#K.
3 #("4' ': #include "Cdserv.h"
            int CDUpdateMaxAmount (int PurseNo, unsigned long MaxAmount)
56*$#7 $"##7 :
            PurseNo - D$GHM hPH>#M$DD$E$ >$SHPB>? >?M#K L$PBN$%?#HP@ (1, 2 !P!
            3).
            MaxAmount - CP!DD$H THP$H, $LMHCHP@WVHH D$%$H ND?AHD!H L$#$P>?
            %KJM?DD$E$ >$SHPB>?
576*$#7 $"##7 :     #"F#"#%FW#.
5*/, "8" * /#"! # :
            1 – LM! F"LHSD$G N?%HMSHD!! LM$EM?GGK, !D?AH $#M!T?#HPBD$H
            ND?AHD!H >$C? $S!J>! ("G. >$CK $S!J$> % L. 4.1)
       ,7/*," ;<#4=    / ) *: " 7 (BC++ v.5.01) "G. L. 4.2


     3.6. V       <      CDservClose

."/,"# :    CDservClose
."/#"! # : ZFD>T!@ N?%HMS?H# LM$TH"" $J"PFI!%?D!@ >?M#K L$PBN$%?#HP@ !
            $"%$J$IC?H# "A!#K%?#HPB smart->?M#.
3 #("4' ': #include "CDserv.h"
            void CDservClose (void)
56*$#7 $"##7 :      #"F#"#%FW#.
5*/, "8" * /#"! # : #"F#"#%FH#.
       ,7/*," ;<#4=    / ) *: " 7 (BC++ v.5.01) "G. L. 4.1


4.
     4.1. 9      w                s         u

 Q
                           B                       s                       Q                  g
 s
                9G8         4*$7 ,*/, "("
     0          NOK                                                         HD$MG?PBD$H        N?%HMSHD!H
                                                                           LM$EM?GGK. $ND!>P? $S!J>? LM!

DSSSCT                    File : cdserv.doc                    Ref : CDSERVPG0000                 Revision:2.0          10 / 18
                                       Copyright © Dekart S.R.L (www.dekart.com) - 2001
                 This document shall not be disclosed to a third party without prior written consent of Dekart S.R.L.
     !>?>?@ A?"#B C?DD$E$ C$>FGHD#? DH G$IH# JK#B %$"LM$!N%HCHD? % >?>$O JK #$ D! JKP$ Q$MGH ! >?>!G! JK, #$ D! JKP$
                            "MHC"#%?G! JHN L!"BGHDD$E$ M?NMHSHD!@ %P?CHPBT? ?%#$M">!U LM?%.
                                               9 :                                    .
M?J$#H " >?M#$O.
   1          OK                                                           $MG?PBD$H N?%HMSHD!H LM$EM?GGK.

              9H G4 *G8 :* 6" "4( "
   -1         ERR_PC_TIME_OUT                                             S!J>? %KN%?D? "J$HG % M?J$#H
                                                                         >$GLBW#HM?

 -2...-7                                                                   HNHM%

              I ( "#'+ < 7 4*$7 *H G4
               #( ; %'" CT-API
   -8         ERR_CT_API_NOT_ACC                                         CT-API DHC$"#FLHD
  -10         ERR_CT_API_TRANSMIS                                         S!J>? LHMHC?A!
  -11         ERR_CT_API_MEM_ASIGN                                        S!J>? N?U%?#? L?G@#!

              9H G4 , ,*/# 4"O8 )                     "G*( '
              ;<#4= 1     *$<+1
  -12         ERR_FILE_NOT_FOUND                                           S!J>? %KN%?D? $#"F#"#%!HG Q?OP? "
                                                                         >PWA?G! "!"#HGK
  -13         ERR_READING_FILE                                             S!J>? LM! A#HD!! Q?OP? " >PWA?G!
                                                                         "!"#HGK
  -14         ERR_BAD_READER                                               $@%PHD!H C?DD$O $S!J>! G$IH#
                                                                         E$%$M!#B $ "PHCFWVHG:
                                                                         •    $#"F#"#%FH# "A!#K%?#HPB, !P!
                                                                         •    #!L     "A!#K%?#HP@       F>?N?D
                                                                         DHLM?%!PBD$, !P!
                                                                         •    $S!J>? LM! M?J$#H "A!#K%?#HP@,
                                                                         !P!
                                                                         •    F>?N?D DH%HMDKO       -L$M#.
  -15         ERR_NO_CARD_ON_READER                                        S!J>? %KN%?D? $#"F#"#%!HG >?M#K %
                                                                         "A!#K%?#HPH
  -16         ERR_BAD_ACCESS_CARD                                          S!J>? LM! M?J$#H " >?M#$O C$"#FL?,
                                                                         %$NG$ID$, %"#?%PHD? DH >?M#?
                                                                         C$"#FL?, ? !D?@.
  -17         ERR_INVALID_PIN_LEN                                          HLM?%!PBD?@ CP!D? PIN->$C?
  -18         ERR_INVALID_PIN_CHR                                          M!     %%$CH     PIN->$C?     JKP!
                                                                         !"L$PBN$%?DK DH #$PB>$ CH"@#!ADKH
                                                                         T!QMK
  -19         ERR_BAD_PIN_VERIFY                                         PIN->$C DH %HM!Q!T!M$%?D
  -20         ERR_BAD_PASSWORD                                             H%HMDKO     L?M$PB     C$"#FL?    >
                                                                         "H>MH#DKG >PWA?G "!"#HGK
  -21         ERR_BAD_SAM_CARD                                             S!J>? LM! M?J$#H " SAM >?M#$O,
                                                                         %$NG$ID$, %"#?%PHD? DH SAM >?M#?, ?
                                                                         !D?@.
  -22         ERR_BAD_USR_CARD                                             S!J>? LM! M?J$#H " >?M#$O
                                                                         L$PBN$%?#HP@, %$NG$ID$, %"#?%PHD?
                                                                         DH >?M#? L$PBN$%?#HP@, ? !D?@.
DSSSCT                  File : cdserv.doc                    Ref : CDSERVPG0000                 Revision:2.0          11 / 18
                                     Copyright © Dekart S.R.L (www.dekart.com) - 2001
               This document shall not be disclosed to a third party without prior written consent of Dekart S.R.L.
   !>?>?@ A?"#B C?DD$E$ C$>FGHD#? DH G$IH# JK#B %$"LM$!N%HCHD? % >?>$O JK #$ D! JKP$ Q$MGH ! >?>!G! JK, #$ D! JKP$
                          "MHC"#%?G! JHN L!"BGHDD$E$ M?NMHSHD!@ %P?CHPBT? ?%#$M">!U LM?%.
                                             9 :                                    .
-23         ERR_INV_REC_LEN                                              HLM?%!PBD?@ CP!D? N?L!"!
  -24         ERR_DNOT_FOUND_KEY                                           #"F#"#%FH# >PWA
  -25         ERR_APP_NOT_FOUND                                            #"F#"#%FH# LM!P$IHD!H
  -26         ERR_READ_CARD_FILE                                           S!J>? A#HD!@ Q?OP? D? >?M#H
  -27         ERR_IDENT_NOT_FOUND                                          ? >?M#H $#"F#"#%FH# Q?OP 8000
  -28         ERR_BAD_ISS_CERT                                             H%HMDKO "HM#!Q!>?# $#>MK#$E$
                                                                         >PWA? hG!#HD#?
  -29         ERR_BAD_ISS_IDEND                                            H%HMDKO hG!#HD#
  -30         ERR_AUTH_NOT_FOUND                                           ? >?M#H $#"F#"#%FH# Q?OP 8300
  -31         ERR_UNKNOWN_AUTH_ALG                                         H!N%H"#DKO                ?PE$M!#G
                                                                         ?F#HD#!Q!>?T!!
  -32         ERR_SN_NOT_FOUND                                             ? >?M#H $#"F#"#%FH# Q?OP 2F00
  -33         ERR_SAM_NOT_FOUND                                            #"F#"#%FH# SAM->?M#?
  -34         ERR_USR_NOT_FOUND                                            #"F#"#%FH# >?M#? L$PBN$%?#HP@
  -35         ERR_USR_PURS_NOTFOUND                                        ? >?M#H L$PBN$%?#HP@ $#"F#"#%FH#
                                                                         Q?OP " >$SHPB>$G
  -36         ERR_SAM_PURS_NOTFOUND                                        ? SAM->?M#H $#"F#"#%FH# Q?OP "
                                                                         >$SHPB>$G
  -37         ERR_USR_IS_BAD                                             « ?L$MAHD?» >?M#? L$PBN$%?#HP@ –
                                                                         L$CPHI!# !NŒ@#!W
  -38         ERR_SAM_IS_BAD                                             « ?L$MAHD?» SAM->?M#? – L$CPHI!#
                                                                         !NŒ@#!W
  -39         ERR_USR_CUR_NOT_MATCH                                        M!    %KN$%H     QFD>T!!     F>?N?D
                                                                         DH%HMDKO #!L %?PW#K % >$SHPB>H
                                                                         >?M#K L$PBN$%?#HP@
  -40         ERR_SAM_CUR_NOT_MATCH                                        M!    %KN$%H     QFD>T!!     F>?N?D
                                                                         DH%HMDKO #!L %?PW#K % >$SHPB>H
                                                                         SAM->?M#K
  -41         ERR_READ_USR_CARD                                            S!J>?      LM!     A#HD!!     >?M#K
                                                                         L$PBN$%?#HP@
  -42         ERR_READ_SAM_CARD                                            S!J>? LM! A#HD!! SAM->?M#K
  -43         ERR_USR_DEBIT_PURSE                                          S!J>? LM! CHJH#$%?D!! >$SHPB>?
                                                                         >?M#K L$PBN$%?#HP@
  -44         ERR_USR_CREDIT_PURSE                                         S!J>? LM! >MHC!#$%?D!! >$SHPB>?
                                                                         >?M#K L$PBN$%?#HP@
  -45         ERR_SAM_DEBIT_PURSE                                          S!J>? LM! CHJH#$%?D!! >$SHPB>?
                                                                         SAM->?M#K
  -46         ERR_INV_ID_LEN                                               H%HMD?@ CP!D? !CHD#!Q!>?#$M?

-47...-50                                                                  HNHM%

              9H G4 , ,*/# 4"O8 )       "G*( '
              G G+ *( 4*% mirlib ( "G*(" '
              G*+-H    ! '+" )
  -51         ERR_BASE_TOO_BIG                                            "D$%?D!H A!"P? $AHDB J$PBS$H CP@
                                                                         LMHC"#?%PHD!@
  -52         ERR_DIV_BY_ZERO                                             HPHD!H D? D$PB (% J!JP!$#H>H
DSSSCT                  File : cdserv.doc                    Ref : CDSERVPG0000                 Revision:2.0          12 / 18
                                     Copyright © Dekart S.R.L (www.dekart.com) - 2001
               This document shall not be disclosed to a third party without prior written consent of Dekart S.R.L.
   !>?>?@ A?"#B C?DD$E$ C$>FGHD#? DH G$IH# JK#B %$"LM$!N%HCHD? % >?>$O JK #$ D! JKP$ Q$MGH ! >?>!G! JK, #$ D! JKP$
                          "MHC"#%?G! JHN L!"BGHDD$E$ M?NMHSHD!@ %P?CHPBT? ?%#$M">!U LM?%.
                                             9 :                                    .
J$PBS!U A!"HP)
  -53         ERR_OVERFLOW                                                 HMHL$PDHD!H     –   A!"P$    $AHDB
                                                                         J$PBS$H
  -54         ERR_NEG_RESULT                                               M!      %KA!"PHD!!        L$PFAHD$
                                                                         $#M!T?#HPBD$H ND?AHD!H
  -55         ERR_BAD_FORMAT                                               H%HMDKO %U$CD$O Q$MG?# A!"P?
  -56         ERR_BAD_BASE                                                 H%HMD$H $"D$%?D!H A!"P?
  -57         ERR_BAD_PARAMETERS                                           H%HMD$H !"L$PBN$%?D!H L?M?GH#M?
  -58         ERR_OUT_OF_MEMORY                                            HC$"#?#$AD$ $LHM?#!%D$O L?G@#!
  -59         ERR_NEG_ROOT                                                 H#DKO >$MHDB !N $#M!T?#HPBD$E$
                                                                         A!"P?
  -60         ERR_NEG_POWER                                                $N%HCHD!H A!"P? % $#M!T?#HPBDFW
                                                                         "#HLHDB
  -61         ERR_BAD_ROOT                                                 $LK#>? L$PFA!#B DH%HMDKO >$MHDB
  -62         ERR_INT_OP                                                   H%HMD?@ $LHM?T!@ D?C Flash A!"P$G
  -63         ERR_FLASH_OVERFLOW                                         Flash LHMHL$PDHD!H
  -64         ERR_TOO_BIG                                                  !"P? $AHDB J$PBS!H
  -65         ERR_NEG_LOG                                                  $E?M!QG !N $#M!T?#HPBD$E$ A!"P?
  -66         ERR_DOUBLE_FAIL                                              S!J>? LMH$JM?N$%?D!@ double %
                                                                         flash
  -67         ERR_IO_OVERFLOW                                              HMHL$PDHD!H JFQHM? %%$C?/%K%$C?
  -68         ERR_NO_MIRSYS                                                !JP!$#H>? J$PBS!U A!"HP DH
                                                                         LM$!D!T!?P!N!M$%?D?
  -69         ERR_BAD_MONT_MOD                                             H%HMDKO       $D#E$GHM!     G$CFPB
                                                                         (C$PIHD JK#B DHAH#DKG)
  -70         ERR_NO_MONT_MOD                                              H $LMHCHPHD $D#E$GHM! G$CFPB
  -71         ERR_EXP_TOO_BIG                                              P!S>$G J$PBS?@ h>"L$DHD#?
  -72         ERR_NBASE_MBP_P2                                             "D$%?D!H C$PID$ JK#B "#HLHDBW 2

-73...–80                                                                  HNHM%

  -81         ERR_KEYFILE_NOT_FOUND                                        #"F#"#%FH#   Q?OP    "   >PWA?G!
                                                                         ] /]
  -82         ERR_READING_KEYFILE                                          S!J>? A#HD!@ Q?OP? >PWAHO
  -83         ERR_PARFILE_NOT_FOUND                                        #"F#"#%FH# Q?OP " L?M?GH#M?G!
                                                                         sPRPERS.PAR
  -84         ERR_BAD_NUM_OF_PARAM                                         S!J$AD$H A!"P$ L?M?GH#M$% %
                                                                         Q?OPH sPRPERS.PAR
  -85         ERR_BAD_PARAM_FMT                                            H%HMDKH ND?AHD!@ L?M?GH#M$% %
                                                                         Q?OPH sPRPERS.PAR
  -86         ERR_BAD_CA_ID_FMT                                            H%HMD$H ND?AHD!H !CHD#!Q!>?#$M?
                                                                         ] 
  -87         ERR_BAD_ISS_ID_FMT                                           H%HMD$H ND?AHD!H !CHD#!Q!>?#$M?
                                                                         hG!#HD#?
  -88         ERR_CRTFILE_NOT_FOUND                                        #"F#"#%FH# Q?OP " "HM#!Q!>?#$G
                                                                         $#>MK#$E$ >PWA? hG!#HD#?
  -89         ERR_CRT_ISS_NOT_CMP                                          CHD#!Q!>?#$M      hG!#HD#?    DH
DSSSCT                  File : cdserv.doc                    Ref : CDSERVPG0000                 Revision:2.0          13 / 18
                                     Copyright © Dekart S.R.L (www.dekart.com) - 2001
               This document shall not be disclosed to a third party without prior written consent of Dekart S.R.L.
   !>?>?@ A?"#B C?DD$E$ C$>FGHD#? DH G$IH# JK#B %$"LM$!N%HCHD? % >?>$O JK #$ D! JKP$ Q$MGH ! >?>!G! JK, #$ D! JKP$
                          "MHC"#%?G! JHN L!"BGHDD$E$ M?NMHSHD!@ %P?CHPBT? ?%#$M">!U LM?%.
                                             9 :                                    .
"$%L?C?H# " F>?N?DDKG % "HM#!Q!>?#H
  -90         ERR_CRT_DATE_EXPIRED                                         "#H> "M$> CHO"#%!@ "HM#!Q!>?#?
  -91         ERR_CRT_CA_NOT_CMP                                           CHD#!Q!>?#$M        hG!#HD#?      DH
                                                                         "$%L?C?H# " F>?N?DDKG % "HM#!Q!>?#H
  -92         ERR_CRT_LEN                                                  H%HMD?@ CP!D? "HM#!Q!>?#?
  -93         ERR_BAD_PUBLIC_LEN                                           H%HMD?@ CP!D? $#>MK#$E$ >PWA?
                                                                         ] 
  -94         ERR_BAD_AUTH_OF_CARD                                         S!J>? ?F#HD#!Q!>?T!!
  -95         ERR_INV_LUHN_CODE                                            HLM?%!PBD$H ND?AHD!H luhn->$C?
  -96         ERR_NOT_FREE_MEM                                             HC$"#?#$AD$ "%$J$CD$E$ GH"#?
  -97         ERR_TRANS_KEY_VERIFY                                         S!J>? %HM!Q!>?T!! #M?D"L$M#D$E$
                                                                         >PWA?
   -98        ERR_CREATE_CARDFILE                                          S!J>? LM! "$NC?D!! Q?OP? D? >?M#H
   -99        ERR_WRITE_CARD_FILE                                          S!J>? N?L!"! Q?OP? D? >?M#F
  -100        ERR_BAD_IDENT_CONTENT                                        H%HMD$H "$CHMI!G$H Q?OP? 8000 D?
                                                                         >?M#H
  -101        ERR_PERFILE_NOT_FOUND                                        #"F#"#%FH# PER-Q?OP
  -102        ERR_SERNO_DONT_COMPAR                                        H "$%L?C?H# MH?PBDKO "HM!ODKO
                                                                         D$GHM >?M#K ! D$GHM, F>?N?DDKO %
                                                                         PER-Q?OPH
  -103        ERR_BAD_START_DATE                                           H%HMD?@ C?#? D?A?P? CHO"#%!@ SAM-
                                                                         >?M#K
  -104        ERR_BAD_END_DATE                                             H%HMD?@ C?#? $>$DA?D!@ CHO"#%!@
                                                                         SAM->?M#K
  -105        ERR_DATES_CONFLICT                                           ?#? $>$DA?D!@ CHO"#%!@ SAM->?M#K
                                                                         LMH%KS?H# C?#F $>$DA?D!@ CHO"#%!@
                                                                         "HM#!Q!>?#?       $#>MK#$E$     >PWA?
                                                                         hG!#HD#?
  -106        ERR_PURSE_NOT_EMPTY                                        $SHPH> DH LF"#$O
  -107        ERR_KEY_VERIFICATION                                         S!J>? %HM!Q!>?T!! >PWA?
  -108        ERR_UPDATE_CARD_FILE                                         S!J>? LHMHN?L!"! Q?OP? D? >?M#H
  -109        ERR_CHANGE_KEY                                               S!J>? !NGHDHD!@ >PWA?
  -110        ERR_DEBIT_AMT_GRATE                                          FGG? CHJH#? LMH%KS?H# $"#?#$>
                                                                         >$SHPB>? SAM->?M#K
  -111        ERR_CREDIT_AMT_GRATE                                        HNFPB#?#       "P$IHD!@       $"#?#>?
                                                                         >$SHPB>?      !     "FGGK     "MHC!#?
                                                                         LMH%KS?H# L$#$P$> >$SHPB>? SAM-
                                                                         >?M#K
  -112        ERR_UNBLOCK_KEY                                              S!J>? CHJP$>!M$%?D!@ >PWA?
  -113        ERR_MAX_AMNT_LES_PURS                                        $%$H ND?AHD!H L$#$P>? >$SHPB>?
                                                                         SAM->?M#K        GHDBSH     #H>FVHE$
                                                                         $"#?#>? % >$SHPB>H
  -114        ERR_UPDATE_MAX_AMOUNT                                        S!J>? "GHDK L$#$P>? >$SHPB>?
                                                                         SAM->?M#K


  -123        ERR_NOT_INITIALIZED                                          H JKP? %KL$PDHD? !D!T!?P!N?T!@

DSSSCT                  File : cdserv.doc                    Ref : CDSERVPG0000                 Revision:2.0          14 / 18
                                     Copyright © Dekart S.R.L (www.dekart.com) - 2001
               This document shall not be disclosed to a third party without prior written consent of Dekart S.R.L.
   !>?>?@ A?"#B C?DD$E$ C$>FGHD#? DH G$IH# JK#B %$"LM$!N%HCHD? % >?>$O JK #$ D! JKP$ Q$MGH ! >?>!G! JK, #$ D! JKP$
                          "MHC"#%?G! JHN L!"BGHDD$E$ M?NMHSHD!@ %P?CHPBT? ?%#$M">!U LM?%.
                                             9 :                                    .
-124        ERR_UNKNOWN_ERROR                                            H!N%H"#D?@ $S!J>?
   -125        ERR_FUNC_NOT_RELEASED
   -126        ERR_USR_ABORT                                                ?J$#?    LM$EM?GGK                $"#?D$%PHD?
                                                                           L$PBN$%?#HPHG

               /* Rest of CT-API */
   -127        ERR_CT_API_ABORT                                             ?J$#?   LM$EM?GGK     $"#?D$%PHD?
                                                                           "HM%HM$G
   -128        ERR_CT_API_HTSI                                               S!J>? D!IDHE$ FM$%D@


   4.2.                 :        t       < g                                  : (Borland C++ v.5.01)
//----------------------------------------------------------------------------
//
// BC++ built 32-bit DLL's (Example of CDserv.DLL call).
//
// Copyright (c) Dekart Ltd. All Rights Reserved
//
// This application tests calling into a 32-bit DLL built with Borland C++.
// Code was verified with Borland C++ 5.02
//
//----------------------------------------------------------------------------
//#include <mfc/afxwin.h>    //      For GetDlgItemText() + windows.h
#include <windows.h>
#include <stdio.h>            // stdio.h
#include "CDserv.h"           // functions from CDserv.dll
#include <stdlib.h>
#include <sys/stat.h>
#include <io.h>
#include <conio.h>
#include <dir.h>
#include <fstream.h>
#include <string.h>

//
// Declaration of DLL - functions
//

int ( __stdcall *pCDservIni)(char *Port, short ReaderType,
                         char *Iss_KeyFile, char *PIN,
                             char *Iss_ID, char *CRTfile,
                             char *IccNo);
int ( __stdcall *pCDOpenCard)(char *PANcode, char *SerNo,
                               char *USRname, char *StartDate,
                               char *EndDate);
int ( __stdcall *pCDGetPurseData)(int PurseNo, char *CurCode,
                                char *AccountNo, char *MaxAmount,
                                   char *LastDebitDate, char *LastCreditDate,
                                   char *PurseBalance, char *OperationHistory);
int ( __stdcall *pCDUpdateMaxAmount)(int PurseNo, unsigned long MaxAmount);
int ( __stdcall *pCDChangeDates)(char *NewStartDate, char *NewEndDate);
void ( __stdcall *pCDservClose)(void);

char    xDll[] = "CDserv.dll";
///////////////////////////////////////////////////////////////////////////////

int main()
{

//
// Declaration & Initial Values of variables
//
   int status, purse, i, j;
   char cardnum[33]="                                                 ";
   char port[20]="    ", pan_code[20]="     " ;
   char cardpin[32]="    ", name[40]=" ", curs[4]="                   ", acc_no[20]="       ";

DSSSCT                   File : cdserv.doc                    Ref : CDSERVPG0000                 Revision:2.0          15 / 18
                                      Copyright © Dekart S.R.L (www.dekart.com) - 2001
                This document shall not be disclosed to a third party without prior written consent of Dekart S.R.L.
    !>?>?@ A?"#B C?DD$E$ C$>FGHD#? DH G$IH# JK#B %$"LM$!N%HCHD? % >?>$O JK #$ D! JKP$ Q$MGH ! >?>!G! JK, #$ D! JKP$
                           "MHC"#%?G! JHN L!"BGHDD$E$ M?NMHSHD!@ %P?CHPBT? ?%#$M">!U LM?%.
                                              9 :                                    .
char iss_id[10]="        ", max_sum[5]=" ";
  char date_d[7]="      ", date_c[7]="       ", date_s[7]="                        ", date_e[7]="             ";
  char history[256]="   ", balance[256], hist[4][64];
  short reader;
  char iss_key_file[MAX_PATH], iss_crt_file[MAX_PATH];
  long int sum_c, sum_d;

//
// Load the Dynamic Link LIbrary xcdata.DLL
//
   HINSTANCE hLib = LoadLibrary(xDll);
   if ( (unsigned)hLib <= HINSTANCE_ERROR ) {
               printf("Failure loading library: %sn", xDll);
      return 0;
        }

//
// Get all the entry points for the functions we wish to test. Typedef's can
// be used to simplify casting the retrun value from GetProcAddress.
//
pCDservIni      = (int ( __stdcall* )(char *Port, short ReaderType,
                                      char *Iss_KeyFile, char *PIN,
                                      char *Iss_ID, char *CRTfile,
                                      char *IccNo))GetProcAddress(hLib, "CDservIni");
pCDOpenCard     = (int ( __stdcall* )(char *PANcode, char *SerNo,
                                                     char *USRname, char *StartDate,
                                      char *EndDate))GetProcAddress(hLib, "CDOpenCard");
pCDGetPurseData = (int ( __stdcall* )(int PurseNo, char *CurCode,
                                      char *AccountNo, char *MaxAmount,
                                      char *LastDebitDate, char *LastCreditDate,
                                      char *PurseBalance, char
*OperationHistory))GetProcAddress(hLib, "CDGetPurseData");
pCDUpdateMaxAmount= (int ( __stdcall* )(int PurseNo, unsigned long
MaxAmount))GetProcAddress(hLib, "CDUpdateMaxAmount");
pCDChangeDates    = (int ( __stdcall* )(char *NewStartDate, char
*NewEndDate))GetProcAddress(hLib, "CDChangeDates");
pCDservClose      = (void ( __stdcall* )(void))GetProcAddress(hLib, "CDservClose");


//
// GetProcAddress returns null on failure
//
   if( pCDservIni == NULL) {
      printf("1 - Failure locating procedures.n");
      return 0;
        }

  if (pCDservIni == NULL)   {
     printf("2 - Failure locating procedures.n");
     return 0;
       }

  if( pCDGetPurseData == NULL) {
     printf("3 - Failure locating procedures.n");
     return 0;
       }

  if( pCDUpdateMaxAmount == NULL)    {
     printf("4 - Failure locating procedures.n");
     return 0;
       }

  if( pCDChangeDates == NULL)    {
     printf("5 - Failure locating procedures.n");
     return 0;
       }

  if( pCDservClose == NULL) {
     printf("6 - Failure locating procedures.n");
     return 0;
       }

//
// Load INI parameters
DSSSCT                  File : cdserv.doc                    Ref : CDSERVPG0000                 Revision:2.0          16 / 18
                                     Copyright © Dekart S.R.L (www.dekart.com) - 2001
               This document shall not be disclosed to a third party without prior written consent of Dekart S.R.L.
   !>?>?@ A?"#B C?DD$E$ C$>FGHD#? DH G$IH# JK#B %$"LM$!N%HCHD? % >?>$O JK #$ D! JKP$ Q$MGH ! >?>!G! JK, #$ D! JKP$
                          "MHC"#%?G! JHN L!"BGHDD$E$ M?NMHSHD!@ %P?CHPBT? ?%#$M">!U LM?%.
                                             9 :                                    .
//
//   port - name of com-port connected to reader
//   reader - reader type
//   cardpin - PIN-code to access card (issuer)
//   iss_id - issuer identifier
//   iss_key_file - name of file with keys of issuer
//   iss_crt_file - name of file with issuer certificate
//   per_file_path - path to file with parameters

     reader=0;
     strcpy(iss_key_file,".94980001.SE3");
     strcpy(iss_crt_file,".94980001.CRT");
     strcpy(port,"COM2"); strcpy(cardpin,"1111");
     strcpy(iss_id,"94980001");
/*printf("n %s n %s n %s n %s n %s n %s ",
iss_key_file, per_file_path, iss_crt_file, port, cardpin, iss_id); */

//
//     Test of CDserv
//
      printf("n Test of CDserv");

//    CDserv operation
           printf("nn Session initialization");
      printf("n Insert Acces Card of issuer in Reader");                   getch();

      status = pCDservIni(port, reader, iss_key_file, cardpin, iss_id,
                          iss_crt_file, cardnum);
      if(status<0) {printf("n error: %d ", status); return 0;}      // status printing
      else {printf("n status: %d ", status);
            printf("n IssNo: %s ", cardnum);      // printing of card serial number
                     }

//    CD card open
      printf("nn User card openning");
      printf("n Insert User Card in Reader"); getch();

      status = pCDOpenCard(pan_code, cardnum, name, date_s, date_e);
      if(status<0) {printf("n error: %d ", status); return 0;} // status printing
      else {printf("n status: %d ", status);
            printf("n User_No: %s ", cardnum);    // printing of user card serial number
            printf("n PAN: %s ", pan_code);      // printing of user card PAN code
            printf("n Name: %s ", name);      // printing of name
            printf("n Start date: %s ", date_s);      // printing of start date
            printf("n End date: %s ", date_s);      // printing of start date
                     }

//    user card reading #1
      printf("nn User card reading");

      for(purse=1; purse<4; purse++) {
      printf("nn Purse %d", purse);
      status = pCDGetPurseData(purse, curs, acc_no, max_sum, date_d, date_c,
                                 balance, history);
      if(status<0) {printf("n error: %d ", status); return 0;} // status printing
      else {printf("n status: %d ", status);
            printf("n cur_code: %s ", curs);     // printing of cur_code
            printf("n Account: %s ", acc_no);       // printing of account_number
            printf("n MaxAmount: %s ", max_sum);       // printing of MaxAmount
            printf("n Last debit date: %s ", date_d);       // printing of debit date
            printf("n Last credit date: %s ", date_c);       // printing of credit date
            printf("n Purse balances: n");       // printing of balance history
                j=0; //printf("n");
                  for(i=0; i<256; i++) {
                         if(balance[i]!=0) printf("%c", balance[i]);
                         else {if(j>3) break; printf("n"); j++;}
                                          }

                    printf("n Purse history: n");        // printing of operations history
                     j=0; //printf("n");
                       for(i=0; i<256; i++) {
                              if(history[i]!=0) printf("%c", history[i]);
                              else {if(j>3) break; printf("n"); j++;}
                         }
DSSSCT                    File : cdserv.doc                    Ref : CDSERVPG0000                 Revision:2.0          17 / 18
                                       Copyright © Dekart S.R.L (www.dekart.com) - 2001
                 This document shall not be disclosed to a third party without prior written consent of Dekart S.R.L.
     !>?>?@ A?"#B C?DD$E$ C$>FGHD#? DH G$IH# JK#B %$"LM$!N%HCHD? % >?>$O JK #$ D! JKP$ Q$MGH ! >?>!G! JK, #$ D! JKP$
                            "MHC"#%?G! JHN L!"BGHDD$E$ M?NMHSHD!@ %P?CHPBT? ?%#$M">!U LM?%.
                                               9 :                                    .
}

              printf("n ...."); getch();
              }



//    UpdateMaxAmount operation
      printf("nn UpdateMaxAmount operation");
      sum_c=20000;
      for(purse=1; purse<4; purse++) {
      printf("n Purse %d", purse);
      status = pCDUpdateMaxAmount(purse, sum_c);
      if(status<0) {printf("n error: %d ", status); return 0;} // status printing
      else printf("n status: %d ", status);                   // printing of result

                                        sum_c-=5000;
                                        }

//    user card reading #2
      printf("nn User card reading after UpdateMaxAmount operation");

      for(purse=1; purse<4; purse++) {
      printf("nn Purse %d", purse);
      status = pCDGetPurseData(purse, curs, acc_no, max_sum, date_d, date_c,
                                balance, history);
      if(status<0) {printf("n error: %d ", status); return 0;} // status printing
      else {printf("n Status: %d ", status);
            printf("n Cur_code: %s ", curs);    // printing of cur_code
            printf("n Account: %s ", acc_no);      // printing of account_number
            printf("n MaxAmount: %s ", max_sum);      // printing of MaxAmount
            printf("n Last debit date: %s ", date_d);      // printing of debit date
            printf("n Last credit date: %s ", date_c);      // printing of credit date
            printf("n Purse balance: %s ", balance);      // printing of balance
            printf("n last Purse Operation: %s ", history);      // printing of history
                     }
            printf("n ...."); getch();
            }

//    Date's change
      printf("nn User card Date's change");
      strcpy(date_s,"160201"); strcpy(date_e,"160204");
      status = pCDChangeDates(date_s, date_e);
      if(status<0) {printf("n error: %d ", status); return 0;}                     // status printing
      else printf("n status: %d ", status);

//    pCDservClose operation
      printf("nn Session closing");
      pCDservClose();

 printf("n");
   if((unsigned)hLib>HINSTANCE_ERROR)
        FreeLibrary(hLib);
      cout << endl <<"done." <<endl;
      return 0;
}




DSSSCT                    File : cdserv.doc                    Ref : CDSERVPG0000                 Revision:2.0          18 / 18
                                       Copyright © Dekart S.R.L (www.dekart.com) - 2001
                 This document shall not be disclosed to a third party without prior written consent of Dekart S.R.L.
     !>?>?@ A?"#B C?DD$E$ C$>FGHD#? DH G$IH# JK#B %$"LM$!N%HCHD? % >?>$O JK #$ D! JKP$ Q$MGH ! >?>!G! JK, #$ D! JKP$
                            "MHC"#%?G! JHN L!"BGHDD$E$ M?NMHSHD!@ %P?CHPBT? ?%#$M">!U LM?%.
                                               9 :                                    .

Contenu connexe

Tendances

Instructivo manual de requisitos de inscripcion de informacion leagl, tecnica...
Instructivo manual de requisitos de inscripcion de informacion leagl, tecnica...Instructivo manual de requisitos de inscripcion de informacion leagl, tecnica...
Instructivo manual de requisitos de inscripcion de informacion leagl, tecnica...mamache
 
Draft final strategi nasional redd+
Draft final strategi nasional redd+Draft final strategi nasional redd+
Draft final strategi nasional redd+earlpaulodiaz
 
قصة عبد الله والرسالة
قصة عبد الله  والرسالة قصة عبد الله  والرسالة
قصة عبد الله والرسالة Dalia Bakry
 
Sex Stereotypes Beauty
Sex Stereotypes BeautySex Stereotypes Beauty
Sex Stereotypes BeautyHeatherHamline
 
Fichas para trabajar con euros y centimos
Fichas para trabajar con euros y centimosFichas para trabajar con euros y centimos
Fichas para trabajar con euros y centimosVicky Pinero Elices
 
Diwali puja vidhi ma laxmi pujan vidhi in hindi pdf
Diwali puja vidhi ma laxmi pujan vidhi in hindi pdfDiwali puja vidhi ma laxmi pujan vidhi in hindi pdf
Diwali puja vidhi ma laxmi pujan vidhi in hindi pdfSumit Girdharwal
 
Peace through understanding Islam || Mawlana Feizel Chothia || Australian Isl...
Peace through understanding Islam || Mawlana Feizel Chothia || Australian Isl...Peace through understanding Islam || Mawlana Feizel Chothia || Australian Isl...
Peace through understanding Islam || Mawlana Feizel Chothia || Australian Isl...Muhammad Nabeel Musharraf
 
Beca Emakunde 2012 - La "ingeniería emocional inter géneros" en las series co...
Beca Emakunde 2012 - La "ingeniería emocional inter géneros" en las series co...Beca Emakunde 2012 - La "ingeniería emocional inter géneros" en las series co...
Beca Emakunde 2012 - La "ingeniería emocional inter géneros" en las series co...Irekia - EJGV
 
Laboratoire nomade 2015 mai
Laboratoire nomade 2015 maiLaboratoire nomade 2015 mai
Laboratoire nomade 2015 maiMarc Zammit
 
Bay of Plenty, October 2014, Travel Digest
Bay of Plenty, October 2014, Travel DigestBay of Plenty, October 2014, Travel Digest
Bay of Plenty, October 2014, Travel DigestSarah Wrightson
 
صناعة التأثير
صناعة التأثيرصناعة التأثير
صناعة التأثيرHani Al-Menaii
 
Robinson crusoe
Robinson crusoeRobinson crusoe
Robinson crusoe11052704
 
Fiestaru07 2003
Fiestaru07 2003Fiestaru07 2003
Fiestaru07 2003rukford1
 

Tendances (19)

Ruhani khazain-vol-15
Ruhani khazain-vol-15Ruhani khazain-vol-15
Ruhani khazain-vol-15
 
ClarityChallenge2013
ClarityChallenge2013ClarityChallenge2013
ClarityChallenge2013
 
Instructivo manual de requisitos de inscripcion de informacion leagl, tecnica...
Instructivo manual de requisitos de inscripcion de informacion leagl, tecnica...Instructivo manual de requisitos de inscripcion de informacion leagl, tecnica...
Instructivo manual de requisitos de inscripcion de informacion leagl, tecnica...
 
Draft final strategi nasional redd+
Draft final strategi nasional redd+Draft final strategi nasional redd+
Draft final strategi nasional redd+
 
قصة عبد الله والرسالة
قصة عبد الله  والرسالة قصة عبد الله  والرسالة
قصة عبد الله والرسالة
 
Sex Stereotypes Beauty
Sex Stereotypes BeautySex Stereotypes Beauty
Sex Stereotypes Beauty
 
Fichas para trabajar con euros y centimos
Fichas para trabajar con euros y centimosFichas para trabajar con euros y centimos
Fichas para trabajar con euros y centimos
 
Diwali puja vidhi ma laxmi pujan vidhi in hindi pdf
Diwali puja vidhi ma laxmi pujan vidhi in hindi pdfDiwali puja vidhi ma laxmi pujan vidhi in hindi pdf
Diwali puja vidhi ma laxmi pujan vidhi in hindi pdf
 
Peace through understanding Islam || Mawlana Feizel Chothia || Australian Isl...
Peace through understanding Islam || Mawlana Feizel Chothia || Australian Isl...Peace through understanding Islam || Mawlana Feizel Chothia || Australian Isl...
Peace through understanding Islam || Mawlana Feizel Chothia || Australian Isl...
 
Curso de leitura
Curso de leituraCurso de leitura
Curso de leitura
 
Beca Emakunde 2012 - La "ingeniería emocional inter géneros" en las series co...
Beca Emakunde 2012 - La "ingeniería emocional inter géneros" en las series co...Beca Emakunde 2012 - La "ingeniería emocional inter géneros" en las series co...
Beca Emakunde 2012 - La "ingeniería emocional inter géneros" en las series co...
 
Laboratoire nomade 2015 mai
Laboratoire nomade 2015 maiLaboratoire nomade 2015 mai
Laboratoire nomade 2015 mai
 
Bay of Plenty, October 2014, Travel Digest
Bay of Plenty, October 2014, Travel DigestBay of Plenty, October 2014, Travel Digest
Bay of Plenty, October 2014, Travel Digest
 
Allen
Allen Allen
Allen
 
Brinch hansen
Brinch hansenBrinch hansen
Brinch hansen
 
صناعة التأثير
صناعة التأثيرصناعة التأثير
صناعة التأثير
 
Robinson crusoe
Robinson crusoeRobinson crusoe
Robinson crusoe
 
Epilepsy
EpilepsyEpilepsy
Epilepsy
 
Fiestaru07 2003
Fiestaru07 2003Fiestaru07 2003
Fiestaru07 2003
 

En vedette

С.А. Середа - Публикации
С.А. Середа - ПубликацииС.А. Середа - Публикации
С.А. Середа - ПубликацииSergey Sereda
 
What Makes Great Infographics
What Makes Great InfographicsWhat Makes Great Infographics
What Makes Great InfographicsSlideShare
 
Masters of SlideShare
Masters of SlideShareMasters of SlideShare
Masters of SlideShareKapost
 
STOP! VIEW THIS! 10-Step Checklist When Uploading to Slideshare
STOP! VIEW THIS! 10-Step Checklist When Uploading to SlideshareSTOP! VIEW THIS! 10-Step Checklist When Uploading to Slideshare
STOP! VIEW THIS! 10-Step Checklist When Uploading to SlideshareEmpowered Presentations
 
10 Ways to Win at SlideShare SEO & Presentation Optimization
10 Ways to Win at SlideShare SEO & Presentation Optimization10 Ways to Win at SlideShare SEO & Presentation Optimization
10 Ways to Win at SlideShare SEO & Presentation OptimizationOneupweb
 
How To Get More From SlideShare - Super-Simple Tips For Content Marketing
How To Get More From SlideShare - Super-Simple Tips For Content MarketingHow To Get More From SlideShare - Super-Simple Tips For Content Marketing
How To Get More From SlideShare - Super-Simple Tips For Content MarketingContent Marketing Institute
 
A Guide to SlideShare Analytics - Excerpts from Hubspot's Step by Step Guide ...
A Guide to SlideShare Analytics - Excerpts from Hubspot's Step by Step Guide ...A Guide to SlideShare Analytics - Excerpts from Hubspot's Step by Step Guide ...
A Guide to SlideShare Analytics - Excerpts from Hubspot's Step by Step Guide ...SlideShare
 
2015 Upload Campaigns Calendar - SlideShare
2015 Upload Campaigns Calendar - SlideShare2015 Upload Campaigns Calendar - SlideShare
2015 Upload Campaigns Calendar - SlideShareSlideShare
 
What to Upload to SlideShare
What to Upload to SlideShareWhat to Upload to SlideShare
What to Upload to SlideShareSlideShare
 
How to Make Awesome SlideShares: Tips & Tricks
How to Make Awesome SlideShares: Tips & TricksHow to Make Awesome SlideShares: Tips & Tricks
How to Make Awesome SlideShares: Tips & TricksSlideShare
 
Getting Started With SlideShare
Getting Started With SlideShareGetting Started With SlideShare
Getting Started With SlideShareSlideShare
 

En vedette (19)

Xcd pg
Xcd pgXcd pg
Xcd pg
 
Keyserv
KeyservKeyserv
Keyserv
 
Pom2004
Pom2004Pom2004
Pom2004
 
Cdexpert
CdexpertCdexpert
Cdexpert
 
Ckeygen
CkeygenCkeygen
Ckeygen
 
Keyexpo
KeyexpoKeyexpo
Keyexpo
 
Tezis im
Tezis imTezis im
Tezis im
 
С.А. Середа - Публикации
С.А. Середа - ПубликацииС.А. Середа - Публикации
С.А. Середа - Публикации
 
What Makes Great Infographics
What Makes Great InfographicsWhat Makes Great Infographics
What Makes Great Infographics
 
Masters of SlideShare
Masters of SlideShareMasters of SlideShare
Masters of SlideShare
 
STOP! VIEW THIS! 10-Step Checklist When Uploading to Slideshare
STOP! VIEW THIS! 10-Step Checklist When Uploading to SlideshareSTOP! VIEW THIS! 10-Step Checklist When Uploading to Slideshare
STOP! VIEW THIS! 10-Step Checklist When Uploading to Slideshare
 
You Suck At PowerPoint!
You Suck At PowerPoint!You Suck At PowerPoint!
You Suck At PowerPoint!
 
10 Ways to Win at SlideShare SEO & Presentation Optimization
10 Ways to Win at SlideShare SEO & Presentation Optimization10 Ways to Win at SlideShare SEO & Presentation Optimization
10 Ways to Win at SlideShare SEO & Presentation Optimization
 
How To Get More From SlideShare - Super-Simple Tips For Content Marketing
How To Get More From SlideShare - Super-Simple Tips For Content MarketingHow To Get More From SlideShare - Super-Simple Tips For Content Marketing
How To Get More From SlideShare - Super-Simple Tips For Content Marketing
 
A Guide to SlideShare Analytics - Excerpts from Hubspot's Step by Step Guide ...
A Guide to SlideShare Analytics - Excerpts from Hubspot's Step by Step Guide ...A Guide to SlideShare Analytics - Excerpts from Hubspot's Step by Step Guide ...
A Guide to SlideShare Analytics - Excerpts from Hubspot's Step by Step Guide ...
 
2015 Upload Campaigns Calendar - SlideShare
2015 Upload Campaigns Calendar - SlideShare2015 Upload Campaigns Calendar - SlideShare
2015 Upload Campaigns Calendar - SlideShare
 
What to Upload to SlideShare
What to Upload to SlideShareWhat to Upload to SlideShare
What to Upload to SlideShare
 
How to Make Awesome SlideShares: Tips & Tricks
How to Make Awesome SlideShares: Tips & TricksHow to Make Awesome SlideShares: Tips & Tricks
How to Make Awesome SlideShares: Tips & Tricks
 
Getting Started With SlideShare
Getting Started With SlideShareGetting Started With SlideShare
Getting Started With SlideShare
 

Similaire à Cdserv

Rocky - robot to play with my dog
Rocky - robot to play with my dogRocky - robot to play with my dog
Rocky - robot to play with my dogAlex Neskin
 
Hey, you should play this!
Hey, you should play this!Hey, you should play this!
Hey, you should play this!Jussi Laakkonen
 
Testador paramétrico de transistores - Implementing a Parametric Transitor te...
Testador paramétrico de transistores - Implementing a Parametric Transitor te...Testador paramétrico de transistores - Implementing a Parametric Transitor te...
Testador paramétrico de transistores - Implementing a Parametric Transitor te...Fernando Rui Campos
 
Iniciativa del defensor del ciudadano
Iniciativa del defensor del ciudadanoIniciativa del defensor del ciudadano
Iniciativa del defensor del ciudadanoAgenda Legislativa
 
Outsourcing 3.0: the agile way
Outsourcing 3.0: the agile wayOutsourcing 3.0: the agile way
Outsourcing 3.0: the agile wayAlexey Krivitsky
 
وزه‌ى با Wind energy كارۆ هه‌واى وزةى با كارؤ هةواى وزەی با - وزەی هەوا ...
وزه‌ى با Wind energy كارۆ هه‌واى  وزةى با    كارؤ هةواى  وزەی با - وزەی هەوا ...وزه‌ى با Wind energy كارۆ هه‌واى  وزةى با    كارؤ هةواى  وزەی با - وزەی هەوا ...
وزه‌ى با Wind energy كارۆ هه‌واى وزةى با كارؤ هةواى وزەی با - وزەی هەوا ...Rawaz Jalal
 
Limites et perspectives du cinéma d'horreur français
Limites et perspectives du cinéma d'horreur françaisLimites et perspectives du cinéma d'horreur français
Limites et perspectives du cinéma d'horreur françaisAmauryPascaud
 
One On One with Stephen Brant of Hitachi (Consulting magazine)
One On One with Stephen Brant of Hitachi (Consulting magazine)One On One with Stephen Brant of Hitachi (Consulting magazine)
One On One with Stephen Brant of Hitachi (Consulting magazine)Jacqueline Durett
 
Sample creative briefs
Sample creative briefsSample creative briefs
Sample creative briefsjosue_cerda
 
Sample creative briefs
Sample creative briefsSample creative briefs
Sample creative briefsjosue_cerda
 
Samplecreativebriefs 120321235914-phpapp02
Samplecreativebriefs 120321235914-phpapp02Samplecreativebriefs 120321235914-phpapp02
Samplecreativebriefs 120321235914-phpapp02Cagdas Seckin
 
Justin Hughes Press Release
Justin Hughes Press Release Justin Hughes Press Release
Justin Hughes Press Release Justin Michael
 
Coronacrisis leverde al 21 incidenten in gevangenissen op
Coronacrisis leverde al 21 incidenten in gevangenissen opCoronacrisis leverde al 21 incidenten in gevangenissen op
Coronacrisis leverde al 21 incidenten in gevangenissen opThierry Debels
 
Al Fazl International - 1st January 2016 Weekly UK
Al Fazl International - 1st January  2016 Weekly UKAl Fazl International - 1st January  2016 Weekly UK
Al Fazl International - 1st January 2016 Weekly UKmuzaffertahir9
 
Un petit guide de la domination du monde
Un petit guide de la domination du mondeUn petit guide de la domination du monde
Un petit guide de la domination du mondeGeoffrey Dorne
 
Bay Area HUG Feb 2011 Intro
Bay Area HUG Feb 2011 IntroBay Area HUG Feb 2011 Intro
Bay Area HUG Feb 2011 IntroOwen O'Malley
 
Ask the Pros: How to Manage Social Media at Your Nonprofit
Ask the Pros: How to Manage Social Media at Your NonprofitAsk the Pros: How to Manage Social Media at Your Nonprofit
Ask the Pros: How to Manage Social Media at Your NonprofitBig Duck
 

Similaire à Cdserv (20)

Cdex pg
Cdex pgCdex pg
Cdex pg
 
Rocky - robot to play with my dog
Rocky - robot to play with my dogRocky - robot to play with my dog
Rocky - robot to play with my dog
 
Mekong ARCC - Final Workshop - Fisheries Study
Mekong ARCC - Final Workshop -  Fisheries StudyMekong ARCC - Final Workshop -  Fisheries Study
Mekong ARCC - Final Workshop - Fisheries Study
 
Hey, you should play this!
Hey, you should play this!Hey, you should play this!
Hey, you should play this!
 
26thchapter
26thchapter26thchapter
26thchapter
 
Testador paramétrico de transistores - Implementing a Parametric Transitor te...
Testador paramétrico de transistores - Implementing a Parametric Transitor te...Testador paramétrico de transistores - Implementing a Parametric Transitor te...
Testador paramétrico de transistores - Implementing a Parametric Transitor te...
 
Iniciativa del defensor del ciudadano
Iniciativa del defensor del ciudadanoIniciativa del defensor del ciudadano
Iniciativa del defensor del ciudadano
 
Outsourcing 3.0: the agile way
Outsourcing 3.0: the agile wayOutsourcing 3.0: the agile way
Outsourcing 3.0: the agile way
 
وزه‌ى با Wind energy كارۆ هه‌واى وزةى با كارؤ هةواى وزەی با - وزەی هەوا ...
وزه‌ى با Wind energy كارۆ هه‌واى  وزةى با    كارؤ هةواى  وزەی با - وزەی هەوا ...وزه‌ى با Wind energy كارۆ هه‌واى  وزةى با    كارؤ هةواى  وزەی با - وزەی هەوا ...
وزه‌ى با Wind energy كارۆ هه‌واى وزةى با كارؤ هةواى وزەی با - وزەی هەوا ...
 
Limites et perspectives du cinéma d'horreur français
Limites et perspectives du cinéma d'horreur françaisLimites et perspectives du cinéma d'horreur français
Limites et perspectives du cinéma d'horreur français
 
One On One with Stephen Brant of Hitachi (Consulting magazine)
One On One with Stephen Brant of Hitachi (Consulting magazine)One On One with Stephen Brant of Hitachi (Consulting magazine)
One On One with Stephen Brant of Hitachi (Consulting magazine)
 
Sample creative briefs
Sample creative briefsSample creative briefs
Sample creative briefs
 
Sample creative briefs
Sample creative briefsSample creative briefs
Sample creative briefs
 
Samplecreativebriefs 120321235914-phpapp02
Samplecreativebriefs 120321235914-phpapp02Samplecreativebriefs 120321235914-phpapp02
Samplecreativebriefs 120321235914-phpapp02
 
Justin Hughes Press Release
Justin Hughes Press Release Justin Hughes Press Release
Justin Hughes Press Release
 
Coronacrisis leverde al 21 incidenten in gevangenissen op
Coronacrisis leverde al 21 incidenten in gevangenissen opCoronacrisis leverde al 21 incidenten in gevangenissen op
Coronacrisis leverde al 21 incidenten in gevangenissen op
 
Al Fazl International - 1st January 2016 Weekly UK
Al Fazl International - 1st January  2016 Weekly UKAl Fazl International - 1st January  2016 Weekly UK
Al Fazl International - 1st January 2016 Weekly UK
 
Un petit guide de la domination du monde
Un petit guide de la domination du mondeUn petit guide de la domination du monde
Un petit guide de la domination du monde
 
Bay Area HUG Feb 2011 Intro
Bay Area HUG Feb 2011 IntroBay Area HUG Feb 2011 Intro
Bay Area HUG Feb 2011 Intro
 
Ask the Pros: How to Manage Social Media at Your Nonprofit
Ask the Pros: How to Manage Social Media at Your NonprofitAsk the Pros: How to Manage Social Media at Your Nonprofit
Ask the Pros: How to Manage Social Media at Your Nonprofit
 

Plus de CompaniaDekartSRL (20)

Ikeygen
IkeygenIkeygen
Ikeygen
 
Keycert
KeycertKeycert
Keycert
 
Ikeyexpo
IkeyexpoIkeyexpo
Ikeyexpo
 
Suprfull
SuprfullSuprfull
Suprfull
 
Pom2010a
Pom2010aPom2010a
Pom2010a
 
Pom2009a
Pom2009aPom2009a
Pom2009a
 
Pom2005b
Pom2005bPom2005b
Pom2005b
 
Pom2002e
Pom2002ePom2002e
Pom2002e
 
Pom2001d
Pom2001dPom2001d
Pom2001d
 
Pom2001a
Pom2001aPom2001a
Pom2001a
 
Pom2001
Pom2001Pom2001
Pom2001
 
Petrova 99full
Petrova 99fullPetrova 99full
Petrova 99full
 
Petr98
Petr98Petr98
Petr98
 
Pc pz
Pc pzPc pz
Pc pz
 
Ecomigra
EcomigraEcomigra
Ecomigra
 
E com an
E com anE com an
E com an
 
Dcsp pg1
Dcsp pg1Dcsp pg1
Dcsp pg1
 
Dcsp
DcspDcsp
Dcsp
 
D crypto api
D crypto apiD crypto api
D crypto api
 
Ca1
Ca1Ca1
Ca1
 

Cdserv

  • 1. SMART-CARD Smart- !"#$% 18 2001
  • 2. ; < ?DDKO C$>FGHD# "$CHMI!# $L!"?D!H QFD>T!O (% "#!PH @NK>? ), %U$C@V!U % C!D?G!AH">! N?EMFI?HGFW J!JP!$#H>F cdserv.dll. M!%$C!#"@ DH$JU$C!G?@ "LM?%$AD?@ !DQ$MG?T!@, "%HCHD!@ $ %$NG$IDKU $S!J>?U, %$ND!>?WV!U LM! M?J$#H QFD>T!O J!JP!$#H>!. DSSSCT File : cdserv.doc Ref : CDSERVPG0000 Revision:2.0 2 / 18 Copyright © Dekart S.R.L (www.dekart.com) - 2001 This document shall not be disclosed to a third party without prior written consent of Dekart S.R.L. !>?>?@ A?"#B C?DD$E$ C$>FGHD#? DH G$IH# JK#B %$"LM$!N%HCHD? % >?>$O JK #$ D! JKP$ Q$MGH ! >?>!G! JK, #$ D! JKP$ "MHC"#%?G! JHN L!"BGHDD$E$ M?NMHSHD!@ %P?CHPBT? ?%#$M">!U LM?%. 9 : .
  • 3. EP?%PHD!H 1. ?@ ABCDCEAF A G9DCHBI@ CJCKB;L@BAF (EDC99; AN)..................................... 4 1.1 ........................................................................................................................................... 4 1.2 Y Z ............................................................................................................... 4 1.3 Z ] ................................................................................. 4 1.4 ^ .............................................................................................................................. 5 2. B;KB;L@BA@ JAJDAC?@QA CDSERV.DLL .............................................................................. 6 3. CJTA@ 9H@U@BAF ........................................................................................................................... 6 3. C A9;BA@ VGBQWAN JAJDAC?@QA CDSERV.DLL ............................................................ 7 3.1. VGBQWAF CDSERVINI ..................................................................................................................... 7 3.2. VGBQWAF CDOPENCARD ............................................................................................................... 8 3.3. VGBQWAF CDGETPURSEDATA ....................................................................................................... 8 3.4. VGBQWAF CDCHANGEDATES ......................................................................................................... 9 3.5. VGBQWAF CDUPDATEMAXAMOUNT............................................................................................ 10 3.6. VGBQWAF CDSERVCLOSE ............................................................................................................. 10 4. ADCb@BAF................................................................................................................................... 10 4.1. 9CCJT@BAF CJ CcAJQ;d........................................................................................................... 10 4.2. A @ HIKCH; VGBQWAN CUGDF AK CE ; I (BORLAND C++ V.5.01) ....................... 15 DSSSCT File : cdserv.doc Ref : CDSERVPG0000 Revision:2.0 3 / 18 Copyright © Dekart S.R.L (www.dekart.com) - 2001 This document shall not be disclosed to a third party without prior written consent of Dekart S.R.L. !>?>?@ A?"#B C?DD$E$ C$>FGHD#? DH G$IH# JK#B %$"LM$!N%HCHD? % >?>$O JK #$ D! JKP$ Q$MGH ! >?>!G! JK, #$ D! JKP$ "MHC"#%?G! JHN L!"BGHDD$E$ M?NMHSHD!@ %P?CHPBT? ?%#$M">!U LM?%. 9 : .
  • 4. 1. ? : (E g) 1.1 9 9G – !"#HG? FAH#? L$#MHJPHD!@ MH"FM"$% ! JHND?P!ADKU M?"AH#$% " !"L$PBN$%?D!HG smart->?M# (D?N%?D!H "!"#HGK). Payflex - D#HPPH>#F?PBD?@ (smart) >?M#? Q!MGK Schlumberger, >$#$M?@ L$P$IHD? % $"D$%F "!"#HG JHND?P!ADKU M?"AH#$%, M?NM?J?#K%?HGKU >$GL?D!HO Dekart S.R.L. SCR-60, Reflex 60, Reflex 72 (Schlumberger), TOWITOKO ChipDrive - "A!#K%?#HP! smart->?M#, !"L$PBNFWV!H"@ % $#CHPBDKU #HUD$P$E!AH">!U N%HDB@U . ?J$#?W# #$PB>$ "$%GH"#D$ " >$GLBW#HM$G, ! FLM?%P@W#"@ LM$EM?GGDKG $JH"LHAHD!HG, M?J$#?WVHG D? >$GLBW#HMH. r - $ME?D!N?T!@, %KL$PD@WV?@ LHM"$D?P!N?T!W >?M# CHMI?#HPHO, %HCFV?@ J?NK >?M#-"AH#$% CHMI?#HPHO ! $JM?J?#K%?WV?@ LP?#gIDKH #M?DN?>T!!. W - LM$TH""!DE$%KO THD#M. $CM?NCHPHD!H (FA?"#D!>) "!"#HGK, % N?C?A! >$#$M$E$ %U$C!# $J"PFI!%?D!H #HMG!D?PBD$E$ L$P@, "J$M #M?DN?>T!O $# #HMG!D?P$%, !U "$M#!M$%>F ! M?""KP>F hG!#HD#?G. W9 – THD#M "!"#HGK. ME?D!N?T!@, N?D!G?WV?@"@ LMHC%?M!#HPBD$O LHM"$D?P!N?T!HO >?M# CHMI?#HPHO ! !U LHMHC?AHO hG!#HD#?G (FA?"#D!>?G "!"#HGK). W9Q - THD#M "HM#!Q!>?T!! >PWAHO (Certificate authority). ME?D!N?T!@, $JH"LHA!%?WV?@ "HM#!Q!>?T!W >PWAHO FA?"#D!>$% "!"#HGK. !"# . QFD>T!! THD#M? "!"#HGK ! THD#M? "HM#!Q!>?T!! >PWAHO %KL$PD@H# $CD? $ME?D!N?T!@. U : - Q!N!AH">$H P!T$, !"L$PBNFWVHH >?M#F % >?AH"#%H LP?#gID$E$ !D"#MFGHD#? LM! $LP?#H #$%?M? !P! F"PFE!. < – F"P$%D?@ #$%?M$-CHDHID?@ HC!D!T? (MFJP!, PH!, C$PP?MK, P!#MK, > #·A. ! #.C.), !"L$PBNFHG?@ % % >?AH"#%H "MHC"#%? LP?#HI?. 1.2 9 :s t DES (Data Encryption Standard) - #?DC?M# S!QM$%?D!@ C?DDKU. !GGH#M!AD?@ "!"#HG? S!QM$%?D!@ " CP!D$O >PWA? ! S!QMFHG$E$ JP$>? C?DDKU 64 J!#?. nQQH>#!%D?@ CP!D? >PWA? D? "?G$G CHPH M?%D? 56 ($C!D J!# >?IC$E$ J?O#? !"L$PBNFH#"@ % >?AH"#%H >$D#M$PBD$E$). RSA - "!"#HG? S!QM$%?D!@ D? $"D$%H $#>MK#KU >PWAHO. M!GHD@H#"@ % "!"#HGH CP@ "#?#!AH">$O ?F#HD#!Q!>?T!! >?M# CHMI?#HPHO. SHS (Secure Hash Standard) - #?DC?M# D? UHS-QFD>T!W. #?DC?M# $LMHCHP@H# ?PE$M!#G Secure Hash Algorithm (SHA-1), >$#$MKO G$IH# !"L$PBN$%?#B"@ CP@ "$NC?D!@ ""I?#$E$" LMHC"#?%PHD!@ DH>$#$M$O L$"PHC$%?#HPBD$"#!. ?>$H LMHC"#?%PHD!H D$"!# D?N%?D!H $"%$& '(" )*'+ $*,"( +-#*'( . 1.3 Q : : t < u SAM (Secure Application Module) – "LHT!?PBD?@ >?M#?, >$#$M?@ $JH"LHA!%?H# JHN$L?"D$"#B LM! $LHM?T!@U CHJH#$%?D!@ ! >MHC!#$%?D!@. Q (!P! >?M#? LHM"$D?PBDKU >PWAHO) – "LHT!?PBD?@ >?M#?, >$#$M?@ LMHCD?ND?AHD? CP@ N?V!VHDD$E$ UM?DHD!@ >PWA? (>PWAHO) C$"#FL? $#%H#"#%HDDKU P!T "!"#HGK. ?M#? C$"#FL? LM!D?CPHI!# >$D>MH#D$GF $#%H#"#%HDD$GF P!TF "!"#HGK ! N?V!VHD? HE$ LHM"$D?PBDKG !CHD#!Q!>?T!$DDKG D$GHM$G (PIN->$C$G). 9 g :g : - DH!NGHD@HG?@, FD!>?PBD?@ CP@ >?IC$O >?M#K C%$!AD?@ L$"PHC$%?#HPBD$"#B CP!D$O 8 J?O#, N?L!"K%?HG?@ D? >?M#F N?%$C$G !NE$#$%!#HPHG. DSSSCT File : cdserv.doc Ref : CDSERVPG0000 Revision:2.0 4 / 18 Copyright © Dekart S.R.L (www.dekart.com) - 2001 This document shall not be disclosed to a third party without prior written consent of Dekart S.R.L. !>?>?@ A?"#B C?DD$E$ C$>FGHD#? DH G$IH# JK#B %$"LM$!N%HCHD? % >?>$O JK #$ D! JKP$ Q$MGH ! >?>!G! JK, #$ D! JKP$ "MHC"#%?G! JHN L!"BGHDD$E$ M?NMHSHD!@ %P?CHPBT? ?%#$M">!U LM?%. 9 : .
  • 5. BIN (Bank Identification Number) – !CHD#!Q!>?T!$DDKO D$GHM hG!#HD#? (8 T!QM), "$"#?%PHDDKO % "$$#%H#"#%!! "$ "#?DC?M#$G ISO. PIN (Personal Identification Number) – LHM"$D?PBDKO !CHD#!Q!>?T!$DDKO D$GHM L$PBN$%?#HP@ ($# 4 C$ 8 CH"@#!ADKU T!QM). P?CHPHT >?M#K $J@N?D CHMI?#B "%$O PIN - >$C % "H>MH#H. PAN (Primary Account Number) – D$GHM >?M#K (19 T!QM), LHM%KH 8 T!QM >$#$M$E$ "$$#%H#"#%FW# BIN. ID (Identifier) – !CHD#!Q!>?#$M (8 T!QM), $LMHCHP@WV!O !GHD? Q?OP$%, % >$#$MKU N?L!"K%?W#"@ RSA >PWA! LM$TH""!DE$%$E$ THD#M? ! hG!#HD#?, N?LM$" D? "HM#!Q!>?T!W ! "HM#!Q!>?#, ? #?>IH PAN->$CK hG!#HD#?. $%L?C?H# " BIN. 1.4 Q v : Q v – %DF#MHDD!H >PWA!, >$#$MKH UM?D@#"@ D? >?M#H C$"#FL? ! LM!GHD@W#"@ CP@ «$#>MK#!@» M?NP!ADKU #HUD$P$E!AH">!U LM!P$IHD!O "!"#HGK, LM!AHG % J$PBS!D"#%H "PFA?H% $D! "PFI?# CP@ ?>#!%!N?T!! CMFE!U ("H>MH#DKU) >PWAHO "!"#HGK. U t < v - "M?"LKPHD!H" >PWA?. "L$PBNFH#"@ CP@ !DC!%!CF?P!N?T!! %DF#MHDD!U >PWAHO >?M# CHMI?#HPHO. v - "H>MH#DKO >PWA "!GGH#M!AD$O "!"#HGK S!QM$%?D!@, !"L$PBNFHGKO % "!"#HGH CP@ C!%HM"!Q!>?T!! >PWAHO >?M# CHMI?#HPHO. - $#>MK#?@ A?"#B >PWA? "!"#HGK S!QM$%?D!@ RSA. r - $#>MK#?@ A?"#B >PWA? RSA. $IH# JK#B M?%D$O 3 P!J$ AH#%gM#$GF A!"PF ZHMG? (Fermat 4 = 2^2^4+1 = 65537). h>"L$DHD#? M?%D? 3. 9 t - C%$!AD?@ L$"PHC$%?#HPBD$"#B, L$PFA?HG?@ "LHT!?PBDKG! >M!L#$EM?Q!AH">!G! GH#$C?G! ! "PFI?V?@ CP@ LM$%HM>! C$"#$%HMD$"#! DH>$#$M$O L$"PHC$%?#HPBD$"#! C?DDKU. 9 g - L$"PHC$%?#HPBD$"#B C%$!ADKU C?DDKU, >$#$M?@ "$NC?g#"@ "LHT!?PBDKG! GHU?D!NG?G! % >?M#?U ! #HMG!D?P?U CP@ G$C!Q!>?T!! "$$JVHD!O " THPBW !DC!%!CF?P!N?T!! LM$#$>$P? $JGHD? $# $CD$E$ "H?D"? > CMFE$GF DSSSCT File : cdserv.doc Ref : CDSERVPG0000 Revision:2.0 5 / 18 Copyright © Dekart S.R.L (www.dekart.com) - 2001 This document shall not be disclosed to a third party without prior written consent of Dekart S.R.L. !>?>?@ A?"#B C?DD$E$ C$>FGHD#? DH G$IH# JK#B %$"LM$!N%HCHD? % >?>$O JK #$ D! JKP$ Q$MGH ! >?>!G! JK, #$ D! JKP$ "MHC"#%?G! JHN L!"BGHDD$E$ M?NMHSHD!@ %P?CHPBT? ?%#$M">!U LM?%. 9 : .
  • 6. 2. B cdserv.dll $CFPB cdserv.dll LMHCD?ND?AHD CP@ $J"PFI!%?D!@ >?M#K L$PBN$%?#HP@ (L$PFAHD!@ !DQ$MG?T!! $ >?M#H ! !NGHDHD!@ M@C? L?M?GH#M$% - L$#$P>? >$SHPB>$%, "M$>? CHO"#%!@ >?M#K). ! 3. C w !D?G!AH">! N?EMFI?HG?@ J!JP!$#H>? cdserv.dll %>PWA?H# % "HJ@ "PHCFWV!H QFD>T!!: • CDservIni – !D!T!?P!N?T!@ LM$TH""?; • CDOpenCard – $#>MK#!H >?M#K L$PBN$%?#HP@ " $CD$%MHGHDDKG LM$%HCHD!HG ?F#HD#!Q!>?T!! ! A#HD!HG C?DDKU " >?M#K; • CDGetPurseData – A#HD!H L$PD$O !DQ$MG?T!! $ >$SHPB>?U >?M#K L$PBN$%?#HP@; • CDUpdateMaxAmount – !NGHDHD!H L$#$P>? >$SHPB>? >?M#K L$PBN$%?#HP@; • CDChangeDates – !NGHDHD!H "M$>? CHO"#%!@ >?M#K; • CDservClose – N?%HMSHD!H LM$TH""?. M!GHA?D!H. ?J$#? " G$CFPHG C$PID? D?A!D?#B"@ %KN$%$G QFD>T!! CDservIni ! N?%HMS?#B"@ %KN$%$G QFD>T!! CDservClose. ZFD>T!!, %U$C@V!H % G$CFPB cdserv.dll, MH?P!N$%?DK D? @NK>?U LM$EM?GG!M$%?D!@ , C++. H$JU$C!G$H $J$MFC$%?D!H: • $GLBW#HM IBM PC (486 ! %KSH), !GHWV!O "%$J$CDKH L$"PHC$%?#HPBDKH L$M#K; • Smart->?M#K: >?M#? C$"#FL? hG!#HD#?, >?M#? L$PBN$%?#HP@; • A!#K%?#HPB smart->?M# $CD$E$ !N "PHCFWV!U #!L$%: SCR-60, Reflex 60, Reflex 72 (Schlumberger), TOWITOKO ChipDrive. H$JU$C!G$H LM$EM?GGD$H $JH"LHAHD!H: • LHM?T!$DD?@ "!"#HG? MS Windows 9x, NT; • CT API CP@ "A!#K%?#HPHO TOWITOKO ChipDrive ! Schlumberger Reflex 72; • Z?OP >PWAHO hG!#HD#? ID_hG!#HD#?.se3 (#MH#B@ EMFLL?); • Z?OP "HM#!Q!>?#? $#>MK#$E$ >PWA? ID_hG!#HD#?.crt. "#?D$%>? G$CFP@ cdserv.dll $"FVH"#%P@H#"@ LM$"#KG HE$ >$L!M$%?D!HG % "$$#%H#"#%FWV!O >?#?P$E (SYSTEM, SYSTEM32) "!"#HGK Windows. DSSSCT File : cdserv.doc Ref : CDSERVPG0000 Revision:2.0 6 / 18 Copyright © Dekart S.R.L (www.dekart.com) - 2001 This document shall not be disclosed to a third party without prior written consent of Dekart S.R.L. !>?>?@ A?"#B C?DD$E$ C$>FGHD#? DH G$IH# JK#B %$"LM$!N%HCHD? % >?>$O JK #$ D! JKP$ Q$MGH ! >?>!G! JK, #$ D! JKP$ "MHC"#%?G! JHN L!"BGHDD$E$ M?NMHSHD!@ %P?CHPBT? ?%#$M">!U LM?%. 9 : .
  • 7. 3. C t < g cdserv.dll 3.1. V < CDservIni ."/,"# : CDservIni ."/#"! # : ZFD>T!@ $JH"LHA!%?H# !D!T!?P!N?T!W LM$TH""? $J"PFI!%?D!@ >?M#K L$PBN$%?#HP@. 0'+*, 1 ) # # 1: H$JU$C!G$ D?P!A!H >?M#K C$"#FL? hG!#HD#?, Q?OP? " #MH#BHO EMFLL$O >PWAHO hG!#HD#? ! Q?OP? " "HM#!Q!>?#$G $#>MK#$E$ >PWA? hG!#HD#?. 3 #("4' ': #include "CDserv.h" int CDservIni (char *Port, short ReaderType, char *Iss_KeyFile, char *PIN, char *Iss_ID, char *CRTfile, char *IccNo) 56*$#7 $"##7 : Port – F>?N?#HPB D? "#M$>F "$CHMI?VFW !G@ >$GGFD!>?T!$DD$E$ L$M#? (D?LM!GHM, COM1, COM2, COM3, COM4). ReaderType – THP$H A!"P$, F>?NK%?WVHH #!L "A!#K%?#HP@. $CCHMI!%?W#"@ 4 #!L? "A!#K%?#HPHO: ˆ L.L. M$!N%$C!#HPB / ?N%?D!H ReaderType 1 Schlumberger / SCR 60 0 2 Schlumberger / Reflex 60 1 3 TOWITOKO / ChipDrive 2 4 Schlumberger / Reflex 72 3 Iss_KeyFile – F>?N?#HPB D? "#M$>F, "$CHMI?VFW LF#B ! !G@ Q?OP? " #MH#BHO EMFLL$O >PWAHO hG!#HD#? (C$ 256 "!G%$P$%). PIN – F>?N?#HPB D? "#M$>F, "$CHMI?VFW PIN–>$C >?M#K C$"#FL?. PIN– >$C G$IH# "$"#$@#B $# 4 C$ 8 CH"@#!ADKU T!QM. Iss_ID - F>?N?#HPB D? "#M$>F, "$CHMI?VFW !CHD#!Q!>?#$M (BIN) hG!#HD#? (8 CH"@#!ADKU T!QM). CRTfile – F>?N?#HPB D? "#M$>F, "$CHMI?VFW LF#B ! !G@ Q?OP? " "HM#!Q!>?#$G $#>MK#$E$ >PWA? hG!#HD#? (C$ 256 "!G%$P$%). 576*$#7 $"##7 : IccNo – F>?N?#HPB D? JFQHM ("#M$>F), % >$#$M$G JFCH# %$N%M?VgD "HM!ODKO D$GHM >?M#K C$"#FL?. ?NGHM JFQHM? C$PIHD JK#B DH GHDHH 33 J?O#$%. 5*/, "8" * /#"! # : 1 – % "PFA?H F"LHSD$E$ N?%HMSHD!@ LM$EM?GGK, !D?AH $#M!T?#HPBD$H ND?AHD!H >$C? $S!J>! ("G. >$CK $S!J$> L. 4.1). 9: "# ! # 1: H$JU$C!G$ "$JPWCHD!@ "#M$E$E$ "$$#%H#"#%!@ #!L? "A!#K%?#HP@ (ReaderType) " MH?PBDKG "A!#K%?#HPHG, L$C>PWAgDDKG > C?DD$GF L$"PHC$%?#HPBD$GF L$M#F. H"$JPWCHD!H h#$E$ $EM?D!AHD!@ LM!%$C!# > DHLMHC">?NFHGKG MHNFPB#?#?G. ,7/*," ;<#4= / ) *: " 7 (BC++ v.5.01) "G. L. 4.2 DSSSCT File : cdserv.doc Ref : CDSERVPG0000 Revision:2.0 7 / 18 Copyright © Dekart S.R.L (www.dekart.com) - 2001 This document shall not be disclosed to a third party without prior written consent of Dekart S.R.L. !>?>?@ A?"#B C?DD$E$ C$>FGHD#? DH G$IH# JK#B %$"LM$!N%HCHD? % >?>$O JK #$ D! JKP$ Q$MGH ! >?>!G! JK, #$ D! JKP$ "MHC"#%?G! JHN L!"BGHDD$E$ M?NMHSHD!@ %P?CHPBT? ?%#$M">!U LM?%. 9 : .
  • 8. 3.2. V < CDOpenCard ."/,"# : CDOpenCard ."/#"! # : ZFD>T!@ $#>MK%?H# >?M#F L$PBN$%?#HP@ ! LM$%$C!# HH ?F#HD#!Q!>?T!W. M$GH #$E$, QFD>T!@ $JH"LHA!%?H# A#HD!H C?DDKU " >?M#K L$PBN$%?#HP@. 0'+*, 1 ) # # 1: H$JU$C!G$ D?P!A!H >?M#K L$PBN$%?#HP@. 3 #("4' ': #include "CDserv.h" int CDOpenCard (char *PANcode, char *SerNo, char *USRname, char *StartDate, char *EndDate) 56*$#7 $"##7 : #"F#"#%FW# 576*$#7 $"##7 : PANcode – F>?N?#HPB D? JFQHM ("#M$>F), % >$#$M$G JFCH# %$N%M?VgD PAN->$C >?M#K L$PBN$%?#HP@. ?NGHM JFQHM? C$PIHD JK#B DH GHDHH 20 J?O#$%. SerNo - F>?N?#HPB D? JFQHM ("#M$>F), % >$#$M$G JFCH# %$N%M?VgD "HM!ODKO D$GHM >?M#K L$PBN$%?#HP@. ?NGHM JFQHM? C$PIHD JK#B DH GHDHH 33 J?O#$%. USRname - F>?N?#HPB D? JFQHM ("#M$>F), % >$#$M$G JFCH# %$N%M?VHD$ !G@ L$PBN$%?#HP@. ?NGHM JFQHM? C$PIHD JK#B DH GHDHH 40 J?O#$%. StartDate - F>?N?#HPB D? JFQHM ("#M$>F), % >$#$M$G JFCH# %$N%M?VHD? C?#? D?A?P? CHO"#%!@ >?M#K. Z$MG?# ŠŠ. EndDate - F>?N?#HPB D? JFQHM ("#M$>F), % >$#$M$G JFCH# %$N%M?VHD? C?#? $>$DA?D!@ CHO"#%!@ >?M#K. Z$MG?# ŠŠ. 5*/, "8" * /#"! # : 1 – LM! F"LHSD$G N?%HMSHD!! LM$EM?GGK, !D?AH $#M!T?#HPBD$H ND?AHD!H >$C? $S!J>! ("G. >$CK $S!J$> % L. 4.1) ,7/*," ;<#4= / ) *: " 7 (BC++ v.5.01) "G. L. 4.2 3.3. V < CDGetPurseData ."/,"# : CDGetPurseData ."/#"! # : ZFD>T!@ LM$%HM@H# D?P!A!H >?M#K L$PBN$%?#HP@ % "A!#K%?#HPH ! $JH"LHA!%?H# L$PFAHD!H L$PD$O !DQ$MG?T!! $ %KJM?DD$G hPH>#M$DD$G >$SHPB>H >?M#K L$PBN$%?#HP@. 0'+*, 1 ) # # 1: H$JU$C!G$ D?P!A!H >?M#K L$PBN$%?#HP@. 3 #("4' ': #include " CDserv.h" int CDGetPurseData (int PurseNo, char *CurCode, char *AccountNo, char *MaxAmount, char *LastDebitDate, char *LastCreditDate, char *PurseBalance, char *OperationHistory) 56*$#7 $"##7 : DSSSCT File : cdserv.doc Ref : CDSERVPG0000 Revision:2.0 8 / 18 Copyright © Dekart S.R.L (www.dekart.com) - 2001 This document shall not be disclosed to a third party without prior written consent of Dekart S.R.L. !>?>?@ A?"#B C?DD$E$ C$>FGHD#? DH G$IH# JK#B %$"LM$!N%HCHD? % >?>$O JK #$ D! JKP$ Q$MGH ! >?>!G! JK, #$ D! JKP$ "MHC"#%?G! JHN L!"BGHDD$E$ M?NMHSHD!@ %P?CHPBT? ?%#$M">!U LM?%. 9 : .
  • 9. PurseNo - D$GHM hPH>#M$DD$E$ >$SHPB>? >?M#K L$PBN$%?#HP@ (1, 2 !P! 3). 576*$#7 $"##7 : CurCode - D? JFQHM ("#M$>F), % >$#$M$G JFCH# %$N%M?VgD >$C %?PW#K L$ ISO, LMHC"#?%PHDDKO % ASCII >$CH (4 J?O#?) AccountNo – F>?N?#HPB D? JFQHM ("#M$>F), % >$#$M$G JFCH# %$N%M?VgD D$GHM "AH#? >$SHPB>?. ?NGHM JFQHM? C$PIHD JK#B DH GHDHH 20 J?O#$%. MaxAmount - F>?N?#HPB D? JFQHM ("#M$>F), % >$#$M$G JFCH# %$N%M?VgD L$#$P$> %KJM?DD$E$ >$SHPB>? >?M#K L$PBN$%?#HP@. ?NGHM JFQHM? C$PIHD JK#B DH GHDHH 5 J?O#$%. OperationHistory - F>?N?#HPB D? JFQHM ("#M$>F), % >$#$M$G JFCH# %$N%M?VHD? !DQ$MG?T!@ $ 4 L$"PHCD!U $LHM?T!@U " >$SHPB>$G. ?DD?@ "#M$>? "$"#$!# !N 4 "#M$> (" DFPH%KG L$"PHCD!G "!G%$P$G), >?IC?@ !N >$#$MKU "$CHMI!#: • ?#F $LHM?T!! (3 J?O#?, Q$MG?# ŠŠ); • $C >$GGHM"?D#? (4 J?O#?); • FGGF $LHM?T!! (3 J?O#?). ?NGHM JFQHM? C$PIHD JK#B DH GHDHH 100 J?O#$%. PurseBalance - F>?N?#HPB D? JFQHM ("#M$>F), % >$#$M$G JFCH# %$N%M?VHD? !DQ$MG?T!@ $ J?P?D"?U L$"PH >?IC$O !N 4 L$"PHCD!U $LHM?T!O " >$SHPB>$G. ?DD?@ "#M$>? "$"#$!# !N 4 "#M$> (" DFPH%KG L$"PHCD!G "!G%$P$G), >?IC?@ !N >$#$MKU "$CHMI!# J?P?D" >$SHPB>? (4 J?O#?). ?NGHM JFQHM? C$PIHD JK#B DH GHDHH 40 J?O#$%. LastDebitDate - F>?N?#HPB D? JFQHM ("#M$>F), % >$#$M$G JFCH# %$N%M?VHD? C?#? L$"PHCDHO $LHM?T!! CHJH#$%?D!@. Z$MG?# ŠŠ. LastCreditDate - F>?N?#HPB D? JFQHM ("#M$>F), % >$#$M$G JFCH# %$N%M?VHD? C?#? L$"PHCDHO $LHM?T!! >MHC!#$%?D!@. Z$MG?# ŠŠ. 5*/, "8" * /#"! # : 1 – LM! F"LHSD$G N?%HMSHD!! LM$EM?GGK, !D?AH $#M!T?#HPBD$H ND?AHD!H >$C? $S!J>! ("G. >$CK $S!J$> % L. 4.1) ,7/*," ;<#4= / ) *: " 7 (BC++ v.5.01) "G. L. 4.2 3.4. V < CDChangeDates ."/,"# : CDChangeDates ."/#"! # : ZFD>T!@ $JH"LHA!%?H# !NGHDHD!H "M$>? CHO"#%!@ >?M#K L$PBN$%?#HP@. 0'+*, 1 ) # # 1: H$JU$C!G$ D?P!A!H >?M#K L$PBN$%?#HP@. 3 #("4' ': #include "CDserv.h" int CDChangeDates (char * NewStartDate, char * NewEndDate) 56*$#7 $"##7 : NewStartDate - F>?N?#HPB D? "#M$>F, "$CHMI?VFW D$%FW C?#F D?A?P? CHO"#%!@ >?M#K. Z$MG?# ŠŠ. NewEndDate - F>?N?#HPB D? "#M$>F, "$CHMI?VFW D$%FW C?#F $>$DA?D!@ CHO"#%!@ >?M#K. Z$MG?# ŠŠ. 576*$#7 $"##7 : #"F#"#%FW# DSSSCT File : cdserv.doc Ref : CDSERVPG0000 Revision:2.0 9 / 18 Copyright © Dekart S.R.L (www.dekart.com) - 2001 This document shall not be disclosed to a third party without prior written consent of Dekart S.R.L. !>?>?@ A?"#B C?DD$E$ C$>FGHD#? DH G$IH# JK#B %$"LM$!N%HCHD? % >?>$O JK #$ D! JKP$ Q$MGH ! >?>!G! JK, #$ D! JKP$ "MHC"#%?G! JHN L!"BGHDD$E$ M?NMHSHD!@ %P?CHPBT? ?%#$M">!U LM?%. 9 : .
  • 10. 5*/, "8" * /#"! # : 1 – LM! F"LHSD$G N?%HMSHD!! LM$EM?GGK, !D?AH $#M!T?#HPBD$H ND?AHD!H >$C? $S!J>! ("G. >$CK $S!J$> % L. 4.1) ,7/*," ;<#4= / ) *: " 7 (BC++ v.5.01) "G. L. 4.2 3.5. V < CDUpdateMaxAmount ."/,"# : CDUpdateMaxAmount ."/#"! # : ZFD>T!@ $JH"LHA!%?H# "GHDF L$#$P>? hPH>#M$DD$E$ >$SHPB>? >?M#K L$PBN$%?#HP@. 0'+*, 1 ) # # 1: H$JU$C!G$ D?P!A!H SAM->?M#K. 3 #("4' ': #include "Cdserv.h" int CDUpdateMaxAmount (int PurseNo, unsigned long MaxAmount) 56*$#7 $"##7 : PurseNo - D$GHM hPH>#M$DD$E$ >$SHPB>? >?M#K L$PBN$%?#HP@ (1, 2 !P! 3). MaxAmount - CP!DD$H THP$H, $LMHCHP@WVHH D$%$H ND?AHD!H L$#$P>? %KJM?DD$E$ >$SHPB>? 576*$#7 $"##7 : #"F#"#%FW#. 5*/, "8" * /#"! # : 1 – LM! F"LHSD$G N?%HMSHD!! LM$EM?GGK, !D?AH $#M!T?#HPBD$H ND?AHD!H >$C? $S!J>! ("G. >$CK $S!J$> % L. 4.1) ,7/*," ;<#4= / ) *: " 7 (BC++ v.5.01) "G. L. 4.2 3.6. V < CDservClose ."/,"# : CDservClose ."/#"! # : ZFD>T!@ N?%HMS?H# LM$TH"" $J"PFI!%?D!@ >?M#K L$PBN$%?#HP@ ! $"%$J$IC?H# "A!#K%?#HPB smart->?M#. 3 #("4' ': #include "CDserv.h" void CDservClose (void) 56*$#7 $"##7 : #"F#"#%FW#. 5*/, "8" * /#"! # : #"F#"#%FH#. ,7/*," ;<#4= / ) *: " 7 (BC++ v.5.01) "G. L. 4.1 4. 4.1. 9 w s u Q B s Q g s 9G8 4*$7 ,*/, "(" 0 NOK HD$MG?PBD$H N?%HMSHD!H LM$EM?GGK. $ND!>P? $S!J>? LM! DSSSCT File : cdserv.doc Ref : CDSERVPG0000 Revision:2.0 10 / 18 Copyright © Dekart S.R.L (www.dekart.com) - 2001 This document shall not be disclosed to a third party without prior written consent of Dekart S.R.L. !>?>?@ A?"#B C?DD$E$ C$>FGHD#? DH G$IH# JK#B %$"LM$!N%HCHD? % >?>$O JK #$ D! JKP$ Q$MGH ! >?>!G! JK, #$ D! JKP$ "MHC"#%?G! JHN L!"BGHDD$E$ M?NMHSHD!@ %P?CHPBT? ?%#$M">!U LM?%. 9 : .
  • 11. M?J$#H " >?M#$O. 1 OK $MG?PBD$H N?%HMSHD!H LM$EM?GGK. 9H G4 *G8 :* 6" "4( " -1 ERR_PC_TIME_OUT S!J>? %KN%?D? "J$HG % M?J$#H >$GLBW#HM? -2...-7 HNHM% I ( "#'+ < 7 4*$7 *H G4 #( ; %'" CT-API -8 ERR_CT_API_NOT_ACC CT-API DHC$"#FLHD -10 ERR_CT_API_TRANSMIS S!J>? LHMHC?A! -11 ERR_CT_API_MEM_ASIGN S!J>? N?U%?#? L?G@#! 9H G4 , ,*/# 4"O8 ) "G*( ' ;<#4= 1 *$<+1 -12 ERR_FILE_NOT_FOUND S!J>? %KN%?D? $#"F#"#%!HG Q?OP? " >PWA?G! "!"#HGK -13 ERR_READING_FILE S!J>? LM! A#HD!! Q?OP? " >PWA?G! "!"#HGK -14 ERR_BAD_READER $@%PHD!H C?DD$O $S!J>! G$IH# E$%$M!#B $ "PHCFWVHG: • $#"F#"#%FH# "A!#K%?#HPB, !P! • #!L "A!#K%?#HP@ F>?N?D DHLM?%!PBD$, !P! • $S!J>? LM! M?J$#H "A!#K%?#HP@, !P! • F>?N?D DH%HMDKO -L$M#. -15 ERR_NO_CARD_ON_READER S!J>? %KN%?D? $#"F#"#%!HG >?M#K % "A!#K%?#HPH -16 ERR_BAD_ACCESS_CARD S!J>? LM! M?J$#H " >?M#$O C$"#FL?, %$NG$ID$, %"#?%PHD? DH >?M#? C$"#FL?, ? !D?@. -17 ERR_INVALID_PIN_LEN HLM?%!PBD?@ CP!D? PIN->$C? -18 ERR_INVALID_PIN_CHR M! %%$CH PIN->$C? JKP! !"L$PBN$%?DK DH #$PB>$ CH"@#!ADKH T!QMK -19 ERR_BAD_PIN_VERIFY PIN->$C DH %HM!Q!T!M$%?D -20 ERR_BAD_PASSWORD H%HMDKO L?M$PB C$"#FL? > "H>MH#DKG >PWA?G "!"#HGK -21 ERR_BAD_SAM_CARD S!J>? LM! M?J$#H " SAM >?M#$O, %$NG$ID$, %"#?%PHD? DH SAM >?M#?, ? !D?@. -22 ERR_BAD_USR_CARD S!J>? LM! M?J$#H " >?M#$O L$PBN$%?#HP@, %$NG$ID$, %"#?%PHD? DH >?M#? L$PBN$%?#HP@, ? !D?@. DSSSCT File : cdserv.doc Ref : CDSERVPG0000 Revision:2.0 11 / 18 Copyright © Dekart S.R.L (www.dekart.com) - 2001 This document shall not be disclosed to a third party without prior written consent of Dekart S.R.L. !>?>?@ A?"#B C?DD$E$ C$>FGHD#? DH G$IH# JK#B %$"LM$!N%HCHD? % >?>$O JK #$ D! JKP$ Q$MGH ! >?>!G! JK, #$ D! JKP$ "MHC"#%?G! JHN L!"BGHDD$E$ M?NMHSHD!@ %P?CHPBT? ?%#$M">!U LM?%. 9 : .
  • 12. -23 ERR_INV_REC_LEN HLM?%!PBD?@ CP!D? N?L!"! -24 ERR_DNOT_FOUND_KEY #"F#"#%FH# >PWA -25 ERR_APP_NOT_FOUND #"F#"#%FH# LM!P$IHD!H -26 ERR_READ_CARD_FILE S!J>? A#HD!@ Q?OP? D? >?M#H -27 ERR_IDENT_NOT_FOUND ? >?M#H $#"F#"#%FH# Q?OP 8000 -28 ERR_BAD_ISS_CERT H%HMDKO "HM#!Q!>?# $#>MK#$E$ >PWA? hG!#HD#? -29 ERR_BAD_ISS_IDEND H%HMDKO hG!#HD# -30 ERR_AUTH_NOT_FOUND ? >?M#H $#"F#"#%FH# Q?OP 8300 -31 ERR_UNKNOWN_AUTH_ALG H!N%H"#DKO ?PE$M!#G ?F#HD#!Q!>?T!! -32 ERR_SN_NOT_FOUND ? >?M#H $#"F#"#%FH# Q?OP 2F00 -33 ERR_SAM_NOT_FOUND #"F#"#%FH# SAM->?M#? -34 ERR_USR_NOT_FOUND #"F#"#%FH# >?M#? L$PBN$%?#HP@ -35 ERR_USR_PURS_NOTFOUND ? >?M#H L$PBN$%?#HP@ $#"F#"#%FH# Q?OP " >$SHPB>$G -36 ERR_SAM_PURS_NOTFOUND ? SAM->?M#H $#"F#"#%FH# Q?OP " >$SHPB>$G -37 ERR_USR_IS_BAD « ?L$MAHD?» >?M#? L$PBN$%?#HP@ – L$CPHI!# !NŒ@#!W -38 ERR_SAM_IS_BAD « ?L$MAHD?» SAM->?M#? – L$CPHI!# !NŒ@#!W -39 ERR_USR_CUR_NOT_MATCH M! %KN$%H QFD>T!! F>?N?D DH%HMDKO #!L %?PW#K % >$SHPB>H >?M#K L$PBN$%?#HP@ -40 ERR_SAM_CUR_NOT_MATCH M! %KN$%H QFD>T!! F>?N?D DH%HMDKO #!L %?PW#K % >$SHPB>H SAM->?M#K -41 ERR_READ_USR_CARD S!J>? LM! A#HD!! >?M#K L$PBN$%?#HP@ -42 ERR_READ_SAM_CARD S!J>? LM! A#HD!! SAM->?M#K -43 ERR_USR_DEBIT_PURSE S!J>? LM! CHJH#$%?D!! >$SHPB>? >?M#K L$PBN$%?#HP@ -44 ERR_USR_CREDIT_PURSE S!J>? LM! >MHC!#$%?D!! >$SHPB>? >?M#K L$PBN$%?#HP@ -45 ERR_SAM_DEBIT_PURSE S!J>? LM! CHJH#$%?D!! >$SHPB>? SAM->?M#K -46 ERR_INV_ID_LEN H%HMD?@ CP!D? !CHD#!Q!>?#$M? -47...-50 HNHM% 9H G4 , ,*/# 4"O8 ) "G*( ' G G+ *( 4*% mirlib ( "G*(" ' G*+-H ! '+" ) -51 ERR_BASE_TOO_BIG "D$%?D!H A!"P? $AHDB J$PBS$H CP@ LMHC"#?%PHD!@ -52 ERR_DIV_BY_ZERO HPHD!H D? D$PB (% J!JP!$#H>H DSSSCT File : cdserv.doc Ref : CDSERVPG0000 Revision:2.0 12 / 18 Copyright © Dekart S.R.L (www.dekart.com) - 2001 This document shall not be disclosed to a third party without prior written consent of Dekart S.R.L. !>?>?@ A?"#B C?DD$E$ C$>FGHD#? DH G$IH# JK#B %$"LM$!N%HCHD? % >?>$O JK #$ D! JKP$ Q$MGH ! >?>!G! JK, #$ D! JKP$ "MHC"#%?G! JHN L!"BGHDD$E$ M?NMHSHD!@ %P?CHPBT? ?%#$M">!U LM?%. 9 : .
  • 13. J$PBS!U A!"HP) -53 ERR_OVERFLOW HMHL$PDHD!H – A!"P$ $AHDB J$PBS$H -54 ERR_NEG_RESULT M! %KA!"PHD!! L$PFAHD$ $#M!T?#HPBD$H ND?AHD!H -55 ERR_BAD_FORMAT H%HMDKO %U$CD$O Q$MG?# A!"P? -56 ERR_BAD_BASE H%HMD$H $"D$%?D!H A!"P? -57 ERR_BAD_PARAMETERS H%HMD$H !"L$PBN$%?D!H L?M?GH#M? -58 ERR_OUT_OF_MEMORY HC$"#?#$AD$ $LHM?#!%D$O L?G@#! -59 ERR_NEG_ROOT H#DKO >$MHDB !N $#M!T?#HPBD$E$ A!"P? -60 ERR_NEG_POWER $N%HCHD!H A!"P? % $#M!T?#HPBDFW "#HLHDB -61 ERR_BAD_ROOT $LK#>? L$PFA!#B DH%HMDKO >$MHDB -62 ERR_INT_OP H%HMD?@ $LHM?T!@ D?C Flash A!"P$G -63 ERR_FLASH_OVERFLOW Flash LHMHL$PDHD!H -64 ERR_TOO_BIG !"P? $AHDB J$PBS!H -65 ERR_NEG_LOG $E?M!QG !N $#M!T?#HPBD$E$ A!"P? -66 ERR_DOUBLE_FAIL S!J>? LMH$JM?N$%?D!@ double % flash -67 ERR_IO_OVERFLOW HMHL$PDHD!H JFQHM? %%$C?/%K%$C? -68 ERR_NO_MIRSYS !JP!$#H>? J$PBS!U A!"HP DH LM$!D!T!?P!N!M$%?D? -69 ERR_BAD_MONT_MOD H%HMDKO $D#E$GHM! G$CFPB (C$PIHD JK#B DHAH#DKG) -70 ERR_NO_MONT_MOD H $LMHCHPHD $D#E$GHM! G$CFPB -71 ERR_EXP_TOO_BIG P!S>$G J$PBS?@ h>"L$DHD#? -72 ERR_NBASE_MBP_P2 "D$%?D!H C$PID$ JK#B "#HLHDBW 2 -73...–80 HNHM% -81 ERR_KEYFILE_NOT_FOUND #"F#"#%FH# Q?OP " >PWA?G! ] /] -82 ERR_READING_KEYFILE S!J>? A#HD!@ Q?OP? >PWAHO -83 ERR_PARFILE_NOT_FOUND #"F#"#%FH# Q?OP " L?M?GH#M?G! sPRPERS.PAR -84 ERR_BAD_NUM_OF_PARAM S!J$AD$H A!"P$ L?M?GH#M$% % Q?OPH sPRPERS.PAR -85 ERR_BAD_PARAM_FMT H%HMDKH ND?AHD!@ L?M?GH#M$% % Q?OPH sPRPERS.PAR -86 ERR_BAD_CA_ID_FMT H%HMD$H ND?AHD!H !CHD#!Q!>?#$M? ] -87 ERR_BAD_ISS_ID_FMT H%HMD$H ND?AHD!H !CHD#!Q!>?#$M? hG!#HD#? -88 ERR_CRTFILE_NOT_FOUND #"F#"#%FH# Q?OP " "HM#!Q!>?#$G $#>MK#$E$ >PWA? hG!#HD#? -89 ERR_CRT_ISS_NOT_CMP CHD#!Q!>?#$M hG!#HD#? DH DSSSCT File : cdserv.doc Ref : CDSERVPG0000 Revision:2.0 13 / 18 Copyright © Dekart S.R.L (www.dekart.com) - 2001 This document shall not be disclosed to a third party without prior written consent of Dekart S.R.L. !>?>?@ A?"#B C?DD$E$ C$>FGHD#? DH G$IH# JK#B %$"LM$!N%HCHD? % >?>$O JK #$ D! JKP$ Q$MGH ! >?>!G! JK, #$ D! JKP$ "MHC"#%?G! JHN L!"BGHDD$E$ M?NMHSHD!@ %P?CHPBT? ?%#$M">!U LM?%. 9 : .
  • 14. "$%L?C?H# " F>?N?DDKG % "HM#!Q!>?#H -90 ERR_CRT_DATE_EXPIRED "#H> "M$> CHO"#%!@ "HM#!Q!>?#? -91 ERR_CRT_CA_NOT_CMP CHD#!Q!>?#$M hG!#HD#? DH "$%L?C?H# " F>?N?DDKG % "HM#!Q!>?#H -92 ERR_CRT_LEN H%HMD?@ CP!D? "HM#!Q!>?#? -93 ERR_BAD_PUBLIC_LEN H%HMD?@ CP!D? $#>MK#$E$ >PWA? ] -94 ERR_BAD_AUTH_OF_CARD S!J>? ?F#HD#!Q!>?T!! -95 ERR_INV_LUHN_CODE HLM?%!PBD$H ND?AHD!H luhn->$C? -96 ERR_NOT_FREE_MEM HC$"#?#$AD$ "%$J$CD$E$ GH"#? -97 ERR_TRANS_KEY_VERIFY S!J>? %HM!Q!>?T!! #M?D"L$M#D$E$ >PWA? -98 ERR_CREATE_CARDFILE S!J>? LM! "$NC?D!! Q?OP? D? >?M#H -99 ERR_WRITE_CARD_FILE S!J>? N?L!"! Q?OP? D? >?M#F -100 ERR_BAD_IDENT_CONTENT H%HMD$H "$CHMI!G$H Q?OP? 8000 D? >?M#H -101 ERR_PERFILE_NOT_FOUND #"F#"#%FH# PER-Q?OP -102 ERR_SERNO_DONT_COMPAR H "$%L?C?H# MH?PBDKO "HM!ODKO D$GHM >?M#K ! D$GHM, F>?N?DDKO % PER-Q?OPH -103 ERR_BAD_START_DATE H%HMD?@ C?#? D?A?P? CHO"#%!@ SAM- >?M#K -104 ERR_BAD_END_DATE H%HMD?@ C?#? $>$DA?D!@ CHO"#%!@ SAM->?M#K -105 ERR_DATES_CONFLICT ?#? $>$DA?D!@ CHO"#%!@ SAM->?M#K LMH%KS?H# C?#F $>$DA?D!@ CHO"#%!@ "HM#!Q!>?#? $#>MK#$E$ >PWA? hG!#HD#? -106 ERR_PURSE_NOT_EMPTY $SHPH> DH LF"#$O -107 ERR_KEY_VERIFICATION S!J>? %HM!Q!>?T!! >PWA? -108 ERR_UPDATE_CARD_FILE S!J>? LHMHN?L!"! Q?OP? D? >?M#H -109 ERR_CHANGE_KEY S!J>? !NGHDHD!@ >PWA? -110 ERR_DEBIT_AMT_GRATE FGG? CHJH#? LMH%KS?H# $"#?#$> >$SHPB>? SAM->?M#K -111 ERR_CREDIT_AMT_GRATE HNFPB#?# "P$IHD!@ $"#?#>? >$SHPB>? ! "FGGK "MHC!#? LMH%KS?H# L$#$P$> >$SHPB>? SAM- >?M#K -112 ERR_UNBLOCK_KEY S!J>? CHJP$>!M$%?D!@ >PWA? -113 ERR_MAX_AMNT_LES_PURS $%$H ND?AHD!H L$#$P>? >$SHPB>? SAM->?M#K GHDBSH #H>FVHE$ $"#?#>? % >$SHPB>H -114 ERR_UPDATE_MAX_AMOUNT S!J>? "GHDK L$#$P>? >$SHPB>? SAM->?M#K -123 ERR_NOT_INITIALIZED H JKP? %KL$PDHD? !D!T!?P!N?T!@ DSSSCT File : cdserv.doc Ref : CDSERVPG0000 Revision:2.0 14 / 18 Copyright © Dekart S.R.L (www.dekart.com) - 2001 This document shall not be disclosed to a third party without prior written consent of Dekart S.R.L. !>?>?@ A?"#B C?DD$E$ C$>FGHD#? DH G$IH# JK#B %$"LM$!N%HCHD? % >?>$O JK #$ D! JKP$ Q$MGH ! >?>!G! JK, #$ D! JKP$ "MHC"#%?G! JHN L!"BGHDD$E$ M?NMHSHD!@ %P?CHPBT? ?%#$M">!U LM?%. 9 : .
  • 15. -124 ERR_UNKNOWN_ERROR H!N%H"#D?@ $S!J>? -125 ERR_FUNC_NOT_RELEASED -126 ERR_USR_ABORT ?J$#? LM$EM?GGK $"#?D$%PHD? L$PBN$%?#HPHG /* Rest of CT-API */ -127 ERR_CT_API_ABORT ?J$#? LM$EM?GGK $"#?D$%PHD? "HM%HM$G -128 ERR_CT_API_HTSI S!J>? D!IDHE$ FM$%D@ 4.2. : t < g : (Borland C++ v.5.01) //---------------------------------------------------------------------------- // // BC++ built 32-bit DLL's (Example of CDserv.DLL call). // // Copyright (c) Dekart Ltd. All Rights Reserved // // This application tests calling into a 32-bit DLL built with Borland C++. // Code was verified with Borland C++ 5.02 // //---------------------------------------------------------------------------- //#include <mfc/afxwin.h> // For GetDlgItemText() + windows.h #include <windows.h> #include <stdio.h> // stdio.h #include "CDserv.h" // functions from CDserv.dll #include <stdlib.h> #include <sys/stat.h> #include <io.h> #include <conio.h> #include <dir.h> #include <fstream.h> #include <string.h> // // Declaration of DLL - functions // int ( __stdcall *pCDservIni)(char *Port, short ReaderType, char *Iss_KeyFile, char *PIN, char *Iss_ID, char *CRTfile, char *IccNo); int ( __stdcall *pCDOpenCard)(char *PANcode, char *SerNo, char *USRname, char *StartDate, char *EndDate); int ( __stdcall *pCDGetPurseData)(int PurseNo, char *CurCode, char *AccountNo, char *MaxAmount, char *LastDebitDate, char *LastCreditDate, char *PurseBalance, char *OperationHistory); int ( __stdcall *pCDUpdateMaxAmount)(int PurseNo, unsigned long MaxAmount); int ( __stdcall *pCDChangeDates)(char *NewStartDate, char *NewEndDate); void ( __stdcall *pCDservClose)(void); char xDll[] = "CDserv.dll"; /////////////////////////////////////////////////////////////////////////////// int main() { // // Declaration & Initial Values of variables // int status, purse, i, j; char cardnum[33]=" "; char port[20]=" ", pan_code[20]=" " ; char cardpin[32]=" ", name[40]=" ", curs[4]=" ", acc_no[20]=" "; DSSSCT File : cdserv.doc Ref : CDSERVPG0000 Revision:2.0 15 / 18 Copyright © Dekart S.R.L (www.dekart.com) - 2001 This document shall not be disclosed to a third party without prior written consent of Dekart S.R.L. !>?>?@ A?"#B C?DD$E$ C$>FGHD#? DH G$IH# JK#B %$"LM$!N%HCHD? % >?>$O JK #$ D! JKP$ Q$MGH ! >?>!G! JK, #$ D! JKP$ "MHC"#%?G! JHN L!"BGHDD$E$ M?NMHSHD!@ %P?CHPBT? ?%#$M">!U LM?%. 9 : .
  • 16. char iss_id[10]=" ", max_sum[5]=" "; char date_d[7]=" ", date_c[7]=" ", date_s[7]=" ", date_e[7]=" "; char history[256]=" ", balance[256], hist[4][64]; short reader; char iss_key_file[MAX_PATH], iss_crt_file[MAX_PATH]; long int sum_c, sum_d; // // Load the Dynamic Link LIbrary xcdata.DLL // HINSTANCE hLib = LoadLibrary(xDll); if ( (unsigned)hLib <= HINSTANCE_ERROR ) { printf("Failure loading library: %sn", xDll); return 0; } // // Get all the entry points for the functions we wish to test. Typedef's can // be used to simplify casting the retrun value from GetProcAddress. // pCDservIni = (int ( __stdcall* )(char *Port, short ReaderType, char *Iss_KeyFile, char *PIN, char *Iss_ID, char *CRTfile, char *IccNo))GetProcAddress(hLib, "CDservIni"); pCDOpenCard = (int ( __stdcall* )(char *PANcode, char *SerNo, char *USRname, char *StartDate, char *EndDate))GetProcAddress(hLib, "CDOpenCard"); pCDGetPurseData = (int ( __stdcall* )(int PurseNo, char *CurCode, char *AccountNo, char *MaxAmount, char *LastDebitDate, char *LastCreditDate, char *PurseBalance, char *OperationHistory))GetProcAddress(hLib, "CDGetPurseData"); pCDUpdateMaxAmount= (int ( __stdcall* )(int PurseNo, unsigned long MaxAmount))GetProcAddress(hLib, "CDUpdateMaxAmount"); pCDChangeDates = (int ( __stdcall* )(char *NewStartDate, char *NewEndDate))GetProcAddress(hLib, "CDChangeDates"); pCDservClose = (void ( __stdcall* )(void))GetProcAddress(hLib, "CDservClose"); // // GetProcAddress returns null on failure // if( pCDservIni == NULL) { printf("1 - Failure locating procedures.n"); return 0; } if (pCDservIni == NULL) { printf("2 - Failure locating procedures.n"); return 0; } if( pCDGetPurseData == NULL) { printf("3 - Failure locating procedures.n"); return 0; } if( pCDUpdateMaxAmount == NULL) { printf("4 - Failure locating procedures.n"); return 0; } if( pCDChangeDates == NULL) { printf("5 - Failure locating procedures.n"); return 0; } if( pCDservClose == NULL) { printf("6 - Failure locating procedures.n"); return 0; } // // Load INI parameters DSSSCT File : cdserv.doc Ref : CDSERVPG0000 Revision:2.0 16 / 18 Copyright © Dekart S.R.L (www.dekart.com) - 2001 This document shall not be disclosed to a third party without prior written consent of Dekart S.R.L. !>?>?@ A?"#B C?DD$E$ C$>FGHD#? DH G$IH# JK#B %$"LM$!N%HCHD? % >?>$O JK #$ D! JKP$ Q$MGH ! >?>!G! JK, #$ D! JKP$ "MHC"#%?G! JHN L!"BGHDD$E$ M?NMHSHD!@ %P?CHPBT? ?%#$M">!U LM?%. 9 : .
  • 17. // // port - name of com-port connected to reader // reader - reader type // cardpin - PIN-code to access card (issuer) // iss_id - issuer identifier // iss_key_file - name of file with keys of issuer // iss_crt_file - name of file with issuer certificate // per_file_path - path to file with parameters reader=0; strcpy(iss_key_file,".94980001.SE3"); strcpy(iss_crt_file,".94980001.CRT"); strcpy(port,"COM2"); strcpy(cardpin,"1111"); strcpy(iss_id,"94980001"); /*printf("n %s n %s n %s n %s n %s n %s ", iss_key_file, per_file_path, iss_crt_file, port, cardpin, iss_id); */ // // Test of CDserv // printf("n Test of CDserv"); // CDserv operation printf("nn Session initialization"); printf("n Insert Acces Card of issuer in Reader"); getch(); status = pCDservIni(port, reader, iss_key_file, cardpin, iss_id, iss_crt_file, cardnum); if(status<0) {printf("n error: %d ", status); return 0;} // status printing else {printf("n status: %d ", status); printf("n IssNo: %s ", cardnum); // printing of card serial number } // CD card open printf("nn User card openning"); printf("n Insert User Card in Reader"); getch(); status = pCDOpenCard(pan_code, cardnum, name, date_s, date_e); if(status<0) {printf("n error: %d ", status); return 0;} // status printing else {printf("n status: %d ", status); printf("n User_No: %s ", cardnum); // printing of user card serial number printf("n PAN: %s ", pan_code); // printing of user card PAN code printf("n Name: %s ", name); // printing of name printf("n Start date: %s ", date_s); // printing of start date printf("n End date: %s ", date_s); // printing of start date } // user card reading #1 printf("nn User card reading"); for(purse=1; purse<4; purse++) { printf("nn Purse %d", purse); status = pCDGetPurseData(purse, curs, acc_no, max_sum, date_d, date_c, balance, history); if(status<0) {printf("n error: %d ", status); return 0;} // status printing else {printf("n status: %d ", status); printf("n cur_code: %s ", curs); // printing of cur_code printf("n Account: %s ", acc_no); // printing of account_number printf("n MaxAmount: %s ", max_sum); // printing of MaxAmount printf("n Last debit date: %s ", date_d); // printing of debit date printf("n Last credit date: %s ", date_c); // printing of credit date printf("n Purse balances: n"); // printing of balance history j=0; //printf("n"); for(i=0; i<256; i++) { if(balance[i]!=0) printf("%c", balance[i]); else {if(j>3) break; printf("n"); j++;} } printf("n Purse history: n"); // printing of operations history j=0; //printf("n"); for(i=0; i<256; i++) { if(history[i]!=0) printf("%c", history[i]); else {if(j>3) break; printf("n"); j++;} } DSSSCT File : cdserv.doc Ref : CDSERVPG0000 Revision:2.0 17 / 18 Copyright © Dekart S.R.L (www.dekart.com) - 2001 This document shall not be disclosed to a third party without prior written consent of Dekart S.R.L. !>?>?@ A?"#B C?DD$E$ C$>FGHD#? DH G$IH# JK#B %$"LM$!N%HCHD? % >?>$O JK #$ D! JKP$ Q$MGH ! >?>!G! JK, #$ D! JKP$ "MHC"#%?G! JHN L!"BGHDD$E$ M?NMHSHD!@ %P?CHPBT? ?%#$M">!U LM?%. 9 : .
  • 18. } printf("n ...."); getch(); } // UpdateMaxAmount operation printf("nn UpdateMaxAmount operation"); sum_c=20000; for(purse=1; purse<4; purse++) { printf("n Purse %d", purse); status = pCDUpdateMaxAmount(purse, sum_c); if(status<0) {printf("n error: %d ", status); return 0;} // status printing else printf("n status: %d ", status); // printing of result sum_c-=5000; } // user card reading #2 printf("nn User card reading after UpdateMaxAmount operation"); for(purse=1; purse<4; purse++) { printf("nn Purse %d", purse); status = pCDGetPurseData(purse, curs, acc_no, max_sum, date_d, date_c, balance, history); if(status<0) {printf("n error: %d ", status); return 0;} // status printing else {printf("n Status: %d ", status); printf("n Cur_code: %s ", curs); // printing of cur_code printf("n Account: %s ", acc_no); // printing of account_number printf("n MaxAmount: %s ", max_sum); // printing of MaxAmount printf("n Last debit date: %s ", date_d); // printing of debit date printf("n Last credit date: %s ", date_c); // printing of credit date printf("n Purse balance: %s ", balance); // printing of balance printf("n last Purse Operation: %s ", history); // printing of history } printf("n ...."); getch(); } // Date's change printf("nn User card Date's change"); strcpy(date_s,"160201"); strcpy(date_e,"160204"); status = pCDChangeDates(date_s, date_e); if(status<0) {printf("n error: %d ", status); return 0;} // status printing else printf("n status: %d ", status); // pCDservClose operation printf("nn Session closing"); pCDservClose(); printf("n"); if((unsigned)hLib>HINSTANCE_ERROR) FreeLibrary(hLib); cout << endl <<"done." <<endl; return 0; } DSSSCT File : cdserv.doc Ref : CDSERVPG0000 Revision:2.0 18 / 18 Copyright © Dekart S.R.L (www.dekart.com) - 2001 This document shall not be disclosed to a third party without prior written consent of Dekart S.R.L. !>?>?@ A?"#B C?DD$E$ C$>FGHD#? DH G$IH# JK#B %$"LM$!N%HCHD? % >?>$O JK #$ D! JKP$ Q$MGH ! >?>!G! JK, #$ D! JKP$ "MHC"#%?G! JHN L!"BGHDD$E$ M?NMHSHD!@ %P?CHPBT? ?%#$M">!U LM?%. 9 : .