\documentclass{report}
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\usepackage{textcomp}
\usepackage{geometry}
\geometry{top=15mm, bottom=15mm, left=1cm, right=1cm}
\usepackage[french]{babel}
\usepackage{pslatex}
\usepackage[colorlinks=true,urlcolor=black]{hyperref}
\usepackage{graphicx}
\usepackage{fancyhdr}
\pagestyle{fancy}
\renewcommand{\footrulewidth}{0.4pt}
\fancyfoot[L]{Uubu.fr}
\fancyfoot[R]{mer. févr. 15 08:15:19 CET 2012}
\lfoot{\Large \textit{Uubu.fr}}
\hypersetup{pdfinfo={
Title={pkcs15-init},
Author={Sylvain Girod},
Creator={Bash script from uubu.fr's format version 1},
Producer={Bash script and PDFLaTeX},
Subject={Utilitaire de personnalisation de carte à puce},
CreationDate={D:20120215081519},
ModDate={D:20120215081519},
Keywords={PKI;sécurité;smartcard}
}}
\begin{document}
 
\begin{center}
{\Huge pkcs15-init }
\end{center}
\vspace{1cm}
 
\begin{flushleft}
 
{\large Utilitaire de personnalisation de carte à puce}
 
\vspace{10mm}
 
\hspace{1mm}  Il permet de créer des structures PKCS \#15 sur les cartes à puce, créer des PIN et ajouter des clés et des certificats. Les détails de la structure est contrôlée par des profils.
\vspace{5mm} \\
 
 
\vspace{1cm}{\huge Utilisation du PIN }
 
\
 
\hspace{1mm}  Une carte OpenSC peut avoir un security officer PIN, et 0 ou plusieurs PIN utilisateurs. Généralement, un PIN est une séquence de chiffres, mais certaines cartes acceptent des caractères ascii. Le SO-PIN est spécial, il est utilisé pour protéger les métadonnées sur la carte, tel que la structure PKCS \#15 elle-même. Le SO-PIN est optionnel. Pour chaque PIN, vous pouvez spécifier un PUK.
\vspace{5mm} \\
 
 
\vspace{1cm}{\huge Modes opératoires }
 
\
 
 
 
\vspace{1cm}{\huge Initialisation }
 
\
 
\hspace{1mm} Première étape de la personnalisation de la carte, et va créer les fichiers de bases sur la carte. Pour créer une structure PKCS \#15 (le PIN, le PUK et le SO-PIN sont demandés): \\
\hspace{1mm} \textbf{pkcs15-init --create-pkcs15} \\
\hspace{1mm} Si la carte le supporte, vous pouvez également l’effacer avant avec --erase \\
 
\vspace{1cm}{\huge Installation du PIN de l'utilisateur }
 
\
 
\hspace{1mm} Avant d’installer des objets, vous avez besoin d’au moins un PIN pour protéger ces objets (demande le PIN et le PUK): \\
\hspace{1mm} \textbf{pkcs15-init --store-pin --id " nn} \\
\hspace{1mm} Où nn est un ID PKCS \#15 en notation hexadécimal. Les valeurs communes sont 01, 02, etc. \\
 
\vspace{1cm}{\huge Génération de clé }
 
\
 
\hspace{1mm} Pour générer une nouvelle clé et la stocker: \\
\hspace{1mm} \textbf{pkcs15-init --generate-key " keyspec " --auth-id " nn} \\
\hspace{1mm} Où keyspec décrit l’algorithme et la longueur de la clé à créer, tel que rsa/512. Actuellement seul RSA est supporté. nn est l’ID d’un PIN utilisateur \\
\hspace{1mm} Cela va stocker la portion privée et publique de la clé. Par défaut, tente d’utiliser la fonctionnalité embarquée de la carte. \\
 
\vspace{1cm}{\huge Télécharger la clé privée }
 
\
 
\hspace{1mm} Vous pouvez utiliser une clé par un autre moyen et la charger dans la carte. Doit être au format PEM, DER, et les certificats pkcs12 et pfx : \\
\hspace{1mm} \textbf{pkcs15-init --store-private-key key.pem --id 45 --auth-id 01} \\
\hspace{1mm} L’option --id sert pour définir 2 templates de clé. l’id 45 sert pour l’authentification et l’id 46 pour la non-répudiation. \\
 
\vspace{1cm}{\huge Télécharger la clé publique }
 
\
 
\begin{description} \normalsize
\item[\hspace{1mm} --store-public-key]{stocke la clé publique. Utiliser --format pour spécifier le format du fichier (PEM par défaut)}
\end{description}
 
\vspace{1cm}{\huge Télécharger un certificat }
 
\
 
\begin{description} \normalsize
\item[\hspace{1mm} --store-certificat]{stocke le certificat. Le fichier est supposé être un fichier x.509 au format DER}
\end{description}
 
\vspace{1cm}{\huge Télécharger les fichiers pkcs\#12 }
 
\
 
\begin{description} \normalsize
\item[\hspace{1mm} pkcs15-init --store-private-key key.p12 --format pkcs12 --auth-id 01]{}
\end{description}
 
\vspace{1cm}{\huge OPTIONS }
 
\
 
\begin{description} \normalsize
\item[\hspace{1mm} --profil, -p]{Charge le profile général spécifié. Des options peuvent être spécifiées pour ce module en ajoutant un + entre chaque option. ex : pkcs15+onepin}
\item[\hspace{1mm} --card-profile, -c]{Charge l’option de profile de carte spécifié.}
\item[\hspace{1mm} --create-pkcs15, -C]{Crée un structure PKCS \#15 sur la carte}
\item[\hspace{1mm} --erase-card, -E]{Efface la carte avant de créer la structure PKCS \#15}
\item[\hspace{1mm} --generate-key, -G]{Dit à la carte de générer une nouvelle clé et de la stocker sur la carte, avec l’algorithme/longueur spécifiée}
\item[\hspace{1mm} --store-private-key, -S]{Télécharge la clé privée sur la carte. Crée également un objet clé publique}
\item[\hspace{1mm} --store-public-key, -P]{Télécharge la clé publique sur le certificat}
\item[\hspace{1mm} --store-certificate, -X]{Stocke le certificat sur la carte}
\item[\hspace{1mm} --so-pin, --so-puk, --pin, --puk]{Permet de spécifier les valeurs pour les opérations qui le nécessite}
\item[\hspace{1mm} --passphrase]{Permet de spécifier la passphrase pour débloquer la clé privée}
\item[\hspace{1mm} --verbose, -v]{mode verbeux}
\item[\hspace{1mm} --options-file]{Lit les options additionnelles depuis le fichier spécifié. Ce fichier est supposé contenir une option longue par ligne. (Peut être spécifié plusieurs fois). ex:}
\end{description}
 
\hspace{6mm} \textbf{pin frank} \\
\hspace{6mm} \textbf{puk zappa} \\
\end{flushleft}
\end{document}
