09. september 2003 - 17:48Der er
36 kommentarer og 1 løsning
Key's
Hey.. Hvordan laver man de der trial keys til ting, F.eks, Spil eller andre programmer, så de skal indtaste en række numre før de kan bruge det? F.eks 1356-1363-1245-1579 ? Nogen der har et svar på det? 25 point
ok.. Kunne man på en eller anden måde udregne 1000 keys der vil give, "X antal" ? OG hvordan for du den f.eks, Til at huske man har registreret, Så man ikke altid skal indtaste keyen?
1) du kan oprette en fil et eller andet sted på computeren med noget data.. 2) du kan bruge registreringsdatabasen og oprette en nøgle (f.eks. "Registered" med værdien "1")
når dit program så starter op, skal den bare check om registering er ok.. dvs læse indeholdet af filen, hvis den eksisterer (metode 1), elle læse nøglen i registreringsdatabasen og se om den er "1" (metode 2)
lidt primitivt meybe, Men man kunne os bruge en usynlig scrollbar, Som hvis dens value er f.eks 1234 så kan man logge ind? som private_sub command1.clik() scrollbar.value = scrollbar.value + a.value... Prob er bare. Man kan jo ikke rigtigt kalde en textbox for value :/
jeg mener at jeg har noget reg.db. kode liggende..
Du skal passe MEGET på med hvad du laver i registreringsdatabasen! Hvis du ændre/sletter vigtige værdier, kan det være at du bliver nød til at geninstallere Windows..
ok.. Og squashguy, Smart idé.. Men problemet vi står med når det er done er bare.. Hvordan får vi udregnet alle koderne? (altså man kan jo godt gøre det en efter en) men altså en hurtig måde, Der laver måske 1000 forskellige koder der alle passer til enten Resultatet (1234) eller det du sagde, felt3 = felt1+felt2 felt4 = 10*felt3
Eller forklar lige om hvad "Registration" og "registered" er? .. Få så regner jeg med det er, if registered.caption = 1 , Altså at den gemmer dataen til et usynligt textfelt.. Skal bare lige vide hvad det der "Registration" og "Registered" er... Formen og et Textfelt eller?
jeg har brugt tal og bogstaver for at bedre kunne identificere linierne, hvis du har spm..
eksempel:
1a brugeren starter programmet "makman 3D v4.9" :) 2a programmet læser i regdb for at se om programmet er registreret:
3a if GetSetting("ProgramName", "Registration", "Registered") = 1 then 3b --> programmet er registreret.. gå til 10a 3c ellers 3d --> brugeren får så en "Vil du registrere programmet?"-box med key-felterne 3e --> hvis brugere vælger at registrere (Ja), gå til 4a 3f --> hvis brugere vælger IKKE at registrere (Nej), gå til 9a 3g end if
4a brugeren indtaster key'en i felterne og klikker "OK".. 4b programmet udfører så en udregning for at se om key'en er gyldig: 4c if indastede-key = ok then 4d SaveSetting "ProgramName", "Registration", "Registered", "1" 4e ellers 4f fortæl brugeren at key'en er ugyldig 4g gå til 3d 4h end if
thesurfer... der er bare én fejl ved din løsning. Du er nødt til at gemme nøglen i registry, og lave beregningen hver gang programmet starter. Det er ALT for nemt at omgå, hvis man bare skal oprette "registered=1"
if GetSetting("ProgramName", "Registration", "Registered") = 1 then 1) Hvad er "Registration" (ved godt hvad det er, Men er det formen eller?" 2) Hvad er de forskellige egentlig? "ProgramName" programnavn - "Registration" - ? "Registered" - ?
1) det var bare et eksempel.. han behøver ikke at gemme strengen "Registered=1" i regdb.. det kunne være noget helt andet.. f.eks. "chewbacca=muhahaha"..
2) det er lige meget hvad han laver af sikkerhedsforanstaltninger, de kan brydes.. jeg tror ikke der findes et eneste program i verdnen der ikke kan brydes.. Microsoft, som er et stort software-firma, har lavet dyre produkter med key's, der i dag er brudt/cracket.. Adobe, som også er et stort software-firma, har lavet produkter der ligger i klassen 5000-20000 kr, der også er brudt/cracket..
Når man installere et hvilket som helst program, ligger den filer og nøgler i regdb.. problemet er så, at programmet ikke altid fjerner det den har lagt på computeren, hvilket i sidste ende gør computeren langsom.. Der er bl.a. lavet et program som hedder "InCTRL". Når InCTRL aktiveres, vil den holde øje med hvad der bliver oprettet/ændret/slettet af filer/nøgler.. og den vil fortælle hvilket program der gjorde det..
Hvis makman oprettede en filen "data.sys" (eller en anden) med indeholdet "registreret" eller "muhahaha", så ville InCTRL opfange det..
Hvis makman tilføjede "Registered=1", "chewbacca=muhahaha" eller noget andet, ville InCTRL opfange det..
Det eneste man så skal gøre, er at ligge "data.sys" eller teksten "Registered=1" ud på nettet.. så kan alle downloade filen, og registrere programmet uden at betale for det..
Jeg vil ikke fortælle hvordan man bryder/cracker et program, men vil bare sige:
alt kan brydes.. "What one man can do, another can undo" :)
Når du bruger SaveSetting, oprettes en mappe "ProgramName" (erstattes f.eks. med "makman 3D v4.9") med undermappen "Registration" som så har strengen "Registered" med værdien "1"..
Det sker under stien "HKEY_CURRENT_USER\Software\VB and VBA Program Settings" i regdb
opsummering: 1) "Registration" er en undermappe i regdb, som ligger under "HKEY_CURRENT_USER\Software\VB and VBA Program Settings\ProgramName"
2) "ProgramName" erstatter du med navnet på dit program.. f.eks. "makman 3D v4.9" hvis du f.eks. laver et 3D program..
med andre ord: "ProgramName", "Registration", "Registered" og "1" er værdier der sendes til den indbyggede funktion "SaveSetting", som så placere dem i regdb..
værdierne kan så aflæses med "GetSetting" funktionen.
Du har da ret, har man internet kan man finde keys til næsten alt.
Men ved at sætte registered=1, kan alle og enhver selv "cracke" programmet. Ved at gøre det på den anden måde, kræver det at brugeren har færdigheder i reverse engineering; hvilket den almene bruger nok ikke har.
..det er korrekt.. men som jeg nævnte i svaret til dit indlæg, var det kun et eksempel.. "chewbacce=muhahaha" er måske ikke særligt nemt at gennemskue, men man finder sikkert ud af det på et eller andet tidspunkt.. man kan jo gemme hvad som helst i regdb.. også i filer..
man kan ikke lave et system som fungerer samtidigt med at det ikke kan brydes.. man kan kun lave systemet svært at bryde..
hmm..teoretisk set skal systemet være vågent (engelsk: aware).. altså, som om der står en sikkerhedsvagt lige ved siden af brugeren og følger med i hvad brugeren laver.. det ville være et meget svært system at bryde.. med mindre vagten er korrupt og kan bestikkes :)
En anden ting er, at mange newbies faktisk springer VB-applikationer over, når der skal finde keys og andet sjovt.
Synes godt om
Ny brugerNybegynder
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.