กลับไปหน้าบทความ

อ่าน 9 นาที

คำตอบเพื่อรีเซ็ต

ข้อความ ตอบรับการรีเซ็ต ( ATR ) เป็นข้อความที่ส่งออกมาโดย สมาร์ทการ์ดแบบ สัมผัส ที่ได้ มาตรฐาน ISO/IEC 7816 หลังจาก รีเซ็ต ชิปของการ์ดด้วยไฟฟ้าโดยใช้เครื่องอ่านการ์ด ข้อความ ATR...

คำตอบเพื่อรีเซ็ต

ข้อความตอบรับการรีเซ็ต ( ATR ) เป็นข้อความที่ส่งออกมาโดยสมาร์ทการ์ดแบบ สัมผัส ที่ได้ มาตรฐาน ISO/IEC 7816หลังจากรีเซ็ตชิปของการ์ดด้วยไฟฟ้าโดยใช้เครื่องอ่านการ์ด ข้อความ ATR จะให้ข้อมูลเกี่ยวกับพารามิเตอร์การสื่อสารที่การ์ดเสนอ รวมถึงลักษณะและสถานะของการ์ดด้วย

โดยทั่วไป ATR มักหมายถึงข้อความที่ได้รับจากสมาร์ทการ์ดในขั้นตอนการสื่อสารเบื้องต้น หรือจากเครื่องอ่านการ์ดที่ใช้ในการเข้าถึงการ์ดนั้น ซึ่งอาจแปลงข้อความของการ์ดให้เป็นรูปแบบคล้าย ATR (เช่น เกิดขึ้นกับเครื่องอ่านการ์ดPC/SC บางรุ่น [ 1 ] [ 2 ]เมื่อเข้าถึง สมาร์ทการ์ด ISO/IEC 14443 )

การมี ATR ปรากฏอยู่ มักถูกใช้เป็นข้อบ่งชี้เบื้องต้นว่าสมาร์ทการ์ดดูเหมือนจะใช้งานได้ และการตรวจสอบเนื้อหาภายในสมาร์ทการ์ดจะเป็นการทดสอบเบื้องต้นว่าเหมาะสมกับการใช้งานหรือไม่

สมาร์ทการ์ดแบบสัมผัสสื่อสารผ่านสัญญาณที่เรียกว่า อินพุต/เอาต์พุต (I/O) ได้ทั้งแบบซิงโครนัส (ส่งและรับบิตข้อมูลตามจังหวะหนึ่งบิตต่อคาบของสัญญาณนาฬิกาที่ส่งไปยังการ์ดผ่านสัญญาณ CLK) หรือ แบบอะซิง โครนัส (แลกเปลี่ยนบิตข้อมูลผ่าน I/O โดยใช้กลไกอื่นในการกำหนดขอบเขตบิต คล้ายกับการสื่อสารแบบอนุกรมอะซิงโครนัส แบบดั้งเดิม ) ทั้งสองโหมดนี้จะเลือกใช้เพียงโหมดเดียวในเซสชันการสื่อสารที่กำหนด และการ์ดส่วนใหญ่ถูกสร้างขึ้นเพื่อรองรับโหมดใดโหมดหนึ่ง สมาร์ทการ์ดแบบสัมผัสที่ใช้ไมโครโปรเซสเซอร์ส่วนใหญ่เป็นแบบอะซิงโครนัส ซึ่งใช้สำหรับโมดูลระบุตัวตนผู้สมัครใช้บริการ (SIM) สำหรับโทรศัพท์มือถือบัตรธนาคารที่มีหน้าสัมผัสที่ตรงตาม ข้อกำหนด EMV การ์ด Javaแบบสัมผัสทั้งหมดและสมาร์ทการ์ดสำหรับโทรทัศน์แบบเสียค่าบริการส่วนการ์ดที่มีหน่วยความจำอย่างเดียวโดยทั่วไปจะเป็นแบบซิงโคร นัส

ATR ในการส่งข้อมูลแบบอะซิงโครนัสและแบบซิงโครนัสมีรูปแบบและเนื้อหาที่แตกต่างกันโดยสิ้นเชิง ATR ในการส่งข้อมูลแบบอะซิงโครนัสได้รับการปรับให้เป็นมาตรฐานอย่างแม่นยำ (เพื่อให้สามารถใช้งานร่วมกันได้ระหว่างการ์ดและเครื่องอ่านจากแหล่งกำเนิดที่แตกต่างกัน) และค่อนข้างซับซ้อนในการวิเคราะห์

สมาร์ทการ์ดบางประเภท (ส่วนใหญ่เป็นแบบอะซิงโครนัส) จะส่งค่า ATR ที่แตกต่างกัน ขึ้นอยู่กับว่าการรีเซ็ตเป็นการรีเซ็ตครั้งแรกนับตั้งแต่เปิดเครื่อง ( Cold ATR ) หรือไม่ ( Warm ATR )

หมายเหตุ: Answer To Reset ไม่ควรสับสนกับ ATtRibute REQuest (ATR_REQ) และ ATtRibute RESponse (ATR_RES) ของNFCซึ่งย่อว่า ATR เช่นกัน[ 3 ] ATR_RES ถ่ายทอดข้อมูลเกี่ยวกับพารามิเตอร์การสื่อสารที่รองรับ เช่นเดียวกับ Answer To Reset แต่โครงสร้างของมันแตกต่างกัน

ATR ในการส่งสัญญาณแบบอะซิงโครนัส

มาตรฐานที่กำหนด ATR ในการส่งข้อมูลแบบอะซิงโครนัสคือ ISO/IEC 7816-3 [ 4 ]มีการใช้ชุดย่อยของข้อกำหนด ATR เต็มรูปแบบสำหรับแอปพลิเคชันสมาร์ทการ์ดบางประเภท เช่น EMV [ 5 ]

รูปแบบทางกายภาพและจังหวะเวลาที่ส่วนต่อประสานการ์ด/เครื่องอ่าน

ในการส่งข้อมูลแบบอะซิงโครนัส ข้อมูล ATR จะถูกส่งจากบัตรไปยังเครื่องอ่านในรูปแบบอักขระ ซึ่งเข้ารหัสเป็นบิตผ่านหน้าสัมผัสที่กำหนดเป็น I/O (C7) โดยมีระยะเวลาบิตโดยประมาณที่เรียกว่าหน่วยเวลาพื้นฐาน (ETU) ซึ่งเท่ากับ 372 รอบของสัญญาณนาฬิกาที่เครื่องอ่านส่งมาทางหน้าสัมผัส CLK (C3) ตลอดช่วงเวลา ATR โดยปกติแล้วสาย I/O จะอยู่ในสถานะ H (แรงดันไฟฟ้าสูงสุดจากสองระดับตรรกะ ) และการเปลี่ยนไปเป็นสถานะ L ซึ่งเรียกว่าขอบนำ (leading edge) จะกำหนดจุดเริ่มต้นของอักขระ ขอบนำของอักขระตัวแรกจะเกิดขึ้นระหว่าง 400 ถึง 40,000 รอบนาฬิกาหลังจากที่เครื่องอ่านเปลี่ยนหน้าสัมผัส RST (C2) จาก L เป็น H

แต่ละอักขระประกอบด้วยบิตเริ่มต้นที่สถานะ L, บิตข้อมูล 8 บิต, บิตพาริตี 1 บิต ตามด้วย (หากไม่มีข้อผิดพลาด) การหน่วงเวลาที่สถานะ H (แรงดันสูงบน I/O) เพื่อให้ขอบนำของอักขระใน ATR มีอย่างน้อย 12 ETU โดยมีเวลาการรอสูงสุดที่กำหนดไว้ WT = 9,600 ETU ตลอด ATR (ข้อกำหนดของ Eurocard MasterCard Visa เพิ่มว่าเครื่องอ่านควรทนต่อ 10,800 ETU ซึ่งมากกว่า 5%) ค่าของไบต์ที่เข้ารหัสโดยอักขระจะถูกกำหนดตามข้อกำหนดที่กำหนดโดยอักขระตัวแรกของ ATR ซึ่งกำหนดให้เป็น TS

จุดสิ้นสุดของ ATR ทางกายภาพระหว่างการ์ดและเครื่องอ่านสามารถกำหนดได้โดยเครื่องอ่านโดยใช้การวิเคราะห์แบบเรียลไทม์ของค่า TS, T0 และ TD i ใดๆ (ดูด้านล่าง) หรือ/และบนพื้นฐานของ WT วิธีการหลังนี้ทำให้เกิดความล่าช้าเพิ่มเติม (ประมาณ 0.8 วินาทีที่ความถี่สัญญาณนาฬิกาสูงสุด 5  MHzที่ใช้งานได้ระหว่าง ATR) EMV (แต่ไม่ใช่ ISO/IEC 7816-3) ยังอนุญาตให้เครื่องอ่านพิจารณาว่า ATR ต้องสิ้นสุดลงหลังจาก 20 160 ETU (ประมาณ 1.5 วินาทีที่ 5 MHz) นับจากขอบนำของ TS

หมายเหตุ: เมื่อสื่อสารในโหมดอะซิงโครนัสกับสมาร์ทการ์ดแบบสัมผัส ISO/IEC 7816-3 โดยใช้อุปกรณ์อินเทอร์เฟซแบบอนุกรมที่ทำงานตามแบบแผนโดยตรง (เช่นUART มาตรฐาน ) สามารถตั้งค่าเป็น 8 บิต, 1 บิตพาริตีคู่, 2 บิตหยุด (บางครั้งอาจต่อรองเป็น 1 ได้ โปรดดู TC 1 ) ในระหว่าง ATR อัตรา Baud ควรเป็น 1/372 ของความถี่สัญญาณนาฬิกาที่การ์ดได้รับ (ซึ่งสอดคล้องกับ ETU 372 รอบสัญญาณนาฬิกา) โดยปกติจะไม่มีข้อผิดพลาดพาริตีหรือข้อผิดพลาดเฟรม ไบต์แรกที่ได้รับคือ'3B'หากการ์ดทำงานตามแบบแผนโดยตรง และ'03'หากการ์ดทำงานตามแบบแผนผกผัน ในกรณีนี้ ขั้วและลำดับของบิตทั้ง 8 บิตของแต่ละไบต์ที่ผ่านอุปกรณ์อินเทอร์เฟซแบบอนุกรมควรกลับด้าน ซึ่งโดยเฉพาะอย่างยิ่งจะเปลี่ยนไบต์แรก'03'เป็น'3F '

หมายเหตุทางประวัติศาสตร์: ข้อกำหนดสำหรับแผงวงจรที่ใช้แหล่งสัญญาณนาฬิกาภายในและค่า ETU คงที่ที่ 1/9,600 วินาทีระหว่าง ATR นั้นมีอยู่ในมาตรฐาน ISO/IEC 7816-3:1989 และถูกลบออกไปตั้งแต่ฉบับปี 1997 เป็นต้นไป

โครงสร้างทั่วไป

กระบวนการ ATR ประกอบด้วยห้าขั้นตอน ได้แก่ อักขระเริ่มต้น TS; ไบต์รูปแบบ T0; ไบต์อินเทอร์เฟซ TA i , TB i , TC i , TD i (เป็นตัวเลือก จำนวนเปลี่ยนแปลงได้); ไบต์ประวัติ T i (เป็นตัวเลือก สูงสุด 15 ไบต์) และไบต์ตรวจสอบ TCK (เป็นตัวเลือก) มีอักขระทั้งหมด 2 ถึง 33 ตัว รวมทั้ง TS ด้วย

ชื่อกำหนดเข้ารหัสอยู่ ณ เวลา
ทีเอสลำดับบิตและขั้ว(เสมอ)
ที0จำนวน Ti ,การมีอยู่ของ TA 1 ..TD 1K ใน [0..15](เสมอ)
TA 1ความถี่สัญญาณนาฬิกาสูงสุด ระยะเวลาบิตที่เสนอFI ↦ Fi และ f สูงสุด ; ดิ ↦ ดิบิตที่ 5 ของ T0 คือ1
ทีบี1เลิกใช้แล้ว: ข้อกำหนด V PPPI1 ↦ P, II ↦ Iบิตที่ 6 ของ T0 คือ1
ทีซี1การ์ดต้องการหน่วงเวลาเพิ่มเติมระหว่างไบต์N ↦ EGT ↦ GTบิตที่ 7 ของ T0 คือ1
ทีดี1โปรโตคอลการส่งข้อมูลที่นำเสนอครั้งแรก คือการมีอยู่ของ TA 2 ..TD 2T ใน [0..14]บิตที่ 8 ของ T0 คือ1
TA 2โปรโตคอลและพารามิเตอร์เฉพาะที่จะใช้หลังจาก ATRT ใน [0..14]บิตที่ 5 ของ TD 1คือ1
ทีบี2เลิกใช้แล้ว: ข้อกำหนดแรงดันไฟฟ้าที่แม่นยำ ของ V PPPI2 ↦ Pบิตที่ 6 ของ TD 1คือ1
ทีซี2เวลารอสูงสุดสำหรับโปรโตคอล T = 0WI ↦ WTบิตที่ 7 ของ TD 1คือ1
ทีดี2โปรโตคอลที่รองรับหรือพารามิเตอร์ที่ครอบคลุมมากขึ้น การมีอยู่ของ TA 3 ..TD 3T ใน [0..15]บิตที่ 8 ของ TD 1คือ1
TA iสำหรับ T = 1 [#] : ขนาดบล็อกสูงสุดที่การ์ดสามารถรับได้หาก T = 15 [#] : แรงดันไฟฟ้าที่รองรับและโหมดพลังงานต่ำIFSC X; Yบิตที่ 5 ของ TD i -1คือ1
ทีบีไอสำหรับ T = 1 [#] : ความล่าช้าสูงสุดระหว่างอักขระถ้า T = 15 [#] : ใช้หน้าสัมผัส SPU C6CWI ↦ CWT; BWI ↦ BWT บิตที่ 6 ของ TD i -1คือ1
ทีซีไอสำหรับ T = 1 [#] : ประเภทของรหัสตรวจจับข้อผิดพลาดที่ใช้บิตที่ 7 ของ TD i -1คือ1
ทีดีไอโปรโตคอลที่รองรับหรือพารามิเตอร์ทั่วโลกเพิ่มเติม การมีอยู่ของ TA i +1 ..TD i +1T ใน [0..15]บิตที่ 8 ของ TD i -1คือ1
ที1รูปแบบของไบต์ทางประวัติศาสตร์ T iK ≥ 1
ทีไอไบต์ประวัติที่ระบุลักษณะการทำงาน ตามมาตรฐาน ISO/IEC 7816-4 เมื่อ T 1เป็น'00' , '10'หรือ' 8 X 'K ≥  i
ทีซีเคอนุญาตให้ตรวจจับข้อผิดพลาดในการส่งข้อมูลโดยไม่ตั้งใจ( โดยปกติแล้ว ค่า XORของไบต์ T0 กับ TCK จะเป็นศูนย์)ค่า T ในไบต์ TD iใดๆ จะต้องไม่ใช่ 0
อาร์เอฟยูสงวนไว้สำหรับการใช้งานในอนาคต

[#]ความหมายที่ให้มานั้นถือว่าi  > 2 และi -1 เป็น jเพียงตัวเดียวที่มี 1 <  j  <  iซึ่ง TD jจะเข้ารหัสค่า T ที่ระบุไว้ เมื่อ T อยู่ในช่วง [0..14] ความหมายของไบต์จะใช้ได้เฉพาะกับโปรโตคอลที่เกี่ยวข้อง (ไบต์เฉพาะ) เท่านั้น เมื่อ T = 15 ความหมายจะใช้ได้โดยไม่คำนึงถึงโปรโตคอล (ไบต์สากล)

อักขระเริ่มต้น TS นั้นมีอยู่เสมอในทางกายภาพ แต่ถูกยกเว้นจาก Answer-to-Reset ในคำจำกัดความที่กำหนดโดย ISO/IEC 7816-3:2006: ค่าของสตริงไบต์ (ไม่เกิน 32 ไบต์) ที่เข้ารหัสในลำดับของอักขระที่ตามหลังอักขระเริ่มต้น TS ISO/IEC 7816-4:2005 เห็นด้วย[ 6 ]โดยระบุว่า TS เป็นอักขระหรือรูปแบบการซิงโครไนซ์ ไม่ใช่ไบต์ อย่างไรก็ตาม ในทางปฏิบัติ (อย่างน้อยใน PC/SC, EMV, ETSIและCalypso ) ยังคงพิจารณาว่า TS เป็นส่วนหนึ่งของ ATR เช่นเดียวกับใน ISO/IEC 7816-3:1997 และฉบับก่อนหน้า โดยเฉพาะอย่างยิ่ง ATR ที่ส่งคืนโดยเครื่องอ่านการ์ด PC/SC และซอฟต์แวร์สแต็กจะรวม TS เป็นไบต์แรกที่มีค่า'3B'หรือ'3F '

อักขระตัวแรก TS

อักขระเริ่มต้น TS เข้ารหัสข้อกำหนดที่ใช้สำหรับการเข้ารหัส ATR และการสื่อสารเพิ่มเติมจนกว่าจะมีการรีเซ็ตครั้งถัดไป ตามข้อกำหนดโดยตรง [หรือโดยผกผัน] บิตที่มีค่าตรรกะ'1'จะถูกส่งเป็นแรงดันสูง (H) [หรือแรงดันต่ำ (L)] บิตที่มีค่าตรรกะ'0'จะถูกส่งเป็น L [หรือ H] และบิตที่มีค่าน้อยที่สุดของแต่ละไบต์ข้อมูลจะเป็นบิตแรก (หรือบิตสุดท้าย) ในการส่งข้อมูลทางกายภาพโดยการ์ด

ตามธรรมเนียมโดยตรง TS คือ(H) L HHLHHHLL H (H)และเข้ารหัสไบต์'3B '

สำหรับข้อตกลงผกผัน TS คือ(H) L HHLLLLLL H (H)และเข้ารหัสไบต์'3F '

[ (H)แทนสถานะว่าง (High, Mark) ของสาย I/O บิตข้อมูล 8 บิตแสดงด้วยตัวเอียง ]

บิตในไบต์ที่ตามหลัง TS ใน ATR และการสื่อสารเพิ่มเติมจนกว่าจะมีการรีเซ็ตครั้งถัดไป จะถูกกำหนดหมายเลขตั้งแต่ลำดับที่ 1 ถึง 8 จากลำดับต่ำไปสูง และค่าของบิตเหล่านั้นจะถูกบันทึกเป็น0หรือ1โดยไม่คำนึงถึงลำดับเวลาและการแสดงทางไฟฟ้าที่กำหนดโดย TS บิตที่ตามหลังบิตข้อมูล 8 บิตในไบต์เหล่านี้คือบิตพาริตีคู่ ซึ่งหมายความว่าจะมีจำนวน บิต '1' (H หรือ L ตามแบบแผนโดยตรงหรือแบบผกผันที่กำหนดโดย TS) เป็นจำนวนคู่ในบรรดาบิตข้อมูล 8 บิตและบิตพาริตี

นอกจากนี้ TS ยังอนุญาตให้เครื่องอ่านการ์ดตรวจสอบหรือกำหนดค่า ETU ได้ โดยคิดจากหนึ่งในสามของเวลาหน่วงระหว่างการเปลี่ยนสถานะจาก H เป็น L ครั้งแรกและครั้งที่สองใน TS ซึ่งเป็นตัวเลือกเสริม และนิยามหลักของ ETU ใน ATR ของสมาร์ทการ์ดแบบอะซิงโครนัสที่เป็นไปตามมาตรฐาน คือ 372 รอบของสัญญาณนาฬิกาที่การ์ดได้รับ

รูปแบบไบต์ T0

ไบต์รูปแบบ T0 เข้ารหัสไบต์ข้อมูลในอดีตจำนวน K ไบต์ T i ใน 4 บิตล่างสุด (บิต MS ที่ 4 ถึงบิต LS ที่ 1) ในช่วง [0..15]

นอกจากนี้ ยังเข้ารหัสในบิตลำดับสูง 4 บิต เพื่อระบุการมีอยู่ของไบต์อินเทอร์เฟซอื่น ๆ ไม่เกิน 4 ไบต์ ได้แก่ TA 1 (หรือ TB 1 , TC 1 , TD 1 ) ตามลำดับ หากบิตที่ 5 (หรือ 6, 7, 8) ของ T0 เป็น 1

ไบต์อินเทอร์เฟซ TA i , TB i , TC i , TD i

ไบต์อินเทอร์เฟซ TA 1 , TB 1 , TC 1 , TD 1 , TA 2 , TB 2 , TC 2 , TD 2 , TA 3 , TB 3 , ... ล้วนเป็นตัวเลือก และเข้ารหัสพารามิเตอร์การสื่อสารและโปรโตคอลที่การ์ดเสนอให้ใช้

ไบต์อินเทอร์เฟซมีสามประเภท: ไบต์อินเทอร์เฟซ สากลซึ่งใช้ได้กับทุกโปรโตคอล ไบต์อินเทอร์เฟซ เฉพาะซึ่งใช้ได้กับโปรโตคอลเฉพาะ และ ไบต์อินเทอร์เฟซ เชิงโครงสร้างซึ่งแนะนำไบต์อินเทอร์เฟซและโปรโตคอลเพิ่มเติม

อินเทอร์เฟซไบต์ TA 1

ไบต์อินเทอร์เฟซ TA 1หากมีอยู่ จะเป็นค่าส่วนกลาง และเข้ารหัสความถี่สัญญาณนาฬิกาสูงสุด f maxที่การ์ดรองรับ และจำนวนรอบสัญญาณนาฬิกาต่อ ETU ที่แนะนำให้ใช้หลังจาก ATR ซึ่งแสดงเป็นอัตราส่วน Fi/Di ของจำนวนเต็มสองจำนวน เมื่อไม่มี TA 1จะถือว่าค่าเริ่มต้นคือ'11'ซึ่งสอดคล้องกับ f max  = 5 MHz, Fi = 372, Di = 1

บิต 4 บิตล่างสุดของ TA 1 (บิต MS ที่ 4 ถึงบิต LS ที่ 1) เข้ารหัส Di ดังนี้:

บิตที่ 4 ถึงบิตที่ 10000000100100011010001010110011110001001101010111100110111101111
ดิอาร์เอฟยู1248163264 (#)1220อาร์เอฟยูอาร์เอฟยูอาร์เอฟยูอาร์เอฟยูอาร์เอฟยูอาร์เอฟยู

(#) ค่านี้เป็น RFU ใน ISO/IEC 7816-3:1997 และเวอร์ชันก่อนหน้า เครื่องอ่านการ์ดหรือไดรเวอร์บางตัวอาจปฏิเสธการ์ดที่ใช้ค่านี้ (หรือ RFU อื่นๆ) อย่างผิดพลาด เครื่องอ่าน PC/SC บางตัว แก้ปัญหาพฤติกรรมของไดรเวอร์ดังกล่าวโดยการล้างบิตแรกของ TA 1เมื่อ 4 บิตล่างสุดเข้ารหัสเป็น 7 และปรับ TCK (ถ้ามี) ตามนั้น เว้นแต่จะได้รับคำสั่งพิเศษ

บิตลำดับสูง 4 บิตของ TA 1 (บิต MS ที่ 8 ถึงบิต LS ที่ 5) เข้ารหัส f maxและ Fi ดังนี้:

บิตที่ 8 ถึงบิตที่ 50000000100100011010001010110011110001001101010111100110111101111
ไฟ372 (*)3725587441 1161 4881 860อาร์เอฟยูอาร์เอฟยู5127681 0241 5362 048อาร์เอฟยูอาร์เอฟยู
f สูงสุด (MHz)4 (*)56812162057.5101520

(*) หมายเหตุทางประวัติศาสตร์: ใน ISO/IEC 7816-3:1989 ค่านี้ถูกกำหนดให้กับการ์ดที่มีนาฬิกาภายใน โดยไม่มีการกำหนดค่า Fi หรือ f(max)

หมายเหตุ: EMV และ ISO/IEC 7816-3 ฉบับก่อนปี 2006 ยังใช้สัญลักษณ์ DI (หรือ FI) สำหรับ 4 บิตลำดับต่ำ (หรือลำดับสูง) ของ TA 1 ด้วย ดังนั้น DI จึงเข้ารหัส Di และ FI เข้ารหัส Fi และf max

หมายเหตุ: สัญลักษณ์ของ EMV ใช้ D (หรือ F) ในขณะที่ ISO/IEC 7816-3 ใช้ Di (หรือ Fi)

ตัวอย่าง: TA 1  =  'B5'  =  10110101ซึ่ง FI คือ1011และ DI คือ0101เข้ารหัส f max  = 10 MHz, Fi = 1024, Di = 16 ดังนั้น Fi/Di = 1024/16 = 64 นี่เป็นการกระตุ้นให้เครื่องอ่านการ์ดดำเนินการ (หลังจาก ATR) ขั้นตอนที่จำเป็นเพื่อลด ETU เหลือ 64 รอบสัญญาณนาฬิกาต่อ ETU (จาก 372 ระหว่าง ATR) และเพิ่มความถี่สัญญาณนาฬิกาขึ้นเป็น 10 MHz (จากประมาณ 4 MHz ระหว่าง ATR)

อินเทอร์เฟซไบต์ TB 1

TB 1หากมีอยู่ จะเป็นค่าสากล การใช้งาน TB 1 นั้นไม่เป็นที่นิยมอีกต่อไปแล้วตั้งแต่มาตรฐานฉบับปี 2006 ซึ่งกำหนดว่าการ์ด ไม่ ควรมี TB 1ใน ATR และเครื่องอ่านจะต้องละเว้น TB 1หากมีอยู่ EMV ยังคงกำหนดให้การ์ดต้องมี TB 1  =  '00'และนั่นยังคงเป็นแนวปฏิบัติทั่วไป การทำเช่นนั้นเป็นการบ่งชี้อย่างชัดเจนว่าการ์ดไม่ได้ใช้หน้าสัมผัสเฉพาะ C6 เพื่อจ่ายแรงดันไฟฟ้าสำหรับการเขียนโปรแกรม (V PP ) ให้กับการ์ด อย่างไรก็ตาม การ์ดอาจใช้ C6 สำหรับการใช้งานมาตรฐานหรือเฉพาะ (SPU) เช่น การสื่อสารกับส่วนหน้า NFC โดยใช้โปรโตคอล Single Wire Protocol (SWP) ในฝั่งเครื่องอ่าน EMV กำหนดให้สร้าง ATR แบบอุ่นสำหรับการ์ดที่มี TB 1ที่ไม่ใช่'00'ใน ATR แบบเย็นและจัดการ TB 1 ใดๆ ใน ATR แบบอุ่นเสมือนว่าเป็น'00 '

TB 1ก่อนหน้านี้ระบุ (อย่างคร่าวๆ) แรงดันไฟฟ้าในการเขียนโปรแกรม V PPและกระแสไฟฟ้าสูงสุดในการเขียนโปรแกรมที่จำเป็นสำหรับบางการ์ดบนหน้าสัมผัสเฉพาะ C6 ในระหว่างการเขียนโปรแกรม หน่วยความจำ EPROM สมาร์ทการ์ดรุ่นใหม่สร้างแรงดันไฟฟ้าในการเขียนโปรแกรมสำหรับหน่วยความจำ EEPROMหรือFlashภายในเองดังนั้นจึงไม่ใช้ V PPในมาตรฐานฉบับปี 1997 และฉบับก่อนหน้า:

- 5 บิตล่างสุดของ TB 1 (บิตที่ 5 MS ถึงบิตที่ 1 LS) เข้ารหัส PI1; หากไม่มี TB 2 ค่า PI1 = 0 แสดงว่าหน้าสัมผัส C6 (ที่กำหนดให้กับ V PP ) ไม่ได้เชื่อมต่อในการ์ด; ค่า PI1 ในช่วง [5..25] เข้ารหัสค่า V PPในหน่วยโวลต์ (เครื่องอ่านควรใช้แรงดันไฟฟ้านั้นเฉพาะเมื่อการ์ดร้องขอโดยเฉพาะ โดยมีค่าความคลาดเคลื่อน 2.5% สูงสุดไม่เกินกระแสการเขียนโปรแกรมสูงสุด และมิเช่นนั้นให้ปล่อยหน้าสัมผัส C6 ที่ใช้สำหรับ V PP ไว้ ภายใน 5% ของแรงดันไฟฟ้า V CCสูงสุด 20 mA); หากมี TB 2 ค่า TB 2 จะแทนที่ค่าที่แสดงโดย TB 1 ในช่อง PI1 เกี่ยวกับ การเชื่อมต่อหรือแรงดันไฟฟ้า ของ V PP

- บิตสูงสุดของ TB 1 (บิตที่ 8) ถูกสงวนไว้ จะต้องเป็น0และผู้อ่านสามารถละเลยได้

- บิตที่ 6 และ 5 ของ TB 1เข้ารหัสกระแสการเขียนโปรแกรมสูงสุด (โดยสมมติว่าทั้ง TB 1และ TB 2 ไม่ได้ ระบุว่า V PPไม่ได้เชื่อมต่ออยู่ในการ์ด)

บิตที่ 7 และ 600011011
กระแสการตั้งโปรแกรมสูงสุด25 มิลลิแอมป์50 มิลลิแอมป์RFU (#)อาร์เอฟยู

(#) ค่านี้เท่ากับ 100 mA ตามมาตรฐาน ISO/IEC 7816-3:1989

อินเทอร์เฟซไบต์ TC 1

TC 1ถ้ามีอยู่ จะเป็นค่าทั่วโลก และเข้ารหัสค่าจำนวนเต็ม Extra Guard Time (N) ตั้งแต่ 0 ถึง 255 (บิต MS ที่ 8 ถึงบิต LS ที่ 1) มิฉะนั้น N = 0 N กำหนดว่า Guard Time ที่ผู้อ่านต้องใช้จะแตกต่างจากค่าพื้นฐาน 12 ETU มากน้อยเพียงใด (ซึ่งสอดคล้องกับบิตเริ่มต้น 1 บิต บิตข้อมูล 8 บิต บิตพาริตี 1 บิต และบิตหยุด 2 บิต โดยบิตหยุดที่สองอาจใช้สำหรับการบ่งชี้ข้อผิดพลาดโดยผู้รับภายใต้โปรโตคอล T = 0) Guard Time คือความล่าช้าขั้นต่ำระหว่างขอบนำของอักขระก่อนหน้าและขอบนำของอักขระถัดไปที่ส่งมา

ยกเว้นเมื่อ N เท่ากับ 255 เวลาป้องกัน (Guard Time) คือ: GT = 12 ETU + R*N/f โดยที่: – f คือความถี่สัญญาณนาฬิกาที่สร้างโดยตัวอ่าน; – R คือจำนวนรอบสัญญาณนาฬิกาบางค่า ซึ่งอาจเป็น:   – ต่อ ETU, R = F/D ถ้า T = 15 ไม่มีอยู่ใน ATR;   – กำหนดโดย TA 1 , R = F i /D i (หรือค่าเริ่มต้น) ถ้า T = 15 มีอยู่ใน ATR

N = 255 มีความหมายที่ขึ้นอยู่กับโปรโตคอล: GT = 12 ETU ในระหว่าง PPS (การเลือกโปรโตคอลและพารามิเตอร์) และโปรโตคอล T = 0, GT = 11 ETU ภายใต้โปรโตคอล T = 1 (ซึ่งสอดคล้องกับ 1 บิตเริ่มต้น, 8 บิตข้อมูล, 1 บิตพาริตี และ 1 บิตหยุด; โดยไม่มีการแสดงข้อผิดพลาด)

ยกเว้นในกรณีที่โปรโตคอล T = 1 การ์ดจะส่งข้อมูลโดยมีเวลาป้องกัน (Guard Time) เท่ากับ 12 ETU โดยไม่ขึ้นอยู่กับค่า N ในกรณีที่โปรโตคอล T = 1 เวลาป้องกันที่กำหนดโดย N ก็คือเวลาป้องกันอักขระ (Character Guard Time หรือ CGT) และจะใช้กับทั้งการ์ดและเครื่องอ่านสำหรับอักขระที่ส่งในทิศทางเดียวกัน

หมายเหตุ: ผู้อ่านยังคงต้องปฏิบัติตาม Guard Time GT ที่กำหนดโดย N แม้ว่าข้อกำหนดอื่นๆ จะระบุค่าหน่วงเวลาขั้นต่ำอื่นระหว่างขอบนำของอักขระในทิศทางต่างๆ กันก็ตาม แม้ว่าค่าหน่วงเวลาขั้นต่ำนั้นจะต่ำกว่า GT ก็ตาม

หมายเหตุทางประวัติศาสตร์: ISO/IEC 7816-3:1989 กำหนดไว้เพียงว่า N จะเข้ารหัส EGT เป็นจำนวน ETU ซึ่งเป็นวิธีการที่ใช้ในปัจจุบันเมื่อไม่มี T = 15 ใน ATR ด้วยข้อกำหนดนี้ การ์ดที่อนุญาตให้เจรจาจำนวนรอบสัญญาณนาฬิกาต่อ ETU ที่ลดลงหลังจาก PPS จะต้องอนุญาตให้จำนวนรอบสัญญาณนาฬิกาสำหรับ EGT ลดลงตามสัดส่วนด้วย ซึ่งไม่สอดคล้องกับแรงจูงใจทั่วไปของ EGT: เพื่อคำนึงถึงความล่าช้าก่อนที่การ์ดจะสามารถรับอักขระถัดไปได้ มาตรฐานฉบับปี 1997 ได้แนะนำว่า เมื่อมี T = 15 อยู่ใน ATR N จะเข้ารหัส EGT เป็นจำนวนเท่าของจำนวนรอบสัญญาณนาฬิกาต่อ ETU ที่เข้ารหัสโดย TA 1ทำให้ EGT เป็นอิสระจากจำนวนรอบสัญญาณนาฬิกาต่อ ETU ที่เจรจาได้อย่างมีประสิทธิภาพ ในขณะที่ยังคงความเข้ากันได้กับเครื่องอ่านรุ่นก่อนหน้าอย่างน้อยที่สุดหากพวกเขาไม่ได้เปลี่ยนจำนวนรอบสัญญาณนาฬิกาต่อ ETU

อินเทอร์เฟซไบต์ TD i

อินเทอร์เฟซไบต์ TD iสำหรับi ≥1 หากมีอยู่ จะเป็นโครงสร้าง

TD iเข้ารหัสใน 4 บิตลำดับสูงของมันถึงการมีอยู่ของไบต์อินเทอร์เฟซอื่น ๆ ไม่เกิน 4 ไบต์ ได้แก่ TA i +1 (หรือ TB i +1 , TC i +1 , TD i +1 ) ตามลำดับ หากบิตที่ 5 (หรือ 6, 7, 8) ของTD iเป็น1

TD iเข้ารหัสจำนวนเต็ม T ในช่วง [0..15] ใน 4 บิตล่างสุด (บิต MS ที่ 4 ถึงบิต LS ที่ 1) T = 15 ไม่ถูกต้องใน TD 1และใน TD i อื่นๆ จะกำหนดคุณสมบัติของ TA i +1 TB i +1 TC i +1 TD i +1 (ถ้ามี) เป็นไบต์อินเทอร์เฟซส่วนกลาง ค่าอื่นๆ ของ T บ่งชี้ถึงโปรโตคอลที่การ์ดพร้อมใช้งาน และ TA i +1 TB i +1 TC i +1 TD i +1 (ถ้ามี) เป็นไบต์อินเทอร์เฟซเฉพาะที่ใช้กับโปรโตคอลนั้นเท่านั้น T = 0 คือโปรโตคอลแบบเน้นอักขระ T = 1 คือโปรโตคอลแบบเน้นบล็อก T ในช่วง [3..14] คือ RFU

หมายเหตุทางประวัติศาสตร์: ข้อกำหนดสำหรับการกำหนดคุณสมบัติของไบต์อินเทอร์เฟซแบบไดนามิกให้เป็นแบบโกลบอลโดยใช้ T = 15 นั้นไม่มีอยู่ใน ISO/IEC 7816-3:1989

อินเทอร์เฟซไบต์ TA 2

ไบต์อินเทอร์เฟซ TA 2หากมีอยู่ จะเป็นไบต์ส่วนกลาง และจะถูกตั้งชื่อตามไบต์ โหมดเฉพาะ

การมีอยู่ของคำสั่ง TA 2ที่ผู้อ่านใช้โหมดเฉพาะตามที่กำหนดโดย TA 2และไบต์ส่วนกลางก่อนหน้านี้ แทนที่จะเป็นโหมดที่สามารถเจรจาต่อรองได้ เมื่อ ไม่มี TA 2

TA 2เข้ารหัสจำนวนเต็ม T ใน 4 บิตล่างสุด ซึ่งกำหนดโปรโตคอลที่จำเป็นสำหรับบัตร ตามแบบแผนที่ใช้สำหรับ TD 1 (EMV กำหนดว่าบัตรที่มีค่า T ที่เข้ารหัสใน TA 2ไม่ตรงกับค่า T ใน TD 1จะถูกปฏิเสธ)

บิตที่ 5 จะเป็น0เพื่อเข้ารหัสว่าระยะเวลา ETU ที่ต้องการคือ F i /D iรอบสัญญาณนาฬิกา ตามที่กำหนดโดย TA 1 (หรือค่าเริ่มต้นหากไม่มี) หรือเป็น 1เพื่อระบุว่าระยะเวลา ETU เป็นที่ทราบโดยปริยาย (ตามข้อตกลงบางอย่าง หรือการตั้งค่าของเครื่องอ่าน EMV กำหนดว่าบัตรดังกล่าวจะต้องถูกปฏิเสธ)

บิตที่ 6 และ 7 สงวนไว้สำหรับการใช้งานในอนาคต โดยค่า 0หมายถึงไม่ได้ใช้งาน

บิตที่ 8 จะเป็น1เพื่อระบุว่าการ์ดไม่สามารถเปลี่ยนโหมดการเจรจา/เฉพาะได้ (กล่าวคือ ไม่เสนอการตั้งค่าอื่น) หรือ0เพื่อระบุว่าการ์ดมีความสามารถนั้น (อาจหลังจาก ATR ที่อุ่นเครื่องแล้ว)

หมายเหตุทางประวัติศาสตร์: ในมาตรฐาน ISO/IEC 7816-3:1989 ไม่มีข้อกำหนดสำหรับโหมดเฉพาะ ในขณะนั้น อักขระอินเทอร์เฟซ TA 2ไม่มีชื่อหรือฟังก์ชันเฉพาะ และเป็นแบบเฉพาะ (สำหรับโปรโตคอลที่แนะนำโดย TD 1 ) มาตรฐาน ISO/IEC 7816-3:1997 ได้แนะนำโหมดเฉพาะและไบต์โหมดเฉพาะ พร้อมด้วยหมายเหตุชั่วคราวเพื่อช่วยการ์ดที่มีไบต์โหมดเฉพาะ TA 2ใน ATR ที่ใช้งานกับเครื่องอ่านที่ไม่รองรับโหมดเฉพาะ

อินเทอร์เฟซไบต์ TB 2

TB 2หากมีอยู่ จะเป็นค่าสากล การใช้งาน TB 2 นั้นไม่เป็นที่นิยมอีกต่อไปแล้วตั้งแต่มาตรฐานฉบับปี 2006 ซึ่งกำหนดว่าการ์ด ไม่ ควรมี TB 2ใน ATR และเครื่องอ่านควรละเว้น TB 2หากมีอยู่

ในมาตรฐานฉบับปี 1997 บิต TB 2 (บิตที่ 8 ถึงบิตที่ 1) เข้ารหัส PI2 ซึ่งเมื่ออยู่ในช่วง 50..250 (ค่าอื่นๆ เป็น RFU) จะเข้ารหัส V PPโดยเพิ่มขึ้นทีละ 0.1 V และครอบคลุมการบ่งชี้ที่หยาบกว่าซึ่งกำหนดโดย PI1 ของ TB 1โปรดดูส่วนนั้นสำหรับเหตุผลว่าทำไมสมาร์ทการ์ดสมัยใหม่จึงไม่ใช้ V PPและดังนั้นจึงไม่ใช้TB 2

หมายเหตุทางประวัติศาสตร์: ข้อกำหนดสำหรับ TB 2ไม่ได้มีอยู่ในมาตรฐาน ISO/IEC 7816-3:1989 และถูกนำมาใช้เนื่องจากค่า V PP  = 12.5 V กลายเป็นค่าที่นิยมใช้ในเทคโนโลยี EEPROM โดยเข้ามาแทนที่ค่า 25 V และ 21 V

ข้อมูลประวัติศาสตร์ T i

อักขระประวัติศาสตร์ T iสำหรับi ≥1 หากมีอยู่ (ตามที่กำหนดโดย K ที่เข้ารหัสใน T0) โดยทั่วไปจะเก็บข้อมูลเกี่ยวกับผู้สร้างการ์ด ประเภทของการ์ด (ขนาด ฯลฯ) หมายเลขเวอร์ชัน และสถานะของการ์ด

ตรวจสอบไบต์ TCK

ไบต์ ChecK (ถ้ามี) อนุญาตให้ตรวจสอบความถูกต้องของข้อมูลใน ATR ถ้ามีอยู่ TCK จะเป็นผลรวมของการดำเนินการExclusive ORของไบต์ใน ATR ตั้งแต่ T0 (รวมอยู่ด้วย) ถึง TCK (ไม่รวมอยู่ด้วย)

TCK จะปรากฏขึ้นก็ต่อเมื่อ TD i ใดๆ ที่ปรากฏใน ATR เข้ารหัสค่า T ที่ไม่ใช่ 0 เท่านั้น

กฎเกี่ยวกับการมีอยู่ของ TCK นั้นเป็นไปตามมาตรฐาน ISO/IEC 7816-3:1989 มาตรฐาน ISO/IEC 7816-3:1997 และ ISO/IEC 7816-3:2006 ที่ออกมาภายหลังก็เห็นพ้องต้องกัน อย่างน้อยที่สุดในกรณีที่ไม่มี TA 2หรือ TA 2 เข้ารหัส T เดียวกันกับ TD 1 (ซึ่งเป็นข้อกำหนดของ EMV) แนวปฏิบัติทั่วไป (เช่น ในซิมการ์ด) คือการใช้กฎนั้น แม้จะมีข้อกำหนดที่ขัดแย้งกันใน EMV 4.3 เล่ม 1 ส่วนที่ 8.3.4 ที่ระบุว่าATR จะต้องไม่มี TCK หากใช้ T = 0 เท่านั้นโดยให้ตีความข้อกำหนดนั้นตามตัวอักษรราวกับว่าระบุไว้ว่า "หากใช้ T = 0 เท่านั้น "

ATR ในการส่งสัญญาณแบบซิงโครนัส

เอกสารอ้างอิงอย่างเป็นทางการที่กำหนด ATR ในการส่งสัญญาณแบบซิงโครนัสคือมาตรฐานISO/IEC 7816-10 [ 7 ]

ATR เริ่มต้นด้วยส่วนหัวขนาด 32 บิต จัดเรียงเป็น 4 ไบต์ โดยใช้สัญลักษณ์ H1 ถึง H4 H1 เข้ารหัสโปรโตคอล (โดย'00'และ'FF'ถือเป็นค่าที่ไม่ถูกต้อง) และ H2 เข้ารหัสพารามิเตอร์ของโปรโตคอล ส่วนอื่นๆ ยังไม่มีการกำหนดมาตรฐานไว้มากนัก

  • เครื่องมือ วิเคราะห์ ATR สำหรับสมาร์ทการ์ดออนไลน์
  • ISO/IEC 7816-1:2011(E)
  • ISO/IEC 7816-2:2007(E)
  • ISO/IEC 7816-3:2006(E)
  • ISO/IEC 7816-4:2020(E)
  • ISO/IEC 7816-5:2004(E)
  • ISO/IEC 7816-6:2016(E)
  • ISO/IEC 7816-7:1999(E)
  • ISO/IEC 7816-8:2021(E)
  • ISO/IEC 7816-9:2017(E)
  • ISO/IEC 7816-10:1999(E)
  • ISO/IEC 7816-11:2022(E)
  • ISO/IEC 7816-12:2005(E)
  • ISO/IEC 7816-13:2007(E)
  • ISO/IEC 7816-15:2016(E)
ดึงข้อมูลมาจาก " https://en.wikipedia.org/w/index.php?title=Answer_to_reset&oldid=1356467687 "

สรุปเนื้อหา

ข้อมูลสำคัญจากบทความ

ข้อมูลสำคัญเกี่ยวกับ คำตอบเพื่อรีเซ็ต

ข้อความ ตอบรับการรีเซ็ต ( ATR ) เป็นข้อความที่ส่งออกมาโดย สมาร์ทการ์ดแบบ สัมผัส ที่ได้ มาตรฐาน ISO/IEC 7816 หลังจาก รีเซ็ต ชิปของการ์ดด้วยไฟฟ้าโดยใช้เครื่องอ่านการ์ด ข้อความ ATR...

ATR ในการส่งสัญญาณแบบอะซิงโครนัส

มาตรฐานที่กำหนด ATR ในการส่งข้อมูลแบบอะซิงโครนัสคือ ISO/IEC 7816-3 [ 4 ] มีการใช้ชุดย่อยของข้อกำหนด ATR เต็มรูปแบบสำหรับแอปพลิเคชันสมาร์ทการ์ดบางประเภท เช่น EMV [ 5 ]

รูปแบบทางกายภาพและจังหวะเวลาที่ส่วนต่อประสานการ์ด/เครื่องอ่าน

ในการส่งข้อมูลแบบอะซิงโครนัส ข้อมูล ATR จะถูกส่งจากบัตรไปยังเครื่องอ่านในรูปแบบอักขระ ซึ่งเข้ารหัสเป็นบิตผ่านหน้าสัมผัสที่กำหนดเป็น I/O (C7) โดยมีระยะเวลาบิตโดยประมาณที่เรียกว่าหน่วยเวลาพื้นฐาน (ETU) ซึ่งเท่ากับ 372 รอบของ สัญญาณนาฬิกา...

โครงสร้างทั่วไป

กระบวนการ ATR ประกอบด้วยห้าขั้นตอน ได้แก่ อักขระเริ่มต้น TS; ไบต์รูปแบบ T0; ไบต์อินเทอร์เฟซ TA i , TB i , TC i , TD i (เป็นตัวเลือก จำนวนเปลี่ยนแปลงได้); ไบต์ประวัติ T i (เป็นตัวเลือก สูงสุด 15 ไบต์) และไบต์ตรวจสอบ TCK (เป็นตัวเลือก) มีอักขระทั้งหมด 2 ถึง 33...