programa fuente del algoritmo delphi des
{
, solo necesita llamar a las dos funciones siguientes.
Función EncryStr(Str, Key:String):String;
Función DecryStr(Str, Key:String):String;
Función EncryStrHex(Str, Key:String):String;
Función DecryStrHex(StrHex, Key:String):String;
}
Conexión
Uso
Herramientas del sistema, variantes, herramientas de estructura;
Tipo
TKeyByte = bytes de matriz[0..5];
TDesMode = (dmEncry, dm decry);
Función EncryStr(Str, Key:String):String;
función DecryStr(Str,Key:String):String;
p>
Función EncryStrHex(StrHex, Key:String):String;
Función DecryStrHex(StrHex, Key:String):String;
Constante
BitIP: Byte de la matriz [0..63] = //El valor inicial se establece en IP.
(57, 49, 41, 33, 25, 17, 9, 1,
59, 51, 43, 35, 27, 19, 11, 3,
61, 53, 45, 37, 29, 21, 13, 5,
63, 55, 47, 39, 31, 23, 15, 7,
56, 48, 40, 32, 24, 16, 8, 0,
58, 50, 42, 34, 26, 18, 10, 2,
60, 52, 44, 36, 28, 20, 12, 4,
62, 54, 46, 38, 30, 22, 14, 6 );
BitCP: matriz [0.. 63] de Byte = //IP-1 inicial inversa.
( 39, 7, 47, 15, 55, 23, 63, 31,
38, 6, 46, 14, 54, 22, 62, 30,
37, 5, 45, 13, 53, 21, 61, 29,
36, 4, 44, 12, 52, 20, 60, 28,
35, 3, 43, 11, 51, 19, 59, 27,
34, 2, 42, 10, 50, 18, 58, 26,
33, 1, 41, 9, 49, 17, 57, 25,
32, 0, 40, 8, 48, 16, 56, 24);
Bitexp:array[0.. 47] de número entero =//función de selección de bits e.