Avatar billede thefatman Nybegynder
26. oktober 2003 - 13:42 Der er 5 kommentarer og
1 løsning

Krypterer sti/string - MD5?

Hej...

Jeg står her og har lavet et gallery, hvor jeg skriver mit side navn på alle billederne ( via .net ), det virker fint nok, men i min URL bruger jeg stien til billedet, og det er den jeg gerne vil krypterer...
f.eks et link- http://www.thefatman.dk/gallery/showphoto.aspx?src=/gallery/familie/IMG_1053.jpg

som I kan se så er min string "/gallery/familie/IMG_1053.jpg" og det er jo lidt et sikkerhedsbrud, så hvis man kunne krypterer koden, så det blev noget ala "0cc175b9c0f1b6a831c399e269772661" istedet for....


My main spørgsmål:
Jeg leder efter et script, hvor jeg kan krypterer en string, OG dekrypterer den igen.
- Hvordan bruger man MD5 i classic ASP?
Avatar billede erikjacobsen Ekspert
26. oktober 2003 - 13:44 #1
med md5 kan du ikke de-kryptere. Det er faktisk ikke en kryptering.
Men hvad mener du med sikkerhedsbrud, og skal den sti alligevel ikke
stå der til sidst .... eller hvad?
Avatar billede netro Nybegynder
26. oktober 2003 - 14:49 #2
Jeg har et script i ASP, der kan lave en MD5-hash, men den kan du jo så ikke "dekryptere".

Ellers kan du f.eks. bruge følgende funktioner:

krypt = "?*¤3%&£^9~@#|7$"

Function Krypter(Streng)
    for tal1 = 0 to len(Streng)
        for tal2 = 1 to len(krypt)
            kontrol = tal1*len(krypt) + tal2
            if kontrol <= len(Streng) then
                original = asc(mid(Streng,kontrol,1))
                ny = asc(mid(krypt,tal2,1))
                nytekst = nytekst + chrw(original + ny)
            end if
        next
    next
    Krypter = nytekst
End Function

Function Dekrypter(Streng)
    for tal1 = 0 to len(Streng)
        for tal2 = 1 to len(krypt)
            kontrol = tal1*len(krypt) + tal2
            if kontrol <= len(Streng) then
                original = ascw(mid(Streng,kontrol,1))
                ny = asc(mid(krypt,tal2,1))
                nytekst = nytekst + chrw(original - ny)
            end if
        next
    next
    Dekrypter = nytekst
End Function

Lav så adressen således:

Response.Write "filnavn.asp?sti=" & Server.URLencode(Krypter("billedenavn.jpg"))

Og aflæs igen sådan:

Filnavn = Dekrypter(Request.Querystring("sti"))
Avatar billede squashguy Nybegynder
26. oktober 2003 - 15:52 #3
du kunne også lave det som

showphoto.aspx?id=1

og så slå id op

1=src=/gallery/familie/IMG_1053.jpg
2=..
Avatar billede thefatman Nybegynder
27. oktober 2003 - 13:26 #4
#netro

Jeg har lidt problemer..

Koden virker fint nok, men hvordan erstatter jeg ? med "." i det den udskriver? Nu har jeg prøvet med replace, og det virker ikke..

Link: http://www.thefatman.dk/test.asp?sti=%D6%D1%D1%D2%C6%D8%D2%CF%CF%EA%D6%3F%D0%D1%DB ( hvis link ikke virker, tag den krypteret string, og sæt bagefter i ?sti= )

Her er min code:
<%
krypt = "thefatman"

Function Krypter(Streng)
    for tal1 = 0 to len(Streng)
        for tal2 = 1 to len(krypt)
            kontrol = tal1*len(krypt) + tal2
            if kontrol <= len(Streng) then
                original = asc(mid(Streng,kontrol,1))
                ny = asc(mid(krypt,tal2,1))
                nytekst = nytekst + chrw(original + ny)
            end if
        next
    next
    Krypter = nytekst
End Function

Function Dekrypter(Streng)
    for tal1 = 0 to len(Streng)
        for tal2 = 1 to len(krypt)
            kontrol = tal1*len(krypt) + tal2
            if kontrol <= len(Streng) then
                original = ascw(mid(Streng,kontrol,1))
                ny = asc(mid(krypt,tal2,1))
                nytekst = nytekst + chrw(original - ny)
            end if
        next
    next
    Dekrypter = nytekst
End Function
Response.Write "<b>Krypter</b><br>"
Response.Write "Billede: billedenavn.jpg<br>"
Response.Write "Krypteret Billede : " & Server.URLencode(Krypter("billedenavn.jpg")) & "<br><br>"
Response.Write "<b>Dekrypter</b><br>"
response.write "Dekrypteret Billede: " & Dekrypter(Request.Querystring("sti"))& "<br>"
response.write "Replace Dekrypteret Billede: "  &replace(Dekrypter(Request.Querystring("sti")),"?",".") & "<br>"
%>

SOM du nok kan se, så når jeg decrypter, så får jeg et filnavn hvor "." bliver til ?, det kan jeg ikke bruge til så meget :-)
Avatar billede netro Nybegynder
27. oktober 2003 - 14:50 #5
Næ, det kan jeg godt se, men jeg kan ikke umiddelbart give dig en forklaring på hvorfor. Kan du ikke erstatte ? med et . direkte i funktionen?

Dekrypter = Replace(nytekst, "?", ".")
Avatar billede thefatman Nybegynder
31. oktober 2003 - 21:29 #6
lukker..
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester