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
1094
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
En voi jutella kanssasi
tietenkään, mutta täällä voin sanoa sinulle, että se sinun hiljaisuutesi ja herkkyytesi eivät ole heikkoutta. Ne ovat ih395130Trump ja Vance murskasivat ja nolasivat Zelenskyn tiedotusvälineiden edessä Valkoisessa talossa.
Jopa oli uskomaton tilaisuus Valkoisessa talossa. Zelensky jäi täydelliseksi lehdellä soittelijaksi suhteessa Trumpiin j5131689Kokoomus haluaa hoitaa flussat yksityisellä, jotta säästettäisiin rahaa ja aikaa
Mies hakeutui Terveystalo Kamppiin flunssaoireiden takia helmikuisena sunnuntai-iltana. Diagnoosiksi kirjattiin influens771090Rakkaus ei iloitse vääryydestä vaan iloitsee yhdessä TOTUUDEN kanssa.
Tajuatteko, että jotkut ihmiset pitävät siitä, kun toiset kaatuvat? He nauttivat siitä, kun toiset mokaavat tai käyttävä3591008- 77943
Anteeksi Pekka -vedätys
Apuna Ry:n somessa levinnyt Anteeksi Pakka -kampanja saa aina vaan kummallisempia piirteitä. ”Mä pyydän anteeksi. Mä53921- 59860
- 228814
Mikä on kaivattusi ärsyttävin piirre?
Mun kaivattu on erittäin vastahakoinen puhumaan itsestä. Kääntää puheenaiheen aina muuhun kun hänestä tulee puhetta.50793Päivi Ollila on tehnyt kunnallisvalituksen saadakseen pidettyä Tarja Pirkkalaisen virassa
Kaupunginhallituksen puheenjohtaja Päivi Ollila on tehnyt kunnallisvalituksen kaupungin johtamisjärjestelyiden muutokses58738