Olen kirjoittanut Perlillä ison tietokanta-ohjelmiston, jossa on tällä hetkellä 167,000 riviä (tai olla tulkille liikaa, koska -w ja use strict; kaatavat stderr:n: "broken pipe"). Koska Perl on tulkattu kieli, on ohjelma pakko levittää lähdekoodina. Haluaisin kuitenkin suojata oikeuteni (ettei hienoja algoritmejani varasteta) jollakin tapaa.
Kysymys kuuluu: mistä löytäisin hyvän Perl-obfuskaattorin, siis samanlaisen, joita saa esim. Javaan. Hyvä obfuskaattori tekee lähdekoodista täysin mahdotonta lukea tai täyspäisen ihmisen seurata. Hyvänä lisänä olisi mukava saada lähdekoodi täyteen kummallisia merkkejä, merkkijonoja ja näiden älyttömiä yhdistelmiä - siis koodia, josta kukaan ei saa tolkkua.
Olen yrittänyt etsiä kaikista mahdollisista lähteistä Perl-obfuskaattoria, mutta sellaista ei tunnu löytyvän? Luulisi näinkin yleisessä käytössä olevalle kielelle sellaisen kirjoitetun...
Mistä obfuscaattori Perliin?
4
1103
Vastaukset
- Mik
http://www.perldoc.com/perl5.6/pod/perlfaq3.html#How-can-I-hide-the-source-for-my-Perl-program-
Samalla sivulla on myös kohta "How can I compile my Perl program into byte code or C?". Lisäksi voi kokeilla perlcc:n optiota -B, joka tekee bytekoodia. perlcc:n manuaalisivulla kerrotaan kuitenkin, että "The code generated in this way is not guaranteed to work. The whole codegen suite ("perlcc" included) should be considered very experimental. Use for production purposes is strongly discouraged."
Toisaalta perliähän on helppo kirjoittaa siten, että se näyttää muutenkin kryptatulta. - megari
En oikeastaan ymmärrä mikä ihmisissä ajaa salaamaan asioita. Algoritmit ovat käytännöllisiä ja niistä on hyötyä, joten miksi et jakaisi muille tietoasi? Tieto on kuin tuli: se ei vähene, vaikka sen jakaisi muuallekin. Jos joku todella kokee tarpeelliseksi ottaa juuri sinun algoritmisi käyttöön, hän tekee sen vaikka tekisit mitä kryptauksia tai obfuskointeja. Lisäksi obfuskoidun lähdekoodin ylläpito on hankalaa (tosin uskon, että pidät itselläsi obfuskoimatonta versiota) ja jos joku törmää bugiin ohjelmistossasi, hän ei voi debugata sitä, korjata sitä ja ottaa sinuun yhteyttä patchi kainalossa.
Ymmärrän toki huolesi henkisen omaisuutesi perään, mutta käytännössä algoritmisi sopivat parhaiten juuri sinun ohjelmistoosi ja niiden soveltaminen jonkun toisen ohjelmistossa vaatisi sitä, että kyseinen ohjelmisto olisi suunniteltu juuri sinun algoritmejasi silmälläpitäen - varsin mairittelevaa ja toisaalta helposti jäljitettävää käryn käydessä. Jos joku taas lukee koodisi läpi (tai disassembloi ja tutkii tulostetta), ottaa muistiinpanoja siitä, mitä algoritmisi pääpiirtein tekevät ja tekee sen pohjalta oman versionsa, ei hän ole tehnyt vääryyttä, sillä ideoita ja algoritmeja ei voi - eikä saisikaan voida - patentoida.
Tiedän kyllä, että maailma ei toimi idealistisesti: ihmiset eivät jaa vapaasti kaikkia ideoitaan kaikkien muiden kanssa terveen tieteellisesti, vaan salaavat, varastavat ja patentoivat. Itse kuitenkin taistelen toistaiseksi tuulimyllyjä vastaan ja kehotan ihmisiä miettimään, onko välttämätöntä salata omia tekeleitään ja onko se niin kamalaa, jos joku kunnioittaa tuotetta käyttämällä sitä/osia siitä omassaan. Itselläni on erinomaisia kokemuksia laajojenkin ohjelmistoprojektien vapaaseen käyttöön antamisesta: olen saanut paljon hyvää palautetta, parannuksia, bugikorjauksia ja uusien ominaisuuksien toteutuksia sekä massoittain kiitoksia ihmisiltä ympäri maailmaa. Tämä vain koska taistelen tuulimyllyjä vastaan ja pidän yllä kilpailukykyistä tuotetta luottaen muihin ihmisiin.- Mik
Ihan vain jos jotain kiinnostaa lukea "Introduction to Reverse Engineering Software":
http://www.acm.uiuc.edu/sigmil/RevEng/
Pitäisi lukea tuo itsekin, muttei vain koskaan tunnu olevan riittävästi aikaa tai viitseliäisyyttä siihen.
- Lapm
Onneksi olkoon ison urakkasi loppuun saattamisen johdosta. Ihan kohtuu kunnioitettava määrä tuo 167000 riviä koodia näin ohjelmointi amatöörin silmissä.
Olet siis huolissasi että joku varastaa huolella laaditut algoritmisi? Tuskin kannattaa olla, sinullahan on tuossa valmis tuote tarjottavana.
Riittävän motivoitunut ja taitoja omaava hakkeroi kyllä algoritmisi sotkun seasta. Lisäksi algoritmisi ovat tosiaan hiottuja juuri sinun tuotteeseesi ja vaatisivat sopeuttamista toimiakseen jossain toisessa ohjelma tuotteessa.
Ehkä sinun aikasi olisi ohjelmakoodin sotkemisen sijasta (hidastaa ohjelmaa) paremmin käytetty tuotteesi markkinointiin.
Ketjusta on poistettu 0 sääntöjenvastaista viestiä.
Luetuimmat keskustelut
Hannu Pikkarainen ehdottomaan vankeuteen
KKO tuomitsi 1 v 9 kk. Tämä ei ole Hannulle ilon päivä.3984460Kuka on mystinen heppamies?
Nyt tänne vinkkejä siitä kuka on Martinan seurassa viihtyvä hevosmiljonääri. On tullut jo muutamia nimiä esiin keskustel1211732- 1351504
Jäätävä epävarmuus
Mistä tää hirveä epävarmuus molemminpuolin johtuu? Pohjimmiltaan uskon, että molemmat tietää, että tunteita on. Vai onko731263Yksi iso yllätys luvassa The Summit Suomi -finaalijaksossa - Tiesitkö nämä Summit-loppukolmikosta?
The Summit Suomi on tarjoillut yllättäviä pudotuksia ja melkoisen määrän pelkkää kisaajien vaelluksen kuvaamista Norjass151076Perjantaita!
Miltä kaivattusi tuoksuu? Tuli mieleen kun täällä usein mainitaan pahasta hajusta. 🤔721067Voi että! Sergey Hilman paljastaa Race Across the World -kuvauksista: "Tämä oli se paras jekku"
Tykätään! Aikamoinen pari tämä Sergey Hilman ja Sini Sabotage - herättävät varmasti vahvoja tunteita suuntaan sun toise131009Ei tullut konkurssia, tuli 3 karhua
Olipas hyvä uutinen. Näin sitä vaan tunnetaan. Persut eivät onnistuneet tuhoamaan.. tätäkään64956- 38950
- 65931