Foros del Web » Programación para mayores de 30 ;) » Programación General » Visual Basic clásico »

Encriptar a alfanumericos (0-9, A-Z)

Estas en el tema de Encriptar a alfanumericos (0-9, A-Z) en el foro de Visual Basic clásico en Foros del Web. Holas a todos, Quisiera que alguien me pudiese ayudar con un codigo para encriptar una cadena alfanumerica pero solo usando numeros y letras mayusculas. Es ...
  #1 (permalink)  
Antiguo 22/02/2009, 09:20
 
Fecha de Ingreso: agosto-2008
Mensajes: 11
Antigüedad: 15 años, 8 meses
Puntos: 0
Encriptar a alfanumericos (0-9, A-Z)

Holas a todos,

Quisiera que alguien me pudiese ayudar con un codigo para encriptar una cadena alfanumerica pero solo usando numeros y letras mayusculas. Es q luego se imprimiran como codigos de barra y hay caracteres q no se pueden imprimir en la fuente CODE128. Y tambien voy a necesitar desencriptarlos luego.
Muy agradecido por cualquier ayuda.
  #2 (permalink)  
Antiguo 24/02/2009, 15:48
Avatar de Fann_Lavigne  
Fecha de Ingreso: diciembre-2004
Mensajes: 622
Antigüedad: 19 años, 4 meses
Puntos: 12
Respuesta: Encriptar a alfanumericos (0-9, A-Z)

Pues un algoritmo basiko es el de subtitucion, es decir, a Cada letra le asignas otra, por ejemplo, a la letra A le asignas una Z, entonces en tu procedimiento todas las 'A' o 'a' se remplazan a Z y asi, eso lo puedes definir tu, entonces la inversa seria ke todas las Z sean A o a. Puedes usar la funcion mid para obtener partes de una cadena, incluso caracter por caracter.
__________________
"Entre Mas Brillante Es Una Mente, Tiene Que Luchar Contra Demonios Internos Mas Poderosos"
[email protected]
  #3 (permalink)  
Antiguo 27/02/2009, 19:20
Avatar de Keyenight  
Fecha de Ingreso: febrero-2009
Ubicación: En la PC usando VB
Mensajes: 42
Antigüedad: 15 años, 2 meses
Puntos: 0
Respuesta: Encriptar a alfanumericos (0-9, A-Z)

Bueno aqui tengo la manera perfecta unas funciones que hise
Código:
    Function Encript(ByVal str As String) As String
        Dim i As Integer, sAscii As String = Nothing
        For i = 1 To Len(str)
            sAscii = sAscii & CStr(Hex(Asc(Mid(str, i, 1))))
        Next
        Return sAscii)
    End Function
Código:
   Function Dencript(ByVal str As String) As String
        Dim i As Integer, sStr As String
        sStr = Nothing
        For i = 1 To Len(str) Step 2
            sStr = sStr & Chr(CLng("&H" & Mid(str, i, 2)))
        Next
        Return sStr
    End Function
  #4 (permalink)  
Antiguo 02/03/2009, 15:45
 
Fecha de Ingreso: agosto-2008
Mensajes: 11
Antigüedad: 15 años, 8 meses
Puntos: 0
Respuesta: Encriptar a alfanumericos (0-9, A-Z)

Gracias por las respuestas, las estoy probando... pero como seria el programa si quiero crear como una matriz de los caracteres que quiero que use al encriptar?
Gracias de antemano por la ayuda...
  #5 (permalink)  
Antiguo 04/03/2009, 09:58
Avatar de Keyenight  
Fecha de Ingreso: febrero-2009
Ubicación: En la PC usando VB
Mensajes: 42
Antigüedad: 15 años, 2 meses
Puntos: 0
Respuesta: Encriptar a alfanumericos (0-9, A-Z)

Si quieres encriptar soló algunas letras o números usa un truco 2 cadenas de string y Mid para buscar extraer la letra a reemplazar así:
Código:
    Function Encript(ByVal value As String) As String
        Dim cadena1 As String = "0123456789", _
            cadena2 As String = "ºª|@#~€¬{}", _
            cont As Integer = 0
        For Each value2 As String In value
            cont = cont + 1
            value = value.Replace(Mid(cadena1, cont, 1), Mid(cadena2, cont, 1))
        Next
        Return value
    End Function
La que desincripta piensa que puedes hacer está facil analiza la que te di tambien.
  #6 (permalink)  
Antiguo 13/03/2009, 14:47
 
Fecha de Ingreso: agosto-2008
Mensajes: 11
Antigüedad: 15 años, 8 meses
Puntos: 0
Respuesta: Encriptar a alfanumericos (0-9, A-Z)

Gracias, esta solucion me parece la mejor para evitar caracteres no imprimibles! ;)
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta

SíEste tema le ha gustado a 1 personas




La zona horaria es GMT -6. Ahora son las 07:37.