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
1081
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
Aivosyöpää sairastava Olga Temonen TV:ssä - Viimeinen Perjantai-keskusteluohjelma ulos
Näyttelijä-yrittäjä Olga Temonen sairastaa neljännen asteen glioomaa eli aivosyöpää, jota ei ole mahdollista leikata. Hä912900Pelotelkaa niin paljon kuin sielu sietää.
Mutta ei mene perille asti. Miksi Venäjä hyökkäisi Suomeen? No, tottahan se tietenkin on jos Suomi joka ei ole edes soda2991676Mikä saa ihmisen tekemään tällaista?
Onko se huomatuksi tulemisen tarve tosiaan niin iso tarve, että nuoruuttaan ja tietämättömyyttään pilataan loppuelämä?2461547- 871391
IL - VARUSMIEHIÄ lähetetään jatkossa NATO-tehtäviin ulkomaille!
Suomen puolustuksen uudet linjaukset: Varusmiehiä suunnitellaan Nato-tehtäviin Puolustusministeri Antti Häkkänen esittel4021374Nyt kun Pride on ohi 3.0
Edelliset kaksi ketjua tuli täyteen. Pidetään siis edelleen tämä asia esillä. Raamattu opettaa johdonmukaisesti, että3981292Kiitos nainen
Kuitenkin. Olet sitten ajanmerkkinä. Tuskin enää sinua näen ja huomasitko, että olit siinä viimeisen kerran samassa paik21079Esko Eerikäinen tatuoi kasvoihinsa rakkaan nimen - Kärkäs kommentti "Ritvasta" lävähti somessa
Ohhoh! Esko Eerikäinen on ottanut uuden tatuoinnin. Kyseessä ei ole mikä tahansa kuva minne tahansa, vaan Eerikäisen tat381037Hyväksytkö sinä sen että päättäjämme ei rakenna rauhaa Venäjän kanssa?
Vielä kun sota ehkäpä voitaisiin välttää rauhanponnisteluilla niin millä verukkeella voidaan sanoa että on hyvä asia kun329874Miksi Purra-graffiti ei nyt olekkaan naisvihaa?
"Pohtikaapa reaktiota, jos vastaava graffiti olisi tehty Sanna Marinista", kysyy Tere Sammallahti. Helsingin Suvilahden257855