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
1149
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
- 543018
- 612841
SDP:n lyhyt selviytymisopas
1. Komitea on vastaus, oli kysymys mikä tahansa Jos maailma on muuttumassa tai jossain palaa, demari ei hätiköi. Ensin p462381Kiva kun SDP alkaa hallitsemaan Suomea
Vanhat hyvät ajat taas palaavat ja kansa vaurastuu. Muistatteko vielä Sorsan aikakauden? Silloin Suomessa tehtiin jopa422371- 632137
- 552035
Mitä se olisi
Jos sinä mies saisit sanoa kaivatullesi mitä vain juuri nyt. Ilman mitään seuraamuksia yms. Niin mitä sanoisit?411005Toivoisitko
Toivoisitko, että kaivattusi olisi introvertimpi tai extrovertimpi? Itsenäinen tai tarvitsisi enemmän apua/sinua? Osoit115946Nanna Karalahti :Paljastus bisneksistä Jere Karalahden kanssa!
Ottanut yhteyttä seiskalehden toimittajaan ja kertonut totuuden yhteisestä Herotreeni-nimisestä verkkovalmenuksesta.123909Sotekeskus
Aloite on hyvä, kiitokset siitä. Mutta jos olette yhtään seuranneet hyvinvointialueen kokouksia niin sehän on jo nuijit38884