Encryptacion con ORD
Estimados tengo una gran duda me estoy volviendo loco el tema es asi tengo un texto que tiene una serie de caracteres encriptados que lo encripto con la función ORD pero por ejemplo cuando encripta a la letra C me la pone como el símbolo œ ahora bien al desencriptar me trae uno símbolos raros lo cual antes lo hacia bien lo que noto que el problema esta al usar el not dejo un ejemplo!!!!
atte. Gracias como siempre |
No olvides poner las etiquetas para código, gracias :)
|
Perdon
Perdon se me paso :C
|
Hola que version de delphi estas utilizando?
Hice unas pruebas en delphi 2010 y no tuve ningun problema
Saludos |
Cita:
|
@mamcx No entiendo que tiene de malo que se haga algun algoritmo que cifro o descifre una cadena? ademas no esta especificando para que o porque lo esta haciendolo, asi que no comprendo tu comentario.
|
Creo que lo dice porque con ord es tan evidente el resultado que más que "encriptación", se le podría llamar "intento de ocultación", pero no es nada serio si se quiere ocultar realmente una información.
|
Cita:
Probablemente se esta usando "encriptacion" en un tono muy liberal, pero es que me acuerdo que esa fue mi primera forma de "ocultar" claves.... ;) |
Buenas
Buenas Gracias por los comentarios en si no se necesita una seguridad importante solo es para que no se vea como esta escrita la frase el problema en verdad es que esta guardada en un XML y es un programa antiguo bien ahora cuando levanto por ejemplo el nombre que es Jorge me trae esta simbología (ユミヘリレ) y antes lo que estaba guardado en el XML era (Œšœž) entonces el problema es que hoy en día cuando lo codifica sale (ユミヘリレ) y antes salía (Œšœž).- Se entiende es como que ahora no encuentra la misma simbología que antes .. atte. Gracias como siempre
|
Si vas a guardar esa cadena en un archivo XML, seguramente tendrás problemas de codificación.
Al aplicar tu función de encriptación el resultado puede contener caracteres no imprimibles y este puede ser el origen del problema al enviarlo a un archivo XML. Lo más recomendable en este caso es que al resultado de tu encriptación le apliques adicionalmente la codificación Base64, el resultado será una cadena en la cuál todos los caracteres son imprimibles y en un rango seguro para compartir información sobre archivos XML. Después, cuando quieras obtener el contenido de la variable desde tu archivo XML debes aplicar las funciones a la inversa, es decir, primero descodificar Base64 y el resultado va a tu función inversa de cripto para obtener la cadena original. Te recomiendo que busques en los foros por alguna función que codifique y descodifique Base64. Saludos |
Buenas
Cita:
|
¿Estás compilándolo con alguna versión nueva de delphi?
Usa ansistring en lugar de string |
Holaa
Cita:
|
Ansichar
Amigos si uso el ANSI me trae en blanco todo :S Gracias .-
|
Al menos, pon todo tu código.
|
Si es solo para guardar en un xml de manera que a simple vista no se vea y aparte no tengas problemas de codificación.
Código:
Function StrToHex(Const pcStr: String): String; Begin Result := ''; if pcStr <> '' then Begin SetLength(Result, Length(pcStr) * 2); BinToHex(@pcStr[1], @Result[1], Length(pcStr)); End; End; Function HexToStr(Const pcStr: String): String; Begin Result := ''; if pcStr <> '' then Begin SetLength(Result, Length(pcStr) Div 2); HexToBin(@pcStr[1], @Result[1], Length(pcStr)); End; End; Ese código te sirve para lo que quieres y aparte te evitas el problema de la codificación. Enviado desde mi SM-G900H mediante Tapatalk |
Aqui se mejor
|
La franja horaria es GMT +2. Ahora son las 20:10:08. |
Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi