Tot preparant una sessió introductòria sobre xifratge (criptografia) per a un curs de seguretat informàtica se m’ha acudit que seria molt més pràctic, àgil i fàcil explicar (i per tant entendre) la criptografia de clau pública amb un exemple senzill de generació de claus, xifratge i desxifratge. De tot plegat me n’ha sortit un full de càlcul que –tot i ésser molt millorable– penso que compleix el seu propòsit, sense cap necessitat d’entrar (ni conèixer) en aritmètica modular i matemàtica discreta.
Permet que l’alumne esculli els nombres p i q d’entre una llista amb els 1.000 nombres primers i triï quin serà l’exponent e que li farà de clau pública. El sistema calcula automàticament la clau privada corresponent i ofereix la possibilitat de xifrar una paraula de 5 lletres i desxifrar-la posteriorment. Com que la finalitat és purament docent i il·lustrativa (i tampoc em volia complicar la vida) no he implementat cap tècnica de padding scheme per a paliar les vulnerabilitats inherents al criptosistema RSA causades principalment per la falta de components aleatoris en el procés de xifratge. Es tracta que els alumnes entenguin la base, fer-los veure que la realitat és lleugerament diferent i que el procés pot aplicar-se de diverses formes…
El document inclou algunes funcions que he hagut de crear per a tasques tan diverses com comprovar si dos enters són coprimers o realitzar una potència modular, entre d’altres.
xifratRSA.xlsm [Excel 2007 amb macros, 61KB]
Per a qualsevol consulta, suggeriment o notificació d’errades utilitzeu els comentaris, si us plau!




