Kirjautuminen

Haku

Tehtävät

Keskustelu: Ohjelmointikysymykset: VB.NET: (vb.net) Trial version teko

Hellami [05.12.2003 20:28:53]

#

Kuinka saisi ohjelmaan tehtyä "trial" -version... vaikka yksinkertaisesti niin, että kaikki napit eivät ole käytössä (tiedän! .Enable arvoa pitää muuttaa, muuta). Kuinka niin että ohjelma lataa tietyn rekisteröinti koodin saadessaan netistä tiedoston, josta ohjelma tietää, että saa antaa kaikki napit käyttöön. Jos ohjelma vaikka lähettäisi henk. koht koodi, joka on joka koneella eri. Ja tiedosto jonka ohjelma lataa netistä (, vaikka kotisivuiltani, jotka ei vät ole vielä netissä) sisältäisi jotain "piilotettua" tekstiä, tai jokin systeemin, että tiedostoa ei voi kopioida koneelta toiselle (tarkoitan ns. "laitonta" ohjelman rekisteröintiä) pieni esimerkki: windows xp:n aktivointi. Toivottavasti joku tajusi mitä tarkoitan( toki ei sen tarvitse olla samanlaisesti toteutettu ja yhtä tarkka kuin xp:ssä :) )... kiitos jos joku viitsii vastata ja ymmärtää kysymykseni.

Gaxx [05.12.2003 23:13:42]

#

Jos ymmärsin oikein niin sinun siis pitäisi tehdä jokaiselle käyttäjälle oma versio joka hyväksyy vain tietyn "aktivointi" koodin (siis jokainen versio hyväksyy eri koodin). XP:n aktivoinnin toteutuksesta minulla ei ole minkään näköistä tietoa, mutta kun näin maalaisjärjellä ajattelee niin tuo kuulostaa ainoalta vaihtoehdolta. Kun käyttäjä sitten rekisteröityy, saa "aktivointi" koodin(miten sitten saakin) ja syöttää sen ohjelmaan, osaa ohjelma hakea esim. omilta kotisivuiltasi tiedoston, joka antaa "täydet" oikeudet ohjelmaan(tosin ihmettelen kyllä miksi se pitäisi ladata netistä). Tämä tietenkään ei täysin estä laitonta kopiointia sillä kyllähän samalta esim. cd:ltä kopioitu/asennettu ohjelma hyväksyy saman koodin.
Mieti kumminkin vielä, että onko tuollainen työ vaivan arvoista! Helpommallakin pääsee varsinkin jos ohjelmasi ei tule olemaan mikään maailmaa mullistava.

Gaxx [05.12.2003 23:22:03]

#

Tosin tuossa ei ole MITÄÄN järkeä!
Siis, että tekisi miljoona eri trialveriota joista yksi sadasta registeröitäisiin.
Toisin sanoen tee ihan vain yksin kertainen registeröinti systeemi.

sqwiik [06.12.2003 18:28:16]

#

Tee vaikka näin: kun ohjelma asennetaan, se luo sattumanvaraisen, pitkän numerosarjan, joka toimii ohjelman tunnisteena. Jos käyttäjä haluaa rekisteröityä, hänen täytyy syöttää tietty luku, joka on tuon koodinumeron vastinpari jonkin tietyn, monimutkaisen kaavan mukaan. Näin vastinparia ei ole kovin helppo hakkeroida selville. Sinä itse tietenkin tiedät, millä kaavalla tuo numero luotiin ja kykenet tekemään helposti koodin joka luo vastinparin, jolla ohjelma rekisteröidään...

Gaxx [07.12.2003 09:39:48]

#

No mutta toihan on kätevä ratkasu... en tosin oo koskaan tehny mitään registeröitymis juttua - että sellasta.

sqwiik [07.12.2003 12:58:43]

#

Hyvin yksinkertainen ratkaisu on seuraava:
Omassa tiedossaan ohjelmalla on muuttumaton, pikä merkkijonovakio. Vaikka esim. "52345ay7jh" (10 merkkiä)
Kun ohjelma asennetaan / käynnistetään ensimmäisen kerran, se luo tiedoston johon se kirjoittaa satunnaiset 10 merkkiä (esim. "h_gsFg 9lL"). Uusi merkkijono toimii 'tunnisteena'. Kun käyttäjä tahtoo rekisteröityä, ohjelma pyytää rekisteröintikoodia: se tekee jonkin ihmeellisen laskutoimituksen kautta tunnisteesta ja vakiosta kolmannen merkkijonon (esim. "X a 7&jlÄ?"), johon käyttäjän on annettava vastinpari siten että ne vastaavat toisiaan jonkin kaavan mukaan.

Eli lyhyesti:
1. Luo merkkijono ja talleta se (jos ei vielä olemassa)
2. Jos käyttjä painaa "rekisteröidy", niin luo kryptausjono vakiosta ja tunnisteesta ( esim. kryptausjono = (vakio XOR tunniste) )
3. Lähetä kryptausjono valmistajalle, joka tuottaa jonolle vastinparin (eli käyttää apuohjelmaa, joka laskee ohjelman rekisteröintikoodin takaperin, tuloksesta parametriin)
4. Käyttäjä kirjoittaa saamansa koodin. Koska se on tulos kolmannesta merkkijonosta, on vertaus helppoa... Krakkereiden on aina vaikeaa edetä tuloksesta takaisinpäin, jos eivät tiedä kryptauskoodeja.

Aku2 [07.12.2003 16:14:21]

#

Kun nyt oli puhe netin kautta aktivointi, niin itse ajattelin sen toimivan jotenkin näin.

Ohjelmaan syötetään nimi.
Ohjelma hakee netistä tiedon onko tämä ohjelma rekisteröity vai ei.

Ohjelman tekijä taas pitäisi tietokantaa netissä, eli jossain piilopaikassa on tekstitiedosto, joka sisältää nimen ja rekisteröintitunnuksen.
Tällöin ohjelma hakiessaan tietoja huomaa nimen syötettynä, saako ohjelman aktivoitua vai ei.
Jos nimi löytyy niin aktivointi onnistuu ja vaikka samalla lähettää mailin tai tallentaa tiedon, kuka (nimi ja IP) on aktivoinut ja milloin.
Jos taas ei löydy, niin aktivointi ei onnistu.
(mahdollisesti tallentaisi tiedon mistä IP:stä on yritetty akvitoida ja millä nimellä)

En ole tuollaista koskaan tehnyt, vaan käytän itse nimestä generoitua seriaalia, jolloin ohjelman ostaja saa sähköpostitse seriaalin oman nimensä mukaan generoituna. Näin myös ohjelman rekisteröinti kohdentuu tiettyyn henkilöön, jolloin seriaalin levittäminen ei niin paljoa huoleta, kun tietää melkeinpä heti, kuka sen on sitten päästänyt levitykseen.

Vastaus

Aihe on jo aika vanha, joten et voi enää vastata siihen.

Tietoa sivustosta