Eric S. Raymond Hacker - HOWTO. Arvustus


Kui õigesti mäletan, lugesin Eric. S. Raymondi esseed/juhendit/soovitusi esimest korda tõenäoliselt kuskil aastate vahemikus 2005–2007. Sellesse perioodi jääb ka indie filmi Revolution OS vaatamine, läbi mille puutusin lähedamalt kokku vaba tarkvara ja avatud lähtekoodi olemuse ning ideoloogiaga. Sellesse perioodi jäi ka filmi põnevusfilmi Takedown (2000) vaatamine, mis sai häkkerite kogukonna poolt negatiivset tagasisidet, ning mis kajastab Kevin Mitnick’i kinnilangemist. Kuna temast peaks tulema ainekava 14ndal nädalal pikemalt juttu, seega väga sügavalt tema tegemistesse ei langeks, ehkki natukene teen ka temast siin juttu, kuna näiliselt ta vastandub Raymondi häkkeri definitsioonile. Nüüd Raymondi teksti uuesti lugedes sain aga teada, et Raymond on seda läbi aastate täiustanud (erinevate versioonide ilmumise kohta on tabel siin (http://catb.org/~esr/faqs/hacker-howto.html). 


Minu jaoks oli tollal seda esseed lugedes tegu pigem vana-kooli häkkeri, kes on otse 70ndate MIT-i laborist välja karanud, autoriteetse, natukene isegi vananenud romantiseeritud seisukohaga, kus on Microsoft paha/Unix hea, kommertsiaalne suletud lähtekoodiga tarkvara teeb sind orjaks ja vaba lähtekood vabastab sind stiilis binaarsed opositsioonid.


Muidugi on Raymondi soovitustel väga suur panus sellesse, kuidas sõna häkker mõistetakse ning mida see tähendab. Olen nõus, et häkkerlik mõtteviis, mis väljendub muu hulgas lähenemises erinevatele lahendamist vajavatele probleemidele, vastandumine autoritaarsusele, tsüklilise ja igava töö tegemise põlgus, ei ole omane ainult tarkvaraga tegelevatele inimestele, vaid sellesse mõtteviisi sünnitakse ja arenetakse ning see on omane paljudele tehnilistel aladel töötavatele inimestele aga ka loomeinimestele, kes tahavad uudsed ehk originaalsed olla. Samas ei saa ma nõus olla, et Raymondi häkkerlik suhtumine või Steven Levy koodeks oleksid ammendavad või kategooriliselt jäigad. Võtame näiteks NATO Küberkaitsekoostöö Keskuse Eesti kontingendi töötaja ning Raymondi suhtumise 4. elemendi „Vabadus on hea“. Selline töötaja on võib-olla kõige ekstreemsem näide arvutitehnilisel erialal töötavast isikust, sest on asetanud ennast mitte ainult olukorda, kus ei saa tegeleda sellise probleemi lahendamisega, millega sooviks tegeleda, vaid ollakse ka muul viisil autoritaarsele keskkonnale allutatud. Demokraatlikus ühiskonnas on raske leida autoritaarsemat valdkonda kui riiklik militaar-sfäär. Samas on see autoritaarsusele allutatus tingitud ehk isamaa armastusest ning tahtest tagada teiste inimeste vabadus. 


Ehkki ma nõustun enamusega, mis E. S. Raymond kirjutanud on ning mille eest FSF hea seisab, häirivad mind mõned väikesed nüansid. Esimeseks selliseks nüansiks on halvustav suhtumine kommertsiaalse tarkvara tootjatesse, kelle võib kokku võtta W tähega algava firmana. Eriti teravalt väljendub see KKK-s.


K: Mul on probleeme Windowsi tarkvaraga. Ka sa aitaksid mind?

V: Jah. Võta lahti DOS-i käsurida ja kirjuta "format c:". Kõik probleemid kaovad mõne minutiga.

K: Kas ma pean vihkama ja kiruma Microsofti?

V: Ei, ei pea. Mitte et Microsoft poleks põlgust väärt, kuid häkkerikultuur oli olemas kaua enne Microsofti ning on ka siis, kui Microsoft on ammu ajalugu. Microsofti vihkamisele kuluvat energiat on palju parem kasutada oma kunsti armastamiseks. Kirjuta head koodi - see näitab Microsoftile piisavalt hästi koha kätte.


E. S. Raymond on lisaks enda esseele andnud ka filmis Revolution OS intervjuu, milles räägib kuidas Richard Stallman Microsofti vihkab. Tegemist on erinevate ideoloogiatega ning vastandumine tundub täiesti loomulik, kuid E. S. Raymondi kirjutatud KKK-st jääb välja toodud punktides kõlama üleolev ülbus. Võib-olla on see tingitud asjaolust, et E. S. Raymond on ennast asetanud skaala ühte äärde ning olles tuntud avalik figuur, on erinevatel “internetitrollidel” lihtne ligipääs tema eraelulisele puutumatusele, lihtne esitada provotseerivaid küsimusi ning lihtne pöörduda tema poole tehnikakonventsioonidel. Õli on tulle valanud muidugi ka asjaolu, et Bill Gates 1976 aastal, noore vihase intellektuaalse arendajana, ei hoidnud ennast oma arusaamades tagasi. Nimetatud aastal ilmus Homebrew Computer Club uudiskirjas ning mitmes teises arvuti alases väljaandes Bill Gates’i “avatud kiri harrastajatele” (An Open Letter to Hobbyists), kus ta väljendab pahameelt olukorra üle, et tarkvara jagatakse kasutajate vahel niisama ning tarkvara arendajad suudavad loota ainult oma kulutused tasa teenida (1). Bill Gates pidas siinkohal silmas enda, Paul Alleni ning Monte Davidoffi poolt arendatavat Altair BASIC’ut. Kuna personaalarvutid ei olnud veel üldsegi laialdaselt levinud, kasutasid Allen ning Gates arendustööks Harvardi Ülikooli arvutit PDP-10, mis läks neile väidetavalt maksma 40 000 dollarit, ehkki see summa on kahtluse alla seatud. (2, lk 25)


Bill Bates’i pahameel on arusaadav, sest leping tarkvara levitajaga (MITS) ei olnud soosiv ning arendustöösse pandud energia jäi tasustamata. Samast aastast hakkas toimuma ka ideoloogiline lahknemine tarkvara tootmise ja levitamise vallas.


K: Mu arvutisse murti sisse. Kas sa aitaksid mul edaspidi rünnakutest hoiduda?

V: Ei. Seni alati, kui minult on seda küsitud, on selle taga olnud mõni vaene tuhajuhan, kes kasutab Microsoft Windowsi. Windowsi pole kräkkimise vastu võimalik efektiivselt kindlustada - koodis ja arhitektuuris on lihtsalt liiga palju vigu, mis teeb sellisest üritusest sama mõttetu kui paadi veest tühjendamise sõela abil. Ainus kindel rünnakute vältimine tähendab siirdumist Linuxile või mõnele muule süsteemile, mis vähemalt võib olla turvaline.


Jah, Windowsi koodis võib olla palju vigu, mis muudab selle OS-ina ebaturvaliseks, kuid Gates tahtis seista selle eest, et arendajad oma töö eest vastavalt tasustatud saaksid. See mõttelaad ei saanud olla täielikult vale, sest ka tänasel päeval omab lauaarvutite vaates Windows enamikku turuosast (75,5 %), teisel kohal on OS X (15.32%). Linux on viiendal kohal (2.36%) ning turuosa marginaal on freeBSD käes (0.01%) (3). Sellesse statistikasse suhtuksin muidugi teatud kõhklustega, kuid argumendi põhjenduseks ehk piisab. B. Gates ei eksinud mõeldes, et kommertsiaalse tarkvara arendamine elavdab personaalarvutite turgu ning aitab luua kvaliteetsemat tarkvara Microsofti (Access, Excel, Outlook, PowerPoint, Word) poolt või ka teiste ettevõtete poolt (Adobe, Workday, Cisco, VMware).

Teine peamine vastuolu minu jaoks Raymondi essees on suhtumine süsteemide kräkkimisse. 


K: Kas sa aitaksid mul süsteeme kräkkida või õpetaksid mind kräkkima?

V: Ei. Igaüks, kes peale selle teksti läbilugemist ikka sihukesi asju küsib, on õpetamiseks liiga loll - isegi kui mul oleks õpetamiseks aega. Sellelaadseid e-kirju ma kas ignoreerin või vastan neile väga pahasti ütlemisega.


Aru saamine kuidas mingi süsteem toimib, kui tegu ei ole lähtekoodilt avatud süsteemiga, kui tegu on piiratud õigustega süsteemiga, tekitab mitte ainult kräkkeri aga ka Raymondi definitsiooni järgi häkkeri jaoks soovi mõista, kuidas süsteem toimib. Juba mitu korda mainitud filmis Revolution OS, kirjeldab R. Stallman oma tegevusi enne FSF-i asutamist MIT  AI laboris, kus ta 1975. aastast Gerry Sussmani käe all teadusassistendina töötas. 1977 aastal hakati MITi arvutiteaduste laborite arvuteid administreerimia ning kui varasemalt arvutitel salasõnad puudusid, siis nüüd olid arvutid kasutajatele salasõnadega piiratud. Varasemat salasõnade puudumist selgitas Stallman varasemate häkkerite, MITi arvutipargi arvutite loojate sooviga, et neid ei oleks võimalik administreerida. Stallman ütleb: “I decided to try a subversive sort of hack. I figured out how to decode the passwords, so by looking at the database of encoded passwords, I could figure out what each person would actually type to login.”


Seejärel saatis Stallman kasutajale sõnumi, öeldes nende salasõna ning soovitades kasutada uue salasõnana tühja sõne ehk ‘enterit’. Selles valguses on humoorikaks faktiks asjaolu, et MIT laboreid rahastas DARPA. (Levy, 1984.) Nii et kasutades Raymondi sõnavara, kräkkis Stallman lahti kasutajate salasõnad. Siin on Raymondi poolt levitatud ideoloogias suur vastuolu; mis on teistele keelatud, on mulle lubatud aga kui keegi teine kasutab oma teadmisi sama moodi nagu mina, siis tema on kräkker (laisk, vastutustundetu ja vähe taibukas) ja temaga ma ei suhtle.

Teise nurga alt vaadates on aga Raymondi esseel kaks väga spetsiifilist ülesannet.   Raymond alustab polaarsuse kehtestamisega, “meie” ja “nemad”, kusjuures “nemad” on vähem väärt, alamväärsed “meile”. Seejärel annab Raymond väga selge vihje, et enne ei ole sa mitte keegi, kui keegi “meie” seast ei ole sind omaks tunnistanud:

Järelikult pead häkkerite seas kaasamängimiseks õppima jälgima seda, mida teised häkkerid sinu oskustest arvavad (seepärast polegi sa häkker enne, kui teised häkkerid sind pidevalt nii nimetavad). Seda muudab aga segasemaks senini püsiv kujutelm häkkimisest kui üksi tehtavast asjast ning ka häkkerikultuuri tabu (mis on alates 1990-ndate lõpust vaikselt taandunud, kuid ikka veel tugev) tunnistada, et ego või väline heakskiit üldse kedagi motiveerivad.

Lisaks “nähtamatu ülikooli” ja uksehoidjate analoogiga, tooksin välja sarnasuse keskaegse rüütliks löömise tseremooniaga. Kuna Raymond on kirjutanud väga lihtsas keeles ning kasutanud manipuleerimistehnikaid, julgen oletada, et essee eesmärk oli osalt juhtida meedia ja laiema üldsuse tähelepanu asjaolule, et kõik arvutitega kõrgtasemel tegelevad inimesed ei ole kuritahtlikud ning tegu oleks justkui kahe väga eraldiseisva kogukonnaga. Ning teisalt oli eesmärk mõjutada ja suunata noorsugu nö õigele teele. 1995 aastal vahistati  “USA kõige tagaotsitavam arvutikurjategija” Kevin Mitnick (küll juba 31 aastane) ning mõisteti aastateks vangi. Ookeani tagune arvutikurjategija kajastus meedias muidugi nimetusega “häkker”. 


2. Märtsil 2000. a. toimus USA Senati Valitsusasjade komisjoni istung, kus arutati föderaalsete infosüsteemide turvalisuse üle. Asjatundjana kutsutud K. Mitnick andis järgnevad ütlused:


Well the definition of the word hacker, it's been widely distorted by the media. But . . . my motivation was the quest for knowledge, the intellectual challenge, the thrill and also the escape from reality--kind of like somebody who chooses to gamble to block out things that they would rather not think about. My hacking involved pretty much exploring computer systems and obtaining access to the source code of telecommunication systems and computer operating systems, because my goal was to learn all I can about security vulnerabilities within these systems. My goal wasn't to cause any harm, it wasn't to profit in any way. I never made a red cent from doing this activity. And I acknowledge that breaking the computers is wrong, and we all know that. I considered myself a trespasser, and my motivation was more of--I felt kind of like as an explorer on these computer systems. 


/…/ 


But it was encouraged back then. We're talking about the '70s. And now it's taboo.

And a lot of people in the industry today, like Steve Jobs and Steve Wozniak , they started out by manipulating the phone system. And I think even went to the point of selling blue boxes on Berkeley's campus. And they're well recognized as computer entrepreneurs. They were the founders of Apple Computer. (4)


See, mis Raymondi definitsiooni järgi häkkereid motiveerib ja mis K. Mitnick’i motiveeris, kui tema öeldut uskuda, ei erine teineteisest kuigi palju. Mõlemal juhul on tegu uudishimuga, oskuste proovile panemisega, autoritaarsusvastatusega. Võiks isegi öelda, et Mitnick’i tegevus Sun Microsystemsi, Nokia ja Motorola lähtekoodi varastas, ei erinenud tema tegevus kuigivõrd nende omast, kes Altair BASIC koodi omavahel levitasid (isegi enne selle turule jõudmist) ning kohati seda isegi edasi müüsid. Just nende käest on B. Gates oma pöördumise lõpus postkasti palunud saata saamata jäänud tulu. Muidugi ei tasu arvata, et ma õigustan Mitnick’i tegevust: arvutiandmetesse sekkumine, arvutisüsteemi toimimise takistamine, terminalseadme identifitseerimisvahendi ebaseaduslik kõrvaldamine ja muutmine ning arvutikelmused peaksid olema karistatud ning teiste intellektuaalse omandi või vara vastu suunatud ründeid ei saa õigustada, küll aga on mu väide, et “häkkerit” ja “kräkkerit” motiveerivad osaliselt samad jõud. Lihtsalt ajad olid muutunud. 

Ajalugu läks terminoloogia osas muidugi natukene teist teed, kui Raymond lahti kirjutas. Meedia võttis mõlema grupi puhul omaks üldise nimetuse häkker ning 90ndate keskpaigas toimuvate arvutiturvalisuse konverentside kaudu läksid laialdasse käibesse kolm “kräkkerite” kategooriat: valge, must ja hall kübar. 


Kõige üllatuslikumana esseega uuesti tutvudes tundus asjaolu, et Raymond on täielikult välja jätnud riistvaralise poole. Ta ei ole andnud soovitusi selgeks teha elektroonika põhialuseid ning on üsnagi tarkvarakeskne. Ainuke mainimine elektroonika poole pealt on Boole’i algebra. Samuti oli üllatuslik väide, et programmeerimine kasutab vähe formaalset matemaatikat. Selle väitega ei oleks mina nõus. Enamus matemaatikast on programmeerimiskeelte ehitusse ära peidetud ning sisse ehitatud meetodite ja funktsioonide välja kutsumine lihtsalt loob ettekujutuse, et matemaatikat ei kasutata. Matemaatika läbinähtavus sõltub ka sellest, millises programmeerimise paradigmas tegutsetakse. Näiteks kui Taltechis õpitakse Java algkursusel keelt eelkõige läbi objekt-orienteerituse, õpetatakse Java algkursust Itaalias kategooria teooria põhjal (Category Theory, vt nt 6, 7).


Essees esitatud nõuanded programmeerimiskeelte õppimise osas on mõistlikud. Huvitav on jälgida, et Ameerika kultuuriruumis on C jätkuvalt kõrgemal positsioonil kui Java.  Oleks huvitav teada, milline on olnud näiteks Taltechi kaalutlus õpetada Javat enne C-d. Erinevate OS-ide tundmine, mõne Unixi süsteemi proovimine on samuti mõistlik sest enamik serveritest töötab Unixi või Linuxi peal. Küll aga ei oleks ma nii kriitiline, et  soovitaks kohe  Windowsi puhul “format c” teha. Linuxi/Unixite eelistamine ei tähenda seda, et häkker ei peaks teadma mis on Windowsi puhul WSUS, kuidas kasutada tööriistu nagu DISM või USMGR. Katkise ja vigasid täis OS-i puhul on ka mida õppida.




Kasutatud allikad:


  1. https://en.wikipedia.org/wiki/File:Bill_Gates_Letter_to_Hobbyists_ocr.pdf
  2. https://web.archive.org/web/20141227091722/http://archive.computerhistory.org/resources/access/text/2012/10/102702231-05-01-acc.pdf
  3. https://gs.statcounter.com/os-market-share/desktop/worldwide
  4. https://www.pbs.org/wgbh/pages/frontline/shows/hackers/whoare/testimony.html
  5. Levy, S: Hackers. Penguin, 1984
  6. https://en.wikipedia.org/wiki/Category_theory
  7. https://reperiendi.wordpress.com/2007/11/03/category-theory-for-the-java-programmer/







 


Comments

Popular posts from this blog

Tarkvara arendus- ja ärimudel: Linuxi kernel & Adobe Creative Cloud

Kasutatavus ("usability") veebis

Rick Falkvinge ja Christian Engströmi autoriõiguse muudatusettepanekud 2012.