Der ISO7816-3-Standard für Smart Card besagt, dass einige Karten nicht zur Unterstützung der Zeichenwiederholung (aufgrund von Paritätsfehlern) verpflichtet sind. Nehmen wir an, die Schnittstelleneinheit (ID) empfängt Paritätsfehlerdaten von der unbekannten Karte während der ATR (Antwort zum Zurücksetzen). Es (ID) signalisiert den Fehler der Karte, aber ohne zu wissen, ob die Karte Wiederholungen unterstützt, wie kann sie feststellen, ob das nächste Zeichen von der Karte wiederholt wird (das hatte einen Paritätsfehler) oder das nächste Zeichen (falls die Karte dies nicht tut) Unterstützung Wiederholung).Smartcard-Antwort zum Zurücksetzen
Antwort
Soweit ich den Standard verstehen, die Fehlererkennung in der folgenden Art und Weise funktioniert:
für
T=0
das Fehlersignal und Zeichenwiederholungfür die andere verwendet wird, gibt es immer ein Telegrammprüfsumme, die zur Fehlererkennung verwendet wird (
TCK
Byte in Antwort-auf-Rücksetzen,LRC
/CRC
inT=1
frames)
Unter Berufung auf ISO/IEC 7816-3: 2006, Abschnitt, Unterabschnitt "Charaktere und Codierungskonventionen" "Answer to Reset":
das Fehlersignal und Zeichenwiederholung gemäß 7.3 ist obligatorisch für die Karten, die T = 0 anbieten; es ist optional für die Schnittstellengeräte und für andere Karten.
Unter Berufung auf Unterabschnitt "Prüfbyte TCK" unter dem Abschnitt "Antwort-to-Reset":
Wenn nur T = 0 angezeigt wird, möglicherweise standardmäßig, so soll TCK fehlen. Wenn T = 0 und T = 15 vorhanden sind und in allen anderen Fällen TCK vorhanden ist. Wenn TCK vorhanden ist, muss die Exklusiv-ODER-Verknüpfung aller Bytes T0 bis TCK einschließlich "00" ergeben. Jeder andere Wert ist ungültig.
die oben bedeutet, dass die korrekte Übertragung der ATR durch die Fehlersignal/Zeichenwiederholung für reine T=0
Karten überprüft wird. Und durch TCK
Byte für den Rest.
In Ihrem Szenario kann das Interfacegerät zwischen dem wiederholten Zeichen und dem nicht wiederholten Zeichen nach dem Paritätsfehler nicht unterscheiden, aber falls die Karte kein Fehlersignal/Zeichenwiederholung unterstützt, das resultierende TCK
Byte (was in diesem Fall erforderlich ist) sollte mit einer hohen Wahrscheinlichkeit falsch sein.
Haftungsausschluss: Dies ist meine Interpretation der Norm, meine Gedanken bitte validiere ...
Viel Glück!
- 1. Rückgängig-Funktion zum Zurücksetzen des Makros zum Zurücksetzen des Inhalts
- 2. Wie zum Zurücksetzen Modal Körper
- 3. C# zum Zurücksetzen eines Netzwerkadapters
- 4. Methode zum Zurücksetzen von Tasten?
- 5. preg_split führt zum Zurücksetzen der Verbindung
- 6. Zum Zurücksetzen der Umgebungsvariablen in VirtualEnv Sitzung
- 7. Ablaufzeit der Token zum Zurücksetzen des Kennworts
- 8. Der sauberste Weg zum Zurücksetzen von Formularen
- 9. Wie eine Transaktion zum Zurücksetzen von adrett
- 10. Temporäre URL zum Zurücksetzen des Passworts generieren
- 11. MongoDB-Datenbank zum Zurücksetzen mit Rails 3.0
- 12. Symfony FOSUserBundle Link zum Zurücksetzen des Passworts
- 13. Codeigniter - Formular zum Zurücksetzen des Passworts
- 14. Hilfe zum Zurücksetzen der PSQL-Einstellungen
- 15. wie zum Zurücksetzen entwickeln Zweig zu meistern
- 16. Django + Formular zum Zurücksetzen des Passworts
- 17. Befehlszeilenargument und Standardwert (wie zum Zurücksetzen)
- 18. Python Seaborn zum Zurücksetzen auf die Matplotlib
- 19. Was ist der bzr-Befehl zum Zurücksetzen
- 20. Bessere Methode zum Zurücksetzen von Java AudioStream
- 21. array_merge vs array_value zum Zurücksetzen Array Index
- 22. Git Branch zum letzten Commit zurücksetzen? Schienen
- 23. Schnellste Möglichkeit zum Zurücksetzen Oracle-Datenbank zum Testen
- 24. GitHub zurücksetzen oder zurücksetzen?
- 25. Laravel: Passwort zurücksetzen Link zurücksetzen
- 26. Zurücksetzen eines Formulars mit: Eingabetyp = Zurücksetzen
- 27. Wie eine Webseite mit einem Knopf zum Zurücksetzen
- 28. Windows-Dienst erfordert stoppen und starten zum Zurücksetzen der Konfiguration
- 29. So verfallen das Token zum Zurücksetzen des Kennworts
- 30. Zurücksetzen <select> Option zum vorherigen Wert
Es hat Sinn für mich, obwohl ich mich frage warum in einigen Fällen (Paritätserkennung) mir die Möglichkeit gegeben wurde, wiederholte Zeichen zu erwerben und in anderen Fällen (keine TCK) kann ich nur lernen, dass etwas nicht in Ordnung ist. Aber angenommen, es sollte einige historische Gründe dafür geben. Obwohl ich diese Antwort akzeptiert habe, kann ich es kaum bestätigen - siehe [link] https://electronics.stackexchange.com/questions/329913/smart-card-parity-error-notification. – Djole
@Djole Ich wünschte, ich hätte eine verifizierte Antwort für Sie (vielleicht gibt jemand anderes einen besseren). [Hier] (https://github.com/vlp/ssim/blob/master/src/common/me_io.inc) ist eine sehr einfache (busy-waiting) kartenseitige Implementierung für PIC mit Fehlererkennung. Viel Glück! – vlp
Ich werde den Code lesen, auf den Sie verwiesen haben, aber PIC hat eine nette Funktion bezüglich des Problems, über das wir gesprochen haben - es kündigt den Fehler an der Hälfte des Stopbits an (Aussage aus ihrer Anwendungsnotiz [link] http: // ww1. microchip.com/downloads/de/AppNotes/01370A.pdf). Im Moment habe ich beschlossen, die Parität zu ignorieren, weil es noch viele andere Fragen gibt, außer dem Paritätsproblem, das ich klarstellen muss. – Djole