Salta el contingut
 

Exercici: Certificats

Autor: Joan Puigcerver Ibáñez

Correu electrònic: j.puigcerveribanez@edu.gva.es

Llicència: CC BY-NC-SA 4.0

(Reconeixement - NoComercial - CompartirIgual) 🅭

Objectius

Conèixer els certificats i la seua utilització per encriptar o signar missatges.

Estructura del projecte

Tots els exercicis han d'estar situats en el package corresponent.

  • Package: ud4.exericises.certificate
  • Cada exercici ha d'anar dins del package corresponent.
  • El nom de la classe de cada exercici és el nom.
  • El format de la eixida del programa ha de ser consistent amb el format demanat.

ShowCertificate

Genera un certificat amb l'eina keytool amb els següents paràmetres:

  • CN: NomCognom Exercicis
  • O: CIPFP Mislata
  • OU: DAM2S-PSP
  • L: Mislata
  • ST: València
  • C: ES

Genera aquest certificat en una keystore emmagatzemada en la ruta files/ud4/exercises_certificate.jks.

Importa el següent certificat a la keystore creada:

Implementa el programa ShowCertificate, que carregara la keystore amb el certificat creat. Per cada certificat existent en la keystore, el programa mostrarà el àlies i la informació del certificat.

  • Mostrara un missatge d'error si la keystore no existeix.
  • Cal utilitzar els mètodes proporcionats en els exemples.
  • Cal emmagatzemar les dades sensibles en el fitxer de configuració application.properties.

EncryptMessageCertificate

Implementa un programa que encripte un missatge amb una clau pública.

El programa mostrarà els àlies presents en la keystore files/ud4/exercises_certificate.jks i li demanarà a l'usuari l'àlies del certificat per recuperar la clau pública.

  • Si el certificat no existeix, mostrarà un missatge d'error.

Després, l'usuari introduirà el text que vol encriptar.

Per últim, mostrarà el text encriptat.

DecryptMessageCertificate

Implementa un programa que desencripte un missatge amb una clau privada.

El programa mostrarà els àlies presents en la keystore files/ud4/exercises_certificate.jks i li demanarà a l'usuari l'àlies del certificat per recuperar la clau privada.

  • Si el certificat no existeix, mostrarà un missatge d'error.
  • Si el certificat no conté una clau privada, mostrarà un missatge d'error.

Després, l'usuari introduirà el text que vol desencriptar.

Per últim, mostrarà el text desencriptat.

SignMessageCertificate

Implementa un programa que signe un missatge amb una clau privada.

El programa mostrarà els àlies presents en la keystore files/ud4/exercises_certificate.jks i li demanarà a l'usuari l'àlies del certificat per recuperar la clau privada.

  • Si el certificat no existeix, mostrarà un missatge d'error.
  • Si el certificat no conté una clau privada, mostrarà un missatge d'error.

Després, l'usuari introduirà el text que vol signar.

Per últim, mostrarà la signatura generada.

VerifySignatureMessageCertificate

Implementa un programa que verifique si la signatura d'un missatge és vàlida amb una clau pública.

El programa mostrarà els àlies presents en la keystore files/ud4/exercises_certificate.jks i li demanarà a l'usuari l'àlies del certificat per recuperar la clau pública.

  • Si el certificat no existeix, mostrarà un missatge d'error.

Després, l'usuari introduirà el text i la signatura que vol comprovar.

Per últim, el programa mostrarà si la signatura és correcta.