Livecode supporta diversi sistemi di cifratura, sia asimmtrica che simmetrica; per avere una lista dei sistemi supportati e con che modalità basta utilizzare la funzione ciphernames(), ecco un breve riassunto
- aes
- bf
- blowfish
- camellia
- cast
- cast5
- des
- des3
- desx
- id-aes128-GCM
- id-aes192-GCM
- id-aes256-GCM
- rc2
- rc4
- seed
Per inciso, tutti i sistemi più avanzati che dichiarano di utilizzare una cifratura più difficile di tipo asimmetrico, in realtà non riescono ad utilizzarla completamente, perchè un procedimento del genere richiede un tempo molto grande. Per questo motivi cifrano in maniera asimmetrica solo la password simmetrica di un testo cifrato in modo simmetrico.
Nel nostro caso cifreremo simmetricamente utilizzando il sistema blowfish.
Facciamo uno stack con con i seguenti campi: testo, password e cifrato. Aggiungiamo due pulsanti: cifra e decifra. Mettiamo nel pulsante cifra il seguente codice:
on mouseUp put the text of field "testo" into testo put the text of field "password" into passw encrypt testo using "bf" with password passw set the text of field "cifrato" to itend mouseUpIn questo modo, premendo sul pulsante cifra, nel campo cifrato apparirà il testo cifrato:
Per decifrare possiamo mettere il seguente codice nel pulsante decifra:
on mouseUp put the text of field "cifrato" into testo put the text of field "password" into passw decrypt testo using "bf" with password passw answer itend mouseUpNel prossimo post vedremo come utilizzare i sistemi asimmetrici.
Il limite di sicurezza nella cifratura simmetrica risiede nel fatto che a chi inviamo un messaggio cifrato, dobbiamo far sapere anche la chiave utilizzata, e quindi se cade nelle mani di qualcun altro, anche quest'ultimo potrà decifrare i nostri messaggi.


Nessun commento:
Posta un commento