كارت هوشمند كارتی است از جنس پلاستیك كه توسط مدار مجتمعی كه در آن كار گذاشته شده، هوشمند میشود پیوند میان كارت پلاستیكی و یك میكروپروسسور امكان ذخیره و بازیابی و پردازش داده را به صورتONLINE یا OFFLINEفراهم میسازد، كارتهای هوشمند چندین برابر نوارهای مغناطیسی توانائی ذخیره اطلاعات را دارند.
كارتهای هوشمند از نظر نحوه عملكرد به دو نوع CONTACTو CONTACTLESSتقسیم میشوند در كارتهای CONTACT اطلاعات از طریق یك ماژول الكترونیكی كه با دستگاهREDEAR ارتباط دو طرفه بر قرار می كند، منتقل میشود.
كارتهای CONTACTLESS حاوی یكCOIL هستند كه با آنتن گیرنده ارتباط برقرار میكند تا بتواند اطلاعات را انتقال دهد.(در این مقاله اتكای ما روی كارتهایCONTACT است).
كارتهای هوشمند بر اساس نوع و محتویات تراشه بكار رفته در آنها به دو دسته تقسیم میشود:
1) MEMORY ONLY
2) MEMORY WITH SECURITY LOGIC
3) MEMORY WITH CPU
با توجه به كاربرد كارت هوشمند مشخصات متمایزی برای تراشه كارت، نـرم افزارMASKROM و نرم افزار كاربردی در نظر گرفته میشود.
MASKROM حامل سیستم عامل كارت هوشمند میباشد .برنامه كاربردی بعـد از تولید، درون تراشه بار میشود و استفاده از حافظه EEPROM امكان تغییر برنامه كاربردی را فراهم میسازد برنامه ریزی EEPROM عموما با زبان برنامه نویسی JAVAصورت میگیرد.
حافظهEEPROM كه شامل اطلاعات كاربر و برنامههای كاربردی میباشد دو بخـش دارد یك بخش حفاظتی و بخش دیگر كه از طریق ترمینالهای كارت میتوان به آن دسترسی پیدا كرد و اطلاعات كاربردی را كسب كرد . وقتی كه ناحیه حفاظت شده EEPROM با اطلاعات مناسب بارگذاری شد، كارخـانه تولید كننده كارت هوشمند میتواند فیوزهایی را كه داخل تراشه وجود دارد قطع كند تا آن ناحیه غیر قابل دسترسی شود . علاوه بر مسیری برای قطع و وصل الكتریكی مسیری برای تست كردن وجود دارد كه در قسمت خارجی قرار دارد. بین این مسیرهای كنترلی و خود تراشه فیوزهایی وجود دارد، بعد از تست كردنICاین فیوز قطع میشود تا از تاثیرات الكتریكی ناخواسته قطعه جلوگیری شود .همگام با پیشرفت تكنولوژی قابلیت REGROWTHبه این فیـوزها اضافه شده است كه در این حالت بعد از تست كردن مسیر تست به طور فیزیكی قطع میشود .
كارتهای پردازنده (MEMORY WITH CPU):
كارتهای هوشـمندMEMORY ONLY و MEMORY WITH SECURITY LOGIC در واقع زیر مجموعهای از كارتهای پردازنده میباشنــد ، كارتـــــــهای هــوشـمـنـدی با یك ریــزپردازنده -ON-BOARD عملیات در زیر كدبندی با مكــــــانیزم پیشرفته امنیتی، پردازش محلی دادهها و محاسبات پیچیده را ارائه میدهد.
كارتهای CONTACT كه متداولترین نوع ICC میباشند 8 كنتاكت دارند كه تنها 6 تای آنها مورد استفاده قرار میگیرد (طبق استانداردISO )
كه كارت از طریق این CONTACT ها با READER ارتباط برقرار میكند.
شناسایی CONTACT ها:
.1 VCC(منبع تغذیه)
2.GND
3 . CLK (پالس ساعت)
4 .VPP (ولتاژ برنامه ریزی)
5 .RST (سیگنال RESET)
6 . خط I/O(ارتباط سریال ورودی و خروجی)
VCC:
منبع تغذیه برایIC ولتاژ بین 4.75vتا5.25v و جریان مصرفی200mA تعریف می شود چون اكثر READERهای موجود با5v (طبق استاندارد ISO ) كار میكنند وIC هائی كه در كارتهای متداول استفاده میشوند با5v كار میكنند اكثر این كارتها جریانی بین10mA تا 20 mAرا در فركانس 3.5 MHz دارند.
CLK :
اگر چه مدار مجتمع، خودش میتواند شامل مدار به منظور راهاندازی مدار درون باشد، در عمل بیشتر با تراشههایIC با یك پالس ساعت خارجی از طریق دستگاه رابط(READER) تغذیه میشوند. آنچه كه باید مورد توجه واقع شود این است كه سرعت انتقال سریال رویI/O به طور موثری توسط فركانس این پالس تعیین میشود.
VPP :
این سیگنال برای تعیین ولتاژ مورد نیاز برای برنامهریزی حافظه غیر فرار طراحی شده است. پركاربردترینICها از حافظه EEPROM كه در آن ولتاژ بالایی در حدود12.5v تا 21v مورد نیاز استفاده میكنند. معمولاً این ولتاژ باید به صورت خارجی از طریق CONTACTهایIC تأمین شود .
RST :
سیگنال RESET توسط دستگاهREADER تامین میشود و برای اجرای برنامهای كه در MASK ROM IC قرار دارد استفاده میشود.
استاندارد ISO سه مد برای سیگنالRESET تعریف كرده است:
1.INTERNAL RESET
2.ACTIVE LOW RESET
3.SYNCHRO NOUS ACTIVE RESET
اكثر میكروپروسسورها از مد ACTIVE LOW RESET استفاده میكنند كه در ان زمانی كه سیگنال RESET از صفر به یك میرود (لبه مثبت )كنترل را روی آدرس ورودی در برنامه منتقل میكند.
خط I/O :
استاندارد ISO یك LINE سیگنال برای تبادل داده بینIC و دستگاهREADER تعریف كرده است این به این معناست كه LINE باید نسبت به این كه IC انتقال دهنده یا دریافت كننده اطلاعات است، تغییر جهت بدهد.
ترتیب عملكرد برای فعال كردن دستگاه READER به صورت زیر تعریف میشود :
1. RST=0
.2 اعمال VCC
.3 قرار دادن I/O در مد دریافتی
4. تامین VPP
5 . تامین پالس ساعت
6. RST=1
و ترتیب غیر فعال كردن IC برای دستگاه READER به صورت زیر تعریف میشود :
RST=0 .1
2. قطع پالس ساعت
3. قطع VPP
4. قطع ورودی
5. قطعVCC
كاربردهای عمومی SmartCard
پروتكل انتقال (T):
مشخصات انتقالی به وسیله كارتهای میكروپروسسوری كنترل میشود . وقتیT=0 باشد تداخل در انتقال بایتها ایجاد میشود در حالی كه وقتی T=1 باشد پروتكال یك BLOCK عملیاتی به وجود میآورد .
انتقال داده به دو صورت انجام میشود :
1 . HALF DUPLEX
2 . FULL DUPLEX
در HALF DUPLEX جهت انتقال داده بسته به این كه IC تراشه یا READER داده را منتقل میكند تغییر جهت میدهد. (LINE یك طرفه)
در FULL DUPLEX دو سیگنال ورودی و خروجی به طور مداوم در دو جهت منتقل میشوند كه مشابه انتقال همزمان در كانكتورهای RS232Cدر PC میباشد .
انتقال یك كاراكتر 8 بیتی نیاز به چند بیت كنترل دارد :
1. بیت START
2. PARITY BIT (بیت مقایسه برای اشكار كردن خطاها)
3.GUARD TIME (برای جدا كردن و جلوگیری از تداخل كاراكترها میباشدكه برابر دو پریود بیتی تعریف میشود و اگر از بلاك استفاده شود به یك بیت تغییر مییابد.)
نمونه برداری از LINE باید به صورتی باشد كه RECEIVER موقعیت و مكان LINE را در وسط هر پریود انتقال نمایش میدهد.
دستگاهREADER دستور را با پروتوكلT=0 آغاز میكند.
اثر متقابل بین دستگاه رابط و ICC منجر به فرمان و پاسخ متوالی میشود برای این پروتوكل داده فقط میتواند در یك جهت (یا برای دستور یا برای پاسخ) جاری شود چه پیغام فرمان شامل داده برای ICC باشد و چه فرمان داده را از ICC بگیرد .زمانی كه نیاز به انتقال داده در هر دو جهت باشد آنگاه از دستور(GET RESPONSE) بعد از دستور اولیه برای باز یافتن پاسخ داده استفاده میشود تفاوت این دستور باT=1 این است كه در T=1 پروتوكل یك ENVELOPE دور یك بلوك كاراكترها میگذارد كه اجازه كنترل جریان و به هم پیوستنBLOCKها و تصحیح خطاها را میدهد.
پس از اینكه دستور GET RESPONSE داده شد ICC با یك بایت PROCEDURE پاسخ میدهد كه بعد از آن یا داده به ICC و یا از ICC با توجه به فرمان ویژه انتقال مییابد.
این بایت PROCEDURE اجازه كنترل VPP (ولتاژ برنامه نویسی EPROM ) را به دستگاه میدهد در CASE حافظه EPROM بایتهای PROCEDURE بسیار زیادی هستند.
در این قسمت به معرفی چند تراشه كارت هوشمند می پردازیم:
یكی از بزرگترین IC های كارت هوشمند ساخت شركت SIMENCE یك كنترل كننده 8 بیتی است كه شامل یك میكروكنترولر 8051 مركزی 8 بیتی، 540 بیت پردازشگركمكی برای اعمال حسابی، 10 كیلو بایت حافظه ROM ، 32 بایت PROMو 2.5 كیلو بایت EEPROM و همچنین 606 بیت حافظهRAM (كه 256 بایت برای میكروكنترلر 8051 و 350 بایت برای پردازشگر) میباشد. فركانس ساعت مورد نیاز این قطعه5 مگا هرتز كه دارای قابلیت 512 بیت در كمتر از 220 میلی ثانیه میباشد.
IC با شمارة P83C852، IC دیگری است كه به خوبی دارای ویژگیهای حفاظتی میباشد.در این IC مدارهایی برای آشكار كردن فركانس و ولتاژ كار قطعه وجود دارد كه اگر ولتاژ قطعه از مقدار مشخصی كمتر شود یا فركانس كار آن از یك مگا هرتز پایینتر شود از كار كردن مدار جلوگیری میكند.