2 encodeurs sont disponibles dans ESUP-SGC, ils se lancent via JavaWebStart (JWS) depuis un fichier JNLP téléchargeable depuis le serveur esup-sgc. Pour que cela fonctionne, et vis à vis des contrôles de sécurité Java, les jar pointés par les fichiers JNLP doivent être signés ; voir à ce propos la page de documentation Signature de code / signature d'un JAR.
- esup-sgc-client : encodeur livré sous forme de jar dans les sources d'esup-sgc ; le jar livré est signé par Vincent Bonamy de l'Université de Rouen ; vous pouvez le recompiler et le signer vous-même, mais ce n'est pas obligatoire.
- esup-sgc-client-zxp3 : encodeur 'de masse' utilisant unz zxp3, il dépend de jar et dll Zebra que l'on ne peut s'autoriser à distribuer ; si vous souhaitez utiliser cet encodeur, vous devez le compiler vous-même (et signer le jar par vous-même).
Signature du jar
La signature du jar est appelée dans la tâche maven sign (intégrée au packaging mvn package). Dans le fichier pom.xml de esup-sgc-client (et esup-sgc-client-zxp3) vous trouvez la configuration suivante :
Bloc de code |
---|
<configuration>
<keystore>src/etc/keystore.jks</keystore>
<alias>server</alias>
<storepass>leocarte</storepass>
<keypass>leocarte</keypass>
</configuration> |
Le fichier src/etc/keystore.jks doit contenir un certificat de signature de code.
Au travers de Renater, notre communauté a accès à ce type de certificats via https://www.digicert.com/secure/ . Ce certificat est donné à une personne pour signer du code, cette personne peut demander un tel certificat via https://www.digicert.com/secure/ .
...
- .
...
Vous devez premièrement générer un keystore :
Bloc de code |
---|
keytool -genkeypair -dname "CN=Université de Rouen, L=MONT SAINT AIGNAN, C=FR" -alias mykeystore -keyalg RSA -keysize 2048 -keystore keystore.jks -validity 3650 -storetype JCEKS |
Ici on tapera esupesup comme mot de passe à chaque fois.
Vous générez ensuite un CSR :
Bloc de code |
---|
keytool -certreq -alias mykeystore -keyalg RSA -file keystore.csr -keystore keystore.jks -storetype JCEKS |
Une fois le CSR obtenu et depuis l'interface digicert https://www.digicert.com/secure/ vous pouvez demander un 'Code Signing Certificate'. Cette demande se fait par formulaire dans lequel on vous demande le CSR préalablement généré.
Une fois obtenu, validé, vous pouvez télécharger le certificat (ou plutôt les) sous forme d'un (seul) fichier p7b (Best format for Sun Java).
Vous importez ce fichier dans votre keystore :
Bloc de code |
---|
keytool -importcert -alias mykeystore -trustcacerts -file universit___de_rouen.p7b -keystore keystore.jks -storetype JCEKS |
Si vous avez suivi ces instructions, votre fichier pom.xml doit être modifié pour avoir cette configuration :
...
ESUP-SGC-CLIENT
Esup-sgc-client est l'application permettant d'encoder les cartes Mifare Desfire EV1 dans le cadre du Système de gestion de carte ESUP-SGC. Le client s’appuie aussi sur la plateforme ESUP-NFC-TAG qui calcule les commandes (APDU) à transmettre à la carte.
...