AjpdSoft Desplazar texto es una aplicación simple que permite sumar o restar posiciones ASCII a una cadena de texto. El usuario introduce una cadena de texto, por ejemplo «abc» e indica las posiciones a sumar, por ejemplo 2, y la aplicación devolverá «cde».
Os presentamos esta aplicación, AjpdSoft Desplazar texto, que permite sumar o restar un número especificado de posiciones ASCII a una cadena de texto dada. Esta aplicación se puede utilizar como un sistema de encriptación simple. Por ejemplo, para el texto:
Esto es una prueba de miniencriptación
sumándole 100 posiciones devolverá:
©×ØÓ„ÉׄÙÒÅ„ÔÖÙÉÆÅ„ÈÉ„ÑÍÒÍÉÒÇÖÍÔØÅÇÍWÒ
Realizando la operación inversa (sumar), introduciremos:
©×ØÓ„ÉׄÙÒÅ„ÔÖÙÉÆÅ„ÈÉ„ÑÍÒÍÉÒÇÖÍÔØÅÇÍWÒ
restándole 100 posiciones devolverá:
Esto es una prueba de miniencriptación
Como se puede observar, sirve como encriptación simple. Evidentemente sería fácil de «hackear», pero, al menos, el texto resultante no es legible directamente y, salvo que haya alguien interesado en averiguar el algoritmo de encriptación, ningún usuario «normal» va a averiguar la forma de desencriptarlo.
Para realizar esta aplicación hemos utilizado las funciones de Delphi:
El código completo en Delphi 6:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 |
unit UnidadMenuPrincipal; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls; type TformMenuPrincipal = class(TForm) Label1: TLabel; txtTextoIntroducido: TEdit; txtTextoResultado: TEdit; bCalcular: TButton; txtNumSumar: TEdit; Label2: TLabel; sw: TLabel; Button1: TButton; opSumar: TRadioButton; opRestar: TRadioButton; procedure bCalcularClick(Sender: TObject); procedure Button1Click(Sender: TObject); private { Private declarations } public { Public declarations } end; var formMenuPrincipal: TformMenuPrincipal; implementation {$R *.dfm} function sumarCaracter (caracter : char; numSumar : integer; sumar : boolean) : string; begin if sumar then Result := chr (ord(caracter) + numSumar) else Result := chr (ord(caracter) - numSumar); end; procedure TformMenuPrincipal.bCalcularClick (Sender: TObject); var textoInt, textoRes : string; i : integer; begin textoInt := txtTextoIntroducido.Text; textoRes := ''; if Length (textoInt) > 0 then begin for i := 1 to Length(textoInt) do begin textoRes := textoRes + sumarCaracter(textoInt[i], strtoint(txtNumSumar.Text), opSumar.Checked); end; end; txtTextoResultado.Text := textoRes; end; procedure TformMenuPrincipal.Button1Click (Sender: TObject); begin close; end; end. |
Si eres desarrollador de software y te has registrado en nuestra web (si aún no te has registrado puedes hacerlo desde aquí gratuitamente) puedes descargar el código fuente (completo y totalmente gratuito) en Delphi 6: