Avatar billede websam Nybegynder
18. april 2005 - 15:22 Der er 21 kommentarer og
2 løsninger

Sikring mod kopiering ?

Hejsa,

Kan man ikke på en simpel måde sikre mod kopiering af et projekt fra et domæne til et andet ?

Jeg har prøvet med noget i denne stil :

If Request.ServerVariables("SERVER_NAME") <> "www.tilladt.dk" Then
    Response.Redirect("www.forbudt.dk")
End If

Men det virker ikke jeg får ingen fejl men den sendes ikke videre til et andet domæne. Så hvis en sidder med en god idé er det mere end velkommen :o)

/Websam
Avatar billede prec Nybegynder
18. april 2005 - 16:28 #1
Jeg forstår ikke helt hvad du vil. Men jeg vil gætte mig til at du gerne vil have at uvedkommende ikke kan komme ind på din side? Eller det er måske at det ikke skal kunne køres fra andet end din server?
Avatar billede websam Nybegynder
18. april 2005 - 16:38 #2
Hvis en kunde har 2 domæner "www.domæne1.dk" og "www.domæne2.dk" så laver jeg et system som kan bruges til flere forskellige domæner men kunden skal jo betale for hvert domæne. Kunden kan jo i reglen bare kopiere det fra første domæne til andet domæne uden at det koster dem en krone og det har ingen interesse.

Håber det hjælper lidt på forståelsen :o)

/Websam
Avatar billede websam Nybegynder
18. april 2005 - 16:40 #3
Hvis man så kunne tjekke op på om domænet er "www.domæne1.dk" med Request.ServerVariables("SERVER_NAME") da denne jo som bekendt angiver domæne navnet :o)

/Websam
Avatar billede prec Nybegynder
18. april 2005 - 17:48 #4
Jeg vil selfølgelig ikke hvor stort et omfang du har tænkt dig at gøre dette i, men hvis det var mig ville jeg lave en slags licens server som de forskellige applikationer spørger om lov til at køre, dermed kan du have en database med domæne navne som du tillader og via .NET remoting kan websiderne spørge din server om lov til at køre.

Selve check om domænet er gyldigt er sådan set teknisk rigtigt, du kan dog ikke bruge SERVER_NAME da det er det navn som serveren er blevet døbt, dvs det kan være stort set hvad som helst.. og ikke bare en URL.

Du bør nok lave checket på IP men hvis det ikke er muligt hedder variablen Request.ServerVariables("HTTP_HOST")
Avatar billede websam Nybegynder
18. april 2005 - 18:46 #5
"Jeg vil selfølgelig ikke hvor stort et omfang du har tænkt dig at gøre dette i, men hvis det var mig ville jeg lave en slags licens server som de forskellige applikationer spørger om lov til at køre, dermed kan du have en database med domæne navne som du tillader og via .NET remoting kan websiderne spørge din server om lov til at køre."

Kunne du komme lidt nærmere ind på hvordan man gør dette ?

"Selve check om domænet er gyldigt er sådan set teknisk rigtigt, du kan dog ikke bruge SERVER_NAME da det er det navn som serveren er blevet døbt, dvs det kan være stort set hvad som helst.. og ikke bare en URL."

Hvis jeg skriver Response.Write Request.ServerVariables("SERVER_NAME") på nogle forskellige af mine domæner ja så får jeg www.domæne.dk kastet i hovedet.
se evt dette link : http://aspnet.asp101.com/samples/servvars.aspx og tjek under SERVER_NAME

"Du bør nok lave checket på IP men hvis det ikke er muligt hedder variablen Request.ServerVariables("HTTP_HOST")"

Der er ingen idé i at tjekke på Ip da mange af de opgaver jeg laver ligger ved hosts ude i byen.

/Websam
Avatar billede nielle Nybegynder
18. april 2005 - 19:04 #6
Iøvrigt bør du vide at et .NET projekt nemt kan dekompileres, hvorefter man kan lave en enkelt rettelse (f.eks. www.tilladt.dk til www.forbudt.dk), og så rekompileres igen. Din oprindelige løsning vil derfor ikke være nogen særlig god beskyttelse.
Avatar billede websam Nybegynder
18. april 2005 - 19:08 #7
Og hvordan kan det lade sig gøre har da ikke set nogle steder at det var muligt at dekompilere en .dll fil, men det er måske noget andet med .net ?

Kom gerne med nogle links :o)

/Websam
Avatar billede arne_v Ekspert
18. april 2005 - 19:10 #8
reflector eller anakrino

den første er nem at finde - den sidste findes her http://www.saurik.com/net/exemplar/
Avatar billede websam Nybegynder
18. april 2005 - 19:17 #9
Ok fair nok at man under .net kan rekompile en .dll, men hvis en form for "licens server" kan benyttes er der så ikke muligt at komme med et eksempel på hvordan jeg kan gribe det an ?

/Websam
Avatar billede arne_v Ekspert
18. april 2005 - 19:27 #10
umiddelbart tror jeg at det er skønne spildte kræfter

hav en klar licens + et godt produkt + en rimelig pris

så vil de fleste betale

og resten lader du din advokat grille i retten
Avatar billede prec Nybegynder
18. april 2005 - 21:43 #11
Jeg vil også mene det er spildte kræfter, men hvis det endelig skulle laves ville jeg lave en windows service på en pc, eller en webservice som din webside så forespørger, hvis du vælger windows service ideen kan du læse om det rundt omkring på nettet hvis du søger efter .NET remoting.

Hvis du vælger webservice kan du enten bruge nogenlunde samme teknik, fra klientens synspunkt, eller gætte dig frem, ikke så svært.
Avatar billede nielle Nybegynder
18. april 2005 - 22:23 #12
websam> ildasm.exe - IL DeAssembler - følger med SDK'er helt gratis.
Avatar billede arne_v Ekspert
18. april 2005 - 22:25 #14
nogle ville hævde at decompilere er mere brugervenlige end deassemblere
Avatar billede nielle Nybegynder
18. april 2005 - 22:33 #15
Problemet med en licensserver er at, hvis du ikke er helt sikker på at din maskine køre hele tiden, er du til gengæld sikker på at dine kunder bliver temmeligt bitre på dig.
Avatar billede nielle Nybegynder
18. april 2005 - 22:35 #16
Enig, men i dette tilfælde ville der ikke have været nogen væsentlig forskel. Det drejede sig jo trods alt bare om at rette en streng.
Avatar billede websam Nybegynder
28. april 2005 - 13:17 #17
Hvad angår dekompilering skal jeg så forstå det sådan at når et projekt er kopieret til server med kun de filer der er nødvendige for at bruge applicationen så kan man ud fra det dekompilere hele pivtøjet så andre folk kan se hvad men har lavet ?

For så er ideen fra de "gamle .dll filer (vb 6.0)" i forbindelse med asp 3.0 da en bedre løsning til sikring, da jeg så vidt jeg ved, ikke kan dekompileres til nogt brugbart !?!

/Websam
Avatar billede arne_v Ekspert
28. april 2005 - 13:52 #18
.NET assemblies (.dll filer) er meget nemme at decompile til source code

og meget nemmere end VB6 !

der findes dog diverse tools til at gøre det lidt vanskeligere
(obfuscatorer og konvertere til native)
Avatar billede websam Nybegynder
28. april 2005 - 14:14 #19
Ok, til dem der vil have point, smid et svar :o)
Avatar billede arne_v Ekspert
28. april 2005 - 15:11 #20
.
Avatar billede nielle Nybegynder
28. april 2005 - 18:04 #21
Fandt du en løsning på dit oprindelige problem?
Avatar billede websam Nybegynder
28. april 2005 - 20:01 #22
nielle >> nej egentligt ikke, men jeg kigger på det med den licens server senere for hvis ikke man kan beskytte koden igennem den dll fil der laves ja så kan folk jo bare dekompilere lortet og "stjæle" min kode anyway, så som arne-v skriver så er et godt produkt, pris og licens vejen frem, så kan resten "nakkes" i retten.

/Websam
Avatar billede nielle Nybegynder
28. april 2005 - 20:46 #23
Nemlig :^)
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
IT-kurser om Microsoft 365, sikkerhed, personlig vækst, udvikling, digital markedsføring, grafisk design, SAP og forretningsanalyse.

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