moved example use cases to the sub-components
This commit is contained in:
@@ -25,6 +25,54 @@ standard USB CCID reader. USB CCID Emulator can be used as trusted intermediary
|
|||||||
enabling secure PIN entry and PIN modification. In combination with the |libnpa|
|
enabling secure PIN entry and PIN modification. In combination with the |libnpa|
|
||||||
also |PACE| can be performed by the emulator.
|
also |PACE| can be performed by the emulator.
|
||||||
|
|
||||||
|
.. tikz:: Portable smart card reader with trusted user interface
|
||||||
|
:stringsubst:
|
||||||
|
:libs: arrows, calc, fit, patterns, plotmarks, shapes.geometric, shapes.misc, shapes.symbols, shapes.arrows, shapes.callouts, shapes.multipart, shapes.gates.logic.US, shapes.gates.logic.IEC, er, automata, backgrounds, chains, topaths, trees, petri, mindmap, matrix, calendar, folding, fadings, through, positioning, scopes, decorations.fractals, decorations.shapes, decorations.text, decorations.pathmorphing, decorations.pathreplacing, decorations.footprints, decorations.markings, shadows
|
||||||
|
|
||||||
|
\input{%(wd)s/bilder/tikzstyles.tex}
|
||||||
|
\tikzstyle{bla}=[kleiner, text width=.45\textwidth]
|
||||||
|
|
||||||
|
\node (reader)
|
||||||
|
{\includegraphics[width=1cm]{%(wd)s/bilder/my_cardreader.pdf}};
|
||||||
|
\node (readertext) [right=0of reader, bla]
|
||||||
|
{Smartphone provides smart card reader via USB};
|
||||||
|
\node (display) [below=0of reader]
|
||||||
|
{\includegraphics[width=1cm]{%(wd)s/bilder/display.pdf}};
|
||||||
|
\node (displaytext) [right=0of display, bla]
|
||||||
|
{Secure display of service provider and purpose of transaction};
|
||||||
|
\node (keyboard) [below=0of display]
|
||||||
|
{\includegraphics[width=1cm]{%(wd)s/bilder/keyboard.pdf}};
|
||||||
|
\node (keyboardtext) [right=0of keyboard, bla]
|
||||||
|
{Secure PIN Entry};
|
||||||
|
\node (firewall) [below=0of keyboard]
|
||||||
|
{\includegraphics[width=1cm]{%(wd)s/bilder/Firewall.pdf}};
|
||||||
|
\node (firewalltext) [right=0of firewall, bla]
|
||||||
|
{Verification of terminal authentication and sanitiy checks};
|
||||||
|
|
||||||
|
\node (features) [fit=(display) (keyboard) (reader) (firewall)] {};
|
||||||
|
|
||||||
|
\node (moko) [left=0of features.west] {\includegraphics[height=4cm]{%(wd)s/bilder/phone-fic-neo-freerunner.pdf}};
|
||||||
|
|
||||||
|
\node (epa) [left=1.5of moko, yshift=-2cm]
|
||||||
|
{\includegraphics[width=3cm]{%(wd)s/bilder/nPA_VS.png}};
|
||||||
|
\node (pc) [left=1.5of moko, yshift=1.5cm]
|
||||||
|
{\includegraphics[width=3cm]{%(wd)s/bilder/computer-tango.pdf}};
|
||||||
|
|
||||||
|
\begin{pgfonlayer}{background}
|
||||||
|
|
||||||
|
\node (mokobox)
|
||||||
|
[box,
|
||||||
|
fit=(moko) (readertext) (displaytext) (keyboardtext) (firewalltext)
|
||||||
|
(features)] {};
|
||||||
|
|
||||||
|
\draw [usb]
|
||||||
|
(moko) -- (pc.center) ;
|
||||||
|
\draw [decorate, decoration={expanding waves, angle=20, segment length=6}, nichtrundelinie]
|
||||||
|
(moko) -- (epa) ;
|
||||||
|
|
||||||
|
\end{pgfonlayer}
|
||||||
|
|
||||||
|
|
||||||
If the machine running :command:`ccid-emulator` is in USB device mode, a local
|
If the machine running :command:`ccid-emulator` is in USB device mode, a local
|
||||||
reader is forwareded via USB to another machine. If in USB host mode, the USB
|
reader is forwareded via USB to another machine. If in USB host mode, the USB
|
||||||
CCID reader will locally be present.
|
CCID reader will locally be present.
|
||||||
@@ -49,6 +97,87 @@ PIN verification/modification and |PACE| can also be started by the application
|
|||||||
transmitting (SCardTransmit) specially crafted APDUs. Only the alternative
|
transmitting (SCardTransmit) specially crafted APDUs. Only the alternative
|
||||||
initialization of |PACE| using SCardControl requires patching the driver
|
initialization of |PACE| using SCardControl requires patching the driver
|
||||||
(available for libccid, see :file:`patches`). The pseudo APDUs with no need for
|
(available for libccid, see :file:`patches`). The pseudo APDUs with no need for
|
||||||
|
|
||||||
|
.. tikz:: Implementation of a mobile smart card reader for the German ID card
|
||||||
|
:stringsubst:
|
||||||
|
:libs: arrows, calc, fit, patterns, plotmarks, shapes.geometric, shapes.misc, shapes.symbols, shapes.arrows, shapes.callouts, shapes.multipart, shapes.gates.logic.US, shapes.gates.logic.IEC, er, automata, backgrounds, chains, topaths, trees, petri, mindmap, matrix, calendar, folding, fadings, through, positioning, scopes, decorations.fractals, decorations.shapes, decorations.text, decorations.pathmorphing, decorations.pathreplacing, decorations.footprints, decorations.markings, shadows
|
||||||
|
|
||||||
|
\input{%(wd)s/bilder/tikzstyles.tex}
|
||||||
|
\tikzstyle{keks}=[to path={-- ++(.1,0) |- (\tikztotarget)}]
|
||||||
|
|
||||||
|
\tikzstyle{bla}=[shape=rectangle split, rectangle split parts=2,
|
||||||
|
every text node part/.style={align=center, klein}, text width=7cm,
|
||||||
|
every second node part/.style={kleiner}, inner sep=0pt]
|
||||||
|
|
||||||
|
\node (ccid-emulator)
|
||||||
|
{\texttt{ccid-emulator}};
|
||||||
|
|
||||||
|
\node (basis) [below=3of ccid-emulator]
|
||||||
|
{\includegraphics[keepaspectratio, height=2cm,
|
||||||
|
width=2cm]{%(wd)s/bilder/moko/basisleser_plain_klein.png}};
|
||||||
|
\node (basisbeschreibung) [below=0cm of basis, kleiner, text width=2cm]
|
||||||
|
{Reiner SCT RFID basis};
|
||||||
|
|
||||||
|
\node (npa) [left=1.5of basis]
|
||||||
|
{\includegraphics[keepaspectratio, height=3cm,
|
||||||
|
width=3cm]{%(wd)s/bilder/nPA_VS.png}};
|
||||||
|
\node (npabeschreibung) [below=0cm of npa, kleiner]
|
||||||
|
{German identity card};
|
||||||
|
|
||||||
|
\node (funktionenchat) [right=.6cm of ccid-emulator.east, anchor=text west, bla]
|
||||||
|
{
|
||||||
|
PACE
|
||||||
|
\nodepart{second}
|
||||||
|
\begin{itemize}
|
||||||
|
|
||||||
|
\item Display CHAT
|
||||||
|
\begin{itemize}
|
||||||
|
\item Display context (eID/eSign)
|
||||||
|
\item Display requested permissions
|
||||||
|
\end{itemize}
|
||||||
|
|
||||||
|
\item Display certificate description
|
||||||
|
\begin{itemize}
|
||||||
|
\item Identification of service provider
|
||||||
|
\item Display purpose of transaction
|
||||||
|
\end{itemize}
|
||||||
|
|
||||||
|
\item Secure PIN entry
|
||||||
|
\end{itemize}
|
||||||
|
};
|
||||||
|
\node (funktionenpace) [below=.5 of funktionenchat, bla]
|
||||||
|
{
|
||||||
|
Terminal Authentication
|
||||||
|
\nodepart{second}
|
||||||
|
\begin{itemize}
|
||||||
|
\item Verify authenticy of terminal
|
||||||
|
\item Check freshness of cv certificate
|
||||||
|
\end{itemize}
|
||||||
|
};
|
||||||
|
|
||||||
|
\begin{pgfonlayer}{background}
|
||||||
|
\node (box) [fit=(ccid-emulator) (basis) (basisbeschreibung)
|
||||||
|
(funktionenchat) (funktionenpace), box, inner sep=.5cm] {};
|
||||||
|
\node (boxbild) at (box.north west)
|
||||||
|
{\includegraphics[keepaspectratio, height=1.5cm,
|
||||||
|
width=1.5cm]{%(wd)s/bilder/moko/moko_reader.png}};
|
||||||
|
\node [right=0cm of boxbild.east, yshift=.3cm]
|
||||||
|
{Openmoko Neo FreeRunner};
|
||||||
|
\end{pgfonlayer}
|
||||||
|
|
||||||
|
\node (a) [above=1of npa]
|
||||||
|
{\includegraphics[keepaspectratio, height=3cm,
|
||||||
|
width=3cm]{%(wd)s/bilder/computer-tango.pdf}};
|
||||||
|
|
||||||
|
|
||||||
|
\begin{pgfonlayer}{background}
|
||||||
|
\path
|
||||||
|
(ccid-emulator) edge [doppelpfeil] (basis)
|
||||||
|
(basis) edge [rfid] (npa)
|
||||||
|
(a.center) edge [usb] (ccid-emulator)
|
||||||
|
(ccid-emulator.east) edge [pfeil, keks] (funktionenchat.text west)
|
||||||
|
(ccid-emulator.east) edge [pfeil, keks] (funktionenpace.text west);
|
||||||
|
\end{pgfonlayer}
|
||||||
patches are defined as follows (see `BSI TR-03119 1.3`_ p. 33-34):
|
patches are defined as follows (see `BSI TR-03119 1.3`_ p. 33-34):
|
||||||
|
|
||||||
+--------------------------+----------------------------------------------------------------------------+------------------------------------------------+
|
+--------------------------+----------------------------------------------------------------------------+------------------------------------------------+
|
||||||
@@ -126,12 +255,6 @@ tools.
|
|||||||
\texttt{/dev/gadget/ep3-bulk}\\};
|
\texttt{/dev/gadget/ep3-bulk}\\};
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
.. include:: download.txt
|
|
||||||
|
|
||||||
|
|
||||||
.. include:: autotools.txt
|
|
||||||
|
|
||||||
Running the USB CCID Emulator has the following dependencies:
|
Running the USB CCID Emulator has the following dependencies:
|
||||||
|
|
||||||
- Linux Kernel with GadgetFS_
|
- Linux Kernel with GadgetFS_
|
||||||
@@ -143,6 +266,12 @@ needs a usable PC/SC middleware with USB CCID driver. This is the case for most
|
|||||||
modern Windows and Unix-like systems by default.
|
modern Windows and Unix-like systems by default.
|
||||||
|
|
||||||
|
|
||||||
|
.. include:: download.txt
|
||||||
|
|
||||||
|
|
||||||
|
.. include:: autotools.txt
|
||||||
|
|
||||||
|
|
||||||
=================
|
=================
|
||||||
Hints on GadgetFS
|
Hints on GadgetFS
|
||||||
=================
|
=================
|
||||||
|
|||||||
@@ -25,6 +25,54 @@ standard USB CCID reader. @PACKAGE_NAME@ can be used as trusted intermediary
|
|||||||
enabling secure PIN entry and PIN modification. In combination with the |libnpa|
|
enabling secure PIN entry and PIN modification. In combination with the |libnpa|
|
||||||
also |PACE| can be performed by the emulator.
|
also |PACE| can be performed by the emulator.
|
||||||
|
|
||||||
|
.. tikz:: Portable smart card reader with trusted user interface
|
||||||
|
:stringsubst:
|
||||||
|
:libs: arrows, calc, fit, patterns, plotmarks, shapes.geometric, shapes.misc, shapes.symbols, shapes.arrows, shapes.callouts, shapes.multipart, shapes.gates.logic.US, shapes.gates.logic.IEC, er, automata, backgrounds, chains, topaths, trees, petri, mindmap, matrix, calendar, folding, fadings, through, positioning, scopes, decorations.fractals, decorations.shapes, decorations.text, decorations.pathmorphing, decorations.pathreplacing, decorations.footprints, decorations.markings, shadows
|
||||||
|
|
||||||
|
\input{%(wd)s/bilder/tikzstyles.tex}
|
||||||
|
\tikzstyle{bla}=[kleiner, text width=.45\textwidth]
|
||||||
|
|
||||||
|
\node (reader)
|
||||||
|
{\includegraphics[width=1cm]{%(wd)s/bilder/my_cardreader.pdf}};
|
||||||
|
\node (readertext) [right=0of reader, bla]
|
||||||
|
{Smartphone provides smart card reader via USB};
|
||||||
|
\node (display) [below=0of reader]
|
||||||
|
{\includegraphics[width=1cm]{%(wd)s/bilder/display.pdf}};
|
||||||
|
\node (displaytext) [right=0of display, bla]
|
||||||
|
{Secure display of service provider and purpose of transaction};
|
||||||
|
\node (keyboard) [below=0of display]
|
||||||
|
{\includegraphics[width=1cm]{%(wd)s/bilder/keyboard.pdf}};
|
||||||
|
\node (keyboardtext) [right=0of keyboard, bla]
|
||||||
|
{Secure PIN Entry};
|
||||||
|
\node (firewall) [below=0of keyboard]
|
||||||
|
{\includegraphics[width=1cm]{%(wd)s/bilder/Firewall.pdf}};
|
||||||
|
\node (firewalltext) [right=0of firewall, bla]
|
||||||
|
{Verification of terminal authentication and sanitiy checks};
|
||||||
|
|
||||||
|
\node (features) [fit=(display) (keyboard) (reader) (firewall)] {};
|
||||||
|
|
||||||
|
\node (moko) [left=0of features.west] {\includegraphics[height=4cm]{%(wd)s/bilder/phone-fic-neo-freerunner.pdf}};
|
||||||
|
|
||||||
|
\node (epa) [left=1.5of moko, yshift=-2cm]
|
||||||
|
{\includegraphics[width=3cm]{%(wd)s/bilder/nPA_VS.png}};
|
||||||
|
\node (pc) [left=1.5of moko, yshift=1.5cm]
|
||||||
|
{\includegraphics[width=3cm]{%(wd)s/bilder/computer-tango.pdf}};
|
||||||
|
|
||||||
|
\begin{pgfonlayer}{background}
|
||||||
|
|
||||||
|
\node (mokobox)
|
||||||
|
[box,
|
||||||
|
fit=(moko) (readertext) (displaytext) (keyboardtext) (firewalltext)
|
||||||
|
(features)] {};
|
||||||
|
|
||||||
|
\draw [usb]
|
||||||
|
(moko) -- (pc.center) ;
|
||||||
|
\draw [decorate, decoration={expanding waves, angle=20, segment length=6}, nichtrundelinie]
|
||||||
|
(moko) -- (epa) ;
|
||||||
|
|
||||||
|
\end{pgfonlayer}
|
||||||
|
|
||||||
|
|
||||||
If the machine running :command:`ccid-emulator` is in USB device mode, a local
|
If the machine running :command:`ccid-emulator` is in USB device mode, a local
|
||||||
reader is forwareded via USB to another machine. If in USB host mode, the USB
|
reader is forwareded via USB to another machine. If in USB host mode, the USB
|
||||||
CCID reader will locally be present.
|
CCID reader will locally be present.
|
||||||
@@ -49,6 +97,87 @@ PIN verification/modification and |PACE| can also be started by the application
|
|||||||
transmitting (SCardTransmit) specially crafted APDUs. Only the alternative
|
transmitting (SCardTransmit) specially crafted APDUs. Only the alternative
|
||||||
initialization of |PACE| using SCardControl requires patching the driver
|
initialization of |PACE| using SCardControl requires patching the driver
|
||||||
(available for libccid, see :file:`patches`). The pseudo APDUs with no need for
|
(available for libccid, see :file:`patches`). The pseudo APDUs with no need for
|
||||||
|
|
||||||
|
.. tikz:: Implementation of a mobile smart card reader for the German ID card
|
||||||
|
:stringsubst:
|
||||||
|
:libs: arrows, calc, fit, patterns, plotmarks, shapes.geometric, shapes.misc, shapes.symbols, shapes.arrows, shapes.callouts, shapes.multipart, shapes.gates.logic.US, shapes.gates.logic.IEC, er, automata, backgrounds, chains, topaths, trees, petri, mindmap, matrix, calendar, folding, fadings, through, positioning, scopes, decorations.fractals, decorations.shapes, decorations.text, decorations.pathmorphing, decorations.pathreplacing, decorations.footprints, decorations.markings, shadows
|
||||||
|
|
||||||
|
\input{%(wd)s/bilder/tikzstyles.tex}
|
||||||
|
\tikzstyle{keks}=[to path={-- ++(.1,0) |- (\tikztotarget)}]
|
||||||
|
|
||||||
|
\tikzstyle{bla}=[shape=rectangle split, rectangle split parts=2,
|
||||||
|
every text node part/.style={align=center, klein}, text width=7cm,
|
||||||
|
every second node part/.style={kleiner}, inner sep=0pt]
|
||||||
|
|
||||||
|
\node (ccid-emulator)
|
||||||
|
{\texttt{ccid-emulator}};
|
||||||
|
|
||||||
|
\node (basis) [below=3of ccid-emulator]
|
||||||
|
{\includegraphics[keepaspectratio, height=2cm,
|
||||||
|
width=2cm]{%(wd)s/bilder/moko/basisleser_plain_klein.png}};
|
||||||
|
\node (basisbeschreibung) [below=0cm of basis, kleiner, text width=2cm]
|
||||||
|
{Reiner SCT RFID basis};
|
||||||
|
|
||||||
|
\node (npa) [left=1.5of basis]
|
||||||
|
{\includegraphics[keepaspectratio, height=3cm,
|
||||||
|
width=3cm]{%(wd)s/bilder/nPA_VS.png}};
|
||||||
|
\node (npabeschreibung) [below=0cm of npa, kleiner]
|
||||||
|
{German identity card};
|
||||||
|
|
||||||
|
\node (funktionenchat) [right=.6cm of ccid-emulator.east, anchor=text west, bla]
|
||||||
|
{
|
||||||
|
PACE
|
||||||
|
\nodepart{second}
|
||||||
|
\begin{itemize}
|
||||||
|
|
||||||
|
\item Display CHAT
|
||||||
|
\begin{itemize}
|
||||||
|
\item Display context (eID/eSign)
|
||||||
|
\item Display requested permissions
|
||||||
|
\end{itemize}
|
||||||
|
|
||||||
|
\item Display certificate description
|
||||||
|
\begin{itemize}
|
||||||
|
\item Identification of service provider
|
||||||
|
\item Display purpose of transaction
|
||||||
|
\end{itemize}
|
||||||
|
|
||||||
|
\item Secure PIN entry
|
||||||
|
\end{itemize}
|
||||||
|
};
|
||||||
|
\node (funktionenpace) [below=.5 of funktionenchat, bla]
|
||||||
|
{
|
||||||
|
Terminal Authentication
|
||||||
|
\nodepart{second}
|
||||||
|
\begin{itemize}
|
||||||
|
\item Verify authenticy of terminal
|
||||||
|
\item Check freshness of cv certificate
|
||||||
|
\end{itemize}
|
||||||
|
};
|
||||||
|
|
||||||
|
\begin{pgfonlayer}{background}
|
||||||
|
\node (box) [fit=(ccid-emulator) (basis) (basisbeschreibung)
|
||||||
|
(funktionenchat) (funktionenpace), box, inner sep=.5cm] {};
|
||||||
|
\node (boxbild) at (box.north west)
|
||||||
|
{\includegraphics[keepaspectratio, height=1.5cm,
|
||||||
|
width=1.5cm]{%(wd)s/bilder/moko/moko_reader.png}};
|
||||||
|
\node [right=0cm of boxbild.east, yshift=.3cm]
|
||||||
|
{Openmoko Neo FreeRunner};
|
||||||
|
\end{pgfonlayer}
|
||||||
|
|
||||||
|
\node (a) [above=1of npa]
|
||||||
|
{\includegraphics[keepaspectratio, height=3cm,
|
||||||
|
width=3cm]{%(wd)s/bilder/computer-tango.pdf}};
|
||||||
|
|
||||||
|
|
||||||
|
\begin{pgfonlayer}{background}
|
||||||
|
\path
|
||||||
|
(ccid-emulator) edge [doppelpfeil] (basis)
|
||||||
|
(basis) edge [rfid] (npa)
|
||||||
|
(a.center) edge [usb] (ccid-emulator)
|
||||||
|
(ccid-emulator.east) edge [pfeil, keks] (funktionenchat.text west)
|
||||||
|
(ccid-emulator.east) edge [pfeil, keks] (funktionenpace.text west);
|
||||||
|
\end{pgfonlayer}
|
||||||
patches are defined as follows (see `BSI TR-03119 1.3`_ p. 33-34):
|
patches are defined as follows (see `BSI TR-03119 1.3`_ p. 33-34):
|
||||||
|
|
||||||
+--------------------------+----------------------------------------------------------------------------+------------------------------------------------+
|
+--------------------------+----------------------------------------------------------------------------+------------------------------------------------+
|
||||||
|
|||||||
@@ -4,6 +4,11 @@
|
|||||||
Installation
|
Installation
|
||||||
************
|
************
|
||||||
|
|
||||||
|
|
||||||
|
=======================================
|
||||||
|
Installation on Linux, Unix and similar
|
||||||
|
=======================================
|
||||||
|
|
||||||
The USB CCID Emulator uses the GNU Build System to compile and install. If you are
|
The USB CCID Emulator uses the GNU Build System to compile and install. If you are
|
||||||
unfamiliar with it, please have a look at :file:`INSTALL`. If you can not find
|
unfamiliar with it, please have a look at :file:`INSTALL`. If you can not find
|
||||||
it, you are probably working bleeding edge in the repository. Run the
|
it, you are probably working bleeding edge in the repository. Run the
|
||||||
|
|||||||
@@ -4,7 +4,9 @@
|
|||||||
Download
|
Download
|
||||||
********
|
********
|
||||||
|
|
||||||
You can find the latest release of USB CCID Emulator on `Sourceforge
|
You can find the latest release of USB CCID Emulator on `Github
|
||||||
|
<https://github.com/frankmorgner/vsmartcard/releases>`_. Older releases are
|
||||||
|
still available on `Sourceforge
|
||||||
<http://sourceforge.net/projects/vsmartcard/files>`_.
|
<http://sourceforge.net/projects/vsmartcard/files>`_.
|
||||||
|
|
||||||
Alternatively, you can clone our git repository::
|
Alternatively, you can clone our git repository::
|
||||||
|
|||||||
263
doc/index.txt
263
doc/index.txt
@@ -70,269 +70,6 @@ have a look at these programming guides and try yourself:
|
|||||||
npa/api
|
npa/api
|
||||||
|
|
||||||
|
|
||||||
Example Use Cases
|
|
||||||
-----------------
|
|
||||||
|
|
||||||
Mobile Phone with Virtual Smartcard connected via NFC
|
|
||||||
*****************************************************
|
|
||||||
|
|
||||||
.. tikz:: Emulating a smart card for checking an untrusted device
|
|
||||||
:stringsubst:
|
|
||||||
:libs: arrows, calc, fit, patterns, plotmarks, shapes.geometric, shapes.misc, shapes.symbols, shapes.arrows, shapes.callouts, shapes.multipart, shapes.gates.logic.US, shapes.gates.logic.IEC, er, automata, backgrounds, chains, topaths, trees, petri, mindmap, matrix, calendar, folding, fadings, through, positioning, scopes, decorations.fractals, decorations.shapes, decorations.text, decorations.pathmorphing, decorations.pathreplacing, decorations.footprints, decorations.markings, shadows
|
|
||||||
|
|
||||||
\input{%(wd)s/bilder/tikzstyles.tex}
|
|
||||||
\tikzstyle{bla}=[kleiner, text width=.45\textwidth]
|
|
||||||
|
|
||||||
\node (antenna)
|
|
||||||
{\includegraphics[width=1cm]{%(wd)s/bilder/network-wireless.pdf}};
|
|
||||||
\node (antennatext) [right=0of antenna, bla]
|
|
||||||
{Smartphone emulates nPA via NFC};
|
|
||||||
\node (display) [below=.25of antenna]
|
|
||||||
{\includegraphics[width=1cm]{%(wd)s/bilder/display.pdf}};
|
|
||||||
\node (displaytext) [right=0of display, bla]
|
|
||||||
{Display service provider, purpose of transaction, security context,
|
|
||||||
requested permissions};
|
|
||||||
\node (firewall) [below=.25of display]
|
|
||||||
{\includegraphics[width=1cm]{%(wd)s/bilder/Firewall.pdf}};
|
|
||||||
\node (firewalltext) [right=0of firewall, bla]
|
|
||||||
{Verification of terminal authentication and sanitiy checks};
|
|
||||||
|
|
||||||
\node (features) [fit=(display) (antenna) (firewall)] {};
|
|
||||||
|
|
||||||
\node (moko) [left=0of features.west] {\includegraphics[height=4cm]{%(wd)s/bilder/phone-fic-neo-freerunner.pdf}};
|
|
||||||
|
|
||||||
\node (pc) [left=1.5of moko]
|
|
||||||
{\includegraphics[width=2cm]{%(wd)s/bilder/ivak_kiosk-terminal.pdf}};
|
|
||||||
|
|
||||||
\begin{pgfonlayer}{background}
|
|
||||||
|
|
||||||
\node (mokobox)
|
|
||||||
[box,
|
|
||||||
fit=(moko) (antennatext) (displaytext) (firewalltext)
|
|
||||||
(features)] {};
|
|
||||||
|
|
||||||
\draw [rfid]
|
|
||||||
(pc) -- (moko) ;
|
|
||||||
|
|
||||||
\end{pgfonlayer}
|
|
||||||
|
|
||||||
|
|
||||||
.. tikz:: Implementation of the nPA emulator
|
|
||||||
:stringsubst:
|
|
||||||
:libs: arrows, calc, fit, patterns, plotmarks, shapes.geometric, shapes.misc, shapes.symbols, shapes.arrows, shapes.callouts, shapes.multipart, shapes.gates.logic.US, shapes.gates.logic.IEC, er, automata, backgrounds, chains, topaths, trees, petri, mindmap, matrix, calendar, folding, fadings, through, positioning, scopes, decorations.fractals, decorations.shapes, decorations.text, decorations.pathmorphing, decorations.pathreplacing, decorations.footprints, decorations.markings, shadows
|
|
||||||
|
|
||||||
\input{%(wd)s/bilder/tikzstyles.tex}
|
|
||||||
\tikzstyle{bla}=[shape=rectangle split, rectangle split parts=2,
|
|
||||||
every text node part/.style={align=center, klein}, text width=7cm,
|
|
||||||
every second node part/.style={kleiner}, inner sep=0pt]
|
|
||||||
|
|
||||||
\tikzstyle{keks}=[to path={-- ++(.1,0) |- (\tikztotarget)}]
|
|
||||||
|
|
||||||
\node (touchatag)
|
|
||||||
{\includegraphics[keepaspectratio, height=2cm,
|
|
||||||
width=2cm]{%(wd)s/bilder/touchatag.png}};
|
|
||||||
\node (touchatagbeschreibung) [below=0cm of touchatag, kleiner]
|
|
||||||
{touchatag};
|
|
||||||
|
|
||||||
\node (pcsc-relay) [right=of touchatag]
|
|
||||||
{\texttt{pcsc-relay}};
|
|
||||||
\node (pcsc-relaybeschreibung) [below=0cm of pcsc-relay, kleiner]
|
|
||||||
{NFC emulator
|
|
||||||
};
|
|
||||||
|
|
||||||
\node (vicc) [right=of pcsc-relay]
|
|
||||||
{\texttt{vicc -t nPA}};
|
|
||||||
\node (viccbeschreibung) [below=0cm of vicc, kleiner]
|
|
||||||
{nPA emulator};
|
|
||||||
|
|
||||||
\node (group) [fit=(touchatag) (pcsc-relay) (vicc) (touchatagbeschreibung)
|
|
||||||
(pcsc-relaybeschreibung) (viccbeschreibung)] {};
|
|
||||||
\node (funktionenchat) [below=0cm of group, bla]
|
|
||||||
{
|
|
||||||
PACE
|
|
||||||
\nodepart{second}
|
|
||||||
\begin{itemize}
|
|
||||||
\item Display context (eID/eSign)
|
|
||||||
\item Display requested permissions
|
|
||||||
\end{itemize}
|
|
||||||
};
|
|
||||||
\node (funktionenpace) [below=.5 of funktionenchat, bla]
|
|
||||||
{
|
|
||||||
Terminal Authentication
|
|
||||||
\nodepart{second}
|
|
||||||
\begin{itemize}
|
|
||||||
\item Verify authenticy of terminal
|
|
||||||
\item Check freshness of cv certificate
|
|
||||||
\item With certificate database
|
|
||||||
\begin{itemize}
|
|
||||||
\item Identification of service provider
|
|
||||||
\item Display purpose of transaction
|
|
||||||
\end{itemize}
|
|
||||||
\end{itemize}
|
|
||||||
};
|
|
||||||
|
|
||||||
\begin{pgfonlayer}{background}
|
|
||||||
\node (box) [fit=(touchatag) (pcsc-relay) (vicc) (touchatagbeschreibung)
|
|
||||||
(pcsc-relaybeschreibung) (viccbeschreibung) (funktionenchat)
|
|
||||||
(funktionenpace), box, inner sep=.5cm] {};
|
|
||||||
\node (boxbild) at (box.north west)
|
|
||||||
{\includegraphics[keepaspectratio, height=1.5cm,
|
|
||||||
width=1.5cm]{%(wd)s/bilder/moko/moko_reader.png}};
|
|
||||||
\node [right=0cm of boxbild.east, yshift=.3cm]
|
|
||||||
{Openmoko Neo FreeRunner};
|
|
||||||
\end{pgfonlayer}
|
|
||||||
|
|
||||||
\node (a) [left=1.5of box]
|
|
||||||
{\includegraphics[keepaspectratio, height=4cm,
|
|
||||||
width=4cm]{%(wd)s/bilder/ivak_kiosk-terminal.pdf}};
|
|
||||||
\node (e) [below=0cm of a, text width=2.5cm, align=center]
|
|
||||||
{(Public) Terminal};
|
|
||||||
|
|
||||||
|
|
||||||
\begin{pgfonlayer}{background}
|
|
||||||
\path
|
|
||||||
(touchatag) edge [doppelpfeil] (pcsc-relay)
|
|
||||||
(pcsc-relay) edge [doppelpfeil] (vicc)
|
|
||||||
(vicc.east) edge [keks, pfeil] (funktionenchat.text east)
|
|
||||||
(vicc.east) edge [keks, pfeil] (funktionenpace.text east)
|
|
||||||
(a) edge [decorate, decoration={expanding waves, angle=20, segment
|
|
||||||
length=6}, nichtrundelinie] (touchatag.south west);
|
|
||||||
\end{pgfonlayer}
|
|
||||||
|
|
||||||
|
|
||||||
Mobile Smart Card Reader
|
|
||||||
************************
|
|
||||||
|
|
||||||
.. tikz:: Portable smart card reader with trusted user interface
|
|
||||||
:stringsubst:
|
|
||||||
:libs: arrows, calc, fit, patterns, plotmarks, shapes.geometric, shapes.misc, shapes.symbols, shapes.arrows, shapes.callouts, shapes.multipart, shapes.gates.logic.US, shapes.gates.logic.IEC, er, automata, backgrounds, chains, topaths, trees, petri, mindmap, matrix, calendar, folding, fadings, through, positioning, scopes, decorations.fractals, decorations.shapes, decorations.text, decorations.pathmorphing, decorations.pathreplacing, decorations.footprints, decorations.markings, shadows
|
|
||||||
|
|
||||||
\input{%(wd)s/bilder/tikzstyles.tex}
|
|
||||||
\tikzstyle{bla}=[kleiner, text width=.45\textwidth]
|
|
||||||
|
|
||||||
\node (reader)
|
|
||||||
{\includegraphics[width=1cm]{%(wd)s/bilder/my_cardreader.pdf}};
|
|
||||||
\node (readertext) [right=0of reader, bla]
|
|
||||||
{Smartphone provides smart card reader via USB};
|
|
||||||
\node (display) [below=0of reader]
|
|
||||||
{\includegraphics[width=1cm]{%(wd)s/bilder/display.pdf}};
|
|
||||||
\node (displaytext) [right=0of display, bla]
|
|
||||||
{Secure display of service provider and purpose of transaction};
|
|
||||||
\node (keyboard) [below=0of display]
|
|
||||||
{\includegraphics[width=1cm]{%(wd)s/bilder/keyboard.pdf}};
|
|
||||||
\node (keyboardtext) [right=0of keyboard, bla]
|
|
||||||
{Secure PIN Entry};
|
|
||||||
\node (firewall) [below=0of keyboard]
|
|
||||||
{\includegraphics[width=1cm]{%(wd)s/bilder/Firewall.pdf}};
|
|
||||||
\node (firewalltext) [right=0of firewall, bla]
|
|
||||||
{Verification of terminal authentication and sanitiy checks};
|
|
||||||
|
|
||||||
\node (features) [fit=(display) (keyboard) (reader) (firewall)] {};
|
|
||||||
|
|
||||||
\node (moko) [left=0of features.west] {\includegraphics[height=4cm]{%(wd)s/bilder/phone-fic-neo-freerunner.pdf}};
|
|
||||||
|
|
||||||
\node (epa) [left=1.5of moko, yshift=-2cm]
|
|
||||||
{\includegraphics[width=3cm]{%(wd)s/bilder/nPA_VS.png}};
|
|
||||||
\node (pc) [left=1.5of moko, yshift=1.5cm]
|
|
||||||
{\includegraphics[width=3cm]{%(wd)s/bilder/computer-tango.pdf}};
|
|
||||||
|
|
||||||
\begin{pgfonlayer}{background}
|
|
||||||
|
|
||||||
\node (mokobox)
|
|
||||||
[box,
|
|
||||||
fit=(moko) (readertext) (displaytext) (keyboardtext) (firewalltext)
|
|
||||||
(features)] {};
|
|
||||||
|
|
||||||
\draw [usb]
|
|
||||||
(moko) -- (pc.center) ;
|
|
||||||
\draw [decorate, decoration={expanding waves, angle=20, segment length=6}, nichtrundelinie]
|
|
||||||
(moko) -- (epa) ;
|
|
||||||
|
|
||||||
\end{pgfonlayer}
|
|
||||||
|
|
||||||
.. tikz:: Implementation of a mobile smart card reader
|
|
||||||
:stringsubst:
|
|
||||||
:libs: arrows, calc, fit, patterns, plotmarks, shapes.geometric, shapes.misc, shapes.symbols, shapes.arrows, shapes.callouts, shapes.multipart, shapes.gates.logic.US, shapes.gates.logic.IEC, er, automata, backgrounds, chains, topaths, trees, petri, mindmap, matrix, calendar, folding, fadings, through, positioning, scopes, decorations.fractals, decorations.shapes, decorations.text, decorations.pathmorphing, decorations.pathreplacing, decorations.footprints, decorations.markings, shadows
|
|
||||||
|
|
||||||
\input{%(wd)s/bilder/tikzstyles.tex}
|
|
||||||
\tikzstyle{keks}=[to path={-- ++(.1,0) |- (\tikztotarget)}]
|
|
||||||
|
|
||||||
\tikzstyle{bla}=[shape=rectangle split, rectangle split parts=2,
|
|
||||||
every text node part/.style={align=center, klein}, text width=7cm,
|
|
||||||
every second node part/.style={kleiner}, inner sep=0pt]
|
|
||||||
|
|
||||||
\node (ccid-emulator)
|
|
||||||
{\texttt{ccid-emulator}};
|
|
||||||
|
|
||||||
\node (basis) [below=3of ccid-emulator]
|
|
||||||
{\includegraphics[keepaspectratio, height=2cm,
|
|
||||||
width=2cm]{%(wd)s/bilder/moko/basisleser_plain_klein.png}};
|
|
||||||
\node (basisbeschreibung) [below=0cm of basis, kleiner, text width=2cm]
|
|
||||||
{Reiner SCT RFID basis};
|
|
||||||
|
|
||||||
\node (npa) [left=1.5of basis]
|
|
||||||
{\includegraphics[keepaspectratio, height=3cm,
|
|
||||||
width=3cm]{%(wd)s/bilder/nPA_VS.png}};
|
|
||||||
\node (npabeschreibung) [below=0cm of npa, kleiner]
|
|
||||||
{German identity card};
|
|
||||||
|
|
||||||
\node (funktionenchat) [right=.6cm of ccid-emulator.east, anchor=text west, bla]
|
|
||||||
{
|
|
||||||
PACE
|
|
||||||
\nodepart{second}
|
|
||||||
\begin{itemize}
|
|
||||||
|
|
||||||
\item Display CHAT
|
|
||||||
\begin{itemize}
|
|
||||||
\item Display context (eID/eSign)
|
|
||||||
\item Display requested permissions
|
|
||||||
\end{itemize}
|
|
||||||
|
|
||||||
\item Display certificate description
|
|
||||||
\begin{itemize}
|
|
||||||
\item Identification of service provider
|
|
||||||
\item Display purpose of transaction
|
|
||||||
\end{itemize}
|
|
||||||
|
|
||||||
\item Secure PIN entry
|
|
||||||
\end{itemize}
|
|
||||||
};
|
|
||||||
\node (funktionenpace) [below=.5 of funktionenchat, bla]
|
|
||||||
{
|
|
||||||
Terminal Authentication
|
|
||||||
\nodepart{second}
|
|
||||||
\begin{itemize}
|
|
||||||
\item Verify authenticy of terminal
|
|
||||||
\item Check freshness of cv certificate
|
|
||||||
\end{itemize}
|
|
||||||
};
|
|
||||||
|
|
||||||
\begin{pgfonlayer}{background}
|
|
||||||
\node (box) [fit=(ccid-emulator) (basis) (basisbeschreibung)
|
|
||||||
(funktionenchat) (funktionenpace), box, inner sep=.5cm] {};
|
|
||||||
\node (boxbild) at (box.north west)
|
|
||||||
{\includegraphics[keepaspectratio, height=1.5cm,
|
|
||||||
width=1.5cm]{%(wd)s/bilder/moko/moko_reader.png}};
|
|
||||||
\node [right=0cm of boxbild.east, yshift=.3cm]
|
|
||||||
{Openmoko Neo FreeRunner};
|
|
||||||
\end{pgfonlayer}
|
|
||||||
|
|
||||||
\node (a) [above=1of npa]
|
|
||||||
{\includegraphics[keepaspectratio, height=3cm,
|
|
||||||
width=3cm]{%(wd)s/bilder/computer-tango.pdf}};
|
|
||||||
|
|
||||||
|
|
||||||
\begin{pgfonlayer}{background}
|
|
||||||
\path
|
|
||||||
(ccid-emulator) edge [doppelpfeil] (basis)
|
|
||||||
(basis) edge [rfid] (npa)
|
|
||||||
(a.center) edge [usb] (ccid-emulator)
|
|
||||||
(ccid-emulator.east) edge [pfeil, keks] (funktionenchat.text west)
|
|
||||||
(ccid-emulator.east) edge [pfeil, keks] (funktionenpace.text west);
|
|
||||||
\end{pgfonlayer}
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
Download
|
Download
|
||||||
--------
|
--------
|
||||||
|
|
||||||
|
|||||||
@@ -30,8 +30,9 @@ Command APDUs are received with the contact-less interface and relayed. The
|
|||||||
Response APDUs are then sent back via RFID. The contact-less data will be
|
Response APDUs are then sent back via RFID. The contact-less data will be
|
||||||
relayed to one of the following:
|
relayed to one of the following:
|
||||||
|
|
||||||
- to a smart card inserted into one of the systems smart card readers. The
|
- to a *real* smart card inserted into one of the systems' smart card readers.
|
||||||
smart card reader must be accessible with PC/SC.
|
The smart card reader must be accessible with PC/SC. The smart card may be
|
||||||
|
contact-based *or* contact-less.
|
||||||
- to a :ref:`vicc` that directly connects to :command:`pcsc-relay`. The virtual
|
- to a :ref:`vicc` that directly connects to :command:`pcsc-relay`. The virtual
|
||||||
smart card's native interface is used and (despite its name) PC/SC Relay
|
smart card's native interface is used and (despite its name) PC/SC Relay
|
||||||
does not need to access PC/SC in this case.
|
does not need to access PC/SC in this case.
|
||||||
@@ -40,6 +41,89 @@ With PC/SC Relay you can relay a contact-less or contact based smart card
|
|||||||
over a long distance. Also you can use it in combination with the :ref:`vicc`
|
over a long distance. Also you can use it in combination with the :ref:`vicc`
|
||||||
to completely emulate an ISO/IEC 14443 smart card.
|
to completely emulate an ISO/IEC 14443 smart card.
|
||||||
|
|
||||||
|
.. tikz:: Emulate a contact-less German ID card to perform sanity checks
|
||||||
|
:stringsubst:
|
||||||
|
:libs: arrows, calc, fit, patterns, plotmarks, shapes.geometric, shapes.misc, shapes.symbols, shapes.arrows, shapes.callouts, shapes.multipart, shapes.gates.logic.US, shapes.gates.logic.IEC, er, automata, backgrounds, chains, topaths, trees, petri, mindmap, matrix, calendar, folding, fadings, through, positioning, scopes, decorations.fractals, decorations.shapes, decorations.text, decorations.pathmorphing, decorations.pathreplacing, decorations.footprints, decorations.markings, shadows
|
||||||
|
|
||||||
|
\input{%(wd)s/bilder/tikzstyles.tex}
|
||||||
|
\tikzstyle{bla}=[shape=rectangle split, rectangle split parts=2,
|
||||||
|
every text node part/.style={align=center, klein}, text width=7cm,
|
||||||
|
every second node part/.style={kleiner}, inner sep=0pt]
|
||||||
|
|
||||||
|
\tikzstyle{keks}=[to path={-- ++(.1,0) |- (\tikztotarget)}]
|
||||||
|
|
||||||
|
\node (touchatag)
|
||||||
|
{\includegraphics[keepaspectratio, height=2cm,
|
||||||
|
width=2cm]{%(wd)s/bilder/touchatag.png}};
|
||||||
|
\node (touchatagbeschreibung) [below=0cm of touchatag, kleiner]
|
||||||
|
{touchatag};
|
||||||
|
|
||||||
|
\node (pcsc-relay) [right=of touchatag]
|
||||||
|
{\texttt{pcsc-relay}};
|
||||||
|
\node (pcsc-relaybeschreibung) [below=0cm of pcsc-relay, kleiner]
|
||||||
|
{NFC emulator
|
||||||
|
};
|
||||||
|
|
||||||
|
\node (vicc) [right=of pcsc-relay]
|
||||||
|
{\texttt{vicc -t nPA}};
|
||||||
|
\node (viccbeschreibung) [below=0cm of vicc, kleiner]
|
||||||
|
{nPA emulator};
|
||||||
|
|
||||||
|
\node (group) [fit=(touchatag) (pcsc-relay) (vicc) (touchatagbeschreibung)
|
||||||
|
(pcsc-relaybeschreibung) (viccbeschreibung)] {};
|
||||||
|
\node (funktionenchat) [below=0cm of group, bla]
|
||||||
|
{
|
||||||
|
PACE
|
||||||
|
\nodepart{second}
|
||||||
|
\begin{itemize}
|
||||||
|
\item Display context (eID/eSign)
|
||||||
|
\item Display requested permissions
|
||||||
|
\end{itemize}
|
||||||
|
};
|
||||||
|
\node (funktionenpace) [below=.5 of funktionenchat, bla]
|
||||||
|
{
|
||||||
|
Terminal Authentication
|
||||||
|
\nodepart{second}
|
||||||
|
\begin{itemize}
|
||||||
|
\item Verify authenticy of terminal
|
||||||
|
\item Check freshness of cv certificate
|
||||||
|
\item With certificate database
|
||||||
|
\begin{itemize}
|
||||||
|
\item Identification of service provider
|
||||||
|
\item Display purpose of transaction
|
||||||
|
\end{itemize}
|
||||||
|
\end{itemize}
|
||||||
|
};
|
||||||
|
|
||||||
|
\begin{pgfonlayer}{background}
|
||||||
|
\node (box) [fit=(touchatag) (pcsc-relay) (vicc) (touchatagbeschreibung)
|
||||||
|
(pcsc-relaybeschreibung) (viccbeschreibung) (funktionenchat)
|
||||||
|
(funktionenpace), box, inner sep=.5cm] {};
|
||||||
|
\node (boxbild) at (box.north west)
|
||||||
|
{\includegraphics[keepaspectratio, height=1.5cm,
|
||||||
|
width=1.5cm]{%(wd)s/bilder/moko/moko_reader.png}};
|
||||||
|
\node [right=0cm of boxbild.east, yshift=.3cm]
|
||||||
|
{Openmoko Neo FreeRunner};
|
||||||
|
\end{pgfonlayer}
|
||||||
|
|
||||||
|
\node (a) [left=1.5of box]
|
||||||
|
{\includegraphics[keepaspectratio, height=4cm,
|
||||||
|
width=4cm]{%(wd)s/bilder/ivak_kiosk-terminal.pdf}};
|
||||||
|
\node (e) [below=0cm of a, text width=2.5cm, align=center]
|
||||||
|
{(Public) Terminal};
|
||||||
|
|
||||||
|
|
||||||
|
\begin{pgfonlayer}{background}
|
||||||
|
\path
|
||||||
|
(touchatag) edge [doppelpfeil] (pcsc-relay)
|
||||||
|
(pcsc-relay) edge [doppelpfeil] (vicc)
|
||||||
|
(vicc.east) edge [keks, pfeil] (funktionenchat.text east)
|
||||||
|
(vicc.east) edge [keks, pfeil] (funktionenpace.text east)
|
||||||
|
(a) edge [decorate, decoration={expanding waves, angle=20, segment
|
||||||
|
length=6}, nichtrundelinie] (touchatag.south west);
|
||||||
|
\end{pgfonlayer}
|
||||||
|
|
||||||
|
|
||||||
PC/SC Relay has the following dependencies:
|
PC/SC Relay has the following dependencies:
|
||||||
|
|
||||||
- PC/SC middleware
|
- PC/SC middleware
|
||||||
|
|||||||
@@ -30,8 +30,9 @@ Command APDUs are received with the contact-less interface and relayed. The
|
|||||||
Response APDUs are then sent back via RFID. The contact-less data will be
|
Response APDUs are then sent back via RFID. The contact-less data will be
|
||||||
relayed to one of the following:
|
relayed to one of the following:
|
||||||
|
|
||||||
- to a smart card inserted into one of the systems smart card readers. The
|
- to a *real* smart card inserted into one of the systems' smart card readers.
|
||||||
smart card reader must be accessible with PC/SC.
|
The smart card reader must be accessible with PC/SC. The smart card may be
|
||||||
|
contact-based *or* contact-less.
|
||||||
- to a :ref:`vicc` that directly connects to :command:`pcsc-relay`. The virtual
|
- to a :ref:`vicc` that directly connects to :command:`pcsc-relay`. The virtual
|
||||||
smart card's native interface is used and (despite its name) @PACKAGE_NAME@
|
smart card's native interface is used and (despite its name) @PACKAGE_NAME@
|
||||||
does not need to access PC/SC in this case.
|
does not need to access PC/SC in this case.
|
||||||
@@ -40,6 +41,89 @@ With @PACKAGE_NAME@ you can relay a contact-less or contact based smart card
|
|||||||
over a long distance. Also you can use it in combination with the :ref:`vicc`
|
over a long distance. Also you can use it in combination with the :ref:`vicc`
|
||||||
to completely emulate an ISO/IEC 14443 smart card.
|
to completely emulate an ISO/IEC 14443 smart card.
|
||||||
|
|
||||||
|
.. tikz:: Emulate a contact-less German ID card to perform sanity checks
|
||||||
|
:stringsubst:
|
||||||
|
:libs: arrows, calc, fit, patterns, plotmarks, shapes.geometric, shapes.misc, shapes.symbols, shapes.arrows, shapes.callouts, shapes.multipart, shapes.gates.logic.US, shapes.gates.logic.IEC, er, automata, backgrounds, chains, topaths, trees, petri, mindmap, matrix, calendar, folding, fadings, through, positioning, scopes, decorations.fractals, decorations.shapes, decorations.text, decorations.pathmorphing, decorations.pathreplacing, decorations.footprints, decorations.markings, shadows
|
||||||
|
|
||||||
|
\input{%(wd)s/bilder/tikzstyles.tex}
|
||||||
|
\tikzstyle{bla}=[shape=rectangle split, rectangle split parts=2,
|
||||||
|
every text node part/.style={align=center, klein}, text width=7cm,
|
||||||
|
every second node part/.style={kleiner}, inner sep=0pt]
|
||||||
|
|
||||||
|
\tikzstyle{keks}=[to path={-- ++(.1,0) |- (\tikztotarget)}]
|
||||||
|
|
||||||
|
\node (touchatag)
|
||||||
|
{\includegraphics[keepaspectratio, height=2cm,
|
||||||
|
width=2cm]{%(wd)s/bilder/touchatag.png}};
|
||||||
|
\node (touchatagbeschreibung) [below=0cm of touchatag, kleiner]
|
||||||
|
{touchatag};
|
||||||
|
|
||||||
|
\node (pcsc-relay) [right=of touchatag]
|
||||||
|
{\texttt{pcsc-relay}};
|
||||||
|
\node (pcsc-relaybeschreibung) [below=0cm of pcsc-relay, kleiner]
|
||||||
|
{NFC emulator
|
||||||
|
};
|
||||||
|
|
||||||
|
\node (vicc) [right=of pcsc-relay]
|
||||||
|
{\texttt{vicc -t nPA}};
|
||||||
|
\node (viccbeschreibung) [below=0cm of vicc, kleiner]
|
||||||
|
{nPA emulator};
|
||||||
|
|
||||||
|
\node (group) [fit=(touchatag) (pcsc-relay) (vicc) (touchatagbeschreibung)
|
||||||
|
(pcsc-relaybeschreibung) (viccbeschreibung)] {};
|
||||||
|
\node (funktionenchat) [below=0cm of group, bla]
|
||||||
|
{
|
||||||
|
PACE
|
||||||
|
\nodepart{second}
|
||||||
|
\begin{itemize}
|
||||||
|
\item Display context (eID/eSign)
|
||||||
|
\item Display requested permissions
|
||||||
|
\end{itemize}
|
||||||
|
};
|
||||||
|
\node (funktionenpace) [below=.5 of funktionenchat, bla]
|
||||||
|
{
|
||||||
|
Terminal Authentication
|
||||||
|
\nodepart{second}
|
||||||
|
\begin{itemize}
|
||||||
|
\item Verify authenticy of terminal
|
||||||
|
\item Check freshness of cv certificate
|
||||||
|
\item With certificate database
|
||||||
|
\begin{itemize}
|
||||||
|
\item Identification of service provider
|
||||||
|
\item Display purpose of transaction
|
||||||
|
\end{itemize}
|
||||||
|
\end{itemize}
|
||||||
|
};
|
||||||
|
|
||||||
|
\begin{pgfonlayer}{background}
|
||||||
|
\node (box) [fit=(touchatag) (pcsc-relay) (vicc) (touchatagbeschreibung)
|
||||||
|
(pcsc-relaybeschreibung) (viccbeschreibung) (funktionenchat)
|
||||||
|
(funktionenpace), box, inner sep=.5cm] {};
|
||||||
|
\node (boxbild) at (box.north west)
|
||||||
|
{\includegraphics[keepaspectratio, height=1.5cm,
|
||||||
|
width=1.5cm]{%(wd)s/bilder/moko/moko_reader.png}};
|
||||||
|
\node [right=0cm of boxbild.east, yshift=.3cm]
|
||||||
|
{Openmoko Neo FreeRunner};
|
||||||
|
\end{pgfonlayer}
|
||||||
|
|
||||||
|
\node (a) [left=1.5of box]
|
||||||
|
{\includegraphics[keepaspectratio, height=4cm,
|
||||||
|
width=4cm]{%(wd)s/bilder/ivak_kiosk-terminal.pdf}};
|
||||||
|
\node (e) [below=0cm of a, text width=2.5cm, align=center]
|
||||||
|
{(Public) Terminal};
|
||||||
|
|
||||||
|
|
||||||
|
\begin{pgfonlayer}{background}
|
||||||
|
\path
|
||||||
|
(touchatag) edge [doppelpfeil] (pcsc-relay)
|
||||||
|
(pcsc-relay) edge [doppelpfeil] (vicc)
|
||||||
|
(vicc.east) edge [keks, pfeil] (funktionenchat.text east)
|
||||||
|
(vicc.east) edge [keks, pfeil] (funktionenpace.text east)
|
||||||
|
(a) edge [decorate, decoration={expanding waves, angle=20, segment
|
||||||
|
length=6}, nichtrundelinie] (touchatag.south west);
|
||||||
|
\end{pgfonlayer}
|
||||||
|
|
||||||
|
|
||||||
@PACKAGE_NAME@ has the following dependencies:
|
@PACKAGE_NAME@ has the following dependencies:
|
||||||
|
|
||||||
- PC/SC middleware
|
- PC/SC middleware
|
||||||
|
|||||||
Reference in New Issue
Block a user