hi, no os preocupeis encontre una forma sencilla, ya tengo la respuesta solo reduzco mi universo. En vez de usar todos los ascii, almaceno en una array lo que me interesa y opero con los indices. ah tambien declaro una funcion que me busca el indice correcto... bueno adiosito
ah si quieres una explicacion completa escribe a mi correo ji.shu@hotmail.com
aqui el codigo:
im
cadena(0 To 62) As String
Dim cadalfanum As String = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-"
Dim contador As Integer
Dim valorc As String
Dim indice As Integer
Dim indice2 As Integer
Dim adivol As String = "BAP-"
Dim adikey As String = "BAPS"
Function buscaAN(ByVal ValordStr As String) As Integer
Dim valorNInd As Integer
Dim i As IntegerFor contador = 0 To 62valorc = Mid(cadalfanum, ((contador) Mod Len(cadalfanum)) + 1, 1)
cadena(contador) = valorc
NextFor i = 0 To 62
If cadena(i) = ValordStr Then
valorNInd = i
End If
Next
buscaAN = valorNInd + 1
End Function
Function EncryptStr(ByVal S As String, ByVal P As String) As String
'Encripta una cadena de caracteres.
Dim I As Integer, R As String
Dim C1 As String, C2 As String
Dim indice As Integer
R =
""
If Len(P) > 0 ThenFor I = 1 To Len(S)
C1 = Mid(S, I, 1)
indice = (buscaAN(C1))
If I > Len(P) ThenC2 = Mid(P, I Mod Len(P) + 1, 1)
indice2 = (buscaAN(C2))
Else
C2 = Mid(P, I, 1)
indice2 = (buscaAN(C2))
End If
indice = indice + indice2
If indice > 60 Then
indice = indice - 60
End If
R = R + cadena(indice - 1)
Next I
Else
R = S
End If
EncryptStr = R
End Function