![]() |
![]() |
![]() |
![]() |
Главная Чип-карты: устройство и применение 1 2 3 4 5 6 7 8 9 10 11 12 [ 13 ] 14 15 16 17 18 19 20 21 22 23 24 25 26 27 ЧИП-КАРТЫ. УСТРОЙСТЮ и ПРИМЕНЕНИЕ Бит FRANCETELECOM 64 96 128 160 192 224
![]() ЕслиТЮ использована Рис. 4.5. Структура памяти карты TIG разрушена), можно необратимо преобразовать его в 1, если до этого он имел значение 0. Для этого достаточно нажать клавишу + (плюс) на цифровой клавиатуре. Изменение не будет отображено на экране, поскольку бит уже был прочитан, а состояние адресного счетчика можно уменьшить только досчетом до нуля - либо по команде RESET, либо через пе-реполнениа На практике такого рода операции допустимы только в зоне, которая осталась иеиспользованной после опустошения карты; маловероятно, что кто-нибудь пожелает экспериментировать с картой, кредит которой еще ие израсходован. Смысл подобных экспериментов состоит в том, что можно на-строить* израсходованные карты для использования их во всевозможных электронных замках или устройствах обеспечения информационной безопасности. Hirste эти вопросы рассмотрены очень подробно. Из программы можно в любой момент выйти, нажав клав1Ш1у Esc. Операции записи при этом, естественно, не происходит. Для перезапуска программы достаточно выполнить команду RUN (П>СК - клавиша F2); при этом начнется операция чтения с нулевого адреса памяти, что и позволит увидеть результаты предыдущих действий. Важно отметить, что число 150 в строках430 и 450 программы устанавливает длительность программирующего импульса и является более или менее универсальной величиной. Наилучшее решение. Ьа£ОМ с синхронными картами S7 Счетом реальных характеристик используемого ПК, - отрегулиро-Кть эту величину при помощи осциллографа так, чтобы получить нительиость импульса программирования примерно равной 50 нс. Например, рекомендуется использовать величину 50 для старых ПК с тактовой частотой 4,77 или 8 МГц, но для более современных машин с тактовой частотой от 300 МГц и выше это число должно быть больше 150. Программа для обслуживания телекарт 10 ВЕН - GPM256.BAS -20 KEY OFF ;CIS ;DEF SEG=0 30 61=РЕЕК(ШОв)+г56.РЕВ<(!.Н409) дпя LPT1; 40 S2=PEEK(!.H40A)t266.PEEK(SH40e) для IPTI; f OUT S2,0 ;E2=S2+1 IF (mp(E2) A№ 64) о 0 THEN S=S1 ;ОаГО 100 0UTS2.12B IF (INP(E2) A№ 64) о 64 THEN S=S1 ;СаГ0 100 S=S2 00 E=St1 10 Oin N(266);0IH H(25B) 120 PMNT-Kapru с ЭШУ на 266 бит 130 PBINT ==================== ;PRINT 1 PMNT iGOTO 3B0 10 0UTS,0:CLS ) PRINT BcTaaHTb карту, затем нажать <ENTEP> ) INPUT Z$ ;CIS ) PRINT- Идет чтение карты - Ю OUT S.250:0UT 8,246 10 FOB F=1 TO 256 io OUT S.249 20 0=INP(E) :D= (0 m 12B) 30 N(F)=1;IF D= 12B TNEN N(F)=0 240 OUT S.251 250 t€XT F 260 CIS ;I=0 270 FOB F=1 TO В 280 FOR G=1 TO 8 290 FOB N=1 TO 4 300 1=1+1 31D NS= 1 :IF N(I)=0 THEN N$= 0 320 PRINT N$; 330 NEXT H 340 PBTNT -; ;NEXT G 360 PRINT 1 360 IF F=3 THEN PBim ЧИП-КАРТЫ. УСТРОИСТЮ и ПРИМЕНЕНИЕ раВОТа с синхронными картами 370 NEXT F :PRINT ЗВО РВИГВибрать пункт и на ать <ENTER> -.PBINT 3S0 №INT 0 -> Возврат Б DOS (внход)- 400 №INT 1 -> Чтение 410 №INT 2 -> Обработка 420 PBINT 3 -> Сохранить 430 №INT 4 -> Загрузить 440 PBINT 6 -> Лрогранмирование 450 PRINT 6 -> Проверка 460 PBINT ? -> Внвод на экран 470 PBINT S -> Вревенннй анход в O0S (shell) 4В0 INPUT Z$ 490 IF Z$= 0 THEN SYSTEH 500 IF Z$=-1 THEN 150 510 IF ZJ= 2- THEN B20 520 IF Z$= 3- THEN 5B0 530 IF Z$= 4 THEN 740 540 IF ZJ= 5 THEN 1090 550 IF Z$= 6- THEN 1260 560 IF ZJ= 7 THEN 260 570 IF Z$= 9 THEN SHELL XLS :GOTO 3B0 5B0 GOTO 480 590 CLS ;РВИТ Ввести vm .СИ-файпа 600 INPUT SJ :SJ=S$+ .CW 610 OPEN S$ FOB OUTPUT AS 1 620 1=0 630 CLS :PBINT - Сохранение файла -640 FOR F=1 TO 8 650 FOB G=1 TO В 680 FOB И=1 TO 4 670 Ы+1 6B0 IF N(I)=1 THEN PBINT 1,-1 ; 690 IF N(I)=0 THEN PBINT 1.-0 -; 700 NEXT H 710 PBINTBI,- , :NEXr G 720 PBINTKI. :NEXT f 730 CLOSEKI -GOTO 260 740 CLS :PBINT~BBecT ивя загружаеного CftR-фейла 760 INPUT S$ :S$=S$-t~ CW 760 OPEN SJ FOB INPUT AS 1 770 CLS : PRINT - Загрузка файла - 7B0 FOB F=1 TO 256 790 ИР1Я 1.0 ; N(F)=0 800 NEXT F 810 CL0SEB1 ;G0TO 260 B20 CLS :PBINT Код семейства: ВЗС F$=- :A=9 B40 GOSUB 1490:F$=F$tKl 850 A=13:G0SUB 1490:F$=F$+K$ B60 IF LEFT$(F$.1)<> 0 THEN PRINT :PBINT :G0TO 380 870 PBINT (ТЕЛЕКАРТА) B80 PBlNT CepnHHbiH номер: 890 FOB A=17 TO 29 STEP 4 900 GOSUB 1490:NEXT A 910 FOB A=41 TO 53 STEP 4 920 GOSUB 1490:NEXT A 930 PBINT :PBINT Pacc4HTaHa на; 940 PJ= 950 A=B9:G0SUB 1490:PJ=PJ+KJ 960 A=93:GOSUB 1490:P$=PJtKJ 970 P=VAL(P$) :P=(10.P)-10 9B0 PBINT ( ;P ; единиц) 990 PBINT Mcпoльзoнaнo. JOOO C=0 bio FOB F=97 TO 24B P)2C IF N(F)=1 THEN С=С+1 1030 NEXT F :C=C-10 104D PRINT C; UTC 1060 IF C<P THEN РВИТОстаток: ; P-C; UTC: BEEP 1060 IF OP THEN PBINTKapra дефектная :BEEP 1070 IF C=P THEN PBINT Кредит исчерпан 1080 PBINT :PBINT :GOTO 360 1090 CLS :PBINT BcTaBHTb карту для программирования, затем нажать <ENTEB> 1100 т 8,0:МР1Я Z$ 1110 CLS : PBINT lloдaтъ напряжение Vpp. затем нажать <ENTER> 1120 INPUT Z$ 1130 CLS :PBINT - Идет программирование - 1140 FOB F=1 TO 256 1150 OUT S, 249 1160 D=INP(E) 1170 B=N(F) 1180 IF B=0 THEN 1230 11B0 CUT S.253 1200 FDR T=1 TO 150 :NEXT T 1210 OUT S,255 1220 FOB T=1 TO 150 :NEXT T 1230 OUT S, 251: NEXT F 1240 CLS :Рв Т 0ткЛ10чить Vpp и нажать <ENTEB> 1250 INPUT Z$ :OUT S.O;GOTO 260 1260 CLS :PBINTВставить каргу для сравнения, затем нажать <Е11ТЕВ> 1270 INPUT Z$ :CLS 1280 PBINT- Nдeт чтение карты ЧИП-КАРТЫ. УСТРОЙСТВО И ПРИМЕНЕНИЕ 12S0 OUT S,250:OUT S,248 1300 FOB F=1 TO 266 1310 DUT S, 2<S 1320 D=INP(E) -.0= (0 m 128) 1330 H(F)=1:IF 0= 128 THEN N(F)=0 1340 OUT S.251 1360 NEXT F 1380 CLS :I=0 1370 FOB F=1 TO В 13B0 FOR G=1 TO В 1390 FOB N=1 TO 4 1400 I=It1 1410 IF N(I)=H(I) THEN РВШГ- :ELSE PMNT.-: 1420 NEXT H 1430 PRINT ; :NEXT G 1440 PRINT 1460 IF F=3 THEN PRINT 1460 NEXT F : PRINT PfllNT 1470 GOTO 3B0 14B0 END 1490 K=0 1600 FOB J=C TO 3 1610 B=N(AtJ) 1520 IF B=1 TI£N l<.=Kt2 (3-J) 1630 NEXT J 1640 IF K<10 THEN KS=CHH$ (4BtK) 1650 IF K>=10 ТШ KjmfflJ(55 K) 15B0 PRINT KJ; 1570 нет™ 1580 END 1590 REM (0)1993.97 Patrick GUEULLE Теперь рассмотрим гораздо более мощную программу (GPN256. BAS). Она снабжена меню, позволяющим выбрать следующие пункты: возврат в DOS (в конце работы); чтение карты (с индикацией на экране ее 256 бт-) и запись результата в память компьютера; обработка считанной в память информации. Для телекарты T1G определяются, помимо всего прочего, оставшийся кредит и серийный номер; сохранение содержимого памяти в текстовом файле, к имени которого будет автоматически добавлено расширение .CAR; загрузка файла с расширением .CAR в память компьютера в таком виде, в каком информация считывается из карты; АВОТА С СИНХРОННЫМИ КАРТАМИ программирование карты данными, обработанными компьютером, - например, считанными из другой карты либо из файла с расширением .CAR; проверка карты (программа контролирует соответствие данных карты данным, находявтимся в памяти): совпадающие биты представляются знаком тире, ошибочные - звездочками. Информация в памяти остается иеизмеиной, чтобы можно было многократно повторить эту операцию; многократньш вывод содержимого памяти на экран без повторного считывания карты; вызов DOS - функция SHELL. Весьма полезна, если, например, надо вызвать редактор текста, позволяющий редактировать файл с расширением .CAR перед внесением изменений в обрабатываемую карту (можно менять только О в 1; если разрушена плавкая перемычка, то в зоне после первых 96 бит). Возвращение из DOS в программу происходит по команде EXIT. Предлагаемая программа является мощнейшим средством, позво-Новшм производить практически все доступные операции с теле-Втами и другами картами типа GPM 256. НЕшс раз стоит подчеркнуть, что, если не принимать во внимание вероятность крупной ошибки владельца или изготовителя карты (который в таком случае сам несет за это полную ответственность), принцип работы данного пша карт полностью исключает возможность их фальсификации с помощью программного обеспечения подобного рода. БЛОК ЧТЕНИЯ-ЗАПИСИ 2-ГО ПОКОЛЕНИЯ Прежде чем приступить к работе с одиоуровневыми чип-картами, CToirr посмотреть, насколько проще становится конструкция блока чтения-записи вследствие того, что второе, большее 5 В напряжение Vpp, не требуется. Схема, представленная на рис. 4.6, содержит минимум необходимых элементов, но при этом нужен внешний источник питания -f5 В. Проще всего использовать для этой цели напряжение на контакте № 1 разъема игрового (MIDI) порта типа DB 15, который есть практтески на всех ПК Если же такого разъема нет, то в лабораторных условиях нетрудно найти другой источник питания. Не считая |
© 2007 EPM-IBF.RU
Копирование материалов разрешено в случае наличия письменного разрешения |