Ayuda con mi Método de cifrado

Iniciado por Keyen Night, 31 Julio 2009, 21:22 PM

0 Miembros y 1 Visitante están viendo este tema.

Keyen Night

Bueno les traigo mi método de cifrado preferido en una sola función que sirve tanto para cifrar como para descifrar, los carácteres no se repiten, El unico debug que le he encontrado :( y quisiera ayuda para solucionarlo es el siguiente:
Si el largo del texto es mayor al valor ASCII maximo (255) y los carácteres son los mimos en una cadena seguida de 255+1 carácter da debug...
Por ejemplo:
256 Caráracteres "a"

aaaaaaaaaaaaaaaaaa......
aaaaaaaaaaaaaaaaaaa....

Aqui el codigo:

Código (vb) [Seleccionar]
Public Function DEncriptStr(ByVal str As String) As String
       Dim int As Long = str.Length
       DEncriptStr = Nothing
       For Each x As String In str
           DEncriptStr = DEncriptStr & Chr(Asc(x) Xor int)
       Next
       Return DEncriptStr
   End Function


:P Gracias de adelantado...
La Fé Mueve Montañas...
                                    ...De Dinero

La programación es más que un trabajo es más que un hobby es una pasión...

raul338

esa funcion solo sirve para strings menores a 255 caracteres, pero no temas, es porque usas ASCII, usa las funciones que son para unicoide (creo) que aceptan rangos de hasta 1 millon (creo xD)

Código (vb) [Seleccionar]
Public Function DEncriptStr(ByVal str As String) As String
        Dim int As Int32 = str.Length
        DEncriptStr = Nothing
        For Each x As String In str
            DEncriptStr = DEncriptStr & ChrW(AscW(x) Xor int)
        Next
        Return DEncriptStr
    End Function


funciona ^^, aunque si vas a cifrar algo multilinea mi consejo es que encriptes linea por linea, asi nunca llegaras al limite  :D

Keyen Night

La Fé Mueve Montañas...
                                    ...De Dinero

La programación es más que un trabajo es más que un hobby es una pasión...

MANULOMM

bueno, solo por información, el framework viene dotado de muchas clases que sirven para cifrado (encripción aunque es comun no es el termino adecuado), para que inventar la rueda?, el ejercicio es bueno por aprendizaje pero nunca sera mas seguro que utilizar metodos profecionales, CASI infalibles y dotados de arquitectura, que prefieres tu rutina o una SHA512?....


Atentamente,


Juan Manuel Lombana
Medellín - Colombia


raul338

Si es verdad que los estandares actuales son mejor de lo que podramos hacer, aunque nunca esta demas inventarse su propio algoritmo para ver como fue evolucionando xD, o simple diversion jajaja xD; puede que iventes el MD6 x ejemplo haciendo esto xD xD jajajaj

Keyen Night

Si realmente es solo por diversión ;D y probar crear un metodo que sea muy corto y potente sin compararlo con los estandares actuales .__.
La Fé Mueve Montañas...
                                    ...De Dinero

La programación es más que un trabajo es más que un hobby es una pasión...