21 Sep 2008

Eneseteadlikkusest ja vabast tahtest 2008. aasta Septembri seisuga

Antud artikli eesmärk on tutvustada ühte hüpoteesi, milleni
ma jõudsin 2008. aasta Septembris vaadates Interneti vahendusel
John Searle'i poolt peetud loengut ja Hod Lipson'i poolt
peetud ettekannet.

Lühidalt öeldes on minupoolne definitsioon selle loo kirjutamise hetkel järgmine: X on "eneseteadlik", kui ta
loob ise X tegevuse tulemuste hindamise funktsiooni, mille väärtus kajastab tulemuse kasulikkust X-le.

Näiteks Hr. Hod Lipson'i poolt ettekandes demonstreeritud robot
ei kvalifitseeru minu poolt toodud definitsiooni kohaselt
eneseteadlikuks, sest tulemuse hindamise funktsioon (mida rohkem
robot edasi liigub, seda suurem hinne on) oli arendajate
poolt ette antud.

Muud mõttekäigud, mis tollest hüpoteesist selle tõele vastavuse
korral järelduvad, jätan igaühe enda teha, aga et seda järelduste
tegemist tiba suunata, kohe ennetavalt mõnedele järeldustele
oponeerida, käin välja järgmised väited:

  • Enesetappu sooritavad inimesed on eneseteadlikud.
  • Inimesed saavad lähtuda vaid enda teadmistest. Juhendajad ja õpetajad saavad vaid välja käia ideid, millest inimene siis ise valib, mille kasulikkuse üle inimene, õppija, ise otsustab.
  • Inimesel Y ei ole võimalik täita teise inimese, Z, käsku ilma, et ta lähtuks vähemalt mingil määral oma teadmistest. Vastupidisel juhtumil peaks inimene Z absoluutselt kõik detailselt ära tegema, mistõttu inimese Z poolne käsu andmine muutub mõttetuks, sest Z tuleb tolle käsu täitmise aitamiseks teha ära absoluutselt kõik need samad tegevused, mis tal tuleb ära teha siis, mil ta inimese Y'ga üldse tegemist ei tee.
Minu viimasest abi-väitest, muideks, järeldub, kuidas tellijana või kliendina saada tellimuse täitjalt võimalikult head tulemust: ühtegi sellist asja, milles tellimuse täitja oskuslikum, kogenum, on, ei tohi talle ette dikteerida, sõltumata sellest, et ollakse kliendina kuningas. (No, seda välja öeldes riskisin nüüd küll oma nahaga, aga ma ei ütle miks. :-)

18 Jun 2008

Korporatiivsete tulemüüride toimivusest

Selle artikli eesmärk on tõestada väide, et kui korporatiivse tulemüüri taga olev kohtvõrgu arvuti ARK saab läbi tulemüüri arvuti ART alla tõmmata ARK poolt valitud HTML-lehekülgi ARK poolt valitud serverarvutilt ARS, siis vähemalt ühel juhtumil ei ole tulemüüril ART võimalik kohtvõrgu arvutit ARK takistada info üleslaadimisel.


Tõestus:


Olgu ARK'lt ARS'ile saadetava paketi suurus üks bitt ning olgu iga pakett tähistatud unikaalse järjenumbriga K. Kuna ART ei takista ARK'l serverilt ARS lehekülgi alla laadimast, sõltumata lehekülje HTML-faili nimest, siis saab ARK küsida serverilt lehekügi, mille nimetus on kujul a_K_M.html, kus K on paketi järjenumber ja M on 1, juhul kui ARK saadab ARS'ile biti, mille väärtus on 1, ning 0, kui ARK saadab ARS'ile biti, mille väärtus on 0. Kuna ARS saab logida, milliseid faile talt on küsitud, siis saab ta oma logifailist kätte bitijada, mille ARK talle saatis.


MOTT.


Mõtte edasiarendus:

Kuna ART edastab ARK poolt ARS'ilt küsitud leheküljed ARK'le, siis on ühendus ARK ja ARS vahel mõlemasuunaline.

Lihtsamal juhul saab seda ühendust alustada vaid ARK, kuid viis, kuidas cron-i-sarnase programmi abil sellest kitsendusest enam-vähem üle saab, on kirjeldatud all pool.

Kui kahe arvuti vahel on olemas mõlemasuunaline võrguühendus, siis ülejäänu on vaid kummagi arvuti peal jooksvate rakenduste kirjutajate fantaasia küsimus.

Taustinfo:

Ma ei ole selle mõtte originaalautor ja, kes veel pole ära tabanud, siis ülalpool olevat asjaolu saab kasutada korporatiivsetesse võrkudesse paigutatud tagauste tööpõhimõttena. Serverisse ARS saab paigaldada vastava dünaamilise veebi tarkvara, näiteks Java servleti, ning kui on piisav füüsiline juurdepääs kohtvõrgu arvutile ARK, näiteks nii, nagu on ühel tavalisel töötajal (ja võibolla ka korporatiivse ja mõne välise, näiteks kodu või hotelli, arvutivõrgu vahet füüsiliselt käivasse läpakasse väljaspool korporatiivseid ruume installitud tagaukse omanikul), siis osutubki korporatiivne tulemüür mõlemat pidi läbitavaks ehk kaotab info salajas hoidmise kontekstis oma mõtte täielikult.

Toimuva, vähemalt osaliseks, logimiseks tulemüür siiski sobib, sest võrguliikluse mahtu saab ta mingil määral, osadel tingimustel, mõõta ka siis, kui kasutatakse steganograafiat.

Näidisrakendus:

Linuxi kasutaja kirjutab oma Crontab'i, et iga 5 minuti järel tõmmatakse tööle skript S1. S1 kasutab programmi wget serverist HTML-lehekülgede allatõmbamiseks, kontrollib allatõmmatud HTML-leheküljel oleva teksti signatuuri ning kui see klapib, siis tõmbab selle teksti mingi skriptina tööle, näiteks BASH skriptina, suunates skripti väljundi tekstifaili, signeerides tolle tekstifaili ning saates tolle tekstifaili sisu HTML-lehekülje blanketi abil serverile tagasi.

Loomulikult võib, et mitte öelda, on soovitatav, kasutada krüptimist, sest lihtsamal juhul võib igaüks veebiserverilt sinna üles laetu alla tõmmata ja seda vaadata.

Teine osapool, see, mille taga kasutaja istub, näiteks kräkkeri arvutis jooksev skript S2, kontrollib aeg-ajalt, kas vastus on serverile laekunud. Kui vastus on serverile jõudnud, tõmbab S2 selle serverilt kräkkeri arvutisse alla, kontrollib signatuuri ja signatuuri klappimisel kuvab vastuse ekraanil.

Ongi terminalisessioon olemas --- läbi, väidetavalt, ideaalselt ühesuunalist liiklust võimaldava korporatiivse tulemüüri...

Lihtrahvalik, märksa lihtsustatud, selgitus:

Oletame, et inimese A on käes lõngakera, mille ots on inimese B käes. Kui inimene A lõnga tagasi ei keri, siis inimene B saab lõnga inimese A käest vaid ära tõmmata ehk lõng liigub vaid ühes suunas: inimese A käest inimese B kätte. Kuigi inimene B ei saa inimesele A lõnga anda, on inimesel B võimalik inimesele A lõnga tõmbamise ajastamise abil morse koodis sõnum saata, mis on aga juba oma olemuselt info edastamine. Lõng on nende andmete analoog, mis liiguvad korporatiivses võrgus oleva arvuti poolt tellituna Internetist korporatiivsesse võrku sisse, näiteks Neti otsimootori serverist kohtvõrgu arvuti ekraanile.

Natukene PR'i ehk avalike suhete korraldamist:

Oma naha säästmise huvides ütlen ka otse välja, et ma pean siiski oma tööandja poolt ette kirjutatud, ettevõtte sisesest, arvutivõrgu kasutamise reeglistikust kinni, siin artiklis kirjeldatud tagauksi oma, ega töökaaslaste, arvutitesse ei pane, jne.

Samas, aususe huvides ka mainin, et antud artikkel oli paljuski ajendatud sellest, et ühe mu tööandja IT-osakonna üks tubli inimene raius nagu rauda, et nemad teevad oma tööd hästi ja nende poolt hallatavast tulemüürist ikka väljastpoolt ilma VPN'ita ükski töötaja firma kontori võrku sisse ei saa. Lubasin, et IT-osakonna poolt loa saamisel ja nendega koostöös tõestan neile vastupidist, kui vastavate skriptide kirjutamiseks aega saan.

Seega, selle artikli korral on tegu väikest viisi omamoodi semuliku nügimise ning kaikavedamisega. :-D. Elame-näeme, kas ma selle demo ka teoks teen, aga seda artiklit siin kirjutades on mõttes üks Linuxi konsooli sessioon. Nad lubasid selleks mulle oma tulemüüri taha ajutiselt ühe Linuxi masina üles panna. :-D

Kuigi mulle küll mitmed Hr. Rein Langi ettepanekud meeldivad, välja arvatud Delfi Eelnõu, siis arvan, et igaks juhuks tuleb siiski ära mainida, et Hr. Rein Langil ei ole mõtet antud artikli peale ventiili-eelnõud (mis see tulemüür siis traditsioonilise ettekujutuse järgi muud ikka on, kui vaid andmete ventiil) algatada, sest minusugune algaja ei ole turvaküsimustes praktiliselt millegiga kursis.

06.2008 seisuga tean üldrahvalikest asjadest vaid seda, et kui ID-kaarti saadetakse signeerimiseks dokument läbi musta kasti, näiteks läbi kontrollimatult keerulise süsteemi, milleks minu meelest kvalifitseerub ka Linux, sõltumata tema avatud koodist, siis ei või iial kindel olla, millisele dokumendile tegelikult allkiri antakse või kui mitu ja millele too must kast tegelikult otsustab ID-kaardilt allkirja küsida, eriti kui ID-kaardi PIN-kood ka läbi tema, s.t. läbi Windowsi või Linuxi arvuti, saadetakse.

Kui arvutist ei suudeta igasugu pahavara, näiteks usse ja viiruseid, ära hoida, siis miks peaks suudetama rohkem kontrollida seda, mida nood viirused seal arvutis signeerimistarkvaraga teevad?