La Crittografia

Implementazione del sistema ROT13

classe 4BSI

Competenza: programmazione javascript

Realizzare in HTML + css + javascript un sistema di cifratura utilizzando il metodo ROT13 o monoalfabetico

torna a Crittografia


  1. scrivere il codice HTMl, nel quale predisporre due TEXTAREA, identificati da opportuni id, nei quali troveranno posto rispettivamente il testo in chiaro e il testo cifrato. E un pulsante con etichetta 'traduci'

  2. Definire una funzione javascript chiamata traduci(), attivabile dall'evento onClick sul pulsante, che mostri un messaggio a piacere, attraverso un "alert"

  3. Modificare la funzione traduci, in modo che memorizzi in una variabile il contenuto dell'area con il testo in chiaro e inserisca questo testo nell'area destinata al testo cifrato

  4. Definire una nuova funzione chiamata rot13(s) che accetti in ingresso il parametro s, che rappresenta il testo da criptare. Restituire il valore di s con i caratteri di s convertiti tutti in maiuscolo.
    Inserire la chiamata a rot13 nella funzione traduci, in modo che il testo copiato, sia tutto in maiuscolo.

  5. Definire in rot13 una variabile locale chiamata alfabeto, alla quale assegnare la stringa con i carattri alfabetici
    "ABCDEFGHIJKLMNOPQRSTUVWXYZ". Assegnare alla variabile codeA il codice del carattere 'A' ('A'.charCodeAt(0)) Verificare mediante un codice di prova che:
    Si può calcolare la posizione all'interno di alfabeto, di una lettera maiuscola qualunque, ad esempio 'D', utilizzando una espressione del tipo: 'D'.charCodeAt(0) - codeA. In questo caso dovrebbe visualizzare 3 (la 4 posizione in alfabeto)

  6. Scrivere il codice finale, mediante un ciclo for, che prenda in considerazione ogni carattere del parametro stringa
  1. (s.length è la propietà che fornisce la lunghezza di una stringa)
    Prima del ciclo for, inizializzare la variabile stringa che conterrà il risultato finale della traduzione del messaggio s.
    Se il carattere di s considerato, è un carattere compreso fra le lettere Maiuscole, calcolare la sua posizione all'interno della variabile alfabeto.
    Sommare al valore trovato 13 modulo 26. Sostituire nella variabile messaggio criptato il carattere di alfabeto nella posizione appena calcolata. Altrimenti lasciare il crattere non modificato.

Riferimenti:

Licenza Creative Commons
Quest'opera è distribuita con Licenza
Creative Commons Attribuzione 4.0 Internazionale.