Fout in Encryptie

Status
Niet open voor verdere reacties.

RickRongen

Gebruiker
Lid geworden
15 okt 2011
Berichten
27
Hallo,
Ik ben bezig met een programma en ik maak een 'eigen' encryptie
Maar om een of andere reden werkt hij niet.
dit is mijn code:
Code:
    Dim DecodeString As String = "BCyvAr8gDw3IqunGoJjmSK5HFEXdiZR9NsU46Yhx0zt2fcabeLp7WQOPM1kTlV"
    Dim normalString As String = "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789"
    Private Function Encode(ByVal S As String) As String
        Dim ar() As Char = S.ToCharArray()
        Dim EOutput() As Char = ar
        Console.Write(ar)
        For x As Integer = 0 To DecodeString.Length - 1
            For y As Integer = 0 To ar.Length - 1
                If ar(y) = normalString.Substring(x, 1) Then
                    EOutput(y) = DecodeString.Substring(x, 1)
                End If
            Next
        Next
        Dim ot As String
        For x As Integer = 0 To EOutput.Length - 1
            ot += EOutput(x)
        Next
        Return ot
    End Function

    Private Function Decode(ByVal S As String) As String
        Dim ar() As Char = S.ToCharArray()
        Dim DOutput() As Char = ar
        Console.Write(ar)
        For x As Integer = 0 To normalString.Length - 1
            For y As Integer = 0 To ar.Length - 1
                If ar(y) = DecodeString.Substring(x, 1) Then
                    DOutput(y) = normalString.Substring(x, 1)
                End If
            Next
        Next
        Dim ot As String
        For x As Integer = 0 To DOutput.Length - 1
            ot += DOutput(x)
        Next
        Return ot
    End Function

de resultaten zijn:
coderen
input:Hallo wereld
coderen output:sdaan 1LMLak

ik hoop dat iemand ziet wat er fout is

Alvast bedankt
 
Wel een heel ingewikkelde manier hoor. Even zoeken naar het verschil tussen een kopie van een variabele en een pointer naar een variabele, dan snap je je fout wel. Je encrypt nu de encrypte string, en dat blijft maar door gaan tot je aan het einde van de string bent...
Code:
    Private Function Encode(ByVal S As String) As String
        Dim ar() As Char = S.ToCharArray()
        Dim EOutput() As Char = ar.[B]Clone[/B]
en op zelfde wijze:
Code:
    Private Function Decode(ByVal S As String) As String
        Dim ar() As Char = S.ToCharArray()
        Dim DOutput() As Char = ar.[B]Clone[/B]
 
Jeej nu doet hij het
hartelijk bedankt

ps ja ik weet dat dit een heel ingewikkelde manier van encryptie is maar dit is heel moeilijk om te krakten.
je moet de key precies goed hebben en die bestaat uit 62 tekens
dat is 62^61 of iets in die richting
dat duurt een desktop pc een paar triljoen jaar om te kraken
https://howsecureismypassword.net/
 
valt toch tegen...,
maar ja ik vind het goed genoeg geen enkele encoding is 100% veilig dus
 
Ik hoop voor je dat dit gewoon 'voor de leuk' is en niet dat je dit ook daadwerkelijk ergens in gaat bouwen.
Het is niet verstandig om zelf encryptie te gaan bedenken omdat je altijd dingen over het hoofd ziet. Gebruik gewoon bestaande libraries en standaarden waar hele teams achter zitten die er langer over na hebben gedacht dan een weekend.

just my 2 cents.
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan