Iremos começar o trabalho árduo para criptografar. Vamos ver os
passos a serem tomados para criptografar uma mensagem, depois
implementaremos o que foi dito em PHP.
Primeiro, associamos cada símbolo do nosso alfabeto "A" a um valor numérico em Z27.
A=0, B=1, C=2, D=3, ..., Y=24, Z=25 e _=27.
Em seguida, escrevemos uma mensagem no texto original:
A_MATEMATICA_EH_LINDA.
Depois, aplicamos a função Cripto-Sistema em cada símbolo do nosso alfabeto, para o símbolo A aplicamos a função Cripto-Sistema no 0, para o símbolo B aplicamos a função Cripto-Sistema no 1 etc. A mensagem "A_MATEMATICA_EH_LINDA" fica assim:
f(0)=9, f(26)=23, f(12)=3, f(0)=9, ..., f(13)=16, f(3)=21 e f(0)=9.
Relacionamos os valores obtidos após a aplicação da função Cripto-Sistema, com os símbolos do alfabeto A, e, desta forma, obtemos a mensagem-cifrada:
JXDJNHDJNFIJXHTXRFQVJ.
Vejamos agora o código PHP.
Escreva uma mensagem.
$msg_original = "A_MATEMATICA_EH_LINDA" // escreva sua mensagem toda em caixa alta, ou seja, em letras maiúsculas
Agora vejamos duas funções.
1ª função: É a função que criptografa.
2ª função: Associa cada símbolo do nosso alfabeto "A" ao seu respectivo valor no conjunto Z27.
// (início) função que criptografa.
function criptografa($x) {
$x = cripto_sistema($x);
if ($x == 0) { $x = "*0*"; }
if ($x == 1) { $x = "*1*"; }
if ($x == 2) { $x = "*2*"; }
if ($x == 3) { $x = "*3*"; }
if ($x == 4) { $x = "*4*"; }
if ($x == 5) { $x = "*5*"; }
if ($x == 6) { $x = "*6*"; }
if ($x == 7) { $x = "*7*"; }
if ($x == 8) { $x = "*8*"; }
if ($x == 9) { $x = "*9*"; }
if ($x == 10) { $x = "*10*"; }
if ($x == 11) { $x = "*11*"; }
if ($x == 12) { $x = "*12*"; }
if ($x == 13) { $x = "*13*"; }
if ($x == 14) { $x = "*14*"; }
if ($x == 15) { $x = "*15*"; }
if ($x == 16) { $x = "*16*"; }
if ($x == 17) { $x = "*17*"; }
if ($x == 18) { $x = "*18*"; }
if ($x == 19) { $x = "*19*"; }
if ($x == 20) { $x = "*20*"; }
if ($x == 21) { $x = "*21*"; }
if ($x == 22) { $x = "*22*"; }
if ($x == 23) { $x = "*23*"; }
if ($x == 24) { $x = "*24*"; }
if ($x == 25) { $x = "*25*"; }
if ($x == 26) { $x = "*26*"; }
return $x;
}
// (fim) função que criptografa.
// (início) alfabeto.
$A = criptografa(0);
$B = criptografa(1);
$C = criptografa(2);
$D = criptografa(3);
$E = criptografa(4);
$F = criptografa(5);
$G = criptografa(6);
$H = criptografa(7);
$I = criptografa(8);
$J = criptografa(9);
$K = criptografa(10);
$L = criptografa(11);
$M = criptografa(12);
$N = criptografa(13);
$O = criptografa(14);
$P = criptografa(15);
$Q = criptografa(16);
$R = criptografa(17);
$S = criptografa(18);
$T = criptografa(19);
$U = criptografa(20);
$V = criptografa(21);
$W = criptografa(22);
$X = criptografa(23);
$Y = criptografa(24);
$Z = criptografa(25);
$esp = criptografa(26);
// (fim) alfabeto.
Os dois códigos (resumidos) a seguir organizam a mensagem-original para transformá-la em mensagem-cifrada:
// (início) código um
$msg_cifrada = ereg_replace('A',$A,$msg_original);
$msg_cifrada = ereg_replace('B',$B,$msg_cifrada);
$msg_cifrada = ereg_replace('C',$C,$msg_cifrada);
$msg_cifrada = ereg_replace('D',$D,$msg_cifrada);
...
$msg_cifrada = ereg_replace('X',$X,$msg_cifrada);
$msg_cifrada = ereg_replace('Y',$Y,$msg_cifrada);
$msg_cifrada = ereg_replace('Z',$Z,$msg_cifrada);
$msg_cifrada = ereg_replace('_',$esp,$msg_cifrada);
// (fim) código um
// (início) código dois
$msg_cifrada = ereg_replace('\*0\*','A',$msg_cifrada);
$msg_cifrada = ereg_replace('\*1\*','B',$msg_cifrada);
$msg_cifrada = ereg_replace('\*2\*','C',$msg_cifrada);
$msg_cifrada = ereg_replace('\*3\*','D',$msg_cifrada);
$msg_cifrada = ereg_replace('\*4\*','E',$msg_cifrada);
...
$msg_cifrada = ereg_replace('\*23\*','X',$msg_cifrada);
$msg_cifrada = ereg_replace('\*24\*','Y',$msg_cifrada);
$msg_cifrada = ereg_replace('\*25\*','Z',$msg_cifrada);
$msg_cifrada = ereg_replace('\*26\*','_',$msg_cifrada);
// (fim) código dois
Na próxima seção (criptografia.php) veremos todo o código pronto para ser utilizado.