Toon posts:

[VB.NET / Simpele encryptie] String XOR-en naar alfanumeriek

Pagina: 1
Acties:

Verwijderd

Topicstarter
Ik heb de volgende routine

code:
1
2
3
4
5
6
7
8
9
10
  Private Function crypt(ByVal InStr As String) As String
        Dim OutStr As String
        Dim i, a As Integer
        For i = 1 To Len(InStr)
            a = i Mod Len(Key)
            If a = 0 Then a = Len(Key)
            OutStr = OutStr & Chr(Asc(Mid(Key, a, 1)) Xor Asc(Mid(InStr, i, 1)))
        Next i
        Return OutStr
    End Function


Deze heeft als nadeel dat je je compleet willekeurige ASCII waardes terugkrijgt.
Nu wil ik het zo gaan doen dat ik codepage onafhankelijk een alfanumerieke string terugkrijg (0-9a-zA-Z)

Heeft iemand van jullie hier een leuke aanpak voor

PS. Het gaat hier niet zo zeer om de encryptie, want uiteraard heeft .NET er standaard een hoop mooie inzitten. Die heb ik hier niet nodig, het gaat om de methode

  • mulder
  • Registratie: Augustus 2001
  • Laatst online: 22:17

mulder

ik spuug op het trottoir

Ik zie dat compleet willekeurige niet zo?

Maar is Base64 dan niet iets?

oogjes open, snaveltjes dicht


Verwijderd

Topicstarter
Don Facundo: good point.
Met compleet willekeurig bedoel ik eigenlijk dat er elk mogelijk ascii teken uit kan komen. XML en dergelijke vinden dat niet zo fantastisch. Base64 is wel een goed idee, ff checken of dat makkelijk te implementeren is...

  • Woy
  • Registratie: April 2000
  • Niet online

Woy

Moderator Devschuur®
Kan je niet gewoon beter gebruik maken van de standaard encryptie classes die het .net framework bied. Deze zijn zeer uitgebreid en bieden een stuk beter encryptie. Je zou dan b.v. je string gewoon om kunnen zetten naar een array met bytes. Er zijn verschillende soorten encryptie mogelijk om aan je wensen te voldoen.

“Build a man a fire, and he'll be warm for a day. Set a man on fire, and he'll be warm for the rest of his life.”


Verwijderd

Topicstarter
Ik heb het nu als volgt gedaan: (XOR encryptie was een omgekeerde test om te zien hoe snel je daar doorheen bent)
Ik heb nu dmv Convert.ToBase64String en Convert.FromBase64String (en daarna encoding.ascii.getstring (uiteraard kan dit ook met andere zaken dan ascii)) het gewenste effect bereikt (mooiere en veilige http get's o.a.)

Just so you know, Ik ga het maandag "ombouwen" naar DES (ongeveer 10 min. werk).

rwb: zie mijn post's PS >:)

  • Woy
  • Registratie: April 2000
  • Niet online

Woy

Moderator Devschuur®
Verwijderd schreef op 18 oktober 2002 @ 20:34:
Ik heb het nu als volgt gedaan: (XOR encryptie was een omgekeerde test om te zien hoe snel je daar doorheen bent)
Ik heb nu dmv Convert.ToBase64String en Convert.FromBase64String (en daarna encoding.ascii.getstring (uiteraard kan dit ook met andere zaken dan ascii)) het gewenste effect bereikt (mooiere en veilige http get's o.a.)

Just so you know, Ik ga het maandag "ombouwen" naar DES (ongeveer 10 min. werk).

rwb: zie mijn post's PS >:)
Ow :0 had de laatse 2 regels idd niet gelezen :). Maar ik denk dat het ombouwen naar des toch echt wel iets meer als 10 minuten kost als je nou gewoon dat stukje hierboven hebt.

“Build a man a fire, and he'll be warm for a day. Set a man on fire, and he'll be warm for the rest of his life.”

Pagina: 1