Salta el contingut
 

Exercici: Certificats

Joan Puigcerver Ibáñez

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

ud4.exercises.certificates

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

  • Cada exercici ha d'anar dins del seu package.
  • El nom de la classe de cada exercici és el nom de l'exercici.
  • El format de l'eixida del programa ha de ser consistent amb el format demanat.

ShowCertificate

Genera un certificat amb la ferramenta keytool amb els paràmetres següents:

  • 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 certificat següent a la keystore creada:

Implementa el programa ShowCertificate, que carregue la keystore amb el certificat creat. Per cada certificat existent en la keystore, el programa ha de mostrar l'àlies i la informació del certificat:

  • Ha de mostrar 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 ha de mostrar els àlies presents en la keystore files/ud4/exercises_certificate.jks i demanar a la persona usuària l'àlies del certificat per recuperar la clau pública. Si el certificat no existeix, ha de mostrar un missatge d'error.

Després, la persona usuària introdueix el text que vol encriptar i, per últim, el programa mostra el text encriptat.

DecryptMessageCertificate

Implementa un programa que desencripte un missatge amb una clau privada. El programa ha de mostrar els àlies presents en la keystore files/ud4/exercises_certificate.jks i demanar a la persona usuària l'àlies del certificat per recuperar la clau privada. Ha de mostrar un missatge d'error en els casos següents:

  • Si el certificat no existeix.
  • Si la keystore no conté una clau privada associada a l'àlies.

Després, la persona usuària introdueix el text que vol desencriptar i, per últim, el programa mostra el text desencriptat.

SignMessageCertificate

Implementa un programa que signe un missatge amb una clau privada. El programa ha de mostrar els àlies presents en la keystore files/ud4/exercises_certificate.jks i demanar a la persona usuària l'àlies del certificat per recuperar la clau privada. Ha de mostrar un missatge d'error en els casos següents:

  • Si el certificat no existeix.
  • Si el certificat no conté una clau privada.

Després, la persona usuària introdueix el text que vol signar i, per últim, el programa mostra 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 ha de mostrar els àlies presents en la keystore files/ud4/exercises_certificate.jks i demanar a la persona usuària l'àlies del certificat per recuperar la clau pública. Si el certificat no existeix, ha de mostrar un missatge d'error.

Després, la persona usuària introdueix el text i la signatura que vol comprovar i, per últim, el programa mostra si la signatura és correcta.

📌 Aquest document pot quedar desactualitzat després d’imprimir-lo. Pots consultar la versió més recent a la pàgina web.
🌿 Abans d’imprimir aquest document, considera si és realment necessari. Redueix el consum de paper i ajuda a protegir el nostre entorn.