few updates
[lectures/latex.git] / rfid / rfid_talk_g.tex
index bfbd9e0..741cc81 100644 (file)
@@ -56,7 +56,7 @@
   \begin{block}{Aufbau / Bestandteile}
     \begin{itemize}
       \item Plastikkarte mit eingebautem Mikrochip\\
-            - {\bf I}ntegrated {\bf C}ircuit {\bf C}ard -
+            {\bf I}ntegrated {\bf C}ircuit {\bf C}ard (ICC)
             \begin{itemize}
              \item Hardwarelogik oder Mikroprozessor
              \item Speicher (ROM, EEPROM, RAM)
     Zur"ucksetzen des {\bf P}rogram {\bf C}ounters (PC)
   \end{block}
   \begin{block}{VCC}
-    Versrgungsspannung des Mikrochips
+    Versorgungsspannung des Mikrochips
+  \end{block}
+  \begin{block}{GND}
+    gemeinsame R"uckleitung, definiert das Nullpotential der Schaltung
   \end{block}
 \end{frame}
 
 \begin{frame}
   \frametitle{kontaktbehaftete Chipkarten}
   \framesubtitle{Betriebsablauf (ISO 7816-3)}
-  \begin{block}{2) Reset der Karte}
-    
+  {\bf A}nswer {\bf T}o {\bf R}eset
+  \begin{block}{Asynchrone "Ubertragung}
+  \begin{itemize}
+    \item Zeichen"ubertragung "uber den I/O-Kontakt
+    \item Zeichen $\equiv$ 1 Byte (8 Bit)
+  \end{itemize}
+  \end{block}
+  \begin{block}{Synchrone "Ubertragung}
+  \begin{itemize}
+    \item "Ubertragung einer Serie von Bits via I/O
+    \item Synchron mit CLK-Signal
+  \end{itemize}
+  \end{block}
+\end{frame}
+  
+\begin{frame}
+  \frametitle{kontaktbehaftete Chipkarten}
+  \framesubtitle{Betriebsablauf (ISO 7816-3)}
+  ATR bei asynchroner "Ubertragung: Bit-Dauer
+  \begin{definition}
+  Die Zeitdauer f"ur die Darstellung eines Bits am I/O-Kontakt ist definiert als $1 \, etu$
+  ({\bf e}lementary {\bf t}ime {\bf u}nit).
+  \end{definition}
+  \begin{itemize}
+    \item Karten mit interner CLK:\\
+          $1 \, etu = 1/9600 \, s$
+    \item Karten mit externer CLK:\\
+          $1 etu = \frac{372}{f_i}$ ($1 \, MHz < f_i < 5 \, MHz$)\\
+         Bsp.: $f_i = 3.5712 \, MHz \Rightarrow$ 9600 baud
+  \end{itemize}
+\end{frame}
+
+\begin{frame}
+  \frametitle{kontaktbehaftete Chipkarten}
+  \framesubtitle{Betriebsablauf (ISO 7816-3)}
+  \begin{block}{Aufbau eines Zeichens}
+  \begin{itemize}
+    \item Startbit im 'low state'
+    \item 8 Datenbits ($b_0$ bis $b_7$)\\
+          \begin{itemize}
+           \item 'direct convention': $b_0$ (LSB) ... $b_7$ (MSB)\\
+                 'low state' $\equiv$ 0, 'high state' $\equiv 1$
+           \item 'inverse convention': $b_0$ (MSB) ... $b_7$ (LSB)\\
+                 'low state' $\equiv$ 1, 'high state' $\equiv 0$
+         \end{itemize}
+    \item Parit"atsbit $b_p$ (gerade Anzahl von Einsen in $b_0, \ldots,b_7,b_p$)
+  \end{itemize}
+  \end{block}
+  \begin{center}
+  \includegraphics[width=11cm]{char-frame.eps}
+  \end{center}
+\end{frame}
+
+\begin{frame}
+  \frametitle{kontaktbehaftete Chipkarten}
+  \framesubtitle{Betriebsablauf (ISO 7816-3)}
+  \begin{block}{ATR bei asynchroner "Ubertragung: Struktur und Inhalt}
+  \begin{tabular}{|l|l|l|}
+    \hline
+    1 & 'initial character' & $T_s$ \\
+    \hline
+    2 & 'format character' & $T_0$ \\
+    \hline
+    3 & 'interface characters' & $TA_i,TB_i,TC_i,TD_i$ \\
+    \hline
+    4 & 'historical characters' & $T_1,\ldots,T_k$ \\
+    \hline
+    5 & 'check character' & $T_{ck}$ \\
+    \hline
+  \end{tabular}
+  \end{block}
+\end{frame}
+
+\begin{frame}
+  \frametitle{kontaktbehaftete Chipkarten}
+  \framesubtitle{Betriebsablauf (ISO 7816-3)}
+  ATR bei asynchroner "Ubertragung: 'initial character' $T_s$
+  \begin{block}{'direct convention'}
+  \includegraphics[width=11cm]{direct-conv.eps} 
+  \end{block}
+\end{frame}
+
+\begin{frame}
+  \frametitle{kontaktbehaftete Chipkarten}
+  \framesubtitle{Betriebsablauf (ISO 7816-3)}
+  ATR bei asynchroner "Ubertragung: 'initial character' $T_s$
+  \begin{block}{'inverse convention'}
+  \includegraphics[width=11cm]{inverse-conv.eps} 
+  \end{block}
+\end{frame}
+
+\begin{frame}
+  \frametitle{kontaktbehaftete Chipkarten}
+  \framesubtitle{Betriebsablauf (ISO 7816-3)}
+  ATR bei asynchroner "Ubertragung: 'format character' $T_0$
+  \begin{block}{MS Halfbyte - Vorhandensein von 'interface characters'}
+  \begin{tabular}{|l|l|}
+  \hline
+  $T_0[4]$ & $TA_1$ wird gesendet \\
+  \hline
+  $T_0[5]$ & $TB_1$ wird gesendet \\
+  \hline
+  $T_0[6]$ & $TC_1$ wird gesendet \\
+  \hline
+  $T_0[7]$ & $TD_1$ wird gesendet \\
+  \hline
+  \end{tabular}
+  \end{block}
+  \begin{block}{LS Halfbyte - 'historical characters'}
+  Anzahl der 'historical characters': $0000_2 - 1111_2 \, (0-15)$
+  \end{block}
+\end{frame}
+
+\begin{frame}
+  \frametitle{kontaktbehaftete Chipkarten}
+  \framesubtitle{Betriebsablauf (ISO 7816-3)}
+  ATR bei asynchroner "Ubertragung: 'interface characters'
+  \begin{block}{MS Halfbyte von $TD_i$}
+  \begin{tabular}{|l|l|}
+  \hline
+  $TD_i[4]$ & $TA_{i+1}$ wird gesendet \\
+  \hline
+  $TD_i[5]$ & $TB_{i+1}$ wird gesendet \\
+  \hline
+  $TD_i[6]$ & $TC_{i+1}$ wird gesendet \\
+  \hline
+  $TD_i[7]$ & $TD_{i+1}$ wird gesendet \\
+  \hline
+  \end{tabular}
+  wobei $TD_0 \equiv T_0$
+  \end{block}
+  \begin{block}{LS Halfbyte von $TD_i$}
+  Protokolltyp: $0000_2 - 1111_2 \, (0-15)$
+  \end{block}
+  $TA_i,TB_i,TC_i$: Protokollparameter
+\end{frame}
+
+\begin{frame}
+  \frametitle{kontaktbehaftete Chipkarten}
+  \framesubtitle{Betriebsablauf (ISO 7816-3)}
+  %ATR bei asynchroner "Ubertragung: 'interface characters'
+  \begin{block}{Protokolltypen ($TD_1$)}
+  \begin{itemize}
+  \item $T=0$ asynchrones, halbduplex Zeichen-"Ubertragungsprotokoll
+  \item $T=1$ asynchrones, halbduplex Block-"Ubertragungsprotokoll
+  \item $T=2-15$ reserviert f"ur zuk"unftige Standardisierungen
+  \end{itemize}
+  \end{block}
+  \begin{block}{Protokollparameter ($TA_i,TB_i,TC_i$)}
+  \begin{columns}
+  \column{5cm}
+  \begin{itemize}
+    \item Frequenz und Bit-Dauer
+    \item extra Guardtime 
+    \item Zeichen/Block Wartezeit
+    \item T=1 Fehlererkennung durch LRC bzw. CRC
+  \end{itemize}
+  \column{5cm}
+  \begin{itemize}
+    \item L"ange eines T=1 Block Informationsfeldes
+    \item Programmierspannung und Strom
+  \end{itemize}
+  \end{columns}
+  \end{block}
+\end{frame}
+
+\begin{frame}
+  \frametitle{kontaktbehaftete Chipkarten}
+  \framesubtitle{Betriebsablauf (ISO 7816-3)}
+  ATR bei asynchroner "Ubertragung: 'historical \& check characters'
+  \begin{block}{'historical characters' - Information "uber}
+  \begin{itemize}
+    \item Hersteller der Karte
+    \item verwendeter Chip
+    \item ROM im Chip
+    \item Herstellungsdatum(?)
+  \end{itemize}
+  \end{block}
+  \begin{block}{'check character' $T_{ck}$}
+  \begin{itemize}
+    \item $T_1$ xor $T_2$ xor $\ldots$ xor $T_{ck}$ $=$ $0$ 
+    \item kein $T_{ck}$ f"ur Protokoll $T=0$
+  \end{itemize}
+  \end{block}
+\end{frame}
+
+\begin{frame}
+  \frametitle{kontaktbehaftete Chipkarten}
+  \framesubtitle{Betriebsablauf (ISO 7816-3)}
+  ATR bei {\bf synchroner} "Ubertragung
+  \begin{block}{Taktfrequenz und Bit-"Ubertragung}
+  \begin{itemize}
+    \item Frequenzen zwischen $7$ und $50 \, kHz$
+    \item 'direct convention':
+          \begin{itemize}
+            \item 'high state' $\equiv 1$ 
+            \item LSB zuerst
+         \end{itemize}
+    \item Bit-"Ubertragung:
+          \begin{itemize}
+            \item Bit anlegen
+            \item CLK auf 'high state'
+            \item CLK auf 'low state'
+         \end{itemize}
+  \end{itemize}
   \end{block}
+
+\end{frame}
+
+\begin{frame}
+  \frametitle{kontaktbehaftete Chipkarten}
+  \framesubtitle{Betriebsablauf (ISO 7816-3)}
+  ATR bei {\bf synchroner} "Ubertragung
+  \begin{block}{Struktur und "Ubertragung des ATR}
+  \begin{itemize}
+    \item maximal 32 Bit gro"s (mindestens 8)
+          \begin{itemize}
+            \item Byte H1: Protokolltyp
+            \item Byte H2: Protokollparameter
+           \item Byte H3,H4: 'historical bytes'
+         \end{itemize}
+    \item "Ubertragung in 32 Takten
+    \item Weiterer Takt f"ur Zustands"anderung von I/O auf 'high state'
+  \end{itemize}
+  \end{block}
+\end{frame}
+
+\begin{frame}
+  \frametitle{kontaktbehaftete Chipkarten}
+  \framesubtitle{Betriebsablauf (ISO 7816-10)}
+  ATR bei {\bf synchroner} "Ubertragung
+  \begin{block}{Protokolltypen: Byte H1}
+  \begin{tabular}{|l|l|l|l|}
+  \hline
+  MS HB   & LS HB   & hex  & Protokoll\\
+  \hline
+  0 0 0 0 & 0 0 0 0 & 0x00 & unnbenutzt \\
+  \hline
+  1 1 1 1 & 1 1 1 1 & 0xff & unbenutzt \\
+  \hline
+  1 x x x &         &      & Industriespezifische Protokolle \\
+  1 0 0 0 &         & 0x82 & Serial Data Access ($I^2C$) \\
+  1 0 0 1 & 0 0 1 0 & 0x92 & 3 Wire Bus \\
+  1 0 1 0 &         & 0xa2 & 2 Wire Bus \\
+  1 0 1 1 &         & 0xb2 & Function Code Bus\\
+  1 1 x x &         &      & reserviert \\
+  \hline
+  andere  &         &      & propriet"ar bzw. reserviert\\
+  \hline
+  \end{tabular}
+  \end{block}
+\end{frame}
+
+\begin{frame}
+  \frametitle{kontaktbehaftete Chipkarten}
+  \framesubtitle{Betriebsablauf (ISO 7816-10)}
+  ATR bei {\bf synchroner} "Ubertragung
+  \begin{block}{Protokollparameter: Byte H2}
+  \begin{itemize}
+    \item L"ange der Dateneinheiten: $2^{\textrm{(H2[2] H2[1] H2[0])}}$ in Bits
+    \item Gr"o"se des Datenspeichers:
+          \begin{tabular}{|l|l|l|l|l|}
+         \hline
+         H2[6] & H2[5] & H2[4] & H2[3] & Gr"o"se \\
+         \hline
+         0 & 0 & 0 & 0 & keine Angabe \\
+         0 & 0 & 0 & 1 & 128 \\
+         0 & 0 & 1 & 0 & 256 \\
+         0 & 0 & 1 & 1 & 512 \\
+         0 & 1 & 0 & 0 & 1024 \\
+         0 & 1 & 0 & 1 & 2048 \\
+         0 & 1 & 1 & 0 & 4096 \\
+         \hline
+         \end{tabular}
+  \end{itemize}
+  \end{block}
+\end{frame}
+
+\begin{frame}
+  \frametitle{kontaktbehaftete Chipkarten}
+  \framesubtitle{Betriebsablauf (ISO 7816-4)}
+  ATR bei {\bf synchroner} "Ubertragung
+  \begin{block}{'historical bytes' H3, H4}
+  "Ahnlich den 'historical bytes' bei asynchronen Karten
+  \end{block}
+
+\end{frame}
+
+\begin{frame}
+  \frametitle{kontaktbehaftete Chipkarten}
+  \framesubtitle{Betriebsablauf (ISO 7816-3)}
+  Auswahl des "Ubertragungsprotokolls
+
+
+\end{frame}
+
+\begin{frame}
+  \frametitle{kontaktbehaftete Chipkarten}
+  \framesubtitle{Betriebsablauf (ISO 7816-3)}
+  Protokolltyp $T=0$ - asynchrone halbduplex "Ubertragung
+
 \end{frame}
   
+\begin{frame}
+  \frametitle{kontaktbehaftete Chipkarten}
+  \framesubtitle{Betriebsablauf (ISO 7816-3)}
+  Protokolltyp 2-WB - synchrone halbduplex "Ubertragung
+
+\end{frame}
+
+\begin{frame}
+  \frametitle{kontaktbehaftete Chipkarten}
+  \framesubtitle{Betriebsablauf (ISO 7816-3)}
+  Beispiel: Die Versichertenkarte (synchrones 2-WB)
+
+\end{frame}
+
   \subsection{Kontaktlose Chipkarten / RFID}
 
 \begin{frame}