apdu
APDU ( Application Protocol Data Unit )
ซึ่งมันเป็นมาตรฐานการสื่อสารของ Smart card
โดยมี 2 ประเภท คือ
1. APDU command หรือชุดคำสั่ง
เพื่อทำการส่งไปยัง Smart card
ให้ทำงานตามที่เราต้องการ
ชุดคำสั่งจะประกอบไปด้วย 2 ส่วน คือ Header และ Body
Header เป็นส่วนที่จำเป็นต้องมีเสมอ
ส่วน Body มีหรือไม่มีก็ได้
มาดูโครงสร้างจะเป็นดังรูป
CLA คือ Class of instruction หรือชื่อโปรแกรมคำสั่งที่อยู่ใน Smart card มีขนาด 1 byte
INS คือ Instruction code หรือ code ที่ระบุคำสั่งที่ต้องการให้ทำงาน มีขนาด 1 byte
P1 และ P2 คือ Instruction parameter เป็นส่วนข้อมูลเพิ่มเติมใช้ร่วมกับคำสั่งที่ต้องการให้ทำงาน
ซึ่งทำให้เราสามารถสั่งงานได้มากยิ่งขึ้น มีขนาด 1 byte
Lc คือ ขนาดของข้อมูลที่ส่งไปยัง Smart card มีขนาด 1 byte
Data field คือ ส่วนข้อมูลในชุดคำสั่ง โดยขนาดเปลี่ยนแปลงได้
Le คือ ขนาดของข้อมูลที่ต้องการให้ Smart card ส่งกลับมา ในส่วนของ Response APDU ซึ่งจะอธิบายต่อไป
2. Response APDU หรือ ชุดข้อมูลที่ส่งกลับมาจาก Smart card
ซึ่งจะมีรูปแบบดังรูป
Data field คือข้อมูลที่ส่งกลับมา ขนาดสามารถเปลี่ยนแปลงได้ ซึ่งอาจจะมีหรือไม่มีก็ได้
SW1 และ SW2 มีขนาด 1 byte ทำการเก็บข้อมูลสถานะของการทำงานตาม APDU command ที่ส่งไป
โดยเราจะตรวจสอบการทำงานจากทั้งสองนี่แหละครับ
ตัวอย่างของ SW1 และ SW2 ที่บอกว่าทำงานสำเร็จ ก็คือ 90 00 นะ ส่วน code อื่นๆ มีอีกเพียบครับ
พอรู้ข้อมูลพื้นฐานแล้ว ต่อไปก็คือการลองทดสอบกับอุปกรณ์จริงๆ แล้วครับ
ซึ่งอุปกรณ์แต่ละตัวก็ไม่เหมือนกันเลย ดังนั้นเอกสารของอุปกรณ์สำคัญมากๆ ครับ
Below table details out most used Smart Card Commands to get the data off from the Smart Card