56
L L i i B B R R E E ! !

LiBRE 33 Lat

  • Upload
    -

  • View
    15

  • Download
    4

Embed Size (px)

DESCRIPTION

часопис за слободни софтвер

Citation preview

Page 1: LiBRE 33 Lat

1

Broj 33

Izgubljeni heroji bdquoBlečli parkardquo

Februar 2015 Broj 33

Creative Commons Autorstvo-Nekomerci ja lno-Del iti pod istim uslovima

J O Š I Z D V A J A M O

bgfx - Cross - p la tform rendering libra ryTo su samo meta pod a c i

LLiiBBRREEČasopis o slobodnom softveru

2

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Primeti l i ste da je većina stranih reči u prethodnom broju časopisa pisanapri lagođeno Odluči l i smo da počnemo sa transkripci jom Odluci jeprethodi lo razmatranje o tome da l i je transkripci ja korisna i moguća ikako bi naši čitaoci reagoval i

U našem jeziku ima mnogo reči stranog porekla Mi smo ih vremenomprihvati l i i pri lagodi l i ih Kako vreme protiče stičemo utisak da su pojedinereči oduvek deo našeg jezika Sledeće generaci je ne moraju imati svest otome da je neka reč stranog porekla Primećujete da strana rečprihvatanjem postaje reč stranog porekla a možemo ih sretati jednakočesto kao domaće reči Prihvatanje reči - šta se pod tim podrazumevaNajpre se reč ustal i u narodu i pri lagodi se našem izgovoru Dodel ju jemojoj rod broj i padež Pišemo je našim pismom Da l i se transkripci jom rečudal java od izvornog značenja Odgovor je odričan Ajnštajn (nemEinstein) je poznati fizičar Lavoazje (fr Lavoisier) je hemičar a svima sunam poznate Ezopove basne (grč Αἴσωπος mdash Aisōpos) Sastavl jači našihudžbenika oduvek su vrši l i transkripci ju stranih reči Podrazumeva se da sumakar u fusnoti navedeni značenje i izvorna grafi ja Transkripci ja jesastavni deo našeg jezika

S druge strane protivnici transkripci je su mišl jenja da je najbitni je optičkoprepoznavanje stranih reči a da bi transkripci ja mogla da zbuni čitaoca usmislu da ne zna o čemu se radi iako se rani je susretao s istim pojmom al iu izvorno napisanom obl iku Da je mogućnost zbunj ivanja mala ukazujevišedeceni jska praksa u našoj naučnoj l i teraturi da je strana reč kod prvogspominjanja napisana izvornim pismom Transkripci ja ni je pukopreslovl javanje s jednog pisma na drugi već podrazumeva adekvatno

Transkripcija

Reč urednika

3

Broj 33

prenošenje zvukova i nj ihovo zapisivanje

LiBRE je strane reči do 32 broja časopisa čak i u tekstovima na ćiri l ici pisao izvornim pismom Masivno upl itanje latinice u ćiri l icu je nepraktičnoa takav tekst je nepregledan Transkribovan obl ik reči nam pokazuje kakose one čitaju te nam otklanja nedoumice Dobar primer je ime poznatoggrafičkog okruženja Mate Reč potiče iz španskog jezika te se čita Mate ane Mejt Mate je bi l jka koja raste u Južnoj Americi od koje se spravl ja čaj LiBRE će slediti Pravopis i preporuke naših poznatih fi lologa te će većinuustal jenih reči pisati u transkribovanom obl iku Kod prvog pisanja reči uzagradi će se navesti izvorni obl ik da bi se čitaocu omogući la dal japretraga interneta o pojmu Kad bi transkripci ja bitno otežalaprepoznavanje nekog sadržaja (kao naprimer kod akronima) takve rečipisaćemo nadal je u izvornom obl iku uz povremeno pisanje preporuke kakose reč čita Maj-es-kju-el bi bi lo nepregledno i isuviše dugačko stogapišemo MySQL Isto važi za manje poznate nazive programa i za komandeunutar programa

Od izlaska prošlog broja nismo dobi l i ni jednu kritiku na račun transkripci jeTo bismo mogl i da protumačimo kao znak da čitaoci nemaju zamerku uvezi sa transkripci jom Dobi l i smo odgovore na pitanja postavl jena u Rečiurednika iz prethodnog broja Ovom pri l ikom vam se zahval ju jemo naodgovorima Svi vaši predlozi su dobrodošl i i razmatraju se na redovnimsastancima I dal je očekujemo vaše kritike i predloge koje nam možeteposlati na već poznatu adresu elektronske pošte l ibre [at] lugons [dot] org

Do sledećeg broja

LiBRE tim

Reč urednika

4

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Vesti str 6

Predstavljamobgfx - Cross-platform rendering library str 9rEFInd - Boot managment str 14

Kako da Uvod u programski jezik C (9 deo) str 18

OslobađanjeU potrazi za idealnom distribuci jomSoci ja lni kriteri jumi za izboridealne distribuci je (6 deo) str 26

Slobodni profesionalacHibernate ORM (2 deo) str 31

Internet mreže i komunikacijeTo su samo metapodaci str 36Izgubl jeni heroj i bdquoBlečl i parkaldquo str 40

Sam svoj majstorLaTeX prezentaci ja Beamer (4 deo) str 45

HardverBagleBone Black Rev C Vodič od prvog danaBeagleBone Black kao Tor relej (3 deo) str 51

Moć slobodnogsoftvera

Sadržaj

Broj 33Periodika izlaženja mesečnik

Izvršni urednik Stefan NožinićGlavni lektorAleksandar Božinović

LekturaJelena Munćan Saška SpišjakMilena Beran Milana VojnovićAdmir Halilkanović

Grafička obradaDejan Maglov Ivan Radeljić

Dizajn White Circle Creative Team

5

Broj 33

LiBRE prijatelji

Broj 33Periodika izlaženja mesečnik

Izvršni urednik Stefan NožinićGlavni lektorAleksandar Božinović

LekturaJelena Munćan Saška SpišjakMilena Beran Milana VojnovićAdmir Halilkanović

Grafička obradaDejan Maglov Ivan Radeljić

Dizajn White Circle Creative Team

Autori u ovom broju

Ostali saradnici u ovom brojuMarko Novaković Mihajlo Bogdanović

Počasni članovi redakcijeŽeljko Popivoda Željko ŠarićVladimir PopadićAleksandar Stanisavljević

KontaktIRC floss-magazin na ircfreenodenet

E-pošta librelugonsorg

Nenad MarjanovićNikola HardiKriptopank

Dejan ČugaljBranimir Karadžić

6

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

21 januar 2015

Kanonikal pokrenuo verzijuUbuntu Kora za Internet stvariKanonikal kompani ja zadužena za razvoj UbuntuLinuks distribuci je pokrenula je svoju verzi juUbuntu Kora (Core) za Internet stvari (Internet ofThings)

Koristan l ink http tcotN3VmZe5PK

26 januar 2015

Masovno nadgledanje pretiljudskim pravimaU evropskom izveštaju masovno špi juniranje pretidigitalnoj sigurnosti i l judskim pravima

Koristan l ink http tco9gcrmXw44q

27 januar 2015

Jutjub koristi HTML5 kaopodrazumevani načinreprodukcijeJutjub je zamenio Fleš tehnologi ju novi jomotvoreni jom i napredni jom tehnologi jom - HTML5koja će se koristiti kao podrazumevani načinpuštanja video sadržaja

Koristan l ink http tcozBpJh8Op6x

Vesti

7

Broj 33

28 januar 2015

GHOST - bezbednosni problemGHOST - novi bezbednosni problem u GNU-ovoj Cbibl ioteci koj i dovodi u opasnost sve apl ikaci jekoje koriste funkci je gethostbyname i gethost-byname2 i omogućava udal jenom napadaču dadobi je dozvole koje ima korisnik koj i izvršava tuapl ikaci ju

Koristan l ink http tcoGDYKsH2nOo

1 februar 2015

Pajrat Bej se vratioNajpopularni j i torent sajt Pajrat Bej (The PirateBay) se ponovo vratio posle dvomesečnogperioda kada je bio nedostupan

Koristan l ink http tcorSAPCVXWJi

2 februar 2015

Rasberi-Paj 2 je izašaoDostupan je u prodaj i Rasberi-Paj 2 (Raspberry PI2) sa 4 procesorska jezgra

Koristan l ink http tcoRGlOdoeioc

Vesti

8

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

3 februar 2015

Američka vojska otvara svojprogram za detekciju napadaAmerička vojska je odluči la da svoj program za de-tekci ju napada postavi na Githab i time omogućicelom svetu da koriste softver koj i su oni koristi l i zadetekci ju napada na mrežu ministarstva odbraneOni ovim potezom očekuju povratnu informaci ju odl judi koj i ne rade u vladi i nadaju se unapređenjusvog programa

Koristan l ink http tcov3PYlKF2sz

6 februar 2015

GPG u opasnostiVerner Koh (Werner Koch) programer koj i jezadužen za razvoj GPG-a (Dži-Pi-Dži engl GNUPrivacy Guard) softvera koj i svi koristimo zaenkripci ju kako naše elektronske pošte tako i ostal ihbitnih podataka polako ostaje bez novčanihsredstava Pozivaju se svi zainteresovani i oni koj i suu mogućnosti da pošal ju donaci ju u vidu novca

Koristan l ink http tcojGac5emwPX

9 februar 2015

Arduino razvojno okruženje -novo izdanjeIzašlo je novo razvojno okruženje za Arduino uverzi j i 1 6

Koristan l ink http tco4A0pFcIsVf

Vesti

9

Broj 33

Autor Branimir Karadžić

bgfx je rendering bibl ioteka otvorenog koda sa podrškom za više razl ičitih grafičkihAPI-ja 1 (eng Application Programming Interface) i operativnih sistema 2 Bibl iotekasluži za jednostavni j i pristup grafici i razvoj igara na više platformi Najvećiproblem sa kompjuterskom grafikom je što postoj i više razl ičitih API-ja koj i kada sekoriste direktno onemogućavaju portovanje igara na druge platforme Praveći igrukoja pristupa samo bgfx bibl ioteci a ne direktno API-u autor igre omogućava sebida tu igru na jednostavan način može prebaciti na bi lo koj i podržan operativnisistem odnosno platformu

Predstavljamo

bgfx - Cross-platform renderinglibrary

10

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

U početku bgfx je bio samo hobi projekat i zato ima nemaštovito ime Bi la je tosamo jedna od mnogih bibl ioteka koje sam napravio za pravl jenje igara Kada samradio na jednoj igri postojala je potreba da se igra prebaci sa starog DX9 (engDirectX 9) renderinga na OpenGL (engl Open-dži-el ) pa sam tom pri l ikom izvukaodeo moje hobi bibl ioteke za renderovanje i zapakovao je kao cel inu Posle uspešneprimene ove bibl ioteke u moj im projektima odlučio sam da je objavim kao projekatotvorenog koda na Githabu (eng Github) pod l icencom BSD 2-clause Po mommišl jenju ovaj deo renderinga je trebalo već odavno da bude rešen problem kao ida bude moguće da se igre bez veće muke izdaju na bi lo kojoj platformi po žel j iautora Namenjena je prevashodno manj im autorima koj i žele da imaju potpunukontrolu nad svoj im kodom bez obzira na platformu na kojoj žele da objave igruKod ovakvih komerci ja lnih proizvoda uvek postoje neka ograničenja a ako firmeizgube interes za proizvodom mogu ostaviti autore na cedi lu bez podrške iodržavanja Sa druge strane projekti otvorenog koda omogućuju saradnju autora iunapređenje funkcionalnosti projekta na zadovol jstvo svih

Upotrebom bgfx bibl ioteke korisnik može da zanemari konkretnu implementaci jurazl ičitih tehnologi ja kao što su OpenGL OpenGL ES i Direct3D bez kompromisa saperformansama Ova bibl ioteka ni je tanka apstrakci ja i l i emulator nekogpostojećeg API-ja tipa Guglovog Engl (eng ANGLE) projekta koj i emul ira OpenGL

Predstavljamo

11

Broj 33

ES preko Direct3D-a i l i Valvov TuDži-El (eng ToGL) koj i emul ira Direct3D 9 prekoOpenGL-a nego zaseban API višeg nivoa Iako je u prošlosti bi lo sl ičnih projekatasvi oni su uglavnom imal i pretenzi ju da budu endžin (engine) i l i frejmvork koj i bitvorci igara koristi l i kao takav Takav pristup donosi dosta kompl ikaci ja i veoma jeteško takav projekat integrisati sa postojećim kodom Iz ovog razloga bgfx projekatnema pretenzi je da bude ceo endžin i l i frejmvork nego samo bibl ioteka koju svakomože lako da integriše u sopstveni projekat

bgfx bibl ioteka se trenutno koristi u nekol iko komerci ja lnih igara al i ima i dostainteresovanja za projekat kao osnove za pravl jenje korisničkih apl ikaci ja pa čak ialata za programere

Na projektu je do sada radi lo oko deset l judi Uglavnom su dodaval i podršku zanove platforme primere i l i su povezival i bibl ioteku sa drugim jezicima Što sebuduće saradnje na ovom projektu tiče sve je dobrodošlo čak i sȃmo korišćenjebibl ioteke a zahtevi za uvođenje novih mogućnosti unapređuju samu bibl ioteku

bgfx

12

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Predstavljamo

13

Broj 33

1 Podržava grafičke API-je

bull Direct3D 9bull Direct3D 11bull OpenGL 2 1bull OpenGL 3 1+bull OpenGL ES 2bull OpenGL ES 3 1bull WebGL 1 0

2 Podržava platforme

bull Android (14+ ARM x86 MIPS)bull asm jsEmscripten (1250)bull iOSbull Linuks (x86 x86_64)bull Nejtive klajent (Native Client PPAPI37+ ARM x86 x86_64 PNaCl)

bull OS Iks (OSX 109)bull Rasberi-paj (RaspberryPi - ARM)bull Vindouz (Iks-pe Vista 7 8 10)bull Vin-ar-ti (WinRT WinPhone 80+ )

bgfx

14

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Autor Stefan Nožinić

UvodrEFInd je softverska apl ikaci ja za EFI (Extensible Firmware Interface) sisteme kojaomogućava izbor više operativnih sistema na jednostavan način Ovo je samoupravnik buta (boot) i u ovom broju vam predstavl jamo o kakvom projektu je reč ikako se može primeniti

Šta je (U)EFIPre nego što predstavimo sam projekat trebalo bi prvo da skrenemo pažnju idetal jni je da predstavimo problematiku EFI je nastao kao zamena za dosadašnj iBIOS (Basic InputOutput System) i razvi la ga je kompani ja Intel Ovaj pristup jekasni je zamenjen UEFI standardom EFI tehnologi ja ima prednost u slučajevimakao što su

bull Pokretanje sistema na diskovima preko 2TB memori je korišćenjem GPTtehnologi je

bull Nezavisnost od specifične arhitekture procesorabull Modularan dizajnbull Dobro okruženje pre učitavanja operativnog sistema što podrazumeva i mrežnupodršku

Tehnologi ja omogućava upotrebu 32-bitnih i 64-bitnih adresa na procesorima koj ito podržavaju Rani je BIOS tehnologi ja to ni je omogući la već se uvek koristi la 16-bitna implementaci ja iz istori jskih razloga

Predstavljamo

15

Broj 33

Particiona šemaEFI tehnologi ja ima drugači ju šemu partici ja Dok je stari pristup podržavao samoMBR (Master Boot Record) šemu nova tehnologi ja podržava GPT šemu kojaomogućava veći broj primarnih partici ja Sa starim pristupom taj broj bio jeograničen na četiri primarne partici je od koj ih je svaka morala da ima kapacitetmanj i od 2TB

AplikacijeUEFI podržava izradu apl ikaci ja koje bi se pokretale nezavisno od operativnogsistema Ove apl ikaci je se mogu naknadno instal irati Primer takvih apl ikaci ja supokretači (loader) operativnih sistema kao i upravnici butovanja

EFI sistemska particijaEFI podržava posebnu partici ju za smeštanje raznih potrebnih informaci ja kao štosu potrebni podaci za rukovanje računarom i specifične apl ikaci je Ova partici ja jenajčešće FAT32 sistem datoteka

rEFInd

16

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

But menadžer i but louder - ima razlikeOd popularizaci je GRUB upravnika mnogi korisnici su ostal i bez objašnjenja kakvaje razl ika između but loudera (boot loader) i but menadžera (boot manager) Ovose dešava jer GRUB pruža obe usluge u sklopu jednog programa pa se time teževidi razl ika između ova dva pojma But menadžer je upravnik pomoću kojeg jemoguće izabrati operativni sistem za pokretanje On ne zna ništa speci ja lno ooperativnom sistemu pa time ne zna ni kako da ga pokrene On samo zna datreba da pokrene but louder za taj sistem Kada je sistem izabran pokreće sespecifičan but louder za taj sistem koj i je zadužen za dal j i proces pokretanjakernela Za razl iku od GRUB upravnika rEFInd pruža samo usluge but menadžerašto u početku može zvučati poražavajuće za ovaj projekat Kada uzmemo u obzirda većina sistema danas ima but louder u sklopu kernela (ukl jučujući i Linuks odnovi j ih izdanja) ovaj problem je prevaziđen

Predstavljamo

17

Broj 33

InstalacijarEFInd postoj i kao deb i kao rpm paket al i postoj i i zapakovan kao zip arhivaZahval ju jući tome paket je moguće instal irati upotrebom dpkg komande nadistribuci jama baziranim na Debi janu kao i upotrebom rpm komande nadistribuci jama koje koriste taj način pakovanja paketa Za Ubuntu postoj i i PPArepozitori jum pa rEFInd može biti instal iran na sledeći način

sudo apt-add-repository pparodsmithrefindsudo apt-get updatesudo apt-get install refind

Nezavisno od toga koj i način od gore opisanih koristite rEFInd će automatski bitiprebačen na ESP i biti postavl jen kao podrazumevani upravnik

KonfiguracijarEFInd bi trebalo da vam pruži zadovol javajuću funkcionalnost bez dodatnekonfiguraci je posle instalacionog procesa On će automatski detektovati loudereoperativnih sistema korišćenjem pretrage po svim partici jama koje prepozna Uslučaju da ste napredni j i korisnik i da žel ite da modifikujete ponašanje rEFInda tomožete uraditi izmenom njegove konfiguracione datoteke Postoj i g lobalnakonfiguraci ja i konfiguraci ja za svaki sistem posebno Ovaj tekst bi postao previšedugačak kada bismo ulazi l i u detal je same konfiguraci je pa vam zatopreporučujemo ako imate potrebu za dodatnom konfiguraci jom da posetitedokumentaci ju projekta i l i ako imate neke nedoumice da kontaktirate s namapreko naše e-pošte

Za krajŽelel i bismo da ovaj tekst zakl jučimo ocenom da je ovaj projekat dosta zaniml j ivda pruža zadovol javajuću funkcionalnost i da omogućava korisnicima koj i koristeovaj sistem pokretanja lako pokretanje svoj ih operativnih sistema Još jednomžel imo da vam skrenemo pažnju da nam se obratite i ukažete ako smo nešto važnopropusti l i da pomenemo i l i ako nam se negde potkrala greška

Korisni l ink http wwwrodsbookscomrefind

rEFInd

18

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Autor Nikola Hardi

Opšte je poznato da su računari dobri u radu sa brojevima Međutim vremenom suse i potrebe korisnika i alati za programiranje računara razvi ja l i i rad sa drugači j imtipovima podataka je postao uobičajen i znatno jednostavni j i nego rani je Svi smoimal i pri l iku da radimo sa programima za obradu fotografi ja video materi ja la i l izvučnih zapisa Multimedi ja je ipak tema koja prevazi lazi jedan uvodni kurs o C-ual i do kraja ovog seri ja la ćemo se dotaći i tih tema Za početak osvrnućemo se narad sa tekstualnim podacima na C način

Stringovi na C načinDefinici ja tekstualnog podatka u sferi računarstva se uglavnom svodi na to da jetekst niz karaktera a karakteri su znakovni simbol i Iako imamo mogućnost daradimo sa tekstom i l i multimedi jom računari ipak razumeju samo brojeve pamoramo tako da im predstavimo i tekst Postoje razni standardi kako se pojedinikarakteri predstavl ja ju u memori j i računara između ostalog najpoznati j i su ASCIIEBCDIC UTF i td EBCDIC je standard koj i je prisutan u Eplovom (eng Apple) svetu iviše nema tol iko važnu ulogu ASCII je standard koj i je vrlo prisutan i danas UTF jenastao kao proširenje ASCII standarda javl ja se u više vari janti i uvodi podršku zapisma razl ičita od abecede (kinesko japansko ćiri l ica arapsko i mnoga druga)

Važno je napomenuti da je originalni ASCII standard propisivao 7 bitova za jedankarakter što je dalo prostora za 128 karaktera Među tim karakterima se nalazecifre mala i vel ika slova engleskog alfabeta i niz kontrolnih karaktera Kontrolnikarakteri su oznake za novi red prazno mesto tabulator upravl janje štampačima(vraćanje glave štampača na početak) rad sa terminal ima (alarm i l i obaveštenje

Kako da

Uvod u programski jezik CRad sa stringovima (9 deo)

19

Broj 33

da se nešto dogodi lo) ASCII standard je proširen na 8 bitova odnosno ceo jedanbajt i sada podržava 256 karaktera Potražite na internetu termin bdquoASCII tabelardquo dabiste stekl i uvid u to kako izgleda tzv tabela ASCII karaktera

Rad sa pojedinačnim znakovima ne obećava mnogo Postoj i realna potreba zaradom sa rečima rečenicama l ini jama teksta itd Podaci koj i se sastoje od više odjednog karaktera se u domaćoj l i teraturi nazivaju znakovnim niskama madaodomaćen je i naziv bdquostringrdquo koj i je i mnogo češće u upotrebi U programskomjeziku C se stringovi predstavl ja ju običnim nizovima karaktera (char niz[]) a krajteksta se označava NULL karakterom odnosno speci ja lnim znakom 0 či jabrojevna predstava je pogađate nula Ovakva predstava tekstualnih podatakanosi sa sobom i pojedine kompl ikaci je Gotovo svi savremeni jezici poznaju tipstringa dok su u C-u stringovi ipak samo obični nizovi

Da se podsetimo nizovi u C-u su zapravo pokazivači na deo u memori j i Kadapokušamo da pristupimo jednom elementu niza tada se vrši operaci jabdquodereferenciranjardquo sa zadatim odstupanjem Sledi nekol iko primera koj i i lustrujurad sa nizovima na primeru nizova karaktera

char niz1[] = zdravoniz1[0] = Z

char niz2[5]niz2[0] = 0niz2[1] = kniz2[2] = 0

Pri deklaraci j i niza 1 ni je zadata dužina zato što je u jednom izrazu zadata iinici ja l izaci ja niza koja glasi ldquozdravordquo Prevodi lac može sam da zakl juči kol ikomemori je je potrebno

U drugom primeru je kreiran niz karaktera dužine 5 Međutim popunjena su samoprva tri mesta Primećujete razl iku između prvog i trećeg elementa Prvi je cifra 0(uokviren je navodnicima) a treći je brojčana vrednost 0 koja označava krajstringa

Može se primetiti još jedna razl ika u data dva primera U prvom primeru sukorišćeni dvostruki navodnici dok su u drugom korišćeni jednostruki Razlog za to

Uvod u programski jezik C

20

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

je što se znakovni nizovi koj i su uokvireni dvostrukim navodnicima smatrajustringovima i podrazumevano im se dodaje bdquoterminatorrdquo odnosno znak NULL koj ioznačava kraj stringa Jednostruki navodnici se iskl jučivo koriste za predstavl janjepojedinačnih karaktera Ovo znači da zapisi ldquoardquo i a nisu jednaki Prvi zapis jedužine 2 jer ima i znak NULL koj im je završen

Ispisivanje i učitavanje stringovaPre nego što nastavimo dal je biće objašnjen jednostavan način za ispisivanje iučitavanje stringova pomoću standardnog ulazaizlaza Da se podsetimobibl ioteka za standardni ulazizlaz (ispis podataka u konzol i odnosno terminalu) jestdioh Ukol iko se koristi formatirani ispis potrebno je funkci jama printf() iscanf() proslediti format string koj i sadrži speci ja lan znak s čime je označenoda žel imo da ispišemo znakovni niz sve do NULL karaktera Drugi način jeupotrebom funkci ja puts() gets() i getline() iz bibl ioteke stringh Sledi primer

include ltstdiohgt include ltstringhgt int main()

char niz1[] = Zdravo svete

printf(sn niz1)

scanf(s niz1)puts(niz1)

return 0

Može se primetiti da je u slučaju funkci je printf() potrebno naglasiti speci ja lnimkontrolnim karakterom n da nakon ispisa treba preći u novi red Funkci ja puts() topodrazumevano radi

Za ove i sve druge funkci je dodatnu pomoć je moguće pronaći u Linuksovim manstranicama u odel jku 3 koj i je posvećen standardnim bibl iotekama Recimo mangetline sadrži detal jno uputstvo o funkci j i getline()

Kako da

21

Broj 33

Kopiranje stringovaKao što je u prethodnom odel jku napomenuto stringovi su u C-u samo običninizovi To znači da sledeći kod verovatno neće uraditi ono šta bi bi lo očekivano

niz1 = niz2

Ovime smo pokazivaču niz1 bdquorekl irdquo da pokazuje tamo gde i pokazivač niz2 Efektivno oni sad pokazuju na isti tekst međutim ako izmenimo niz1 to će seodraziti i na niz2 a važi i obrnuto Ovime smo dobi l i samo dva pokazivača na istideo memori je a uglavnom to ni je bio ci l j

Drugi način kako bismo sadržaj drugog niza mogl i da kopiramo u prvi niz je petl jakojom bismo kopiral i element po element Pošto je operaci ja kopiranja stringovavrlo često potrebna postoj i standardna bibl ioteka za rad sa stringovima koja sezove stringh a funkci ja za kopiranje stringova je strcpy()

strcpy(niz1 niz2)

Dati primer kopira sadržaj niza 2 u niz 1 Kopira se element po element sve dok seu nizu 2 ne naiđe na NULL karakter Ovakvo kopiranje (element po element) seinače u stranoj l i teraturi naziva i bdquodeep copyrdquo i vrlo često se sreće u radu sastrukturama podataka gde je potrebno obići celu strukturu podataka i svakielement kopirati a strukturu opet izgraditi u drugom delu memori je

Zaniml j ivo je što je kopiranje stringova moguće pojednostaviti ukol iko definišemonovi tip podatka kao strukturu koja sadrži niz karaktera i potom izvršimo kopiranjeOvo je trik koj i se uglavnom ne koristi u praksi i spomenut je samo kaozaniml j ivost

include ltstringhgt struct str char niz[50]

int main()

struct str s1struct str s2

Uvod u programski jezik C

22

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

strcpy(s1niz zdravo)s2 = s1

s2niz[0] = Z

puts(s1niz)puts(s2niz)

return 0

Kreirana je struktura str koja sadrži pol je niza karaktera pod nazivom niz Pozivomfunkci je strcpy() kopiramo string ldquozdravordquo u s1 čime smo bdquonapuni l irdquo sadržajobjekta s1 Potom je izvršena redovna dodela čime je sadržaj objekta s1 kopiran us2 Zatim je izmenjen samo prvi karakter objekta s2 i oba stringa su ispisanaPrimećujete da su kopirani svi znakovi a da je izmenjen samo drugi objekatZaniml j iv trik

Poređenje spajanje i pretraga stringovaDruga vrlo česta situaci ja je poređenje dva stringa Ukol iko bi poređenje bi loizvršeno upotrebom redovnog operatora za poređenje == tada bi u stvari bi lepoređene samo adrese na koje pokazuju pokazivači tih stringova jer da sepodsetimo stringovi su u C-u samo obični nizovi Ispravan način za poređenje dvastringa je pozivanjem funkci je strcmp() či ja je povratna vrednost 0 ukol iko su jojprosleđeni stringovi sa jednakim sadržajem

include ltstringhgt int main()

char niz1[] = zdravochar niz2[] = zdravo

if( strcmp(niz1 niz2) == 0)puts(Stringovi su jednaki)

elseputs(Stringovi nisu jednaki)

return 0

Kako da

23

Broj 33

Funkci ja strcmp() poredi svaki element prosleđenih nizova pojedinačno a dobraje vežba implementiranje nove funkci je strcmp() koja će unutar petl je da porediodgovarajuće elemente prosleđenih nizova i potom vratiti rezultat 0 ukol iko su svielementi jednaki Potrebno je pripaziti na situaci ju kada su stringovi razl ičitihdužina

U svetu računara spajanje dva sadržaja se zove konkatenaci ja Odatle i nazivfunkci je za spajanje dva stringa strcat() Važno je uveriti se da je string u koj i sedodaje sadržaj dovol jno vel ik da ga prihvati inače može da dođe do nežel jenogprepisivanja u memori j i uništavanja drugih podataka i neispravnog ponašanjaprograma

Pretraga unutar stringa se može obaviti funkci jom strstr() Ova funkci ja kaoparametre očekuje pokazivač na niz karaktera (string) u kojem je potrebno pronaćistring koj i je prosleđen kao drugi parametar Povratna vrednost je pokazivač nadeo memori je gde se žel jeni string prvi put pojavio

Sledi malo opširni j i primer koj i i lustruje spajanje pretragu i kopiranje stringova

include ltstringhgt int main()

char niz_a[50] = LiBRE je char niz_b[] = najbolji casopischar niz_c[] = e-magazin

strcat(niz_a niz_b)puts(niz_a)

char cilj = strstr(niz_a casopis)strcpy(cilj niz_c)

puts(niz_a)

return 0

Uvod u programski jezik C

24

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Pretvaranje tipova podataka u stringove ipretvaranje iz stringovaPretvaranje podataka iz jednog tipa u drugi i l i kastovanje (eng type casting) se zavećinu tipova vrši jednostavno pisanjem tipa u zagradama na primer (int)523 Stringovi su i po ovom pitanju drugači j i Postavl ja se pitanje šta pretvoriti ucelobrojni tip - da l i adresu na koju pokazuje pokazivač niza koj i predstavl ja stringPrvi element Šta ako taj string ni je broj Predstavićemo rešenje za konverzi jubrojeva u stringove i obrnuto

Ispis podataka na ekranu se takođe može smatrati konverzi jom Broj sa pokretnimzarezom je u memori j i prikazan na pomalo čudan način a pozivom funkci jeprintf() kada je kao format zadat f na ekranu ćemo dobiti razuml j iv niz znakovaSl ičan rezultat možemo dobiti funkci jom sprintf() a jedina razl ika u odnosu naprintf() je ta što sprintf() kao prvi argument očekuje pokazivač na string dok sudrugi (format string) i treći (argumenti koj i se povezuju sa formatnim stringom)sl ični kao kod funkci je printf()

Kod pretvaranja stringova u brojevne tipove može poslužiti funkci ja sscanf() kojase ponaša sl ično kao funkci ja scanf() s tim što je prvi argument adresa(pokazivač na string) koju žel imo da skeniramo u nadi da će se poklopiti saformalnim stringom koj i je drugi argument a rezultati će biti sačuvani u adresamakoje su prosleđene kao 3 4 i ostal i parametri Drugi način za pretvaranje stringovau celobrojne brojeve i brojeve sa pokretnim zarezom su funkci je atoi() i atof()

Funkci je koje koriste formatni string su česte u jeziku C i zaslužuju posebnu pažnjumeđutim to je priča za poseban članak U ovu klasu funkci ja spadaju recimo ifunkci je za rad sa datotekama

BezbednostRad sa stringovima može da bude izuzetno opasna stvar po pitanju bezbednostiprograma Ukol iko se niz karaktera ne završava NULL karakterom svašta može dapođe po zlu pri pozivu funkci ja kao što su strcpy() strcmp() i sl ične Cela klasatih funkci ja se oslanja na postojanje znaka koj i označava kraj stringa Kada stringni je propisno završen tada te funkci je mogu da zalutaju u deo memori je vanstringa i svašta može da pođe po zlu Ovakav tip napada se inače zoveprekoračenje bafera (eng buffer overflow) Preporučen način kako da izbegnete

Kako da

25

Broj 33

Pregled popularnosti GNULinuxBSDdistribuci ja za mesec februar

Distrowatch

Pad ltPorast gtIsti rejting =(Korišćeni podaci sa Distrovoča)

12345678910111213141516171819202122232425

MintUbuntuDebianopenSUSEelementaryMageiaFedoraManjaroCentOSLXLEArchBodhiAndroid x86Kal iPCLinuxOSPuppyRobol inuxLubuntuQ4OSBlack LabNetrunnerSimpl icityEvolveZorin4MLinux

2919gt1778gt1701gt1323gt1204gt1174gt1166gt1028lt1020gt965gt957gt907gt900lt760gt742lt732gt695gt670gt663gt655gt652gt629gt607gt583gt517=

takve nepri jatne situaci je pri radu sastringovima je da koristite verzi jefunkci ja koje su ograničenemaksimalnom dužinom stringa kaošto su strncpy() strncat() strncmp() i td Sve te funkci je kaotreći parametar zahtevaju broj koj iodređuje maksimalnu očekivanudužinu stringa Još jedna vrlo korisnafunkci ja je strlen() či j i zadatak je daodredi dužinu stringa Budite pažl j ivi ovo je prvo mesto gde se tražebezbednosni propusti u programimaNe verujte podacima koj i spol ja ulazeu vaš program a pogotovo kada je rečo stringovima

Uvod u programski jezik C

26

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Autor Dejan Maglov

Projekti slobodnog softvera obično počinju kao projekti pojedinca i l i male grupeprogramera a koj i rade na razvoju softvera či j i je ci l j da zadovol j i neke od nj ihovihl ičnih potreba Projekat će se smatrati uspešnim ukol iko se šira zajednicazainteresuje za njega nakon što prepozna korisnost softvera ne samo za pojedincekoj i su započel i projekat već i za širu zajednicu Kada je u pitanju slobodni softvervremenom je postala stalna praksa da se zajednica umeša u razvoj projekataDobri projekti sami privlače zajednicu l judi koj i su zainteresovani za nj ih i ona uvećini slučajeva preuzima na sebe testiranje pobol jšanje funkcionalnosti održavanje i tehničku podršku projekta

Zajednice slobodnog softvera mogu da se okupe oko projekta slobodnog softverapo teritori ja lnom principu i l i da nastanu kombinaci jom ovih principa

Primeri

bull LiBRE projekat okupl ja zajednicu oko projekta bez teritori ja lnog ograničenjabull LUGoNS (Linux User Group of Novi Sad) je zajednica korisnika Linuksa poteritori ja lnom principu bez obzira na konkretan projekat

bull Ubuntu-rs zajednica koja je kombinaci ja okupl janja zajednice oko konkretnogprojekta (Ubuntu) i teritori ja lnog principa koj i se ograničava na teritori ju Srbi je

Ova sinergi ja projekata i korisnika slobodnog softvera ima više prednosti i zakorisnike i za projekat Projekat se na ovaj način brže razvi ja dobi ja na

U potrazi za idealnom distribucijom

Socijalni kriterijumi za izbor idealnedistribucije (6 deo)

Oslobađanje

27

Broj 33

funkcionalnosti greške se brzo ispravl ja ju i td Korisnici dobi ja ju osećaj dapripadaju grupi druže se sa istomišl jenicima učestvuju u promoci j i kval itetnihpojedinaca itd

Dve najvažni je uloge lokalnih zajednica za GNULinuks distribuci je su

1 pružanje tehničke podrške i edukaci je na maternjem jeziku2 rad na lokal izaci j i i pri lagođavanje distribuci je lokalnim potrebama

Informaci ja da postoje lokalne zajednice slobodnog softvera je od naročitogznačaja za početnike i korisnike koj i nedovol jno dobro znaju strane jezike(naročito engleski jezik) Ako izuzmemo komerci ja lne projekte otvorenog koda(Red Het SUSE) ne postoje zvanične škole i kursevi za slobodni softver Zaedukaci ju početnika je uglavnom zadužena zajednica a jasno je da je učenje namaternjem jeziku uvek lakše nego na bi lo kom drugom stranom ma kol ikodobro ga poznajete

Forumi i viki stranice lokalnih zajednica su prave bibl ioteke u koj ima korisnicimogu da nađu većinu odgovora na svoja pitanja a za sva ostala tu su forumi iIRC kanal i zajednica na koj ima uvek ima nekoga i koj i imaju već gotova rešenjaza vel iki broj problema

U potrazi za idealnom distribucijom

28

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Lokalne zajednice kao kriterijum za izbor idealnedistribucijePočetnicima i korisnicima koj i ne vladaju dobro engleskim jezikom toplopreporučujemo da biraju GNULinuks distribuci je koje imaju aktivnu lokalnuzajednicu Ovladavanje novim operativnim sistemom je mnogo lakše ukol iko vambdquoleđa čuvardquo lokalna zajednica na koju se uvek možete osloniti

Već smo spomenul i da su popularni je GNULinuks distribuci je namenjenepočetnicima Slučaj je isti i sa lokalnim zajednicama okupl jenim oko nj ih Ovomeđutim ne znači da je kval itet usluga koje nude manje popularne lokalnezajednice okupl jene oko distribuci ja namenjenih napredni j im korisnicima loši j i Manje popularne distribuci je okupl ja ju manje l judi a l i zato oni poseduju većeznanje Iskustvo sa zajednicama okupl jenim oko slobodnog softvera je uglavnompozitivno i ukazuje na to da kval itet usluga koje one nude korisniku ni je uslovl jenpopularnošću i masovnošću zajednice nego iskl jučivo njenom (ne)aktivnošću

U svakom slučaju dosadašnj i saveti za izbor idealne distribuci je važe i dal jeSoci ja lni aspekt slobodnog softvera je samo dodatni faktor koj i vam može pomoćipri donošenju odluke kada se dvoumite između nekol iko mogućih rešenja

Još uvek ne postoj i na jednom mestu potpuni i ažurirani spisak svih aktivnihsrpskih zajednica Nešto najbl iže tome može da se nađe na adresihttps pulsslobodewordpresscom Za informaci je o nekim drugim lokalnimzajednicama koje možda postoje al i nisu na ovom spisku moraćete sami dapretražite internet

Lokalizacija kao kriterijum za izborZa lokal izaci ju GNULinuks distribuci ja i GNU programa odgovorni su pojedinci ilokalne zajednice Sasvim sol idnu srpsku lokal izaci ju mogu imati i projekti koj iuopšte nemaju svoju lokalnu zajednicu a isto tako lošu lokal izaci ju mogu imati iprojekti sa dobrom lokalnom zajednicom Sve je stvar prioriteta zajednica iaktivnosti pojedinaca

Pravu i kontrol isanu lokal izaci ju može imati samo lokalni projekat Ovakvihprojekata u Srbi j i ima malo i teško se probi ja ju čak i u lokalu u konkurenci j isvetskih projekata Istina je da mnoge veće GNULinuks distribuci je imaju srpskulokal izaci

Oslobađanje

29

Broj 33

ju u ponudi pa se možda sl ični lokalni projekti koj i su usmereni samo na striktnulokal izaci ju smatraju nepotrebnima Uzvodna lokal izaci ja u slučaju Srbi je vrlo čestobude veoma loše čak nakaradno sprovedena Jedna polovina programa jelokal izovana srpskom ćiri l icom a druga latinicom Ako postoj i još delova sistemakoj i uopšte ni je lokal izovan onda se pojavl ju ju i delovi programa koj i su naengleskom Zato ćemo se vratiti na prvu rečenicu ovog pasusa i ponovo utvrditi dasamo lokalni projekat može potpuno kontrol isati pravu srpsku lokal izaci ju

U Srbi j i za sada imamo dva aktivna projekta GNULinuks distribuci je ndash TriOS(http triosrs) i Serbian (http wwwdebian-srbi ja iz rspserbianhtml) Obaprojekta su mlada i imaju svoj ih prednosti i mana Kome treba lokal izovanoperativni sistem može da proba jedan od ova dva projekta

U potrazi za idealnom distribucijom

30

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Iako ove dve domaće distribuci je nisu baš naj idealni je interesantno je probati ih iuporediti sa drugim distribuci jama

Za kraj serijalaNamera nam je bi la da kroz ovaj seri ja l o kriteri jumima pri izboru idealnedistribuci je definišemo većinu kriteri juma pri izboru i pokažemo zašto je teškoodgovoriti na jednostavno pitanje bdquoKoju mi distribuci ju preporučujeterdquo

Ni na samom kraju nismo dal i konkretan odgovor na pitanje koja je idealnaGNULinuks distribuci ja Suviše je subjektivnih ocena da bi se mogao datikonkretan odgovor Smatramo da je jako teško napisati neki algoritam izbora pokriteri jumima koje smo identifikoval i i definisal i a možda je čak i nemoguće poštose izlazi stalno menjaju Izlazi iz tog algoritma su GNULinuks distribuci je koj ih izdana u dan ima sve više a i one stare se stalno menjaju

Sam seri ja l bdquoU potrazi za idealnom distribuci jomrdquo neće biti završen samo zato štose više neće baviti kriteri jumima pri izboru nego će pokušati da predstavl jaGNULinuks distribuci je koje su po nečemu bdquoidealnerdquo

Oslobađanje

31

Broj 33

ORM

Autor Dejan Čugal j

Object relation mapping (ORM)

ORM (eng Object RelationMapping) je način postizanja traj-nosti (eng persistence) objekataunutar relacionih baza podatakaModel deluje kao posrednik nalogičkom delu apl ikaci je Automat-ski presl ikava podatke iz objekata ubazu i nazad na zahtev apl ikaci jeDa bismo objasni l i kako ovo sveradi moramo da vam predstavimoORM frejmvork (eng framework)programa otvorenog koda -Hajbernejt (eng Hibernate -http hibernateorgorm)

Šta je ORMUkratko ORM je automatizovano transparentno presl ikavanje objekatakorišćenjem metapodataka koj i opisuju mapiranje veze između objekta i baze

ORM (2 deo)

Slobodni profesionalac

32

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

podataka u apl ikaci jama koje su napisane u objektno ori jentisanim programskimjezicima Apl ikaci ja komunicira sa ORM-om preko njegovog vlastitog API-ja (engapplication programming interface) i određenih objekata Ova komunikaci ja jepotpuno odvojena od komunikaci je koja se odvi ja između ORM-a i baze podatakapreko SQL-a i DBC-a

Da bi se postigla i dostigla potpuna snaga ORM-a u apl ikaci j i koju projektujemonikako se ne sme iskl jučiti znanje relacionih modela SQL jezika te poznavanjeDBMS-a u kome se radi ORM ni je ništa drugo do srednj i sloj između gorepomenutih tehnologi ja i objektno ori jentisanog programiranja kao što smo to dosada već više puta naglasi l i

Implementacija ORM-aPostoje razl ičiti načini implementaci je ORM-a Mark Fasl (Mark Fussel) je 1997definisao četiri nivoa

1 bdquoČistrdquo relacioni način2 Slabo mapiranje objekata3 Umereno mapiranje objekata4 Potpuno mapiranje objekata

bdquoČistrdquo relacioni način

Cela apl ikaci ja ukl jučujući i korisnički interfejs dizajnirana je relacionim modelom iSQL relacionim operatorima Ovakav pristup je odl ičan za male projekte Direktanpristup SQL-u omogućava fino podešavanje svakog aspekta upita koj i se postavl jabazi podataka Osnovne mane su portabi lnost (prenosivost) i održavanje ovakvihsistema pogotovo ako se planira korišćenje apl ikaci je na duži rok Ovakvi sistemimasovno koriste sačuvane procedure (eng stored procedures) što znači da jeposlovna logika (eng busines logic) prebačena na samu bazu podataka

Slabo mapiranje objekata

Entiteti su predstavl jeni kao klase i mapiranje se radi ekspl icitno ka relacionimtabelama SQLJDBC je sakriven od poslovne logike korišćenjem poznatih šablona(patterns)

Umereno mapiranje objekata

Slobodni profesionalac

33

Broj 33

Dizajn apl ikaci ja se svodi na objektne modele SQL se generiše u vremekompaj l iranja (eng build-time) i l i u vreme izvršavanja (eng run-time) Specifikaci jaupita nad bazama podataka se radi na objektno ori jentisanom jeziku Ovakvisistemi se koriste u apl ikaci jama srednj ih vel ičina kod koj ih je bitna portabi lnostizmeđu razl ičitih sistema za upravl janje bazama podataka (DBMS)

Potpuno mapiranje objekata

Podržava sofisticirano objektno model iranje nasleđivanje i pol imorfizamEfikasnost dobi janja podataka je na visokom nivou i koriste se metode kao što sulenjo učitavanje (eng lazy loading) i strategi ja keširanja (eng caching) Implementaci ja je transparentna u apl ikaci jama Ovaj nivo je jako teško dostići Pojedincu su potrebne godine razvoja da postigne ovakvu fleksibi lnost pristupa imanipulaci ja u relacionim bazama podataka Upravo ovaj nivo se postiže ako sekoriste rešenja ORM-a kao što je Hajbernejt

Zašto ORMImplementaci ja ORM rešenja pogotovo ako seprvi put susrećete sa ovim modelom može dabude veoma frustrirajuća i malo teža zaimplementaci ju Kada ovo kažemo misl imo daprogramer koj i implementira ORM i hoće da istibude kval itetno urađen mora da posedujepredznanje objektno ori jentisanog programiranjai naprednih tehnika kao što su nasleđivanje ipol imorfizam

Ovo inicira fundamentalna pitanja

bull Pa zašto bi iko onda implementirao ovako nešto kompleksnobull Vredi l i truda upuštati se uopšte u ORM

Odgovor ni je jednostavan Dosadašnja iskustva u korišćenju ORM-a i njegovapopularnost već daju odgovor na postavl jeno pitanje Očigledno je da su benefitikoje donosi ovaj model veći od kompleksnosti njegove implementaci je a to su

Hibernate ORM

34

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Veća produktivnost

ORM smanjuje kol ičinu koda potrebnog za ostvarivanje trajnosti podataka Ovoomogućava programeru da vreme koje bi utrošio na ručno mapiranje podatakautroši na druge delove apl ikaci je

Lakše održavanje

Manje l ini ja koda osigurava bol ju razuml j ivost (i možda bol j i kval itet koda) jernaglašava apl ikaci jsku logiku ORM takođe ublažava uticaj nastal ih promena kaošto su promene u bazi strukturi tabela i td

Prenosivost

Većina ORM rešenja podržava sisteme za upravl janje bazama podataka raznihproizvođača ORM u potpunosti odvaja sloj apl ikaci je od stvarne SQL komunikaci jekoja se odvi ja u pozadini Time omogućava da se pišu apl ikaci je koje će moći da seizvršavaju na razl ičitim bazama podataka bez potrebe za dodatnim kodiranjemOva komunikaci ja se odvi ja sa programskim interfejsima ORM-a nezavisno oDBMS-u sa koj im je u bi lo kom momentu povezan ORM takođe omogućava lakšiprelaz sa manj ih na veće baze podataka tokom razvoja apl ikaci je

Uvidel i smo da trenutno postoje dve paradigme koje se bdquosudarajurdquo i koje supodjednako dobre same za sebe Relaciona paradigma potvrđuje da sve što jeizgrađeno na matematičkim osnovama je i trajno u smislu kval iteta koje posedujeU domenu u kom relaciona paradigma egzistira ona je ako je to u ovo vremeuopšte moguće tvrditi nezamenj iva

Ono što otvara pitanja i daje razlog za sumnju je koja je krajnja granicaupotrebl j ivosti relacione paradigme tj kol iki su kapaciteti složenosti zahtevaapl ikaci ja sa kojom može da se nosi Praksa je pokazala da je sasvim mogućebdquoizvestirdquo složene projekte - al i održavanje skalabi lnost razuml j ivost prenosivost -pitanja su sa koj im se relaciona paradigma teško može izboriti

Sa druge strane svoj habitat u informacionim tehnologi jama je našla i objektna

Slobodni profesionalac

35

Broj 33

paradigma Iako na prvi pogled ova dva modela nemaju ništa zajedničko - što je uneku ruku i istinito gledajući prirodu podataka koj im manipul išu - praksa jepokazala da su usko povezane i skoro da imaju sinaptičku vezu

Pitanje bdquokako spoj iti te sinapserdquo dovelo je do žučnih rasprava u uskim naučnimprogramersko-administratorskim krugovima Rodi l i su se razni model i a l i jedan jeiskočio i polako ulazi u široku primenu - a to je ORM Svoj im supti lnim pristupomproblemu nekompatibi lnih paradigmi nekako je uspeo da stvori taj nedostajućibdquoelektrični signalrdquo koj i ih je povezao Ovo je omogući lo da dve strane koje susvaka za sebe u svom domenu ostavi le i ostavl ja ju duboki trag u informacionimtehnologi jama sarađuju i donesu novi kval itet

Korisni l inkovi

[1] Hibernejt http hibernateorg[2] Viki http googlLlZulw[3] Tutori ja l i http googlCGzvnc

Hibernate ORM

36

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Autor Kriptopank

Šta su zapravo metapodaci Najkraće rečeno to su podaci o podacima i l iinformaci je koje opisuju podatke

Najpre da napravimo razl iku između podataka i metapodataka Podaci sunaprimer snimak (i l i transkript) vaših telefonskih razgovora sadržaj poruka kojepišete primate i l i šal jete podaci koje kačite na internet i l i preuzimate pretrageGuglom postovi na forumima dopisivanja na IRC kanal ima i l i drugim četovimaaudio i video snimci Skajp razgovora i tako dal je

Hajde da vidimo šta bi bi l i odgovarajući metapodaci za ove primere

bull Za telefonske razgovore metapodaci mogu biti lokaci ja učesnika brojevitelefona trajanje razgovora IP i MAC adresa

bull Za poruke četove i Skajp i l i druge video-audio komunikaci je sl ično je kao kodtelefonskih razgovora

To su samo metapodaci

Internet mreže i komunikacije

37

Broj 33

bull Kod foruma i pretraga Guglom ima malo manje metapodataka al i Gugl i raznisajtovi i forumi ionako čuvaju logove o korisnicima što su takođe metapodaci

Ako do sada koj im slučajem niste uvidel i opasnost po privatnost u ovimmetapodacima koje svako od nas smrtnika svakodnevno ostavl ja za sobom usvetu interneta i ostal ih digitalnih komunikaci ja nadamo se da će vas ovaj primermakar podstaći na razmišl janje a možda i na nešto više

Zamisl i te da neko (zvaćemo ga posmatrač) stalno sakupl ja metapodatke koje zasobom ostavl jate kao mrvice hleba Posmatrač recimo zna da se nalazite naautoputu nedaleko od famoznog Feketića da se ne krećete da zovete AMSS zatimšlep službu i možda taksi a l i ne zna šta ste razgovaral i I l i posmatrač vidi da steprvo zval i aerodrom Nikola Tesla pa odmah potom taksi a l i ne zna šta sterazgovaral i I l i posmatrač vidi da ste zval i prvo šest brojeva či je identitete takođezna pa vidi da se oni zatim kreću ka vama - GPS (eng Global Positioning System) pa zatim pica servis Mekdonalds i neku poznatu prodavnicu kineske hrane al i nezna šta ste razgovaral i

Posmatrač ne mora da bude mnogo pametan niti da prisluškuje vaše razgovore dabi shvatio šta se dešava i l i šta će se desiti Sasvim mu je jasno da vam je u prvomprimeru auto stao na autoputu zatim da ste se u drugom slučaju uputi l i naaerodrom i da možda putujete van zemlje i l i ste poslal i taksi po nekoga saaerodroma a da u trećem slučaju okupl jate žurku kod vas Više možete pogledatina http googl7vUjP

Iako su to bdquosamordquo metapodaci treba biti svestan da ti metapodaci o vama stvarajujednu digitalnu sl iku i l i bol je reći digitalni mozaik i na neki način vas jedinstvenoodređuju Pogotovo kada se planski prikupl ja ju na više nivoa (kompjuter pametnitelefon pametni automobi l i kreditna kartica) metapodaci čine vaš digitalniidentitet Al i da stvar bude još gora ta sl ika o vama ne mora nužno biti istinita jerse lako može lažirati Recimo možete zameniti telefone i l i automobi le sa nekimnamerno i l i slučajno i l i vam neko može jednostavno ukrasti telefon laptop i l ikreditnu karticu Zaniml j iv video http googlKO1fKf

Evo jednog primera koj i vas može uvući u vel ike nevol je Recimo da prolazitenekom zabačenom ul icom i da vam neprimetno ispadne telefon al i vi to neprimetite i nastavite dal je svoj im putem U toj ul ici se samo nekol iko minutakasni je desi neko ubistvo i vas pozovu u pol ici ju kao osumnj ičenog Ako koj im

To su samo metapodaci

38

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

slučajem nemate dobar al ibi i l i nemate svedoka da posvedoči da niste bi l i u tojul ici nego tamo gde ste stvarno bi l i a drugih svedoka nema - možete jako lošeproći Zaniml j ivi video http googlspS5OZ

Metapodaci se takođe nalaze i u faj lovimapodacima koje svakodnevnopreuzimamo sa interneta pravimo i koristimo Svaki tip podatka može da sadržiodređene metapodatke koj i bol je opisuju sam podatak kao naprimer vremenastanka podatka kol iko je vremena potrošeno za njegovo kreiranje kol iko putamu je pristupl jeno kad je poslednj i put pristupl jeno i tako dal je Iako se ovakvimetapodaci možda još uvek čine bezazlenim oni mogu sadržati i IP adresuračunara sa kog su napravl jeni GPS koordinate (najčešće PNG format sl ika satelefona) ko ga je napravio (l ičnost i l i kompani jaorganizaci ja) naziv uređaja imodel sa koga je napravl jen kao i MAC adresu uređaja mej l adresu kreatorasoftver koj im je napravl jen i tako dal je Sve ovo može mnogo da naškodiprivatnosti izvornog kreatora faj la pogotovo ako je sadržaj poverl j iv Ukol iko nekopresretne taj podatak na internetu može saznati od koga je potekao Da ovo možebiti katastrofa po kreatora takvog faj la može i lustrovati primer torenta Ako stedošl i u posed nekih sl ika i l i video materi ja la i l i teksta koj i žel i te da podel ite sasvetom preko nekog torent sajta morate taj podatak prvo očistiti odmetapodataka da ne bi svako ko skine to što ste okači l i saznao da vi stoj i te izatoga

Internet mreže i komunikacije

39

Broj 33

Ljudi se konstantno prate metapodaci se sakupl ja ju i to ni je sada već ništa novoal i možemo da se trudimo da iza sebe ostavl jamo malo manje nežel jenihmetapodataka i da ih takoreći čistimo iz podataka koje razmenjujemo Na srećupostoje programi koj i ovo dobro rade

Najpre je potrebno da vidimo koje sve metapodatke neki faj l sadrži kako bismo seuveri l i da ovi metapodaci stvarno postoje i da je faj l bezbedan nakon nj ihovogbrisanja

Ako koristite operativne sisteme GNULinuksa treba da iz terminala preuzmete iinstal irate program pod nazivom exiftool

sudo apt-get install exiftool

Ovaj program će nam pružiti uvid u sve metapodatke koje faj l sadrži Korišćenje jeiz terminala al i je zato veoma jednostavno samo ga pokrenite na sledeći način

exiftool File

i l i

exiftool putanjadofajlapočevodkorenogdirektorijuma

Dobićete prikaz metapodataka koje je program pronašao Sada je potrebno davidimo da l i je podatak bdquoprl javrdquo tj da l i ima u njemu nešto da se briše i da akoima iz njega sve nepotrebno obrišemo Tu će nam pomoći drugi program zvaniMAT (eng Metadata Anonymisation Toolkit) koga možete naći na sajtuhttps matboumorg i l i jednostavno za korisnike Ubuntua i Debi jana uSoftverskom centru i l i ga možete instal irati iz terminala

sudo apt-get install mat

MAT će proveriti da l i je podatak bdquoprl javrdquo i l i ne i za vas ga očistiti od nežel jenihmetapodataka

Kada očistite faj l on je spreman za del jenje sa drugima a vi ste bezbedni jer nikone može reći da je faj l potekao sa vašeg računara

To su samo metapodaci

40

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Autor Dejan Čugal j

GH Hardi bdquoPrava matematika nema uticaj na ratrdquo - odbrana matematičara1940 godina

Bi l Tat - britanski matematičar verovatno niste čul i za njega1942 godine je izveo ogroman poduhvat koj i je skratio rat dvegodine (barem po rečima Ajzenhauera) i spasio mi l ione životaNažalost njegova vel ičina je preminula 2002 godine obavi jenavelom tajne i nikada zvanično ni je priznato njegovo dostignuće

Tomi Flauers - bivši inženjer poštanskog saobraćaja pretvorio jematematičke ideje Tata u prvi računar a to ni je bio bdquoENIACrdquo1Preminuo je 1998 godine a pretpostavl jamo da nikada niste čul ini za njegovu vel ičinu

Ovi umni giganti bdquoBlečl i parkardquo omogući l i su Britani j i da dešifruje strogo poverl j ivumašinu koju je koristio Hitler da diriguje drugim svetskim ratom a to ni je bi labdquoENIGMArdquo nego nešto mnogo tajni je i značajni je Vel ika je verovatnoća da nistečul i ni za ovo Neki kažu da je to bio Hitlerov Blekberi (BlackBerry)

Izgubljeni heroji bdquoBlečli parkardquo

1 engl Electronic Numerical Integrator And Computer - prvidigitalni elektronski računar

Internet mreže i komunikacije

41

Broj 33

1939 godine bdquoBlečl i parkrdquo je postao ratni štab MI6 (britanske vojne obaveštajneslužbe) Do danas je procurelo u javnost i dokumentovano brojnim fi lmskimdokumentarcima samo da je tu Alan Tjuring uspeo da dešifruje nemačkumornaričku šifru poznatu kao bdquoENIGMArdquo i uvel iko doprineo pobedi saveznika a to jesamo deo priče koj i je ispričan

U Blečl i parku su bi la tri heroja AlanTjuring Bi l Tat i Tomi Flauers Od nj ihtroj ice jedino Alanu Tjuringu je priznat deozasluga za pobedu saveznika u Drugomsvetskom ratu Pregledom otkrivenihpodataka danas možemo da tvrdimo daje bdquoENIGMArdquo već sa početka drugogsvetskog rata bi la zastarela tehnologi ja Zbog toga je bi lo lako skinuti veo tajne sa

ovog uspeha heroja Blečl i parka

Izgubljeni heroji bdquoBlečli parkardquo

42

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Bi l Tat koj i je dešifrovao bdquoTANI sistemrdquo (TANI) i Tomi Flauers koj i je samo svojomintuici jom i znanjem sklopio prvi računar na svetu (bdquoKOLOSrdquo) u svrhu bržegdolaženja do informaci ja razbi jenog koda bdquoTANIrdquo tako da zastarelost šifrata budesvedena na minimum - radi l i su na novoj generaci j i mašina za šifrovanje Ovatehnologi ja je bi la prepoznata kao tehnologi ja budućnosti pa i danas iznadinformaci ja o tim tehnologi jama stoj i natpis bdquovrhunska tajnardquo (eng Top Secret) Upravo ovaj veo tajni oko šifrata bdquoTANIrdquo i prvog računara je rezultirao iskrivl jenjuistori je informatike

Za uspehe u prvim godinama rata je zaista zaslužno razbi janje bdquoENIGMArdquo šifrata ito ni je sporno al i krajem 1941 godine u etru planete se začuo novi zvuk To je bi lanova mašina za šifrovanje ni je bi la zasnovana na bdquoMorzeurdquo već je radi la naprincipu teleprintera

Jedna od kl jučnih ideja Hitlerovog ratovanja je bi la u vel ikoj mobi lnosti i brzomdelovanju trupa na terenu a da bi se to izvelo komunikaci ja je isto tako morala dabude u najmanju ruku putem radio signala

Razl ika je ogromna Razl ika je u kol ičini podataka koj i može da se prenese ovimbdquotajnimrdquo putem Prvi svetski rat je bio zaniml j iv jer su se šifrovane poruke baziralena rečima dok je Drugi u potpunosti otvorio vrata današnjoj kriptografi j i a to jematematika

Originalan nemački kocircdni naziv za ovaj šifrat bio je bdquoLORENCrdquo Britanska

Internet mreže i komunikacije

43

Broj 33

obaveštajna služba mu je dala nadimak bdquoTANIrdquo Čak ni dan danas ni je baš poznatokako je sve nastalo al i pouzdano se zna da je tajnu mašinu Hitler nazvaobdquoGehajmšrajberrdquo (nem Geheimschreiber) - mašina tajni

U srž i tehnologi ju šifrovanja bdquoLORENCrdquo šifrata nećemo ulaziti u ovom članku al iverujte nam na reč - ni je bi la jednostavna Može se pretpostaviti da je inspiraci jaŠenonovog 2 rada slučajnosti bi la upravo ova tehnologi ja iz Drugog svetskog rata

Ono čime se Treći rajh vodio je bdquosigurnardquo šifrovana veza koju niko ni je smeo dadešifruje Prenošenje šifrovanih poruka pomoću radio signala je dalo obaveštajnimslužbama mogućnost presretanja poruka poslatih radio talasima Da l i se ovo idanas dešava Imamo l i sigurnost u našim šifrovanim podacima današnj ice

Ono što je usledi lo nakon proboja ovog bdquoneuhvatl j ivogrdquo šifrata je upravo ono što jeprincip današnj ice kao neka vrsta protokola koj i mora da se ispoštuje uperfektnom šifarskom Šenonovom sistemu

1 NIKADA NIKADA NE KORISTITI DVA PUTA ISTI KLJUČ ZA ŠIFROVANJE2 NIKADA NIKADA KLJUČ NE SME DA SE ŠALJE ISTIM KOMUNIKACIONIM KANALOM

KAO PORUKA3 NIKADA NIKADA KLJUČ NE SME DA BUDE MANJ I NEGO ŠTO JE PORUKA (engl

2 Klod Elvud Šenon (eng Claude Elwood Shannon) (1916-2001) - Američkinaučnik i inženjer

Izgubljeni heroji bdquoBlečli parkardquo

44

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

one time pad) 4 NIKADA NIKADA NE SMEMO DA SAKRIVAMO SISTEM ŠIFROVANJA SVE MORA

DA JE OTVORENOG KOcircDA

Najveći propusti kriptologi je koj i su uočeni baš u Drugom svetskom ratu jesupokušaj sakrivanja sredstava koj im se generiše tajna poruka i nepoznavanjeŠenonovih krajnj ih granica informaci ja Kada kažemo bdquosredstvo i sakrivanjerdquomisl imo na algoritme Postavl ja se pitanje zašto je danas kriptologi ja sigurni ja negočetrdesetih i pedesetih godina prošlog veka

Danas uprkos tome što su algoritmi za kriptografi ju otvorenog kocircda tajnostinformaci ja je na višem nivou nego što je to bi lo dok je algoritam bio strogopoverl j iv Tajnost tajnih podataka se ne zasniva na tajnosti a lgoritama koj i generišutaj isti bdquotajni izlazrdquo (eng cipher text) nego u nemogućnosti matematičke inverznefunkci je koja bi šifrovan tekst otvori la Ovde se vidi da je svrha strukture otvorenogkocircda kao jednog od značajnih delova današnje kriptologi je ona koja ga činisigurnim i svima dostupnim

Sada kada se sa ove distance osvrnemo na Drugi svetski rat možemo videti kol ikosmo bi l i bl izu apokal ipse Naime Albert Ajnštajn je već 1944 godine imao urukama recept za nuklearnu bombu Šenon je mogao već u to vreme da nampredoči 100 siguran šifrat (tzv Hitlerovu super šifru) a l i ipak sreća nas jeposluži la da čovečanstvo tada ni je bi lo spremno da upotrebi svu raspoloživutehnologi ju

Albert Ajnštajn bdquoČetvrti svetski rat će se voditi tol jagamardquo

Zaboravl jeni heroj i Blečl i parka iako su odigral i važnu ulogu u pobedi saveznika usvetskom ratu postal i su žrtve bdquotop secretrdquo doktrine potpuno su zaboravl jeni inestal i su iz istori je

Zakl jučak ovog članka je da je ideologi ja otvorenog kocircda sasvim sigurno tu da nampomogne i da otvori vrata ka većoj sigurnosti novim idejama i kval itetu sameinfrastrukture sistema koju svi zajedno razvi jamo

Internet mreže i komunikacije

45

Broj 33

Autor Nikola Hardi

NabrajanjaBez brojeva

Za nabrajanje pojmova u Bimeru (eng Beamer) koristi se okruženje itemize aunutar tog okruženja možemo da dodajemo nove stavke pomoću item Primerizgleda ovako

beginitemizeitem Stavka Aitem Stavka Bitem Stavka C

enditemize

Sa brojevima

Postoje situaci je kada uz nabrajanje treba da stoje i redni brojevi - za to se koristienumerate okruženje a nove stavke se takođe dodaju pomoću item

beginenumerateitem Redni broj 1item Redni broj 2item Redni broj 3

endenumerate

prezentaci ja

Beamer (4 deo)

Sam svoj majstor

46

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

DefinicijeTreća situaci ja je nabrajanje parova termin - definici ja U tom slučaju se koristiokruženje description Već možete da pretpostavite kako se dodaju nove stavke

Primer

begindescriptionitem[Pojam A] Definicija izmišljenog pojma Aitem[Pojam B] Definicija izmišljenog pojma Bitem[Pojam C] Definicija izmišljenog pojma C

enddescription

Ostala podešavanja i zanimljivostiSva prethodna okruženja mogu da budu ugneždena jedno unutar drugog dotrećeg nivoa Treba biti pažl j iv jer sla jdovi vrlo lako mogu da postanu nečitl j ivi Osim toga moguće je izabrati i format oznake i l i rednih brojeva - na primer ovako

beginenumerate[I]beginenumarate[a)]

Takođe moguće je upravl jati pojavl j ivanjem pojedinih stavki na slajdovima Drugimrečima možemo da odredimo da se nabrajanja postepeno otkrivaju tako što ćemouz stavku dodati lt1-gt odnosno broj od kojeg slajda žel imo da se ta stavkapojavl ju je Tada će jedno nabrajanje biti bdquorazvučenordquo na više slajdovaJednostavni ja mogućnost je da u zaglavl je okruženja dodamo +- što znači dažel imo da se svakim slajdom otkriva po jedna nova stavka iz nabrajanja Znak bdquo-rdquo uoba primera znači da žel imo da se stavka pojavi na sledećem slajdu i da ostane

Sam svoj majstor

47

Broj 33

prisutna Možemo da izostavimo znak bdquo-rdquo i tada će stavka biti prisutna samo najednom slajdu i l i da napišemo raspon slajdova u koj ima žel imo da ta stavka budeprisutna

Rad sa kolonama i blokovimaDo sada su svi primeri podrazumeval i da je sadržaj napisan preko cele širineslajda al i Bimer (eng Beamer) ima i jednostavne mehanizme za razmeštanjesadržaja po kolonama Za rad sa kolonama se koristi okruženje columns unutarkojeg možemo da dodajemo nove kolone pomoću columnširina Sadržaj jemoguće potom pisati i van okruženja sa kolonama

U paru sa kolonama često se sreće i okruženje block koje se parametrizujenaslovom Primerom su i lustrovani i okruženje column i okruženje block

beginframebegincolumns

column05textwidthbeginblockNaslov levog blokaSadržaj u prvoj (levoj) koloni endblock

column05textwidthbeginblockNaslov desnog blokaSadržaj u drugoj (desnoj) koloni

endblockendcolumns

beginblockVan kolona

Beamer

48

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Tekst koji se nalazi ispod kolonaendblock

endframe

TabeleIako se u radu sa prezentaci jama sadržaj najčešće može uredno rasporeditipomoću kolona i nabrajanja nekada to ni je dovol jno jer su tabele pravi formatBimer podržava standardno Lateh (LaTeX) okruženje za rad sa tabelamaOkruženje za rad sa tabelama se zove tabular Pri kreiranju nove tabele moguće jepodesiti koje kolone će biti razdvojene l ini jom i da l i će nj ihov sadržaj biti centrirani l i uz levu i l i uz desnu ivicu Dodavanje novog reda se jednostavno radidodavanjem hline Lateh pruža zaista jako fleksibi lan rad sa tabelama i sigurno ćedoskočiti svim mogućim i nemogućim zamisl ima Potražite bi lo koje Lateh uputstvoza rad sa tabelama i radiće i sa Bimerom

beginframebegintabular | c | c | c | c |

hlineamp Ponedeljak amp Utorak amp Sreda hline

1 amp 16 amp 32 amp 64 hline2 amp 16 amp 128 amp 1024 hline3 amp 16 amp 512 amp 4096 hline

endtabularendframe

Sam svoj majstor

49

Broj 33

Beamer

Teoreme i istaknut tekstU nastavi su česta izlaganja teorema nj ihovih dokaza i primera U Bimer jeugrađena podrška za elegantno predstavl janje ove trojke Mehanizam takođepodržava postepeno otkrivanje sadržaja sla jda tako da slušaocima ne bude odmahotkriven dokaz teoreme Mehanizam za postepeno otkrivanje se kao i kodnabrajanja postiže pomoću bdquolt1-gtrdquo konstrukci je Evo kako to izgleda

beginframeframetitlePrimer teoreme

begintheoremlt1-gt Teorema kaže da su beamer prezentacijezanimljive

endtheorem

beginexamplelt2-gt Ovaj kod kreira slajd beamer prezentacijeendexample

beginprooflt3-gt Čestitamo stigli ste do kraja serijala o pravljenju beamer prezentacija

endproofendframe

50

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Za krajOvim člankom završavamo seri ja l o Bimeru Nadamo se da smo uspel i da vaszainteresujemo za ovu vrlo korisnu klasu Lateha Trudi l i smo se da vamprezentujemo najvažni je delove Bimera koje ćete najčešće koristiti pri l ikomkreiranja svoj ih prezentaci ja

Napominjemo još jednom da je Bimer samo jedna od klasa Lateha što znači da i zaBimer važi sve ono što ste već mogl i da pročitate u ovom časopisu kad smo pisal iseri ja l bdquoUvod u LaTeXrdquo (LiBRE brojevi 17 do 21) Štaviše ovaj seri ja l o Bimeru jebio nastavak upravo tog seri ja la U ovom seri ja lu nismo pisal i o samomformatiranju teksta u prezentaci jama jer se podrazumeva da važe ista pravi la kao iu Latehu a o tome smo pisal i u prethodnom seri ja lu

Hvala vam što ste prati l i ovaj seri ja l i žel imo vam puno uspeha u kreiranju Bimerprezentaci ja

Sam svoj majstor

51

Broj 33

Autor Nenad Marjanović

Kada smo se upoznal i sa podešavanj ima sistema i umrežavanjem vreme je za našprvi Biglbon Blek (BBB - eng BeagleBone Black) projekat Svakom od nas će ovajizazov dati razl ičite ideje a jedna od nj ih može biti i zaštita privatnosti internetkorisnika Nažalost u Srbi j i ne postoj i ni jedan izlazni tor server (eng node) i to jepomalo tužna sl ika s obzirom da govorimo o populaci j i od sedam mil ionastanovnika Al i ovu sl iku možemo promeniti udruženim snagama i za početakkreiranjem Tor transfer i izlaznog servera U ovde prikazanom grafikonufokusiraćemo se na bdquoRauter Brdquo tačku odnosno transfer server konfiguraci ju

BeagleBone Black Rev C

Vodič od prvog dana (3 deo) ndashBeagleBone Black kao Tor relej

Hardver

52

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Tor predstavl ja mrežu servera koj i se povezuju radi bol je enkripci je podataka izaštite IP adrese korisnika Naš ci l j je da danas postanemo deo ovog predivnogprojekta i da se nađemo na svetskoj karti Tor servera

Brzina interneta i zakonske regulativePotrebno je imati na umu nekol iko bitnih stvari

1 Naš server = naša odgovornost2 Obavezno naznačite da ste vi administrator a ne korisnik istog servera3 Da posedujete internet brzinu od 2 Mbs

Ako ispunjavamo tri navedena pravi la i odgovornosti možemo se posvetitiadministrativnim poslovima

Instalacija i podešavanjaU ovom primeru koristimo Debi jan Vizi (eng Wheezy) odnosno Debi jan 7 verzi juna našem BBB uređaju Vi možete testirati i druge Linuks platforme Prvododajemo izvornu bibl ioteku u etcaptsourceslist faj l pokretanjem sledećekomande u terminalu

echo deb httpdebtorprojectorgtorprojectorg wheezy main gt etcaptsourceslistdtorlist

Zatim dodajemo izvorni kl juč vršimo ažuriranje sistema i instal iramo tor i tor-arm(Tor monitoring sistem)

gpg --keyserver keysgnupgnet --recv 886DDD89gpg --export A3C4F0F979CAA22CDBA8F512EE8CBC9E886DDD89 | sudo apt-keyadd -apt-get updateapt-get install debtorprojectorg-keyring -yapt-get install tor tor-arm egrep screen -y

Ovim smo uspešno završi l i instalaci ju Tor servera i sistema za monitoring odnosnonadgledanja našeg Tor servera Sledećom komandom radimo na podešavanj imaTor servera koja se nalaze u etctortorrc faj lu Obratite pažnju i izvršite potrebne

Hardver

53

Broj 33

izmenu u pol j ima IP adresa (eng Address) nadimka (eng Nickname) i kontaktpodataka (eng ContactInfo) pre pokretanja ove komande Kopiramo i pokrećemokomandu u celosti u terminalu

egrep -v ^(|$) etctortorrcORPort 443Address 19216811Nickname LibreTorRelayRelayBandwidthRate 100 KBRelayBandwidthBurst 120 KBContactInfo ltvi at gmail dot comgt irPort 8080DirPortFrontPage etctortorhtmlExitPolicy reject

Detal je o svim vrednostima nećemo iznositi u ovom broju LiBRE časopisa al ićemo o nj ima pisati u sledećem u kome ćemo pričati o zaštiti Tor servera imogućnosti podešavanja određenih izlaznih pravi la (eng ExitPolicy)

Nakon ovoga možemo primetiti da se u folderu etctor ne nalazi torhtml faj l Ovaj faj l ni je od vel ikog značaja i možete ga l ično napraviti i l i preuzeti jednu kopi ju- naprimer sa sledeće lokaci je

cp usrsharedoctortorhtml etctortorhtml

Opcije i Tor Arm monitoringDa bismo ispravno koristi l i Tor Arm potrebno je urediti još jednom etctortorrcfaj l i restartovati servis

echo -e ldquoDisableDebuggerAttachment 0n AvoidDiskWritesrdquo gtgt etctortorrcsudo service tor reload

Ukol iko žel ite koristiti Tor Arm za nadgledanje aktivnosti na serveru pokreniteprogram screen kl iknite na bdquoEnterrdquo i kucajte sudo -u debian-tor arm Naekranu ćete imati sl ičan prikaz

BeagleBone Black

54

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Hardver

55

Broj 33

Da bismo napusti l i screen program koristimo Ctrl + a + d i na taj način kada sesledeći put pri javimo na server kucamo samo screen -r u terminalu - i naći ćemose ponovo na čuvenom Tor Arm monitoring ekranu

Nakon svake promene konfiguracionih faj lova ako slučajno nismo nešto podesi l ikako treba restartujemo servise

U sledećem broju časopisa govorićemo o minimalnim podešavanj ima ikonfigurisanju izlaznog Tor servera (eng Tor Exit Node) opci jama sigurnosti isl ičnim detal j ima u vezi sa našim prvim projektom Do čitanja u sledećem broju

BeagleBone Black

LUGoNS BarCamp 4subota 7 mart 2015 godine

Četvrti LUGoNS-ov Barkemp (BarCamp) održaće se u Novom Sadu usubotu 7 marta 2015 godine na Fakultetu tehničkih nauka sa početkomu 12 časova

Ulaz je slobodan

Poziv za predaju radovaLUGoNS poziva sve zainteresovane da pošal ju svoje radove (predavanjaprezentaci je radionice i diskusi je) do 28 februara 2015 godine

Oblasti iz koj ih možete da pri javite vaše radove su

bull Slobodan softverbull Zaniml j iv hardverbull Hakerski zakonibull Sigurnosne noćne morebull Anonimnost i privatnost na internetubull Duboki veb (eng Deep Web)bull Soci ja lne mrežebull Soci ja lni inženjeringbull Hakovanje mobi lnih uređajabull Internet u oblaku (eng Clouds) ndash hakovanje razbi janje i neočekivano korišćenjebull DPI (eng deep packet inspection)bull Mreža i mrežna neutralnost ndash vlasništvo cenzura nadmudrivanje i pol itika bdquodefaktordquo standarda

bull Programiranje i programski jezici

Nemojte se ustručavati i slobodno nam se javite ako imate rad na gore navedenei l i sl ične teme koj i smatrate interesantnim

Stranica za predaju radova nalazi se na https events lugonsorgp=1658

Page 2: LiBRE 33 Lat

2

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Primeti l i ste da je većina stranih reči u prethodnom broju časopisa pisanapri lagođeno Odluči l i smo da počnemo sa transkripci jom Odluci jeprethodi lo razmatranje o tome da l i je transkripci ja korisna i moguća ikako bi naši čitaoci reagoval i

U našem jeziku ima mnogo reči stranog porekla Mi smo ih vremenomprihvati l i i pri lagodi l i ih Kako vreme protiče stičemo utisak da su pojedinereči oduvek deo našeg jezika Sledeće generaci je ne moraju imati svest otome da je neka reč stranog porekla Primećujete da strana rečprihvatanjem postaje reč stranog porekla a možemo ih sretati jednakočesto kao domaće reči Prihvatanje reči - šta se pod tim podrazumevaNajpre se reč ustal i u narodu i pri lagodi se našem izgovoru Dodel ju jemojoj rod broj i padež Pišemo je našim pismom Da l i se transkripci jom rečudal java od izvornog značenja Odgovor je odričan Ajnštajn (nemEinstein) je poznati fizičar Lavoazje (fr Lavoisier) je hemičar a svima sunam poznate Ezopove basne (grč Αἴσωπος mdash Aisōpos) Sastavl jači našihudžbenika oduvek su vrši l i transkripci ju stranih reči Podrazumeva se da sumakar u fusnoti navedeni značenje i izvorna grafi ja Transkripci ja jesastavni deo našeg jezika

S druge strane protivnici transkripci je su mišl jenja da je najbitni je optičkoprepoznavanje stranih reči a da bi transkripci ja mogla da zbuni čitaoca usmislu da ne zna o čemu se radi iako se rani je susretao s istim pojmom al iu izvorno napisanom obl iku Da je mogućnost zbunj ivanja mala ukazujevišedeceni jska praksa u našoj naučnoj l i teraturi da je strana reč kod prvogspominjanja napisana izvornim pismom Transkripci ja ni je pukopreslovl javanje s jednog pisma na drugi već podrazumeva adekvatno

Transkripcija

Reč urednika

3

Broj 33

prenošenje zvukova i nj ihovo zapisivanje

LiBRE je strane reči do 32 broja časopisa čak i u tekstovima na ćiri l ici pisao izvornim pismom Masivno upl itanje latinice u ćiri l icu je nepraktičnoa takav tekst je nepregledan Transkribovan obl ik reči nam pokazuje kakose one čitaju te nam otklanja nedoumice Dobar primer je ime poznatoggrafičkog okruženja Mate Reč potiče iz španskog jezika te se čita Mate ane Mejt Mate je bi l jka koja raste u Južnoj Americi od koje se spravl ja čaj LiBRE će slediti Pravopis i preporuke naših poznatih fi lologa te će većinuustal jenih reči pisati u transkribovanom obl iku Kod prvog pisanja reči uzagradi će se navesti izvorni obl ik da bi se čitaocu omogući la dal japretraga interneta o pojmu Kad bi transkripci ja bitno otežalaprepoznavanje nekog sadržaja (kao naprimer kod akronima) takve rečipisaćemo nadal je u izvornom obl iku uz povremeno pisanje preporuke kakose reč čita Maj-es-kju-el bi bi lo nepregledno i isuviše dugačko stogapišemo MySQL Isto važi za manje poznate nazive programa i za komandeunutar programa

Od izlaska prošlog broja nismo dobi l i ni jednu kritiku na račun transkripci jeTo bismo mogl i da protumačimo kao znak da čitaoci nemaju zamerku uvezi sa transkripci jom Dobi l i smo odgovore na pitanja postavl jena u Rečiurednika iz prethodnog broja Ovom pri l ikom vam se zahval ju jemo naodgovorima Svi vaši predlozi su dobrodošl i i razmatraju se na redovnimsastancima I dal je očekujemo vaše kritike i predloge koje nam možeteposlati na već poznatu adresu elektronske pošte l ibre [at] lugons [dot] org

Do sledećeg broja

LiBRE tim

Reč urednika

4

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Vesti str 6

Predstavljamobgfx - Cross-platform rendering library str 9rEFInd - Boot managment str 14

Kako da Uvod u programski jezik C (9 deo) str 18

OslobađanjeU potrazi za idealnom distribuci jomSoci ja lni kriteri jumi za izboridealne distribuci je (6 deo) str 26

Slobodni profesionalacHibernate ORM (2 deo) str 31

Internet mreže i komunikacijeTo su samo metapodaci str 36Izgubl jeni heroj i bdquoBlečl i parkaldquo str 40

Sam svoj majstorLaTeX prezentaci ja Beamer (4 deo) str 45

HardverBagleBone Black Rev C Vodič od prvog danaBeagleBone Black kao Tor relej (3 deo) str 51

Moć slobodnogsoftvera

Sadržaj

Broj 33Periodika izlaženja mesečnik

Izvršni urednik Stefan NožinićGlavni lektorAleksandar Božinović

LekturaJelena Munćan Saška SpišjakMilena Beran Milana VojnovićAdmir Halilkanović

Grafička obradaDejan Maglov Ivan Radeljić

Dizajn White Circle Creative Team

5

Broj 33

LiBRE prijatelji

Broj 33Periodika izlaženja mesečnik

Izvršni urednik Stefan NožinićGlavni lektorAleksandar Božinović

LekturaJelena Munćan Saška SpišjakMilena Beran Milana VojnovićAdmir Halilkanović

Grafička obradaDejan Maglov Ivan Radeljić

Dizajn White Circle Creative Team

Autori u ovom broju

Ostali saradnici u ovom brojuMarko Novaković Mihajlo Bogdanović

Počasni članovi redakcijeŽeljko Popivoda Željko ŠarićVladimir PopadićAleksandar Stanisavljević

KontaktIRC floss-magazin na ircfreenodenet

E-pošta librelugonsorg

Nenad MarjanovićNikola HardiKriptopank

Dejan ČugaljBranimir Karadžić

6

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

21 januar 2015

Kanonikal pokrenuo verzijuUbuntu Kora za Internet stvariKanonikal kompani ja zadužena za razvoj UbuntuLinuks distribuci je pokrenula je svoju verzi juUbuntu Kora (Core) za Internet stvari (Internet ofThings)

Koristan l ink http tcotN3VmZe5PK

26 januar 2015

Masovno nadgledanje pretiljudskim pravimaU evropskom izveštaju masovno špi juniranje pretidigitalnoj sigurnosti i l judskim pravima

Koristan l ink http tco9gcrmXw44q

27 januar 2015

Jutjub koristi HTML5 kaopodrazumevani načinreprodukcijeJutjub je zamenio Fleš tehnologi ju novi jomotvoreni jom i napredni jom tehnologi jom - HTML5koja će se koristiti kao podrazumevani načinpuštanja video sadržaja

Koristan l ink http tcozBpJh8Op6x

Vesti

7

Broj 33

28 januar 2015

GHOST - bezbednosni problemGHOST - novi bezbednosni problem u GNU-ovoj Cbibl ioteci koj i dovodi u opasnost sve apl ikaci jekoje koriste funkci je gethostbyname i gethost-byname2 i omogućava udal jenom napadaču dadobi je dozvole koje ima korisnik koj i izvršava tuapl ikaci ju

Koristan l ink http tcoGDYKsH2nOo

1 februar 2015

Pajrat Bej se vratioNajpopularni j i torent sajt Pajrat Bej (The PirateBay) se ponovo vratio posle dvomesečnogperioda kada je bio nedostupan

Koristan l ink http tcorSAPCVXWJi

2 februar 2015

Rasberi-Paj 2 je izašaoDostupan je u prodaj i Rasberi-Paj 2 (Raspberry PI2) sa 4 procesorska jezgra

Koristan l ink http tcoRGlOdoeioc

Vesti

8

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

3 februar 2015

Američka vojska otvara svojprogram za detekciju napadaAmerička vojska je odluči la da svoj program za de-tekci ju napada postavi na Githab i time omogućicelom svetu da koriste softver koj i su oni koristi l i zadetekci ju napada na mrežu ministarstva odbraneOni ovim potezom očekuju povratnu informaci ju odl judi koj i ne rade u vladi i nadaju se unapređenjusvog programa

Koristan l ink http tcov3PYlKF2sz

6 februar 2015

GPG u opasnostiVerner Koh (Werner Koch) programer koj i jezadužen za razvoj GPG-a (Dži-Pi-Dži engl GNUPrivacy Guard) softvera koj i svi koristimo zaenkripci ju kako naše elektronske pošte tako i ostal ihbitnih podataka polako ostaje bez novčanihsredstava Pozivaju se svi zainteresovani i oni koj i suu mogućnosti da pošal ju donaci ju u vidu novca

Koristan l ink http tcojGac5emwPX

9 februar 2015

Arduino razvojno okruženje -novo izdanjeIzašlo je novo razvojno okruženje za Arduino uverzi j i 1 6

Koristan l ink http tco4A0pFcIsVf

Vesti

9

Broj 33

Autor Branimir Karadžić

bgfx je rendering bibl ioteka otvorenog koda sa podrškom za više razl ičitih grafičkihAPI-ja 1 (eng Application Programming Interface) i operativnih sistema 2 Bibl iotekasluži za jednostavni j i pristup grafici i razvoj igara na više platformi Najvećiproblem sa kompjuterskom grafikom je što postoj i više razl ičitih API-ja koj i kada sekoriste direktno onemogućavaju portovanje igara na druge platforme Praveći igrukoja pristupa samo bgfx bibl ioteci a ne direktno API-u autor igre omogućava sebida tu igru na jednostavan način može prebaciti na bi lo koj i podržan operativnisistem odnosno platformu

Predstavljamo

bgfx - Cross-platform renderinglibrary

10

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

U početku bgfx je bio samo hobi projekat i zato ima nemaštovito ime Bi la je tosamo jedna od mnogih bibl ioteka koje sam napravio za pravl jenje igara Kada samradio na jednoj igri postojala je potreba da se igra prebaci sa starog DX9 (engDirectX 9) renderinga na OpenGL (engl Open-dži-el ) pa sam tom pri l ikom izvukaodeo moje hobi bibl ioteke za renderovanje i zapakovao je kao cel inu Posle uspešneprimene ove bibl ioteke u moj im projektima odlučio sam da je objavim kao projekatotvorenog koda na Githabu (eng Github) pod l icencom BSD 2-clause Po mommišl jenju ovaj deo renderinga je trebalo već odavno da bude rešen problem kao ida bude moguće da se igre bez veće muke izdaju na bi lo kojoj platformi po žel j iautora Namenjena je prevashodno manj im autorima koj i žele da imaju potpunukontrolu nad svoj im kodom bez obzira na platformu na kojoj žele da objave igruKod ovakvih komerci ja lnih proizvoda uvek postoje neka ograničenja a ako firmeizgube interes za proizvodom mogu ostaviti autore na cedi lu bez podrške iodržavanja Sa druge strane projekti otvorenog koda omogućuju saradnju autora iunapređenje funkcionalnosti projekta na zadovol jstvo svih

Upotrebom bgfx bibl ioteke korisnik može da zanemari konkretnu implementaci jurazl ičitih tehnologi ja kao što su OpenGL OpenGL ES i Direct3D bez kompromisa saperformansama Ova bibl ioteka ni je tanka apstrakci ja i l i emulator nekogpostojećeg API-ja tipa Guglovog Engl (eng ANGLE) projekta koj i emul ira OpenGL

Predstavljamo

11

Broj 33

ES preko Direct3D-a i l i Valvov TuDži-El (eng ToGL) koj i emul ira Direct3D 9 prekoOpenGL-a nego zaseban API višeg nivoa Iako je u prošlosti bi lo sl ičnih projekatasvi oni su uglavnom imal i pretenzi ju da budu endžin (engine) i l i frejmvork koj i bitvorci igara koristi l i kao takav Takav pristup donosi dosta kompl ikaci ja i veoma jeteško takav projekat integrisati sa postojećim kodom Iz ovog razloga bgfx projekatnema pretenzi je da bude ceo endžin i l i frejmvork nego samo bibl ioteka koju svakomože lako da integriše u sopstveni projekat

bgfx bibl ioteka se trenutno koristi u nekol iko komerci ja lnih igara al i ima i dostainteresovanja za projekat kao osnove za pravl jenje korisničkih apl ikaci ja pa čak ialata za programere

Na projektu je do sada radi lo oko deset l judi Uglavnom su dodaval i podršku zanove platforme primere i l i su povezival i bibl ioteku sa drugim jezicima Što sebuduće saradnje na ovom projektu tiče sve je dobrodošlo čak i sȃmo korišćenjebibl ioteke a zahtevi za uvođenje novih mogućnosti unapređuju samu bibl ioteku

bgfx

12

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Predstavljamo

13

Broj 33

1 Podržava grafičke API-je

bull Direct3D 9bull Direct3D 11bull OpenGL 2 1bull OpenGL 3 1+bull OpenGL ES 2bull OpenGL ES 3 1bull WebGL 1 0

2 Podržava platforme

bull Android (14+ ARM x86 MIPS)bull asm jsEmscripten (1250)bull iOSbull Linuks (x86 x86_64)bull Nejtive klajent (Native Client PPAPI37+ ARM x86 x86_64 PNaCl)

bull OS Iks (OSX 109)bull Rasberi-paj (RaspberryPi - ARM)bull Vindouz (Iks-pe Vista 7 8 10)bull Vin-ar-ti (WinRT WinPhone 80+ )

bgfx

14

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Autor Stefan Nožinić

UvodrEFInd je softverska apl ikaci ja za EFI (Extensible Firmware Interface) sisteme kojaomogućava izbor više operativnih sistema na jednostavan način Ovo je samoupravnik buta (boot) i u ovom broju vam predstavl jamo o kakvom projektu je reč ikako se može primeniti

Šta je (U)EFIPre nego što predstavimo sam projekat trebalo bi prvo da skrenemo pažnju idetal jni je da predstavimo problematiku EFI je nastao kao zamena za dosadašnj iBIOS (Basic InputOutput System) i razvi la ga je kompani ja Intel Ovaj pristup jekasni je zamenjen UEFI standardom EFI tehnologi ja ima prednost u slučajevimakao što su

bull Pokretanje sistema na diskovima preko 2TB memori je korišćenjem GPTtehnologi je

bull Nezavisnost od specifične arhitekture procesorabull Modularan dizajnbull Dobro okruženje pre učitavanja operativnog sistema što podrazumeva i mrežnupodršku

Tehnologi ja omogućava upotrebu 32-bitnih i 64-bitnih adresa na procesorima koj ito podržavaju Rani je BIOS tehnologi ja to ni je omogući la već se uvek koristi la 16-bitna implementaci ja iz istori jskih razloga

Predstavljamo

15

Broj 33

Particiona šemaEFI tehnologi ja ima drugači ju šemu partici ja Dok je stari pristup podržavao samoMBR (Master Boot Record) šemu nova tehnologi ja podržava GPT šemu kojaomogućava veći broj primarnih partici ja Sa starim pristupom taj broj bio jeograničen na četiri primarne partici je od koj ih je svaka morala da ima kapacitetmanj i od 2TB

AplikacijeUEFI podržava izradu apl ikaci ja koje bi se pokretale nezavisno od operativnogsistema Ove apl ikaci je se mogu naknadno instal irati Primer takvih apl ikaci ja supokretači (loader) operativnih sistema kao i upravnici butovanja

EFI sistemska particijaEFI podržava posebnu partici ju za smeštanje raznih potrebnih informaci ja kao štosu potrebni podaci za rukovanje računarom i specifične apl ikaci je Ova partici ja jenajčešće FAT32 sistem datoteka

rEFInd

16

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

But menadžer i but louder - ima razlikeOd popularizaci je GRUB upravnika mnogi korisnici su ostal i bez objašnjenja kakvaje razl ika između but loudera (boot loader) i but menadžera (boot manager) Ovose dešava jer GRUB pruža obe usluge u sklopu jednog programa pa se time teževidi razl ika između ova dva pojma But menadžer je upravnik pomoću kojeg jemoguće izabrati operativni sistem za pokretanje On ne zna ništa speci ja lno ooperativnom sistemu pa time ne zna ni kako da ga pokrene On samo zna datreba da pokrene but louder za taj sistem Kada je sistem izabran pokreće sespecifičan but louder za taj sistem koj i je zadužen za dal j i proces pokretanjakernela Za razl iku od GRUB upravnika rEFInd pruža samo usluge but menadžerašto u početku može zvučati poražavajuće za ovaj projekat Kada uzmemo u obzirda većina sistema danas ima but louder u sklopu kernela (ukl jučujući i Linuks odnovi j ih izdanja) ovaj problem je prevaziđen

Predstavljamo

17

Broj 33

InstalacijarEFInd postoj i kao deb i kao rpm paket al i postoj i i zapakovan kao zip arhivaZahval ju jući tome paket je moguće instal irati upotrebom dpkg komande nadistribuci jama baziranim na Debi janu kao i upotrebom rpm komande nadistribuci jama koje koriste taj način pakovanja paketa Za Ubuntu postoj i i PPArepozitori jum pa rEFInd može biti instal iran na sledeći način

sudo apt-add-repository pparodsmithrefindsudo apt-get updatesudo apt-get install refind

Nezavisno od toga koj i način od gore opisanih koristite rEFInd će automatski bitiprebačen na ESP i biti postavl jen kao podrazumevani upravnik

KonfiguracijarEFInd bi trebalo da vam pruži zadovol javajuću funkcionalnost bez dodatnekonfiguraci je posle instalacionog procesa On će automatski detektovati loudereoperativnih sistema korišćenjem pretrage po svim partici jama koje prepozna Uslučaju da ste napredni j i korisnik i da žel ite da modifikujete ponašanje rEFInda tomožete uraditi izmenom njegove konfiguracione datoteke Postoj i g lobalnakonfiguraci ja i konfiguraci ja za svaki sistem posebno Ovaj tekst bi postao previšedugačak kada bismo ulazi l i u detal je same konfiguraci je pa vam zatopreporučujemo ako imate potrebu za dodatnom konfiguraci jom da posetitedokumentaci ju projekta i l i ako imate neke nedoumice da kontaktirate s namapreko naše e-pošte

Za krajŽelel i bismo da ovaj tekst zakl jučimo ocenom da je ovaj projekat dosta zaniml j ivda pruža zadovol javajuću funkcionalnost i da omogućava korisnicima koj i koristeovaj sistem pokretanja lako pokretanje svoj ih operativnih sistema Još jednomžel imo da vam skrenemo pažnju da nam se obratite i ukažete ako smo nešto važnopropusti l i da pomenemo i l i ako nam se negde potkrala greška

Korisni l ink http wwwrodsbookscomrefind

rEFInd

18

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Autor Nikola Hardi

Opšte je poznato da su računari dobri u radu sa brojevima Međutim vremenom suse i potrebe korisnika i alati za programiranje računara razvi ja l i i rad sa drugači j imtipovima podataka je postao uobičajen i znatno jednostavni j i nego rani je Svi smoimal i pri l iku da radimo sa programima za obradu fotografi ja video materi ja la i l izvučnih zapisa Multimedi ja je ipak tema koja prevazi lazi jedan uvodni kurs o C-ual i do kraja ovog seri ja la ćemo se dotaći i tih tema Za početak osvrnućemo se narad sa tekstualnim podacima na C način

Stringovi na C načinDefinici ja tekstualnog podatka u sferi računarstva se uglavnom svodi na to da jetekst niz karaktera a karakteri su znakovni simbol i Iako imamo mogućnost daradimo sa tekstom i l i multimedi jom računari ipak razumeju samo brojeve pamoramo tako da im predstavimo i tekst Postoje razni standardi kako se pojedinikarakteri predstavl ja ju u memori j i računara između ostalog najpoznati j i su ASCIIEBCDIC UTF i td EBCDIC je standard koj i je prisutan u Eplovom (eng Apple) svetu iviše nema tol iko važnu ulogu ASCII je standard koj i je vrlo prisutan i danas UTF jenastao kao proširenje ASCII standarda javl ja se u više vari janti i uvodi podršku zapisma razl ičita od abecede (kinesko japansko ćiri l ica arapsko i mnoga druga)

Važno je napomenuti da je originalni ASCII standard propisivao 7 bitova za jedankarakter što je dalo prostora za 128 karaktera Među tim karakterima se nalazecifre mala i vel ika slova engleskog alfabeta i niz kontrolnih karaktera Kontrolnikarakteri su oznake za novi red prazno mesto tabulator upravl janje štampačima(vraćanje glave štampača na početak) rad sa terminal ima (alarm i l i obaveštenje

Kako da

Uvod u programski jezik CRad sa stringovima (9 deo)

19

Broj 33

da se nešto dogodi lo) ASCII standard je proširen na 8 bitova odnosno ceo jedanbajt i sada podržava 256 karaktera Potražite na internetu termin bdquoASCII tabelardquo dabiste stekl i uvid u to kako izgleda tzv tabela ASCII karaktera

Rad sa pojedinačnim znakovima ne obećava mnogo Postoj i realna potreba zaradom sa rečima rečenicama l ini jama teksta itd Podaci koj i se sastoje od više odjednog karaktera se u domaćoj l i teraturi nazivaju znakovnim niskama madaodomaćen je i naziv bdquostringrdquo koj i je i mnogo češće u upotrebi U programskomjeziku C se stringovi predstavl ja ju običnim nizovima karaktera (char niz[]) a krajteksta se označava NULL karakterom odnosno speci ja lnim znakom 0 či jabrojevna predstava je pogađate nula Ovakva predstava tekstualnih podatakanosi sa sobom i pojedine kompl ikaci je Gotovo svi savremeni jezici poznaju tipstringa dok su u C-u stringovi ipak samo obični nizovi

Da se podsetimo nizovi u C-u su zapravo pokazivači na deo u memori j i Kadapokušamo da pristupimo jednom elementu niza tada se vrši operaci jabdquodereferenciranjardquo sa zadatim odstupanjem Sledi nekol iko primera koj i i lustrujurad sa nizovima na primeru nizova karaktera

char niz1[] = zdravoniz1[0] = Z

char niz2[5]niz2[0] = 0niz2[1] = kniz2[2] = 0

Pri deklaraci j i niza 1 ni je zadata dužina zato što je u jednom izrazu zadata iinici ja l izaci ja niza koja glasi ldquozdravordquo Prevodi lac može sam da zakl juči kol ikomemori je je potrebno

U drugom primeru je kreiran niz karaktera dužine 5 Međutim popunjena su samoprva tri mesta Primećujete razl iku između prvog i trećeg elementa Prvi je cifra 0(uokviren je navodnicima) a treći je brojčana vrednost 0 koja označava krajstringa

Može se primetiti još jedna razl ika u data dva primera U prvom primeru sukorišćeni dvostruki navodnici dok su u drugom korišćeni jednostruki Razlog za to

Uvod u programski jezik C

20

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

je što se znakovni nizovi koj i su uokvireni dvostrukim navodnicima smatrajustringovima i podrazumevano im se dodaje bdquoterminatorrdquo odnosno znak NULL koj ioznačava kraj stringa Jednostruki navodnici se iskl jučivo koriste za predstavl janjepojedinačnih karaktera Ovo znači da zapisi ldquoardquo i a nisu jednaki Prvi zapis jedužine 2 jer ima i znak NULL koj im je završen

Ispisivanje i učitavanje stringovaPre nego što nastavimo dal je biće objašnjen jednostavan način za ispisivanje iučitavanje stringova pomoću standardnog ulazaizlaza Da se podsetimobibl ioteka za standardni ulazizlaz (ispis podataka u konzol i odnosno terminalu) jestdioh Ukol iko se koristi formatirani ispis potrebno je funkci jama printf() iscanf() proslediti format string koj i sadrži speci ja lan znak s čime je označenoda žel imo da ispišemo znakovni niz sve do NULL karaktera Drugi način jeupotrebom funkci ja puts() gets() i getline() iz bibl ioteke stringh Sledi primer

include ltstdiohgt include ltstringhgt int main()

char niz1[] = Zdravo svete

printf(sn niz1)

scanf(s niz1)puts(niz1)

return 0

Može se primetiti da je u slučaju funkci je printf() potrebno naglasiti speci ja lnimkontrolnim karakterom n da nakon ispisa treba preći u novi red Funkci ja puts() topodrazumevano radi

Za ove i sve druge funkci je dodatnu pomoć je moguće pronaći u Linuksovim manstranicama u odel jku 3 koj i je posvećen standardnim bibl iotekama Recimo mangetline sadrži detal jno uputstvo o funkci j i getline()

Kako da

21

Broj 33

Kopiranje stringovaKao što je u prethodnom odel jku napomenuto stringovi su u C-u samo običninizovi To znači da sledeći kod verovatno neće uraditi ono šta bi bi lo očekivano

niz1 = niz2

Ovime smo pokazivaču niz1 bdquorekl irdquo da pokazuje tamo gde i pokazivač niz2 Efektivno oni sad pokazuju na isti tekst međutim ako izmenimo niz1 to će seodraziti i na niz2 a važi i obrnuto Ovime smo dobi l i samo dva pokazivača na istideo memori je a uglavnom to ni je bio ci l j

Drugi način kako bismo sadržaj drugog niza mogl i da kopiramo u prvi niz je petl jakojom bismo kopiral i element po element Pošto je operaci ja kopiranja stringovavrlo često potrebna postoj i standardna bibl ioteka za rad sa stringovima koja sezove stringh a funkci ja za kopiranje stringova je strcpy()

strcpy(niz1 niz2)

Dati primer kopira sadržaj niza 2 u niz 1 Kopira se element po element sve dok seu nizu 2 ne naiđe na NULL karakter Ovakvo kopiranje (element po element) seinače u stranoj l i teraturi naziva i bdquodeep copyrdquo i vrlo često se sreće u radu sastrukturama podataka gde je potrebno obići celu strukturu podataka i svakielement kopirati a strukturu opet izgraditi u drugom delu memori je

Zaniml j ivo je što je kopiranje stringova moguće pojednostaviti ukol iko definišemonovi tip podatka kao strukturu koja sadrži niz karaktera i potom izvršimo kopiranjeOvo je trik koj i se uglavnom ne koristi u praksi i spomenut je samo kaozaniml j ivost

include ltstringhgt struct str char niz[50]

int main()

struct str s1struct str s2

Uvod u programski jezik C

22

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

strcpy(s1niz zdravo)s2 = s1

s2niz[0] = Z

puts(s1niz)puts(s2niz)

return 0

Kreirana je struktura str koja sadrži pol je niza karaktera pod nazivom niz Pozivomfunkci je strcpy() kopiramo string ldquozdravordquo u s1 čime smo bdquonapuni l irdquo sadržajobjekta s1 Potom je izvršena redovna dodela čime je sadržaj objekta s1 kopiran us2 Zatim je izmenjen samo prvi karakter objekta s2 i oba stringa su ispisanaPrimećujete da su kopirani svi znakovi a da je izmenjen samo drugi objekatZaniml j iv trik

Poređenje spajanje i pretraga stringovaDruga vrlo česta situaci ja je poređenje dva stringa Ukol iko bi poređenje bi loizvršeno upotrebom redovnog operatora za poređenje == tada bi u stvari bi lepoređene samo adrese na koje pokazuju pokazivači tih stringova jer da sepodsetimo stringovi su u C-u samo obični nizovi Ispravan način za poređenje dvastringa je pozivanjem funkci je strcmp() či ja je povratna vrednost 0 ukol iko su jojprosleđeni stringovi sa jednakim sadržajem

include ltstringhgt int main()

char niz1[] = zdravochar niz2[] = zdravo

if( strcmp(niz1 niz2) == 0)puts(Stringovi su jednaki)

elseputs(Stringovi nisu jednaki)

return 0

Kako da

23

Broj 33

Funkci ja strcmp() poredi svaki element prosleđenih nizova pojedinačno a dobraje vežba implementiranje nove funkci je strcmp() koja će unutar petl je da porediodgovarajuće elemente prosleđenih nizova i potom vratiti rezultat 0 ukol iko su svielementi jednaki Potrebno je pripaziti na situaci ju kada su stringovi razl ičitihdužina

U svetu računara spajanje dva sadržaja se zove konkatenaci ja Odatle i nazivfunkci je za spajanje dva stringa strcat() Važno je uveriti se da je string u koj i sedodaje sadržaj dovol jno vel ik da ga prihvati inače može da dođe do nežel jenogprepisivanja u memori j i uništavanja drugih podataka i neispravnog ponašanjaprograma

Pretraga unutar stringa se može obaviti funkci jom strstr() Ova funkci ja kaoparametre očekuje pokazivač na niz karaktera (string) u kojem je potrebno pronaćistring koj i je prosleđen kao drugi parametar Povratna vrednost je pokazivač nadeo memori je gde se žel jeni string prvi put pojavio

Sledi malo opširni j i primer koj i i lustruje spajanje pretragu i kopiranje stringova

include ltstringhgt int main()

char niz_a[50] = LiBRE je char niz_b[] = najbolji casopischar niz_c[] = e-magazin

strcat(niz_a niz_b)puts(niz_a)

char cilj = strstr(niz_a casopis)strcpy(cilj niz_c)

puts(niz_a)

return 0

Uvod u programski jezik C

24

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Pretvaranje tipova podataka u stringove ipretvaranje iz stringovaPretvaranje podataka iz jednog tipa u drugi i l i kastovanje (eng type casting) se zavećinu tipova vrši jednostavno pisanjem tipa u zagradama na primer (int)523 Stringovi su i po ovom pitanju drugači j i Postavl ja se pitanje šta pretvoriti ucelobrojni tip - da l i adresu na koju pokazuje pokazivač niza koj i predstavl ja stringPrvi element Šta ako taj string ni je broj Predstavićemo rešenje za konverzi jubrojeva u stringove i obrnuto

Ispis podataka na ekranu se takođe može smatrati konverzi jom Broj sa pokretnimzarezom je u memori j i prikazan na pomalo čudan način a pozivom funkci jeprintf() kada je kao format zadat f na ekranu ćemo dobiti razuml j iv niz znakovaSl ičan rezultat možemo dobiti funkci jom sprintf() a jedina razl ika u odnosu naprintf() je ta što sprintf() kao prvi argument očekuje pokazivač na string dok sudrugi (format string) i treći (argumenti koj i se povezuju sa formatnim stringom)sl ični kao kod funkci je printf()

Kod pretvaranja stringova u brojevne tipove može poslužiti funkci ja sscanf() kojase ponaša sl ično kao funkci ja scanf() s tim što je prvi argument adresa(pokazivač na string) koju žel imo da skeniramo u nadi da će se poklopiti saformalnim stringom koj i je drugi argument a rezultati će biti sačuvani u adresamakoje su prosleđene kao 3 4 i ostal i parametri Drugi način za pretvaranje stringovau celobrojne brojeve i brojeve sa pokretnim zarezom su funkci je atoi() i atof()

Funkci je koje koriste formatni string su česte u jeziku C i zaslužuju posebnu pažnjumeđutim to je priča za poseban članak U ovu klasu funkci ja spadaju recimo ifunkci je za rad sa datotekama

BezbednostRad sa stringovima može da bude izuzetno opasna stvar po pitanju bezbednostiprograma Ukol iko se niz karaktera ne završava NULL karakterom svašta može dapođe po zlu pri pozivu funkci ja kao što su strcpy() strcmp() i sl ične Cela klasatih funkci ja se oslanja na postojanje znaka koj i označava kraj stringa Kada stringni je propisno završen tada te funkci je mogu da zalutaju u deo memori je vanstringa i svašta može da pođe po zlu Ovakav tip napada se inače zoveprekoračenje bafera (eng buffer overflow) Preporučen način kako da izbegnete

Kako da

25

Broj 33

Pregled popularnosti GNULinuxBSDdistribuci ja za mesec februar

Distrowatch

Pad ltPorast gtIsti rejting =(Korišćeni podaci sa Distrovoča)

12345678910111213141516171819202122232425

MintUbuntuDebianopenSUSEelementaryMageiaFedoraManjaroCentOSLXLEArchBodhiAndroid x86Kal iPCLinuxOSPuppyRobol inuxLubuntuQ4OSBlack LabNetrunnerSimpl icityEvolveZorin4MLinux

2919gt1778gt1701gt1323gt1204gt1174gt1166gt1028lt1020gt965gt957gt907gt900lt760gt742lt732gt695gt670gt663gt655gt652gt629gt607gt583gt517=

takve nepri jatne situaci je pri radu sastringovima je da koristite verzi jefunkci ja koje su ograničenemaksimalnom dužinom stringa kaošto su strncpy() strncat() strncmp() i td Sve te funkci je kaotreći parametar zahtevaju broj koj iodređuje maksimalnu očekivanudužinu stringa Još jedna vrlo korisnafunkci ja je strlen() či j i zadatak je daodredi dužinu stringa Budite pažl j ivi ovo je prvo mesto gde se tražebezbednosni propusti u programimaNe verujte podacima koj i spol ja ulazeu vaš program a pogotovo kada je rečo stringovima

Uvod u programski jezik C

26

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Autor Dejan Maglov

Projekti slobodnog softvera obično počinju kao projekti pojedinca i l i male grupeprogramera a koj i rade na razvoju softvera či j i je ci l j da zadovol j i neke od nj ihovihl ičnih potreba Projekat će se smatrati uspešnim ukol iko se šira zajednicazainteresuje za njega nakon što prepozna korisnost softvera ne samo za pojedincekoj i su započel i projekat već i za širu zajednicu Kada je u pitanju slobodni softvervremenom je postala stalna praksa da se zajednica umeša u razvoj projekataDobri projekti sami privlače zajednicu l judi koj i su zainteresovani za nj ih i ona uvećini slučajeva preuzima na sebe testiranje pobol jšanje funkcionalnosti održavanje i tehničku podršku projekta

Zajednice slobodnog softvera mogu da se okupe oko projekta slobodnog softverapo teritori ja lnom principu i l i da nastanu kombinaci jom ovih principa

Primeri

bull LiBRE projekat okupl ja zajednicu oko projekta bez teritori ja lnog ograničenjabull LUGoNS (Linux User Group of Novi Sad) je zajednica korisnika Linuksa poteritori ja lnom principu bez obzira na konkretan projekat

bull Ubuntu-rs zajednica koja je kombinaci ja okupl janja zajednice oko konkretnogprojekta (Ubuntu) i teritori ja lnog principa koj i se ograničava na teritori ju Srbi je

Ova sinergi ja projekata i korisnika slobodnog softvera ima više prednosti i zakorisnike i za projekat Projekat se na ovaj način brže razvi ja dobi ja na

U potrazi za idealnom distribucijom

Socijalni kriterijumi za izbor idealnedistribucije (6 deo)

Oslobađanje

27

Broj 33

funkcionalnosti greške se brzo ispravl ja ju i td Korisnici dobi ja ju osećaj dapripadaju grupi druže se sa istomišl jenicima učestvuju u promoci j i kval itetnihpojedinaca itd

Dve najvažni je uloge lokalnih zajednica za GNULinuks distribuci je su

1 pružanje tehničke podrške i edukaci je na maternjem jeziku2 rad na lokal izaci j i i pri lagođavanje distribuci je lokalnim potrebama

Informaci ja da postoje lokalne zajednice slobodnog softvera je od naročitogznačaja za početnike i korisnike koj i nedovol jno dobro znaju strane jezike(naročito engleski jezik) Ako izuzmemo komerci ja lne projekte otvorenog koda(Red Het SUSE) ne postoje zvanične škole i kursevi za slobodni softver Zaedukaci ju početnika je uglavnom zadužena zajednica a jasno je da je učenje namaternjem jeziku uvek lakše nego na bi lo kom drugom stranom ma kol ikodobro ga poznajete

Forumi i viki stranice lokalnih zajednica su prave bibl ioteke u koj ima korisnicimogu da nađu većinu odgovora na svoja pitanja a za sva ostala tu su forumi iIRC kanal i zajednica na koj ima uvek ima nekoga i koj i imaju već gotova rešenjaza vel iki broj problema

U potrazi za idealnom distribucijom

28

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Lokalne zajednice kao kriterijum za izbor idealnedistribucijePočetnicima i korisnicima koj i ne vladaju dobro engleskim jezikom toplopreporučujemo da biraju GNULinuks distribuci je koje imaju aktivnu lokalnuzajednicu Ovladavanje novim operativnim sistemom je mnogo lakše ukol iko vambdquoleđa čuvardquo lokalna zajednica na koju se uvek možete osloniti

Već smo spomenul i da su popularni je GNULinuks distribuci je namenjenepočetnicima Slučaj je isti i sa lokalnim zajednicama okupl jenim oko nj ih Ovomeđutim ne znači da je kval itet usluga koje nude manje popularne lokalnezajednice okupl jene oko distribuci ja namenjenih napredni j im korisnicima loši j i Manje popularne distribuci je okupl ja ju manje l judi a l i zato oni poseduju većeznanje Iskustvo sa zajednicama okupl jenim oko slobodnog softvera je uglavnompozitivno i ukazuje na to da kval itet usluga koje one nude korisniku ni je uslovl jenpopularnošću i masovnošću zajednice nego iskl jučivo njenom (ne)aktivnošću

U svakom slučaju dosadašnj i saveti za izbor idealne distribuci je važe i dal jeSoci ja lni aspekt slobodnog softvera je samo dodatni faktor koj i vam može pomoćipri donošenju odluke kada se dvoumite između nekol iko mogućih rešenja

Još uvek ne postoj i na jednom mestu potpuni i ažurirani spisak svih aktivnihsrpskih zajednica Nešto najbl iže tome može da se nađe na adresihttps pulsslobodewordpresscom Za informaci je o nekim drugim lokalnimzajednicama koje možda postoje al i nisu na ovom spisku moraćete sami dapretražite internet

Lokalizacija kao kriterijum za izborZa lokal izaci ju GNULinuks distribuci ja i GNU programa odgovorni su pojedinci ilokalne zajednice Sasvim sol idnu srpsku lokal izaci ju mogu imati i projekti koj iuopšte nemaju svoju lokalnu zajednicu a isto tako lošu lokal izaci ju mogu imati iprojekti sa dobrom lokalnom zajednicom Sve je stvar prioriteta zajednica iaktivnosti pojedinaca

Pravu i kontrol isanu lokal izaci ju može imati samo lokalni projekat Ovakvihprojekata u Srbi j i ima malo i teško se probi ja ju čak i u lokalu u konkurenci j isvetskih projekata Istina je da mnoge veće GNULinuks distribuci je imaju srpskulokal izaci

Oslobađanje

29

Broj 33

ju u ponudi pa se možda sl ični lokalni projekti koj i su usmereni samo na striktnulokal izaci ju smatraju nepotrebnima Uzvodna lokal izaci ja u slučaju Srbi je vrlo čestobude veoma loše čak nakaradno sprovedena Jedna polovina programa jelokal izovana srpskom ćiri l icom a druga latinicom Ako postoj i još delova sistemakoj i uopšte ni je lokal izovan onda se pojavl ju ju i delovi programa koj i su naengleskom Zato ćemo se vratiti na prvu rečenicu ovog pasusa i ponovo utvrditi dasamo lokalni projekat može potpuno kontrol isati pravu srpsku lokal izaci ju

U Srbi j i za sada imamo dva aktivna projekta GNULinuks distribuci je ndash TriOS(http triosrs) i Serbian (http wwwdebian-srbi ja iz rspserbianhtml) Obaprojekta su mlada i imaju svoj ih prednosti i mana Kome treba lokal izovanoperativni sistem može da proba jedan od ova dva projekta

U potrazi za idealnom distribucijom

30

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Iako ove dve domaće distribuci je nisu baš naj idealni je interesantno je probati ih iuporediti sa drugim distribuci jama

Za kraj serijalaNamera nam je bi la da kroz ovaj seri ja l o kriteri jumima pri izboru idealnedistribuci je definišemo većinu kriteri juma pri izboru i pokažemo zašto je teškoodgovoriti na jednostavno pitanje bdquoKoju mi distribuci ju preporučujeterdquo

Ni na samom kraju nismo dal i konkretan odgovor na pitanje koja je idealnaGNULinuks distribuci ja Suviše je subjektivnih ocena da bi se mogao datikonkretan odgovor Smatramo da je jako teško napisati neki algoritam izbora pokriteri jumima koje smo identifikoval i i definisal i a možda je čak i nemoguće poštose izlazi stalno menjaju Izlazi iz tog algoritma su GNULinuks distribuci je koj ih izdana u dan ima sve više a i one stare se stalno menjaju

Sam seri ja l bdquoU potrazi za idealnom distribuci jomrdquo neće biti završen samo zato štose više neće baviti kriteri jumima pri izboru nego će pokušati da predstavl jaGNULinuks distribuci je koje su po nečemu bdquoidealnerdquo

Oslobađanje

31

Broj 33

ORM

Autor Dejan Čugal j

Object relation mapping (ORM)

ORM (eng Object RelationMapping) je način postizanja traj-nosti (eng persistence) objekataunutar relacionih baza podatakaModel deluje kao posrednik nalogičkom delu apl ikaci je Automat-ski presl ikava podatke iz objekata ubazu i nazad na zahtev apl ikaci jeDa bismo objasni l i kako ovo sveradi moramo da vam predstavimoORM frejmvork (eng framework)programa otvorenog koda -Hajbernejt (eng Hibernate -http hibernateorgorm)

Šta je ORMUkratko ORM je automatizovano transparentno presl ikavanje objekatakorišćenjem metapodataka koj i opisuju mapiranje veze između objekta i baze

ORM (2 deo)

Slobodni profesionalac

32

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

podataka u apl ikaci jama koje su napisane u objektno ori jentisanim programskimjezicima Apl ikaci ja komunicira sa ORM-om preko njegovog vlastitog API-ja (engapplication programming interface) i određenih objekata Ova komunikaci ja jepotpuno odvojena od komunikaci je koja se odvi ja između ORM-a i baze podatakapreko SQL-a i DBC-a

Da bi se postigla i dostigla potpuna snaga ORM-a u apl ikaci j i koju projektujemonikako se ne sme iskl jučiti znanje relacionih modela SQL jezika te poznavanjeDBMS-a u kome se radi ORM ni je ništa drugo do srednj i sloj između gorepomenutih tehnologi ja i objektno ori jentisanog programiranja kao što smo to dosada već više puta naglasi l i

Implementacija ORM-aPostoje razl ičiti načini implementaci je ORM-a Mark Fasl (Mark Fussel) je 1997definisao četiri nivoa

1 bdquoČistrdquo relacioni način2 Slabo mapiranje objekata3 Umereno mapiranje objekata4 Potpuno mapiranje objekata

bdquoČistrdquo relacioni način

Cela apl ikaci ja ukl jučujući i korisnički interfejs dizajnirana je relacionim modelom iSQL relacionim operatorima Ovakav pristup je odl ičan za male projekte Direktanpristup SQL-u omogućava fino podešavanje svakog aspekta upita koj i se postavl jabazi podataka Osnovne mane su portabi lnost (prenosivost) i održavanje ovakvihsistema pogotovo ako se planira korišćenje apl ikaci je na duži rok Ovakvi sistemimasovno koriste sačuvane procedure (eng stored procedures) što znači da jeposlovna logika (eng busines logic) prebačena na samu bazu podataka

Slabo mapiranje objekata

Entiteti su predstavl jeni kao klase i mapiranje se radi ekspl icitno ka relacionimtabelama SQLJDBC je sakriven od poslovne logike korišćenjem poznatih šablona(patterns)

Umereno mapiranje objekata

Slobodni profesionalac

33

Broj 33

Dizajn apl ikaci ja se svodi na objektne modele SQL se generiše u vremekompaj l iranja (eng build-time) i l i u vreme izvršavanja (eng run-time) Specifikaci jaupita nad bazama podataka se radi na objektno ori jentisanom jeziku Ovakvisistemi se koriste u apl ikaci jama srednj ih vel ičina kod koj ih je bitna portabi lnostizmeđu razl ičitih sistema za upravl janje bazama podataka (DBMS)

Potpuno mapiranje objekata

Podržava sofisticirano objektno model iranje nasleđivanje i pol imorfizamEfikasnost dobi janja podataka je na visokom nivou i koriste se metode kao što sulenjo učitavanje (eng lazy loading) i strategi ja keširanja (eng caching) Implementaci ja je transparentna u apl ikaci jama Ovaj nivo je jako teško dostići Pojedincu su potrebne godine razvoja da postigne ovakvu fleksibi lnost pristupa imanipulaci ja u relacionim bazama podataka Upravo ovaj nivo se postiže ako sekoriste rešenja ORM-a kao što je Hajbernejt

Zašto ORMImplementaci ja ORM rešenja pogotovo ako seprvi put susrećete sa ovim modelom može dabude veoma frustrirajuća i malo teža zaimplementaci ju Kada ovo kažemo misl imo daprogramer koj i implementira ORM i hoće da istibude kval itetno urađen mora da posedujepredznanje objektno ori jentisanog programiranjai naprednih tehnika kao što su nasleđivanje ipol imorfizam

Ovo inicira fundamentalna pitanja

bull Pa zašto bi iko onda implementirao ovako nešto kompleksnobull Vredi l i truda upuštati se uopšte u ORM

Odgovor ni je jednostavan Dosadašnja iskustva u korišćenju ORM-a i njegovapopularnost već daju odgovor na postavl jeno pitanje Očigledno je da su benefitikoje donosi ovaj model veći od kompleksnosti njegove implementaci je a to su

Hibernate ORM

34

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Veća produktivnost

ORM smanjuje kol ičinu koda potrebnog za ostvarivanje trajnosti podataka Ovoomogućava programeru da vreme koje bi utrošio na ručno mapiranje podatakautroši na druge delove apl ikaci je

Lakše održavanje

Manje l ini ja koda osigurava bol ju razuml j ivost (i možda bol j i kval itet koda) jernaglašava apl ikaci jsku logiku ORM takođe ublažava uticaj nastal ih promena kaošto su promene u bazi strukturi tabela i td

Prenosivost

Većina ORM rešenja podržava sisteme za upravl janje bazama podataka raznihproizvođača ORM u potpunosti odvaja sloj apl ikaci je od stvarne SQL komunikaci jekoja se odvi ja u pozadini Time omogućava da se pišu apl ikaci je koje će moći da seizvršavaju na razl ičitim bazama podataka bez potrebe za dodatnim kodiranjemOva komunikaci ja se odvi ja sa programskim interfejsima ORM-a nezavisno oDBMS-u sa koj im je u bi lo kom momentu povezan ORM takođe omogućava lakšiprelaz sa manj ih na veće baze podataka tokom razvoja apl ikaci je

Uvidel i smo da trenutno postoje dve paradigme koje se bdquosudarajurdquo i koje supodjednako dobre same za sebe Relaciona paradigma potvrđuje da sve što jeizgrađeno na matematičkim osnovama je i trajno u smislu kval iteta koje posedujeU domenu u kom relaciona paradigma egzistira ona je ako je to u ovo vremeuopšte moguće tvrditi nezamenj iva

Ono što otvara pitanja i daje razlog za sumnju je koja je krajnja granicaupotrebl j ivosti relacione paradigme tj kol iki su kapaciteti složenosti zahtevaapl ikaci ja sa kojom može da se nosi Praksa je pokazala da je sasvim mogućebdquoizvestirdquo složene projekte - al i održavanje skalabi lnost razuml j ivost prenosivost -pitanja su sa koj im se relaciona paradigma teško može izboriti

Sa druge strane svoj habitat u informacionim tehnologi jama je našla i objektna

Slobodni profesionalac

35

Broj 33

paradigma Iako na prvi pogled ova dva modela nemaju ništa zajedničko - što je uneku ruku i istinito gledajući prirodu podataka koj im manipul išu - praksa jepokazala da su usko povezane i skoro da imaju sinaptičku vezu

Pitanje bdquokako spoj iti te sinapserdquo dovelo je do žučnih rasprava u uskim naučnimprogramersko-administratorskim krugovima Rodi l i su se razni model i a l i jedan jeiskočio i polako ulazi u široku primenu - a to je ORM Svoj im supti lnim pristupomproblemu nekompatibi lnih paradigmi nekako je uspeo da stvori taj nedostajućibdquoelektrični signalrdquo koj i ih je povezao Ovo je omogući lo da dve strane koje susvaka za sebe u svom domenu ostavi le i ostavl ja ju duboki trag u informacionimtehnologi jama sarađuju i donesu novi kval itet

Korisni l inkovi

[1] Hibernejt http hibernateorg[2] Viki http googlLlZulw[3] Tutori ja l i http googlCGzvnc

Hibernate ORM

36

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Autor Kriptopank

Šta su zapravo metapodaci Najkraće rečeno to su podaci o podacima i l iinformaci je koje opisuju podatke

Najpre da napravimo razl iku između podataka i metapodataka Podaci sunaprimer snimak (i l i transkript) vaših telefonskih razgovora sadržaj poruka kojepišete primate i l i šal jete podaci koje kačite na internet i l i preuzimate pretrageGuglom postovi na forumima dopisivanja na IRC kanal ima i l i drugim četovimaaudio i video snimci Skajp razgovora i tako dal je

Hajde da vidimo šta bi bi l i odgovarajući metapodaci za ove primere

bull Za telefonske razgovore metapodaci mogu biti lokaci ja učesnika brojevitelefona trajanje razgovora IP i MAC adresa

bull Za poruke četove i Skajp i l i druge video-audio komunikaci je sl ično je kao kodtelefonskih razgovora

To su samo metapodaci

Internet mreže i komunikacije

37

Broj 33

bull Kod foruma i pretraga Guglom ima malo manje metapodataka al i Gugl i raznisajtovi i forumi ionako čuvaju logove o korisnicima što su takođe metapodaci

Ako do sada koj im slučajem niste uvidel i opasnost po privatnost u ovimmetapodacima koje svako od nas smrtnika svakodnevno ostavl ja za sobom usvetu interneta i ostal ih digitalnih komunikaci ja nadamo se da će vas ovaj primermakar podstaći na razmišl janje a možda i na nešto više

Zamisl i te da neko (zvaćemo ga posmatrač) stalno sakupl ja metapodatke koje zasobom ostavl jate kao mrvice hleba Posmatrač recimo zna da se nalazite naautoputu nedaleko od famoznog Feketića da se ne krećete da zovete AMSS zatimšlep službu i možda taksi a l i ne zna šta ste razgovaral i I l i posmatrač vidi da steprvo zval i aerodrom Nikola Tesla pa odmah potom taksi a l i ne zna šta sterazgovaral i I l i posmatrač vidi da ste zval i prvo šest brojeva či je identitete takođezna pa vidi da se oni zatim kreću ka vama - GPS (eng Global Positioning System) pa zatim pica servis Mekdonalds i neku poznatu prodavnicu kineske hrane al i nezna šta ste razgovaral i

Posmatrač ne mora da bude mnogo pametan niti da prisluškuje vaše razgovore dabi shvatio šta se dešava i l i šta će se desiti Sasvim mu je jasno da vam je u prvomprimeru auto stao na autoputu zatim da ste se u drugom slučaju uputi l i naaerodrom i da možda putujete van zemlje i l i ste poslal i taksi po nekoga saaerodroma a da u trećem slučaju okupl jate žurku kod vas Više možete pogledatina http googl7vUjP

Iako su to bdquosamordquo metapodaci treba biti svestan da ti metapodaci o vama stvarajujednu digitalnu sl iku i l i bol je reći digitalni mozaik i na neki način vas jedinstvenoodređuju Pogotovo kada se planski prikupl ja ju na više nivoa (kompjuter pametnitelefon pametni automobi l i kreditna kartica) metapodaci čine vaš digitalniidentitet Al i da stvar bude još gora ta sl ika o vama ne mora nužno biti istinita jerse lako može lažirati Recimo možete zameniti telefone i l i automobi le sa nekimnamerno i l i slučajno i l i vam neko može jednostavno ukrasti telefon laptop i l ikreditnu karticu Zaniml j iv video http googlKO1fKf

Evo jednog primera koj i vas može uvući u vel ike nevol je Recimo da prolazitenekom zabačenom ul icom i da vam neprimetno ispadne telefon al i vi to neprimetite i nastavite dal je svoj im putem U toj ul ici se samo nekol iko minutakasni je desi neko ubistvo i vas pozovu u pol ici ju kao osumnj ičenog Ako koj im

To su samo metapodaci

38

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

slučajem nemate dobar al ibi i l i nemate svedoka da posvedoči da niste bi l i u tojul ici nego tamo gde ste stvarno bi l i a drugih svedoka nema - možete jako lošeproći Zaniml j ivi video http googlspS5OZ

Metapodaci se takođe nalaze i u faj lovimapodacima koje svakodnevnopreuzimamo sa interneta pravimo i koristimo Svaki tip podatka može da sadržiodređene metapodatke koj i bol je opisuju sam podatak kao naprimer vremenastanka podatka kol iko je vremena potrošeno za njegovo kreiranje kol iko putamu je pristupl jeno kad je poslednj i put pristupl jeno i tako dal je Iako se ovakvimetapodaci možda još uvek čine bezazlenim oni mogu sadržati i IP adresuračunara sa kog su napravl jeni GPS koordinate (najčešće PNG format sl ika satelefona) ko ga je napravio (l ičnost i l i kompani jaorganizaci ja) naziv uređaja imodel sa koga je napravl jen kao i MAC adresu uređaja mej l adresu kreatorasoftver koj im je napravl jen i tako dal je Sve ovo može mnogo da naškodiprivatnosti izvornog kreatora faj la pogotovo ako je sadržaj poverl j iv Ukol iko nekopresretne taj podatak na internetu može saznati od koga je potekao Da ovo možebiti katastrofa po kreatora takvog faj la može i lustrovati primer torenta Ako stedošl i u posed nekih sl ika i l i video materi ja la i l i teksta koj i žel i te da podel ite sasvetom preko nekog torent sajta morate taj podatak prvo očistiti odmetapodataka da ne bi svako ko skine to što ste okači l i saznao da vi stoj i te izatoga

Internet mreže i komunikacije

39

Broj 33

Ljudi se konstantno prate metapodaci se sakupl ja ju i to ni je sada već ništa novoal i možemo da se trudimo da iza sebe ostavl jamo malo manje nežel jenihmetapodataka i da ih takoreći čistimo iz podataka koje razmenjujemo Na srećupostoje programi koj i ovo dobro rade

Najpre je potrebno da vidimo koje sve metapodatke neki faj l sadrži kako bismo seuveri l i da ovi metapodaci stvarno postoje i da je faj l bezbedan nakon nj ihovogbrisanja

Ako koristite operativne sisteme GNULinuksa treba da iz terminala preuzmete iinstal irate program pod nazivom exiftool

sudo apt-get install exiftool

Ovaj program će nam pružiti uvid u sve metapodatke koje faj l sadrži Korišćenje jeiz terminala al i je zato veoma jednostavno samo ga pokrenite na sledeći način

exiftool File

i l i

exiftool putanjadofajlapočevodkorenogdirektorijuma

Dobićete prikaz metapodataka koje je program pronašao Sada je potrebno davidimo da l i je podatak bdquoprl javrdquo tj da l i ima u njemu nešto da se briše i da akoima iz njega sve nepotrebno obrišemo Tu će nam pomoći drugi program zvaniMAT (eng Metadata Anonymisation Toolkit) koga možete naći na sajtuhttps matboumorg i l i jednostavno za korisnike Ubuntua i Debi jana uSoftverskom centru i l i ga možete instal irati iz terminala

sudo apt-get install mat

MAT će proveriti da l i je podatak bdquoprl javrdquo i l i ne i za vas ga očistiti od nežel jenihmetapodataka

Kada očistite faj l on je spreman za del jenje sa drugima a vi ste bezbedni jer nikone može reći da je faj l potekao sa vašeg računara

To su samo metapodaci

40

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Autor Dejan Čugal j

GH Hardi bdquoPrava matematika nema uticaj na ratrdquo - odbrana matematičara1940 godina

Bi l Tat - britanski matematičar verovatno niste čul i za njega1942 godine je izveo ogroman poduhvat koj i je skratio rat dvegodine (barem po rečima Ajzenhauera) i spasio mi l ione životaNažalost njegova vel ičina je preminula 2002 godine obavi jenavelom tajne i nikada zvanično ni je priznato njegovo dostignuće

Tomi Flauers - bivši inženjer poštanskog saobraćaja pretvorio jematematičke ideje Tata u prvi računar a to ni je bio bdquoENIACrdquo1Preminuo je 1998 godine a pretpostavl jamo da nikada niste čul ini za njegovu vel ičinu

Ovi umni giganti bdquoBlečl i parkardquo omogući l i su Britani j i da dešifruje strogo poverl j ivumašinu koju je koristio Hitler da diriguje drugim svetskim ratom a to ni je bi labdquoENIGMArdquo nego nešto mnogo tajni je i značajni je Vel ika je verovatnoća da nistečul i ni za ovo Neki kažu da je to bio Hitlerov Blekberi (BlackBerry)

Izgubljeni heroji bdquoBlečli parkardquo

1 engl Electronic Numerical Integrator And Computer - prvidigitalni elektronski računar

Internet mreže i komunikacije

41

Broj 33

1939 godine bdquoBlečl i parkrdquo je postao ratni štab MI6 (britanske vojne obaveštajneslužbe) Do danas je procurelo u javnost i dokumentovano brojnim fi lmskimdokumentarcima samo da je tu Alan Tjuring uspeo da dešifruje nemačkumornaričku šifru poznatu kao bdquoENIGMArdquo i uvel iko doprineo pobedi saveznika a to jesamo deo priče koj i je ispričan

U Blečl i parku su bi la tri heroja AlanTjuring Bi l Tat i Tomi Flauers Od nj ihtroj ice jedino Alanu Tjuringu je priznat deozasluga za pobedu saveznika u Drugomsvetskom ratu Pregledom otkrivenihpodataka danas možemo da tvrdimo daje bdquoENIGMArdquo već sa početka drugogsvetskog rata bi la zastarela tehnologi ja Zbog toga je bi lo lako skinuti veo tajne sa

ovog uspeha heroja Blečl i parka

Izgubljeni heroji bdquoBlečli parkardquo

42

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Bi l Tat koj i je dešifrovao bdquoTANI sistemrdquo (TANI) i Tomi Flauers koj i je samo svojomintuici jom i znanjem sklopio prvi računar na svetu (bdquoKOLOSrdquo) u svrhu bržegdolaženja do informaci ja razbi jenog koda bdquoTANIrdquo tako da zastarelost šifrata budesvedena na minimum - radi l i su na novoj generaci j i mašina za šifrovanje Ovatehnologi ja je bi la prepoznata kao tehnologi ja budućnosti pa i danas iznadinformaci ja o tim tehnologi jama stoj i natpis bdquovrhunska tajnardquo (eng Top Secret) Upravo ovaj veo tajni oko šifrata bdquoTANIrdquo i prvog računara je rezultirao iskrivl jenjuistori je informatike

Za uspehe u prvim godinama rata je zaista zaslužno razbi janje bdquoENIGMArdquo šifrata ito ni je sporno al i krajem 1941 godine u etru planete se začuo novi zvuk To je bi lanova mašina za šifrovanje ni je bi la zasnovana na bdquoMorzeurdquo već je radi la naprincipu teleprintera

Jedna od kl jučnih ideja Hitlerovog ratovanja je bi la u vel ikoj mobi lnosti i brzomdelovanju trupa na terenu a da bi se to izvelo komunikaci ja je isto tako morala dabude u najmanju ruku putem radio signala

Razl ika je ogromna Razl ika je u kol ičini podataka koj i može da se prenese ovimbdquotajnimrdquo putem Prvi svetski rat je bio zaniml j iv jer su se šifrovane poruke baziralena rečima dok je Drugi u potpunosti otvorio vrata današnjoj kriptografi j i a to jematematika

Originalan nemački kocircdni naziv za ovaj šifrat bio je bdquoLORENCrdquo Britanska

Internet mreže i komunikacije

43

Broj 33

obaveštajna služba mu je dala nadimak bdquoTANIrdquo Čak ni dan danas ni je baš poznatokako je sve nastalo al i pouzdano se zna da je tajnu mašinu Hitler nazvaobdquoGehajmšrajberrdquo (nem Geheimschreiber) - mašina tajni

U srž i tehnologi ju šifrovanja bdquoLORENCrdquo šifrata nećemo ulaziti u ovom članku al iverujte nam na reč - ni je bi la jednostavna Može se pretpostaviti da je inspiraci jaŠenonovog 2 rada slučajnosti bi la upravo ova tehnologi ja iz Drugog svetskog rata

Ono čime se Treći rajh vodio je bdquosigurnardquo šifrovana veza koju niko ni je smeo dadešifruje Prenošenje šifrovanih poruka pomoću radio signala je dalo obaveštajnimslužbama mogućnost presretanja poruka poslatih radio talasima Da l i se ovo idanas dešava Imamo l i sigurnost u našim šifrovanim podacima današnj ice

Ono što je usledi lo nakon proboja ovog bdquoneuhvatl j ivogrdquo šifrata je upravo ono što jeprincip današnj ice kao neka vrsta protokola koj i mora da se ispoštuje uperfektnom šifarskom Šenonovom sistemu

1 NIKADA NIKADA NE KORISTITI DVA PUTA ISTI KLJUČ ZA ŠIFROVANJE2 NIKADA NIKADA KLJUČ NE SME DA SE ŠALJE ISTIM KOMUNIKACIONIM KANALOM

KAO PORUKA3 NIKADA NIKADA KLJUČ NE SME DA BUDE MANJ I NEGO ŠTO JE PORUKA (engl

2 Klod Elvud Šenon (eng Claude Elwood Shannon) (1916-2001) - Američkinaučnik i inženjer

Izgubljeni heroji bdquoBlečli parkardquo

44

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

one time pad) 4 NIKADA NIKADA NE SMEMO DA SAKRIVAMO SISTEM ŠIFROVANJA SVE MORA

DA JE OTVORENOG KOcircDA

Najveći propusti kriptologi je koj i su uočeni baš u Drugom svetskom ratu jesupokušaj sakrivanja sredstava koj im se generiše tajna poruka i nepoznavanjeŠenonovih krajnj ih granica informaci ja Kada kažemo bdquosredstvo i sakrivanjerdquomisl imo na algoritme Postavl ja se pitanje zašto je danas kriptologi ja sigurni ja negočetrdesetih i pedesetih godina prošlog veka

Danas uprkos tome što su algoritmi za kriptografi ju otvorenog kocircda tajnostinformaci ja je na višem nivou nego što je to bi lo dok je algoritam bio strogopoverl j iv Tajnost tajnih podataka se ne zasniva na tajnosti a lgoritama koj i generišutaj isti bdquotajni izlazrdquo (eng cipher text) nego u nemogućnosti matematičke inverznefunkci je koja bi šifrovan tekst otvori la Ovde se vidi da je svrha strukture otvorenogkocircda kao jednog od značajnih delova današnje kriptologi je ona koja ga činisigurnim i svima dostupnim

Sada kada se sa ove distance osvrnemo na Drugi svetski rat možemo videti kol ikosmo bi l i bl izu apokal ipse Naime Albert Ajnštajn je već 1944 godine imao urukama recept za nuklearnu bombu Šenon je mogao već u to vreme da nampredoči 100 siguran šifrat (tzv Hitlerovu super šifru) a l i ipak sreća nas jeposluži la da čovečanstvo tada ni je bi lo spremno da upotrebi svu raspoloživutehnologi ju

Albert Ajnštajn bdquoČetvrti svetski rat će se voditi tol jagamardquo

Zaboravl jeni heroj i Blečl i parka iako su odigral i važnu ulogu u pobedi saveznika usvetskom ratu postal i su žrtve bdquotop secretrdquo doktrine potpuno su zaboravl jeni inestal i su iz istori je

Zakl jučak ovog članka je da je ideologi ja otvorenog kocircda sasvim sigurno tu da nampomogne i da otvori vrata ka većoj sigurnosti novim idejama i kval itetu sameinfrastrukture sistema koju svi zajedno razvi jamo

Internet mreže i komunikacije

45

Broj 33

Autor Nikola Hardi

NabrajanjaBez brojeva

Za nabrajanje pojmova u Bimeru (eng Beamer) koristi se okruženje itemize aunutar tog okruženja možemo da dodajemo nove stavke pomoću item Primerizgleda ovako

beginitemizeitem Stavka Aitem Stavka Bitem Stavka C

enditemize

Sa brojevima

Postoje situaci je kada uz nabrajanje treba da stoje i redni brojevi - za to se koristienumerate okruženje a nove stavke se takođe dodaju pomoću item

beginenumerateitem Redni broj 1item Redni broj 2item Redni broj 3

endenumerate

prezentaci ja

Beamer (4 deo)

Sam svoj majstor

46

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

DefinicijeTreća situaci ja je nabrajanje parova termin - definici ja U tom slučaju se koristiokruženje description Već možete da pretpostavite kako se dodaju nove stavke

Primer

begindescriptionitem[Pojam A] Definicija izmišljenog pojma Aitem[Pojam B] Definicija izmišljenog pojma Bitem[Pojam C] Definicija izmišljenog pojma C

enddescription

Ostala podešavanja i zanimljivostiSva prethodna okruženja mogu da budu ugneždena jedno unutar drugog dotrećeg nivoa Treba biti pažl j iv jer sla jdovi vrlo lako mogu da postanu nečitl j ivi Osim toga moguće je izabrati i format oznake i l i rednih brojeva - na primer ovako

beginenumerate[I]beginenumarate[a)]

Takođe moguće je upravl jati pojavl j ivanjem pojedinih stavki na slajdovima Drugimrečima možemo da odredimo da se nabrajanja postepeno otkrivaju tako što ćemouz stavku dodati lt1-gt odnosno broj od kojeg slajda žel imo da se ta stavkapojavl ju je Tada će jedno nabrajanje biti bdquorazvučenordquo na više slajdovaJednostavni ja mogućnost je da u zaglavl je okruženja dodamo +- što znači dažel imo da se svakim slajdom otkriva po jedna nova stavka iz nabrajanja Znak bdquo-rdquo uoba primera znači da žel imo da se stavka pojavi na sledećem slajdu i da ostane

Sam svoj majstor

47

Broj 33

prisutna Možemo da izostavimo znak bdquo-rdquo i tada će stavka biti prisutna samo najednom slajdu i l i da napišemo raspon slajdova u koj ima žel imo da ta stavka budeprisutna

Rad sa kolonama i blokovimaDo sada su svi primeri podrazumeval i da je sadržaj napisan preko cele širineslajda al i Bimer (eng Beamer) ima i jednostavne mehanizme za razmeštanjesadržaja po kolonama Za rad sa kolonama se koristi okruženje columns unutarkojeg možemo da dodajemo nove kolone pomoću columnširina Sadržaj jemoguće potom pisati i van okruženja sa kolonama

U paru sa kolonama često se sreće i okruženje block koje se parametrizujenaslovom Primerom su i lustrovani i okruženje column i okruženje block

beginframebegincolumns

column05textwidthbeginblockNaslov levog blokaSadržaj u prvoj (levoj) koloni endblock

column05textwidthbeginblockNaslov desnog blokaSadržaj u drugoj (desnoj) koloni

endblockendcolumns

beginblockVan kolona

Beamer

48

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Tekst koji se nalazi ispod kolonaendblock

endframe

TabeleIako se u radu sa prezentaci jama sadržaj najčešće može uredno rasporeditipomoću kolona i nabrajanja nekada to ni je dovol jno jer su tabele pravi formatBimer podržava standardno Lateh (LaTeX) okruženje za rad sa tabelamaOkruženje za rad sa tabelama se zove tabular Pri kreiranju nove tabele moguće jepodesiti koje kolone će biti razdvojene l ini jom i da l i će nj ihov sadržaj biti centrirani l i uz levu i l i uz desnu ivicu Dodavanje novog reda se jednostavno radidodavanjem hline Lateh pruža zaista jako fleksibi lan rad sa tabelama i sigurno ćedoskočiti svim mogućim i nemogućim zamisl ima Potražite bi lo koje Lateh uputstvoza rad sa tabelama i radiće i sa Bimerom

beginframebegintabular | c | c | c | c |

hlineamp Ponedeljak amp Utorak amp Sreda hline

1 amp 16 amp 32 amp 64 hline2 amp 16 amp 128 amp 1024 hline3 amp 16 amp 512 amp 4096 hline

endtabularendframe

Sam svoj majstor

49

Broj 33

Beamer

Teoreme i istaknut tekstU nastavi su česta izlaganja teorema nj ihovih dokaza i primera U Bimer jeugrađena podrška za elegantno predstavl janje ove trojke Mehanizam takođepodržava postepeno otkrivanje sadržaja sla jda tako da slušaocima ne bude odmahotkriven dokaz teoreme Mehanizam za postepeno otkrivanje se kao i kodnabrajanja postiže pomoću bdquolt1-gtrdquo konstrukci je Evo kako to izgleda

beginframeframetitlePrimer teoreme

begintheoremlt1-gt Teorema kaže da su beamer prezentacijezanimljive

endtheorem

beginexamplelt2-gt Ovaj kod kreira slajd beamer prezentacijeendexample

beginprooflt3-gt Čestitamo stigli ste do kraja serijala o pravljenju beamer prezentacija

endproofendframe

50

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Za krajOvim člankom završavamo seri ja l o Bimeru Nadamo se da smo uspel i da vaszainteresujemo za ovu vrlo korisnu klasu Lateha Trudi l i smo se da vamprezentujemo najvažni je delove Bimera koje ćete najčešće koristiti pri l ikomkreiranja svoj ih prezentaci ja

Napominjemo još jednom da je Bimer samo jedna od klasa Lateha što znači da i zaBimer važi sve ono što ste već mogl i da pročitate u ovom časopisu kad smo pisal iseri ja l bdquoUvod u LaTeXrdquo (LiBRE brojevi 17 do 21) Štaviše ovaj seri ja l o Bimeru jebio nastavak upravo tog seri ja la U ovom seri ja lu nismo pisal i o samomformatiranju teksta u prezentaci jama jer se podrazumeva da važe ista pravi la kao iu Latehu a o tome smo pisal i u prethodnom seri ja lu

Hvala vam što ste prati l i ovaj seri ja l i žel imo vam puno uspeha u kreiranju Bimerprezentaci ja

Sam svoj majstor

51

Broj 33

Autor Nenad Marjanović

Kada smo se upoznal i sa podešavanj ima sistema i umrežavanjem vreme je za našprvi Biglbon Blek (BBB - eng BeagleBone Black) projekat Svakom od nas će ovajizazov dati razl ičite ideje a jedna od nj ih može biti i zaštita privatnosti internetkorisnika Nažalost u Srbi j i ne postoj i ni jedan izlazni tor server (eng node) i to jepomalo tužna sl ika s obzirom da govorimo o populaci j i od sedam mil ionastanovnika Al i ovu sl iku možemo promeniti udruženim snagama i za početakkreiranjem Tor transfer i izlaznog servera U ovde prikazanom grafikonufokusiraćemo se na bdquoRauter Brdquo tačku odnosno transfer server konfiguraci ju

BeagleBone Black Rev C

Vodič od prvog dana (3 deo) ndashBeagleBone Black kao Tor relej

Hardver

52

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Tor predstavl ja mrežu servera koj i se povezuju radi bol je enkripci je podataka izaštite IP adrese korisnika Naš ci l j je da danas postanemo deo ovog predivnogprojekta i da se nađemo na svetskoj karti Tor servera

Brzina interneta i zakonske regulativePotrebno je imati na umu nekol iko bitnih stvari

1 Naš server = naša odgovornost2 Obavezno naznačite da ste vi administrator a ne korisnik istog servera3 Da posedujete internet brzinu od 2 Mbs

Ako ispunjavamo tri navedena pravi la i odgovornosti možemo se posvetitiadministrativnim poslovima

Instalacija i podešavanjaU ovom primeru koristimo Debi jan Vizi (eng Wheezy) odnosno Debi jan 7 verzi juna našem BBB uređaju Vi možete testirati i druge Linuks platforme Prvododajemo izvornu bibl ioteku u etcaptsourceslist faj l pokretanjem sledećekomande u terminalu

echo deb httpdebtorprojectorgtorprojectorg wheezy main gt etcaptsourceslistdtorlist

Zatim dodajemo izvorni kl juč vršimo ažuriranje sistema i instal iramo tor i tor-arm(Tor monitoring sistem)

gpg --keyserver keysgnupgnet --recv 886DDD89gpg --export A3C4F0F979CAA22CDBA8F512EE8CBC9E886DDD89 | sudo apt-keyadd -apt-get updateapt-get install debtorprojectorg-keyring -yapt-get install tor tor-arm egrep screen -y

Ovim smo uspešno završi l i instalaci ju Tor servera i sistema za monitoring odnosnonadgledanja našeg Tor servera Sledećom komandom radimo na podešavanj imaTor servera koja se nalaze u etctortorrc faj lu Obratite pažnju i izvršite potrebne

Hardver

53

Broj 33

izmenu u pol j ima IP adresa (eng Address) nadimka (eng Nickname) i kontaktpodataka (eng ContactInfo) pre pokretanja ove komande Kopiramo i pokrećemokomandu u celosti u terminalu

egrep -v ^(|$) etctortorrcORPort 443Address 19216811Nickname LibreTorRelayRelayBandwidthRate 100 KBRelayBandwidthBurst 120 KBContactInfo ltvi at gmail dot comgt irPort 8080DirPortFrontPage etctortorhtmlExitPolicy reject

Detal je o svim vrednostima nećemo iznositi u ovom broju LiBRE časopisa al ićemo o nj ima pisati u sledećem u kome ćemo pričati o zaštiti Tor servera imogućnosti podešavanja određenih izlaznih pravi la (eng ExitPolicy)

Nakon ovoga možemo primetiti da se u folderu etctor ne nalazi torhtml faj l Ovaj faj l ni je od vel ikog značaja i možete ga l ično napraviti i l i preuzeti jednu kopi ju- naprimer sa sledeće lokaci je

cp usrsharedoctortorhtml etctortorhtml

Opcije i Tor Arm monitoringDa bismo ispravno koristi l i Tor Arm potrebno je urediti još jednom etctortorrcfaj l i restartovati servis

echo -e ldquoDisableDebuggerAttachment 0n AvoidDiskWritesrdquo gtgt etctortorrcsudo service tor reload

Ukol iko žel ite koristiti Tor Arm za nadgledanje aktivnosti na serveru pokreniteprogram screen kl iknite na bdquoEnterrdquo i kucajte sudo -u debian-tor arm Naekranu ćete imati sl ičan prikaz

BeagleBone Black

54

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Hardver

55

Broj 33

Da bismo napusti l i screen program koristimo Ctrl + a + d i na taj način kada sesledeći put pri javimo na server kucamo samo screen -r u terminalu - i naći ćemose ponovo na čuvenom Tor Arm monitoring ekranu

Nakon svake promene konfiguracionih faj lova ako slučajno nismo nešto podesi l ikako treba restartujemo servise

U sledećem broju časopisa govorićemo o minimalnim podešavanj ima ikonfigurisanju izlaznog Tor servera (eng Tor Exit Node) opci jama sigurnosti isl ičnim detal j ima u vezi sa našim prvim projektom Do čitanja u sledećem broju

BeagleBone Black

LUGoNS BarCamp 4subota 7 mart 2015 godine

Četvrti LUGoNS-ov Barkemp (BarCamp) održaće se u Novom Sadu usubotu 7 marta 2015 godine na Fakultetu tehničkih nauka sa početkomu 12 časova

Ulaz je slobodan

Poziv za predaju radovaLUGoNS poziva sve zainteresovane da pošal ju svoje radove (predavanjaprezentaci je radionice i diskusi je) do 28 februara 2015 godine

Oblasti iz koj ih možete da pri javite vaše radove su

bull Slobodan softverbull Zaniml j iv hardverbull Hakerski zakonibull Sigurnosne noćne morebull Anonimnost i privatnost na internetubull Duboki veb (eng Deep Web)bull Soci ja lne mrežebull Soci ja lni inženjeringbull Hakovanje mobi lnih uređajabull Internet u oblaku (eng Clouds) ndash hakovanje razbi janje i neočekivano korišćenjebull DPI (eng deep packet inspection)bull Mreža i mrežna neutralnost ndash vlasništvo cenzura nadmudrivanje i pol itika bdquodefaktordquo standarda

bull Programiranje i programski jezici

Nemojte se ustručavati i slobodno nam se javite ako imate rad na gore navedenei l i sl ične teme koj i smatrate interesantnim

Stranica za predaju radova nalazi se na https events lugonsorgp=1658

Page 3: LiBRE 33 Lat

3

Broj 33

prenošenje zvukova i nj ihovo zapisivanje

LiBRE je strane reči do 32 broja časopisa čak i u tekstovima na ćiri l ici pisao izvornim pismom Masivno upl itanje latinice u ćiri l icu je nepraktičnoa takav tekst je nepregledan Transkribovan obl ik reči nam pokazuje kakose one čitaju te nam otklanja nedoumice Dobar primer je ime poznatoggrafičkog okruženja Mate Reč potiče iz španskog jezika te se čita Mate ane Mejt Mate je bi l jka koja raste u Južnoj Americi od koje se spravl ja čaj LiBRE će slediti Pravopis i preporuke naših poznatih fi lologa te će većinuustal jenih reči pisati u transkribovanom obl iku Kod prvog pisanja reči uzagradi će se navesti izvorni obl ik da bi se čitaocu omogući la dal japretraga interneta o pojmu Kad bi transkripci ja bitno otežalaprepoznavanje nekog sadržaja (kao naprimer kod akronima) takve rečipisaćemo nadal je u izvornom obl iku uz povremeno pisanje preporuke kakose reč čita Maj-es-kju-el bi bi lo nepregledno i isuviše dugačko stogapišemo MySQL Isto važi za manje poznate nazive programa i za komandeunutar programa

Od izlaska prošlog broja nismo dobi l i ni jednu kritiku na račun transkripci jeTo bismo mogl i da protumačimo kao znak da čitaoci nemaju zamerku uvezi sa transkripci jom Dobi l i smo odgovore na pitanja postavl jena u Rečiurednika iz prethodnog broja Ovom pri l ikom vam se zahval ju jemo naodgovorima Svi vaši predlozi su dobrodošl i i razmatraju se na redovnimsastancima I dal je očekujemo vaše kritike i predloge koje nam možeteposlati na već poznatu adresu elektronske pošte l ibre [at] lugons [dot] org

Do sledećeg broja

LiBRE tim

Reč urednika

4

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Vesti str 6

Predstavljamobgfx - Cross-platform rendering library str 9rEFInd - Boot managment str 14

Kako da Uvod u programski jezik C (9 deo) str 18

OslobađanjeU potrazi za idealnom distribuci jomSoci ja lni kriteri jumi za izboridealne distribuci je (6 deo) str 26

Slobodni profesionalacHibernate ORM (2 deo) str 31

Internet mreže i komunikacijeTo su samo metapodaci str 36Izgubl jeni heroj i bdquoBlečl i parkaldquo str 40

Sam svoj majstorLaTeX prezentaci ja Beamer (4 deo) str 45

HardverBagleBone Black Rev C Vodič od prvog danaBeagleBone Black kao Tor relej (3 deo) str 51

Moć slobodnogsoftvera

Sadržaj

Broj 33Periodika izlaženja mesečnik

Izvršni urednik Stefan NožinićGlavni lektorAleksandar Božinović

LekturaJelena Munćan Saška SpišjakMilena Beran Milana VojnovićAdmir Halilkanović

Grafička obradaDejan Maglov Ivan Radeljić

Dizajn White Circle Creative Team

5

Broj 33

LiBRE prijatelji

Broj 33Periodika izlaženja mesečnik

Izvršni urednik Stefan NožinićGlavni lektorAleksandar Božinović

LekturaJelena Munćan Saška SpišjakMilena Beran Milana VojnovićAdmir Halilkanović

Grafička obradaDejan Maglov Ivan Radeljić

Dizajn White Circle Creative Team

Autori u ovom broju

Ostali saradnici u ovom brojuMarko Novaković Mihajlo Bogdanović

Počasni članovi redakcijeŽeljko Popivoda Željko ŠarićVladimir PopadićAleksandar Stanisavljević

KontaktIRC floss-magazin na ircfreenodenet

E-pošta librelugonsorg

Nenad MarjanovićNikola HardiKriptopank

Dejan ČugaljBranimir Karadžić

6

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

21 januar 2015

Kanonikal pokrenuo verzijuUbuntu Kora za Internet stvariKanonikal kompani ja zadužena za razvoj UbuntuLinuks distribuci je pokrenula je svoju verzi juUbuntu Kora (Core) za Internet stvari (Internet ofThings)

Koristan l ink http tcotN3VmZe5PK

26 januar 2015

Masovno nadgledanje pretiljudskim pravimaU evropskom izveštaju masovno špi juniranje pretidigitalnoj sigurnosti i l judskim pravima

Koristan l ink http tco9gcrmXw44q

27 januar 2015

Jutjub koristi HTML5 kaopodrazumevani načinreprodukcijeJutjub je zamenio Fleš tehnologi ju novi jomotvoreni jom i napredni jom tehnologi jom - HTML5koja će se koristiti kao podrazumevani načinpuštanja video sadržaja

Koristan l ink http tcozBpJh8Op6x

Vesti

7

Broj 33

28 januar 2015

GHOST - bezbednosni problemGHOST - novi bezbednosni problem u GNU-ovoj Cbibl ioteci koj i dovodi u opasnost sve apl ikaci jekoje koriste funkci je gethostbyname i gethost-byname2 i omogućava udal jenom napadaču dadobi je dozvole koje ima korisnik koj i izvršava tuapl ikaci ju

Koristan l ink http tcoGDYKsH2nOo

1 februar 2015

Pajrat Bej se vratioNajpopularni j i torent sajt Pajrat Bej (The PirateBay) se ponovo vratio posle dvomesečnogperioda kada je bio nedostupan

Koristan l ink http tcorSAPCVXWJi

2 februar 2015

Rasberi-Paj 2 je izašaoDostupan je u prodaj i Rasberi-Paj 2 (Raspberry PI2) sa 4 procesorska jezgra

Koristan l ink http tcoRGlOdoeioc

Vesti

8

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

3 februar 2015

Američka vojska otvara svojprogram za detekciju napadaAmerička vojska je odluči la da svoj program za de-tekci ju napada postavi na Githab i time omogućicelom svetu da koriste softver koj i su oni koristi l i zadetekci ju napada na mrežu ministarstva odbraneOni ovim potezom očekuju povratnu informaci ju odl judi koj i ne rade u vladi i nadaju se unapređenjusvog programa

Koristan l ink http tcov3PYlKF2sz

6 februar 2015

GPG u opasnostiVerner Koh (Werner Koch) programer koj i jezadužen za razvoj GPG-a (Dži-Pi-Dži engl GNUPrivacy Guard) softvera koj i svi koristimo zaenkripci ju kako naše elektronske pošte tako i ostal ihbitnih podataka polako ostaje bez novčanihsredstava Pozivaju se svi zainteresovani i oni koj i suu mogućnosti da pošal ju donaci ju u vidu novca

Koristan l ink http tcojGac5emwPX

9 februar 2015

Arduino razvojno okruženje -novo izdanjeIzašlo je novo razvojno okruženje za Arduino uverzi j i 1 6

Koristan l ink http tco4A0pFcIsVf

Vesti

9

Broj 33

Autor Branimir Karadžić

bgfx je rendering bibl ioteka otvorenog koda sa podrškom za više razl ičitih grafičkihAPI-ja 1 (eng Application Programming Interface) i operativnih sistema 2 Bibl iotekasluži za jednostavni j i pristup grafici i razvoj igara na više platformi Najvećiproblem sa kompjuterskom grafikom je što postoj i više razl ičitih API-ja koj i kada sekoriste direktno onemogućavaju portovanje igara na druge platforme Praveći igrukoja pristupa samo bgfx bibl ioteci a ne direktno API-u autor igre omogućava sebida tu igru na jednostavan način može prebaciti na bi lo koj i podržan operativnisistem odnosno platformu

Predstavljamo

bgfx - Cross-platform renderinglibrary

10

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

U početku bgfx je bio samo hobi projekat i zato ima nemaštovito ime Bi la je tosamo jedna od mnogih bibl ioteka koje sam napravio za pravl jenje igara Kada samradio na jednoj igri postojala je potreba da se igra prebaci sa starog DX9 (engDirectX 9) renderinga na OpenGL (engl Open-dži-el ) pa sam tom pri l ikom izvukaodeo moje hobi bibl ioteke za renderovanje i zapakovao je kao cel inu Posle uspešneprimene ove bibl ioteke u moj im projektima odlučio sam da je objavim kao projekatotvorenog koda na Githabu (eng Github) pod l icencom BSD 2-clause Po mommišl jenju ovaj deo renderinga je trebalo već odavno da bude rešen problem kao ida bude moguće da se igre bez veće muke izdaju na bi lo kojoj platformi po žel j iautora Namenjena je prevashodno manj im autorima koj i žele da imaju potpunukontrolu nad svoj im kodom bez obzira na platformu na kojoj žele da objave igruKod ovakvih komerci ja lnih proizvoda uvek postoje neka ograničenja a ako firmeizgube interes za proizvodom mogu ostaviti autore na cedi lu bez podrške iodržavanja Sa druge strane projekti otvorenog koda omogućuju saradnju autora iunapređenje funkcionalnosti projekta na zadovol jstvo svih

Upotrebom bgfx bibl ioteke korisnik može da zanemari konkretnu implementaci jurazl ičitih tehnologi ja kao što su OpenGL OpenGL ES i Direct3D bez kompromisa saperformansama Ova bibl ioteka ni je tanka apstrakci ja i l i emulator nekogpostojećeg API-ja tipa Guglovog Engl (eng ANGLE) projekta koj i emul ira OpenGL

Predstavljamo

11

Broj 33

ES preko Direct3D-a i l i Valvov TuDži-El (eng ToGL) koj i emul ira Direct3D 9 prekoOpenGL-a nego zaseban API višeg nivoa Iako je u prošlosti bi lo sl ičnih projekatasvi oni su uglavnom imal i pretenzi ju da budu endžin (engine) i l i frejmvork koj i bitvorci igara koristi l i kao takav Takav pristup donosi dosta kompl ikaci ja i veoma jeteško takav projekat integrisati sa postojećim kodom Iz ovog razloga bgfx projekatnema pretenzi je da bude ceo endžin i l i frejmvork nego samo bibl ioteka koju svakomože lako da integriše u sopstveni projekat

bgfx bibl ioteka se trenutno koristi u nekol iko komerci ja lnih igara al i ima i dostainteresovanja za projekat kao osnove za pravl jenje korisničkih apl ikaci ja pa čak ialata za programere

Na projektu je do sada radi lo oko deset l judi Uglavnom su dodaval i podršku zanove platforme primere i l i su povezival i bibl ioteku sa drugim jezicima Što sebuduće saradnje na ovom projektu tiče sve je dobrodošlo čak i sȃmo korišćenjebibl ioteke a zahtevi za uvođenje novih mogućnosti unapređuju samu bibl ioteku

bgfx

12

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Predstavljamo

13

Broj 33

1 Podržava grafičke API-je

bull Direct3D 9bull Direct3D 11bull OpenGL 2 1bull OpenGL 3 1+bull OpenGL ES 2bull OpenGL ES 3 1bull WebGL 1 0

2 Podržava platforme

bull Android (14+ ARM x86 MIPS)bull asm jsEmscripten (1250)bull iOSbull Linuks (x86 x86_64)bull Nejtive klajent (Native Client PPAPI37+ ARM x86 x86_64 PNaCl)

bull OS Iks (OSX 109)bull Rasberi-paj (RaspberryPi - ARM)bull Vindouz (Iks-pe Vista 7 8 10)bull Vin-ar-ti (WinRT WinPhone 80+ )

bgfx

14

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Autor Stefan Nožinić

UvodrEFInd je softverska apl ikaci ja za EFI (Extensible Firmware Interface) sisteme kojaomogućava izbor više operativnih sistema na jednostavan način Ovo je samoupravnik buta (boot) i u ovom broju vam predstavl jamo o kakvom projektu je reč ikako se može primeniti

Šta je (U)EFIPre nego što predstavimo sam projekat trebalo bi prvo da skrenemo pažnju idetal jni je da predstavimo problematiku EFI je nastao kao zamena za dosadašnj iBIOS (Basic InputOutput System) i razvi la ga je kompani ja Intel Ovaj pristup jekasni je zamenjen UEFI standardom EFI tehnologi ja ima prednost u slučajevimakao što su

bull Pokretanje sistema na diskovima preko 2TB memori je korišćenjem GPTtehnologi je

bull Nezavisnost od specifične arhitekture procesorabull Modularan dizajnbull Dobro okruženje pre učitavanja operativnog sistema što podrazumeva i mrežnupodršku

Tehnologi ja omogućava upotrebu 32-bitnih i 64-bitnih adresa na procesorima koj ito podržavaju Rani je BIOS tehnologi ja to ni je omogući la već se uvek koristi la 16-bitna implementaci ja iz istori jskih razloga

Predstavljamo

15

Broj 33

Particiona šemaEFI tehnologi ja ima drugači ju šemu partici ja Dok je stari pristup podržavao samoMBR (Master Boot Record) šemu nova tehnologi ja podržava GPT šemu kojaomogućava veći broj primarnih partici ja Sa starim pristupom taj broj bio jeograničen na četiri primarne partici je od koj ih je svaka morala da ima kapacitetmanj i od 2TB

AplikacijeUEFI podržava izradu apl ikaci ja koje bi se pokretale nezavisno od operativnogsistema Ove apl ikaci je se mogu naknadno instal irati Primer takvih apl ikaci ja supokretači (loader) operativnih sistema kao i upravnici butovanja

EFI sistemska particijaEFI podržava posebnu partici ju za smeštanje raznih potrebnih informaci ja kao štosu potrebni podaci za rukovanje računarom i specifične apl ikaci je Ova partici ja jenajčešće FAT32 sistem datoteka

rEFInd

16

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

But menadžer i but louder - ima razlikeOd popularizaci je GRUB upravnika mnogi korisnici su ostal i bez objašnjenja kakvaje razl ika između but loudera (boot loader) i but menadžera (boot manager) Ovose dešava jer GRUB pruža obe usluge u sklopu jednog programa pa se time teževidi razl ika između ova dva pojma But menadžer je upravnik pomoću kojeg jemoguće izabrati operativni sistem za pokretanje On ne zna ništa speci ja lno ooperativnom sistemu pa time ne zna ni kako da ga pokrene On samo zna datreba da pokrene but louder za taj sistem Kada je sistem izabran pokreće sespecifičan but louder za taj sistem koj i je zadužen za dal j i proces pokretanjakernela Za razl iku od GRUB upravnika rEFInd pruža samo usluge but menadžerašto u početku može zvučati poražavajuće za ovaj projekat Kada uzmemo u obzirda većina sistema danas ima but louder u sklopu kernela (ukl jučujući i Linuks odnovi j ih izdanja) ovaj problem je prevaziđen

Predstavljamo

17

Broj 33

InstalacijarEFInd postoj i kao deb i kao rpm paket al i postoj i i zapakovan kao zip arhivaZahval ju jući tome paket je moguće instal irati upotrebom dpkg komande nadistribuci jama baziranim na Debi janu kao i upotrebom rpm komande nadistribuci jama koje koriste taj način pakovanja paketa Za Ubuntu postoj i i PPArepozitori jum pa rEFInd može biti instal iran na sledeći način

sudo apt-add-repository pparodsmithrefindsudo apt-get updatesudo apt-get install refind

Nezavisno od toga koj i način od gore opisanih koristite rEFInd će automatski bitiprebačen na ESP i biti postavl jen kao podrazumevani upravnik

KonfiguracijarEFInd bi trebalo da vam pruži zadovol javajuću funkcionalnost bez dodatnekonfiguraci je posle instalacionog procesa On će automatski detektovati loudereoperativnih sistema korišćenjem pretrage po svim partici jama koje prepozna Uslučaju da ste napredni j i korisnik i da žel ite da modifikujete ponašanje rEFInda tomožete uraditi izmenom njegove konfiguracione datoteke Postoj i g lobalnakonfiguraci ja i konfiguraci ja za svaki sistem posebno Ovaj tekst bi postao previšedugačak kada bismo ulazi l i u detal je same konfiguraci je pa vam zatopreporučujemo ako imate potrebu za dodatnom konfiguraci jom da posetitedokumentaci ju projekta i l i ako imate neke nedoumice da kontaktirate s namapreko naše e-pošte

Za krajŽelel i bismo da ovaj tekst zakl jučimo ocenom da je ovaj projekat dosta zaniml j ivda pruža zadovol javajuću funkcionalnost i da omogućava korisnicima koj i koristeovaj sistem pokretanja lako pokretanje svoj ih operativnih sistema Još jednomžel imo da vam skrenemo pažnju da nam se obratite i ukažete ako smo nešto važnopropusti l i da pomenemo i l i ako nam se negde potkrala greška

Korisni l ink http wwwrodsbookscomrefind

rEFInd

18

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Autor Nikola Hardi

Opšte je poznato da su računari dobri u radu sa brojevima Međutim vremenom suse i potrebe korisnika i alati za programiranje računara razvi ja l i i rad sa drugači j imtipovima podataka je postao uobičajen i znatno jednostavni j i nego rani je Svi smoimal i pri l iku da radimo sa programima za obradu fotografi ja video materi ja la i l izvučnih zapisa Multimedi ja je ipak tema koja prevazi lazi jedan uvodni kurs o C-ual i do kraja ovog seri ja la ćemo se dotaći i tih tema Za početak osvrnućemo se narad sa tekstualnim podacima na C način

Stringovi na C načinDefinici ja tekstualnog podatka u sferi računarstva se uglavnom svodi na to da jetekst niz karaktera a karakteri su znakovni simbol i Iako imamo mogućnost daradimo sa tekstom i l i multimedi jom računari ipak razumeju samo brojeve pamoramo tako da im predstavimo i tekst Postoje razni standardi kako se pojedinikarakteri predstavl ja ju u memori j i računara između ostalog najpoznati j i su ASCIIEBCDIC UTF i td EBCDIC je standard koj i je prisutan u Eplovom (eng Apple) svetu iviše nema tol iko važnu ulogu ASCII je standard koj i je vrlo prisutan i danas UTF jenastao kao proširenje ASCII standarda javl ja se u više vari janti i uvodi podršku zapisma razl ičita od abecede (kinesko japansko ćiri l ica arapsko i mnoga druga)

Važno je napomenuti da je originalni ASCII standard propisivao 7 bitova za jedankarakter što je dalo prostora za 128 karaktera Među tim karakterima se nalazecifre mala i vel ika slova engleskog alfabeta i niz kontrolnih karaktera Kontrolnikarakteri su oznake za novi red prazno mesto tabulator upravl janje štampačima(vraćanje glave štampača na početak) rad sa terminal ima (alarm i l i obaveštenje

Kako da

Uvod u programski jezik CRad sa stringovima (9 deo)

19

Broj 33

da se nešto dogodi lo) ASCII standard je proširen na 8 bitova odnosno ceo jedanbajt i sada podržava 256 karaktera Potražite na internetu termin bdquoASCII tabelardquo dabiste stekl i uvid u to kako izgleda tzv tabela ASCII karaktera

Rad sa pojedinačnim znakovima ne obećava mnogo Postoj i realna potreba zaradom sa rečima rečenicama l ini jama teksta itd Podaci koj i se sastoje od više odjednog karaktera se u domaćoj l i teraturi nazivaju znakovnim niskama madaodomaćen je i naziv bdquostringrdquo koj i je i mnogo češće u upotrebi U programskomjeziku C se stringovi predstavl ja ju običnim nizovima karaktera (char niz[]) a krajteksta se označava NULL karakterom odnosno speci ja lnim znakom 0 či jabrojevna predstava je pogađate nula Ovakva predstava tekstualnih podatakanosi sa sobom i pojedine kompl ikaci je Gotovo svi savremeni jezici poznaju tipstringa dok su u C-u stringovi ipak samo obični nizovi

Da se podsetimo nizovi u C-u su zapravo pokazivači na deo u memori j i Kadapokušamo da pristupimo jednom elementu niza tada se vrši operaci jabdquodereferenciranjardquo sa zadatim odstupanjem Sledi nekol iko primera koj i i lustrujurad sa nizovima na primeru nizova karaktera

char niz1[] = zdravoniz1[0] = Z

char niz2[5]niz2[0] = 0niz2[1] = kniz2[2] = 0

Pri deklaraci j i niza 1 ni je zadata dužina zato što je u jednom izrazu zadata iinici ja l izaci ja niza koja glasi ldquozdravordquo Prevodi lac može sam da zakl juči kol ikomemori je je potrebno

U drugom primeru je kreiran niz karaktera dužine 5 Međutim popunjena su samoprva tri mesta Primećujete razl iku između prvog i trećeg elementa Prvi je cifra 0(uokviren je navodnicima) a treći je brojčana vrednost 0 koja označava krajstringa

Može se primetiti još jedna razl ika u data dva primera U prvom primeru sukorišćeni dvostruki navodnici dok su u drugom korišćeni jednostruki Razlog za to

Uvod u programski jezik C

20

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

je što se znakovni nizovi koj i su uokvireni dvostrukim navodnicima smatrajustringovima i podrazumevano im se dodaje bdquoterminatorrdquo odnosno znak NULL koj ioznačava kraj stringa Jednostruki navodnici se iskl jučivo koriste za predstavl janjepojedinačnih karaktera Ovo znači da zapisi ldquoardquo i a nisu jednaki Prvi zapis jedužine 2 jer ima i znak NULL koj im je završen

Ispisivanje i učitavanje stringovaPre nego što nastavimo dal je biće objašnjen jednostavan način za ispisivanje iučitavanje stringova pomoću standardnog ulazaizlaza Da se podsetimobibl ioteka za standardni ulazizlaz (ispis podataka u konzol i odnosno terminalu) jestdioh Ukol iko se koristi formatirani ispis potrebno je funkci jama printf() iscanf() proslediti format string koj i sadrži speci ja lan znak s čime je označenoda žel imo da ispišemo znakovni niz sve do NULL karaktera Drugi način jeupotrebom funkci ja puts() gets() i getline() iz bibl ioteke stringh Sledi primer

include ltstdiohgt include ltstringhgt int main()

char niz1[] = Zdravo svete

printf(sn niz1)

scanf(s niz1)puts(niz1)

return 0

Može se primetiti da je u slučaju funkci je printf() potrebno naglasiti speci ja lnimkontrolnim karakterom n da nakon ispisa treba preći u novi red Funkci ja puts() topodrazumevano radi

Za ove i sve druge funkci je dodatnu pomoć je moguće pronaći u Linuksovim manstranicama u odel jku 3 koj i je posvećen standardnim bibl iotekama Recimo mangetline sadrži detal jno uputstvo o funkci j i getline()

Kako da

21

Broj 33

Kopiranje stringovaKao što je u prethodnom odel jku napomenuto stringovi su u C-u samo običninizovi To znači da sledeći kod verovatno neće uraditi ono šta bi bi lo očekivano

niz1 = niz2

Ovime smo pokazivaču niz1 bdquorekl irdquo da pokazuje tamo gde i pokazivač niz2 Efektivno oni sad pokazuju na isti tekst međutim ako izmenimo niz1 to će seodraziti i na niz2 a važi i obrnuto Ovime smo dobi l i samo dva pokazivača na istideo memori je a uglavnom to ni je bio ci l j

Drugi način kako bismo sadržaj drugog niza mogl i da kopiramo u prvi niz je petl jakojom bismo kopiral i element po element Pošto je operaci ja kopiranja stringovavrlo često potrebna postoj i standardna bibl ioteka za rad sa stringovima koja sezove stringh a funkci ja za kopiranje stringova je strcpy()

strcpy(niz1 niz2)

Dati primer kopira sadržaj niza 2 u niz 1 Kopira se element po element sve dok seu nizu 2 ne naiđe na NULL karakter Ovakvo kopiranje (element po element) seinače u stranoj l i teraturi naziva i bdquodeep copyrdquo i vrlo često se sreće u radu sastrukturama podataka gde je potrebno obići celu strukturu podataka i svakielement kopirati a strukturu opet izgraditi u drugom delu memori je

Zaniml j ivo je što je kopiranje stringova moguće pojednostaviti ukol iko definišemonovi tip podatka kao strukturu koja sadrži niz karaktera i potom izvršimo kopiranjeOvo je trik koj i se uglavnom ne koristi u praksi i spomenut je samo kaozaniml j ivost

include ltstringhgt struct str char niz[50]

int main()

struct str s1struct str s2

Uvod u programski jezik C

22

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

strcpy(s1niz zdravo)s2 = s1

s2niz[0] = Z

puts(s1niz)puts(s2niz)

return 0

Kreirana je struktura str koja sadrži pol je niza karaktera pod nazivom niz Pozivomfunkci je strcpy() kopiramo string ldquozdravordquo u s1 čime smo bdquonapuni l irdquo sadržajobjekta s1 Potom je izvršena redovna dodela čime je sadržaj objekta s1 kopiran us2 Zatim je izmenjen samo prvi karakter objekta s2 i oba stringa su ispisanaPrimećujete da su kopirani svi znakovi a da je izmenjen samo drugi objekatZaniml j iv trik

Poređenje spajanje i pretraga stringovaDruga vrlo česta situaci ja je poređenje dva stringa Ukol iko bi poređenje bi loizvršeno upotrebom redovnog operatora za poređenje == tada bi u stvari bi lepoređene samo adrese na koje pokazuju pokazivači tih stringova jer da sepodsetimo stringovi su u C-u samo obični nizovi Ispravan način za poređenje dvastringa je pozivanjem funkci je strcmp() či ja je povratna vrednost 0 ukol iko su jojprosleđeni stringovi sa jednakim sadržajem

include ltstringhgt int main()

char niz1[] = zdravochar niz2[] = zdravo

if( strcmp(niz1 niz2) == 0)puts(Stringovi su jednaki)

elseputs(Stringovi nisu jednaki)

return 0

Kako da

23

Broj 33

Funkci ja strcmp() poredi svaki element prosleđenih nizova pojedinačno a dobraje vežba implementiranje nove funkci je strcmp() koja će unutar petl je da porediodgovarajuće elemente prosleđenih nizova i potom vratiti rezultat 0 ukol iko su svielementi jednaki Potrebno je pripaziti na situaci ju kada su stringovi razl ičitihdužina

U svetu računara spajanje dva sadržaja se zove konkatenaci ja Odatle i nazivfunkci je za spajanje dva stringa strcat() Važno je uveriti se da je string u koj i sedodaje sadržaj dovol jno vel ik da ga prihvati inače može da dođe do nežel jenogprepisivanja u memori j i uništavanja drugih podataka i neispravnog ponašanjaprograma

Pretraga unutar stringa se može obaviti funkci jom strstr() Ova funkci ja kaoparametre očekuje pokazivač na niz karaktera (string) u kojem je potrebno pronaćistring koj i je prosleđen kao drugi parametar Povratna vrednost je pokazivač nadeo memori je gde se žel jeni string prvi put pojavio

Sledi malo opširni j i primer koj i i lustruje spajanje pretragu i kopiranje stringova

include ltstringhgt int main()

char niz_a[50] = LiBRE je char niz_b[] = najbolji casopischar niz_c[] = e-magazin

strcat(niz_a niz_b)puts(niz_a)

char cilj = strstr(niz_a casopis)strcpy(cilj niz_c)

puts(niz_a)

return 0

Uvod u programski jezik C

24

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Pretvaranje tipova podataka u stringove ipretvaranje iz stringovaPretvaranje podataka iz jednog tipa u drugi i l i kastovanje (eng type casting) se zavećinu tipova vrši jednostavno pisanjem tipa u zagradama na primer (int)523 Stringovi su i po ovom pitanju drugači j i Postavl ja se pitanje šta pretvoriti ucelobrojni tip - da l i adresu na koju pokazuje pokazivač niza koj i predstavl ja stringPrvi element Šta ako taj string ni je broj Predstavićemo rešenje za konverzi jubrojeva u stringove i obrnuto

Ispis podataka na ekranu se takođe može smatrati konverzi jom Broj sa pokretnimzarezom je u memori j i prikazan na pomalo čudan način a pozivom funkci jeprintf() kada je kao format zadat f na ekranu ćemo dobiti razuml j iv niz znakovaSl ičan rezultat možemo dobiti funkci jom sprintf() a jedina razl ika u odnosu naprintf() je ta što sprintf() kao prvi argument očekuje pokazivač na string dok sudrugi (format string) i treći (argumenti koj i se povezuju sa formatnim stringom)sl ični kao kod funkci je printf()

Kod pretvaranja stringova u brojevne tipove može poslužiti funkci ja sscanf() kojase ponaša sl ično kao funkci ja scanf() s tim što je prvi argument adresa(pokazivač na string) koju žel imo da skeniramo u nadi da će se poklopiti saformalnim stringom koj i je drugi argument a rezultati će biti sačuvani u adresamakoje su prosleđene kao 3 4 i ostal i parametri Drugi način za pretvaranje stringovau celobrojne brojeve i brojeve sa pokretnim zarezom su funkci je atoi() i atof()

Funkci je koje koriste formatni string su česte u jeziku C i zaslužuju posebnu pažnjumeđutim to je priča za poseban članak U ovu klasu funkci ja spadaju recimo ifunkci je za rad sa datotekama

BezbednostRad sa stringovima može da bude izuzetno opasna stvar po pitanju bezbednostiprograma Ukol iko se niz karaktera ne završava NULL karakterom svašta može dapođe po zlu pri pozivu funkci ja kao što su strcpy() strcmp() i sl ične Cela klasatih funkci ja se oslanja na postojanje znaka koj i označava kraj stringa Kada stringni je propisno završen tada te funkci je mogu da zalutaju u deo memori je vanstringa i svašta može da pođe po zlu Ovakav tip napada se inače zoveprekoračenje bafera (eng buffer overflow) Preporučen način kako da izbegnete

Kako da

25

Broj 33

Pregled popularnosti GNULinuxBSDdistribuci ja za mesec februar

Distrowatch

Pad ltPorast gtIsti rejting =(Korišćeni podaci sa Distrovoča)

12345678910111213141516171819202122232425

MintUbuntuDebianopenSUSEelementaryMageiaFedoraManjaroCentOSLXLEArchBodhiAndroid x86Kal iPCLinuxOSPuppyRobol inuxLubuntuQ4OSBlack LabNetrunnerSimpl icityEvolveZorin4MLinux

2919gt1778gt1701gt1323gt1204gt1174gt1166gt1028lt1020gt965gt957gt907gt900lt760gt742lt732gt695gt670gt663gt655gt652gt629gt607gt583gt517=

takve nepri jatne situaci je pri radu sastringovima je da koristite verzi jefunkci ja koje su ograničenemaksimalnom dužinom stringa kaošto su strncpy() strncat() strncmp() i td Sve te funkci je kaotreći parametar zahtevaju broj koj iodređuje maksimalnu očekivanudužinu stringa Još jedna vrlo korisnafunkci ja je strlen() či j i zadatak je daodredi dužinu stringa Budite pažl j ivi ovo je prvo mesto gde se tražebezbednosni propusti u programimaNe verujte podacima koj i spol ja ulazeu vaš program a pogotovo kada je rečo stringovima

Uvod u programski jezik C

26

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Autor Dejan Maglov

Projekti slobodnog softvera obično počinju kao projekti pojedinca i l i male grupeprogramera a koj i rade na razvoju softvera či j i je ci l j da zadovol j i neke od nj ihovihl ičnih potreba Projekat će se smatrati uspešnim ukol iko se šira zajednicazainteresuje za njega nakon što prepozna korisnost softvera ne samo za pojedincekoj i su započel i projekat već i za širu zajednicu Kada je u pitanju slobodni softvervremenom je postala stalna praksa da se zajednica umeša u razvoj projekataDobri projekti sami privlače zajednicu l judi koj i su zainteresovani za nj ih i ona uvećini slučajeva preuzima na sebe testiranje pobol jšanje funkcionalnosti održavanje i tehničku podršku projekta

Zajednice slobodnog softvera mogu da se okupe oko projekta slobodnog softverapo teritori ja lnom principu i l i da nastanu kombinaci jom ovih principa

Primeri

bull LiBRE projekat okupl ja zajednicu oko projekta bez teritori ja lnog ograničenjabull LUGoNS (Linux User Group of Novi Sad) je zajednica korisnika Linuksa poteritori ja lnom principu bez obzira na konkretan projekat

bull Ubuntu-rs zajednica koja je kombinaci ja okupl janja zajednice oko konkretnogprojekta (Ubuntu) i teritori ja lnog principa koj i se ograničava na teritori ju Srbi je

Ova sinergi ja projekata i korisnika slobodnog softvera ima više prednosti i zakorisnike i za projekat Projekat se na ovaj način brže razvi ja dobi ja na

U potrazi za idealnom distribucijom

Socijalni kriterijumi za izbor idealnedistribucije (6 deo)

Oslobađanje

27

Broj 33

funkcionalnosti greške se brzo ispravl ja ju i td Korisnici dobi ja ju osećaj dapripadaju grupi druže se sa istomišl jenicima učestvuju u promoci j i kval itetnihpojedinaca itd

Dve najvažni je uloge lokalnih zajednica za GNULinuks distribuci je su

1 pružanje tehničke podrške i edukaci je na maternjem jeziku2 rad na lokal izaci j i i pri lagođavanje distribuci je lokalnim potrebama

Informaci ja da postoje lokalne zajednice slobodnog softvera je od naročitogznačaja za početnike i korisnike koj i nedovol jno dobro znaju strane jezike(naročito engleski jezik) Ako izuzmemo komerci ja lne projekte otvorenog koda(Red Het SUSE) ne postoje zvanične škole i kursevi za slobodni softver Zaedukaci ju početnika je uglavnom zadužena zajednica a jasno je da je učenje namaternjem jeziku uvek lakše nego na bi lo kom drugom stranom ma kol ikodobro ga poznajete

Forumi i viki stranice lokalnih zajednica su prave bibl ioteke u koj ima korisnicimogu da nađu većinu odgovora na svoja pitanja a za sva ostala tu su forumi iIRC kanal i zajednica na koj ima uvek ima nekoga i koj i imaju već gotova rešenjaza vel iki broj problema

U potrazi za idealnom distribucijom

28

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Lokalne zajednice kao kriterijum za izbor idealnedistribucijePočetnicima i korisnicima koj i ne vladaju dobro engleskim jezikom toplopreporučujemo da biraju GNULinuks distribuci je koje imaju aktivnu lokalnuzajednicu Ovladavanje novim operativnim sistemom je mnogo lakše ukol iko vambdquoleđa čuvardquo lokalna zajednica na koju se uvek možete osloniti

Već smo spomenul i da su popularni je GNULinuks distribuci je namenjenepočetnicima Slučaj je isti i sa lokalnim zajednicama okupl jenim oko nj ih Ovomeđutim ne znači da je kval itet usluga koje nude manje popularne lokalnezajednice okupl jene oko distribuci ja namenjenih napredni j im korisnicima loši j i Manje popularne distribuci je okupl ja ju manje l judi a l i zato oni poseduju većeznanje Iskustvo sa zajednicama okupl jenim oko slobodnog softvera je uglavnompozitivno i ukazuje na to da kval itet usluga koje one nude korisniku ni je uslovl jenpopularnošću i masovnošću zajednice nego iskl jučivo njenom (ne)aktivnošću

U svakom slučaju dosadašnj i saveti za izbor idealne distribuci je važe i dal jeSoci ja lni aspekt slobodnog softvera je samo dodatni faktor koj i vam može pomoćipri donošenju odluke kada se dvoumite između nekol iko mogućih rešenja

Još uvek ne postoj i na jednom mestu potpuni i ažurirani spisak svih aktivnihsrpskih zajednica Nešto najbl iže tome može da se nađe na adresihttps pulsslobodewordpresscom Za informaci je o nekim drugim lokalnimzajednicama koje možda postoje al i nisu na ovom spisku moraćete sami dapretražite internet

Lokalizacija kao kriterijum za izborZa lokal izaci ju GNULinuks distribuci ja i GNU programa odgovorni su pojedinci ilokalne zajednice Sasvim sol idnu srpsku lokal izaci ju mogu imati i projekti koj iuopšte nemaju svoju lokalnu zajednicu a isto tako lošu lokal izaci ju mogu imati iprojekti sa dobrom lokalnom zajednicom Sve je stvar prioriteta zajednica iaktivnosti pojedinaca

Pravu i kontrol isanu lokal izaci ju može imati samo lokalni projekat Ovakvihprojekata u Srbi j i ima malo i teško se probi ja ju čak i u lokalu u konkurenci j isvetskih projekata Istina je da mnoge veće GNULinuks distribuci je imaju srpskulokal izaci

Oslobađanje

29

Broj 33

ju u ponudi pa se možda sl ični lokalni projekti koj i su usmereni samo na striktnulokal izaci ju smatraju nepotrebnima Uzvodna lokal izaci ja u slučaju Srbi je vrlo čestobude veoma loše čak nakaradno sprovedena Jedna polovina programa jelokal izovana srpskom ćiri l icom a druga latinicom Ako postoj i još delova sistemakoj i uopšte ni je lokal izovan onda se pojavl ju ju i delovi programa koj i su naengleskom Zato ćemo se vratiti na prvu rečenicu ovog pasusa i ponovo utvrditi dasamo lokalni projekat može potpuno kontrol isati pravu srpsku lokal izaci ju

U Srbi j i za sada imamo dva aktivna projekta GNULinuks distribuci je ndash TriOS(http triosrs) i Serbian (http wwwdebian-srbi ja iz rspserbianhtml) Obaprojekta su mlada i imaju svoj ih prednosti i mana Kome treba lokal izovanoperativni sistem može da proba jedan od ova dva projekta

U potrazi za idealnom distribucijom

30

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Iako ove dve domaće distribuci je nisu baš naj idealni je interesantno je probati ih iuporediti sa drugim distribuci jama

Za kraj serijalaNamera nam je bi la da kroz ovaj seri ja l o kriteri jumima pri izboru idealnedistribuci je definišemo većinu kriteri juma pri izboru i pokažemo zašto je teškoodgovoriti na jednostavno pitanje bdquoKoju mi distribuci ju preporučujeterdquo

Ni na samom kraju nismo dal i konkretan odgovor na pitanje koja je idealnaGNULinuks distribuci ja Suviše je subjektivnih ocena da bi se mogao datikonkretan odgovor Smatramo da je jako teško napisati neki algoritam izbora pokriteri jumima koje smo identifikoval i i definisal i a možda je čak i nemoguće poštose izlazi stalno menjaju Izlazi iz tog algoritma su GNULinuks distribuci je koj ih izdana u dan ima sve više a i one stare se stalno menjaju

Sam seri ja l bdquoU potrazi za idealnom distribuci jomrdquo neće biti završen samo zato štose više neće baviti kriteri jumima pri izboru nego će pokušati da predstavl jaGNULinuks distribuci je koje su po nečemu bdquoidealnerdquo

Oslobađanje

31

Broj 33

ORM

Autor Dejan Čugal j

Object relation mapping (ORM)

ORM (eng Object RelationMapping) je način postizanja traj-nosti (eng persistence) objekataunutar relacionih baza podatakaModel deluje kao posrednik nalogičkom delu apl ikaci je Automat-ski presl ikava podatke iz objekata ubazu i nazad na zahtev apl ikaci jeDa bismo objasni l i kako ovo sveradi moramo da vam predstavimoORM frejmvork (eng framework)programa otvorenog koda -Hajbernejt (eng Hibernate -http hibernateorgorm)

Šta je ORMUkratko ORM je automatizovano transparentno presl ikavanje objekatakorišćenjem metapodataka koj i opisuju mapiranje veze između objekta i baze

ORM (2 deo)

Slobodni profesionalac

32

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

podataka u apl ikaci jama koje su napisane u objektno ori jentisanim programskimjezicima Apl ikaci ja komunicira sa ORM-om preko njegovog vlastitog API-ja (engapplication programming interface) i određenih objekata Ova komunikaci ja jepotpuno odvojena od komunikaci je koja se odvi ja između ORM-a i baze podatakapreko SQL-a i DBC-a

Da bi se postigla i dostigla potpuna snaga ORM-a u apl ikaci j i koju projektujemonikako se ne sme iskl jučiti znanje relacionih modela SQL jezika te poznavanjeDBMS-a u kome se radi ORM ni je ništa drugo do srednj i sloj između gorepomenutih tehnologi ja i objektno ori jentisanog programiranja kao što smo to dosada već više puta naglasi l i

Implementacija ORM-aPostoje razl ičiti načini implementaci je ORM-a Mark Fasl (Mark Fussel) je 1997definisao četiri nivoa

1 bdquoČistrdquo relacioni način2 Slabo mapiranje objekata3 Umereno mapiranje objekata4 Potpuno mapiranje objekata

bdquoČistrdquo relacioni način

Cela apl ikaci ja ukl jučujući i korisnički interfejs dizajnirana je relacionim modelom iSQL relacionim operatorima Ovakav pristup je odl ičan za male projekte Direktanpristup SQL-u omogućava fino podešavanje svakog aspekta upita koj i se postavl jabazi podataka Osnovne mane su portabi lnost (prenosivost) i održavanje ovakvihsistema pogotovo ako se planira korišćenje apl ikaci je na duži rok Ovakvi sistemimasovno koriste sačuvane procedure (eng stored procedures) što znači da jeposlovna logika (eng busines logic) prebačena na samu bazu podataka

Slabo mapiranje objekata

Entiteti su predstavl jeni kao klase i mapiranje se radi ekspl icitno ka relacionimtabelama SQLJDBC je sakriven od poslovne logike korišćenjem poznatih šablona(patterns)

Umereno mapiranje objekata

Slobodni profesionalac

33

Broj 33

Dizajn apl ikaci ja se svodi na objektne modele SQL se generiše u vremekompaj l iranja (eng build-time) i l i u vreme izvršavanja (eng run-time) Specifikaci jaupita nad bazama podataka se radi na objektno ori jentisanom jeziku Ovakvisistemi se koriste u apl ikaci jama srednj ih vel ičina kod koj ih je bitna portabi lnostizmeđu razl ičitih sistema za upravl janje bazama podataka (DBMS)

Potpuno mapiranje objekata

Podržava sofisticirano objektno model iranje nasleđivanje i pol imorfizamEfikasnost dobi janja podataka je na visokom nivou i koriste se metode kao što sulenjo učitavanje (eng lazy loading) i strategi ja keširanja (eng caching) Implementaci ja je transparentna u apl ikaci jama Ovaj nivo je jako teško dostići Pojedincu su potrebne godine razvoja da postigne ovakvu fleksibi lnost pristupa imanipulaci ja u relacionim bazama podataka Upravo ovaj nivo se postiže ako sekoriste rešenja ORM-a kao što je Hajbernejt

Zašto ORMImplementaci ja ORM rešenja pogotovo ako seprvi put susrećete sa ovim modelom može dabude veoma frustrirajuća i malo teža zaimplementaci ju Kada ovo kažemo misl imo daprogramer koj i implementira ORM i hoće da istibude kval itetno urađen mora da posedujepredznanje objektno ori jentisanog programiranjai naprednih tehnika kao što su nasleđivanje ipol imorfizam

Ovo inicira fundamentalna pitanja

bull Pa zašto bi iko onda implementirao ovako nešto kompleksnobull Vredi l i truda upuštati se uopšte u ORM

Odgovor ni je jednostavan Dosadašnja iskustva u korišćenju ORM-a i njegovapopularnost već daju odgovor na postavl jeno pitanje Očigledno je da su benefitikoje donosi ovaj model veći od kompleksnosti njegove implementaci je a to su

Hibernate ORM

34

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Veća produktivnost

ORM smanjuje kol ičinu koda potrebnog za ostvarivanje trajnosti podataka Ovoomogućava programeru da vreme koje bi utrošio na ručno mapiranje podatakautroši na druge delove apl ikaci je

Lakše održavanje

Manje l ini ja koda osigurava bol ju razuml j ivost (i možda bol j i kval itet koda) jernaglašava apl ikaci jsku logiku ORM takođe ublažava uticaj nastal ih promena kaošto su promene u bazi strukturi tabela i td

Prenosivost

Većina ORM rešenja podržava sisteme za upravl janje bazama podataka raznihproizvođača ORM u potpunosti odvaja sloj apl ikaci je od stvarne SQL komunikaci jekoja se odvi ja u pozadini Time omogućava da se pišu apl ikaci je koje će moći da seizvršavaju na razl ičitim bazama podataka bez potrebe za dodatnim kodiranjemOva komunikaci ja se odvi ja sa programskim interfejsima ORM-a nezavisno oDBMS-u sa koj im je u bi lo kom momentu povezan ORM takođe omogućava lakšiprelaz sa manj ih na veće baze podataka tokom razvoja apl ikaci je

Uvidel i smo da trenutno postoje dve paradigme koje se bdquosudarajurdquo i koje supodjednako dobre same za sebe Relaciona paradigma potvrđuje da sve što jeizgrađeno na matematičkim osnovama je i trajno u smislu kval iteta koje posedujeU domenu u kom relaciona paradigma egzistira ona je ako je to u ovo vremeuopšte moguće tvrditi nezamenj iva

Ono što otvara pitanja i daje razlog za sumnju je koja je krajnja granicaupotrebl j ivosti relacione paradigme tj kol iki su kapaciteti složenosti zahtevaapl ikaci ja sa kojom može da se nosi Praksa je pokazala da je sasvim mogućebdquoizvestirdquo složene projekte - al i održavanje skalabi lnost razuml j ivost prenosivost -pitanja su sa koj im se relaciona paradigma teško može izboriti

Sa druge strane svoj habitat u informacionim tehnologi jama je našla i objektna

Slobodni profesionalac

35

Broj 33

paradigma Iako na prvi pogled ova dva modela nemaju ništa zajedničko - što je uneku ruku i istinito gledajući prirodu podataka koj im manipul išu - praksa jepokazala da su usko povezane i skoro da imaju sinaptičku vezu

Pitanje bdquokako spoj iti te sinapserdquo dovelo je do žučnih rasprava u uskim naučnimprogramersko-administratorskim krugovima Rodi l i su se razni model i a l i jedan jeiskočio i polako ulazi u široku primenu - a to je ORM Svoj im supti lnim pristupomproblemu nekompatibi lnih paradigmi nekako je uspeo da stvori taj nedostajućibdquoelektrični signalrdquo koj i ih je povezao Ovo je omogući lo da dve strane koje susvaka za sebe u svom domenu ostavi le i ostavl ja ju duboki trag u informacionimtehnologi jama sarađuju i donesu novi kval itet

Korisni l inkovi

[1] Hibernejt http hibernateorg[2] Viki http googlLlZulw[3] Tutori ja l i http googlCGzvnc

Hibernate ORM

36

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Autor Kriptopank

Šta su zapravo metapodaci Najkraće rečeno to su podaci o podacima i l iinformaci je koje opisuju podatke

Najpre da napravimo razl iku između podataka i metapodataka Podaci sunaprimer snimak (i l i transkript) vaših telefonskih razgovora sadržaj poruka kojepišete primate i l i šal jete podaci koje kačite na internet i l i preuzimate pretrageGuglom postovi na forumima dopisivanja na IRC kanal ima i l i drugim četovimaaudio i video snimci Skajp razgovora i tako dal je

Hajde da vidimo šta bi bi l i odgovarajući metapodaci za ove primere

bull Za telefonske razgovore metapodaci mogu biti lokaci ja učesnika brojevitelefona trajanje razgovora IP i MAC adresa

bull Za poruke četove i Skajp i l i druge video-audio komunikaci je sl ično je kao kodtelefonskih razgovora

To su samo metapodaci

Internet mreže i komunikacije

37

Broj 33

bull Kod foruma i pretraga Guglom ima malo manje metapodataka al i Gugl i raznisajtovi i forumi ionako čuvaju logove o korisnicima što su takođe metapodaci

Ako do sada koj im slučajem niste uvidel i opasnost po privatnost u ovimmetapodacima koje svako od nas smrtnika svakodnevno ostavl ja za sobom usvetu interneta i ostal ih digitalnih komunikaci ja nadamo se da će vas ovaj primermakar podstaći na razmišl janje a možda i na nešto više

Zamisl i te da neko (zvaćemo ga posmatrač) stalno sakupl ja metapodatke koje zasobom ostavl jate kao mrvice hleba Posmatrač recimo zna da se nalazite naautoputu nedaleko od famoznog Feketića da se ne krećete da zovete AMSS zatimšlep službu i možda taksi a l i ne zna šta ste razgovaral i I l i posmatrač vidi da steprvo zval i aerodrom Nikola Tesla pa odmah potom taksi a l i ne zna šta sterazgovaral i I l i posmatrač vidi da ste zval i prvo šest brojeva či je identitete takođezna pa vidi da se oni zatim kreću ka vama - GPS (eng Global Positioning System) pa zatim pica servis Mekdonalds i neku poznatu prodavnicu kineske hrane al i nezna šta ste razgovaral i

Posmatrač ne mora da bude mnogo pametan niti da prisluškuje vaše razgovore dabi shvatio šta se dešava i l i šta će se desiti Sasvim mu je jasno da vam je u prvomprimeru auto stao na autoputu zatim da ste se u drugom slučaju uputi l i naaerodrom i da možda putujete van zemlje i l i ste poslal i taksi po nekoga saaerodroma a da u trećem slučaju okupl jate žurku kod vas Više možete pogledatina http googl7vUjP

Iako su to bdquosamordquo metapodaci treba biti svestan da ti metapodaci o vama stvarajujednu digitalnu sl iku i l i bol je reći digitalni mozaik i na neki način vas jedinstvenoodređuju Pogotovo kada se planski prikupl ja ju na više nivoa (kompjuter pametnitelefon pametni automobi l i kreditna kartica) metapodaci čine vaš digitalniidentitet Al i da stvar bude još gora ta sl ika o vama ne mora nužno biti istinita jerse lako može lažirati Recimo možete zameniti telefone i l i automobi le sa nekimnamerno i l i slučajno i l i vam neko može jednostavno ukrasti telefon laptop i l ikreditnu karticu Zaniml j iv video http googlKO1fKf

Evo jednog primera koj i vas može uvući u vel ike nevol je Recimo da prolazitenekom zabačenom ul icom i da vam neprimetno ispadne telefon al i vi to neprimetite i nastavite dal je svoj im putem U toj ul ici se samo nekol iko minutakasni je desi neko ubistvo i vas pozovu u pol ici ju kao osumnj ičenog Ako koj im

To su samo metapodaci

38

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

slučajem nemate dobar al ibi i l i nemate svedoka da posvedoči da niste bi l i u tojul ici nego tamo gde ste stvarno bi l i a drugih svedoka nema - možete jako lošeproći Zaniml j ivi video http googlspS5OZ

Metapodaci se takođe nalaze i u faj lovimapodacima koje svakodnevnopreuzimamo sa interneta pravimo i koristimo Svaki tip podatka može da sadržiodređene metapodatke koj i bol je opisuju sam podatak kao naprimer vremenastanka podatka kol iko je vremena potrošeno za njegovo kreiranje kol iko putamu je pristupl jeno kad je poslednj i put pristupl jeno i tako dal je Iako se ovakvimetapodaci možda još uvek čine bezazlenim oni mogu sadržati i IP adresuračunara sa kog su napravl jeni GPS koordinate (najčešće PNG format sl ika satelefona) ko ga je napravio (l ičnost i l i kompani jaorganizaci ja) naziv uređaja imodel sa koga je napravl jen kao i MAC adresu uređaja mej l adresu kreatorasoftver koj im je napravl jen i tako dal je Sve ovo može mnogo da naškodiprivatnosti izvornog kreatora faj la pogotovo ako je sadržaj poverl j iv Ukol iko nekopresretne taj podatak na internetu može saznati od koga je potekao Da ovo možebiti katastrofa po kreatora takvog faj la može i lustrovati primer torenta Ako stedošl i u posed nekih sl ika i l i video materi ja la i l i teksta koj i žel i te da podel ite sasvetom preko nekog torent sajta morate taj podatak prvo očistiti odmetapodataka da ne bi svako ko skine to što ste okači l i saznao da vi stoj i te izatoga

Internet mreže i komunikacije

39

Broj 33

Ljudi se konstantno prate metapodaci se sakupl ja ju i to ni je sada već ništa novoal i možemo da se trudimo da iza sebe ostavl jamo malo manje nežel jenihmetapodataka i da ih takoreći čistimo iz podataka koje razmenjujemo Na srećupostoje programi koj i ovo dobro rade

Najpre je potrebno da vidimo koje sve metapodatke neki faj l sadrži kako bismo seuveri l i da ovi metapodaci stvarno postoje i da je faj l bezbedan nakon nj ihovogbrisanja

Ako koristite operativne sisteme GNULinuksa treba da iz terminala preuzmete iinstal irate program pod nazivom exiftool

sudo apt-get install exiftool

Ovaj program će nam pružiti uvid u sve metapodatke koje faj l sadrži Korišćenje jeiz terminala al i je zato veoma jednostavno samo ga pokrenite na sledeći način

exiftool File

i l i

exiftool putanjadofajlapočevodkorenogdirektorijuma

Dobićete prikaz metapodataka koje je program pronašao Sada je potrebno davidimo da l i je podatak bdquoprl javrdquo tj da l i ima u njemu nešto da se briše i da akoima iz njega sve nepotrebno obrišemo Tu će nam pomoći drugi program zvaniMAT (eng Metadata Anonymisation Toolkit) koga možete naći na sajtuhttps matboumorg i l i jednostavno za korisnike Ubuntua i Debi jana uSoftverskom centru i l i ga možete instal irati iz terminala

sudo apt-get install mat

MAT će proveriti da l i je podatak bdquoprl javrdquo i l i ne i za vas ga očistiti od nežel jenihmetapodataka

Kada očistite faj l on je spreman za del jenje sa drugima a vi ste bezbedni jer nikone može reći da je faj l potekao sa vašeg računara

To su samo metapodaci

40

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Autor Dejan Čugal j

GH Hardi bdquoPrava matematika nema uticaj na ratrdquo - odbrana matematičara1940 godina

Bi l Tat - britanski matematičar verovatno niste čul i za njega1942 godine je izveo ogroman poduhvat koj i je skratio rat dvegodine (barem po rečima Ajzenhauera) i spasio mi l ione životaNažalost njegova vel ičina je preminula 2002 godine obavi jenavelom tajne i nikada zvanično ni je priznato njegovo dostignuće

Tomi Flauers - bivši inženjer poštanskog saobraćaja pretvorio jematematičke ideje Tata u prvi računar a to ni je bio bdquoENIACrdquo1Preminuo je 1998 godine a pretpostavl jamo da nikada niste čul ini za njegovu vel ičinu

Ovi umni giganti bdquoBlečl i parkardquo omogući l i su Britani j i da dešifruje strogo poverl j ivumašinu koju je koristio Hitler da diriguje drugim svetskim ratom a to ni je bi labdquoENIGMArdquo nego nešto mnogo tajni je i značajni je Vel ika je verovatnoća da nistečul i ni za ovo Neki kažu da je to bio Hitlerov Blekberi (BlackBerry)

Izgubljeni heroji bdquoBlečli parkardquo

1 engl Electronic Numerical Integrator And Computer - prvidigitalni elektronski računar

Internet mreže i komunikacije

41

Broj 33

1939 godine bdquoBlečl i parkrdquo je postao ratni štab MI6 (britanske vojne obaveštajneslužbe) Do danas je procurelo u javnost i dokumentovano brojnim fi lmskimdokumentarcima samo da je tu Alan Tjuring uspeo da dešifruje nemačkumornaričku šifru poznatu kao bdquoENIGMArdquo i uvel iko doprineo pobedi saveznika a to jesamo deo priče koj i je ispričan

U Blečl i parku su bi la tri heroja AlanTjuring Bi l Tat i Tomi Flauers Od nj ihtroj ice jedino Alanu Tjuringu je priznat deozasluga za pobedu saveznika u Drugomsvetskom ratu Pregledom otkrivenihpodataka danas možemo da tvrdimo daje bdquoENIGMArdquo već sa početka drugogsvetskog rata bi la zastarela tehnologi ja Zbog toga je bi lo lako skinuti veo tajne sa

ovog uspeha heroja Blečl i parka

Izgubljeni heroji bdquoBlečli parkardquo

42

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Bi l Tat koj i je dešifrovao bdquoTANI sistemrdquo (TANI) i Tomi Flauers koj i je samo svojomintuici jom i znanjem sklopio prvi računar na svetu (bdquoKOLOSrdquo) u svrhu bržegdolaženja do informaci ja razbi jenog koda bdquoTANIrdquo tako da zastarelost šifrata budesvedena na minimum - radi l i su na novoj generaci j i mašina za šifrovanje Ovatehnologi ja je bi la prepoznata kao tehnologi ja budućnosti pa i danas iznadinformaci ja o tim tehnologi jama stoj i natpis bdquovrhunska tajnardquo (eng Top Secret) Upravo ovaj veo tajni oko šifrata bdquoTANIrdquo i prvog računara je rezultirao iskrivl jenjuistori je informatike

Za uspehe u prvim godinama rata je zaista zaslužno razbi janje bdquoENIGMArdquo šifrata ito ni je sporno al i krajem 1941 godine u etru planete se začuo novi zvuk To je bi lanova mašina za šifrovanje ni je bi la zasnovana na bdquoMorzeurdquo već je radi la naprincipu teleprintera

Jedna od kl jučnih ideja Hitlerovog ratovanja je bi la u vel ikoj mobi lnosti i brzomdelovanju trupa na terenu a da bi se to izvelo komunikaci ja je isto tako morala dabude u najmanju ruku putem radio signala

Razl ika je ogromna Razl ika je u kol ičini podataka koj i može da se prenese ovimbdquotajnimrdquo putem Prvi svetski rat je bio zaniml j iv jer su se šifrovane poruke baziralena rečima dok je Drugi u potpunosti otvorio vrata današnjoj kriptografi j i a to jematematika

Originalan nemački kocircdni naziv za ovaj šifrat bio je bdquoLORENCrdquo Britanska

Internet mreže i komunikacije

43

Broj 33

obaveštajna služba mu je dala nadimak bdquoTANIrdquo Čak ni dan danas ni je baš poznatokako je sve nastalo al i pouzdano se zna da je tajnu mašinu Hitler nazvaobdquoGehajmšrajberrdquo (nem Geheimschreiber) - mašina tajni

U srž i tehnologi ju šifrovanja bdquoLORENCrdquo šifrata nećemo ulaziti u ovom članku al iverujte nam na reč - ni je bi la jednostavna Može se pretpostaviti da je inspiraci jaŠenonovog 2 rada slučajnosti bi la upravo ova tehnologi ja iz Drugog svetskog rata

Ono čime se Treći rajh vodio je bdquosigurnardquo šifrovana veza koju niko ni je smeo dadešifruje Prenošenje šifrovanih poruka pomoću radio signala je dalo obaveštajnimslužbama mogućnost presretanja poruka poslatih radio talasima Da l i se ovo idanas dešava Imamo l i sigurnost u našim šifrovanim podacima današnj ice

Ono što je usledi lo nakon proboja ovog bdquoneuhvatl j ivogrdquo šifrata je upravo ono što jeprincip današnj ice kao neka vrsta protokola koj i mora da se ispoštuje uperfektnom šifarskom Šenonovom sistemu

1 NIKADA NIKADA NE KORISTITI DVA PUTA ISTI KLJUČ ZA ŠIFROVANJE2 NIKADA NIKADA KLJUČ NE SME DA SE ŠALJE ISTIM KOMUNIKACIONIM KANALOM

KAO PORUKA3 NIKADA NIKADA KLJUČ NE SME DA BUDE MANJ I NEGO ŠTO JE PORUKA (engl

2 Klod Elvud Šenon (eng Claude Elwood Shannon) (1916-2001) - Američkinaučnik i inženjer

Izgubljeni heroji bdquoBlečli parkardquo

44

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

one time pad) 4 NIKADA NIKADA NE SMEMO DA SAKRIVAMO SISTEM ŠIFROVANJA SVE MORA

DA JE OTVORENOG KOcircDA

Najveći propusti kriptologi je koj i su uočeni baš u Drugom svetskom ratu jesupokušaj sakrivanja sredstava koj im se generiše tajna poruka i nepoznavanjeŠenonovih krajnj ih granica informaci ja Kada kažemo bdquosredstvo i sakrivanjerdquomisl imo na algoritme Postavl ja se pitanje zašto je danas kriptologi ja sigurni ja negočetrdesetih i pedesetih godina prošlog veka

Danas uprkos tome što su algoritmi za kriptografi ju otvorenog kocircda tajnostinformaci ja je na višem nivou nego što je to bi lo dok je algoritam bio strogopoverl j iv Tajnost tajnih podataka se ne zasniva na tajnosti a lgoritama koj i generišutaj isti bdquotajni izlazrdquo (eng cipher text) nego u nemogućnosti matematičke inverznefunkci je koja bi šifrovan tekst otvori la Ovde se vidi da je svrha strukture otvorenogkocircda kao jednog od značajnih delova današnje kriptologi je ona koja ga činisigurnim i svima dostupnim

Sada kada se sa ove distance osvrnemo na Drugi svetski rat možemo videti kol ikosmo bi l i bl izu apokal ipse Naime Albert Ajnštajn je već 1944 godine imao urukama recept za nuklearnu bombu Šenon je mogao već u to vreme da nampredoči 100 siguran šifrat (tzv Hitlerovu super šifru) a l i ipak sreća nas jeposluži la da čovečanstvo tada ni je bi lo spremno da upotrebi svu raspoloživutehnologi ju

Albert Ajnštajn bdquoČetvrti svetski rat će se voditi tol jagamardquo

Zaboravl jeni heroj i Blečl i parka iako su odigral i važnu ulogu u pobedi saveznika usvetskom ratu postal i su žrtve bdquotop secretrdquo doktrine potpuno su zaboravl jeni inestal i su iz istori je

Zakl jučak ovog članka je da je ideologi ja otvorenog kocircda sasvim sigurno tu da nampomogne i da otvori vrata ka većoj sigurnosti novim idejama i kval itetu sameinfrastrukture sistema koju svi zajedno razvi jamo

Internet mreže i komunikacije

45

Broj 33

Autor Nikola Hardi

NabrajanjaBez brojeva

Za nabrajanje pojmova u Bimeru (eng Beamer) koristi se okruženje itemize aunutar tog okruženja možemo da dodajemo nove stavke pomoću item Primerizgleda ovako

beginitemizeitem Stavka Aitem Stavka Bitem Stavka C

enditemize

Sa brojevima

Postoje situaci je kada uz nabrajanje treba da stoje i redni brojevi - za to se koristienumerate okruženje a nove stavke se takođe dodaju pomoću item

beginenumerateitem Redni broj 1item Redni broj 2item Redni broj 3

endenumerate

prezentaci ja

Beamer (4 deo)

Sam svoj majstor

46

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

DefinicijeTreća situaci ja je nabrajanje parova termin - definici ja U tom slučaju se koristiokruženje description Već možete da pretpostavite kako se dodaju nove stavke

Primer

begindescriptionitem[Pojam A] Definicija izmišljenog pojma Aitem[Pojam B] Definicija izmišljenog pojma Bitem[Pojam C] Definicija izmišljenog pojma C

enddescription

Ostala podešavanja i zanimljivostiSva prethodna okruženja mogu da budu ugneždena jedno unutar drugog dotrećeg nivoa Treba biti pažl j iv jer sla jdovi vrlo lako mogu da postanu nečitl j ivi Osim toga moguće je izabrati i format oznake i l i rednih brojeva - na primer ovako

beginenumerate[I]beginenumarate[a)]

Takođe moguće je upravl jati pojavl j ivanjem pojedinih stavki na slajdovima Drugimrečima možemo da odredimo da se nabrajanja postepeno otkrivaju tako što ćemouz stavku dodati lt1-gt odnosno broj od kojeg slajda žel imo da se ta stavkapojavl ju je Tada će jedno nabrajanje biti bdquorazvučenordquo na više slajdovaJednostavni ja mogućnost je da u zaglavl je okruženja dodamo +- što znači dažel imo da se svakim slajdom otkriva po jedna nova stavka iz nabrajanja Znak bdquo-rdquo uoba primera znači da žel imo da se stavka pojavi na sledećem slajdu i da ostane

Sam svoj majstor

47

Broj 33

prisutna Možemo da izostavimo znak bdquo-rdquo i tada će stavka biti prisutna samo najednom slajdu i l i da napišemo raspon slajdova u koj ima žel imo da ta stavka budeprisutna

Rad sa kolonama i blokovimaDo sada su svi primeri podrazumeval i da je sadržaj napisan preko cele širineslajda al i Bimer (eng Beamer) ima i jednostavne mehanizme za razmeštanjesadržaja po kolonama Za rad sa kolonama se koristi okruženje columns unutarkojeg možemo da dodajemo nove kolone pomoću columnširina Sadržaj jemoguće potom pisati i van okruženja sa kolonama

U paru sa kolonama često se sreće i okruženje block koje se parametrizujenaslovom Primerom su i lustrovani i okruženje column i okruženje block

beginframebegincolumns

column05textwidthbeginblockNaslov levog blokaSadržaj u prvoj (levoj) koloni endblock

column05textwidthbeginblockNaslov desnog blokaSadržaj u drugoj (desnoj) koloni

endblockendcolumns

beginblockVan kolona

Beamer

48

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Tekst koji se nalazi ispod kolonaendblock

endframe

TabeleIako se u radu sa prezentaci jama sadržaj najčešće može uredno rasporeditipomoću kolona i nabrajanja nekada to ni je dovol jno jer su tabele pravi formatBimer podržava standardno Lateh (LaTeX) okruženje za rad sa tabelamaOkruženje za rad sa tabelama se zove tabular Pri kreiranju nove tabele moguće jepodesiti koje kolone će biti razdvojene l ini jom i da l i će nj ihov sadržaj biti centrirani l i uz levu i l i uz desnu ivicu Dodavanje novog reda se jednostavno radidodavanjem hline Lateh pruža zaista jako fleksibi lan rad sa tabelama i sigurno ćedoskočiti svim mogućim i nemogućim zamisl ima Potražite bi lo koje Lateh uputstvoza rad sa tabelama i radiće i sa Bimerom

beginframebegintabular | c | c | c | c |

hlineamp Ponedeljak amp Utorak amp Sreda hline

1 amp 16 amp 32 amp 64 hline2 amp 16 amp 128 amp 1024 hline3 amp 16 amp 512 amp 4096 hline

endtabularendframe

Sam svoj majstor

49

Broj 33

Beamer

Teoreme i istaknut tekstU nastavi su česta izlaganja teorema nj ihovih dokaza i primera U Bimer jeugrađena podrška za elegantno predstavl janje ove trojke Mehanizam takođepodržava postepeno otkrivanje sadržaja sla jda tako da slušaocima ne bude odmahotkriven dokaz teoreme Mehanizam za postepeno otkrivanje se kao i kodnabrajanja postiže pomoću bdquolt1-gtrdquo konstrukci je Evo kako to izgleda

beginframeframetitlePrimer teoreme

begintheoremlt1-gt Teorema kaže da su beamer prezentacijezanimljive

endtheorem

beginexamplelt2-gt Ovaj kod kreira slajd beamer prezentacijeendexample

beginprooflt3-gt Čestitamo stigli ste do kraja serijala o pravljenju beamer prezentacija

endproofendframe

50

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Za krajOvim člankom završavamo seri ja l o Bimeru Nadamo se da smo uspel i da vaszainteresujemo za ovu vrlo korisnu klasu Lateha Trudi l i smo se da vamprezentujemo najvažni je delove Bimera koje ćete najčešće koristiti pri l ikomkreiranja svoj ih prezentaci ja

Napominjemo još jednom da je Bimer samo jedna od klasa Lateha što znači da i zaBimer važi sve ono što ste već mogl i da pročitate u ovom časopisu kad smo pisal iseri ja l bdquoUvod u LaTeXrdquo (LiBRE brojevi 17 do 21) Štaviše ovaj seri ja l o Bimeru jebio nastavak upravo tog seri ja la U ovom seri ja lu nismo pisal i o samomformatiranju teksta u prezentaci jama jer se podrazumeva da važe ista pravi la kao iu Latehu a o tome smo pisal i u prethodnom seri ja lu

Hvala vam što ste prati l i ovaj seri ja l i žel imo vam puno uspeha u kreiranju Bimerprezentaci ja

Sam svoj majstor

51

Broj 33

Autor Nenad Marjanović

Kada smo se upoznal i sa podešavanj ima sistema i umrežavanjem vreme je za našprvi Biglbon Blek (BBB - eng BeagleBone Black) projekat Svakom od nas će ovajizazov dati razl ičite ideje a jedna od nj ih može biti i zaštita privatnosti internetkorisnika Nažalost u Srbi j i ne postoj i ni jedan izlazni tor server (eng node) i to jepomalo tužna sl ika s obzirom da govorimo o populaci j i od sedam mil ionastanovnika Al i ovu sl iku možemo promeniti udruženim snagama i za početakkreiranjem Tor transfer i izlaznog servera U ovde prikazanom grafikonufokusiraćemo se na bdquoRauter Brdquo tačku odnosno transfer server konfiguraci ju

BeagleBone Black Rev C

Vodič od prvog dana (3 deo) ndashBeagleBone Black kao Tor relej

Hardver

52

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Tor predstavl ja mrežu servera koj i se povezuju radi bol je enkripci je podataka izaštite IP adrese korisnika Naš ci l j je da danas postanemo deo ovog predivnogprojekta i da se nađemo na svetskoj karti Tor servera

Brzina interneta i zakonske regulativePotrebno je imati na umu nekol iko bitnih stvari

1 Naš server = naša odgovornost2 Obavezno naznačite da ste vi administrator a ne korisnik istog servera3 Da posedujete internet brzinu od 2 Mbs

Ako ispunjavamo tri navedena pravi la i odgovornosti možemo se posvetitiadministrativnim poslovima

Instalacija i podešavanjaU ovom primeru koristimo Debi jan Vizi (eng Wheezy) odnosno Debi jan 7 verzi juna našem BBB uređaju Vi možete testirati i druge Linuks platforme Prvododajemo izvornu bibl ioteku u etcaptsourceslist faj l pokretanjem sledećekomande u terminalu

echo deb httpdebtorprojectorgtorprojectorg wheezy main gt etcaptsourceslistdtorlist

Zatim dodajemo izvorni kl juč vršimo ažuriranje sistema i instal iramo tor i tor-arm(Tor monitoring sistem)

gpg --keyserver keysgnupgnet --recv 886DDD89gpg --export A3C4F0F979CAA22CDBA8F512EE8CBC9E886DDD89 | sudo apt-keyadd -apt-get updateapt-get install debtorprojectorg-keyring -yapt-get install tor tor-arm egrep screen -y

Ovim smo uspešno završi l i instalaci ju Tor servera i sistema za monitoring odnosnonadgledanja našeg Tor servera Sledećom komandom radimo na podešavanj imaTor servera koja se nalaze u etctortorrc faj lu Obratite pažnju i izvršite potrebne

Hardver

53

Broj 33

izmenu u pol j ima IP adresa (eng Address) nadimka (eng Nickname) i kontaktpodataka (eng ContactInfo) pre pokretanja ove komande Kopiramo i pokrećemokomandu u celosti u terminalu

egrep -v ^(|$) etctortorrcORPort 443Address 19216811Nickname LibreTorRelayRelayBandwidthRate 100 KBRelayBandwidthBurst 120 KBContactInfo ltvi at gmail dot comgt irPort 8080DirPortFrontPage etctortorhtmlExitPolicy reject

Detal je o svim vrednostima nećemo iznositi u ovom broju LiBRE časopisa al ićemo o nj ima pisati u sledećem u kome ćemo pričati o zaštiti Tor servera imogućnosti podešavanja određenih izlaznih pravi la (eng ExitPolicy)

Nakon ovoga možemo primetiti da se u folderu etctor ne nalazi torhtml faj l Ovaj faj l ni je od vel ikog značaja i možete ga l ično napraviti i l i preuzeti jednu kopi ju- naprimer sa sledeće lokaci je

cp usrsharedoctortorhtml etctortorhtml

Opcije i Tor Arm monitoringDa bismo ispravno koristi l i Tor Arm potrebno je urediti još jednom etctortorrcfaj l i restartovati servis

echo -e ldquoDisableDebuggerAttachment 0n AvoidDiskWritesrdquo gtgt etctortorrcsudo service tor reload

Ukol iko žel ite koristiti Tor Arm za nadgledanje aktivnosti na serveru pokreniteprogram screen kl iknite na bdquoEnterrdquo i kucajte sudo -u debian-tor arm Naekranu ćete imati sl ičan prikaz

BeagleBone Black

54

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Hardver

55

Broj 33

Da bismo napusti l i screen program koristimo Ctrl + a + d i na taj način kada sesledeći put pri javimo na server kucamo samo screen -r u terminalu - i naći ćemose ponovo na čuvenom Tor Arm monitoring ekranu

Nakon svake promene konfiguracionih faj lova ako slučajno nismo nešto podesi l ikako treba restartujemo servise

U sledećem broju časopisa govorićemo o minimalnim podešavanj ima ikonfigurisanju izlaznog Tor servera (eng Tor Exit Node) opci jama sigurnosti isl ičnim detal j ima u vezi sa našim prvim projektom Do čitanja u sledećem broju

BeagleBone Black

LUGoNS BarCamp 4subota 7 mart 2015 godine

Četvrti LUGoNS-ov Barkemp (BarCamp) održaće se u Novom Sadu usubotu 7 marta 2015 godine na Fakultetu tehničkih nauka sa početkomu 12 časova

Ulaz je slobodan

Poziv za predaju radovaLUGoNS poziva sve zainteresovane da pošal ju svoje radove (predavanjaprezentaci je radionice i diskusi je) do 28 februara 2015 godine

Oblasti iz koj ih možete da pri javite vaše radove su

bull Slobodan softverbull Zaniml j iv hardverbull Hakerski zakonibull Sigurnosne noćne morebull Anonimnost i privatnost na internetubull Duboki veb (eng Deep Web)bull Soci ja lne mrežebull Soci ja lni inženjeringbull Hakovanje mobi lnih uređajabull Internet u oblaku (eng Clouds) ndash hakovanje razbi janje i neočekivano korišćenjebull DPI (eng deep packet inspection)bull Mreža i mrežna neutralnost ndash vlasništvo cenzura nadmudrivanje i pol itika bdquodefaktordquo standarda

bull Programiranje i programski jezici

Nemojte se ustručavati i slobodno nam se javite ako imate rad na gore navedenei l i sl ične teme koj i smatrate interesantnim

Stranica za predaju radova nalazi se na https events lugonsorgp=1658

Page 4: LiBRE 33 Lat

4

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Vesti str 6

Predstavljamobgfx - Cross-platform rendering library str 9rEFInd - Boot managment str 14

Kako da Uvod u programski jezik C (9 deo) str 18

OslobađanjeU potrazi za idealnom distribuci jomSoci ja lni kriteri jumi za izboridealne distribuci je (6 deo) str 26

Slobodni profesionalacHibernate ORM (2 deo) str 31

Internet mreže i komunikacijeTo su samo metapodaci str 36Izgubl jeni heroj i bdquoBlečl i parkaldquo str 40

Sam svoj majstorLaTeX prezentaci ja Beamer (4 deo) str 45

HardverBagleBone Black Rev C Vodič od prvog danaBeagleBone Black kao Tor relej (3 deo) str 51

Moć slobodnogsoftvera

Sadržaj

Broj 33Periodika izlaženja mesečnik

Izvršni urednik Stefan NožinićGlavni lektorAleksandar Božinović

LekturaJelena Munćan Saška SpišjakMilena Beran Milana VojnovićAdmir Halilkanović

Grafička obradaDejan Maglov Ivan Radeljić

Dizajn White Circle Creative Team

5

Broj 33

LiBRE prijatelji

Broj 33Periodika izlaženja mesečnik

Izvršni urednik Stefan NožinićGlavni lektorAleksandar Božinović

LekturaJelena Munćan Saška SpišjakMilena Beran Milana VojnovićAdmir Halilkanović

Grafička obradaDejan Maglov Ivan Radeljić

Dizajn White Circle Creative Team

Autori u ovom broju

Ostali saradnici u ovom brojuMarko Novaković Mihajlo Bogdanović

Počasni članovi redakcijeŽeljko Popivoda Željko ŠarićVladimir PopadićAleksandar Stanisavljević

KontaktIRC floss-magazin na ircfreenodenet

E-pošta librelugonsorg

Nenad MarjanovićNikola HardiKriptopank

Dejan ČugaljBranimir Karadžić

6

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

21 januar 2015

Kanonikal pokrenuo verzijuUbuntu Kora za Internet stvariKanonikal kompani ja zadužena za razvoj UbuntuLinuks distribuci je pokrenula je svoju verzi juUbuntu Kora (Core) za Internet stvari (Internet ofThings)

Koristan l ink http tcotN3VmZe5PK

26 januar 2015

Masovno nadgledanje pretiljudskim pravimaU evropskom izveštaju masovno špi juniranje pretidigitalnoj sigurnosti i l judskim pravima

Koristan l ink http tco9gcrmXw44q

27 januar 2015

Jutjub koristi HTML5 kaopodrazumevani načinreprodukcijeJutjub je zamenio Fleš tehnologi ju novi jomotvoreni jom i napredni jom tehnologi jom - HTML5koja će se koristiti kao podrazumevani načinpuštanja video sadržaja

Koristan l ink http tcozBpJh8Op6x

Vesti

7

Broj 33

28 januar 2015

GHOST - bezbednosni problemGHOST - novi bezbednosni problem u GNU-ovoj Cbibl ioteci koj i dovodi u opasnost sve apl ikaci jekoje koriste funkci je gethostbyname i gethost-byname2 i omogućava udal jenom napadaču dadobi je dozvole koje ima korisnik koj i izvršava tuapl ikaci ju

Koristan l ink http tcoGDYKsH2nOo

1 februar 2015

Pajrat Bej se vratioNajpopularni j i torent sajt Pajrat Bej (The PirateBay) se ponovo vratio posle dvomesečnogperioda kada je bio nedostupan

Koristan l ink http tcorSAPCVXWJi

2 februar 2015

Rasberi-Paj 2 je izašaoDostupan je u prodaj i Rasberi-Paj 2 (Raspberry PI2) sa 4 procesorska jezgra

Koristan l ink http tcoRGlOdoeioc

Vesti

8

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

3 februar 2015

Američka vojska otvara svojprogram za detekciju napadaAmerička vojska je odluči la da svoj program za de-tekci ju napada postavi na Githab i time omogućicelom svetu da koriste softver koj i su oni koristi l i zadetekci ju napada na mrežu ministarstva odbraneOni ovim potezom očekuju povratnu informaci ju odl judi koj i ne rade u vladi i nadaju se unapređenjusvog programa

Koristan l ink http tcov3PYlKF2sz

6 februar 2015

GPG u opasnostiVerner Koh (Werner Koch) programer koj i jezadužen za razvoj GPG-a (Dži-Pi-Dži engl GNUPrivacy Guard) softvera koj i svi koristimo zaenkripci ju kako naše elektronske pošte tako i ostal ihbitnih podataka polako ostaje bez novčanihsredstava Pozivaju se svi zainteresovani i oni koj i suu mogućnosti da pošal ju donaci ju u vidu novca

Koristan l ink http tcojGac5emwPX

9 februar 2015

Arduino razvojno okruženje -novo izdanjeIzašlo je novo razvojno okruženje za Arduino uverzi j i 1 6

Koristan l ink http tco4A0pFcIsVf

Vesti

9

Broj 33

Autor Branimir Karadžić

bgfx je rendering bibl ioteka otvorenog koda sa podrškom za više razl ičitih grafičkihAPI-ja 1 (eng Application Programming Interface) i operativnih sistema 2 Bibl iotekasluži za jednostavni j i pristup grafici i razvoj igara na više platformi Najvećiproblem sa kompjuterskom grafikom je što postoj i više razl ičitih API-ja koj i kada sekoriste direktno onemogućavaju portovanje igara na druge platforme Praveći igrukoja pristupa samo bgfx bibl ioteci a ne direktno API-u autor igre omogućava sebida tu igru na jednostavan način može prebaciti na bi lo koj i podržan operativnisistem odnosno platformu

Predstavljamo

bgfx - Cross-platform renderinglibrary

10

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

U početku bgfx je bio samo hobi projekat i zato ima nemaštovito ime Bi la je tosamo jedna od mnogih bibl ioteka koje sam napravio za pravl jenje igara Kada samradio na jednoj igri postojala je potreba da se igra prebaci sa starog DX9 (engDirectX 9) renderinga na OpenGL (engl Open-dži-el ) pa sam tom pri l ikom izvukaodeo moje hobi bibl ioteke za renderovanje i zapakovao je kao cel inu Posle uspešneprimene ove bibl ioteke u moj im projektima odlučio sam da je objavim kao projekatotvorenog koda na Githabu (eng Github) pod l icencom BSD 2-clause Po mommišl jenju ovaj deo renderinga je trebalo već odavno da bude rešen problem kao ida bude moguće da se igre bez veće muke izdaju na bi lo kojoj platformi po žel j iautora Namenjena je prevashodno manj im autorima koj i žele da imaju potpunukontrolu nad svoj im kodom bez obzira na platformu na kojoj žele da objave igruKod ovakvih komerci ja lnih proizvoda uvek postoje neka ograničenja a ako firmeizgube interes za proizvodom mogu ostaviti autore na cedi lu bez podrške iodržavanja Sa druge strane projekti otvorenog koda omogućuju saradnju autora iunapređenje funkcionalnosti projekta na zadovol jstvo svih

Upotrebom bgfx bibl ioteke korisnik može da zanemari konkretnu implementaci jurazl ičitih tehnologi ja kao što su OpenGL OpenGL ES i Direct3D bez kompromisa saperformansama Ova bibl ioteka ni je tanka apstrakci ja i l i emulator nekogpostojećeg API-ja tipa Guglovog Engl (eng ANGLE) projekta koj i emul ira OpenGL

Predstavljamo

11

Broj 33

ES preko Direct3D-a i l i Valvov TuDži-El (eng ToGL) koj i emul ira Direct3D 9 prekoOpenGL-a nego zaseban API višeg nivoa Iako je u prošlosti bi lo sl ičnih projekatasvi oni su uglavnom imal i pretenzi ju da budu endžin (engine) i l i frejmvork koj i bitvorci igara koristi l i kao takav Takav pristup donosi dosta kompl ikaci ja i veoma jeteško takav projekat integrisati sa postojećim kodom Iz ovog razloga bgfx projekatnema pretenzi je da bude ceo endžin i l i frejmvork nego samo bibl ioteka koju svakomože lako da integriše u sopstveni projekat

bgfx bibl ioteka se trenutno koristi u nekol iko komerci ja lnih igara al i ima i dostainteresovanja za projekat kao osnove za pravl jenje korisničkih apl ikaci ja pa čak ialata za programere

Na projektu je do sada radi lo oko deset l judi Uglavnom su dodaval i podršku zanove platforme primere i l i su povezival i bibl ioteku sa drugim jezicima Što sebuduće saradnje na ovom projektu tiče sve je dobrodošlo čak i sȃmo korišćenjebibl ioteke a zahtevi za uvođenje novih mogućnosti unapređuju samu bibl ioteku

bgfx

12

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Predstavljamo

13

Broj 33

1 Podržava grafičke API-je

bull Direct3D 9bull Direct3D 11bull OpenGL 2 1bull OpenGL 3 1+bull OpenGL ES 2bull OpenGL ES 3 1bull WebGL 1 0

2 Podržava platforme

bull Android (14+ ARM x86 MIPS)bull asm jsEmscripten (1250)bull iOSbull Linuks (x86 x86_64)bull Nejtive klajent (Native Client PPAPI37+ ARM x86 x86_64 PNaCl)

bull OS Iks (OSX 109)bull Rasberi-paj (RaspberryPi - ARM)bull Vindouz (Iks-pe Vista 7 8 10)bull Vin-ar-ti (WinRT WinPhone 80+ )

bgfx

14

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Autor Stefan Nožinić

UvodrEFInd je softverska apl ikaci ja za EFI (Extensible Firmware Interface) sisteme kojaomogućava izbor više operativnih sistema na jednostavan način Ovo je samoupravnik buta (boot) i u ovom broju vam predstavl jamo o kakvom projektu je reč ikako se može primeniti

Šta je (U)EFIPre nego što predstavimo sam projekat trebalo bi prvo da skrenemo pažnju idetal jni je da predstavimo problematiku EFI je nastao kao zamena za dosadašnj iBIOS (Basic InputOutput System) i razvi la ga je kompani ja Intel Ovaj pristup jekasni je zamenjen UEFI standardom EFI tehnologi ja ima prednost u slučajevimakao što su

bull Pokretanje sistema na diskovima preko 2TB memori je korišćenjem GPTtehnologi je

bull Nezavisnost od specifične arhitekture procesorabull Modularan dizajnbull Dobro okruženje pre učitavanja operativnog sistema što podrazumeva i mrežnupodršku

Tehnologi ja omogućava upotrebu 32-bitnih i 64-bitnih adresa na procesorima koj ito podržavaju Rani je BIOS tehnologi ja to ni je omogući la već se uvek koristi la 16-bitna implementaci ja iz istori jskih razloga

Predstavljamo

15

Broj 33

Particiona šemaEFI tehnologi ja ima drugači ju šemu partici ja Dok je stari pristup podržavao samoMBR (Master Boot Record) šemu nova tehnologi ja podržava GPT šemu kojaomogućava veći broj primarnih partici ja Sa starim pristupom taj broj bio jeograničen na četiri primarne partici je od koj ih je svaka morala da ima kapacitetmanj i od 2TB

AplikacijeUEFI podržava izradu apl ikaci ja koje bi se pokretale nezavisno od operativnogsistema Ove apl ikaci je se mogu naknadno instal irati Primer takvih apl ikaci ja supokretači (loader) operativnih sistema kao i upravnici butovanja

EFI sistemska particijaEFI podržava posebnu partici ju za smeštanje raznih potrebnih informaci ja kao štosu potrebni podaci za rukovanje računarom i specifične apl ikaci je Ova partici ja jenajčešće FAT32 sistem datoteka

rEFInd

16

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

But menadžer i but louder - ima razlikeOd popularizaci je GRUB upravnika mnogi korisnici su ostal i bez objašnjenja kakvaje razl ika između but loudera (boot loader) i but menadžera (boot manager) Ovose dešava jer GRUB pruža obe usluge u sklopu jednog programa pa se time teževidi razl ika između ova dva pojma But menadžer je upravnik pomoću kojeg jemoguće izabrati operativni sistem za pokretanje On ne zna ništa speci ja lno ooperativnom sistemu pa time ne zna ni kako da ga pokrene On samo zna datreba da pokrene but louder za taj sistem Kada je sistem izabran pokreće sespecifičan but louder za taj sistem koj i je zadužen za dal j i proces pokretanjakernela Za razl iku od GRUB upravnika rEFInd pruža samo usluge but menadžerašto u početku može zvučati poražavajuće za ovaj projekat Kada uzmemo u obzirda većina sistema danas ima but louder u sklopu kernela (ukl jučujući i Linuks odnovi j ih izdanja) ovaj problem je prevaziđen

Predstavljamo

17

Broj 33

InstalacijarEFInd postoj i kao deb i kao rpm paket al i postoj i i zapakovan kao zip arhivaZahval ju jući tome paket je moguće instal irati upotrebom dpkg komande nadistribuci jama baziranim na Debi janu kao i upotrebom rpm komande nadistribuci jama koje koriste taj način pakovanja paketa Za Ubuntu postoj i i PPArepozitori jum pa rEFInd može biti instal iran na sledeći način

sudo apt-add-repository pparodsmithrefindsudo apt-get updatesudo apt-get install refind

Nezavisno od toga koj i način od gore opisanih koristite rEFInd će automatski bitiprebačen na ESP i biti postavl jen kao podrazumevani upravnik

KonfiguracijarEFInd bi trebalo da vam pruži zadovol javajuću funkcionalnost bez dodatnekonfiguraci je posle instalacionog procesa On će automatski detektovati loudereoperativnih sistema korišćenjem pretrage po svim partici jama koje prepozna Uslučaju da ste napredni j i korisnik i da žel ite da modifikujete ponašanje rEFInda tomožete uraditi izmenom njegove konfiguracione datoteke Postoj i g lobalnakonfiguraci ja i konfiguraci ja za svaki sistem posebno Ovaj tekst bi postao previšedugačak kada bismo ulazi l i u detal je same konfiguraci je pa vam zatopreporučujemo ako imate potrebu za dodatnom konfiguraci jom da posetitedokumentaci ju projekta i l i ako imate neke nedoumice da kontaktirate s namapreko naše e-pošte

Za krajŽelel i bismo da ovaj tekst zakl jučimo ocenom da je ovaj projekat dosta zaniml j ivda pruža zadovol javajuću funkcionalnost i da omogućava korisnicima koj i koristeovaj sistem pokretanja lako pokretanje svoj ih operativnih sistema Još jednomžel imo da vam skrenemo pažnju da nam se obratite i ukažete ako smo nešto važnopropusti l i da pomenemo i l i ako nam se negde potkrala greška

Korisni l ink http wwwrodsbookscomrefind

rEFInd

18

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Autor Nikola Hardi

Opšte je poznato da su računari dobri u radu sa brojevima Međutim vremenom suse i potrebe korisnika i alati za programiranje računara razvi ja l i i rad sa drugači j imtipovima podataka je postao uobičajen i znatno jednostavni j i nego rani je Svi smoimal i pri l iku da radimo sa programima za obradu fotografi ja video materi ja la i l izvučnih zapisa Multimedi ja je ipak tema koja prevazi lazi jedan uvodni kurs o C-ual i do kraja ovog seri ja la ćemo se dotaći i tih tema Za početak osvrnućemo se narad sa tekstualnim podacima na C način

Stringovi na C načinDefinici ja tekstualnog podatka u sferi računarstva se uglavnom svodi na to da jetekst niz karaktera a karakteri su znakovni simbol i Iako imamo mogućnost daradimo sa tekstom i l i multimedi jom računari ipak razumeju samo brojeve pamoramo tako da im predstavimo i tekst Postoje razni standardi kako se pojedinikarakteri predstavl ja ju u memori j i računara između ostalog najpoznati j i su ASCIIEBCDIC UTF i td EBCDIC je standard koj i je prisutan u Eplovom (eng Apple) svetu iviše nema tol iko važnu ulogu ASCII je standard koj i je vrlo prisutan i danas UTF jenastao kao proširenje ASCII standarda javl ja se u više vari janti i uvodi podršku zapisma razl ičita od abecede (kinesko japansko ćiri l ica arapsko i mnoga druga)

Važno je napomenuti da je originalni ASCII standard propisivao 7 bitova za jedankarakter što je dalo prostora za 128 karaktera Među tim karakterima se nalazecifre mala i vel ika slova engleskog alfabeta i niz kontrolnih karaktera Kontrolnikarakteri su oznake za novi red prazno mesto tabulator upravl janje štampačima(vraćanje glave štampača na početak) rad sa terminal ima (alarm i l i obaveštenje

Kako da

Uvod u programski jezik CRad sa stringovima (9 deo)

19

Broj 33

da se nešto dogodi lo) ASCII standard je proširen na 8 bitova odnosno ceo jedanbajt i sada podržava 256 karaktera Potražite na internetu termin bdquoASCII tabelardquo dabiste stekl i uvid u to kako izgleda tzv tabela ASCII karaktera

Rad sa pojedinačnim znakovima ne obećava mnogo Postoj i realna potreba zaradom sa rečima rečenicama l ini jama teksta itd Podaci koj i se sastoje od više odjednog karaktera se u domaćoj l i teraturi nazivaju znakovnim niskama madaodomaćen je i naziv bdquostringrdquo koj i je i mnogo češće u upotrebi U programskomjeziku C se stringovi predstavl ja ju običnim nizovima karaktera (char niz[]) a krajteksta se označava NULL karakterom odnosno speci ja lnim znakom 0 či jabrojevna predstava je pogađate nula Ovakva predstava tekstualnih podatakanosi sa sobom i pojedine kompl ikaci je Gotovo svi savremeni jezici poznaju tipstringa dok su u C-u stringovi ipak samo obični nizovi

Da se podsetimo nizovi u C-u su zapravo pokazivači na deo u memori j i Kadapokušamo da pristupimo jednom elementu niza tada se vrši operaci jabdquodereferenciranjardquo sa zadatim odstupanjem Sledi nekol iko primera koj i i lustrujurad sa nizovima na primeru nizova karaktera

char niz1[] = zdravoniz1[0] = Z

char niz2[5]niz2[0] = 0niz2[1] = kniz2[2] = 0

Pri deklaraci j i niza 1 ni je zadata dužina zato što je u jednom izrazu zadata iinici ja l izaci ja niza koja glasi ldquozdravordquo Prevodi lac može sam da zakl juči kol ikomemori je je potrebno

U drugom primeru je kreiran niz karaktera dužine 5 Međutim popunjena su samoprva tri mesta Primećujete razl iku između prvog i trećeg elementa Prvi je cifra 0(uokviren je navodnicima) a treći je brojčana vrednost 0 koja označava krajstringa

Može se primetiti još jedna razl ika u data dva primera U prvom primeru sukorišćeni dvostruki navodnici dok su u drugom korišćeni jednostruki Razlog za to

Uvod u programski jezik C

20

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

je što se znakovni nizovi koj i su uokvireni dvostrukim navodnicima smatrajustringovima i podrazumevano im se dodaje bdquoterminatorrdquo odnosno znak NULL koj ioznačava kraj stringa Jednostruki navodnici se iskl jučivo koriste za predstavl janjepojedinačnih karaktera Ovo znači da zapisi ldquoardquo i a nisu jednaki Prvi zapis jedužine 2 jer ima i znak NULL koj im je završen

Ispisivanje i učitavanje stringovaPre nego što nastavimo dal je biće objašnjen jednostavan način za ispisivanje iučitavanje stringova pomoću standardnog ulazaizlaza Da se podsetimobibl ioteka za standardni ulazizlaz (ispis podataka u konzol i odnosno terminalu) jestdioh Ukol iko se koristi formatirani ispis potrebno je funkci jama printf() iscanf() proslediti format string koj i sadrži speci ja lan znak s čime je označenoda žel imo da ispišemo znakovni niz sve do NULL karaktera Drugi način jeupotrebom funkci ja puts() gets() i getline() iz bibl ioteke stringh Sledi primer

include ltstdiohgt include ltstringhgt int main()

char niz1[] = Zdravo svete

printf(sn niz1)

scanf(s niz1)puts(niz1)

return 0

Može se primetiti da je u slučaju funkci je printf() potrebno naglasiti speci ja lnimkontrolnim karakterom n da nakon ispisa treba preći u novi red Funkci ja puts() topodrazumevano radi

Za ove i sve druge funkci je dodatnu pomoć je moguće pronaći u Linuksovim manstranicama u odel jku 3 koj i je posvećen standardnim bibl iotekama Recimo mangetline sadrži detal jno uputstvo o funkci j i getline()

Kako da

21

Broj 33

Kopiranje stringovaKao što je u prethodnom odel jku napomenuto stringovi su u C-u samo običninizovi To znači da sledeći kod verovatno neće uraditi ono šta bi bi lo očekivano

niz1 = niz2

Ovime smo pokazivaču niz1 bdquorekl irdquo da pokazuje tamo gde i pokazivač niz2 Efektivno oni sad pokazuju na isti tekst međutim ako izmenimo niz1 to će seodraziti i na niz2 a važi i obrnuto Ovime smo dobi l i samo dva pokazivača na istideo memori je a uglavnom to ni je bio ci l j

Drugi način kako bismo sadržaj drugog niza mogl i da kopiramo u prvi niz je petl jakojom bismo kopiral i element po element Pošto je operaci ja kopiranja stringovavrlo često potrebna postoj i standardna bibl ioteka za rad sa stringovima koja sezove stringh a funkci ja za kopiranje stringova je strcpy()

strcpy(niz1 niz2)

Dati primer kopira sadržaj niza 2 u niz 1 Kopira se element po element sve dok seu nizu 2 ne naiđe na NULL karakter Ovakvo kopiranje (element po element) seinače u stranoj l i teraturi naziva i bdquodeep copyrdquo i vrlo često se sreće u radu sastrukturama podataka gde je potrebno obići celu strukturu podataka i svakielement kopirati a strukturu opet izgraditi u drugom delu memori je

Zaniml j ivo je što je kopiranje stringova moguće pojednostaviti ukol iko definišemonovi tip podatka kao strukturu koja sadrži niz karaktera i potom izvršimo kopiranjeOvo je trik koj i se uglavnom ne koristi u praksi i spomenut je samo kaozaniml j ivost

include ltstringhgt struct str char niz[50]

int main()

struct str s1struct str s2

Uvod u programski jezik C

22

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

strcpy(s1niz zdravo)s2 = s1

s2niz[0] = Z

puts(s1niz)puts(s2niz)

return 0

Kreirana je struktura str koja sadrži pol je niza karaktera pod nazivom niz Pozivomfunkci je strcpy() kopiramo string ldquozdravordquo u s1 čime smo bdquonapuni l irdquo sadržajobjekta s1 Potom je izvršena redovna dodela čime je sadržaj objekta s1 kopiran us2 Zatim je izmenjen samo prvi karakter objekta s2 i oba stringa su ispisanaPrimećujete da su kopirani svi znakovi a da je izmenjen samo drugi objekatZaniml j iv trik

Poređenje spajanje i pretraga stringovaDruga vrlo česta situaci ja je poređenje dva stringa Ukol iko bi poređenje bi loizvršeno upotrebom redovnog operatora za poređenje == tada bi u stvari bi lepoređene samo adrese na koje pokazuju pokazivači tih stringova jer da sepodsetimo stringovi su u C-u samo obični nizovi Ispravan način za poređenje dvastringa je pozivanjem funkci je strcmp() či ja je povratna vrednost 0 ukol iko su jojprosleđeni stringovi sa jednakim sadržajem

include ltstringhgt int main()

char niz1[] = zdravochar niz2[] = zdravo

if( strcmp(niz1 niz2) == 0)puts(Stringovi su jednaki)

elseputs(Stringovi nisu jednaki)

return 0

Kako da

23

Broj 33

Funkci ja strcmp() poredi svaki element prosleđenih nizova pojedinačno a dobraje vežba implementiranje nove funkci je strcmp() koja će unutar petl je da porediodgovarajuće elemente prosleđenih nizova i potom vratiti rezultat 0 ukol iko su svielementi jednaki Potrebno je pripaziti na situaci ju kada su stringovi razl ičitihdužina

U svetu računara spajanje dva sadržaja se zove konkatenaci ja Odatle i nazivfunkci je za spajanje dva stringa strcat() Važno je uveriti se da je string u koj i sedodaje sadržaj dovol jno vel ik da ga prihvati inače može da dođe do nežel jenogprepisivanja u memori j i uništavanja drugih podataka i neispravnog ponašanjaprograma

Pretraga unutar stringa se može obaviti funkci jom strstr() Ova funkci ja kaoparametre očekuje pokazivač na niz karaktera (string) u kojem je potrebno pronaćistring koj i je prosleđen kao drugi parametar Povratna vrednost je pokazivač nadeo memori je gde se žel jeni string prvi put pojavio

Sledi malo opširni j i primer koj i i lustruje spajanje pretragu i kopiranje stringova

include ltstringhgt int main()

char niz_a[50] = LiBRE je char niz_b[] = najbolji casopischar niz_c[] = e-magazin

strcat(niz_a niz_b)puts(niz_a)

char cilj = strstr(niz_a casopis)strcpy(cilj niz_c)

puts(niz_a)

return 0

Uvod u programski jezik C

24

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Pretvaranje tipova podataka u stringove ipretvaranje iz stringovaPretvaranje podataka iz jednog tipa u drugi i l i kastovanje (eng type casting) se zavećinu tipova vrši jednostavno pisanjem tipa u zagradama na primer (int)523 Stringovi su i po ovom pitanju drugači j i Postavl ja se pitanje šta pretvoriti ucelobrojni tip - da l i adresu na koju pokazuje pokazivač niza koj i predstavl ja stringPrvi element Šta ako taj string ni je broj Predstavićemo rešenje za konverzi jubrojeva u stringove i obrnuto

Ispis podataka na ekranu se takođe može smatrati konverzi jom Broj sa pokretnimzarezom je u memori j i prikazan na pomalo čudan način a pozivom funkci jeprintf() kada je kao format zadat f na ekranu ćemo dobiti razuml j iv niz znakovaSl ičan rezultat možemo dobiti funkci jom sprintf() a jedina razl ika u odnosu naprintf() je ta što sprintf() kao prvi argument očekuje pokazivač na string dok sudrugi (format string) i treći (argumenti koj i se povezuju sa formatnim stringom)sl ični kao kod funkci je printf()

Kod pretvaranja stringova u brojevne tipove može poslužiti funkci ja sscanf() kojase ponaša sl ično kao funkci ja scanf() s tim što je prvi argument adresa(pokazivač na string) koju žel imo da skeniramo u nadi da će se poklopiti saformalnim stringom koj i je drugi argument a rezultati će biti sačuvani u adresamakoje su prosleđene kao 3 4 i ostal i parametri Drugi način za pretvaranje stringovau celobrojne brojeve i brojeve sa pokretnim zarezom su funkci je atoi() i atof()

Funkci je koje koriste formatni string su česte u jeziku C i zaslužuju posebnu pažnjumeđutim to je priča za poseban članak U ovu klasu funkci ja spadaju recimo ifunkci je za rad sa datotekama

BezbednostRad sa stringovima može da bude izuzetno opasna stvar po pitanju bezbednostiprograma Ukol iko se niz karaktera ne završava NULL karakterom svašta može dapođe po zlu pri pozivu funkci ja kao što su strcpy() strcmp() i sl ične Cela klasatih funkci ja se oslanja na postojanje znaka koj i označava kraj stringa Kada stringni je propisno završen tada te funkci je mogu da zalutaju u deo memori je vanstringa i svašta može da pođe po zlu Ovakav tip napada se inače zoveprekoračenje bafera (eng buffer overflow) Preporučen način kako da izbegnete

Kako da

25

Broj 33

Pregled popularnosti GNULinuxBSDdistribuci ja za mesec februar

Distrowatch

Pad ltPorast gtIsti rejting =(Korišćeni podaci sa Distrovoča)

12345678910111213141516171819202122232425

MintUbuntuDebianopenSUSEelementaryMageiaFedoraManjaroCentOSLXLEArchBodhiAndroid x86Kal iPCLinuxOSPuppyRobol inuxLubuntuQ4OSBlack LabNetrunnerSimpl icityEvolveZorin4MLinux

2919gt1778gt1701gt1323gt1204gt1174gt1166gt1028lt1020gt965gt957gt907gt900lt760gt742lt732gt695gt670gt663gt655gt652gt629gt607gt583gt517=

takve nepri jatne situaci je pri radu sastringovima je da koristite verzi jefunkci ja koje su ograničenemaksimalnom dužinom stringa kaošto su strncpy() strncat() strncmp() i td Sve te funkci je kaotreći parametar zahtevaju broj koj iodređuje maksimalnu očekivanudužinu stringa Još jedna vrlo korisnafunkci ja je strlen() či j i zadatak je daodredi dužinu stringa Budite pažl j ivi ovo je prvo mesto gde se tražebezbednosni propusti u programimaNe verujte podacima koj i spol ja ulazeu vaš program a pogotovo kada je rečo stringovima

Uvod u programski jezik C

26

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Autor Dejan Maglov

Projekti slobodnog softvera obično počinju kao projekti pojedinca i l i male grupeprogramera a koj i rade na razvoju softvera či j i je ci l j da zadovol j i neke od nj ihovihl ičnih potreba Projekat će se smatrati uspešnim ukol iko se šira zajednicazainteresuje za njega nakon što prepozna korisnost softvera ne samo za pojedincekoj i su započel i projekat već i za širu zajednicu Kada je u pitanju slobodni softvervremenom je postala stalna praksa da se zajednica umeša u razvoj projekataDobri projekti sami privlače zajednicu l judi koj i su zainteresovani za nj ih i ona uvećini slučajeva preuzima na sebe testiranje pobol jšanje funkcionalnosti održavanje i tehničku podršku projekta

Zajednice slobodnog softvera mogu da se okupe oko projekta slobodnog softverapo teritori ja lnom principu i l i da nastanu kombinaci jom ovih principa

Primeri

bull LiBRE projekat okupl ja zajednicu oko projekta bez teritori ja lnog ograničenjabull LUGoNS (Linux User Group of Novi Sad) je zajednica korisnika Linuksa poteritori ja lnom principu bez obzira na konkretan projekat

bull Ubuntu-rs zajednica koja je kombinaci ja okupl janja zajednice oko konkretnogprojekta (Ubuntu) i teritori ja lnog principa koj i se ograničava na teritori ju Srbi je

Ova sinergi ja projekata i korisnika slobodnog softvera ima više prednosti i zakorisnike i za projekat Projekat se na ovaj način brže razvi ja dobi ja na

U potrazi za idealnom distribucijom

Socijalni kriterijumi za izbor idealnedistribucije (6 deo)

Oslobađanje

27

Broj 33

funkcionalnosti greške se brzo ispravl ja ju i td Korisnici dobi ja ju osećaj dapripadaju grupi druže se sa istomišl jenicima učestvuju u promoci j i kval itetnihpojedinaca itd

Dve najvažni je uloge lokalnih zajednica za GNULinuks distribuci je su

1 pružanje tehničke podrške i edukaci je na maternjem jeziku2 rad na lokal izaci j i i pri lagođavanje distribuci je lokalnim potrebama

Informaci ja da postoje lokalne zajednice slobodnog softvera je od naročitogznačaja za početnike i korisnike koj i nedovol jno dobro znaju strane jezike(naročito engleski jezik) Ako izuzmemo komerci ja lne projekte otvorenog koda(Red Het SUSE) ne postoje zvanične škole i kursevi za slobodni softver Zaedukaci ju početnika je uglavnom zadužena zajednica a jasno je da je učenje namaternjem jeziku uvek lakše nego na bi lo kom drugom stranom ma kol ikodobro ga poznajete

Forumi i viki stranice lokalnih zajednica su prave bibl ioteke u koj ima korisnicimogu da nađu većinu odgovora na svoja pitanja a za sva ostala tu su forumi iIRC kanal i zajednica na koj ima uvek ima nekoga i koj i imaju već gotova rešenjaza vel iki broj problema

U potrazi za idealnom distribucijom

28

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Lokalne zajednice kao kriterijum za izbor idealnedistribucijePočetnicima i korisnicima koj i ne vladaju dobro engleskim jezikom toplopreporučujemo da biraju GNULinuks distribuci je koje imaju aktivnu lokalnuzajednicu Ovladavanje novim operativnim sistemom je mnogo lakše ukol iko vambdquoleđa čuvardquo lokalna zajednica na koju se uvek možete osloniti

Već smo spomenul i da su popularni je GNULinuks distribuci je namenjenepočetnicima Slučaj je isti i sa lokalnim zajednicama okupl jenim oko nj ih Ovomeđutim ne znači da je kval itet usluga koje nude manje popularne lokalnezajednice okupl jene oko distribuci ja namenjenih napredni j im korisnicima loši j i Manje popularne distribuci je okupl ja ju manje l judi a l i zato oni poseduju većeznanje Iskustvo sa zajednicama okupl jenim oko slobodnog softvera je uglavnompozitivno i ukazuje na to da kval itet usluga koje one nude korisniku ni je uslovl jenpopularnošću i masovnošću zajednice nego iskl jučivo njenom (ne)aktivnošću

U svakom slučaju dosadašnj i saveti za izbor idealne distribuci je važe i dal jeSoci ja lni aspekt slobodnog softvera je samo dodatni faktor koj i vam može pomoćipri donošenju odluke kada se dvoumite između nekol iko mogućih rešenja

Još uvek ne postoj i na jednom mestu potpuni i ažurirani spisak svih aktivnihsrpskih zajednica Nešto najbl iže tome može da se nađe na adresihttps pulsslobodewordpresscom Za informaci je o nekim drugim lokalnimzajednicama koje možda postoje al i nisu na ovom spisku moraćete sami dapretražite internet

Lokalizacija kao kriterijum za izborZa lokal izaci ju GNULinuks distribuci ja i GNU programa odgovorni su pojedinci ilokalne zajednice Sasvim sol idnu srpsku lokal izaci ju mogu imati i projekti koj iuopšte nemaju svoju lokalnu zajednicu a isto tako lošu lokal izaci ju mogu imati iprojekti sa dobrom lokalnom zajednicom Sve je stvar prioriteta zajednica iaktivnosti pojedinaca

Pravu i kontrol isanu lokal izaci ju može imati samo lokalni projekat Ovakvihprojekata u Srbi j i ima malo i teško se probi ja ju čak i u lokalu u konkurenci j isvetskih projekata Istina je da mnoge veće GNULinuks distribuci je imaju srpskulokal izaci

Oslobađanje

29

Broj 33

ju u ponudi pa se možda sl ični lokalni projekti koj i su usmereni samo na striktnulokal izaci ju smatraju nepotrebnima Uzvodna lokal izaci ja u slučaju Srbi je vrlo čestobude veoma loše čak nakaradno sprovedena Jedna polovina programa jelokal izovana srpskom ćiri l icom a druga latinicom Ako postoj i još delova sistemakoj i uopšte ni je lokal izovan onda se pojavl ju ju i delovi programa koj i su naengleskom Zato ćemo se vratiti na prvu rečenicu ovog pasusa i ponovo utvrditi dasamo lokalni projekat može potpuno kontrol isati pravu srpsku lokal izaci ju

U Srbi j i za sada imamo dva aktivna projekta GNULinuks distribuci je ndash TriOS(http triosrs) i Serbian (http wwwdebian-srbi ja iz rspserbianhtml) Obaprojekta su mlada i imaju svoj ih prednosti i mana Kome treba lokal izovanoperativni sistem može da proba jedan od ova dva projekta

U potrazi za idealnom distribucijom

30

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Iako ove dve domaće distribuci je nisu baš naj idealni je interesantno je probati ih iuporediti sa drugim distribuci jama

Za kraj serijalaNamera nam je bi la da kroz ovaj seri ja l o kriteri jumima pri izboru idealnedistribuci je definišemo većinu kriteri juma pri izboru i pokažemo zašto je teškoodgovoriti na jednostavno pitanje bdquoKoju mi distribuci ju preporučujeterdquo

Ni na samom kraju nismo dal i konkretan odgovor na pitanje koja je idealnaGNULinuks distribuci ja Suviše je subjektivnih ocena da bi se mogao datikonkretan odgovor Smatramo da je jako teško napisati neki algoritam izbora pokriteri jumima koje smo identifikoval i i definisal i a možda je čak i nemoguće poštose izlazi stalno menjaju Izlazi iz tog algoritma su GNULinuks distribuci je koj ih izdana u dan ima sve više a i one stare se stalno menjaju

Sam seri ja l bdquoU potrazi za idealnom distribuci jomrdquo neće biti završen samo zato štose više neće baviti kriteri jumima pri izboru nego će pokušati da predstavl jaGNULinuks distribuci je koje su po nečemu bdquoidealnerdquo

Oslobađanje

31

Broj 33

ORM

Autor Dejan Čugal j

Object relation mapping (ORM)

ORM (eng Object RelationMapping) je način postizanja traj-nosti (eng persistence) objekataunutar relacionih baza podatakaModel deluje kao posrednik nalogičkom delu apl ikaci je Automat-ski presl ikava podatke iz objekata ubazu i nazad na zahtev apl ikaci jeDa bismo objasni l i kako ovo sveradi moramo da vam predstavimoORM frejmvork (eng framework)programa otvorenog koda -Hajbernejt (eng Hibernate -http hibernateorgorm)

Šta je ORMUkratko ORM je automatizovano transparentno presl ikavanje objekatakorišćenjem metapodataka koj i opisuju mapiranje veze između objekta i baze

ORM (2 deo)

Slobodni profesionalac

32

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

podataka u apl ikaci jama koje su napisane u objektno ori jentisanim programskimjezicima Apl ikaci ja komunicira sa ORM-om preko njegovog vlastitog API-ja (engapplication programming interface) i određenih objekata Ova komunikaci ja jepotpuno odvojena od komunikaci je koja se odvi ja između ORM-a i baze podatakapreko SQL-a i DBC-a

Da bi se postigla i dostigla potpuna snaga ORM-a u apl ikaci j i koju projektujemonikako se ne sme iskl jučiti znanje relacionih modela SQL jezika te poznavanjeDBMS-a u kome se radi ORM ni je ništa drugo do srednj i sloj između gorepomenutih tehnologi ja i objektno ori jentisanog programiranja kao što smo to dosada već više puta naglasi l i

Implementacija ORM-aPostoje razl ičiti načini implementaci je ORM-a Mark Fasl (Mark Fussel) je 1997definisao četiri nivoa

1 bdquoČistrdquo relacioni način2 Slabo mapiranje objekata3 Umereno mapiranje objekata4 Potpuno mapiranje objekata

bdquoČistrdquo relacioni način

Cela apl ikaci ja ukl jučujući i korisnički interfejs dizajnirana je relacionim modelom iSQL relacionim operatorima Ovakav pristup je odl ičan za male projekte Direktanpristup SQL-u omogućava fino podešavanje svakog aspekta upita koj i se postavl jabazi podataka Osnovne mane su portabi lnost (prenosivost) i održavanje ovakvihsistema pogotovo ako se planira korišćenje apl ikaci je na duži rok Ovakvi sistemimasovno koriste sačuvane procedure (eng stored procedures) što znači da jeposlovna logika (eng busines logic) prebačena na samu bazu podataka

Slabo mapiranje objekata

Entiteti su predstavl jeni kao klase i mapiranje se radi ekspl icitno ka relacionimtabelama SQLJDBC je sakriven od poslovne logike korišćenjem poznatih šablona(patterns)

Umereno mapiranje objekata

Slobodni profesionalac

33

Broj 33

Dizajn apl ikaci ja se svodi na objektne modele SQL se generiše u vremekompaj l iranja (eng build-time) i l i u vreme izvršavanja (eng run-time) Specifikaci jaupita nad bazama podataka se radi na objektno ori jentisanom jeziku Ovakvisistemi se koriste u apl ikaci jama srednj ih vel ičina kod koj ih je bitna portabi lnostizmeđu razl ičitih sistema za upravl janje bazama podataka (DBMS)

Potpuno mapiranje objekata

Podržava sofisticirano objektno model iranje nasleđivanje i pol imorfizamEfikasnost dobi janja podataka je na visokom nivou i koriste se metode kao što sulenjo učitavanje (eng lazy loading) i strategi ja keširanja (eng caching) Implementaci ja je transparentna u apl ikaci jama Ovaj nivo je jako teško dostići Pojedincu su potrebne godine razvoja da postigne ovakvu fleksibi lnost pristupa imanipulaci ja u relacionim bazama podataka Upravo ovaj nivo se postiže ako sekoriste rešenja ORM-a kao što je Hajbernejt

Zašto ORMImplementaci ja ORM rešenja pogotovo ako seprvi put susrećete sa ovim modelom može dabude veoma frustrirajuća i malo teža zaimplementaci ju Kada ovo kažemo misl imo daprogramer koj i implementira ORM i hoće da istibude kval itetno urađen mora da posedujepredznanje objektno ori jentisanog programiranjai naprednih tehnika kao što su nasleđivanje ipol imorfizam

Ovo inicira fundamentalna pitanja

bull Pa zašto bi iko onda implementirao ovako nešto kompleksnobull Vredi l i truda upuštati se uopšte u ORM

Odgovor ni je jednostavan Dosadašnja iskustva u korišćenju ORM-a i njegovapopularnost već daju odgovor na postavl jeno pitanje Očigledno je da su benefitikoje donosi ovaj model veći od kompleksnosti njegove implementaci je a to su

Hibernate ORM

34

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Veća produktivnost

ORM smanjuje kol ičinu koda potrebnog za ostvarivanje trajnosti podataka Ovoomogućava programeru da vreme koje bi utrošio na ručno mapiranje podatakautroši na druge delove apl ikaci je

Lakše održavanje

Manje l ini ja koda osigurava bol ju razuml j ivost (i možda bol j i kval itet koda) jernaglašava apl ikaci jsku logiku ORM takođe ublažava uticaj nastal ih promena kaošto su promene u bazi strukturi tabela i td

Prenosivost

Većina ORM rešenja podržava sisteme za upravl janje bazama podataka raznihproizvođača ORM u potpunosti odvaja sloj apl ikaci je od stvarne SQL komunikaci jekoja se odvi ja u pozadini Time omogućava da se pišu apl ikaci je koje će moći da seizvršavaju na razl ičitim bazama podataka bez potrebe za dodatnim kodiranjemOva komunikaci ja se odvi ja sa programskim interfejsima ORM-a nezavisno oDBMS-u sa koj im je u bi lo kom momentu povezan ORM takođe omogućava lakšiprelaz sa manj ih na veće baze podataka tokom razvoja apl ikaci je

Uvidel i smo da trenutno postoje dve paradigme koje se bdquosudarajurdquo i koje supodjednako dobre same za sebe Relaciona paradigma potvrđuje da sve što jeizgrađeno na matematičkim osnovama je i trajno u smislu kval iteta koje posedujeU domenu u kom relaciona paradigma egzistira ona je ako je to u ovo vremeuopšte moguće tvrditi nezamenj iva

Ono što otvara pitanja i daje razlog za sumnju je koja je krajnja granicaupotrebl j ivosti relacione paradigme tj kol iki su kapaciteti složenosti zahtevaapl ikaci ja sa kojom može da se nosi Praksa je pokazala da je sasvim mogućebdquoizvestirdquo složene projekte - al i održavanje skalabi lnost razuml j ivost prenosivost -pitanja su sa koj im se relaciona paradigma teško može izboriti

Sa druge strane svoj habitat u informacionim tehnologi jama je našla i objektna

Slobodni profesionalac

35

Broj 33

paradigma Iako na prvi pogled ova dva modela nemaju ništa zajedničko - što je uneku ruku i istinito gledajući prirodu podataka koj im manipul išu - praksa jepokazala da su usko povezane i skoro da imaju sinaptičku vezu

Pitanje bdquokako spoj iti te sinapserdquo dovelo je do žučnih rasprava u uskim naučnimprogramersko-administratorskim krugovima Rodi l i su se razni model i a l i jedan jeiskočio i polako ulazi u široku primenu - a to je ORM Svoj im supti lnim pristupomproblemu nekompatibi lnih paradigmi nekako je uspeo da stvori taj nedostajućibdquoelektrični signalrdquo koj i ih je povezao Ovo je omogući lo da dve strane koje susvaka za sebe u svom domenu ostavi le i ostavl ja ju duboki trag u informacionimtehnologi jama sarađuju i donesu novi kval itet

Korisni l inkovi

[1] Hibernejt http hibernateorg[2] Viki http googlLlZulw[3] Tutori ja l i http googlCGzvnc

Hibernate ORM

36

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Autor Kriptopank

Šta su zapravo metapodaci Najkraće rečeno to su podaci o podacima i l iinformaci je koje opisuju podatke

Najpre da napravimo razl iku između podataka i metapodataka Podaci sunaprimer snimak (i l i transkript) vaših telefonskih razgovora sadržaj poruka kojepišete primate i l i šal jete podaci koje kačite na internet i l i preuzimate pretrageGuglom postovi na forumima dopisivanja na IRC kanal ima i l i drugim četovimaaudio i video snimci Skajp razgovora i tako dal je

Hajde da vidimo šta bi bi l i odgovarajući metapodaci za ove primere

bull Za telefonske razgovore metapodaci mogu biti lokaci ja učesnika brojevitelefona trajanje razgovora IP i MAC adresa

bull Za poruke četove i Skajp i l i druge video-audio komunikaci je sl ično je kao kodtelefonskih razgovora

To su samo metapodaci

Internet mreže i komunikacije

37

Broj 33

bull Kod foruma i pretraga Guglom ima malo manje metapodataka al i Gugl i raznisajtovi i forumi ionako čuvaju logove o korisnicima što su takođe metapodaci

Ako do sada koj im slučajem niste uvidel i opasnost po privatnost u ovimmetapodacima koje svako od nas smrtnika svakodnevno ostavl ja za sobom usvetu interneta i ostal ih digitalnih komunikaci ja nadamo se da će vas ovaj primermakar podstaći na razmišl janje a možda i na nešto više

Zamisl i te da neko (zvaćemo ga posmatrač) stalno sakupl ja metapodatke koje zasobom ostavl jate kao mrvice hleba Posmatrač recimo zna da se nalazite naautoputu nedaleko od famoznog Feketića da se ne krećete da zovete AMSS zatimšlep službu i možda taksi a l i ne zna šta ste razgovaral i I l i posmatrač vidi da steprvo zval i aerodrom Nikola Tesla pa odmah potom taksi a l i ne zna šta sterazgovaral i I l i posmatrač vidi da ste zval i prvo šest brojeva či je identitete takođezna pa vidi da se oni zatim kreću ka vama - GPS (eng Global Positioning System) pa zatim pica servis Mekdonalds i neku poznatu prodavnicu kineske hrane al i nezna šta ste razgovaral i

Posmatrač ne mora da bude mnogo pametan niti da prisluškuje vaše razgovore dabi shvatio šta se dešava i l i šta će se desiti Sasvim mu je jasno da vam je u prvomprimeru auto stao na autoputu zatim da ste se u drugom slučaju uputi l i naaerodrom i da možda putujete van zemlje i l i ste poslal i taksi po nekoga saaerodroma a da u trećem slučaju okupl jate žurku kod vas Više možete pogledatina http googl7vUjP

Iako su to bdquosamordquo metapodaci treba biti svestan da ti metapodaci o vama stvarajujednu digitalnu sl iku i l i bol je reći digitalni mozaik i na neki način vas jedinstvenoodređuju Pogotovo kada se planski prikupl ja ju na više nivoa (kompjuter pametnitelefon pametni automobi l i kreditna kartica) metapodaci čine vaš digitalniidentitet Al i da stvar bude još gora ta sl ika o vama ne mora nužno biti istinita jerse lako može lažirati Recimo možete zameniti telefone i l i automobi le sa nekimnamerno i l i slučajno i l i vam neko može jednostavno ukrasti telefon laptop i l ikreditnu karticu Zaniml j iv video http googlKO1fKf

Evo jednog primera koj i vas može uvući u vel ike nevol je Recimo da prolazitenekom zabačenom ul icom i da vam neprimetno ispadne telefon al i vi to neprimetite i nastavite dal je svoj im putem U toj ul ici se samo nekol iko minutakasni je desi neko ubistvo i vas pozovu u pol ici ju kao osumnj ičenog Ako koj im

To su samo metapodaci

38

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

slučajem nemate dobar al ibi i l i nemate svedoka da posvedoči da niste bi l i u tojul ici nego tamo gde ste stvarno bi l i a drugih svedoka nema - možete jako lošeproći Zaniml j ivi video http googlspS5OZ

Metapodaci se takođe nalaze i u faj lovimapodacima koje svakodnevnopreuzimamo sa interneta pravimo i koristimo Svaki tip podatka može da sadržiodređene metapodatke koj i bol je opisuju sam podatak kao naprimer vremenastanka podatka kol iko je vremena potrošeno za njegovo kreiranje kol iko putamu je pristupl jeno kad je poslednj i put pristupl jeno i tako dal je Iako se ovakvimetapodaci možda još uvek čine bezazlenim oni mogu sadržati i IP adresuračunara sa kog su napravl jeni GPS koordinate (najčešće PNG format sl ika satelefona) ko ga je napravio (l ičnost i l i kompani jaorganizaci ja) naziv uređaja imodel sa koga je napravl jen kao i MAC adresu uređaja mej l adresu kreatorasoftver koj im je napravl jen i tako dal je Sve ovo može mnogo da naškodiprivatnosti izvornog kreatora faj la pogotovo ako je sadržaj poverl j iv Ukol iko nekopresretne taj podatak na internetu može saznati od koga je potekao Da ovo možebiti katastrofa po kreatora takvog faj la može i lustrovati primer torenta Ako stedošl i u posed nekih sl ika i l i video materi ja la i l i teksta koj i žel i te da podel ite sasvetom preko nekog torent sajta morate taj podatak prvo očistiti odmetapodataka da ne bi svako ko skine to što ste okači l i saznao da vi stoj i te izatoga

Internet mreže i komunikacije

39

Broj 33

Ljudi se konstantno prate metapodaci se sakupl ja ju i to ni je sada već ništa novoal i možemo da se trudimo da iza sebe ostavl jamo malo manje nežel jenihmetapodataka i da ih takoreći čistimo iz podataka koje razmenjujemo Na srećupostoje programi koj i ovo dobro rade

Najpre je potrebno da vidimo koje sve metapodatke neki faj l sadrži kako bismo seuveri l i da ovi metapodaci stvarno postoje i da je faj l bezbedan nakon nj ihovogbrisanja

Ako koristite operativne sisteme GNULinuksa treba da iz terminala preuzmete iinstal irate program pod nazivom exiftool

sudo apt-get install exiftool

Ovaj program će nam pružiti uvid u sve metapodatke koje faj l sadrži Korišćenje jeiz terminala al i je zato veoma jednostavno samo ga pokrenite na sledeći način

exiftool File

i l i

exiftool putanjadofajlapočevodkorenogdirektorijuma

Dobićete prikaz metapodataka koje je program pronašao Sada je potrebno davidimo da l i je podatak bdquoprl javrdquo tj da l i ima u njemu nešto da se briše i da akoima iz njega sve nepotrebno obrišemo Tu će nam pomoći drugi program zvaniMAT (eng Metadata Anonymisation Toolkit) koga možete naći na sajtuhttps matboumorg i l i jednostavno za korisnike Ubuntua i Debi jana uSoftverskom centru i l i ga možete instal irati iz terminala

sudo apt-get install mat

MAT će proveriti da l i je podatak bdquoprl javrdquo i l i ne i za vas ga očistiti od nežel jenihmetapodataka

Kada očistite faj l on je spreman za del jenje sa drugima a vi ste bezbedni jer nikone može reći da je faj l potekao sa vašeg računara

To su samo metapodaci

40

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Autor Dejan Čugal j

GH Hardi bdquoPrava matematika nema uticaj na ratrdquo - odbrana matematičara1940 godina

Bi l Tat - britanski matematičar verovatno niste čul i za njega1942 godine je izveo ogroman poduhvat koj i je skratio rat dvegodine (barem po rečima Ajzenhauera) i spasio mi l ione životaNažalost njegova vel ičina je preminula 2002 godine obavi jenavelom tajne i nikada zvanično ni je priznato njegovo dostignuće

Tomi Flauers - bivši inženjer poštanskog saobraćaja pretvorio jematematičke ideje Tata u prvi računar a to ni je bio bdquoENIACrdquo1Preminuo je 1998 godine a pretpostavl jamo da nikada niste čul ini za njegovu vel ičinu

Ovi umni giganti bdquoBlečl i parkardquo omogući l i su Britani j i da dešifruje strogo poverl j ivumašinu koju je koristio Hitler da diriguje drugim svetskim ratom a to ni je bi labdquoENIGMArdquo nego nešto mnogo tajni je i značajni je Vel ika je verovatnoća da nistečul i ni za ovo Neki kažu da je to bio Hitlerov Blekberi (BlackBerry)

Izgubljeni heroji bdquoBlečli parkardquo

1 engl Electronic Numerical Integrator And Computer - prvidigitalni elektronski računar

Internet mreže i komunikacije

41

Broj 33

1939 godine bdquoBlečl i parkrdquo je postao ratni štab MI6 (britanske vojne obaveštajneslužbe) Do danas je procurelo u javnost i dokumentovano brojnim fi lmskimdokumentarcima samo da je tu Alan Tjuring uspeo da dešifruje nemačkumornaričku šifru poznatu kao bdquoENIGMArdquo i uvel iko doprineo pobedi saveznika a to jesamo deo priče koj i je ispričan

U Blečl i parku su bi la tri heroja AlanTjuring Bi l Tat i Tomi Flauers Od nj ihtroj ice jedino Alanu Tjuringu je priznat deozasluga za pobedu saveznika u Drugomsvetskom ratu Pregledom otkrivenihpodataka danas možemo da tvrdimo daje bdquoENIGMArdquo već sa početka drugogsvetskog rata bi la zastarela tehnologi ja Zbog toga je bi lo lako skinuti veo tajne sa

ovog uspeha heroja Blečl i parka

Izgubljeni heroji bdquoBlečli parkardquo

42

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Bi l Tat koj i je dešifrovao bdquoTANI sistemrdquo (TANI) i Tomi Flauers koj i je samo svojomintuici jom i znanjem sklopio prvi računar na svetu (bdquoKOLOSrdquo) u svrhu bržegdolaženja do informaci ja razbi jenog koda bdquoTANIrdquo tako da zastarelost šifrata budesvedena na minimum - radi l i su na novoj generaci j i mašina za šifrovanje Ovatehnologi ja je bi la prepoznata kao tehnologi ja budućnosti pa i danas iznadinformaci ja o tim tehnologi jama stoj i natpis bdquovrhunska tajnardquo (eng Top Secret) Upravo ovaj veo tajni oko šifrata bdquoTANIrdquo i prvog računara je rezultirao iskrivl jenjuistori je informatike

Za uspehe u prvim godinama rata je zaista zaslužno razbi janje bdquoENIGMArdquo šifrata ito ni je sporno al i krajem 1941 godine u etru planete se začuo novi zvuk To je bi lanova mašina za šifrovanje ni je bi la zasnovana na bdquoMorzeurdquo već je radi la naprincipu teleprintera

Jedna od kl jučnih ideja Hitlerovog ratovanja je bi la u vel ikoj mobi lnosti i brzomdelovanju trupa na terenu a da bi se to izvelo komunikaci ja je isto tako morala dabude u najmanju ruku putem radio signala

Razl ika je ogromna Razl ika je u kol ičini podataka koj i može da se prenese ovimbdquotajnimrdquo putem Prvi svetski rat je bio zaniml j iv jer su se šifrovane poruke baziralena rečima dok je Drugi u potpunosti otvorio vrata današnjoj kriptografi j i a to jematematika

Originalan nemački kocircdni naziv za ovaj šifrat bio je bdquoLORENCrdquo Britanska

Internet mreže i komunikacije

43

Broj 33

obaveštajna služba mu je dala nadimak bdquoTANIrdquo Čak ni dan danas ni je baš poznatokako je sve nastalo al i pouzdano se zna da je tajnu mašinu Hitler nazvaobdquoGehajmšrajberrdquo (nem Geheimschreiber) - mašina tajni

U srž i tehnologi ju šifrovanja bdquoLORENCrdquo šifrata nećemo ulaziti u ovom članku al iverujte nam na reč - ni je bi la jednostavna Može se pretpostaviti da je inspiraci jaŠenonovog 2 rada slučajnosti bi la upravo ova tehnologi ja iz Drugog svetskog rata

Ono čime se Treći rajh vodio je bdquosigurnardquo šifrovana veza koju niko ni je smeo dadešifruje Prenošenje šifrovanih poruka pomoću radio signala je dalo obaveštajnimslužbama mogućnost presretanja poruka poslatih radio talasima Da l i se ovo idanas dešava Imamo l i sigurnost u našim šifrovanim podacima današnj ice

Ono što je usledi lo nakon proboja ovog bdquoneuhvatl j ivogrdquo šifrata je upravo ono što jeprincip današnj ice kao neka vrsta protokola koj i mora da se ispoštuje uperfektnom šifarskom Šenonovom sistemu

1 NIKADA NIKADA NE KORISTITI DVA PUTA ISTI KLJUČ ZA ŠIFROVANJE2 NIKADA NIKADA KLJUČ NE SME DA SE ŠALJE ISTIM KOMUNIKACIONIM KANALOM

KAO PORUKA3 NIKADA NIKADA KLJUČ NE SME DA BUDE MANJ I NEGO ŠTO JE PORUKA (engl

2 Klod Elvud Šenon (eng Claude Elwood Shannon) (1916-2001) - Američkinaučnik i inženjer

Izgubljeni heroji bdquoBlečli parkardquo

44

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

one time pad) 4 NIKADA NIKADA NE SMEMO DA SAKRIVAMO SISTEM ŠIFROVANJA SVE MORA

DA JE OTVORENOG KOcircDA

Najveći propusti kriptologi je koj i su uočeni baš u Drugom svetskom ratu jesupokušaj sakrivanja sredstava koj im se generiše tajna poruka i nepoznavanjeŠenonovih krajnj ih granica informaci ja Kada kažemo bdquosredstvo i sakrivanjerdquomisl imo na algoritme Postavl ja se pitanje zašto je danas kriptologi ja sigurni ja negočetrdesetih i pedesetih godina prošlog veka

Danas uprkos tome što su algoritmi za kriptografi ju otvorenog kocircda tajnostinformaci ja je na višem nivou nego što je to bi lo dok je algoritam bio strogopoverl j iv Tajnost tajnih podataka se ne zasniva na tajnosti a lgoritama koj i generišutaj isti bdquotajni izlazrdquo (eng cipher text) nego u nemogućnosti matematičke inverznefunkci je koja bi šifrovan tekst otvori la Ovde se vidi da je svrha strukture otvorenogkocircda kao jednog od značajnih delova današnje kriptologi je ona koja ga činisigurnim i svima dostupnim

Sada kada se sa ove distance osvrnemo na Drugi svetski rat možemo videti kol ikosmo bi l i bl izu apokal ipse Naime Albert Ajnštajn je već 1944 godine imao urukama recept za nuklearnu bombu Šenon je mogao već u to vreme da nampredoči 100 siguran šifrat (tzv Hitlerovu super šifru) a l i ipak sreća nas jeposluži la da čovečanstvo tada ni je bi lo spremno da upotrebi svu raspoloživutehnologi ju

Albert Ajnštajn bdquoČetvrti svetski rat će se voditi tol jagamardquo

Zaboravl jeni heroj i Blečl i parka iako su odigral i važnu ulogu u pobedi saveznika usvetskom ratu postal i su žrtve bdquotop secretrdquo doktrine potpuno su zaboravl jeni inestal i su iz istori je

Zakl jučak ovog članka je da je ideologi ja otvorenog kocircda sasvim sigurno tu da nampomogne i da otvori vrata ka većoj sigurnosti novim idejama i kval itetu sameinfrastrukture sistema koju svi zajedno razvi jamo

Internet mreže i komunikacije

45

Broj 33

Autor Nikola Hardi

NabrajanjaBez brojeva

Za nabrajanje pojmova u Bimeru (eng Beamer) koristi se okruženje itemize aunutar tog okruženja možemo da dodajemo nove stavke pomoću item Primerizgleda ovako

beginitemizeitem Stavka Aitem Stavka Bitem Stavka C

enditemize

Sa brojevima

Postoje situaci je kada uz nabrajanje treba da stoje i redni brojevi - za to se koristienumerate okruženje a nove stavke se takođe dodaju pomoću item

beginenumerateitem Redni broj 1item Redni broj 2item Redni broj 3

endenumerate

prezentaci ja

Beamer (4 deo)

Sam svoj majstor

46

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

DefinicijeTreća situaci ja je nabrajanje parova termin - definici ja U tom slučaju se koristiokruženje description Već možete da pretpostavite kako se dodaju nove stavke

Primer

begindescriptionitem[Pojam A] Definicija izmišljenog pojma Aitem[Pojam B] Definicija izmišljenog pojma Bitem[Pojam C] Definicija izmišljenog pojma C

enddescription

Ostala podešavanja i zanimljivostiSva prethodna okruženja mogu da budu ugneždena jedno unutar drugog dotrećeg nivoa Treba biti pažl j iv jer sla jdovi vrlo lako mogu da postanu nečitl j ivi Osim toga moguće je izabrati i format oznake i l i rednih brojeva - na primer ovako

beginenumerate[I]beginenumarate[a)]

Takođe moguće je upravl jati pojavl j ivanjem pojedinih stavki na slajdovima Drugimrečima možemo da odredimo da se nabrajanja postepeno otkrivaju tako što ćemouz stavku dodati lt1-gt odnosno broj od kojeg slajda žel imo da se ta stavkapojavl ju je Tada će jedno nabrajanje biti bdquorazvučenordquo na više slajdovaJednostavni ja mogućnost je da u zaglavl je okruženja dodamo +- što znači dažel imo da se svakim slajdom otkriva po jedna nova stavka iz nabrajanja Znak bdquo-rdquo uoba primera znači da žel imo da se stavka pojavi na sledećem slajdu i da ostane

Sam svoj majstor

47

Broj 33

prisutna Možemo da izostavimo znak bdquo-rdquo i tada će stavka biti prisutna samo najednom slajdu i l i da napišemo raspon slajdova u koj ima žel imo da ta stavka budeprisutna

Rad sa kolonama i blokovimaDo sada su svi primeri podrazumeval i da je sadržaj napisan preko cele širineslajda al i Bimer (eng Beamer) ima i jednostavne mehanizme za razmeštanjesadržaja po kolonama Za rad sa kolonama se koristi okruženje columns unutarkojeg možemo da dodajemo nove kolone pomoću columnširina Sadržaj jemoguće potom pisati i van okruženja sa kolonama

U paru sa kolonama često se sreće i okruženje block koje se parametrizujenaslovom Primerom su i lustrovani i okruženje column i okruženje block

beginframebegincolumns

column05textwidthbeginblockNaslov levog blokaSadržaj u prvoj (levoj) koloni endblock

column05textwidthbeginblockNaslov desnog blokaSadržaj u drugoj (desnoj) koloni

endblockendcolumns

beginblockVan kolona

Beamer

48

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Tekst koji se nalazi ispod kolonaendblock

endframe

TabeleIako se u radu sa prezentaci jama sadržaj najčešće može uredno rasporeditipomoću kolona i nabrajanja nekada to ni je dovol jno jer su tabele pravi formatBimer podržava standardno Lateh (LaTeX) okruženje za rad sa tabelamaOkruženje za rad sa tabelama se zove tabular Pri kreiranju nove tabele moguće jepodesiti koje kolone će biti razdvojene l ini jom i da l i će nj ihov sadržaj biti centrirani l i uz levu i l i uz desnu ivicu Dodavanje novog reda se jednostavno radidodavanjem hline Lateh pruža zaista jako fleksibi lan rad sa tabelama i sigurno ćedoskočiti svim mogućim i nemogućim zamisl ima Potražite bi lo koje Lateh uputstvoza rad sa tabelama i radiće i sa Bimerom

beginframebegintabular | c | c | c | c |

hlineamp Ponedeljak amp Utorak amp Sreda hline

1 amp 16 amp 32 amp 64 hline2 amp 16 amp 128 amp 1024 hline3 amp 16 amp 512 amp 4096 hline

endtabularendframe

Sam svoj majstor

49

Broj 33

Beamer

Teoreme i istaknut tekstU nastavi su česta izlaganja teorema nj ihovih dokaza i primera U Bimer jeugrađena podrška za elegantno predstavl janje ove trojke Mehanizam takođepodržava postepeno otkrivanje sadržaja sla jda tako da slušaocima ne bude odmahotkriven dokaz teoreme Mehanizam za postepeno otkrivanje se kao i kodnabrajanja postiže pomoću bdquolt1-gtrdquo konstrukci je Evo kako to izgleda

beginframeframetitlePrimer teoreme

begintheoremlt1-gt Teorema kaže da su beamer prezentacijezanimljive

endtheorem

beginexamplelt2-gt Ovaj kod kreira slajd beamer prezentacijeendexample

beginprooflt3-gt Čestitamo stigli ste do kraja serijala o pravljenju beamer prezentacija

endproofendframe

50

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Za krajOvim člankom završavamo seri ja l o Bimeru Nadamo se da smo uspel i da vaszainteresujemo za ovu vrlo korisnu klasu Lateha Trudi l i smo se da vamprezentujemo najvažni je delove Bimera koje ćete najčešće koristiti pri l ikomkreiranja svoj ih prezentaci ja

Napominjemo još jednom da je Bimer samo jedna od klasa Lateha što znači da i zaBimer važi sve ono što ste već mogl i da pročitate u ovom časopisu kad smo pisal iseri ja l bdquoUvod u LaTeXrdquo (LiBRE brojevi 17 do 21) Štaviše ovaj seri ja l o Bimeru jebio nastavak upravo tog seri ja la U ovom seri ja lu nismo pisal i o samomformatiranju teksta u prezentaci jama jer se podrazumeva da važe ista pravi la kao iu Latehu a o tome smo pisal i u prethodnom seri ja lu

Hvala vam što ste prati l i ovaj seri ja l i žel imo vam puno uspeha u kreiranju Bimerprezentaci ja

Sam svoj majstor

51

Broj 33

Autor Nenad Marjanović

Kada smo se upoznal i sa podešavanj ima sistema i umrežavanjem vreme je za našprvi Biglbon Blek (BBB - eng BeagleBone Black) projekat Svakom od nas će ovajizazov dati razl ičite ideje a jedna od nj ih može biti i zaštita privatnosti internetkorisnika Nažalost u Srbi j i ne postoj i ni jedan izlazni tor server (eng node) i to jepomalo tužna sl ika s obzirom da govorimo o populaci j i od sedam mil ionastanovnika Al i ovu sl iku možemo promeniti udruženim snagama i za početakkreiranjem Tor transfer i izlaznog servera U ovde prikazanom grafikonufokusiraćemo se na bdquoRauter Brdquo tačku odnosno transfer server konfiguraci ju

BeagleBone Black Rev C

Vodič od prvog dana (3 deo) ndashBeagleBone Black kao Tor relej

Hardver

52

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Tor predstavl ja mrežu servera koj i se povezuju radi bol je enkripci je podataka izaštite IP adrese korisnika Naš ci l j je da danas postanemo deo ovog predivnogprojekta i da se nađemo na svetskoj karti Tor servera

Brzina interneta i zakonske regulativePotrebno je imati na umu nekol iko bitnih stvari

1 Naš server = naša odgovornost2 Obavezno naznačite da ste vi administrator a ne korisnik istog servera3 Da posedujete internet brzinu od 2 Mbs

Ako ispunjavamo tri navedena pravi la i odgovornosti možemo se posvetitiadministrativnim poslovima

Instalacija i podešavanjaU ovom primeru koristimo Debi jan Vizi (eng Wheezy) odnosno Debi jan 7 verzi juna našem BBB uređaju Vi možete testirati i druge Linuks platforme Prvododajemo izvornu bibl ioteku u etcaptsourceslist faj l pokretanjem sledećekomande u terminalu

echo deb httpdebtorprojectorgtorprojectorg wheezy main gt etcaptsourceslistdtorlist

Zatim dodajemo izvorni kl juč vršimo ažuriranje sistema i instal iramo tor i tor-arm(Tor monitoring sistem)

gpg --keyserver keysgnupgnet --recv 886DDD89gpg --export A3C4F0F979CAA22CDBA8F512EE8CBC9E886DDD89 | sudo apt-keyadd -apt-get updateapt-get install debtorprojectorg-keyring -yapt-get install tor tor-arm egrep screen -y

Ovim smo uspešno završi l i instalaci ju Tor servera i sistema za monitoring odnosnonadgledanja našeg Tor servera Sledećom komandom radimo na podešavanj imaTor servera koja se nalaze u etctortorrc faj lu Obratite pažnju i izvršite potrebne

Hardver

53

Broj 33

izmenu u pol j ima IP adresa (eng Address) nadimka (eng Nickname) i kontaktpodataka (eng ContactInfo) pre pokretanja ove komande Kopiramo i pokrećemokomandu u celosti u terminalu

egrep -v ^(|$) etctortorrcORPort 443Address 19216811Nickname LibreTorRelayRelayBandwidthRate 100 KBRelayBandwidthBurst 120 KBContactInfo ltvi at gmail dot comgt irPort 8080DirPortFrontPage etctortorhtmlExitPolicy reject

Detal je o svim vrednostima nećemo iznositi u ovom broju LiBRE časopisa al ićemo o nj ima pisati u sledećem u kome ćemo pričati o zaštiti Tor servera imogućnosti podešavanja određenih izlaznih pravi la (eng ExitPolicy)

Nakon ovoga možemo primetiti da se u folderu etctor ne nalazi torhtml faj l Ovaj faj l ni je od vel ikog značaja i možete ga l ično napraviti i l i preuzeti jednu kopi ju- naprimer sa sledeće lokaci je

cp usrsharedoctortorhtml etctortorhtml

Opcije i Tor Arm monitoringDa bismo ispravno koristi l i Tor Arm potrebno je urediti još jednom etctortorrcfaj l i restartovati servis

echo -e ldquoDisableDebuggerAttachment 0n AvoidDiskWritesrdquo gtgt etctortorrcsudo service tor reload

Ukol iko žel ite koristiti Tor Arm za nadgledanje aktivnosti na serveru pokreniteprogram screen kl iknite na bdquoEnterrdquo i kucajte sudo -u debian-tor arm Naekranu ćete imati sl ičan prikaz

BeagleBone Black

54

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Hardver

55

Broj 33

Da bismo napusti l i screen program koristimo Ctrl + a + d i na taj način kada sesledeći put pri javimo na server kucamo samo screen -r u terminalu - i naći ćemose ponovo na čuvenom Tor Arm monitoring ekranu

Nakon svake promene konfiguracionih faj lova ako slučajno nismo nešto podesi l ikako treba restartujemo servise

U sledećem broju časopisa govorićemo o minimalnim podešavanj ima ikonfigurisanju izlaznog Tor servera (eng Tor Exit Node) opci jama sigurnosti isl ičnim detal j ima u vezi sa našim prvim projektom Do čitanja u sledećem broju

BeagleBone Black

LUGoNS BarCamp 4subota 7 mart 2015 godine

Četvrti LUGoNS-ov Barkemp (BarCamp) održaće se u Novom Sadu usubotu 7 marta 2015 godine na Fakultetu tehničkih nauka sa početkomu 12 časova

Ulaz je slobodan

Poziv za predaju radovaLUGoNS poziva sve zainteresovane da pošal ju svoje radove (predavanjaprezentaci je radionice i diskusi je) do 28 februara 2015 godine

Oblasti iz koj ih možete da pri javite vaše radove su

bull Slobodan softverbull Zaniml j iv hardverbull Hakerski zakonibull Sigurnosne noćne morebull Anonimnost i privatnost na internetubull Duboki veb (eng Deep Web)bull Soci ja lne mrežebull Soci ja lni inženjeringbull Hakovanje mobi lnih uređajabull Internet u oblaku (eng Clouds) ndash hakovanje razbi janje i neočekivano korišćenjebull DPI (eng deep packet inspection)bull Mreža i mrežna neutralnost ndash vlasništvo cenzura nadmudrivanje i pol itika bdquodefaktordquo standarda

bull Programiranje i programski jezici

Nemojte se ustručavati i slobodno nam se javite ako imate rad na gore navedenei l i sl ične teme koj i smatrate interesantnim

Stranica za predaju radova nalazi se na https events lugonsorgp=1658

Page 5: LiBRE 33 Lat

5

Broj 33

LiBRE prijatelji

Broj 33Periodika izlaženja mesečnik

Izvršni urednik Stefan NožinićGlavni lektorAleksandar Božinović

LekturaJelena Munćan Saška SpišjakMilena Beran Milana VojnovićAdmir Halilkanović

Grafička obradaDejan Maglov Ivan Radeljić

Dizajn White Circle Creative Team

Autori u ovom broju

Ostali saradnici u ovom brojuMarko Novaković Mihajlo Bogdanović

Počasni članovi redakcijeŽeljko Popivoda Željko ŠarićVladimir PopadićAleksandar Stanisavljević

KontaktIRC floss-magazin na ircfreenodenet

E-pošta librelugonsorg

Nenad MarjanovićNikola HardiKriptopank

Dejan ČugaljBranimir Karadžić

6

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

21 januar 2015

Kanonikal pokrenuo verzijuUbuntu Kora za Internet stvariKanonikal kompani ja zadužena za razvoj UbuntuLinuks distribuci je pokrenula je svoju verzi juUbuntu Kora (Core) za Internet stvari (Internet ofThings)

Koristan l ink http tcotN3VmZe5PK

26 januar 2015

Masovno nadgledanje pretiljudskim pravimaU evropskom izveštaju masovno špi juniranje pretidigitalnoj sigurnosti i l judskim pravima

Koristan l ink http tco9gcrmXw44q

27 januar 2015

Jutjub koristi HTML5 kaopodrazumevani načinreprodukcijeJutjub je zamenio Fleš tehnologi ju novi jomotvoreni jom i napredni jom tehnologi jom - HTML5koja će se koristiti kao podrazumevani načinpuštanja video sadržaja

Koristan l ink http tcozBpJh8Op6x

Vesti

7

Broj 33

28 januar 2015

GHOST - bezbednosni problemGHOST - novi bezbednosni problem u GNU-ovoj Cbibl ioteci koj i dovodi u opasnost sve apl ikaci jekoje koriste funkci je gethostbyname i gethost-byname2 i omogućava udal jenom napadaču dadobi je dozvole koje ima korisnik koj i izvršava tuapl ikaci ju

Koristan l ink http tcoGDYKsH2nOo

1 februar 2015

Pajrat Bej se vratioNajpopularni j i torent sajt Pajrat Bej (The PirateBay) se ponovo vratio posle dvomesečnogperioda kada je bio nedostupan

Koristan l ink http tcorSAPCVXWJi

2 februar 2015

Rasberi-Paj 2 je izašaoDostupan je u prodaj i Rasberi-Paj 2 (Raspberry PI2) sa 4 procesorska jezgra

Koristan l ink http tcoRGlOdoeioc

Vesti

8

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

3 februar 2015

Američka vojska otvara svojprogram za detekciju napadaAmerička vojska je odluči la da svoj program za de-tekci ju napada postavi na Githab i time omogućicelom svetu da koriste softver koj i su oni koristi l i zadetekci ju napada na mrežu ministarstva odbraneOni ovim potezom očekuju povratnu informaci ju odl judi koj i ne rade u vladi i nadaju se unapređenjusvog programa

Koristan l ink http tcov3PYlKF2sz

6 februar 2015

GPG u opasnostiVerner Koh (Werner Koch) programer koj i jezadužen za razvoj GPG-a (Dži-Pi-Dži engl GNUPrivacy Guard) softvera koj i svi koristimo zaenkripci ju kako naše elektronske pošte tako i ostal ihbitnih podataka polako ostaje bez novčanihsredstava Pozivaju se svi zainteresovani i oni koj i suu mogućnosti da pošal ju donaci ju u vidu novca

Koristan l ink http tcojGac5emwPX

9 februar 2015

Arduino razvojno okruženje -novo izdanjeIzašlo je novo razvojno okruženje za Arduino uverzi j i 1 6

Koristan l ink http tco4A0pFcIsVf

Vesti

9

Broj 33

Autor Branimir Karadžić

bgfx je rendering bibl ioteka otvorenog koda sa podrškom za više razl ičitih grafičkihAPI-ja 1 (eng Application Programming Interface) i operativnih sistema 2 Bibl iotekasluži za jednostavni j i pristup grafici i razvoj igara na više platformi Najvećiproblem sa kompjuterskom grafikom je što postoj i više razl ičitih API-ja koj i kada sekoriste direktno onemogućavaju portovanje igara na druge platforme Praveći igrukoja pristupa samo bgfx bibl ioteci a ne direktno API-u autor igre omogućava sebida tu igru na jednostavan način može prebaciti na bi lo koj i podržan operativnisistem odnosno platformu

Predstavljamo

bgfx - Cross-platform renderinglibrary

10

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

U početku bgfx je bio samo hobi projekat i zato ima nemaštovito ime Bi la je tosamo jedna od mnogih bibl ioteka koje sam napravio za pravl jenje igara Kada samradio na jednoj igri postojala je potreba da se igra prebaci sa starog DX9 (engDirectX 9) renderinga na OpenGL (engl Open-dži-el ) pa sam tom pri l ikom izvukaodeo moje hobi bibl ioteke za renderovanje i zapakovao je kao cel inu Posle uspešneprimene ove bibl ioteke u moj im projektima odlučio sam da je objavim kao projekatotvorenog koda na Githabu (eng Github) pod l icencom BSD 2-clause Po mommišl jenju ovaj deo renderinga je trebalo već odavno da bude rešen problem kao ida bude moguće da se igre bez veće muke izdaju na bi lo kojoj platformi po žel j iautora Namenjena je prevashodno manj im autorima koj i žele da imaju potpunukontrolu nad svoj im kodom bez obzira na platformu na kojoj žele da objave igruKod ovakvih komerci ja lnih proizvoda uvek postoje neka ograničenja a ako firmeizgube interes za proizvodom mogu ostaviti autore na cedi lu bez podrške iodržavanja Sa druge strane projekti otvorenog koda omogućuju saradnju autora iunapređenje funkcionalnosti projekta na zadovol jstvo svih

Upotrebom bgfx bibl ioteke korisnik može da zanemari konkretnu implementaci jurazl ičitih tehnologi ja kao što su OpenGL OpenGL ES i Direct3D bez kompromisa saperformansama Ova bibl ioteka ni je tanka apstrakci ja i l i emulator nekogpostojećeg API-ja tipa Guglovog Engl (eng ANGLE) projekta koj i emul ira OpenGL

Predstavljamo

11

Broj 33

ES preko Direct3D-a i l i Valvov TuDži-El (eng ToGL) koj i emul ira Direct3D 9 prekoOpenGL-a nego zaseban API višeg nivoa Iako je u prošlosti bi lo sl ičnih projekatasvi oni su uglavnom imal i pretenzi ju da budu endžin (engine) i l i frejmvork koj i bitvorci igara koristi l i kao takav Takav pristup donosi dosta kompl ikaci ja i veoma jeteško takav projekat integrisati sa postojećim kodom Iz ovog razloga bgfx projekatnema pretenzi je da bude ceo endžin i l i frejmvork nego samo bibl ioteka koju svakomože lako da integriše u sopstveni projekat

bgfx bibl ioteka se trenutno koristi u nekol iko komerci ja lnih igara al i ima i dostainteresovanja za projekat kao osnove za pravl jenje korisničkih apl ikaci ja pa čak ialata za programere

Na projektu je do sada radi lo oko deset l judi Uglavnom su dodaval i podršku zanove platforme primere i l i su povezival i bibl ioteku sa drugim jezicima Što sebuduće saradnje na ovom projektu tiče sve je dobrodošlo čak i sȃmo korišćenjebibl ioteke a zahtevi za uvođenje novih mogućnosti unapređuju samu bibl ioteku

bgfx

12

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Predstavljamo

13

Broj 33

1 Podržava grafičke API-je

bull Direct3D 9bull Direct3D 11bull OpenGL 2 1bull OpenGL 3 1+bull OpenGL ES 2bull OpenGL ES 3 1bull WebGL 1 0

2 Podržava platforme

bull Android (14+ ARM x86 MIPS)bull asm jsEmscripten (1250)bull iOSbull Linuks (x86 x86_64)bull Nejtive klajent (Native Client PPAPI37+ ARM x86 x86_64 PNaCl)

bull OS Iks (OSX 109)bull Rasberi-paj (RaspberryPi - ARM)bull Vindouz (Iks-pe Vista 7 8 10)bull Vin-ar-ti (WinRT WinPhone 80+ )

bgfx

14

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Autor Stefan Nožinić

UvodrEFInd je softverska apl ikaci ja za EFI (Extensible Firmware Interface) sisteme kojaomogućava izbor više operativnih sistema na jednostavan način Ovo je samoupravnik buta (boot) i u ovom broju vam predstavl jamo o kakvom projektu je reč ikako se može primeniti

Šta je (U)EFIPre nego što predstavimo sam projekat trebalo bi prvo da skrenemo pažnju idetal jni je da predstavimo problematiku EFI je nastao kao zamena za dosadašnj iBIOS (Basic InputOutput System) i razvi la ga je kompani ja Intel Ovaj pristup jekasni je zamenjen UEFI standardom EFI tehnologi ja ima prednost u slučajevimakao što su

bull Pokretanje sistema na diskovima preko 2TB memori je korišćenjem GPTtehnologi je

bull Nezavisnost od specifične arhitekture procesorabull Modularan dizajnbull Dobro okruženje pre učitavanja operativnog sistema što podrazumeva i mrežnupodršku

Tehnologi ja omogućava upotrebu 32-bitnih i 64-bitnih adresa na procesorima koj ito podržavaju Rani je BIOS tehnologi ja to ni je omogući la već se uvek koristi la 16-bitna implementaci ja iz istori jskih razloga

Predstavljamo

15

Broj 33

Particiona šemaEFI tehnologi ja ima drugači ju šemu partici ja Dok je stari pristup podržavao samoMBR (Master Boot Record) šemu nova tehnologi ja podržava GPT šemu kojaomogućava veći broj primarnih partici ja Sa starim pristupom taj broj bio jeograničen na četiri primarne partici je od koj ih je svaka morala da ima kapacitetmanj i od 2TB

AplikacijeUEFI podržava izradu apl ikaci ja koje bi se pokretale nezavisno od operativnogsistema Ove apl ikaci je se mogu naknadno instal irati Primer takvih apl ikaci ja supokretači (loader) operativnih sistema kao i upravnici butovanja

EFI sistemska particijaEFI podržava posebnu partici ju za smeštanje raznih potrebnih informaci ja kao štosu potrebni podaci za rukovanje računarom i specifične apl ikaci je Ova partici ja jenajčešće FAT32 sistem datoteka

rEFInd

16

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

But menadžer i but louder - ima razlikeOd popularizaci je GRUB upravnika mnogi korisnici su ostal i bez objašnjenja kakvaje razl ika između but loudera (boot loader) i but menadžera (boot manager) Ovose dešava jer GRUB pruža obe usluge u sklopu jednog programa pa se time teževidi razl ika između ova dva pojma But menadžer je upravnik pomoću kojeg jemoguće izabrati operativni sistem za pokretanje On ne zna ništa speci ja lno ooperativnom sistemu pa time ne zna ni kako da ga pokrene On samo zna datreba da pokrene but louder za taj sistem Kada je sistem izabran pokreće sespecifičan but louder za taj sistem koj i je zadužen za dal j i proces pokretanjakernela Za razl iku od GRUB upravnika rEFInd pruža samo usluge but menadžerašto u početku može zvučati poražavajuće za ovaj projekat Kada uzmemo u obzirda većina sistema danas ima but louder u sklopu kernela (ukl jučujući i Linuks odnovi j ih izdanja) ovaj problem je prevaziđen

Predstavljamo

17

Broj 33

InstalacijarEFInd postoj i kao deb i kao rpm paket al i postoj i i zapakovan kao zip arhivaZahval ju jući tome paket je moguće instal irati upotrebom dpkg komande nadistribuci jama baziranim na Debi janu kao i upotrebom rpm komande nadistribuci jama koje koriste taj način pakovanja paketa Za Ubuntu postoj i i PPArepozitori jum pa rEFInd može biti instal iran na sledeći način

sudo apt-add-repository pparodsmithrefindsudo apt-get updatesudo apt-get install refind

Nezavisno od toga koj i način od gore opisanih koristite rEFInd će automatski bitiprebačen na ESP i biti postavl jen kao podrazumevani upravnik

KonfiguracijarEFInd bi trebalo da vam pruži zadovol javajuću funkcionalnost bez dodatnekonfiguraci je posle instalacionog procesa On će automatski detektovati loudereoperativnih sistema korišćenjem pretrage po svim partici jama koje prepozna Uslučaju da ste napredni j i korisnik i da žel ite da modifikujete ponašanje rEFInda tomožete uraditi izmenom njegove konfiguracione datoteke Postoj i g lobalnakonfiguraci ja i konfiguraci ja za svaki sistem posebno Ovaj tekst bi postao previšedugačak kada bismo ulazi l i u detal je same konfiguraci je pa vam zatopreporučujemo ako imate potrebu za dodatnom konfiguraci jom da posetitedokumentaci ju projekta i l i ako imate neke nedoumice da kontaktirate s namapreko naše e-pošte

Za krajŽelel i bismo da ovaj tekst zakl jučimo ocenom da je ovaj projekat dosta zaniml j ivda pruža zadovol javajuću funkcionalnost i da omogućava korisnicima koj i koristeovaj sistem pokretanja lako pokretanje svoj ih operativnih sistema Još jednomžel imo da vam skrenemo pažnju da nam se obratite i ukažete ako smo nešto važnopropusti l i da pomenemo i l i ako nam se negde potkrala greška

Korisni l ink http wwwrodsbookscomrefind

rEFInd

18

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Autor Nikola Hardi

Opšte je poznato da su računari dobri u radu sa brojevima Međutim vremenom suse i potrebe korisnika i alati za programiranje računara razvi ja l i i rad sa drugači j imtipovima podataka je postao uobičajen i znatno jednostavni j i nego rani je Svi smoimal i pri l iku da radimo sa programima za obradu fotografi ja video materi ja la i l izvučnih zapisa Multimedi ja je ipak tema koja prevazi lazi jedan uvodni kurs o C-ual i do kraja ovog seri ja la ćemo se dotaći i tih tema Za početak osvrnućemo se narad sa tekstualnim podacima na C način

Stringovi na C načinDefinici ja tekstualnog podatka u sferi računarstva se uglavnom svodi na to da jetekst niz karaktera a karakteri su znakovni simbol i Iako imamo mogućnost daradimo sa tekstom i l i multimedi jom računari ipak razumeju samo brojeve pamoramo tako da im predstavimo i tekst Postoje razni standardi kako se pojedinikarakteri predstavl ja ju u memori j i računara između ostalog najpoznati j i su ASCIIEBCDIC UTF i td EBCDIC je standard koj i je prisutan u Eplovom (eng Apple) svetu iviše nema tol iko važnu ulogu ASCII je standard koj i je vrlo prisutan i danas UTF jenastao kao proširenje ASCII standarda javl ja se u više vari janti i uvodi podršku zapisma razl ičita od abecede (kinesko japansko ćiri l ica arapsko i mnoga druga)

Važno je napomenuti da je originalni ASCII standard propisivao 7 bitova za jedankarakter što je dalo prostora za 128 karaktera Među tim karakterima se nalazecifre mala i vel ika slova engleskog alfabeta i niz kontrolnih karaktera Kontrolnikarakteri su oznake za novi red prazno mesto tabulator upravl janje štampačima(vraćanje glave štampača na početak) rad sa terminal ima (alarm i l i obaveštenje

Kako da

Uvod u programski jezik CRad sa stringovima (9 deo)

19

Broj 33

da se nešto dogodi lo) ASCII standard je proširen na 8 bitova odnosno ceo jedanbajt i sada podržava 256 karaktera Potražite na internetu termin bdquoASCII tabelardquo dabiste stekl i uvid u to kako izgleda tzv tabela ASCII karaktera

Rad sa pojedinačnim znakovima ne obećava mnogo Postoj i realna potreba zaradom sa rečima rečenicama l ini jama teksta itd Podaci koj i se sastoje od više odjednog karaktera se u domaćoj l i teraturi nazivaju znakovnim niskama madaodomaćen je i naziv bdquostringrdquo koj i je i mnogo češće u upotrebi U programskomjeziku C se stringovi predstavl ja ju običnim nizovima karaktera (char niz[]) a krajteksta se označava NULL karakterom odnosno speci ja lnim znakom 0 či jabrojevna predstava je pogađate nula Ovakva predstava tekstualnih podatakanosi sa sobom i pojedine kompl ikaci je Gotovo svi savremeni jezici poznaju tipstringa dok su u C-u stringovi ipak samo obični nizovi

Da se podsetimo nizovi u C-u su zapravo pokazivači na deo u memori j i Kadapokušamo da pristupimo jednom elementu niza tada se vrši operaci jabdquodereferenciranjardquo sa zadatim odstupanjem Sledi nekol iko primera koj i i lustrujurad sa nizovima na primeru nizova karaktera

char niz1[] = zdravoniz1[0] = Z

char niz2[5]niz2[0] = 0niz2[1] = kniz2[2] = 0

Pri deklaraci j i niza 1 ni je zadata dužina zato što je u jednom izrazu zadata iinici ja l izaci ja niza koja glasi ldquozdravordquo Prevodi lac može sam da zakl juči kol ikomemori je je potrebno

U drugom primeru je kreiran niz karaktera dužine 5 Međutim popunjena su samoprva tri mesta Primećujete razl iku između prvog i trećeg elementa Prvi je cifra 0(uokviren je navodnicima) a treći je brojčana vrednost 0 koja označava krajstringa

Može se primetiti još jedna razl ika u data dva primera U prvom primeru sukorišćeni dvostruki navodnici dok su u drugom korišćeni jednostruki Razlog za to

Uvod u programski jezik C

20

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

je što se znakovni nizovi koj i su uokvireni dvostrukim navodnicima smatrajustringovima i podrazumevano im se dodaje bdquoterminatorrdquo odnosno znak NULL koj ioznačava kraj stringa Jednostruki navodnici se iskl jučivo koriste za predstavl janjepojedinačnih karaktera Ovo znači da zapisi ldquoardquo i a nisu jednaki Prvi zapis jedužine 2 jer ima i znak NULL koj im je završen

Ispisivanje i učitavanje stringovaPre nego što nastavimo dal je biće objašnjen jednostavan način za ispisivanje iučitavanje stringova pomoću standardnog ulazaizlaza Da se podsetimobibl ioteka za standardni ulazizlaz (ispis podataka u konzol i odnosno terminalu) jestdioh Ukol iko se koristi formatirani ispis potrebno je funkci jama printf() iscanf() proslediti format string koj i sadrži speci ja lan znak s čime je označenoda žel imo da ispišemo znakovni niz sve do NULL karaktera Drugi način jeupotrebom funkci ja puts() gets() i getline() iz bibl ioteke stringh Sledi primer

include ltstdiohgt include ltstringhgt int main()

char niz1[] = Zdravo svete

printf(sn niz1)

scanf(s niz1)puts(niz1)

return 0

Može se primetiti da je u slučaju funkci je printf() potrebno naglasiti speci ja lnimkontrolnim karakterom n da nakon ispisa treba preći u novi red Funkci ja puts() topodrazumevano radi

Za ove i sve druge funkci je dodatnu pomoć je moguće pronaći u Linuksovim manstranicama u odel jku 3 koj i je posvećen standardnim bibl iotekama Recimo mangetline sadrži detal jno uputstvo o funkci j i getline()

Kako da

21

Broj 33

Kopiranje stringovaKao što je u prethodnom odel jku napomenuto stringovi su u C-u samo običninizovi To znači da sledeći kod verovatno neće uraditi ono šta bi bi lo očekivano

niz1 = niz2

Ovime smo pokazivaču niz1 bdquorekl irdquo da pokazuje tamo gde i pokazivač niz2 Efektivno oni sad pokazuju na isti tekst međutim ako izmenimo niz1 to će seodraziti i na niz2 a važi i obrnuto Ovime smo dobi l i samo dva pokazivača na istideo memori je a uglavnom to ni je bio ci l j

Drugi način kako bismo sadržaj drugog niza mogl i da kopiramo u prvi niz je petl jakojom bismo kopiral i element po element Pošto je operaci ja kopiranja stringovavrlo često potrebna postoj i standardna bibl ioteka za rad sa stringovima koja sezove stringh a funkci ja za kopiranje stringova je strcpy()

strcpy(niz1 niz2)

Dati primer kopira sadržaj niza 2 u niz 1 Kopira se element po element sve dok seu nizu 2 ne naiđe na NULL karakter Ovakvo kopiranje (element po element) seinače u stranoj l i teraturi naziva i bdquodeep copyrdquo i vrlo često se sreće u radu sastrukturama podataka gde je potrebno obići celu strukturu podataka i svakielement kopirati a strukturu opet izgraditi u drugom delu memori je

Zaniml j ivo je što je kopiranje stringova moguće pojednostaviti ukol iko definišemonovi tip podatka kao strukturu koja sadrži niz karaktera i potom izvršimo kopiranjeOvo je trik koj i se uglavnom ne koristi u praksi i spomenut je samo kaozaniml j ivost

include ltstringhgt struct str char niz[50]

int main()

struct str s1struct str s2

Uvod u programski jezik C

22

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

strcpy(s1niz zdravo)s2 = s1

s2niz[0] = Z

puts(s1niz)puts(s2niz)

return 0

Kreirana je struktura str koja sadrži pol je niza karaktera pod nazivom niz Pozivomfunkci je strcpy() kopiramo string ldquozdravordquo u s1 čime smo bdquonapuni l irdquo sadržajobjekta s1 Potom je izvršena redovna dodela čime je sadržaj objekta s1 kopiran us2 Zatim je izmenjen samo prvi karakter objekta s2 i oba stringa su ispisanaPrimećujete da su kopirani svi znakovi a da je izmenjen samo drugi objekatZaniml j iv trik

Poređenje spajanje i pretraga stringovaDruga vrlo česta situaci ja je poređenje dva stringa Ukol iko bi poređenje bi loizvršeno upotrebom redovnog operatora za poređenje == tada bi u stvari bi lepoređene samo adrese na koje pokazuju pokazivači tih stringova jer da sepodsetimo stringovi su u C-u samo obični nizovi Ispravan način za poređenje dvastringa je pozivanjem funkci je strcmp() či ja je povratna vrednost 0 ukol iko su jojprosleđeni stringovi sa jednakim sadržajem

include ltstringhgt int main()

char niz1[] = zdravochar niz2[] = zdravo

if( strcmp(niz1 niz2) == 0)puts(Stringovi su jednaki)

elseputs(Stringovi nisu jednaki)

return 0

Kako da

23

Broj 33

Funkci ja strcmp() poredi svaki element prosleđenih nizova pojedinačno a dobraje vežba implementiranje nove funkci je strcmp() koja će unutar petl je da porediodgovarajuće elemente prosleđenih nizova i potom vratiti rezultat 0 ukol iko su svielementi jednaki Potrebno je pripaziti na situaci ju kada su stringovi razl ičitihdužina

U svetu računara spajanje dva sadržaja se zove konkatenaci ja Odatle i nazivfunkci je za spajanje dva stringa strcat() Važno je uveriti se da je string u koj i sedodaje sadržaj dovol jno vel ik da ga prihvati inače može da dođe do nežel jenogprepisivanja u memori j i uništavanja drugih podataka i neispravnog ponašanjaprograma

Pretraga unutar stringa se može obaviti funkci jom strstr() Ova funkci ja kaoparametre očekuje pokazivač na niz karaktera (string) u kojem je potrebno pronaćistring koj i je prosleđen kao drugi parametar Povratna vrednost je pokazivač nadeo memori je gde se žel jeni string prvi put pojavio

Sledi malo opširni j i primer koj i i lustruje spajanje pretragu i kopiranje stringova

include ltstringhgt int main()

char niz_a[50] = LiBRE je char niz_b[] = najbolji casopischar niz_c[] = e-magazin

strcat(niz_a niz_b)puts(niz_a)

char cilj = strstr(niz_a casopis)strcpy(cilj niz_c)

puts(niz_a)

return 0

Uvod u programski jezik C

24

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Pretvaranje tipova podataka u stringove ipretvaranje iz stringovaPretvaranje podataka iz jednog tipa u drugi i l i kastovanje (eng type casting) se zavećinu tipova vrši jednostavno pisanjem tipa u zagradama na primer (int)523 Stringovi su i po ovom pitanju drugači j i Postavl ja se pitanje šta pretvoriti ucelobrojni tip - da l i adresu na koju pokazuje pokazivač niza koj i predstavl ja stringPrvi element Šta ako taj string ni je broj Predstavićemo rešenje za konverzi jubrojeva u stringove i obrnuto

Ispis podataka na ekranu se takođe može smatrati konverzi jom Broj sa pokretnimzarezom je u memori j i prikazan na pomalo čudan način a pozivom funkci jeprintf() kada je kao format zadat f na ekranu ćemo dobiti razuml j iv niz znakovaSl ičan rezultat možemo dobiti funkci jom sprintf() a jedina razl ika u odnosu naprintf() je ta što sprintf() kao prvi argument očekuje pokazivač na string dok sudrugi (format string) i treći (argumenti koj i se povezuju sa formatnim stringom)sl ični kao kod funkci je printf()

Kod pretvaranja stringova u brojevne tipove može poslužiti funkci ja sscanf() kojase ponaša sl ično kao funkci ja scanf() s tim što je prvi argument adresa(pokazivač na string) koju žel imo da skeniramo u nadi da će se poklopiti saformalnim stringom koj i je drugi argument a rezultati će biti sačuvani u adresamakoje su prosleđene kao 3 4 i ostal i parametri Drugi način za pretvaranje stringovau celobrojne brojeve i brojeve sa pokretnim zarezom su funkci je atoi() i atof()

Funkci je koje koriste formatni string su česte u jeziku C i zaslužuju posebnu pažnjumeđutim to je priča za poseban članak U ovu klasu funkci ja spadaju recimo ifunkci je za rad sa datotekama

BezbednostRad sa stringovima može da bude izuzetno opasna stvar po pitanju bezbednostiprograma Ukol iko se niz karaktera ne završava NULL karakterom svašta može dapođe po zlu pri pozivu funkci ja kao što su strcpy() strcmp() i sl ične Cela klasatih funkci ja se oslanja na postojanje znaka koj i označava kraj stringa Kada stringni je propisno završen tada te funkci je mogu da zalutaju u deo memori je vanstringa i svašta može da pođe po zlu Ovakav tip napada se inače zoveprekoračenje bafera (eng buffer overflow) Preporučen način kako da izbegnete

Kako da

25

Broj 33

Pregled popularnosti GNULinuxBSDdistribuci ja za mesec februar

Distrowatch

Pad ltPorast gtIsti rejting =(Korišćeni podaci sa Distrovoča)

12345678910111213141516171819202122232425

MintUbuntuDebianopenSUSEelementaryMageiaFedoraManjaroCentOSLXLEArchBodhiAndroid x86Kal iPCLinuxOSPuppyRobol inuxLubuntuQ4OSBlack LabNetrunnerSimpl icityEvolveZorin4MLinux

2919gt1778gt1701gt1323gt1204gt1174gt1166gt1028lt1020gt965gt957gt907gt900lt760gt742lt732gt695gt670gt663gt655gt652gt629gt607gt583gt517=

takve nepri jatne situaci je pri radu sastringovima je da koristite verzi jefunkci ja koje su ograničenemaksimalnom dužinom stringa kaošto su strncpy() strncat() strncmp() i td Sve te funkci je kaotreći parametar zahtevaju broj koj iodređuje maksimalnu očekivanudužinu stringa Još jedna vrlo korisnafunkci ja je strlen() či j i zadatak je daodredi dužinu stringa Budite pažl j ivi ovo je prvo mesto gde se tražebezbednosni propusti u programimaNe verujte podacima koj i spol ja ulazeu vaš program a pogotovo kada je rečo stringovima

Uvod u programski jezik C

26

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Autor Dejan Maglov

Projekti slobodnog softvera obično počinju kao projekti pojedinca i l i male grupeprogramera a koj i rade na razvoju softvera či j i je ci l j da zadovol j i neke od nj ihovihl ičnih potreba Projekat će se smatrati uspešnim ukol iko se šira zajednicazainteresuje za njega nakon što prepozna korisnost softvera ne samo za pojedincekoj i su započel i projekat već i za širu zajednicu Kada je u pitanju slobodni softvervremenom je postala stalna praksa da se zajednica umeša u razvoj projekataDobri projekti sami privlače zajednicu l judi koj i su zainteresovani za nj ih i ona uvećini slučajeva preuzima na sebe testiranje pobol jšanje funkcionalnosti održavanje i tehničku podršku projekta

Zajednice slobodnog softvera mogu da se okupe oko projekta slobodnog softverapo teritori ja lnom principu i l i da nastanu kombinaci jom ovih principa

Primeri

bull LiBRE projekat okupl ja zajednicu oko projekta bez teritori ja lnog ograničenjabull LUGoNS (Linux User Group of Novi Sad) je zajednica korisnika Linuksa poteritori ja lnom principu bez obzira na konkretan projekat

bull Ubuntu-rs zajednica koja je kombinaci ja okupl janja zajednice oko konkretnogprojekta (Ubuntu) i teritori ja lnog principa koj i se ograničava na teritori ju Srbi je

Ova sinergi ja projekata i korisnika slobodnog softvera ima više prednosti i zakorisnike i za projekat Projekat se na ovaj način brže razvi ja dobi ja na

U potrazi za idealnom distribucijom

Socijalni kriterijumi za izbor idealnedistribucije (6 deo)

Oslobađanje

27

Broj 33

funkcionalnosti greške se brzo ispravl ja ju i td Korisnici dobi ja ju osećaj dapripadaju grupi druže se sa istomišl jenicima učestvuju u promoci j i kval itetnihpojedinaca itd

Dve najvažni je uloge lokalnih zajednica za GNULinuks distribuci je su

1 pružanje tehničke podrške i edukaci je na maternjem jeziku2 rad na lokal izaci j i i pri lagođavanje distribuci je lokalnim potrebama

Informaci ja da postoje lokalne zajednice slobodnog softvera je od naročitogznačaja za početnike i korisnike koj i nedovol jno dobro znaju strane jezike(naročito engleski jezik) Ako izuzmemo komerci ja lne projekte otvorenog koda(Red Het SUSE) ne postoje zvanične škole i kursevi za slobodni softver Zaedukaci ju početnika je uglavnom zadužena zajednica a jasno je da je učenje namaternjem jeziku uvek lakše nego na bi lo kom drugom stranom ma kol ikodobro ga poznajete

Forumi i viki stranice lokalnih zajednica su prave bibl ioteke u koj ima korisnicimogu da nađu većinu odgovora na svoja pitanja a za sva ostala tu su forumi iIRC kanal i zajednica na koj ima uvek ima nekoga i koj i imaju već gotova rešenjaza vel iki broj problema

U potrazi za idealnom distribucijom

28

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Lokalne zajednice kao kriterijum za izbor idealnedistribucijePočetnicima i korisnicima koj i ne vladaju dobro engleskim jezikom toplopreporučujemo da biraju GNULinuks distribuci je koje imaju aktivnu lokalnuzajednicu Ovladavanje novim operativnim sistemom je mnogo lakše ukol iko vambdquoleđa čuvardquo lokalna zajednica na koju se uvek možete osloniti

Već smo spomenul i da su popularni je GNULinuks distribuci je namenjenepočetnicima Slučaj je isti i sa lokalnim zajednicama okupl jenim oko nj ih Ovomeđutim ne znači da je kval itet usluga koje nude manje popularne lokalnezajednice okupl jene oko distribuci ja namenjenih napredni j im korisnicima loši j i Manje popularne distribuci je okupl ja ju manje l judi a l i zato oni poseduju većeznanje Iskustvo sa zajednicama okupl jenim oko slobodnog softvera je uglavnompozitivno i ukazuje na to da kval itet usluga koje one nude korisniku ni je uslovl jenpopularnošću i masovnošću zajednice nego iskl jučivo njenom (ne)aktivnošću

U svakom slučaju dosadašnj i saveti za izbor idealne distribuci je važe i dal jeSoci ja lni aspekt slobodnog softvera je samo dodatni faktor koj i vam može pomoćipri donošenju odluke kada se dvoumite između nekol iko mogućih rešenja

Još uvek ne postoj i na jednom mestu potpuni i ažurirani spisak svih aktivnihsrpskih zajednica Nešto najbl iže tome može da se nađe na adresihttps pulsslobodewordpresscom Za informaci je o nekim drugim lokalnimzajednicama koje možda postoje al i nisu na ovom spisku moraćete sami dapretražite internet

Lokalizacija kao kriterijum za izborZa lokal izaci ju GNULinuks distribuci ja i GNU programa odgovorni su pojedinci ilokalne zajednice Sasvim sol idnu srpsku lokal izaci ju mogu imati i projekti koj iuopšte nemaju svoju lokalnu zajednicu a isto tako lošu lokal izaci ju mogu imati iprojekti sa dobrom lokalnom zajednicom Sve je stvar prioriteta zajednica iaktivnosti pojedinaca

Pravu i kontrol isanu lokal izaci ju može imati samo lokalni projekat Ovakvihprojekata u Srbi j i ima malo i teško se probi ja ju čak i u lokalu u konkurenci j isvetskih projekata Istina je da mnoge veće GNULinuks distribuci je imaju srpskulokal izaci

Oslobađanje

29

Broj 33

ju u ponudi pa se možda sl ični lokalni projekti koj i su usmereni samo na striktnulokal izaci ju smatraju nepotrebnima Uzvodna lokal izaci ja u slučaju Srbi je vrlo čestobude veoma loše čak nakaradno sprovedena Jedna polovina programa jelokal izovana srpskom ćiri l icom a druga latinicom Ako postoj i još delova sistemakoj i uopšte ni je lokal izovan onda se pojavl ju ju i delovi programa koj i su naengleskom Zato ćemo se vratiti na prvu rečenicu ovog pasusa i ponovo utvrditi dasamo lokalni projekat može potpuno kontrol isati pravu srpsku lokal izaci ju

U Srbi j i za sada imamo dva aktivna projekta GNULinuks distribuci je ndash TriOS(http triosrs) i Serbian (http wwwdebian-srbi ja iz rspserbianhtml) Obaprojekta su mlada i imaju svoj ih prednosti i mana Kome treba lokal izovanoperativni sistem može da proba jedan od ova dva projekta

U potrazi za idealnom distribucijom

30

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Iako ove dve domaće distribuci je nisu baš naj idealni je interesantno je probati ih iuporediti sa drugim distribuci jama

Za kraj serijalaNamera nam je bi la da kroz ovaj seri ja l o kriteri jumima pri izboru idealnedistribuci je definišemo većinu kriteri juma pri izboru i pokažemo zašto je teškoodgovoriti na jednostavno pitanje bdquoKoju mi distribuci ju preporučujeterdquo

Ni na samom kraju nismo dal i konkretan odgovor na pitanje koja je idealnaGNULinuks distribuci ja Suviše je subjektivnih ocena da bi se mogao datikonkretan odgovor Smatramo da je jako teško napisati neki algoritam izbora pokriteri jumima koje smo identifikoval i i definisal i a možda je čak i nemoguće poštose izlazi stalno menjaju Izlazi iz tog algoritma su GNULinuks distribuci je koj ih izdana u dan ima sve više a i one stare se stalno menjaju

Sam seri ja l bdquoU potrazi za idealnom distribuci jomrdquo neće biti završen samo zato štose više neće baviti kriteri jumima pri izboru nego će pokušati da predstavl jaGNULinuks distribuci je koje su po nečemu bdquoidealnerdquo

Oslobađanje

31

Broj 33

ORM

Autor Dejan Čugal j

Object relation mapping (ORM)

ORM (eng Object RelationMapping) je način postizanja traj-nosti (eng persistence) objekataunutar relacionih baza podatakaModel deluje kao posrednik nalogičkom delu apl ikaci je Automat-ski presl ikava podatke iz objekata ubazu i nazad na zahtev apl ikaci jeDa bismo objasni l i kako ovo sveradi moramo da vam predstavimoORM frejmvork (eng framework)programa otvorenog koda -Hajbernejt (eng Hibernate -http hibernateorgorm)

Šta je ORMUkratko ORM je automatizovano transparentno presl ikavanje objekatakorišćenjem metapodataka koj i opisuju mapiranje veze između objekta i baze

ORM (2 deo)

Slobodni profesionalac

32

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

podataka u apl ikaci jama koje su napisane u objektno ori jentisanim programskimjezicima Apl ikaci ja komunicira sa ORM-om preko njegovog vlastitog API-ja (engapplication programming interface) i određenih objekata Ova komunikaci ja jepotpuno odvojena od komunikaci je koja se odvi ja između ORM-a i baze podatakapreko SQL-a i DBC-a

Da bi se postigla i dostigla potpuna snaga ORM-a u apl ikaci j i koju projektujemonikako se ne sme iskl jučiti znanje relacionih modela SQL jezika te poznavanjeDBMS-a u kome se radi ORM ni je ništa drugo do srednj i sloj između gorepomenutih tehnologi ja i objektno ori jentisanog programiranja kao što smo to dosada već više puta naglasi l i

Implementacija ORM-aPostoje razl ičiti načini implementaci je ORM-a Mark Fasl (Mark Fussel) je 1997definisao četiri nivoa

1 bdquoČistrdquo relacioni način2 Slabo mapiranje objekata3 Umereno mapiranje objekata4 Potpuno mapiranje objekata

bdquoČistrdquo relacioni način

Cela apl ikaci ja ukl jučujući i korisnički interfejs dizajnirana je relacionim modelom iSQL relacionim operatorima Ovakav pristup je odl ičan za male projekte Direktanpristup SQL-u omogućava fino podešavanje svakog aspekta upita koj i se postavl jabazi podataka Osnovne mane su portabi lnost (prenosivost) i održavanje ovakvihsistema pogotovo ako se planira korišćenje apl ikaci je na duži rok Ovakvi sistemimasovno koriste sačuvane procedure (eng stored procedures) što znači da jeposlovna logika (eng busines logic) prebačena na samu bazu podataka

Slabo mapiranje objekata

Entiteti su predstavl jeni kao klase i mapiranje se radi ekspl icitno ka relacionimtabelama SQLJDBC je sakriven od poslovne logike korišćenjem poznatih šablona(patterns)

Umereno mapiranje objekata

Slobodni profesionalac

33

Broj 33

Dizajn apl ikaci ja se svodi na objektne modele SQL se generiše u vremekompaj l iranja (eng build-time) i l i u vreme izvršavanja (eng run-time) Specifikaci jaupita nad bazama podataka se radi na objektno ori jentisanom jeziku Ovakvisistemi se koriste u apl ikaci jama srednj ih vel ičina kod koj ih je bitna portabi lnostizmeđu razl ičitih sistema za upravl janje bazama podataka (DBMS)

Potpuno mapiranje objekata

Podržava sofisticirano objektno model iranje nasleđivanje i pol imorfizamEfikasnost dobi janja podataka je na visokom nivou i koriste se metode kao što sulenjo učitavanje (eng lazy loading) i strategi ja keširanja (eng caching) Implementaci ja je transparentna u apl ikaci jama Ovaj nivo je jako teško dostići Pojedincu su potrebne godine razvoja da postigne ovakvu fleksibi lnost pristupa imanipulaci ja u relacionim bazama podataka Upravo ovaj nivo se postiže ako sekoriste rešenja ORM-a kao što je Hajbernejt

Zašto ORMImplementaci ja ORM rešenja pogotovo ako seprvi put susrećete sa ovim modelom može dabude veoma frustrirajuća i malo teža zaimplementaci ju Kada ovo kažemo misl imo daprogramer koj i implementira ORM i hoće da istibude kval itetno urađen mora da posedujepredznanje objektno ori jentisanog programiranjai naprednih tehnika kao što su nasleđivanje ipol imorfizam

Ovo inicira fundamentalna pitanja

bull Pa zašto bi iko onda implementirao ovako nešto kompleksnobull Vredi l i truda upuštati se uopšte u ORM

Odgovor ni je jednostavan Dosadašnja iskustva u korišćenju ORM-a i njegovapopularnost već daju odgovor na postavl jeno pitanje Očigledno je da su benefitikoje donosi ovaj model veći od kompleksnosti njegove implementaci je a to su

Hibernate ORM

34

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Veća produktivnost

ORM smanjuje kol ičinu koda potrebnog za ostvarivanje trajnosti podataka Ovoomogućava programeru da vreme koje bi utrošio na ručno mapiranje podatakautroši na druge delove apl ikaci je

Lakše održavanje

Manje l ini ja koda osigurava bol ju razuml j ivost (i možda bol j i kval itet koda) jernaglašava apl ikaci jsku logiku ORM takođe ublažava uticaj nastal ih promena kaošto su promene u bazi strukturi tabela i td

Prenosivost

Većina ORM rešenja podržava sisteme za upravl janje bazama podataka raznihproizvođača ORM u potpunosti odvaja sloj apl ikaci je od stvarne SQL komunikaci jekoja se odvi ja u pozadini Time omogućava da se pišu apl ikaci je koje će moći da seizvršavaju na razl ičitim bazama podataka bez potrebe za dodatnim kodiranjemOva komunikaci ja se odvi ja sa programskim interfejsima ORM-a nezavisno oDBMS-u sa koj im je u bi lo kom momentu povezan ORM takođe omogućava lakšiprelaz sa manj ih na veće baze podataka tokom razvoja apl ikaci je

Uvidel i smo da trenutno postoje dve paradigme koje se bdquosudarajurdquo i koje supodjednako dobre same za sebe Relaciona paradigma potvrđuje da sve što jeizgrađeno na matematičkim osnovama je i trajno u smislu kval iteta koje posedujeU domenu u kom relaciona paradigma egzistira ona je ako je to u ovo vremeuopšte moguće tvrditi nezamenj iva

Ono što otvara pitanja i daje razlog za sumnju je koja je krajnja granicaupotrebl j ivosti relacione paradigme tj kol iki su kapaciteti složenosti zahtevaapl ikaci ja sa kojom može da se nosi Praksa je pokazala da je sasvim mogućebdquoizvestirdquo složene projekte - al i održavanje skalabi lnost razuml j ivost prenosivost -pitanja su sa koj im se relaciona paradigma teško može izboriti

Sa druge strane svoj habitat u informacionim tehnologi jama je našla i objektna

Slobodni profesionalac

35

Broj 33

paradigma Iako na prvi pogled ova dva modela nemaju ništa zajedničko - što je uneku ruku i istinito gledajući prirodu podataka koj im manipul išu - praksa jepokazala da su usko povezane i skoro da imaju sinaptičku vezu

Pitanje bdquokako spoj iti te sinapserdquo dovelo je do žučnih rasprava u uskim naučnimprogramersko-administratorskim krugovima Rodi l i su se razni model i a l i jedan jeiskočio i polako ulazi u široku primenu - a to je ORM Svoj im supti lnim pristupomproblemu nekompatibi lnih paradigmi nekako je uspeo da stvori taj nedostajućibdquoelektrični signalrdquo koj i ih je povezao Ovo je omogući lo da dve strane koje susvaka za sebe u svom domenu ostavi le i ostavl ja ju duboki trag u informacionimtehnologi jama sarađuju i donesu novi kval itet

Korisni l inkovi

[1] Hibernejt http hibernateorg[2] Viki http googlLlZulw[3] Tutori ja l i http googlCGzvnc

Hibernate ORM

36

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Autor Kriptopank

Šta su zapravo metapodaci Najkraće rečeno to su podaci o podacima i l iinformaci je koje opisuju podatke

Najpre da napravimo razl iku između podataka i metapodataka Podaci sunaprimer snimak (i l i transkript) vaših telefonskih razgovora sadržaj poruka kojepišete primate i l i šal jete podaci koje kačite na internet i l i preuzimate pretrageGuglom postovi na forumima dopisivanja na IRC kanal ima i l i drugim četovimaaudio i video snimci Skajp razgovora i tako dal je

Hajde da vidimo šta bi bi l i odgovarajući metapodaci za ove primere

bull Za telefonske razgovore metapodaci mogu biti lokaci ja učesnika brojevitelefona trajanje razgovora IP i MAC adresa

bull Za poruke četove i Skajp i l i druge video-audio komunikaci je sl ično je kao kodtelefonskih razgovora

To su samo metapodaci

Internet mreže i komunikacije

37

Broj 33

bull Kod foruma i pretraga Guglom ima malo manje metapodataka al i Gugl i raznisajtovi i forumi ionako čuvaju logove o korisnicima što su takođe metapodaci

Ako do sada koj im slučajem niste uvidel i opasnost po privatnost u ovimmetapodacima koje svako od nas smrtnika svakodnevno ostavl ja za sobom usvetu interneta i ostal ih digitalnih komunikaci ja nadamo se da će vas ovaj primermakar podstaći na razmišl janje a možda i na nešto više

Zamisl i te da neko (zvaćemo ga posmatrač) stalno sakupl ja metapodatke koje zasobom ostavl jate kao mrvice hleba Posmatrač recimo zna da se nalazite naautoputu nedaleko od famoznog Feketića da se ne krećete da zovete AMSS zatimšlep službu i možda taksi a l i ne zna šta ste razgovaral i I l i posmatrač vidi da steprvo zval i aerodrom Nikola Tesla pa odmah potom taksi a l i ne zna šta sterazgovaral i I l i posmatrač vidi da ste zval i prvo šest brojeva či je identitete takođezna pa vidi da se oni zatim kreću ka vama - GPS (eng Global Positioning System) pa zatim pica servis Mekdonalds i neku poznatu prodavnicu kineske hrane al i nezna šta ste razgovaral i

Posmatrač ne mora da bude mnogo pametan niti da prisluškuje vaše razgovore dabi shvatio šta se dešava i l i šta će se desiti Sasvim mu je jasno da vam je u prvomprimeru auto stao na autoputu zatim da ste se u drugom slučaju uputi l i naaerodrom i da možda putujete van zemlje i l i ste poslal i taksi po nekoga saaerodroma a da u trećem slučaju okupl jate žurku kod vas Više možete pogledatina http googl7vUjP

Iako su to bdquosamordquo metapodaci treba biti svestan da ti metapodaci o vama stvarajujednu digitalnu sl iku i l i bol je reći digitalni mozaik i na neki način vas jedinstvenoodređuju Pogotovo kada se planski prikupl ja ju na više nivoa (kompjuter pametnitelefon pametni automobi l i kreditna kartica) metapodaci čine vaš digitalniidentitet Al i da stvar bude još gora ta sl ika o vama ne mora nužno biti istinita jerse lako može lažirati Recimo možete zameniti telefone i l i automobi le sa nekimnamerno i l i slučajno i l i vam neko može jednostavno ukrasti telefon laptop i l ikreditnu karticu Zaniml j iv video http googlKO1fKf

Evo jednog primera koj i vas može uvući u vel ike nevol je Recimo da prolazitenekom zabačenom ul icom i da vam neprimetno ispadne telefon al i vi to neprimetite i nastavite dal je svoj im putem U toj ul ici se samo nekol iko minutakasni je desi neko ubistvo i vas pozovu u pol ici ju kao osumnj ičenog Ako koj im

To su samo metapodaci

38

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

slučajem nemate dobar al ibi i l i nemate svedoka da posvedoči da niste bi l i u tojul ici nego tamo gde ste stvarno bi l i a drugih svedoka nema - možete jako lošeproći Zaniml j ivi video http googlspS5OZ

Metapodaci se takođe nalaze i u faj lovimapodacima koje svakodnevnopreuzimamo sa interneta pravimo i koristimo Svaki tip podatka može da sadržiodređene metapodatke koj i bol je opisuju sam podatak kao naprimer vremenastanka podatka kol iko je vremena potrošeno za njegovo kreiranje kol iko putamu je pristupl jeno kad je poslednj i put pristupl jeno i tako dal je Iako se ovakvimetapodaci možda još uvek čine bezazlenim oni mogu sadržati i IP adresuračunara sa kog su napravl jeni GPS koordinate (najčešće PNG format sl ika satelefona) ko ga je napravio (l ičnost i l i kompani jaorganizaci ja) naziv uređaja imodel sa koga je napravl jen kao i MAC adresu uređaja mej l adresu kreatorasoftver koj im je napravl jen i tako dal je Sve ovo može mnogo da naškodiprivatnosti izvornog kreatora faj la pogotovo ako je sadržaj poverl j iv Ukol iko nekopresretne taj podatak na internetu može saznati od koga je potekao Da ovo možebiti katastrofa po kreatora takvog faj la može i lustrovati primer torenta Ako stedošl i u posed nekih sl ika i l i video materi ja la i l i teksta koj i žel i te da podel ite sasvetom preko nekog torent sajta morate taj podatak prvo očistiti odmetapodataka da ne bi svako ko skine to što ste okači l i saznao da vi stoj i te izatoga

Internet mreže i komunikacije

39

Broj 33

Ljudi se konstantno prate metapodaci se sakupl ja ju i to ni je sada već ništa novoal i možemo da se trudimo da iza sebe ostavl jamo malo manje nežel jenihmetapodataka i da ih takoreći čistimo iz podataka koje razmenjujemo Na srećupostoje programi koj i ovo dobro rade

Najpre je potrebno da vidimo koje sve metapodatke neki faj l sadrži kako bismo seuveri l i da ovi metapodaci stvarno postoje i da je faj l bezbedan nakon nj ihovogbrisanja

Ako koristite operativne sisteme GNULinuksa treba da iz terminala preuzmete iinstal irate program pod nazivom exiftool

sudo apt-get install exiftool

Ovaj program će nam pružiti uvid u sve metapodatke koje faj l sadrži Korišćenje jeiz terminala al i je zato veoma jednostavno samo ga pokrenite na sledeći način

exiftool File

i l i

exiftool putanjadofajlapočevodkorenogdirektorijuma

Dobićete prikaz metapodataka koje je program pronašao Sada je potrebno davidimo da l i je podatak bdquoprl javrdquo tj da l i ima u njemu nešto da se briše i da akoima iz njega sve nepotrebno obrišemo Tu će nam pomoći drugi program zvaniMAT (eng Metadata Anonymisation Toolkit) koga možete naći na sajtuhttps matboumorg i l i jednostavno za korisnike Ubuntua i Debi jana uSoftverskom centru i l i ga možete instal irati iz terminala

sudo apt-get install mat

MAT će proveriti da l i je podatak bdquoprl javrdquo i l i ne i za vas ga očistiti od nežel jenihmetapodataka

Kada očistite faj l on je spreman za del jenje sa drugima a vi ste bezbedni jer nikone može reći da je faj l potekao sa vašeg računara

To su samo metapodaci

40

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Autor Dejan Čugal j

GH Hardi bdquoPrava matematika nema uticaj na ratrdquo - odbrana matematičara1940 godina

Bi l Tat - britanski matematičar verovatno niste čul i za njega1942 godine je izveo ogroman poduhvat koj i je skratio rat dvegodine (barem po rečima Ajzenhauera) i spasio mi l ione životaNažalost njegova vel ičina je preminula 2002 godine obavi jenavelom tajne i nikada zvanično ni je priznato njegovo dostignuće

Tomi Flauers - bivši inženjer poštanskog saobraćaja pretvorio jematematičke ideje Tata u prvi računar a to ni je bio bdquoENIACrdquo1Preminuo je 1998 godine a pretpostavl jamo da nikada niste čul ini za njegovu vel ičinu

Ovi umni giganti bdquoBlečl i parkardquo omogući l i su Britani j i da dešifruje strogo poverl j ivumašinu koju je koristio Hitler da diriguje drugim svetskim ratom a to ni je bi labdquoENIGMArdquo nego nešto mnogo tajni je i značajni je Vel ika je verovatnoća da nistečul i ni za ovo Neki kažu da je to bio Hitlerov Blekberi (BlackBerry)

Izgubljeni heroji bdquoBlečli parkardquo

1 engl Electronic Numerical Integrator And Computer - prvidigitalni elektronski računar

Internet mreže i komunikacije

41

Broj 33

1939 godine bdquoBlečl i parkrdquo je postao ratni štab MI6 (britanske vojne obaveštajneslužbe) Do danas je procurelo u javnost i dokumentovano brojnim fi lmskimdokumentarcima samo da je tu Alan Tjuring uspeo da dešifruje nemačkumornaričku šifru poznatu kao bdquoENIGMArdquo i uvel iko doprineo pobedi saveznika a to jesamo deo priče koj i je ispričan

U Blečl i parku su bi la tri heroja AlanTjuring Bi l Tat i Tomi Flauers Od nj ihtroj ice jedino Alanu Tjuringu je priznat deozasluga za pobedu saveznika u Drugomsvetskom ratu Pregledom otkrivenihpodataka danas možemo da tvrdimo daje bdquoENIGMArdquo već sa početka drugogsvetskog rata bi la zastarela tehnologi ja Zbog toga je bi lo lako skinuti veo tajne sa

ovog uspeha heroja Blečl i parka

Izgubljeni heroji bdquoBlečli parkardquo

42

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Bi l Tat koj i je dešifrovao bdquoTANI sistemrdquo (TANI) i Tomi Flauers koj i je samo svojomintuici jom i znanjem sklopio prvi računar na svetu (bdquoKOLOSrdquo) u svrhu bržegdolaženja do informaci ja razbi jenog koda bdquoTANIrdquo tako da zastarelost šifrata budesvedena na minimum - radi l i su na novoj generaci j i mašina za šifrovanje Ovatehnologi ja je bi la prepoznata kao tehnologi ja budućnosti pa i danas iznadinformaci ja o tim tehnologi jama stoj i natpis bdquovrhunska tajnardquo (eng Top Secret) Upravo ovaj veo tajni oko šifrata bdquoTANIrdquo i prvog računara je rezultirao iskrivl jenjuistori je informatike

Za uspehe u prvim godinama rata je zaista zaslužno razbi janje bdquoENIGMArdquo šifrata ito ni je sporno al i krajem 1941 godine u etru planete se začuo novi zvuk To je bi lanova mašina za šifrovanje ni je bi la zasnovana na bdquoMorzeurdquo već je radi la naprincipu teleprintera

Jedna od kl jučnih ideja Hitlerovog ratovanja je bi la u vel ikoj mobi lnosti i brzomdelovanju trupa na terenu a da bi se to izvelo komunikaci ja je isto tako morala dabude u najmanju ruku putem radio signala

Razl ika je ogromna Razl ika je u kol ičini podataka koj i može da se prenese ovimbdquotajnimrdquo putem Prvi svetski rat je bio zaniml j iv jer su se šifrovane poruke baziralena rečima dok je Drugi u potpunosti otvorio vrata današnjoj kriptografi j i a to jematematika

Originalan nemački kocircdni naziv za ovaj šifrat bio je bdquoLORENCrdquo Britanska

Internet mreže i komunikacije

43

Broj 33

obaveštajna služba mu je dala nadimak bdquoTANIrdquo Čak ni dan danas ni je baš poznatokako je sve nastalo al i pouzdano se zna da je tajnu mašinu Hitler nazvaobdquoGehajmšrajberrdquo (nem Geheimschreiber) - mašina tajni

U srž i tehnologi ju šifrovanja bdquoLORENCrdquo šifrata nećemo ulaziti u ovom članku al iverujte nam na reč - ni je bi la jednostavna Može se pretpostaviti da je inspiraci jaŠenonovog 2 rada slučajnosti bi la upravo ova tehnologi ja iz Drugog svetskog rata

Ono čime se Treći rajh vodio je bdquosigurnardquo šifrovana veza koju niko ni je smeo dadešifruje Prenošenje šifrovanih poruka pomoću radio signala je dalo obaveštajnimslužbama mogućnost presretanja poruka poslatih radio talasima Da l i se ovo idanas dešava Imamo l i sigurnost u našim šifrovanim podacima današnj ice

Ono što je usledi lo nakon proboja ovog bdquoneuhvatl j ivogrdquo šifrata je upravo ono što jeprincip današnj ice kao neka vrsta protokola koj i mora da se ispoštuje uperfektnom šifarskom Šenonovom sistemu

1 NIKADA NIKADA NE KORISTITI DVA PUTA ISTI KLJUČ ZA ŠIFROVANJE2 NIKADA NIKADA KLJUČ NE SME DA SE ŠALJE ISTIM KOMUNIKACIONIM KANALOM

KAO PORUKA3 NIKADA NIKADA KLJUČ NE SME DA BUDE MANJ I NEGO ŠTO JE PORUKA (engl

2 Klod Elvud Šenon (eng Claude Elwood Shannon) (1916-2001) - Američkinaučnik i inženjer

Izgubljeni heroji bdquoBlečli parkardquo

44

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

one time pad) 4 NIKADA NIKADA NE SMEMO DA SAKRIVAMO SISTEM ŠIFROVANJA SVE MORA

DA JE OTVORENOG KOcircDA

Najveći propusti kriptologi je koj i su uočeni baš u Drugom svetskom ratu jesupokušaj sakrivanja sredstava koj im se generiše tajna poruka i nepoznavanjeŠenonovih krajnj ih granica informaci ja Kada kažemo bdquosredstvo i sakrivanjerdquomisl imo na algoritme Postavl ja se pitanje zašto je danas kriptologi ja sigurni ja negočetrdesetih i pedesetih godina prošlog veka

Danas uprkos tome što su algoritmi za kriptografi ju otvorenog kocircda tajnostinformaci ja je na višem nivou nego što je to bi lo dok je algoritam bio strogopoverl j iv Tajnost tajnih podataka se ne zasniva na tajnosti a lgoritama koj i generišutaj isti bdquotajni izlazrdquo (eng cipher text) nego u nemogućnosti matematičke inverznefunkci je koja bi šifrovan tekst otvori la Ovde se vidi da je svrha strukture otvorenogkocircda kao jednog od značajnih delova današnje kriptologi je ona koja ga činisigurnim i svima dostupnim

Sada kada se sa ove distance osvrnemo na Drugi svetski rat možemo videti kol ikosmo bi l i bl izu apokal ipse Naime Albert Ajnštajn je već 1944 godine imao urukama recept za nuklearnu bombu Šenon je mogao već u to vreme da nampredoči 100 siguran šifrat (tzv Hitlerovu super šifru) a l i ipak sreća nas jeposluži la da čovečanstvo tada ni je bi lo spremno da upotrebi svu raspoloživutehnologi ju

Albert Ajnštajn bdquoČetvrti svetski rat će se voditi tol jagamardquo

Zaboravl jeni heroj i Blečl i parka iako su odigral i važnu ulogu u pobedi saveznika usvetskom ratu postal i su žrtve bdquotop secretrdquo doktrine potpuno su zaboravl jeni inestal i su iz istori je

Zakl jučak ovog članka je da je ideologi ja otvorenog kocircda sasvim sigurno tu da nampomogne i da otvori vrata ka većoj sigurnosti novim idejama i kval itetu sameinfrastrukture sistema koju svi zajedno razvi jamo

Internet mreže i komunikacije

45

Broj 33

Autor Nikola Hardi

NabrajanjaBez brojeva

Za nabrajanje pojmova u Bimeru (eng Beamer) koristi se okruženje itemize aunutar tog okruženja možemo da dodajemo nove stavke pomoću item Primerizgleda ovako

beginitemizeitem Stavka Aitem Stavka Bitem Stavka C

enditemize

Sa brojevima

Postoje situaci je kada uz nabrajanje treba da stoje i redni brojevi - za to se koristienumerate okruženje a nove stavke se takođe dodaju pomoću item

beginenumerateitem Redni broj 1item Redni broj 2item Redni broj 3

endenumerate

prezentaci ja

Beamer (4 deo)

Sam svoj majstor

46

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

DefinicijeTreća situaci ja je nabrajanje parova termin - definici ja U tom slučaju se koristiokruženje description Već možete da pretpostavite kako se dodaju nove stavke

Primer

begindescriptionitem[Pojam A] Definicija izmišljenog pojma Aitem[Pojam B] Definicija izmišljenog pojma Bitem[Pojam C] Definicija izmišljenog pojma C

enddescription

Ostala podešavanja i zanimljivostiSva prethodna okruženja mogu da budu ugneždena jedno unutar drugog dotrećeg nivoa Treba biti pažl j iv jer sla jdovi vrlo lako mogu da postanu nečitl j ivi Osim toga moguće je izabrati i format oznake i l i rednih brojeva - na primer ovako

beginenumerate[I]beginenumarate[a)]

Takođe moguće je upravl jati pojavl j ivanjem pojedinih stavki na slajdovima Drugimrečima možemo da odredimo da se nabrajanja postepeno otkrivaju tako što ćemouz stavku dodati lt1-gt odnosno broj od kojeg slajda žel imo da se ta stavkapojavl ju je Tada će jedno nabrajanje biti bdquorazvučenordquo na više slajdovaJednostavni ja mogućnost je da u zaglavl je okruženja dodamo +- što znači dažel imo da se svakim slajdom otkriva po jedna nova stavka iz nabrajanja Znak bdquo-rdquo uoba primera znači da žel imo da se stavka pojavi na sledećem slajdu i da ostane

Sam svoj majstor

47

Broj 33

prisutna Možemo da izostavimo znak bdquo-rdquo i tada će stavka biti prisutna samo najednom slajdu i l i da napišemo raspon slajdova u koj ima žel imo da ta stavka budeprisutna

Rad sa kolonama i blokovimaDo sada su svi primeri podrazumeval i da je sadržaj napisan preko cele širineslajda al i Bimer (eng Beamer) ima i jednostavne mehanizme za razmeštanjesadržaja po kolonama Za rad sa kolonama se koristi okruženje columns unutarkojeg možemo da dodajemo nove kolone pomoću columnširina Sadržaj jemoguće potom pisati i van okruženja sa kolonama

U paru sa kolonama često se sreće i okruženje block koje se parametrizujenaslovom Primerom su i lustrovani i okruženje column i okruženje block

beginframebegincolumns

column05textwidthbeginblockNaslov levog blokaSadržaj u prvoj (levoj) koloni endblock

column05textwidthbeginblockNaslov desnog blokaSadržaj u drugoj (desnoj) koloni

endblockendcolumns

beginblockVan kolona

Beamer

48

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Tekst koji se nalazi ispod kolonaendblock

endframe

TabeleIako se u radu sa prezentaci jama sadržaj najčešće može uredno rasporeditipomoću kolona i nabrajanja nekada to ni je dovol jno jer su tabele pravi formatBimer podržava standardno Lateh (LaTeX) okruženje za rad sa tabelamaOkruženje za rad sa tabelama se zove tabular Pri kreiranju nove tabele moguće jepodesiti koje kolone će biti razdvojene l ini jom i da l i će nj ihov sadržaj biti centrirani l i uz levu i l i uz desnu ivicu Dodavanje novog reda se jednostavno radidodavanjem hline Lateh pruža zaista jako fleksibi lan rad sa tabelama i sigurno ćedoskočiti svim mogućim i nemogućim zamisl ima Potražite bi lo koje Lateh uputstvoza rad sa tabelama i radiće i sa Bimerom

beginframebegintabular | c | c | c | c |

hlineamp Ponedeljak amp Utorak amp Sreda hline

1 amp 16 amp 32 amp 64 hline2 amp 16 amp 128 amp 1024 hline3 amp 16 amp 512 amp 4096 hline

endtabularendframe

Sam svoj majstor

49

Broj 33

Beamer

Teoreme i istaknut tekstU nastavi su česta izlaganja teorema nj ihovih dokaza i primera U Bimer jeugrađena podrška za elegantno predstavl janje ove trojke Mehanizam takođepodržava postepeno otkrivanje sadržaja sla jda tako da slušaocima ne bude odmahotkriven dokaz teoreme Mehanizam za postepeno otkrivanje se kao i kodnabrajanja postiže pomoću bdquolt1-gtrdquo konstrukci je Evo kako to izgleda

beginframeframetitlePrimer teoreme

begintheoremlt1-gt Teorema kaže da su beamer prezentacijezanimljive

endtheorem

beginexamplelt2-gt Ovaj kod kreira slajd beamer prezentacijeendexample

beginprooflt3-gt Čestitamo stigli ste do kraja serijala o pravljenju beamer prezentacija

endproofendframe

50

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Za krajOvim člankom završavamo seri ja l o Bimeru Nadamo se da smo uspel i da vaszainteresujemo za ovu vrlo korisnu klasu Lateha Trudi l i smo se da vamprezentujemo najvažni je delove Bimera koje ćete najčešće koristiti pri l ikomkreiranja svoj ih prezentaci ja

Napominjemo još jednom da je Bimer samo jedna od klasa Lateha što znači da i zaBimer važi sve ono što ste već mogl i da pročitate u ovom časopisu kad smo pisal iseri ja l bdquoUvod u LaTeXrdquo (LiBRE brojevi 17 do 21) Štaviše ovaj seri ja l o Bimeru jebio nastavak upravo tog seri ja la U ovom seri ja lu nismo pisal i o samomformatiranju teksta u prezentaci jama jer se podrazumeva da važe ista pravi la kao iu Latehu a o tome smo pisal i u prethodnom seri ja lu

Hvala vam što ste prati l i ovaj seri ja l i žel imo vam puno uspeha u kreiranju Bimerprezentaci ja

Sam svoj majstor

51

Broj 33

Autor Nenad Marjanović

Kada smo se upoznal i sa podešavanj ima sistema i umrežavanjem vreme je za našprvi Biglbon Blek (BBB - eng BeagleBone Black) projekat Svakom od nas će ovajizazov dati razl ičite ideje a jedna od nj ih može biti i zaštita privatnosti internetkorisnika Nažalost u Srbi j i ne postoj i ni jedan izlazni tor server (eng node) i to jepomalo tužna sl ika s obzirom da govorimo o populaci j i od sedam mil ionastanovnika Al i ovu sl iku možemo promeniti udruženim snagama i za početakkreiranjem Tor transfer i izlaznog servera U ovde prikazanom grafikonufokusiraćemo se na bdquoRauter Brdquo tačku odnosno transfer server konfiguraci ju

BeagleBone Black Rev C

Vodič od prvog dana (3 deo) ndashBeagleBone Black kao Tor relej

Hardver

52

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Tor predstavl ja mrežu servera koj i se povezuju radi bol je enkripci je podataka izaštite IP adrese korisnika Naš ci l j je da danas postanemo deo ovog predivnogprojekta i da se nađemo na svetskoj karti Tor servera

Brzina interneta i zakonske regulativePotrebno je imati na umu nekol iko bitnih stvari

1 Naš server = naša odgovornost2 Obavezno naznačite da ste vi administrator a ne korisnik istog servera3 Da posedujete internet brzinu od 2 Mbs

Ako ispunjavamo tri navedena pravi la i odgovornosti možemo se posvetitiadministrativnim poslovima

Instalacija i podešavanjaU ovom primeru koristimo Debi jan Vizi (eng Wheezy) odnosno Debi jan 7 verzi juna našem BBB uređaju Vi možete testirati i druge Linuks platforme Prvododajemo izvornu bibl ioteku u etcaptsourceslist faj l pokretanjem sledećekomande u terminalu

echo deb httpdebtorprojectorgtorprojectorg wheezy main gt etcaptsourceslistdtorlist

Zatim dodajemo izvorni kl juč vršimo ažuriranje sistema i instal iramo tor i tor-arm(Tor monitoring sistem)

gpg --keyserver keysgnupgnet --recv 886DDD89gpg --export A3C4F0F979CAA22CDBA8F512EE8CBC9E886DDD89 | sudo apt-keyadd -apt-get updateapt-get install debtorprojectorg-keyring -yapt-get install tor tor-arm egrep screen -y

Ovim smo uspešno završi l i instalaci ju Tor servera i sistema za monitoring odnosnonadgledanja našeg Tor servera Sledećom komandom radimo na podešavanj imaTor servera koja se nalaze u etctortorrc faj lu Obratite pažnju i izvršite potrebne

Hardver

53

Broj 33

izmenu u pol j ima IP adresa (eng Address) nadimka (eng Nickname) i kontaktpodataka (eng ContactInfo) pre pokretanja ove komande Kopiramo i pokrećemokomandu u celosti u terminalu

egrep -v ^(|$) etctortorrcORPort 443Address 19216811Nickname LibreTorRelayRelayBandwidthRate 100 KBRelayBandwidthBurst 120 KBContactInfo ltvi at gmail dot comgt irPort 8080DirPortFrontPage etctortorhtmlExitPolicy reject

Detal je o svim vrednostima nećemo iznositi u ovom broju LiBRE časopisa al ićemo o nj ima pisati u sledećem u kome ćemo pričati o zaštiti Tor servera imogućnosti podešavanja određenih izlaznih pravi la (eng ExitPolicy)

Nakon ovoga možemo primetiti da se u folderu etctor ne nalazi torhtml faj l Ovaj faj l ni je od vel ikog značaja i možete ga l ično napraviti i l i preuzeti jednu kopi ju- naprimer sa sledeće lokaci je

cp usrsharedoctortorhtml etctortorhtml

Opcije i Tor Arm monitoringDa bismo ispravno koristi l i Tor Arm potrebno je urediti još jednom etctortorrcfaj l i restartovati servis

echo -e ldquoDisableDebuggerAttachment 0n AvoidDiskWritesrdquo gtgt etctortorrcsudo service tor reload

Ukol iko žel ite koristiti Tor Arm za nadgledanje aktivnosti na serveru pokreniteprogram screen kl iknite na bdquoEnterrdquo i kucajte sudo -u debian-tor arm Naekranu ćete imati sl ičan prikaz

BeagleBone Black

54

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Hardver

55

Broj 33

Da bismo napusti l i screen program koristimo Ctrl + a + d i na taj način kada sesledeći put pri javimo na server kucamo samo screen -r u terminalu - i naći ćemose ponovo na čuvenom Tor Arm monitoring ekranu

Nakon svake promene konfiguracionih faj lova ako slučajno nismo nešto podesi l ikako treba restartujemo servise

U sledećem broju časopisa govorićemo o minimalnim podešavanj ima ikonfigurisanju izlaznog Tor servera (eng Tor Exit Node) opci jama sigurnosti isl ičnim detal j ima u vezi sa našim prvim projektom Do čitanja u sledećem broju

BeagleBone Black

LUGoNS BarCamp 4subota 7 mart 2015 godine

Četvrti LUGoNS-ov Barkemp (BarCamp) održaće se u Novom Sadu usubotu 7 marta 2015 godine na Fakultetu tehničkih nauka sa početkomu 12 časova

Ulaz je slobodan

Poziv za predaju radovaLUGoNS poziva sve zainteresovane da pošal ju svoje radove (predavanjaprezentaci je radionice i diskusi je) do 28 februara 2015 godine

Oblasti iz koj ih možete da pri javite vaše radove su

bull Slobodan softverbull Zaniml j iv hardverbull Hakerski zakonibull Sigurnosne noćne morebull Anonimnost i privatnost na internetubull Duboki veb (eng Deep Web)bull Soci ja lne mrežebull Soci ja lni inženjeringbull Hakovanje mobi lnih uređajabull Internet u oblaku (eng Clouds) ndash hakovanje razbi janje i neočekivano korišćenjebull DPI (eng deep packet inspection)bull Mreža i mrežna neutralnost ndash vlasništvo cenzura nadmudrivanje i pol itika bdquodefaktordquo standarda

bull Programiranje i programski jezici

Nemojte se ustručavati i slobodno nam se javite ako imate rad na gore navedenei l i sl ične teme koj i smatrate interesantnim

Stranica za predaju radova nalazi se na https events lugonsorgp=1658

Page 6: LiBRE 33 Lat

6

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

21 januar 2015

Kanonikal pokrenuo verzijuUbuntu Kora za Internet stvariKanonikal kompani ja zadužena za razvoj UbuntuLinuks distribuci je pokrenula je svoju verzi juUbuntu Kora (Core) za Internet stvari (Internet ofThings)

Koristan l ink http tcotN3VmZe5PK

26 januar 2015

Masovno nadgledanje pretiljudskim pravimaU evropskom izveštaju masovno špi juniranje pretidigitalnoj sigurnosti i l judskim pravima

Koristan l ink http tco9gcrmXw44q

27 januar 2015

Jutjub koristi HTML5 kaopodrazumevani načinreprodukcijeJutjub je zamenio Fleš tehnologi ju novi jomotvoreni jom i napredni jom tehnologi jom - HTML5koja će se koristiti kao podrazumevani načinpuštanja video sadržaja

Koristan l ink http tcozBpJh8Op6x

Vesti

7

Broj 33

28 januar 2015

GHOST - bezbednosni problemGHOST - novi bezbednosni problem u GNU-ovoj Cbibl ioteci koj i dovodi u opasnost sve apl ikaci jekoje koriste funkci je gethostbyname i gethost-byname2 i omogućava udal jenom napadaču dadobi je dozvole koje ima korisnik koj i izvršava tuapl ikaci ju

Koristan l ink http tcoGDYKsH2nOo

1 februar 2015

Pajrat Bej se vratioNajpopularni j i torent sajt Pajrat Bej (The PirateBay) se ponovo vratio posle dvomesečnogperioda kada je bio nedostupan

Koristan l ink http tcorSAPCVXWJi

2 februar 2015

Rasberi-Paj 2 je izašaoDostupan je u prodaj i Rasberi-Paj 2 (Raspberry PI2) sa 4 procesorska jezgra

Koristan l ink http tcoRGlOdoeioc

Vesti

8

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

3 februar 2015

Američka vojska otvara svojprogram za detekciju napadaAmerička vojska je odluči la da svoj program za de-tekci ju napada postavi na Githab i time omogućicelom svetu da koriste softver koj i su oni koristi l i zadetekci ju napada na mrežu ministarstva odbraneOni ovim potezom očekuju povratnu informaci ju odl judi koj i ne rade u vladi i nadaju se unapređenjusvog programa

Koristan l ink http tcov3PYlKF2sz

6 februar 2015

GPG u opasnostiVerner Koh (Werner Koch) programer koj i jezadužen za razvoj GPG-a (Dži-Pi-Dži engl GNUPrivacy Guard) softvera koj i svi koristimo zaenkripci ju kako naše elektronske pošte tako i ostal ihbitnih podataka polako ostaje bez novčanihsredstava Pozivaju se svi zainteresovani i oni koj i suu mogućnosti da pošal ju donaci ju u vidu novca

Koristan l ink http tcojGac5emwPX

9 februar 2015

Arduino razvojno okruženje -novo izdanjeIzašlo je novo razvojno okruženje za Arduino uverzi j i 1 6

Koristan l ink http tco4A0pFcIsVf

Vesti

9

Broj 33

Autor Branimir Karadžić

bgfx je rendering bibl ioteka otvorenog koda sa podrškom za više razl ičitih grafičkihAPI-ja 1 (eng Application Programming Interface) i operativnih sistema 2 Bibl iotekasluži za jednostavni j i pristup grafici i razvoj igara na više platformi Najvećiproblem sa kompjuterskom grafikom je što postoj i više razl ičitih API-ja koj i kada sekoriste direktno onemogućavaju portovanje igara na druge platforme Praveći igrukoja pristupa samo bgfx bibl ioteci a ne direktno API-u autor igre omogućava sebida tu igru na jednostavan način može prebaciti na bi lo koj i podržan operativnisistem odnosno platformu

Predstavljamo

bgfx - Cross-platform renderinglibrary

10

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

U početku bgfx je bio samo hobi projekat i zato ima nemaštovito ime Bi la je tosamo jedna od mnogih bibl ioteka koje sam napravio za pravl jenje igara Kada samradio na jednoj igri postojala je potreba da se igra prebaci sa starog DX9 (engDirectX 9) renderinga na OpenGL (engl Open-dži-el ) pa sam tom pri l ikom izvukaodeo moje hobi bibl ioteke za renderovanje i zapakovao je kao cel inu Posle uspešneprimene ove bibl ioteke u moj im projektima odlučio sam da je objavim kao projekatotvorenog koda na Githabu (eng Github) pod l icencom BSD 2-clause Po mommišl jenju ovaj deo renderinga je trebalo već odavno da bude rešen problem kao ida bude moguće da se igre bez veće muke izdaju na bi lo kojoj platformi po žel j iautora Namenjena je prevashodno manj im autorima koj i žele da imaju potpunukontrolu nad svoj im kodom bez obzira na platformu na kojoj žele da objave igruKod ovakvih komerci ja lnih proizvoda uvek postoje neka ograničenja a ako firmeizgube interes za proizvodom mogu ostaviti autore na cedi lu bez podrške iodržavanja Sa druge strane projekti otvorenog koda omogućuju saradnju autora iunapređenje funkcionalnosti projekta na zadovol jstvo svih

Upotrebom bgfx bibl ioteke korisnik može da zanemari konkretnu implementaci jurazl ičitih tehnologi ja kao što su OpenGL OpenGL ES i Direct3D bez kompromisa saperformansama Ova bibl ioteka ni je tanka apstrakci ja i l i emulator nekogpostojećeg API-ja tipa Guglovog Engl (eng ANGLE) projekta koj i emul ira OpenGL

Predstavljamo

11

Broj 33

ES preko Direct3D-a i l i Valvov TuDži-El (eng ToGL) koj i emul ira Direct3D 9 prekoOpenGL-a nego zaseban API višeg nivoa Iako je u prošlosti bi lo sl ičnih projekatasvi oni su uglavnom imal i pretenzi ju da budu endžin (engine) i l i frejmvork koj i bitvorci igara koristi l i kao takav Takav pristup donosi dosta kompl ikaci ja i veoma jeteško takav projekat integrisati sa postojećim kodom Iz ovog razloga bgfx projekatnema pretenzi je da bude ceo endžin i l i frejmvork nego samo bibl ioteka koju svakomože lako da integriše u sopstveni projekat

bgfx bibl ioteka se trenutno koristi u nekol iko komerci ja lnih igara al i ima i dostainteresovanja za projekat kao osnove za pravl jenje korisničkih apl ikaci ja pa čak ialata za programere

Na projektu je do sada radi lo oko deset l judi Uglavnom su dodaval i podršku zanove platforme primere i l i su povezival i bibl ioteku sa drugim jezicima Što sebuduće saradnje na ovom projektu tiče sve je dobrodošlo čak i sȃmo korišćenjebibl ioteke a zahtevi za uvođenje novih mogućnosti unapređuju samu bibl ioteku

bgfx

12

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Predstavljamo

13

Broj 33

1 Podržava grafičke API-je

bull Direct3D 9bull Direct3D 11bull OpenGL 2 1bull OpenGL 3 1+bull OpenGL ES 2bull OpenGL ES 3 1bull WebGL 1 0

2 Podržava platforme

bull Android (14+ ARM x86 MIPS)bull asm jsEmscripten (1250)bull iOSbull Linuks (x86 x86_64)bull Nejtive klajent (Native Client PPAPI37+ ARM x86 x86_64 PNaCl)

bull OS Iks (OSX 109)bull Rasberi-paj (RaspberryPi - ARM)bull Vindouz (Iks-pe Vista 7 8 10)bull Vin-ar-ti (WinRT WinPhone 80+ )

bgfx

14

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Autor Stefan Nožinić

UvodrEFInd je softverska apl ikaci ja za EFI (Extensible Firmware Interface) sisteme kojaomogućava izbor više operativnih sistema na jednostavan način Ovo je samoupravnik buta (boot) i u ovom broju vam predstavl jamo o kakvom projektu je reč ikako se može primeniti

Šta je (U)EFIPre nego što predstavimo sam projekat trebalo bi prvo da skrenemo pažnju idetal jni je da predstavimo problematiku EFI je nastao kao zamena za dosadašnj iBIOS (Basic InputOutput System) i razvi la ga je kompani ja Intel Ovaj pristup jekasni je zamenjen UEFI standardom EFI tehnologi ja ima prednost u slučajevimakao što su

bull Pokretanje sistema na diskovima preko 2TB memori je korišćenjem GPTtehnologi je

bull Nezavisnost od specifične arhitekture procesorabull Modularan dizajnbull Dobro okruženje pre učitavanja operativnog sistema što podrazumeva i mrežnupodršku

Tehnologi ja omogućava upotrebu 32-bitnih i 64-bitnih adresa na procesorima koj ito podržavaju Rani je BIOS tehnologi ja to ni je omogući la već se uvek koristi la 16-bitna implementaci ja iz istori jskih razloga

Predstavljamo

15

Broj 33

Particiona šemaEFI tehnologi ja ima drugači ju šemu partici ja Dok je stari pristup podržavao samoMBR (Master Boot Record) šemu nova tehnologi ja podržava GPT šemu kojaomogućava veći broj primarnih partici ja Sa starim pristupom taj broj bio jeograničen na četiri primarne partici je od koj ih je svaka morala da ima kapacitetmanj i od 2TB

AplikacijeUEFI podržava izradu apl ikaci ja koje bi se pokretale nezavisno od operativnogsistema Ove apl ikaci je se mogu naknadno instal irati Primer takvih apl ikaci ja supokretači (loader) operativnih sistema kao i upravnici butovanja

EFI sistemska particijaEFI podržava posebnu partici ju za smeštanje raznih potrebnih informaci ja kao štosu potrebni podaci za rukovanje računarom i specifične apl ikaci je Ova partici ja jenajčešće FAT32 sistem datoteka

rEFInd

16

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

But menadžer i but louder - ima razlikeOd popularizaci je GRUB upravnika mnogi korisnici su ostal i bez objašnjenja kakvaje razl ika između but loudera (boot loader) i but menadžera (boot manager) Ovose dešava jer GRUB pruža obe usluge u sklopu jednog programa pa se time teževidi razl ika između ova dva pojma But menadžer je upravnik pomoću kojeg jemoguće izabrati operativni sistem za pokretanje On ne zna ništa speci ja lno ooperativnom sistemu pa time ne zna ni kako da ga pokrene On samo zna datreba da pokrene but louder za taj sistem Kada je sistem izabran pokreće sespecifičan but louder za taj sistem koj i je zadužen za dal j i proces pokretanjakernela Za razl iku od GRUB upravnika rEFInd pruža samo usluge but menadžerašto u početku može zvučati poražavajuće za ovaj projekat Kada uzmemo u obzirda većina sistema danas ima but louder u sklopu kernela (ukl jučujući i Linuks odnovi j ih izdanja) ovaj problem je prevaziđen

Predstavljamo

17

Broj 33

InstalacijarEFInd postoj i kao deb i kao rpm paket al i postoj i i zapakovan kao zip arhivaZahval ju jući tome paket je moguće instal irati upotrebom dpkg komande nadistribuci jama baziranim na Debi janu kao i upotrebom rpm komande nadistribuci jama koje koriste taj način pakovanja paketa Za Ubuntu postoj i i PPArepozitori jum pa rEFInd može biti instal iran na sledeći način

sudo apt-add-repository pparodsmithrefindsudo apt-get updatesudo apt-get install refind

Nezavisno od toga koj i način od gore opisanih koristite rEFInd će automatski bitiprebačen na ESP i biti postavl jen kao podrazumevani upravnik

KonfiguracijarEFInd bi trebalo da vam pruži zadovol javajuću funkcionalnost bez dodatnekonfiguraci je posle instalacionog procesa On će automatski detektovati loudereoperativnih sistema korišćenjem pretrage po svim partici jama koje prepozna Uslučaju da ste napredni j i korisnik i da žel ite da modifikujete ponašanje rEFInda tomožete uraditi izmenom njegove konfiguracione datoteke Postoj i g lobalnakonfiguraci ja i konfiguraci ja za svaki sistem posebno Ovaj tekst bi postao previšedugačak kada bismo ulazi l i u detal je same konfiguraci je pa vam zatopreporučujemo ako imate potrebu za dodatnom konfiguraci jom da posetitedokumentaci ju projekta i l i ako imate neke nedoumice da kontaktirate s namapreko naše e-pošte

Za krajŽelel i bismo da ovaj tekst zakl jučimo ocenom da je ovaj projekat dosta zaniml j ivda pruža zadovol javajuću funkcionalnost i da omogućava korisnicima koj i koristeovaj sistem pokretanja lako pokretanje svoj ih operativnih sistema Još jednomžel imo da vam skrenemo pažnju da nam se obratite i ukažete ako smo nešto važnopropusti l i da pomenemo i l i ako nam se negde potkrala greška

Korisni l ink http wwwrodsbookscomrefind

rEFInd

18

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Autor Nikola Hardi

Opšte je poznato da su računari dobri u radu sa brojevima Međutim vremenom suse i potrebe korisnika i alati za programiranje računara razvi ja l i i rad sa drugači j imtipovima podataka je postao uobičajen i znatno jednostavni j i nego rani je Svi smoimal i pri l iku da radimo sa programima za obradu fotografi ja video materi ja la i l izvučnih zapisa Multimedi ja je ipak tema koja prevazi lazi jedan uvodni kurs o C-ual i do kraja ovog seri ja la ćemo se dotaći i tih tema Za početak osvrnućemo se narad sa tekstualnim podacima na C način

Stringovi na C načinDefinici ja tekstualnog podatka u sferi računarstva se uglavnom svodi na to da jetekst niz karaktera a karakteri su znakovni simbol i Iako imamo mogućnost daradimo sa tekstom i l i multimedi jom računari ipak razumeju samo brojeve pamoramo tako da im predstavimo i tekst Postoje razni standardi kako se pojedinikarakteri predstavl ja ju u memori j i računara između ostalog najpoznati j i su ASCIIEBCDIC UTF i td EBCDIC je standard koj i je prisutan u Eplovom (eng Apple) svetu iviše nema tol iko važnu ulogu ASCII je standard koj i je vrlo prisutan i danas UTF jenastao kao proširenje ASCII standarda javl ja se u više vari janti i uvodi podršku zapisma razl ičita od abecede (kinesko japansko ćiri l ica arapsko i mnoga druga)

Važno je napomenuti da je originalni ASCII standard propisivao 7 bitova za jedankarakter što je dalo prostora za 128 karaktera Među tim karakterima se nalazecifre mala i vel ika slova engleskog alfabeta i niz kontrolnih karaktera Kontrolnikarakteri su oznake za novi red prazno mesto tabulator upravl janje štampačima(vraćanje glave štampača na početak) rad sa terminal ima (alarm i l i obaveštenje

Kako da

Uvod u programski jezik CRad sa stringovima (9 deo)

19

Broj 33

da se nešto dogodi lo) ASCII standard je proširen na 8 bitova odnosno ceo jedanbajt i sada podržava 256 karaktera Potražite na internetu termin bdquoASCII tabelardquo dabiste stekl i uvid u to kako izgleda tzv tabela ASCII karaktera

Rad sa pojedinačnim znakovima ne obećava mnogo Postoj i realna potreba zaradom sa rečima rečenicama l ini jama teksta itd Podaci koj i se sastoje od više odjednog karaktera se u domaćoj l i teraturi nazivaju znakovnim niskama madaodomaćen je i naziv bdquostringrdquo koj i je i mnogo češće u upotrebi U programskomjeziku C se stringovi predstavl ja ju običnim nizovima karaktera (char niz[]) a krajteksta se označava NULL karakterom odnosno speci ja lnim znakom 0 či jabrojevna predstava je pogađate nula Ovakva predstava tekstualnih podatakanosi sa sobom i pojedine kompl ikaci je Gotovo svi savremeni jezici poznaju tipstringa dok su u C-u stringovi ipak samo obični nizovi

Da se podsetimo nizovi u C-u su zapravo pokazivači na deo u memori j i Kadapokušamo da pristupimo jednom elementu niza tada se vrši operaci jabdquodereferenciranjardquo sa zadatim odstupanjem Sledi nekol iko primera koj i i lustrujurad sa nizovima na primeru nizova karaktera

char niz1[] = zdravoniz1[0] = Z

char niz2[5]niz2[0] = 0niz2[1] = kniz2[2] = 0

Pri deklaraci j i niza 1 ni je zadata dužina zato što je u jednom izrazu zadata iinici ja l izaci ja niza koja glasi ldquozdravordquo Prevodi lac može sam da zakl juči kol ikomemori je je potrebno

U drugom primeru je kreiran niz karaktera dužine 5 Međutim popunjena su samoprva tri mesta Primećujete razl iku između prvog i trećeg elementa Prvi je cifra 0(uokviren je navodnicima) a treći je brojčana vrednost 0 koja označava krajstringa

Može se primetiti još jedna razl ika u data dva primera U prvom primeru sukorišćeni dvostruki navodnici dok su u drugom korišćeni jednostruki Razlog za to

Uvod u programski jezik C

20

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

je što se znakovni nizovi koj i su uokvireni dvostrukim navodnicima smatrajustringovima i podrazumevano im se dodaje bdquoterminatorrdquo odnosno znak NULL koj ioznačava kraj stringa Jednostruki navodnici se iskl jučivo koriste za predstavl janjepojedinačnih karaktera Ovo znači da zapisi ldquoardquo i a nisu jednaki Prvi zapis jedužine 2 jer ima i znak NULL koj im je završen

Ispisivanje i učitavanje stringovaPre nego što nastavimo dal je biće objašnjen jednostavan način za ispisivanje iučitavanje stringova pomoću standardnog ulazaizlaza Da se podsetimobibl ioteka za standardni ulazizlaz (ispis podataka u konzol i odnosno terminalu) jestdioh Ukol iko se koristi formatirani ispis potrebno je funkci jama printf() iscanf() proslediti format string koj i sadrži speci ja lan znak s čime je označenoda žel imo da ispišemo znakovni niz sve do NULL karaktera Drugi način jeupotrebom funkci ja puts() gets() i getline() iz bibl ioteke stringh Sledi primer

include ltstdiohgt include ltstringhgt int main()

char niz1[] = Zdravo svete

printf(sn niz1)

scanf(s niz1)puts(niz1)

return 0

Može se primetiti da je u slučaju funkci je printf() potrebno naglasiti speci ja lnimkontrolnim karakterom n da nakon ispisa treba preći u novi red Funkci ja puts() topodrazumevano radi

Za ove i sve druge funkci je dodatnu pomoć je moguće pronaći u Linuksovim manstranicama u odel jku 3 koj i je posvećen standardnim bibl iotekama Recimo mangetline sadrži detal jno uputstvo o funkci j i getline()

Kako da

21

Broj 33

Kopiranje stringovaKao što je u prethodnom odel jku napomenuto stringovi su u C-u samo običninizovi To znači da sledeći kod verovatno neće uraditi ono šta bi bi lo očekivano

niz1 = niz2

Ovime smo pokazivaču niz1 bdquorekl irdquo da pokazuje tamo gde i pokazivač niz2 Efektivno oni sad pokazuju na isti tekst međutim ako izmenimo niz1 to će seodraziti i na niz2 a važi i obrnuto Ovime smo dobi l i samo dva pokazivača na istideo memori je a uglavnom to ni je bio ci l j

Drugi način kako bismo sadržaj drugog niza mogl i da kopiramo u prvi niz je petl jakojom bismo kopiral i element po element Pošto je operaci ja kopiranja stringovavrlo često potrebna postoj i standardna bibl ioteka za rad sa stringovima koja sezove stringh a funkci ja za kopiranje stringova je strcpy()

strcpy(niz1 niz2)

Dati primer kopira sadržaj niza 2 u niz 1 Kopira se element po element sve dok seu nizu 2 ne naiđe na NULL karakter Ovakvo kopiranje (element po element) seinače u stranoj l i teraturi naziva i bdquodeep copyrdquo i vrlo često se sreće u radu sastrukturama podataka gde je potrebno obići celu strukturu podataka i svakielement kopirati a strukturu opet izgraditi u drugom delu memori je

Zaniml j ivo je što je kopiranje stringova moguće pojednostaviti ukol iko definišemonovi tip podatka kao strukturu koja sadrži niz karaktera i potom izvršimo kopiranjeOvo je trik koj i se uglavnom ne koristi u praksi i spomenut je samo kaozaniml j ivost

include ltstringhgt struct str char niz[50]

int main()

struct str s1struct str s2

Uvod u programski jezik C

22

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

strcpy(s1niz zdravo)s2 = s1

s2niz[0] = Z

puts(s1niz)puts(s2niz)

return 0

Kreirana je struktura str koja sadrži pol je niza karaktera pod nazivom niz Pozivomfunkci je strcpy() kopiramo string ldquozdravordquo u s1 čime smo bdquonapuni l irdquo sadržajobjekta s1 Potom je izvršena redovna dodela čime je sadržaj objekta s1 kopiran us2 Zatim je izmenjen samo prvi karakter objekta s2 i oba stringa su ispisanaPrimećujete da su kopirani svi znakovi a da je izmenjen samo drugi objekatZaniml j iv trik

Poređenje spajanje i pretraga stringovaDruga vrlo česta situaci ja je poređenje dva stringa Ukol iko bi poređenje bi loizvršeno upotrebom redovnog operatora za poređenje == tada bi u stvari bi lepoređene samo adrese na koje pokazuju pokazivači tih stringova jer da sepodsetimo stringovi su u C-u samo obični nizovi Ispravan način za poređenje dvastringa je pozivanjem funkci je strcmp() či ja je povratna vrednost 0 ukol iko su jojprosleđeni stringovi sa jednakim sadržajem

include ltstringhgt int main()

char niz1[] = zdravochar niz2[] = zdravo

if( strcmp(niz1 niz2) == 0)puts(Stringovi su jednaki)

elseputs(Stringovi nisu jednaki)

return 0

Kako da

23

Broj 33

Funkci ja strcmp() poredi svaki element prosleđenih nizova pojedinačno a dobraje vežba implementiranje nove funkci je strcmp() koja će unutar petl je da porediodgovarajuće elemente prosleđenih nizova i potom vratiti rezultat 0 ukol iko su svielementi jednaki Potrebno je pripaziti na situaci ju kada su stringovi razl ičitihdužina

U svetu računara spajanje dva sadržaja se zove konkatenaci ja Odatle i nazivfunkci je za spajanje dva stringa strcat() Važno je uveriti se da je string u koj i sedodaje sadržaj dovol jno vel ik da ga prihvati inače može da dođe do nežel jenogprepisivanja u memori j i uništavanja drugih podataka i neispravnog ponašanjaprograma

Pretraga unutar stringa se može obaviti funkci jom strstr() Ova funkci ja kaoparametre očekuje pokazivač na niz karaktera (string) u kojem je potrebno pronaćistring koj i je prosleđen kao drugi parametar Povratna vrednost je pokazivač nadeo memori je gde se žel jeni string prvi put pojavio

Sledi malo opširni j i primer koj i i lustruje spajanje pretragu i kopiranje stringova

include ltstringhgt int main()

char niz_a[50] = LiBRE je char niz_b[] = najbolji casopischar niz_c[] = e-magazin

strcat(niz_a niz_b)puts(niz_a)

char cilj = strstr(niz_a casopis)strcpy(cilj niz_c)

puts(niz_a)

return 0

Uvod u programski jezik C

24

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Pretvaranje tipova podataka u stringove ipretvaranje iz stringovaPretvaranje podataka iz jednog tipa u drugi i l i kastovanje (eng type casting) se zavećinu tipova vrši jednostavno pisanjem tipa u zagradama na primer (int)523 Stringovi su i po ovom pitanju drugači j i Postavl ja se pitanje šta pretvoriti ucelobrojni tip - da l i adresu na koju pokazuje pokazivač niza koj i predstavl ja stringPrvi element Šta ako taj string ni je broj Predstavićemo rešenje za konverzi jubrojeva u stringove i obrnuto

Ispis podataka na ekranu se takođe može smatrati konverzi jom Broj sa pokretnimzarezom je u memori j i prikazan na pomalo čudan način a pozivom funkci jeprintf() kada je kao format zadat f na ekranu ćemo dobiti razuml j iv niz znakovaSl ičan rezultat možemo dobiti funkci jom sprintf() a jedina razl ika u odnosu naprintf() je ta što sprintf() kao prvi argument očekuje pokazivač na string dok sudrugi (format string) i treći (argumenti koj i se povezuju sa formatnim stringom)sl ični kao kod funkci je printf()

Kod pretvaranja stringova u brojevne tipove može poslužiti funkci ja sscanf() kojase ponaša sl ično kao funkci ja scanf() s tim što je prvi argument adresa(pokazivač na string) koju žel imo da skeniramo u nadi da će se poklopiti saformalnim stringom koj i je drugi argument a rezultati će biti sačuvani u adresamakoje su prosleđene kao 3 4 i ostal i parametri Drugi način za pretvaranje stringovau celobrojne brojeve i brojeve sa pokretnim zarezom su funkci je atoi() i atof()

Funkci je koje koriste formatni string su česte u jeziku C i zaslužuju posebnu pažnjumeđutim to je priča za poseban članak U ovu klasu funkci ja spadaju recimo ifunkci je za rad sa datotekama

BezbednostRad sa stringovima može da bude izuzetno opasna stvar po pitanju bezbednostiprograma Ukol iko se niz karaktera ne završava NULL karakterom svašta može dapođe po zlu pri pozivu funkci ja kao što su strcpy() strcmp() i sl ične Cela klasatih funkci ja se oslanja na postojanje znaka koj i označava kraj stringa Kada stringni je propisno završen tada te funkci je mogu da zalutaju u deo memori je vanstringa i svašta može da pođe po zlu Ovakav tip napada se inače zoveprekoračenje bafera (eng buffer overflow) Preporučen način kako da izbegnete

Kako da

25

Broj 33

Pregled popularnosti GNULinuxBSDdistribuci ja za mesec februar

Distrowatch

Pad ltPorast gtIsti rejting =(Korišćeni podaci sa Distrovoča)

12345678910111213141516171819202122232425

MintUbuntuDebianopenSUSEelementaryMageiaFedoraManjaroCentOSLXLEArchBodhiAndroid x86Kal iPCLinuxOSPuppyRobol inuxLubuntuQ4OSBlack LabNetrunnerSimpl icityEvolveZorin4MLinux

2919gt1778gt1701gt1323gt1204gt1174gt1166gt1028lt1020gt965gt957gt907gt900lt760gt742lt732gt695gt670gt663gt655gt652gt629gt607gt583gt517=

takve nepri jatne situaci je pri radu sastringovima je da koristite verzi jefunkci ja koje su ograničenemaksimalnom dužinom stringa kaošto su strncpy() strncat() strncmp() i td Sve te funkci je kaotreći parametar zahtevaju broj koj iodređuje maksimalnu očekivanudužinu stringa Još jedna vrlo korisnafunkci ja je strlen() či j i zadatak je daodredi dužinu stringa Budite pažl j ivi ovo je prvo mesto gde se tražebezbednosni propusti u programimaNe verujte podacima koj i spol ja ulazeu vaš program a pogotovo kada je rečo stringovima

Uvod u programski jezik C

26

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Autor Dejan Maglov

Projekti slobodnog softvera obično počinju kao projekti pojedinca i l i male grupeprogramera a koj i rade na razvoju softvera či j i je ci l j da zadovol j i neke od nj ihovihl ičnih potreba Projekat će se smatrati uspešnim ukol iko se šira zajednicazainteresuje za njega nakon što prepozna korisnost softvera ne samo za pojedincekoj i su započel i projekat već i za širu zajednicu Kada je u pitanju slobodni softvervremenom je postala stalna praksa da se zajednica umeša u razvoj projekataDobri projekti sami privlače zajednicu l judi koj i su zainteresovani za nj ih i ona uvećini slučajeva preuzima na sebe testiranje pobol jšanje funkcionalnosti održavanje i tehničku podršku projekta

Zajednice slobodnog softvera mogu da se okupe oko projekta slobodnog softverapo teritori ja lnom principu i l i da nastanu kombinaci jom ovih principa

Primeri

bull LiBRE projekat okupl ja zajednicu oko projekta bez teritori ja lnog ograničenjabull LUGoNS (Linux User Group of Novi Sad) je zajednica korisnika Linuksa poteritori ja lnom principu bez obzira na konkretan projekat

bull Ubuntu-rs zajednica koja je kombinaci ja okupl janja zajednice oko konkretnogprojekta (Ubuntu) i teritori ja lnog principa koj i se ograničava na teritori ju Srbi je

Ova sinergi ja projekata i korisnika slobodnog softvera ima više prednosti i zakorisnike i za projekat Projekat se na ovaj način brže razvi ja dobi ja na

U potrazi za idealnom distribucijom

Socijalni kriterijumi za izbor idealnedistribucije (6 deo)

Oslobađanje

27

Broj 33

funkcionalnosti greške se brzo ispravl ja ju i td Korisnici dobi ja ju osećaj dapripadaju grupi druže se sa istomišl jenicima učestvuju u promoci j i kval itetnihpojedinaca itd

Dve najvažni je uloge lokalnih zajednica za GNULinuks distribuci je su

1 pružanje tehničke podrške i edukaci je na maternjem jeziku2 rad na lokal izaci j i i pri lagođavanje distribuci je lokalnim potrebama

Informaci ja da postoje lokalne zajednice slobodnog softvera je od naročitogznačaja za početnike i korisnike koj i nedovol jno dobro znaju strane jezike(naročito engleski jezik) Ako izuzmemo komerci ja lne projekte otvorenog koda(Red Het SUSE) ne postoje zvanične škole i kursevi za slobodni softver Zaedukaci ju početnika je uglavnom zadužena zajednica a jasno je da je učenje namaternjem jeziku uvek lakše nego na bi lo kom drugom stranom ma kol ikodobro ga poznajete

Forumi i viki stranice lokalnih zajednica su prave bibl ioteke u koj ima korisnicimogu da nađu većinu odgovora na svoja pitanja a za sva ostala tu su forumi iIRC kanal i zajednica na koj ima uvek ima nekoga i koj i imaju već gotova rešenjaza vel iki broj problema

U potrazi za idealnom distribucijom

28

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Lokalne zajednice kao kriterijum za izbor idealnedistribucijePočetnicima i korisnicima koj i ne vladaju dobro engleskim jezikom toplopreporučujemo da biraju GNULinuks distribuci je koje imaju aktivnu lokalnuzajednicu Ovladavanje novim operativnim sistemom je mnogo lakše ukol iko vambdquoleđa čuvardquo lokalna zajednica na koju se uvek možete osloniti

Već smo spomenul i da su popularni je GNULinuks distribuci je namenjenepočetnicima Slučaj je isti i sa lokalnim zajednicama okupl jenim oko nj ih Ovomeđutim ne znači da je kval itet usluga koje nude manje popularne lokalnezajednice okupl jene oko distribuci ja namenjenih napredni j im korisnicima loši j i Manje popularne distribuci je okupl ja ju manje l judi a l i zato oni poseduju većeznanje Iskustvo sa zajednicama okupl jenim oko slobodnog softvera je uglavnompozitivno i ukazuje na to da kval itet usluga koje one nude korisniku ni je uslovl jenpopularnošću i masovnošću zajednice nego iskl jučivo njenom (ne)aktivnošću

U svakom slučaju dosadašnj i saveti za izbor idealne distribuci je važe i dal jeSoci ja lni aspekt slobodnog softvera je samo dodatni faktor koj i vam može pomoćipri donošenju odluke kada se dvoumite između nekol iko mogućih rešenja

Još uvek ne postoj i na jednom mestu potpuni i ažurirani spisak svih aktivnihsrpskih zajednica Nešto najbl iže tome može da se nađe na adresihttps pulsslobodewordpresscom Za informaci je o nekim drugim lokalnimzajednicama koje možda postoje al i nisu na ovom spisku moraćete sami dapretražite internet

Lokalizacija kao kriterijum za izborZa lokal izaci ju GNULinuks distribuci ja i GNU programa odgovorni su pojedinci ilokalne zajednice Sasvim sol idnu srpsku lokal izaci ju mogu imati i projekti koj iuopšte nemaju svoju lokalnu zajednicu a isto tako lošu lokal izaci ju mogu imati iprojekti sa dobrom lokalnom zajednicom Sve je stvar prioriteta zajednica iaktivnosti pojedinaca

Pravu i kontrol isanu lokal izaci ju može imati samo lokalni projekat Ovakvihprojekata u Srbi j i ima malo i teško se probi ja ju čak i u lokalu u konkurenci j isvetskih projekata Istina je da mnoge veće GNULinuks distribuci je imaju srpskulokal izaci

Oslobađanje

29

Broj 33

ju u ponudi pa se možda sl ični lokalni projekti koj i su usmereni samo na striktnulokal izaci ju smatraju nepotrebnima Uzvodna lokal izaci ja u slučaju Srbi je vrlo čestobude veoma loše čak nakaradno sprovedena Jedna polovina programa jelokal izovana srpskom ćiri l icom a druga latinicom Ako postoj i još delova sistemakoj i uopšte ni je lokal izovan onda se pojavl ju ju i delovi programa koj i su naengleskom Zato ćemo se vratiti na prvu rečenicu ovog pasusa i ponovo utvrditi dasamo lokalni projekat može potpuno kontrol isati pravu srpsku lokal izaci ju

U Srbi j i za sada imamo dva aktivna projekta GNULinuks distribuci je ndash TriOS(http triosrs) i Serbian (http wwwdebian-srbi ja iz rspserbianhtml) Obaprojekta su mlada i imaju svoj ih prednosti i mana Kome treba lokal izovanoperativni sistem može da proba jedan od ova dva projekta

U potrazi za idealnom distribucijom

30

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Iako ove dve domaće distribuci je nisu baš naj idealni je interesantno je probati ih iuporediti sa drugim distribuci jama

Za kraj serijalaNamera nam je bi la da kroz ovaj seri ja l o kriteri jumima pri izboru idealnedistribuci je definišemo većinu kriteri juma pri izboru i pokažemo zašto je teškoodgovoriti na jednostavno pitanje bdquoKoju mi distribuci ju preporučujeterdquo

Ni na samom kraju nismo dal i konkretan odgovor na pitanje koja je idealnaGNULinuks distribuci ja Suviše je subjektivnih ocena da bi se mogao datikonkretan odgovor Smatramo da je jako teško napisati neki algoritam izbora pokriteri jumima koje smo identifikoval i i definisal i a možda je čak i nemoguće poštose izlazi stalno menjaju Izlazi iz tog algoritma su GNULinuks distribuci je koj ih izdana u dan ima sve više a i one stare se stalno menjaju

Sam seri ja l bdquoU potrazi za idealnom distribuci jomrdquo neće biti završen samo zato štose više neće baviti kriteri jumima pri izboru nego će pokušati da predstavl jaGNULinuks distribuci je koje su po nečemu bdquoidealnerdquo

Oslobađanje

31

Broj 33

ORM

Autor Dejan Čugal j

Object relation mapping (ORM)

ORM (eng Object RelationMapping) je način postizanja traj-nosti (eng persistence) objekataunutar relacionih baza podatakaModel deluje kao posrednik nalogičkom delu apl ikaci je Automat-ski presl ikava podatke iz objekata ubazu i nazad na zahtev apl ikaci jeDa bismo objasni l i kako ovo sveradi moramo da vam predstavimoORM frejmvork (eng framework)programa otvorenog koda -Hajbernejt (eng Hibernate -http hibernateorgorm)

Šta je ORMUkratko ORM je automatizovano transparentno presl ikavanje objekatakorišćenjem metapodataka koj i opisuju mapiranje veze između objekta i baze

ORM (2 deo)

Slobodni profesionalac

32

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

podataka u apl ikaci jama koje su napisane u objektno ori jentisanim programskimjezicima Apl ikaci ja komunicira sa ORM-om preko njegovog vlastitog API-ja (engapplication programming interface) i određenih objekata Ova komunikaci ja jepotpuno odvojena od komunikaci je koja se odvi ja između ORM-a i baze podatakapreko SQL-a i DBC-a

Da bi se postigla i dostigla potpuna snaga ORM-a u apl ikaci j i koju projektujemonikako se ne sme iskl jučiti znanje relacionih modela SQL jezika te poznavanjeDBMS-a u kome se radi ORM ni je ništa drugo do srednj i sloj između gorepomenutih tehnologi ja i objektno ori jentisanog programiranja kao što smo to dosada već više puta naglasi l i

Implementacija ORM-aPostoje razl ičiti načini implementaci je ORM-a Mark Fasl (Mark Fussel) je 1997definisao četiri nivoa

1 bdquoČistrdquo relacioni način2 Slabo mapiranje objekata3 Umereno mapiranje objekata4 Potpuno mapiranje objekata

bdquoČistrdquo relacioni način

Cela apl ikaci ja ukl jučujući i korisnički interfejs dizajnirana je relacionim modelom iSQL relacionim operatorima Ovakav pristup je odl ičan za male projekte Direktanpristup SQL-u omogućava fino podešavanje svakog aspekta upita koj i se postavl jabazi podataka Osnovne mane su portabi lnost (prenosivost) i održavanje ovakvihsistema pogotovo ako se planira korišćenje apl ikaci je na duži rok Ovakvi sistemimasovno koriste sačuvane procedure (eng stored procedures) što znači da jeposlovna logika (eng busines logic) prebačena na samu bazu podataka

Slabo mapiranje objekata

Entiteti su predstavl jeni kao klase i mapiranje se radi ekspl icitno ka relacionimtabelama SQLJDBC je sakriven od poslovne logike korišćenjem poznatih šablona(patterns)

Umereno mapiranje objekata

Slobodni profesionalac

33

Broj 33

Dizajn apl ikaci ja se svodi na objektne modele SQL se generiše u vremekompaj l iranja (eng build-time) i l i u vreme izvršavanja (eng run-time) Specifikaci jaupita nad bazama podataka se radi na objektno ori jentisanom jeziku Ovakvisistemi se koriste u apl ikaci jama srednj ih vel ičina kod koj ih je bitna portabi lnostizmeđu razl ičitih sistema za upravl janje bazama podataka (DBMS)

Potpuno mapiranje objekata

Podržava sofisticirano objektno model iranje nasleđivanje i pol imorfizamEfikasnost dobi janja podataka je na visokom nivou i koriste se metode kao što sulenjo učitavanje (eng lazy loading) i strategi ja keširanja (eng caching) Implementaci ja je transparentna u apl ikaci jama Ovaj nivo je jako teško dostići Pojedincu su potrebne godine razvoja da postigne ovakvu fleksibi lnost pristupa imanipulaci ja u relacionim bazama podataka Upravo ovaj nivo se postiže ako sekoriste rešenja ORM-a kao što je Hajbernejt

Zašto ORMImplementaci ja ORM rešenja pogotovo ako seprvi put susrećete sa ovim modelom može dabude veoma frustrirajuća i malo teža zaimplementaci ju Kada ovo kažemo misl imo daprogramer koj i implementira ORM i hoće da istibude kval itetno urađen mora da posedujepredznanje objektno ori jentisanog programiranjai naprednih tehnika kao što su nasleđivanje ipol imorfizam

Ovo inicira fundamentalna pitanja

bull Pa zašto bi iko onda implementirao ovako nešto kompleksnobull Vredi l i truda upuštati se uopšte u ORM

Odgovor ni je jednostavan Dosadašnja iskustva u korišćenju ORM-a i njegovapopularnost već daju odgovor na postavl jeno pitanje Očigledno je da su benefitikoje donosi ovaj model veći od kompleksnosti njegove implementaci je a to su

Hibernate ORM

34

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Veća produktivnost

ORM smanjuje kol ičinu koda potrebnog za ostvarivanje trajnosti podataka Ovoomogućava programeru da vreme koje bi utrošio na ručno mapiranje podatakautroši na druge delove apl ikaci je

Lakše održavanje

Manje l ini ja koda osigurava bol ju razuml j ivost (i možda bol j i kval itet koda) jernaglašava apl ikaci jsku logiku ORM takođe ublažava uticaj nastal ih promena kaošto su promene u bazi strukturi tabela i td

Prenosivost

Većina ORM rešenja podržava sisteme za upravl janje bazama podataka raznihproizvođača ORM u potpunosti odvaja sloj apl ikaci je od stvarne SQL komunikaci jekoja se odvi ja u pozadini Time omogućava da se pišu apl ikaci je koje će moći da seizvršavaju na razl ičitim bazama podataka bez potrebe za dodatnim kodiranjemOva komunikaci ja se odvi ja sa programskim interfejsima ORM-a nezavisno oDBMS-u sa koj im je u bi lo kom momentu povezan ORM takođe omogućava lakšiprelaz sa manj ih na veće baze podataka tokom razvoja apl ikaci je

Uvidel i smo da trenutno postoje dve paradigme koje se bdquosudarajurdquo i koje supodjednako dobre same za sebe Relaciona paradigma potvrđuje da sve što jeizgrađeno na matematičkim osnovama je i trajno u smislu kval iteta koje posedujeU domenu u kom relaciona paradigma egzistira ona je ako je to u ovo vremeuopšte moguće tvrditi nezamenj iva

Ono što otvara pitanja i daje razlog za sumnju je koja je krajnja granicaupotrebl j ivosti relacione paradigme tj kol iki su kapaciteti složenosti zahtevaapl ikaci ja sa kojom može da se nosi Praksa je pokazala da je sasvim mogućebdquoizvestirdquo složene projekte - al i održavanje skalabi lnost razuml j ivost prenosivost -pitanja su sa koj im se relaciona paradigma teško može izboriti

Sa druge strane svoj habitat u informacionim tehnologi jama je našla i objektna

Slobodni profesionalac

35

Broj 33

paradigma Iako na prvi pogled ova dva modela nemaju ništa zajedničko - što je uneku ruku i istinito gledajući prirodu podataka koj im manipul išu - praksa jepokazala da su usko povezane i skoro da imaju sinaptičku vezu

Pitanje bdquokako spoj iti te sinapserdquo dovelo je do žučnih rasprava u uskim naučnimprogramersko-administratorskim krugovima Rodi l i su se razni model i a l i jedan jeiskočio i polako ulazi u široku primenu - a to je ORM Svoj im supti lnim pristupomproblemu nekompatibi lnih paradigmi nekako je uspeo da stvori taj nedostajućibdquoelektrični signalrdquo koj i ih je povezao Ovo je omogući lo da dve strane koje susvaka za sebe u svom domenu ostavi le i ostavl ja ju duboki trag u informacionimtehnologi jama sarađuju i donesu novi kval itet

Korisni l inkovi

[1] Hibernejt http hibernateorg[2] Viki http googlLlZulw[3] Tutori ja l i http googlCGzvnc

Hibernate ORM

36

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Autor Kriptopank

Šta su zapravo metapodaci Najkraće rečeno to su podaci o podacima i l iinformaci je koje opisuju podatke

Najpre da napravimo razl iku između podataka i metapodataka Podaci sunaprimer snimak (i l i transkript) vaših telefonskih razgovora sadržaj poruka kojepišete primate i l i šal jete podaci koje kačite na internet i l i preuzimate pretrageGuglom postovi na forumima dopisivanja na IRC kanal ima i l i drugim četovimaaudio i video snimci Skajp razgovora i tako dal je

Hajde da vidimo šta bi bi l i odgovarajući metapodaci za ove primere

bull Za telefonske razgovore metapodaci mogu biti lokaci ja učesnika brojevitelefona trajanje razgovora IP i MAC adresa

bull Za poruke četove i Skajp i l i druge video-audio komunikaci je sl ično je kao kodtelefonskih razgovora

To su samo metapodaci

Internet mreže i komunikacije

37

Broj 33

bull Kod foruma i pretraga Guglom ima malo manje metapodataka al i Gugl i raznisajtovi i forumi ionako čuvaju logove o korisnicima što su takođe metapodaci

Ako do sada koj im slučajem niste uvidel i opasnost po privatnost u ovimmetapodacima koje svako od nas smrtnika svakodnevno ostavl ja za sobom usvetu interneta i ostal ih digitalnih komunikaci ja nadamo se da će vas ovaj primermakar podstaći na razmišl janje a možda i na nešto više

Zamisl i te da neko (zvaćemo ga posmatrač) stalno sakupl ja metapodatke koje zasobom ostavl jate kao mrvice hleba Posmatrač recimo zna da se nalazite naautoputu nedaleko od famoznog Feketića da se ne krećete da zovete AMSS zatimšlep službu i možda taksi a l i ne zna šta ste razgovaral i I l i posmatrač vidi da steprvo zval i aerodrom Nikola Tesla pa odmah potom taksi a l i ne zna šta sterazgovaral i I l i posmatrač vidi da ste zval i prvo šest brojeva či je identitete takođezna pa vidi da se oni zatim kreću ka vama - GPS (eng Global Positioning System) pa zatim pica servis Mekdonalds i neku poznatu prodavnicu kineske hrane al i nezna šta ste razgovaral i

Posmatrač ne mora da bude mnogo pametan niti da prisluškuje vaše razgovore dabi shvatio šta se dešava i l i šta će se desiti Sasvim mu je jasno da vam je u prvomprimeru auto stao na autoputu zatim da ste se u drugom slučaju uputi l i naaerodrom i da možda putujete van zemlje i l i ste poslal i taksi po nekoga saaerodroma a da u trećem slučaju okupl jate žurku kod vas Više možete pogledatina http googl7vUjP

Iako su to bdquosamordquo metapodaci treba biti svestan da ti metapodaci o vama stvarajujednu digitalnu sl iku i l i bol je reći digitalni mozaik i na neki način vas jedinstvenoodređuju Pogotovo kada se planski prikupl ja ju na više nivoa (kompjuter pametnitelefon pametni automobi l i kreditna kartica) metapodaci čine vaš digitalniidentitet Al i da stvar bude još gora ta sl ika o vama ne mora nužno biti istinita jerse lako može lažirati Recimo možete zameniti telefone i l i automobi le sa nekimnamerno i l i slučajno i l i vam neko može jednostavno ukrasti telefon laptop i l ikreditnu karticu Zaniml j iv video http googlKO1fKf

Evo jednog primera koj i vas može uvući u vel ike nevol je Recimo da prolazitenekom zabačenom ul icom i da vam neprimetno ispadne telefon al i vi to neprimetite i nastavite dal je svoj im putem U toj ul ici se samo nekol iko minutakasni je desi neko ubistvo i vas pozovu u pol ici ju kao osumnj ičenog Ako koj im

To su samo metapodaci

38

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

slučajem nemate dobar al ibi i l i nemate svedoka da posvedoči da niste bi l i u tojul ici nego tamo gde ste stvarno bi l i a drugih svedoka nema - možete jako lošeproći Zaniml j ivi video http googlspS5OZ

Metapodaci se takođe nalaze i u faj lovimapodacima koje svakodnevnopreuzimamo sa interneta pravimo i koristimo Svaki tip podatka može da sadržiodređene metapodatke koj i bol je opisuju sam podatak kao naprimer vremenastanka podatka kol iko je vremena potrošeno za njegovo kreiranje kol iko putamu je pristupl jeno kad je poslednj i put pristupl jeno i tako dal je Iako se ovakvimetapodaci možda još uvek čine bezazlenim oni mogu sadržati i IP adresuračunara sa kog su napravl jeni GPS koordinate (najčešće PNG format sl ika satelefona) ko ga je napravio (l ičnost i l i kompani jaorganizaci ja) naziv uređaja imodel sa koga je napravl jen kao i MAC adresu uređaja mej l adresu kreatorasoftver koj im je napravl jen i tako dal je Sve ovo može mnogo da naškodiprivatnosti izvornog kreatora faj la pogotovo ako je sadržaj poverl j iv Ukol iko nekopresretne taj podatak na internetu može saznati od koga je potekao Da ovo možebiti katastrofa po kreatora takvog faj la može i lustrovati primer torenta Ako stedošl i u posed nekih sl ika i l i video materi ja la i l i teksta koj i žel i te da podel ite sasvetom preko nekog torent sajta morate taj podatak prvo očistiti odmetapodataka da ne bi svako ko skine to što ste okači l i saznao da vi stoj i te izatoga

Internet mreže i komunikacije

39

Broj 33

Ljudi se konstantno prate metapodaci se sakupl ja ju i to ni je sada već ništa novoal i možemo da se trudimo da iza sebe ostavl jamo malo manje nežel jenihmetapodataka i da ih takoreći čistimo iz podataka koje razmenjujemo Na srećupostoje programi koj i ovo dobro rade

Najpre je potrebno da vidimo koje sve metapodatke neki faj l sadrži kako bismo seuveri l i da ovi metapodaci stvarno postoje i da je faj l bezbedan nakon nj ihovogbrisanja

Ako koristite operativne sisteme GNULinuksa treba da iz terminala preuzmete iinstal irate program pod nazivom exiftool

sudo apt-get install exiftool

Ovaj program će nam pružiti uvid u sve metapodatke koje faj l sadrži Korišćenje jeiz terminala al i je zato veoma jednostavno samo ga pokrenite na sledeći način

exiftool File

i l i

exiftool putanjadofajlapočevodkorenogdirektorijuma

Dobićete prikaz metapodataka koje je program pronašao Sada je potrebno davidimo da l i je podatak bdquoprl javrdquo tj da l i ima u njemu nešto da se briše i da akoima iz njega sve nepotrebno obrišemo Tu će nam pomoći drugi program zvaniMAT (eng Metadata Anonymisation Toolkit) koga možete naći na sajtuhttps matboumorg i l i jednostavno za korisnike Ubuntua i Debi jana uSoftverskom centru i l i ga možete instal irati iz terminala

sudo apt-get install mat

MAT će proveriti da l i je podatak bdquoprl javrdquo i l i ne i za vas ga očistiti od nežel jenihmetapodataka

Kada očistite faj l on je spreman za del jenje sa drugima a vi ste bezbedni jer nikone može reći da je faj l potekao sa vašeg računara

To su samo metapodaci

40

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Autor Dejan Čugal j

GH Hardi bdquoPrava matematika nema uticaj na ratrdquo - odbrana matematičara1940 godina

Bi l Tat - britanski matematičar verovatno niste čul i za njega1942 godine je izveo ogroman poduhvat koj i je skratio rat dvegodine (barem po rečima Ajzenhauera) i spasio mi l ione životaNažalost njegova vel ičina je preminula 2002 godine obavi jenavelom tajne i nikada zvanično ni je priznato njegovo dostignuće

Tomi Flauers - bivši inženjer poštanskog saobraćaja pretvorio jematematičke ideje Tata u prvi računar a to ni je bio bdquoENIACrdquo1Preminuo je 1998 godine a pretpostavl jamo da nikada niste čul ini za njegovu vel ičinu

Ovi umni giganti bdquoBlečl i parkardquo omogući l i su Britani j i da dešifruje strogo poverl j ivumašinu koju je koristio Hitler da diriguje drugim svetskim ratom a to ni je bi labdquoENIGMArdquo nego nešto mnogo tajni je i značajni je Vel ika je verovatnoća da nistečul i ni za ovo Neki kažu da je to bio Hitlerov Blekberi (BlackBerry)

Izgubljeni heroji bdquoBlečli parkardquo

1 engl Electronic Numerical Integrator And Computer - prvidigitalni elektronski računar

Internet mreže i komunikacije

41

Broj 33

1939 godine bdquoBlečl i parkrdquo je postao ratni štab MI6 (britanske vojne obaveštajneslužbe) Do danas je procurelo u javnost i dokumentovano brojnim fi lmskimdokumentarcima samo da je tu Alan Tjuring uspeo da dešifruje nemačkumornaričku šifru poznatu kao bdquoENIGMArdquo i uvel iko doprineo pobedi saveznika a to jesamo deo priče koj i je ispričan

U Blečl i parku su bi la tri heroja AlanTjuring Bi l Tat i Tomi Flauers Od nj ihtroj ice jedino Alanu Tjuringu je priznat deozasluga za pobedu saveznika u Drugomsvetskom ratu Pregledom otkrivenihpodataka danas možemo da tvrdimo daje bdquoENIGMArdquo već sa početka drugogsvetskog rata bi la zastarela tehnologi ja Zbog toga je bi lo lako skinuti veo tajne sa

ovog uspeha heroja Blečl i parka

Izgubljeni heroji bdquoBlečli parkardquo

42

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Bi l Tat koj i je dešifrovao bdquoTANI sistemrdquo (TANI) i Tomi Flauers koj i je samo svojomintuici jom i znanjem sklopio prvi računar na svetu (bdquoKOLOSrdquo) u svrhu bržegdolaženja do informaci ja razbi jenog koda bdquoTANIrdquo tako da zastarelost šifrata budesvedena na minimum - radi l i su na novoj generaci j i mašina za šifrovanje Ovatehnologi ja je bi la prepoznata kao tehnologi ja budućnosti pa i danas iznadinformaci ja o tim tehnologi jama stoj i natpis bdquovrhunska tajnardquo (eng Top Secret) Upravo ovaj veo tajni oko šifrata bdquoTANIrdquo i prvog računara je rezultirao iskrivl jenjuistori je informatike

Za uspehe u prvim godinama rata je zaista zaslužno razbi janje bdquoENIGMArdquo šifrata ito ni je sporno al i krajem 1941 godine u etru planete se začuo novi zvuk To je bi lanova mašina za šifrovanje ni je bi la zasnovana na bdquoMorzeurdquo već je radi la naprincipu teleprintera

Jedna od kl jučnih ideja Hitlerovog ratovanja je bi la u vel ikoj mobi lnosti i brzomdelovanju trupa na terenu a da bi se to izvelo komunikaci ja je isto tako morala dabude u najmanju ruku putem radio signala

Razl ika je ogromna Razl ika je u kol ičini podataka koj i može da se prenese ovimbdquotajnimrdquo putem Prvi svetski rat je bio zaniml j iv jer su se šifrovane poruke baziralena rečima dok je Drugi u potpunosti otvorio vrata današnjoj kriptografi j i a to jematematika

Originalan nemački kocircdni naziv za ovaj šifrat bio je bdquoLORENCrdquo Britanska

Internet mreže i komunikacije

43

Broj 33

obaveštajna služba mu je dala nadimak bdquoTANIrdquo Čak ni dan danas ni je baš poznatokako je sve nastalo al i pouzdano se zna da je tajnu mašinu Hitler nazvaobdquoGehajmšrajberrdquo (nem Geheimschreiber) - mašina tajni

U srž i tehnologi ju šifrovanja bdquoLORENCrdquo šifrata nećemo ulaziti u ovom članku al iverujte nam na reč - ni je bi la jednostavna Može se pretpostaviti da je inspiraci jaŠenonovog 2 rada slučajnosti bi la upravo ova tehnologi ja iz Drugog svetskog rata

Ono čime se Treći rajh vodio je bdquosigurnardquo šifrovana veza koju niko ni je smeo dadešifruje Prenošenje šifrovanih poruka pomoću radio signala je dalo obaveštajnimslužbama mogućnost presretanja poruka poslatih radio talasima Da l i se ovo idanas dešava Imamo l i sigurnost u našim šifrovanim podacima današnj ice

Ono što je usledi lo nakon proboja ovog bdquoneuhvatl j ivogrdquo šifrata je upravo ono što jeprincip današnj ice kao neka vrsta protokola koj i mora da se ispoštuje uperfektnom šifarskom Šenonovom sistemu

1 NIKADA NIKADA NE KORISTITI DVA PUTA ISTI KLJUČ ZA ŠIFROVANJE2 NIKADA NIKADA KLJUČ NE SME DA SE ŠALJE ISTIM KOMUNIKACIONIM KANALOM

KAO PORUKA3 NIKADA NIKADA KLJUČ NE SME DA BUDE MANJ I NEGO ŠTO JE PORUKA (engl

2 Klod Elvud Šenon (eng Claude Elwood Shannon) (1916-2001) - Američkinaučnik i inženjer

Izgubljeni heroji bdquoBlečli parkardquo

44

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

one time pad) 4 NIKADA NIKADA NE SMEMO DA SAKRIVAMO SISTEM ŠIFROVANJA SVE MORA

DA JE OTVORENOG KOcircDA

Najveći propusti kriptologi je koj i su uočeni baš u Drugom svetskom ratu jesupokušaj sakrivanja sredstava koj im se generiše tajna poruka i nepoznavanjeŠenonovih krajnj ih granica informaci ja Kada kažemo bdquosredstvo i sakrivanjerdquomisl imo na algoritme Postavl ja se pitanje zašto je danas kriptologi ja sigurni ja negočetrdesetih i pedesetih godina prošlog veka

Danas uprkos tome što su algoritmi za kriptografi ju otvorenog kocircda tajnostinformaci ja je na višem nivou nego što je to bi lo dok je algoritam bio strogopoverl j iv Tajnost tajnih podataka se ne zasniva na tajnosti a lgoritama koj i generišutaj isti bdquotajni izlazrdquo (eng cipher text) nego u nemogućnosti matematičke inverznefunkci je koja bi šifrovan tekst otvori la Ovde se vidi da je svrha strukture otvorenogkocircda kao jednog od značajnih delova današnje kriptologi je ona koja ga činisigurnim i svima dostupnim

Sada kada se sa ove distance osvrnemo na Drugi svetski rat možemo videti kol ikosmo bi l i bl izu apokal ipse Naime Albert Ajnštajn je već 1944 godine imao urukama recept za nuklearnu bombu Šenon je mogao već u to vreme da nampredoči 100 siguran šifrat (tzv Hitlerovu super šifru) a l i ipak sreća nas jeposluži la da čovečanstvo tada ni je bi lo spremno da upotrebi svu raspoloživutehnologi ju

Albert Ajnštajn bdquoČetvrti svetski rat će se voditi tol jagamardquo

Zaboravl jeni heroj i Blečl i parka iako su odigral i važnu ulogu u pobedi saveznika usvetskom ratu postal i su žrtve bdquotop secretrdquo doktrine potpuno su zaboravl jeni inestal i su iz istori je

Zakl jučak ovog članka je da je ideologi ja otvorenog kocircda sasvim sigurno tu da nampomogne i da otvori vrata ka većoj sigurnosti novim idejama i kval itetu sameinfrastrukture sistema koju svi zajedno razvi jamo

Internet mreže i komunikacije

45

Broj 33

Autor Nikola Hardi

NabrajanjaBez brojeva

Za nabrajanje pojmova u Bimeru (eng Beamer) koristi se okruženje itemize aunutar tog okruženja možemo da dodajemo nove stavke pomoću item Primerizgleda ovako

beginitemizeitem Stavka Aitem Stavka Bitem Stavka C

enditemize

Sa brojevima

Postoje situaci je kada uz nabrajanje treba da stoje i redni brojevi - za to se koristienumerate okruženje a nove stavke se takođe dodaju pomoću item

beginenumerateitem Redni broj 1item Redni broj 2item Redni broj 3

endenumerate

prezentaci ja

Beamer (4 deo)

Sam svoj majstor

46

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

DefinicijeTreća situaci ja je nabrajanje parova termin - definici ja U tom slučaju se koristiokruženje description Već možete da pretpostavite kako se dodaju nove stavke

Primer

begindescriptionitem[Pojam A] Definicija izmišljenog pojma Aitem[Pojam B] Definicija izmišljenog pojma Bitem[Pojam C] Definicija izmišljenog pojma C

enddescription

Ostala podešavanja i zanimljivostiSva prethodna okruženja mogu da budu ugneždena jedno unutar drugog dotrećeg nivoa Treba biti pažl j iv jer sla jdovi vrlo lako mogu da postanu nečitl j ivi Osim toga moguće je izabrati i format oznake i l i rednih brojeva - na primer ovako

beginenumerate[I]beginenumarate[a)]

Takođe moguće je upravl jati pojavl j ivanjem pojedinih stavki na slajdovima Drugimrečima možemo da odredimo da se nabrajanja postepeno otkrivaju tako što ćemouz stavku dodati lt1-gt odnosno broj od kojeg slajda žel imo da se ta stavkapojavl ju je Tada će jedno nabrajanje biti bdquorazvučenordquo na više slajdovaJednostavni ja mogućnost je da u zaglavl je okruženja dodamo +- što znači dažel imo da se svakim slajdom otkriva po jedna nova stavka iz nabrajanja Znak bdquo-rdquo uoba primera znači da žel imo da se stavka pojavi na sledećem slajdu i da ostane

Sam svoj majstor

47

Broj 33

prisutna Možemo da izostavimo znak bdquo-rdquo i tada će stavka biti prisutna samo najednom slajdu i l i da napišemo raspon slajdova u koj ima žel imo da ta stavka budeprisutna

Rad sa kolonama i blokovimaDo sada su svi primeri podrazumeval i da je sadržaj napisan preko cele širineslajda al i Bimer (eng Beamer) ima i jednostavne mehanizme za razmeštanjesadržaja po kolonama Za rad sa kolonama se koristi okruženje columns unutarkojeg možemo da dodajemo nove kolone pomoću columnširina Sadržaj jemoguće potom pisati i van okruženja sa kolonama

U paru sa kolonama često se sreće i okruženje block koje se parametrizujenaslovom Primerom su i lustrovani i okruženje column i okruženje block

beginframebegincolumns

column05textwidthbeginblockNaslov levog blokaSadržaj u prvoj (levoj) koloni endblock

column05textwidthbeginblockNaslov desnog blokaSadržaj u drugoj (desnoj) koloni

endblockendcolumns

beginblockVan kolona

Beamer

48

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Tekst koji se nalazi ispod kolonaendblock

endframe

TabeleIako se u radu sa prezentaci jama sadržaj najčešće može uredno rasporeditipomoću kolona i nabrajanja nekada to ni je dovol jno jer su tabele pravi formatBimer podržava standardno Lateh (LaTeX) okruženje za rad sa tabelamaOkruženje za rad sa tabelama se zove tabular Pri kreiranju nove tabele moguće jepodesiti koje kolone će biti razdvojene l ini jom i da l i će nj ihov sadržaj biti centrirani l i uz levu i l i uz desnu ivicu Dodavanje novog reda se jednostavno radidodavanjem hline Lateh pruža zaista jako fleksibi lan rad sa tabelama i sigurno ćedoskočiti svim mogućim i nemogućim zamisl ima Potražite bi lo koje Lateh uputstvoza rad sa tabelama i radiće i sa Bimerom

beginframebegintabular | c | c | c | c |

hlineamp Ponedeljak amp Utorak amp Sreda hline

1 amp 16 amp 32 amp 64 hline2 amp 16 amp 128 amp 1024 hline3 amp 16 amp 512 amp 4096 hline

endtabularendframe

Sam svoj majstor

49

Broj 33

Beamer

Teoreme i istaknut tekstU nastavi su česta izlaganja teorema nj ihovih dokaza i primera U Bimer jeugrađena podrška za elegantno predstavl janje ove trojke Mehanizam takođepodržava postepeno otkrivanje sadržaja sla jda tako da slušaocima ne bude odmahotkriven dokaz teoreme Mehanizam za postepeno otkrivanje se kao i kodnabrajanja postiže pomoću bdquolt1-gtrdquo konstrukci je Evo kako to izgleda

beginframeframetitlePrimer teoreme

begintheoremlt1-gt Teorema kaže da su beamer prezentacijezanimljive

endtheorem

beginexamplelt2-gt Ovaj kod kreira slajd beamer prezentacijeendexample

beginprooflt3-gt Čestitamo stigli ste do kraja serijala o pravljenju beamer prezentacija

endproofendframe

50

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Za krajOvim člankom završavamo seri ja l o Bimeru Nadamo se da smo uspel i da vaszainteresujemo za ovu vrlo korisnu klasu Lateha Trudi l i smo se da vamprezentujemo najvažni je delove Bimera koje ćete najčešće koristiti pri l ikomkreiranja svoj ih prezentaci ja

Napominjemo još jednom da je Bimer samo jedna od klasa Lateha što znači da i zaBimer važi sve ono što ste već mogl i da pročitate u ovom časopisu kad smo pisal iseri ja l bdquoUvod u LaTeXrdquo (LiBRE brojevi 17 do 21) Štaviše ovaj seri ja l o Bimeru jebio nastavak upravo tog seri ja la U ovom seri ja lu nismo pisal i o samomformatiranju teksta u prezentaci jama jer se podrazumeva da važe ista pravi la kao iu Latehu a o tome smo pisal i u prethodnom seri ja lu

Hvala vam što ste prati l i ovaj seri ja l i žel imo vam puno uspeha u kreiranju Bimerprezentaci ja

Sam svoj majstor

51

Broj 33

Autor Nenad Marjanović

Kada smo se upoznal i sa podešavanj ima sistema i umrežavanjem vreme je za našprvi Biglbon Blek (BBB - eng BeagleBone Black) projekat Svakom od nas će ovajizazov dati razl ičite ideje a jedna od nj ih može biti i zaštita privatnosti internetkorisnika Nažalost u Srbi j i ne postoj i ni jedan izlazni tor server (eng node) i to jepomalo tužna sl ika s obzirom da govorimo o populaci j i od sedam mil ionastanovnika Al i ovu sl iku možemo promeniti udruženim snagama i za početakkreiranjem Tor transfer i izlaznog servera U ovde prikazanom grafikonufokusiraćemo se na bdquoRauter Brdquo tačku odnosno transfer server konfiguraci ju

BeagleBone Black Rev C

Vodič od prvog dana (3 deo) ndashBeagleBone Black kao Tor relej

Hardver

52

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Tor predstavl ja mrežu servera koj i se povezuju radi bol je enkripci je podataka izaštite IP adrese korisnika Naš ci l j je da danas postanemo deo ovog predivnogprojekta i da se nađemo na svetskoj karti Tor servera

Brzina interneta i zakonske regulativePotrebno je imati na umu nekol iko bitnih stvari

1 Naš server = naša odgovornost2 Obavezno naznačite da ste vi administrator a ne korisnik istog servera3 Da posedujete internet brzinu od 2 Mbs

Ako ispunjavamo tri navedena pravi la i odgovornosti možemo se posvetitiadministrativnim poslovima

Instalacija i podešavanjaU ovom primeru koristimo Debi jan Vizi (eng Wheezy) odnosno Debi jan 7 verzi juna našem BBB uređaju Vi možete testirati i druge Linuks platforme Prvododajemo izvornu bibl ioteku u etcaptsourceslist faj l pokretanjem sledećekomande u terminalu

echo deb httpdebtorprojectorgtorprojectorg wheezy main gt etcaptsourceslistdtorlist

Zatim dodajemo izvorni kl juč vršimo ažuriranje sistema i instal iramo tor i tor-arm(Tor monitoring sistem)

gpg --keyserver keysgnupgnet --recv 886DDD89gpg --export A3C4F0F979CAA22CDBA8F512EE8CBC9E886DDD89 | sudo apt-keyadd -apt-get updateapt-get install debtorprojectorg-keyring -yapt-get install tor tor-arm egrep screen -y

Ovim smo uspešno završi l i instalaci ju Tor servera i sistema za monitoring odnosnonadgledanja našeg Tor servera Sledećom komandom radimo na podešavanj imaTor servera koja se nalaze u etctortorrc faj lu Obratite pažnju i izvršite potrebne

Hardver

53

Broj 33

izmenu u pol j ima IP adresa (eng Address) nadimka (eng Nickname) i kontaktpodataka (eng ContactInfo) pre pokretanja ove komande Kopiramo i pokrećemokomandu u celosti u terminalu

egrep -v ^(|$) etctortorrcORPort 443Address 19216811Nickname LibreTorRelayRelayBandwidthRate 100 KBRelayBandwidthBurst 120 KBContactInfo ltvi at gmail dot comgt irPort 8080DirPortFrontPage etctortorhtmlExitPolicy reject

Detal je o svim vrednostima nećemo iznositi u ovom broju LiBRE časopisa al ićemo o nj ima pisati u sledećem u kome ćemo pričati o zaštiti Tor servera imogućnosti podešavanja određenih izlaznih pravi la (eng ExitPolicy)

Nakon ovoga možemo primetiti da se u folderu etctor ne nalazi torhtml faj l Ovaj faj l ni je od vel ikog značaja i možete ga l ično napraviti i l i preuzeti jednu kopi ju- naprimer sa sledeće lokaci je

cp usrsharedoctortorhtml etctortorhtml

Opcije i Tor Arm monitoringDa bismo ispravno koristi l i Tor Arm potrebno je urediti još jednom etctortorrcfaj l i restartovati servis

echo -e ldquoDisableDebuggerAttachment 0n AvoidDiskWritesrdquo gtgt etctortorrcsudo service tor reload

Ukol iko žel ite koristiti Tor Arm za nadgledanje aktivnosti na serveru pokreniteprogram screen kl iknite na bdquoEnterrdquo i kucajte sudo -u debian-tor arm Naekranu ćete imati sl ičan prikaz

BeagleBone Black

54

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Hardver

55

Broj 33

Da bismo napusti l i screen program koristimo Ctrl + a + d i na taj način kada sesledeći put pri javimo na server kucamo samo screen -r u terminalu - i naći ćemose ponovo na čuvenom Tor Arm monitoring ekranu

Nakon svake promene konfiguracionih faj lova ako slučajno nismo nešto podesi l ikako treba restartujemo servise

U sledećem broju časopisa govorićemo o minimalnim podešavanj ima ikonfigurisanju izlaznog Tor servera (eng Tor Exit Node) opci jama sigurnosti isl ičnim detal j ima u vezi sa našim prvim projektom Do čitanja u sledećem broju

BeagleBone Black

LUGoNS BarCamp 4subota 7 mart 2015 godine

Četvrti LUGoNS-ov Barkemp (BarCamp) održaće se u Novom Sadu usubotu 7 marta 2015 godine na Fakultetu tehničkih nauka sa početkomu 12 časova

Ulaz je slobodan

Poziv za predaju radovaLUGoNS poziva sve zainteresovane da pošal ju svoje radove (predavanjaprezentaci je radionice i diskusi je) do 28 februara 2015 godine

Oblasti iz koj ih možete da pri javite vaše radove su

bull Slobodan softverbull Zaniml j iv hardverbull Hakerski zakonibull Sigurnosne noćne morebull Anonimnost i privatnost na internetubull Duboki veb (eng Deep Web)bull Soci ja lne mrežebull Soci ja lni inženjeringbull Hakovanje mobi lnih uređajabull Internet u oblaku (eng Clouds) ndash hakovanje razbi janje i neočekivano korišćenjebull DPI (eng deep packet inspection)bull Mreža i mrežna neutralnost ndash vlasništvo cenzura nadmudrivanje i pol itika bdquodefaktordquo standarda

bull Programiranje i programski jezici

Nemojte se ustručavati i slobodno nam se javite ako imate rad na gore navedenei l i sl ične teme koj i smatrate interesantnim

Stranica za predaju radova nalazi se na https events lugonsorgp=1658

Page 7: LiBRE 33 Lat

7

Broj 33

28 januar 2015

GHOST - bezbednosni problemGHOST - novi bezbednosni problem u GNU-ovoj Cbibl ioteci koj i dovodi u opasnost sve apl ikaci jekoje koriste funkci je gethostbyname i gethost-byname2 i omogućava udal jenom napadaču dadobi je dozvole koje ima korisnik koj i izvršava tuapl ikaci ju

Koristan l ink http tcoGDYKsH2nOo

1 februar 2015

Pajrat Bej se vratioNajpopularni j i torent sajt Pajrat Bej (The PirateBay) se ponovo vratio posle dvomesečnogperioda kada je bio nedostupan

Koristan l ink http tcorSAPCVXWJi

2 februar 2015

Rasberi-Paj 2 je izašaoDostupan je u prodaj i Rasberi-Paj 2 (Raspberry PI2) sa 4 procesorska jezgra

Koristan l ink http tcoRGlOdoeioc

Vesti

8

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

3 februar 2015

Američka vojska otvara svojprogram za detekciju napadaAmerička vojska je odluči la da svoj program za de-tekci ju napada postavi na Githab i time omogućicelom svetu da koriste softver koj i su oni koristi l i zadetekci ju napada na mrežu ministarstva odbraneOni ovim potezom očekuju povratnu informaci ju odl judi koj i ne rade u vladi i nadaju se unapređenjusvog programa

Koristan l ink http tcov3PYlKF2sz

6 februar 2015

GPG u opasnostiVerner Koh (Werner Koch) programer koj i jezadužen za razvoj GPG-a (Dži-Pi-Dži engl GNUPrivacy Guard) softvera koj i svi koristimo zaenkripci ju kako naše elektronske pošte tako i ostal ihbitnih podataka polako ostaje bez novčanihsredstava Pozivaju se svi zainteresovani i oni koj i suu mogućnosti da pošal ju donaci ju u vidu novca

Koristan l ink http tcojGac5emwPX

9 februar 2015

Arduino razvojno okruženje -novo izdanjeIzašlo je novo razvojno okruženje za Arduino uverzi j i 1 6

Koristan l ink http tco4A0pFcIsVf

Vesti

9

Broj 33

Autor Branimir Karadžić

bgfx je rendering bibl ioteka otvorenog koda sa podrškom za više razl ičitih grafičkihAPI-ja 1 (eng Application Programming Interface) i operativnih sistema 2 Bibl iotekasluži za jednostavni j i pristup grafici i razvoj igara na više platformi Najvećiproblem sa kompjuterskom grafikom je što postoj i više razl ičitih API-ja koj i kada sekoriste direktno onemogućavaju portovanje igara na druge platforme Praveći igrukoja pristupa samo bgfx bibl ioteci a ne direktno API-u autor igre omogućava sebida tu igru na jednostavan način može prebaciti na bi lo koj i podržan operativnisistem odnosno platformu

Predstavljamo

bgfx - Cross-platform renderinglibrary

10

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

U početku bgfx je bio samo hobi projekat i zato ima nemaštovito ime Bi la je tosamo jedna od mnogih bibl ioteka koje sam napravio za pravl jenje igara Kada samradio na jednoj igri postojala je potreba da se igra prebaci sa starog DX9 (engDirectX 9) renderinga na OpenGL (engl Open-dži-el ) pa sam tom pri l ikom izvukaodeo moje hobi bibl ioteke za renderovanje i zapakovao je kao cel inu Posle uspešneprimene ove bibl ioteke u moj im projektima odlučio sam da je objavim kao projekatotvorenog koda na Githabu (eng Github) pod l icencom BSD 2-clause Po mommišl jenju ovaj deo renderinga je trebalo već odavno da bude rešen problem kao ida bude moguće da se igre bez veće muke izdaju na bi lo kojoj platformi po žel j iautora Namenjena je prevashodno manj im autorima koj i žele da imaju potpunukontrolu nad svoj im kodom bez obzira na platformu na kojoj žele da objave igruKod ovakvih komerci ja lnih proizvoda uvek postoje neka ograničenja a ako firmeizgube interes za proizvodom mogu ostaviti autore na cedi lu bez podrške iodržavanja Sa druge strane projekti otvorenog koda omogućuju saradnju autora iunapređenje funkcionalnosti projekta na zadovol jstvo svih

Upotrebom bgfx bibl ioteke korisnik može da zanemari konkretnu implementaci jurazl ičitih tehnologi ja kao što su OpenGL OpenGL ES i Direct3D bez kompromisa saperformansama Ova bibl ioteka ni je tanka apstrakci ja i l i emulator nekogpostojećeg API-ja tipa Guglovog Engl (eng ANGLE) projekta koj i emul ira OpenGL

Predstavljamo

11

Broj 33

ES preko Direct3D-a i l i Valvov TuDži-El (eng ToGL) koj i emul ira Direct3D 9 prekoOpenGL-a nego zaseban API višeg nivoa Iako je u prošlosti bi lo sl ičnih projekatasvi oni su uglavnom imal i pretenzi ju da budu endžin (engine) i l i frejmvork koj i bitvorci igara koristi l i kao takav Takav pristup donosi dosta kompl ikaci ja i veoma jeteško takav projekat integrisati sa postojećim kodom Iz ovog razloga bgfx projekatnema pretenzi je da bude ceo endžin i l i frejmvork nego samo bibl ioteka koju svakomože lako da integriše u sopstveni projekat

bgfx bibl ioteka se trenutno koristi u nekol iko komerci ja lnih igara al i ima i dostainteresovanja za projekat kao osnove za pravl jenje korisničkih apl ikaci ja pa čak ialata za programere

Na projektu je do sada radi lo oko deset l judi Uglavnom su dodaval i podršku zanove platforme primere i l i su povezival i bibl ioteku sa drugim jezicima Što sebuduće saradnje na ovom projektu tiče sve je dobrodošlo čak i sȃmo korišćenjebibl ioteke a zahtevi za uvođenje novih mogućnosti unapređuju samu bibl ioteku

bgfx

12

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Predstavljamo

13

Broj 33

1 Podržava grafičke API-je

bull Direct3D 9bull Direct3D 11bull OpenGL 2 1bull OpenGL 3 1+bull OpenGL ES 2bull OpenGL ES 3 1bull WebGL 1 0

2 Podržava platforme

bull Android (14+ ARM x86 MIPS)bull asm jsEmscripten (1250)bull iOSbull Linuks (x86 x86_64)bull Nejtive klajent (Native Client PPAPI37+ ARM x86 x86_64 PNaCl)

bull OS Iks (OSX 109)bull Rasberi-paj (RaspberryPi - ARM)bull Vindouz (Iks-pe Vista 7 8 10)bull Vin-ar-ti (WinRT WinPhone 80+ )

bgfx

14

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Autor Stefan Nožinić

UvodrEFInd je softverska apl ikaci ja za EFI (Extensible Firmware Interface) sisteme kojaomogućava izbor više operativnih sistema na jednostavan način Ovo je samoupravnik buta (boot) i u ovom broju vam predstavl jamo o kakvom projektu je reč ikako se može primeniti

Šta je (U)EFIPre nego što predstavimo sam projekat trebalo bi prvo da skrenemo pažnju idetal jni je da predstavimo problematiku EFI je nastao kao zamena za dosadašnj iBIOS (Basic InputOutput System) i razvi la ga je kompani ja Intel Ovaj pristup jekasni je zamenjen UEFI standardom EFI tehnologi ja ima prednost u slučajevimakao što su

bull Pokretanje sistema na diskovima preko 2TB memori je korišćenjem GPTtehnologi je

bull Nezavisnost od specifične arhitekture procesorabull Modularan dizajnbull Dobro okruženje pre učitavanja operativnog sistema što podrazumeva i mrežnupodršku

Tehnologi ja omogućava upotrebu 32-bitnih i 64-bitnih adresa na procesorima koj ito podržavaju Rani je BIOS tehnologi ja to ni je omogući la već se uvek koristi la 16-bitna implementaci ja iz istori jskih razloga

Predstavljamo

15

Broj 33

Particiona šemaEFI tehnologi ja ima drugači ju šemu partici ja Dok je stari pristup podržavao samoMBR (Master Boot Record) šemu nova tehnologi ja podržava GPT šemu kojaomogućava veći broj primarnih partici ja Sa starim pristupom taj broj bio jeograničen na četiri primarne partici je od koj ih je svaka morala da ima kapacitetmanj i od 2TB

AplikacijeUEFI podržava izradu apl ikaci ja koje bi se pokretale nezavisno od operativnogsistema Ove apl ikaci je se mogu naknadno instal irati Primer takvih apl ikaci ja supokretači (loader) operativnih sistema kao i upravnici butovanja

EFI sistemska particijaEFI podržava posebnu partici ju za smeštanje raznih potrebnih informaci ja kao štosu potrebni podaci za rukovanje računarom i specifične apl ikaci je Ova partici ja jenajčešće FAT32 sistem datoteka

rEFInd

16

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

But menadžer i but louder - ima razlikeOd popularizaci je GRUB upravnika mnogi korisnici su ostal i bez objašnjenja kakvaje razl ika između but loudera (boot loader) i but menadžera (boot manager) Ovose dešava jer GRUB pruža obe usluge u sklopu jednog programa pa se time teževidi razl ika između ova dva pojma But menadžer je upravnik pomoću kojeg jemoguće izabrati operativni sistem za pokretanje On ne zna ništa speci ja lno ooperativnom sistemu pa time ne zna ni kako da ga pokrene On samo zna datreba da pokrene but louder za taj sistem Kada je sistem izabran pokreće sespecifičan but louder za taj sistem koj i je zadužen za dal j i proces pokretanjakernela Za razl iku od GRUB upravnika rEFInd pruža samo usluge but menadžerašto u početku može zvučati poražavajuće za ovaj projekat Kada uzmemo u obzirda većina sistema danas ima but louder u sklopu kernela (ukl jučujući i Linuks odnovi j ih izdanja) ovaj problem je prevaziđen

Predstavljamo

17

Broj 33

InstalacijarEFInd postoj i kao deb i kao rpm paket al i postoj i i zapakovan kao zip arhivaZahval ju jući tome paket je moguće instal irati upotrebom dpkg komande nadistribuci jama baziranim na Debi janu kao i upotrebom rpm komande nadistribuci jama koje koriste taj način pakovanja paketa Za Ubuntu postoj i i PPArepozitori jum pa rEFInd može biti instal iran na sledeći način

sudo apt-add-repository pparodsmithrefindsudo apt-get updatesudo apt-get install refind

Nezavisno od toga koj i način od gore opisanih koristite rEFInd će automatski bitiprebačen na ESP i biti postavl jen kao podrazumevani upravnik

KonfiguracijarEFInd bi trebalo da vam pruži zadovol javajuću funkcionalnost bez dodatnekonfiguraci je posle instalacionog procesa On će automatski detektovati loudereoperativnih sistema korišćenjem pretrage po svim partici jama koje prepozna Uslučaju da ste napredni j i korisnik i da žel ite da modifikujete ponašanje rEFInda tomožete uraditi izmenom njegove konfiguracione datoteke Postoj i g lobalnakonfiguraci ja i konfiguraci ja za svaki sistem posebno Ovaj tekst bi postao previšedugačak kada bismo ulazi l i u detal je same konfiguraci je pa vam zatopreporučujemo ako imate potrebu za dodatnom konfiguraci jom da posetitedokumentaci ju projekta i l i ako imate neke nedoumice da kontaktirate s namapreko naše e-pošte

Za krajŽelel i bismo da ovaj tekst zakl jučimo ocenom da je ovaj projekat dosta zaniml j ivda pruža zadovol javajuću funkcionalnost i da omogućava korisnicima koj i koristeovaj sistem pokretanja lako pokretanje svoj ih operativnih sistema Još jednomžel imo da vam skrenemo pažnju da nam se obratite i ukažete ako smo nešto važnopropusti l i da pomenemo i l i ako nam se negde potkrala greška

Korisni l ink http wwwrodsbookscomrefind

rEFInd

18

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Autor Nikola Hardi

Opšte je poznato da su računari dobri u radu sa brojevima Međutim vremenom suse i potrebe korisnika i alati za programiranje računara razvi ja l i i rad sa drugači j imtipovima podataka je postao uobičajen i znatno jednostavni j i nego rani je Svi smoimal i pri l iku da radimo sa programima za obradu fotografi ja video materi ja la i l izvučnih zapisa Multimedi ja je ipak tema koja prevazi lazi jedan uvodni kurs o C-ual i do kraja ovog seri ja la ćemo se dotaći i tih tema Za početak osvrnućemo se narad sa tekstualnim podacima na C način

Stringovi na C načinDefinici ja tekstualnog podatka u sferi računarstva se uglavnom svodi na to da jetekst niz karaktera a karakteri su znakovni simbol i Iako imamo mogućnost daradimo sa tekstom i l i multimedi jom računari ipak razumeju samo brojeve pamoramo tako da im predstavimo i tekst Postoje razni standardi kako se pojedinikarakteri predstavl ja ju u memori j i računara između ostalog najpoznati j i su ASCIIEBCDIC UTF i td EBCDIC je standard koj i je prisutan u Eplovom (eng Apple) svetu iviše nema tol iko važnu ulogu ASCII je standard koj i je vrlo prisutan i danas UTF jenastao kao proširenje ASCII standarda javl ja se u više vari janti i uvodi podršku zapisma razl ičita od abecede (kinesko japansko ćiri l ica arapsko i mnoga druga)

Važno je napomenuti da je originalni ASCII standard propisivao 7 bitova za jedankarakter što je dalo prostora za 128 karaktera Među tim karakterima se nalazecifre mala i vel ika slova engleskog alfabeta i niz kontrolnih karaktera Kontrolnikarakteri su oznake za novi red prazno mesto tabulator upravl janje štampačima(vraćanje glave štampača na početak) rad sa terminal ima (alarm i l i obaveštenje

Kako da

Uvod u programski jezik CRad sa stringovima (9 deo)

19

Broj 33

da se nešto dogodi lo) ASCII standard je proširen na 8 bitova odnosno ceo jedanbajt i sada podržava 256 karaktera Potražite na internetu termin bdquoASCII tabelardquo dabiste stekl i uvid u to kako izgleda tzv tabela ASCII karaktera

Rad sa pojedinačnim znakovima ne obećava mnogo Postoj i realna potreba zaradom sa rečima rečenicama l ini jama teksta itd Podaci koj i se sastoje od više odjednog karaktera se u domaćoj l i teraturi nazivaju znakovnim niskama madaodomaćen je i naziv bdquostringrdquo koj i je i mnogo češće u upotrebi U programskomjeziku C se stringovi predstavl ja ju običnim nizovima karaktera (char niz[]) a krajteksta se označava NULL karakterom odnosno speci ja lnim znakom 0 či jabrojevna predstava je pogađate nula Ovakva predstava tekstualnih podatakanosi sa sobom i pojedine kompl ikaci je Gotovo svi savremeni jezici poznaju tipstringa dok su u C-u stringovi ipak samo obični nizovi

Da se podsetimo nizovi u C-u su zapravo pokazivači na deo u memori j i Kadapokušamo da pristupimo jednom elementu niza tada se vrši operaci jabdquodereferenciranjardquo sa zadatim odstupanjem Sledi nekol iko primera koj i i lustrujurad sa nizovima na primeru nizova karaktera

char niz1[] = zdravoniz1[0] = Z

char niz2[5]niz2[0] = 0niz2[1] = kniz2[2] = 0

Pri deklaraci j i niza 1 ni je zadata dužina zato što je u jednom izrazu zadata iinici ja l izaci ja niza koja glasi ldquozdravordquo Prevodi lac može sam da zakl juči kol ikomemori je je potrebno

U drugom primeru je kreiran niz karaktera dužine 5 Međutim popunjena su samoprva tri mesta Primećujete razl iku između prvog i trećeg elementa Prvi je cifra 0(uokviren je navodnicima) a treći je brojčana vrednost 0 koja označava krajstringa

Može se primetiti još jedna razl ika u data dva primera U prvom primeru sukorišćeni dvostruki navodnici dok su u drugom korišćeni jednostruki Razlog za to

Uvod u programski jezik C

20

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

je što se znakovni nizovi koj i su uokvireni dvostrukim navodnicima smatrajustringovima i podrazumevano im se dodaje bdquoterminatorrdquo odnosno znak NULL koj ioznačava kraj stringa Jednostruki navodnici se iskl jučivo koriste za predstavl janjepojedinačnih karaktera Ovo znači da zapisi ldquoardquo i a nisu jednaki Prvi zapis jedužine 2 jer ima i znak NULL koj im je završen

Ispisivanje i učitavanje stringovaPre nego što nastavimo dal je biće objašnjen jednostavan način za ispisivanje iučitavanje stringova pomoću standardnog ulazaizlaza Da se podsetimobibl ioteka za standardni ulazizlaz (ispis podataka u konzol i odnosno terminalu) jestdioh Ukol iko se koristi formatirani ispis potrebno je funkci jama printf() iscanf() proslediti format string koj i sadrži speci ja lan znak s čime je označenoda žel imo da ispišemo znakovni niz sve do NULL karaktera Drugi način jeupotrebom funkci ja puts() gets() i getline() iz bibl ioteke stringh Sledi primer

include ltstdiohgt include ltstringhgt int main()

char niz1[] = Zdravo svete

printf(sn niz1)

scanf(s niz1)puts(niz1)

return 0

Može se primetiti da je u slučaju funkci je printf() potrebno naglasiti speci ja lnimkontrolnim karakterom n da nakon ispisa treba preći u novi red Funkci ja puts() topodrazumevano radi

Za ove i sve druge funkci je dodatnu pomoć je moguće pronaći u Linuksovim manstranicama u odel jku 3 koj i je posvećen standardnim bibl iotekama Recimo mangetline sadrži detal jno uputstvo o funkci j i getline()

Kako da

21

Broj 33

Kopiranje stringovaKao što je u prethodnom odel jku napomenuto stringovi su u C-u samo običninizovi To znači da sledeći kod verovatno neće uraditi ono šta bi bi lo očekivano

niz1 = niz2

Ovime smo pokazivaču niz1 bdquorekl irdquo da pokazuje tamo gde i pokazivač niz2 Efektivno oni sad pokazuju na isti tekst međutim ako izmenimo niz1 to će seodraziti i na niz2 a važi i obrnuto Ovime smo dobi l i samo dva pokazivača na istideo memori je a uglavnom to ni je bio ci l j

Drugi način kako bismo sadržaj drugog niza mogl i da kopiramo u prvi niz je petl jakojom bismo kopiral i element po element Pošto je operaci ja kopiranja stringovavrlo često potrebna postoj i standardna bibl ioteka za rad sa stringovima koja sezove stringh a funkci ja za kopiranje stringova je strcpy()

strcpy(niz1 niz2)

Dati primer kopira sadržaj niza 2 u niz 1 Kopira se element po element sve dok seu nizu 2 ne naiđe na NULL karakter Ovakvo kopiranje (element po element) seinače u stranoj l i teraturi naziva i bdquodeep copyrdquo i vrlo često se sreće u radu sastrukturama podataka gde je potrebno obići celu strukturu podataka i svakielement kopirati a strukturu opet izgraditi u drugom delu memori je

Zaniml j ivo je što je kopiranje stringova moguće pojednostaviti ukol iko definišemonovi tip podatka kao strukturu koja sadrži niz karaktera i potom izvršimo kopiranjeOvo je trik koj i se uglavnom ne koristi u praksi i spomenut je samo kaozaniml j ivost

include ltstringhgt struct str char niz[50]

int main()

struct str s1struct str s2

Uvod u programski jezik C

22

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

strcpy(s1niz zdravo)s2 = s1

s2niz[0] = Z

puts(s1niz)puts(s2niz)

return 0

Kreirana je struktura str koja sadrži pol je niza karaktera pod nazivom niz Pozivomfunkci je strcpy() kopiramo string ldquozdravordquo u s1 čime smo bdquonapuni l irdquo sadržajobjekta s1 Potom je izvršena redovna dodela čime je sadržaj objekta s1 kopiran us2 Zatim je izmenjen samo prvi karakter objekta s2 i oba stringa su ispisanaPrimećujete da su kopirani svi znakovi a da je izmenjen samo drugi objekatZaniml j iv trik

Poređenje spajanje i pretraga stringovaDruga vrlo česta situaci ja je poređenje dva stringa Ukol iko bi poređenje bi loizvršeno upotrebom redovnog operatora za poređenje == tada bi u stvari bi lepoređene samo adrese na koje pokazuju pokazivači tih stringova jer da sepodsetimo stringovi su u C-u samo obični nizovi Ispravan način za poređenje dvastringa je pozivanjem funkci je strcmp() či ja je povratna vrednost 0 ukol iko su jojprosleđeni stringovi sa jednakim sadržajem

include ltstringhgt int main()

char niz1[] = zdravochar niz2[] = zdravo

if( strcmp(niz1 niz2) == 0)puts(Stringovi su jednaki)

elseputs(Stringovi nisu jednaki)

return 0

Kako da

23

Broj 33

Funkci ja strcmp() poredi svaki element prosleđenih nizova pojedinačno a dobraje vežba implementiranje nove funkci je strcmp() koja će unutar petl je da porediodgovarajuće elemente prosleđenih nizova i potom vratiti rezultat 0 ukol iko su svielementi jednaki Potrebno je pripaziti na situaci ju kada su stringovi razl ičitihdužina

U svetu računara spajanje dva sadržaja se zove konkatenaci ja Odatle i nazivfunkci je za spajanje dva stringa strcat() Važno je uveriti se da je string u koj i sedodaje sadržaj dovol jno vel ik da ga prihvati inače može da dođe do nežel jenogprepisivanja u memori j i uništavanja drugih podataka i neispravnog ponašanjaprograma

Pretraga unutar stringa se može obaviti funkci jom strstr() Ova funkci ja kaoparametre očekuje pokazivač na niz karaktera (string) u kojem je potrebno pronaćistring koj i je prosleđen kao drugi parametar Povratna vrednost je pokazivač nadeo memori je gde se žel jeni string prvi put pojavio

Sledi malo opširni j i primer koj i i lustruje spajanje pretragu i kopiranje stringova

include ltstringhgt int main()

char niz_a[50] = LiBRE je char niz_b[] = najbolji casopischar niz_c[] = e-magazin

strcat(niz_a niz_b)puts(niz_a)

char cilj = strstr(niz_a casopis)strcpy(cilj niz_c)

puts(niz_a)

return 0

Uvod u programski jezik C

24

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Pretvaranje tipova podataka u stringove ipretvaranje iz stringovaPretvaranje podataka iz jednog tipa u drugi i l i kastovanje (eng type casting) se zavećinu tipova vrši jednostavno pisanjem tipa u zagradama na primer (int)523 Stringovi su i po ovom pitanju drugači j i Postavl ja se pitanje šta pretvoriti ucelobrojni tip - da l i adresu na koju pokazuje pokazivač niza koj i predstavl ja stringPrvi element Šta ako taj string ni je broj Predstavićemo rešenje za konverzi jubrojeva u stringove i obrnuto

Ispis podataka na ekranu se takođe može smatrati konverzi jom Broj sa pokretnimzarezom je u memori j i prikazan na pomalo čudan način a pozivom funkci jeprintf() kada je kao format zadat f na ekranu ćemo dobiti razuml j iv niz znakovaSl ičan rezultat možemo dobiti funkci jom sprintf() a jedina razl ika u odnosu naprintf() je ta što sprintf() kao prvi argument očekuje pokazivač na string dok sudrugi (format string) i treći (argumenti koj i se povezuju sa formatnim stringom)sl ični kao kod funkci je printf()

Kod pretvaranja stringova u brojevne tipove može poslužiti funkci ja sscanf() kojase ponaša sl ično kao funkci ja scanf() s tim što je prvi argument adresa(pokazivač na string) koju žel imo da skeniramo u nadi da će se poklopiti saformalnim stringom koj i je drugi argument a rezultati će biti sačuvani u adresamakoje su prosleđene kao 3 4 i ostal i parametri Drugi način za pretvaranje stringovau celobrojne brojeve i brojeve sa pokretnim zarezom su funkci je atoi() i atof()

Funkci je koje koriste formatni string su česte u jeziku C i zaslužuju posebnu pažnjumeđutim to je priča za poseban članak U ovu klasu funkci ja spadaju recimo ifunkci je za rad sa datotekama

BezbednostRad sa stringovima može da bude izuzetno opasna stvar po pitanju bezbednostiprograma Ukol iko se niz karaktera ne završava NULL karakterom svašta može dapođe po zlu pri pozivu funkci ja kao što su strcpy() strcmp() i sl ične Cela klasatih funkci ja se oslanja na postojanje znaka koj i označava kraj stringa Kada stringni je propisno završen tada te funkci je mogu da zalutaju u deo memori je vanstringa i svašta može da pođe po zlu Ovakav tip napada se inače zoveprekoračenje bafera (eng buffer overflow) Preporučen način kako da izbegnete

Kako da

25

Broj 33

Pregled popularnosti GNULinuxBSDdistribuci ja za mesec februar

Distrowatch

Pad ltPorast gtIsti rejting =(Korišćeni podaci sa Distrovoča)

12345678910111213141516171819202122232425

MintUbuntuDebianopenSUSEelementaryMageiaFedoraManjaroCentOSLXLEArchBodhiAndroid x86Kal iPCLinuxOSPuppyRobol inuxLubuntuQ4OSBlack LabNetrunnerSimpl icityEvolveZorin4MLinux

2919gt1778gt1701gt1323gt1204gt1174gt1166gt1028lt1020gt965gt957gt907gt900lt760gt742lt732gt695gt670gt663gt655gt652gt629gt607gt583gt517=

takve nepri jatne situaci je pri radu sastringovima je da koristite verzi jefunkci ja koje su ograničenemaksimalnom dužinom stringa kaošto su strncpy() strncat() strncmp() i td Sve te funkci je kaotreći parametar zahtevaju broj koj iodređuje maksimalnu očekivanudužinu stringa Još jedna vrlo korisnafunkci ja je strlen() či j i zadatak je daodredi dužinu stringa Budite pažl j ivi ovo je prvo mesto gde se tražebezbednosni propusti u programimaNe verujte podacima koj i spol ja ulazeu vaš program a pogotovo kada je rečo stringovima

Uvod u programski jezik C

26

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Autor Dejan Maglov

Projekti slobodnog softvera obično počinju kao projekti pojedinca i l i male grupeprogramera a koj i rade na razvoju softvera či j i je ci l j da zadovol j i neke od nj ihovihl ičnih potreba Projekat će se smatrati uspešnim ukol iko se šira zajednicazainteresuje za njega nakon što prepozna korisnost softvera ne samo za pojedincekoj i su započel i projekat već i za širu zajednicu Kada je u pitanju slobodni softvervremenom je postala stalna praksa da se zajednica umeša u razvoj projekataDobri projekti sami privlače zajednicu l judi koj i su zainteresovani za nj ih i ona uvećini slučajeva preuzima na sebe testiranje pobol jšanje funkcionalnosti održavanje i tehničku podršku projekta

Zajednice slobodnog softvera mogu da se okupe oko projekta slobodnog softverapo teritori ja lnom principu i l i da nastanu kombinaci jom ovih principa

Primeri

bull LiBRE projekat okupl ja zajednicu oko projekta bez teritori ja lnog ograničenjabull LUGoNS (Linux User Group of Novi Sad) je zajednica korisnika Linuksa poteritori ja lnom principu bez obzira na konkretan projekat

bull Ubuntu-rs zajednica koja je kombinaci ja okupl janja zajednice oko konkretnogprojekta (Ubuntu) i teritori ja lnog principa koj i se ograničava na teritori ju Srbi je

Ova sinergi ja projekata i korisnika slobodnog softvera ima više prednosti i zakorisnike i za projekat Projekat se na ovaj način brže razvi ja dobi ja na

U potrazi za idealnom distribucijom

Socijalni kriterijumi za izbor idealnedistribucije (6 deo)

Oslobađanje

27

Broj 33

funkcionalnosti greške se brzo ispravl ja ju i td Korisnici dobi ja ju osećaj dapripadaju grupi druže se sa istomišl jenicima učestvuju u promoci j i kval itetnihpojedinaca itd

Dve najvažni je uloge lokalnih zajednica za GNULinuks distribuci je su

1 pružanje tehničke podrške i edukaci je na maternjem jeziku2 rad na lokal izaci j i i pri lagođavanje distribuci je lokalnim potrebama

Informaci ja da postoje lokalne zajednice slobodnog softvera je od naročitogznačaja za početnike i korisnike koj i nedovol jno dobro znaju strane jezike(naročito engleski jezik) Ako izuzmemo komerci ja lne projekte otvorenog koda(Red Het SUSE) ne postoje zvanične škole i kursevi za slobodni softver Zaedukaci ju početnika je uglavnom zadužena zajednica a jasno je da je učenje namaternjem jeziku uvek lakše nego na bi lo kom drugom stranom ma kol ikodobro ga poznajete

Forumi i viki stranice lokalnih zajednica su prave bibl ioteke u koj ima korisnicimogu da nađu većinu odgovora na svoja pitanja a za sva ostala tu su forumi iIRC kanal i zajednica na koj ima uvek ima nekoga i koj i imaju već gotova rešenjaza vel iki broj problema

U potrazi za idealnom distribucijom

28

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Lokalne zajednice kao kriterijum za izbor idealnedistribucijePočetnicima i korisnicima koj i ne vladaju dobro engleskim jezikom toplopreporučujemo da biraju GNULinuks distribuci je koje imaju aktivnu lokalnuzajednicu Ovladavanje novim operativnim sistemom je mnogo lakše ukol iko vambdquoleđa čuvardquo lokalna zajednica na koju se uvek možete osloniti

Već smo spomenul i da su popularni je GNULinuks distribuci je namenjenepočetnicima Slučaj je isti i sa lokalnim zajednicama okupl jenim oko nj ih Ovomeđutim ne znači da je kval itet usluga koje nude manje popularne lokalnezajednice okupl jene oko distribuci ja namenjenih napredni j im korisnicima loši j i Manje popularne distribuci je okupl ja ju manje l judi a l i zato oni poseduju većeznanje Iskustvo sa zajednicama okupl jenim oko slobodnog softvera je uglavnompozitivno i ukazuje na to da kval itet usluga koje one nude korisniku ni je uslovl jenpopularnošću i masovnošću zajednice nego iskl jučivo njenom (ne)aktivnošću

U svakom slučaju dosadašnj i saveti za izbor idealne distribuci je važe i dal jeSoci ja lni aspekt slobodnog softvera je samo dodatni faktor koj i vam može pomoćipri donošenju odluke kada se dvoumite između nekol iko mogućih rešenja

Još uvek ne postoj i na jednom mestu potpuni i ažurirani spisak svih aktivnihsrpskih zajednica Nešto najbl iže tome može da se nađe na adresihttps pulsslobodewordpresscom Za informaci je o nekim drugim lokalnimzajednicama koje možda postoje al i nisu na ovom spisku moraćete sami dapretražite internet

Lokalizacija kao kriterijum za izborZa lokal izaci ju GNULinuks distribuci ja i GNU programa odgovorni su pojedinci ilokalne zajednice Sasvim sol idnu srpsku lokal izaci ju mogu imati i projekti koj iuopšte nemaju svoju lokalnu zajednicu a isto tako lošu lokal izaci ju mogu imati iprojekti sa dobrom lokalnom zajednicom Sve je stvar prioriteta zajednica iaktivnosti pojedinaca

Pravu i kontrol isanu lokal izaci ju može imati samo lokalni projekat Ovakvihprojekata u Srbi j i ima malo i teško se probi ja ju čak i u lokalu u konkurenci j isvetskih projekata Istina je da mnoge veće GNULinuks distribuci je imaju srpskulokal izaci

Oslobađanje

29

Broj 33

ju u ponudi pa se možda sl ični lokalni projekti koj i su usmereni samo na striktnulokal izaci ju smatraju nepotrebnima Uzvodna lokal izaci ja u slučaju Srbi je vrlo čestobude veoma loše čak nakaradno sprovedena Jedna polovina programa jelokal izovana srpskom ćiri l icom a druga latinicom Ako postoj i još delova sistemakoj i uopšte ni je lokal izovan onda se pojavl ju ju i delovi programa koj i su naengleskom Zato ćemo se vratiti na prvu rečenicu ovog pasusa i ponovo utvrditi dasamo lokalni projekat može potpuno kontrol isati pravu srpsku lokal izaci ju

U Srbi j i za sada imamo dva aktivna projekta GNULinuks distribuci je ndash TriOS(http triosrs) i Serbian (http wwwdebian-srbi ja iz rspserbianhtml) Obaprojekta su mlada i imaju svoj ih prednosti i mana Kome treba lokal izovanoperativni sistem može da proba jedan od ova dva projekta

U potrazi za idealnom distribucijom

30

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Iako ove dve domaće distribuci je nisu baš naj idealni je interesantno je probati ih iuporediti sa drugim distribuci jama

Za kraj serijalaNamera nam je bi la da kroz ovaj seri ja l o kriteri jumima pri izboru idealnedistribuci je definišemo većinu kriteri juma pri izboru i pokažemo zašto je teškoodgovoriti na jednostavno pitanje bdquoKoju mi distribuci ju preporučujeterdquo

Ni na samom kraju nismo dal i konkretan odgovor na pitanje koja je idealnaGNULinuks distribuci ja Suviše je subjektivnih ocena da bi se mogao datikonkretan odgovor Smatramo da je jako teško napisati neki algoritam izbora pokriteri jumima koje smo identifikoval i i definisal i a možda je čak i nemoguće poštose izlazi stalno menjaju Izlazi iz tog algoritma su GNULinuks distribuci je koj ih izdana u dan ima sve više a i one stare se stalno menjaju

Sam seri ja l bdquoU potrazi za idealnom distribuci jomrdquo neće biti završen samo zato štose više neće baviti kriteri jumima pri izboru nego će pokušati da predstavl jaGNULinuks distribuci je koje su po nečemu bdquoidealnerdquo

Oslobađanje

31

Broj 33

ORM

Autor Dejan Čugal j

Object relation mapping (ORM)

ORM (eng Object RelationMapping) je način postizanja traj-nosti (eng persistence) objekataunutar relacionih baza podatakaModel deluje kao posrednik nalogičkom delu apl ikaci je Automat-ski presl ikava podatke iz objekata ubazu i nazad na zahtev apl ikaci jeDa bismo objasni l i kako ovo sveradi moramo da vam predstavimoORM frejmvork (eng framework)programa otvorenog koda -Hajbernejt (eng Hibernate -http hibernateorgorm)

Šta je ORMUkratko ORM je automatizovano transparentno presl ikavanje objekatakorišćenjem metapodataka koj i opisuju mapiranje veze između objekta i baze

ORM (2 deo)

Slobodni profesionalac

32

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

podataka u apl ikaci jama koje su napisane u objektno ori jentisanim programskimjezicima Apl ikaci ja komunicira sa ORM-om preko njegovog vlastitog API-ja (engapplication programming interface) i određenih objekata Ova komunikaci ja jepotpuno odvojena od komunikaci je koja se odvi ja između ORM-a i baze podatakapreko SQL-a i DBC-a

Da bi se postigla i dostigla potpuna snaga ORM-a u apl ikaci j i koju projektujemonikako se ne sme iskl jučiti znanje relacionih modela SQL jezika te poznavanjeDBMS-a u kome se radi ORM ni je ništa drugo do srednj i sloj između gorepomenutih tehnologi ja i objektno ori jentisanog programiranja kao što smo to dosada već više puta naglasi l i

Implementacija ORM-aPostoje razl ičiti načini implementaci je ORM-a Mark Fasl (Mark Fussel) je 1997definisao četiri nivoa

1 bdquoČistrdquo relacioni način2 Slabo mapiranje objekata3 Umereno mapiranje objekata4 Potpuno mapiranje objekata

bdquoČistrdquo relacioni način

Cela apl ikaci ja ukl jučujući i korisnički interfejs dizajnirana je relacionim modelom iSQL relacionim operatorima Ovakav pristup je odl ičan za male projekte Direktanpristup SQL-u omogućava fino podešavanje svakog aspekta upita koj i se postavl jabazi podataka Osnovne mane su portabi lnost (prenosivost) i održavanje ovakvihsistema pogotovo ako se planira korišćenje apl ikaci je na duži rok Ovakvi sistemimasovno koriste sačuvane procedure (eng stored procedures) što znači da jeposlovna logika (eng busines logic) prebačena na samu bazu podataka

Slabo mapiranje objekata

Entiteti su predstavl jeni kao klase i mapiranje se radi ekspl icitno ka relacionimtabelama SQLJDBC je sakriven od poslovne logike korišćenjem poznatih šablona(patterns)

Umereno mapiranje objekata

Slobodni profesionalac

33

Broj 33

Dizajn apl ikaci ja se svodi na objektne modele SQL se generiše u vremekompaj l iranja (eng build-time) i l i u vreme izvršavanja (eng run-time) Specifikaci jaupita nad bazama podataka se radi na objektno ori jentisanom jeziku Ovakvisistemi se koriste u apl ikaci jama srednj ih vel ičina kod koj ih je bitna portabi lnostizmeđu razl ičitih sistema za upravl janje bazama podataka (DBMS)

Potpuno mapiranje objekata

Podržava sofisticirano objektno model iranje nasleđivanje i pol imorfizamEfikasnost dobi janja podataka je na visokom nivou i koriste se metode kao što sulenjo učitavanje (eng lazy loading) i strategi ja keširanja (eng caching) Implementaci ja je transparentna u apl ikaci jama Ovaj nivo je jako teško dostići Pojedincu su potrebne godine razvoja da postigne ovakvu fleksibi lnost pristupa imanipulaci ja u relacionim bazama podataka Upravo ovaj nivo se postiže ako sekoriste rešenja ORM-a kao što je Hajbernejt

Zašto ORMImplementaci ja ORM rešenja pogotovo ako seprvi put susrećete sa ovim modelom može dabude veoma frustrirajuća i malo teža zaimplementaci ju Kada ovo kažemo misl imo daprogramer koj i implementira ORM i hoće da istibude kval itetno urađen mora da posedujepredznanje objektno ori jentisanog programiranjai naprednih tehnika kao što su nasleđivanje ipol imorfizam

Ovo inicira fundamentalna pitanja

bull Pa zašto bi iko onda implementirao ovako nešto kompleksnobull Vredi l i truda upuštati se uopšte u ORM

Odgovor ni je jednostavan Dosadašnja iskustva u korišćenju ORM-a i njegovapopularnost već daju odgovor na postavl jeno pitanje Očigledno je da su benefitikoje donosi ovaj model veći od kompleksnosti njegove implementaci je a to su

Hibernate ORM

34

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Veća produktivnost

ORM smanjuje kol ičinu koda potrebnog za ostvarivanje trajnosti podataka Ovoomogućava programeru da vreme koje bi utrošio na ručno mapiranje podatakautroši na druge delove apl ikaci je

Lakše održavanje

Manje l ini ja koda osigurava bol ju razuml j ivost (i možda bol j i kval itet koda) jernaglašava apl ikaci jsku logiku ORM takođe ublažava uticaj nastal ih promena kaošto su promene u bazi strukturi tabela i td

Prenosivost

Većina ORM rešenja podržava sisteme za upravl janje bazama podataka raznihproizvođača ORM u potpunosti odvaja sloj apl ikaci je od stvarne SQL komunikaci jekoja se odvi ja u pozadini Time omogućava da se pišu apl ikaci je koje će moći da seizvršavaju na razl ičitim bazama podataka bez potrebe za dodatnim kodiranjemOva komunikaci ja se odvi ja sa programskim interfejsima ORM-a nezavisno oDBMS-u sa koj im je u bi lo kom momentu povezan ORM takođe omogućava lakšiprelaz sa manj ih na veće baze podataka tokom razvoja apl ikaci je

Uvidel i smo da trenutno postoje dve paradigme koje se bdquosudarajurdquo i koje supodjednako dobre same za sebe Relaciona paradigma potvrđuje da sve što jeizgrađeno na matematičkim osnovama je i trajno u smislu kval iteta koje posedujeU domenu u kom relaciona paradigma egzistira ona je ako je to u ovo vremeuopšte moguće tvrditi nezamenj iva

Ono što otvara pitanja i daje razlog za sumnju je koja je krajnja granicaupotrebl j ivosti relacione paradigme tj kol iki su kapaciteti složenosti zahtevaapl ikaci ja sa kojom može da se nosi Praksa je pokazala da je sasvim mogućebdquoizvestirdquo složene projekte - al i održavanje skalabi lnost razuml j ivost prenosivost -pitanja su sa koj im se relaciona paradigma teško može izboriti

Sa druge strane svoj habitat u informacionim tehnologi jama je našla i objektna

Slobodni profesionalac

35

Broj 33

paradigma Iako na prvi pogled ova dva modela nemaju ništa zajedničko - što je uneku ruku i istinito gledajući prirodu podataka koj im manipul išu - praksa jepokazala da su usko povezane i skoro da imaju sinaptičku vezu

Pitanje bdquokako spoj iti te sinapserdquo dovelo je do žučnih rasprava u uskim naučnimprogramersko-administratorskim krugovima Rodi l i su se razni model i a l i jedan jeiskočio i polako ulazi u široku primenu - a to je ORM Svoj im supti lnim pristupomproblemu nekompatibi lnih paradigmi nekako je uspeo da stvori taj nedostajućibdquoelektrični signalrdquo koj i ih je povezao Ovo je omogući lo da dve strane koje susvaka za sebe u svom domenu ostavi le i ostavl ja ju duboki trag u informacionimtehnologi jama sarađuju i donesu novi kval itet

Korisni l inkovi

[1] Hibernejt http hibernateorg[2] Viki http googlLlZulw[3] Tutori ja l i http googlCGzvnc

Hibernate ORM

36

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Autor Kriptopank

Šta su zapravo metapodaci Najkraće rečeno to su podaci o podacima i l iinformaci je koje opisuju podatke

Najpre da napravimo razl iku između podataka i metapodataka Podaci sunaprimer snimak (i l i transkript) vaših telefonskih razgovora sadržaj poruka kojepišete primate i l i šal jete podaci koje kačite na internet i l i preuzimate pretrageGuglom postovi na forumima dopisivanja na IRC kanal ima i l i drugim četovimaaudio i video snimci Skajp razgovora i tako dal je

Hajde da vidimo šta bi bi l i odgovarajući metapodaci za ove primere

bull Za telefonske razgovore metapodaci mogu biti lokaci ja učesnika brojevitelefona trajanje razgovora IP i MAC adresa

bull Za poruke četove i Skajp i l i druge video-audio komunikaci je sl ično je kao kodtelefonskih razgovora

To su samo metapodaci

Internet mreže i komunikacije

37

Broj 33

bull Kod foruma i pretraga Guglom ima malo manje metapodataka al i Gugl i raznisajtovi i forumi ionako čuvaju logove o korisnicima što su takođe metapodaci

Ako do sada koj im slučajem niste uvidel i opasnost po privatnost u ovimmetapodacima koje svako od nas smrtnika svakodnevno ostavl ja za sobom usvetu interneta i ostal ih digitalnih komunikaci ja nadamo se da će vas ovaj primermakar podstaći na razmišl janje a možda i na nešto više

Zamisl i te da neko (zvaćemo ga posmatrač) stalno sakupl ja metapodatke koje zasobom ostavl jate kao mrvice hleba Posmatrač recimo zna da se nalazite naautoputu nedaleko od famoznog Feketića da se ne krećete da zovete AMSS zatimšlep službu i možda taksi a l i ne zna šta ste razgovaral i I l i posmatrač vidi da steprvo zval i aerodrom Nikola Tesla pa odmah potom taksi a l i ne zna šta sterazgovaral i I l i posmatrač vidi da ste zval i prvo šest brojeva či je identitete takođezna pa vidi da se oni zatim kreću ka vama - GPS (eng Global Positioning System) pa zatim pica servis Mekdonalds i neku poznatu prodavnicu kineske hrane al i nezna šta ste razgovaral i

Posmatrač ne mora da bude mnogo pametan niti da prisluškuje vaše razgovore dabi shvatio šta se dešava i l i šta će se desiti Sasvim mu je jasno da vam je u prvomprimeru auto stao na autoputu zatim da ste se u drugom slučaju uputi l i naaerodrom i da možda putujete van zemlje i l i ste poslal i taksi po nekoga saaerodroma a da u trećem slučaju okupl jate žurku kod vas Više možete pogledatina http googl7vUjP

Iako su to bdquosamordquo metapodaci treba biti svestan da ti metapodaci o vama stvarajujednu digitalnu sl iku i l i bol je reći digitalni mozaik i na neki način vas jedinstvenoodređuju Pogotovo kada se planski prikupl ja ju na više nivoa (kompjuter pametnitelefon pametni automobi l i kreditna kartica) metapodaci čine vaš digitalniidentitet Al i da stvar bude još gora ta sl ika o vama ne mora nužno biti istinita jerse lako može lažirati Recimo možete zameniti telefone i l i automobi le sa nekimnamerno i l i slučajno i l i vam neko može jednostavno ukrasti telefon laptop i l ikreditnu karticu Zaniml j iv video http googlKO1fKf

Evo jednog primera koj i vas može uvući u vel ike nevol je Recimo da prolazitenekom zabačenom ul icom i da vam neprimetno ispadne telefon al i vi to neprimetite i nastavite dal je svoj im putem U toj ul ici se samo nekol iko minutakasni je desi neko ubistvo i vas pozovu u pol ici ju kao osumnj ičenog Ako koj im

To su samo metapodaci

38

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

slučajem nemate dobar al ibi i l i nemate svedoka da posvedoči da niste bi l i u tojul ici nego tamo gde ste stvarno bi l i a drugih svedoka nema - možete jako lošeproći Zaniml j ivi video http googlspS5OZ

Metapodaci se takođe nalaze i u faj lovimapodacima koje svakodnevnopreuzimamo sa interneta pravimo i koristimo Svaki tip podatka može da sadržiodređene metapodatke koj i bol je opisuju sam podatak kao naprimer vremenastanka podatka kol iko je vremena potrošeno za njegovo kreiranje kol iko putamu je pristupl jeno kad je poslednj i put pristupl jeno i tako dal je Iako se ovakvimetapodaci možda još uvek čine bezazlenim oni mogu sadržati i IP adresuračunara sa kog su napravl jeni GPS koordinate (najčešće PNG format sl ika satelefona) ko ga je napravio (l ičnost i l i kompani jaorganizaci ja) naziv uređaja imodel sa koga je napravl jen kao i MAC adresu uređaja mej l adresu kreatorasoftver koj im je napravl jen i tako dal je Sve ovo može mnogo da naškodiprivatnosti izvornog kreatora faj la pogotovo ako je sadržaj poverl j iv Ukol iko nekopresretne taj podatak na internetu može saznati od koga je potekao Da ovo možebiti katastrofa po kreatora takvog faj la može i lustrovati primer torenta Ako stedošl i u posed nekih sl ika i l i video materi ja la i l i teksta koj i žel i te da podel ite sasvetom preko nekog torent sajta morate taj podatak prvo očistiti odmetapodataka da ne bi svako ko skine to što ste okači l i saznao da vi stoj i te izatoga

Internet mreže i komunikacije

39

Broj 33

Ljudi se konstantno prate metapodaci se sakupl ja ju i to ni je sada već ništa novoal i možemo da se trudimo da iza sebe ostavl jamo malo manje nežel jenihmetapodataka i da ih takoreći čistimo iz podataka koje razmenjujemo Na srećupostoje programi koj i ovo dobro rade

Najpre je potrebno da vidimo koje sve metapodatke neki faj l sadrži kako bismo seuveri l i da ovi metapodaci stvarno postoje i da je faj l bezbedan nakon nj ihovogbrisanja

Ako koristite operativne sisteme GNULinuksa treba da iz terminala preuzmete iinstal irate program pod nazivom exiftool

sudo apt-get install exiftool

Ovaj program će nam pružiti uvid u sve metapodatke koje faj l sadrži Korišćenje jeiz terminala al i je zato veoma jednostavno samo ga pokrenite na sledeći način

exiftool File

i l i

exiftool putanjadofajlapočevodkorenogdirektorijuma

Dobićete prikaz metapodataka koje je program pronašao Sada je potrebno davidimo da l i je podatak bdquoprl javrdquo tj da l i ima u njemu nešto da se briše i da akoima iz njega sve nepotrebno obrišemo Tu će nam pomoći drugi program zvaniMAT (eng Metadata Anonymisation Toolkit) koga možete naći na sajtuhttps matboumorg i l i jednostavno za korisnike Ubuntua i Debi jana uSoftverskom centru i l i ga možete instal irati iz terminala

sudo apt-get install mat

MAT će proveriti da l i je podatak bdquoprl javrdquo i l i ne i za vas ga očistiti od nežel jenihmetapodataka

Kada očistite faj l on je spreman za del jenje sa drugima a vi ste bezbedni jer nikone može reći da je faj l potekao sa vašeg računara

To su samo metapodaci

40

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Autor Dejan Čugal j

GH Hardi bdquoPrava matematika nema uticaj na ratrdquo - odbrana matematičara1940 godina

Bi l Tat - britanski matematičar verovatno niste čul i za njega1942 godine je izveo ogroman poduhvat koj i je skratio rat dvegodine (barem po rečima Ajzenhauera) i spasio mi l ione životaNažalost njegova vel ičina je preminula 2002 godine obavi jenavelom tajne i nikada zvanično ni je priznato njegovo dostignuće

Tomi Flauers - bivši inženjer poštanskog saobraćaja pretvorio jematematičke ideje Tata u prvi računar a to ni je bio bdquoENIACrdquo1Preminuo je 1998 godine a pretpostavl jamo da nikada niste čul ini za njegovu vel ičinu

Ovi umni giganti bdquoBlečl i parkardquo omogući l i su Britani j i da dešifruje strogo poverl j ivumašinu koju je koristio Hitler da diriguje drugim svetskim ratom a to ni je bi labdquoENIGMArdquo nego nešto mnogo tajni je i značajni je Vel ika je verovatnoća da nistečul i ni za ovo Neki kažu da je to bio Hitlerov Blekberi (BlackBerry)

Izgubljeni heroji bdquoBlečli parkardquo

1 engl Electronic Numerical Integrator And Computer - prvidigitalni elektronski računar

Internet mreže i komunikacije

41

Broj 33

1939 godine bdquoBlečl i parkrdquo je postao ratni štab MI6 (britanske vojne obaveštajneslužbe) Do danas je procurelo u javnost i dokumentovano brojnim fi lmskimdokumentarcima samo da je tu Alan Tjuring uspeo da dešifruje nemačkumornaričku šifru poznatu kao bdquoENIGMArdquo i uvel iko doprineo pobedi saveznika a to jesamo deo priče koj i je ispričan

U Blečl i parku su bi la tri heroja AlanTjuring Bi l Tat i Tomi Flauers Od nj ihtroj ice jedino Alanu Tjuringu je priznat deozasluga za pobedu saveznika u Drugomsvetskom ratu Pregledom otkrivenihpodataka danas možemo da tvrdimo daje bdquoENIGMArdquo već sa početka drugogsvetskog rata bi la zastarela tehnologi ja Zbog toga je bi lo lako skinuti veo tajne sa

ovog uspeha heroja Blečl i parka

Izgubljeni heroji bdquoBlečli parkardquo

42

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Bi l Tat koj i je dešifrovao bdquoTANI sistemrdquo (TANI) i Tomi Flauers koj i je samo svojomintuici jom i znanjem sklopio prvi računar na svetu (bdquoKOLOSrdquo) u svrhu bržegdolaženja do informaci ja razbi jenog koda bdquoTANIrdquo tako da zastarelost šifrata budesvedena na minimum - radi l i su na novoj generaci j i mašina za šifrovanje Ovatehnologi ja je bi la prepoznata kao tehnologi ja budućnosti pa i danas iznadinformaci ja o tim tehnologi jama stoj i natpis bdquovrhunska tajnardquo (eng Top Secret) Upravo ovaj veo tajni oko šifrata bdquoTANIrdquo i prvog računara je rezultirao iskrivl jenjuistori je informatike

Za uspehe u prvim godinama rata je zaista zaslužno razbi janje bdquoENIGMArdquo šifrata ito ni je sporno al i krajem 1941 godine u etru planete se začuo novi zvuk To je bi lanova mašina za šifrovanje ni je bi la zasnovana na bdquoMorzeurdquo već je radi la naprincipu teleprintera

Jedna od kl jučnih ideja Hitlerovog ratovanja je bi la u vel ikoj mobi lnosti i brzomdelovanju trupa na terenu a da bi se to izvelo komunikaci ja je isto tako morala dabude u najmanju ruku putem radio signala

Razl ika je ogromna Razl ika je u kol ičini podataka koj i može da se prenese ovimbdquotajnimrdquo putem Prvi svetski rat je bio zaniml j iv jer su se šifrovane poruke baziralena rečima dok je Drugi u potpunosti otvorio vrata današnjoj kriptografi j i a to jematematika

Originalan nemački kocircdni naziv za ovaj šifrat bio je bdquoLORENCrdquo Britanska

Internet mreže i komunikacije

43

Broj 33

obaveštajna služba mu je dala nadimak bdquoTANIrdquo Čak ni dan danas ni je baš poznatokako je sve nastalo al i pouzdano se zna da je tajnu mašinu Hitler nazvaobdquoGehajmšrajberrdquo (nem Geheimschreiber) - mašina tajni

U srž i tehnologi ju šifrovanja bdquoLORENCrdquo šifrata nećemo ulaziti u ovom članku al iverujte nam na reč - ni je bi la jednostavna Može se pretpostaviti da je inspiraci jaŠenonovog 2 rada slučajnosti bi la upravo ova tehnologi ja iz Drugog svetskog rata

Ono čime se Treći rajh vodio je bdquosigurnardquo šifrovana veza koju niko ni je smeo dadešifruje Prenošenje šifrovanih poruka pomoću radio signala je dalo obaveštajnimslužbama mogućnost presretanja poruka poslatih radio talasima Da l i se ovo idanas dešava Imamo l i sigurnost u našim šifrovanim podacima današnj ice

Ono što je usledi lo nakon proboja ovog bdquoneuhvatl j ivogrdquo šifrata je upravo ono što jeprincip današnj ice kao neka vrsta protokola koj i mora da se ispoštuje uperfektnom šifarskom Šenonovom sistemu

1 NIKADA NIKADA NE KORISTITI DVA PUTA ISTI KLJUČ ZA ŠIFROVANJE2 NIKADA NIKADA KLJUČ NE SME DA SE ŠALJE ISTIM KOMUNIKACIONIM KANALOM

KAO PORUKA3 NIKADA NIKADA KLJUČ NE SME DA BUDE MANJ I NEGO ŠTO JE PORUKA (engl

2 Klod Elvud Šenon (eng Claude Elwood Shannon) (1916-2001) - Američkinaučnik i inženjer

Izgubljeni heroji bdquoBlečli parkardquo

44

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

one time pad) 4 NIKADA NIKADA NE SMEMO DA SAKRIVAMO SISTEM ŠIFROVANJA SVE MORA

DA JE OTVORENOG KOcircDA

Najveći propusti kriptologi je koj i su uočeni baš u Drugom svetskom ratu jesupokušaj sakrivanja sredstava koj im se generiše tajna poruka i nepoznavanjeŠenonovih krajnj ih granica informaci ja Kada kažemo bdquosredstvo i sakrivanjerdquomisl imo na algoritme Postavl ja se pitanje zašto je danas kriptologi ja sigurni ja negočetrdesetih i pedesetih godina prošlog veka

Danas uprkos tome što su algoritmi za kriptografi ju otvorenog kocircda tajnostinformaci ja je na višem nivou nego što je to bi lo dok je algoritam bio strogopoverl j iv Tajnost tajnih podataka se ne zasniva na tajnosti a lgoritama koj i generišutaj isti bdquotajni izlazrdquo (eng cipher text) nego u nemogućnosti matematičke inverznefunkci je koja bi šifrovan tekst otvori la Ovde se vidi da je svrha strukture otvorenogkocircda kao jednog od značajnih delova današnje kriptologi je ona koja ga činisigurnim i svima dostupnim

Sada kada se sa ove distance osvrnemo na Drugi svetski rat možemo videti kol ikosmo bi l i bl izu apokal ipse Naime Albert Ajnštajn je već 1944 godine imao urukama recept za nuklearnu bombu Šenon je mogao već u to vreme da nampredoči 100 siguran šifrat (tzv Hitlerovu super šifru) a l i ipak sreća nas jeposluži la da čovečanstvo tada ni je bi lo spremno da upotrebi svu raspoloživutehnologi ju

Albert Ajnštajn bdquoČetvrti svetski rat će se voditi tol jagamardquo

Zaboravl jeni heroj i Blečl i parka iako su odigral i važnu ulogu u pobedi saveznika usvetskom ratu postal i su žrtve bdquotop secretrdquo doktrine potpuno su zaboravl jeni inestal i su iz istori je

Zakl jučak ovog članka je da je ideologi ja otvorenog kocircda sasvim sigurno tu da nampomogne i da otvori vrata ka većoj sigurnosti novim idejama i kval itetu sameinfrastrukture sistema koju svi zajedno razvi jamo

Internet mreže i komunikacije

45

Broj 33

Autor Nikola Hardi

NabrajanjaBez brojeva

Za nabrajanje pojmova u Bimeru (eng Beamer) koristi se okruženje itemize aunutar tog okruženja možemo da dodajemo nove stavke pomoću item Primerizgleda ovako

beginitemizeitem Stavka Aitem Stavka Bitem Stavka C

enditemize

Sa brojevima

Postoje situaci je kada uz nabrajanje treba da stoje i redni brojevi - za to se koristienumerate okruženje a nove stavke se takođe dodaju pomoću item

beginenumerateitem Redni broj 1item Redni broj 2item Redni broj 3

endenumerate

prezentaci ja

Beamer (4 deo)

Sam svoj majstor

46

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

DefinicijeTreća situaci ja je nabrajanje parova termin - definici ja U tom slučaju se koristiokruženje description Već možete da pretpostavite kako se dodaju nove stavke

Primer

begindescriptionitem[Pojam A] Definicija izmišljenog pojma Aitem[Pojam B] Definicija izmišljenog pojma Bitem[Pojam C] Definicija izmišljenog pojma C

enddescription

Ostala podešavanja i zanimljivostiSva prethodna okruženja mogu da budu ugneždena jedno unutar drugog dotrećeg nivoa Treba biti pažl j iv jer sla jdovi vrlo lako mogu da postanu nečitl j ivi Osim toga moguće je izabrati i format oznake i l i rednih brojeva - na primer ovako

beginenumerate[I]beginenumarate[a)]

Takođe moguće je upravl jati pojavl j ivanjem pojedinih stavki na slajdovima Drugimrečima možemo da odredimo da se nabrajanja postepeno otkrivaju tako što ćemouz stavku dodati lt1-gt odnosno broj od kojeg slajda žel imo da se ta stavkapojavl ju je Tada će jedno nabrajanje biti bdquorazvučenordquo na više slajdovaJednostavni ja mogućnost je da u zaglavl je okruženja dodamo +- što znači dažel imo da se svakim slajdom otkriva po jedna nova stavka iz nabrajanja Znak bdquo-rdquo uoba primera znači da žel imo da se stavka pojavi na sledećem slajdu i da ostane

Sam svoj majstor

47

Broj 33

prisutna Možemo da izostavimo znak bdquo-rdquo i tada će stavka biti prisutna samo najednom slajdu i l i da napišemo raspon slajdova u koj ima žel imo da ta stavka budeprisutna

Rad sa kolonama i blokovimaDo sada su svi primeri podrazumeval i da je sadržaj napisan preko cele širineslajda al i Bimer (eng Beamer) ima i jednostavne mehanizme za razmeštanjesadržaja po kolonama Za rad sa kolonama se koristi okruženje columns unutarkojeg možemo da dodajemo nove kolone pomoću columnširina Sadržaj jemoguće potom pisati i van okruženja sa kolonama

U paru sa kolonama često se sreće i okruženje block koje se parametrizujenaslovom Primerom su i lustrovani i okruženje column i okruženje block

beginframebegincolumns

column05textwidthbeginblockNaslov levog blokaSadržaj u prvoj (levoj) koloni endblock

column05textwidthbeginblockNaslov desnog blokaSadržaj u drugoj (desnoj) koloni

endblockendcolumns

beginblockVan kolona

Beamer

48

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Tekst koji se nalazi ispod kolonaendblock

endframe

TabeleIako se u radu sa prezentaci jama sadržaj najčešće može uredno rasporeditipomoću kolona i nabrajanja nekada to ni je dovol jno jer su tabele pravi formatBimer podržava standardno Lateh (LaTeX) okruženje za rad sa tabelamaOkruženje za rad sa tabelama se zove tabular Pri kreiranju nove tabele moguće jepodesiti koje kolone će biti razdvojene l ini jom i da l i će nj ihov sadržaj biti centrirani l i uz levu i l i uz desnu ivicu Dodavanje novog reda se jednostavno radidodavanjem hline Lateh pruža zaista jako fleksibi lan rad sa tabelama i sigurno ćedoskočiti svim mogućim i nemogućim zamisl ima Potražite bi lo koje Lateh uputstvoza rad sa tabelama i radiće i sa Bimerom

beginframebegintabular | c | c | c | c |

hlineamp Ponedeljak amp Utorak amp Sreda hline

1 amp 16 amp 32 amp 64 hline2 amp 16 amp 128 amp 1024 hline3 amp 16 amp 512 amp 4096 hline

endtabularendframe

Sam svoj majstor

49

Broj 33

Beamer

Teoreme i istaknut tekstU nastavi su česta izlaganja teorema nj ihovih dokaza i primera U Bimer jeugrađena podrška za elegantno predstavl janje ove trojke Mehanizam takođepodržava postepeno otkrivanje sadržaja sla jda tako da slušaocima ne bude odmahotkriven dokaz teoreme Mehanizam za postepeno otkrivanje se kao i kodnabrajanja postiže pomoću bdquolt1-gtrdquo konstrukci je Evo kako to izgleda

beginframeframetitlePrimer teoreme

begintheoremlt1-gt Teorema kaže da su beamer prezentacijezanimljive

endtheorem

beginexamplelt2-gt Ovaj kod kreira slajd beamer prezentacijeendexample

beginprooflt3-gt Čestitamo stigli ste do kraja serijala o pravljenju beamer prezentacija

endproofendframe

50

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Za krajOvim člankom završavamo seri ja l o Bimeru Nadamo se da smo uspel i da vaszainteresujemo za ovu vrlo korisnu klasu Lateha Trudi l i smo se da vamprezentujemo najvažni je delove Bimera koje ćete najčešće koristiti pri l ikomkreiranja svoj ih prezentaci ja

Napominjemo još jednom da je Bimer samo jedna od klasa Lateha što znači da i zaBimer važi sve ono što ste već mogl i da pročitate u ovom časopisu kad smo pisal iseri ja l bdquoUvod u LaTeXrdquo (LiBRE brojevi 17 do 21) Štaviše ovaj seri ja l o Bimeru jebio nastavak upravo tog seri ja la U ovom seri ja lu nismo pisal i o samomformatiranju teksta u prezentaci jama jer se podrazumeva da važe ista pravi la kao iu Latehu a o tome smo pisal i u prethodnom seri ja lu

Hvala vam što ste prati l i ovaj seri ja l i žel imo vam puno uspeha u kreiranju Bimerprezentaci ja

Sam svoj majstor

51

Broj 33

Autor Nenad Marjanović

Kada smo se upoznal i sa podešavanj ima sistema i umrežavanjem vreme je za našprvi Biglbon Blek (BBB - eng BeagleBone Black) projekat Svakom od nas će ovajizazov dati razl ičite ideje a jedna od nj ih može biti i zaštita privatnosti internetkorisnika Nažalost u Srbi j i ne postoj i ni jedan izlazni tor server (eng node) i to jepomalo tužna sl ika s obzirom da govorimo o populaci j i od sedam mil ionastanovnika Al i ovu sl iku možemo promeniti udruženim snagama i za početakkreiranjem Tor transfer i izlaznog servera U ovde prikazanom grafikonufokusiraćemo se na bdquoRauter Brdquo tačku odnosno transfer server konfiguraci ju

BeagleBone Black Rev C

Vodič od prvog dana (3 deo) ndashBeagleBone Black kao Tor relej

Hardver

52

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Tor predstavl ja mrežu servera koj i se povezuju radi bol je enkripci je podataka izaštite IP adrese korisnika Naš ci l j je da danas postanemo deo ovog predivnogprojekta i da se nađemo na svetskoj karti Tor servera

Brzina interneta i zakonske regulativePotrebno je imati na umu nekol iko bitnih stvari

1 Naš server = naša odgovornost2 Obavezno naznačite da ste vi administrator a ne korisnik istog servera3 Da posedujete internet brzinu od 2 Mbs

Ako ispunjavamo tri navedena pravi la i odgovornosti možemo se posvetitiadministrativnim poslovima

Instalacija i podešavanjaU ovom primeru koristimo Debi jan Vizi (eng Wheezy) odnosno Debi jan 7 verzi juna našem BBB uređaju Vi možete testirati i druge Linuks platforme Prvododajemo izvornu bibl ioteku u etcaptsourceslist faj l pokretanjem sledećekomande u terminalu

echo deb httpdebtorprojectorgtorprojectorg wheezy main gt etcaptsourceslistdtorlist

Zatim dodajemo izvorni kl juč vršimo ažuriranje sistema i instal iramo tor i tor-arm(Tor monitoring sistem)

gpg --keyserver keysgnupgnet --recv 886DDD89gpg --export A3C4F0F979CAA22CDBA8F512EE8CBC9E886DDD89 | sudo apt-keyadd -apt-get updateapt-get install debtorprojectorg-keyring -yapt-get install tor tor-arm egrep screen -y

Ovim smo uspešno završi l i instalaci ju Tor servera i sistema za monitoring odnosnonadgledanja našeg Tor servera Sledećom komandom radimo na podešavanj imaTor servera koja se nalaze u etctortorrc faj lu Obratite pažnju i izvršite potrebne

Hardver

53

Broj 33

izmenu u pol j ima IP adresa (eng Address) nadimka (eng Nickname) i kontaktpodataka (eng ContactInfo) pre pokretanja ove komande Kopiramo i pokrećemokomandu u celosti u terminalu

egrep -v ^(|$) etctortorrcORPort 443Address 19216811Nickname LibreTorRelayRelayBandwidthRate 100 KBRelayBandwidthBurst 120 KBContactInfo ltvi at gmail dot comgt irPort 8080DirPortFrontPage etctortorhtmlExitPolicy reject

Detal je o svim vrednostima nećemo iznositi u ovom broju LiBRE časopisa al ićemo o nj ima pisati u sledećem u kome ćemo pričati o zaštiti Tor servera imogućnosti podešavanja određenih izlaznih pravi la (eng ExitPolicy)

Nakon ovoga možemo primetiti da se u folderu etctor ne nalazi torhtml faj l Ovaj faj l ni je od vel ikog značaja i možete ga l ično napraviti i l i preuzeti jednu kopi ju- naprimer sa sledeće lokaci je

cp usrsharedoctortorhtml etctortorhtml

Opcije i Tor Arm monitoringDa bismo ispravno koristi l i Tor Arm potrebno je urediti još jednom etctortorrcfaj l i restartovati servis

echo -e ldquoDisableDebuggerAttachment 0n AvoidDiskWritesrdquo gtgt etctortorrcsudo service tor reload

Ukol iko žel ite koristiti Tor Arm za nadgledanje aktivnosti na serveru pokreniteprogram screen kl iknite na bdquoEnterrdquo i kucajte sudo -u debian-tor arm Naekranu ćete imati sl ičan prikaz

BeagleBone Black

54

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Hardver

55

Broj 33

Da bismo napusti l i screen program koristimo Ctrl + a + d i na taj način kada sesledeći put pri javimo na server kucamo samo screen -r u terminalu - i naći ćemose ponovo na čuvenom Tor Arm monitoring ekranu

Nakon svake promene konfiguracionih faj lova ako slučajno nismo nešto podesi l ikako treba restartujemo servise

U sledećem broju časopisa govorićemo o minimalnim podešavanj ima ikonfigurisanju izlaznog Tor servera (eng Tor Exit Node) opci jama sigurnosti isl ičnim detal j ima u vezi sa našim prvim projektom Do čitanja u sledećem broju

BeagleBone Black

LUGoNS BarCamp 4subota 7 mart 2015 godine

Četvrti LUGoNS-ov Barkemp (BarCamp) održaće se u Novom Sadu usubotu 7 marta 2015 godine na Fakultetu tehničkih nauka sa početkomu 12 časova

Ulaz je slobodan

Poziv za predaju radovaLUGoNS poziva sve zainteresovane da pošal ju svoje radove (predavanjaprezentaci je radionice i diskusi je) do 28 februara 2015 godine

Oblasti iz koj ih možete da pri javite vaše radove su

bull Slobodan softverbull Zaniml j iv hardverbull Hakerski zakonibull Sigurnosne noćne morebull Anonimnost i privatnost na internetubull Duboki veb (eng Deep Web)bull Soci ja lne mrežebull Soci ja lni inženjeringbull Hakovanje mobi lnih uređajabull Internet u oblaku (eng Clouds) ndash hakovanje razbi janje i neočekivano korišćenjebull DPI (eng deep packet inspection)bull Mreža i mrežna neutralnost ndash vlasništvo cenzura nadmudrivanje i pol itika bdquodefaktordquo standarda

bull Programiranje i programski jezici

Nemojte se ustručavati i slobodno nam se javite ako imate rad na gore navedenei l i sl ične teme koj i smatrate interesantnim

Stranica za predaju radova nalazi se na https events lugonsorgp=1658

Page 8: LiBRE 33 Lat

8

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

3 februar 2015

Američka vojska otvara svojprogram za detekciju napadaAmerička vojska je odluči la da svoj program za de-tekci ju napada postavi na Githab i time omogućicelom svetu da koriste softver koj i su oni koristi l i zadetekci ju napada na mrežu ministarstva odbraneOni ovim potezom očekuju povratnu informaci ju odl judi koj i ne rade u vladi i nadaju se unapređenjusvog programa

Koristan l ink http tcov3PYlKF2sz

6 februar 2015

GPG u opasnostiVerner Koh (Werner Koch) programer koj i jezadužen za razvoj GPG-a (Dži-Pi-Dži engl GNUPrivacy Guard) softvera koj i svi koristimo zaenkripci ju kako naše elektronske pošte tako i ostal ihbitnih podataka polako ostaje bez novčanihsredstava Pozivaju se svi zainteresovani i oni koj i suu mogućnosti da pošal ju donaci ju u vidu novca

Koristan l ink http tcojGac5emwPX

9 februar 2015

Arduino razvojno okruženje -novo izdanjeIzašlo je novo razvojno okruženje za Arduino uverzi j i 1 6

Koristan l ink http tco4A0pFcIsVf

Vesti

9

Broj 33

Autor Branimir Karadžić

bgfx je rendering bibl ioteka otvorenog koda sa podrškom za više razl ičitih grafičkihAPI-ja 1 (eng Application Programming Interface) i operativnih sistema 2 Bibl iotekasluži za jednostavni j i pristup grafici i razvoj igara na više platformi Najvećiproblem sa kompjuterskom grafikom je što postoj i više razl ičitih API-ja koj i kada sekoriste direktno onemogućavaju portovanje igara na druge platforme Praveći igrukoja pristupa samo bgfx bibl ioteci a ne direktno API-u autor igre omogućava sebida tu igru na jednostavan način može prebaciti na bi lo koj i podržan operativnisistem odnosno platformu

Predstavljamo

bgfx - Cross-platform renderinglibrary

10

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

U početku bgfx je bio samo hobi projekat i zato ima nemaštovito ime Bi la je tosamo jedna od mnogih bibl ioteka koje sam napravio za pravl jenje igara Kada samradio na jednoj igri postojala je potreba da se igra prebaci sa starog DX9 (engDirectX 9) renderinga na OpenGL (engl Open-dži-el ) pa sam tom pri l ikom izvukaodeo moje hobi bibl ioteke za renderovanje i zapakovao je kao cel inu Posle uspešneprimene ove bibl ioteke u moj im projektima odlučio sam da je objavim kao projekatotvorenog koda na Githabu (eng Github) pod l icencom BSD 2-clause Po mommišl jenju ovaj deo renderinga je trebalo već odavno da bude rešen problem kao ida bude moguće da se igre bez veće muke izdaju na bi lo kojoj platformi po žel j iautora Namenjena je prevashodno manj im autorima koj i žele da imaju potpunukontrolu nad svoj im kodom bez obzira na platformu na kojoj žele da objave igruKod ovakvih komerci ja lnih proizvoda uvek postoje neka ograničenja a ako firmeizgube interes za proizvodom mogu ostaviti autore na cedi lu bez podrške iodržavanja Sa druge strane projekti otvorenog koda omogućuju saradnju autora iunapređenje funkcionalnosti projekta na zadovol jstvo svih

Upotrebom bgfx bibl ioteke korisnik može da zanemari konkretnu implementaci jurazl ičitih tehnologi ja kao što su OpenGL OpenGL ES i Direct3D bez kompromisa saperformansama Ova bibl ioteka ni je tanka apstrakci ja i l i emulator nekogpostojećeg API-ja tipa Guglovog Engl (eng ANGLE) projekta koj i emul ira OpenGL

Predstavljamo

11

Broj 33

ES preko Direct3D-a i l i Valvov TuDži-El (eng ToGL) koj i emul ira Direct3D 9 prekoOpenGL-a nego zaseban API višeg nivoa Iako je u prošlosti bi lo sl ičnih projekatasvi oni su uglavnom imal i pretenzi ju da budu endžin (engine) i l i frejmvork koj i bitvorci igara koristi l i kao takav Takav pristup donosi dosta kompl ikaci ja i veoma jeteško takav projekat integrisati sa postojećim kodom Iz ovog razloga bgfx projekatnema pretenzi je da bude ceo endžin i l i frejmvork nego samo bibl ioteka koju svakomože lako da integriše u sopstveni projekat

bgfx bibl ioteka se trenutno koristi u nekol iko komerci ja lnih igara al i ima i dostainteresovanja za projekat kao osnove za pravl jenje korisničkih apl ikaci ja pa čak ialata za programere

Na projektu je do sada radi lo oko deset l judi Uglavnom su dodaval i podršku zanove platforme primere i l i su povezival i bibl ioteku sa drugim jezicima Što sebuduće saradnje na ovom projektu tiče sve je dobrodošlo čak i sȃmo korišćenjebibl ioteke a zahtevi za uvođenje novih mogućnosti unapređuju samu bibl ioteku

bgfx

12

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Predstavljamo

13

Broj 33

1 Podržava grafičke API-je

bull Direct3D 9bull Direct3D 11bull OpenGL 2 1bull OpenGL 3 1+bull OpenGL ES 2bull OpenGL ES 3 1bull WebGL 1 0

2 Podržava platforme

bull Android (14+ ARM x86 MIPS)bull asm jsEmscripten (1250)bull iOSbull Linuks (x86 x86_64)bull Nejtive klajent (Native Client PPAPI37+ ARM x86 x86_64 PNaCl)

bull OS Iks (OSX 109)bull Rasberi-paj (RaspberryPi - ARM)bull Vindouz (Iks-pe Vista 7 8 10)bull Vin-ar-ti (WinRT WinPhone 80+ )

bgfx

14

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Autor Stefan Nožinić

UvodrEFInd je softverska apl ikaci ja za EFI (Extensible Firmware Interface) sisteme kojaomogućava izbor više operativnih sistema na jednostavan način Ovo je samoupravnik buta (boot) i u ovom broju vam predstavl jamo o kakvom projektu je reč ikako se može primeniti

Šta je (U)EFIPre nego što predstavimo sam projekat trebalo bi prvo da skrenemo pažnju idetal jni je da predstavimo problematiku EFI je nastao kao zamena za dosadašnj iBIOS (Basic InputOutput System) i razvi la ga je kompani ja Intel Ovaj pristup jekasni je zamenjen UEFI standardom EFI tehnologi ja ima prednost u slučajevimakao što su

bull Pokretanje sistema na diskovima preko 2TB memori je korišćenjem GPTtehnologi je

bull Nezavisnost od specifične arhitekture procesorabull Modularan dizajnbull Dobro okruženje pre učitavanja operativnog sistema što podrazumeva i mrežnupodršku

Tehnologi ja omogućava upotrebu 32-bitnih i 64-bitnih adresa na procesorima koj ito podržavaju Rani je BIOS tehnologi ja to ni je omogući la već se uvek koristi la 16-bitna implementaci ja iz istori jskih razloga

Predstavljamo

15

Broj 33

Particiona šemaEFI tehnologi ja ima drugači ju šemu partici ja Dok je stari pristup podržavao samoMBR (Master Boot Record) šemu nova tehnologi ja podržava GPT šemu kojaomogućava veći broj primarnih partici ja Sa starim pristupom taj broj bio jeograničen na četiri primarne partici je od koj ih je svaka morala da ima kapacitetmanj i od 2TB

AplikacijeUEFI podržava izradu apl ikaci ja koje bi se pokretale nezavisno od operativnogsistema Ove apl ikaci je se mogu naknadno instal irati Primer takvih apl ikaci ja supokretači (loader) operativnih sistema kao i upravnici butovanja

EFI sistemska particijaEFI podržava posebnu partici ju za smeštanje raznih potrebnih informaci ja kao štosu potrebni podaci za rukovanje računarom i specifične apl ikaci je Ova partici ja jenajčešće FAT32 sistem datoteka

rEFInd

16

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

But menadžer i but louder - ima razlikeOd popularizaci je GRUB upravnika mnogi korisnici su ostal i bez objašnjenja kakvaje razl ika između but loudera (boot loader) i but menadžera (boot manager) Ovose dešava jer GRUB pruža obe usluge u sklopu jednog programa pa se time teževidi razl ika između ova dva pojma But menadžer je upravnik pomoću kojeg jemoguće izabrati operativni sistem za pokretanje On ne zna ništa speci ja lno ooperativnom sistemu pa time ne zna ni kako da ga pokrene On samo zna datreba da pokrene but louder za taj sistem Kada je sistem izabran pokreće sespecifičan but louder za taj sistem koj i je zadužen za dal j i proces pokretanjakernela Za razl iku od GRUB upravnika rEFInd pruža samo usluge but menadžerašto u početku može zvučati poražavajuće za ovaj projekat Kada uzmemo u obzirda većina sistema danas ima but louder u sklopu kernela (ukl jučujući i Linuks odnovi j ih izdanja) ovaj problem je prevaziđen

Predstavljamo

17

Broj 33

InstalacijarEFInd postoj i kao deb i kao rpm paket al i postoj i i zapakovan kao zip arhivaZahval ju jući tome paket je moguće instal irati upotrebom dpkg komande nadistribuci jama baziranim na Debi janu kao i upotrebom rpm komande nadistribuci jama koje koriste taj način pakovanja paketa Za Ubuntu postoj i i PPArepozitori jum pa rEFInd može biti instal iran na sledeći način

sudo apt-add-repository pparodsmithrefindsudo apt-get updatesudo apt-get install refind

Nezavisno od toga koj i način od gore opisanih koristite rEFInd će automatski bitiprebačen na ESP i biti postavl jen kao podrazumevani upravnik

KonfiguracijarEFInd bi trebalo da vam pruži zadovol javajuću funkcionalnost bez dodatnekonfiguraci je posle instalacionog procesa On će automatski detektovati loudereoperativnih sistema korišćenjem pretrage po svim partici jama koje prepozna Uslučaju da ste napredni j i korisnik i da žel ite da modifikujete ponašanje rEFInda tomožete uraditi izmenom njegove konfiguracione datoteke Postoj i g lobalnakonfiguraci ja i konfiguraci ja za svaki sistem posebno Ovaj tekst bi postao previšedugačak kada bismo ulazi l i u detal je same konfiguraci je pa vam zatopreporučujemo ako imate potrebu za dodatnom konfiguraci jom da posetitedokumentaci ju projekta i l i ako imate neke nedoumice da kontaktirate s namapreko naše e-pošte

Za krajŽelel i bismo da ovaj tekst zakl jučimo ocenom da je ovaj projekat dosta zaniml j ivda pruža zadovol javajuću funkcionalnost i da omogućava korisnicima koj i koristeovaj sistem pokretanja lako pokretanje svoj ih operativnih sistema Još jednomžel imo da vam skrenemo pažnju da nam se obratite i ukažete ako smo nešto važnopropusti l i da pomenemo i l i ako nam se negde potkrala greška

Korisni l ink http wwwrodsbookscomrefind

rEFInd

18

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Autor Nikola Hardi

Opšte je poznato da su računari dobri u radu sa brojevima Međutim vremenom suse i potrebe korisnika i alati za programiranje računara razvi ja l i i rad sa drugači j imtipovima podataka je postao uobičajen i znatno jednostavni j i nego rani je Svi smoimal i pri l iku da radimo sa programima za obradu fotografi ja video materi ja la i l izvučnih zapisa Multimedi ja je ipak tema koja prevazi lazi jedan uvodni kurs o C-ual i do kraja ovog seri ja la ćemo se dotaći i tih tema Za početak osvrnućemo se narad sa tekstualnim podacima na C način

Stringovi na C načinDefinici ja tekstualnog podatka u sferi računarstva se uglavnom svodi na to da jetekst niz karaktera a karakteri su znakovni simbol i Iako imamo mogućnost daradimo sa tekstom i l i multimedi jom računari ipak razumeju samo brojeve pamoramo tako da im predstavimo i tekst Postoje razni standardi kako se pojedinikarakteri predstavl ja ju u memori j i računara između ostalog najpoznati j i su ASCIIEBCDIC UTF i td EBCDIC je standard koj i je prisutan u Eplovom (eng Apple) svetu iviše nema tol iko važnu ulogu ASCII je standard koj i je vrlo prisutan i danas UTF jenastao kao proširenje ASCII standarda javl ja se u više vari janti i uvodi podršku zapisma razl ičita od abecede (kinesko japansko ćiri l ica arapsko i mnoga druga)

Važno je napomenuti da je originalni ASCII standard propisivao 7 bitova za jedankarakter što je dalo prostora za 128 karaktera Među tim karakterima se nalazecifre mala i vel ika slova engleskog alfabeta i niz kontrolnih karaktera Kontrolnikarakteri su oznake za novi red prazno mesto tabulator upravl janje štampačima(vraćanje glave štampača na početak) rad sa terminal ima (alarm i l i obaveštenje

Kako da

Uvod u programski jezik CRad sa stringovima (9 deo)

19

Broj 33

da se nešto dogodi lo) ASCII standard je proširen na 8 bitova odnosno ceo jedanbajt i sada podržava 256 karaktera Potražite na internetu termin bdquoASCII tabelardquo dabiste stekl i uvid u to kako izgleda tzv tabela ASCII karaktera

Rad sa pojedinačnim znakovima ne obećava mnogo Postoj i realna potreba zaradom sa rečima rečenicama l ini jama teksta itd Podaci koj i se sastoje od više odjednog karaktera se u domaćoj l i teraturi nazivaju znakovnim niskama madaodomaćen je i naziv bdquostringrdquo koj i je i mnogo češće u upotrebi U programskomjeziku C se stringovi predstavl ja ju običnim nizovima karaktera (char niz[]) a krajteksta se označava NULL karakterom odnosno speci ja lnim znakom 0 či jabrojevna predstava je pogađate nula Ovakva predstava tekstualnih podatakanosi sa sobom i pojedine kompl ikaci je Gotovo svi savremeni jezici poznaju tipstringa dok su u C-u stringovi ipak samo obični nizovi

Da se podsetimo nizovi u C-u su zapravo pokazivači na deo u memori j i Kadapokušamo da pristupimo jednom elementu niza tada se vrši operaci jabdquodereferenciranjardquo sa zadatim odstupanjem Sledi nekol iko primera koj i i lustrujurad sa nizovima na primeru nizova karaktera

char niz1[] = zdravoniz1[0] = Z

char niz2[5]niz2[0] = 0niz2[1] = kniz2[2] = 0

Pri deklaraci j i niza 1 ni je zadata dužina zato što je u jednom izrazu zadata iinici ja l izaci ja niza koja glasi ldquozdravordquo Prevodi lac može sam da zakl juči kol ikomemori je je potrebno

U drugom primeru je kreiran niz karaktera dužine 5 Međutim popunjena su samoprva tri mesta Primećujete razl iku između prvog i trećeg elementa Prvi je cifra 0(uokviren je navodnicima) a treći je brojčana vrednost 0 koja označava krajstringa

Može se primetiti još jedna razl ika u data dva primera U prvom primeru sukorišćeni dvostruki navodnici dok su u drugom korišćeni jednostruki Razlog za to

Uvod u programski jezik C

20

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

je što se znakovni nizovi koj i su uokvireni dvostrukim navodnicima smatrajustringovima i podrazumevano im se dodaje bdquoterminatorrdquo odnosno znak NULL koj ioznačava kraj stringa Jednostruki navodnici se iskl jučivo koriste za predstavl janjepojedinačnih karaktera Ovo znači da zapisi ldquoardquo i a nisu jednaki Prvi zapis jedužine 2 jer ima i znak NULL koj im je završen

Ispisivanje i učitavanje stringovaPre nego što nastavimo dal je biće objašnjen jednostavan način za ispisivanje iučitavanje stringova pomoću standardnog ulazaizlaza Da se podsetimobibl ioteka za standardni ulazizlaz (ispis podataka u konzol i odnosno terminalu) jestdioh Ukol iko se koristi formatirani ispis potrebno je funkci jama printf() iscanf() proslediti format string koj i sadrži speci ja lan znak s čime je označenoda žel imo da ispišemo znakovni niz sve do NULL karaktera Drugi način jeupotrebom funkci ja puts() gets() i getline() iz bibl ioteke stringh Sledi primer

include ltstdiohgt include ltstringhgt int main()

char niz1[] = Zdravo svete

printf(sn niz1)

scanf(s niz1)puts(niz1)

return 0

Može se primetiti da je u slučaju funkci je printf() potrebno naglasiti speci ja lnimkontrolnim karakterom n da nakon ispisa treba preći u novi red Funkci ja puts() topodrazumevano radi

Za ove i sve druge funkci je dodatnu pomoć je moguće pronaći u Linuksovim manstranicama u odel jku 3 koj i je posvećen standardnim bibl iotekama Recimo mangetline sadrži detal jno uputstvo o funkci j i getline()

Kako da

21

Broj 33

Kopiranje stringovaKao što je u prethodnom odel jku napomenuto stringovi su u C-u samo običninizovi To znači da sledeći kod verovatno neće uraditi ono šta bi bi lo očekivano

niz1 = niz2

Ovime smo pokazivaču niz1 bdquorekl irdquo da pokazuje tamo gde i pokazivač niz2 Efektivno oni sad pokazuju na isti tekst međutim ako izmenimo niz1 to će seodraziti i na niz2 a važi i obrnuto Ovime smo dobi l i samo dva pokazivača na istideo memori je a uglavnom to ni je bio ci l j

Drugi način kako bismo sadržaj drugog niza mogl i da kopiramo u prvi niz je petl jakojom bismo kopiral i element po element Pošto je operaci ja kopiranja stringovavrlo često potrebna postoj i standardna bibl ioteka za rad sa stringovima koja sezove stringh a funkci ja za kopiranje stringova je strcpy()

strcpy(niz1 niz2)

Dati primer kopira sadržaj niza 2 u niz 1 Kopira se element po element sve dok seu nizu 2 ne naiđe na NULL karakter Ovakvo kopiranje (element po element) seinače u stranoj l i teraturi naziva i bdquodeep copyrdquo i vrlo često se sreće u radu sastrukturama podataka gde je potrebno obići celu strukturu podataka i svakielement kopirati a strukturu opet izgraditi u drugom delu memori je

Zaniml j ivo je što je kopiranje stringova moguće pojednostaviti ukol iko definišemonovi tip podatka kao strukturu koja sadrži niz karaktera i potom izvršimo kopiranjeOvo je trik koj i se uglavnom ne koristi u praksi i spomenut je samo kaozaniml j ivost

include ltstringhgt struct str char niz[50]

int main()

struct str s1struct str s2

Uvod u programski jezik C

22

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

strcpy(s1niz zdravo)s2 = s1

s2niz[0] = Z

puts(s1niz)puts(s2niz)

return 0

Kreirana je struktura str koja sadrži pol je niza karaktera pod nazivom niz Pozivomfunkci je strcpy() kopiramo string ldquozdravordquo u s1 čime smo bdquonapuni l irdquo sadržajobjekta s1 Potom je izvršena redovna dodela čime je sadržaj objekta s1 kopiran us2 Zatim je izmenjen samo prvi karakter objekta s2 i oba stringa su ispisanaPrimećujete da su kopirani svi znakovi a da je izmenjen samo drugi objekatZaniml j iv trik

Poređenje spajanje i pretraga stringovaDruga vrlo česta situaci ja je poređenje dva stringa Ukol iko bi poređenje bi loizvršeno upotrebom redovnog operatora za poređenje == tada bi u stvari bi lepoređene samo adrese na koje pokazuju pokazivači tih stringova jer da sepodsetimo stringovi su u C-u samo obični nizovi Ispravan način za poređenje dvastringa je pozivanjem funkci je strcmp() či ja je povratna vrednost 0 ukol iko su jojprosleđeni stringovi sa jednakim sadržajem

include ltstringhgt int main()

char niz1[] = zdravochar niz2[] = zdravo

if( strcmp(niz1 niz2) == 0)puts(Stringovi su jednaki)

elseputs(Stringovi nisu jednaki)

return 0

Kako da

23

Broj 33

Funkci ja strcmp() poredi svaki element prosleđenih nizova pojedinačno a dobraje vežba implementiranje nove funkci je strcmp() koja će unutar petl je da porediodgovarajuće elemente prosleđenih nizova i potom vratiti rezultat 0 ukol iko su svielementi jednaki Potrebno je pripaziti na situaci ju kada su stringovi razl ičitihdužina

U svetu računara spajanje dva sadržaja se zove konkatenaci ja Odatle i nazivfunkci je za spajanje dva stringa strcat() Važno je uveriti se da je string u koj i sedodaje sadržaj dovol jno vel ik da ga prihvati inače može da dođe do nežel jenogprepisivanja u memori j i uništavanja drugih podataka i neispravnog ponašanjaprograma

Pretraga unutar stringa se može obaviti funkci jom strstr() Ova funkci ja kaoparametre očekuje pokazivač na niz karaktera (string) u kojem je potrebno pronaćistring koj i je prosleđen kao drugi parametar Povratna vrednost je pokazivač nadeo memori je gde se žel jeni string prvi put pojavio

Sledi malo opširni j i primer koj i i lustruje spajanje pretragu i kopiranje stringova

include ltstringhgt int main()

char niz_a[50] = LiBRE je char niz_b[] = najbolji casopischar niz_c[] = e-magazin

strcat(niz_a niz_b)puts(niz_a)

char cilj = strstr(niz_a casopis)strcpy(cilj niz_c)

puts(niz_a)

return 0

Uvod u programski jezik C

24

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Pretvaranje tipova podataka u stringove ipretvaranje iz stringovaPretvaranje podataka iz jednog tipa u drugi i l i kastovanje (eng type casting) se zavećinu tipova vrši jednostavno pisanjem tipa u zagradama na primer (int)523 Stringovi su i po ovom pitanju drugači j i Postavl ja se pitanje šta pretvoriti ucelobrojni tip - da l i adresu na koju pokazuje pokazivač niza koj i predstavl ja stringPrvi element Šta ako taj string ni je broj Predstavićemo rešenje za konverzi jubrojeva u stringove i obrnuto

Ispis podataka na ekranu se takođe može smatrati konverzi jom Broj sa pokretnimzarezom je u memori j i prikazan na pomalo čudan način a pozivom funkci jeprintf() kada je kao format zadat f na ekranu ćemo dobiti razuml j iv niz znakovaSl ičan rezultat možemo dobiti funkci jom sprintf() a jedina razl ika u odnosu naprintf() je ta što sprintf() kao prvi argument očekuje pokazivač na string dok sudrugi (format string) i treći (argumenti koj i se povezuju sa formatnim stringom)sl ični kao kod funkci je printf()

Kod pretvaranja stringova u brojevne tipove može poslužiti funkci ja sscanf() kojase ponaša sl ično kao funkci ja scanf() s tim što je prvi argument adresa(pokazivač na string) koju žel imo da skeniramo u nadi da će se poklopiti saformalnim stringom koj i je drugi argument a rezultati će biti sačuvani u adresamakoje su prosleđene kao 3 4 i ostal i parametri Drugi način za pretvaranje stringovau celobrojne brojeve i brojeve sa pokretnim zarezom su funkci je atoi() i atof()

Funkci je koje koriste formatni string su česte u jeziku C i zaslužuju posebnu pažnjumeđutim to je priča za poseban članak U ovu klasu funkci ja spadaju recimo ifunkci je za rad sa datotekama

BezbednostRad sa stringovima može da bude izuzetno opasna stvar po pitanju bezbednostiprograma Ukol iko se niz karaktera ne završava NULL karakterom svašta može dapođe po zlu pri pozivu funkci ja kao što su strcpy() strcmp() i sl ične Cela klasatih funkci ja se oslanja na postojanje znaka koj i označava kraj stringa Kada stringni je propisno završen tada te funkci je mogu da zalutaju u deo memori je vanstringa i svašta može da pođe po zlu Ovakav tip napada se inače zoveprekoračenje bafera (eng buffer overflow) Preporučen način kako da izbegnete

Kako da

25

Broj 33

Pregled popularnosti GNULinuxBSDdistribuci ja za mesec februar

Distrowatch

Pad ltPorast gtIsti rejting =(Korišćeni podaci sa Distrovoča)

12345678910111213141516171819202122232425

MintUbuntuDebianopenSUSEelementaryMageiaFedoraManjaroCentOSLXLEArchBodhiAndroid x86Kal iPCLinuxOSPuppyRobol inuxLubuntuQ4OSBlack LabNetrunnerSimpl icityEvolveZorin4MLinux

2919gt1778gt1701gt1323gt1204gt1174gt1166gt1028lt1020gt965gt957gt907gt900lt760gt742lt732gt695gt670gt663gt655gt652gt629gt607gt583gt517=

takve nepri jatne situaci je pri radu sastringovima je da koristite verzi jefunkci ja koje su ograničenemaksimalnom dužinom stringa kaošto su strncpy() strncat() strncmp() i td Sve te funkci je kaotreći parametar zahtevaju broj koj iodređuje maksimalnu očekivanudužinu stringa Još jedna vrlo korisnafunkci ja je strlen() či j i zadatak je daodredi dužinu stringa Budite pažl j ivi ovo je prvo mesto gde se tražebezbednosni propusti u programimaNe verujte podacima koj i spol ja ulazeu vaš program a pogotovo kada je rečo stringovima

Uvod u programski jezik C

26

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Autor Dejan Maglov

Projekti slobodnog softvera obično počinju kao projekti pojedinca i l i male grupeprogramera a koj i rade na razvoju softvera či j i je ci l j da zadovol j i neke od nj ihovihl ičnih potreba Projekat će se smatrati uspešnim ukol iko se šira zajednicazainteresuje za njega nakon što prepozna korisnost softvera ne samo za pojedincekoj i su započel i projekat već i za širu zajednicu Kada je u pitanju slobodni softvervremenom je postala stalna praksa da se zajednica umeša u razvoj projekataDobri projekti sami privlače zajednicu l judi koj i su zainteresovani za nj ih i ona uvećini slučajeva preuzima na sebe testiranje pobol jšanje funkcionalnosti održavanje i tehničku podršku projekta

Zajednice slobodnog softvera mogu da se okupe oko projekta slobodnog softverapo teritori ja lnom principu i l i da nastanu kombinaci jom ovih principa

Primeri

bull LiBRE projekat okupl ja zajednicu oko projekta bez teritori ja lnog ograničenjabull LUGoNS (Linux User Group of Novi Sad) je zajednica korisnika Linuksa poteritori ja lnom principu bez obzira na konkretan projekat

bull Ubuntu-rs zajednica koja je kombinaci ja okupl janja zajednice oko konkretnogprojekta (Ubuntu) i teritori ja lnog principa koj i se ograničava na teritori ju Srbi je

Ova sinergi ja projekata i korisnika slobodnog softvera ima više prednosti i zakorisnike i za projekat Projekat se na ovaj način brže razvi ja dobi ja na

U potrazi za idealnom distribucijom

Socijalni kriterijumi za izbor idealnedistribucije (6 deo)

Oslobađanje

27

Broj 33

funkcionalnosti greške se brzo ispravl ja ju i td Korisnici dobi ja ju osećaj dapripadaju grupi druže se sa istomišl jenicima učestvuju u promoci j i kval itetnihpojedinaca itd

Dve najvažni je uloge lokalnih zajednica za GNULinuks distribuci je su

1 pružanje tehničke podrške i edukaci je na maternjem jeziku2 rad na lokal izaci j i i pri lagođavanje distribuci je lokalnim potrebama

Informaci ja da postoje lokalne zajednice slobodnog softvera je od naročitogznačaja za početnike i korisnike koj i nedovol jno dobro znaju strane jezike(naročito engleski jezik) Ako izuzmemo komerci ja lne projekte otvorenog koda(Red Het SUSE) ne postoje zvanične škole i kursevi za slobodni softver Zaedukaci ju početnika je uglavnom zadužena zajednica a jasno je da je učenje namaternjem jeziku uvek lakše nego na bi lo kom drugom stranom ma kol ikodobro ga poznajete

Forumi i viki stranice lokalnih zajednica su prave bibl ioteke u koj ima korisnicimogu da nađu većinu odgovora na svoja pitanja a za sva ostala tu su forumi iIRC kanal i zajednica na koj ima uvek ima nekoga i koj i imaju već gotova rešenjaza vel iki broj problema

U potrazi za idealnom distribucijom

28

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Lokalne zajednice kao kriterijum za izbor idealnedistribucijePočetnicima i korisnicima koj i ne vladaju dobro engleskim jezikom toplopreporučujemo da biraju GNULinuks distribuci je koje imaju aktivnu lokalnuzajednicu Ovladavanje novim operativnim sistemom je mnogo lakše ukol iko vambdquoleđa čuvardquo lokalna zajednica na koju se uvek možete osloniti

Već smo spomenul i da su popularni je GNULinuks distribuci je namenjenepočetnicima Slučaj je isti i sa lokalnim zajednicama okupl jenim oko nj ih Ovomeđutim ne znači da je kval itet usluga koje nude manje popularne lokalnezajednice okupl jene oko distribuci ja namenjenih napredni j im korisnicima loši j i Manje popularne distribuci je okupl ja ju manje l judi a l i zato oni poseduju većeznanje Iskustvo sa zajednicama okupl jenim oko slobodnog softvera je uglavnompozitivno i ukazuje na to da kval itet usluga koje one nude korisniku ni je uslovl jenpopularnošću i masovnošću zajednice nego iskl jučivo njenom (ne)aktivnošću

U svakom slučaju dosadašnj i saveti za izbor idealne distribuci je važe i dal jeSoci ja lni aspekt slobodnog softvera je samo dodatni faktor koj i vam može pomoćipri donošenju odluke kada se dvoumite između nekol iko mogućih rešenja

Još uvek ne postoj i na jednom mestu potpuni i ažurirani spisak svih aktivnihsrpskih zajednica Nešto najbl iže tome može da se nađe na adresihttps pulsslobodewordpresscom Za informaci je o nekim drugim lokalnimzajednicama koje možda postoje al i nisu na ovom spisku moraćete sami dapretražite internet

Lokalizacija kao kriterijum za izborZa lokal izaci ju GNULinuks distribuci ja i GNU programa odgovorni su pojedinci ilokalne zajednice Sasvim sol idnu srpsku lokal izaci ju mogu imati i projekti koj iuopšte nemaju svoju lokalnu zajednicu a isto tako lošu lokal izaci ju mogu imati iprojekti sa dobrom lokalnom zajednicom Sve je stvar prioriteta zajednica iaktivnosti pojedinaca

Pravu i kontrol isanu lokal izaci ju može imati samo lokalni projekat Ovakvihprojekata u Srbi j i ima malo i teško se probi ja ju čak i u lokalu u konkurenci j isvetskih projekata Istina je da mnoge veće GNULinuks distribuci je imaju srpskulokal izaci

Oslobađanje

29

Broj 33

ju u ponudi pa se možda sl ični lokalni projekti koj i su usmereni samo na striktnulokal izaci ju smatraju nepotrebnima Uzvodna lokal izaci ja u slučaju Srbi je vrlo čestobude veoma loše čak nakaradno sprovedena Jedna polovina programa jelokal izovana srpskom ćiri l icom a druga latinicom Ako postoj i još delova sistemakoj i uopšte ni je lokal izovan onda se pojavl ju ju i delovi programa koj i su naengleskom Zato ćemo se vratiti na prvu rečenicu ovog pasusa i ponovo utvrditi dasamo lokalni projekat može potpuno kontrol isati pravu srpsku lokal izaci ju

U Srbi j i za sada imamo dva aktivna projekta GNULinuks distribuci je ndash TriOS(http triosrs) i Serbian (http wwwdebian-srbi ja iz rspserbianhtml) Obaprojekta su mlada i imaju svoj ih prednosti i mana Kome treba lokal izovanoperativni sistem može da proba jedan od ova dva projekta

U potrazi za idealnom distribucijom

30

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Iako ove dve domaće distribuci je nisu baš naj idealni je interesantno je probati ih iuporediti sa drugim distribuci jama

Za kraj serijalaNamera nam je bi la da kroz ovaj seri ja l o kriteri jumima pri izboru idealnedistribuci je definišemo većinu kriteri juma pri izboru i pokažemo zašto je teškoodgovoriti na jednostavno pitanje bdquoKoju mi distribuci ju preporučujeterdquo

Ni na samom kraju nismo dal i konkretan odgovor na pitanje koja je idealnaGNULinuks distribuci ja Suviše je subjektivnih ocena da bi se mogao datikonkretan odgovor Smatramo da je jako teško napisati neki algoritam izbora pokriteri jumima koje smo identifikoval i i definisal i a možda je čak i nemoguće poštose izlazi stalno menjaju Izlazi iz tog algoritma su GNULinuks distribuci je koj ih izdana u dan ima sve više a i one stare se stalno menjaju

Sam seri ja l bdquoU potrazi za idealnom distribuci jomrdquo neće biti završen samo zato štose više neće baviti kriteri jumima pri izboru nego će pokušati da predstavl jaGNULinuks distribuci je koje su po nečemu bdquoidealnerdquo

Oslobađanje

31

Broj 33

ORM

Autor Dejan Čugal j

Object relation mapping (ORM)

ORM (eng Object RelationMapping) je način postizanja traj-nosti (eng persistence) objekataunutar relacionih baza podatakaModel deluje kao posrednik nalogičkom delu apl ikaci je Automat-ski presl ikava podatke iz objekata ubazu i nazad na zahtev apl ikaci jeDa bismo objasni l i kako ovo sveradi moramo da vam predstavimoORM frejmvork (eng framework)programa otvorenog koda -Hajbernejt (eng Hibernate -http hibernateorgorm)

Šta je ORMUkratko ORM je automatizovano transparentno presl ikavanje objekatakorišćenjem metapodataka koj i opisuju mapiranje veze između objekta i baze

ORM (2 deo)

Slobodni profesionalac

32

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

podataka u apl ikaci jama koje su napisane u objektno ori jentisanim programskimjezicima Apl ikaci ja komunicira sa ORM-om preko njegovog vlastitog API-ja (engapplication programming interface) i određenih objekata Ova komunikaci ja jepotpuno odvojena od komunikaci je koja se odvi ja između ORM-a i baze podatakapreko SQL-a i DBC-a

Da bi se postigla i dostigla potpuna snaga ORM-a u apl ikaci j i koju projektujemonikako se ne sme iskl jučiti znanje relacionih modela SQL jezika te poznavanjeDBMS-a u kome se radi ORM ni je ništa drugo do srednj i sloj između gorepomenutih tehnologi ja i objektno ori jentisanog programiranja kao što smo to dosada već više puta naglasi l i

Implementacija ORM-aPostoje razl ičiti načini implementaci je ORM-a Mark Fasl (Mark Fussel) je 1997definisao četiri nivoa

1 bdquoČistrdquo relacioni način2 Slabo mapiranje objekata3 Umereno mapiranje objekata4 Potpuno mapiranje objekata

bdquoČistrdquo relacioni način

Cela apl ikaci ja ukl jučujući i korisnički interfejs dizajnirana je relacionim modelom iSQL relacionim operatorima Ovakav pristup je odl ičan za male projekte Direktanpristup SQL-u omogućava fino podešavanje svakog aspekta upita koj i se postavl jabazi podataka Osnovne mane su portabi lnost (prenosivost) i održavanje ovakvihsistema pogotovo ako se planira korišćenje apl ikaci je na duži rok Ovakvi sistemimasovno koriste sačuvane procedure (eng stored procedures) što znači da jeposlovna logika (eng busines logic) prebačena na samu bazu podataka

Slabo mapiranje objekata

Entiteti su predstavl jeni kao klase i mapiranje se radi ekspl icitno ka relacionimtabelama SQLJDBC je sakriven od poslovne logike korišćenjem poznatih šablona(patterns)

Umereno mapiranje objekata

Slobodni profesionalac

33

Broj 33

Dizajn apl ikaci ja se svodi na objektne modele SQL se generiše u vremekompaj l iranja (eng build-time) i l i u vreme izvršavanja (eng run-time) Specifikaci jaupita nad bazama podataka se radi na objektno ori jentisanom jeziku Ovakvisistemi se koriste u apl ikaci jama srednj ih vel ičina kod koj ih je bitna portabi lnostizmeđu razl ičitih sistema za upravl janje bazama podataka (DBMS)

Potpuno mapiranje objekata

Podržava sofisticirano objektno model iranje nasleđivanje i pol imorfizamEfikasnost dobi janja podataka je na visokom nivou i koriste se metode kao što sulenjo učitavanje (eng lazy loading) i strategi ja keširanja (eng caching) Implementaci ja je transparentna u apl ikaci jama Ovaj nivo je jako teško dostići Pojedincu su potrebne godine razvoja da postigne ovakvu fleksibi lnost pristupa imanipulaci ja u relacionim bazama podataka Upravo ovaj nivo se postiže ako sekoriste rešenja ORM-a kao što je Hajbernejt

Zašto ORMImplementaci ja ORM rešenja pogotovo ako seprvi put susrećete sa ovim modelom može dabude veoma frustrirajuća i malo teža zaimplementaci ju Kada ovo kažemo misl imo daprogramer koj i implementira ORM i hoće da istibude kval itetno urađen mora da posedujepredznanje objektno ori jentisanog programiranjai naprednih tehnika kao što su nasleđivanje ipol imorfizam

Ovo inicira fundamentalna pitanja

bull Pa zašto bi iko onda implementirao ovako nešto kompleksnobull Vredi l i truda upuštati se uopšte u ORM

Odgovor ni je jednostavan Dosadašnja iskustva u korišćenju ORM-a i njegovapopularnost već daju odgovor na postavl jeno pitanje Očigledno je da su benefitikoje donosi ovaj model veći od kompleksnosti njegove implementaci je a to su

Hibernate ORM

34

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Veća produktivnost

ORM smanjuje kol ičinu koda potrebnog za ostvarivanje trajnosti podataka Ovoomogućava programeru da vreme koje bi utrošio na ručno mapiranje podatakautroši na druge delove apl ikaci je

Lakše održavanje

Manje l ini ja koda osigurava bol ju razuml j ivost (i možda bol j i kval itet koda) jernaglašava apl ikaci jsku logiku ORM takođe ublažava uticaj nastal ih promena kaošto su promene u bazi strukturi tabela i td

Prenosivost

Većina ORM rešenja podržava sisteme za upravl janje bazama podataka raznihproizvođača ORM u potpunosti odvaja sloj apl ikaci je od stvarne SQL komunikaci jekoja se odvi ja u pozadini Time omogućava da se pišu apl ikaci je koje će moći da seizvršavaju na razl ičitim bazama podataka bez potrebe za dodatnim kodiranjemOva komunikaci ja se odvi ja sa programskim interfejsima ORM-a nezavisno oDBMS-u sa koj im je u bi lo kom momentu povezan ORM takođe omogućava lakšiprelaz sa manj ih na veće baze podataka tokom razvoja apl ikaci je

Uvidel i smo da trenutno postoje dve paradigme koje se bdquosudarajurdquo i koje supodjednako dobre same za sebe Relaciona paradigma potvrđuje da sve što jeizgrađeno na matematičkim osnovama je i trajno u smislu kval iteta koje posedujeU domenu u kom relaciona paradigma egzistira ona je ako je to u ovo vremeuopšte moguće tvrditi nezamenj iva

Ono što otvara pitanja i daje razlog za sumnju je koja je krajnja granicaupotrebl j ivosti relacione paradigme tj kol iki su kapaciteti složenosti zahtevaapl ikaci ja sa kojom može da se nosi Praksa je pokazala da je sasvim mogućebdquoizvestirdquo složene projekte - al i održavanje skalabi lnost razuml j ivost prenosivost -pitanja su sa koj im se relaciona paradigma teško može izboriti

Sa druge strane svoj habitat u informacionim tehnologi jama je našla i objektna

Slobodni profesionalac

35

Broj 33

paradigma Iako na prvi pogled ova dva modela nemaju ništa zajedničko - što je uneku ruku i istinito gledajući prirodu podataka koj im manipul išu - praksa jepokazala da su usko povezane i skoro da imaju sinaptičku vezu

Pitanje bdquokako spoj iti te sinapserdquo dovelo je do žučnih rasprava u uskim naučnimprogramersko-administratorskim krugovima Rodi l i su se razni model i a l i jedan jeiskočio i polako ulazi u široku primenu - a to je ORM Svoj im supti lnim pristupomproblemu nekompatibi lnih paradigmi nekako je uspeo da stvori taj nedostajućibdquoelektrični signalrdquo koj i ih je povezao Ovo je omogući lo da dve strane koje susvaka za sebe u svom domenu ostavi le i ostavl ja ju duboki trag u informacionimtehnologi jama sarađuju i donesu novi kval itet

Korisni l inkovi

[1] Hibernejt http hibernateorg[2] Viki http googlLlZulw[3] Tutori ja l i http googlCGzvnc

Hibernate ORM

36

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Autor Kriptopank

Šta su zapravo metapodaci Najkraće rečeno to su podaci o podacima i l iinformaci je koje opisuju podatke

Najpre da napravimo razl iku između podataka i metapodataka Podaci sunaprimer snimak (i l i transkript) vaših telefonskih razgovora sadržaj poruka kojepišete primate i l i šal jete podaci koje kačite na internet i l i preuzimate pretrageGuglom postovi na forumima dopisivanja na IRC kanal ima i l i drugim četovimaaudio i video snimci Skajp razgovora i tako dal je

Hajde da vidimo šta bi bi l i odgovarajući metapodaci za ove primere

bull Za telefonske razgovore metapodaci mogu biti lokaci ja učesnika brojevitelefona trajanje razgovora IP i MAC adresa

bull Za poruke četove i Skajp i l i druge video-audio komunikaci je sl ično je kao kodtelefonskih razgovora

To su samo metapodaci

Internet mreže i komunikacije

37

Broj 33

bull Kod foruma i pretraga Guglom ima malo manje metapodataka al i Gugl i raznisajtovi i forumi ionako čuvaju logove o korisnicima što su takođe metapodaci

Ako do sada koj im slučajem niste uvidel i opasnost po privatnost u ovimmetapodacima koje svako od nas smrtnika svakodnevno ostavl ja za sobom usvetu interneta i ostal ih digitalnih komunikaci ja nadamo se da će vas ovaj primermakar podstaći na razmišl janje a možda i na nešto više

Zamisl i te da neko (zvaćemo ga posmatrač) stalno sakupl ja metapodatke koje zasobom ostavl jate kao mrvice hleba Posmatrač recimo zna da se nalazite naautoputu nedaleko od famoznog Feketića da se ne krećete da zovete AMSS zatimšlep službu i možda taksi a l i ne zna šta ste razgovaral i I l i posmatrač vidi da steprvo zval i aerodrom Nikola Tesla pa odmah potom taksi a l i ne zna šta sterazgovaral i I l i posmatrač vidi da ste zval i prvo šest brojeva či je identitete takođezna pa vidi da se oni zatim kreću ka vama - GPS (eng Global Positioning System) pa zatim pica servis Mekdonalds i neku poznatu prodavnicu kineske hrane al i nezna šta ste razgovaral i

Posmatrač ne mora da bude mnogo pametan niti da prisluškuje vaše razgovore dabi shvatio šta se dešava i l i šta će se desiti Sasvim mu je jasno da vam je u prvomprimeru auto stao na autoputu zatim da ste se u drugom slučaju uputi l i naaerodrom i da možda putujete van zemlje i l i ste poslal i taksi po nekoga saaerodroma a da u trećem slučaju okupl jate žurku kod vas Više možete pogledatina http googl7vUjP

Iako su to bdquosamordquo metapodaci treba biti svestan da ti metapodaci o vama stvarajujednu digitalnu sl iku i l i bol je reći digitalni mozaik i na neki način vas jedinstvenoodređuju Pogotovo kada se planski prikupl ja ju na više nivoa (kompjuter pametnitelefon pametni automobi l i kreditna kartica) metapodaci čine vaš digitalniidentitet Al i da stvar bude još gora ta sl ika o vama ne mora nužno biti istinita jerse lako može lažirati Recimo možete zameniti telefone i l i automobi le sa nekimnamerno i l i slučajno i l i vam neko može jednostavno ukrasti telefon laptop i l ikreditnu karticu Zaniml j iv video http googlKO1fKf

Evo jednog primera koj i vas može uvući u vel ike nevol je Recimo da prolazitenekom zabačenom ul icom i da vam neprimetno ispadne telefon al i vi to neprimetite i nastavite dal je svoj im putem U toj ul ici se samo nekol iko minutakasni je desi neko ubistvo i vas pozovu u pol ici ju kao osumnj ičenog Ako koj im

To su samo metapodaci

38

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

slučajem nemate dobar al ibi i l i nemate svedoka da posvedoči da niste bi l i u tojul ici nego tamo gde ste stvarno bi l i a drugih svedoka nema - možete jako lošeproći Zaniml j ivi video http googlspS5OZ

Metapodaci se takođe nalaze i u faj lovimapodacima koje svakodnevnopreuzimamo sa interneta pravimo i koristimo Svaki tip podatka može da sadržiodređene metapodatke koj i bol je opisuju sam podatak kao naprimer vremenastanka podatka kol iko je vremena potrošeno za njegovo kreiranje kol iko putamu je pristupl jeno kad je poslednj i put pristupl jeno i tako dal je Iako se ovakvimetapodaci možda još uvek čine bezazlenim oni mogu sadržati i IP adresuračunara sa kog su napravl jeni GPS koordinate (najčešće PNG format sl ika satelefona) ko ga je napravio (l ičnost i l i kompani jaorganizaci ja) naziv uređaja imodel sa koga je napravl jen kao i MAC adresu uređaja mej l adresu kreatorasoftver koj im je napravl jen i tako dal je Sve ovo može mnogo da naškodiprivatnosti izvornog kreatora faj la pogotovo ako je sadržaj poverl j iv Ukol iko nekopresretne taj podatak na internetu može saznati od koga je potekao Da ovo možebiti katastrofa po kreatora takvog faj la može i lustrovati primer torenta Ako stedošl i u posed nekih sl ika i l i video materi ja la i l i teksta koj i žel i te da podel ite sasvetom preko nekog torent sajta morate taj podatak prvo očistiti odmetapodataka da ne bi svako ko skine to što ste okači l i saznao da vi stoj i te izatoga

Internet mreže i komunikacije

39

Broj 33

Ljudi se konstantno prate metapodaci se sakupl ja ju i to ni je sada već ništa novoal i možemo da se trudimo da iza sebe ostavl jamo malo manje nežel jenihmetapodataka i da ih takoreći čistimo iz podataka koje razmenjujemo Na srećupostoje programi koj i ovo dobro rade

Najpre je potrebno da vidimo koje sve metapodatke neki faj l sadrži kako bismo seuveri l i da ovi metapodaci stvarno postoje i da je faj l bezbedan nakon nj ihovogbrisanja

Ako koristite operativne sisteme GNULinuksa treba da iz terminala preuzmete iinstal irate program pod nazivom exiftool

sudo apt-get install exiftool

Ovaj program će nam pružiti uvid u sve metapodatke koje faj l sadrži Korišćenje jeiz terminala al i je zato veoma jednostavno samo ga pokrenite na sledeći način

exiftool File

i l i

exiftool putanjadofajlapočevodkorenogdirektorijuma

Dobićete prikaz metapodataka koje je program pronašao Sada je potrebno davidimo da l i je podatak bdquoprl javrdquo tj da l i ima u njemu nešto da se briše i da akoima iz njega sve nepotrebno obrišemo Tu će nam pomoći drugi program zvaniMAT (eng Metadata Anonymisation Toolkit) koga možete naći na sajtuhttps matboumorg i l i jednostavno za korisnike Ubuntua i Debi jana uSoftverskom centru i l i ga možete instal irati iz terminala

sudo apt-get install mat

MAT će proveriti da l i je podatak bdquoprl javrdquo i l i ne i za vas ga očistiti od nežel jenihmetapodataka

Kada očistite faj l on je spreman za del jenje sa drugima a vi ste bezbedni jer nikone može reći da je faj l potekao sa vašeg računara

To su samo metapodaci

40

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Autor Dejan Čugal j

GH Hardi bdquoPrava matematika nema uticaj na ratrdquo - odbrana matematičara1940 godina

Bi l Tat - britanski matematičar verovatno niste čul i za njega1942 godine je izveo ogroman poduhvat koj i je skratio rat dvegodine (barem po rečima Ajzenhauera) i spasio mi l ione životaNažalost njegova vel ičina je preminula 2002 godine obavi jenavelom tajne i nikada zvanično ni je priznato njegovo dostignuće

Tomi Flauers - bivši inženjer poštanskog saobraćaja pretvorio jematematičke ideje Tata u prvi računar a to ni je bio bdquoENIACrdquo1Preminuo je 1998 godine a pretpostavl jamo da nikada niste čul ini za njegovu vel ičinu

Ovi umni giganti bdquoBlečl i parkardquo omogući l i su Britani j i da dešifruje strogo poverl j ivumašinu koju je koristio Hitler da diriguje drugim svetskim ratom a to ni je bi labdquoENIGMArdquo nego nešto mnogo tajni je i značajni je Vel ika je verovatnoća da nistečul i ni za ovo Neki kažu da je to bio Hitlerov Blekberi (BlackBerry)

Izgubljeni heroji bdquoBlečli parkardquo

1 engl Electronic Numerical Integrator And Computer - prvidigitalni elektronski računar

Internet mreže i komunikacije

41

Broj 33

1939 godine bdquoBlečl i parkrdquo je postao ratni štab MI6 (britanske vojne obaveštajneslužbe) Do danas je procurelo u javnost i dokumentovano brojnim fi lmskimdokumentarcima samo da je tu Alan Tjuring uspeo da dešifruje nemačkumornaričku šifru poznatu kao bdquoENIGMArdquo i uvel iko doprineo pobedi saveznika a to jesamo deo priče koj i je ispričan

U Blečl i parku su bi la tri heroja AlanTjuring Bi l Tat i Tomi Flauers Od nj ihtroj ice jedino Alanu Tjuringu je priznat deozasluga za pobedu saveznika u Drugomsvetskom ratu Pregledom otkrivenihpodataka danas možemo da tvrdimo daje bdquoENIGMArdquo već sa početka drugogsvetskog rata bi la zastarela tehnologi ja Zbog toga je bi lo lako skinuti veo tajne sa

ovog uspeha heroja Blečl i parka

Izgubljeni heroji bdquoBlečli parkardquo

42

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Bi l Tat koj i je dešifrovao bdquoTANI sistemrdquo (TANI) i Tomi Flauers koj i je samo svojomintuici jom i znanjem sklopio prvi računar na svetu (bdquoKOLOSrdquo) u svrhu bržegdolaženja do informaci ja razbi jenog koda bdquoTANIrdquo tako da zastarelost šifrata budesvedena na minimum - radi l i su na novoj generaci j i mašina za šifrovanje Ovatehnologi ja je bi la prepoznata kao tehnologi ja budućnosti pa i danas iznadinformaci ja o tim tehnologi jama stoj i natpis bdquovrhunska tajnardquo (eng Top Secret) Upravo ovaj veo tajni oko šifrata bdquoTANIrdquo i prvog računara je rezultirao iskrivl jenjuistori je informatike

Za uspehe u prvim godinama rata je zaista zaslužno razbi janje bdquoENIGMArdquo šifrata ito ni je sporno al i krajem 1941 godine u etru planete se začuo novi zvuk To je bi lanova mašina za šifrovanje ni je bi la zasnovana na bdquoMorzeurdquo već je radi la naprincipu teleprintera

Jedna od kl jučnih ideja Hitlerovog ratovanja je bi la u vel ikoj mobi lnosti i brzomdelovanju trupa na terenu a da bi se to izvelo komunikaci ja je isto tako morala dabude u najmanju ruku putem radio signala

Razl ika je ogromna Razl ika je u kol ičini podataka koj i može da se prenese ovimbdquotajnimrdquo putem Prvi svetski rat je bio zaniml j iv jer su se šifrovane poruke baziralena rečima dok je Drugi u potpunosti otvorio vrata današnjoj kriptografi j i a to jematematika

Originalan nemački kocircdni naziv za ovaj šifrat bio je bdquoLORENCrdquo Britanska

Internet mreže i komunikacije

43

Broj 33

obaveštajna služba mu je dala nadimak bdquoTANIrdquo Čak ni dan danas ni je baš poznatokako je sve nastalo al i pouzdano se zna da je tajnu mašinu Hitler nazvaobdquoGehajmšrajberrdquo (nem Geheimschreiber) - mašina tajni

U srž i tehnologi ju šifrovanja bdquoLORENCrdquo šifrata nećemo ulaziti u ovom članku al iverujte nam na reč - ni je bi la jednostavna Može se pretpostaviti da je inspiraci jaŠenonovog 2 rada slučajnosti bi la upravo ova tehnologi ja iz Drugog svetskog rata

Ono čime se Treći rajh vodio je bdquosigurnardquo šifrovana veza koju niko ni je smeo dadešifruje Prenošenje šifrovanih poruka pomoću radio signala je dalo obaveštajnimslužbama mogućnost presretanja poruka poslatih radio talasima Da l i se ovo idanas dešava Imamo l i sigurnost u našim šifrovanim podacima današnj ice

Ono što je usledi lo nakon proboja ovog bdquoneuhvatl j ivogrdquo šifrata je upravo ono što jeprincip današnj ice kao neka vrsta protokola koj i mora da se ispoštuje uperfektnom šifarskom Šenonovom sistemu

1 NIKADA NIKADA NE KORISTITI DVA PUTA ISTI KLJUČ ZA ŠIFROVANJE2 NIKADA NIKADA KLJUČ NE SME DA SE ŠALJE ISTIM KOMUNIKACIONIM KANALOM

KAO PORUKA3 NIKADA NIKADA KLJUČ NE SME DA BUDE MANJ I NEGO ŠTO JE PORUKA (engl

2 Klod Elvud Šenon (eng Claude Elwood Shannon) (1916-2001) - Američkinaučnik i inženjer

Izgubljeni heroji bdquoBlečli parkardquo

44

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

one time pad) 4 NIKADA NIKADA NE SMEMO DA SAKRIVAMO SISTEM ŠIFROVANJA SVE MORA

DA JE OTVORENOG KOcircDA

Najveći propusti kriptologi je koj i su uočeni baš u Drugom svetskom ratu jesupokušaj sakrivanja sredstava koj im se generiše tajna poruka i nepoznavanjeŠenonovih krajnj ih granica informaci ja Kada kažemo bdquosredstvo i sakrivanjerdquomisl imo na algoritme Postavl ja se pitanje zašto je danas kriptologi ja sigurni ja negočetrdesetih i pedesetih godina prošlog veka

Danas uprkos tome što su algoritmi za kriptografi ju otvorenog kocircda tajnostinformaci ja je na višem nivou nego što je to bi lo dok je algoritam bio strogopoverl j iv Tajnost tajnih podataka se ne zasniva na tajnosti a lgoritama koj i generišutaj isti bdquotajni izlazrdquo (eng cipher text) nego u nemogućnosti matematičke inverznefunkci je koja bi šifrovan tekst otvori la Ovde se vidi da je svrha strukture otvorenogkocircda kao jednog od značajnih delova današnje kriptologi je ona koja ga činisigurnim i svima dostupnim

Sada kada se sa ove distance osvrnemo na Drugi svetski rat možemo videti kol ikosmo bi l i bl izu apokal ipse Naime Albert Ajnštajn je već 1944 godine imao urukama recept za nuklearnu bombu Šenon je mogao već u to vreme da nampredoči 100 siguran šifrat (tzv Hitlerovu super šifru) a l i ipak sreća nas jeposluži la da čovečanstvo tada ni je bi lo spremno da upotrebi svu raspoloživutehnologi ju

Albert Ajnštajn bdquoČetvrti svetski rat će se voditi tol jagamardquo

Zaboravl jeni heroj i Blečl i parka iako su odigral i važnu ulogu u pobedi saveznika usvetskom ratu postal i su žrtve bdquotop secretrdquo doktrine potpuno su zaboravl jeni inestal i su iz istori je

Zakl jučak ovog članka je da je ideologi ja otvorenog kocircda sasvim sigurno tu da nampomogne i da otvori vrata ka većoj sigurnosti novim idejama i kval itetu sameinfrastrukture sistema koju svi zajedno razvi jamo

Internet mreže i komunikacije

45

Broj 33

Autor Nikola Hardi

NabrajanjaBez brojeva

Za nabrajanje pojmova u Bimeru (eng Beamer) koristi se okruženje itemize aunutar tog okruženja možemo da dodajemo nove stavke pomoću item Primerizgleda ovako

beginitemizeitem Stavka Aitem Stavka Bitem Stavka C

enditemize

Sa brojevima

Postoje situaci je kada uz nabrajanje treba da stoje i redni brojevi - za to se koristienumerate okruženje a nove stavke se takođe dodaju pomoću item

beginenumerateitem Redni broj 1item Redni broj 2item Redni broj 3

endenumerate

prezentaci ja

Beamer (4 deo)

Sam svoj majstor

46

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

DefinicijeTreća situaci ja je nabrajanje parova termin - definici ja U tom slučaju se koristiokruženje description Već možete da pretpostavite kako se dodaju nove stavke

Primer

begindescriptionitem[Pojam A] Definicija izmišljenog pojma Aitem[Pojam B] Definicija izmišljenog pojma Bitem[Pojam C] Definicija izmišljenog pojma C

enddescription

Ostala podešavanja i zanimljivostiSva prethodna okruženja mogu da budu ugneždena jedno unutar drugog dotrećeg nivoa Treba biti pažl j iv jer sla jdovi vrlo lako mogu da postanu nečitl j ivi Osim toga moguće je izabrati i format oznake i l i rednih brojeva - na primer ovako

beginenumerate[I]beginenumarate[a)]

Takođe moguće je upravl jati pojavl j ivanjem pojedinih stavki na slajdovima Drugimrečima možemo da odredimo da se nabrajanja postepeno otkrivaju tako što ćemouz stavku dodati lt1-gt odnosno broj od kojeg slajda žel imo da se ta stavkapojavl ju je Tada će jedno nabrajanje biti bdquorazvučenordquo na više slajdovaJednostavni ja mogućnost je da u zaglavl je okruženja dodamo +- što znači dažel imo da se svakim slajdom otkriva po jedna nova stavka iz nabrajanja Znak bdquo-rdquo uoba primera znači da žel imo da se stavka pojavi na sledećem slajdu i da ostane

Sam svoj majstor

47

Broj 33

prisutna Možemo da izostavimo znak bdquo-rdquo i tada će stavka biti prisutna samo najednom slajdu i l i da napišemo raspon slajdova u koj ima žel imo da ta stavka budeprisutna

Rad sa kolonama i blokovimaDo sada su svi primeri podrazumeval i da je sadržaj napisan preko cele širineslajda al i Bimer (eng Beamer) ima i jednostavne mehanizme za razmeštanjesadržaja po kolonama Za rad sa kolonama se koristi okruženje columns unutarkojeg možemo da dodajemo nove kolone pomoću columnširina Sadržaj jemoguće potom pisati i van okruženja sa kolonama

U paru sa kolonama često se sreće i okruženje block koje se parametrizujenaslovom Primerom su i lustrovani i okruženje column i okruženje block

beginframebegincolumns

column05textwidthbeginblockNaslov levog blokaSadržaj u prvoj (levoj) koloni endblock

column05textwidthbeginblockNaslov desnog blokaSadržaj u drugoj (desnoj) koloni

endblockendcolumns

beginblockVan kolona

Beamer

48

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Tekst koji se nalazi ispod kolonaendblock

endframe

TabeleIako se u radu sa prezentaci jama sadržaj najčešće može uredno rasporeditipomoću kolona i nabrajanja nekada to ni je dovol jno jer su tabele pravi formatBimer podržava standardno Lateh (LaTeX) okruženje za rad sa tabelamaOkruženje za rad sa tabelama se zove tabular Pri kreiranju nove tabele moguće jepodesiti koje kolone će biti razdvojene l ini jom i da l i će nj ihov sadržaj biti centrirani l i uz levu i l i uz desnu ivicu Dodavanje novog reda se jednostavno radidodavanjem hline Lateh pruža zaista jako fleksibi lan rad sa tabelama i sigurno ćedoskočiti svim mogućim i nemogućim zamisl ima Potražite bi lo koje Lateh uputstvoza rad sa tabelama i radiće i sa Bimerom

beginframebegintabular | c | c | c | c |

hlineamp Ponedeljak amp Utorak amp Sreda hline

1 amp 16 amp 32 amp 64 hline2 amp 16 amp 128 amp 1024 hline3 amp 16 amp 512 amp 4096 hline

endtabularendframe

Sam svoj majstor

49

Broj 33

Beamer

Teoreme i istaknut tekstU nastavi su česta izlaganja teorema nj ihovih dokaza i primera U Bimer jeugrađena podrška za elegantno predstavl janje ove trojke Mehanizam takođepodržava postepeno otkrivanje sadržaja sla jda tako da slušaocima ne bude odmahotkriven dokaz teoreme Mehanizam za postepeno otkrivanje se kao i kodnabrajanja postiže pomoću bdquolt1-gtrdquo konstrukci je Evo kako to izgleda

beginframeframetitlePrimer teoreme

begintheoremlt1-gt Teorema kaže da su beamer prezentacijezanimljive

endtheorem

beginexamplelt2-gt Ovaj kod kreira slajd beamer prezentacijeendexample

beginprooflt3-gt Čestitamo stigli ste do kraja serijala o pravljenju beamer prezentacija

endproofendframe

50

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Za krajOvim člankom završavamo seri ja l o Bimeru Nadamo se da smo uspel i da vaszainteresujemo za ovu vrlo korisnu klasu Lateha Trudi l i smo se da vamprezentujemo najvažni je delove Bimera koje ćete najčešće koristiti pri l ikomkreiranja svoj ih prezentaci ja

Napominjemo još jednom da je Bimer samo jedna od klasa Lateha što znači da i zaBimer važi sve ono što ste već mogl i da pročitate u ovom časopisu kad smo pisal iseri ja l bdquoUvod u LaTeXrdquo (LiBRE brojevi 17 do 21) Štaviše ovaj seri ja l o Bimeru jebio nastavak upravo tog seri ja la U ovom seri ja lu nismo pisal i o samomformatiranju teksta u prezentaci jama jer se podrazumeva da važe ista pravi la kao iu Latehu a o tome smo pisal i u prethodnom seri ja lu

Hvala vam što ste prati l i ovaj seri ja l i žel imo vam puno uspeha u kreiranju Bimerprezentaci ja

Sam svoj majstor

51

Broj 33

Autor Nenad Marjanović

Kada smo se upoznal i sa podešavanj ima sistema i umrežavanjem vreme je za našprvi Biglbon Blek (BBB - eng BeagleBone Black) projekat Svakom od nas će ovajizazov dati razl ičite ideje a jedna od nj ih može biti i zaštita privatnosti internetkorisnika Nažalost u Srbi j i ne postoj i ni jedan izlazni tor server (eng node) i to jepomalo tužna sl ika s obzirom da govorimo o populaci j i od sedam mil ionastanovnika Al i ovu sl iku možemo promeniti udruženim snagama i za početakkreiranjem Tor transfer i izlaznog servera U ovde prikazanom grafikonufokusiraćemo se na bdquoRauter Brdquo tačku odnosno transfer server konfiguraci ju

BeagleBone Black Rev C

Vodič od prvog dana (3 deo) ndashBeagleBone Black kao Tor relej

Hardver

52

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Tor predstavl ja mrežu servera koj i se povezuju radi bol je enkripci je podataka izaštite IP adrese korisnika Naš ci l j je da danas postanemo deo ovog predivnogprojekta i da se nađemo na svetskoj karti Tor servera

Brzina interneta i zakonske regulativePotrebno je imati na umu nekol iko bitnih stvari

1 Naš server = naša odgovornost2 Obavezno naznačite da ste vi administrator a ne korisnik istog servera3 Da posedujete internet brzinu od 2 Mbs

Ako ispunjavamo tri navedena pravi la i odgovornosti možemo se posvetitiadministrativnim poslovima

Instalacija i podešavanjaU ovom primeru koristimo Debi jan Vizi (eng Wheezy) odnosno Debi jan 7 verzi juna našem BBB uređaju Vi možete testirati i druge Linuks platforme Prvododajemo izvornu bibl ioteku u etcaptsourceslist faj l pokretanjem sledećekomande u terminalu

echo deb httpdebtorprojectorgtorprojectorg wheezy main gt etcaptsourceslistdtorlist

Zatim dodajemo izvorni kl juč vršimo ažuriranje sistema i instal iramo tor i tor-arm(Tor monitoring sistem)

gpg --keyserver keysgnupgnet --recv 886DDD89gpg --export A3C4F0F979CAA22CDBA8F512EE8CBC9E886DDD89 | sudo apt-keyadd -apt-get updateapt-get install debtorprojectorg-keyring -yapt-get install tor tor-arm egrep screen -y

Ovim smo uspešno završi l i instalaci ju Tor servera i sistema za monitoring odnosnonadgledanja našeg Tor servera Sledećom komandom radimo na podešavanj imaTor servera koja se nalaze u etctortorrc faj lu Obratite pažnju i izvršite potrebne

Hardver

53

Broj 33

izmenu u pol j ima IP adresa (eng Address) nadimka (eng Nickname) i kontaktpodataka (eng ContactInfo) pre pokretanja ove komande Kopiramo i pokrećemokomandu u celosti u terminalu

egrep -v ^(|$) etctortorrcORPort 443Address 19216811Nickname LibreTorRelayRelayBandwidthRate 100 KBRelayBandwidthBurst 120 KBContactInfo ltvi at gmail dot comgt irPort 8080DirPortFrontPage etctortorhtmlExitPolicy reject

Detal je o svim vrednostima nećemo iznositi u ovom broju LiBRE časopisa al ićemo o nj ima pisati u sledećem u kome ćemo pričati o zaštiti Tor servera imogućnosti podešavanja određenih izlaznih pravi la (eng ExitPolicy)

Nakon ovoga možemo primetiti da se u folderu etctor ne nalazi torhtml faj l Ovaj faj l ni je od vel ikog značaja i možete ga l ično napraviti i l i preuzeti jednu kopi ju- naprimer sa sledeće lokaci je

cp usrsharedoctortorhtml etctortorhtml

Opcije i Tor Arm monitoringDa bismo ispravno koristi l i Tor Arm potrebno je urediti još jednom etctortorrcfaj l i restartovati servis

echo -e ldquoDisableDebuggerAttachment 0n AvoidDiskWritesrdquo gtgt etctortorrcsudo service tor reload

Ukol iko žel ite koristiti Tor Arm za nadgledanje aktivnosti na serveru pokreniteprogram screen kl iknite na bdquoEnterrdquo i kucajte sudo -u debian-tor arm Naekranu ćete imati sl ičan prikaz

BeagleBone Black

54

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Hardver

55

Broj 33

Da bismo napusti l i screen program koristimo Ctrl + a + d i na taj način kada sesledeći put pri javimo na server kucamo samo screen -r u terminalu - i naći ćemose ponovo na čuvenom Tor Arm monitoring ekranu

Nakon svake promene konfiguracionih faj lova ako slučajno nismo nešto podesi l ikako treba restartujemo servise

U sledećem broju časopisa govorićemo o minimalnim podešavanj ima ikonfigurisanju izlaznog Tor servera (eng Tor Exit Node) opci jama sigurnosti isl ičnim detal j ima u vezi sa našim prvim projektom Do čitanja u sledećem broju

BeagleBone Black

LUGoNS BarCamp 4subota 7 mart 2015 godine

Četvrti LUGoNS-ov Barkemp (BarCamp) održaće se u Novom Sadu usubotu 7 marta 2015 godine na Fakultetu tehničkih nauka sa početkomu 12 časova

Ulaz je slobodan

Poziv za predaju radovaLUGoNS poziva sve zainteresovane da pošal ju svoje radove (predavanjaprezentaci je radionice i diskusi je) do 28 februara 2015 godine

Oblasti iz koj ih možete da pri javite vaše radove su

bull Slobodan softverbull Zaniml j iv hardverbull Hakerski zakonibull Sigurnosne noćne morebull Anonimnost i privatnost na internetubull Duboki veb (eng Deep Web)bull Soci ja lne mrežebull Soci ja lni inženjeringbull Hakovanje mobi lnih uređajabull Internet u oblaku (eng Clouds) ndash hakovanje razbi janje i neočekivano korišćenjebull DPI (eng deep packet inspection)bull Mreža i mrežna neutralnost ndash vlasništvo cenzura nadmudrivanje i pol itika bdquodefaktordquo standarda

bull Programiranje i programski jezici

Nemojte se ustručavati i slobodno nam se javite ako imate rad na gore navedenei l i sl ične teme koj i smatrate interesantnim

Stranica za predaju radova nalazi se na https events lugonsorgp=1658

Page 9: LiBRE 33 Lat

9

Broj 33

Autor Branimir Karadžić

bgfx je rendering bibl ioteka otvorenog koda sa podrškom za više razl ičitih grafičkihAPI-ja 1 (eng Application Programming Interface) i operativnih sistema 2 Bibl iotekasluži za jednostavni j i pristup grafici i razvoj igara na više platformi Najvećiproblem sa kompjuterskom grafikom je što postoj i više razl ičitih API-ja koj i kada sekoriste direktno onemogućavaju portovanje igara na druge platforme Praveći igrukoja pristupa samo bgfx bibl ioteci a ne direktno API-u autor igre omogućava sebida tu igru na jednostavan način može prebaciti na bi lo koj i podržan operativnisistem odnosno platformu

Predstavljamo

bgfx - Cross-platform renderinglibrary

10

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

U početku bgfx je bio samo hobi projekat i zato ima nemaštovito ime Bi la je tosamo jedna od mnogih bibl ioteka koje sam napravio za pravl jenje igara Kada samradio na jednoj igri postojala je potreba da se igra prebaci sa starog DX9 (engDirectX 9) renderinga na OpenGL (engl Open-dži-el ) pa sam tom pri l ikom izvukaodeo moje hobi bibl ioteke za renderovanje i zapakovao je kao cel inu Posle uspešneprimene ove bibl ioteke u moj im projektima odlučio sam da je objavim kao projekatotvorenog koda na Githabu (eng Github) pod l icencom BSD 2-clause Po mommišl jenju ovaj deo renderinga je trebalo već odavno da bude rešen problem kao ida bude moguće da se igre bez veće muke izdaju na bi lo kojoj platformi po žel j iautora Namenjena je prevashodno manj im autorima koj i žele da imaju potpunukontrolu nad svoj im kodom bez obzira na platformu na kojoj žele da objave igruKod ovakvih komerci ja lnih proizvoda uvek postoje neka ograničenja a ako firmeizgube interes za proizvodom mogu ostaviti autore na cedi lu bez podrške iodržavanja Sa druge strane projekti otvorenog koda omogućuju saradnju autora iunapređenje funkcionalnosti projekta na zadovol jstvo svih

Upotrebom bgfx bibl ioteke korisnik može da zanemari konkretnu implementaci jurazl ičitih tehnologi ja kao što su OpenGL OpenGL ES i Direct3D bez kompromisa saperformansama Ova bibl ioteka ni je tanka apstrakci ja i l i emulator nekogpostojećeg API-ja tipa Guglovog Engl (eng ANGLE) projekta koj i emul ira OpenGL

Predstavljamo

11

Broj 33

ES preko Direct3D-a i l i Valvov TuDži-El (eng ToGL) koj i emul ira Direct3D 9 prekoOpenGL-a nego zaseban API višeg nivoa Iako je u prošlosti bi lo sl ičnih projekatasvi oni su uglavnom imal i pretenzi ju da budu endžin (engine) i l i frejmvork koj i bitvorci igara koristi l i kao takav Takav pristup donosi dosta kompl ikaci ja i veoma jeteško takav projekat integrisati sa postojećim kodom Iz ovog razloga bgfx projekatnema pretenzi je da bude ceo endžin i l i frejmvork nego samo bibl ioteka koju svakomože lako da integriše u sopstveni projekat

bgfx bibl ioteka se trenutno koristi u nekol iko komerci ja lnih igara al i ima i dostainteresovanja za projekat kao osnove za pravl jenje korisničkih apl ikaci ja pa čak ialata za programere

Na projektu je do sada radi lo oko deset l judi Uglavnom su dodaval i podršku zanove platforme primere i l i su povezival i bibl ioteku sa drugim jezicima Što sebuduće saradnje na ovom projektu tiče sve je dobrodošlo čak i sȃmo korišćenjebibl ioteke a zahtevi za uvođenje novih mogućnosti unapređuju samu bibl ioteku

bgfx

12

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Predstavljamo

13

Broj 33

1 Podržava grafičke API-je

bull Direct3D 9bull Direct3D 11bull OpenGL 2 1bull OpenGL 3 1+bull OpenGL ES 2bull OpenGL ES 3 1bull WebGL 1 0

2 Podržava platforme

bull Android (14+ ARM x86 MIPS)bull asm jsEmscripten (1250)bull iOSbull Linuks (x86 x86_64)bull Nejtive klajent (Native Client PPAPI37+ ARM x86 x86_64 PNaCl)

bull OS Iks (OSX 109)bull Rasberi-paj (RaspberryPi - ARM)bull Vindouz (Iks-pe Vista 7 8 10)bull Vin-ar-ti (WinRT WinPhone 80+ )

bgfx

14

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Autor Stefan Nožinić

UvodrEFInd je softverska apl ikaci ja za EFI (Extensible Firmware Interface) sisteme kojaomogućava izbor više operativnih sistema na jednostavan način Ovo je samoupravnik buta (boot) i u ovom broju vam predstavl jamo o kakvom projektu je reč ikako se može primeniti

Šta je (U)EFIPre nego što predstavimo sam projekat trebalo bi prvo da skrenemo pažnju idetal jni je da predstavimo problematiku EFI je nastao kao zamena za dosadašnj iBIOS (Basic InputOutput System) i razvi la ga je kompani ja Intel Ovaj pristup jekasni je zamenjen UEFI standardom EFI tehnologi ja ima prednost u slučajevimakao što su

bull Pokretanje sistema na diskovima preko 2TB memori je korišćenjem GPTtehnologi je

bull Nezavisnost od specifične arhitekture procesorabull Modularan dizajnbull Dobro okruženje pre učitavanja operativnog sistema što podrazumeva i mrežnupodršku

Tehnologi ja omogućava upotrebu 32-bitnih i 64-bitnih adresa na procesorima koj ito podržavaju Rani je BIOS tehnologi ja to ni je omogući la već se uvek koristi la 16-bitna implementaci ja iz istori jskih razloga

Predstavljamo

15

Broj 33

Particiona šemaEFI tehnologi ja ima drugači ju šemu partici ja Dok je stari pristup podržavao samoMBR (Master Boot Record) šemu nova tehnologi ja podržava GPT šemu kojaomogućava veći broj primarnih partici ja Sa starim pristupom taj broj bio jeograničen na četiri primarne partici je od koj ih je svaka morala da ima kapacitetmanj i od 2TB

AplikacijeUEFI podržava izradu apl ikaci ja koje bi se pokretale nezavisno od operativnogsistema Ove apl ikaci je se mogu naknadno instal irati Primer takvih apl ikaci ja supokretači (loader) operativnih sistema kao i upravnici butovanja

EFI sistemska particijaEFI podržava posebnu partici ju za smeštanje raznih potrebnih informaci ja kao štosu potrebni podaci za rukovanje računarom i specifične apl ikaci je Ova partici ja jenajčešće FAT32 sistem datoteka

rEFInd

16

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

But menadžer i but louder - ima razlikeOd popularizaci je GRUB upravnika mnogi korisnici su ostal i bez objašnjenja kakvaje razl ika između but loudera (boot loader) i but menadžera (boot manager) Ovose dešava jer GRUB pruža obe usluge u sklopu jednog programa pa se time teževidi razl ika između ova dva pojma But menadžer je upravnik pomoću kojeg jemoguće izabrati operativni sistem za pokretanje On ne zna ništa speci ja lno ooperativnom sistemu pa time ne zna ni kako da ga pokrene On samo zna datreba da pokrene but louder za taj sistem Kada je sistem izabran pokreće sespecifičan but louder za taj sistem koj i je zadužen za dal j i proces pokretanjakernela Za razl iku od GRUB upravnika rEFInd pruža samo usluge but menadžerašto u početku može zvučati poražavajuće za ovaj projekat Kada uzmemo u obzirda većina sistema danas ima but louder u sklopu kernela (ukl jučujući i Linuks odnovi j ih izdanja) ovaj problem je prevaziđen

Predstavljamo

17

Broj 33

InstalacijarEFInd postoj i kao deb i kao rpm paket al i postoj i i zapakovan kao zip arhivaZahval ju jući tome paket je moguće instal irati upotrebom dpkg komande nadistribuci jama baziranim na Debi janu kao i upotrebom rpm komande nadistribuci jama koje koriste taj način pakovanja paketa Za Ubuntu postoj i i PPArepozitori jum pa rEFInd može biti instal iran na sledeći način

sudo apt-add-repository pparodsmithrefindsudo apt-get updatesudo apt-get install refind

Nezavisno od toga koj i način od gore opisanih koristite rEFInd će automatski bitiprebačen na ESP i biti postavl jen kao podrazumevani upravnik

KonfiguracijarEFInd bi trebalo da vam pruži zadovol javajuću funkcionalnost bez dodatnekonfiguraci je posle instalacionog procesa On će automatski detektovati loudereoperativnih sistema korišćenjem pretrage po svim partici jama koje prepozna Uslučaju da ste napredni j i korisnik i da žel ite da modifikujete ponašanje rEFInda tomožete uraditi izmenom njegove konfiguracione datoteke Postoj i g lobalnakonfiguraci ja i konfiguraci ja za svaki sistem posebno Ovaj tekst bi postao previšedugačak kada bismo ulazi l i u detal je same konfiguraci je pa vam zatopreporučujemo ako imate potrebu za dodatnom konfiguraci jom da posetitedokumentaci ju projekta i l i ako imate neke nedoumice da kontaktirate s namapreko naše e-pošte

Za krajŽelel i bismo da ovaj tekst zakl jučimo ocenom da je ovaj projekat dosta zaniml j ivda pruža zadovol javajuću funkcionalnost i da omogućava korisnicima koj i koristeovaj sistem pokretanja lako pokretanje svoj ih operativnih sistema Još jednomžel imo da vam skrenemo pažnju da nam se obratite i ukažete ako smo nešto važnopropusti l i da pomenemo i l i ako nam se negde potkrala greška

Korisni l ink http wwwrodsbookscomrefind

rEFInd

18

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Autor Nikola Hardi

Opšte je poznato da su računari dobri u radu sa brojevima Međutim vremenom suse i potrebe korisnika i alati za programiranje računara razvi ja l i i rad sa drugači j imtipovima podataka je postao uobičajen i znatno jednostavni j i nego rani je Svi smoimal i pri l iku da radimo sa programima za obradu fotografi ja video materi ja la i l izvučnih zapisa Multimedi ja je ipak tema koja prevazi lazi jedan uvodni kurs o C-ual i do kraja ovog seri ja la ćemo se dotaći i tih tema Za početak osvrnućemo se narad sa tekstualnim podacima na C način

Stringovi na C načinDefinici ja tekstualnog podatka u sferi računarstva se uglavnom svodi na to da jetekst niz karaktera a karakteri su znakovni simbol i Iako imamo mogućnost daradimo sa tekstom i l i multimedi jom računari ipak razumeju samo brojeve pamoramo tako da im predstavimo i tekst Postoje razni standardi kako se pojedinikarakteri predstavl ja ju u memori j i računara između ostalog najpoznati j i su ASCIIEBCDIC UTF i td EBCDIC je standard koj i je prisutan u Eplovom (eng Apple) svetu iviše nema tol iko važnu ulogu ASCII je standard koj i je vrlo prisutan i danas UTF jenastao kao proširenje ASCII standarda javl ja se u više vari janti i uvodi podršku zapisma razl ičita od abecede (kinesko japansko ćiri l ica arapsko i mnoga druga)

Važno je napomenuti da je originalni ASCII standard propisivao 7 bitova za jedankarakter što je dalo prostora za 128 karaktera Među tim karakterima se nalazecifre mala i vel ika slova engleskog alfabeta i niz kontrolnih karaktera Kontrolnikarakteri su oznake za novi red prazno mesto tabulator upravl janje štampačima(vraćanje glave štampača na početak) rad sa terminal ima (alarm i l i obaveštenje

Kako da

Uvod u programski jezik CRad sa stringovima (9 deo)

19

Broj 33

da se nešto dogodi lo) ASCII standard je proširen na 8 bitova odnosno ceo jedanbajt i sada podržava 256 karaktera Potražite na internetu termin bdquoASCII tabelardquo dabiste stekl i uvid u to kako izgleda tzv tabela ASCII karaktera

Rad sa pojedinačnim znakovima ne obećava mnogo Postoj i realna potreba zaradom sa rečima rečenicama l ini jama teksta itd Podaci koj i se sastoje od više odjednog karaktera se u domaćoj l i teraturi nazivaju znakovnim niskama madaodomaćen je i naziv bdquostringrdquo koj i je i mnogo češće u upotrebi U programskomjeziku C se stringovi predstavl ja ju običnim nizovima karaktera (char niz[]) a krajteksta se označava NULL karakterom odnosno speci ja lnim znakom 0 či jabrojevna predstava je pogađate nula Ovakva predstava tekstualnih podatakanosi sa sobom i pojedine kompl ikaci je Gotovo svi savremeni jezici poznaju tipstringa dok su u C-u stringovi ipak samo obični nizovi

Da se podsetimo nizovi u C-u su zapravo pokazivači na deo u memori j i Kadapokušamo da pristupimo jednom elementu niza tada se vrši operaci jabdquodereferenciranjardquo sa zadatim odstupanjem Sledi nekol iko primera koj i i lustrujurad sa nizovima na primeru nizova karaktera

char niz1[] = zdravoniz1[0] = Z

char niz2[5]niz2[0] = 0niz2[1] = kniz2[2] = 0

Pri deklaraci j i niza 1 ni je zadata dužina zato što je u jednom izrazu zadata iinici ja l izaci ja niza koja glasi ldquozdravordquo Prevodi lac može sam da zakl juči kol ikomemori je je potrebno

U drugom primeru je kreiran niz karaktera dužine 5 Međutim popunjena su samoprva tri mesta Primećujete razl iku između prvog i trećeg elementa Prvi je cifra 0(uokviren je navodnicima) a treći je brojčana vrednost 0 koja označava krajstringa

Može se primetiti još jedna razl ika u data dva primera U prvom primeru sukorišćeni dvostruki navodnici dok su u drugom korišćeni jednostruki Razlog za to

Uvod u programski jezik C

20

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

je što se znakovni nizovi koj i su uokvireni dvostrukim navodnicima smatrajustringovima i podrazumevano im se dodaje bdquoterminatorrdquo odnosno znak NULL koj ioznačava kraj stringa Jednostruki navodnici se iskl jučivo koriste za predstavl janjepojedinačnih karaktera Ovo znači da zapisi ldquoardquo i a nisu jednaki Prvi zapis jedužine 2 jer ima i znak NULL koj im je završen

Ispisivanje i učitavanje stringovaPre nego što nastavimo dal je biće objašnjen jednostavan način za ispisivanje iučitavanje stringova pomoću standardnog ulazaizlaza Da se podsetimobibl ioteka za standardni ulazizlaz (ispis podataka u konzol i odnosno terminalu) jestdioh Ukol iko se koristi formatirani ispis potrebno je funkci jama printf() iscanf() proslediti format string koj i sadrži speci ja lan znak s čime je označenoda žel imo da ispišemo znakovni niz sve do NULL karaktera Drugi način jeupotrebom funkci ja puts() gets() i getline() iz bibl ioteke stringh Sledi primer

include ltstdiohgt include ltstringhgt int main()

char niz1[] = Zdravo svete

printf(sn niz1)

scanf(s niz1)puts(niz1)

return 0

Može se primetiti da je u slučaju funkci je printf() potrebno naglasiti speci ja lnimkontrolnim karakterom n da nakon ispisa treba preći u novi red Funkci ja puts() topodrazumevano radi

Za ove i sve druge funkci je dodatnu pomoć je moguće pronaći u Linuksovim manstranicama u odel jku 3 koj i je posvećen standardnim bibl iotekama Recimo mangetline sadrži detal jno uputstvo o funkci j i getline()

Kako da

21

Broj 33

Kopiranje stringovaKao što je u prethodnom odel jku napomenuto stringovi su u C-u samo običninizovi To znači da sledeći kod verovatno neće uraditi ono šta bi bi lo očekivano

niz1 = niz2

Ovime smo pokazivaču niz1 bdquorekl irdquo da pokazuje tamo gde i pokazivač niz2 Efektivno oni sad pokazuju na isti tekst međutim ako izmenimo niz1 to će seodraziti i na niz2 a važi i obrnuto Ovime smo dobi l i samo dva pokazivača na istideo memori je a uglavnom to ni je bio ci l j

Drugi način kako bismo sadržaj drugog niza mogl i da kopiramo u prvi niz je petl jakojom bismo kopiral i element po element Pošto je operaci ja kopiranja stringovavrlo često potrebna postoj i standardna bibl ioteka za rad sa stringovima koja sezove stringh a funkci ja za kopiranje stringova je strcpy()

strcpy(niz1 niz2)

Dati primer kopira sadržaj niza 2 u niz 1 Kopira se element po element sve dok seu nizu 2 ne naiđe na NULL karakter Ovakvo kopiranje (element po element) seinače u stranoj l i teraturi naziva i bdquodeep copyrdquo i vrlo često se sreće u radu sastrukturama podataka gde je potrebno obići celu strukturu podataka i svakielement kopirati a strukturu opet izgraditi u drugom delu memori je

Zaniml j ivo je što je kopiranje stringova moguće pojednostaviti ukol iko definišemonovi tip podatka kao strukturu koja sadrži niz karaktera i potom izvršimo kopiranjeOvo je trik koj i se uglavnom ne koristi u praksi i spomenut je samo kaozaniml j ivost

include ltstringhgt struct str char niz[50]

int main()

struct str s1struct str s2

Uvod u programski jezik C

22

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

strcpy(s1niz zdravo)s2 = s1

s2niz[0] = Z

puts(s1niz)puts(s2niz)

return 0

Kreirana je struktura str koja sadrži pol je niza karaktera pod nazivom niz Pozivomfunkci je strcpy() kopiramo string ldquozdravordquo u s1 čime smo bdquonapuni l irdquo sadržajobjekta s1 Potom je izvršena redovna dodela čime je sadržaj objekta s1 kopiran us2 Zatim je izmenjen samo prvi karakter objekta s2 i oba stringa su ispisanaPrimećujete da su kopirani svi znakovi a da je izmenjen samo drugi objekatZaniml j iv trik

Poređenje spajanje i pretraga stringovaDruga vrlo česta situaci ja je poređenje dva stringa Ukol iko bi poređenje bi loizvršeno upotrebom redovnog operatora za poređenje == tada bi u stvari bi lepoređene samo adrese na koje pokazuju pokazivači tih stringova jer da sepodsetimo stringovi su u C-u samo obični nizovi Ispravan način za poređenje dvastringa je pozivanjem funkci je strcmp() či ja je povratna vrednost 0 ukol iko su jojprosleđeni stringovi sa jednakim sadržajem

include ltstringhgt int main()

char niz1[] = zdravochar niz2[] = zdravo

if( strcmp(niz1 niz2) == 0)puts(Stringovi su jednaki)

elseputs(Stringovi nisu jednaki)

return 0

Kako da

23

Broj 33

Funkci ja strcmp() poredi svaki element prosleđenih nizova pojedinačno a dobraje vežba implementiranje nove funkci je strcmp() koja će unutar petl je da porediodgovarajuće elemente prosleđenih nizova i potom vratiti rezultat 0 ukol iko su svielementi jednaki Potrebno je pripaziti na situaci ju kada su stringovi razl ičitihdužina

U svetu računara spajanje dva sadržaja se zove konkatenaci ja Odatle i nazivfunkci je za spajanje dva stringa strcat() Važno je uveriti se da je string u koj i sedodaje sadržaj dovol jno vel ik da ga prihvati inače može da dođe do nežel jenogprepisivanja u memori j i uništavanja drugih podataka i neispravnog ponašanjaprograma

Pretraga unutar stringa se može obaviti funkci jom strstr() Ova funkci ja kaoparametre očekuje pokazivač na niz karaktera (string) u kojem je potrebno pronaćistring koj i je prosleđen kao drugi parametar Povratna vrednost je pokazivač nadeo memori je gde se žel jeni string prvi put pojavio

Sledi malo opširni j i primer koj i i lustruje spajanje pretragu i kopiranje stringova

include ltstringhgt int main()

char niz_a[50] = LiBRE je char niz_b[] = najbolji casopischar niz_c[] = e-magazin

strcat(niz_a niz_b)puts(niz_a)

char cilj = strstr(niz_a casopis)strcpy(cilj niz_c)

puts(niz_a)

return 0

Uvod u programski jezik C

24

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Pretvaranje tipova podataka u stringove ipretvaranje iz stringovaPretvaranje podataka iz jednog tipa u drugi i l i kastovanje (eng type casting) se zavećinu tipova vrši jednostavno pisanjem tipa u zagradama na primer (int)523 Stringovi su i po ovom pitanju drugači j i Postavl ja se pitanje šta pretvoriti ucelobrojni tip - da l i adresu na koju pokazuje pokazivač niza koj i predstavl ja stringPrvi element Šta ako taj string ni je broj Predstavićemo rešenje za konverzi jubrojeva u stringove i obrnuto

Ispis podataka na ekranu se takođe može smatrati konverzi jom Broj sa pokretnimzarezom je u memori j i prikazan na pomalo čudan način a pozivom funkci jeprintf() kada je kao format zadat f na ekranu ćemo dobiti razuml j iv niz znakovaSl ičan rezultat možemo dobiti funkci jom sprintf() a jedina razl ika u odnosu naprintf() je ta što sprintf() kao prvi argument očekuje pokazivač na string dok sudrugi (format string) i treći (argumenti koj i se povezuju sa formatnim stringom)sl ični kao kod funkci je printf()

Kod pretvaranja stringova u brojevne tipove može poslužiti funkci ja sscanf() kojase ponaša sl ično kao funkci ja scanf() s tim što je prvi argument adresa(pokazivač na string) koju žel imo da skeniramo u nadi da će se poklopiti saformalnim stringom koj i je drugi argument a rezultati će biti sačuvani u adresamakoje su prosleđene kao 3 4 i ostal i parametri Drugi način za pretvaranje stringovau celobrojne brojeve i brojeve sa pokretnim zarezom su funkci je atoi() i atof()

Funkci je koje koriste formatni string su česte u jeziku C i zaslužuju posebnu pažnjumeđutim to je priča za poseban članak U ovu klasu funkci ja spadaju recimo ifunkci je za rad sa datotekama

BezbednostRad sa stringovima može da bude izuzetno opasna stvar po pitanju bezbednostiprograma Ukol iko se niz karaktera ne završava NULL karakterom svašta može dapođe po zlu pri pozivu funkci ja kao što su strcpy() strcmp() i sl ične Cela klasatih funkci ja se oslanja na postojanje znaka koj i označava kraj stringa Kada stringni je propisno završen tada te funkci je mogu da zalutaju u deo memori je vanstringa i svašta može da pođe po zlu Ovakav tip napada se inače zoveprekoračenje bafera (eng buffer overflow) Preporučen način kako da izbegnete

Kako da

25

Broj 33

Pregled popularnosti GNULinuxBSDdistribuci ja za mesec februar

Distrowatch

Pad ltPorast gtIsti rejting =(Korišćeni podaci sa Distrovoča)

12345678910111213141516171819202122232425

MintUbuntuDebianopenSUSEelementaryMageiaFedoraManjaroCentOSLXLEArchBodhiAndroid x86Kal iPCLinuxOSPuppyRobol inuxLubuntuQ4OSBlack LabNetrunnerSimpl icityEvolveZorin4MLinux

2919gt1778gt1701gt1323gt1204gt1174gt1166gt1028lt1020gt965gt957gt907gt900lt760gt742lt732gt695gt670gt663gt655gt652gt629gt607gt583gt517=

takve nepri jatne situaci je pri radu sastringovima je da koristite verzi jefunkci ja koje su ograničenemaksimalnom dužinom stringa kaošto su strncpy() strncat() strncmp() i td Sve te funkci je kaotreći parametar zahtevaju broj koj iodređuje maksimalnu očekivanudužinu stringa Još jedna vrlo korisnafunkci ja je strlen() či j i zadatak je daodredi dužinu stringa Budite pažl j ivi ovo je prvo mesto gde se tražebezbednosni propusti u programimaNe verujte podacima koj i spol ja ulazeu vaš program a pogotovo kada je rečo stringovima

Uvod u programski jezik C

26

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Autor Dejan Maglov

Projekti slobodnog softvera obično počinju kao projekti pojedinca i l i male grupeprogramera a koj i rade na razvoju softvera či j i je ci l j da zadovol j i neke od nj ihovihl ičnih potreba Projekat će se smatrati uspešnim ukol iko se šira zajednicazainteresuje za njega nakon što prepozna korisnost softvera ne samo za pojedincekoj i su započel i projekat već i za širu zajednicu Kada je u pitanju slobodni softvervremenom je postala stalna praksa da se zajednica umeša u razvoj projekataDobri projekti sami privlače zajednicu l judi koj i su zainteresovani za nj ih i ona uvećini slučajeva preuzima na sebe testiranje pobol jšanje funkcionalnosti održavanje i tehničku podršku projekta

Zajednice slobodnog softvera mogu da se okupe oko projekta slobodnog softverapo teritori ja lnom principu i l i da nastanu kombinaci jom ovih principa

Primeri

bull LiBRE projekat okupl ja zajednicu oko projekta bez teritori ja lnog ograničenjabull LUGoNS (Linux User Group of Novi Sad) je zajednica korisnika Linuksa poteritori ja lnom principu bez obzira na konkretan projekat

bull Ubuntu-rs zajednica koja je kombinaci ja okupl janja zajednice oko konkretnogprojekta (Ubuntu) i teritori ja lnog principa koj i se ograničava na teritori ju Srbi je

Ova sinergi ja projekata i korisnika slobodnog softvera ima više prednosti i zakorisnike i za projekat Projekat se na ovaj način brže razvi ja dobi ja na

U potrazi za idealnom distribucijom

Socijalni kriterijumi za izbor idealnedistribucije (6 deo)

Oslobađanje

27

Broj 33

funkcionalnosti greške se brzo ispravl ja ju i td Korisnici dobi ja ju osećaj dapripadaju grupi druže se sa istomišl jenicima učestvuju u promoci j i kval itetnihpojedinaca itd

Dve najvažni je uloge lokalnih zajednica za GNULinuks distribuci je su

1 pružanje tehničke podrške i edukaci je na maternjem jeziku2 rad na lokal izaci j i i pri lagođavanje distribuci je lokalnim potrebama

Informaci ja da postoje lokalne zajednice slobodnog softvera je od naročitogznačaja za početnike i korisnike koj i nedovol jno dobro znaju strane jezike(naročito engleski jezik) Ako izuzmemo komerci ja lne projekte otvorenog koda(Red Het SUSE) ne postoje zvanične škole i kursevi za slobodni softver Zaedukaci ju početnika je uglavnom zadužena zajednica a jasno je da je učenje namaternjem jeziku uvek lakše nego na bi lo kom drugom stranom ma kol ikodobro ga poznajete

Forumi i viki stranice lokalnih zajednica su prave bibl ioteke u koj ima korisnicimogu da nađu većinu odgovora na svoja pitanja a za sva ostala tu su forumi iIRC kanal i zajednica na koj ima uvek ima nekoga i koj i imaju već gotova rešenjaza vel iki broj problema

U potrazi za idealnom distribucijom

28

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Lokalne zajednice kao kriterijum za izbor idealnedistribucijePočetnicima i korisnicima koj i ne vladaju dobro engleskim jezikom toplopreporučujemo da biraju GNULinuks distribuci je koje imaju aktivnu lokalnuzajednicu Ovladavanje novim operativnim sistemom je mnogo lakše ukol iko vambdquoleđa čuvardquo lokalna zajednica na koju se uvek možete osloniti

Već smo spomenul i da su popularni je GNULinuks distribuci je namenjenepočetnicima Slučaj je isti i sa lokalnim zajednicama okupl jenim oko nj ih Ovomeđutim ne znači da je kval itet usluga koje nude manje popularne lokalnezajednice okupl jene oko distribuci ja namenjenih napredni j im korisnicima loši j i Manje popularne distribuci je okupl ja ju manje l judi a l i zato oni poseduju većeznanje Iskustvo sa zajednicama okupl jenim oko slobodnog softvera je uglavnompozitivno i ukazuje na to da kval itet usluga koje one nude korisniku ni je uslovl jenpopularnošću i masovnošću zajednice nego iskl jučivo njenom (ne)aktivnošću

U svakom slučaju dosadašnj i saveti za izbor idealne distribuci je važe i dal jeSoci ja lni aspekt slobodnog softvera je samo dodatni faktor koj i vam može pomoćipri donošenju odluke kada se dvoumite između nekol iko mogućih rešenja

Još uvek ne postoj i na jednom mestu potpuni i ažurirani spisak svih aktivnihsrpskih zajednica Nešto najbl iže tome može da se nađe na adresihttps pulsslobodewordpresscom Za informaci je o nekim drugim lokalnimzajednicama koje možda postoje al i nisu na ovom spisku moraćete sami dapretražite internet

Lokalizacija kao kriterijum za izborZa lokal izaci ju GNULinuks distribuci ja i GNU programa odgovorni su pojedinci ilokalne zajednice Sasvim sol idnu srpsku lokal izaci ju mogu imati i projekti koj iuopšte nemaju svoju lokalnu zajednicu a isto tako lošu lokal izaci ju mogu imati iprojekti sa dobrom lokalnom zajednicom Sve je stvar prioriteta zajednica iaktivnosti pojedinaca

Pravu i kontrol isanu lokal izaci ju može imati samo lokalni projekat Ovakvihprojekata u Srbi j i ima malo i teško se probi ja ju čak i u lokalu u konkurenci j isvetskih projekata Istina je da mnoge veće GNULinuks distribuci je imaju srpskulokal izaci

Oslobađanje

29

Broj 33

ju u ponudi pa se možda sl ični lokalni projekti koj i su usmereni samo na striktnulokal izaci ju smatraju nepotrebnima Uzvodna lokal izaci ja u slučaju Srbi je vrlo čestobude veoma loše čak nakaradno sprovedena Jedna polovina programa jelokal izovana srpskom ćiri l icom a druga latinicom Ako postoj i još delova sistemakoj i uopšte ni je lokal izovan onda se pojavl ju ju i delovi programa koj i su naengleskom Zato ćemo se vratiti na prvu rečenicu ovog pasusa i ponovo utvrditi dasamo lokalni projekat može potpuno kontrol isati pravu srpsku lokal izaci ju

U Srbi j i za sada imamo dva aktivna projekta GNULinuks distribuci je ndash TriOS(http triosrs) i Serbian (http wwwdebian-srbi ja iz rspserbianhtml) Obaprojekta su mlada i imaju svoj ih prednosti i mana Kome treba lokal izovanoperativni sistem može da proba jedan od ova dva projekta

U potrazi za idealnom distribucijom

30

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Iako ove dve domaće distribuci je nisu baš naj idealni je interesantno je probati ih iuporediti sa drugim distribuci jama

Za kraj serijalaNamera nam je bi la da kroz ovaj seri ja l o kriteri jumima pri izboru idealnedistribuci je definišemo većinu kriteri juma pri izboru i pokažemo zašto je teškoodgovoriti na jednostavno pitanje bdquoKoju mi distribuci ju preporučujeterdquo

Ni na samom kraju nismo dal i konkretan odgovor na pitanje koja je idealnaGNULinuks distribuci ja Suviše je subjektivnih ocena da bi se mogao datikonkretan odgovor Smatramo da je jako teško napisati neki algoritam izbora pokriteri jumima koje smo identifikoval i i definisal i a možda je čak i nemoguće poštose izlazi stalno menjaju Izlazi iz tog algoritma su GNULinuks distribuci je koj ih izdana u dan ima sve više a i one stare se stalno menjaju

Sam seri ja l bdquoU potrazi za idealnom distribuci jomrdquo neće biti završen samo zato štose više neće baviti kriteri jumima pri izboru nego će pokušati da predstavl jaGNULinuks distribuci je koje su po nečemu bdquoidealnerdquo

Oslobađanje

31

Broj 33

ORM

Autor Dejan Čugal j

Object relation mapping (ORM)

ORM (eng Object RelationMapping) je način postizanja traj-nosti (eng persistence) objekataunutar relacionih baza podatakaModel deluje kao posrednik nalogičkom delu apl ikaci je Automat-ski presl ikava podatke iz objekata ubazu i nazad na zahtev apl ikaci jeDa bismo objasni l i kako ovo sveradi moramo da vam predstavimoORM frejmvork (eng framework)programa otvorenog koda -Hajbernejt (eng Hibernate -http hibernateorgorm)

Šta je ORMUkratko ORM je automatizovano transparentno presl ikavanje objekatakorišćenjem metapodataka koj i opisuju mapiranje veze između objekta i baze

ORM (2 deo)

Slobodni profesionalac

32

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

podataka u apl ikaci jama koje su napisane u objektno ori jentisanim programskimjezicima Apl ikaci ja komunicira sa ORM-om preko njegovog vlastitog API-ja (engapplication programming interface) i određenih objekata Ova komunikaci ja jepotpuno odvojena od komunikaci je koja se odvi ja između ORM-a i baze podatakapreko SQL-a i DBC-a

Da bi se postigla i dostigla potpuna snaga ORM-a u apl ikaci j i koju projektujemonikako se ne sme iskl jučiti znanje relacionih modela SQL jezika te poznavanjeDBMS-a u kome se radi ORM ni je ništa drugo do srednj i sloj između gorepomenutih tehnologi ja i objektno ori jentisanog programiranja kao što smo to dosada već više puta naglasi l i

Implementacija ORM-aPostoje razl ičiti načini implementaci je ORM-a Mark Fasl (Mark Fussel) je 1997definisao četiri nivoa

1 bdquoČistrdquo relacioni način2 Slabo mapiranje objekata3 Umereno mapiranje objekata4 Potpuno mapiranje objekata

bdquoČistrdquo relacioni način

Cela apl ikaci ja ukl jučujući i korisnički interfejs dizajnirana je relacionim modelom iSQL relacionim operatorima Ovakav pristup je odl ičan za male projekte Direktanpristup SQL-u omogućava fino podešavanje svakog aspekta upita koj i se postavl jabazi podataka Osnovne mane su portabi lnost (prenosivost) i održavanje ovakvihsistema pogotovo ako se planira korišćenje apl ikaci je na duži rok Ovakvi sistemimasovno koriste sačuvane procedure (eng stored procedures) što znači da jeposlovna logika (eng busines logic) prebačena na samu bazu podataka

Slabo mapiranje objekata

Entiteti su predstavl jeni kao klase i mapiranje se radi ekspl icitno ka relacionimtabelama SQLJDBC je sakriven od poslovne logike korišćenjem poznatih šablona(patterns)

Umereno mapiranje objekata

Slobodni profesionalac

33

Broj 33

Dizajn apl ikaci ja se svodi na objektne modele SQL se generiše u vremekompaj l iranja (eng build-time) i l i u vreme izvršavanja (eng run-time) Specifikaci jaupita nad bazama podataka se radi na objektno ori jentisanom jeziku Ovakvisistemi se koriste u apl ikaci jama srednj ih vel ičina kod koj ih je bitna portabi lnostizmeđu razl ičitih sistema za upravl janje bazama podataka (DBMS)

Potpuno mapiranje objekata

Podržava sofisticirano objektno model iranje nasleđivanje i pol imorfizamEfikasnost dobi janja podataka je na visokom nivou i koriste se metode kao što sulenjo učitavanje (eng lazy loading) i strategi ja keširanja (eng caching) Implementaci ja je transparentna u apl ikaci jama Ovaj nivo je jako teško dostići Pojedincu su potrebne godine razvoja da postigne ovakvu fleksibi lnost pristupa imanipulaci ja u relacionim bazama podataka Upravo ovaj nivo se postiže ako sekoriste rešenja ORM-a kao što je Hajbernejt

Zašto ORMImplementaci ja ORM rešenja pogotovo ako seprvi put susrećete sa ovim modelom može dabude veoma frustrirajuća i malo teža zaimplementaci ju Kada ovo kažemo misl imo daprogramer koj i implementira ORM i hoće da istibude kval itetno urađen mora da posedujepredznanje objektno ori jentisanog programiranjai naprednih tehnika kao što su nasleđivanje ipol imorfizam

Ovo inicira fundamentalna pitanja

bull Pa zašto bi iko onda implementirao ovako nešto kompleksnobull Vredi l i truda upuštati se uopšte u ORM

Odgovor ni je jednostavan Dosadašnja iskustva u korišćenju ORM-a i njegovapopularnost već daju odgovor na postavl jeno pitanje Očigledno je da su benefitikoje donosi ovaj model veći od kompleksnosti njegove implementaci je a to su

Hibernate ORM

34

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Veća produktivnost

ORM smanjuje kol ičinu koda potrebnog za ostvarivanje trajnosti podataka Ovoomogućava programeru da vreme koje bi utrošio na ručno mapiranje podatakautroši na druge delove apl ikaci je

Lakše održavanje

Manje l ini ja koda osigurava bol ju razuml j ivost (i možda bol j i kval itet koda) jernaglašava apl ikaci jsku logiku ORM takođe ublažava uticaj nastal ih promena kaošto su promene u bazi strukturi tabela i td

Prenosivost

Većina ORM rešenja podržava sisteme za upravl janje bazama podataka raznihproizvođača ORM u potpunosti odvaja sloj apl ikaci je od stvarne SQL komunikaci jekoja se odvi ja u pozadini Time omogućava da se pišu apl ikaci je koje će moći da seizvršavaju na razl ičitim bazama podataka bez potrebe za dodatnim kodiranjemOva komunikaci ja se odvi ja sa programskim interfejsima ORM-a nezavisno oDBMS-u sa koj im je u bi lo kom momentu povezan ORM takođe omogućava lakšiprelaz sa manj ih na veće baze podataka tokom razvoja apl ikaci je

Uvidel i smo da trenutno postoje dve paradigme koje se bdquosudarajurdquo i koje supodjednako dobre same za sebe Relaciona paradigma potvrđuje da sve što jeizgrađeno na matematičkim osnovama je i trajno u smislu kval iteta koje posedujeU domenu u kom relaciona paradigma egzistira ona je ako je to u ovo vremeuopšte moguće tvrditi nezamenj iva

Ono što otvara pitanja i daje razlog za sumnju je koja je krajnja granicaupotrebl j ivosti relacione paradigme tj kol iki su kapaciteti složenosti zahtevaapl ikaci ja sa kojom može da se nosi Praksa je pokazala da je sasvim mogućebdquoizvestirdquo složene projekte - al i održavanje skalabi lnost razuml j ivost prenosivost -pitanja su sa koj im se relaciona paradigma teško može izboriti

Sa druge strane svoj habitat u informacionim tehnologi jama je našla i objektna

Slobodni profesionalac

35

Broj 33

paradigma Iako na prvi pogled ova dva modela nemaju ništa zajedničko - što je uneku ruku i istinito gledajući prirodu podataka koj im manipul išu - praksa jepokazala da su usko povezane i skoro da imaju sinaptičku vezu

Pitanje bdquokako spoj iti te sinapserdquo dovelo je do žučnih rasprava u uskim naučnimprogramersko-administratorskim krugovima Rodi l i su se razni model i a l i jedan jeiskočio i polako ulazi u široku primenu - a to je ORM Svoj im supti lnim pristupomproblemu nekompatibi lnih paradigmi nekako je uspeo da stvori taj nedostajućibdquoelektrični signalrdquo koj i ih je povezao Ovo je omogući lo da dve strane koje susvaka za sebe u svom domenu ostavi le i ostavl ja ju duboki trag u informacionimtehnologi jama sarađuju i donesu novi kval itet

Korisni l inkovi

[1] Hibernejt http hibernateorg[2] Viki http googlLlZulw[3] Tutori ja l i http googlCGzvnc

Hibernate ORM

36

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Autor Kriptopank

Šta su zapravo metapodaci Najkraće rečeno to su podaci o podacima i l iinformaci je koje opisuju podatke

Najpre da napravimo razl iku između podataka i metapodataka Podaci sunaprimer snimak (i l i transkript) vaših telefonskih razgovora sadržaj poruka kojepišete primate i l i šal jete podaci koje kačite na internet i l i preuzimate pretrageGuglom postovi na forumima dopisivanja na IRC kanal ima i l i drugim četovimaaudio i video snimci Skajp razgovora i tako dal je

Hajde da vidimo šta bi bi l i odgovarajući metapodaci za ove primere

bull Za telefonske razgovore metapodaci mogu biti lokaci ja učesnika brojevitelefona trajanje razgovora IP i MAC adresa

bull Za poruke četove i Skajp i l i druge video-audio komunikaci je sl ično je kao kodtelefonskih razgovora

To su samo metapodaci

Internet mreže i komunikacije

37

Broj 33

bull Kod foruma i pretraga Guglom ima malo manje metapodataka al i Gugl i raznisajtovi i forumi ionako čuvaju logove o korisnicima što su takođe metapodaci

Ako do sada koj im slučajem niste uvidel i opasnost po privatnost u ovimmetapodacima koje svako od nas smrtnika svakodnevno ostavl ja za sobom usvetu interneta i ostal ih digitalnih komunikaci ja nadamo se da će vas ovaj primermakar podstaći na razmišl janje a možda i na nešto više

Zamisl i te da neko (zvaćemo ga posmatrač) stalno sakupl ja metapodatke koje zasobom ostavl jate kao mrvice hleba Posmatrač recimo zna da se nalazite naautoputu nedaleko od famoznog Feketića da se ne krećete da zovete AMSS zatimšlep službu i možda taksi a l i ne zna šta ste razgovaral i I l i posmatrač vidi da steprvo zval i aerodrom Nikola Tesla pa odmah potom taksi a l i ne zna šta sterazgovaral i I l i posmatrač vidi da ste zval i prvo šest brojeva či je identitete takođezna pa vidi da se oni zatim kreću ka vama - GPS (eng Global Positioning System) pa zatim pica servis Mekdonalds i neku poznatu prodavnicu kineske hrane al i nezna šta ste razgovaral i

Posmatrač ne mora da bude mnogo pametan niti da prisluškuje vaše razgovore dabi shvatio šta se dešava i l i šta će se desiti Sasvim mu je jasno da vam je u prvomprimeru auto stao na autoputu zatim da ste se u drugom slučaju uputi l i naaerodrom i da možda putujete van zemlje i l i ste poslal i taksi po nekoga saaerodroma a da u trećem slučaju okupl jate žurku kod vas Više možete pogledatina http googl7vUjP

Iako su to bdquosamordquo metapodaci treba biti svestan da ti metapodaci o vama stvarajujednu digitalnu sl iku i l i bol je reći digitalni mozaik i na neki način vas jedinstvenoodređuju Pogotovo kada se planski prikupl ja ju na više nivoa (kompjuter pametnitelefon pametni automobi l i kreditna kartica) metapodaci čine vaš digitalniidentitet Al i da stvar bude još gora ta sl ika o vama ne mora nužno biti istinita jerse lako može lažirati Recimo možete zameniti telefone i l i automobi le sa nekimnamerno i l i slučajno i l i vam neko može jednostavno ukrasti telefon laptop i l ikreditnu karticu Zaniml j iv video http googlKO1fKf

Evo jednog primera koj i vas može uvući u vel ike nevol je Recimo da prolazitenekom zabačenom ul icom i da vam neprimetno ispadne telefon al i vi to neprimetite i nastavite dal je svoj im putem U toj ul ici se samo nekol iko minutakasni je desi neko ubistvo i vas pozovu u pol ici ju kao osumnj ičenog Ako koj im

To su samo metapodaci

38

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

slučajem nemate dobar al ibi i l i nemate svedoka da posvedoči da niste bi l i u tojul ici nego tamo gde ste stvarno bi l i a drugih svedoka nema - možete jako lošeproći Zaniml j ivi video http googlspS5OZ

Metapodaci se takođe nalaze i u faj lovimapodacima koje svakodnevnopreuzimamo sa interneta pravimo i koristimo Svaki tip podatka može da sadržiodređene metapodatke koj i bol je opisuju sam podatak kao naprimer vremenastanka podatka kol iko je vremena potrošeno za njegovo kreiranje kol iko putamu je pristupl jeno kad je poslednj i put pristupl jeno i tako dal je Iako se ovakvimetapodaci možda još uvek čine bezazlenim oni mogu sadržati i IP adresuračunara sa kog su napravl jeni GPS koordinate (najčešće PNG format sl ika satelefona) ko ga je napravio (l ičnost i l i kompani jaorganizaci ja) naziv uređaja imodel sa koga je napravl jen kao i MAC adresu uređaja mej l adresu kreatorasoftver koj im je napravl jen i tako dal je Sve ovo može mnogo da naškodiprivatnosti izvornog kreatora faj la pogotovo ako je sadržaj poverl j iv Ukol iko nekopresretne taj podatak na internetu može saznati od koga je potekao Da ovo možebiti katastrofa po kreatora takvog faj la može i lustrovati primer torenta Ako stedošl i u posed nekih sl ika i l i video materi ja la i l i teksta koj i žel i te da podel ite sasvetom preko nekog torent sajta morate taj podatak prvo očistiti odmetapodataka da ne bi svako ko skine to što ste okači l i saznao da vi stoj i te izatoga

Internet mreže i komunikacije

39

Broj 33

Ljudi se konstantno prate metapodaci se sakupl ja ju i to ni je sada već ništa novoal i možemo da se trudimo da iza sebe ostavl jamo malo manje nežel jenihmetapodataka i da ih takoreći čistimo iz podataka koje razmenjujemo Na srećupostoje programi koj i ovo dobro rade

Najpre je potrebno da vidimo koje sve metapodatke neki faj l sadrži kako bismo seuveri l i da ovi metapodaci stvarno postoje i da je faj l bezbedan nakon nj ihovogbrisanja

Ako koristite operativne sisteme GNULinuksa treba da iz terminala preuzmete iinstal irate program pod nazivom exiftool

sudo apt-get install exiftool

Ovaj program će nam pružiti uvid u sve metapodatke koje faj l sadrži Korišćenje jeiz terminala al i je zato veoma jednostavno samo ga pokrenite na sledeći način

exiftool File

i l i

exiftool putanjadofajlapočevodkorenogdirektorijuma

Dobićete prikaz metapodataka koje je program pronašao Sada je potrebno davidimo da l i je podatak bdquoprl javrdquo tj da l i ima u njemu nešto da se briše i da akoima iz njega sve nepotrebno obrišemo Tu će nam pomoći drugi program zvaniMAT (eng Metadata Anonymisation Toolkit) koga možete naći na sajtuhttps matboumorg i l i jednostavno za korisnike Ubuntua i Debi jana uSoftverskom centru i l i ga možete instal irati iz terminala

sudo apt-get install mat

MAT će proveriti da l i je podatak bdquoprl javrdquo i l i ne i za vas ga očistiti od nežel jenihmetapodataka

Kada očistite faj l on je spreman za del jenje sa drugima a vi ste bezbedni jer nikone može reći da je faj l potekao sa vašeg računara

To su samo metapodaci

40

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Autor Dejan Čugal j

GH Hardi bdquoPrava matematika nema uticaj na ratrdquo - odbrana matematičara1940 godina

Bi l Tat - britanski matematičar verovatno niste čul i za njega1942 godine je izveo ogroman poduhvat koj i je skratio rat dvegodine (barem po rečima Ajzenhauera) i spasio mi l ione životaNažalost njegova vel ičina je preminula 2002 godine obavi jenavelom tajne i nikada zvanično ni je priznato njegovo dostignuće

Tomi Flauers - bivši inženjer poštanskog saobraćaja pretvorio jematematičke ideje Tata u prvi računar a to ni je bio bdquoENIACrdquo1Preminuo je 1998 godine a pretpostavl jamo da nikada niste čul ini za njegovu vel ičinu

Ovi umni giganti bdquoBlečl i parkardquo omogući l i su Britani j i da dešifruje strogo poverl j ivumašinu koju je koristio Hitler da diriguje drugim svetskim ratom a to ni je bi labdquoENIGMArdquo nego nešto mnogo tajni je i značajni je Vel ika je verovatnoća da nistečul i ni za ovo Neki kažu da je to bio Hitlerov Blekberi (BlackBerry)

Izgubljeni heroji bdquoBlečli parkardquo

1 engl Electronic Numerical Integrator And Computer - prvidigitalni elektronski računar

Internet mreže i komunikacije

41

Broj 33

1939 godine bdquoBlečl i parkrdquo je postao ratni štab MI6 (britanske vojne obaveštajneslužbe) Do danas je procurelo u javnost i dokumentovano brojnim fi lmskimdokumentarcima samo da je tu Alan Tjuring uspeo da dešifruje nemačkumornaričku šifru poznatu kao bdquoENIGMArdquo i uvel iko doprineo pobedi saveznika a to jesamo deo priče koj i je ispričan

U Blečl i parku su bi la tri heroja AlanTjuring Bi l Tat i Tomi Flauers Od nj ihtroj ice jedino Alanu Tjuringu je priznat deozasluga za pobedu saveznika u Drugomsvetskom ratu Pregledom otkrivenihpodataka danas možemo da tvrdimo daje bdquoENIGMArdquo već sa početka drugogsvetskog rata bi la zastarela tehnologi ja Zbog toga je bi lo lako skinuti veo tajne sa

ovog uspeha heroja Blečl i parka

Izgubljeni heroji bdquoBlečli parkardquo

42

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Bi l Tat koj i je dešifrovao bdquoTANI sistemrdquo (TANI) i Tomi Flauers koj i je samo svojomintuici jom i znanjem sklopio prvi računar na svetu (bdquoKOLOSrdquo) u svrhu bržegdolaženja do informaci ja razbi jenog koda bdquoTANIrdquo tako da zastarelost šifrata budesvedena na minimum - radi l i su na novoj generaci j i mašina za šifrovanje Ovatehnologi ja je bi la prepoznata kao tehnologi ja budućnosti pa i danas iznadinformaci ja o tim tehnologi jama stoj i natpis bdquovrhunska tajnardquo (eng Top Secret) Upravo ovaj veo tajni oko šifrata bdquoTANIrdquo i prvog računara je rezultirao iskrivl jenjuistori je informatike

Za uspehe u prvim godinama rata je zaista zaslužno razbi janje bdquoENIGMArdquo šifrata ito ni je sporno al i krajem 1941 godine u etru planete se začuo novi zvuk To je bi lanova mašina za šifrovanje ni je bi la zasnovana na bdquoMorzeurdquo već je radi la naprincipu teleprintera

Jedna od kl jučnih ideja Hitlerovog ratovanja je bi la u vel ikoj mobi lnosti i brzomdelovanju trupa na terenu a da bi se to izvelo komunikaci ja je isto tako morala dabude u najmanju ruku putem radio signala

Razl ika je ogromna Razl ika je u kol ičini podataka koj i može da se prenese ovimbdquotajnimrdquo putem Prvi svetski rat je bio zaniml j iv jer su se šifrovane poruke baziralena rečima dok je Drugi u potpunosti otvorio vrata današnjoj kriptografi j i a to jematematika

Originalan nemački kocircdni naziv za ovaj šifrat bio je bdquoLORENCrdquo Britanska

Internet mreže i komunikacije

43

Broj 33

obaveštajna služba mu je dala nadimak bdquoTANIrdquo Čak ni dan danas ni je baš poznatokako je sve nastalo al i pouzdano se zna da je tajnu mašinu Hitler nazvaobdquoGehajmšrajberrdquo (nem Geheimschreiber) - mašina tajni

U srž i tehnologi ju šifrovanja bdquoLORENCrdquo šifrata nećemo ulaziti u ovom članku al iverujte nam na reč - ni je bi la jednostavna Može se pretpostaviti da je inspiraci jaŠenonovog 2 rada slučajnosti bi la upravo ova tehnologi ja iz Drugog svetskog rata

Ono čime se Treći rajh vodio je bdquosigurnardquo šifrovana veza koju niko ni je smeo dadešifruje Prenošenje šifrovanih poruka pomoću radio signala je dalo obaveštajnimslužbama mogućnost presretanja poruka poslatih radio talasima Da l i se ovo idanas dešava Imamo l i sigurnost u našim šifrovanim podacima današnj ice

Ono što je usledi lo nakon proboja ovog bdquoneuhvatl j ivogrdquo šifrata je upravo ono što jeprincip današnj ice kao neka vrsta protokola koj i mora da se ispoštuje uperfektnom šifarskom Šenonovom sistemu

1 NIKADA NIKADA NE KORISTITI DVA PUTA ISTI KLJUČ ZA ŠIFROVANJE2 NIKADA NIKADA KLJUČ NE SME DA SE ŠALJE ISTIM KOMUNIKACIONIM KANALOM

KAO PORUKA3 NIKADA NIKADA KLJUČ NE SME DA BUDE MANJ I NEGO ŠTO JE PORUKA (engl

2 Klod Elvud Šenon (eng Claude Elwood Shannon) (1916-2001) - Američkinaučnik i inženjer

Izgubljeni heroji bdquoBlečli parkardquo

44

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

one time pad) 4 NIKADA NIKADA NE SMEMO DA SAKRIVAMO SISTEM ŠIFROVANJA SVE MORA

DA JE OTVORENOG KOcircDA

Najveći propusti kriptologi je koj i su uočeni baš u Drugom svetskom ratu jesupokušaj sakrivanja sredstava koj im se generiše tajna poruka i nepoznavanjeŠenonovih krajnj ih granica informaci ja Kada kažemo bdquosredstvo i sakrivanjerdquomisl imo na algoritme Postavl ja se pitanje zašto je danas kriptologi ja sigurni ja negočetrdesetih i pedesetih godina prošlog veka

Danas uprkos tome što su algoritmi za kriptografi ju otvorenog kocircda tajnostinformaci ja je na višem nivou nego što je to bi lo dok je algoritam bio strogopoverl j iv Tajnost tajnih podataka se ne zasniva na tajnosti a lgoritama koj i generišutaj isti bdquotajni izlazrdquo (eng cipher text) nego u nemogućnosti matematičke inverznefunkci je koja bi šifrovan tekst otvori la Ovde se vidi da je svrha strukture otvorenogkocircda kao jednog od značajnih delova današnje kriptologi je ona koja ga činisigurnim i svima dostupnim

Sada kada se sa ove distance osvrnemo na Drugi svetski rat možemo videti kol ikosmo bi l i bl izu apokal ipse Naime Albert Ajnštajn je već 1944 godine imao urukama recept za nuklearnu bombu Šenon je mogao već u to vreme da nampredoči 100 siguran šifrat (tzv Hitlerovu super šifru) a l i ipak sreća nas jeposluži la da čovečanstvo tada ni je bi lo spremno da upotrebi svu raspoloživutehnologi ju

Albert Ajnštajn bdquoČetvrti svetski rat će se voditi tol jagamardquo

Zaboravl jeni heroj i Blečl i parka iako su odigral i važnu ulogu u pobedi saveznika usvetskom ratu postal i su žrtve bdquotop secretrdquo doktrine potpuno su zaboravl jeni inestal i su iz istori je

Zakl jučak ovog članka je da je ideologi ja otvorenog kocircda sasvim sigurno tu da nampomogne i da otvori vrata ka većoj sigurnosti novim idejama i kval itetu sameinfrastrukture sistema koju svi zajedno razvi jamo

Internet mreže i komunikacije

45

Broj 33

Autor Nikola Hardi

NabrajanjaBez brojeva

Za nabrajanje pojmova u Bimeru (eng Beamer) koristi se okruženje itemize aunutar tog okruženja možemo da dodajemo nove stavke pomoću item Primerizgleda ovako

beginitemizeitem Stavka Aitem Stavka Bitem Stavka C

enditemize

Sa brojevima

Postoje situaci je kada uz nabrajanje treba da stoje i redni brojevi - za to se koristienumerate okruženje a nove stavke se takođe dodaju pomoću item

beginenumerateitem Redni broj 1item Redni broj 2item Redni broj 3

endenumerate

prezentaci ja

Beamer (4 deo)

Sam svoj majstor

46

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

DefinicijeTreća situaci ja je nabrajanje parova termin - definici ja U tom slučaju se koristiokruženje description Već možete da pretpostavite kako se dodaju nove stavke

Primer

begindescriptionitem[Pojam A] Definicija izmišljenog pojma Aitem[Pojam B] Definicija izmišljenog pojma Bitem[Pojam C] Definicija izmišljenog pojma C

enddescription

Ostala podešavanja i zanimljivostiSva prethodna okruženja mogu da budu ugneždena jedno unutar drugog dotrećeg nivoa Treba biti pažl j iv jer sla jdovi vrlo lako mogu da postanu nečitl j ivi Osim toga moguće je izabrati i format oznake i l i rednih brojeva - na primer ovako

beginenumerate[I]beginenumarate[a)]

Takođe moguće je upravl jati pojavl j ivanjem pojedinih stavki na slajdovima Drugimrečima možemo da odredimo da se nabrajanja postepeno otkrivaju tako što ćemouz stavku dodati lt1-gt odnosno broj od kojeg slajda žel imo da se ta stavkapojavl ju je Tada će jedno nabrajanje biti bdquorazvučenordquo na više slajdovaJednostavni ja mogućnost je da u zaglavl je okruženja dodamo +- što znači dažel imo da se svakim slajdom otkriva po jedna nova stavka iz nabrajanja Znak bdquo-rdquo uoba primera znači da žel imo da se stavka pojavi na sledećem slajdu i da ostane

Sam svoj majstor

47

Broj 33

prisutna Možemo da izostavimo znak bdquo-rdquo i tada će stavka biti prisutna samo najednom slajdu i l i da napišemo raspon slajdova u koj ima žel imo da ta stavka budeprisutna

Rad sa kolonama i blokovimaDo sada su svi primeri podrazumeval i da je sadržaj napisan preko cele širineslajda al i Bimer (eng Beamer) ima i jednostavne mehanizme za razmeštanjesadržaja po kolonama Za rad sa kolonama se koristi okruženje columns unutarkojeg možemo da dodajemo nove kolone pomoću columnširina Sadržaj jemoguće potom pisati i van okruženja sa kolonama

U paru sa kolonama često se sreće i okruženje block koje se parametrizujenaslovom Primerom su i lustrovani i okruženje column i okruženje block

beginframebegincolumns

column05textwidthbeginblockNaslov levog blokaSadržaj u prvoj (levoj) koloni endblock

column05textwidthbeginblockNaslov desnog blokaSadržaj u drugoj (desnoj) koloni

endblockendcolumns

beginblockVan kolona

Beamer

48

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Tekst koji se nalazi ispod kolonaendblock

endframe

TabeleIako se u radu sa prezentaci jama sadržaj najčešće može uredno rasporeditipomoću kolona i nabrajanja nekada to ni je dovol jno jer su tabele pravi formatBimer podržava standardno Lateh (LaTeX) okruženje za rad sa tabelamaOkruženje za rad sa tabelama se zove tabular Pri kreiranju nove tabele moguće jepodesiti koje kolone će biti razdvojene l ini jom i da l i će nj ihov sadržaj biti centrirani l i uz levu i l i uz desnu ivicu Dodavanje novog reda se jednostavno radidodavanjem hline Lateh pruža zaista jako fleksibi lan rad sa tabelama i sigurno ćedoskočiti svim mogućim i nemogućim zamisl ima Potražite bi lo koje Lateh uputstvoza rad sa tabelama i radiće i sa Bimerom

beginframebegintabular | c | c | c | c |

hlineamp Ponedeljak amp Utorak amp Sreda hline

1 amp 16 amp 32 amp 64 hline2 amp 16 amp 128 amp 1024 hline3 amp 16 amp 512 amp 4096 hline

endtabularendframe

Sam svoj majstor

49

Broj 33

Beamer

Teoreme i istaknut tekstU nastavi su česta izlaganja teorema nj ihovih dokaza i primera U Bimer jeugrađena podrška za elegantno predstavl janje ove trojke Mehanizam takođepodržava postepeno otkrivanje sadržaja sla jda tako da slušaocima ne bude odmahotkriven dokaz teoreme Mehanizam za postepeno otkrivanje se kao i kodnabrajanja postiže pomoću bdquolt1-gtrdquo konstrukci je Evo kako to izgleda

beginframeframetitlePrimer teoreme

begintheoremlt1-gt Teorema kaže da su beamer prezentacijezanimljive

endtheorem

beginexamplelt2-gt Ovaj kod kreira slajd beamer prezentacijeendexample

beginprooflt3-gt Čestitamo stigli ste do kraja serijala o pravljenju beamer prezentacija

endproofendframe

50

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Za krajOvim člankom završavamo seri ja l o Bimeru Nadamo se da smo uspel i da vaszainteresujemo za ovu vrlo korisnu klasu Lateha Trudi l i smo se da vamprezentujemo najvažni je delove Bimera koje ćete najčešće koristiti pri l ikomkreiranja svoj ih prezentaci ja

Napominjemo još jednom da je Bimer samo jedna od klasa Lateha što znači da i zaBimer važi sve ono što ste već mogl i da pročitate u ovom časopisu kad smo pisal iseri ja l bdquoUvod u LaTeXrdquo (LiBRE brojevi 17 do 21) Štaviše ovaj seri ja l o Bimeru jebio nastavak upravo tog seri ja la U ovom seri ja lu nismo pisal i o samomformatiranju teksta u prezentaci jama jer se podrazumeva da važe ista pravi la kao iu Latehu a o tome smo pisal i u prethodnom seri ja lu

Hvala vam što ste prati l i ovaj seri ja l i žel imo vam puno uspeha u kreiranju Bimerprezentaci ja

Sam svoj majstor

51

Broj 33

Autor Nenad Marjanović

Kada smo se upoznal i sa podešavanj ima sistema i umrežavanjem vreme je za našprvi Biglbon Blek (BBB - eng BeagleBone Black) projekat Svakom od nas će ovajizazov dati razl ičite ideje a jedna od nj ih može biti i zaštita privatnosti internetkorisnika Nažalost u Srbi j i ne postoj i ni jedan izlazni tor server (eng node) i to jepomalo tužna sl ika s obzirom da govorimo o populaci j i od sedam mil ionastanovnika Al i ovu sl iku možemo promeniti udruženim snagama i za početakkreiranjem Tor transfer i izlaznog servera U ovde prikazanom grafikonufokusiraćemo se na bdquoRauter Brdquo tačku odnosno transfer server konfiguraci ju

BeagleBone Black Rev C

Vodič od prvog dana (3 deo) ndashBeagleBone Black kao Tor relej

Hardver

52

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Tor predstavl ja mrežu servera koj i se povezuju radi bol je enkripci je podataka izaštite IP adrese korisnika Naš ci l j je da danas postanemo deo ovog predivnogprojekta i da se nađemo na svetskoj karti Tor servera

Brzina interneta i zakonske regulativePotrebno je imati na umu nekol iko bitnih stvari

1 Naš server = naša odgovornost2 Obavezno naznačite da ste vi administrator a ne korisnik istog servera3 Da posedujete internet brzinu od 2 Mbs

Ako ispunjavamo tri navedena pravi la i odgovornosti možemo se posvetitiadministrativnim poslovima

Instalacija i podešavanjaU ovom primeru koristimo Debi jan Vizi (eng Wheezy) odnosno Debi jan 7 verzi juna našem BBB uređaju Vi možete testirati i druge Linuks platforme Prvododajemo izvornu bibl ioteku u etcaptsourceslist faj l pokretanjem sledećekomande u terminalu

echo deb httpdebtorprojectorgtorprojectorg wheezy main gt etcaptsourceslistdtorlist

Zatim dodajemo izvorni kl juč vršimo ažuriranje sistema i instal iramo tor i tor-arm(Tor monitoring sistem)

gpg --keyserver keysgnupgnet --recv 886DDD89gpg --export A3C4F0F979CAA22CDBA8F512EE8CBC9E886DDD89 | sudo apt-keyadd -apt-get updateapt-get install debtorprojectorg-keyring -yapt-get install tor tor-arm egrep screen -y

Ovim smo uspešno završi l i instalaci ju Tor servera i sistema za monitoring odnosnonadgledanja našeg Tor servera Sledećom komandom radimo na podešavanj imaTor servera koja se nalaze u etctortorrc faj lu Obratite pažnju i izvršite potrebne

Hardver

53

Broj 33

izmenu u pol j ima IP adresa (eng Address) nadimka (eng Nickname) i kontaktpodataka (eng ContactInfo) pre pokretanja ove komande Kopiramo i pokrećemokomandu u celosti u terminalu

egrep -v ^(|$) etctortorrcORPort 443Address 19216811Nickname LibreTorRelayRelayBandwidthRate 100 KBRelayBandwidthBurst 120 KBContactInfo ltvi at gmail dot comgt irPort 8080DirPortFrontPage etctortorhtmlExitPolicy reject

Detal je o svim vrednostima nećemo iznositi u ovom broju LiBRE časopisa al ićemo o nj ima pisati u sledećem u kome ćemo pričati o zaštiti Tor servera imogućnosti podešavanja određenih izlaznih pravi la (eng ExitPolicy)

Nakon ovoga možemo primetiti da se u folderu etctor ne nalazi torhtml faj l Ovaj faj l ni je od vel ikog značaja i možete ga l ično napraviti i l i preuzeti jednu kopi ju- naprimer sa sledeće lokaci je

cp usrsharedoctortorhtml etctortorhtml

Opcije i Tor Arm monitoringDa bismo ispravno koristi l i Tor Arm potrebno je urediti još jednom etctortorrcfaj l i restartovati servis

echo -e ldquoDisableDebuggerAttachment 0n AvoidDiskWritesrdquo gtgt etctortorrcsudo service tor reload

Ukol iko žel ite koristiti Tor Arm za nadgledanje aktivnosti na serveru pokreniteprogram screen kl iknite na bdquoEnterrdquo i kucajte sudo -u debian-tor arm Naekranu ćete imati sl ičan prikaz

BeagleBone Black

54

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Hardver

55

Broj 33

Da bismo napusti l i screen program koristimo Ctrl + a + d i na taj način kada sesledeći put pri javimo na server kucamo samo screen -r u terminalu - i naći ćemose ponovo na čuvenom Tor Arm monitoring ekranu

Nakon svake promene konfiguracionih faj lova ako slučajno nismo nešto podesi l ikako treba restartujemo servise

U sledećem broju časopisa govorićemo o minimalnim podešavanj ima ikonfigurisanju izlaznog Tor servera (eng Tor Exit Node) opci jama sigurnosti isl ičnim detal j ima u vezi sa našim prvim projektom Do čitanja u sledećem broju

BeagleBone Black

LUGoNS BarCamp 4subota 7 mart 2015 godine

Četvrti LUGoNS-ov Barkemp (BarCamp) održaće se u Novom Sadu usubotu 7 marta 2015 godine na Fakultetu tehničkih nauka sa početkomu 12 časova

Ulaz je slobodan

Poziv za predaju radovaLUGoNS poziva sve zainteresovane da pošal ju svoje radove (predavanjaprezentaci je radionice i diskusi je) do 28 februara 2015 godine

Oblasti iz koj ih možete da pri javite vaše radove su

bull Slobodan softverbull Zaniml j iv hardverbull Hakerski zakonibull Sigurnosne noćne morebull Anonimnost i privatnost na internetubull Duboki veb (eng Deep Web)bull Soci ja lne mrežebull Soci ja lni inženjeringbull Hakovanje mobi lnih uređajabull Internet u oblaku (eng Clouds) ndash hakovanje razbi janje i neočekivano korišćenjebull DPI (eng deep packet inspection)bull Mreža i mrežna neutralnost ndash vlasništvo cenzura nadmudrivanje i pol itika bdquodefaktordquo standarda

bull Programiranje i programski jezici

Nemojte se ustručavati i slobodno nam se javite ako imate rad na gore navedenei l i sl ične teme koj i smatrate interesantnim

Stranica za predaju radova nalazi se na https events lugonsorgp=1658

Page 10: LiBRE 33 Lat

10

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

U početku bgfx je bio samo hobi projekat i zato ima nemaštovito ime Bi la je tosamo jedna od mnogih bibl ioteka koje sam napravio za pravl jenje igara Kada samradio na jednoj igri postojala je potreba da se igra prebaci sa starog DX9 (engDirectX 9) renderinga na OpenGL (engl Open-dži-el ) pa sam tom pri l ikom izvukaodeo moje hobi bibl ioteke za renderovanje i zapakovao je kao cel inu Posle uspešneprimene ove bibl ioteke u moj im projektima odlučio sam da je objavim kao projekatotvorenog koda na Githabu (eng Github) pod l icencom BSD 2-clause Po mommišl jenju ovaj deo renderinga je trebalo već odavno da bude rešen problem kao ida bude moguće da se igre bez veće muke izdaju na bi lo kojoj platformi po žel j iautora Namenjena je prevashodno manj im autorima koj i žele da imaju potpunukontrolu nad svoj im kodom bez obzira na platformu na kojoj žele da objave igruKod ovakvih komerci ja lnih proizvoda uvek postoje neka ograničenja a ako firmeizgube interes za proizvodom mogu ostaviti autore na cedi lu bez podrške iodržavanja Sa druge strane projekti otvorenog koda omogućuju saradnju autora iunapređenje funkcionalnosti projekta na zadovol jstvo svih

Upotrebom bgfx bibl ioteke korisnik može da zanemari konkretnu implementaci jurazl ičitih tehnologi ja kao što su OpenGL OpenGL ES i Direct3D bez kompromisa saperformansama Ova bibl ioteka ni je tanka apstrakci ja i l i emulator nekogpostojećeg API-ja tipa Guglovog Engl (eng ANGLE) projekta koj i emul ira OpenGL

Predstavljamo

11

Broj 33

ES preko Direct3D-a i l i Valvov TuDži-El (eng ToGL) koj i emul ira Direct3D 9 prekoOpenGL-a nego zaseban API višeg nivoa Iako je u prošlosti bi lo sl ičnih projekatasvi oni su uglavnom imal i pretenzi ju da budu endžin (engine) i l i frejmvork koj i bitvorci igara koristi l i kao takav Takav pristup donosi dosta kompl ikaci ja i veoma jeteško takav projekat integrisati sa postojećim kodom Iz ovog razloga bgfx projekatnema pretenzi je da bude ceo endžin i l i frejmvork nego samo bibl ioteka koju svakomože lako da integriše u sopstveni projekat

bgfx bibl ioteka se trenutno koristi u nekol iko komerci ja lnih igara al i ima i dostainteresovanja za projekat kao osnove za pravl jenje korisničkih apl ikaci ja pa čak ialata za programere

Na projektu je do sada radi lo oko deset l judi Uglavnom su dodaval i podršku zanove platforme primere i l i su povezival i bibl ioteku sa drugim jezicima Što sebuduće saradnje na ovom projektu tiče sve je dobrodošlo čak i sȃmo korišćenjebibl ioteke a zahtevi za uvođenje novih mogućnosti unapređuju samu bibl ioteku

bgfx

12

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Predstavljamo

13

Broj 33

1 Podržava grafičke API-je

bull Direct3D 9bull Direct3D 11bull OpenGL 2 1bull OpenGL 3 1+bull OpenGL ES 2bull OpenGL ES 3 1bull WebGL 1 0

2 Podržava platforme

bull Android (14+ ARM x86 MIPS)bull asm jsEmscripten (1250)bull iOSbull Linuks (x86 x86_64)bull Nejtive klajent (Native Client PPAPI37+ ARM x86 x86_64 PNaCl)

bull OS Iks (OSX 109)bull Rasberi-paj (RaspberryPi - ARM)bull Vindouz (Iks-pe Vista 7 8 10)bull Vin-ar-ti (WinRT WinPhone 80+ )

bgfx

14

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Autor Stefan Nožinić

UvodrEFInd je softverska apl ikaci ja za EFI (Extensible Firmware Interface) sisteme kojaomogućava izbor više operativnih sistema na jednostavan način Ovo je samoupravnik buta (boot) i u ovom broju vam predstavl jamo o kakvom projektu je reč ikako se može primeniti

Šta je (U)EFIPre nego što predstavimo sam projekat trebalo bi prvo da skrenemo pažnju idetal jni je da predstavimo problematiku EFI je nastao kao zamena za dosadašnj iBIOS (Basic InputOutput System) i razvi la ga je kompani ja Intel Ovaj pristup jekasni je zamenjen UEFI standardom EFI tehnologi ja ima prednost u slučajevimakao što su

bull Pokretanje sistema na diskovima preko 2TB memori je korišćenjem GPTtehnologi je

bull Nezavisnost od specifične arhitekture procesorabull Modularan dizajnbull Dobro okruženje pre učitavanja operativnog sistema što podrazumeva i mrežnupodršku

Tehnologi ja omogućava upotrebu 32-bitnih i 64-bitnih adresa na procesorima koj ito podržavaju Rani je BIOS tehnologi ja to ni je omogući la već se uvek koristi la 16-bitna implementaci ja iz istori jskih razloga

Predstavljamo

15

Broj 33

Particiona šemaEFI tehnologi ja ima drugači ju šemu partici ja Dok je stari pristup podržavao samoMBR (Master Boot Record) šemu nova tehnologi ja podržava GPT šemu kojaomogućava veći broj primarnih partici ja Sa starim pristupom taj broj bio jeograničen na četiri primarne partici je od koj ih je svaka morala da ima kapacitetmanj i od 2TB

AplikacijeUEFI podržava izradu apl ikaci ja koje bi se pokretale nezavisno od operativnogsistema Ove apl ikaci je se mogu naknadno instal irati Primer takvih apl ikaci ja supokretači (loader) operativnih sistema kao i upravnici butovanja

EFI sistemska particijaEFI podržava posebnu partici ju za smeštanje raznih potrebnih informaci ja kao štosu potrebni podaci za rukovanje računarom i specifične apl ikaci je Ova partici ja jenajčešće FAT32 sistem datoteka

rEFInd

16

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

But menadžer i but louder - ima razlikeOd popularizaci je GRUB upravnika mnogi korisnici su ostal i bez objašnjenja kakvaje razl ika između but loudera (boot loader) i but menadžera (boot manager) Ovose dešava jer GRUB pruža obe usluge u sklopu jednog programa pa se time teževidi razl ika između ova dva pojma But menadžer je upravnik pomoću kojeg jemoguće izabrati operativni sistem za pokretanje On ne zna ništa speci ja lno ooperativnom sistemu pa time ne zna ni kako da ga pokrene On samo zna datreba da pokrene but louder za taj sistem Kada je sistem izabran pokreće sespecifičan but louder za taj sistem koj i je zadužen za dal j i proces pokretanjakernela Za razl iku od GRUB upravnika rEFInd pruža samo usluge but menadžerašto u početku može zvučati poražavajuće za ovaj projekat Kada uzmemo u obzirda većina sistema danas ima but louder u sklopu kernela (ukl jučujući i Linuks odnovi j ih izdanja) ovaj problem je prevaziđen

Predstavljamo

17

Broj 33

InstalacijarEFInd postoj i kao deb i kao rpm paket al i postoj i i zapakovan kao zip arhivaZahval ju jući tome paket je moguće instal irati upotrebom dpkg komande nadistribuci jama baziranim na Debi janu kao i upotrebom rpm komande nadistribuci jama koje koriste taj način pakovanja paketa Za Ubuntu postoj i i PPArepozitori jum pa rEFInd može biti instal iran na sledeći način

sudo apt-add-repository pparodsmithrefindsudo apt-get updatesudo apt-get install refind

Nezavisno od toga koj i način od gore opisanih koristite rEFInd će automatski bitiprebačen na ESP i biti postavl jen kao podrazumevani upravnik

KonfiguracijarEFInd bi trebalo da vam pruži zadovol javajuću funkcionalnost bez dodatnekonfiguraci je posle instalacionog procesa On će automatski detektovati loudereoperativnih sistema korišćenjem pretrage po svim partici jama koje prepozna Uslučaju da ste napredni j i korisnik i da žel ite da modifikujete ponašanje rEFInda tomožete uraditi izmenom njegove konfiguracione datoteke Postoj i g lobalnakonfiguraci ja i konfiguraci ja za svaki sistem posebno Ovaj tekst bi postao previšedugačak kada bismo ulazi l i u detal je same konfiguraci je pa vam zatopreporučujemo ako imate potrebu za dodatnom konfiguraci jom da posetitedokumentaci ju projekta i l i ako imate neke nedoumice da kontaktirate s namapreko naše e-pošte

Za krajŽelel i bismo da ovaj tekst zakl jučimo ocenom da je ovaj projekat dosta zaniml j ivda pruža zadovol javajuću funkcionalnost i da omogućava korisnicima koj i koristeovaj sistem pokretanja lako pokretanje svoj ih operativnih sistema Još jednomžel imo da vam skrenemo pažnju da nam se obratite i ukažete ako smo nešto važnopropusti l i da pomenemo i l i ako nam se negde potkrala greška

Korisni l ink http wwwrodsbookscomrefind

rEFInd

18

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Autor Nikola Hardi

Opšte je poznato da su računari dobri u radu sa brojevima Međutim vremenom suse i potrebe korisnika i alati za programiranje računara razvi ja l i i rad sa drugači j imtipovima podataka je postao uobičajen i znatno jednostavni j i nego rani je Svi smoimal i pri l iku da radimo sa programima za obradu fotografi ja video materi ja la i l izvučnih zapisa Multimedi ja je ipak tema koja prevazi lazi jedan uvodni kurs o C-ual i do kraja ovog seri ja la ćemo se dotaći i tih tema Za početak osvrnućemo se narad sa tekstualnim podacima na C način

Stringovi na C načinDefinici ja tekstualnog podatka u sferi računarstva se uglavnom svodi na to da jetekst niz karaktera a karakteri su znakovni simbol i Iako imamo mogućnost daradimo sa tekstom i l i multimedi jom računari ipak razumeju samo brojeve pamoramo tako da im predstavimo i tekst Postoje razni standardi kako se pojedinikarakteri predstavl ja ju u memori j i računara između ostalog najpoznati j i su ASCIIEBCDIC UTF i td EBCDIC je standard koj i je prisutan u Eplovom (eng Apple) svetu iviše nema tol iko važnu ulogu ASCII je standard koj i je vrlo prisutan i danas UTF jenastao kao proširenje ASCII standarda javl ja se u više vari janti i uvodi podršku zapisma razl ičita od abecede (kinesko japansko ćiri l ica arapsko i mnoga druga)

Važno je napomenuti da je originalni ASCII standard propisivao 7 bitova za jedankarakter što je dalo prostora za 128 karaktera Među tim karakterima se nalazecifre mala i vel ika slova engleskog alfabeta i niz kontrolnih karaktera Kontrolnikarakteri su oznake za novi red prazno mesto tabulator upravl janje štampačima(vraćanje glave štampača na početak) rad sa terminal ima (alarm i l i obaveštenje

Kako da

Uvod u programski jezik CRad sa stringovima (9 deo)

19

Broj 33

da se nešto dogodi lo) ASCII standard je proširen na 8 bitova odnosno ceo jedanbajt i sada podržava 256 karaktera Potražite na internetu termin bdquoASCII tabelardquo dabiste stekl i uvid u to kako izgleda tzv tabela ASCII karaktera

Rad sa pojedinačnim znakovima ne obećava mnogo Postoj i realna potreba zaradom sa rečima rečenicama l ini jama teksta itd Podaci koj i se sastoje od više odjednog karaktera se u domaćoj l i teraturi nazivaju znakovnim niskama madaodomaćen je i naziv bdquostringrdquo koj i je i mnogo češće u upotrebi U programskomjeziku C se stringovi predstavl ja ju običnim nizovima karaktera (char niz[]) a krajteksta se označava NULL karakterom odnosno speci ja lnim znakom 0 či jabrojevna predstava je pogađate nula Ovakva predstava tekstualnih podatakanosi sa sobom i pojedine kompl ikaci je Gotovo svi savremeni jezici poznaju tipstringa dok su u C-u stringovi ipak samo obični nizovi

Da se podsetimo nizovi u C-u su zapravo pokazivači na deo u memori j i Kadapokušamo da pristupimo jednom elementu niza tada se vrši operaci jabdquodereferenciranjardquo sa zadatim odstupanjem Sledi nekol iko primera koj i i lustrujurad sa nizovima na primeru nizova karaktera

char niz1[] = zdravoniz1[0] = Z

char niz2[5]niz2[0] = 0niz2[1] = kniz2[2] = 0

Pri deklaraci j i niza 1 ni je zadata dužina zato što je u jednom izrazu zadata iinici ja l izaci ja niza koja glasi ldquozdravordquo Prevodi lac može sam da zakl juči kol ikomemori je je potrebno

U drugom primeru je kreiran niz karaktera dužine 5 Međutim popunjena su samoprva tri mesta Primećujete razl iku između prvog i trećeg elementa Prvi je cifra 0(uokviren je navodnicima) a treći je brojčana vrednost 0 koja označava krajstringa

Može se primetiti još jedna razl ika u data dva primera U prvom primeru sukorišćeni dvostruki navodnici dok su u drugom korišćeni jednostruki Razlog za to

Uvod u programski jezik C

20

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

je što se znakovni nizovi koj i su uokvireni dvostrukim navodnicima smatrajustringovima i podrazumevano im se dodaje bdquoterminatorrdquo odnosno znak NULL koj ioznačava kraj stringa Jednostruki navodnici se iskl jučivo koriste za predstavl janjepojedinačnih karaktera Ovo znači da zapisi ldquoardquo i a nisu jednaki Prvi zapis jedužine 2 jer ima i znak NULL koj im je završen

Ispisivanje i učitavanje stringovaPre nego što nastavimo dal je biće objašnjen jednostavan način za ispisivanje iučitavanje stringova pomoću standardnog ulazaizlaza Da se podsetimobibl ioteka za standardni ulazizlaz (ispis podataka u konzol i odnosno terminalu) jestdioh Ukol iko se koristi formatirani ispis potrebno je funkci jama printf() iscanf() proslediti format string koj i sadrži speci ja lan znak s čime je označenoda žel imo da ispišemo znakovni niz sve do NULL karaktera Drugi način jeupotrebom funkci ja puts() gets() i getline() iz bibl ioteke stringh Sledi primer

include ltstdiohgt include ltstringhgt int main()

char niz1[] = Zdravo svete

printf(sn niz1)

scanf(s niz1)puts(niz1)

return 0

Može se primetiti da je u slučaju funkci je printf() potrebno naglasiti speci ja lnimkontrolnim karakterom n da nakon ispisa treba preći u novi red Funkci ja puts() topodrazumevano radi

Za ove i sve druge funkci je dodatnu pomoć je moguće pronaći u Linuksovim manstranicama u odel jku 3 koj i je posvećen standardnim bibl iotekama Recimo mangetline sadrži detal jno uputstvo o funkci j i getline()

Kako da

21

Broj 33

Kopiranje stringovaKao što je u prethodnom odel jku napomenuto stringovi su u C-u samo običninizovi To znači da sledeći kod verovatno neće uraditi ono šta bi bi lo očekivano

niz1 = niz2

Ovime smo pokazivaču niz1 bdquorekl irdquo da pokazuje tamo gde i pokazivač niz2 Efektivno oni sad pokazuju na isti tekst međutim ako izmenimo niz1 to će seodraziti i na niz2 a važi i obrnuto Ovime smo dobi l i samo dva pokazivača na istideo memori je a uglavnom to ni je bio ci l j

Drugi način kako bismo sadržaj drugog niza mogl i da kopiramo u prvi niz je petl jakojom bismo kopiral i element po element Pošto je operaci ja kopiranja stringovavrlo često potrebna postoj i standardna bibl ioteka za rad sa stringovima koja sezove stringh a funkci ja za kopiranje stringova je strcpy()

strcpy(niz1 niz2)

Dati primer kopira sadržaj niza 2 u niz 1 Kopira se element po element sve dok seu nizu 2 ne naiđe na NULL karakter Ovakvo kopiranje (element po element) seinače u stranoj l i teraturi naziva i bdquodeep copyrdquo i vrlo često se sreće u radu sastrukturama podataka gde je potrebno obići celu strukturu podataka i svakielement kopirati a strukturu opet izgraditi u drugom delu memori je

Zaniml j ivo je što je kopiranje stringova moguće pojednostaviti ukol iko definišemonovi tip podatka kao strukturu koja sadrži niz karaktera i potom izvršimo kopiranjeOvo je trik koj i se uglavnom ne koristi u praksi i spomenut je samo kaozaniml j ivost

include ltstringhgt struct str char niz[50]

int main()

struct str s1struct str s2

Uvod u programski jezik C

22

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

strcpy(s1niz zdravo)s2 = s1

s2niz[0] = Z

puts(s1niz)puts(s2niz)

return 0

Kreirana je struktura str koja sadrži pol je niza karaktera pod nazivom niz Pozivomfunkci je strcpy() kopiramo string ldquozdravordquo u s1 čime smo bdquonapuni l irdquo sadržajobjekta s1 Potom je izvršena redovna dodela čime je sadržaj objekta s1 kopiran us2 Zatim je izmenjen samo prvi karakter objekta s2 i oba stringa su ispisanaPrimećujete da su kopirani svi znakovi a da je izmenjen samo drugi objekatZaniml j iv trik

Poređenje spajanje i pretraga stringovaDruga vrlo česta situaci ja je poređenje dva stringa Ukol iko bi poređenje bi loizvršeno upotrebom redovnog operatora za poređenje == tada bi u stvari bi lepoređene samo adrese na koje pokazuju pokazivači tih stringova jer da sepodsetimo stringovi su u C-u samo obični nizovi Ispravan način za poređenje dvastringa je pozivanjem funkci je strcmp() či ja je povratna vrednost 0 ukol iko su jojprosleđeni stringovi sa jednakim sadržajem

include ltstringhgt int main()

char niz1[] = zdravochar niz2[] = zdravo

if( strcmp(niz1 niz2) == 0)puts(Stringovi su jednaki)

elseputs(Stringovi nisu jednaki)

return 0

Kako da

23

Broj 33

Funkci ja strcmp() poredi svaki element prosleđenih nizova pojedinačno a dobraje vežba implementiranje nove funkci je strcmp() koja će unutar petl je da porediodgovarajuće elemente prosleđenih nizova i potom vratiti rezultat 0 ukol iko su svielementi jednaki Potrebno je pripaziti na situaci ju kada su stringovi razl ičitihdužina

U svetu računara spajanje dva sadržaja se zove konkatenaci ja Odatle i nazivfunkci je za spajanje dva stringa strcat() Važno je uveriti se da je string u koj i sedodaje sadržaj dovol jno vel ik da ga prihvati inače može da dođe do nežel jenogprepisivanja u memori j i uništavanja drugih podataka i neispravnog ponašanjaprograma

Pretraga unutar stringa se može obaviti funkci jom strstr() Ova funkci ja kaoparametre očekuje pokazivač na niz karaktera (string) u kojem je potrebno pronaćistring koj i je prosleđen kao drugi parametar Povratna vrednost je pokazivač nadeo memori je gde se žel jeni string prvi put pojavio

Sledi malo opširni j i primer koj i i lustruje spajanje pretragu i kopiranje stringova

include ltstringhgt int main()

char niz_a[50] = LiBRE je char niz_b[] = najbolji casopischar niz_c[] = e-magazin

strcat(niz_a niz_b)puts(niz_a)

char cilj = strstr(niz_a casopis)strcpy(cilj niz_c)

puts(niz_a)

return 0

Uvod u programski jezik C

24

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Pretvaranje tipova podataka u stringove ipretvaranje iz stringovaPretvaranje podataka iz jednog tipa u drugi i l i kastovanje (eng type casting) se zavećinu tipova vrši jednostavno pisanjem tipa u zagradama na primer (int)523 Stringovi su i po ovom pitanju drugači j i Postavl ja se pitanje šta pretvoriti ucelobrojni tip - da l i adresu na koju pokazuje pokazivač niza koj i predstavl ja stringPrvi element Šta ako taj string ni je broj Predstavićemo rešenje za konverzi jubrojeva u stringove i obrnuto

Ispis podataka na ekranu se takođe može smatrati konverzi jom Broj sa pokretnimzarezom je u memori j i prikazan na pomalo čudan način a pozivom funkci jeprintf() kada je kao format zadat f na ekranu ćemo dobiti razuml j iv niz znakovaSl ičan rezultat možemo dobiti funkci jom sprintf() a jedina razl ika u odnosu naprintf() je ta što sprintf() kao prvi argument očekuje pokazivač na string dok sudrugi (format string) i treći (argumenti koj i se povezuju sa formatnim stringom)sl ični kao kod funkci je printf()

Kod pretvaranja stringova u brojevne tipove može poslužiti funkci ja sscanf() kojase ponaša sl ično kao funkci ja scanf() s tim što je prvi argument adresa(pokazivač na string) koju žel imo da skeniramo u nadi da će se poklopiti saformalnim stringom koj i je drugi argument a rezultati će biti sačuvani u adresamakoje su prosleđene kao 3 4 i ostal i parametri Drugi način za pretvaranje stringovau celobrojne brojeve i brojeve sa pokretnim zarezom su funkci je atoi() i atof()

Funkci je koje koriste formatni string su česte u jeziku C i zaslužuju posebnu pažnjumeđutim to je priča za poseban članak U ovu klasu funkci ja spadaju recimo ifunkci je za rad sa datotekama

BezbednostRad sa stringovima može da bude izuzetno opasna stvar po pitanju bezbednostiprograma Ukol iko se niz karaktera ne završava NULL karakterom svašta može dapođe po zlu pri pozivu funkci ja kao što su strcpy() strcmp() i sl ične Cela klasatih funkci ja se oslanja na postojanje znaka koj i označava kraj stringa Kada stringni je propisno završen tada te funkci je mogu da zalutaju u deo memori je vanstringa i svašta može da pođe po zlu Ovakav tip napada se inače zoveprekoračenje bafera (eng buffer overflow) Preporučen način kako da izbegnete

Kako da

25

Broj 33

Pregled popularnosti GNULinuxBSDdistribuci ja za mesec februar

Distrowatch

Pad ltPorast gtIsti rejting =(Korišćeni podaci sa Distrovoča)

12345678910111213141516171819202122232425

MintUbuntuDebianopenSUSEelementaryMageiaFedoraManjaroCentOSLXLEArchBodhiAndroid x86Kal iPCLinuxOSPuppyRobol inuxLubuntuQ4OSBlack LabNetrunnerSimpl icityEvolveZorin4MLinux

2919gt1778gt1701gt1323gt1204gt1174gt1166gt1028lt1020gt965gt957gt907gt900lt760gt742lt732gt695gt670gt663gt655gt652gt629gt607gt583gt517=

takve nepri jatne situaci je pri radu sastringovima je da koristite verzi jefunkci ja koje su ograničenemaksimalnom dužinom stringa kaošto su strncpy() strncat() strncmp() i td Sve te funkci je kaotreći parametar zahtevaju broj koj iodređuje maksimalnu očekivanudužinu stringa Još jedna vrlo korisnafunkci ja je strlen() či j i zadatak je daodredi dužinu stringa Budite pažl j ivi ovo je prvo mesto gde se tražebezbednosni propusti u programimaNe verujte podacima koj i spol ja ulazeu vaš program a pogotovo kada je rečo stringovima

Uvod u programski jezik C

26

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Autor Dejan Maglov

Projekti slobodnog softvera obično počinju kao projekti pojedinca i l i male grupeprogramera a koj i rade na razvoju softvera či j i je ci l j da zadovol j i neke od nj ihovihl ičnih potreba Projekat će se smatrati uspešnim ukol iko se šira zajednicazainteresuje za njega nakon što prepozna korisnost softvera ne samo za pojedincekoj i su započel i projekat već i za širu zajednicu Kada je u pitanju slobodni softvervremenom je postala stalna praksa da se zajednica umeša u razvoj projekataDobri projekti sami privlače zajednicu l judi koj i su zainteresovani za nj ih i ona uvećini slučajeva preuzima na sebe testiranje pobol jšanje funkcionalnosti održavanje i tehničku podršku projekta

Zajednice slobodnog softvera mogu da se okupe oko projekta slobodnog softverapo teritori ja lnom principu i l i da nastanu kombinaci jom ovih principa

Primeri

bull LiBRE projekat okupl ja zajednicu oko projekta bez teritori ja lnog ograničenjabull LUGoNS (Linux User Group of Novi Sad) je zajednica korisnika Linuksa poteritori ja lnom principu bez obzira na konkretan projekat

bull Ubuntu-rs zajednica koja je kombinaci ja okupl janja zajednice oko konkretnogprojekta (Ubuntu) i teritori ja lnog principa koj i se ograničava na teritori ju Srbi je

Ova sinergi ja projekata i korisnika slobodnog softvera ima više prednosti i zakorisnike i za projekat Projekat se na ovaj način brže razvi ja dobi ja na

U potrazi za idealnom distribucijom

Socijalni kriterijumi za izbor idealnedistribucije (6 deo)

Oslobađanje

27

Broj 33

funkcionalnosti greške se brzo ispravl ja ju i td Korisnici dobi ja ju osećaj dapripadaju grupi druže se sa istomišl jenicima učestvuju u promoci j i kval itetnihpojedinaca itd

Dve najvažni je uloge lokalnih zajednica za GNULinuks distribuci je su

1 pružanje tehničke podrške i edukaci je na maternjem jeziku2 rad na lokal izaci j i i pri lagođavanje distribuci je lokalnim potrebama

Informaci ja da postoje lokalne zajednice slobodnog softvera je od naročitogznačaja za početnike i korisnike koj i nedovol jno dobro znaju strane jezike(naročito engleski jezik) Ako izuzmemo komerci ja lne projekte otvorenog koda(Red Het SUSE) ne postoje zvanične škole i kursevi za slobodni softver Zaedukaci ju početnika je uglavnom zadužena zajednica a jasno je da je učenje namaternjem jeziku uvek lakše nego na bi lo kom drugom stranom ma kol ikodobro ga poznajete

Forumi i viki stranice lokalnih zajednica su prave bibl ioteke u koj ima korisnicimogu da nađu većinu odgovora na svoja pitanja a za sva ostala tu su forumi iIRC kanal i zajednica na koj ima uvek ima nekoga i koj i imaju već gotova rešenjaza vel iki broj problema

U potrazi za idealnom distribucijom

28

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Lokalne zajednice kao kriterijum za izbor idealnedistribucijePočetnicima i korisnicima koj i ne vladaju dobro engleskim jezikom toplopreporučujemo da biraju GNULinuks distribuci je koje imaju aktivnu lokalnuzajednicu Ovladavanje novim operativnim sistemom je mnogo lakše ukol iko vambdquoleđa čuvardquo lokalna zajednica na koju se uvek možete osloniti

Već smo spomenul i da su popularni je GNULinuks distribuci je namenjenepočetnicima Slučaj je isti i sa lokalnim zajednicama okupl jenim oko nj ih Ovomeđutim ne znači da je kval itet usluga koje nude manje popularne lokalnezajednice okupl jene oko distribuci ja namenjenih napredni j im korisnicima loši j i Manje popularne distribuci je okupl ja ju manje l judi a l i zato oni poseduju većeznanje Iskustvo sa zajednicama okupl jenim oko slobodnog softvera je uglavnompozitivno i ukazuje na to da kval itet usluga koje one nude korisniku ni je uslovl jenpopularnošću i masovnošću zajednice nego iskl jučivo njenom (ne)aktivnošću

U svakom slučaju dosadašnj i saveti za izbor idealne distribuci je važe i dal jeSoci ja lni aspekt slobodnog softvera je samo dodatni faktor koj i vam može pomoćipri donošenju odluke kada se dvoumite između nekol iko mogućih rešenja

Još uvek ne postoj i na jednom mestu potpuni i ažurirani spisak svih aktivnihsrpskih zajednica Nešto najbl iže tome može da se nađe na adresihttps pulsslobodewordpresscom Za informaci je o nekim drugim lokalnimzajednicama koje možda postoje al i nisu na ovom spisku moraćete sami dapretražite internet

Lokalizacija kao kriterijum za izborZa lokal izaci ju GNULinuks distribuci ja i GNU programa odgovorni su pojedinci ilokalne zajednice Sasvim sol idnu srpsku lokal izaci ju mogu imati i projekti koj iuopšte nemaju svoju lokalnu zajednicu a isto tako lošu lokal izaci ju mogu imati iprojekti sa dobrom lokalnom zajednicom Sve je stvar prioriteta zajednica iaktivnosti pojedinaca

Pravu i kontrol isanu lokal izaci ju može imati samo lokalni projekat Ovakvihprojekata u Srbi j i ima malo i teško se probi ja ju čak i u lokalu u konkurenci j isvetskih projekata Istina je da mnoge veće GNULinuks distribuci je imaju srpskulokal izaci

Oslobađanje

29

Broj 33

ju u ponudi pa se možda sl ični lokalni projekti koj i su usmereni samo na striktnulokal izaci ju smatraju nepotrebnima Uzvodna lokal izaci ja u slučaju Srbi je vrlo čestobude veoma loše čak nakaradno sprovedena Jedna polovina programa jelokal izovana srpskom ćiri l icom a druga latinicom Ako postoj i još delova sistemakoj i uopšte ni je lokal izovan onda se pojavl ju ju i delovi programa koj i su naengleskom Zato ćemo se vratiti na prvu rečenicu ovog pasusa i ponovo utvrditi dasamo lokalni projekat može potpuno kontrol isati pravu srpsku lokal izaci ju

U Srbi j i za sada imamo dva aktivna projekta GNULinuks distribuci je ndash TriOS(http triosrs) i Serbian (http wwwdebian-srbi ja iz rspserbianhtml) Obaprojekta su mlada i imaju svoj ih prednosti i mana Kome treba lokal izovanoperativni sistem može da proba jedan od ova dva projekta

U potrazi za idealnom distribucijom

30

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Iako ove dve domaće distribuci je nisu baš naj idealni je interesantno je probati ih iuporediti sa drugim distribuci jama

Za kraj serijalaNamera nam je bi la da kroz ovaj seri ja l o kriteri jumima pri izboru idealnedistribuci je definišemo većinu kriteri juma pri izboru i pokažemo zašto je teškoodgovoriti na jednostavno pitanje bdquoKoju mi distribuci ju preporučujeterdquo

Ni na samom kraju nismo dal i konkretan odgovor na pitanje koja je idealnaGNULinuks distribuci ja Suviše je subjektivnih ocena da bi se mogao datikonkretan odgovor Smatramo da je jako teško napisati neki algoritam izbora pokriteri jumima koje smo identifikoval i i definisal i a možda je čak i nemoguće poštose izlazi stalno menjaju Izlazi iz tog algoritma su GNULinuks distribuci je koj ih izdana u dan ima sve više a i one stare se stalno menjaju

Sam seri ja l bdquoU potrazi za idealnom distribuci jomrdquo neće biti završen samo zato štose više neće baviti kriteri jumima pri izboru nego će pokušati da predstavl jaGNULinuks distribuci je koje su po nečemu bdquoidealnerdquo

Oslobađanje

31

Broj 33

ORM

Autor Dejan Čugal j

Object relation mapping (ORM)

ORM (eng Object RelationMapping) je način postizanja traj-nosti (eng persistence) objekataunutar relacionih baza podatakaModel deluje kao posrednik nalogičkom delu apl ikaci je Automat-ski presl ikava podatke iz objekata ubazu i nazad na zahtev apl ikaci jeDa bismo objasni l i kako ovo sveradi moramo da vam predstavimoORM frejmvork (eng framework)programa otvorenog koda -Hajbernejt (eng Hibernate -http hibernateorgorm)

Šta je ORMUkratko ORM je automatizovano transparentno presl ikavanje objekatakorišćenjem metapodataka koj i opisuju mapiranje veze između objekta i baze

ORM (2 deo)

Slobodni profesionalac

32

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

podataka u apl ikaci jama koje su napisane u objektno ori jentisanim programskimjezicima Apl ikaci ja komunicira sa ORM-om preko njegovog vlastitog API-ja (engapplication programming interface) i određenih objekata Ova komunikaci ja jepotpuno odvojena od komunikaci je koja se odvi ja između ORM-a i baze podatakapreko SQL-a i DBC-a

Da bi se postigla i dostigla potpuna snaga ORM-a u apl ikaci j i koju projektujemonikako se ne sme iskl jučiti znanje relacionih modela SQL jezika te poznavanjeDBMS-a u kome se radi ORM ni je ništa drugo do srednj i sloj između gorepomenutih tehnologi ja i objektno ori jentisanog programiranja kao što smo to dosada već više puta naglasi l i

Implementacija ORM-aPostoje razl ičiti načini implementaci je ORM-a Mark Fasl (Mark Fussel) je 1997definisao četiri nivoa

1 bdquoČistrdquo relacioni način2 Slabo mapiranje objekata3 Umereno mapiranje objekata4 Potpuno mapiranje objekata

bdquoČistrdquo relacioni način

Cela apl ikaci ja ukl jučujući i korisnički interfejs dizajnirana je relacionim modelom iSQL relacionim operatorima Ovakav pristup je odl ičan za male projekte Direktanpristup SQL-u omogućava fino podešavanje svakog aspekta upita koj i se postavl jabazi podataka Osnovne mane su portabi lnost (prenosivost) i održavanje ovakvihsistema pogotovo ako se planira korišćenje apl ikaci je na duži rok Ovakvi sistemimasovno koriste sačuvane procedure (eng stored procedures) što znači da jeposlovna logika (eng busines logic) prebačena na samu bazu podataka

Slabo mapiranje objekata

Entiteti su predstavl jeni kao klase i mapiranje se radi ekspl icitno ka relacionimtabelama SQLJDBC je sakriven od poslovne logike korišćenjem poznatih šablona(patterns)

Umereno mapiranje objekata

Slobodni profesionalac

33

Broj 33

Dizajn apl ikaci ja se svodi na objektne modele SQL se generiše u vremekompaj l iranja (eng build-time) i l i u vreme izvršavanja (eng run-time) Specifikaci jaupita nad bazama podataka se radi na objektno ori jentisanom jeziku Ovakvisistemi se koriste u apl ikaci jama srednj ih vel ičina kod koj ih je bitna portabi lnostizmeđu razl ičitih sistema za upravl janje bazama podataka (DBMS)

Potpuno mapiranje objekata

Podržava sofisticirano objektno model iranje nasleđivanje i pol imorfizamEfikasnost dobi janja podataka je na visokom nivou i koriste se metode kao što sulenjo učitavanje (eng lazy loading) i strategi ja keširanja (eng caching) Implementaci ja je transparentna u apl ikaci jama Ovaj nivo je jako teško dostići Pojedincu su potrebne godine razvoja da postigne ovakvu fleksibi lnost pristupa imanipulaci ja u relacionim bazama podataka Upravo ovaj nivo se postiže ako sekoriste rešenja ORM-a kao što je Hajbernejt

Zašto ORMImplementaci ja ORM rešenja pogotovo ako seprvi put susrećete sa ovim modelom može dabude veoma frustrirajuća i malo teža zaimplementaci ju Kada ovo kažemo misl imo daprogramer koj i implementira ORM i hoće da istibude kval itetno urađen mora da posedujepredznanje objektno ori jentisanog programiranjai naprednih tehnika kao što su nasleđivanje ipol imorfizam

Ovo inicira fundamentalna pitanja

bull Pa zašto bi iko onda implementirao ovako nešto kompleksnobull Vredi l i truda upuštati se uopšte u ORM

Odgovor ni je jednostavan Dosadašnja iskustva u korišćenju ORM-a i njegovapopularnost već daju odgovor na postavl jeno pitanje Očigledno je da su benefitikoje donosi ovaj model veći od kompleksnosti njegove implementaci je a to su

Hibernate ORM

34

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Veća produktivnost

ORM smanjuje kol ičinu koda potrebnog za ostvarivanje trajnosti podataka Ovoomogućava programeru da vreme koje bi utrošio na ručno mapiranje podatakautroši na druge delove apl ikaci je

Lakše održavanje

Manje l ini ja koda osigurava bol ju razuml j ivost (i možda bol j i kval itet koda) jernaglašava apl ikaci jsku logiku ORM takođe ublažava uticaj nastal ih promena kaošto su promene u bazi strukturi tabela i td

Prenosivost

Većina ORM rešenja podržava sisteme za upravl janje bazama podataka raznihproizvođača ORM u potpunosti odvaja sloj apl ikaci je od stvarne SQL komunikaci jekoja se odvi ja u pozadini Time omogućava da se pišu apl ikaci je koje će moći da seizvršavaju na razl ičitim bazama podataka bez potrebe za dodatnim kodiranjemOva komunikaci ja se odvi ja sa programskim interfejsima ORM-a nezavisno oDBMS-u sa koj im je u bi lo kom momentu povezan ORM takođe omogućava lakšiprelaz sa manj ih na veće baze podataka tokom razvoja apl ikaci je

Uvidel i smo da trenutno postoje dve paradigme koje se bdquosudarajurdquo i koje supodjednako dobre same za sebe Relaciona paradigma potvrđuje da sve što jeizgrađeno na matematičkim osnovama je i trajno u smislu kval iteta koje posedujeU domenu u kom relaciona paradigma egzistira ona je ako je to u ovo vremeuopšte moguće tvrditi nezamenj iva

Ono što otvara pitanja i daje razlog za sumnju je koja je krajnja granicaupotrebl j ivosti relacione paradigme tj kol iki su kapaciteti složenosti zahtevaapl ikaci ja sa kojom može da se nosi Praksa je pokazala da je sasvim mogućebdquoizvestirdquo složene projekte - al i održavanje skalabi lnost razuml j ivost prenosivost -pitanja su sa koj im se relaciona paradigma teško može izboriti

Sa druge strane svoj habitat u informacionim tehnologi jama je našla i objektna

Slobodni profesionalac

35

Broj 33

paradigma Iako na prvi pogled ova dva modela nemaju ništa zajedničko - što je uneku ruku i istinito gledajući prirodu podataka koj im manipul išu - praksa jepokazala da su usko povezane i skoro da imaju sinaptičku vezu

Pitanje bdquokako spoj iti te sinapserdquo dovelo je do žučnih rasprava u uskim naučnimprogramersko-administratorskim krugovima Rodi l i su se razni model i a l i jedan jeiskočio i polako ulazi u široku primenu - a to je ORM Svoj im supti lnim pristupomproblemu nekompatibi lnih paradigmi nekako je uspeo da stvori taj nedostajućibdquoelektrični signalrdquo koj i ih je povezao Ovo je omogući lo da dve strane koje susvaka za sebe u svom domenu ostavi le i ostavl ja ju duboki trag u informacionimtehnologi jama sarađuju i donesu novi kval itet

Korisni l inkovi

[1] Hibernejt http hibernateorg[2] Viki http googlLlZulw[3] Tutori ja l i http googlCGzvnc

Hibernate ORM

36

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Autor Kriptopank

Šta su zapravo metapodaci Najkraće rečeno to su podaci o podacima i l iinformaci je koje opisuju podatke

Najpre da napravimo razl iku između podataka i metapodataka Podaci sunaprimer snimak (i l i transkript) vaših telefonskih razgovora sadržaj poruka kojepišete primate i l i šal jete podaci koje kačite na internet i l i preuzimate pretrageGuglom postovi na forumima dopisivanja na IRC kanal ima i l i drugim četovimaaudio i video snimci Skajp razgovora i tako dal je

Hajde da vidimo šta bi bi l i odgovarajući metapodaci za ove primere

bull Za telefonske razgovore metapodaci mogu biti lokaci ja učesnika brojevitelefona trajanje razgovora IP i MAC adresa

bull Za poruke četove i Skajp i l i druge video-audio komunikaci je sl ično je kao kodtelefonskih razgovora

To su samo metapodaci

Internet mreže i komunikacije

37

Broj 33

bull Kod foruma i pretraga Guglom ima malo manje metapodataka al i Gugl i raznisajtovi i forumi ionako čuvaju logove o korisnicima što su takođe metapodaci

Ako do sada koj im slučajem niste uvidel i opasnost po privatnost u ovimmetapodacima koje svako od nas smrtnika svakodnevno ostavl ja za sobom usvetu interneta i ostal ih digitalnih komunikaci ja nadamo se da će vas ovaj primermakar podstaći na razmišl janje a možda i na nešto više

Zamisl i te da neko (zvaćemo ga posmatrač) stalno sakupl ja metapodatke koje zasobom ostavl jate kao mrvice hleba Posmatrač recimo zna da se nalazite naautoputu nedaleko od famoznog Feketića da se ne krećete da zovete AMSS zatimšlep službu i možda taksi a l i ne zna šta ste razgovaral i I l i posmatrač vidi da steprvo zval i aerodrom Nikola Tesla pa odmah potom taksi a l i ne zna šta sterazgovaral i I l i posmatrač vidi da ste zval i prvo šest brojeva či je identitete takođezna pa vidi da se oni zatim kreću ka vama - GPS (eng Global Positioning System) pa zatim pica servis Mekdonalds i neku poznatu prodavnicu kineske hrane al i nezna šta ste razgovaral i

Posmatrač ne mora da bude mnogo pametan niti da prisluškuje vaše razgovore dabi shvatio šta se dešava i l i šta će se desiti Sasvim mu je jasno da vam je u prvomprimeru auto stao na autoputu zatim da ste se u drugom slučaju uputi l i naaerodrom i da možda putujete van zemlje i l i ste poslal i taksi po nekoga saaerodroma a da u trećem slučaju okupl jate žurku kod vas Više možete pogledatina http googl7vUjP

Iako su to bdquosamordquo metapodaci treba biti svestan da ti metapodaci o vama stvarajujednu digitalnu sl iku i l i bol je reći digitalni mozaik i na neki način vas jedinstvenoodređuju Pogotovo kada se planski prikupl ja ju na više nivoa (kompjuter pametnitelefon pametni automobi l i kreditna kartica) metapodaci čine vaš digitalniidentitet Al i da stvar bude još gora ta sl ika o vama ne mora nužno biti istinita jerse lako može lažirati Recimo možete zameniti telefone i l i automobi le sa nekimnamerno i l i slučajno i l i vam neko može jednostavno ukrasti telefon laptop i l ikreditnu karticu Zaniml j iv video http googlKO1fKf

Evo jednog primera koj i vas može uvući u vel ike nevol je Recimo da prolazitenekom zabačenom ul icom i da vam neprimetno ispadne telefon al i vi to neprimetite i nastavite dal je svoj im putem U toj ul ici se samo nekol iko minutakasni je desi neko ubistvo i vas pozovu u pol ici ju kao osumnj ičenog Ako koj im

To su samo metapodaci

38

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

slučajem nemate dobar al ibi i l i nemate svedoka da posvedoči da niste bi l i u tojul ici nego tamo gde ste stvarno bi l i a drugih svedoka nema - možete jako lošeproći Zaniml j ivi video http googlspS5OZ

Metapodaci se takođe nalaze i u faj lovimapodacima koje svakodnevnopreuzimamo sa interneta pravimo i koristimo Svaki tip podatka može da sadržiodređene metapodatke koj i bol je opisuju sam podatak kao naprimer vremenastanka podatka kol iko je vremena potrošeno za njegovo kreiranje kol iko putamu je pristupl jeno kad je poslednj i put pristupl jeno i tako dal je Iako se ovakvimetapodaci možda još uvek čine bezazlenim oni mogu sadržati i IP adresuračunara sa kog su napravl jeni GPS koordinate (najčešće PNG format sl ika satelefona) ko ga je napravio (l ičnost i l i kompani jaorganizaci ja) naziv uređaja imodel sa koga je napravl jen kao i MAC adresu uređaja mej l adresu kreatorasoftver koj im je napravl jen i tako dal je Sve ovo može mnogo da naškodiprivatnosti izvornog kreatora faj la pogotovo ako je sadržaj poverl j iv Ukol iko nekopresretne taj podatak na internetu može saznati od koga je potekao Da ovo možebiti katastrofa po kreatora takvog faj la može i lustrovati primer torenta Ako stedošl i u posed nekih sl ika i l i video materi ja la i l i teksta koj i žel i te da podel ite sasvetom preko nekog torent sajta morate taj podatak prvo očistiti odmetapodataka da ne bi svako ko skine to što ste okači l i saznao da vi stoj i te izatoga

Internet mreže i komunikacije

39

Broj 33

Ljudi se konstantno prate metapodaci se sakupl ja ju i to ni je sada već ništa novoal i možemo da se trudimo da iza sebe ostavl jamo malo manje nežel jenihmetapodataka i da ih takoreći čistimo iz podataka koje razmenjujemo Na srećupostoje programi koj i ovo dobro rade

Najpre je potrebno da vidimo koje sve metapodatke neki faj l sadrži kako bismo seuveri l i da ovi metapodaci stvarno postoje i da je faj l bezbedan nakon nj ihovogbrisanja

Ako koristite operativne sisteme GNULinuksa treba da iz terminala preuzmete iinstal irate program pod nazivom exiftool

sudo apt-get install exiftool

Ovaj program će nam pružiti uvid u sve metapodatke koje faj l sadrži Korišćenje jeiz terminala al i je zato veoma jednostavno samo ga pokrenite na sledeći način

exiftool File

i l i

exiftool putanjadofajlapočevodkorenogdirektorijuma

Dobićete prikaz metapodataka koje je program pronašao Sada je potrebno davidimo da l i je podatak bdquoprl javrdquo tj da l i ima u njemu nešto da se briše i da akoima iz njega sve nepotrebno obrišemo Tu će nam pomoći drugi program zvaniMAT (eng Metadata Anonymisation Toolkit) koga možete naći na sajtuhttps matboumorg i l i jednostavno za korisnike Ubuntua i Debi jana uSoftverskom centru i l i ga možete instal irati iz terminala

sudo apt-get install mat

MAT će proveriti da l i je podatak bdquoprl javrdquo i l i ne i za vas ga očistiti od nežel jenihmetapodataka

Kada očistite faj l on je spreman za del jenje sa drugima a vi ste bezbedni jer nikone može reći da je faj l potekao sa vašeg računara

To su samo metapodaci

40

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Autor Dejan Čugal j

GH Hardi bdquoPrava matematika nema uticaj na ratrdquo - odbrana matematičara1940 godina

Bi l Tat - britanski matematičar verovatno niste čul i za njega1942 godine je izveo ogroman poduhvat koj i je skratio rat dvegodine (barem po rečima Ajzenhauera) i spasio mi l ione životaNažalost njegova vel ičina je preminula 2002 godine obavi jenavelom tajne i nikada zvanično ni je priznato njegovo dostignuće

Tomi Flauers - bivši inženjer poštanskog saobraćaja pretvorio jematematičke ideje Tata u prvi računar a to ni je bio bdquoENIACrdquo1Preminuo je 1998 godine a pretpostavl jamo da nikada niste čul ini za njegovu vel ičinu

Ovi umni giganti bdquoBlečl i parkardquo omogući l i su Britani j i da dešifruje strogo poverl j ivumašinu koju je koristio Hitler da diriguje drugim svetskim ratom a to ni je bi labdquoENIGMArdquo nego nešto mnogo tajni je i značajni je Vel ika je verovatnoća da nistečul i ni za ovo Neki kažu da je to bio Hitlerov Blekberi (BlackBerry)

Izgubljeni heroji bdquoBlečli parkardquo

1 engl Electronic Numerical Integrator And Computer - prvidigitalni elektronski računar

Internet mreže i komunikacije

41

Broj 33

1939 godine bdquoBlečl i parkrdquo je postao ratni štab MI6 (britanske vojne obaveštajneslužbe) Do danas je procurelo u javnost i dokumentovano brojnim fi lmskimdokumentarcima samo da je tu Alan Tjuring uspeo da dešifruje nemačkumornaričku šifru poznatu kao bdquoENIGMArdquo i uvel iko doprineo pobedi saveznika a to jesamo deo priče koj i je ispričan

U Blečl i parku su bi la tri heroja AlanTjuring Bi l Tat i Tomi Flauers Od nj ihtroj ice jedino Alanu Tjuringu je priznat deozasluga za pobedu saveznika u Drugomsvetskom ratu Pregledom otkrivenihpodataka danas možemo da tvrdimo daje bdquoENIGMArdquo već sa početka drugogsvetskog rata bi la zastarela tehnologi ja Zbog toga je bi lo lako skinuti veo tajne sa

ovog uspeha heroja Blečl i parka

Izgubljeni heroji bdquoBlečli parkardquo

42

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Bi l Tat koj i je dešifrovao bdquoTANI sistemrdquo (TANI) i Tomi Flauers koj i je samo svojomintuici jom i znanjem sklopio prvi računar na svetu (bdquoKOLOSrdquo) u svrhu bržegdolaženja do informaci ja razbi jenog koda bdquoTANIrdquo tako da zastarelost šifrata budesvedena na minimum - radi l i su na novoj generaci j i mašina za šifrovanje Ovatehnologi ja je bi la prepoznata kao tehnologi ja budućnosti pa i danas iznadinformaci ja o tim tehnologi jama stoj i natpis bdquovrhunska tajnardquo (eng Top Secret) Upravo ovaj veo tajni oko šifrata bdquoTANIrdquo i prvog računara je rezultirao iskrivl jenjuistori je informatike

Za uspehe u prvim godinama rata je zaista zaslužno razbi janje bdquoENIGMArdquo šifrata ito ni je sporno al i krajem 1941 godine u etru planete se začuo novi zvuk To je bi lanova mašina za šifrovanje ni je bi la zasnovana na bdquoMorzeurdquo već je radi la naprincipu teleprintera

Jedna od kl jučnih ideja Hitlerovog ratovanja je bi la u vel ikoj mobi lnosti i brzomdelovanju trupa na terenu a da bi se to izvelo komunikaci ja je isto tako morala dabude u najmanju ruku putem radio signala

Razl ika je ogromna Razl ika je u kol ičini podataka koj i može da se prenese ovimbdquotajnimrdquo putem Prvi svetski rat je bio zaniml j iv jer su se šifrovane poruke baziralena rečima dok je Drugi u potpunosti otvorio vrata današnjoj kriptografi j i a to jematematika

Originalan nemački kocircdni naziv za ovaj šifrat bio je bdquoLORENCrdquo Britanska

Internet mreže i komunikacije

43

Broj 33

obaveštajna služba mu je dala nadimak bdquoTANIrdquo Čak ni dan danas ni je baš poznatokako je sve nastalo al i pouzdano se zna da je tajnu mašinu Hitler nazvaobdquoGehajmšrajberrdquo (nem Geheimschreiber) - mašina tajni

U srž i tehnologi ju šifrovanja bdquoLORENCrdquo šifrata nećemo ulaziti u ovom članku al iverujte nam na reč - ni je bi la jednostavna Može se pretpostaviti da je inspiraci jaŠenonovog 2 rada slučajnosti bi la upravo ova tehnologi ja iz Drugog svetskog rata

Ono čime se Treći rajh vodio je bdquosigurnardquo šifrovana veza koju niko ni je smeo dadešifruje Prenošenje šifrovanih poruka pomoću radio signala je dalo obaveštajnimslužbama mogućnost presretanja poruka poslatih radio talasima Da l i se ovo idanas dešava Imamo l i sigurnost u našim šifrovanim podacima današnj ice

Ono što je usledi lo nakon proboja ovog bdquoneuhvatl j ivogrdquo šifrata je upravo ono što jeprincip današnj ice kao neka vrsta protokola koj i mora da se ispoštuje uperfektnom šifarskom Šenonovom sistemu

1 NIKADA NIKADA NE KORISTITI DVA PUTA ISTI KLJUČ ZA ŠIFROVANJE2 NIKADA NIKADA KLJUČ NE SME DA SE ŠALJE ISTIM KOMUNIKACIONIM KANALOM

KAO PORUKA3 NIKADA NIKADA KLJUČ NE SME DA BUDE MANJ I NEGO ŠTO JE PORUKA (engl

2 Klod Elvud Šenon (eng Claude Elwood Shannon) (1916-2001) - Američkinaučnik i inženjer

Izgubljeni heroji bdquoBlečli parkardquo

44

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

one time pad) 4 NIKADA NIKADA NE SMEMO DA SAKRIVAMO SISTEM ŠIFROVANJA SVE MORA

DA JE OTVORENOG KOcircDA

Najveći propusti kriptologi je koj i su uočeni baš u Drugom svetskom ratu jesupokušaj sakrivanja sredstava koj im se generiše tajna poruka i nepoznavanjeŠenonovih krajnj ih granica informaci ja Kada kažemo bdquosredstvo i sakrivanjerdquomisl imo na algoritme Postavl ja se pitanje zašto je danas kriptologi ja sigurni ja negočetrdesetih i pedesetih godina prošlog veka

Danas uprkos tome što su algoritmi za kriptografi ju otvorenog kocircda tajnostinformaci ja je na višem nivou nego što je to bi lo dok je algoritam bio strogopoverl j iv Tajnost tajnih podataka se ne zasniva na tajnosti a lgoritama koj i generišutaj isti bdquotajni izlazrdquo (eng cipher text) nego u nemogućnosti matematičke inverznefunkci je koja bi šifrovan tekst otvori la Ovde se vidi da je svrha strukture otvorenogkocircda kao jednog od značajnih delova današnje kriptologi je ona koja ga činisigurnim i svima dostupnim

Sada kada se sa ove distance osvrnemo na Drugi svetski rat možemo videti kol ikosmo bi l i bl izu apokal ipse Naime Albert Ajnštajn je već 1944 godine imao urukama recept za nuklearnu bombu Šenon je mogao već u to vreme da nampredoči 100 siguran šifrat (tzv Hitlerovu super šifru) a l i ipak sreća nas jeposluži la da čovečanstvo tada ni je bi lo spremno da upotrebi svu raspoloživutehnologi ju

Albert Ajnštajn bdquoČetvrti svetski rat će se voditi tol jagamardquo

Zaboravl jeni heroj i Blečl i parka iako su odigral i važnu ulogu u pobedi saveznika usvetskom ratu postal i su žrtve bdquotop secretrdquo doktrine potpuno su zaboravl jeni inestal i su iz istori je

Zakl jučak ovog članka je da je ideologi ja otvorenog kocircda sasvim sigurno tu da nampomogne i da otvori vrata ka većoj sigurnosti novim idejama i kval itetu sameinfrastrukture sistema koju svi zajedno razvi jamo

Internet mreže i komunikacije

45

Broj 33

Autor Nikola Hardi

NabrajanjaBez brojeva

Za nabrajanje pojmova u Bimeru (eng Beamer) koristi se okruženje itemize aunutar tog okruženja možemo da dodajemo nove stavke pomoću item Primerizgleda ovako

beginitemizeitem Stavka Aitem Stavka Bitem Stavka C

enditemize

Sa brojevima

Postoje situaci je kada uz nabrajanje treba da stoje i redni brojevi - za to se koristienumerate okruženje a nove stavke se takođe dodaju pomoću item

beginenumerateitem Redni broj 1item Redni broj 2item Redni broj 3

endenumerate

prezentaci ja

Beamer (4 deo)

Sam svoj majstor

46

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

DefinicijeTreća situaci ja je nabrajanje parova termin - definici ja U tom slučaju se koristiokruženje description Već možete da pretpostavite kako se dodaju nove stavke

Primer

begindescriptionitem[Pojam A] Definicija izmišljenog pojma Aitem[Pojam B] Definicija izmišljenog pojma Bitem[Pojam C] Definicija izmišljenog pojma C

enddescription

Ostala podešavanja i zanimljivostiSva prethodna okruženja mogu da budu ugneždena jedno unutar drugog dotrećeg nivoa Treba biti pažl j iv jer sla jdovi vrlo lako mogu da postanu nečitl j ivi Osim toga moguće je izabrati i format oznake i l i rednih brojeva - na primer ovako

beginenumerate[I]beginenumarate[a)]

Takođe moguće je upravl jati pojavl j ivanjem pojedinih stavki na slajdovima Drugimrečima možemo da odredimo da se nabrajanja postepeno otkrivaju tako što ćemouz stavku dodati lt1-gt odnosno broj od kojeg slajda žel imo da se ta stavkapojavl ju je Tada će jedno nabrajanje biti bdquorazvučenordquo na više slajdovaJednostavni ja mogućnost je da u zaglavl je okruženja dodamo +- što znači dažel imo da se svakim slajdom otkriva po jedna nova stavka iz nabrajanja Znak bdquo-rdquo uoba primera znači da žel imo da se stavka pojavi na sledećem slajdu i da ostane

Sam svoj majstor

47

Broj 33

prisutna Možemo da izostavimo znak bdquo-rdquo i tada će stavka biti prisutna samo najednom slajdu i l i da napišemo raspon slajdova u koj ima žel imo da ta stavka budeprisutna

Rad sa kolonama i blokovimaDo sada su svi primeri podrazumeval i da je sadržaj napisan preko cele širineslajda al i Bimer (eng Beamer) ima i jednostavne mehanizme za razmeštanjesadržaja po kolonama Za rad sa kolonama se koristi okruženje columns unutarkojeg možemo da dodajemo nove kolone pomoću columnširina Sadržaj jemoguće potom pisati i van okruženja sa kolonama

U paru sa kolonama često se sreće i okruženje block koje se parametrizujenaslovom Primerom su i lustrovani i okruženje column i okruženje block

beginframebegincolumns

column05textwidthbeginblockNaslov levog blokaSadržaj u prvoj (levoj) koloni endblock

column05textwidthbeginblockNaslov desnog blokaSadržaj u drugoj (desnoj) koloni

endblockendcolumns

beginblockVan kolona

Beamer

48

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Tekst koji se nalazi ispod kolonaendblock

endframe

TabeleIako se u radu sa prezentaci jama sadržaj najčešće može uredno rasporeditipomoću kolona i nabrajanja nekada to ni je dovol jno jer su tabele pravi formatBimer podržava standardno Lateh (LaTeX) okruženje za rad sa tabelamaOkruženje za rad sa tabelama se zove tabular Pri kreiranju nove tabele moguće jepodesiti koje kolone će biti razdvojene l ini jom i da l i će nj ihov sadržaj biti centrirani l i uz levu i l i uz desnu ivicu Dodavanje novog reda se jednostavno radidodavanjem hline Lateh pruža zaista jako fleksibi lan rad sa tabelama i sigurno ćedoskočiti svim mogućim i nemogućim zamisl ima Potražite bi lo koje Lateh uputstvoza rad sa tabelama i radiće i sa Bimerom

beginframebegintabular | c | c | c | c |

hlineamp Ponedeljak amp Utorak amp Sreda hline

1 amp 16 amp 32 amp 64 hline2 amp 16 amp 128 amp 1024 hline3 amp 16 amp 512 amp 4096 hline

endtabularendframe

Sam svoj majstor

49

Broj 33

Beamer

Teoreme i istaknut tekstU nastavi su česta izlaganja teorema nj ihovih dokaza i primera U Bimer jeugrađena podrška za elegantno predstavl janje ove trojke Mehanizam takođepodržava postepeno otkrivanje sadržaja sla jda tako da slušaocima ne bude odmahotkriven dokaz teoreme Mehanizam za postepeno otkrivanje se kao i kodnabrajanja postiže pomoću bdquolt1-gtrdquo konstrukci je Evo kako to izgleda

beginframeframetitlePrimer teoreme

begintheoremlt1-gt Teorema kaže da su beamer prezentacijezanimljive

endtheorem

beginexamplelt2-gt Ovaj kod kreira slajd beamer prezentacijeendexample

beginprooflt3-gt Čestitamo stigli ste do kraja serijala o pravljenju beamer prezentacija

endproofendframe

50

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Za krajOvim člankom završavamo seri ja l o Bimeru Nadamo se da smo uspel i da vaszainteresujemo za ovu vrlo korisnu klasu Lateha Trudi l i smo se da vamprezentujemo najvažni je delove Bimera koje ćete najčešće koristiti pri l ikomkreiranja svoj ih prezentaci ja

Napominjemo još jednom da je Bimer samo jedna od klasa Lateha što znači da i zaBimer važi sve ono što ste već mogl i da pročitate u ovom časopisu kad smo pisal iseri ja l bdquoUvod u LaTeXrdquo (LiBRE brojevi 17 do 21) Štaviše ovaj seri ja l o Bimeru jebio nastavak upravo tog seri ja la U ovom seri ja lu nismo pisal i o samomformatiranju teksta u prezentaci jama jer se podrazumeva da važe ista pravi la kao iu Latehu a o tome smo pisal i u prethodnom seri ja lu

Hvala vam što ste prati l i ovaj seri ja l i žel imo vam puno uspeha u kreiranju Bimerprezentaci ja

Sam svoj majstor

51

Broj 33

Autor Nenad Marjanović

Kada smo se upoznal i sa podešavanj ima sistema i umrežavanjem vreme je za našprvi Biglbon Blek (BBB - eng BeagleBone Black) projekat Svakom od nas će ovajizazov dati razl ičite ideje a jedna od nj ih može biti i zaštita privatnosti internetkorisnika Nažalost u Srbi j i ne postoj i ni jedan izlazni tor server (eng node) i to jepomalo tužna sl ika s obzirom da govorimo o populaci j i od sedam mil ionastanovnika Al i ovu sl iku možemo promeniti udruženim snagama i za početakkreiranjem Tor transfer i izlaznog servera U ovde prikazanom grafikonufokusiraćemo se na bdquoRauter Brdquo tačku odnosno transfer server konfiguraci ju

BeagleBone Black Rev C

Vodič od prvog dana (3 deo) ndashBeagleBone Black kao Tor relej

Hardver

52

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Tor predstavl ja mrežu servera koj i se povezuju radi bol je enkripci je podataka izaštite IP adrese korisnika Naš ci l j je da danas postanemo deo ovog predivnogprojekta i da se nađemo na svetskoj karti Tor servera

Brzina interneta i zakonske regulativePotrebno je imati na umu nekol iko bitnih stvari

1 Naš server = naša odgovornost2 Obavezno naznačite da ste vi administrator a ne korisnik istog servera3 Da posedujete internet brzinu od 2 Mbs

Ako ispunjavamo tri navedena pravi la i odgovornosti možemo se posvetitiadministrativnim poslovima

Instalacija i podešavanjaU ovom primeru koristimo Debi jan Vizi (eng Wheezy) odnosno Debi jan 7 verzi juna našem BBB uređaju Vi možete testirati i druge Linuks platforme Prvododajemo izvornu bibl ioteku u etcaptsourceslist faj l pokretanjem sledećekomande u terminalu

echo deb httpdebtorprojectorgtorprojectorg wheezy main gt etcaptsourceslistdtorlist

Zatim dodajemo izvorni kl juč vršimo ažuriranje sistema i instal iramo tor i tor-arm(Tor monitoring sistem)

gpg --keyserver keysgnupgnet --recv 886DDD89gpg --export A3C4F0F979CAA22CDBA8F512EE8CBC9E886DDD89 | sudo apt-keyadd -apt-get updateapt-get install debtorprojectorg-keyring -yapt-get install tor tor-arm egrep screen -y

Ovim smo uspešno završi l i instalaci ju Tor servera i sistema za monitoring odnosnonadgledanja našeg Tor servera Sledećom komandom radimo na podešavanj imaTor servera koja se nalaze u etctortorrc faj lu Obratite pažnju i izvršite potrebne

Hardver

53

Broj 33

izmenu u pol j ima IP adresa (eng Address) nadimka (eng Nickname) i kontaktpodataka (eng ContactInfo) pre pokretanja ove komande Kopiramo i pokrećemokomandu u celosti u terminalu

egrep -v ^(|$) etctortorrcORPort 443Address 19216811Nickname LibreTorRelayRelayBandwidthRate 100 KBRelayBandwidthBurst 120 KBContactInfo ltvi at gmail dot comgt irPort 8080DirPortFrontPage etctortorhtmlExitPolicy reject

Detal je o svim vrednostima nećemo iznositi u ovom broju LiBRE časopisa al ićemo o nj ima pisati u sledećem u kome ćemo pričati o zaštiti Tor servera imogućnosti podešavanja određenih izlaznih pravi la (eng ExitPolicy)

Nakon ovoga možemo primetiti da se u folderu etctor ne nalazi torhtml faj l Ovaj faj l ni je od vel ikog značaja i možete ga l ično napraviti i l i preuzeti jednu kopi ju- naprimer sa sledeće lokaci je

cp usrsharedoctortorhtml etctortorhtml

Opcije i Tor Arm monitoringDa bismo ispravno koristi l i Tor Arm potrebno je urediti još jednom etctortorrcfaj l i restartovati servis

echo -e ldquoDisableDebuggerAttachment 0n AvoidDiskWritesrdquo gtgt etctortorrcsudo service tor reload

Ukol iko žel ite koristiti Tor Arm za nadgledanje aktivnosti na serveru pokreniteprogram screen kl iknite na bdquoEnterrdquo i kucajte sudo -u debian-tor arm Naekranu ćete imati sl ičan prikaz

BeagleBone Black

54

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Hardver

55

Broj 33

Da bismo napusti l i screen program koristimo Ctrl + a + d i na taj način kada sesledeći put pri javimo na server kucamo samo screen -r u terminalu - i naći ćemose ponovo na čuvenom Tor Arm monitoring ekranu

Nakon svake promene konfiguracionih faj lova ako slučajno nismo nešto podesi l ikako treba restartujemo servise

U sledećem broju časopisa govorićemo o minimalnim podešavanj ima ikonfigurisanju izlaznog Tor servera (eng Tor Exit Node) opci jama sigurnosti isl ičnim detal j ima u vezi sa našim prvim projektom Do čitanja u sledećem broju

BeagleBone Black

LUGoNS BarCamp 4subota 7 mart 2015 godine

Četvrti LUGoNS-ov Barkemp (BarCamp) održaće se u Novom Sadu usubotu 7 marta 2015 godine na Fakultetu tehničkih nauka sa početkomu 12 časova

Ulaz je slobodan

Poziv za predaju radovaLUGoNS poziva sve zainteresovane da pošal ju svoje radove (predavanjaprezentaci je radionice i diskusi je) do 28 februara 2015 godine

Oblasti iz koj ih možete da pri javite vaše radove su

bull Slobodan softverbull Zaniml j iv hardverbull Hakerski zakonibull Sigurnosne noćne morebull Anonimnost i privatnost na internetubull Duboki veb (eng Deep Web)bull Soci ja lne mrežebull Soci ja lni inženjeringbull Hakovanje mobi lnih uređajabull Internet u oblaku (eng Clouds) ndash hakovanje razbi janje i neočekivano korišćenjebull DPI (eng deep packet inspection)bull Mreža i mrežna neutralnost ndash vlasništvo cenzura nadmudrivanje i pol itika bdquodefaktordquo standarda

bull Programiranje i programski jezici

Nemojte se ustručavati i slobodno nam se javite ako imate rad na gore navedenei l i sl ične teme koj i smatrate interesantnim

Stranica za predaju radova nalazi se na https events lugonsorgp=1658

Page 11: LiBRE 33 Lat

11

Broj 33

ES preko Direct3D-a i l i Valvov TuDži-El (eng ToGL) koj i emul ira Direct3D 9 prekoOpenGL-a nego zaseban API višeg nivoa Iako je u prošlosti bi lo sl ičnih projekatasvi oni su uglavnom imal i pretenzi ju da budu endžin (engine) i l i frejmvork koj i bitvorci igara koristi l i kao takav Takav pristup donosi dosta kompl ikaci ja i veoma jeteško takav projekat integrisati sa postojećim kodom Iz ovog razloga bgfx projekatnema pretenzi je da bude ceo endžin i l i frejmvork nego samo bibl ioteka koju svakomože lako da integriše u sopstveni projekat

bgfx bibl ioteka se trenutno koristi u nekol iko komerci ja lnih igara al i ima i dostainteresovanja za projekat kao osnove za pravl jenje korisničkih apl ikaci ja pa čak ialata za programere

Na projektu je do sada radi lo oko deset l judi Uglavnom su dodaval i podršku zanove platforme primere i l i su povezival i bibl ioteku sa drugim jezicima Što sebuduće saradnje na ovom projektu tiče sve je dobrodošlo čak i sȃmo korišćenjebibl ioteke a zahtevi za uvođenje novih mogućnosti unapređuju samu bibl ioteku

bgfx

12

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Predstavljamo

13

Broj 33

1 Podržava grafičke API-je

bull Direct3D 9bull Direct3D 11bull OpenGL 2 1bull OpenGL 3 1+bull OpenGL ES 2bull OpenGL ES 3 1bull WebGL 1 0

2 Podržava platforme

bull Android (14+ ARM x86 MIPS)bull asm jsEmscripten (1250)bull iOSbull Linuks (x86 x86_64)bull Nejtive klajent (Native Client PPAPI37+ ARM x86 x86_64 PNaCl)

bull OS Iks (OSX 109)bull Rasberi-paj (RaspberryPi - ARM)bull Vindouz (Iks-pe Vista 7 8 10)bull Vin-ar-ti (WinRT WinPhone 80+ )

bgfx

14

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Autor Stefan Nožinić

UvodrEFInd je softverska apl ikaci ja za EFI (Extensible Firmware Interface) sisteme kojaomogućava izbor više operativnih sistema na jednostavan način Ovo je samoupravnik buta (boot) i u ovom broju vam predstavl jamo o kakvom projektu je reč ikako se može primeniti

Šta je (U)EFIPre nego što predstavimo sam projekat trebalo bi prvo da skrenemo pažnju idetal jni je da predstavimo problematiku EFI je nastao kao zamena za dosadašnj iBIOS (Basic InputOutput System) i razvi la ga je kompani ja Intel Ovaj pristup jekasni je zamenjen UEFI standardom EFI tehnologi ja ima prednost u slučajevimakao što su

bull Pokretanje sistema na diskovima preko 2TB memori je korišćenjem GPTtehnologi je

bull Nezavisnost od specifične arhitekture procesorabull Modularan dizajnbull Dobro okruženje pre učitavanja operativnog sistema što podrazumeva i mrežnupodršku

Tehnologi ja omogućava upotrebu 32-bitnih i 64-bitnih adresa na procesorima koj ito podržavaju Rani je BIOS tehnologi ja to ni je omogući la već se uvek koristi la 16-bitna implementaci ja iz istori jskih razloga

Predstavljamo

15

Broj 33

Particiona šemaEFI tehnologi ja ima drugači ju šemu partici ja Dok je stari pristup podržavao samoMBR (Master Boot Record) šemu nova tehnologi ja podržava GPT šemu kojaomogućava veći broj primarnih partici ja Sa starim pristupom taj broj bio jeograničen na četiri primarne partici je od koj ih je svaka morala da ima kapacitetmanj i od 2TB

AplikacijeUEFI podržava izradu apl ikaci ja koje bi se pokretale nezavisno od operativnogsistema Ove apl ikaci je se mogu naknadno instal irati Primer takvih apl ikaci ja supokretači (loader) operativnih sistema kao i upravnici butovanja

EFI sistemska particijaEFI podržava posebnu partici ju za smeštanje raznih potrebnih informaci ja kao štosu potrebni podaci za rukovanje računarom i specifične apl ikaci je Ova partici ja jenajčešće FAT32 sistem datoteka

rEFInd

16

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

But menadžer i but louder - ima razlikeOd popularizaci je GRUB upravnika mnogi korisnici su ostal i bez objašnjenja kakvaje razl ika između but loudera (boot loader) i but menadžera (boot manager) Ovose dešava jer GRUB pruža obe usluge u sklopu jednog programa pa se time teževidi razl ika između ova dva pojma But menadžer je upravnik pomoću kojeg jemoguće izabrati operativni sistem za pokretanje On ne zna ništa speci ja lno ooperativnom sistemu pa time ne zna ni kako da ga pokrene On samo zna datreba da pokrene but louder za taj sistem Kada je sistem izabran pokreće sespecifičan but louder za taj sistem koj i je zadužen za dal j i proces pokretanjakernela Za razl iku od GRUB upravnika rEFInd pruža samo usluge but menadžerašto u početku može zvučati poražavajuće za ovaj projekat Kada uzmemo u obzirda većina sistema danas ima but louder u sklopu kernela (ukl jučujući i Linuks odnovi j ih izdanja) ovaj problem je prevaziđen

Predstavljamo

17

Broj 33

InstalacijarEFInd postoj i kao deb i kao rpm paket al i postoj i i zapakovan kao zip arhivaZahval ju jući tome paket je moguće instal irati upotrebom dpkg komande nadistribuci jama baziranim na Debi janu kao i upotrebom rpm komande nadistribuci jama koje koriste taj način pakovanja paketa Za Ubuntu postoj i i PPArepozitori jum pa rEFInd može biti instal iran na sledeći način

sudo apt-add-repository pparodsmithrefindsudo apt-get updatesudo apt-get install refind

Nezavisno od toga koj i način od gore opisanih koristite rEFInd će automatski bitiprebačen na ESP i biti postavl jen kao podrazumevani upravnik

KonfiguracijarEFInd bi trebalo da vam pruži zadovol javajuću funkcionalnost bez dodatnekonfiguraci je posle instalacionog procesa On će automatski detektovati loudereoperativnih sistema korišćenjem pretrage po svim partici jama koje prepozna Uslučaju da ste napredni j i korisnik i da žel ite da modifikujete ponašanje rEFInda tomožete uraditi izmenom njegove konfiguracione datoteke Postoj i g lobalnakonfiguraci ja i konfiguraci ja za svaki sistem posebno Ovaj tekst bi postao previšedugačak kada bismo ulazi l i u detal je same konfiguraci je pa vam zatopreporučujemo ako imate potrebu za dodatnom konfiguraci jom da posetitedokumentaci ju projekta i l i ako imate neke nedoumice da kontaktirate s namapreko naše e-pošte

Za krajŽelel i bismo da ovaj tekst zakl jučimo ocenom da je ovaj projekat dosta zaniml j ivda pruža zadovol javajuću funkcionalnost i da omogućava korisnicima koj i koristeovaj sistem pokretanja lako pokretanje svoj ih operativnih sistema Još jednomžel imo da vam skrenemo pažnju da nam se obratite i ukažete ako smo nešto važnopropusti l i da pomenemo i l i ako nam se negde potkrala greška

Korisni l ink http wwwrodsbookscomrefind

rEFInd

18

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Autor Nikola Hardi

Opšte je poznato da su računari dobri u radu sa brojevima Međutim vremenom suse i potrebe korisnika i alati za programiranje računara razvi ja l i i rad sa drugači j imtipovima podataka je postao uobičajen i znatno jednostavni j i nego rani je Svi smoimal i pri l iku da radimo sa programima za obradu fotografi ja video materi ja la i l izvučnih zapisa Multimedi ja je ipak tema koja prevazi lazi jedan uvodni kurs o C-ual i do kraja ovog seri ja la ćemo se dotaći i tih tema Za početak osvrnućemo se narad sa tekstualnim podacima na C način

Stringovi na C načinDefinici ja tekstualnog podatka u sferi računarstva se uglavnom svodi na to da jetekst niz karaktera a karakteri su znakovni simbol i Iako imamo mogućnost daradimo sa tekstom i l i multimedi jom računari ipak razumeju samo brojeve pamoramo tako da im predstavimo i tekst Postoje razni standardi kako se pojedinikarakteri predstavl ja ju u memori j i računara između ostalog najpoznati j i su ASCIIEBCDIC UTF i td EBCDIC je standard koj i je prisutan u Eplovom (eng Apple) svetu iviše nema tol iko važnu ulogu ASCII je standard koj i je vrlo prisutan i danas UTF jenastao kao proširenje ASCII standarda javl ja se u više vari janti i uvodi podršku zapisma razl ičita od abecede (kinesko japansko ćiri l ica arapsko i mnoga druga)

Važno je napomenuti da je originalni ASCII standard propisivao 7 bitova za jedankarakter što je dalo prostora za 128 karaktera Među tim karakterima se nalazecifre mala i vel ika slova engleskog alfabeta i niz kontrolnih karaktera Kontrolnikarakteri su oznake za novi red prazno mesto tabulator upravl janje štampačima(vraćanje glave štampača na početak) rad sa terminal ima (alarm i l i obaveštenje

Kako da

Uvod u programski jezik CRad sa stringovima (9 deo)

19

Broj 33

da se nešto dogodi lo) ASCII standard je proširen na 8 bitova odnosno ceo jedanbajt i sada podržava 256 karaktera Potražite na internetu termin bdquoASCII tabelardquo dabiste stekl i uvid u to kako izgleda tzv tabela ASCII karaktera

Rad sa pojedinačnim znakovima ne obećava mnogo Postoj i realna potreba zaradom sa rečima rečenicama l ini jama teksta itd Podaci koj i se sastoje od više odjednog karaktera se u domaćoj l i teraturi nazivaju znakovnim niskama madaodomaćen je i naziv bdquostringrdquo koj i je i mnogo češće u upotrebi U programskomjeziku C se stringovi predstavl ja ju običnim nizovima karaktera (char niz[]) a krajteksta se označava NULL karakterom odnosno speci ja lnim znakom 0 či jabrojevna predstava je pogađate nula Ovakva predstava tekstualnih podatakanosi sa sobom i pojedine kompl ikaci je Gotovo svi savremeni jezici poznaju tipstringa dok su u C-u stringovi ipak samo obični nizovi

Da se podsetimo nizovi u C-u su zapravo pokazivači na deo u memori j i Kadapokušamo da pristupimo jednom elementu niza tada se vrši operaci jabdquodereferenciranjardquo sa zadatim odstupanjem Sledi nekol iko primera koj i i lustrujurad sa nizovima na primeru nizova karaktera

char niz1[] = zdravoniz1[0] = Z

char niz2[5]niz2[0] = 0niz2[1] = kniz2[2] = 0

Pri deklaraci j i niza 1 ni je zadata dužina zato što je u jednom izrazu zadata iinici ja l izaci ja niza koja glasi ldquozdravordquo Prevodi lac može sam da zakl juči kol ikomemori je je potrebno

U drugom primeru je kreiran niz karaktera dužine 5 Međutim popunjena su samoprva tri mesta Primećujete razl iku između prvog i trećeg elementa Prvi je cifra 0(uokviren je navodnicima) a treći je brojčana vrednost 0 koja označava krajstringa

Može se primetiti još jedna razl ika u data dva primera U prvom primeru sukorišćeni dvostruki navodnici dok su u drugom korišćeni jednostruki Razlog za to

Uvod u programski jezik C

20

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

je što se znakovni nizovi koj i su uokvireni dvostrukim navodnicima smatrajustringovima i podrazumevano im se dodaje bdquoterminatorrdquo odnosno znak NULL koj ioznačava kraj stringa Jednostruki navodnici se iskl jučivo koriste za predstavl janjepojedinačnih karaktera Ovo znači da zapisi ldquoardquo i a nisu jednaki Prvi zapis jedužine 2 jer ima i znak NULL koj im je završen

Ispisivanje i učitavanje stringovaPre nego što nastavimo dal je biće objašnjen jednostavan način za ispisivanje iučitavanje stringova pomoću standardnog ulazaizlaza Da se podsetimobibl ioteka za standardni ulazizlaz (ispis podataka u konzol i odnosno terminalu) jestdioh Ukol iko se koristi formatirani ispis potrebno je funkci jama printf() iscanf() proslediti format string koj i sadrži speci ja lan znak s čime je označenoda žel imo da ispišemo znakovni niz sve do NULL karaktera Drugi način jeupotrebom funkci ja puts() gets() i getline() iz bibl ioteke stringh Sledi primer

include ltstdiohgt include ltstringhgt int main()

char niz1[] = Zdravo svete

printf(sn niz1)

scanf(s niz1)puts(niz1)

return 0

Može se primetiti da je u slučaju funkci je printf() potrebno naglasiti speci ja lnimkontrolnim karakterom n da nakon ispisa treba preći u novi red Funkci ja puts() topodrazumevano radi

Za ove i sve druge funkci je dodatnu pomoć je moguće pronaći u Linuksovim manstranicama u odel jku 3 koj i je posvećen standardnim bibl iotekama Recimo mangetline sadrži detal jno uputstvo o funkci j i getline()

Kako da

21

Broj 33

Kopiranje stringovaKao što je u prethodnom odel jku napomenuto stringovi su u C-u samo običninizovi To znači da sledeći kod verovatno neće uraditi ono šta bi bi lo očekivano

niz1 = niz2

Ovime smo pokazivaču niz1 bdquorekl irdquo da pokazuje tamo gde i pokazivač niz2 Efektivno oni sad pokazuju na isti tekst međutim ako izmenimo niz1 to će seodraziti i na niz2 a važi i obrnuto Ovime smo dobi l i samo dva pokazivača na istideo memori je a uglavnom to ni je bio ci l j

Drugi način kako bismo sadržaj drugog niza mogl i da kopiramo u prvi niz je petl jakojom bismo kopiral i element po element Pošto je operaci ja kopiranja stringovavrlo često potrebna postoj i standardna bibl ioteka za rad sa stringovima koja sezove stringh a funkci ja za kopiranje stringova je strcpy()

strcpy(niz1 niz2)

Dati primer kopira sadržaj niza 2 u niz 1 Kopira se element po element sve dok seu nizu 2 ne naiđe na NULL karakter Ovakvo kopiranje (element po element) seinače u stranoj l i teraturi naziva i bdquodeep copyrdquo i vrlo često se sreće u radu sastrukturama podataka gde je potrebno obići celu strukturu podataka i svakielement kopirati a strukturu opet izgraditi u drugom delu memori je

Zaniml j ivo je što je kopiranje stringova moguće pojednostaviti ukol iko definišemonovi tip podatka kao strukturu koja sadrži niz karaktera i potom izvršimo kopiranjeOvo je trik koj i se uglavnom ne koristi u praksi i spomenut je samo kaozaniml j ivost

include ltstringhgt struct str char niz[50]

int main()

struct str s1struct str s2

Uvod u programski jezik C

22

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

strcpy(s1niz zdravo)s2 = s1

s2niz[0] = Z

puts(s1niz)puts(s2niz)

return 0

Kreirana je struktura str koja sadrži pol je niza karaktera pod nazivom niz Pozivomfunkci je strcpy() kopiramo string ldquozdravordquo u s1 čime smo bdquonapuni l irdquo sadržajobjekta s1 Potom je izvršena redovna dodela čime je sadržaj objekta s1 kopiran us2 Zatim je izmenjen samo prvi karakter objekta s2 i oba stringa su ispisanaPrimećujete da su kopirani svi znakovi a da je izmenjen samo drugi objekatZaniml j iv trik

Poređenje spajanje i pretraga stringovaDruga vrlo česta situaci ja je poređenje dva stringa Ukol iko bi poređenje bi loizvršeno upotrebom redovnog operatora za poređenje == tada bi u stvari bi lepoređene samo adrese na koje pokazuju pokazivači tih stringova jer da sepodsetimo stringovi su u C-u samo obični nizovi Ispravan način za poređenje dvastringa je pozivanjem funkci je strcmp() či ja je povratna vrednost 0 ukol iko su jojprosleđeni stringovi sa jednakim sadržajem

include ltstringhgt int main()

char niz1[] = zdravochar niz2[] = zdravo

if( strcmp(niz1 niz2) == 0)puts(Stringovi su jednaki)

elseputs(Stringovi nisu jednaki)

return 0

Kako da

23

Broj 33

Funkci ja strcmp() poredi svaki element prosleđenih nizova pojedinačno a dobraje vežba implementiranje nove funkci je strcmp() koja će unutar petl je da porediodgovarajuće elemente prosleđenih nizova i potom vratiti rezultat 0 ukol iko su svielementi jednaki Potrebno je pripaziti na situaci ju kada su stringovi razl ičitihdužina

U svetu računara spajanje dva sadržaja se zove konkatenaci ja Odatle i nazivfunkci je za spajanje dva stringa strcat() Važno je uveriti se da je string u koj i sedodaje sadržaj dovol jno vel ik da ga prihvati inače može da dođe do nežel jenogprepisivanja u memori j i uništavanja drugih podataka i neispravnog ponašanjaprograma

Pretraga unutar stringa se može obaviti funkci jom strstr() Ova funkci ja kaoparametre očekuje pokazivač na niz karaktera (string) u kojem je potrebno pronaćistring koj i je prosleđen kao drugi parametar Povratna vrednost je pokazivač nadeo memori je gde se žel jeni string prvi put pojavio

Sledi malo opširni j i primer koj i i lustruje spajanje pretragu i kopiranje stringova

include ltstringhgt int main()

char niz_a[50] = LiBRE je char niz_b[] = najbolji casopischar niz_c[] = e-magazin

strcat(niz_a niz_b)puts(niz_a)

char cilj = strstr(niz_a casopis)strcpy(cilj niz_c)

puts(niz_a)

return 0

Uvod u programski jezik C

24

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Pretvaranje tipova podataka u stringove ipretvaranje iz stringovaPretvaranje podataka iz jednog tipa u drugi i l i kastovanje (eng type casting) se zavećinu tipova vrši jednostavno pisanjem tipa u zagradama na primer (int)523 Stringovi su i po ovom pitanju drugači j i Postavl ja se pitanje šta pretvoriti ucelobrojni tip - da l i adresu na koju pokazuje pokazivač niza koj i predstavl ja stringPrvi element Šta ako taj string ni je broj Predstavićemo rešenje za konverzi jubrojeva u stringove i obrnuto

Ispis podataka na ekranu se takođe može smatrati konverzi jom Broj sa pokretnimzarezom je u memori j i prikazan na pomalo čudan način a pozivom funkci jeprintf() kada je kao format zadat f na ekranu ćemo dobiti razuml j iv niz znakovaSl ičan rezultat možemo dobiti funkci jom sprintf() a jedina razl ika u odnosu naprintf() je ta što sprintf() kao prvi argument očekuje pokazivač na string dok sudrugi (format string) i treći (argumenti koj i se povezuju sa formatnim stringom)sl ični kao kod funkci je printf()

Kod pretvaranja stringova u brojevne tipove može poslužiti funkci ja sscanf() kojase ponaša sl ično kao funkci ja scanf() s tim što je prvi argument adresa(pokazivač na string) koju žel imo da skeniramo u nadi da će se poklopiti saformalnim stringom koj i je drugi argument a rezultati će biti sačuvani u adresamakoje su prosleđene kao 3 4 i ostal i parametri Drugi način za pretvaranje stringovau celobrojne brojeve i brojeve sa pokretnim zarezom su funkci je atoi() i atof()

Funkci je koje koriste formatni string su česte u jeziku C i zaslužuju posebnu pažnjumeđutim to je priča za poseban članak U ovu klasu funkci ja spadaju recimo ifunkci je za rad sa datotekama

BezbednostRad sa stringovima može da bude izuzetno opasna stvar po pitanju bezbednostiprograma Ukol iko se niz karaktera ne završava NULL karakterom svašta može dapođe po zlu pri pozivu funkci ja kao što su strcpy() strcmp() i sl ične Cela klasatih funkci ja se oslanja na postojanje znaka koj i označava kraj stringa Kada stringni je propisno završen tada te funkci je mogu da zalutaju u deo memori je vanstringa i svašta može da pođe po zlu Ovakav tip napada se inače zoveprekoračenje bafera (eng buffer overflow) Preporučen način kako da izbegnete

Kako da

25

Broj 33

Pregled popularnosti GNULinuxBSDdistribuci ja za mesec februar

Distrowatch

Pad ltPorast gtIsti rejting =(Korišćeni podaci sa Distrovoča)

12345678910111213141516171819202122232425

MintUbuntuDebianopenSUSEelementaryMageiaFedoraManjaroCentOSLXLEArchBodhiAndroid x86Kal iPCLinuxOSPuppyRobol inuxLubuntuQ4OSBlack LabNetrunnerSimpl icityEvolveZorin4MLinux

2919gt1778gt1701gt1323gt1204gt1174gt1166gt1028lt1020gt965gt957gt907gt900lt760gt742lt732gt695gt670gt663gt655gt652gt629gt607gt583gt517=

takve nepri jatne situaci je pri radu sastringovima je da koristite verzi jefunkci ja koje su ograničenemaksimalnom dužinom stringa kaošto su strncpy() strncat() strncmp() i td Sve te funkci je kaotreći parametar zahtevaju broj koj iodređuje maksimalnu očekivanudužinu stringa Još jedna vrlo korisnafunkci ja je strlen() či j i zadatak je daodredi dužinu stringa Budite pažl j ivi ovo je prvo mesto gde se tražebezbednosni propusti u programimaNe verujte podacima koj i spol ja ulazeu vaš program a pogotovo kada je rečo stringovima

Uvod u programski jezik C

26

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Autor Dejan Maglov

Projekti slobodnog softvera obično počinju kao projekti pojedinca i l i male grupeprogramera a koj i rade na razvoju softvera či j i je ci l j da zadovol j i neke od nj ihovihl ičnih potreba Projekat će se smatrati uspešnim ukol iko se šira zajednicazainteresuje za njega nakon što prepozna korisnost softvera ne samo za pojedincekoj i su započel i projekat već i za širu zajednicu Kada je u pitanju slobodni softvervremenom je postala stalna praksa da se zajednica umeša u razvoj projekataDobri projekti sami privlače zajednicu l judi koj i su zainteresovani za nj ih i ona uvećini slučajeva preuzima na sebe testiranje pobol jšanje funkcionalnosti održavanje i tehničku podršku projekta

Zajednice slobodnog softvera mogu da se okupe oko projekta slobodnog softverapo teritori ja lnom principu i l i da nastanu kombinaci jom ovih principa

Primeri

bull LiBRE projekat okupl ja zajednicu oko projekta bez teritori ja lnog ograničenjabull LUGoNS (Linux User Group of Novi Sad) je zajednica korisnika Linuksa poteritori ja lnom principu bez obzira na konkretan projekat

bull Ubuntu-rs zajednica koja je kombinaci ja okupl janja zajednice oko konkretnogprojekta (Ubuntu) i teritori ja lnog principa koj i se ograničava na teritori ju Srbi je

Ova sinergi ja projekata i korisnika slobodnog softvera ima više prednosti i zakorisnike i za projekat Projekat se na ovaj način brže razvi ja dobi ja na

U potrazi za idealnom distribucijom

Socijalni kriterijumi za izbor idealnedistribucije (6 deo)

Oslobađanje

27

Broj 33

funkcionalnosti greške se brzo ispravl ja ju i td Korisnici dobi ja ju osećaj dapripadaju grupi druže se sa istomišl jenicima učestvuju u promoci j i kval itetnihpojedinaca itd

Dve najvažni je uloge lokalnih zajednica za GNULinuks distribuci je su

1 pružanje tehničke podrške i edukaci je na maternjem jeziku2 rad na lokal izaci j i i pri lagođavanje distribuci je lokalnim potrebama

Informaci ja da postoje lokalne zajednice slobodnog softvera je od naročitogznačaja za početnike i korisnike koj i nedovol jno dobro znaju strane jezike(naročito engleski jezik) Ako izuzmemo komerci ja lne projekte otvorenog koda(Red Het SUSE) ne postoje zvanične škole i kursevi za slobodni softver Zaedukaci ju početnika je uglavnom zadužena zajednica a jasno je da je učenje namaternjem jeziku uvek lakše nego na bi lo kom drugom stranom ma kol ikodobro ga poznajete

Forumi i viki stranice lokalnih zajednica su prave bibl ioteke u koj ima korisnicimogu da nađu većinu odgovora na svoja pitanja a za sva ostala tu su forumi iIRC kanal i zajednica na koj ima uvek ima nekoga i koj i imaju već gotova rešenjaza vel iki broj problema

U potrazi za idealnom distribucijom

28

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Lokalne zajednice kao kriterijum za izbor idealnedistribucijePočetnicima i korisnicima koj i ne vladaju dobro engleskim jezikom toplopreporučujemo da biraju GNULinuks distribuci je koje imaju aktivnu lokalnuzajednicu Ovladavanje novim operativnim sistemom je mnogo lakše ukol iko vambdquoleđa čuvardquo lokalna zajednica na koju se uvek možete osloniti

Već smo spomenul i da su popularni je GNULinuks distribuci je namenjenepočetnicima Slučaj je isti i sa lokalnim zajednicama okupl jenim oko nj ih Ovomeđutim ne znači da je kval itet usluga koje nude manje popularne lokalnezajednice okupl jene oko distribuci ja namenjenih napredni j im korisnicima loši j i Manje popularne distribuci je okupl ja ju manje l judi a l i zato oni poseduju većeznanje Iskustvo sa zajednicama okupl jenim oko slobodnog softvera je uglavnompozitivno i ukazuje na to da kval itet usluga koje one nude korisniku ni je uslovl jenpopularnošću i masovnošću zajednice nego iskl jučivo njenom (ne)aktivnošću

U svakom slučaju dosadašnj i saveti za izbor idealne distribuci je važe i dal jeSoci ja lni aspekt slobodnog softvera je samo dodatni faktor koj i vam može pomoćipri donošenju odluke kada se dvoumite između nekol iko mogućih rešenja

Još uvek ne postoj i na jednom mestu potpuni i ažurirani spisak svih aktivnihsrpskih zajednica Nešto najbl iže tome može da se nađe na adresihttps pulsslobodewordpresscom Za informaci je o nekim drugim lokalnimzajednicama koje možda postoje al i nisu na ovom spisku moraćete sami dapretražite internet

Lokalizacija kao kriterijum za izborZa lokal izaci ju GNULinuks distribuci ja i GNU programa odgovorni su pojedinci ilokalne zajednice Sasvim sol idnu srpsku lokal izaci ju mogu imati i projekti koj iuopšte nemaju svoju lokalnu zajednicu a isto tako lošu lokal izaci ju mogu imati iprojekti sa dobrom lokalnom zajednicom Sve je stvar prioriteta zajednica iaktivnosti pojedinaca

Pravu i kontrol isanu lokal izaci ju može imati samo lokalni projekat Ovakvihprojekata u Srbi j i ima malo i teško se probi ja ju čak i u lokalu u konkurenci j isvetskih projekata Istina je da mnoge veće GNULinuks distribuci je imaju srpskulokal izaci

Oslobađanje

29

Broj 33

ju u ponudi pa se možda sl ični lokalni projekti koj i su usmereni samo na striktnulokal izaci ju smatraju nepotrebnima Uzvodna lokal izaci ja u slučaju Srbi je vrlo čestobude veoma loše čak nakaradno sprovedena Jedna polovina programa jelokal izovana srpskom ćiri l icom a druga latinicom Ako postoj i još delova sistemakoj i uopšte ni je lokal izovan onda se pojavl ju ju i delovi programa koj i su naengleskom Zato ćemo se vratiti na prvu rečenicu ovog pasusa i ponovo utvrditi dasamo lokalni projekat može potpuno kontrol isati pravu srpsku lokal izaci ju

U Srbi j i za sada imamo dva aktivna projekta GNULinuks distribuci je ndash TriOS(http triosrs) i Serbian (http wwwdebian-srbi ja iz rspserbianhtml) Obaprojekta su mlada i imaju svoj ih prednosti i mana Kome treba lokal izovanoperativni sistem može da proba jedan od ova dva projekta

U potrazi za idealnom distribucijom

30

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Iako ove dve domaće distribuci je nisu baš naj idealni je interesantno je probati ih iuporediti sa drugim distribuci jama

Za kraj serijalaNamera nam je bi la da kroz ovaj seri ja l o kriteri jumima pri izboru idealnedistribuci je definišemo većinu kriteri juma pri izboru i pokažemo zašto je teškoodgovoriti na jednostavno pitanje bdquoKoju mi distribuci ju preporučujeterdquo

Ni na samom kraju nismo dal i konkretan odgovor na pitanje koja je idealnaGNULinuks distribuci ja Suviše je subjektivnih ocena da bi se mogao datikonkretan odgovor Smatramo da je jako teško napisati neki algoritam izbora pokriteri jumima koje smo identifikoval i i definisal i a možda je čak i nemoguće poštose izlazi stalno menjaju Izlazi iz tog algoritma su GNULinuks distribuci je koj ih izdana u dan ima sve više a i one stare se stalno menjaju

Sam seri ja l bdquoU potrazi za idealnom distribuci jomrdquo neće biti završen samo zato štose više neće baviti kriteri jumima pri izboru nego će pokušati da predstavl jaGNULinuks distribuci je koje su po nečemu bdquoidealnerdquo

Oslobađanje

31

Broj 33

ORM

Autor Dejan Čugal j

Object relation mapping (ORM)

ORM (eng Object RelationMapping) je način postizanja traj-nosti (eng persistence) objekataunutar relacionih baza podatakaModel deluje kao posrednik nalogičkom delu apl ikaci je Automat-ski presl ikava podatke iz objekata ubazu i nazad na zahtev apl ikaci jeDa bismo objasni l i kako ovo sveradi moramo da vam predstavimoORM frejmvork (eng framework)programa otvorenog koda -Hajbernejt (eng Hibernate -http hibernateorgorm)

Šta je ORMUkratko ORM je automatizovano transparentno presl ikavanje objekatakorišćenjem metapodataka koj i opisuju mapiranje veze između objekta i baze

ORM (2 deo)

Slobodni profesionalac

32

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

podataka u apl ikaci jama koje su napisane u objektno ori jentisanim programskimjezicima Apl ikaci ja komunicira sa ORM-om preko njegovog vlastitog API-ja (engapplication programming interface) i određenih objekata Ova komunikaci ja jepotpuno odvojena od komunikaci je koja se odvi ja između ORM-a i baze podatakapreko SQL-a i DBC-a

Da bi se postigla i dostigla potpuna snaga ORM-a u apl ikaci j i koju projektujemonikako se ne sme iskl jučiti znanje relacionih modela SQL jezika te poznavanjeDBMS-a u kome se radi ORM ni je ništa drugo do srednj i sloj između gorepomenutih tehnologi ja i objektno ori jentisanog programiranja kao što smo to dosada već više puta naglasi l i

Implementacija ORM-aPostoje razl ičiti načini implementaci je ORM-a Mark Fasl (Mark Fussel) je 1997definisao četiri nivoa

1 bdquoČistrdquo relacioni način2 Slabo mapiranje objekata3 Umereno mapiranje objekata4 Potpuno mapiranje objekata

bdquoČistrdquo relacioni način

Cela apl ikaci ja ukl jučujući i korisnički interfejs dizajnirana je relacionim modelom iSQL relacionim operatorima Ovakav pristup je odl ičan za male projekte Direktanpristup SQL-u omogućava fino podešavanje svakog aspekta upita koj i se postavl jabazi podataka Osnovne mane su portabi lnost (prenosivost) i održavanje ovakvihsistema pogotovo ako se planira korišćenje apl ikaci je na duži rok Ovakvi sistemimasovno koriste sačuvane procedure (eng stored procedures) što znači da jeposlovna logika (eng busines logic) prebačena na samu bazu podataka

Slabo mapiranje objekata

Entiteti su predstavl jeni kao klase i mapiranje se radi ekspl icitno ka relacionimtabelama SQLJDBC je sakriven od poslovne logike korišćenjem poznatih šablona(patterns)

Umereno mapiranje objekata

Slobodni profesionalac

33

Broj 33

Dizajn apl ikaci ja se svodi na objektne modele SQL se generiše u vremekompaj l iranja (eng build-time) i l i u vreme izvršavanja (eng run-time) Specifikaci jaupita nad bazama podataka se radi na objektno ori jentisanom jeziku Ovakvisistemi se koriste u apl ikaci jama srednj ih vel ičina kod koj ih je bitna portabi lnostizmeđu razl ičitih sistema za upravl janje bazama podataka (DBMS)

Potpuno mapiranje objekata

Podržava sofisticirano objektno model iranje nasleđivanje i pol imorfizamEfikasnost dobi janja podataka je na visokom nivou i koriste se metode kao što sulenjo učitavanje (eng lazy loading) i strategi ja keširanja (eng caching) Implementaci ja je transparentna u apl ikaci jama Ovaj nivo je jako teško dostići Pojedincu su potrebne godine razvoja da postigne ovakvu fleksibi lnost pristupa imanipulaci ja u relacionim bazama podataka Upravo ovaj nivo se postiže ako sekoriste rešenja ORM-a kao što je Hajbernejt

Zašto ORMImplementaci ja ORM rešenja pogotovo ako seprvi put susrećete sa ovim modelom može dabude veoma frustrirajuća i malo teža zaimplementaci ju Kada ovo kažemo misl imo daprogramer koj i implementira ORM i hoće da istibude kval itetno urađen mora da posedujepredznanje objektno ori jentisanog programiranjai naprednih tehnika kao što su nasleđivanje ipol imorfizam

Ovo inicira fundamentalna pitanja

bull Pa zašto bi iko onda implementirao ovako nešto kompleksnobull Vredi l i truda upuštati se uopšte u ORM

Odgovor ni je jednostavan Dosadašnja iskustva u korišćenju ORM-a i njegovapopularnost već daju odgovor na postavl jeno pitanje Očigledno je da su benefitikoje donosi ovaj model veći od kompleksnosti njegove implementaci je a to su

Hibernate ORM

34

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Veća produktivnost

ORM smanjuje kol ičinu koda potrebnog za ostvarivanje trajnosti podataka Ovoomogućava programeru da vreme koje bi utrošio na ručno mapiranje podatakautroši na druge delove apl ikaci je

Lakše održavanje

Manje l ini ja koda osigurava bol ju razuml j ivost (i možda bol j i kval itet koda) jernaglašava apl ikaci jsku logiku ORM takođe ublažava uticaj nastal ih promena kaošto su promene u bazi strukturi tabela i td

Prenosivost

Većina ORM rešenja podržava sisteme za upravl janje bazama podataka raznihproizvođača ORM u potpunosti odvaja sloj apl ikaci je od stvarne SQL komunikaci jekoja se odvi ja u pozadini Time omogućava da se pišu apl ikaci je koje će moći da seizvršavaju na razl ičitim bazama podataka bez potrebe za dodatnim kodiranjemOva komunikaci ja se odvi ja sa programskim interfejsima ORM-a nezavisno oDBMS-u sa koj im je u bi lo kom momentu povezan ORM takođe omogućava lakšiprelaz sa manj ih na veće baze podataka tokom razvoja apl ikaci je

Uvidel i smo da trenutno postoje dve paradigme koje se bdquosudarajurdquo i koje supodjednako dobre same za sebe Relaciona paradigma potvrđuje da sve što jeizgrađeno na matematičkim osnovama je i trajno u smislu kval iteta koje posedujeU domenu u kom relaciona paradigma egzistira ona je ako je to u ovo vremeuopšte moguće tvrditi nezamenj iva

Ono što otvara pitanja i daje razlog za sumnju je koja je krajnja granicaupotrebl j ivosti relacione paradigme tj kol iki su kapaciteti složenosti zahtevaapl ikaci ja sa kojom može da se nosi Praksa je pokazala da je sasvim mogućebdquoizvestirdquo složene projekte - al i održavanje skalabi lnost razuml j ivost prenosivost -pitanja su sa koj im se relaciona paradigma teško može izboriti

Sa druge strane svoj habitat u informacionim tehnologi jama je našla i objektna

Slobodni profesionalac

35

Broj 33

paradigma Iako na prvi pogled ova dva modela nemaju ništa zajedničko - što je uneku ruku i istinito gledajući prirodu podataka koj im manipul išu - praksa jepokazala da su usko povezane i skoro da imaju sinaptičku vezu

Pitanje bdquokako spoj iti te sinapserdquo dovelo je do žučnih rasprava u uskim naučnimprogramersko-administratorskim krugovima Rodi l i su se razni model i a l i jedan jeiskočio i polako ulazi u široku primenu - a to je ORM Svoj im supti lnim pristupomproblemu nekompatibi lnih paradigmi nekako je uspeo da stvori taj nedostajućibdquoelektrični signalrdquo koj i ih je povezao Ovo je omogući lo da dve strane koje susvaka za sebe u svom domenu ostavi le i ostavl ja ju duboki trag u informacionimtehnologi jama sarađuju i donesu novi kval itet

Korisni l inkovi

[1] Hibernejt http hibernateorg[2] Viki http googlLlZulw[3] Tutori ja l i http googlCGzvnc

Hibernate ORM

36

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Autor Kriptopank

Šta su zapravo metapodaci Najkraće rečeno to su podaci o podacima i l iinformaci je koje opisuju podatke

Najpre da napravimo razl iku između podataka i metapodataka Podaci sunaprimer snimak (i l i transkript) vaših telefonskih razgovora sadržaj poruka kojepišete primate i l i šal jete podaci koje kačite na internet i l i preuzimate pretrageGuglom postovi na forumima dopisivanja na IRC kanal ima i l i drugim četovimaaudio i video snimci Skajp razgovora i tako dal je

Hajde da vidimo šta bi bi l i odgovarajući metapodaci za ove primere

bull Za telefonske razgovore metapodaci mogu biti lokaci ja učesnika brojevitelefona trajanje razgovora IP i MAC adresa

bull Za poruke četove i Skajp i l i druge video-audio komunikaci je sl ično je kao kodtelefonskih razgovora

To su samo metapodaci

Internet mreže i komunikacije

37

Broj 33

bull Kod foruma i pretraga Guglom ima malo manje metapodataka al i Gugl i raznisajtovi i forumi ionako čuvaju logove o korisnicima što su takođe metapodaci

Ako do sada koj im slučajem niste uvidel i opasnost po privatnost u ovimmetapodacima koje svako od nas smrtnika svakodnevno ostavl ja za sobom usvetu interneta i ostal ih digitalnih komunikaci ja nadamo se da će vas ovaj primermakar podstaći na razmišl janje a možda i na nešto više

Zamisl i te da neko (zvaćemo ga posmatrač) stalno sakupl ja metapodatke koje zasobom ostavl jate kao mrvice hleba Posmatrač recimo zna da se nalazite naautoputu nedaleko od famoznog Feketića da se ne krećete da zovete AMSS zatimšlep službu i možda taksi a l i ne zna šta ste razgovaral i I l i posmatrač vidi da steprvo zval i aerodrom Nikola Tesla pa odmah potom taksi a l i ne zna šta sterazgovaral i I l i posmatrač vidi da ste zval i prvo šest brojeva či je identitete takođezna pa vidi da se oni zatim kreću ka vama - GPS (eng Global Positioning System) pa zatim pica servis Mekdonalds i neku poznatu prodavnicu kineske hrane al i nezna šta ste razgovaral i

Posmatrač ne mora da bude mnogo pametan niti da prisluškuje vaše razgovore dabi shvatio šta se dešava i l i šta će se desiti Sasvim mu je jasno da vam je u prvomprimeru auto stao na autoputu zatim da ste se u drugom slučaju uputi l i naaerodrom i da možda putujete van zemlje i l i ste poslal i taksi po nekoga saaerodroma a da u trećem slučaju okupl jate žurku kod vas Više možete pogledatina http googl7vUjP

Iako su to bdquosamordquo metapodaci treba biti svestan da ti metapodaci o vama stvarajujednu digitalnu sl iku i l i bol je reći digitalni mozaik i na neki način vas jedinstvenoodređuju Pogotovo kada se planski prikupl ja ju na više nivoa (kompjuter pametnitelefon pametni automobi l i kreditna kartica) metapodaci čine vaš digitalniidentitet Al i da stvar bude još gora ta sl ika o vama ne mora nužno biti istinita jerse lako može lažirati Recimo možete zameniti telefone i l i automobi le sa nekimnamerno i l i slučajno i l i vam neko može jednostavno ukrasti telefon laptop i l ikreditnu karticu Zaniml j iv video http googlKO1fKf

Evo jednog primera koj i vas može uvući u vel ike nevol je Recimo da prolazitenekom zabačenom ul icom i da vam neprimetno ispadne telefon al i vi to neprimetite i nastavite dal je svoj im putem U toj ul ici se samo nekol iko minutakasni je desi neko ubistvo i vas pozovu u pol ici ju kao osumnj ičenog Ako koj im

To su samo metapodaci

38

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

slučajem nemate dobar al ibi i l i nemate svedoka da posvedoči da niste bi l i u tojul ici nego tamo gde ste stvarno bi l i a drugih svedoka nema - možete jako lošeproći Zaniml j ivi video http googlspS5OZ

Metapodaci se takođe nalaze i u faj lovimapodacima koje svakodnevnopreuzimamo sa interneta pravimo i koristimo Svaki tip podatka može da sadržiodređene metapodatke koj i bol je opisuju sam podatak kao naprimer vremenastanka podatka kol iko je vremena potrošeno za njegovo kreiranje kol iko putamu je pristupl jeno kad je poslednj i put pristupl jeno i tako dal je Iako se ovakvimetapodaci možda još uvek čine bezazlenim oni mogu sadržati i IP adresuračunara sa kog su napravl jeni GPS koordinate (najčešće PNG format sl ika satelefona) ko ga je napravio (l ičnost i l i kompani jaorganizaci ja) naziv uređaja imodel sa koga je napravl jen kao i MAC adresu uređaja mej l adresu kreatorasoftver koj im je napravl jen i tako dal je Sve ovo može mnogo da naškodiprivatnosti izvornog kreatora faj la pogotovo ako je sadržaj poverl j iv Ukol iko nekopresretne taj podatak na internetu može saznati od koga je potekao Da ovo možebiti katastrofa po kreatora takvog faj la može i lustrovati primer torenta Ako stedošl i u posed nekih sl ika i l i video materi ja la i l i teksta koj i žel i te da podel ite sasvetom preko nekog torent sajta morate taj podatak prvo očistiti odmetapodataka da ne bi svako ko skine to što ste okači l i saznao da vi stoj i te izatoga

Internet mreže i komunikacije

39

Broj 33

Ljudi se konstantno prate metapodaci se sakupl ja ju i to ni je sada već ništa novoal i možemo da se trudimo da iza sebe ostavl jamo malo manje nežel jenihmetapodataka i da ih takoreći čistimo iz podataka koje razmenjujemo Na srećupostoje programi koj i ovo dobro rade

Najpre je potrebno da vidimo koje sve metapodatke neki faj l sadrži kako bismo seuveri l i da ovi metapodaci stvarno postoje i da je faj l bezbedan nakon nj ihovogbrisanja

Ako koristite operativne sisteme GNULinuksa treba da iz terminala preuzmete iinstal irate program pod nazivom exiftool

sudo apt-get install exiftool

Ovaj program će nam pružiti uvid u sve metapodatke koje faj l sadrži Korišćenje jeiz terminala al i je zato veoma jednostavno samo ga pokrenite na sledeći način

exiftool File

i l i

exiftool putanjadofajlapočevodkorenogdirektorijuma

Dobićete prikaz metapodataka koje je program pronašao Sada je potrebno davidimo da l i je podatak bdquoprl javrdquo tj da l i ima u njemu nešto da se briše i da akoima iz njega sve nepotrebno obrišemo Tu će nam pomoći drugi program zvaniMAT (eng Metadata Anonymisation Toolkit) koga možete naći na sajtuhttps matboumorg i l i jednostavno za korisnike Ubuntua i Debi jana uSoftverskom centru i l i ga možete instal irati iz terminala

sudo apt-get install mat

MAT će proveriti da l i je podatak bdquoprl javrdquo i l i ne i za vas ga očistiti od nežel jenihmetapodataka

Kada očistite faj l on je spreman za del jenje sa drugima a vi ste bezbedni jer nikone može reći da je faj l potekao sa vašeg računara

To su samo metapodaci

40

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Autor Dejan Čugal j

GH Hardi bdquoPrava matematika nema uticaj na ratrdquo - odbrana matematičara1940 godina

Bi l Tat - britanski matematičar verovatno niste čul i za njega1942 godine je izveo ogroman poduhvat koj i je skratio rat dvegodine (barem po rečima Ajzenhauera) i spasio mi l ione životaNažalost njegova vel ičina je preminula 2002 godine obavi jenavelom tajne i nikada zvanično ni je priznato njegovo dostignuće

Tomi Flauers - bivši inženjer poštanskog saobraćaja pretvorio jematematičke ideje Tata u prvi računar a to ni je bio bdquoENIACrdquo1Preminuo je 1998 godine a pretpostavl jamo da nikada niste čul ini za njegovu vel ičinu

Ovi umni giganti bdquoBlečl i parkardquo omogući l i su Britani j i da dešifruje strogo poverl j ivumašinu koju je koristio Hitler da diriguje drugim svetskim ratom a to ni je bi labdquoENIGMArdquo nego nešto mnogo tajni je i značajni je Vel ika je verovatnoća da nistečul i ni za ovo Neki kažu da je to bio Hitlerov Blekberi (BlackBerry)

Izgubljeni heroji bdquoBlečli parkardquo

1 engl Electronic Numerical Integrator And Computer - prvidigitalni elektronski računar

Internet mreže i komunikacije

41

Broj 33

1939 godine bdquoBlečl i parkrdquo je postao ratni štab MI6 (britanske vojne obaveštajneslužbe) Do danas je procurelo u javnost i dokumentovano brojnim fi lmskimdokumentarcima samo da je tu Alan Tjuring uspeo da dešifruje nemačkumornaričku šifru poznatu kao bdquoENIGMArdquo i uvel iko doprineo pobedi saveznika a to jesamo deo priče koj i je ispričan

U Blečl i parku su bi la tri heroja AlanTjuring Bi l Tat i Tomi Flauers Od nj ihtroj ice jedino Alanu Tjuringu je priznat deozasluga za pobedu saveznika u Drugomsvetskom ratu Pregledom otkrivenihpodataka danas možemo da tvrdimo daje bdquoENIGMArdquo već sa početka drugogsvetskog rata bi la zastarela tehnologi ja Zbog toga je bi lo lako skinuti veo tajne sa

ovog uspeha heroja Blečl i parka

Izgubljeni heroji bdquoBlečli parkardquo

42

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Bi l Tat koj i je dešifrovao bdquoTANI sistemrdquo (TANI) i Tomi Flauers koj i je samo svojomintuici jom i znanjem sklopio prvi računar na svetu (bdquoKOLOSrdquo) u svrhu bržegdolaženja do informaci ja razbi jenog koda bdquoTANIrdquo tako da zastarelost šifrata budesvedena na minimum - radi l i su na novoj generaci j i mašina za šifrovanje Ovatehnologi ja je bi la prepoznata kao tehnologi ja budućnosti pa i danas iznadinformaci ja o tim tehnologi jama stoj i natpis bdquovrhunska tajnardquo (eng Top Secret) Upravo ovaj veo tajni oko šifrata bdquoTANIrdquo i prvog računara je rezultirao iskrivl jenjuistori je informatike

Za uspehe u prvim godinama rata je zaista zaslužno razbi janje bdquoENIGMArdquo šifrata ito ni je sporno al i krajem 1941 godine u etru planete se začuo novi zvuk To je bi lanova mašina za šifrovanje ni je bi la zasnovana na bdquoMorzeurdquo već je radi la naprincipu teleprintera

Jedna od kl jučnih ideja Hitlerovog ratovanja je bi la u vel ikoj mobi lnosti i brzomdelovanju trupa na terenu a da bi se to izvelo komunikaci ja je isto tako morala dabude u najmanju ruku putem radio signala

Razl ika je ogromna Razl ika je u kol ičini podataka koj i može da se prenese ovimbdquotajnimrdquo putem Prvi svetski rat je bio zaniml j iv jer su se šifrovane poruke baziralena rečima dok je Drugi u potpunosti otvorio vrata današnjoj kriptografi j i a to jematematika

Originalan nemački kocircdni naziv za ovaj šifrat bio je bdquoLORENCrdquo Britanska

Internet mreže i komunikacije

43

Broj 33

obaveštajna služba mu je dala nadimak bdquoTANIrdquo Čak ni dan danas ni je baš poznatokako je sve nastalo al i pouzdano se zna da je tajnu mašinu Hitler nazvaobdquoGehajmšrajberrdquo (nem Geheimschreiber) - mašina tajni

U srž i tehnologi ju šifrovanja bdquoLORENCrdquo šifrata nećemo ulaziti u ovom članku al iverujte nam na reč - ni je bi la jednostavna Može se pretpostaviti da je inspiraci jaŠenonovog 2 rada slučajnosti bi la upravo ova tehnologi ja iz Drugog svetskog rata

Ono čime se Treći rajh vodio je bdquosigurnardquo šifrovana veza koju niko ni je smeo dadešifruje Prenošenje šifrovanih poruka pomoću radio signala je dalo obaveštajnimslužbama mogućnost presretanja poruka poslatih radio talasima Da l i se ovo idanas dešava Imamo l i sigurnost u našim šifrovanim podacima današnj ice

Ono što je usledi lo nakon proboja ovog bdquoneuhvatl j ivogrdquo šifrata je upravo ono što jeprincip današnj ice kao neka vrsta protokola koj i mora da se ispoštuje uperfektnom šifarskom Šenonovom sistemu

1 NIKADA NIKADA NE KORISTITI DVA PUTA ISTI KLJUČ ZA ŠIFROVANJE2 NIKADA NIKADA KLJUČ NE SME DA SE ŠALJE ISTIM KOMUNIKACIONIM KANALOM

KAO PORUKA3 NIKADA NIKADA KLJUČ NE SME DA BUDE MANJ I NEGO ŠTO JE PORUKA (engl

2 Klod Elvud Šenon (eng Claude Elwood Shannon) (1916-2001) - Američkinaučnik i inženjer

Izgubljeni heroji bdquoBlečli parkardquo

44

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

one time pad) 4 NIKADA NIKADA NE SMEMO DA SAKRIVAMO SISTEM ŠIFROVANJA SVE MORA

DA JE OTVORENOG KOcircDA

Najveći propusti kriptologi je koj i su uočeni baš u Drugom svetskom ratu jesupokušaj sakrivanja sredstava koj im se generiše tajna poruka i nepoznavanjeŠenonovih krajnj ih granica informaci ja Kada kažemo bdquosredstvo i sakrivanjerdquomisl imo na algoritme Postavl ja se pitanje zašto je danas kriptologi ja sigurni ja negočetrdesetih i pedesetih godina prošlog veka

Danas uprkos tome što su algoritmi za kriptografi ju otvorenog kocircda tajnostinformaci ja je na višem nivou nego što je to bi lo dok je algoritam bio strogopoverl j iv Tajnost tajnih podataka se ne zasniva na tajnosti a lgoritama koj i generišutaj isti bdquotajni izlazrdquo (eng cipher text) nego u nemogućnosti matematičke inverznefunkci je koja bi šifrovan tekst otvori la Ovde se vidi da je svrha strukture otvorenogkocircda kao jednog od značajnih delova današnje kriptologi je ona koja ga činisigurnim i svima dostupnim

Sada kada se sa ove distance osvrnemo na Drugi svetski rat možemo videti kol ikosmo bi l i bl izu apokal ipse Naime Albert Ajnštajn je već 1944 godine imao urukama recept za nuklearnu bombu Šenon je mogao već u to vreme da nampredoči 100 siguran šifrat (tzv Hitlerovu super šifru) a l i ipak sreća nas jeposluži la da čovečanstvo tada ni je bi lo spremno da upotrebi svu raspoloživutehnologi ju

Albert Ajnštajn bdquoČetvrti svetski rat će se voditi tol jagamardquo

Zaboravl jeni heroj i Blečl i parka iako su odigral i važnu ulogu u pobedi saveznika usvetskom ratu postal i su žrtve bdquotop secretrdquo doktrine potpuno su zaboravl jeni inestal i su iz istori je

Zakl jučak ovog članka je da je ideologi ja otvorenog kocircda sasvim sigurno tu da nampomogne i da otvori vrata ka većoj sigurnosti novim idejama i kval itetu sameinfrastrukture sistema koju svi zajedno razvi jamo

Internet mreže i komunikacije

45

Broj 33

Autor Nikola Hardi

NabrajanjaBez brojeva

Za nabrajanje pojmova u Bimeru (eng Beamer) koristi se okruženje itemize aunutar tog okruženja možemo da dodajemo nove stavke pomoću item Primerizgleda ovako

beginitemizeitem Stavka Aitem Stavka Bitem Stavka C

enditemize

Sa brojevima

Postoje situaci je kada uz nabrajanje treba da stoje i redni brojevi - za to se koristienumerate okruženje a nove stavke se takođe dodaju pomoću item

beginenumerateitem Redni broj 1item Redni broj 2item Redni broj 3

endenumerate

prezentaci ja

Beamer (4 deo)

Sam svoj majstor

46

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

DefinicijeTreća situaci ja je nabrajanje parova termin - definici ja U tom slučaju se koristiokruženje description Već možete da pretpostavite kako se dodaju nove stavke

Primer

begindescriptionitem[Pojam A] Definicija izmišljenog pojma Aitem[Pojam B] Definicija izmišljenog pojma Bitem[Pojam C] Definicija izmišljenog pojma C

enddescription

Ostala podešavanja i zanimljivostiSva prethodna okruženja mogu da budu ugneždena jedno unutar drugog dotrećeg nivoa Treba biti pažl j iv jer sla jdovi vrlo lako mogu da postanu nečitl j ivi Osim toga moguće je izabrati i format oznake i l i rednih brojeva - na primer ovako

beginenumerate[I]beginenumarate[a)]

Takođe moguće je upravl jati pojavl j ivanjem pojedinih stavki na slajdovima Drugimrečima možemo da odredimo da se nabrajanja postepeno otkrivaju tako što ćemouz stavku dodati lt1-gt odnosno broj od kojeg slajda žel imo da se ta stavkapojavl ju je Tada će jedno nabrajanje biti bdquorazvučenordquo na više slajdovaJednostavni ja mogućnost je da u zaglavl je okruženja dodamo +- što znači dažel imo da se svakim slajdom otkriva po jedna nova stavka iz nabrajanja Znak bdquo-rdquo uoba primera znači da žel imo da se stavka pojavi na sledećem slajdu i da ostane

Sam svoj majstor

47

Broj 33

prisutna Možemo da izostavimo znak bdquo-rdquo i tada će stavka biti prisutna samo najednom slajdu i l i da napišemo raspon slajdova u koj ima žel imo da ta stavka budeprisutna

Rad sa kolonama i blokovimaDo sada su svi primeri podrazumeval i da je sadržaj napisan preko cele širineslajda al i Bimer (eng Beamer) ima i jednostavne mehanizme za razmeštanjesadržaja po kolonama Za rad sa kolonama se koristi okruženje columns unutarkojeg možemo da dodajemo nove kolone pomoću columnširina Sadržaj jemoguće potom pisati i van okruženja sa kolonama

U paru sa kolonama često se sreće i okruženje block koje se parametrizujenaslovom Primerom su i lustrovani i okruženje column i okruženje block

beginframebegincolumns

column05textwidthbeginblockNaslov levog blokaSadržaj u prvoj (levoj) koloni endblock

column05textwidthbeginblockNaslov desnog blokaSadržaj u drugoj (desnoj) koloni

endblockendcolumns

beginblockVan kolona

Beamer

48

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Tekst koji se nalazi ispod kolonaendblock

endframe

TabeleIako se u radu sa prezentaci jama sadržaj najčešće može uredno rasporeditipomoću kolona i nabrajanja nekada to ni je dovol jno jer su tabele pravi formatBimer podržava standardno Lateh (LaTeX) okruženje za rad sa tabelamaOkruženje za rad sa tabelama se zove tabular Pri kreiranju nove tabele moguće jepodesiti koje kolone će biti razdvojene l ini jom i da l i će nj ihov sadržaj biti centrirani l i uz levu i l i uz desnu ivicu Dodavanje novog reda se jednostavno radidodavanjem hline Lateh pruža zaista jako fleksibi lan rad sa tabelama i sigurno ćedoskočiti svim mogućim i nemogućim zamisl ima Potražite bi lo koje Lateh uputstvoza rad sa tabelama i radiće i sa Bimerom

beginframebegintabular | c | c | c | c |

hlineamp Ponedeljak amp Utorak amp Sreda hline

1 amp 16 amp 32 amp 64 hline2 amp 16 amp 128 amp 1024 hline3 amp 16 amp 512 amp 4096 hline

endtabularendframe

Sam svoj majstor

49

Broj 33

Beamer

Teoreme i istaknut tekstU nastavi su česta izlaganja teorema nj ihovih dokaza i primera U Bimer jeugrađena podrška za elegantno predstavl janje ove trojke Mehanizam takođepodržava postepeno otkrivanje sadržaja sla jda tako da slušaocima ne bude odmahotkriven dokaz teoreme Mehanizam za postepeno otkrivanje se kao i kodnabrajanja postiže pomoću bdquolt1-gtrdquo konstrukci je Evo kako to izgleda

beginframeframetitlePrimer teoreme

begintheoremlt1-gt Teorema kaže da su beamer prezentacijezanimljive

endtheorem

beginexamplelt2-gt Ovaj kod kreira slajd beamer prezentacijeendexample

beginprooflt3-gt Čestitamo stigli ste do kraja serijala o pravljenju beamer prezentacija

endproofendframe

50

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Za krajOvim člankom završavamo seri ja l o Bimeru Nadamo se da smo uspel i da vaszainteresujemo za ovu vrlo korisnu klasu Lateha Trudi l i smo se da vamprezentujemo najvažni je delove Bimera koje ćete najčešće koristiti pri l ikomkreiranja svoj ih prezentaci ja

Napominjemo još jednom da je Bimer samo jedna od klasa Lateha što znači da i zaBimer važi sve ono što ste već mogl i da pročitate u ovom časopisu kad smo pisal iseri ja l bdquoUvod u LaTeXrdquo (LiBRE brojevi 17 do 21) Štaviše ovaj seri ja l o Bimeru jebio nastavak upravo tog seri ja la U ovom seri ja lu nismo pisal i o samomformatiranju teksta u prezentaci jama jer se podrazumeva da važe ista pravi la kao iu Latehu a o tome smo pisal i u prethodnom seri ja lu

Hvala vam što ste prati l i ovaj seri ja l i žel imo vam puno uspeha u kreiranju Bimerprezentaci ja

Sam svoj majstor

51

Broj 33

Autor Nenad Marjanović

Kada smo se upoznal i sa podešavanj ima sistema i umrežavanjem vreme je za našprvi Biglbon Blek (BBB - eng BeagleBone Black) projekat Svakom od nas će ovajizazov dati razl ičite ideje a jedna od nj ih može biti i zaštita privatnosti internetkorisnika Nažalost u Srbi j i ne postoj i ni jedan izlazni tor server (eng node) i to jepomalo tužna sl ika s obzirom da govorimo o populaci j i od sedam mil ionastanovnika Al i ovu sl iku možemo promeniti udruženim snagama i za početakkreiranjem Tor transfer i izlaznog servera U ovde prikazanom grafikonufokusiraćemo se na bdquoRauter Brdquo tačku odnosno transfer server konfiguraci ju

BeagleBone Black Rev C

Vodič od prvog dana (3 deo) ndashBeagleBone Black kao Tor relej

Hardver

52

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Tor predstavl ja mrežu servera koj i se povezuju radi bol je enkripci je podataka izaštite IP adrese korisnika Naš ci l j je da danas postanemo deo ovog predivnogprojekta i da se nađemo na svetskoj karti Tor servera

Brzina interneta i zakonske regulativePotrebno je imati na umu nekol iko bitnih stvari

1 Naš server = naša odgovornost2 Obavezno naznačite da ste vi administrator a ne korisnik istog servera3 Da posedujete internet brzinu od 2 Mbs

Ako ispunjavamo tri navedena pravi la i odgovornosti možemo se posvetitiadministrativnim poslovima

Instalacija i podešavanjaU ovom primeru koristimo Debi jan Vizi (eng Wheezy) odnosno Debi jan 7 verzi juna našem BBB uređaju Vi možete testirati i druge Linuks platforme Prvododajemo izvornu bibl ioteku u etcaptsourceslist faj l pokretanjem sledećekomande u terminalu

echo deb httpdebtorprojectorgtorprojectorg wheezy main gt etcaptsourceslistdtorlist

Zatim dodajemo izvorni kl juč vršimo ažuriranje sistema i instal iramo tor i tor-arm(Tor monitoring sistem)

gpg --keyserver keysgnupgnet --recv 886DDD89gpg --export A3C4F0F979CAA22CDBA8F512EE8CBC9E886DDD89 | sudo apt-keyadd -apt-get updateapt-get install debtorprojectorg-keyring -yapt-get install tor tor-arm egrep screen -y

Ovim smo uspešno završi l i instalaci ju Tor servera i sistema za monitoring odnosnonadgledanja našeg Tor servera Sledećom komandom radimo na podešavanj imaTor servera koja se nalaze u etctortorrc faj lu Obratite pažnju i izvršite potrebne

Hardver

53

Broj 33

izmenu u pol j ima IP adresa (eng Address) nadimka (eng Nickname) i kontaktpodataka (eng ContactInfo) pre pokretanja ove komande Kopiramo i pokrećemokomandu u celosti u terminalu

egrep -v ^(|$) etctortorrcORPort 443Address 19216811Nickname LibreTorRelayRelayBandwidthRate 100 KBRelayBandwidthBurst 120 KBContactInfo ltvi at gmail dot comgt irPort 8080DirPortFrontPage etctortorhtmlExitPolicy reject

Detal je o svim vrednostima nećemo iznositi u ovom broju LiBRE časopisa al ićemo o nj ima pisati u sledećem u kome ćemo pričati o zaštiti Tor servera imogućnosti podešavanja određenih izlaznih pravi la (eng ExitPolicy)

Nakon ovoga možemo primetiti da se u folderu etctor ne nalazi torhtml faj l Ovaj faj l ni je od vel ikog značaja i možete ga l ično napraviti i l i preuzeti jednu kopi ju- naprimer sa sledeće lokaci je

cp usrsharedoctortorhtml etctortorhtml

Opcije i Tor Arm monitoringDa bismo ispravno koristi l i Tor Arm potrebno je urediti još jednom etctortorrcfaj l i restartovati servis

echo -e ldquoDisableDebuggerAttachment 0n AvoidDiskWritesrdquo gtgt etctortorrcsudo service tor reload

Ukol iko žel ite koristiti Tor Arm za nadgledanje aktivnosti na serveru pokreniteprogram screen kl iknite na bdquoEnterrdquo i kucajte sudo -u debian-tor arm Naekranu ćete imati sl ičan prikaz

BeagleBone Black

54

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Hardver

55

Broj 33

Da bismo napusti l i screen program koristimo Ctrl + a + d i na taj način kada sesledeći put pri javimo na server kucamo samo screen -r u terminalu - i naći ćemose ponovo na čuvenom Tor Arm monitoring ekranu

Nakon svake promene konfiguracionih faj lova ako slučajno nismo nešto podesi l ikako treba restartujemo servise

U sledećem broju časopisa govorićemo o minimalnim podešavanj ima ikonfigurisanju izlaznog Tor servera (eng Tor Exit Node) opci jama sigurnosti isl ičnim detal j ima u vezi sa našim prvim projektom Do čitanja u sledećem broju

BeagleBone Black

LUGoNS BarCamp 4subota 7 mart 2015 godine

Četvrti LUGoNS-ov Barkemp (BarCamp) održaće se u Novom Sadu usubotu 7 marta 2015 godine na Fakultetu tehničkih nauka sa početkomu 12 časova

Ulaz je slobodan

Poziv za predaju radovaLUGoNS poziva sve zainteresovane da pošal ju svoje radove (predavanjaprezentaci je radionice i diskusi je) do 28 februara 2015 godine

Oblasti iz koj ih možete da pri javite vaše radove su

bull Slobodan softverbull Zaniml j iv hardverbull Hakerski zakonibull Sigurnosne noćne morebull Anonimnost i privatnost na internetubull Duboki veb (eng Deep Web)bull Soci ja lne mrežebull Soci ja lni inženjeringbull Hakovanje mobi lnih uređajabull Internet u oblaku (eng Clouds) ndash hakovanje razbi janje i neočekivano korišćenjebull DPI (eng deep packet inspection)bull Mreža i mrežna neutralnost ndash vlasništvo cenzura nadmudrivanje i pol itika bdquodefaktordquo standarda

bull Programiranje i programski jezici

Nemojte se ustručavati i slobodno nam se javite ako imate rad na gore navedenei l i sl ične teme koj i smatrate interesantnim

Stranica za predaju radova nalazi se na https events lugonsorgp=1658

Page 12: LiBRE 33 Lat

12

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Predstavljamo

13

Broj 33

1 Podržava grafičke API-je

bull Direct3D 9bull Direct3D 11bull OpenGL 2 1bull OpenGL 3 1+bull OpenGL ES 2bull OpenGL ES 3 1bull WebGL 1 0

2 Podržava platforme

bull Android (14+ ARM x86 MIPS)bull asm jsEmscripten (1250)bull iOSbull Linuks (x86 x86_64)bull Nejtive klajent (Native Client PPAPI37+ ARM x86 x86_64 PNaCl)

bull OS Iks (OSX 109)bull Rasberi-paj (RaspberryPi - ARM)bull Vindouz (Iks-pe Vista 7 8 10)bull Vin-ar-ti (WinRT WinPhone 80+ )

bgfx

14

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Autor Stefan Nožinić

UvodrEFInd je softverska apl ikaci ja za EFI (Extensible Firmware Interface) sisteme kojaomogućava izbor više operativnih sistema na jednostavan način Ovo je samoupravnik buta (boot) i u ovom broju vam predstavl jamo o kakvom projektu je reč ikako se može primeniti

Šta je (U)EFIPre nego što predstavimo sam projekat trebalo bi prvo da skrenemo pažnju idetal jni je da predstavimo problematiku EFI je nastao kao zamena za dosadašnj iBIOS (Basic InputOutput System) i razvi la ga je kompani ja Intel Ovaj pristup jekasni je zamenjen UEFI standardom EFI tehnologi ja ima prednost u slučajevimakao što su

bull Pokretanje sistema na diskovima preko 2TB memori je korišćenjem GPTtehnologi je

bull Nezavisnost od specifične arhitekture procesorabull Modularan dizajnbull Dobro okruženje pre učitavanja operativnog sistema što podrazumeva i mrežnupodršku

Tehnologi ja omogućava upotrebu 32-bitnih i 64-bitnih adresa na procesorima koj ito podržavaju Rani je BIOS tehnologi ja to ni je omogući la već se uvek koristi la 16-bitna implementaci ja iz istori jskih razloga

Predstavljamo

15

Broj 33

Particiona šemaEFI tehnologi ja ima drugači ju šemu partici ja Dok je stari pristup podržavao samoMBR (Master Boot Record) šemu nova tehnologi ja podržava GPT šemu kojaomogućava veći broj primarnih partici ja Sa starim pristupom taj broj bio jeograničen na četiri primarne partici je od koj ih je svaka morala da ima kapacitetmanj i od 2TB

AplikacijeUEFI podržava izradu apl ikaci ja koje bi se pokretale nezavisno od operativnogsistema Ove apl ikaci je se mogu naknadno instal irati Primer takvih apl ikaci ja supokretači (loader) operativnih sistema kao i upravnici butovanja

EFI sistemska particijaEFI podržava posebnu partici ju za smeštanje raznih potrebnih informaci ja kao štosu potrebni podaci za rukovanje računarom i specifične apl ikaci je Ova partici ja jenajčešće FAT32 sistem datoteka

rEFInd

16

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

But menadžer i but louder - ima razlikeOd popularizaci je GRUB upravnika mnogi korisnici su ostal i bez objašnjenja kakvaje razl ika između but loudera (boot loader) i but menadžera (boot manager) Ovose dešava jer GRUB pruža obe usluge u sklopu jednog programa pa se time teževidi razl ika između ova dva pojma But menadžer je upravnik pomoću kojeg jemoguće izabrati operativni sistem za pokretanje On ne zna ništa speci ja lno ooperativnom sistemu pa time ne zna ni kako da ga pokrene On samo zna datreba da pokrene but louder za taj sistem Kada je sistem izabran pokreće sespecifičan but louder za taj sistem koj i je zadužen za dal j i proces pokretanjakernela Za razl iku od GRUB upravnika rEFInd pruža samo usluge but menadžerašto u početku može zvučati poražavajuće za ovaj projekat Kada uzmemo u obzirda većina sistema danas ima but louder u sklopu kernela (ukl jučujući i Linuks odnovi j ih izdanja) ovaj problem je prevaziđen

Predstavljamo

17

Broj 33

InstalacijarEFInd postoj i kao deb i kao rpm paket al i postoj i i zapakovan kao zip arhivaZahval ju jući tome paket je moguće instal irati upotrebom dpkg komande nadistribuci jama baziranim na Debi janu kao i upotrebom rpm komande nadistribuci jama koje koriste taj način pakovanja paketa Za Ubuntu postoj i i PPArepozitori jum pa rEFInd može biti instal iran na sledeći način

sudo apt-add-repository pparodsmithrefindsudo apt-get updatesudo apt-get install refind

Nezavisno od toga koj i način od gore opisanih koristite rEFInd će automatski bitiprebačen na ESP i biti postavl jen kao podrazumevani upravnik

KonfiguracijarEFInd bi trebalo da vam pruži zadovol javajuću funkcionalnost bez dodatnekonfiguraci je posle instalacionog procesa On će automatski detektovati loudereoperativnih sistema korišćenjem pretrage po svim partici jama koje prepozna Uslučaju da ste napredni j i korisnik i da žel ite da modifikujete ponašanje rEFInda tomožete uraditi izmenom njegove konfiguracione datoteke Postoj i g lobalnakonfiguraci ja i konfiguraci ja za svaki sistem posebno Ovaj tekst bi postao previšedugačak kada bismo ulazi l i u detal je same konfiguraci je pa vam zatopreporučujemo ako imate potrebu za dodatnom konfiguraci jom da posetitedokumentaci ju projekta i l i ako imate neke nedoumice da kontaktirate s namapreko naše e-pošte

Za krajŽelel i bismo da ovaj tekst zakl jučimo ocenom da je ovaj projekat dosta zaniml j ivda pruža zadovol javajuću funkcionalnost i da omogućava korisnicima koj i koristeovaj sistem pokretanja lako pokretanje svoj ih operativnih sistema Još jednomžel imo da vam skrenemo pažnju da nam se obratite i ukažete ako smo nešto važnopropusti l i da pomenemo i l i ako nam se negde potkrala greška

Korisni l ink http wwwrodsbookscomrefind

rEFInd

18

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Autor Nikola Hardi

Opšte je poznato da su računari dobri u radu sa brojevima Međutim vremenom suse i potrebe korisnika i alati za programiranje računara razvi ja l i i rad sa drugači j imtipovima podataka je postao uobičajen i znatno jednostavni j i nego rani je Svi smoimal i pri l iku da radimo sa programima za obradu fotografi ja video materi ja la i l izvučnih zapisa Multimedi ja je ipak tema koja prevazi lazi jedan uvodni kurs o C-ual i do kraja ovog seri ja la ćemo se dotaći i tih tema Za početak osvrnućemo se narad sa tekstualnim podacima na C način

Stringovi na C načinDefinici ja tekstualnog podatka u sferi računarstva se uglavnom svodi na to da jetekst niz karaktera a karakteri su znakovni simbol i Iako imamo mogućnost daradimo sa tekstom i l i multimedi jom računari ipak razumeju samo brojeve pamoramo tako da im predstavimo i tekst Postoje razni standardi kako se pojedinikarakteri predstavl ja ju u memori j i računara između ostalog najpoznati j i su ASCIIEBCDIC UTF i td EBCDIC je standard koj i je prisutan u Eplovom (eng Apple) svetu iviše nema tol iko važnu ulogu ASCII je standard koj i je vrlo prisutan i danas UTF jenastao kao proširenje ASCII standarda javl ja se u više vari janti i uvodi podršku zapisma razl ičita od abecede (kinesko japansko ćiri l ica arapsko i mnoga druga)

Važno je napomenuti da je originalni ASCII standard propisivao 7 bitova za jedankarakter što je dalo prostora za 128 karaktera Među tim karakterima se nalazecifre mala i vel ika slova engleskog alfabeta i niz kontrolnih karaktera Kontrolnikarakteri su oznake za novi red prazno mesto tabulator upravl janje štampačima(vraćanje glave štampača na početak) rad sa terminal ima (alarm i l i obaveštenje

Kako da

Uvod u programski jezik CRad sa stringovima (9 deo)

19

Broj 33

da se nešto dogodi lo) ASCII standard je proširen na 8 bitova odnosno ceo jedanbajt i sada podržava 256 karaktera Potražite na internetu termin bdquoASCII tabelardquo dabiste stekl i uvid u to kako izgleda tzv tabela ASCII karaktera

Rad sa pojedinačnim znakovima ne obećava mnogo Postoj i realna potreba zaradom sa rečima rečenicama l ini jama teksta itd Podaci koj i se sastoje od više odjednog karaktera se u domaćoj l i teraturi nazivaju znakovnim niskama madaodomaćen je i naziv bdquostringrdquo koj i je i mnogo češće u upotrebi U programskomjeziku C se stringovi predstavl ja ju običnim nizovima karaktera (char niz[]) a krajteksta se označava NULL karakterom odnosno speci ja lnim znakom 0 či jabrojevna predstava je pogađate nula Ovakva predstava tekstualnih podatakanosi sa sobom i pojedine kompl ikaci je Gotovo svi savremeni jezici poznaju tipstringa dok su u C-u stringovi ipak samo obični nizovi

Da se podsetimo nizovi u C-u su zapravo pokazivači na deo u memori j i Kadapokušamo da pristupimo jednom elementu niza tada se vrši operaci jabdquodereferenciranjardquo sa zadatim odstupanjem Sledi nekol iko primera koj i i lustrujurad sa nizovima na primeru nizova karaktera

char niz1[] = zdravoniz1[0] = Z

char niz2[5]niz2[0] = 0niz2[1] = kniz2[2] = 0

Pri deklaraci j i niza 1 ni je zadata dužina zato što je u jednom izrazu zadata iinici ja l izaci ja niza koja glasi ldquozdravordquo Prevodi lac može sam da zakl juči kol ikomemori je je potrebno

U drugom primeru je kreiran niz karaktera dužine 5 Međutim popunjena su samoprva tri mesta Primećujete razl iku između prvog i trećeg elementa Prvi je cifra 0(uokviren je navodnicima) a treći je brojčana vrednost 0 koja označava krajstringa

Može se primetiti još jedna razl ika u data dva primera U prvom primeru sukorišćeni dvostruki navodnici dok su u drugom korišćeni jednostruki Razlog za to

Uvod u programski jezik C

20

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

je što se znakovni nizovi koj i su uokvireni dvostrukim navodnicima smatrajustringovima i podrazumevano im se dodaje bdquoterminatorrdquo odnosno znak NULL koj ioznačava kraj stringa Jednostruki navodnici se iskl jučivo koriste za predstavl janjepojedinačnih karaktera Ovo znači da zapisi ldquoardquo i a nisu jednaki Prvi zapis jedužine 2 jer ima i znak NULL koj im je završen

Ispisivanje i učitavanje stringovaPre nego što nastavimo dal je biće objašnjen jednostavan način za ispisivanje iučitavanje stringova pomoću standardnog ulazaizlaza Da se podsetimobibl ioteka za standardni ulazizlaz (ispis podataka u konzol i odnosno terminalu) jestdioh Ukol iko se koristi formatirani ispis potrebno je funkci jama printf() iscanf() proslediti format string koj i sadrži speci ja lan znak s čime je označenoda žel imo da ispišemo znakovni niz sve do NULL karaktera Drugi način jeupotrebom funkci ja puts() gets() i getline() iz bibl ioteke stringh Sledi primer

include ltstdiohgt include ltstringhgt int main()

char niz1[] = Zdravo svete

printf(sn niz1)

scanf(s niz1)puts(niz1)

return 0

Može se primetiti da je u slučaju funkci je printf() potrebno naglasiti speci ja lnimkontrolnim karakterom n da nakon ispisa treba preći u novi red Funkci ja puts() topodrazumevano radi

Za ove i sve druge funkci je dodatnu pomoć je moguće pronaći u Linuksovim manstranicama u odel jku 3 koj i je posvećen standardnim bibl iotekama Recimo mangetline sadrži detal jno uputstvo o funkci j i getline()

Kako da

21

Broj 33

Kopiranje stringovaKao što je u prethodnom odel jku napomenuto stringovi su u C-u samo običninizovi To znači da sledeći kod verovatno neće uraditi ono šta bi bi lo očekivano

niz1 = niz2

Ovime smo pokazivaču niz1 bdquorekl irdquo da pokazuje tamo gde i pokazivač niz2 Efektivno oni sad pokazuju na isti tekst međutim ako izmenimo niz1 to će seodraziti i na niz2 a važi i obrnuto Ovime smo dobi l i samo dva pokazivača na istideo memori je a uglavnom to ni je bio ci l j

Drugi način kako bismo sadržaj drugog niza mogl i da kopiramo u prvi niz je petl jakojom bismo kopiral i element po element Pošto je operaci ja kopiranja stringovavrlo često potrebna postoj i standardna bibl ioteka za rad sa stringovima koja sezove stringh a funkci ja za kopiranje stringova je strcpy()

strcpy(niz1 niz2)

Dati primer kopira sadržaj niza 2 u niz 1 Kopira se element po element sve dok seu nizu 2 ne naiđe na NULL karakter Ovakvo kopiranje (element po element) seinače u stranoj l i teraturi naziva i bdquodeep copyrdquo i vrlo često se sreće u radu sastrukturama podataka gde je potrebno obići celu strukturu podataka i svakielement kopirati a strukturu opet izgraditi u drugom delu memori je

Zaniml j ivo je što je kopiranje stringova moguće pojednostaviti ukol iko definišemonovi tip podatka kao strukturu koja sadrži niz karaktera i potom izvršimo kopiranjeOvo je trik koj i se uglavnom ne koristi u praksi i spomenut je samo kaozaniml j ivost

include ltstringhgt struct str char niz[50]

int main()

struct str s1struct str s2

Uvod u programski jezik C

22

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

strcpy(s1niz zdravo)s2 = s1

s2niz[0] = Z

puts(s1niz)puts(s2niz)

return 0

Kreirana je struktura str koja sadrži pol je niza karaktera pod nazivom niz Pozivomfunkci je strcpy() kopiramo string ldquozdravordquo u s1 čime smo bdquonapuni l irdquo sadržajobjekta s1 Potom je izvršena redovna dodela čime je sadržaj objekta s1 kopiran us2 Zatim je izmenjen samo prvi karakter objekta s2 i oba stringa su ispisanaPrimećujete da su kopirani svi znakovi a da je izmenjen samo drugi objekatZaniml j iv trik

Poređenje spajanje i pretraga stringovaDruga vrlo česta situaci ja je poređenje dva stringa Ukol iko bi poređenje bi loizvršeno upotrebom redovnog operatora za poređenje == tada bi u stvari bi lepoređene samo adrese na koje pokazuju pokazivači tih stringova jer da sepodsetimo stringovi su u C-u samo obični nizovi Ispravan način za poređenje dvastringa je pozivanjem funkci je strcmp() či ja je povratna vrednost 0 ukol iko su jojprosleđeni stringovi sa jednakim sadržajem

include ltstringhgt int main()

char niz1[] = zdravochar niz2[] = zdravo

if( strcmp(niz1 niz2) == 0)puts(Stringovi su jednaki)

elseputs(Stringovi nisu jednaki)

return 0

Kako da

23

Broj 33

Funkci ja strcmp() poredi svaki element prosleđenih nizova pojedinačno a dobraje vežba implementiranje nove funkci je strcmp() koja će unutar petl je da porediodgovarajuće elemente prosleđenih nizova i potom vratiti rezultat 0 ukol iko su svielementi jednaki Potrebno je pripaziti na situaci ju kada su stringovi razl ičitihdužina

U svetu računara spajanje dva sadržaja se zove konkatenaci ja Odatle i nazivfunkci je za spajanje dva stringa strcat() Važno je uveriti se da je string u koj i sedodaje sadržaj dovol jno vel ik da ga prihvati inače može da dođe do nežel jenogprepisivanja u memori j i uništavanja drugih podataka i neispravnog ponašanjaprograma

Pretraga unutar stringa se može obaviti funkci jom strstr() Ova funkci ja kaoparametre očekuje pokazivač na niz karaktera (string) u kojem je potrebno pronaćistring koj i je prosleđen kao drugi parametar Povratna vrednost je pokazivač nadeo memori je gde se žel jeni string prvi put pojavio

Sledi malo opširni j i primer koj i i lustruje spajanje pretragu i kopiranje stringova

include ltstringhgt int main()

char niz_a[50] = LiBRE je char niz_b[] = najbolji casopischar niz_c[] = e-magazin

strcat(niz_a niz_b)puts(niz_a)

char cilj = strstr(niz_a casopis)strcpy(cilj niz_c)

puts(niz_a)

return 0

Uvod u programski jezik C

24

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Pretvaranje tipova podataka u stringove ipretvaranje iz stringovaPretvaranje podataka iz jednog tipa u drugi i l i kastovanje (eng type casting) se zavećinu tipova vrši jednostavno pisanjem tipa u zagradama na primer (int)523 Stringovi su i po ovom pitanju drugači j i Postavl ja se pitanje šta pretvoriti ucelobrojni tip - da l i adresu na koju pokazuje pokazivač niza koj i predstavl ja stringPrvi element Šta ako taj string ni je broj Predstavićemo rešenje za konverzi jubrojeva u stringove i obrnuto

Ispis podataka na ekranu se takođe može smatrati konverzi jom Broj sa pokretnimzarezom je u memori j i prikazan na pomalo čudan način a pozivom funkci jeprintf() kada je kao format zadat f na ekranu ćemo dobiti razuml j iv niz znakovaSl ičan rezultat možemo dobiti funkci jom sprintf() a jedina razl ika u odnosu naprintf() je ta što sprintf() kao prvi argument očekuje pokazivač na string dok sudrugi (format string) i treći (argumenti koj i se povezuju sa formatnim stringom)sl ični kao kod funkci je printf()

Kod pretvaranja stringova u brojevne tipove može poslužiti funkci ja sscanf() kojase ponaša sl ično kao funkci ja scanf() s tim što je prvi argument adresa(pokazivač na string) koju žel imo da skeniramo u nadi da će se poklopiti saformalnim stringom koj i je drugi argument a rezultati će biti sačuvani u adresamakoje su prosleđene kao 3 4 i ostal i parametri Drugi način za pretvaranje stringovau celobrojne brojeve i brojeve sa pokretnim zarezom su funkci je atoi() i atof()

Funkci je koje koriste formatni string su česte u jeziku C i zaslužuju posebnu pažnjumeđutim to je priča za poseban članak U ovu klasu funkci ja spadaju recimo ifunkci je za rad sa datotekama

BezbednostRad sa stringovima može da bude izuzetno opasna stvar po pitanju bezbednostiprograma Ukol iko se niz karaktera ne završava NULL karakterom svašta može dapođe po zlu pri pozivu funkci ja kao što su strcpy() strcmp() i sl ične Cela klasatih funkci ja se oslanja na postojanje znaka koj i označava kraj stringa Kada stringni je propisno završen tada te funkci je mogu da zalutaju u deo memori je vanstringa i svašta može da pođe po zlu Ovakav tip napada se inače zoveprekoračenje bafera (eng buffer overflow) Preporučen način kako da izbegnete

Kako da

25

Broj 33

Pregled popularnosti GNULinuxBSDdistribuci ja za mesec februar

Distrowatch

Pad ltPorast gtIsti rejting =(Korišćeni podaci sa Distrovoča)

12345678910111213141516171819202122232425

MintUbuntuDebianopenSUSEelementaryMageiaFedoraManjaroCentOSLXLEArchBodhiAndroid x86Kal iPCLinuxOSPuppyRobol inuxLubuntuQ4OSBlack LabNetrunnerSimpl icityEvolveZorin4MLinux

2919gt1778gt1701gt1323gt1204gt1174gt1166gt1028lt1020gt965gt957gt907gt900lt760gt742lt732gt695gt670gt663gt655gt652gt629gt607gt583gt517=

takve nepri jatne situaci je pri radu sastringovima je da koristite verzi jefunkci ja koje su ograničenemaksimalnom dužinom stringa kaošto su strncpy() strncat() strncmp() i td Sve te funkci je kaotreći parametar zahtevaju broj koj iodređuje maksimalnu očekivanudužinu stringa Još jedna vrlo korisnafunkci ja je strlen() či j i zadatak je daodredi dužinu stringa Budite pažl j ivi ovo je prvo mesto gde se tražebezbednosni propusti u programimaNe verujte podacima koj i spol ja ulazeu vaš program a pogotovo kada je rečo stringovima

Uvod u programski jezik C

26

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Autor Dejan Maglov

Projekti slobodnog softvera obično počinju kao projekti pojedinca i l i male grupeprogramera a koj i rade na razvoju softvera či j i je ci l j da zadovol j i neke od nj ihovihl ičnih potreba Projekat će se smatrati uspešnim ukol iko se šira zajednicazainteresuje za njega nakon što prepozna korisnost softvera ne samo za pojedincekoj i su započel i projekat već i za širu zajednicu Kada je u pitanju slobodni softvervremenom je postala stalna praksa da se zajednica umeša u razvoj projekataDobri projekti sami privlače zajednicu l judi koj i su zainteresovani za nj ih i ona uvećini slučajeva preuzima na sebe testiranje pobol jšanje funkcionalnosti održavanje i tehničku podršku projekta

Zajednice slobodnog softvera mogu da se okupe oko projekta slobodnog softverapo teritori ja lnom principu i l i da nastanu kombinaci jom ovih principa

Primeri

bull LiBRE projekat okupl ja zajednicu oko projekta bez teritori ja lnog ograničenjabull LUGoNS (Linux User Group of Novi Sad) je zajednica korisnika Linuksa poteritori ja lnom principu bez obzira na konkretan projekat

bull Ubuntu-rs zajednica koja je kombinaci ja okupl janja zajednice oko konkretnogprojekta (Ubuntu) i teritori ja lnog principa koj i se ograničava na teritori ju Srbi je

Ova sinergi ja projekata i korisnika slobodnog softvera ima više prednosti i zakorisnike i za projekat Projekat se na ovaj način brže razvi ja dobi ja na

U potrazi za idealnom distribucijom

Socijalni kriterijumi za izbor idealnedistribucije (6 deo)

Oslobađanje

27

Broj 33

funkcionalnosti greške se brzo ispravl ja ju i td Korisnici dobi ja ju osećaj dapripadaju grupi druže se sa istomišl jenicima učestvuju u promoci j i kval itetnihpojedinaca itd

Dve najvažni je uloge lokalnih zajednica za GNULinuks distribuci je su

1 pružanje tehničke podrške i edukaci je na maternjem jeziku2 rad na lokal izaci j i i pri lagođavanje distribuci je lokalnim potrebama

Informaci ja da postoje lokalne zajednice slobodnog softvera je od naročitogznačaja za početnike i korisnike koj i nedovol jno dobro znaju strane jezike(naročito engleski jezik) Ako izuzmemo komerci ja lne projekte otvorenog koda(Red Het SUSE) ne postoje zvanične škole i kursevi za slobodni softver Zaedukaci ju početnika je uglavnom zadužena zajednica a jasno je da je učenje namaternjem jeziku uvek lakše nego na bi lo kom drugom stranom ma kol ikodobro ga poznajete

Forumi i viki stranice lokalnih zajednica su prave bibl ioteke u koj ima korisnicimogu da nađu većinu odgovora na svoja pitanja a za sva ostala tu su forumi iIRC kanal i zajednica na koj ima uvek ima nekoga i koj i imaju već gotova rešenjaza vel iki broj problema

U potrazi za idealnom distribucijom

28

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Lokalne zajednice kao kriterijum za izbor idealnedistribucijePočetnicima i korisnicima koj i ne vladaju dobro engleskim jezikom toplopreporučujemo da biraju GNULinuks distribuci je koje imaju aktivnu lokalnuzajednicu Ovladavanje novim operativnim sistemom je mnogo lakše ukol iko vambdquoleđa čuvardquo lokalna zajednica na koju se uvek možete osloniti

Već smo spomenul i da su popularni je GNULinuks distribuci je namenjenepočetnicima Slučaj je isti i sa lokalnim zajednicama okupl jenim oko nj ih Ovomeđutim ne znači da je kval itet usluga koje nude manje popularne lokalnezajednice okupl jene oko distribuci ja namenjenih napredni j im korisnicima loši j i Manje popularne distribuci je okupl ja ju manje l judi a l i zato oni poseduju većeznanje Iskustvo sa zajednicama okupl jenim oko slobodnog softvera je uglavnompozitivno i ukazuje na to da kval itet usluga koje one nude korisniku ni je uslovl jenpopularnošću i masovnošću zajednice nego iskl jučivo njenom (ne)aktivnošću

U svakom slučaju dosadašnj i saveti za izbor idealne distribuci je važe i dal jeSoci ja lni aspekt slobodnog softvera je samo dodatni faktor koj i vam može pomoćipri donošenju odluke kada se dvoumite između nekol iko mogućih rešenja

Još uvek ne postoj i na jednom mestu potpuni i ažurirani spisak svih aktivnihsrpskih zajednica Nešto najbl iže tome može da se nađe na adresihttps pulsslobodewordpresscom Za informaci je o nekim drugim lokalnimzajednicama koje možda postoje al i nisu na ovom spisku moraćete sami dapretražite internet

Lokalizacija kao kriterijum za izborZa lokal izaci ju GNULinuks distribuci ja i GNU programa odgovorni su pojedinci ilokalne zajednice Sasvim sol idnu srpsku lokal izaci ju mogu imati i projekti koj iuopšte nemaju svoju lokalnu zajednicu a isto tako lošu lokal izaci ju mogu imati iprojekti sa dobrom lokalnom zajednicom Sve je stvar prioriteta zajednica iaktivnosti pojedinaca

Pravu i kontrol isanu lokal izaci ju može imati samo lokalni projekat Ovakvihprojekata u Srbi j i ima malo i teško se probi ja ju čak i u lokalu u konkurenci j isvetskih projekata Istina je da mnoge veće GNULinuks distribuci je imaju srpskulokal izaci

Oslobađanje

29

Broj 33

ju u ponudi pa se možda sl ični lokalni projekti koj i su usmereni samo na striktnulokal izaci ju smatraju nepotrebnima Uzvodna lokal izaci ja u slučaju Srbi je vrlo čestobude veoma loše čak nakaradno sprovedena Jedna polovina programa jelokal izovana srpskom ćiri l icom a druga latinicom Ako postoj i još delova sistemakoj i uopšte ni je lokal izovan onda se pojavl ju ju i delovi programa koj i su naengleskom Zato ćemo se vratiti na prvu rečenicu ovog pasusa i ponovo utvrditi dasamo lokalni projekat može potpuno kontrol isati pravu srpsku lokal izaci ju

U Srbi j i za sada imamo dva aktivna projekta GNULinuks distribuci je ndash TriOS(http triosrs) i Serbian (http wwwdebian-srbi ja iz rspserbianhtml) Obaprojekta su mlada i imaju svoj ih prednosti i mana Kome treba lokal izovanoperativni sistem može da proba jedan od ova dva projekta

U potrazi za idealnom distribucijom

30

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Iako ove dve domaće distribuci je nisu baš naj idealni je interesantno je probati ih iuporediti sa drugim distribuci jama

Za kraj serijalaNamera nam je bi la da kroz ovaj seri ja l o kriteri jumima pri izboru idealnedistribuci je definišemo većinu kriteri juma pri izboru i pokažemo zašto je teškoodgovoriti na jednostavno pitanje bdquoKoju mi distribuci ju preporučujeterdquo

Ni na samom kraju nismo dal i konkretan odgovor na pitanje koja je idealnaGNULinuks distribuci ja Suviše je subjektivnih ocena da bi se mogao datikonkretan odgovor Smatramo da je jako teško napisati neki algoritam izbora pokriteri jumima koje smo identifikoval i i definisal i a možda je čak i nemoguće poštose izlazi stalno menjaju Izlazi iz tog algoritma su GNULinuks distribuci je koj ih izdana u dan ima sve više a i one stare se stalno menjaju

Sam seri ja l bdquoU potrazi za idealnom distribuci jomrdquo neće biti završen samo zato štose više neće baviti kriteri jumima pri izboru nego će pokušati da predstavl jaGNULinuks distribuci je koje su po nečemu bdquoidealnerdquo

Oslobađanje

31

Broj 33

ORM

Autor Dejan Čugal j

Object relation mapping (ORM)

ORM (eng Object RelationMapping) je način postizanja traj-nosti (eng persistence) objekataunutar relacionih baza podatakaModel deluje kao posrednik nalogičkom delu apl ikaci je Automat-ski presl ikava podatke iz objekata ubazu i nazad na zahtev apl ikaci jeDa bismo objasni l i kako ovo sveradi moramo da vam predstavimoORM frejmvork (eng framework)programa otvorenog koda -Hajbernejt (eng Hibernate -http hibernateorgorm)

Šta je ORMUkratko ORM je automatizovano transparentno presl ikavanje objekatakorišćenjem metapodataka koj i opisuju mapiranje veze između objekta i baze

ORM (2 deo)

Slobodni profesionalac

32

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

podataka u apl ikaci jama koje su napisane u objektno ori jentisanim programskimjezicima Apl ikaci ja komunicira sa ORM-om preko njegovog vlastitog API-ja (engapplication programming interface) i određenih objekata Ova komunikaci ja jepotpuno odvojena od komunikaci je koja se odvi ja između ORM-a i baze podatakapreko SQL-a i DBC-a

Da bi se postigla i dostigla potpuna snaga ORM-a u apl ikaci j i koju projektujemonikako se ne sme iskl jučiti znanje relacionih modela SQL jezika te poznavanjeDBMS-a u kome se radi ORM ni je ništa drugo do srednj i sloj između gorepomenutih tehnologi ja i objektno ori jentisanog programiranja kao što smo to dosada već više puta naglasi l i

Implementacija ORM-aPostoje razl ičiti načini implementaci je ORM-a Mark Fasl (Mark Fussel) je 1997definisao četiri nivoa

1 bdquoČistrdquo relacioni način2 Slabo mapiranje objekata3 Umereno mapiranje objekata4 Potpuno mapiranje objekata

bdquoČistrdquo relacioni način

Cela apl ikaci ja ukl jučujući i korisnički interfejs dizajnirana je relacionim modelom iSQL relacionim operatorima Ovakav pristup je odl ičan za male projekte Direktanpristup SQL-u omogućava fino podešavanje svakog aspekta upita koj i se postavl jabazi podataka Osnovne mane su portabi lnost (prenosivost) i održavanje ovakvihsistema pogotovo ako se planira korišćenje apl ikaci je na duži rok Ovakvi sistemimasovno koriste sačuvane procedure (eng stored procedures) što znači da jeposlovna logika (eng busines logic) prebačena na samu bazu podataka

Slabo mapiranje objekata

Entiteti su predstavl jeni kao klase i mapiranje se radi ekspl icitno ka relacionimtabelama SQLJDBC je sakriven od poslovne logike korišćenjem poznatih šablona(patterns)

Umereno mapiranje objekata

Slobodni profesionalac

33

Broj 33

Dizajn apl ikaci ja se svodi na objektne modele SQL se generiše u vremekompaj l iranja (eng build-time) i l i u vreme izvršavanja (eng run-time) Specifikaci jaupita nad bazama podataka se radi na objektno ori jentisanom jeziku Ovakvisistemi se koriste u apl ikaci jama srednj ih vel ičina kod koj ih je bitna portabi lnostizmeđu razl ičitih sistema za upravl janje bazama podataka (DBMS)

Potpuno mapiranje objekata

Podržava sofisticirano objektno model iranje nasleđivanje i pol imorfizamEfikasnost dobi janja podataka je na visokom nivou i koriste se metode kao što sulenjo učitavanje (eng lazy loading) i strategi ja keširanja (eng caching) Implementaci ja je transparentna u apl ikaci jama Ovaj nivo je jako teško dostići Pojedincu su potrebne godine razvoja da postigne ovakvu fleksibi lnost pristupa imanipulaci ja u relacionim bazama podataka Upravo ovaj nivo se postiže ako sekoriste rešenja ORM-a kao što je Hajbernejt

Zašto ORMImplementaci ja ORM rešenja pogotovo ako seprvi put susrećete sa ovim modelom može dabude veoma frustrirajuća i malo teža zaimplementaci ju Kada ovo kažemo misl imo daprogramer koj i implementira ORM i hoće da istibude kval itetno urađen mora da posedujepredznanje objektno ori jentisanog programiranjai naprednih tehnika kao što su nasleđivanje ipol imorfizam

Ovo inicira fundamentalna pitanja

bull Pa zašto bi iko onda implementirao ovako nešto kompleksnobull Vredi l i truda upuštati se uopšte u ORM

Odgovor ni je jednostavan Dosadašnja iskustva u korišćenju ORM-a i njegovapopularnost već daju odgovor na postavl jeno pitanje Očigledno je da su benefitikoje donosi ovaj model veći od kompleksnosti njegove implementaci je a to su

Hibernate ORM

34

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Veća produktivnost

ORM smanjuje kol ičinu koda potrebnog za ostvarivanje trajnosti podataka Ovoomogućava programeru da vreme koje bi utrošio na ručno mapiranje podatakautroši na druge delove apl ikaci je

Lakše održavanje

Manje l ini ja koda osigurava bol ju razuml j ivost (i možda bol j i kval itet koda) jernaglašava apl ikaci jsku logiku ORM takođe ublažava uticaj nastal ih promena kaošto su promene u bazi strukturi tabela i td

Prenosivost

Većina ORM rešenja podržava sisteme za upravl janje bazama podataka raznihproizvođača ORM u potpunosti odvaja sloj apl ikaci je od stvarne SQL komunikaci jekoja se odvi ja u pozadini Time omogućava da se pišu apl ikaci je koje će moći da seizvršavaju na razl ičitim bazama podataka bez potrebe za dodatnim kodiranjemOva komunikaci ja se odvi ja sa programskim interfejsima ORM-a nezavisno oDBMS-u sa koj im je u bi lo kom momentu povezan ORM takođe omogućava lakšiprelaz sa manj ih na veće baze podataka tokom razvoja apl ikaci je

Uvidel i smo da trenutno postoje dve paradigme koje se bdquosudarajurdquo i koje supodjednako dobre same za sebe Relaciona paradigma potvrđuje da sve što jeizgrađeno na matematičkim osnovama je i trajno u smislu kval iteta koje posedujeU domenu u kom relaciona paradigma egzistira ona je ako je to u ovo vremeuopšte moguće tvrditi nezamenj iva

Ono što otvara pitanja i daje razlog za sumnju je koja je krajnja granicaupotrebl j ivosti relacione paradigme tj kol iki su kapaciteti složenosti zahtevaapl ikaci ja sa kojom može da se nosi Praksa je pokazala da je sasvim mogućebdquoizvestirdquo složene projekte - al i održavanje skalabi lnost razuml j ivost prenosivost -pitanja su sa koj im se relaciona paradigma teško može izboriti

Sa druge strane svoj habitat u informacionim tehnologi jama je našla i objektna

Slobodni profesionalac

35

Broj 33

paradigma Iako na prvi pogled ova dva modela nemaju ništa zajedničko - što je uneku ruku i istinito gledajući prirodu podataka koj im manipul išu - praksa jepokazala da su usko povezane i skoro da imaju sinaptičku vezu

Pitanje bdquokako spoj iti te sinapserdquo dovelo je do žučnih rasprava u uskim naučnimprogramersko-administratorskim krugovima Rodi l i su se razni model i a l i jedan jeiskočio i polako ulazi u široku primenu - a to je ORM Svoj im supti lnim pristupomproblemu nekompatibi lnih paradigmi nekako je uspeo da stvori taj nedostajućibdquoelektrični signalrdquo koj i ih je povezao Ovo je omogući lo da dve strane koje susvaka za sebe u svom domenu ostavi le i ostavl ja ju duboki trag u informacionimtehnologi jama sarađuju i donesu novi kval itet

Korisni l inkovi

[1] Hibernejt http hibernateorg[2] Viki http googlLlZulw[3] Tutori ja l i http googlCGzvnc

Hibernate ORM

36

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Autor Kriptopank

Šta su zapravo metapodaci Najkraće rečeno to su podaci o podacima i l iinformaci je koje opisuju podatke

Najpre da napravimo razl iku između podataka i metapodataka Podaci sunaprimer snimak (i l i transkript) vaših telefonskih razgovora sadržaj poruka kojepišete primate i l i šal jete podaci koje kačite na internet i l i preuzimate pretrageGuglom postovi na forumima dopisivanja na IRC kanal ima i l i drugim četovimaaudio i video snimci Skajp razgovora i tako dal je

Hajde da vidimo šta bi bi l i odgovarajući metapodaci za ove primere

bull Za telefonske razgovore metapodaci mogu biti lokaci ja učesnika brojevitelefona trajanje razgovora IP i MAC adresa

bull Za poruke četove i Skajp i l i druge video-audio komunikaci je sl ično je kao kodtelefonskih razgovora

To su samo metapodaci

Internet mreže i komunikacije

37

Broj 33

bull Kod foruma i pretraga Guglom ima malo manje metapodataka al i Gugl i raznisajtovi i forumi ionako čuvaju logove o korisnicima što su takođe metapodaci

Ako do sada koj im slučajem niste uvidel i opasnost po privatnost u ovimmetapodacima koje svako od nas smrtnika svakodnevno ostavl ja za sobom usvetu interneta i ostal ih digitalnih komunikaci ja nadamo se da će vas ovaj primermakar podstaći na razmišl janje a možda i na nešto više

Zamisl i te da neko (zvaćemo ga posmatrač) stalno sakupl ja metapodatke koje zasobom ostavl jate kao mrvice hleba Posmatrač recimo zna da se nalazite naautoputu nedaleko od famoznog Feketića da se ne krećete da zovete AMSS zatimšlep službu i možda taksi a l i ne zna šta ste razgovaral i I l i posmatrač vidi da steprvo zval i aerodrom Nikola Tesla pa odmah potom taksi a l i ne zna šta sterazgovaral i I l i posmatrač vidi da ste zval i prvo šest brojeva či je identitete takođezna pa vidi da se oni zatim kreću ka vama - GPS (eng Global Positioning System) pa zatim pica servis Mekdonalds i neku poznatu prodavnicu kineske hrane al i nezna šta ste razgovaral i

Posmatrač ne mora da bude mnogo pametan niti da prisluškuje vaše razgovore dabi shvatio šta se dešava i l i šta će se desiti Sasvim mu je jasno da vam je u prvomprimeru auto stao na autoputu zatim da ste se u drugom slučaju uputi l i naaerodrom i da možda putujete van zemlje i l i ste poslal i taksi po nekoga saaerodroma a da u trećem slučaju okupl jate žurku kod vas Više možete pogledatina http googl7vUjP

Iako su to bdquosamordquo metapodaci treba biti svestan da ti metapodaci o vama stvarajujednu digitalnu sl iku i l i bol je reći digitalni mozaik i na neki način vas jedinstvenoodređuju Pogotovo kada se planski prikupl ja ju na više nivoa (kompjuter pametnitelefon pametni automobi l i kreditna kartica) metapodaci čine vaš digitalniidentitet Al i da stvar bude još gora ta sl ika o vama ne mora nužno biti istinita jerse lako može lažirati Recimo možete zameniti telefone i l i automobi le sa nekimnamerno i l i slučajno i l i vam neko može jednostavno ukrasti telefon laptop i l ikreditnu karticu Zaniml j iv video http googlKO1fKf

Evo jednog primera koj i vas može uvući u vel ike nevol je Recimo da prolazitenekom zabačenom ul icom i da vam neprimetno ispadne telefon al i vi to neprimetite i nastavite dal je svoj im putem U toj ul ici se samo nekol iko minutakasni je desi neko ubistvo i vas pozovu u pol ici ju kao osumnj ičenog Ako koj im

To su samo metapodaci

38

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

slučajem nemate dobar al ibi i l i nemate svedoka da posvedoči da niste bi l i u tojul ici nego tamo gde ste stvarno bi l i a drugih svedoka nema - možete jako lošeproći Zaniml j ivi video http googlspS5OZ

Metapodaci se takođe nalaze i u faj lovimapodacima koje svakodnevnopreuzimamo sa interneta pravimo i koristimo Svaki tip podatka može da sadržiodređene metapodatke koj i bol je opisuju sam podatak kao naprimer vremenastanka podatka kol iko je vremena potrošeno za njegovo kreiranje kol iko putamu je pristupl jeno kad je poslednj i put pristupl jeno i tako dal je Iako se ovakvimetapodaci možda još uvek čine bezazlenim oni mogu sadržati i IP adresuračunara sa kog su napravl jeni GPS koordinate (najčešće PNG format sl ika satelefona) ko ga je napravio (l ičnost i l i kompani jaorganizaci ja) naziv uređaja imodel sa koga je napravl jen kao i MAC adresu uređaja mej l adresu kreatorasoftver koj im je napravl jen i tako dal je Sve ovo može mnogo da naškodiprivatnosti izvornog kreatora faj la pogotovo ako je sadržaj poverl j iv Ukol iko nekopresretne taj podatak na internetu može saznati od koga je potekao Da ovo možebiti katastrofa po kreatora takvog faj la može i lustrovati primer torenta Ako stedošl i u posed nekih sl ika i l i video materi ja la i l i teksta koj i žel i te da podel ite sasvetom preko nekog torent sajta morate taj podatak prvo očistiti odmetapodataka da ne bi svako ko skine to što ste okači l i saznao da vi stoj i te izatoga

Internet mreže i komunikacije

39

Broj 33

Ljudi se konstantno prate metapodaci se sakupl ja ju i to ni je sada već ništa novoal i možemo da se trudimo da iza sebe ostavl jamo malo manje nežel jenihmetapodataka i da ih takoreći čistimo iz podataka koje razmenjujemo Na srećupostoje programi koj i ovo dobro rade

Najpre je potrebno da vidimo koje sve metapodatke neki faj l sadrži kako bismo seuveri l i da ovi metapodaci stvarno postoje i da je faj l bezbedan nakon nj ihovogbrisanja

Ako koristite operativne sisteme GNULinuksa treba da iz terminala preuzmete iinstal irate program pod nazivom exiftool

sudo apt-get install exiftool

Ovaj program će nam pružiti uvid u sve metapodatke koje faj l sadrži Korišćenje jeiz terminala al i je zato veoma jednostavno samo ga pokrenite na sledeći način

exiftool File

i l i

exiftool putanjadofajlapočevodkorenogdirektorijuma

Dobićete prikaz metapodataka koje je program pronašao Sada je potrebno davidimo da l i je podatak bdquoprl javrdquo tj da l i ima u njemu nešto da se briše i da akoima iz njega sve nepotrebno obrišemo Tu će nam pomoći drugi program zvaniMAT (eng Metadata Anonymisation Toolkit) koga možete naći na sajtuhttps matboumorg i l i jednostavno za korisnike Ubuntua i Debi jana uSoftverskom centru i l i ga možete instal irati iz terminala

sudo apt-get install mat

MAT će proveriti da l i je podatak bdquoprl javrdquo i l i ne i za vas ga očistiti od nežel jenihmetapodataka

Kada očistite faj l on je spreman za del jenje sa drugima a vi ste bezbedni jer nikone može reći da je faj l potekao sa vašeg računara

To su samo metapodaci

40

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Autor Dejan Čugal j

GH Hardi bdquoPrava matematika nema uticaj na ratrdquo - odbrana matematičara1940 godina

Bi l Tat - britanski matematičar verovatno niste čul i za njega1942 godine je izveo ogroman poduhvat koj i je skratio rat dvegodine (barem po rečima Ajzenhauera) i spasio mi l ione životaNažalost njegova vel ičina je preminula 2002 godine obavi jenavelom tajne i nikada zvanično ni je priznato njegovo dostignuće

Tomi Flauers - bivši inženjer poštanskog saobraćaja pretvorio jematematičke ideje Tata u prvi računar a to ni je bio bdquoENIACrdquo1Preminuo je 1998 godine a pretpostavl jamo da nikada niste čul ini za njegovu vel ičinu

Ovi umni giganti bdquoBlečl i parkardquo omogući l i su Britani j i da dešifruje strogo poverl j ivumašinu koju je koristio Hitler da diriguje drugim svetskim ratom a to ni je bi labdquoENIGMArdquo nego nešto mnogo tajni je i značajni je Vel ika je verovatnoća da nistečul i ni za ovo Neki kažu da je to bio Hitlerov Blekberi (BlackBerry)

Izgubljeni heroji bdquoBlečli parkardquo

1 engl Electronic Numerical Integrator And Computer - prvidigitalni elektronski računar

Internet mreže i komunikacije

41

Broj 33

1939 godine bdquoBlečl i parkrdquo je postao ratni štab MI6 (britanske vojne obaveštajneslužbe) Do danas je procurelo u javnost i dokumentovano brojnim fi lmskimdokumentarcima samo da je tu Alan Tjuring uspeo da dešifruje nemačkumornaričku šifru poznatu kao bdquoENIGMArdquo i uvel iko doprineo pobedi saveznika a to jesamo deo priče koj i je ispričan

U Blečl i parku su bi la tri heroja AlanTjuring Bi l Tat i Tomi Flauers Od nj ihtroj ice jedino Alanu Tjuringu je priznat deozasluga za pobedu saveznika u Drugomsvetskom ratu Pregledom otkrivenihpodataka danas možemo da tvrdimo daje bdquoENIGMArdquo već sa početka drugogsvetskog rata bi la zastarela tehnologi ja Zbog toga je bi lo lako skinuti veo tajne sa

ovog uspeha heroja Blečl i parka

Izgubljeni heroji bdquoBlečli parkardquo

42

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Bi l Tat koj i je dešifrovao bdquoTANI sistemrdquo (TANI) i Tomi Flauers koj i je samo svojomintuici jom i znanjem sklopio prvi računar na svetu (bdquoKOLOSrdquo) u svrhu bržegdolaženja do informaci ja razbi jenog koda bdquoTANIrdquo tako da zastarelost šifrata budesvedena na minimum - radi l i su na novoj generaci j i mašina za šifrovanje Ovatehnologi ja je bi la prepoznata kao tehnologi ja budućnosti pa i danas iznadinformaci ja o tim tehnologi jama stoj i natpis bdquovrhunska tajnardquo (eng Top Secret) Upravo ovaj veo tajni oko šifrata bdquoTANIrdquo i prvog računara je rezultirao iskrivl jenjuistori je informatike

Za uspehe u prvim godinama rata je zaista zaslužno razbi janje bdquoENIGMArdquo šifrata ito ni je sporno al i krajem 1941 godine u etru planete se začuo novi zvuk To je bi lanova mašina za šifrovanje ni je bi la zasnovana na bdquoMorzeurdquo već je radi la naprincipu teleprintera

Jedna od kl jučnih ideja Hitlerovog ratovanja je bi la u vel ikoj mobi lnosti i brzomdelovanju trupa na terenu a da bi se to izvelo komunikaci ja je isto tako morala dabude u najmanju ruku putem radio signala

Razl ika je ogromna Razl ika je u kol ičini podataka koj i može da se prenese ovimbdquotajnimrdquo putem Prvi svetski rat je bio zaniml j iv jer su se šifrovane poruke baziralena rečima dok je Drugi u potpunosti otvorio vrata današnjoj kriptografi j i a to jematematika

Originalan nemački kocircdni naziv za ovaj šifrat bio je bdquoLORENCrdquo Britanska

Internet mreže i komunikacije

43

Broj 33

obaveštajna služba mu je dala nadimak bdquoTANIrdquo Čak ni dan danas ni je baš poznatokako je sve nastalo al i pouzdano se zna da je tajnu mašinu Hitler nazvaobdquoGehajmšrajberrdquo (nem Geheimschreiber) - mašina tajni

U srž i tehnologi ju šifrovanja bdquoLORENCrdquo šifrata nećemo ulaziti u ovom članku al iverujte nam na reč - ni je bi la jednostavna Može se pretpostaviti da je inspiraci jaŠenonovog 2 rada slučajnosti bi la upravo ova tehnologi ja iz Drugog svetskog rata

Ono čime se Treći rajh vodio je bdquosigurnardquo šifrovana veza koju niko ni je smeo dadešifruje Prenošenje šifrovanih poruka pomoću radio signala je dalo obaveštajnimslužbama mogućnost presretanja poruka poslatih radio talasima Da l i se ovo idanas dešava Imamo l i sigurnost u našim šifrovanim podacima današnj ice

Ono što je usledi lo nakon proboja ovog bdquoneuhvatl j ivogrdquo šifrata je upravo ono što jeprincip današnj ice kao neka vrsta protokola koj i mora da se ispoštuje uperfektnom šifarskom Šenonovom sistemu

1 NIKADA NIKADA NE KORISTITI DVA PUTA ISTI KLJUČ ZA ŠIFROVANJE2 NIKADA NIKADA KLJUČ NE SME DA SE ŠALJE ISTIM KOMUNIKACIONIM KANALOM

KAO PORUKA3 NIKADA NIKADA KLJUČ NE SME DA BUDE MANJ I NEGO ŠTO JE PORUKA (engl

2 Klod Elvud Šenon (eng Claude Elwood Shannon) (1916-2001) - Američkinaučnik i inženjer

Izgubljeni heroji bdquoBlečli parkardquo

44

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

one time pad) 4 NIKADA NIKADA NE SMEMO DA SAKRIVAMO SISTEM ŠIFROVANJA SVE MORA

DA JE OTVORENOG KOcircDA

Najveći propusti kriptologi je koj i su uočeni baš u Drugom svetskom ratu jesupokušaj sakrivanja sredstava koj im se generiše tajna poruka i nepoznavanjeŠenonovih krajnj ih granica informaci ja Kada kažemo bdquosredstvo i sakrivanjerdquomisl imo na algoritme Postavl ja se pitanje zašto je danas kriptologi ja sigurni ja negočetrdesetih i pedesetih godina prošlog veka

Danas uprkos tome što su algoritmi za kriptografi ju otvorenog kocircda tajnostinformaci ja je na višem nivou nego što je to bi lo dok je algoritam bio strogopoverl j iv Tajnost tajnih podataka se ne zasniva na tajnosti a lgoritama koj i generišutaj isti bdquotajni izlazrdquo (eng cipher text) nego u nemogućnosti matematičke inverznefunkci je koja bi šifrovan tekst otvori la Ovde se vidi da je svrha strukture otvorenogkocircda kao jednog od značajnih delova današnje kriptologi je ona koja ga činisigurnim i svima dostupnim

Sada kada se sa ove distance osvrnemo na Drugi svetski rat možemo videti kol ikosmo bi l i bl izu apokal ipse Naime Albert Ajnštajn je već 1944 godine imao urukama recept za nuklearnu bombu Šenon je mogao već u to vreme da nampredoči 100 siguran šifrat (tzv Hitlerovu super šifru) a l i ipak sreća nas jeposluži la da čovečanstvo tada ni je bi lo spremno da upotrebi svu raspoloživutehnologi ju

Albert Ajnštajn bdquoČetvrti svetski rat će se voditi tol jagamardquo

Zaboravl jeni heroj i Blečl i parka iako su odigral i važnu ulogu u pobedi saveznika usvetskom ratu postal i su žrtve bdquotop secretrdquo doktrine potpuno su zaboravl jeni inestal i su iz istori je

Zakl jučak ovog članka je da je ideologi ja otvorenog kocircda sasvim sigurno tu da nampomogne i da otvori vrata ka većoj sigurnosti novim idejama i kval itetu sameinfrastrukture sistema koju svi zajedno razvi jamo

Internet mreže i komunikacije

45

Broj 33

Autor Nikola Hardi

NabrajanjaBez brojeva

Za nabrajanje pojmova u Bimeru (eng Beamer) koristi se okruženje itemize aunutar tog okruženja možemo da dodajemo nove stavke pomoću item Primerizgleda ovako

beginitemizeitem Stavka Aitem Stavka Bitem Stavka C

enditemize

Sa brojevima

Postoje situaci je kada uz nabrajanje treba da stoje i redni brojevi - za to se koristienumerate okruženje a nove stavke se takođe dodaju pomoću item

beginenumerateitem Redni broj 1item Redni broj 2item Redni broj 3

endenumerate

prezentaci ja

Beamer (4 deo)

Sam svoj majstor

46

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

DefinicijeTreća situaci ja je nabrajanje parova termin - definici ja U tom slučaju se koristiokruženje description Već možete da pretpostavite kako se dodaju nove stavke

Primer

begindescriptionitem[Pojam A] Definicija izmišljenog pojma Aitem[Pojam B] Definicija izmišljenog pojma Bitem[Pojam C] Definicija izmišljenog pojma C

enddescription

Ostala podešavanja i zanimljivostiSva prethodna okruženja mogu da budu ugneždena jedno unutar drugog dotrećeg nivoa Treba biti pažl j iv jer sla jdovi vrlo lako mogu da postanu nečitl j ivi Osim toga moguće je izabrati i format oznake i l i rednih brojeva - na primer ovako

beginenumerate[I]beginenumarate[a)]

Takođe moguće je upravl jati pojavl j ivanjem pojedinih stavki na slajdovima Drugimrečima možemo da odredimo da se nabrajanja postepeno otkrivaju tako što ćemouz stavku dodati lt1-gt odnosno broj od kojeg slajda žel imo da se ta stavkapojavl ju je Tada će jedno nabrajanje biti bdquorazvučenordquo na više slajdovaJednostavni ja mogućnost je da u zaglavl je okruženja dodamo +- što znači dažel imo da se svakim slajdom otkriva po jedna nova stavka iz nabrajanja Znak bdquo-rdquo uoba primera znači da žel imo da se stavka pojavi na sledećem slajdu i da ostane

Sam svoj majstor

47

Broj 33

prisutna Možemo da izostavimo znak bdquo-rdquo i tada će stavka biti prisutna samo najednom slajdu i l i da napišemo raspon slajdova u koj ima žel imo da ta stavka budeprisutna

Rad sa kolonama i blokovimaDo sada su svi primeri podrazumeval i da je sadržaj napisan preko cele širineslajda al i Bimer (eng Beamer) ima i jednostavne mehanizme za razmeštanjesadržaja po kolonama Za rad sa kolonama se koristi okruženje columns unutarkojeg možemo da dodajemo nove kolone pomoću columnširina Sadržaj jemoguće potom pisati i van okruženja sa kolonama

U paru sa kolonama često se sreće i okruženje block koje se parametrizujenaslovom Primerom su i lustrovani i okruženje column i okruženje block

beginframebegincolumns

column05textwidthbeginblockNaslov levog blokaSadržaj u prvoj (levoj) koloni endblock

column05textwidthbeginblockNaslov desnog blokaSadržaj u drugoj (desnoj) koloni

endblockendcolumns

beginblockVan kolona

Beamer

48

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Tekst koji se nalazi ispod kolonaendblock

endframe

TabeleIako se u radu sa prezentaci jama sadržaj najčešće može uredno rasporeditipomoću kolona i nabrajanja nekada to ni je dovol jno jer su tabele pravi formatBimer podržava standardno Lateh (LaTeX) okruženje za rad sa tabelamaOkruženje za rad sa tabelama se zove tabular Pri kreiranju nove tabele moguće jepodesiti koje kolone će biti razdvojene l ini jom i da l i će nj ihov sadržaj biti centrirani l i uz levu i l i uz desnu ivicu Dodavanje novog reda se jednostavno radidodavanjem hline Lateh pruža zaista jako fleksibi lan rad sa tabelama i sigurno ćedoskočiti svim mogućim i nemogućim zamisl ima Potražite bi lo koje Lateh uputstvoza rad sa tabelama i radiće i sa Bimerom

beginframebegintabular | c | c | c | c |

hlineamp Ponedeljak amp Utorak amp Sreda hline

1 amp 16 amp 32 amp 64 hline2 amp 16 amp 128 amp 1024 hline3 amp 16 amp 512 amp 4096 hline

endtabularendframe

Sam svoj majstor

49

Broj 33

Beamer

Teoreme i istaknut tekstU nastavi su česta izlaganja teorema nj ihovih dokaza i primera U Bimer jeugrađena podrška za elegantno predstavl janje ove trojke Mehanizam takođepodržava postepeno otkrivanje sadržaja sla jda tako da slušaocima ne bude odmahotkriven dokaz teoreme Mehanizam za postepeno otkrivanje se kao i kodnabrajanja postiže pomoću bdquolt1-gtrdquo konstrukci je Evo kako to izgleda

beginframeframetitlePrimer teoreme

begintheoremlt1-gt Teorema kaže da su beamer prezentacijezanimljive

endtheorem

beginexamplelt2-gt Ovaj kod kreira slajd beamer prezentacijeendexample

beginprooflt3-gt Čestitamo stigli ste do kraja serijala o pravljenju beamer prezentacija

endproofendframe

50

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Za krajOvim člankom završavamo seri ja l o Bimeru Nadamo se da smo uspel i da vaszainteresujemo za ovu vrlo korisnu klasu Lateha Trudi l i smo se da vamprezentujemo najvažni je delove Bimera koje ćete najčešće koristiti pri l ikomkreiranja svoj ih prezentaci ja

Napominjemo još jednom da je Bimer samo jedna od klasa Lateha što znači da i zaBimer važi sve ono što ste već mogl i da pročitate u ovom časopisu kad smo pisal iseri ja l bdquoUvod u LaTeXrdquo (LiBRE brojevi 17 do 21) Štaviše ovaj seri ja l o Bimeru jebio nastavak upravo tog seri ja la U ovom seri ja lu nismo pisal i o samomformatiranju teksta u prezentaci jama jer se podrazumeva da važe ista pravi la kao iu Latehu a o tome smo pisal i u prethodnom seri ja lu

Hvala vam što ste prati l i ovaj seri ja l i žel imo vam puno uspeha u kreiranju Bimerprezentaci ja

Sam svoj majstor

51

Broj 33

Autor Nenad Marjanović

Kada smo se upoznal i sa podešavanj ima sistema i umrežavanjem vreme je za našprvi Biglbon Blek (BBB - eng BeagleBone Black) projekat Svakom od nas će ovajizazov dati razl ičite ideje a jedna od nj ih može biti i zaštita privatnosti internetkorisnika Nažalost u Srbi j i ne postoj i ni jedan izlazni tor server (eng node) i to jepomalo tužna sl ika s obzirom da govorimo o populaci j i od sedam mil ionastanovnika Al i ovu sl iku možemo promeniti udruženim snagama i za početakkreiranjem Tor transfer i izlaznog servera U ovde prikazanom grafikonufokusiraćemo se na bdquoRauter Brdquo tačku odnosno transfer server konfiguraci ju

BeagleBone Black Rev C

Vodič od prvog dana (3 deo) ndashBeagleBone Black kao Tor relej

Hardver

52

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Tor predstavl ja mrežu servera koj i se povezuju radi bol je enkripci je podataka izaštite IP adrese korisnika Naš ci l j je da danas postanemo deo ovog predivnogprojekta i da se nađemo na svetskoj karti Tor servera

Brzina interneta i zakonske regulativePotrebno je imati na umu nekol iko bitnih stvari

1 Naš server = naša odgovornost2 Obavezno naznačite da ste vi administrator a ne korisnik istog servera3 Da posedujete internet brzinu od 2 Mbs

Ako ispunjavamo tri navedena pravi la i odgovornosti možemo se posvetitiadministrativnim poslovima

Instalacija i podešavanjaU ovom primeru koristimo Debi jan Vizi (eng Wheezy) odnosno Debi jan 7 verzi juna našem BBB uređaju Vi možete testirati i druge Linuks platforme Prvododajemo izvornu bibl ioteku u etcaptsourceslist faj l pokretanjem sledećekomande u terminalu

echo deb httpdebtorprojectorgtorprojectorg wheezy main gt etcaptsourceslistdtorlist

Zatim dodajemo izvorni kl juč vršimo ažuriranje sistema i instal iramo tor i tor-arm(Tor monitoring sistem)

gpg --keyserver keysgnupgnet --recv 886DDD89gpg --export A3C4F0F979CAA22CDBA8F512EE8CBC9E886DDD89 | sudo apt-keyadd -apt-get updateapt-get install debtorprojectorg-keyring -yapt-get install tor tor-arm egrep screen -y

Ovim smo uspešno završi l i instalaci ju Tor servera i sistema za monitoring odnosnonadgledanja našeg Tor servera Sledećom komandom radimo na podešavanj imaTor servera koja se nalaze u etctortorrc faj lu Obratite pažnju i izvršite potrebne

Hardver

53

Broj 33

izmenu u pol j ima IP adresa (eng Address) nadimka (eng Nickname) i kontaktpodataka (eng ContactInfo) pre pokretanja ove komande Kopiramo i pokrećemokomandu u celosti u terminalu

egrep -v ^(|$) etctortorrcORPort 443Address 19216811Nickname LibreTorRelayRelayBandwidthRate 100 KBRelayBandwidthBurst 120 KBContactInfo ltvi at gmail dot comgt irPort 8080DirPortFrontPage etctortorhtmlExitPolicy reject

Detal je o svim vrednostima nećemo iznositi u ovom broju LiBRE časopisa al ićemo o nj ima pisati u sledećem u kome ćemo pričati o zaštiti Tor servera imogućnosti podešavanja određenih izlaznih pravi la (eng ExitPolicy)

Nakon ovoga možemo primetiti da se u folderu etctor ne nalazi torhtml faj l Ovaj faj l ni je od vel ikog značaja i možete ga l ično napraviti i l i preuzeti jednu kopi ju- naprimer sa sledeće lokaci je

cp usrsharedoctortorhtml etctortorhtml

Opcije i Tor Arm monitoringDa bismo ispravno koristi l i Tor Arm potrebno je urediti još jednom etctortorrcfaj l i restartovati servis

echo -e ldquoDisableDebuggerAttachment 0n AvoidDiskWritesrdquo gtgt etctortorrcsudo service tor reload

Ukol iko žel ite koristiti Tor Arm za nadgledanje aktivnosti na serveru pokreniteprogram screen kl iknite na bdquoEnterrdquo i kucajte sudo -u debian-tor arm Naekranu ćete imati sl ičan prikaz

BeagleBone Black

54

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Hardver

55

Broj 33

Da bismo napusti l i screen program koristimo Ctrl + a + d i na taj način kada sesledeći put pri javimo na server kucamo samo screen -r u terminalu - i naći ćemose ponovo na čuvenom Tor Arm monitoring ekranu

Nakon svake promene konfiguracionih faj lova ako slučajno nismo nešto podesi l ikako treba restartujemo servise

U sledećem broju časopisa govorićemo o minimalnim podešavanj ima ikonfigurisanju izlaznog Tor servera (eng Tor Exit Node) opci jama sigurnosti isl ičnim detal j ima u vezi sa našim prvim projektom Do čitanja u sledećem broju

BeagleBone Black

LUGoNS BarCamp 4subota 7 mart 2015 godine

Četvrti LUGoNS-ov Barkemp (BarCamp) održaće se u Novom Sadu usubotu 7 marta 2015 godine na Fakultetu tehničkih nauka sa početkomu 12 časova

Ulaz je slobodan

Poziv za predaju radovaLUGoNS poziva sve zainteresovane da pošal ju svoje radove (predavanjaprezentaci je radionice i diskusi je) do 28 februara 2015 godine

Oblasti iz koj ih možete da pri javite vaše radove su

bull Slobodan softverbull Zaniml j iv hardverbull Hakerski zakonibull Sigurnosne noćne morebull Anonimnost i privatnost na internetubull Duboki veb (eng Deep Web)bull Soci ja lne mrežebull Soci ja lni inženjeringbull Hakovanje mobi lnih uređajabull Internet u oblaku (eng Clouds) ndash hakovanje razbi janje i neočekivano korišćenjebull DPI (eng deep packet inspection)bull Mreža i mrežna neutralnost ndash vlasništvo cenzura nadmudrivanje i pol itika bdquodefaktordquo standarda

bull Programiranje i programski jezici

Nemojte se ustručavati i slobodno nam se javite ako imate rad na gore navedenei l i sl ične teme koj i smatrate interesantnim

Stranica za predaju radova nalazi se na https events lugonsorgp=1658

Page 13: LiBRE 33 Lat

13

Broj 33

1 Podržava grafičke API-je

bull Direct3D 9bull Direct3D 11bull OpenGL 2 1bull OpenGL 3 1+bull OpenGL ES 2bull OpenGL ES 3 1bull WebGL 1 0

2 Podržava platforme

bull Android (14+ ARM x86 MIPS)bull asm jsEmscripten (1250)bull iOSbull Linuks (x86 x86_64)bull Nejtive klajent (Native Client PPAPI37+ ARM x86 x86_64 PNaCl)

bull OS Iks (OSX 109)bull Rasberi-paj (RaspberryPi - ARM)bull Vindouz (Iks-pe Vista 7 8 10)bull Vin-ar-ti (WinRT WinPhone 80+ )

bgfx

14

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Autor Stefan Nožinić

UvodrEFInd je softverska apl ikaci ja za EFI (Extensible Firmware Interface) sisteme kojaomogućava izbor više operativnih sistema na jednostavan način Ovo je samoupravnik buta (boot) i u ovom broju vam predstavl jamo o kakvom projektu je reč ikako se može primeniti

Šta je (U)EFIPre nego što predstavimo sam projekat trebalo bi prvo da skrenemo pažnju idetal jni je da predstavimo problematiku EFI je nastao kao zamena za dosadašnj iBIOS (Basic InputOutput System) i razvi la ga je kompani ja Intel Ovaj pristup jekasni je zamenjen UEFI standardom EFI tehnologi ja ima prednost u slučajevimakao što su

bull Pokretanje sistema na diskovima preko 2TB memori je korišćenjem GPTtehnologi je

bull Nezavisnost od specifične arhitekture procesorabull Modularan dizajnbull Dobro okruženje pre učitavanja operativnog sistema što podrazumeva i mrežnupodršku

Tehnologi ja omogućava upotrebu 32-bitnih i 64-bitnih adresa na procesorima koj ito podržavaju Rani je BIOS tehnologi ja to ni je omogući la već se uvek koristi la 16-bitna implementaci ja iz istori jskih razloga

Predstavljamo

15

Broj 33

Particiona šemaEFI tehnologi ja ima drugači ju šemu partici ja Dok je stari pristup podržavao samoMBR (Master Boot Record) šemu nova tehnologi ja podržava GPT šemu kojaomogućava veći broj primarnih partici ja Sa starim pristupom taj broj bio jeograničen na četiri primarne partici je od koj ih je svaka morala da ima kapacitetmanj i od 2TB

AplikacijeUEFI podržava izradu apl ikaci ja koje bi se pokretale nezavisno od operativnogsistema Ove apl ikaci je se mogu naknadno instal irati Primer takvih apl ikaci ja supokretači (loader) operativnih sistema kao i upravnici butovanja

EFI sistemska particijaEFI podržava posebnu partici ju za smeštanje raznih potrebnih informaci ja kao štosu potrebni podaci za rukovanje računarom i specifične apl ikaci je Ova partici ja jenajčešće FAT32 sistem datoteka

rEFInd

16

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

But menadžer i but louder - ima razlikeOd popularizaci je GRUB upravnika mnogi korisnici su ostal i bez objašnjenja kakvaje razl ika između but loudera (boot loader) i but menadžera (boot manager) Ovose dešava jer GRUB pruža obe usluge u sklopu jednog programa pa se time teževidi razl ika između ova dva pojma But menadžer je upravnik pomoću kojeg jemoguće izabrati operativni sistem za pokretanje On ne zna ništa speci ja lno ooperativnom sistemu pa time ne zna ni kako da ga pokrene On samo zna datreba da pokrene but louder za taj sistem Kada je sistem izabran pokreće sespecifičan but louder za taj sistem koj i je zadužen za dal j i proces pokretanjakernela Za razl iku od GRUB upravnika rEFInd pruža samo usluge but menadžerašto u početku može zvučati poražavajuće za ovaj projekat Kada uzmemo u obzirda većina sistema danas ima but louder u sklopu kernela (ukl jučujući i Linuks odnovi j ih izdanja) ovaj problem je prevaziđen

Predstavljamo

17

Broj 33

InstalacijarEFInd postoj i kao deb i kao rpm paket al i postoj i i zapakovan kao zip arhivaZahval ju jući tome paket je moguće instal irati upotrebom dpkg komande nadistribuci jama baziranim na Debi janu kao i upotrebom rpm komande nadistribuci jama koje koriste taj način pakovanja paketa Za Ubuntu postoj i i PPArepozitori jum pa rEFInd može biti instal iran na sledeći način

sudo apt-add-repository pparodsmithrefindsudo apt-get updatesudo apt-get install refind

Nezavisno od toga koj i način od gore opisanih koristite rEFInd će automatski bitiprebačen na ESP i biti postavl jen kao podrazumevani upravnik

KonfiguracijarEFInd bi trebalo da vam pruži zadovol javajuću funkcionalnost bez dodatnekonfiguraci je posle instalacionog procesa On će automatski detektovati loudereoperativnih sistema korišćenjem pretrage po svim partici jama koje prepozna Uslučaju da ste napredni j i korisnik i da žel ite da modifikujete ponašanje rEFInda tomožete uraditi izmenom njegove konfiguracione datoteke Postoj i g lobalnakonfiguraci ja i konfiguraci ja za svaki sistem posebno Ovaj tekst bi postao previšedugačak kada bismo ulazi l i u detal je same konfiguraci je pa vam zatopreporučujemo ako imate potrebu za dodatnom konfiguraci jom da posetitedokumentaci ju projekta i l i ako imate neke nedoumice da kontaktirate s namapreko naše e-pošte

Za krajŽelel i bismo da ovaj tekst zakl jučimo ocenom da je ovaj projekat dosta zaniml j ivda pruža zadovol javajuću funkcionalnost i da omogućava korisnicima koj i koristeovaj sistem pokretanja lako pokretanje svoj ih operativnih sistema Još jednomžel imo da vam skrenemo pažnju da nam se obratite i ukažete ako smo nešto važnopropusti l i da pomenemo i l i ako nam se negde potkrala greška

Korisni l ink http wwwrodsbookscomrefind

rEFInd

18

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Autor Nikola Hardi

Opšte je poznato da su računari dobri u radu sa brojevima Međutim vremenom suse i potrebe korisnika i alati za programiranje računara razvi ja l i i rad sa drugači j imtipovima podataka je postao uobičajen i znatno jednostavni j i nego rani je Svi smoimal i pri l iku da radimo sa programima za obradu fotografi ja video materi ja la i l izvučnih zapisa Multimedi ja je ipak tema koja prevazi lazi jedan uvodni kurs o C-ual i do kraja ovog seri ja la ćemo se dotaći i tih tema Za početak osvrnućemo se narad sa tekstualnim podacima na C način

Stringovi na C načinDefinici ja tekstualnog podatka u sferi računarstva se uglavnom svodi na to da jetekst niz karaktera a karakteri su znakovni simbol i Iako imamo mogućnost daradimo sa tekstom i l i multimedi jom računari ipak razumeju samo brojeve pamoramo tako da im predstavimo i tekst Postoje razni standardi kako se pojedinikarakteri predstavl ja ju u memori j i računara između ostalog najpoznati j i su ASCIIEBCDIC UTF i td EBCDIC je standard koj i je prisutan u Eplovom (eng Apple) svetu iviše nema tol iko važnu ulogu ASCII je standard koj i je vrlo prisutan i danas UTF jenastao kao proširenje ASCII standarda javl ja se u više vari janti i uvodi podršku zapisma razl ičita od abecede (kinesko japansko ćiri l ica arapsko i mnoga druga)

Važno je napomenuti da je originalni ASCII standard propisivao 7 bitova za jedankarakter što je dalo prostora za 128 karaktera Među tim karakterima se nalazecifre mala i vel ika slova engleskog alfabeta i niz kontrolnih karaktera Kontrolnikarakteri su oznake za novi red prazno mesto tabulator upravl janje štampačima(vraćanje glave štampača na početak) rad sa terminal ima (alarm i l i obaveštenje

Kako da

Uvod u programski jezik CRad sa stringovima (9 deo)

19

Broj 33

da se nešto dogodi lo) ASCII standard je proširen na 8 bitova odnosno ceo jedanbajt i sada podržava 256 karaktera Potražite na internetu termin bdquoASCII tabelardquo dabiste stekl i uvid u to kako izgleda tzv tabela ASCII karaktera

Rad sa pojedinačnim znakovima ne obećava mnogo Postoj i realna potreba zaradom sa rečima rečenicama l ini jama teksta itd Podaci koj i se sastoje od više odjednog karaktera se u domaćoj l i teraturi nazivaju znakovnim niskama madaodomaćen je i naziv bdquostringrdquo koj i je i mnogo češće u upotrebi U programskomjeziku C se stringovi predstavl ja ju običnim nizovima karaktera (char niz[]) a krajteksta se označava NULL karakterom odnosno speci ja lnim znakom 0 či jabrojevna predstava je pogađate nula Ovakva predstava tekstualnih podatakanosi sa sobom i pojedine kompl ikaci je Gotovo svi savremeni jezici poznaju tipstringa dok su u C-u stringovi ipak samo obični nizovi

Da se podsetimo nizovi u C-u su zapravo pokazivači na deo u memori j i Kadapokušamo da pristupimo jednom elementu niza tada se vrši operaci jabdquodereferenciranjardquo sa zadatim odstupanjem Sledi nekol iko primera koj i i lustrujurad sa nizovima na primeru nizova karaktera

char niz1[] = zdravoniz1[0] = Z

char niz2[5]niz2[0] = 0niz2[1] = kniz2[2] = 0

Pri deklaraci j i niza 1 ni je zadata dužina zato što je u jednom izrazu zadata iinici ja l izaci ja niza koja glasi ldquozdravordquo Prevodi lac može sam da zakl juči kol ikomemori je je potrebno

U drugom primeru je kreiran niz karaktera dužine 5 Međutim popunjena su samoprva tri mesta Primećujete razl iku između prvog i trećeg elementa Prvi je cifra 0(uokviren je navodnicima) a treći je brojčana vrednost 0 koja označava krajstringa

Može se primetiti još jedna razl ika u data dva primera U prvom primeru sukorišćeni dvostruki navodnici dok su u drugom korišćeni jednostruki Razlog za to

Uvod u programski jezik C

20

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

je što se znakovni nizovi koj i su uokvireni dvostrukim navodnicima smatrajustringovima i podrazumevano im se dodaje bdquoterminatorrdquo odnosno znak NULL koj ioznačava kraj stringa Jednostruki navodnici se iskl jučivo koriste za predstavl janjepojedinačnih karaktera Ovo znači da zapisi ldquoardquo i a nisu jednaki Prvi zapis jedužine 2 jer ima i znak NULL koj im je završen

Ispisivanje i učitavanje stringovaPre nego što nastavimo dal je biće objašnjen jednostavan način za ispisivanje iučitavanje stringova pomoću standardnog ulazaizlaza Da se podsetimobibl ioteka za standardni ulazizlaz (ispis podataka u konzol i odnosno terminalu) jestdioh Ukol iko se koristi formatirani ispis potrebno je funkci jama printf() iscanf() proslediti format string koj i sadrži speci ja lan znak s čime je označenoda žel imo da ispišemo znakovni niz sve do NULL karaktera Drugi način jeupotrebom funkci ja puts() gets() i getline() iz bibl ioteke stringh Sledi primer

include ltstdiohgt include ltstringhgt int main()

char niz1[] = Zdravo svete

printf(sn niz1)

scanf(s niz1)puts(niz1)

return 0

Može se primetiti da je u slučaju funkci je printf() potrebno naglasiti speci ja lnimkontrolnim karakterom n da nakon ispisa treba preći u novi red Funkci ja puts() topodrazumevano radi

Za ove i sve druge funkci je dodatnu pomoć je moguće pronaći u Linuksovim manstranicama u odel jku 3 koj i je posvećen standardnim bibl iotekama Recimo mangetline sadrži detal jno uputstvo o funkci j i getline()

Kako da

21

Broj 33

Kopiranje stringovaKao što je u prethodnom odel jku napomenuto stringovi su u C-u samo običninizovi To znači da sledeći kod verovatno neće uraditi ono šta bi bi lo očekivano

niz1 = niz2

Ovime smo pokazivaču niz1 bdquorekl irdquo da pokazuje tamo gde i pokazivač niz2 Efektivno oni sad pokazuju na isti tekst međutim ako izmenimo niz1 to će seodraziti i na niz2 a važi i obrnuto Ovime smo dobi l i samo dva pokazivača na istideo memori je a uglavnom to ni je bio ci l j

Drugi način kako bismo sadržaj drugog niza mogl i da kopiramo u prvi niz je petl jakojom bismo kopiral i element po element Pošto je operaci ja kopiranja stringovavrlo često potrebna postoj i standardna bibl ioteka za rad sa stringovima koja sezove stringh a funkci ja za kopiranje stringova je strcpy()

strcpy(niz1 niz2)

Dati primer kopira sadržaj niza 2 u niz 1 Kopira se element po element sve dok seu nizu 2 ne naiđe na NULL karakter Ovakvo kopiranje (element po element) seinače u stranoj l i teraturi naziva i bdquodeep copyrdquo i vrlo često se sreće u radu sastrukturama podataka gde je potrebno obići celu strukturu podataka i svakielement kopirati a strukturu opet izgraditi u drugom delu memori je

Zaniml j ivo je što je kopiranje stringova moguće pojednostaviti ukol iko definišemonovi tip podatka kao strukturu koja sadrži niz karaktera i potom izvršimo kopiranjeOvo je trik koj i se uglavnom ne koristi u praksi i spomenut je samo kaozaniml j ivost

include ltstringhgt struct str char niz[50]

int main()

struct str s1struct str s2

Uvod u programski jezik C

22

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

strcpy(s1niz zdravo)s2 = s1

s2niz[0] = Z

puts(s1niz)puts(s2niz)

return 0

Kreirana je struktura str koja sadrži pol je niza karaktera pod nazivom niz Pozivomfunkci je strcpy() kopiramo string ldquozdravordquo u s1 čime smo bdquonapuni l irdquo sadržajobjekta s1 Potom je izvršena redovna dodela čime je sadržaj objekta s1 kopiran us2 Zatim je izmenjen samo prvi karakter objekta s2 i oba stringa su ispisanaPrimećujete da su kopirani svi znakovi a da je izmenjen samo drugi objekatZaniml j iv trik

Poređenje spajanje i pretraga stringovaDruga vrlo česta situaci ja je poređenje dva stringa Ukol iko bi poređenje bi loizvršeno upotrebom redovnog operatora za poređenje == tada bi u stvari bi lepoređene samo adrese na koje pokazuju pokazivači tih stringova jer da sepodsetimo stringovi su u C-u samo obični nizovi Ispravan način za poređenje dvastringa je pozivanjem funkci je strcmp() či ja je povratna vrednost 0 ukol iko su jojprosleđeni stringovi sa jednakim sadržajem

include ltstringhgt int main()

char niz1[] = zdravochar niz2[] = zdravo

if( strcmp(niz1 niz2) == 0)puts(Stringovi su jednaki)

elseputs(Stringovi nisu jednaki)

return 0

Kako da

23

Broj 33

Funkci ja strcmp() poredi svaki element prosleđenih nizova pojedinačno a dobraje vežba implementiranje nove funkci je strcmp() koja će unutar petl je da porediodgovarajuće elemente prosleđenih nizova i potom vratiti rezultat 0 ukol iko su svielementi jednaki Potrebno je pripaziti na situaci ju kada su stringovi razl ičitihdužina

U svetu računara spajanje dva sadržaja se zove konkatenaci ja Odatle i nazivfunkci je za spajanje dva stringa strcat() Važno je uveriti se da je string u koj i sedodaje sadržaj dovol jno vel ik da ga prihvati inače može da dođe do nežel jenogprepisivanja u memori j i uništavanja drugih podataka i neispravnog ponašanjaprograma

Pretraga unutar stringa se može obaviti funkci jom strstr() Ova funkci ja kaoparametre očekuje pokazivač na niz karaktera (string) u kojem je potrebno pronaćistring koj i je prosleđen kao drugi parametar Povratna vrednost je pokazivač nadeo memori je gde se žel jeni string prvi put pojavio

Sledi malo opširni j i primer koj i i lustruje spajanje pretragu i kopiranje stringova

include ltstringhgt int main()

char niz_a[50] = LiBRE je char niz_b[] = najbolji casopischar niz_c[] = e-magazin

strcat(niz_a niz_b)puts(niz_a)

char cilj = strstr(niz_a casopis)strcpy(cilj niz_c)

puts(niz_a)

return 0

Uvod u programski jezik C

24

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Pretvaranje tipova podataka u stringove ipretvaranje iz stringovaPretvaranje podataka iz jednog tipa u drugi i l i kastovanje (eng type casting) se zavećinu tipova vrši jednostavno pisanjem tipa u zagradama na primer (int)523 Stringovi su i po ovom pitanju drugači j i Postavl ja se pitanje šta pretvoriti ucelobrojni tip - da l i adresu na koju pokazuje pokazivač niza koj i predstavl ja stringPrvi element Šta ako taj string ni je broj Predstavićemo rešenje za konverzi jubrojeva u stringove i obrnuto

Ispis podataka na ekranu se takođe može smatrati konverzi jom Broj sa pokretnimzarezom je u memori j i prikazan na pomalo čudan način a pozivom funkci jeprintf() kada je kao format zadat f na ekranu ćemo dobiti razuml j iv niz znakovaSl ičan rezultat možemo dobiti funkci jom sprintf() a jedina razl ika u odnosu naprintf() je ta što sprintf() kao prvi argument očekuje pokazivač na string dok sudrugi (format string) i treći (argumenti koj i se povezuju sa formatnim stringom)sl ični kao kod funkci je printf()

Kod pretvaranja stringova u brojevne tipove može poslužiti funkci ja sscanf() kojase ponaša sl ično kao funkci ja scanf() s tim što je prvi argument adresa(pokazivač na string) koju žel imo da skeniramo u nadi da će se poklopiti saformalnim stringom koj i je drugi argument a rezultati će biti sačuvani u adresamakoje su prosleđene kao 3 4 i ostal i parametri Drugi način za pretvaranje stringovau celobrojne brojeve i brojeve sa pokretnim zarezom su funkci je atoi() i atof()

Funkci je koje koriste formatni string su česte u jeziku C i zaslužuju posebnu pažnjumeđutim to je priča za poseban članak U ovu klasu funkci ja spadaju recimo ifunkci je za rad sa datotekama

BezbednostRad sa stringovima može da bude izuzetno opasna stvar po pitanju bezbednostiprograma Ukol iko se niz karaktera ne završava NULL karakterom svašta može dapođe po zlu pri pozivu funkci ja kao što su strcpy() strcmp() i sl ične Cela klasatih funkci ja se oslanja na postojanje znaka koj i označava kraj stringa Kada stringni je propisno završen tada te funkci je mogu da zalutaju u deo memori je vanstringa i svašta može da pođe po zlu Ovakav tip napada se inače zoveprekoračenje bafera (eng buffer overflow) Preporučen način kako da izbegnete

Kako da

25

Broj 33

Pregled popularnosti GNULinuxBSDdistribuci ja za mesec februar

Distrowatch

Pad ltPorast gtIsti rejting =(Korišćeni podaci sa Distrovoča)

12345678910111213141516171819202122232425

MintUbuntuDebianopenSUSEelementaryMageiaFedoraManjaroCentOSLXLEArchBodhiAndroid x86Kal iPCLinuxOSPuppyRobol inuxLubuntuQ4OSBlack LabNetrunnerSimpl icityEvolveZorin4MLinux

2919gt1778gt1701gt1323gt1204gt1174gt1166gt1028lt1020gt965gt957gt907gt900lt760gt742lt732gt695gt670gt663gt655gt652gt629gt607gt583gt517=

takve nepri jatne situaci je pri radu sastringovima je da koristite verzi jefunkci ja koje su ograničenemaksimalnom dužinom stringa kaošto su strncpy() strncat() strncmp() i td Sve te funkci je kaotreći parametar zahtevaju broj koj iodređuje maksimalnu očekivanudužinu stringa Još jedna vrlo korisnafunkci ja je strlen() či j i zadatak je daodredi dužinu stringa Budite pažl j ivi ovo je prvo mesto gde se tražebezbednosni propusti u programimaNe verujte podacima koj i spol ja ulazeu vaš program a pogotovo kada je rečo stringovima

Uvod u programski jezik C

26

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Autor Dejan Maglov

Projekti slobodnog softvera obično počinju kao projekti pojedinca i l i male grupeprogramera a koj i rade na razvoju softvera či j i je ci l j da zadovol j i neke od nj ihovihl ičnih potreba Projekat će se smatrati uspešnim ukol iko se šira zajednicazainteresuje za njega nakon što prepozna korisnost softvera ne samo za pojedincekoj i su započel i projekat već i za širu zajednicu Kada je u pitanju slobodni softvervremenom je postala stalna praksa da se zajednica umeša u razvoj projekataDobri projekti sami privlače zajednicu l judi koj i su zainteresovani za nj ih i ona uvećini slučajeva preuzima na sebe testiranje pobol jšanje funkcionalnosti održavanje i tehničku podršku projekta

Zajednice slobodnog softvera mogu da se okupe oko projekta slobodnog softverapo teritori ja lnom principu i l i da nastanu kombinaci jom ovih principa

Primeri

bull LiBRE projekat okupl ja zajednicu oko projekta bez teritori ja lnog ograničenjabull LUGoNS (Linux User Group of Novi Sad) je zajednica korisnika Linuksa poteritori ja lnom principu bez obzira na konkretan projekat

bull Ubuntu-rs zajednica koja je kombinaci ja okupl janja zajednice oko konkretnogprojekta (Ubuntu) i teritori ja lnog principa koj i se ograničava na teritori ju Srbi je

Ova sinergi ja projekata i korisnika slobodnog softvera ima više prednosti i zakorisnike i za projekat Projekat se na ovaj način brže razvi ja dobi ja na

U potrazi za idealnom distribucijom

Socijalni kriterijumi za izbor idealnedistribucije (6 deo)

Oslobađanje

27

Broj 33

funkcionalnosti greške se brzo ispravl ja ju i td Korisnici dobi ja ju osećaj dapripadaju grupi druže se sa istomišl jenicima učestvuju u promoci j i kval itetnihpojedinaca itd

Dve najvažni je uloge lokalnih zajednica za GNULinuks distribuci je su

1 pružanje tehničke podrške i edukaci je na maternjem jeziku2 rad na lokal izaci j i i pri lagođavanje distribuci je lokalnim potrebama

Informaci ja da postoje lokalne zajednice slobodnog softvera je od naročitogznačaja za početnike i korisnike koj i nedovol jno dobro znaju strane jezike(naročito engleski jezik) Ako izuzmemo komerci ja lne projekte otvorenog koda(Red Het SUSE) ne postoje zvanične škole i kursevi za slobodni softver Zaedukaci ju početnika je uglavnom zadužena zajednica a jasno je da je učenje namaternjem jeziku uvek lakše nego na bi lo kom drugom stranom ma kol ikodobro ga poznajete

Forumi i viki stranice lokalnih zajednica su prave bibl ioteke u koj ima korisnicimogu da nađu većinu odgovora na svoja pitanja a za sva ostala tu su forumi iIRC kanal i zajednica na koj ima uvek ima nekoga i koj i imaju već gotova rešenjaza vel iki broj problema

U potrazi za idealnom distribucijom

28

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Lokalne zajednice kao kriterijum za izbor idealnedistribucijePočetnicima i korisnicima koj i ne vladaju dobro engleskim jezikom toplopreporučujemo da biraju GNULinuks distribuci je koje imaju aktivnu lokalnuzajednicu Ovladavanje novim operativnim sistemom je mnogo lakše ukol iko vambdquoleđa čuvardquo lokalna zajednica na koju se uvek možete osloniti

Već smo spomenul i da su popularni je GNULinuks distribuci je namenjenepočetnicima Slučaj je isti i sa lokalnim zajednicama okupl jenim oko nj ih Ovomeđutim ne znači da je kval itet usluga koje nude manje popularne lokalnezajednice okupl jene oko distribuci ja namenjenih napredni j im korisnicima loši j i Manje popularne distribuci je okupl ja ju manje l judi a l i zato oni poseduju većeznanje Iskustvo sa zajednicama okupl jenim oko slobodnog softvera je uglavnompozitivno i ukazuje na to da kval itet usluga koje one nude korisniku ni je uslovl jenpopularnošću i masovnošću zajednice nego iskl jučivo njenom (ne)aktivnošću

U svakom slučaju dosadašnj i saveti za izbor idealne distribuci je važe i dal jeSoci ja lni aspekt slobodnog softvera je samo dodatni faktor koj i vam može pomoćipri donošenju odluke kada se dvoumite između nekol iko mogućih rešenja

Još uvek ne postoj i na jednom mestu potpuni i ažurirani spisak svih aktivnihsrpskih zajednica Nešto najbl iže tome može da se nađe na adresihttps pulsslobodewordpresscom Za informaci je o nekim drugim lokalnimzajednicama koje možda postoje al i nisu na ovom spisku moraćete sami dapretražite internet

Lokalizacija kao kriterijum za izborZa lokal izaci ju GNULinuks distribuci ja i GNU programa odgovorni su pojedinci ilokalne zajednice Sasvim sol idnu srpsku lokal izaci ju mogu imati i projekti koj iuopšte nemaju svoju lokalnu zajednicu a isto tako lošu lokal izaci ju mogu imati iprojekti sa dobrom lokalnom zajednicom Sve je stvar prioriteta zajednica iaktivnosti pojedinaca

Pravu i kontrol isanu lokal izaci ju može imati samo lokalni projekat Ovakvihprojekata u Srbi j i ima malo i teško se probi ja ju čak i u lokalu u konkurenci j isvetskih projekata Istina je da mnoge veće GNULinuks distribuci je imaju srpskulokal izaci

Oslobađanje

29

Broj 33

ju u ponudi pa se možda sl ični lokalni projekti koj i su usmereni samo na striktnulokal izaci ju smatraju nepotrebnima Uzvodna lokal izaci ja u slučaju Srbi je vrlo čestobude veoma loše čak nakaradno sprovedena Jedna polovina programa jelokal izovana srpskom ćiri l icom a druga latinicom Ako postoj i još delova sistemakoj i uopšte ni je lokal izovan onda se pojavl ju ju i delovi programa koj i su naengleskom Zato ćemo se vratiti na prvu rečenicu ovog pasusa i ponovo utvrditi dasamo lokalni projekat može potpuno kontrol isati pravu srpsku lokal izaci ju

U Srbi j i za sada imamo dva aktivna projekta GNULinuks distribuci je ndash TriOS(http triosrs) i Serbian (http wwwdebian-srbi ja iz rspserbianhtml) Obaprojekta su mlada i imaju svoj ih prednosti i mana Kome treba lokal izovanoperativni sistem može da proba jedan od ova dva projekta

U potrazi za idealnom distribucijom

30

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Iako ove dve domaće distribuci je nisu baš naj idealni je interesantno je probati ih iuporediti sa drugim distribuci jama

Za kraj serijalaNamera nam je bi la da kroz ovaj seri ja l o kriteri jumima pri izboru idealnedistribuci je definišemo većinu kriteri juma pri izboru i pokažemo zašto je teškoodgovoriti na jednostavno pitanje bdquoKoju mi distribuci ju preporučujeterdquo

Ni na samom kraju nismo dal i konkretan odgovor na pitanje koja je idealnaGNULinuks distribuci ja Suviše je subjektivnih ocena da bi se mogao datikonkretan odgovor Smatramo da je jako teško napisati neki algoritam izbora pokriteri jumima koje smo identifikoval i i definisal i a možda je čak i nemoguće poštose izlazi stalno menjaju Izlazi iz tog algoritma su GNULinuks distribuci je koj ih izdana u dan ima sve više a i one stare se stalno menjaju

Sam seri ja l bdquoU potrazi za idealnom distribuci jomrdquo neće biti završen samo zato štose više neće baviti kriteri jumima pri izboru nego će pokušati da predstavl jaGNULinuks distribuci je koje su po nečemu bdquoidealnerdquo

Oslobađanje

31

Broj 33

ORM

Autor Dejan Čugal j

Object relation mapping (ORM)

ORM (eng Object RelationMapping) je način postizanja traj-nosti (eng persistence) objekataunutar relacionih baza podatakaModel deluje kao posrednik nalogičkom delu apl ikaci je Automat-ski presl ikava podatke iz objekata ubazu i nazad na zahtev apl ikaci jeDa bismo objasni l i kako ovo sveradi moramo da vam predstavimoORM frejmvork (eng framework)programa otvorenog koda -Hajbernejt (eng Hibernate -http hibernateorgorm)

Šta je ORMUkratko ORM je automatizovano transparentno presl ikavanje objekatakorišćenjem metapodataka koj i opisuju mapiranje veze između objekta i baze

ORM (2 deo)

Slobodni profesionalac

32

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

podataka u apl ikaci jama koje su napisane u objektno ori jentisanim programskimjezicima Apl ikaci ja komunicira sa ORM-om preko njegovog vlastitog API-ja (engapplication programming interface) i određenih objekata Ova komunikaci ja jepotpuno odvojena od komunikaci je koja se odvi ja između ORM-a i baze podatakapreko SQL-a i DBC-a

Da bi se postigla i dostigla potpuna snaga ORM-a u apl ikaci j i koju projektujemonikako se ne sme iskl jučiti znanje relacionih modela SQL jezika te poznavanjeDBMS-a u kome se radi ORM ni je ništa drugo do srednj i sloj između gorepomenutih tehnologi ja i objektno ori jentisanog programiranja kao što smo to dosada već više puta naglasi l i

Implementacija ORM-aPostoje razl ičiti načini implementaci je ORM-a Mark Fasl (Mark Fussel) je 1997definisao četiri nivoa

1 bdquoČistrdquo relacioni način2 Slabo mapiranje objekata3 Umereno mapiranje objekata4 Potpuno mapiranje objekata

bdquoČistrdquo relacioni način

Cela apl ikaci ja ukl jučujući i korisnički interfejs dizajnirana je relacionim modelom iSQL relacionim operatorima Ovakav pristup je odl ičan za male projekte Direktanpristup SQL-u omogućava fino podešavanje svakog aspekta upita koj i se postavl jabazi podataka Osnovne mane su portabi lnost (prenosivost) i održavanje ovakvihsistema pogotovo ako se planira korišćenje apl ikaci je na duži rok Ovakvi sistemimasovno koriste sačuvane procedure (eng stored procedures) što znači da jeposlovna logika (eng busines logic) prebačena na samu bazu podataka

Slabo mapiranje objekata

Entiteti su predstavl jeni kao klase i mapiranje se radi ekspl icitno ka relacionimtabelama SQLJDBC je sakriven od poslovne logike korišćenjem poznatih šablona(patterns)

Umereno mapiranje objekata

Slobodni profesionalac

33

Broj 33

Dizajn apl ikaci ja se svodi na objektne modele SQL se generiše u vremekompaj l iranja (eng build-time) i l i u vreme izvršavanja (eng run-time) Specifikaci jaupita nad bazama podataka se radi na objektno ori jentisanom jeziku Ovakvisistemi se koriste u apl ikaci jama srednj ih vel ičina kod koj ih je bitna portabi lnostizmeđu razl ičitih sistema za upravl janje bazama podataka (DBMS)

Potpuno mapiranje objekata

Podržava sofisticirano objektno model iranje nasleđivanje i pol imorfizamEfikasnost dobi janja podataka je na visokom nivou i koriste se metode kao što sulenjo učitavanje (eng lazy loading) i strategi ja keširanja (eng caching) Implementaci ja je transparentna u apl ikaci jama Ovaj nivo je jako teško dostići Pojedincu su potrebne godine razvoja da postigne ovakvu fleksibi lnost pristupa imanipulaci ja u relacionim bazama podataka Upravo ovaj nivo se postiže ako sekoriste rešenja ORM-a kao što je Hajbernejt

Zašto ORMImplementaci ja ORM rešenja pogotovo ako seprvi put susrećete sa ovim modelom može dabude veoma frustrirajuća i malo teža zaimplementaci ju Kada ovo kažemo misl imo daprogramer koj i implementira ORM i hoće da istibude kval itetno urađen mora da posedujepredznanje objektno ori jentisanog programiranjai naprednih tehnika kao što su nasleđivanje ipol imorfizam

Ovo inicira fundamentalna pitanja

bull Pa zašto bi iko onda implementirao ovako nešto kompleksnobull Vredi l i truda upuštati se uopšte u ORM

Odgovor ni je jednostavan Dosadašnja iskustva u korišćenju ORM-a i njegovapopularnost već daju odgovor na postavl jeno pitanje Očigledno je da su benefitikoje donosi ovaj model veći od kompleksnosti njegove implementaci je a to su

Hibernate ORM

34

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Veća produktivnost

ORM smanjuje kol ičinu koda potrebnog za ostvarivanje trajnosti podataka Ovoomogućava programeru da vreme koje bi utrošio na ručno mapiranje podatakautroši na druge delove apl ikaci je

Lakše održavanje

Manje l ini ja koda osigurava bol ju razuml j ivost (i možda bol j i kval itet koda) jernaglašava apl ikaci jsku logiku ORM takođe ublažava uticaj nastal ih promena kaošto su promene u bazi strukturi tabela i td

Prenosivost

Većina ORM rešenja podržava sisteme za upravl janje bazama podataka raznihproizvođača ORM u potpunosti odvaja sloj apl ikaci je od stvarne SQL komunikaci jekoja se odvi ja u pozadini Time omogućava da se pišu apl ikaci je koje će moći da seizvršavaju na razl ičitim bazama podataka bez potrebe za dodatnim kodiranjemOva komunikaci ja se odvi ja sa programskim interfejsima ORM-a nezavisno oDBMS-u sa koj im je u bi lo kom momentu povezan ORM takođe omogućava lakšiprelaz sa manj ih na veće baze podataka tokom razvoja apl ikaci je

Uvidel i smo da trenutno postoje dve paradigme koje se bdquosudarajurdquo i koje supodjednako dobre same za sebe Relaciona paradigma potvrđuje da sve što jeizgrađeno na matematičkim osnovama je i trajno u smislu kval iteta koje posedujeU domenu u kom relaciona paradigma egzistira ona je ako je to u ovo vremeuopšte moguće tvrditi nezamenj iva

Ono što otvara pitanja i daje razlog za sumnju je koja je krajnja granicaupotrebl j ivosti relacione paradigme tj kol iki su kapaciteti složenosti zahtevaapl ikaci ja sa kojom može da se nosi Praksa je pokazala da je sasvim mogućebdquoizvestirdquo složene projekte - al i održavanje skalabi lnost razuml j ivost prenosivost -pitanja su sa koj im se relaciona paradigma teško može izboriti

Sa druge strane svoj habitat u informacionim tehnologi jama je našla i objektna

Slobodni profesionalac

35

Broj 33

paradigma Iako na prvi pogled ova dva modela nemaju ništa zajedničko - što je uneku ruku i istinito gledajući prirodu podataka koj im manipul išu - praksa jepokazala da su usko povezane i skoro da imaju sinaptičku vezu

Pitanje bdquokako spoj iti te sinapserdquo dovelo je do žučnih rasprava u uskim naučnimprogramersko-administratorskim krugovima Rodi l i su se razni model i a l i jedan jeiskočio i polako ulazi u široku primenu - a to je ORM Svoj im supti lnim pristupomproblemu nekompatibi lnih paradigmi nekako je uspeo da stvori taj nedostajućibdquoelektrični signalrdquo koj i ih je povezao Ovo je omogući lo da dve strane koje susvaka za sebe u svom domenu ostavi le i ostavl ja ju duboki trag u informacionimtehnologi jama sarađuju i donesu novi kval itet

Korisni l inkovi

[1] Hibernejt http hibernateorg[2] Viki http googlLlZulw[3] Tutori ja l i http googlCGzvnc

Hibernate ORM

36

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Autor Kriptopank

Šta su zapravo metapodaci Najkraće rečeno to su podaci o podacima i l iinformaci je koje opisuju podatke

Najpre da napravimo razl iku između podataka i metapodataka Podaci sunaprimer snimak (i l i transkript) vaših telefonskih razgovora sadržaj poruka kojepišete primate i l i šal jete podaci koje kačite na internet i l i preuzimate pretrageGuglom postovi na forumima dopisivanja na IRC kanal ima i l i drugim četovimaaudio i video snimci Skajp razgovora i tako dal je

Hajde da vidimo šta bi bi l i odgovarajući metapodaci za ove primere

bull Za telefonske razgovore metapodaci mogu biti lokaci ja učesnika brojevitelefona trajanje razgovora IP i MAC adresa

bull Za poruke četove i Skajp i l i druge video-audio komunikaci je sl ično je kao kodtelefonskih razgovora

To su samo metapodaci

Internet mreže i komunikacije

37

Broj 33

bull Kod foruma i pretraga Guglom ima malo manje metapodataka al i Gugl i raznisajtovi i forumi ionako čuvaju logove o korisnicima što su takođe metapodaci

Ako do sada koj im slučajem niste uvidel i opasnost po privatnost u ovimmetapodacima koje svako od nas smrtnika svakodnevno ostavl ja za sobom usvetu interneta i ostal ih digitalnih komunikaci ja nadamo se da će vas ovaj primermakar podstaći na razmišl janje a možda i na nešto više

Zamisl i te da neko (zvaćemo ga posmatrač) stalno sakupl ja metapodatke koje zasobom ostavl jate kao mrvice hleba Posmatrač recimo zna da se nalazite naautoputu nedaleko od famoznog Feketića da se ne krećete da zovete AMSS zatimšlep službu i možda taksi a l i ne zna šta ste razgovaral i I l i posmatrač vidi da steprvo zval i aerodrom Nikola Tesla pa odmah potom taksi a l i ne zna šta sterazgovaral i I l i posmatrač vidi da ste zval i prvo šest brojeva či je identitete takođezna pa vidi da se oni zatim kreću ka vama - GPS (eng Global Positioning System) pa zatim pica servis Mekdonalds i neku poznatu prodavnicu kineske hrane al i nezna šta ste razgovaral i

Posmatrač ne mora da bude mnogo pametan niti da prisluškuje vaše razgovore dabi shvatio šta se dešava i l i šta će se desiti Sasvim mu je jasno da vam je u prvomprimeru auto stao na autoputu zatim da ste se u drugom slučaju uputi l i naaerodrom i da možda putujete van zemlje i l i ste poslal i taksi po nekoga saaerodroma a da u trećem slučaju okupl jate žurku kod vas Više možete pogledatina http googl7vUjP

Iako su to bdquosamordquo metapodaci treba biti svestan da ti metapodaci o vama stvarajujednu digitalnu sl iku i l i bol je reći digitalni mozaik i na neki način vas jedinstvenoodređuju Pogotovo kada se planski prikupl ja ju na više nivoa (kompjuter pametnitelefon pametni automobi l i kreditna kartica) metapodaci čine vaš digitalniidentitet Al i da stvar bude još gora ta sl ika o vama ne mora nužno biti istinita jerse lako može lažirati Recimo možete zameniti telefone i l i automobi le sa nekimnamerno i l i slučajno i l i vam neko može jednostavno ukrasti telefon laptop i l ikreditnu karticu Zaniml j iv video http googlKO1fKf

Evo jednog primera koj i vas može uvući u vel ike nevol je Recimo da prolazitenekom zabačenom ul icom i da vam neprimetno ispadne telefon al i vi to neprimetite i nastavite dal je svoj im putem U toj ul ici se samo nekol iko minutakasni je desi neko ubistvo i vas pozovu u pol ici ju kao osumnj ičenog Ako koj im

To su samo metapodaci

38

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

slučajem nemate dobar al ibi i l i nemate svedoka da posvedoči da niste bi l i u tojul ici nego tamo gde ste stvarno bi l i a drugih svedoka nema - možete jako lošeproći Zaniml j ivi video http googlspS5OZ

Metapodaci se takođe nalaze i u faj lovimapodacima koje svakodnevnopreuzimamo sa interneta pravimo i koristimo Svaki tip podatka može da sadržiodređene metapodatke koj i bol je opisuju sam podatak kao naprimer vremenastanka podatka kol iko je vremena potrošeno za njegovo kreiranje kol iko putamu je pristupl jeno kad je poslednj i put pristupl jeno i tako dal je Iako se ovakvimetapodaci možda još uvek čine bezazlenim oni mogu sadržati i IP adresuračunara sa kog su napravl jeni GPS koordinate (najčešće PNG format sl ika satelefona) ko ga je napravio (l ičnost i l i kompani jaorganizaci ja) naziv uređaja imodel sa koga je napravl jen kao i MAC adresu uređaja mej l adresu kreatorasoftver koj im je napravl jen i tako dal je Sve ovo može mnogo da naškodiprivatnosti izvornog kreatora faj la pogotovo ako je sadržaj poverl j iv Ukol iko nekopresretne taj podatak na internetu može saznati od koga je potekao Da ovo možebiti katastrofa po kreatora takvog faj la može i lustrovati primer torenta Ako stedošl i u posed nekih sl ika i l i video materi ja la i l i teksta koj i žel i te da podel ite sasvetom preko nekog torent sajta morate taj podatak prvo očistiti odmetapodataka da ne bi svako ko skine to što ste okači l i saznao da vi stoj i te izatoga

Internet mreže i komunikacije

39

Broj 33

Ljudi se konstantno prate metapodaci se sakupl ja ju i to ni je sada već ništa novoal i možemo da se trudimo da iza sebe ostavl jamo malo manje nežel jenihmetapodataka i da ih takoreći čistimo iz podataka koje razmenjujemo Na srećupostoje programi koj i ovo dobro rade

Najpre je potrebno da vidimo koje sve metapodatke neki faj l sadrži kako bismo seuveri l i da ovi metapodaci stvarno postoje i da je faj l bezbedan nakon nj ihovogbrisanja

Ako koristite operativne sisteme GNULinuksa treba da iz terminala preuzmete iinstal irate program pod nazivom exiftool

sudo apt-get install exiftool

Ovaj program će nam pružiti uvid u sve metapodatke koje faj l sadrži Korišćenje jeiz terminala al i je zato veoma jednostavno samo ga pokrenite na sledeći način

exiftool File

i l i

exiftool putanjadofajlapočevodkorenogdirektorijuma

Dobićete prikaz metapodataka koje je program pronašao Sada je potrebno davidimo da l i je podatak bdquoprl javrdquo tj da l i ima u njemu nešto da se briše i da akoima iz njega sve nepotrebno obrišemo Tu će nam pomoći drugi program zvaniMAT (eng Metadata Anonymisation Toolkit) koga možete naći na sajtuhttps matboumorg i l i jednostavno za korisnike Ubuntua i Debi jana uSoftverskom centru i l i ga možete instal irati iz terminala

sudo apt-get install mat

MAT će proveriti da l i je podatak bdquoprl javrdquo i l i ne i za vas ga očistiti od nežel jenihmetapodataka

Kada očistite faj l on je spreman za del jenje sa drugima a vi ste bezbedni jer nikone može reći da je faj l potekao sa vašeg računara

To su samo metapodaci

40

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Autor Dejan Čugal j

GH Hardi bdquoPrava matematika nema uticaj na ratrdquo - odbrana matematičara1940 godina

Bi l Tat - britanski matematičar verovatno niste čul i za njega1942 godine je izveo ogroman poduhvat koj i je skratio rat dvegodine (barem po rečima Ajzenhauera) i spasio mi l ione životaNažalost njegova vel ičina je preminula 2002 godine obavi jenavelom tajne i nikada zvanično ni je priznato njegovo dostignuće

Tomi Flauers - bivši inženjer poštanskog saobraćaja pretvorio jematematičke ideje Tata u prvi računar a to ni je bio bdquoENIACrdquo1Preminuo je 1998 godine a pretpostavl jamo da nikada niste čul ini za njegovu vel ičinu

Ovi umni giganti bdquoBlečl i parkardquo omogući l i su Britani j i da dešifruje strogo poverl j ivumašinu koju je koristio Hitler da diriguje drugim svetskim ratom a to ni je bi labdquoENIGMArdquo nego nešto mnogo tajni je i značajni je Vel ika je verovatnoća da nistečul i ni za ovo Neki kažu da je to bio Hitlerov Blekberi (BlackBerry)

Izgubljeni heroji bdquoBlečli parkardquo

1 engl Electronic Numerical Integrator And Computer - prvidigitalni elektronski računar

Internet mreže i komunikacije

41

Broj 33

1939 godine bdquoBlečl i parkrdquo je postao ratni štab MI6 (britanske vojne obaveštajneslužbe) Do danas je procurelo u javnost i dokumentovano brojnim fi lmskimdokumentarcima samo da je tu Alan Tjuring uspeo da dešifruje nemačkumornaričku šifru poznatu kao bdquoENIGMArdquo i uvel iko doprineo pobedi saveznika a to jesamo deo priče koj i je ispričan

U Blečl i parku su bi la tri heroja AlanTjuring Bi l Tat i Tomi Flauers Od nj ihtroj ice jedino Alanu Tjuringu je priznat deozasluga za pobedu saveznika u Drugomsvetskom ratu Pregledom otkrivenihpodataka danas možemo da tvrdimo daje bdquoENIGMArdquo već sa početka drugogsvetskog rata bi la zastarela tehnologi ja Zbog toga je bi lo lako skinuti veo tajne sa

ovog uspeha heroja Blečl i parka

Izgubljeni heroji bdquoBlečli parkardquo

42

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Bi l Tat koj i je dešifrovao bdquoTANI sistemrdquo (TANI) i Tomi Flauers koj i je samo svojomintuici jom i znanjem sklopio prvi računar na svetu (bdquoKOLOSrdquo) u svrhu bržegdolaženja do informaci ja razbi jenog koda bdquoTANIrdquo tako da zastarelost šifrata budesvedena na minimum - radi l i su na novoj generaci j i mašina za šifrovanje Ovatehnologi ja je bi la prepoznata kao tehnologi ja budućnosti pa i danas iznadinformaci ja o tim tehnologi jama stoj i natpis bdquovrhunska tajnardquo (eng Top Secret) Upravo ovaj veo tajni oko šifrata bdquoTANIrdquo i prvog računara je rezultirao iskrivl jenjuistori je informatike

Za uspehe u prvim godinama rata je zaista zaslužno razbi janje bdquoENIGMArdquo šifrata ito ni je sporno al i krajem 1941 godine u etru planete se začuo novi zvuk To je bi lanova mašina za šifrovanje ni je bi la zasnovana na bdquoMorzeurdquo već je radi la naprincipu teleprintera

Jedna od kl jučnih ideja Hitlerovog ratovanja je bi la u vel ikoj mobi lnosti i brzomdelovanju trupa na terenu a da bi se to izvelo komunikaci ja je isto tako morala dabude u najmanju ruku putem radio signala

Razl ika je ogromna Razl ika je u kol ičini podataka koj i može da se prenese ovimbdquotajnimrdquo putem Prvi svetski rat je bio zaniml j iv jer su se šifrovane poruke baziralena rečima dok je Drugi u potpunosti otvorio vrata današnjoj kriptografi j i a to jematematika

Originalan nemački kocircdni naziv za ovaj šifrat bio je bdquoLORENCrdquo Britanska

Internet mreže i komunikacije

43

Broj 33

obaveštajna služba mu je dala nadimak bdquoTANIrdquo Čak ni dan danas ni je baš poznatokako je sve nastalo al i pouzdano se zna da je tajnu mašinu Hitler nazvaobdquoGehajmšrajberrdquo (nem Geheimschreiber) - mašina tajni

U srž i tehnologi ju šifrovanja bdquoLORENCrdquo šifrata nećemo ulaziti u ovom članku al iverujte nam na reč - ni je bi la jednostavna Može se pretpostaviti da je inspiraci jaŠenonovog 2 rada slučajnosti bi la upravo ova tehnologi ja iz Drugog svetskog rata

Ono čime se Treći rajh vodio je bdquosigurnardquo šifrovana veza koju niko ni je smeo dadešifruje Prenošenje šifrovanih poruka pomoću radio signala je dalo obaveštajnimslužbama mogućnost presretanja poruka poslatih radio talasima Da l i se ovo idanas dešava Imamo l i sigurnost u našim šifrovanim podacima današnj ice

Ono što je usledi lo nakon proboja ovog bdquoneuhvatl j ivogrdquo šifrata je upravo ono što jeprincip današnj ice kao neka vrsta protokola koj i mora da se ispoštuje uperfektnom šifarskom Šenonovom sistemu

1 NIKADA NIKADA NE KORISTITI DVA PUTA ISTI KLJUČ ZA ŠIFROVANJE2 NIKADA NIKADA KLJUČ NE SME DA SE ŠALJE ISTIM KOMUNIKACIONIM KANALOM

KAO PORUKA3 NIKADA NIKADA KLJUČ NE SME DA BUDE MANJ I NEGO ŠTO JE PORUKA (engl

2 Klod Elvud Šenon (eng Claude Elwood Shannon) (1916-2001) - Američkinaučnik i inženjer

Izgubljeni heroji bdquoBlečli parkardquo

44

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

one time pad) 4 NIKADA NIKADA NE SMEMO DA SAKRIVAMO SISTEM ŠIFROVANJA SVE MORA

DA JE OTVORENOG KOcircDA

Najveći propusti kriptologi je koj i su uočeni baš u Drugom svetskom ratu jesupokušaj sakrivanja sredstava koj im se generiše tajna poruka i nepoznavanjeŠenonovih krajnj ih granica informaci ja Kada kažemo bdquosredstvo i sakrivanjerdquomisl imo na algoritme Postavl ja se pitanje zašto je danas kriptologi ja sigurni ja negočetrdesetih i pedesetih godina prošlog veka

Danas uprkos tome što su algoritmi za kriptografi ju otvorenog kocircda tajnostinformaci ja je na višem nivou nego što je to bi lo dok je algoritam bio strogopoverl j iv Tajnost tajnih podataka se ne zasniva na tajnosti a lgoritama koj i generišutaj isti bdquotajni izlazrdquo (eng cipher text) nego u nemogućnosti matematičke inverznefunkci je koja bi šifrovan tekst otvori la Ovde se vidi da je svrha strukture otvorenogkocircda kao jednog od značajnih delova današnje kriptologi je ona koja ga činisigurnim i svima dostupnim

Sada kada se sa ove distance osvrnemo na Drugi svetski rat možemo videti kol ikosmo bi l i bl izu apokal ipse Naime Albert Ajnštajn je već 1944 godine imao urukama recept za nuklearnu bombu Šenon je mogao već u to vreme da nampredoči 100 siguran šifrat (tzv Hitlerovu super šifru) a l i ipak sreća nas jeposluži la da čovečanstvo tada ni je bi lo spremno da upotrebi svu raspoloživutehnologi ju

Albert Ajnštajn bdquoČetvrti svetski rat će se voditi tol jagamardquo

Zaboravl jeni heroj i Blečl i parka iako su odigral i važnu ulogu u pobedi saveznika usvetskom ratu postal i su žrtve bdquotop secretrdquo doktrine potpuno su zaboravl jeni inestal i su iz istori je

Zakl jučak ovog članka je da je ideologi ja otvorenog kocircda sasvim sigurno tu da nampomogne i da otvori vrata ka većoj sigurnosti novim idejama i kval itetu sameinfrastrukture sistema koju svi zajedno razvi jamo

Internet mreže i komunikacije

45

Broj 33

Autor Nikola Hardi

NabrajanjaBez brojeva

Za nabrajanje pojmova u Bimeru (eng Beamer) koristi se okruženje itemize aunutar tog okruženja možemo da dodajemo nove stavke pomoću item Primerizgleda ovako

beginitemizeitem Stavka Aitem Stavka Bitem Stavka C

enditemize

Sa brojevima

Postoje situaci je kada uz nabrajanje treba da stoje i redni brojevi - za to se koristienumerate okruženje a nove stavke se takođe dodaju pomoću item

beginenumerateitem Redni broj 1item Redni broj 2item Redni broj 3

endenumerate

prezentaci ja

Beamer (4 deo)

Sam svoj majstor

46

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

DefinicijeTreća situaci ja je nabrajanje parova termin - definici ja U tom slučaju se koristiokruženje description Već možete da pretpostavite kako se dodaju nove stavke

Primer

begindescriptionitem[Pojam A] Definicija izmišljenog pojma Aitem[Pojam B] Definicija izmišljenog pojma Bitem[Pojam C] Definicija izmišljenog pojma C

enddescription

Ostala podešavanja i zanimljivostiSva prethodna okruženja mogu da budu ugneždena jedno unutar drugog dotrećeg nivoa Treba biti pažl j iv jer sla jdovi vrlo lako mogu da postanu nečitl j ivi Osim toga moguće je izabrati i format oznake i l i rednih brojeva - na primer ovako

beginenumerate[I]beginenumarate[a)]

Takođe moguće je upravl jati pojavl j ivanjem pojedinih stavki na slajdovima Drugimrečima možemo da odredimo da se nabrajanja postepeno otkrivaju tako što ćemouz stavku dodati lt1-gt odnosno broj od kojeg slajda žel imo da se ta stavkapojavl ju je Tada će jedno nabrajanje biti bdquorazvučenordquo na više slajdovaJednostavni ja mogućnost je da u zaglavl je okruženja dodamo +- što znači dažel imo da se svakim slajdom otkriva po jedna nova stavka iz nabrajanja Znak bdquo-rdquo uoba primera znači da žel imo da se stavka pojavi na sledećem slajdu i da ostane

Sam svoj majstor

47

Broj 33

prisutna Možemo da izostavimo znak bdquo-rdquo i tada će stavka biti prisutna samo najednom slajdu i l i da napišemo raspon slajdova u koj ima žel imo da ta stavka budeprisutna

Rad sa kolonama i blokovimaDo sada su svi primeri podrazumeval i da je sadržaj napisan preko cele širineslajda al i Bimer (eng Beamer) ima i jednostavne mehanizme za razmeštanjesadržaja po kolonama Za rad sa kolonama se koristi okruženje columns unutarkojeg možemo da dodajemo nove kolone pomoću columnširina Sadržaj jemoguće potom pisati i van okruženja sa kolonama

U paru sa kolonama često se sreće i okruženje block koje se parametrizujenaslovom Primerom su i lustrovani i okruženje column i okruženje block

beginframebegincolumns

column05textwidthbeginblockNaslov levog blokaSadržaj u prvoj (levoj) koloni endblock

column05textwidthbeginblockNaslov desnog blokaSadržaj u drugoj (desnoj) koloni

endblockendcolumns

beginblockVan kolona

Beamer

48

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Tekst koji se nalazi ispod kolonaendblock

endframe

TabeleIako se u radu sa prezentaci jama sadržaj najčešće može uredno rasporeditipomoću kolona i nabrajanja nekada to ni je dovol jno jer su tabele pravi formatBimer podržava standardno Lateh (LaTeX) okruženje za rad sa tabelamaOkruženje za rad sa tabelama se zove tabular Pri kreiranju nove tabele moguće jepodesiti koje kolone će biti razdvojene l ini jom i da l i će nj ihov sadržaj biti centrirani l i uz levu i l i uz desnu ivicu Dodavanje novog reda se jednostavno radidodavanjem hline Lateh pruža zaista jako fleksibi lan rad sa tabelama i sigurno ćedoskočiti svim mogućim i nemogućim zamisl ima Potražite bi lo koje Lateh uputstvoza rad sa tabelama i radiće i sa Bimerom

beginframebegintabular | c | c | c | c |

hlineamp Ponedeljak amp Utorak amp Sreda hline

1 amp 16 amp 32 amp 64 hline2 amp 16 amp 128 amp 1024 hline3 amp 16 amp 512 amp 4096 hline

endtabularendframe

Sam svoj majstor

49

Broj 33

Beamer

Teoreme i istaknut tekstU nastavi su česta izlaganja teorema nj ihovih dokaza i primera U Bimer jeugrađena podrška za elegantno predstavl janje ove trojke Mehanizam takođepodržava postepeno otkrivanje sadržaja sla jda tako da slušaocima ne bude odmahotkriven dokaz teoreme Mehanizam za postepeno otkrivanje se kao i kodnabrajanja postiže pomoću bdquolt1-gtrdquo konstrukci je Evo kako to izgleda

beginframeframetitlePrimer teoreme

begintheoremlt1-gt Teorema kaže da su beamer prezentacijezanimljive

endtheorem

beginexamplelt2-gt Ovaj kod kreira slajd beamer prezentacijeendexample

beginprooflt3-gt Čestitamo stigli ste do kraja serijala o pravljenju beamer prezentacija

endproofendframe

50

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Za krajOvim člankom završavamo seri ja l o Bimeru Nadamo se da smo uspel i da vaszainteresujemo za ovu vrlo korisnu klasu Lateha Trudi l i smo se da vamprezentujemo najvažni je delove Bimera koje ćete najčešće koristiti pri l ikomkreiranja svoj ih prezentaci ja

Napominjemo još jednom da je Bimer samo jedna od klasa Lateha što znači da i zaBimer važi sve ono što ste već mogl i da pročitate u ovom časopisu kad smo pisal iseri ja l bdquoUvod u LaTeXrdquo (LiBRE brojevi 17 do 21) Štaviše ovaj seri ja l o Bimeru jebio nastavak upravo tog seri ja la U ovom seri ja lu nismo pisal i o samomformatiranju teksta u prezentaci jama jer se podrazumeva da važe ista pravi la kao iu Latehu a o tome smo pisal i u prethodnom seri ja lu

Hvala vam što ste prati l i ovaj seri ja l i žel imo vam puno uspeha u kreiranju Bimerprezentaci ja

Sam svoj majstor

51

Broj 33

Autor Nenad Marjanović

Kada smo se upoznal i sa podešavanj ima sistema i umrežavanjem vreme je za našprvi Biglbon Blek (BBB - eng BeagleBone Black) projekat Svakom od nas će ovajizazov dati razl ičite ideje a jedna od nj ih može biti i zaštita privatnosti internetkorisnika Nažalost u Srbi j i ne postoj i ni jedan izlazni tor server (eng node) i to jepomalo tužna sl ika s obzirom da govorimo o populaci j i od sedam mil ionastanovnika Al i ovu sl iku možemo promeniti udruženim snagama i za početakkreiranjem Tor transfer i izlaznog servera U ovde prikazanom grafikonufokusiraćemo se na bdquoRauter Brdquo tačku odnosno transfer server konfiguraci ju

BeagleBone Black Rev C

Vodič od prvog dana (3 deo) ndashBeagleBone Black kao Tor relej

Hardver

52

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Tor predstavl ja mrežu servera koj i se povezuju radi bol je enkripci je podataka izaštite IP adrese korisnika Naš ci l j je da danas postanemo deo ovog predivnogprojekta i da se nađemo na svetskoj karti Tor servera

Brzina interneta i zakonske regulativePotrebno je imati na umu nekol iko bitnih stvari

1 Naš server = naša odgovornost2 Obavezno naznačite da ste vi administrator a ne korisnik istog servera3 Da posedujete internet brzinu od 2 Mbs

Ako ispunjavamo tri navedena pravi la i odgovornosti možemo se posvetitiadministrativnim poslovima

Instalacija i podešavanjaU ovom primeru koristimo Debi jan Vizi (eng Wheezy) odnosno Debi jan 7 verzi juna našem BBB uređaju Vi možete testirati i druge Linuks platforme Prvododajemo izvornu bibl ioteku u etcaptsourceslist faj l pokretanjem sledećekomande u terminalu

echo deb httpdebtorprojectorgtorprojectorg wheezy main gt etcaptsourceslistdtorlist

Zatim dodajemo izvorni kl juč vršimo ažuriranje sistema i instal iramo tor i tor-arm(Tor monitoring sistem)

gpg --keyserver keysgnupgnet --recv 886DDD89gpg --export A3C4F0F979CAA22CDBA8F512EE8CBC9E886DDD89 | sudo apt-keyadd -apt-get updateapt-get install debtorprojectorg-keyring -yapt-get install tor tor-arm egrep screen -y

Ovim smo uspešno završi l i instalaci ju Tor servera i sistema za monitoring odnosnonadgledanja našeg Tor servera Sledećom komandom radimo na podešavanj imaTor servera koja se nalaze u etctortorrc faj lu Obratite pažnju i izvršite potrebne

Hardver

53

Broj 33

izmenu u pol j ima IP adresa (eng Address) nadimka (eng Nickname) i kontaktpodataka (eng ContactInfo) pre pokretanja ove komande Kopiramo i pokrećemokomandu u celosti u terminalu

egrep -v ^(|$) etctortorrcORPort 443Address 19216811Nickname LibreTorRelayRelayBandwidthRate 100 KBRelayBandwidthBurst 120 KBContactInfo ltvi at gmail dot comgt irPort 8080DirPortFrontPage etctortorhtmlExitPolicy reject

Detal je o svim vrednostima nećemo iznositi u ovom broju LiBRE časopisa al ićemo o nj ima pisati u sledećem u kome ćemo pričati o zaštiti Tor servera imogućnosti podešavanja određenih izlaznih pravi la (eng ExitPolicy)

Nakon ovoga možemo primetiti da se u folderu etctor ne nalazi torhtml faj l Ovaj faj l ni je od vel ikog značaja i možete ga l ično napraviti i l i preuzeti jednu kopi ju- naprimer sa sledeće lokaci je

cp usrsharedoctortorhtml etctortorhtml

Opcije i Tor Arm monitoringDa bismo ispravno koristi l i Tor Arm potrebno je urediti još jednom etctortorrcfaj l i restartovati servis

echo -e ldquoDisableDebuggerAttachment 0n AvoidDiskWritesrdquo gtgt etctortorrcsudo service tor reload

Ukol iko žel ite koristiti Tor Arm za nadgledanje aktivnosti na serveru pokreniteprogram screen kl iknite na bdquoEnterrdquo i kucajte sudo -u debian-tor arm Naekranu ćete imati sl ičan prikaz

BeagleBone Black

54

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Hardver

55

Broj 33

Da bismo napusti l i screen program koristimo Ctrl + a + d i na taj način kada sesledeći put pri javimo na server kucamo samo screen -r u terminalu - i naći ćemose ponovo na čuvenom Tor Arm monitoring ekranu

Nakon svake promene konfiguracionih faj lova ako slučajno nismo nešto podesi l ikako treba restartujemo servise

U sledećem broju časopisa govorićemo o minimalnim podešavanj ima ikonfigurisanju izlaznog Tor servera (eng Tor Exit Node) opci jama sigurnosti isl ičnim detal j ima u vezi sa našim prvim projektom Do čitanja u sledećem broju

BeagleBone Black

LUGoNS BarCamp 4subota 7 mart 2015 godine

Četvrti LUGoNS-ov Barkemp (BarCamp) održaće se u Novom Sadu usubotu 7 marta 2015 godine na Fakultetu tehničkih nauka sa početkomu 12 časova

Ulaz je slobodan

Poziv za predaju radovaLUGoNS poziva sve zainteresovane da pošal ju svoje radove (predavanjaprezentaci je radionice i diskusi je) do 28 februara 2015 godine

Oblasti iz koj ih možete da pri javite vaše radove su

bull Slobodan softverbull Zaniml j iv hardverbull Hakerski zakonibull Sigurnosne noćne morebull Anonimnost i privatnost na internetubull Duboki veb (eng Deep Web)bull Soci ja lne mrežebull Soci ja lni inženjeringbull Hakovanje mobi lnih uređajabull Internet u oblaku (eng Clouds) ndash hakovanje razbi janje i neočekivano korišćenjebull DPI (eng deep packet inspection)bull Mreža i mrežna neutralnost ndash vlasništvo cenzura nadmudrivanje i pol itika bdquodefaktordquo standarda

bull Programiranje i programski jezici

Nemojte se ustručavati i slobodno nam se javite ako imate rad na gore navedenei l i sl ične teme koj i smatrate interesantnim

Stranica za predaju radova nalazi se na https events lugonsorgp=1658

Page 14: LiBRE 33 Lat

14

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Autor Stefan Nožinić

UvodrEFInd je softverska apl ikaci ja za EFI (Extensible Firmware Interface) sisteme kojaomogućava izbor više operativnih sistema na jednostavan način Ovo je samoupravnik buta (boot) i u ovom broju vam predstavl jamo o kakvom projektu je reč ikako se može primeniti

Šta je (U)EFIPre nego što predstavimo sam projekat trebalo bi prvo da skrenemo pažnju idetal jni je da predstavimo problematiku EFI je nastao kao zamena za dosadašnj iBIOS (Basic InputOutput System) i razvi la ga je kompani ja Intel Ovaj pristup jekasni je zamenjen UEFI standardom EFI tehnologi ja ima prednost u slučajevimakao što su

bull Pokretanje sistema na diskovima preko 2TB memori je korišćenjem GPTtehnologi je

bull Nezavisnost od specifične arhitekture procesorabull Modularan dizajnbull Dobro okruženje pre učitavanja operativnog sistema što podrazumeva i mrežnupodršku

Tehnologi ja omogućava upotrebu 32-bitnih i 64-bitnih adresa na procesorima koj ito podržavaju Rani je BIOS tehnologi ja to ni je omogući la već se uvek koristi la 16-bitna implementaci ja iz istori jskih razloga

Predstavljamo

15

Broj 33

Particiona šemaEFI tehnologi ja ima drugači ju šemu partici ja Dok je stari pristup podržavao samoMBR (Master Boot Record) šemu nova tehnologi ja podržava GPT šemu kojaomogućava veći broj primarnih partici ja Sa starim pristupom taj broj bio jeograničen na četiri primarne partici je od koj ih je svaka morala da ima kapacitetmanj i od 2TB

AplikacijeUEFI podržava izradu apl ikaci ja koje bi se pokretale nezavisno od operativnogsistema Ove apl ikaci je se mogu naknadno instal irati Primer takvih apl ikaci ja supokretači (loader) operativnih sistema kao i upravnici butovanja

EFI sistemska particijaEFI podržava posebnu partici ju za smeštanje raznih potrebnih informaci ja kao štosu potrebni podaci za rukovanje računarom i specifične apl ikaci je Ova partici ja jenajčešće FAT32 sistem datoteka

rEFInd

16

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

But menadžer i but louder - ima razlikeOd popularizaci je GRUB upravnika mnogi korisnici su ostal i bez objašnjenja kakvaje razl ika između but loudera (boot loader) i but menadžera (boot manager) Ovose dešava jer GRUB pruža obe usluge u sklopu jednog programa pa se time teževidi razl ika između ova dva pojma But menadžer je upravnik pomoću kojeg jemoguće izabrati operativni sistem za pokretanje On ne zna ništa speci ja lno ooperativnom sistemu pa time ne zna ni kako da ga pokrene On samo zna datreba da pokrene but louder za taj sistem Kada je sistem izabran pokreće sespecifičan but louder za taj sistem koj i je zadužen za dal j i proces pokretanjakernela Za razl iku od GRUB upravnika rEFInd pruža samo usluge but menadžerašto u početku može zvučati poražavajuće za ovaj projekat Kada uzmemo u obzirda većina sistema danas ima but louder u sklopu kernela (ukl jučujući i Linuks odnovi j ih izdanja) ovaj problem je prevaziđen

Predstavljamo

17

Broj 33

InstalacijarEFInd postoj i kao deb i kao rpm paket al i postoj i i zapakovan kao zip arhivaZahval ju jući tome paket je moguće instal irati upotrebom dpkg komande nadistribuci jama baziranim na Debi janu kao i upotrebom rpm komande nadistribuci jama koje koriste taj način pakovanja paketa Za Ubuntu postoj i i PPArepozitori jum pa rEFInd može biti instal iran na sledeći način

sudo apt-add-repository pparodsmithrefindsudo apt-get updatesudo apt-get install refind

Nezavisno od toga koj i način od gore opisanih koristite rEFInd će automatski bitiprebačen na ESP i biti postavl jen kao podrazumevani upravnik

KonfiguracijarEFInd bi trebalo da vam pruži zadovol javajuću funkcionalnost bez dodatnekonfiguraci je posle instalacionog procesa On će automatski detektovati loudereoperativnih sistema korišćenjem pretrage po svim partici jama koje prepozna Uslučaju da ste napredni j i korisnik i da žel ite da modifikujete ponašanje rEFInda tomožete uraditi izmenom njegove konfiguracione datoteke Postoj i g lobalnakonfiguraci ja i konfiguraci ja za svaki sistem posebno Ovaj tekst bi postao previšedugačak kada bismo ulazi l i u detal je same konfiguraci je pa vam zatopreporučujemo ako imate potrebu za dodatnom konfiguraci jom da posetitedokumentaci ju projekta i l i ako imate neke nedoumice da kontaktirate s namapreko naše e-pošte

Za krajŽelel i bismo da ovaj tekst zakl jučimo ocenom da je ovaj projekat dosta zaniml j ivda pruža zadovol javajuću funkcionalnost i da omogućava korisnicima koj i koristeovaj sistem pokretanja lako pokretanje svoj ih operativnih sistema Još jednomžel imo da vam skrenemo pažnju da nam se obratite i ukažete ako smo nešto važnopropusti l i da pomenemo i l i ako nam se negde potkrala greška

Korisni l ink http wwwrodsbookscomrefind

rEFInd

18

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Autor Nikola Hardi

Opšte je poznato da su računari dobri u radu sa brojevima Međutim vremenom suse i potrebe korisnika i alati za programiranje računara razvi ja l i i rad sa drugači j imtipovima podataka je postao uobičajen i znatno jednostavni j i nego rani je Svi smoimal i pri l iku da radimo sa programima za obradu fotografi ja video materi ja la i l izvučnih zapisa Multimedi ja je ipak tema koja prevazi lazi jedan uvodni kurs o C-ual i do kraja ovog seri ja la ćemo se dotaći i tih tema Za početak osvrnućemo se narad sa tekstualnim podacima na C način

Stringovi na C načinDefinici ja tekstualnog podatka u sferi računarstva se uglavnom svodi na to da jetekst niz karaktera a karakteri su znakovni simbol i Iako imamo mogućnost daradimo sa tekstom i l i multimedi jom računari ipak razumeju samo brojeve pamoramo tako da im predstavimo i tekst Postoje razni standardi kako se pojedinikarakteri predstavl ja ju u memori j i računara između ostalog najpoznati j i su ASCIIEBCDIC UTF i td EBCDIC je standard koj i je prisutan u Eplovom (eng Apple) svetu iviše nema tol iko važnu ulogu ASCII je standard koj i je vrlo prisutan i danas UTF jenastao kao proširenje ASCII standarda javl ja se u više vari janti i uvodi podršku zapisma razl ičita od abecede (kinesko japansko ćiri l ica arapsko i mnoga druga)

Važno je napomenuti da je originalni ASCII standard propisivao 7 bitova za jedankarakter što je dalo prostora za 128 karaktera Među tim karakterima se nalazecifre mala i vel ika slova engleskog alfabeta i niz kontrolnih karaktera Kontrolnikarakteri su oznake za novi red prazno mesto tabulator upravl janje štampačima(vraćanje glave štampača na početak) rad sa terminal ima (alarm i l i obaveštenje

Kako da

Uvod u programski jezik CRad sa stringovima (9 deo)

19

Broj 33

da se nešto dogodi lo) ASCII standard je proširen na 8 bitova odnosno ceo jedanbajt i sada podržava 256 karaktera Potražite na internetu termin bdquoASCII tabelardquo dabiste stekl i uvid u to kako izgleda tzv tabela ASCII karaktera

Rad sa pojedinačnim znakovima ne obećava mnogo Postoj i realna potreba zaradom sa rečima rečenicama l ini jama teksta itd Podaci koj i se sastoje od više odjednog karaktera se u domaćoj l i teraturi nazivaju znakovnim niskama madaodomaćen je i naziv bdquostringrdquo koj i je i mnogo češće u upotrebi U programskomjeziku C se stringovi predstavl ja ju običnim nizovima karaktera (char niz[]) a krajteksta se označava NULL karakterom odnosno speci ja lnim znakom 0 či jabrojevna predstava je pogađate nula Ovakva predstava tekstualnih podatakanosi sa sobom i pojedine kompl ikaci je Gotovo svi savremeni jezici poznaju tipstringa dok su u C-u stringovi ipak samo obični nizovi

Da se podsetimo nizovi u C-u su zapravo pokazivači na deo u memori j i Kadapokušamo da pristupimo jednom elementu niza tada se vrši operaci jabdquodereferenciranjardquo sa zadatim odstupanjem Sledi nekol iko primera koj i i lustrujurad sa nizovima na primeru nizova karaktera

char niz1[] = zdravoniz1[0] = Z

char niz2[5]niz2[0] = 0niz2[1] = kniz2[2] = 0

Pri deklaraci j i niza 1 ni je zadata dužina zato što je u jednom izrazu zadata iinici ja l izaci ja niza koja glasi ldquozdravordquo Prevodi lac može sam da zakl juči kol ikomemori je je potrebno

U drugom primeru je kreiran niz karaktera dužine 5 Međutim popunjena su samoprva tri mesta Primećujete razl iku između prvog i trećeg elementa Prvi je cifra 0(uokviren je navodnicima) a treći je brojčana vrednost 0 koja označava krajstringa

Može se primetiti još jedna razl ika u data dva primera U prvom primeru sukorišćeni dvostruki navodnici dok su u drugom korišćeni jednostruki Razlog za to

Uvod u programski jezik C

20

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

je što se znakovni nizovi koj i su uokvireni dvostrukim navodnicima smatrajustringovima i podrazumevano im se dodaje bdquoterminatorrdquo odnosno znak NULL koj ioznačava kraj stringa Jednostruki navodnici se iskl jučivo koriste za predstavl janjepojedinačnih karaktera Ovo znači da zapisi ldquoardquo i a nisu jednaki Prvi zapis jedužine 2 jer ima i znak NULL koj im je završen

Ispisivanje i učitavanje stringovaPre nego što nastavimo dal je biće objašnjen jednostavan način za ispisivanje iučitavanje stringova pomoću standardnog ulazaizlaza Da se podsetimobibl ioteka za standardni ulazizlaz (ispis podataka u konzol i odnosno terminalu) jestdioh Ukol iko se koristi formatirani ispis potrebno je funkci jama printf() iscanf() proslediti format string koj i sadrži speci ja lan znak s čime je označenoda žel imo da ispišemo znakovni niz sve do NULL karaktera Drugi način jeupotrebom funkci ja puts() gets() i getline() iz bibl ioteke stringh Sledi primer

include ltstdiohgt include ltstringhgt int main()

char niz1[] = Zdravo svete

printf(sn niz1)

scanf(s niz1)puts(niz1)

return 0

Može se primetiti da je u slučaju funkci je printf() potrebno naglasiti speci ja lnimkontrolnim karakterom n da nakon ispisa treba preći u novi red Funkci ja puts() topodrazumevano radi

Za ove i sve druge funkci je dodatnu pomoć je moguće pronaći u Linuksovim manstranicama u odel jku 3 koj i je posvećen standardnim bibl iotekama Recimo mangetline sadrži detal jno uputstvo o funkci j i getline()

Kako da

21

Broj 33

Kopiranje stringovaKao što je u prethodnom odel jku napomenuto stringovi su u C-u samo običninizovi To znači da sledeći kod verovatno neće uraditi ono šta bi bi lo očekivano

niz1 = niz2

Ovime smo pokazivaču niz1 bdquorekl irdquo da pokazuje tamo gde i pokazivač niz2 Efektivno oni sad pokazuju na isti tekst međutim ako izmenimo niz1 to će seodraziti i na niz2 a važi i obrnuto Ovime smo dobi l i samo dva pokazivača na istideo memori je a uglavnom to ni je bio ci l j

Drugi način kako bismo sadržaj drugog niza mogl i da kopiramo u prvi niz je petl jakojom bismo kopiral i element po element Pošto je operaci ja kopiranja stringovavrlo često potrebna postoj i standardna bibl ioteka za rad sa stringovima koja sezove stringh a funkci ja za kopiranje stringova je strcpy()

strcpy(niz1 niz2)

Dati primer kopira sadržaj niza 2 u niz 1 Kopira se element po element sve dok seu nizu 2 ne naiđe na NULL karakter Ovakvo kopiranje (element po element) seinače u stranoj l i teraturi naziva i bdquodeep copyrdquo i vrlo često se sreće u radu sastrukturama podataka gde je potrebno obići celu strukturu podataka i svakielement kopirati a strukturu opet izgraditi u drugom delu memori je

Zaniml j ivo je što je kopiranje stringova moguće pojednostaviti ukol iko definišemonovi tip podatka kao strukturu koja sadrži niz karaktera i potom izvršimo kopiranjeOvo je trik koj i se uglavnom ne koristi u praksi i spomenut je samo kaozaniml j ivost

include ltstringhgt struct str char niz[50]

int main()

struct str s1struct str s2

Uvod u programski jezik C

22

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

strcpy(s1niz zdravo)s2 = s1

s2niz[0] = Z

puts(s1niz)puts(s2niz)

return 0

Kreirana je struktura str koja sadrži pol je niza karaktera pod nazivom niz Pozivomfunkci je strcpy() kopiramo string ldquozdravordquo u s1 čime smo bdquonapuni l irdquo sadržajobjekta s1 Potom je izvršena redovna dodela čime je sadržaj objekta s1 kopiran us2 Zatim je izmenjen samo prvi karakter objekta s2 i oba stringa su ispisanaPrimećujete da su kopirani svi znakovi a da je izmenjen samo drugi objekatZaniml j iv trik

Poređenje spajanje i pretraga stringovaDruga vrlo česta situaci ja je poređenje dva stringa Ukol iko bi poređenje bi loizvršeno upotrebom redovnog operatora za poređenje == tada bi u stvari bi lepoređene samo adrese na koje pokazuju pokazivači tih stringova jer da sepodsetimo stringovi su u C-u samo obični nizovi Ispravan način za poređenje dvastringa je pozivanjem funkci je strcmp() či ja je povratna vrednost 0 ukol iko su jojprosleđeni stringovi sa jednakim sadržajem

include ltstringhgt int main()

char niz1[] = zdravochar niz2[] = zdravo

if( strcmp(niz1 niz2) == 0)puts(Stringovi su jednaki)

elseputs(Stringovi nisu jednaki)

return 0

Kako da

23

Broj 33

Funkci ja strcmp() poredi svaki element prosleđenih nizova pojedinačno a dobraje vežba implementiranje nove funkci je strcmp() koja će unutar petl je da porediodgovarajuće elemente prosleđenih nizova i potom vratiti rezultat 0 ukol iko su svielementi jednaki Potrebno je pripaziti na situaci ju kada su stringovi razl ičitihdužina

U svetu računara spajanje dva sadržaja se zove konkatenaci ja Odatle i nazivfunkci je za spajanje dva stringa strcat() Važno je uveriti se da je string u koj i sedodaje sadržaj dovol jno vel ik da ga prihvati inače može da dođe do nežel jenogprepisivanja u memori j i uništavanja drugih podataka i neispravnog ponašanjaprograma

Pretraga unutar stringa se može obaviti funkci jom strstr() Ova funkci ja kaoparametre očekuje pokazivač na niz karaktera (string) u kojem je potrebno pronaćistring koj i je prosleđen kao drugi parametar Povratna vrednost je pokazivač nadeo memori je gde se žel jeni string prvi put pojavio

Sledi malo opširni j i primer koj i i lustruje spajanje pretragu i kopiranje stringova

include ltstringhgt int main()

char niz_a[50] = LiBRE je char niz_b[] = najbolji casopischar niz_c[] = e-magazin

strcat(niz_a niz_b)puts(niz_a)

char cilj = strstr(niz_a casopis)strcpy(cilj niz_c)

puts(niz_a)

return 0

Uvod u programski jezik C

24

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Pretvaranje tipova podataka u stringove ipretvaranje iz stringovaPretvaranje podataka iz jednog tipa u drugi i l i kastovanje (eng type casting) se zavećinu tipova vrši jednostavno pisanjem tipa u zagradama na primer (int)523 Stringovi su i po ovom pitanju drugači j i Postavl ja se pitanje šta pretvoriti ucelobrojni tip - da l i adresu na koju pokazuje pokazivač niza koj i predstavl ja stringPrvi element Šta ako taj string ni je broj Predstavićemo rešenje za konverzi jubrojeva u stringove i obrnuto

Ispis podataka na ekranu se takođe može smatrati konverzi jom Broj sa pokretnimzarezom je u memori j i prikazan na pomalo čudan način a pozivom funkci jeprintf() kada je kao format zadat f na ekranu ćemo dobiti razuml j iv niz znakovaSl ičan rezultat možemo dobiti funkci jom sprintf() a jedina razl ika u odnosu naprintf() je ta što sprintf() kao prvi argument očekuje pokazivač na string dok sudrugi (format string) i treći (argumenti koj i se povezuju sa formatnim stringom)sl ični kao kod funkci je printf()

Kod pretvaranja stringova u brojevne tipove može poslužiti funkci ja sscanf() kojase ponaša sl ično kao funkci ja scanf() s tim što je prvi argument adresa(pokazivač na string) koju žel imo da skeniramo u nadi da će se poklopiti saformalnim stringom koj i je drugi argument a rezultati će biti sačuvani u adresamakoje su prosleđene kao 3 4 i ostal i parametri Drugi način za pretvaranje stringovau celobrojne brojeve i brojeve sa pokretnim zarezom su funkci je atoi() i atof()

Funkci je koje koriste formatni string su česte u jeziku C i zaslužuju posebnu pažnjumeđutim to je priča za poseban članak U ovu klasu funkci ja spadaju recimo ifunkci je za rad sa datotekama

BezbednostRad sa stringovima može da bude izuzetno opasna stvar po pitanju bezbednostiprograma Ukol iko se niz karaktera ne završava NULL karakterom svašta može dapođe po zlu pri pozivu funkci ja kao što su strcpy() strcmp() i sl ične Cela klasatih funkci ja se oslanja na postojanje znaka koj i označava kraj stringa Kada stringni je propisno završen tada te funkci je mogu da zalutaju u deo memori je vanstringa i svašta može da pođe po zlu Ovakav tip napada se inače zoveprekoračenje bafera (eng buffer overflow) Preporučen način kako da izbegnete

Kako da

25

Broj 33

Pregled popularnosti GNULinuxBSDdistribuci ja za mesec februar

Distrowatch

Pad ltPorast gtIsti rejting =(Korišćeni podaci sa Distrovoča)

12345678910111213141516171819202122232425

MintUbuntuDebianopenSUSEelementaryMageiaFedoraManjaroCentOSLXLEArchBodhiAndroid x86Kal iPCLinuxOSPuppyRobol inuxLubuntuQ4OSBlack LabNetrunnerSimpl icityEvolveZorin4MLinux

2919gt1778gt1701gt1323gt1204gt1174gt1166gt1028lt1020gt965gt957gt907gt900lt760gt742lt732gt695gt670gt663gt655gt652gt629gt607gt583gt517=

takve nepri jatne situaci je pri radu sastringovima je da koristite verzi jefunkci ja koje su ograničenemaksimalnom dužinom stringa kaošto su strncpy() strncat() strncmp() i td Sve te funkci je kaotreći parametar zahtevaju broj koj iodređuje maksimalnu očekivanudužinu stringa Još jedna vrlo korisnafunkci ja je strlen() či j i zadatak je daodredi dužinu stringa Budite pažl j ivi ovo je prvo mesto gde se tražebezbednosni propusti u programimaNe verujte podacima koj i spol ja ulazeu vaš program a pogotovo kada je rečo stringovima

Uvod u programski jezik C

26

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Autor Dejan Maglov

Projekti slobodnog softvera obično počinju kao projekti pojedinca i l i male grupeprogramera a koj i rade na razvoju softvera či j i je ci l j da zadovol j i neke od nj ihovihl ičnih potreba Projekat će se smatrati uspešnim ukol iko se šira zajednicazainteresuje za njega nakon što prepozna korisnost softvera ne samo za pojedincekoj i su započel i projekat već i za širu zajednicu Kada je u pitanju slobodni softvervremenom je postala stalna praksa da se zajednica umeša u razvoj projekataDobri projekti sami privlače zajednicu l judi koj i su zainteresovani za nj ih i ona uvećini slučajeva preuzima na sebe testiranje pobol jšanje funkcionalnosti održavanje i tehničku podršku projekta

Zajednice slobodnog softvera mogu da se okupe oko projekta slobodnog softverapo teritori ja lnom principu i l i da nastanu kombinaci jom ovih principa

Primeri

bull LiBRE projekat okupl ja zajednicu oko projekta bez teritori ja lnog ograničenjabull LUGoNS (Linux User Group of Novi Sad) je zajednica korisnika Linuksa poteritori ja lnom principu bez obzira na konkretan projekat

bull Ubuntu-rs zajednica koja je kombinaci ja okupl janja zajednice oko konkretnogprojekta (Ubuntu) i teritori ja lnog principa koj i se ograničava na teritori ju Srbi je

Ova sinergi ja projekata i korisnika slobodnog softvera ima više prednosti i zakorisnike i za projekat Projekat se na ovaj način brže razvi ja dobi ja na

U potrazi za idealnom distribucijom

Socijalni kriterijumi za izbor idealnedistribucije (6 deo)

Oslobađanje

27

Broj 33

funkcionalnosti greške se brzo ispravl ja ju i td Korisnici dobi ja ju osećaj dapripadaju grupi druže se sa istomišl jenicima učestvuju u promoci j i kval itetnihpojedinaca itd

Dve najvažni je uloge lokalnih zajednica za GNULinuks distribuci je su

1 pružanje tehničke podrške i edukaci je na maternjem jeziku2 rad na lokal izaci j i i pri lagođavanje distribuci je lokalnim potrebama

Informaci ja da postoje lokalne zajednice slobodnog softvera je od naročitogznačaja za početnike i korisnike koj i nedovol jno dobro znaju strane jezike(naročito engleski jezik) Ako izuzmemo komerci ja lne projekte otvorenog koda(Red Het SUSE) ne postoje zvanične škole i kursevi za slobodni softver Zaedukaci ju početnika je uglavnom zadužena zajednica a jasno je da je učenje namaternjem jeziku uvek lakše nego na bi lo kom drugom stranom ma kol ikodobro ga poznajete

Forumi i viki stranice lokalnih zajednica su prave bibl ioteke u koj ima korisnicimogu da nađu većinu odgovora na svoja pitanja a za sva ostala tu su forumi iIRC kanal i zajednica na koj ima uvek ima nekoga i koj i imaju već gotova rešenjaza vel iki broj problema

U potrazi za idealnom distribucijom

28

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Lokalne zajednice kao kriterijum za izbor idealnedistribucijePočetnicima i korisnicima koj i ne vladaju dobro engleskim jezikom toplopreporučujemo da biraju GNULinuks distribuci je koje imaju aktivnu lokalnuzajednicu Ovladavanje novim operativnim sistemom je mnogo lakše ukol iko vambdquoleđa čuvardquo lokalna zajednica na koju se uvek možete osloniti

Već smo spomenul i da su popularni je GNULinuks distribuci je namenjenepočetnicima Slučaj je isti i sa lokalnim zajednicama okupl jenim oko nj ih Ovomeđutim ne znači da je kval itet usluga koje nude manje popularne lokalnezajednice okupl jene oko distribuci ja namenjenih napredni j im korisnicima loši j i Manje popularne distribuci je okupl ja ju manje l judi a l i zato oni poseduju većeznanje Iskustvo sa zajednicama okupl jenim oko slobodnog softvera je uglavnompozitivno i ukazuje na to da kval itet usluga koje one nude korisniku ni je uslovl jenpopularnošću i masovnošću zajednice nego iskl jučivo njenom (ne)aktivnošću

U svakom slučaju dosadašnj i saveti za izbor idealne distribuci je važe i dal jeSoci ja lni aspekt slobodnog softvera je samo dodatni faktor koj i vam može pomoćipri donošenju odluke kada se dvoumite između nekol iko mogućih rešenja

Još uvek ne postoj i na jednom mestu potpuni i ažurirani spisak svih aktivnihsrpskih zajednica Nešto najbl iže tome može da se nađe na adresihttps pulsslobodewordpresscom Za informaci je o nekim drugim lokalnimzajednicama koje možda postoje al i nisu na ovom spisku moraćete sami dapretražite internet

Lokalizacija kao kriterijum za izborZa lokal izaci ju GNULinuks distribuci ja i GNU programa odgovorni su pojedinci ilokalne zajednice Sasvim sol idnu srpsku lokal izaci ju mogu imati i projekti koj iuopšte nemaju svoju lokalnu zajednicu a isto tako lošu lokal izaci ju mogu imati iprojekti sa dobrom lokalnom zajednicom Sve je stvar prioriteta zajednica iaktivnosti pojedinaca

Pravu i kontrol isanu lokal izaci ju može imati samo lokalni projekat Ovakvihprojekata u Srbi j i ima malo i teško se probi ja ju čak i u lokalu u konkurenci j isvetskih projekata Istina je da mnoge veće GNULinuks distribuci je imaju srpskulokal izaci

Oslobađanje

29

Broj 33

ju u ponudi pa se možda sl ični lokalni projekti koj i su usmereni samo na striktnulokal izaci ju smatraju nepotrebnima Uzvodna lokal izaci ja u slučaju Srbi je vrlo čestobude veoma loše čak nakaradno sprovedena Jedna polovina programa jelokal izovana srpskom ćiri l icom a druga latinicom Ako postoj i još delova sistemakoj i uopšte ni je lokal izovan onda se pojavl ju ju i delovi programa koj i su naengleskom Zato ćemo se vratiti na prvu rečenicu ovog pasusa i ponovo utvrditi dasamo lokalni projekat može potpuno kontrol isati pravu srpsku lokal izaci ju

U Srbi j i za sada imamo dva aktivna projekta GNULinuks distribuci je ndash TriOS(http triosrs) i Serbian (http wwwdebian-srbi ja iz rspserbianhtml) Obaprojekta su mlada i imaju svoj ih prednosti i mana Kome treba lokal izovanoperativni sistem može da proba jedan od ova dva projekta

U potrazi za idealnom distribucijom

30

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Iako ove dve domaće distribuci je nisu baš naj idealni je interesantno je probati ih iuporediti sa drugim distribuci jama

Za kraj serijalaNamera nam je bi la da kroz ovaj seri ja l o kriteri jumima pri izboru idealnedistribuci je definišemo većinu kriteri juma pri izboru i pokažemo zašto je teškoodgovoriti na jednostavno pitanje bdquoKoju mi distribuci ju preporučujeterdquo

Ni na samom kraju nismo dal i konkretan odgovor na pitanje koja je idealnaGNULinuks distribuci ja Suviše je subjektivnih ocena da bi se mogao datikonkretan odgovor Smatramo da je jako teško napisati neki algoritam izbora pokriteri jumima koje smo identifikoval i i definisal i a možda je čak i nemoguće poštose izlazi stalno menjaju Izlazi iz tog algoritma su GNULinuks distribuci je koj ih izdana u dan ima sve više a i one stare se stalno menjaju

Sam seri ja l bdquoU potrazi za idealnom distribuci jomrdquo neće biti završen samo zato štose više neće baviti kriteri jumima pri izboru nego će pokušati da predstavl jaGNULinuks distribuci je koje su po nečemu bdquoidealnerdquo

Oslobađanje

31

Broj 33

ORM

Autor Dejan Čugal j

Object relation mapping (ORM)

ORM (eng Object RelationMapping) je način postizanja traj-nosti (eng persistence) objekataunutar relacionih baza podatakaModel deluje kao posrednik nalogičkom delu apl ikaci je Automat-ski presl ikava podatke iz objekata ubazu i nazad na zahtev apl ikaci jeDa bismo objasni l i kako ovo sveradi moramo da vam predstavimoORM frejmvork (eng framework)programa otvorenog koda -Hajbernejt (eng Hibernate -http hibernateorgorm)

Šta je ORMUkratko ORM je automatizovano transparentno presl ikavanje objekatakorišćenjem metapodataka koj i opisuju mapiranje veze između objekta i baze

ORM (2 deo)

Slobodni profesionalac

32

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

podataka u apl ikaci jama koje su napisane u objektno ori jentisanim programskimjezicima Apl ikaci ja komunicira sa ORM-om preko njegovog vlastitog API-ja (engapplication programming interface) i određenih objekata Ova komunikaci ja jepotpuno odvojena od komunikaci je koja se odvi ja između ORM-a i baze podatakapreko SQL-a i DBC-a

Da bi se postigla i dostigla potpuna snaga ORM-a u apl ikaci j i koju projektujemonikako se ne sme iskl jučiti znanje relacionih modela SQL jezika te poznavanjeDBMS-a u kome se radi ORM ni je ništa drugo do srednj i sloj između gorepomenutih tehnologi ja i objektno ori jentisanog programiranja kao što smo to dosada već više puta naglasi l i

Implementacija ORM-aPostoje razl ičiti načini implementaci je ORM-a Mark Fasl (Mark Fussel) je 1997definisao četiri nivoa

1 bdquoČistrdquo relacioni način2 Slabo mapiranje objekata3 Umereno mapiranje objekata4 Potpuno mapiranje objekata

bdquoČistrdquo relacioni način

Cela apl ikaci ja ukl jučujući i korisnički interfejs dizajnirana je relacionim modelom iSQL relacionim operatorima Ovakav pristup je odl ičan za male projekte Direktanpristup SQL-u omogućava fino podešavanje svakog aspekta upita koj i se postavl jabazi podataka Osnovne mane su portabi lnost (prenosivost) i održavanje ovakvihsistema pogotovo ako se planira korišćenje apl ikaci je na duži rok Ovakvi sistemimasovno koriste sačuvane procedure (eng stored procedures) što znači da jeposlovna logika (eng busines logic) prebačena na samu bazu podataka

Slabo mapiranje objekata

Entiteti su predstavl jeni kao klase i mapiranje se radi ekspl icitno ka relacionimtabelama SQLJDBC je sakriven od poslovne logike korišćenjem poznatih šablona(patterns)

Umereno mapiranje objekata

Slobodni profesionalac

33

Broj 33

Dizajn apl ikaci ja se svodi na objektne modele SQL se generiše u vremekompaj l iranja (eng build-time) i l i u vreme izvršavanja (eng run-time) Specifikaci jaupita nad bazama podataka se radi na objektno ori jentisanom jeziku Ovakvisistemi se koriste u apl ikaci jama srednj ih vel ičina kod koj ih je bitna portabi lnostizmeđu razl ičitih sistema za upravl janje bazama podataka (DBMS)

Potpuno mapiranje objekata

Podržava sofisticirano objektno model iranje nasleđivanje i pol imorfizamEfikasnost dobi janja podataka je na visokom nivou i koriste se metode kao što sulenjo učitavanje (eng lazy loading) i strategi ja keširanja (eng caching) Implementaci ja je transparentna u apl ikaci jama Ovaj nivo je jako teško dostići Pojedincu su potrebne godine razvoja da postigne ovakvu fleksibi lnost pristupa imanipulaci ja u relacionim bazama podataka Upravo ovaj nivo se postiže ako sekoriste rešenja ORM-a kao što je Hajbernejt

Zašto ORMImplementaci ja ORM rešenja pogotovo ako seprvi put susrećete sa ovim modelom može dabude veoma frustrirajuća i malo teža zaimplementaci ju Kada ovo kažemo misl imo daprogramer koj i implementira ORM i hoće da istibude kval itetno urađen mora da posedujepredznanje objektno ori jentisanog programiranjai naprednih tehnika kao što su nasleđivanje ipol imorfizam

Ovo inicira fundamentalna pitanja

bull Pa zašto bi iko onda implementirao ovako nešto kompleksnobull Vredi l i truda upuštati se uopšte u ORM

Odgovor ni je jednostavan Dosadašnja iskustva u korišćenju ORM-a i njegovapopularnost već daju odgovor na postavl jeno pitanje Očigledno je da su benefitikoje donosi ovaj model veći od kompleksnosti njegove implementaci je a to su

Hibernate ORM

34

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Veća produktivnost

ORM smanjuje kol ičinu koda potrebnog za ostvarivanje trajnosti podataka Ovoomogućava programeru da vreme koje bi utrošio na ručno mapiranje podatakautroši na druge delove apl ikaci je

Lakše održavanje

Manje l ini ja koda osigurava bol ju razuml j ivost (i možda bol j i kval itet koda) jernaglašava apl ikaci jsku logiku ORM takođe ublažava uticaj nastal ih promena kaošto su promene u bazi strukturi tabela i td

Prenosivost

Većina ORM rešenja podržava sisteme za upravl janje bazama podataka raznihproizvođača ORM u potpunosti odvaja sloj apl ikaci je od stvarne SQL komunikaci jekoja se odvi ja u pozadini Time omogućava da se pišu apl ikaci je koje će moći da seizvršavaju na razl ičitim bazama podataka bez potrebe za dodatnim kodiranjemOva komunikaci ja se odvi ja sa programskim interfejsima ORM-a nezavisno oDBMS-u sa koj im je u bi lo kom momentu povezan ORM takođe omogućava lakšiprelaz sa manj ih na veće baze podataka tokom razvoja apl ikaci je

Uvidel i smo da trenutno postoje dve paradigme koje se bdquosudarajurdquo i koje supodjednako dobre same za sebe Relaciona paradigma potvrđuje da sve što jeizgrađeno na matematičkim osnovama je i trajno u smislu kval iteta koje posedujeU domenu u kom relaciona paradigma egzistira ona je ako je to u ovo vremeuopšte moguće tvrditi nezamenj iva

Ono što otvara pitanja i daje razlog za sumnju je koja je krajnja granicaupotrebl j ivosti relacione paradigme tj kol iki su kapaciteti složenosti zahtevaapl ikaci ja sa kojom može da se nosi Praksa je pokazala da je sasvim mogućebdquoizvestirdquo složene projekte - al i održavanje skalabi lnost razuml j ivost prenosivost -pitanja su sa koj im se relaciona paradigma teško može izboriti

Sa druge strane svoj habitat u informacionim tehnologi jama je našla i objektna

Slobodni profesionalac

35

Broj 33

paradigma Iako na prvi pogled ova dva modela nemaju ništa zajedničko - što je uneku ruku i istinito gledajući prirodu podataka koj im manipul išu - praksa jepokazala da su usko povezane i skoro da imaju sinaptičku vezu

Pitanje bdquokako spoj iti te sinapserdquo dovelo je do žučnih rasprava u uskim naučnimprogramersko-administratorskim krugovima Rodi l i su se razni model i a l i jedan jeiskočio i polako ulazi u široku primenu - a to je ORM Svoj im supti lnim pristupomproblemu nekompatibi lnih paradigmi nekako je uspeo da stvori taj nedostajućibdquoelektrični signalrdquo koj i ih je povezao Ovo je omogući lo da dve strane koje susvaka za sebe u svom domenu ostavi le i ostavl ja ju duboki trag u informacionimtehnologi jama sarađuju i donesu novi kval itet

Korisni l inkovi

[1] Hibernejt http hibernateorg[2] Viki http googlLlZulw[3] Tutori ja l i http googlCGzvnc

Hibernate ORM

36

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Autor Kriptopank

Šta su zapravo metapodaci Najkraće rečeno to su podaci o podacima i l iinformaci je koje opisuju podatke

Najpre da napravimo razl iku između podataka i metapodataka Podaci sunaprimer snimak (i l i transkript) vaših telefonskih razgovora sadržaj poruka kojepišete primate i l i šal jete podaci koje kačite na internet i l i preuzimate pretrageGuglom postovi na forumima dopisivanja na IRC kanal ima i l i drugim četovimaaudio i video snimci Skajp razgovora i tako dal je

Hajde da vidimo šta bi bi l i odgovarajući metapodaci za ove primere

bull Za telefonske razgovore metapodaci mogu biti lokaci ja učesnika brojevitelefona trajanje razgovora IP i MAC adresa

bull Za poruke četove i Skajp i l i druge video-audio komunikaci je sl ično je kao kodtelefonskih razgovora

To su samo metapodaci

Internet mreže i komunikacije

37

Broj 33

bull Kod foruma i pretraga Guglom ima malo manje metapodataka al i Gugl i raznisajtovi i forumi ionako čuvaju logove o korisnicima što su takođe metapodaci

Ako do sada koj im slučajem niste uvidel i opasnost po privatnost u ovimmetapodacima koje svako od nas smrtnika svakodnevno ostavl ja za sobom usvetu interneta i ostal ih digitalnih komunikaci ja nadamo se da će vas ovaj primermakar podstaći na razmišl janje a možda i na nešto više

Zamisl i te da neko (zvaćemo ga posmatrač) stalno sakupl ja metapodatke koje zasobom ostavl jate kao mrvice hleba Posmatrač recimo zna da se nalazite naautoputu nedaleko od famoznog Feketića da se ne krećete da zovete AMSS zatimšlep službu i možda taksi a l i ne zna šta ste razgovaral i I l i posmatrač vidi da steprvo zval i aerodrom Nikola Tesla pa odmah potom taksi a l i ne zna šta sterazgovaral i I l i posmatrač vidi da ste zval i prvo šest brojeva či je identitete takođezna pa vidi da se oni zatim kreću ka vama - GPS (eng Global Positioning System) pa zatim pica servis Mekdonalds i neku poznatu prodavnicu kineske hrane al i nezna šta ste razgovaral i

Posmatrač ne mora da bude mnogo pametan niti da prisluškuje vaše razgovore dabi shvatio šta se dešava i l i šta će se desiti Sasvim mu je jasno da vam je u prvomprimeru auto stao na autoputu zatim da ste se u drugom slučaju uputi l i naaerodrom i da možda putujete van zemlje i l i ste poslal i taksi po nekoga saaerodroma a da u trećem slučaju okupl jate žurku kod vas Više možete pogledatina http googl7vUjP

Iako su to bdquosamordquo metapodaci treba biti svestan da ti metapodaci o vama stvarajujednu digitalnu sl iku i l i bol je reći digitalni mozaik i na neki način vas jedinstvenoodređuju Pogotovo kada se planski prikupl ja ju na više nivoa (kompjuter pametnitelefon pametni automobi l i kreditna kartica) metapodaci čine vaš digitalniidentitet Al i da stvar bude još gora ta sl ika o vama ne mora nužno biti istinita jerse lako može lažirati Recimo možete zameniti telefone i l i automobi le sa nekimnamerno i l i slučajno i l i vam neko može jednostavno ukrasti telefon laptop i l ikreditnu karticu Zaniml j iv video http googlKO1fKf

Evo jednog primera koj i vas može uvući u vel ike nevol je Recimo da prolazitenekom zabačenom ul icom i da vam neprimetno ispadne telefon al i vi to neprimetite i nastavite dal je svoj im putem U toj ul ici se samo nekol iko minutakasni je desi neko ubistvo i vas pozovu u pol ici ju kao osumnj ičenog Ako koj im

To su samo metapodaci

38

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

slučajem nemate dobar al ibi i l i nemate svedoka da posvedoči da niste bi l i u tojul ici nego tamo gde ste stvarno bi l i a drugih svedoka nema - možete jako lošeproći Zaniml j ivi video http googlspS5OZ

Metapodaci se takođe nalaze i u faj lovimapodacima koje svakodnevnopreuzimamo sa interneta pravimo i koristimo Svaki tip podatka može da sadržiodređene metapodatke koj i bol je opisuju sam podatak kao naprimer vremenastanka podatka kol iko je vremena potrošeno za njegovo kreiranje kol iko putamu je pristupl jeno kad je poslednj i put pristupl jeno i tako dal je Iako se ovakvimetapodaci možda još uvek čine bezazlenim oni mogu sadržati i IP adresuračunara sa kog su napravl jeni GPS koordinate (najčešće PNG format sl ika satelefona) ko ga je napravio (l ičnost i l i kompani jaorganizaci ja) naziv uređaja imodel sa koga je napravl jen kao i MAC adresu uređaja mej l adresu kreatorasoftver koj im je napravl jen i tako dal je Sve ovo može mnogo da naškodiprivatnosti izvornog kreatora faj la pogotovo ako je sadržaj poverl j iv Ukol iko nekopresretne taj podatak na internetu može saznati od koga je potekao Da ovo možebiti katastrofa po kreatora takvog faj la može i lustrovati primer torenta Ako stedošl i u posed nekih sl ika i l i video materi ja la i l i teksta koj i žel i te da podel ite sasvetom preko nekog torent sajta morate taj podatak prvo očistiti odmetapodataka da ne bi svako ko skine to što ste okači l i saznao da vi stoj i te izatoga

Internet mreže i komunikacije

39

Broj 33

Ljudi se konstantno prate metapodaci se sakupl ja ju i to ni je sada već ništa novoal i možemo da se trudimo da iza sebe ostavl jamo malo manje nežel jenihmetapodataka i da ih takoreći čistimo iz podataka koje razmenjujemo Na srećupostoje programi koj i ovo dobro rade

Najpre je potrebno da vidimo koje sve metapodatke neki faj l sadrži kako bismo seuveri l i da ovi metapodaci stvarno postoje i da je faj l bezbedan nakon nj ihovogbrisanja

Ako koristite operativne sisteme GNULinuksa treba da iz terminala preuzmete iinstal irate program pod nazivom exiftool

sudo apt-get install exiftool

Ovaj program će nam pružiti uvid u sve metapodatke koje faj l sadrži Korišćenje jeiz terminala al i je zato veoma jednostavno samo ga pokrenite na sledeći način

exiftool File

i l i

exiftool putanjadofajlapočevodkorenogdirektorijuma

Dobićete prikaz metapodataka koje je program pronašao Sada je potrebno davidimo da l i je podatak bdquoprl javrdquo tj da l i ima u njemu nešto da se briše i da akoima iz njega sve nepotrebno obrišemo Tu će nam pomoći drugi program zvaniMAT (eng Metadata Anonymisation Toolkit) koga možete naći na sajtuhttps matboumorg i l i jednostavno za korisnike Ubuntua i Debi jana uSoftverskom centru i l i ga možete instal irati iz terminala

sudo apt-get install mat

MAT će proveriti da l i je podatak bdquoprl javrdquo i l i ne i za vas ga očistiti od nežel jenihmetapodataka

Kada očistite faj l on je spreman za del jenje sa drugima a vi ste bezbedni jer nikone može reći da je faj l potekao sa vašeg računara

To su samo metapodaci

40

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Autor Dejan Čugal j

GH Hardi bdquoPrava matematika nema uticaj na ratrdquo - odbrana matematičara1940 godina

Bi l Tat - britanski matematičar verovatno niste čul i za njega1942 godine je izveo ogroman poduhvat koj i je skratio rat dvegodine (barem po rečima Ajzenhauera) i spasio mi l ione životaNažalost njegova vel ičina je preminula 2002 godine obavi jenavelom tajne i nikada zvanično ni je priznato njegovo dostignuće

Tomi Flauers - bivši inženjer poštanskog saobraćaja pretvorio jematematičke ideje Tata u prvi računar a to ni je bio bdquoENIACrdquo1Preminuo je 1998 godine a pretpostavl jamo da nikada niste čul ini za njegovu vel ičinu

Ovi umni giganti bdquoBlečl i parkardquo omogući l i su Britani j i da dešifruje strogo poverl j ivumašinu koju je koristio Hitler da diriguje drugim svetskim ratom a to ni je bi labdquoENIGMArdquo nego nešto mnogo tajni je i značajni je Vel ika je verovatnoća da nistečul i ni za ovo Neki kažu da je to bio Hitlerov Blekberi (BlackBerry)

Izgubljeni heroji bdquoBlečli parkardquo

1 engl Electronic Numerical Integrator And Computer - prvidigitalni elektronski računar

Internet mreže i komunikacije

41

Broj 33

1939 godine bdquoBlečl i parkrdquo je postao ratni štab MI6 (britanske vojne obaveštajneslužbe) Do danas je procurelo u javnost i dokumentovano brojnim fi lmskimdokumentarcima samo da je tu Alan Tjuring uspeo da dešifruje nemačkumornaričku šifru poznatu kao bdquoENIGMArdquo i uvel iko doprineo pobedi saveznika a to jesamo deo priče koj i je ispričan

U Blečl i parku su bi la tri heroja AlanTjuring Bi l Tat i Tomi Flauers Od nj ihtroj ice jedino Alanu Tjuringu je priznat deozasluga za pobedu saveznika u Drugomsvetskom ratu Pregledom otkrivenihpodataka danas možemo da tvrdimo daje bdquoENIGMArdquo već sa početka drugogsvetskog rata bi la zastarela tehnologi ja Zbog toga je bi lo lako skinuti veo tajne sa

ovog uspeha heroja Blečl i parka

Izgubljeni heroji bdquoBlečli parkardquo

42

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Bi l Tat koj i je dešifrovao bdquoTANI sistemrdquo (TANI) i Tomi Flauers koj i je samo svojomintuici jom i znanjem sklopio prvi računar na svetu (bdquoKOLOSrdquo) u svrhu bržegdolaženja do informaci ja razbi jenog koda bdquoTANIrdquo tako da zastarelost šifrata budesvedena na minimum - radi l i su na novoj generaci j i mašina za šifrovanje Ovatehnologi ja je bi la prepoznata kao tehnologi ja budućnosti pa i danas iznadinformaci ja o tim tehnologi jama stoj i natpis bdquovrhunska tajnardquo (eng Top Secret) Upravo ovaj veo tajni oko šifrata bdquoTANIrdquo i prvog računara je rezultirao iskrivl jenjuistori je informatike

Za uspehe u prvim godinama rata je zaista zaslužno razbi janje bdquoENIGMArdquo šifrata ito ni je sporno al i krajem 1941 godine u etru planete se začuo novi zvuk To je bi lanova mašina za šifrovanje ni je bi la zasnovana na bdquoMorzeurdquo već je radi la naprincipu teleprintera

Jedna od kl jučnih ideja Hitlerovog ratovanja je bi la u vel ikoj mobi lnosti i brzomdelovanju trupa na terenu a da bi se to izvelo komunikaci ja je isto tako morala dabude u najmanju ruku putem radio signala

Razl ika je ogromna Razl ika je u kol ičini podataka koj i može da se prenese ovimbdquotajnimrdquo putem Prvi svetski rat je bio zaniml j iv jer su se šifrovane poruke baziralena rečima dok je Drugi u potpunosti otvorio vrata današnjoj kriptografi j i a to jematematika

Originalan nemački kocircdni naziv za ovaj šifrat bio je bdquoLORENCrdquo Britanska

Internet mreže i komunikacije

43

Broj 33

obaveštajna služba mu je dala nadimak bdquoTANIrdquo Čak ni dan danas ni je baš poznatokako je sve nastalo al i pouzdano se zna da je tajnu mašinu Hitler nazvaobdquoGehajmšrajberrdquo (nem Geheimschreiber) - mašina tajni

U srž i tehnologi ju šifrovanja bdquoLORENCrdquo šifrata nećemo ulaziti u ovom članku al iverujte nam na reč - ni je bi la jednostavna Može se pretpostaviti da je inspiraci jaŠenonovog 2 rada slučajnosti bi la upravo ova tehnologi ja iz Drugog svetskog rata

Ono čime se Treći rajh vodio je bdquosigurnardquo šifrovana veza koju niko ni je smeo dadešifruje Prenošenje šifrovanih poruka pomoću radio signala je dalo obaveštajnimslužbama mogućnost presretanja poruka poslatih radio talasima Da l i se ovo idanas dešava Imamo l i sigurnost u našim šifrovanim podacima današnj ice

Ono što je usledi lo nakon proboja ovog bdquoneuhvatl j ivogrdquo šifrata je upravo ono što jeprincip današnj ice kao neka vrsta protokola koj i mora da se ispoštuje uperfektnom šifarskom Šenonovom sistemu

1 NIKADA NIKADA NE KORISTITI DVA PUTA ISTI KLJUČ ZA ŠIFROVANJE2 NIKADA NIKADA KLJUČ NE SME DA SE ŠALJE ISTIM KOMUNIKACIONIM KANALOM

KAO PORUKA3 NIKADA NIKADA KLJUČ NE SME DA BUDE MANJ I NEGO ŠTO JE PORUKA (engl

2 Klod Elvud Šenon (eng Claude Elwood Shannon) (1916-2001) - Američkinaučnik i inženjer

Izgubljeni heroji bdquoBlečli parkardquo

44

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

one time pad) 4 NIKADA NIKADA NE SMEMO DA SAKRIVAMO SISTEM ŠIFROVANJA SVE MORA

DA JE OTVORENOG KOcircDA

Najveći propusti kriptologi je koj i su uočeni baš u Drugom svetskom ratu jesupokušaj sakrivanja sredstava koj im se generiše tajna poruka i nepoznavanjeŠenonovih krajnj ih granica informaci ja Kada kažemo bdquosredstvo i sakrivanjerdquomisl imo na algoritme Postavl ja se pitanje zašto je danas kriptologi ja sigurni ja negočetrdesetih i pedesetih godina prošlog veka

Danas uprkos tome što su algoritmi za kriptografi ju otvorenog kocircda tajnostinformaci ja je na višem nivou nego što je to bi lo dok je algoritam bio strogopoverl j iv Tajnost tajnih podataka se ne zasniva na tajnosti a lgoritama koj i generišutaj isti bdquotajni izlazrdquo (eng cipher text) nego u nemogućnosti matematičke inverznefunkci je koja bi šifrovan tekst otvori la Ovde se vidi da je svrha strukture otvorenogkocircda kao jednog od značajnih delova današnje kriptologi je ona koja ga činisigurnim i svima dostupnim

Sada kada se sa ove distance osvrnemo na Drugi svetski rat možemo videti kol ikosmo bi l i bl izu apokal ipse Naime Albert Ajnštajn je već 1944 godine imao urukama recept za nuklearnu bombu Šenon je mogao već u to vreme da nampredoči 100 siguran šifrat (tzv Hitlerovu super šifru) a l i ipak sreća nas jeposluži la da čovečanstvo tada ni je bi lo spremno da upotrebi svu raspoloživutehnologi ju

Albert Ajnštajn bdquoČetvrti svetski rat će se voditi tol jagamardquo

Zaboravl jeni heroj i Blečl i parka iako su odigral i važnu ulogu u pobedi saveznika usvetskom ratu postal i su žrtve bdquotop secretrdquo doktrine potpuno su zaboravl jeni inestal i su iz istori je

Zakl jučak ovog članka je da je ideologi ja otvorenog kocircda sasvim sigurno tu da nampomogne i da otvori vrata ka većoj sigurnosti novim idejama i kval itetu sameinfrastrukture sistema koju svi zajedno razvi jamo

Internet mreže i komunikacije

45

Broj 33

Autor Nikola Hardi

NabrajanjaBez brojeva

Za nabrajanje pojmova u Bimeru (eng Beamer) koristi se okruženje itemize aunutar tog okruženja možemo da dodajemo nove stavke pomoću item Primerizgleda ovako

beginitemizeitem Stavka Aitem Stavka Bitem Stavka C

enditemize

Sa brojevima

Postoje situaci je kada uz nabrajanje treba da stoje i redni brojevi - za to se koristienumerate okruženje a nove stavke se takođe dodaju pomoću item

beginenumerateitem Redni broj 1item Redni broj 2item Redni broj 3

endenumerate

prezentaci ja

Beamer (4 deo)

Sam svoj majstor

46

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

DefinicijeTreća situaci ja je nabrajanje parova termin - definici ja U tom slučaju se koristiokruženje description Već možete da pretpostavite kako se dodaju nove stavke

Primer

begindescriptionitem[Pojam A] Definicija izmišljenog pojma Aitem[Pojam B] Definicija izmišljenog pojma Bitem[Pojam C] Definicija izmišljenog pojma C

enddescription

Ostala podešavanja i zanimljivostiSva prethodna okruženja mogu da budu ugneždena jedno unutar drugog dotrećeg nivoa Treba biti pažl j iv jer sla jdovi vrlo lako mogu da postanu nečitl j ivi Osim toga moguće je izabrati i format oznake i l i rednih brojeva - na primer ovako

beginenumerate[I]beginenumarate[a)]

Takođe moguće je upravl jati pojavl j ivanjem pojedinih stavki na slajdovima Drugimrečima možemo da odredimo da se nabrajanja postepeno otkrivaju tako što ćemouz stavku dodati lt1-gt odnosno broj od kojeg slajda žel imo da se ta stavkapojavl ju je Tada će jedno nabrajanje biti bdquorazvučenordquo na više slajdovaJednostavni ja mogućnost je da u zaglavl je okruženja dodamo +- što znači dažel imo da se svakim slajdom otkriva po jedna nova stavka iz nabrajanja Znak bdquo-rdquo uoba primera znači da žel imo da se stavka pojavi na sledećem slajdu i da ostane

Sam svoj majstor

47

Broj 33

prisutna Možemo da izostavimo znak bdquo-rdquo i tada će stavka biti prisutna samo najednom slajdu i l i da napišemo raspon slajdova u koj ima žel imo da ta stavka budeprisutna

Rad sa kolonama i blokovimaDo sada su svi primeri podrazumeval i da je sadržaj napisan preko cele širineslajda al i Bimer (eng Beamer) ima i jednostavne mehanizme za razmeštanjesadržaja po kolonama Za rad sa kolonama se koristi okruženje columns unutarkojeg možemo da dodajemo nove kolone pomoću columnširina Sadržaj jemoguće potom pisati i van okruženja sa kolonama

U paru sa kolonama često se sreće i okruženje block koje se parametrizujenaslovom Primerom su i lustrovani i okruženje column i okruženje block

beginframebegincolumns

column05textwidthbeginblockNaslov levog blokaSadržaj u prvoj (levoj) koloni endblock

column05textwidthbeginblockNaslov desnog blokaSadržaj u drugoj (desnoj) koloni

endblockendcolumns

beginblockVan kolona

Beamer

48

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Tekst koji se nalazi ispod kolonaendblock

endframe

TabeleIako se u radu sa prezentaci jama sadržaj najčešće može uredno rasporeditipomoću kolona i nabrajanja nekada to ni je dovol jno jer su tabele pravi formatBimer podržava standardno Lateh (LaTeX) okruženje za rad sa tabelamaOkruženje za rad sa tabelama se zove tabular Pri kreiranju nove tabele moguće jepodesiti koje kolone će biti razdvojene l ini jom i da l i će nj ihov sadržaj biti centrirani l i uz levu i l i uz desnu ivicu Dodavanje novog reda se jednostavno radidodavanjem hline Lateh pruža zaista jako fleksibi lan rad sa tabelama i sigurno ćedoskočiti svim mogućim i nemogućim zamisl ima Potražite bi lo koje Lateh uputstvoza rad sa tabelama i radiće i sa Bimerom

beginframebegintabular | c | c | c | c |

hlineamp Ponedeljak amp Utorak amp Sreda hline

1 amp 16 amp 32 amp 64 hline2 amp 16 amp 128 amp 1024 hline3 amp 16 amp 512 amp 4096 hline

endtabularendframe

Sam svoj majstor

49

Broj 33

Beamer

Teoreme i istaknut tekstU nastavi su česta izlaganja teorema nj ihovih dokaza i primera U Bimer jeugrađena podrška za elegantno predstavl janje ove trojke Mehanizam takođepodržava postepeno otkrivanje sadržaja sla jda tako da slušaocima ne bude odmahotkriven dokaz teoreme Mehanizam za postepeno otkrivanje se kao i kodnabrajanja postiže pomoću bdquolt1-gtrdquo konstrukci je Evo kako to izgleda

beginframeframetitlePrimer teoreme

begintheoremlt1-gt Teorema kaže da su beamer prezentacijezanimljive

endtheorem

beginexamplelt2-gt Ovaj kod kreira slajd beamer prezentacijeendexample

beginprooflt3-gt Čestitamo stigli ste do kraja serijala o pravljenju beamer prezentacija

endproofendframe

50

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Za krajOvim člankom završavamo seri ja l o Bimeru Nadamo se da smo uspel i da vaszainteresujemo za ovu vrlo korisnu klasu Lateha Trudi l i smo se da vamprezentujemo najvažni je delove Bimera koje ćete najčešće koristiti pri l ikomkreiranja svoj ih prezentaci ja

Napominjemo još jednom da je Bimer samo jedna od klasa Lateha što znači da i zaBimer važi sve ono što ste već mogl i da pročitate u ovom časopisu kad smo pisal iseri ja l bdquoUvod u LaTeXrdquo (LiBRE brojevi 17 do 21) Štaviše ovaj seri ja l o Bimeru jebio nastavak upravo tog seri ja la U ovom seri ja lu nismo pisal i o samomformatiranju teksta u prezentaci jama jer se podrazumeva da važe ista pravi la kao iu Latehu a o tome smo pisal i u prethodnom seri ja lu

Hvala vam što ste prati l i ovaj seri ja l i žel imo vam puno uspeha u kreiranju Bimerprezentaci ja

Sam svoj majstor

51

Broj 33

Autor Nenad Marjanović

Kada smo se upoznal i sa podešavanj ima sistema i umrežavanjem vreme je za našprvi Biglbon Blek (BBB - eng BeagleBone Black) projekat Svakom od nas će ovajizazov dati razl ičite ideje a jedna od nj ih može biti i zaštita privatnosti internetkorisnika Nažalost u Srbi j i ne postoj i ni jedan izlazni tor server (eng node) i to jepomalo tužna sl ika s obzirom da govorimo o populaci j i od sedam mil ionastanovnika Al i ovu sl iku možemo promeniti udruženim snagama i za početakkreiranjem Tor transfer i izlaznog servera U ovde prikazanom grafikonufokusiraćemo se na bdquoRauter Brdquo tačku odnosno transfer server konfiguraci ju

BeagleBone Black Rev C

Vodič od prvog dana (3 deo) ndashBeagleBone Black kao Tor relej

Hardver

52

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Tor predstavl ja mrežu servera koj i se povezuju radi bol je enkripci je podataka izaštite IP adrese korisnika Naš ci l j je da danas postanemo deo ovog predivnogprojekta i da se nađemo na svetskoj karti Tor servera

Brzina interneta i zakonske regulativePotrebno je imati na umu nekol iko bitnih stvari

1 Naš server = naša odgovornost2 Obavezno naznačite da ste vi administrator a ne korisnik istog servera3 Da posedujete internet brzinu od 2 Mbs

Ako ispunjavamo tri navedena pravi la i odgovornosti možemo se posvetitiadministrativnim poslovima

Instalacija i podešavanjaU ovom primeru koristimo Debi jan Vizi (eng Wheezy) odnosno Debi jan 7 verzi juna našem BBB uređaju Vi možete testirati i druge Linuks platforme Prvododajemo izvornu bibl ioteku u etcaptsourceslist faj l pokretanjem sledećekomande u terminalu

echo deb httpdebtorprojectorgtorprojectorg wheezy main gt etcaptsourceslistdtorlist

Zatim dodajemo izvorni kl juč vršimo ažuriranje sistema i instal iramo tor i tor-arm(Tor monitoring sistem)

gpg --keyserver keysgnupgnet --recv 886DDD89gpg --export A3C4F0F979CAA22CDBA8F512EE8CBC9E886DDD89 | sudo apt-keyadd -apt-get updateapt-get install debtorprojectorg-keyring -yapt-get install tor tor-arm egrep screen -y

Ovim smo uspešno završi l i instalaci ju Tor servera i sistema za monitoring odnosnonadgledanja našeg Tor servera Sledećom komandom radimo na podešavanj imaTor servera koja se nalaze u etctortorrc faj lu Obratite pažnju i izvršite potrebne

Hardver

53

Broj 33

izmenu u pol j ima IP adresa (eng Address) nadimka (eng Nickname) i kontaktpodataka (eng ContactInfo) pre pokretanja ove komande Kopiramo i pokrećemokomandu u celosti u terminalu

egrep -v ^(|$) etctortorrcORPort 443Address 19216811Nickname LibreTorRelayRelayBandwidthRate 100 KBRelayBandwidthBurst 120 KBContactInfo ltvi at gmail dot comgt irPort 8080DirPortFrontPage etctortorhtmlExitPolicy reject

Detal je o svim vrednostima nećemo iznositi u ovom broju LiBRE časopisa al ićemo o nj ima pisati u sledećem u kome ćemo pričati o zaštiti Tor servera imogućnosti podešavanja određenih izlaznih pravi la (eng ExitPolicy)

Nakon ovoga možemo primetiti da se u folderu etctor ne nalazi torhtml faj l Ovaj faj l ni je od vel ikog značaja i možete ga l ično napraviti i l i preuzeti jednu kopi ju- naprimer sa sledeće lokaci je

cp usrsharedoctortorhtml etctortorhtml

Opcije i Tor Arm monitoringDa bismo ispravno koristi l i Tor Arm potrebno je urediti još jednom etctortorrcfaj l i restartovati servis

echo -e ldquoDisableDebuggerAttachment 0n AvoidDiskWritesrdquo gtgt etctortorrcsudo service tor reload

Ukol iko žel ite koristiti Tor Arm za nadgledanje aktivnosti na serveru pokreniteprogram screen kl iknite na bdquoEnterrdquo i kucajte sudo -u debian-tor arm Naekranu ćete imati sl ičan prikaz

BeagleBone Black

54

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Hardver

55

Broj 33

Da bismo napusti l i screen program koristimo Ctrl + a + d i na taj način kada sesledeći put pri javimo na server kucamo samo screen -r u terminalu - i naći ćemose ponovo na čuvenom Tor Arm monitoring ekranu

Nakon svake promene konfiguracionih faj lova ako slučajno nismo nešto podesi l ikako treba restartujemo servise

U sledećem broju časopisa govorićemo o minimalnim podešavanj ima ikonfigurisanju izlaznog Tor servera (eng Tor Exit Node) opci jama sigurnosti isl ičnim detal j ima u vezi sa našim prvim projektom Do čitanja u sledećem broju

BeagleBone Black

LUGoNS BarCamp 4subota 7 mart 2015 godine

Četvrti LUGoNS-ov Barkemp (BarCamp) održaće se u Novom Sadu usubotu 7 marta 2015 godine na Fakultetu tehničkih nauka sa početkomu 12 časova

Ulaz je slobodan

Poziv za predaju radovaLUGoNS poziva sve zainteresovane da pošal ju svoje radove (predavanjaprezentaci je radionice i diskusi je) do 28 februara 2015 godine

Oblasti iz koj ih možete da pri javite vaše radove su

bull Slobodan softverbull Zaniml j iv hardverbull Hakerski zakonibull Sigurnosne noćne morebull Anonimnost i privatnost na internetubull Duboki veb (eng Deep Web)bull Soci ja lne mrežebull Soci ja lni inženjeringbull Hakovanje mobi lnih uređajabull Internet u oblaku (eng Clouds) ndash hakovanje razbi janje i neočekivano korišćenjebull DPI (eng deep packet inspection)bull Mreža i mrežna neutralnost ndash vlasništvo cenzura nadmudrivanje i pol itika bdquodefaktordquo standarda

bull Programiranje i programski jezici

Nemojte se ustručavati i slobodno nam se javite ako imate rad na gore navedenei l i sl ične teme koj i smatrate interesantnim

Stranica za predaju radova nalazi se na https events lugonsorgp=1658

Page 15: LiBRE 33 Lat

15

Broj 33

Particiona šemaEFI tehnologi ja ima drugači ju šemu partici ja Dok je stari pristup podržavao samoMBR (Master Boot Record) šemu nova tehnologi ja podržava GPT šemu kojaomogućava veći broj primarnih partici ja Sa starim pristupom taj broj bio jeograničen na četiri primarne partici je od koj ih je svaka morala da ima kapacitetmanj i od 2TB

AplikacijeUEFI podržava izradu apl ikaci ja koje bi se pokretale nezavisno od operativnogsistema Ove apl ikaci je se mogu naknadno instal irati Primer takvih apl ikaci ja supokretači (loader) operativnih sistema kao i upravnici butovanja

EFI sistemska particijaEFI podržava posebnu partici ju za smeštanje raznih potrebnih informaci ja kao štosu potrebni podaci za rukovanje računarom i specifične apl ikaci je Ova partici ja jenajčešće FAT32 sistem datoteka

rEFInd

16

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

But menadžer i but louder - ima razlikeOd popularizaci je GRUB upravnika mnogi korisnici su ostal i bez objašnjenja kakvaje razl ika između but loudera (boot loader) i but menadžera (boot manager) Ovose dešava jer GRUB pruža obe usluge u sklopu jednog programa pa se time teževidi razl ika između ova dva pojma But menadžer je upravnik pomoću kojeg jemoguće izabrati operativni sistem za pokretanje On ne zna ništa speci ja lno ooperativnom sistemu pa time ne zna ni kako da ga pokrene On samo zna datreba da pokrene but louder za taj sistem Kada je sistem izabran pokreće sespecifičan but louder za taj sistem koj i je zadužen za dal j i proces pokretanjakernela Za razl iku od GRUB upravnika rEFInd pruža samo usluge but menadžerašto u početku može zvučati poražavajuće za ovaj projekat Kada uzmemo u obzirda većina sistema danas ima but louder u sklopu kernela (ukl jučujući i Linuks odnovi j ih izdanja) ovaj problem je prevaziđen

Predstavljamo

17

Broj 33

InstalacijarEFInd postoj i kao deb i kao rpm paket al i postoj i i zapakovan kao zip arhivaZahval ju jući tome paket je moguće instal irati upotrebom dpkg komande nadistribuci jama baziranim na Debi janu kao i upotrebom rpm komande nadistribuci jama koje koriste taj način pakovanja paketa Za Ubuntu postoj i i PPArepozitori jum pa rEFInd može biti instal iran na sledeći način

sudo apt-add-repository pparodsmithrefindsudo apt-get updatesudo apt-get install refind

Nezavisno od toga koj i način od gore opisanih koristite rEFInd će automatski bitiprebačen na ESP i biti postavl jen kao podrazumevani upravnik

KonfiguracijarEFInd bi trebalo da vam pruži zadovol javajuću funkcionalnost bez dodatnekonfiguraci je posle instalacionog procesa On će automatski detektovati loudereoperativnih sistema korišćenjem pretrage po svim partici jama koje prepozna Uslučaju da ste napredni j i korisnik i da žel ite da modifikujete ponašanje rEFInda tomožete uraditi izmenom njegove konfiguracione datoteke Postoj i g lobalnakonfiguraci ja i konfiguraci ja za svaki sistem posebno Ovaj tekst bi postao previšedugačak kada bismo ulazi l i u detal je same konfiguraci je pa vam zatopreporučujemo ako imate potrebu za dodatnom konfiguraci jom da posetitedokumentaci ju projekta i l i ako imate neke nedoumice da kontaktirate s namapreko naše e-pošte

Za krajŽelel i bismo da ovaj tekst zakl jučimo ocenom da je ovaj projekat dosta zaniml j ivda pruža zadovol javajuću funkcionalnost i da omogućava korisnicima koj i koristeovaj sistem pokretanja lako pokretanje svoj ih operativnih sistema Još jednomžel imo da vam skrenemo pažnju da nam se obratite i ukažete ako smo nešto važnopropusti l i da pomenemo i l i ako nam se negde potkrala greška

Korisni l ink http wwwrodsbookscomrefind

rEFInd

18

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Autor Nikola Hardi

Opšte je poznato da su računari dobri u radu sa brojevima Međutim vremenom suse i potrebe korisnika i alati za programiranje računara razvi ja l i i rad sa drugači j imtipovima podataka je postao uobičajen i znatno jednostavni j i nego rani je Svi smoimal i pri l iku da radimo sa programima za obradu fotografi ja video materi ja la i l izvučnih zapisa Multimedi ja je ipak tema koja prevazi lazi jedan uvodni kurs o C-ual i do kraja ovog seri ja la ćemo se dotaći i tih tema Za početak osvrnućemo se narad sa tekstualnim podacima na C način

Stringovi na C načinDefinici ja tekstualnog podatka u sferi računarstva se uglavnom svodi na to da jetekst niz karaktera a karakteri su znakovni simbol i Iako imamo mogućnost daradimo sa tekstom i l i multimedi jom računari ipak razumeju samo brojeve pamoramo tako da im predstavimo i tekst Postoje razni standardi kako se pojedinikarakteri predstavl ja ju u memori j i računara između ostalog najpoznati j i su ASCIIEBCDIC UTF i td EBCDIC je standard koj i je prisutan u Eplovom (eng Apple) svetu iviše nema tol iko važnu ulogu ASCII je standard koj i je vrlo prisutan i danas UTF jenastao kao proširenje ASCII standarda javl ja se u više vari janti i uvodi podršku zapisma razl ičita od abecede (kinesko japansko ćiri l ica arapsko i mnoga druga)

Važno je napomenuti da je originalni ASCII standard propisivao 7 bitova za jedankarakter što je dalo prostora za 128 karaktera Među tim karakterima se nalazecifre mala i vel ika slova engleskog alfabeta i niz kontrolnih karaktera Kontrolnikarakteri su oznake za novi red prazno mesto tabulator upravl janje štampačima(vraćanje glave štampača na početak) rad sa terminal ima (alarm i l i obaveštenje

Kako da

Uvod u programski jezik CRad sa stringovima (9 deo)

19

Broj 33

da se nešto dogodi lo) ASCII standard je proširen na 8 bitova odnosno ceo jedanbajt i sada podržava 256 karaktera Potražite na internetu termin bdquoASCII tabelardquo dabiste stekl i uvid u to kako izgleda tzv tabela ASCII karaktera

Rad sa pojedinačnim znakovima ne obećava mnogo Postoj i realna potreba zaradom sa rečima rečenicama l ini jama teksta itd Podaci koj i se sastoje od više odjednog karaktera se u domaćoj l i teraturi nazivaju znakovnim niskama madaodomaćen je i naziv bdquostringrdquo koj i je i mnogo češće u upotrebi U programskomjeziku C se stringovi predstavl ja ju običnim nizovima karaktera (char niz[]) a krajteksta se označava NULL karakterom odnosno speci ja lnim znakom 0 či jabrojevna predstava je pogađate nula Ovakva predstava tekstualnih podatakanosi sa sobom i pojedine kompl ikaci je Gotovo svi savremeni jezici poznaju tipstringa dok su u C-u stringovi ipak samo obični nizovi

Da se podsetimo nizovi u C-u su zapravo pokazivači na deo u memori j i Kadapokušamo da pristupimo jednom elementu niza tada se vrši operaci jabdquodereferenciranjardquo sa zadatim odstupanjem Sledi nekol iko primera koj i i lustrujurad sa nizovima na primeru nizova karaktera

char niz1[] = zdravoniz1[0] = Z

char niz2[5]niz2[0] = 0niz2[1] = kniz2[2] = 0

Pri deklaraci j i niza 1 ni je zadata dužina zato što je u jednom izrazu zadata iinici ja l izaci ja niza koja glasi ldquozdravordquo Prevodi lac može sam da zakl juči kol ikomemori je je potrebno

U drugom primeru je kreiran niz karaktera dužine 5 Međutim popunjena su samoprva tri mesta Primećujete razl iku između prvog i trećeg elementa Prvi je cifra 0(uokviren je navodnicima) a treći je brojčana vrednost 0 koja označava krajstringa

Može se primetiti još jedna razl ika u data dva primera U prvom primeru sukorišćeni dvostruki navodnici dok su u drugom korišćeni jednostruki Razlog za to

Uvod u programski jezik C

20

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

je što se znakovni nizovi koj i su uokvireni dvostrukim navodnicima smatrajustringovima i podrazumevano im se dodaje bdquoterminatorrdquo odnosno znak NULL koj ioznačava kraj stringa Jednostruki navodnici se iskl jučivo koriste za predstavl janjepojedinačnih karaktera Ovo znači da zapisi ldquoardquo i a nisu jednaki Prvi zapis jedužine 2 jer ima i znak NULL koj im je završen

Ispisivanje i učitavanje stringovaPre nego što nastavimo dal je biće objašnjen jednostavan način za ispisivanje iučitavanje stringova pomoću standardnog ulazaizlaza Da se podsetimobibl ioteka za standardni ulazizlaz (ispis podataka u konzol i odnosno terminalu) jestdioh Ukol iko se koristi formatirani ispis potrebno je funkci jama printf() iscanf() proslediti format string koj i sadrži speci ja lan znak s čime je označenoda žel imo da ispišemo znakovni niz sve do NULL karaktera Drugi način jeupotrebom funkci ja puts() gets() i getline() iz bibl ioteke stringh Sledi primer

include ltstdiohgt include ltstringhgt int main()

char niz1[] = Zdravo svete

printf(sn niz1)

scanf(s niz1)puts(niz1)

return 0

Može se primetiti da je u slučaju funkci je printf() potrebno naglasiti speci ja lnimkontrolnim karakterom n da nakon ispisa treba preći u novi red Funkci ja puts() topodrazumevano radi

Za ove i sve druge funkci je dodatnu pomoć je moguće pronaći u Linuksovim manstranicama u odel jku 3 koj i je posvećen standardnim bibl iotekama Recimo mangetline sadrži detal jno uputstvo o funkci j i getline()

Kako da

21

Broj 33

Kopiranje stringovaKao što je u prethodnom odel jku napomenuto stringovi su u C-u samo običninizovi To znači da sledeći kod verovatno neće uraditi ono šta bi bi lo očekivano

niz1 = niz2

Ovime smo pokazivaču niz1 bdquorekl irdquo da pokazuje tamo gde i pokazivač niz2 Efektivno oni sad pokazuju na isti tekst međutim ako izmenimo niz1 to će seodraziti i na niz2 a važi i obrnuto Ovime smo dobi l i samo dva pokazivača na istideo memori je a uglavnom to ni je bio ci l j

Drugi način kako bismo sadržaj drugog niza mogl i da kopiramo u prvi niz je petl jakojom bismo kopiral i element po element Pošto je operaci ja kopiranja stringovavrlo često potrebna postoj i standardna bibl ioteka za rad sa stringovima koja sezove stringh a funkci ja za kopiranje stringova je strcpy()

strcpy(niz1 niz2)

Dati primer kopira sadržaj niza 2 u niz 1 Kopira se element po element sve dok seu nizu 2 ne naiđe na NULL karakter Ovakvo kopiranje (element po element) seinače u stranoj l i teraturi naziva i bdquodeep copyrdquo i vrlo često se sreće u radu sastrukturama podataka gde je potrebno obići celu strukturu podataka i svakielement kopirati a strukturu opet izgraditi u drugom delu memori je

Zaniml j ivo je što je kopiranje stringova moguće pojednostaviti ukol iko definišemonovi tip podatka kao strukturu koja sadrži niz karaktera i potom izvršimo kopiranjeOvo je trik koj i se uglavnom ne koristi u praksi i spomenut je samo kaozaniml j ivost

include ltstringhgt struct str char niz[50]

int main()

struct str s1struct str s2

Uvod u programski jezik C

22

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

strcpy(s1niz zdravo)s2 = s1

s2niz[0] = Z

puts(s1niz)puts(s2niz)

return 0

Kreirana je struktura str koja sadrži pol je niza karaktera pod nazivom niz Pozivomfunkci je strcpy() kopiramo string ldquozdravordquo u s1 čime smo bdquonapuni l irdquo sadržajobjekta s1 Potom je izvršena redovna dodela čime je sadržaj objekta s1 kopiran us2 Zatim je izmenjen samo prvi karakter objekta s2 i oba stringa su ispisanaPrimećujete da su kopirani svi znakovi a da je izmenjen samo drugi objekatZaniml j iv trik

Poređenje spajanje i pretraga stringovaDruga vrlo česta situaci ja je poređenje dva stringa Ukol iko bi poređenje bi loizvršeno upotrebom redovnog operatora za poređenje == tada bi u stvari bi lepoređene samo adrese na koje pokazuju pokazivači tih stringova jer da sepodsetimo stringovi su u C-u samo obični nizovi Ispravan način za poređenje dvastringa je pozivanjem funkci je strcmp() či ja je povratna vrednost 0 ukol iko su jojprosleđeni stringovi sa jednakim sadržajem

include ltstringhgt int main()

char niz1[] = zdravochar niz2[] = zdravo

if( strcmp(niz1 niz2) == 0)puts(Stringovi su jednaki)

elseputs(Stringovi nisu jednaki)

return 0

Kako da

23

Broj 33

Funkci ja strcmp() poredi svaki element prosleđenih nizova pojedinačno a dobraje vežba implementiranje nove funkci je strcmp() koja će unutar petl je da porediodgovarajuće elemente prosleđenih nizova i potom vratiti rezultat 0 ukol iko su svielementi jednaki Potrebno je pripaziti na situaci ju kada su stringovi razl ičitihdužina

U svetu računara spajanje dva sadržaja se zove konkatenaci ja Odatle i nazivfunkci je za spajanje dva stringa strcat() Važno je uveriti se da je string u koj i sedodaje sadržaj dovol jno vel ik da ga prihvati inače može da dođe do nežel jenogprepisivanja u memori j i uništavanja drugih podataka i neispravnog ponašanjaprograma

Pretraga unutar stringa se može obaviti funkci jom strstr() Ova funkci ja kaoparametre očekuje pokazivač na niz karaktera (string) u kojem je potrebno pronaćistring koj i je prosleđen kao drugi parametar Povratna vrednost je pokazivač nadeo memori je gde se žel jeni string prvi put pojavio

Sledi malo opširni j i primer koj i i lustruje spajanje pretragu i kopiranje stringova

include ltstringhgt int main()

char niz_a[50] = LiBRE je char niz_b[] = najbolji casopischar niz_c[] = e-magazin

strcat(niz_a niz_b)puts(niz_a)

char cilj = strstr(niz_a casopis)strcpy(cilj niz_c)

puts(niz_a)

return 0

Uvod u programski jezik C

24

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Pretvaranje tipova podataka u stringove ipretvaranje iz stringovaPretvaranje podataka iz jednog tipa u drugi i l i kastovanje (eng type casting) se zavećinu tipova vrši jednostavno pisanjem tipa u zagradama na primer (int)523 Stringovi su i po ovom pitanju drugači j i Postavl ja se pitanje šta pretvoriti ucelobrojni tip - da l i adresu na koju pokazuje pokazivač niza koj i predstavl ja stringPrvi element Šta ako taj string ni je broj Predstavićemo rešenje za konverzi jubrojeva u stringove i obrnuto

Ispis podataka na ekranu se takođe može smatrati konverzi jom Broj sa pokretnimzarezom je u memori j i prikazan na pomalo čudan način a pozivom funkci jeprintf() kada je kao format zadat f na ekranu ćemo dobiti razuml j iv niz znakovaSl ičan rezultat možemo dobiti funkci jom sprintf() a jedina razl ika u odnosu naprintf() je ta što sprintf() kao prvi argument očekuje pokazivač na string dok sudrugi (format string) i treći (argumenti koj i se povezuju sa formatnim stringom)sl ični kao kod funkci je printf()

Kod pretvaranja stringova u brojevne tipove može poslužiti funkci ja sscanf() kojase ponaša sl ično kao funkci ja scanf() s tim što je prvi argument adresa(pokazivač na string) koju žel imo da skeniramo u nadi da će se poklopiti saformalnim stringom koj i je drugi argument a rezultati će biti sačuvani u adresamakoje su prosleđene kao 3 4 i ostal i parametri Drugi način za pretvaranje stringovau celobrojne brojeve i brojeve sa pokretnim zarezom su funkci je atoi() i atof()

Funkci je koje koriste formatni string su česte u jeziku C i zaslužuju posebnu pažnjumeđutim to je priča za poseban članak U ovu klasu funkci ja spadaju recimo ifunkci je za rad sa datotekama

BezbednostRad sa stringovima može da bude izuzetno opasna stvar po pitanju bezbednostiprograma Ukol iko se niz karaktera ne završava NULL karakterom svašta može dapođe po zlu pri pozivu funkci ja kao što su strcpy() strcmp() i sl ične Cela klasatih funkci ja se oslanja na postojanje znaka koj i označava kraj stringa Kada stringni je propisno završen tada te funkci je mogu da zalutaju u deo memori je vanstringa i svašta može da pođe po zlu Ovakav tip napada se inače zoveprekoračenje bafera (eng buffer overflow) Preporučen način kako da izbegnete

Kako da

25

Broj 33

Pregled popularnosti GNULinuxBSDdistribuci ja za mesec februar

Distrowatch

Pad ltPorast gtIsti rejting =(Korišćeni podaci sa Distrovoča)

12345678910111213141516171819202122232425

MintUbuntuDebianopenSUSEelementaryMageiaFedoraManjaroCentOSLXLEArchBodhiAndroid x86Kal iPCLinuxOSPuppyRobol inuxLubuntuQ4OSBlack LabNetrunnerSimpl icityEvolveZorin4MLinux

2919gt1778gt1701gt1323gt1204gt1174gt1166gt1028lt1020gt965gt957gt907gt900lt760gt742lt732gt695gt670gt663gt655gt652gt629gt607gt583gt517=

takve nepri jatne situaci je pri radu sastringovima je da koristite verzi jefunkci ja koje su ograničenemaksimalnom dužinom stringa kaošto su strncpy() strncat() strncmp() i td Sve te funkci je kaotreći parametar zahtevaju broj koj iodređuje maksimalnu očekivanudužinu stringa Još jedna vrlo korisnafunkci ja je strlen() či j i zadatak je daodredi dužinu stringa Budite pažl j ivi ovo je prvo mesto gde se tražebezbednosni propusti u programimaNe verujte podacima koj i spol ja ulazeu vaš program a pogotovo kada je rečo stringovima

Uvod u programski jezik C

26

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Autor Dejan Maglov

Projekti slobodnog softvera obično počinju kao projekti pojedinca i l i male grupeprogramera a koj i rade na razvoju softvera či j i je ci l j da zadovol j i neke od nj ihovihl ičnih potreba Projekat će se smatrati uspešnim ukol iko se šira zajednicazainteresuje za njega nakon što prepozna korisnost softvera ne samo za pojedincekoj i su započel i projekat već i za širu zajednicu Kada je u pitanju slobodni softvervremenom je postala stalna praksa da se zajednica umeša u razvoj projekataDobri projekti sami privlače zajednicu l judi koj i su zainteresovani za nj ih i ona uvećini slučajeva preuzima na sebe testiranje pobol jšanje funkcionalnosti održavanje i tehničku podršku projekta

Zajednice slobodnog softvera mogu da se okupe oko projekta slobodnog softverapo teritori ja lnom principu i l i da nastanu kombinaci jom ovih principa

Primeri

bull LiBRE projekat okupl ja zajednicu oko projekta bez teritori ja lnog ograničenjabull LUGoNS (Linux User Group of Novi Sad) je zajednica korisnika Linuksa poteritori ja lnom principu bez obzira na konkretan projekat

bull Ubuntu-rs zajednica koja je kombinaci ja okupl janja zajednice oko konkretnogprojekta (Ubuntu) i teritori ja lnog principa koj i se ograničava na teritori ju Srbi je

Ova sinergi ja projekata i korisnika slobodnog softvera ima više prednosti i zakorisnike i za projekat Projekat se na ovaj način brže razvi ja dobi ja na

U potrazi za idealnom distribucijom

Socijalni kriterijumi za izbor idealnedistribucije (6 deo)

Oslobađanje

27

Broj 33

funkcionalnosti greške se brzo ispravl ja ju i td Korisnici dobi ja ju osećaj dapripadaju grupi druže se sa istomišl jenicima učestvuju u promoci j i kval itetnihpojedinaca itd

Dve najvažni je uloge lokalnih zajednica za GNULinuks distribuci je su

1 pružanje tehničke podrške i edukaci je na maternjem jeziku2 rad na lokal izaci j i i pri lagođavanje distribuci je lokalnim potrebama

Informaci ja da postoje lokalne zajednice slobodnog softvera je od naročitogznačaja za početnike i korisnike koj i nedovol jno dobro znaju strane jezike(naročito engleski jezik) Ako izuzmemo komerci ja lne projekte otvorenog koda(Red Het SUSE) ne postoje zvanične škole i kursevi za slobodni softver Zaedukaci ju početnika je uglavnom zadužena zajednica a jasno je da je učenje namaternjem jeziku uvek lakše nego na bi lo kom drugom stranom ma kol ikodobro ga poznajete

Forumi i viki stranice lokalnih zajednica su prave bibl ioteke u koj ima korisnicimogu da nađu većinu odgovora na svoja pitanja a za sva ostala tu su forumi iIRC kanal i zajednica na koj ima uvek ima nekoga i koj i imaju već gotova rešenjaza vel iki broj problema

U potrazi za idealnom distribucijom

28

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Lokalne zajednice kao kriterijum za izbor idealnedistribucijePočetnicima i korisnicima koj i ne vladaju dobro engleskim jezikom toplopreporučujemo da biraju GNULinuks distribuci je koje imaju aktivnu lokalnuzajednicu Ovladavanje novim operativnim sistemom je mnogo lakše ukol iko vambdquoleđa čuvardquo lokalna zajednica na koju se uvek možete osloniti

Već smo spomenul i da su popularni je GNULinuks distribuci je namenjenepočetnicima Slučaj je isti i sa lokalnim zajednicama okupl jenim oko nj ih Ovomeđutim ne znači da je kval itet usluga koje nude manje popularne lokalnezajednice okupl jene oko distribuci ja namenjenih napredni j im korisnicima loši j i Manje popularne distribuci je okupl ja ju manje l judi a l i zato oni poseduju većeznanje Iskustvo sa zajednicama okupl jenim oko slobodnog softvera je uglavnompozitivno i ukazuje na to da kval itet usluga koje one nude korisniku ni je uslovl jenpopularnošću i masovnošću zajednice nego iskl jučivo njenom (ne)aktivnošću

U svakom slučaju dosadašnj i saveti za izbor idealne distribuci je važe i dal jeSoci ja lni aspekt slobodnog softvera je samo dodatni faktor koj i vam može pomoćipri donošenju odluke kada se dvoumite između nekol iko mogućih rešenja

Još uvek ne postoj i na jednom mestu potpuni i ažurirani spisak svih aktivnihsrpskih zajednica Nešto najbl iže tome može da se nađe na adresihttps pulsslobodewordpresscom Za informaci je o nekim drugim lokalnimzajednicama koje možda postoje al i nisu na ovom spisku moraćete sami dapretražite internet

Lokalizacija kao kriterijum za izborZa lokal izaci ju GNULinuks distribuci ja i GNU programa odgovorni su pojedinci ilokalne zajednice Sasvim sol idnu srpsku lokal izaci ju mogu imati i projekti koj iuopšte nemaju svoju lokalnu zajednicu a isto tako lošu lokal izaci ju mogu imati iprojekti sa dobrom lokalnom zajednicom Sve je stvar prioriteta zajednica iaktivnosti pojedinaca

Pravu i kontrol isanu lokal izaci ju može imati samo lokalni projekat Ovakvihprojekata u Srbi j i ima malo i teško se probi ja ju čak i u lokalu u konkurenci j isvetskih projekata Istina je da mnoge veće GNULinuks distribuci je imaju srpskulokal izaci

Oslobađanje

29

Broj 33

ju u ponudi pa se možda sl ični lokalni projekti koj i su usmereni samo na striktnulokal izaci ju smatraju nepotrebnima Uzvodna lokal izaci ja u slučaju Srbi je vrlo čestobude veoma loše čak nakaradno sprovedena Jedna polovina programa jelokal izovana srpskom ćiri l icom a druga latinicom Ako postoj i još delova sistemakoj i uopšte ni je lokal izovan onda se pojavl ju ju i delovi programa koj i su naengleskom Zato ćemo se vratiti na prvu rečenicu ovog pasusa i ponovo utvrditi dasamo lokalni projekat može potpuno kontrol isati pravu srpsku lokal izaci ju

U Srbi j i za sada imamo dva aktivna projekta GNULinuks distribuci je ndash TriOS(http triosrs) i Serbian (http wwwdebian-srbi ja iz rspserbianhtml) Obaprojekta su mlada i imaju svoj ih prednosti i mana Kome treba lokal izovanoperativni sistem može da proba jedan od ova dva projekta

U potrazi za idealnom distribucijom

30

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Iako ove dve domaće distribuci je nisu baš naj idealni je interesantno je probati ih iuporediti sa drugim distribuci jama

Za kraj serijalaNamera nam je bi la da kroz ovaj seri ja l o kriteri jumima pri izboru idealnedistribuci je definišemo većinu kriteri juma pri izboru i pokažemo zašto je teškoodgovoriti na jednostavno pitanje bdquoKoju mi distribuci ju preporučujeterdquo

Ni na samom kraju nismo dal i konkretan odgovor na pitanje koja je idealnaGNULinuks distribuci ja Suviše je subjektivnih ocena da bi se mogao datikonkretan odgovor Smatramo da je jako teško napisati neki algoritam izbora pokriteri jumima koje smo identifikoval i i definisal i a možda je čak i nemoguće poštose izlazi stalno menjaju Izlazi iz tog algoritma su GNULinuks distribuci je koj ih izdana u dan ima sve više a i one stare se stalno menjaju

Sam seri ja l bdquoU potrazi za idealnom distribuci jomrdquo neće biti završen samo zato štose više neće baviti kriteri jumima pri izboru nego će pokušati da predstavl jaGNULinuks distribuci je koje su po nečemu bdquoidealnerdquo

Oslobađanje

31

Broj 33

ORM

Autor Dejan Čugal j

Object relation mapping (ORM)

ORM (eng Object RelationMapping) je način postizanja traj-nosti (eng persistence) objekataunutar relacionih baza podatakaModel deluje kao posrednik nalogičkom delu apl ikaci je Automat-ski presl ikava podatke iz objekata ubazu i nazad na zahtev apl ikaci jeDa bismo objasni l i kako ovo sveradi moramo da vam predstavimoORM frejmvork (eng framework)programa otvorenog koda -Hajbernejt (eng Hibernate -http hibernateorgorm)

Šta je ORMUkratko ORM je automatizovano transparentno presl ikavanje objekatakorišćenjem metapodataka koj i opisuju mapiranje veze između objekta i baze

ORM (2 deo)

Slobodni profesionalac

32

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

podataka u apl ikaci jama koje su napisane u objektno ori jentisanim programskimjezicima Apl ikaci ja komunicira sa ORM-om preko njegovog vlastitog API-ja (engapplication programming interface) i određenih objekata Ova komunikaci ja jepotpuno odvojena od komunikaci je koja se odvi ja između ORM-a i baze podatakapreko SQL-a i DBC-a

Da bi se postigla i dostigla potpuna snaga ORM-a u apl ikaci j i koju projektujemonikako se ne sme iskl jučiti znanje relacionih modela SQL jezika te poznavanjeDBMS-a u kome se radi ORM ni je ništa drugo do srednj i sloj između gorepomenutih tehnologi ja i objektno ori jentisanog programiranja kao što smo to dosada već više puta naglasi l i

Implementacija ORM-aPostoje razl ičiti načini implementaci je ORM-a Mark Fasl (Mark Fussel) je 1997definisao četiri nivoa

1 bdquoČistrdquo relacioni način2 Slabo mapiranje objekata3 Umereno mapiranje objekata4 Potpuno mapiranje objekata

bdquoČistrdquo relacioni način

Cela apl ikaci ja ukl jučujući i korisnički interfejs dizajnirana je relacionim modelom iSQL relacionim operatorima Ovakav pristup je odl ičan za male projekte Direktanpristup SQL-u omogućava fino podešavanje svakog aspekta upita koj i se postavl jabazi podataka Osnovne mane su portabi lnost (prenosivost) i održavanje ovakvihsistema pogotovo ako se planira korišćenje apl ikaci je na duži rok Ovakvi sistemimasovno koriste sačuvane procedure (eng stored procedures) što znači da jeposlovna logika (eng busines logic) prebačena na samu bazu podataka

Slabo mapiranje objekata

Entiteti su predstavl jeni kao klase i mapiranje se radi ekspl icitno ka relacionimtabelama SQLJDBC je sakriven od poslovne logike korišćenjem poznatih šablona(patterns)

Umereno mapiranje objekata

Slobodni profesionalac

33

Broj 33

Dizajn apl ikaci ja se svodi na objektne modele SQL se generiše u vremekompaj l iranja (eng build-time) i l i u vreme izvršavanja (eng run-time) Specifikaci jaupita nad bazama podataka se radi na objektno ori jentisanom jeziku Ovakvisistemi se koriste u apl ikaci jama srednj ih vel ičina kod koj ih je bitna portabi lnostizmeđu razl ičitih sistema za upravl janje bazama podataka (DBMS)

Potpuno mapiranje objekata

Podržava sofisticirano objektno model iranje nasleđivanje i pol imorfizamEfikasnost dobi janja podataka je na visokom nivou i koriste se metode kao što sulenjo učitavanje (eng lazy loading) i strategi ja keširanja (eng caching) Implementaci ja je transparentna u apl ikaci jama Ovaj nivo je jako teško dostići Pojedincu su potrebne godine razvoja da postigne ovakvu fleksibi lnost pristupa imanipulaci ja u relacionim bazama podataka Upravo ovaj nivo se postiže ako sekoriste rešenja ORM-a kao što je Hajbernejt

Zašto ORMImplementaci ja ORM rešenja pogotovo ako seprvi put susrećete sa ovim modelom može dabude veoma frustrirajuća i malo teža zaimplementaci ju Kada ovo kažemo misl imo daprogramer koj i implementira ORM i hoće da istibude kval itetno urađen mora da posedujepredznanje objektno ori jentisanog programiranjai naprednih tehnika kao što su nasleđivanje ipol imorfizam

Ovo inicira fundamentalna pitanja

bull Pa zašto bi iko onda implementirao ovako nešto kompleksnobull Vredi l i truda upuštati se uopšte u ORM

Odgovor ni je jednostavan Dosadašnja iskustva u korišćenju ORM-a i njegovapopularnost već daju odgovor na postavl jeno pitanje Očigledno je da su benefitikoje donosi ovaj model veći od kompleksnosti njegove implementaci je a to su

Hibernate ORM

34

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Veća produktivnost

ORM smanjuje kol ičinu koda potrebnog za ostvarivanje trajnosti podataka Ovoomogućava programeru da vreme koje bi utrošio na ručno mapiranje podatakautroši na druge delove apl ikaci je

Lakše održavanje

Manje l ini ja koda osigurava bol ju razuml j ivost (i možda bol j i kval itet koda) jernaglašava apl ikaci jsku logiku ORM takođe ublažava uticaj nastal ih promena kaošto su promene u bazi strukturi tabela i td

Prenosivost

Većina ORM rešenja podržava sisteme za upravl janje bazama podataka raznihproizvođača ORM u potpunosti odvaja sloj apl ikaci je od stvarne SQL komunikaci jekoja se odvi ja u pozadini Time omogućava da se pišu apl ikaci je koje će moći da seizvršavaju na razl ičitim bazama podataka bez potrebe za dodatnim kodiranjemOva komunikaci ja se odvi ja sa programskim interfejsima ORM-a nezavisno oDBMS-u sa koj im je u bi lo kom momentu povezan ORM takođe omogućava lakšiprelaz sa manj ih na veće baze podataka tokom razvoja apl ikaci je

Uvidel i smo da trenutno postoje dve paradigme koje se bdquosudarajurdquo i koje supodjednako dobre same za sebe Relaciona paradigma potvrđuje da sve što jeizgrađeno na matematičkim osnovama je i trajno u smislu kval iteta koje posedujeU domenu u kom relaciona paradigma egzistira ona je ako je to u ovo vremeuopšte moguće tvrditi nezamenj iva

Ono što otvara pitanja i daje razlog za sumnju je koja je krajnja granicaupotrebl j ivosti relacione paradigme tj kol iki su kapaciteti složenosti zahtevaapl ikaci ja sa kojom može da se nosi Praksa je pokazala da je sasvim mogućebdquoizvestirdquo složene projekte - al i održavanje skalabi lnost razuml j ivost prenosivost -pitanja su sa koj im se relaciona paradigma teško može izboriti

Sa druge strane svoj habitat u informacionim tehnologi jama je našla i objektna

Slobodni profesionalac

35

Broj 33

paradigma Iako na prvi pogled ova dva modela nemaju ništa zajedničko - što je uneku ruku i istinito gledajući prirodu podataka koj im manipul išu - praksa jepokazala da su usko povezane i skoro da imaju sinaptičku vezu

Pitanje bdquokako spoj iti te sinapserdquo dovelo je do žučnih rasprava u uskim naučnimprogramersko-administratorskim krugovima Rodi l i su se razni model i a l i jedan jeiskočio i polako ulazi u široku primenu - a to je ORM Svoj im supti lnim pristupomproblemu nekompatibi lnih paradigmi nekako je uspeo da stvori taj nedostajućibdquoelektrični signalrdquo koj i ih je povezao Ovo je omogući lo da dve strane koje susvaka za sebe u svom domenu ostavi le i ostavl ja ju duboki trag u informacionimtehnologi jama sarađuju i donesu novi kval itet

Korisni l inkovi

[1] Hibernejt http hibernateorg[2] Viki http googlLlZulw[3] Tutori ja l i http googlCGzvnc

Hibernate ORM

36

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Autor Kriptopank

Šta su zapravo metapodaci Najkraće rečeno to su podaci o podacima i l iinformaci je koje opisuju podatke

Najpre da napravimo razl iku između podataka i metapodataka Podaci sunaprimer snimak (i l i transkript) vaših telefonskih razgovora sadržaj poruka kojepišete primate i l i šal jete podaci koje kačite na internet i l i preuzimate pretrageGuglom postovi na forumima dopisivanja na IRC kanal ima i l i drugim četovimaaudio i video snimci Skajp razgovora i tako dal je

Hajde da vidimo šta bi bi l i odgovarajući metapodaci za ove primere

bull Za telefonske razgovore metapodaci mogu biti lokaci ja učesnika brojevitelefona trajanje razgovora IP i MAC adresa

bull Za poruke četove i Skajp i l i druge video-audio komunikaci je sl ično je kao kodtelefonskih razgovora

To su samo metapodaci

Internet mreže i komunikacije

37

Broj 33

bull Kod foruma i pretraga Guglom ima malo manje metapodataka al i Gugl i raznisajtovi i forumi ionako čuvaju logove o korisnicima što su takođe metapodaci

Ako do sada koj im slučajem niste uvidel i opasnost po privatnost u ovimmetapodacima koje svako od nas smrtnika svakodnevno ostavl ja za sobom usvetu interneta i ostal ih digitalnih komunikaci ja nadamo se da će vas ovaj primermakar podstaći na razmišl janje a možda i na nešto više

Zamisl i te da neko (zvaćemo ga posmatrač) stalno sakupl ja metapodatke koje zasobom ostavl jate kao mrvice hleba Posmatrač recimo zna da se nalazite naautoputu nedaleko od famoznog Feketića da se ne krećete da zovete AMSS zatimšlep službu i možda taksi a l i ne zna šta ste razgovaral i I l i posmatrač vidi da steprvo zval i aerodrom Nikola Tesla pa odmah potom taksi a l i ne zna šta sterazgovaral i I l i posmatrač vidi da ste zval i prvo šest brojeva či je identitete takođezna pa vidi da se oni zatim kreću ka vama - GPS (eng Global Positioning System) pa zatim pica servis Mekdonalds i neku poznatu prodavnicu kineske hrane al i nezna šta ste razgovaral i

Posmatrač ne mora da bude mnogo pametan niti da prisluškuje vaše razgovore dabi shvatio šta se dešava i l i šta će se desiti Sasvim mu je jasno da vam je u prvomprimeru auto stao na autoputu zatim da ste se u drugom slučaju uputi l i naaerodrom i da možda putujete van zemlje i l i ste poslal i taksi po nekoga saaerodroma a da u trećem slučaju okupl jate žurku kod vas Više možete pogledatina http googl7vUjP

Iako su to bdquosamordquo metapodaci treba biti svestan da ti metapodaci o vama stvarajujednu digitalnu sl iku i l i bol je reći digitalni mozaik i na neki način vas jedinstvenoodređuju Pogotovo kada se planski prikupl ja ju na više nivoa (kompjuter pametnitelefon pametni automobi l i kreditna kartica) metapodaci čine vaš digitalniidentitet Al i da stvar bude još gora ta sl ika o vama ne mora nužno biti istinita jerse lako može lažirati Recimo možete zameniti telefone i l i automobi le sa nekimnamerno i l i slučajno i l i vam neko može jednostavno ukrasti telefon laptop i l ikreditnu karticu Zaniml j iv video http googlKO1fKf

Evo jednog primera koj i vas može uvući u vel ike nevol je Recimo da prolazitenekom zabačenom ul icom i da vam neprimetno ispadne telefon al i vi to neprimetite i nastavite dal je svoj im putem U toj ul ici se samo nekol iko minutakasni je desi neko ubistvo i vas pozovu u pol ici ju kao osumnj ičenog Ako koj im

To su samo metapodaci

38

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

slučajem nemate dobar al ibi i l i nemate svedoka da posvedoči da niste bi l i u tojul ici nego tamo gde ste stvarno bi l i a drugih svedoka nema - možete jako lošeproći Zaniml j ivi video http googlspS5OZ

Metapodaci se takođe nalaze i u faj lovimapodacima koje svakodnevnopreuzimamo sa interneta pravimo i koristimo Svaki tip podatka može da sadržiodređene metapodatke koj i bol je opisuju sam podatak kao naprimer vremenastanka podatka kol iko je vremena potrošeno za njegovo kreiranje kol iko putamu je pristupl jeno kad je poslednj i put pristupl jeno i tako dal je Iako se ovakvimetapodaci možda još uvek čine bezazlenim oni mogu sadržati i IP adresuračunara sa kog su napravl jeni GPS koordinate (najčešće PNG format sl ika satelefona) ko ga je napravio (l ičnost i l i kompani jaorganizaci ja) naziv uređaja imodel sa koga je napravl jen kao i MAC adresu uređaja mej l adresu kreatorasoftver koj im je napravl jen i tako dal je Sve ovo može mnogo da naškodiprivatnosti izvornog kreatora faj la pogotovo ako je sadržaj poverl j iv Ukol iko nekopresretne taj podatak na internetu može saznati od koga je potekao Da ovo možebiti katastrofa po kreatora takvog faj la može i lustrovati primer torenta Ako stedošl i u posed nekih sl ika i l i video materi ja la i l i teksta koj i žel i te da podel ite sasvetom preko nekog torent sajta morate taj podatak prvo očistiti odmetapodataka da ne bi svako ko skine to što ste okači l i saznao da vi stoj i te izatoga

Internet mreže i komunikacije

39

Broj 33

Ljudi se konstantno prate metapodaci se sakupl ja ju i to ni je sada već ništa novoal i možemo da se trudimo da iza sebe ostavl jamo malo manje nežel jenihmetapodataka i da ih takoreći čistimo iz podataka koje razmenjujemo Na srećupostoje programi koj i ovo dobro rade

Najpre je potrebno da vidimo koje sve metapodatke neki faj l sadrži kako bismo seuveri l i da ovi metapodaci stvarno postoje i da je faj l bezbedan nakon nj ihovogbrisanja

Ako koristite operativne sisteme GNULinuksa treba da iz terminala preuzmete iinstal irate program pod nazivom exiftool

sudo apt-get install exiftool

Ovaj program će nam pružiti uvid u sve metapodatke koje faj l sadrži Korišćenje jeiz terminala al i je zato veoma jednostavno samo ga pokrenite na sledeći način

exiftool File

i l i

exiftool putanjadofajlapočevodkorenogdirektorijuma

Dobićete prikaz metapodataka koje je program pronašao Sada je potrebno davidimo da l i je podatak bdquoprl javrdquo tj da l i ima u njemu nešto da se briše i da akoima iz njega sve nepotrebno obrišemo Tu će nam pomoći drugi program zvaniMAT (eng Metadata Anonymisation Toolkit) koga možete naći na sajtuhttps matboumorg i l i jednostavno za korisnike Ubuntua i Debi jana uSoftverskom centru i l i ga možete instal irati iz terminala

sudo apt-get install mat

MAT će proveriti da l i je podatak bdquoprl javrdquo i l i ne i za vas ga očistiti od nežel jenihmetapodataka

Kada očistite faj l on je spreman za del jenje sa drugima a vi ste bezbedni jer nikone može reći da je faj l potekao sa vašeg računara

To su samo metapodaci

40

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Autor Dejan Čugal j

GH Hardi bdquoPrava matematika nema uticaj na ratrdquo - odbrana matematičara1940 godina

Bi l Tat - britanski matematičar verovatno niste čul i za njega1942 godine je izveo ogroman poduhvat koj i je skratio rat dvegodine (barem po rečima Ajzenhauera) i spasio mi l ione životaNažalost njegova vel ičina je preminula 2002 godine obavi jenavelom tajne i nikada zvanično ni je priznato njegovo dostignuće

Tomi Flauers - bivši inženjer poštanskog saobraćaja pretvorio jematematičke ideje Tata u prvi računar a to ni je bio bdquoENIACrdquo1Preminuo je 1998 godine a pretpostavl jamo da nikada niste čul ini za njegovu vel ičinu

Ovi umni giganti bdquoBlečl i parkardquo omogući l i su Britani j i da dešifruje strogo poverl j ivumašinu koju je koristio Hitler da diriguje drugim svetskim ratom a to ni je bi labdquoENIGMArdquo nego nešto mnogo tajni je i značajni je Vel ika je verovatnoća da nistečul i ni za ovo Neki kažu da je to bio Hitlerov Blekberi (BlackBerry)

Izgubljeni heroji bdquoBlečli parkardquo

1 engl Electronic Numerical Integrator And Computer - prvidigitalni elektronski računar

Internet mreže i komunikacije

41

Broj 33

1939 godine bdquoBlečl i parkrdquo je postao ratni štab MI6 (britanske vojne obaveštajneslužbe) Do danas je procurelo u javnost i dokumentovano brojnim fi lmskimdokumentarcima samo da je tu Alan Tjuring uspeo da dešifruje nemačkumornaričku šifru poznatu kao bdquoENIGMArdquo i uvel iko doprineo pobedi saveznika a to jesamo deo priče koj i je ispričan

U Blečl i parku su bi la tri heroja AlanTjuring Bi l Tat i Tomi Flauers Od nj ihtroj ice jedino Alanu Tjuringu je priznat deozasluga za pobedu saveznika u Drugomsvetskom ratu Pregledom otkrivenihpodataka danas možemo da tvrdimo daje bdquoENIGMArdquo već sa početka drugogsvetskog rata bi la zastarela tehnologi ja Zbog toga je bi lo lako skinuti veo tajne sa

ovog uspeha heroja Blečl i parka

Izgubljeni heroji bdquoBlečli parkardquo

42

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Bi l Tat koj i je dešifrovao bdquoTANI sistemrdquo (TANI) i Tomi Flauers koj i je samo svojomintuici jom i znanjem sklopio prvi računar na svetu (bdquoKOLOSrdquo) u svrhu bržegdolaženja do informaci ja razbi jenog koda bdquoTANIrdquo tako da zastarelost šifrata budesvedena na minimum - radi l i su na novoj generaci j i mašina za šifrovanje Ovatehnologi ja je bi la prepoznata kao tehnologi ja budućnosti pa i danas iznadinformaci ja o tim tehnologi jama stoj i natpis bdquovrhunska tajnardquo (eng Top Secret) Upravo ovaj veo tajni oko šifrata bdquoTANIrdquo i prvog računara je rezultirao iskrivl jenjuistori je informatike

Za uspehe u prvim godinama rata je zaista zaslužno razbi janje bdquoENIGMArdquo šifrata ito ni je sporno al i krajem 1941 godine u etru planete se začuo novi zvuk To je bi lanova mašina za šifrovanje ni je bi la zasnovana na bdquoMorzeurdquo već je radi la naprincipu teleprintera

Jedna od kl jučnih ideja Hitlerovog ratovanja je bi la u vel ikoj mobi lnosti i brzomdelovanju trupa na terenu a da bi se to izvelo komunikaci ja je isto tako morala dabude u najmanju ruku putem radio signala

Razl ika je ogromna Razl ika je u kol ičini podataka koj i može da se prenese ovimbdquotajnimrdquo putem Prvi svetski rat je bio zaniml j iv jer su se šifrovane poruke baziralena rečima dok je Drugi u potpunosti otvorio vrata današnjoj kriptografi j i a to jematematika

Originalan nemački kocircdni naziv za ovaj šifrat bio je bdquoLORENCrdquo Britanska

Internet mreže i komunikacije

43

Broj 33

obaveštajna služba mu je dala nadimak bdquoTANIrdquo Čak ni dan danas ni je baš poznatokako je sve nastalo al i pouzdano se zna da je tajnu mašinu Hitler nazvaobdquoGehajmšrajberrdquo (nem Geheimschreiber) - mašina tajni

U srž i tehnologi ju šifrovanja bdquoLORENCrdquo šifrata nećemo ulaziti u ovom članku al iverujte nam na reč - ni je bi la jednostavna Može se pretpostaviti da je inspiraci jaŠenonovog 2 rada slučajnosti bi la upravo ova tehnologi ja iz Drugog svetskog rata

Ono čime se Treći rajh vodio je bdquosigurnardquo šifrovana veza koju niko ni je smeo dadešifruje Prenošenje šifrovanih poruka pomoću radio signala je dalo obaveštajnimslužbama mogućnost presretanja poruka poslatih radio talasima Da l i se ovo idanas dešava Imamo l i sigurnost u našim šifrovanim podacima današnj ice

Ono što je usledi lo nakon proboja ovog bdquoneuhvatl j ivogrdquo šifrata je upravo ono što jeprincip današnj ice kao neka vrsta protokola koj i mora da se ispoštuje uperfektnom šifarskom Šenonovom sistemu

1 NIKADA NIKADA NE KORISTITI DVA PUTA ISTI KLJUČ ZA ŠIFROVANJE2 NIKADA NIKADA KLJUČ NE SME DA SE ŠALJE ISTIM KOMUNIKACIONIM KANALOM

KAO PORUKA3 NIKADA NIKADA KLJUČ NE SME DA BUDE MANJ I NEGO ŠTO JE PORUKA (engl

2 Klod Elvud Šenon (eng Claude Elwood Shannon) (1916-2001) - Američkinaučnik i inženjer

Izgubljeni heroji bdquoBlečli parkardquo

44

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

one time pad) 4 NIKADA NIKADA NE SMEMO DA SAKRIVAMO SISTEM ŠIFROVANJA SVE MORA

DA JE OTVORENOG KOcircDA

Najveći propusti kriptologi je koj i su uočeni baš u Drugom svetskom ratu jesupokušaj sakrivanja sredstava koj im se generiše tajna poruka i nepoznavanjeŠenonovih krajnj ih granica informaci ja Kada kažemo bdquosredstvo i sakrivanjerdquomisl imo na algoritme Postavl ja se pitanje zašto je danas kriptologi ja sigurni ja negočetrdesetih i pedesetih godina prošlog veka

Danas uprkos tome što su algoritmi za kriptografi ju otvorenog kocircda tajnostinformaci ja je na višem nivou nego što je to bi lo dok je algoritam bio strogopoverl j iv Tajnost tajnih podataka se ne zasniva na tajnosti a lgoritama koj i generišutaj isti bdquotajni izlazrdquo (eng cipher text) nego u nemogućnosti matematičke inverznefunkci je koja bi šifrovan tekst otvori la Ovde se vidi da je svrha strukture otvorenogkocircda kao jednog od značajnih delova današnje kriptologi je ona koja ga činisigurnim i svima dostupnim

Sada kada se sa ove distance osvrnemo na Drugi svetski rat možemo videti kol ikosmo bi l i bl izu apokal ipse Naime Albert Ajnštajn je već 1944 godine imao urukama recept za nuklearnu bombu Šenon je mogao već u to vreme da nampredoči 100 siguran šifrat (tzv Hitlerovu super šifru) a l i ipak sreća nas jeposluži la da čovečanstvo tada ni je bi lo spremno da upotrebi svu raspoloživutehnologi ju

Albert Ajnštajn bdquoČetvrti svetski rat će se voditi tol jagamardquo

Zaboravl jeni heroj i Blečl i parka iako su odigral i važnu ulogu u pobedi saveznika usvetskom ratu postal i su žrtve bdquotop secretrdquo doktrine potpuno su zaboravl jeni inestal i su iz istori je

Zakl jučak ovog članka je da je ideologi ja otvorenog kocircda sasvim sigurno tu da nampomogne i da otvori vrata ka većoj sigurnosti novim idejama i kval itetu sameinfrastrukture sistema koju svi zajedno razvi jamo

Internet mreže i komunikacije

45

Broj 33

Autor Nikola Hardi

NabrajanjaBez brojeva

Za nabrajanje pojmova u Bimeru (eng Beamer) koristi se okruženje itemize aunutar tog okruženja možemo da dodajemo nove stavke pomoću item Primerizgleda ovako

beginitemizeitem Stavka Aitem Stavka Bitem Stavka C

enditemize

Sa brojevima

Postoje situaci je kada uz nabrajanje treba da stoje i redni brojevi - za to se koristienumerate okruženje a nove stavke se takođe dodaju pomoću item

beginenumerateitem Redni broj 1item Redni broj 2item Redni broj 3

endenumerate

prezentaci ja

Beamer (4 deo)

Sam svoj majstor

46

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

DefinicijeTreća situaci ja je nabrajanje parova termin - definici ja U tom slučaju se koristiokruženje description Već možete da pretpostavite kako se dodaju nove stavke

Primer

begindescriptionitem[Pojam A] Definicija izmišljenog pojma Aitem[Pojam B] Definicija izmišljenog pojma Bitem[Pojam C] Definicija izmišljenog pojma C

enddescription

Ostala podešavanja i zanimljivostiSva prethodna okruženja mogu da budu ugneždena jedno unutar drugog dotrećeg nivoa Treba biti pažl j iv jer sla jdovi vrlo lako mogu da postanu nečitl j ivi Osim toga moguće je izabrati i format oznake i l i rednih brojeva - na primer ovako

beginenumerate[I]beginenumarate[a)]

Takođe moguće je upravl jati pojavl j ivanjem pojedinih stavki na slajdovima Drugimrečima možemo da odredimo da se nabrajanja postepeno otkrivaju tako što ćemouz stavku dodati lt1-gt odnosno broj od kojeg slajda žel imo da se ta stavkapojavl ju je Tada će jedno nabrajanje biti bdquorazvučenordquo na više slajdovaJednostavni ja mogućnost je da u zaglavl je okruženja dodamo +- što znači dažel imo da se svakim slajdom otkriva po jedna nova stavka iz nabrajanja Znak bdquo-rdquo uoba primera znači da žel imo da se stavka pojavi na sledećem slajdu i da ostane

Sam svoj majstor

47

Broj 33

prisutna Možemo da izostavimo znak bdquo-rdquo i tada će stavka biti prisutna samo najednom slajdu i l i da napišemo raspon slajdova u koj ima žel imo da ta stavka budeprisutna

Rad sa kolonama i blokovimaDo sada su svi primeri podrazumeval i da je sadržaj napisan preko cele širineslajda al i Bimer (eng Beamer) ima i jednostavne mehanizme za razmeštanjesadržaja po kolonama Za rad sa kolonama se koristi okruženje columns unutarkojeg možemo da dodajemo nove kolone pomoću columnširina Sadržaj jemoguće potom pisati i van okruženja sa kolonama

U paru sa kolonama često se sreće i okruženje block koje se parametrizujenaslovom Primerom su i lustrovani i okruženje column i okruženje block

beginframebegincolumns

column05textwidthbeginblockNaslov levog blokaSadržaj u prvoj (levoj) koloni endblock

column05textwidthbeginblockNaslov desnog blokaSadržaj u drugoj (desnoj) koloni

endblockendcolumns

beginblockVan kolona

Beamer

48

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Tekst koji se nalazi ispod kolonaendblock

endframe

TabeleIako se u radu sa prezentaci jama sadržaj najčešće može uredno rasporeditipomoću kolona i nabrajanja nekada to ni je dovol jno jer su tabele pravi formatBimer podržava standardno Lateh (LaTeX) okruženje za rad sa tabelamaOkruženje za rad sa tabelama se zove tabular Pri kreiranju nove tabele moguće jepodesiti koje kolone će biti razdvojene l ini jom i da l i će nj ihov sadržaj biti centrirani l i uz levu i l i uz desnu ivicu Dodavanje novog reda se jednostavno radidodavanjem hline Lateh pruža zaista jako fleksibi lan rad sa tabelama i sigurno ćedoskočiti svim mogućim i nemogućim zamisl ima Potražite bi lo koje Lateh uputstvoza rad sa tabelama i radiće i sa Bimerom

beginframebegintabular | c | c | c | c |

hlineamp Ponedeljak amp Utorak amp Sreda hline

1 amp 16 amp 32 amp 64 hline2 amp 16 amp 128 amp 1024 hline3 amp 16 amp 512 amp 4096 hline

endtabularendframe

Sam svoj majstor

49

Broj 33

Beamer

Teoreme i istaknut tekstU nastavi su česta izlaganja teorema nj ihovih dokaza i primera U Bimer jeugrađena podrška za elegantno predstavl janje ove trojke Mehanizam takođepodržava postepeno otkrivanje sadržaja sla jda tako da slušaocima ne bude odmahotkriven dokaz teoreme Mehanizam za postepeno otkrivanje se kao i kodnabrajanja postiže pomoću bdquolt1-gtrdquo konstrukci je Evo kako to izgleda

beginframeframetitlePrimer teoreme

begintheoremlt1-gt Teorema kaže da su beamer prezentacijezanimljive

endtheorem

beginexamplelt2-gt Ovaj kod kreira slajd beamer prezentacijeendexample

beginprooflt3-gt Čestitamo stigli ste do kraja serijala o pravljenju beamer prezentacija

endproofendframe

50

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Za krajOvim člankom završavamo seri ja l o Bimeru Nadamo se da smo uspel i da vaszainteresujemo za ovu vrlo korisnu klasu Lateha Trudi l i smo se da vamprezentujemo najvažni je delove Bimera koje ćete najčešće koristiti pri l ikomkreiranja svoj ih prezentaci ja

Napominjemo još jednom da je Bimer samo jedna od klasa Lateha što znači da i zaBimer važi sve ono što ste već mogl i da pročitate u ovom časopisu kad smo pisal iseri ja l bdquoUvod u LaTeXrdquo (LiBRE brojevi 17 do 21) Štaviše ovaj seri ja l o Bimeru jebio nastavak upravo tog seri ja la U ovom seri ja lu nismo pisal i o samomformatiranju teksta u prezentaci jama jer se podrazumeva da važe ista pravi la kao iu Latehu a o tome smo pisal i u prethodnom seri ja lu

Hvala vam što ste prati l i ovaj seri ja l i žel imo vam puno uspeha u kreiranju Bimerprezentaci ja

Sam svoj majstor

51

Broj 33

Autor Nenad Marjanović

Kada smo se upoznal i sa podešavanj ima sistema i umrežavanjem vreme je za našprvi Biglbon Blek (BBB - eng BeagleBone Black) projekat Svakom od nas će ovajizazov dati razl ičite ideje a jedna od nj ih može biti i zaštita privatnosti internetkorisnika Nažalost u Srbi j i ne postoj i ni jedan izlazni tor server (eng node) i to jepomalo tužna sl ika s obzirom da govorimo o populaci j i od sedam mil ionastanovnika Al i ovu sl iku možemo promeniti udruženim snagama i za početakkreiranjem Tor transfer i izlaznog servera U ovde prikazanom grafikonufokusiraćemo se na bdquoRauter Brdquo tačku odnosno transfer server konfiguraci ju

BeagleBone Black Rev C

Vodič od prvog dana (3 deo) ndashBeagleBone Black kao Tor relej

Hardver

52

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Tor predstavl ja mrežu servera koj i se povezuju radi bol je enkripci je podataka izaštite IP adrese korisnika Naš ci l j je da danas postanemo deo ovog predivnogprojekta i da se nađemo na svetskoj karti Tor servera

Brzina interneta i zakonske regulativePotrebno je imati na umu nekol iko bitnih stvari

1 Naš server = naša odgovornost2 Obavezno naznačite da ste vi administrator a ne korisnik istog servera3 Da posedujete internet brzinu od 2 Mbs

Ako ispunjavamo tri navedena pravi la i odgovornosti možemo se posvetitiadministrativnim poslovima

Instalacija i podešavanjaU ovom primeru koristimo Debi jan Vizi (eng Wheezy) odnosno Debi jan 7 verzi juna našem BBB uređaju Vi možete testirati i druge Linuks platforme Prvododajemo izvornu bibl ioteku u etcaptsourceslist faj l pokretanjem sledećekomande u terminalu

echo deb httpdebtorprojectorgtorprojectorg wheezy main gt etcaptsourceslistdtorlist

Zatim dodajemo izvorni kl juč vršimo ažuriranje sistema i instal iramo tor i tor-arm(Tor monitoring sistem)

gpg --keyserver keysgnupgnet --recv 886DDD89gpg --export A3C4F0F979CAA22CDBA8F512EE8CBC9E886DDD89 | sudo apt-keyadd -apt-get updateapt-get install debtorprojectorg-keyring -yapt-get install tor tor-arm egrep screen -y

Ovim smo uspešno završi l i instalaci ju Tor servera i sistema za monitoring odnosnonadgledanja našeg Tor servera Sledećom komandom radimo na podešavanj imaTor servera koja se nalaze u etctortorrc faj lu Obratite pažnju i izvršite potrebne

Hardver

53

Broj 33

izmenu u pol j ima IP adresa (eng Address) nadimka (eng Nickname) i kontaktpodataka (eng ContactInfo) pre pokretanja ove komande Kopiramo i pokrećemokomandu u celosti u terminalu

egrep -v ^(|$) etctortorrcORPort 443Address 19216811Nickname LibreTorRelayRelayBandwidthRate 100 KBRelayBandwidthBurst 120 KBContactInfo ltvi at gmail dot comgt irPort 8080DirPortFrontPage etctortorhtmlExitPolicy reject

Detal je o svim vrednostima nećemo iznositi u ovom broju LiBRE časopisa al ićemo o nj ima pisati u sledećem u kome ćemo pričati o zaštiti Tor servera imogućnosti podešavanja određenih izlaznih pravi la (eng ExitPolicy)

Nakon ovoga možemo primetiti da se u folderu etctor ne nalazi torhtml faj l Ovaj faj l ni je od vel ikog značaja i možete ga l ično napraviti i l i preuzeti jednu kopi ju- naprimer sa sledeće lokaci je

cp usrsharedoctortorhtml etctortorhtml

Opcije i Tor Arm monitoringDa bismo ispravno koristi l i Tor Arm potrebno je urediti još jednom etctortorrcfaj l i restartovati servis

echo -e ldquoDisableDebuggerAttachment 0n AvoidDiskWritesrdquo gtgt etctortorrcsudo service tor reload

Ukol iko žel ite koristiti Tor Arm za nadgledanje aktivnosti na serveru pokreniteprogram screen kl iknite na bdquoEnterrdquo i kucajte sudo -u debian-tor arm Naekranu ćete imati sl ičan prikaz

BeagleBone Black

54

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Hardver

55

Broj 33

Da bismo napusti l i screen program koristimo Ctrl + a + d i na taj način kada sesledeći put pri javimo na server kucamo samo screen -r u terminalu - i naći ćemose ponovo na čuvenom Tor Arm monitoring ekranu

Nakon svake promene konfiguracionih faj lova ako slučajno nismo nešto podesi l ikako treba restartujemo servise

U sledećem broju časopisa govorićemo o minimalnim podešavanj ima ikonfigurisanju izlaznog Tor servera (eng Tor Exit Node) opci jama sigurnosti isl ičnim detal j ima u vezi sa našim prvim projektom Do čitanja u sledećem broju

BeagleBone Black

LUGoNS BarCamp 4subota 7 mart 2015 godine

Četvrti LUGoNS-ov Barkemp (BarCamp) održaće se u Novom Sadu usubotu 7 marta 2015 godine na Fakultetu tehničkih nauka sa početkomu 12 časova

Ulaz je slobodan

Poziv za predaju radovaLUGoNS poziva sve zainteresovane da pošal ju svoje radove (predavanjaprezentaci je radionice i diskusi je) do 28 februara 2015 godine

Oblasti iz koj ih možete da pri javite vaše radove su

bull Slobodan softverbull Zaniml j iv hardverbull Hakerski zakonibull Sigurnosne noćne morebull Anonimnost i privatnost na internetubull Duboki veb (eng Deep Web)bull Soci ja lne mrežebull Soci ja lni inženjeringbull Hakovanje mobi lnih uređajabull Internet u oblaku (eng Clouds) ndash hakovanje razbi janje i neočekivano korišćenjebull DPI (eng deep packet inspection)bull Mreža i mrežna neutralnost ndash vlasništvo cenzura nadmudrivanje i pol itika bdquodefaktordquo standarda

bull Programiranje i programski jezici

Nemojte se ustručavati i slobodno nam se javite ako imate rad na gore navedenei l i sl ične teme koj i smatrate interesantnim

Stranica za predaju radova nalazi se na https events lugonsorgp=1658

Page 16: LiBRE 33 Lat

16

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

But menadžer i but louder - ima razlikeOd popularizaci je GRUB upravnika mnogi korisnici su ostal i bez objašnjenja kakvaje razl ika između but loudera (boot loader) i but menadžera (boot manager) Ovose dešava jer GRUB pruža obe usluge u sklopu jednog programa pa se time teževidi razl ika između ova dva pojma But menadžer je upravnik pomoću kojeg jemoguće izabrati operativni sistem za pokretanje On ne zna ništa speci ja lno ooperativnom sistemu pa time ne zna ni kako da ga pokrene On samo zna datreba da pokrene but louder za taj sistem Kada je sistem izabran pokreće sespecifičan but louder za taj sistem koj i je zadužen za dal j i proces pokretanjakernela Za razl iku od GRUB upravnika rEFInd pruža samo usluge but menadžerašto u početku može zvučati poražavajuće za ovaj projekat Kada uzmemo u obzirda većina sistema danas ima but louder u sklopu kernela (ukl jučujući i Linuks odnovi j ih izdanja) ovaj problem je prevaziđen

Predstavljamo

17

Broj 33

InstalacijarEFInd postoj i kao deb i kao rpm paket al i postoj i i zapakovan kao zip arhivaZahval ju jući tome paket je moguće instal irati upotrebom dpkg komande nadistribuci jama baziranim na Debi janu kao i upotrebom rpm komande nadistribuci jama koje koriste taj način pakovanja paketa Za Ubuntu postoj i i PPArepozitori jum pa rEFInd može biti instal iran na sledeći način

sudo apt-add-repository pparodsmithrefindsudo apt-get updatesudo apt-get install refind

Nezavisno od toga koj i način od gore opisanih koristite rEFInd će automatski bitiprebačen na ESP i biti postavl jen kao podrazumevani upravnik

KonfiguracijarEFInd bi trebalo da vam pruži zadovol javajuću funkcionalnost bez dodatnekonfiguraci je posle instalacionog procesa On će automatski detektovati loudereoperativnih sistema korišćenjem pretrage po svim partici jama koje prepozna Uslučaju da ste napredni j i korisnik i da žel ite da modifikujete ponašanje rEFInda tomožete uraditi izmenom njegove konfiguracione datoteke Postoj i g lobalnakonfiguraci ja i konfiguraci ja za svaki sistem posebno Ovaj tekst bi postao previšedugačak kada bismo ulazi l i u detal je same konfiguraci je pa vam zatopreporučujemo ako imate potrebu za dodatnom konfiguraci jom da posetitedokumentaci ju projekta i l i ako imate neke nedoumice da kontaktirate s namapreko naše e-pošte

Za krajŽelel i bismo da ovaj tekst zakl jučimo ocenom da je ovaj projekat dosta zaniml j ivda pruža zadovol javajuću funkcionalnost i da omogućava korisnicima koj i koristeovaj sistem pokretanja lako pokretanje svoj ih operativnih sistema Još jednomžel imo da vam skrenemo pažnju da nam se obratite i ukažete ako smo nešto važnopropusti l i da pomenemo i l i ako nam se negde potkrala greška

Korisni l ink http wwwrodsbookscomrefind

rEFInd

18

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Autor Nikola Hardi

Opšte je poznato da su računari dobri u radu sa brojevima Međutim vremenom suse i potrebe korisnika i alati za programiranje računara razvi ja l i i rad sa drugači j imtipovima podataka je postao uobičajen i znatno jednostavni j i nego rani je Svi smoimal i pri l iku da radimo sa programima za obradu fotografi ja video materi ja la i l izvučnih zapisa Multimedi ja je ipak tema koja prevazi lazi jedan uvodni kurs o C-ual i do kraja ovog seri ja la ćemo se dotaći i tih tema Za početak osvrnućemo se narad sa tekstualnim podacima na C način

Stringovi na C načinDefinici ja tekstualnog podatka u sferi računarstva se uglavnom svodi na to da jetekst niz karaktera a karakteri su znakovni simbol i Iako imamo mogućnost daradimo sa tekstom i l i multimedi jom računari ipak razumeju samo brojeve pamoramo tako da im predstavimo i tekst Postoje razni standardi kako se pojedinikarakteri predstavl ja ju u memori j i računara između ostalog najpoznati j i su ASCIIEBCDIC UTF i td EBCDIC je standard koj i je prisutan u Eplovom (eng Apple) svetu iviše nema tol iko važnu ulogu ASCII je standard koj i je vrlo prisutan i danas UTF jenastao kao proširenje ASCII standarda javl ja se u više vari janti i uvodi podršku zapisma razl ičita od abecede (kinesko japansko ćiri l ica arapsko i mnoga druga)

Važno je napomenuti da je originalni ASCII standard propisivao 7 bitova za jedankarakter što je dalo prostora za 128 karaktera Među tim karakterima se nalazecifre mala i vel ika slova engleskog alfabeta i niz kontrolnih karaktera Kontrolnikarakteri su oznake za novi red prazno mesto tabulator upravl janje štampačima(vraćanje glave štampača na početak) rad sa terminal ima (alarm i l i obaveštenje

Kako da

Uvod u programski jezik CRad sa stringovima (9 deo)

19

Broj 33

da se nešto dogodi lo) ASCII standard je proširen na 8 bitova odnosno ceo jedanbajt i sada podržava 256 karaktera Potražite na internetu termin bdquoASCII tabelardquo dabiste stekl i uvid u to kako izgleda tzv tabela ASCII karaktera

Rad sa pojedinačnim znakovima ne obećava mnogo Postoj i realna potreba zaradom sa rečima rečenicama l ini jama teksta itd Podaci koj i se sastoje od više odjednog karaktera se u domaćoj l i teraturi nazivaju znakovnim niskama madaodomaćen je i naziv bdquostringrdquo koj i je i mnogo češće u upotrebi U programskomjeziku C se stringovi predstavl ja ju običnim nizovima karaktera (char niz[]) a krajteksta se označava NULL karakterom odnosno speci ja lnim znakom 0 či jabrojevna predstava je pogađate nula Ovakva predstava tekstualnih podatakanosi sa sobom i pojedine kompl ikaci je Gotovo svi savremeni jezici poznaju tipstringa dok su u C-u stringovi ipak samo obični nizovi

Da se podsetimo nizovi u C-u su zapravo pokazivači na deo u memori j i Kadapokušamo da pristupimo jednom elementu niza tada se vrši operaci jabdquodereferenciranjardquo sa zadatim odstupanjem Sledi nekol iko primera koj i i lustrujurad sa nizovima na primeru nizova karaktera

char niz1[] = zdravoniz1[0] = Z

char niz2[5]niz2[0] = 0niz2[1] = kniz2[2] = 0

Pri deklaraci j i niza 1 ni je zadata dužina zato što je u jednom izrazu zadata iinici ja l izaci ja niza koja glasi ldquozdravordquo Prevodi lac može sam da zakl juči kol ikomemori je je potrebno

U drugom primeru je kreiran niz karaktera dužine 5 Međutim popunjena su samoprva tri mesta Primećujete razl iku između prvog i trećeg elementa Prvi je cifra 0(uokviren je navodnicima) a treći je brojčana vrednost 0 koja označava krajstringa

Može se primetiti još jedna razl ika u data dva primera U prvom primeru sukorišćeni dvostruki navodnici dok su u drugom korišćeni jednostruki Razlog za to

Uvod u programski jezik C

20

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

je što se znakovni nizovi koj i su uokvireni dvostrukim navodnicima smatrajustringovima i podrazumevano im se dodaje bdquoterminatorrdquo odnosno znak NULL koj ioznačava kraj stringa Jednostruki navodnici se iskl jučivo koriste za predstavl janjepojedinačnih karaktera Ovo znači da zapisi ldquoardquo i a nisu jednaki Prvi zapis jedužine 2 jer ima i znak NULL koj im je završen

Ispisivanje i učitavanje stringovaPre nego što nastavimo dal je biće objašnjen jednostavan način za ispisivanje iučitavanje stringova pomoću standardnog ulazaizlaza Da se podsetimobibl ioteka za standardni ulazizlaz (ispis podataka u konzol i odnosno terminalu) jestdioh Ukol iko se koristi formatirani ispis potrebno je funkci jama printf() iscanf() proslediti format string koj i sadrži speci ja lan znak s čime je označenoda žel imo da ispišemo znakovni niz sve do NULL karaktera Drugi način jeupotrebom funkci ja puts() gets() i getline() iz bibl ioteke stringh Sledi primer

include ltstdiohgt include ltstringhgt int main()

char niz1[] = Zdravo svete

printf(sn niz1)

scanf(s niz1)puts(niz1)

return 0

Može se primetiti da je u slučaju funkci je printf() potrebno naglasiti speci ja lnimkontrolnim karakterom n da nakon ispisa treba preći u novi red Funkci ja puts() topodrazumevano radi

Za ove i sve druge funkci je dodatnu pomoć je moguće pronaći u Linuksovim manstranicama u odel jku 3 koj i je posvećen standardnim bibl iotekama Recimo mangetline sadrži detal jno uputstvo o funkci j i getline()

Kako da

21

Broj 33

Kopiranje stringovaKao što je u prethodnom odel jku napomenuto stringovi su u C-u samo običninizovi To znači da sledeći kod verovatno neće uraditi ono šta bi bi lo očekivano

niz1 = niz2

Ovime smo pokazivaču niz1 bdquorekl irdquo da pokazuje tamo gde i pokazivač niz2 Efektivno oni sad pokazuju na isti tekst međutim ako izmenimo niz1 to će seodraziti i na niz2 a važi i obrnuto Ovime smo dobi l i samo dva pokazivača na istideo memori je a uglavnom to ni je bio ci l j

Drugi način kako bismo sadržaj drugog niza mogl i da kopiramo u prvi niz je petl jakojom bismo kopiral i element po element Pošto je operaci ja kopiranja stringovavrlo često potrebna postoj i standardna bibl ioteka za rad sa stringovima koja sezove stringh a funkci ja za kopiranje stringova je strcpy()

strcpy(niz1 niz2)

Dati primer kopira sadržaj niza 2 u niz 1 Kopira se element po element sve dok seu nizu 2 ne naiđe na NULL karakter Ovakvo kopiranje (element po element) seinače u stranoj l i teraturi naziva i bdquodeep copyrdquo i vrlo često se sreće u radu sastrukturama podataka gde je potrebno obići celu strukturu podataka i svakielement kopirati a strukturu opet izgraditi u drugom delu memori je

Zaniml j ivo je što je kopiranje stringova moguće pojednostaviti ukol iko definišemonovi tip podatka kao strukturu koja sadrži niz karaktera i potom izvršimo kopiranjeOvo je trik koj i se uglavnom ne koristi u praksi i spomenut je samo kaozaniml j ivost

include ltstringhgt struct str char niz[50]

int main()

struct str s1struct str s2

Uvod u programski jezik C

22

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

strcpy(s1niz zdravo)s2 = s1

s2niz[0] = Z

puts(s1niz)puts(s2niz)

return 0

Kreirana je struktura str koja sadrži pol je niza karaktera pod nazivom niz Pozivomfunkci je strcpy() kopiramo string ldquozdravordquo u s1 čime smo bdquonapuni l irdquo sadržajobjekta s1 Potom je izvršena redovna dodela čime je sadržaj objekta s1 kopiran us2 Zatim je izmenjen samo prvi karakter objekta s2 i oba stringa su ispisanaPrimećujete da su kopirani svi znakovi a da je izmenjen samo drugi objekatZaniml j iv trik

Poređenje spajanje i pretraga stringovaDruga vrlo česta situaci ja je poređenje dva stringa Ukol iko bi poređenje bi loizvršeno upotrebom redovnog operatora za poređenje == tada bi u stvari bi lepoređene samo adrese na koje pokazuju pokazivači tih stringova jer da sepodsetimo stringovi su u C-u samo obični nizovi Ispravan način za poređenje dvastringa je pozivanjem funkci je strcmp() či ja je povratna vrednost 0 ukol iko su jojprosleđeni stringovi sa jednakim sadržajem

include ltstringhgt int main()

char niz1[] = zdravochar niz2[] = zdravo

if( strcmp(niz1 niz2) == 0)puts(Stringovi su jednaki)

elseputs(Stringovi nisu jednaki)

return 0

Kako da

23

Broj 33

Funkci ja strcmp() poredi svaki element prosleđenih nizova pojedinačno a dobraje vežba implementiranje nove funkci je strcmp() koja će unutar petl je da porediodgovarajuće elemente prosleđenih nizova i potom vratiti rezultat 0 ukol iko su svielementi jednaki Potrebno je pripaziti na situaci ju kada su stringovi razl ičitihdužina

U svetu računara spajanje dva sadržaja se zove konkatenaci ja Odatle i nazivfunkci je za spajanje dva stringa strcat() Važno je uveriti se da je string u koj i sedodaje sadržaj dovol jno vel ik da ga prihvati inače može da dođe do nežel jenogprepisivanja u memori j i uništavanja drugih podataka i neispravnog ponašanjaprograma

Pretraga unutar stringa se može obaviti funkci jom strstr() Ova funkci ja kaoparametre očekuje pokazivač na niz karaktera (string) u kojem je potrebno pronaćistring koj i je prosleđen kao drugi parametar Povratna vrednost je pokazivač nadeo memori je gde se žel jeni string prvi put pojavio

Sledi malo opširni j i primer koj i i lustruje spajanje pretragu i kopiranje stringova

include ltstringhgt int main()

char niz_a[50] = LiBRE je char niz_b[] = najbolji casopischar niz_c[] = e-magazin

strcat(niz_a niz_b)puts(niz_a)

char cilj = strstr(niz_a casopis)strcpy(cilj niz_c)

puts(niz_a)

return 0

Uvod u programski jezik C

24

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Pretvaranje tipova podataka u stringove ipretvaranje iz stringovaPretvaranje podataka iz jednog tipa u drugi i l i kastovanje (eng type casting) se zavećinu tipova vrši jednostavno pisanjem tipa u zagradama na primer (int)523 Stringovi su i po ovom pitanju drugači j i Postavl ja se pitanje šta pretvoriti ucelobrojni tip - da l i adresu na koju pokazuje pokazivač niza koj i predstavl ja stringPrvi element Šta ako taj string ni je broj Predstavićemo rešenje za konverzi jubrojeva u stringove i obrnuto

Ispis podataka na ekranu se takođe može smatrati konverzi jom Broj sa pokretnimzarezom je u memori j i prikazan na pomalo čudan način a pozivom funkci jeprintf() kada je kao format zadat f na ekranu ćemo dobiti razuml j iv niz znakovaSl ičan rezultat možemo dobiti funkci jom sprintf() a jedina razl ika u odnosu naprintf() je ta što sprintf() kao prvi argument očekuje pokazivač na string dok sudrugi (format string) i treći (argumenti koj i se povezuju sa formatnim stringom)sl ični kao kod funkci je printf()

Kod pretvaranja stringova u brojevne tipove može poslužiti funkci ja sscanf() kojase ponaša sl ično kao funkci ja scanf() s tim što je prvi argument adresa(pokazivač na string) koju žel imo da skeniramo u nadi da će se poklopiti saformalnim stringom koj i je drugi argument a rezultati će biti sačuvani u adresamakoje su prosleđene kao 3 4 i ostal i parametri Drugi način za pretvaranje stringovau celobrojne brojeve i brojeve sa pokretnim zarezom su funkci je atoi() i atof()

Funkci je koje koriste formatni string su česte u jeziku C i zaslužuju posebnu pažnjumeđutim to je priča za poseban članak U ovu klasu funkci ja spadaju recimo ifunkci je za rad sa datotekama

BezbednostRad sa stringovima može da bude izuzetno opasna stvar po pitanju bezbednostiprograma Ukol iko se niz karaktera ne završava NULL karakterom svašta može dapođe po zlu pri pozivu funkci ja kao što su strcpy() strcmp() i sl ične Cela klasatih funkci ja se oslanja na postojanje znaka koj i označava kraj stringa Kada stringni je propisno završen tada te funkci je mogu da zalutaju u deo memori je vanstringa i svašta može da pođe po zlu Ovakav tip napada se inače zoveprekoračenje bafera (eng buffer overflow) Preporučen način kako da izbegnete

Kako da

25

Broj 33

Pregled popularnosti GNULinuxBSDdistribuci ja za mesec februar

Distrowatch

Pad ltPorast gtIsti rejting =(Korišćeni podaci sa Distrovoča)

12345678910111213141516171819202122232425

MintUbuntuDebianopenSUSEelementaryMageiaFedoraManjaroCentOSLXLEArchBodhiAndroid x86Kal iPCLinuxOSPuppyRobol inuxLubuntuQ4OSBlack LabNetrunnerSimpl icityEvolveZorin4MLinux

2919gt1778gt1701gt1323gt1204gt1174gt1166gt1028lt1020gt965gt957gt907gt900lt760gt742lt732gt695gt670gt663gt655gt652gt629gt607gt583gt517=

takve nepri jatne situaci je pri radu sastringovima je da koristite verzi jefunkci ja koje su ograničenemaksimalnom dužinom stringa kaošto su strncpy() strncat() strncmp() i td Sve te funkci je kaotreći parametar zahtevaju broj koj iodređuje maksimalnu očekivanudužinu stringa Još jedna vrlo korisnafunkci ja je strlen() či j i zadatak je daodredi dužinu stringa Budite pažl j ivi ovo je prvo mesto gde se tražebezbednosni propusti u programimaNe verujte podacima koj i spol ja ulazeu vaš program a pogotovo kada je rečo stringovima

Uvod u programski jezik C

26

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Autor Dejan Maglov

Projekti slobodnog softvera obično počinju kao projekti pojedinca i l i male grupeprogramera a koj i rade na razvoju softvera či j i je ci l j da zadovol j i neke od nj ihovihl ičnih potreba Projekat će se smatrati uspešnim ukol iko se šira zajednicazainteresuje za njega nakon što prepozna korisnost softvera ne samo za pojedincekoj i su započel i projekat već i za širu zajednicu Kada je u pitanju slobodni softvervremenom je postala stalna praksa da se zajednica umeša u razvoj projekataDobri projekti sami privlače zajednicu l judi koj i su zainteresovani za nj ih i ona uvećini slučajeva preuzima na sebe testiranje pobol jšanje funkcionalnosti održavanje i tehničku podršku projekta

Zajednice slobodnog softvera mogu da se okupe oko projekta slobodnog softverapo teritori ja lnom principu i l i da nastanu kombinaci jom ovih principa

Primeri

bull LiBRE projekat okupl ja zajednicu oko projekta bez teritori ja lnog ograničenjabull LUGoNS (Linux User Group of Novi Sad) je zajednica korisnika Linuksa poteritori ja lnom principu bez obzira na konkretan projekat

bull Ubuntu-rs zajednica koja je kombinaci ja okupl janja zajednice oko konkretnogprojekta (Ubuntu) i teritori ja lnog principa koj i se ograničava na teritori ju Srbi je

Ova sinergi ja projekata i korisnika slobodnog softvera ima više prednosti i zakorisnike i za projekat Projekat se na ovaj način brže razvi ja dobi ja na

U potrazi za idealnom distribucijom

Socijalni kriterijumi za izbor idealnedistribucije (6 deo)

Oslobađanje

27

Broj 33

funkcionalnosti greške se brzo ispravl ja ju i td Korisnici dobi ja ju osećaj dapripadaju grupi druže se sa istomišl jenicima učestvuju u promoci j i kval itetnihpojedinaca itd

Dve najvažni je uloge lokalnih zajednica za GNULinuks distribuci je su

1 pružanje tehničke podrške i edukaci je na maternjem jeziku2 rad na lokal izaci j i i pri lagođavanje distribuci je lokalnim potrebama

Informaci ja da postoje lokalne zajednice slobodnog softvera je od naročitogznačaja za početnike i korisnike koj i nedovol jno dobro znaju strane jezike(naročito engleski jezik) Ako izuzmemo komerci ja lne projekte otvorenog koda(Red Het SUSE) ne postoje zvanične škole i kursevi za slobodni softver Zaedukaci ju početnika je uglavnom zadužena zajednica a jasno je da je učenje namaternjem jeziku uvek lakše nego na bi lo kom drugom stranom ma kol ikodobro ga poznajete

Forumi i viki stranice lokalnih zajednica su prave bibl ioteke u koj ima korisnicimogu da nađu većinu odgovora na svoja pitanja a za sva ostala tu su forumi iIRC kanal i zajednica na koj ima uvek ima nekoga i koj i imaju već gotova rešenjaza vel iki broj problema

U potrazi za idealnom distribucijom

28

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Lokalne zajednice kao kriterijum za izbor idealnedistribucijePočetnicima i korisnicima koj i ne vladaju dobro engleskim jezikom toplopreporučujemo da biraju GNULinuks distribuci je koje imaju aktivnu lokalnuzajednicu Ovladavanje novim operativnim sistemom je mnogo lakše ukol iko vambdquoleđa čuvardquo lokalna zajednica na koju se uvek možete osloniti

Već smo spomenul i da su popularni je GNULinuks distribuci je namenjenepočetnicima Slučaj je isti i sa lokalnim zajednicama okupl jenim oko nj ih Ovomeđutim ne znači da je kval itet usluga koje nude manje popularne lokalnezajednice okupl jene oko distribuci ja namenjenih napredni j im korisnicima loši j i Manje popularne distribuci je okupl ja ju manje l judi a l i zato oni poseduju većeznanje Iskustvo sa zajednicama okupl jenim oko slobodnog softvera je uglavnompozitivno i ukazuje na to da kval itet usluga koje one nude korisniku ni je uslovl jenpopularnošću i masovnošću zajednice nego iskl jučivo njenom (ne)aktivnošću

U svakom slučaju dosadašnj i saveti za izbor idealne distribuci je važe i dal jeSoci ja lni aspekt slobodnog softvera je samo dodatni faktor koj i vam može pomoćipri donošenju odluke kada se dvoumite između nekol iko mogućih rešenja

Još uvek ne postoj i na jednom mestu potpuni i ažurirani spisak svih aktivnihsrpskih zajednica Nešto najbl iže tome može da se nađe na adresihttps pulsslobodewordpresscom Za informaci je o nekim drugim lokalnimzajednicama koje možda postoje al i nisu na ovom spisku moraćete sami dapretražite internet

Lokalizacija kao kriterijum za izborZa lokal izaci ju GNULinuks distribuci ja i GNU programa odgovorni su pojedinci ilokalne zajednice Sasvim sol idnu srpsku lokal izaci ju mogu imati i projekti koj iuopšte nemaju svoju lokalnu zajednicu a isto tako lošu lokal izaci ju mogu imati iprojekti sa dobrom lokalnom zajednicom Sve je stvar prioriteta zajednica iaktivnosti pojedinaca

Pravu i kontrol isanu lokal izaci ju može imati samo lokalni projekat Ovakvihprojekata u Srbi j i ima malo i teško se probi ja ju čak i u lokalu u konkurenci j isvetskih projekata Istina je da mnoge veće GNULinuks distribuci je imaju srpskulokal izaci

Oslobađanje

29

Broj 33

ju u ponudi pa se možda sl ični lokalni projekti koj i su usmereni samo na striktnulokal izaci ju smatraju nepotrebnima Uzvodna lokal izaci ja u slučaju Srbi je vrlo čestobude veoma loše čak nakaradno sprovedena Jedna polovina programa jelokal izovana srpskom ćiri l icom a druga latinicom Ako postoj i još delova sistemakoj i uopšte ni je lokal izovan onda se pojavl ju ju i delovi programa koj i su naengleskom Zato ćemo se vratiti na prvu rečenicu ovog pasusa i ponovo utvrditi dasamo lokalni projekat može potpuno kontrol isati pravu srpsku lokal izaci ju

U Srbi j i za sada imamo dva aktivna projekta GNULinuks distribuci je ndash TriOS(http triosrs) i Serbian (http wwwdebian-srbi ja iz rspserbianhtml) Obaprojekta su mlada i imaju svoj ih prednosti i mana Kome treba lokal izovanoperativni sistem može da proba jedan od ova dva projekta

U potrazi za idealnom distribucijom

30

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Iako ove dve domaće distribuci je nisu baš naj idealni je interesantno je probati ih iuporediti sa drugim distribuci jama

Za kraj serijalaNamera nam je bi la da kroz ovaj seri ja l o kriteri jumima pri izboru idealnedistribuci je definišemo većinu kriteri juma pri izboru i pokažemo zašto je teškoodgovoriti na jednostavno pitanje bdquoKoju mi distribuci ju preporučujeterdquo

Ni na samom kraju nismo dal i konkretan odgovor na pitanje koja je idealnaGNULinuks distribuci ja Suviše je subjektivnih ocena da bi se mogao datikonkretan odgovor Smatramo da je jako teško napisati neki algoritam izbora pokriteri jumima koje smo identifikoval i i definisal i a možda je čak i nemoguće poštose izlazi stalno menjaju Izlazi iz tog algoritma su GNULinuks distribuci je koj ih izdana u dan ima sve više a i one stare se stalno menjaju

Sam seri ja l bdquoU potrazi za idealnom distribuci jomrdquo neće biti završen samo zato štose više neće baviti kriteri jumima pri izboru nego će pokušati da predstavl jaGNULinuks distribuci je koje su po nečemu bdquoidealnerdquo

Oslobađanje

31

Broj 33

ORM

Autor Dejan Čugal j

Object relation mapping (ORM)

ORM (eng Object RelationMapping) je način postizanja traj-nosti (eng persistence) objekataunutar relacionih baza podatakaModel deluje kao posrednik nalogičkom delu apl ikaci je Automat-ski presl ikava podatke iz objekata ubazu i nazad na zahtev apl ikaci jeDa bismo objasni l i kako ovo sveradi moramo da vam predstavimoORM frejmvork (eng framework)programa otvorenog koda -Hajbernejt (eng Hibernate -http hibernateorgorm)

Šta je ORMUkratko ORM je automatizovano transparentno presl ikavanje objekatakorišćenjem metapodataka koj i opisuju mapiranje veze između objekta i baze

ORM (2 deo)

Slobodni profesionalac

32

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

podataka u apl ikaci jama koje su napisane u objektno ori jentisanim programskimjezicima Apl ikaci ja komunicira sa ORM-om preko njegovog vlastitog API-ja (engapplication programming interface) i određenih objekata Ova komunikaci ja jepotpuno odvojena od komunikaci je koja se odvi ja između ORM-a i baze podatakapreko SQL-a i DBC-a

Da bi se postigla i dostigla potpuna snaga ORM-a u apl ikaci j i koju projektujemonikako se ne sme iskl jučiti znanje relacionih modela SQL jezika te poznavanjeDBMS-a u kome se radi ORM ni je ništa drugo do srednj i sloj između gorepomenutih tehnologi ja i objektno ori jentisanog programiranja kao što smo to dosada već više puta naglasi l i

Implementacija ORM-aPostoje razl ičiti načini implementaci je ORM-a Mark Fasl (Mark Fussel) je 1997definisao četiri nivoa

1 bdquoČistrdquo relacioni način2 Slabo mapiranje objekata3 Umereno mapiranje objekata4 Potpuno mapiranje objekata

bdquoČistrdquo relacioni način

Cela apl ikaci ja ukl jučujući i korisnički interfejs dizajnirana je relacionim modelom iSQL relacionim operatorima Ovakav pristup je odl ičan za male projekte Direktanpristup SQL-u omogućava fino podešavanje svakog aspekta upita koj i se postavl jabazi podataka Osnovne mane su portabi lnost (prenosivost) i održavanje ovakvihsistema pogotovo ako se planira korišćenje apl ikaci je na duži rok Ovakvi sistemimasovno koriste sačuvane procedure (eng stored procedures) što znači da jeposlovna logika (eng busines logic) prebačena na samu bazu podataka

Slabo mapiranje objekata

Entiteti su predstavl jeni kao klase i mapiranje se radi ekspl icitno ka relacionimtabelama SQLJDBC je sakriven od poslovne logike korišćenjem poznatih šablona(patterns)

Umereno mapiranje objekata

Slobodni profesionalac

33

Broj 33

Dizajn apl ikaci ja se svodi na objektne modele SQL se generiše u vremekompaj l iranja (eng build-time) i l i u vreme izvršavanja (eng run-time) Specifikaci jaupita nad bazama podataka se radi na objektno ori jentisanom jeziku Ovakvisistemi se koriste u apl ikaci jama srednj ih vel ičina kod koj ih je bitna portabi lnostizmeđu razl ičitih sistema za upravl janje bazama podataka (DBMS)

Potpuno mapiranje objekata

Podržava sofisticirano objektno model iranje nasleđivanje i pol imorfizamEfikasnost dobi janja podataka je na visokom nivou i koriste se metode kao što sulenjo učitavanje (eng lazy loading) i strategi ja keširanja (eng caching) Implementaci ja je transparentna u apl ikaci jama Ovaj nivo je jako teško dostići Pojedincu su potrebne godine razvoja da postigne ovakvu fleksibi lnost pristupa imanipulaci ja u relacionim bazama podataka Upravo ovaj nivo se postiže ako sekoriste rešenja ORM-a kao što je Hajbernejt

Zašto ORMImplementaci ja ORM rešenja pogotovo ako seprvi put susrećete sa ovim modelom može dabude veoma frustrirajuća i malo teža zaimplementaci ju Kada ovo kažemo misl imo daprogramer koj i implementira ORM i hoće da istibude kval itetno urađen mora da posedujepredznanje objektno ori jentisanog programiranjai naprednih tehnika kao što su nasleđivanje ipol imorfizam

Ovo inicira fundamentalna pitanja

bull Pa zašto bi iko onda implementirao ovako nešto kompleksnobull Vredi l i truda upuštati se uopšte u ORM

Odgovor ni je jednostavan Dosadašnja iskustva u korišćenju ORM-a i njegovapopularnost već daju odgovor na postavl jeno pitanje Očigledno je da su benefitikoje donosi ovaj model veći od kompleksnosti njegove implementaci je a to su

Hibernate ORM

34

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Veća produktivnost

ORM smanjuje kol ičinu koda potrebnog za ostvarivanje trajnosti podataka Ovoomogućava programeru da vreme koje bi utrošio na ručno mapiranje podatakautroši na druge delove apl ikaci je

Lakše održavanje

Manje l ini ja koda osigurava bol ju razuml j ivost (i možda bol j i kval itet koda) jernaglašava apl ikaci jsku logiku ORM takođe ublažava uticaj nastal ih promena kaošto su promene u bazi strukturi tabela i td

Prenosivost

Većina ORM rešenja podržava sisteme za upravl janje bazama podataka raznihproizvođača ORM u potpunosti odvaja sloj apl ikaci je od stvarne SQL komunikaci jekoja se odvi ja u pozadini Time omogućava da se pišu apl ikaci je koje će moći da seizvršavaju na razl ičitim bazama podataka bez potrebe za dodatnim kodiranjemOva komunikaci ja se odvi ja sa programskim interfejsima ORM-a nezavisno oDBMS-u sa koj im je u bi lo kom momentu povezan ORM takođe omogućava lakšiprelaz sa manj ih na veće baze podataka tokom razvoja apl ikaci je

Uvidel i smo da trenutno postoje dve paradigme koje se bdquosudarajurdquo i koje supodjednako dobre same za sebe Relaciona paradigma potvrđuje da sve što jeizgrađeno na matematičkim osnovama je i trajno u smislu kval iteta koje posedujeU domenu u kom relaciona paradigma egzistira ona je ako je to u ovo vremeuopšte moguće tvrditi nezamenj iva

Ono što otvara pitanja i daje razlog za sumnju je koja je krajnja granicaupotrebl j ivosti relacione paradigme tj kol iki su kapaciteti složenosti zahtevaapl ikaci ja sa kojom može da se nosi Praksa je pokazala da je sasvim mogućebdquoizvestirdquo složene projekte - al i održavanje skalabi lnost razuml j ivost prenosivost -pitanja su sa koj im se relaciona paradigma teško može izboriti

Sa druge strane svoj habitat u informacionim tehnologi jama je našla i objektna

Slobodni profesionalac

35

Broj 33

paradigma Iako na prvi pogled ova dva modela nemaju ništa zajedničko - što je uneku ruku i istinito gledajući prirodu podataka koj im manipul išu - praksa jepokazala da su usko povezane i skoro da imaju sinaptičku vezu

Pitanje bdquokako spoj iti te sinapserdquo dovelo je do žučnih rasprava u uskim naučnimprogramersko-administratorskim krugovima Rodi l i su se razni model i a l i jedan jeiskočio i polako ulazi u široku primenu - a to je ORM Svoj im supti lnim pristupomproblemu nekompatibi lnih paradigmi nekako je uspeo da stvori taj nedostajućibdquoelektrični signalrdquo koj i ih je povezao Ovo je omogući lo da dve strane koje susvaka za sebe u svom domenu ostavi le i ostavl ja ju duboki trag u informacionimtehnologi jama sarađuju i donesu novi kval itet

Korisni l inkovi

[1] Hibernejt http hibernateorg[2] Viki http googlLlZulw[3] Tutori ja l i http googlCGzvnc

Hibernate ORM

36

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Autor Kriptopank

Šta su zapravo metapodaci Najkraće rečeno to su podaci o podacima i l iinformaci je koje opisuju podatke

Najpre da napravimo razl iku između podataka i metapodataka Podaci sunaprimer snimak (i l i transkript) vaših telefonskih razgovora sadržaj poruka kojepišete primate i l i šal jete podaci koje kačite na internet i l i preuzimate pretrageGuglom postovi na forumima dopisivanja na IRC kanal ima i l i drugim četovimaaudio i video snimci Skajp razgovora i tako dal je

Hajde da vidimo šta bi bi l i odgovarajući metapodaci za ove primere

bull Za telefonske razgovore metapodaci mogu biti lokaci ja učesnika brojevitelefona trajanje razgovora IP i MAC adresa

bull Za poruke četove i Skajp i l i druge video-audio komunikaci je sl ično je kao kodtelefonskih razgovora

To su samo metapodaci

Internet mreže i komunikacije

37

Broj 33

bull Kod foruma i pretraga Guglom ima malo manje metapodataka al i Gugl i raznisajtovi i forumi ionako čuvaju logove o korisnicima što su takođe metapodaci

Ako do sada koj im slučajem niste uvidel i opasnost po privatnost u ovimmetapodacima koje svako od nas smrtnika svakodnevno ostavl ja za sobom usvetu interneta i ostal ih digitalnih komunikaci ja nadamo se da će vas ovaj primermakar podstaći na razmišl janje a možda i na nešto više

Zamisl i te da neko (zvaćemo ga posmatrač) stalno sakupl ja metapodatke koje zasobom ostavl jate kao mrvice hleba Posmatrač recimo zna da se nalazite naautoputu nedaleko od famoznog Feketića da se ne krećete da zovete AMSS zatimšlep službu i možda taksi a l i ne zna šta ste razgovaral i I l i posmatrač vidi da steprvo zval i aerodrom Nikola Tesla pa odmah potom taksi a l i ne zna šta sterazgovaral i I l i posmatrač vidi da ste zval i prvo šest brojeva či je identitete takođezna pa vidi da se oni zatim kreću ka vama - GPS (eng Global Positioning System) pa zatim pica servis Mekdonalds i neku poznatu prodavnicu kineske hrane al i nezna šta ste razgovaral i

Posmatrač ne mora da bude mnogo pametan niti da prisluškuje vaše razgovore dabi shvatio šta se dešava i l i šta će se desiti Sasvim mu je jasno da vam je u prvomprimeru auto stao na autoputu zatim da ste se u drugom slučaju uputi l i naaerodrom i da možda putujete van zemlje i l i ste poslal i taksi po nekoga saaerodroma a da u trećem slučaju okupl jate žurku kod vas Više možete pogledatina http googl7vUjP

Iako su to bdquosamordquo metapodaci treba biti svestan da ti metapodaci o vama stvarajujednu digitalnu sl iku i l i bol je reći digitalni mozaik i na neki način vas jedinstvenoodređuju Pogotovo kada se planski prikupl ja ju na više nivoa (kompjuter pametnitelefon pametni automobi l i kreditna kartica) metapodaci čine vaš digitalniidentitet Al i da stvar bude još gora ta sl ika o vama ne mora nužno biti istinita jerse lako može lažirati Recimo možete zameniti telefone i l i automobi le sa nekimnamerno i l i slučajno i l i vam neko može jednostavno ukrasti telefon laptop i l ikreditnu karticu Zaniml j iv video http googlKO1fKf

Evo jednog primera koj i vas može uvući u vel ike nevol je Recimo da prolazitenekom zabačenom ul icom i da vam neprimetno ispadne telefon al i vi to neprimetite i nastavite dal je svoj im putem U toj ul ici se samo nekol iko minutakasni je desi neko ubistvo i vas pozovu u pol ici ju kao osumnj ičenog Ako koj im

To su samo metapodaci

38

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

slučajem nemate dobar al ibi i l i nemate svedoka da posvedoči da niste bi l i u tojul ici nego tamo gde ste stvarno bi l i a drugih svedoka nema - možete jako lošeproći Zaniml j ivi video http googlspS5OZ

Metapodaci se takođe nalaze i u faj lovimapodacima koje svakodnevnopreuzimamo sa interneta pravimo i koristimo Svaki tip podatka može da sadržiodređene metapodatke koj i bol je opisuju sam podatak kao naprimer vremenastanka podatka kol iko je vremena potrošeno za njegovo kreiranje kol iko putamu je pristupl jeno kad je poslednj i put pristupl jeno i tako dal je Iako se ovakvimetapodaci možda još uvek čine bezazlenim oni mogu sadržati i IP adresuračunara sa kog su napravl jeni GPS koordinate (najčešće PNG format sl ika satelefona) ko ga je napravio (l ičnost i l i kompani jaorganizaci ja) naziv uređaja imodel sa koga je napravl jen kao i MAC adresu uređaja mej l adresu kreatorasoftver koj im je napravl jen i tako dal je Sve ovo može mnogo da naškodiprivatnosti izvornog kreatora faj la pogotovo ako je sadržaj poverl j iv Ukol iko nekopresretne taj podatak na internetu može saznati od koga je potekao Da ovo možebiti katastrofa po kreatora takvog faj la može i lustrovati primer torenta Ako stedošl i u posed nekih sl ika i l i video materi ja la i l i teksta koj i žel i te da podel ite sasvetom preko nekog torent sajta morate taj podatak prvo očistiti odmetapodataka da ne bi svako ko skine to što ste okači l i saznao da vi stoj i te izatoga

Internet mreže i komunikacije

39

Broj 33

Ljudi se konstantno prate metapodaci se sakupl ja ju i to ni je sada već ništa novoal i možemo da se trudimo da iza sebe ostavl jamo malo manje nežel jenihmetapodataka i da ih takoreći čistimo iz podataka koje razmenjujemo Na srećupostoje programi koj i ovo dobro rade

Najpre je potrebno da vidimo koje sve metapodatke neki faj l sadrži kako bismo seuveri l i da ovi metapodaci stvarno postoje i da je faj l bezbedan nakon nj ihovogbrisanja

Ako koristite operativne sisteme GNULinuksa treba da iz terminala preuzmete iinstal irate program pod nazivom exiftool

sudo apt-get install exiftool

Ovaj program će nam pružiti uvid u sve metapodatke koje faj l sadrži Korišćenje jeiz terminala al i je zato veoma jednostavno samo ga pokrenite na sledeći način

exiftool File

i l i

exiftool putanjadofajlapočevodkorenogdirektorijuma

Dobićete prikaz metapodataka koje je program pronašao Sada je potrebno davidimo da l i je podatak bdquoprl javrdquo tj da l i ima u njemu nešto da se briše i da akoima iz njega sve nepotrebno obrišemo Tu će nam pomoći drugi program zvaniMAT (eng Metadata Anonymisation Toolkit) koga možete naći na sajtuhttps matboumorg i l i jednostavno za korisnike Ubuntua i Debi jana uSoftverskom centru i l i ga možete instal irati iz terminala

sudo apt-get install mat

MAT će proveriti da l i je podatak bdquoprl javrdquo i l i ne i za vas ga očistiti od nežel jenihmetapodataka

Kada očistite faj l on je spreman za del jenje sa drugima a vi ste bezbedni jer nikone može reći da je faj l potekao sa vašeg računara

To su samo metapodaci

40

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Autor Dejan Čugal j

GH Hardi bdquoPrava matematika nema uticaj na ratrdquo - odbrana matematičara1940 godina

Bi l Tat - britanski matematičar verovatno niste čul i za njega1942 godine je izveo ogroman poduhvat koj i je skratio rat dvegodine (barem po rečima Ajzenhauera) i spasio mi l ione životaNažalost njegova vel ičina je preminula 2002 godine obavi jenavelom tajne i nikada zvanično ni je priznato njegovo dostignuće

Tomi Flauers - bivši inženjer poštanskog saobraćaja pretvorio jematematičke ideje Tata u prvi računar a to ni je bio bdquoENIACrdquo1Preminuo je 1998 godine a pretpostavl jamo da nikada niste čul ini za njegovu vel ičinu

Ovi umni giganti bdquoBlečl i parkardquo omogući l i su Britani j i da dešifruje strogo poverl j ivumašinu koju je koristio Hitler da diriguje drugim svetskim ratom a to ni je bi labdquoENIGMArdquo nego nešto mnogo tajni je i značajni je Vel ika je verovatnoća da nistečul i ni za ovo Neki kažu da je to bio Hitlerov Blekberi (BlackBerry)

Izgubljeni heroji bdquoBlečli parkardquo

1 engl Electronic Numerical Integrator And Computer - prvidigitalni elektronski računar

Internet mreže i komunikacije

41

Broj 33

1939 godine bdquoBlečl i parkrdquo je postao ratni štab MI6 (britanske vojne obaveštajneslužbe) Do danas je procurelo u javnost i dokumentovano brojnim fi lmskimdokumentarcima samo da je tu Alan Tjuring uspeo da dešifruje nemačkumornaričku šifru poznatu kao bdquoENIGMArdquo i uvel iko doprineo pobedi saveznika a to jesamo deo priče koj i je ispričan

U Blečl i parku su bi la tri heroja AlanTjuring Bi l Tat i Tomi Flauers Od nj ihtroj ice jedino Alanu Tjuringu je priznat deozasluga za pobedu saveznika u Drugomsvetskom ratu Pregledom otkrivenihpodataka danas možemo da tvrdimo daje bdquoENIGMArdquo već sa početka drugogsvetskog rata bi la zastarela tehnologi ja Zbog toga je bi lo lako skinuti veo tajne sa

ovog uspeha heroja Blečl i parka

Izgubljeni heroji bdquoBlečli parkardquo

42

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Bi l Tat koj i je dešifrovao bdquoTANI sistemrdquo (TANI) i Tomi Flauers koj i je samo svojomintuici jom i znanjem sklopio prvi računar na svetu (bdquoKOLOSrdquo) u svrhu bržegdolaženja do informaci ja razbi jenog koda bdquoTANIrdquo tako da zastarelost šifrata budesvedena na minimum - radi l i su na novoj generaci j i mašina za šifrovanje Ovatehnologi ja je bi la prepoznata kao tehnologi ja budućnosti pa i danas iznadinformaci ja o tim tehnologi jama stoj i natpis bdquovrhunska tajnardquo (eng Top Secret) Upravo ovaj veo tajni oko šifrata bdquoTANIrdquo i prvog računara je rezultirao iskrivl jenjuistori je informatike

Za uspehe u prvim godinama rata je zaista zaslužno razbi janje bdquoENIGMArdquo šifrata ito ni je sporno al i krajem 1941 godine u etru planete se začuo novi zvuk To je bi lanova mašina za šifrovanje ni je bi la zasnovana na bdquoMorzeurdquo već je radi la naprincipu teleprintera

Jedna od kl jučnih ideja Hitlerovog ratovanja je bi la u vel ikoj mobi lnosti i brzomdelovanju trupa na terenu a da bi se to izvelo komunikaci ja je isto tako morala dabude u najmanju ruku putem radio signala

Razl ika je ogromna Razl ika je u kol ičini podataka koj i može da se prenese ovimbdquotajnimrdquo putem Prvi svetski rat je bio zaniml j iv jer su se šifrovane poruke baziralena rečima dok je Drugi u potpunosti otvorio vrata današnjoj kriptografi j i a to jematematika

Originalan nemački kocircdni naziv za ovaj šifrat bio je bdquoLORENCrdquo Britanska

Internet mreže i komunikacije

43

Broj 33

obaveštajna služba mu je dala nadimak bdquoTANIrdquo Čak ni dan danas ni je baš poznatokako je sve nastalo al i pouzdano se zna da je tajnu mašinu Hitler nazvaobdquoGehajmšrajberrdquo (nem Geheimschreiber) - mašina tajni

U srž i tehnologi ju šifrovanja bdquoLORENCrdquo šifrata nećemo ulaziti u ovom članku al iverujte nam na reč - ni je bi la jednostavna Može se pretpostaviti da je inspiraci jaŠenonovog 2 rada slučajnosti bi la upravo ova tehnologi ja iz Drugog svetskog rata

Ono čime se Treći rajh vodio je bdquosigurnardquo šifrovana veza koju niko ni je smeo dadešifruje Prenošenje šifrovanih poruka pomoću radio signala je dalo obaveštajnimslužbama mogućnost presretanja poruka poslatih radio talasima Da l i se ovo idanas dešava Imamo l i sigurnost u našim šifrovanim podacima današnj ice

Ono što je usledi lo nakon proboja ovog bdquoneuhvatl j ivogrdquo šifrata je upravo ono što jeprincip današnj ice kao neka vrsta protokola koj i mora da se ispoštuje uperfektnom šifarskom Šenonovom sistemu

1 NIKADA NIKADA NE KORISTITI DVA PUTA ISTI KLJUČ ZA ŠIFROVANJE2 NIKADA NIKADA KLJUČ NE SME DA SE ŠALJE ISTIM KOMUNIKACIONIM KANALOM

KAO PORUKA3 NIKADA NIKADA KLJUČ NE SME DA BUDE MANJ I NEGO ŠTO JE PORUKA (engl

2 Klod Elvud Šenon (eng Claude Elwood Shannon) (1916-2001) - Američkinaučnik i inženjer

Izgubljeni heroji bdquoBlečli parkardquo

44

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

one time pad) 4 NIKADA NIKADA NE SMEMO DA SAKRIVAMO SISTEM ŠIFROVANJA SVE MORA

DA JE OTVORENOG KOcircDA

Najveći propusti kriptologi je koj i su uočeni baš u Drugom svetskom ratu jesupokušaj sakrivanja sredstava koj im se generiše tajna poruka i nepoznavanjeŠenonovih krajnj ih granica informaci ja Kada kažemo bdquosredstvo i sakrivanjerdquomisl imo na algoritme Postavl ja se pitanje zašto je danas kriptologi ja sigurni ja negočetrdesetih i pedesetih godina prošlog veka

Danas uprkos tome što su algoritmi za kriptografi ju otvorenog kocircda tajnostinformaci ja je na višem nivou nego što je to bi lo dok je algoritam bio strogopoverl j iv Tajnost tajnih podataka se ne zasniva na tajnosti a lgoritama koj i generišutaj isti bdquotajni izlazrdquo (eng cipher text) nego u nemogućnosti matematičke inverznefunkci je koja bi šifrovan tekst otvori la Ovde se vidi da je svrha strukture otvorenogkocircda kao jednog od značajnih delova današnje kriptologi je ona koja ga činisigurnim i svima dostupnim

Sada kada se sa ove distance osvrnemo na Drugi svetski rat možemo videti kol ikosmo bi l i bl izu apokal ipse Naime Albert Ajnštajn je već 1944 godine imao urukama recept za nuklearnu bombu Šenon je mogao već u to vreme da nampredoči 100 siguran šifrat (tzv Hitlerovu super šifru) a l i ipak sreća nas jeposluži la da čovečanstvo tada ni je bi lo spremno da upotrebi svu raspoloživutehnologi ju

Albert Ajnštajn bdquoČetvrti svetski rat će se voditi tol jagamardquo

Zaboravl jeni heroj i Blečl i parka iako su odigral i važnu ulogu u pobedi saveznika usvetskom ratu postal i su žrtve bdquotop secretrdquo doktrine potpuno su zaboravl jeni inestal i su iz istori je

Zakl jučak ovog članka je da je ideologi ja otvorenog kocircda sasvim sigurno tu da nampomogne i da otvori vrata ka većoj sigurnosti novim idejama i kval itetu sameinfrastrukture sistema koju svi zajedno razvi jamo

Internet mreže i komunikacije

45

Broj 33

Autor Nikola Hardi

NabrajanjaBez brojeva

Za nabrajanje pojmova u Bimeru (eng Beamer) koristi se okruženje itemize aunutar tog okruženja možemo da dodajemo nove stavke pomoću item Primerizgleda ovako

beginitemizeitem Stavka Aitem Stavka Bitem Stavka C

enditemize

Sa brojevima

Postoje situaci je kada uz nabrajanje treba da stoje i redni brojevi - za to se koristienumerate okruženje a nove stavke se takođe dodaju pomoću item

beginenumerateitem Redni broj 1item Redni broj 2item Redni broj 3

endenumerate

prezentaci ja

Beamer (4 deo)

Sam svoj majstor

46

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

DefinicijeTreća situaci ja je nabrajanje parova termin - definici ja U tom slučaju se koristiokruženje description Već možete da pretpostavite kako se dodaju nove stavke

Primer

begindescriptionitem[Pojam A] Definicija izmišljenog pojma Aitem[Pojam B] Definicija izmišljenog pojma Bitem[Pojam C] Definicija izmišljenog pojma C

enddescription

Ostala podešavanja i zanimljivostiSva prethodna okruženja mogu da budu ugneždena jedno unutar drugog dotrećeg nivoa Treba biti pažl j iv jer sla jdovi vrlo lako mogu da postanu nečitl j ivi Osim toga moguće je izabrati i format oznake i l i rednih brojeva - na primer ovako

beginenumerate[I]beginenumarate[a)]

Takođe moguće je upravl jati pojavl j ivanjem pojedinih stavki na slajdovima Drugimrečima možemo da odredimo da se nabrajanja postepeno otkrivaju tako što ćemouz stavku dodati lt1-gt odnosno broj od kojeg slajda žel imo da se ta stavkapojavl ju je Tada će jedno nabrajanje biti bdquorazvučenordquo na više slajdovaJednostavni ja mogućnost je da u zaglavl je okruženja dodamo +- što znači dažel imo da se svakim slajdom otkriva po jedna nova stavka iz nabrajanja Znak bdquo-rdquo uoba primera znači da žel imo da se stavka pojavi na sledećem slajdu i da ostane

Sam svoj majstor

47

Broj 33

prisutna Možemo da izostavimo znak bdquo-rdquo i tada će stavka biti prisutna samo najednom slajdu i l i da napišemo raspon slajdova u koj ima žel imo da ta stavka budeprisutna

Rad sa kolonama i blokovimaDo sada su svi primeri podrazumeval i da je sadržaj napisan preko cele širineslajda al i Bimer (eng Beamer) ima i jednostavne mehanizme za razmeštanjesadržaja po kolonama Za rad sa kolonama se koristi okruženje columns unutarkojeg možemo da dodajemo nove kolone pomoću columnširina Sadržaj jemoguće potom pisati i van okruženja sa kolonama

U paru sa kolonama često se sreće i okruženje block koje se parametrizujenaslovom Primerom su i lustrovani i okruženje column i okruženje block

beginframebegincolumns

column05textwidthbeginblockNaslov levog blokaSadržaj u prvoj (levoj) koloni endblock

column05textwidthbeginblockNaslov desnog blokaSadržaj u drugoj (desnoj) koloni

endblockendcolumns

beginblockVan kolona

Beamer

48

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Tekst koji se nalazi ispod kolonaendblock

endframe

TabeleIako se u radu sa prezentaci jama sadržaj najčešće može uredno rasporeditipomoću kolona i nabrajanja nekada to ni je dovol jno jer su tabele pravi formatBimer podržava standardno Lateh (LaTeX) okruženje za rad sa tabelamaOkruženje za rad sa tabelama se zove tabular Pri kreiranju nove tabele moguće jepodesiti koje kolone će biti razdvojene l ini jom i da l i će nj ihov sadržaj biti centrirani l i uz levu i l i uz desnu ivicu Dodavanje novog reda se jednostavno radidodavanjem hline Lateh pruža zaista jako fleksibi lan rad sa tabelama i sigurno ćedoskočiti svim mogućim i nemogućim zamisl ima Potražite bi lo koje Lateh uputstvoza rad sa tabelama i radiće i sa Bimerom

beginframebegintabular | c | c | c | c |

hlineamp Ponedeljak amp Utorak amp Sreda hline

1 amp 16 amp 32 amp 64 hline2 amp 16 amp 128 amp 1024 hline3 amp 16 amp 512 amp 4096 hline

endtabularendframe

Sam svoj majstor

49

Broj 33

Beamer

Teoreme i istaknut tekstU nastavi su česta izlaganja teorema nj ihovih dokaza i primera U Bimer jeugrađena podrška za elegantno predstavl janje ove trojke Mehanizam takođepodržava postepeno otkrivanje sadržaja sla jda tako da slušaocima ne bude odmahotkriven dokaz teoreme Mehanizam za postepeno otkrivanje se kao i kodnabrajanja postiže pomoću bdquolt1-gtrdquo konstrukci je Evo kako to izgleda

beginframeframetitlePrimer teoreme

begintheoremlt1-gt Teorema kaže da su beamer prezentacijezanimljive

endtheorem

beginexamplelt2-gt Ovaj kod kreira slajd beamer prezentacijeendexample

beginprooflt3-gt Čestitamo stigli ste do kraja serijala o pravljenju beamer prezentacija

endproofendframe

50

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Za krajOvim člankom završavamo seri ja l o Bimeru Nadamo se da smo uspel i da vaszainteresujemo za ovu vrlo korisnu klasu Lateha Trudi l i smo se da vamprezentujemo najvažni je delove Bimera koje ćete najčešće koristiti pri l ikomkreiranja svoj ih prezentaci ja

Napominjemo još jednom da je Bimer samo jedna od klasa Lateha što znači da i zaBimer važi sve ono što ste već mogl i da pročitate u ovom časopisu kad smo pisal iseri ja l bdquoUvod u LaTeXrdquo (LiBRE brojevi 17 do 21) Štaviše ovaj seri ja l o Bimeru jebio nastavak upravo tog seri ja la U ovom seri ja lu nismo pisal i o samomformatiranju teksta u prezentaci jama jer se podrazumeva da važe ista pravi la kao iu Latehu a o tome smo pisal i u prethodnom seri ja lu

Hvala vam što ste prati l i ovaj seri ja l i žel imo vam puno uspeha u kreiranju Bimerprezentaci ja

Sam svoj majstor

51

Broj 33

Autor Nenad Marjanović

Kada smo se upoznal i sa podešavanj ima sistema i umrežavanjem vreme je za našprvi Biglbon Blek (BBB - eng BeagleBone Black) projekat Svakom od nas će ovajizazov dati razl ičite ideje a jedna od nj ih može biti i zaštita privatnosti internetkorisnika Nažalost u Srbi j i ne postoj i ni jedan izlazni tor server (eng node) i to jepomalo tužna sl ika s obzirom da govorimo o populaci j i od sedam mil ionastanovnika Al i ovu sl iku možemo promeniti udruženim snagama i za početakkreiranjem Tor transfer i izlaznog servera U ovde prikazanom grafikonufokusiraćemo se na bdquoRauter Brdquo tačku odnosno transfer server konfiguraci ju

BeagleBone Black Rev C

Vodič od prvog dana (3 deo) ndashBeagleBone Black kao Tor relej

Hardver

52

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Tor predstavl ja mrežu servera koj i se povezuju radi bol je enkripci je podataka izaštite IP adrese korisnika Naš ci l j je da danas postanemo deo ovog predivnogprojekta i da se nađemo na svetskoj karti Tor servera

Brzina interneta i zakonske regulativePotrebno je imati na umu nekol iko bitnih stvari

1 Naš server = naša odgovornost2 Obavezno naznačite da ste vi administrator a ne korisnik istog servera3 Da posedujete internet brzinu od 2 Mbs

Ako ispunjavamo tri navedena pravi la i odgovornosti možemo se posvetitiadministrativnim poslovima

Instalacija i podešavanjaU ovom primeru koristimo Debi jan Vizi (eng Wheezy) odnosno Debi jan 7 verzi juna našem BBB uređaju Vi možete testirati i druge Linuks platforme Prvododajemo izvornu bibl ioteku u etcaptsourceslist faj l pokretanjem sledećekomande u terminalu

echo deb httpdebtorprojectorgtorprojectorg wheezy main gt etcaptsourceslistdtorlist

Zatim dodajemo izvorni kl juč vršimo ažuriranje sistema i instal iramo tor i tor-arm(Tor monitoring sistem)

gpg --keyserver keysgnupgnet --recv 886DDD89gpg --export A3C4F0F979CAA22CDBA8F512EE8CBC9E886DDD89 | sudo apt-keyadd -apt-get updateapt-get install debtorprojectorg-keyring -yapt-get install tor tor-arm egrep screen -y

Ovim smo uspešno završi l i instalaci ju Tor servera i sistema za monitoring odnosnonadgledanja našeg Tor servera Sledećom komandom radimo na podešavanj imaTor servera koja se nalaze u etctortorrc faj lu Obratite pažnju i izvršite potrebne

Hardver

53

Broj 33

izmenu u pol j ima IP adresa (eng Address) nadimka (eng Nickname) i kontaktpodataka (eng ContactInfo) pre pokretanja ove komande Kopiramo i pokrećemokomandu u celosti u terminalu

egrep -v ^(|$) etctortorrcORPort 443Address 19216811Nickname LibreTorRelayRelayBandwidthRate 100 KBRelayBandwidthBurst 120 KBContactInfo ltvi at gmail dot comgt irPort 8080DirPortFrontPage etctortorhtmlExitPolicy reject

Detal je o svim vrednostima nećemo iznositi u ovom broju LiBRE časopisa al ićemo o nj ima pisati u sledećem u kome ćemo pričati o zaštiti Tor servera imogućnosti podešavanja određenih izlaznih pravi la (eng ExitPolicy)

Nakon ovoga možemo primetiti da se u folderu etctor ne nalazi torhtml faj l Ovaj faj l ni je od vel ikog značaja i možete ga l ično napraviti i l i preuzeti jednu kopi ju- naprimer sa sledeće lokaci je

cp usrsharedoctortorhtml etctortorhtml

Opcije i Tor Arm monitoringDa bismo ispravno koristi l i Tor Arm potrebno je urediti još jednom etctortorrcfaj l i restartovati servis

echo -e ldquoDisableDebuggerAttachment 0n AvoidDiskWritesrdquo gtgt etctortorrcsudo service tor reload

Ukol iko žel ite koristiti Tor Arm za nadgledanje aktivnosti na serveru pokreniteprogram screen kl iknite na bdquoEnterrdquo i kucajte sudo -u debian-tor arm Naekranu ćete imati sl ičan prikaz

BeagleBone Black

54

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Hardver

55

Broj 33

Da bismo napusti l i screen program koristimo Ctrl + a + d i na taj način kada sesledeći put pri javimo na server kucamo samo screen -r u terminalu - i naći ćemose ponovo na čuvenom Tor Arm monitoring ekranu

Nakon svake promene konfiguracionih faj lova ako slučajno nismo nešto podesi l ikako treba restartujemo servise

U sledećem broju časopisa govorićemo o minimalnim podešavanj ima ikonfigurisanju izlaznog Tor servera (eng Tor Exit Node) opci jama sigurnosti isl ičnim detal j ima u vezi sa našim prvim projektom Do čitanja u sledećem broju

BeagleBone Black

LUGoNS BarCamp 4subota 7 mart 2015 godine

Četvrti LUGoNS-ov Barkemp (BarCamp) održaće se u Novom Sadu usubotu 7 marta 2015 godine na Fakultetu tehničkih nauka sa početkomu 12 časova

Ulaz je slobodan

Poziv za predaju radovaLUGoNS poziva sve zainteresovane da pošal ju svoje radove (predavanjaprezentaci je radionice i diskusi je) do 28 februara 2015 godine

Oblasti iz koj ih možete da pri javite vaše radove su

bull Slobodan softverbull Zaniml j iv hardverbull Hakerski zakonibull Sigurnosne noćne morebull Anonimnost i privatnost na internetubull Duboki veb (eng Deep Web)bull Soci ja lne mrežebull Soci ja lni inženjeringbull Hakovanje mobi lnih uređajabull Internet u oblaku (eng Clouds) ndash hakovanje razbi janje i neočekivano korišćenjebull DPI (eng deep packet inspection)bull Mreža i mrežna neutralnost ndash vlasništvo cenzura nadmudrivanje i pol itika bdquodefaktordquo standarda

bull Programiranje i programski jezici

Nemojte se ustručavati i slobodno nam se javite ako imate rad na gore navedenei l i sl ične teme koj i smatrate interesantnim

Stranica za predaju radova nalazi se na https events lugonsorgp=1658

Page 17: LiBRE 33 Lat

17

Broj 33

InstalacijarEFInd postoj i kao deb i kao rpm paket al i postoj i i zapakovan kao zip arhivaZahval ju jući tome paket je moguće instal irati upotrebom dpkg komande nadistribuci jama baziranim na Debi janu kao i upotrebom rpm komande nadistribuci jama koje koriste taj način pakovanja paketa Za Ubuntu postoj i i PPArepozitori jum pa rEFInd može biti instal iran na sledeći način

sudo apt-add-repository pparodsmithrefindsudo apt-get updatesudo apt-get install refind

Nezavisno od toga koj i način od gore opisanih koristite rEFInd će automatski bitiprebačen na ESP i biti postavl jen kao podrazumevani upravnik

KonfiguracijarEFInd bi trebalo da vam pruži zadovol javajuću funkcionalnost bez dodatnekonfiguraci je posle instalacionog procesa On će automatski detektovati loudereoperativnih sistema korišćenjem pretrage po svim partici jama koje prepozna Uslučaju da ste napredni j i korisnik i da žel ite da modifikujete ponašanje rEFInda tomožete uraditi izmenom njegove konfiguracione datoteke Postoj i g lobalnakonfiguraci ja i konfiguraci ja za svaki sistem posebno Ovaj tekst bi postao previšedugačak kada bismo ulazi l i u detal je same konfiguraci je pa vam zatopreporučujemo ako imate potrebu za dodatnom konfiguraci jom da posetitedokumentaci ju projekta i l i ako imate neke nedoumice da kontaktirate s namapreko naše e-pošte

Za krajŽelel i bismo da ovaj tekst zakl jučimo ocenom da je ovaj projekat dosta zaniml j ivda pruža zadovol javajuću funkcionalnost i da omogućava korisnicima koj i koristeovaj sistem pokretanja lako pokretanje svoj ih operativnih sistema Još jednomžel imo da vam skrenemo pažnju da nam se obratite i ukažete ako smo nešto važnopropusti l i da pomenemo i l i ako nam se negde potkrala greška

Korisni l ink http wwwrodsbookscomrefind

rEFInd

18

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Autor Nikola Hardi

Opšte je poznato da su računari dobri u radu sa brojevima Međutim vremenom suse i potrebe korisnika i alati za programiranje računara razvi ja l i i rad sa drugači j imtipovima podataka je postao uobičajen i znatno jednostavni j i nego rani je Svi smoimal i pri l iku da radimo sa programima za obradu fotografi ja video materi ja la i l izvučnih zapisa Multimedi ja je ipak tema koja prevazi lazi jedan uvodni kurs o C-ual i do kraja ovog seri ja la ćemo se dotaći i tih tema Za početak osvrnućemo se narad sa tekstualnim podacima na C način

Stringovi na C načinDefinici ja tekstualnog podatka u sferi računarstva se uglavnom svodi na to da jetekst niz karaktera a karakteri su znakovni simbol i Iako imamo mogućnost daradimo sa tekstom i l i multimedi jom računari ipak razumeju samo brojeve pamoramo tako da im predstavimo i tekst Postoje razni standardi kako se pojedinikarakteri predstavl ja ju u memori j i računara između ostalog najpoznati j i su ASCIIEBCDIC UTF i td EBCDIC je standard koj i je prisutan u Eplovom (eng Apple) svetu iviše nema tol iko važnu ulogu ASCII je standard koj i je vrlo prisutan i danas UTF jenastao kao proširenje ASCII standarda javl ja se u više vari janti i uvodi podršku zapisma razl ičita od abecede (kinesko japansko ćiri l ica arapsko i mnoga druga)

Važno je napomenuti da je originalni ASCII standard propisivao 7 bitova za jedankarakter što je dalo prostora za 128 karaktera Među tim karakterima se nalazecifre mala i vel ika slova engleskog alfabeta i niz kontrolnih karaktera Kontrolnikarakteri su oznake za novi red prazno mesto tabulator upravl janje štampačima(vraćanje glave štampača na početak) rad sa terminal ima (alarm i l i obaveštenje

Kako da

Uvod u programski jezik CRad sa stringovima (9 deo)

19

Broj 33

da se nešto dogodi lo) ASCII standard je proširen na 8 bitova odnosno ceo jedanbajt i sada podržava 256 karaktera Potražite na internetu termin bdquoASCII tabelardquo dabiste stekl i uvid u to kako izgleda tzv tabela ASCII karaktera

Rad sa pojedinačnim znakovima ne obećava mnogo Postoj i realna potreba zaradom sa rečima rečenicama l ini jama teksta itd Podaci koj i se sastoje od više odjednog karaktera se u domaćoj l i teraturi nazivaju znakovnim niskama madaodomaćen je i naziv bdquostringrdquo koj i je i mnogo češće u upotrebi U programskomjeziku C se stringovi predstavl ja ju običnim nizovima karaktera (char niz[]) a krajteksta se označava NULL karakterom odnosno speci ja lnim znakom 0 či jabrojevna predstava je pogađate nula Ovakva predstava tekstualnih podatakanosi sa sobom i pojedine kompl ikaci je Gotovo svi savremeni jezici poznaju tipstringa dok su u C-u stringovi ipak samo obični nizovi

Da se podsetimo nizovi u C-u su zapravo pokazivači na deo u memori j i Kadapokušamo da pristupimo jednom elementu niza tada se vrši operaci jabdquodereferenciranjardquo sa zadatim odstupanjem Sledi nekol iko primera koj i i lustrujurad sa nizovima na primeru nizova karaktera

char niz1[] = zdravoniz1[0] = Z

char niz2[5]niz2[0] = 0niz2[1] = kniz2[2] = 0

Pri deklaraci j i niza 1 ni je zadata dužina zato što je u jednom izrazu zadata iinici ja l izaci ja niza koja glasi ldquozdravordquo Prevodi lac može sam da zakl juči kol ikomemori je je potrebno

U drugom primeru je kreiran niz karaktera dužine 5 Međutim popunjena su samoprva tri mesta Primećujete razl iku između prvog i trećeg elementa Prvi je cifra 0(uokviren je navodnicima) a treći je brojčana vrednost 0 koja označava krajstringa

Može se primetiti još jedna razl ika u data dva primera U prvom primeru sukorišćeni dvostruki navodnici dok su u drugom korišćeni jednostruki Razlog za to

Uvod u programski jezik C

20

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

je što se znakovni nizovi koj i su uokvireni dvostrukim navodnicima smatrajustringovima i podrazumevano im se dodaje bdquoterminatorrdquo odnosno znak NULL koj ioznačava kraj stringa Jednostruki navodnici se iskl jučivo koriste za predstavl janjepojedinačnih karaktera Ovo znači da zapisi ldquoardquo i a nisu jednaki Prvi zapis jedužine 2 jer ima i znak NULL koj im je završen

Ispisivanje i učitavanje stringovaPre nego što nastavimo dal je biće objašnjen jednostavan način za ispisivanje iučitavanje stringova pomoću standardnog ulazaizlaza Da se podsetimobibl ioteka za standardni ulazizlaz (ispis podataka u konzol i odnosno terminalu) jestdioh Ukol iko se koristi formatirani ispis potrebno je funkci jama printf() iscanf() proslediti format string koj i sadrži speci ja lan znak s čime je označenoda žel imo da ispišemo znakovni niz sve do NULL karaktera Drugi način jeupotrebom funkci ja puts() gets() i getline() iz bibl ioteke stringh Sledi primer

include ltstdiohgt include ltstringhgt int main()

char niz1[] = Zdravo svete

printf(sn niz1)

scanf(s niz1)puts(niz1)

return 0

Može se primetiti da je u slučaju funkci je printf() potrebno naglasiti speci ja lnimkontrolnim karakterom n da nakon ispisa treba preći u novi red Funkci ja puts() topodrazumevano radi

Za ove i sve druge funkci je dodatnu pomoć je moguće pronaći u Linuksovim manstranicama u odel jku 3 koj i je posvećen standardnim bibl iotekama Recimo mangetline sadrži detal jno uputstvo o funkci j i getline()

Kako da

21

Broj 33

Kopiranje stringovaKao što je u prethodnom odel jku napomenuto stringovi su u C-u samo običninizovi To znači da sledeći kod verovatno neće uraditi ono šta bi bi lo očekivano

niz1 = niz2

Ovime smo pokazivaču niz1 bdquorekl irdquo da pokazuje tamo gde i pokazivač niz2 Efektivno oni sad pokazuju na isti tekst međutim ako izmenimo niz1 to će seodraziti i na niz2 a važi i obrnuto Ovime smo dobi l i samo dva pokazivača na istideo memori je a uglavnom to ni je bio ci l j

Drugi način kako bismo sadržaj drugog niza mogl i da kopiramo u prvi niz je petl jakojom bismo kopiral i element po element Pošto je operaci ja kopiranja stringovavrlo često potrebna postoj i standardna bibl ioteka za rad sa stringovima koja sezove stringh a funkci ja za kopiranje stringova je strcpy()

strcpy(niz1 niz2)

Dati primer kopira sadržaj niza 2 u niz 1 Kopira se element po element sve dok seu nizu 2 ne naiđe na NULL karakter Ovakvo kopiranje (element po element) seinače u stranoj l i teraturi naziva i bdquodeep copyrdquo i vrlo često se sreće u radu sastrukturama podataka gde je potrebno obići celu strukturu podataka i svakielement kopirati a strukturu opet izgraditi u drugom delu memori je

Zaniml j ivo je što je kopiranje stringova moguće pojednostaviti ukol iko definišemonovi tip podatka kao strukturu koja sadrži niz karaktera i potom izvršimo kopiranjeOvo je trik koj i se uglavnom ne koristi u praksi i spomenut je samo kaozaniml j ivost

include ltstringhgt struct str char niz[50]

int main()

struct str s1struct str s2

Uvod u programski jezik C

22

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

strcpy(s1niz zdravo)s2 = s1

s2niz[0] = Z

puts(s1niz)puts(s2niz)

return 0

Kreirana je struktura str koja sadrži pol je niza karaktera pod nazivom niz Pozivomfunkci je strcpy() kopiramo string ldquozdravordquo u s1 čime smo bdquonapuni l irdquo sadržajobjekta s1 Potom je izvršena redovna dodela čime je sadržaj objekta s1 kopiran us2 Zatim je izmenjen samo prvi karakter objekta s2 i oba stringa su ispisanaPrimećujete da su kopirani svi znakovi a da je izmenjen samo drugi objekatZaniml j iv trik

Poređenje spajanje i pretraga stringovaDruga vrlo česta situaci ja je poređenje dva stringa Ukol iko bi poređenje bi loizvršeno upotrebom redovnog operatora za poređenje == tada bi u stvari bi lepoređene samo adrese na koje pokazuju pokazivači tih stringova jer da sepodsetimo stringovi su u C-u samo obični nizovi Ispravan način za poređenje dvastringa je pozivanjem funkci je strcmp() či ja je povratna vrednost 0 ukol iko su jojprosleđeni stringovi sa jednakim sadržajem

include ltstringhgt int main()

char niz1[] = zdravochar niz2[] = zdravo

if( strcmp(niz1 niz2) == 0)puts(Stringovi su jednaki)

elseputs(Stringovi nisu jednaki)

return 0

Kako da

23

Broj 33

Funkci ja strcmp() poredi svaki element prosleđenih nizova pojedinačno a dobraje vežba implementiranje nove funkci je strcmp() koja će unutar petl je da porediodgovarajuće elemente prosleđenih nizova i potom vratiti rezultat 0 ukol iko su svielementi jednaki Potrebno je pripaziti na situaci ju kada su stringovi razl ičitihdužina

U svetu računara spajanje dva sadržaja se zove konkatenaci ja Odatle i nazivfunkci je za spajanje dva stringa strcat() Važno je uveriti se da je string u koj i sedodaje sadržaj dovol jno vel ik da ga prihvati inače može da dođe do nežel jenogprepisivanja u memori j i uništavanja drugih podataka i neispravnog ponašanjaprograma

Pretraga unutar stringa se može obaviti funkci jom strstr() Ova funkci ja kaoparametre očekuje pokazivač na niz karaktera (string) u kojem je potrebno pronaćistring koj i je prosleđen kao drugi parametar Povratna vrednost je pokazivač nadeo memori je gde se žel jeni string prvi put pojavio

Sledi malo opširni j i primer koj i i lustruje spajanje pretragu i kopiranje stringova

include ltstringhgt int main()

char niz_a[50] = LiBRE je char niz_b[] = najbolji casopischar niz_c[] = e-magazin

strcat(niz_a niz_b)puts(niz_a)

char cilj = strstr(niz_a casopis)strcpy(cilj niz_c)

puts(niz_a)

return 0

Uvod u programski jezik C

24

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Pretvaranje tipova podataka u stringove ipretvaranje iz stringovaPretvaranje podataka iz jednog tipa u drugi i l i kastovanje (eng type casting) se zavećinu tipova vrši jednostavno pisanjem tipa u zagradama na primer (int)523 Stringovi su i po ovom pitanju drugači j i Postavl ja se pitanje šta pretvoriti ucelobrojni tip - da l i adresu na koju pokazuje pokazivač niza koj i predstavl ja stringPrvi element Šta ako taj string ni je broj Predstavićemo rešenje za konverzi jubrojeva u stringove i obrnuto

Ispis podataka na ekranu se takođe može smatrati konverzi jom Broj sa pokretnimzarezom je u memori j i prikazan na pomalo čudan način a pozivom funkci jeprintf() kada je kao format zadat f na ekranu ćemo dobiti razuml j iv niz znakovaSl ičan rezultat možemo dobiti funkci jom sprintf() a jedina razl ika u odnosu naprintf() je ta što sprintf() kao prvi argument očekuje pokazivač na string dok sudrugi (format string) i treći (argumenti koj i se povezuju sa formatnim stringom)sl ični kao kod funkci je printf()

Kod pretvaranja stringova u brojevne tipove može poslužiti funkci ja sscanf() kojase ponaša sl ično kao funkci ja scanf() s tim što je prvi argument adresa(pokazivač na string) koju žel imo da skeniramo u nadi da će se poklopiti saformalnim stringom koj i je drugi argument a rezultati će biti sačuvani u adresamakoje su prosleđene kao 3 4 i ostal i parametri Drugi način za pretvaranje stringovau celobrojne brojeve i brojeve sa pokretnim zarezom su funkci je atoi() i atof()

Funkci je koje koriste formatni string su česte u jeziku C i zaslužuju posebnu pažnjumeđutim to je priča za poseban članak U ovu klasu funkci ja spadaju recimo ifunkci je za rad sa datotekama

BezbednostRad sa stringovima može da bude izuzetno opasna stvar po pitanju bezbednostiprograma Ukol iko se niz karaktera ne završava NULL karakterom svašta može dapođe po zlu pri pozivu funkci ja kao što su strcpy() strcmp() i sl ične Cela klasatih funkci ja se oslanja na postojanje znaka koj i označava kraj stringa Kada stringni je propisno završen tada te funkci je mogu da zalutaju u deo memori je vanstringa i svašta može da pođe po zlu Ovakav tip napada se inače zoveprekoračenje bafera (eng buffer overflow) Preporučen način kako da izbegnete

Kako da

25

Broj 33

Pregled popularnosti GNULinuxBSDdistribuci ja za mesec februar

Distrowatch

Pad ltPorast gtIsti rejting =(Korišćeni podaci sa Distrovoča)

12345678910111213141516171819202122232425

MintUbuntuDebianopenSUSEelementaryMageiaFedoraManjaroCentOSLXLEArchBodhiAndroid x86Kal iPCLinuxOSPuppyRobol inuxLubuntuQ4OSBlack LabNetrunnerSimpl icityEvolveZorin4MLinux

2919gt1778gt1701gt1323gt1204gt1174gt1166gt1028lt1020gt965gt957gt907gt900lt760gt742lt732gt695gt670gt663gt655gt652gt629gt607gt583gt517=

takve nepri jatne situaci je pri radu sastringovima je da koristite verzi jefunkci ja koje su ograničenemaksimalnom dužinom stringa kaošto su strncpy() strncat() strncmp() i td Sve te funkci je kaotreći parametar zahtevaju broj koj iodređuje maksimalnu očekivanudužinu stringa Još jedna vrlo korisnafunkci ja je strlen() či j i zadatak je daodredi dužinu stringa Budite pažl j ivi ovo je prvo mesto gde se tražebezbednosni propusti u programimaNe verujte podacima koj i spol ja ulazeu vaš program a pogotovo kada je rečo stringovima

Uvod u programski jezik C

26

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Autor Dejan Maglov

Projekti slobodnog softvera obično počinju kao projekti pojedinca i l i male grupeprogramera a koj i rade na razvoju softvera či j i je ci l j da zadovol j i neke od nj ihovihl ičnih potreba Projekat će se smatrati uspešnim ukol iko se šira zajednicazainteresuje za njega nakon što prepozna korisnost softvera ne samo za pojedincekoj i su započel i projekat već i za širu zajednicu Kada je u pitanju slobodni softvervremenom je postala stalna praksa da se zajednica umeša u razvoj projekataDobri projekti sami privlače zajednicu l judi koj i su zainteresovani za nj ih i ona uvećini slučajeva preuzima na sebe testiranje pobol jšanje funkcionalnosti održavanje i tehničku podršku projekta

Zajednice slobodnog softvera mogu da se okupe oko projekta slobodnog softverapo teritori ja lnom principu i l i da nastanu kombinaci jom ovih principa

Primeri

bull LiBRE projekat okupl ja zajednicu oko projekta bez teritori ja lnog ograničenjabull LUGoNS (Linux User Group of Novi Sad) je zajednica korisnika Linuksa poteritori ja lnom principu bez obzira na konkretan projekat

bull Ubuntu-rs zajednica koja je kombinaci ja okupl janja zajednice oko konkretnogprojekta (Ubuntu) i teritori ja lnog principa koj i se ograničava na teritori ju Srbi je

Ova sinergi ja projekata i korisnika slobodnog softvera ima više prednosti i zakorisnike i za projekat Projekat se na ovaj način brže razvi ja dobi ja na

U potrazi za idealnom distribucijom

Socijalni kriterijumi za izbor idealnedistribucije (6 deo)

Oslobađanje

27

Broj 33

funkcionalnosti greške se brzo ispravl ja ju i td Korisnici dobi ja ju osećaj dapripadaju grupi druže se sa istomišl jenicima učestvuju u promoci j i kval itetnihpojedinaca itd

Dve najvažni je uloge lokalnih zajednica za GNULinuks distribuci je su

1 pružanje tehničke podrške i edukaci je na maternjem jeziku2 rad na lokal izaci j i i pri lagođavanje distribuci je lokalnim potrebama

Informaci ja da postoje lokalne zajednice slobodnog softvera je od naročitogznačaja za početnike i korisnike koj i nedovol jno dobro znaju strane jezike(naročito engleski jezik) Ako izuzmemo komerci ja lne projekte otvorenog koda(Red Het SUSE) ne postoje zvanične škole i kursevi za slobodni softver Zaedukaci ju početnika je uglavnom zadužena zajednica a jasno je da je učenje namaternjem jeziku uvek lakše nego na bi lo kom drugom stranom ma kol ikodobro ga poznajete

Forumi i viki stranice lokalnih zajednica su prave bibl ioteke u koj ima korisnicimogu da nađu većinu odgovora na svoja pitanja a za sva ostala tu su forumi iIRC kanal i zajednica na koj ima uvek ima nekoga i koj i imaju već gotova rešenjaza vel iki broj problema

U potrazi za idealnom distribucijom

28

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Lokalne zajednice kao kriterijum za izbor idealnedistribucijePočetnicima i korisnicima koj i ne vladaju dobro engleskim jezikom toplopreporučujemo da biraju GNULinuks distribuci je koje imaju aktivnu lokalnuzajednicu Ovladavanje novim operativnim sistemom je mnogo lakše ukol iko vambdquoleđa čuvardquo lokalna zajednica na koju se uvek možete osloniti

Već smo spomenul i da su popularni je GNULinuks distribuci je namenjenepočetnicima Slučaj je isti i sa lokalnim zajednicama okupl jenim oko nj ih Ovomeđutim ne znači da je kval itet usluga koje nude manje popularne lokalnezajednice okupl jene oko distribuci ja namenjenih napredni j im korisnicima loši j i Manje popularne distribuci je okupl ja ju manje l judi a l i zato oni poseduju većeznanje Iskustvo sa zajednicama okupl jenim oko slobodnog softvera je uglavnompozitivno i ukazuje na to da kval itet usluga koje one nude korisniku ni je uslovl jenpopularnošću i masovnošću zajednice nego iskl jučivo njenom (ne)aktivnošću

U svakom slučaju dosadašnj i saveti za izbor idealne distribuci je važe i dal jeSoci ja lni aspekt slobodnog softvera je samo dodatni faktor koj i vam može pomoćipri donošenju odluke kada se dvoumite između nekol iko mogućih rešenja

Još uvek ne postoj i na jednom mestu potpuni i ažurirani spisak svih aktivnihsrpskih zajednica Nešto najbl iže tome može da se nađe na adresihttps pulsslobodewordpresscom Za informaci je o nekim drugim lokalnimzajednicama koje možda postoje al i nisu na ovom spisku moraćete sami dapretražite internet

Lokalizacija kao kriterijum za izborZa lokal izaci ju GNULinuks distribuci ja i GNU programa odgovorni su pojedinci ilokalne zajednice Sasvim sol idnu srpsku lokal izaci ju mogu imati i projekti koj iuopšte nemaju svoju lokalnu zajednicu a isto tako lošu lokal izaci ju mogu imati iprojekti sa dobrom lokalnom zajednicom Sve je stvar prioriteta zajednica iaktivnosti pojedinaca

Pravu i kontrol isanu lokal izaci ju može imati samo lokalni projekat Ovakvihprojekata u Srbi j i ima malo i teško se probi ja ju čak i u lokalu u konkurenci j isvetskih projekata Istina je da mnoge veće GNULinuks distribuci je imaju srpskulokal izaci

Oslobađanje

29

Broj 33

ju u ponudi pa se možda sl ični lokalni projekti koj i su usmereni samo na striktnulokal izaci ju smatraju nepotrebnima Uzvodna lokal izaci ja u slučaju Srbi je vrlo čestobude veoma loše čak nakaradno sprovedena Jedna polovina programa jelokal izovana srpskom ćiri l icom a druga latinicom Ako postoj i još delova sistemakoj i uopšte ni je lokal izovan onda se pojavl ju ju i delovi programa koj i su naengleskom Zato ćemo se vratiti na prvu rečenicu ovog pasusa i ponovo utvrditi dasamo lokalni projekat može potpuno kontrol isati pravu srpsku lokal izaci ju

U Srbi j i za sada imamo dva aktivna projekta GNULinuks distribuci je ndash TriOS(http triosrs) i Serbian (http wwwdebian-srbi ja iz rspserbianhtml) Obaprojekta su mlada i imaju svoj ih prednosti i mana Kome treba lokal izovanoperativni sistem može da proba jedan od ova dva projekta

U potrazi za idealnom distribucijom

30

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Iako ove dve domaće distribuci je nisu baš naj idealni je interesantno je probati ih iuporediti sa drugim distribuci jama

Za kraj serijalaNamera nam je bi la da kroz ovaj seri ja l o kriteri jumima pri izboru idealnedistribuci je definišemo većinu kriteri juma pri izboru i pokažemo zašto je teškoodgovoriti na jednostavno pitanje bdquoKoju mi distribuci ju preporučujeterdquo

Ni na samom kraju nismo dal i konkretan odgovor na pitanje koja je idealnaGNULinuks distribuci ja Suviše je subjektivnih ocena da bi se mogao datikonkretan odgovor Smatramo da je jako teško napisati neki algoritam izbora pokriteri jumima koje smo identifikoval i i definisal i a možda je čak i nemoguće poštose izlazi stalno menjaju Izlazi iz tog algoritma su GNULinuks distribuci je koj ih izdana u dan ima sve više a i one stare se stalno menjaju

Sam seri ja l bdquoU potrazi za idealnom distribuci jomrdquo neće biti završen samo zato štose više neće baviti kriteri jumima pri izboru nego će pokušati da predstavl jaGNULinuks distribuci je koje su po nečemu bdquoidealnerdquo

Oslobađanje

31

Broj 33

ORM

Autor Dejan Čugal j

Object relation mapping (ORM)

ORM (eng Object RelationMapping) je način postizanja traj-nosti (eng persistence) objekataunutar relacionih baza podatakaModel deluje kao posrednik nalogičkom delu apl ikaci je Automat-ski presl ikava podatke iz objekata ubazu i nazad na zahtev apl ikaci jeDa bismo objasni l i kako ovo sveradi moramo da vam predstavimoORM frejmvork (eng framework)programa otvorenog koda -Hajbernejt (eng Hibernate -http hibernateorgorm)

Šta je ORMUkratko ORM je automatizovano transparentno presl ikavanje objekatakorišćenjem metapodataka koj i opisuju mapiranje veze između objekta i baze

ORM (2 deo)

Slobodni profesionalac

32

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

podataka u apl ikaci jama koje su napisane u objektno ori jentisanim programskimjezicima Apl ikaci ja komunicira sa ORM-om preko njegovog vlastitog API-ja (engapplication programming interface) i određenih objekata Ova komunikaci ja jepotpuno odvojena od komunikaci je koja se odvi ja između ORM-a i baze podatakapreko SQL-a i DBC-a

Da bi se postigla i dostigla potpuna snaga ORM-a u apl ikaci j i koju projektujemonikako se ne sme iskl jučiti znanje relacionih modela SQL jezika te poznavanjeDBMS-a u kome se radi ORM ni je ništa drugo do srednj i sloj između gorepomenutih tehnologi ja i objektno ori jentisanog programiranja kao što smo to dosada već više puta naglasi l i

Implementacija ORM-aPostoje razl ičiti načini implementaci je ORM-a Mark Fasl (Mark Fussel) je 1997definisao četiri nivoa

1 bdquoČistrdquo relacioni način2 Slabo mapiranje objekata3 Umereno mapiranje objekata4 Potpuno mapiranje objekata

bdquoČistrdquo relacioni način

Cela apl ikaci ja ukl jučujući i korisnički interfejs dizajnirana je relacionim modelom iSQL relacionim operatorima Ovakav pristup je odl ičan za male projekte Direktanpristup SQL-u omogućava fino podešavanje svakog aspekta upita koj i se postavl jabazi podataka Osnovne mane su portabi lnost (prenosivost) i održavanje ovakvihsistema pogotovo ako se planira korišćenje apl ikaci je na duži rok Ovakvi sistemimasovno koriste sačuvane procedure (eng stored procedures) što znači da jeposlovna logika (eng busines logic) prebačena na samu bazu podataka

Slabo mapiranje objekata

Entiteti su predstavl jeni kao klase i mapiranje se radi ekspl icitno ka relacionimtabelama SQLJDBC je sakriven od poslovne logike korišćenjem poznatih šablona(patterns)

Umereno mapiranje objekata

Slobodni profesionalac

33

Broj 33

Dizajn apl ikaci ja se svodi na objektne modele SQL se generiše u vremekompaj l iranja (eng build-time) i l i u vreme izvršavanja (eng run-time) Specifikaci jaupita nad bazama podataka se radi na objektno ori jentisanom jeziku Ovakvisistemi se koriste u apl ikaci jama srednj ih vel ičina kod koj ih je bitna portabi lnostizmeđu razl ičitih sistema za upravl janje bazama podataka (DBMS)

Potpuno mapiranje objekata

Podržava sofisticirano objektno model iranje nasleđivanje i pol imorfizamEfikasnost dobi janja podataka je na visokom nivou i koriste se metode kao što sulenjo učitavanje (eng lazy loading) i strategi ja keširanja (eng caching) Implementaci ja je transparentna u apl ikaci jama Ovaj nivo je jako teško dostići Pojedincu su potrebne godine razvoja da postigne ovakvu fleksibi lnost pristupa imanipulaci ja u relacionim bazama podataka Upravo ovaj nivo se postiže ako sekoriste rešenja ORM-a kao što je Hajbernejt

Zašto ORMImplementaci ja ORM rešenja pogotovo ako seprvi put susrećete sa ovim modelom može dabude veoma frustrirajuća i malo teža zaimplementaci ju Kada ovo kažemo misl imo daprogramer koj i implementira ORM i hoće da istibude kval itetno urađen mora da posedujepredznanje objektno ori jentisanog programiranjai naprednih tehnika kao što su nasleđivanje ipol imorfizam

Ovo inicira fundamentalna pitanja

bull Pa zašto bi iko onda implementirao ovako nešto kompleksnobull Vredi l i truda upuštati se uopšte u ORM

Odgovor ni je jednostavan Dosadašnja iskustva u korišćenju ORM-a i njegovapopularnost već daju odgovor na postavl jeno pitanje Očigledno je da su benefitikoje donosi ovaj model veći od kompleksnosti njegove implementaci je a to su

Hibernate ORM

34

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Veća produktivnost

ORM smanjuje kol ičinu koda potrebnog za ostvarivanje trajnosti podataka Ovoomogućava programeru da vreme koje bi utrošio na ručno mapiranje podatakautroši na druge delove apl ikaci je

Lakše održavanje

Manje l ini ja koda osigurava bol ju razuml j ivost (i možda bol j i kval itet koda) jernaglašava apl ikaci jsku logiku ORM takođe ublažava uticaj nastal ih promena kaošto su promene u bazi strukturi tabela i td

Prenosivost

Većina ORM rešenja podržava sisteme za upravl janje bazama podataka raznihproizvođača ORM u potpunosti odvaja sloj apl ikaci je od stvarne SQL komunikaci jekoja se odvi ja u pozadini Time omogućava da se pišu apl ikaci je koje će moći da seizvršavaju na razl ičitim bazama podataka bez potrebe za dodatnim kodiranjemOva komunikaci ja se odvi ja sa programskim interfejsima ORM-a nezavisno oDBMS-u sa koj im je u bi lo kom momentu povezan ORM takođe omogućava lakšiprelaz sa manj ih na veće baze podataka tokom razvoja apl ikaci je

Uvidel i smo da trenutno postoje dve paradigme koje se bdquosudarajurdquo i koje supodjednako dobre same za sebe Relaciona paradigma potvrđuje da sve što jeizgrađeno na matematičkim osnovama je i trajno u smislu kval iteta koje posedujeU domenu u kom relaciona paradigma egzistira ona je ako je to u ovo vremeuopšte moguće tvrditi nezamenj iva

Ono što otvara pitanja i daje razlog za sumnju je koja je krajnja granicaupotrebl j ivosti relacione paradigme tj kol iki su kapaciteti složenosti zahtevaapl ikaci ja sa kojom može da se nosi Praksa je pokazala da je sasvim mogućebdquoizvestirdquo složene projekte - al i održavanje skalabi lnost razuml j ivost prenosivost -pitanja su sa koj im se relaciona paradigma teško može izboriti

Sa druge strane svoj habitat u informacionim tehnologi jama je našla i objektna

Slobodni profesionalac

35

Broj 33

paradigma Iako na prvi pogled ova dva modela nemaju ništa zajedničko - što je uneku ruku i istinito gledajući prirodu podataka koj im manipul išu - praksa jepokazala da su usko povezane i skoro da imaju sinaptičku vezu

Pitanje bdquokako spoj iti te sinapserdquo dovelo je do žučnih rasprava u uskim naučnimprogramersko-administratorskim krugovima Rodi l i su se razni model i a l i jedan jeiskočio i polako ulazi u široku primenu - a to je ORM Svoj im supti lnim pristupomproblemu nekompatibi lnih paradigmi nekako je uspeo da stvori taj nedostajućibdquoelektrični signalrdquo koj i ih je povezao Ovo je omogući lo da dve strane koje susvaka za sebe u svom domenu ostavi le i ostavl ja ju duboki trag u informacionimtehnologi jama sarađuju i donesu novi kval itet

Korisni l inkovi

[1] Hibernejt http hibernateorg[2] Viki http googlLlZulw[3] Tutori ja l i http googlCGzvnc

Hibernate ORM

36

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Autor Kriptopank

Šta su zapravo metapodaci Najkraće rečeno to su podaci o podacima i l iinformaci je koje opisuju podatke

Najpre da napravimo razl iku između podataka i metapodataka Podaci sunaprimer snimak (i l i transkript) vaših telefonskih razgovora sadržaj poruka kojepišete primate i l i šal jete podaci koje kačite na internet i l i preuzimate pretrageGuglom postovi na forumima dopisivanja na IRC kanal ima i l i drugim četovimaaudio i video snimci Skajp razgovora i tako dal je

Hajde da vidimo šta bi bi l i odgovarajući metapodaci za ove primere

bull Za telefonske razgovore metapodaci mogu biti lokaci ja učesnika brojevitelefona trajanje razgovora IP i MAC adresa

bull Za poruke četove i Skajp i l i druge video-audio komunikaci je sl ično je kao kodtelefonskih razgovora

To su samo metapodaci

Internet mreže i komunikacije

37

Broj 33

bull Kod foruma i pretraga Guglom ima malo manje metapodataka al i Gugl i raznisajtovi i forumi ionako čuvaju logove o korisnicima što su takođe metapodaci

Ako do sada koj im slučajem niste uvidel i opasnost po privatnost u ovimmetapodacima koje svako od nas smrtnika svakodnevno ostavl ja za sobom usvetu interneta i ostal ih digitalnih komunikaci ja nadamo se da će vas ovaj primermakar podstaći na razmišl janje a možda i na nešto više

Zamisl i te da neko (zvaćemo ga posmatrač) stalno sakupl ja metapodatke koje zasobom ostavl jate kao mrvice hleba Posmatrač recimo zna da se nalazite naautoputu nedaleko od famoznog Feketića da se ne krećete da zovete AMSS zatimšlep službu i možda taksi a l i ne zna šta ste razgovaral i I l i posmatrač vidi da steprvo zval i aerodrom Nikola Tesla pa odmah potom taksi a l i ne zna šta sterazgovaral i I l i posmatrač vidi da ste zval i prvo šest brojeva či je identitete takođezna pa vidi da se oni zatim kreću ka vama - GPS (eng Global Positioning System) pa zatim pica servis Mekdonalds i neku poznatu prodavnicu kineske hrane al i nezna šta ste razgovaral i

Posmatrač ne mora da bude mnogo pametan niti da prisluškuje vaše razgovore dabi shvatio šta se dešava i l i šta će se desiti Sasvim mu je jasno da vam je u prvomprimeru auto stao na autoputu zatim da ste se u drugom slučaju uputi l i naaerodrom i da možda putujete van zemlje i l i ste poslal i taksi po nekoga saaerodroma a da u trećem slučaju okupl jate žurku kod vas Više možete pogledatina http googl7vUjP

Iako su to bdquosamordquo metapodaci treba biti svestan da ti metapodaci o vama stvarajujednu digitalnu sl iku i l i bol je reći digitalni mozaik i na neki način vas jedinstvenoodređuju Pogotovo kada se planski prikupl ja ju na više nivoa (kompjuter pametnitelefon pametni automobi l i kreditna kartica) metapodaci čine vaš digitalniidentitet Al i da stvar bude još gora ta sl ika o vama ne mora nužno biti istinita jerse lako može lažirati Recimo možete zameniti telefone i l i automobi le sa nekimnamerno i l i slučajno i l i vam neko može jednostavno ukrasti telefon laptop i l ikreditnu karticu Zaniml j iv video http googlKO1fKf

Evo jednog primera koj i vas može uvući u vel ike nevol je Recimo da prolazitenekom zabačenom ul icom i da vam neprimetno ispadne telefon al i vi to neprimetite i nastavite dal je svoj im putem U toj ul ici se samo nekol iko minutakasni je desi neko ubistvo i vas pozovu u pol ici ju kao osumnj ičenog Ako koj im

To su samo metapodaci

38

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

slučajem nemate dobar al ibi i l i nemate svedoka da posvedoči da niste bi l i u tojul ici nego tamo gde ste stvarno bi l i a drugih svedoka nema - možete jako lošeproći Zaniml j ivi video http googlspS5OZ

Metapodaci se takođe nalaze i u faj lovimapodacima koje svakodnevnopreuzimamo sa interneta pravimo i koristimo Svaki tip podatka može da sadržiodređene metapodatke koj i bol je opisuju sam podatak kao naprimer vremenastanka podatka kol iko je vremena potrošeno za njegovo kreiranje kol iko putamu je pristupl jeno kad je poslednj i put pristupl jeno i tako dal je Iako se ovakvimetapodaci možda još uvek čine bezazlenim oni mogu sadržati i IP adresuračunara sa kog su napravl jeni GPS koordinate (najčešće PNG format sl ika satelefona) ko ga je napravio (l ičnost i l i kompani jaorganizaci ja) naziv uređaja imodel sa koga je napravl jen kao i MAC adresu uređaja mej l adresu kreatorasoftver koj im je napravl jen i tako dal je Sve ovo može mnogo da naškodiprivatnosti izvornog kreatora faj la pogotovo ako je sadržaj poverl j iv Ukol iko nekopresretne taj podatak na internetu može saznati od koga je potekao Da ovo možebiti katastrofa po kreatora takvog faj la može i lustrovati primer torenta Ako stedošl i u posed nekih sl ika i l i video materi ja la i l i teksta koj i žel i te da podel ite sasvetom preko nekog torent sajta morate taj podatak prvo očistiti odmetapodataka da ne bi svako ko skine to što ste okači l i saznao da vi stoj i te izatoga

Internet mreže i komunikacije

39

Broj 33

Ljudi se konstantno prate metapodaci se sakupl ja ju i to ni je sada već ništa novoal i možemo da se trudimo da iza sebe ostavl jamo malo manje nežel jenihmetapodataka i da ih takoreći čistimo iz podataka koje razmenjujemo Na srećupostoje programi koj i ovo dobro rade

Najpre je potrebno da vidimo koje sve metapodatke neki faj l sadrži kako bismo seuveri l i da ovi metapodaci stvarno postoje i da je faj l bezbedan nakon nj ihovogbrisanja

Ako koristite operativne sisteme GNULinuksa treba da iz terminala preuzmete iinstal irate program pod nazivom exiftool

sudo apt-get install exiftool

Ovaj program će nam pružiti uvid u sve metapodatke koje faj l sadrži Korišćenje jeiz terminala al i je zato veoma jednostavno samo ga pokrenite na sledeći način

exiftool File

i l i

exiftool putanjadofajlapočevodkorenogdirektorijuma

Dobićete prikaz metapodataka koje je program pronašao Sada je potrebno davidimo da l i je podatak bdquoprl javrdquo tj da l i ima u njemu nešto da se briše i da akoima iz njega sve nepotrebno obrišemo Tu će nam pomoći drugi program zvaniMAT (eng Metadata Anonymisation Toolkit) koga možete naći na sajtuhttps matboumorg i l i jednostavno za korisnike Ubuntua i Debi jana uSoftverskom centru i l i ga možete instal irati iz terminala

sudo apt-get install mat

MAT će proveriti da l i je podatak bdquoprl javrdquo i l i ne i za vas ga očistiti od nežel jenihmetapodataka

Kada očistite faj l on je spreman za del jenje sa drugima a vi ste bezbedni jer nikone može reći da je faj l potekao sa vašeg računara

To su samo metapodaci

40

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Autor Dejan Čugal j

GH Hardi bdquoPrava matematika nema uticaj na ratrdquo - odbrana matematičara1940 godina

Bi l Tat - britanski matematičar verovatno niste čul i za njega1942 godine je izveo ogroman poduhvat koj i je skratio rat dvegodine (barem po rečima Ajzenhauera) i spasio mi l ione životaNažalost njegova vel ičina je preminula 2002 godine obavi jenavelom tajne i nikada zvanično ni je priznato njegovo dostignuće

Tomi Flauers - bivši inženjer poštanskog saobraćaja pretvorio jematematičke ideje Tata u prvi računar a to ni je bio bdquoENIACrdquo1Preminuo je 1998 godine a pretpostavl jamo da nikada niste čul ini za njegovu vel ičinu

Ovi umni giganti bdquoBlečl i parkardquo omogući l i su Britani j i da dešifruje strogo poverl j ivumašinu koju je koristio Hitler da diriguje drugim svetskim ratom a to ni je bi labdquoENIGMArdquo nego nešto mnogo tajni je i značajni je Vel ika je verovatnoća da nistečul i ni za ovo Neki kažu da je to bio Hitlerov Blekberi (BlackBerry)

Izgubljeni heroji bdquoBlečli parkardquo

1 engl Electronic Numerical Integrator And Computer - prvidigitalni elektronski računar

Internet mreže i komunikacije

41

Broj 33

1939 godine bdquoBlečl i parkrdquo je postao ratni štab MI6 (britanske vojne obaveštajneslužbe) Do danas je procurelo u javnost i dokumentovano brojnim fi lmskimdokumentarcima samo da je tu Alan Tjuring uspeo da dešifruje nemačkumornaričku šifru poznatu kao bdquoENIGMArdquo i uvel iko doprineo pobedi saveznika a to jesamo deo priče koj i je ispričan

U Blečl i parku su bi la tri heroja AlanTjuring Bi l Tat i Tomi Flauers Od nj ihtroj ice jedino Alanu Tjuringu je priznat deozasluga za pobedu saveznika u Drugomsvetskom ratu Pregledom otkrivenihpodataka danas možemo da tvrdimo daje bdquoENIGMArdquo već sa početka drugogsvetskog rata bi la zastarela tehnologi ja Zbog toga je bi lo lako skinuti veo tajne sa

ovog uspeha heroja Blečl i parka

Izgubljeni heroji bdquoBlečli parkardquo

42

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Bi l Tat koj i je dešifrovao bdquoTANI sistemrdquo (TANI) i Tomi Flauers koj i je samo svojomintuici jom i znanjem sklopio prvi računar na svetu (bdquoKOLOSrdquo) u svrhu bržegdolaženja do informaci ja razbi jenog koda bdquoTANIrdquo tako da zastarelost šifrata budesvedena na minimum - radi l i su na novoj generaci j i mašina za šifrovanje Ovatehnologi ja je bi la prepoznata kao tehnologi ja budućnosti pa i danas iznadinformaci ja o tim tehnologi jama stoj i natpis bdquovrhunska tajnardquo (eng Top Secret) Upravo ovaj veo tajni oko šifrata bdquoTANIrdquo i prvog računara je rezultirao iskrivl jenjuistori je informatike

Za uspehe u prvim godinama rata je zaista zaslužno razbi janje bdquoENIGMArdquo šifrata ito ni je sporno al i krajem 1941 godine u etru planete se začuo novi zvuk To je bi lanova mašina za šifrovanje ni je bi la zasnovana na bdquoMorzeurdquo već je radi la naprincipu teleprintera

Jedna od kl jučnih ideja Hitlerovog ratovanja je bi la u vel ikoj mobi lnosti i brzomdelovanju trupa na terenu a da bi se to izvelo komunikaci ja je isto tako morala dabude u najmanju ruku putem radio signala

Razl ika je ogromna Razl ika je u kol ičini podataka koj i može da se prenese ovimbdquotajnimrdquo putem Prvi svetski rat je bio zaniml j iv jer su se šifrovane poruke baziralena rečima dok je Drugi u potpunosti otvorio vrata današnjoj kriptografi j i a to jematematika

Originalan nemački kocircdni naziv za ovaj šifrat bio je bdquoLORENCrdquo Britanska

Internet mreže i komunikacije

43

Broj 33

obaveštajna služba mu je dala nadimak bdquoTANIrdquo Čak ni dan danas ni je baš poznatokako je sve nastalo al i pouzdano se zna da je tajnu mašinu Hitler nazvaobdquoGehajmšrajberrdquo (nem Geheimschreiber) - mašina tajni

U srž i tehnologi ju šifrovanja bdquoLORENCrdquo šifrata nećemo ulaziti u ovom članku al iverujte nam na reč - ni je bi la jednostavna Može se pretpostaviti da je inspiraci jaŠenonovog 2 rada slučajnosti bi la upravo ova tehnologi ja iz Drugog svetskog rata

Ono čime se Treći rajh vodio je bdquosigurnardquo šifrovana veza koju niko ni je smeo dadešifruje Prenošenje šifrovanih poruka pomoću radio signala je dalo obaveštajnimslužbama mogućnost presretanja poruka poslatih radio talasima Da l i se ovo idanas dešava Imamo l i sigurnost u našim šifrovanim podacima današnj ice

Ono što je usledi lo nakon proboja ovog bdquoneuhvatl j ivogrdquo šifrata je upravo ono što jeprincip današnj ice kao neka vrsta protokola koj i mora da se ispoštuje uperfektnom šifarskom Šenonovom sistemu

1 NIKADA NIKADA NE KORISTITI DVA PUTA ISTI KLJUČ ZA ŠIFROVANJE2 NIKADA NIKADA KLJUČ NE SME DA SE ŠALJE ISTIM KOMUNIKACIONIM KANALOM

KAO PORUKA3 NIKADA NIKADA KLJUČ NE SME DA BUDE MANJ I NEGO ŠTO JE PORUKA (engl

2 Klod Elvud Šenon (eng Claude Elwood Shannon) (1916-2001) - Američkinaučnik i inženjer

Izgubljeni heroji bdquoBlečli parkardquo

44

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

one time pad) 4 NIKADA NIKADA NE SMEMO DA SAKRIVAMO SISTEM ŠIFROVANJA SVE MORA

DA JE OTVORENOG KOcircDA

Najveći propusti kriptologi je koj i su uočeni baš u Drugom svetskom ratu jesupokušaj sakrivanja sredstava koj im se generiše tajna poruka i nepoznavanjeŠenonovih krajnj ih granica informaci ja Kada kažemo bdquosredstvo i sakrivanjerdquomisl imo na algoritme Postavl ja se pitanje zašto je danas kriptologi ja sigurni ja negočetrdesetih i pedesetih godina prošlog veka

Danas uprkos tome što su algoritmi za kriptografi ju otvorenog kocircda tajnostinformaci ja je na višem nivou nego što je to bi lo dok je algoritam bio strogopoverl j iv Tajnost tajnih podataka se ne zasniva na tajnosti a lgoritama koj i generišutaj isti bdquotajni izlazrdquo (eng cipher text) nego u nemogućnosti matematičke inverznefunkci je koja bi šifrovan tekst otvori la Ovde se vidi da je svrha strukture otvorenogkocircda kao jednog od značajnih delova današnje kriptologi je ona koja ga činisigurnim i svima dostupnim

Sada kada se sa ove distance osvrnemo na Drugi svetski rat možemo videti kol ikosmo bi l i bl izu apokal ipse Naime Albert Ajnštajn je već 1944 godine imao urukama recept za nuklearnu bombu Šenon je mogao već u to vreme da nampredoči 100 siguran šifrat (tzv Hitlerovu super šifru) a l i ipak sreća nas jeposluži la da čovečanstvo tada ni je bi lo spremno da upotrebi svu raspoloživutehnologi ju

Albert Ajnštajn bdquoČetvrti svetski rat će se voditi tol jagamardquo

Zaboravl jeni heroj i Blečl i parka iako su odigral i važnu ulogu u pobedi saveznika usvetskom ratu postal i su žrtve bdquotop secretrdquo doktrine potpuno su zaboravl jeni inestal i su iz istori je

Zakl jučak ovog članka je da je ideologi ja otvorenog kocircda sasvim sigurno tu da nampomogne i da otvori vrata ka većoj sigurnosti novim idejama i kval itetu sameinfrastrukture sistema koju svi zajedno razvi jamo

Internet mreže i komunikacije

45

Broj 33

Autor Nikola Hardi

NabrajanjaBez brojeva

Za nabrajanje pojmova u Bimeru (eng Beamer) koristi se okruženje itemize aunutar tog okruženja možemo da dodajemo nove stavke pomoću item Primerizgleda ovako

beginitemizeitem Stavka Aitem Stavka Bitem Stavka C

enditemize

Sa brojevima

Postoje situaci je kada uz nabrajanje treba da stoje i redni brojevi - za to se koristienumerate okruženje a nove stavke se takođe dodaju pomoću item

beginenumerateitem Redni broj 1item Redni broj 2item Redni broj 3

endenumerate

prezentaci ja

Beamer (4 deo)

Sam svoj majstor

46

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

DefinicijeTreća situaci ja je nabrajanje parova termin - definici ja U tom slučaju se koristiokruženje description Već možete da pretpostavite kako se dodaju nove stavke

Primer

begindescriptionitem[Pojam A] Definicija izmišljenog pojma Aitem[Pojam B] Definicija izmišljenog pojma Bitem[Pojam C] Definicija izmišljenog pojma C

enddescription

Ostala podešavanja i zanimljivostiSva prethodna okruženja mogu da budu ugneždena jedno unutar drugog dotrećeg nivoa Treba biti pažl j iv jer sla jdovi vrlo lako mogu da postanu nečitl j ivi Osim toga moguće je izabrati i format oznake i l i rednih brojeva - na primer ovako

beginenumerate[I]beginenumarate[a)]

Takođe moguće je upravl jati pojavl j ivanjem pojedinih stavki na slajdovima Drugimrečima možemo da odredimo da se nabrajanja postepeno otkrivaju tako što ćemouz stavku dodati lt1-gt odnosno broj od kojeg slajda žel imo da se ta stavkapojavl ju je Tada će jedno nabrajanje biti bdquorazvučenordquo na više slajdovaJednostavni ja mogućnost je da u zaglavl je okruženja dodamo +- što znači dažel imo da se svakim slajdom otkriva po jedna nova stavka iz nabrajanja Znak bdquo-rdquo uoba primera znači da žel imo da se stavka pojavi na sledećem slajdu i da ostane

Sam svoj majstor

47

Broj 33

prisutna Možemo da izostavimo znak bdquo-rdquo i tada će stavka biti prisutna samo najednom slajdu i l i da napišemo raspon slajdova u koj ima žel imo da ta stavka budeprisutna

Rad sa kolonama i blokovimaDo sada su svi primeri podrazumeval i da je sadržaj napisan preko cele širineslajda al i Bimer (eng Beamer) ima i jednostavne mehanizme za razmeštanjesadržaja po kolonama Za rad sa kolonama se koristi okruženje columns unutarkojeg možemo da dodajemo nove kolone pomoću columnširina Sadržaj jemoguće potom pisati i van okruženja sa kolonama

U paru sa kolonama često se sreće i okruženje block koje se parametrizujenaslovom Primerom su i lustrovani i okruženje column i okruženje block

beginframebegincolumns

column05textwidthbeginblockNaslov levog blokaSadržaj u prvoj (levoj) koloni endblock

column05textwidthbeginblockNaslov desnog blokaSadržaj u drugoj (desnoj) koloni

endblockendcolumns

beginblockVan kolona

Beamer

48

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Tekst koji se nalazi ispod kolonaendblock

endframe

TabeleIako se u radu sa prezentaci jama sadržaj najčešće može uredno rasporeditipomoću kolona i nabrajanja nekada to ni je dovol jno jer su tabele pravi formatBimer podržava standardno Lateh (LaTeX) okruženje za rad sa tabelamaOkruženje za rad sa tabelama se zove tabular Pri kreiranju nove tabele moguće jepodesiti koje kolone će biti razdvojene l ini jom i da l i će nj ihov sadržaj biti centrirani l i uz levu i l i uz desnu ivicu Dodavanje novog reda se jednostavno radidodavanjem hline Lateh pruža zaista jako fleksibi lan rad sa tabelama i sigurno ćedoskočiti svim mogućim i nemogućim zamisl ima Potražite bi lo koje Lateh uputstvoza rad sa tabelama i radiće i sa Bimerom

beginframebegintabular | c | c | c | c |

hlineamp Ponedeljak amp Utorak amp Sreda hline

1 amp 16 amp 32 amp 64 hline2 amp 16 amp 128 amp 1024 hline3 amp 16 amp 512 amp 4096 hline

endtabularendframe

Sam svoj majstor

49

Broj 33

Beamer

Teoreme i istaknut tekstU nastavi su česta izlaganja teorema nj ihovih dokaza i primera U Bimer jeugrađena podrška za elegantno predstavl janje ove trojke Mehanizam takođepodržava postepeno otkrivanje sadržaja sla jda tako da slušaocima ne bude odmahotkriven dokaz teoreme Mehanizam za postepeno otkrivanje se kao i kodnabrajanja postiže pomoću bdquolt1-gtrdquo konstrukci je Evo kako to izgleda

beginframeframetitlePrimer teoreme

begintheoremlt1-gt Teorema kaže da su beamer prezentacijezanimljive

endtheorem

beginexamplelt2-gt Ovaj kod kreira slajd beamer prezentacijeendexample

beginprooflt3-gt Čestitamo stigli ste do kraja serijala o pravljenju beamer prezentacija

endproofendframe

50

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Za krajOvim člankom završavamo seri ja l o Bimeru Nadamo se da smo uspel i da vaszainteresujemo za ovu vrlo korisnu klasu Lateha Trudi l i smo se da vamprezentujemo najvažni je delove Bimera koje ćete najčešće koristiti pri l ikomkreiranja svoj ih prezentaci ja

Napominjemo još jednom da je Bimer samo jedna od klasa Lateha što znači da i zaBimer važi sve ono što ste već mogl i da pročitate u ovom časopisu kad smo pisal iseri ja l bdquoUvod u LaTeXrdquo (LiBRE brojevi 17 do 21) Štaviše ovaj seri ja l o Bimeru jebio nastavak upravo tog seri ja la U ovom seri ja lu nismo pisal i o samomformatiranju teksta u prezentaci jama jer se podrazumeva da važe ista pravi la kao iu Latehu a o tome smo pisal i u prethodnom seri ja lu

Hvala vam što ste prati l i ovaj seri ja l i žel imo vam puno uspeha u kreiranju Bimerprezentaci ja

Sam svoj majstor

51

Broj 33

Autor Nenad Marjanović

Kada smo se upoznal i sa podešavanj ima sistema i umrežavanjem vreme je za našprvi Biglbon Blek (BBB - eng BeagleBone Black) projekat Svakom od nas će ovajizazov dati razl ičite ideje a jedna od nj ih može biti i zaštita privatnosti internetkorisnika Nažalost u Srbi j i ne postoj i ni jedan izlazni tor server (eng node) i to jepomalo tužna sl ika s obzirom da govorimo o populaci j i od sedam mil ionastanovnika Al i ovu sl iku možemo promeniti udruženim snagama i za početakkreiranjem Tor transfer i izlaznog servera U ovde prikazanom grafikonufokusiraćemo se na bdquoRauter Brdquo tačku odnosno transfer server konfiguraci ju

BeagleBone Black Rev C

Vodič od prvog dana (3 deo) ndashBeagleBone Black kao Tor relej

Hardver

52

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Tor predstavl ja mrežu servera koj i se povezuju radi bol je enkripci je podataka izaštite IP adrese korisnika Naš ci l j je da danas postanemo deo ovog predivnogprojekta i da se nađemo na svetskoj karti Tor servera

Brzina interneta i zakonske regulativePotrebno je imati na umu nekol iko bitnih stvari

1 Naš server = naša odgovornost2 Obavezno naznačite da ste vi administrator a ne korisnik istog servera3 Da posedujete internet brzinu od 2 Mbs

Ako ispunjavamo tri navedena pravi la i odgovornosti možemo se posvetitiadministrativnim poslovima

Instalacija i podešavanjaU ovom primeru koristimo Debi jan Vizi (eng Wheezy) odnosno Debi jan 7 verzi juna našem BBB uređaju Vi možete testirati i druge Linuks platforme Prvododajemo izvornu bibl ioteku u etcaptsourceslist faj l pokretanjem sledećekomande u terminalu

echo deb httpdebtorprojectorgtorprojectorg wheezy main gt etcaptsourceslistdtorlist

Zatim dodajemo izvorni kl juč vršimo ažuriranje sistema i instal iramo tor i tor-arm(Tor monitoring sistem)

gpg --keyserver keysgnupgnet --recv 886DDD89gpg --export A3C4F0F979CAA22CDBA8F512EE8CBC9E886DDD89 | sudo apt-keyadd -apt-get updateapt-get install debtorprojectorg-keyring -yapt-get install tor tor-arm egrep screen -y

Ovim smo uspešno završi l i instalaci ju Tor servera i sistema za monitoring odnosnonadgledanja našeg Tor servera Sledećom komandom radimo na podešavanj imaTor servera koja se nalaze u etctortorrc faj lu Obratite pažnju i izvršite potrebne

Hardver

53

Broj 33

izmenu u pol j ima IP adresa (eng Address) nadimka (eng Nickname) i kontaktpodataka (eng ContactInfo) pre pokretanja ove komande Kopiramo i pokrećemokomandu u celosti u terminalu

egrep -v ^(|$) etctortorrcORPort 443Address 19216811Nickname LibreTorRelayRelayBandwidthRate 100 KBRelayBandwidthBurst 120 KBContactInfo ltvi at gmail dot comgt irPort 8080DirPortFrontPage etctortorhtmlExitPolicy reject

Detal je o svim vrednostima nećemo iznositi u ovom broju LiBRE časopisa al ićemo o nj ima pisati u sledećem u kome ćemo pričati o zaštiti Tor servera imogućnosti podešavanja određenih izlaznih pravi la (eng ExitPolicy)

Nakon ovoga možemo primetiti da se u folderu etctor ne nalazi torhtml faj l Ovaj faj l ni je od vel ikog značaja i možete ga l ično napraviti i l i preuzeti jednu kopi ju- naprimer sa sledeće lokaci je

cp usrsharedoctortorhtml etctortorhtml

Opcije i Tor Arm monitoringDa bismo ispravno koristi l i Tor Arm potrebno je urediti još jednom etctortorrcfaj l i restartovati servis

echo -e ldquoDisableDebuggerAttachment 0n AvoidDiskWritesrdquo gtgt etctortorrcsudo service tor reload

Ukol iko žel ite koristiti Tor Arm za nadgledanje aktivnosti na serveru pokreniteprogram screen kl iknite na bdquoEnterrdquo i kucajte sudo -u debian-tor arm Naekranu ćete imati sl ičan prikaz

BeagleBone Black

54

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Hardver

55

Broj 33

Da bismo napusti l i screen program koristimo Ctrl + a + d i na taj način kada sesledeći put pri javimo na server kucamo samo screen -r u terminalu - i naći ćemose ponovo na čuvenom Tor Arm monitoring ekranu

Nakon svake promene konfiguracionih faj lova ako slučajno nismo nešto podesi l ikako treba restartujemo servise

U sledećem broju časopisa govorićemo o minimalnim podešavanj ima ikonfigurisanju izlaznog Tor servera (eng Tor Exit Node) opci jama sigurnosti isl ičnim detal j ima u vezi sa našim prvim projektom Do čitanja u sledećem broju

BeagleBone Black

LUGoNS BarCamp 4subota 7 mart 2015 godine

Četvrti LUGoNS-ov Barkemp (BarCamp) održaće se u Novom Sadu usubotu 7 marta 2015 godine na Fakultetu tehničkih nauka sa početkomu 12 časova

Ulaz je slobodan

Poziv za predaju radovaLUGoNS poziva sve zainteresovane da pošal ju svoje radove (predavanjaprezentaci je radionice i diskusi je) do 28 februara 2015 godine

Oblasti iz koj ih možete da pri javite vaše radove su

bull Slobodan softverbull Zaniml j iv hardverbull Hakerski zakonibull Sigurnosne noćne morebull Anonimnost i privatnost na internetubull Duboki veb (eng Deep Web)bull Soci ja lne mrežebull Soci ja lni inženjeringbull Hakovanje mobi lnih uređajabull Internet u oblaku (eng Clouds) ndash hakovanje razbi janje i neočekivano korišćenjebull DPI (eng deep packet inspection)bull Mreža i mrežna neutralnost ndash vlasništvo cenzura nadmudrivanje i pol itika bdquodefaktordquo standarda

bull Programiranje i programski jezici

Nemojte se ustručavati i slobodno nam se javite ako imate rad na gore navedenei l i sl ične teme koj i smatrate interesantnim

Stranica za predaju radova nalazi se na https events lugonsorgp=1658

Page 18: LiBRE 33 Lat

18

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Autor Nikola Hardi

Opšte je poznato da su računari dobri u radu sa brojevima Međutim vremenom suse i potrebe korisnika i alati za programiranje računara razvi ja l i i rad sa drugači j imtipovima podataka je postao uobičajen i znatno jednostavni j i nego rani je Svi smoimal i pri l iku da radimo sa programima za obradu fotografi ja video materi ja la i l izvučnih zapisa Multimedi ja je ipak tema koja prevazi lazi jedan uvodni kurs o C-ual i do kraja ovog seri ja la ćemo se dotaći i tih tema Za početak osvrnućemo se narad sa tekstualnim podacima na C način

Stringovi na C načinDefinici ja tekstualnog podatka u sferi računarstva se uglavnom svodi na to da jetekst niz karaktera a karakteri su znakovni simbol i Iako imamo mogućnost daradimo sa tekstom i l i multimedi jom računari ipak razumeju samo brojeve pamoramo tako da im predstavimo i tekst Postoje razni standardi kako se pojedinikarakteri predstavl ja ju u memori j i računara između ostalog najpoznati j i su ASCIIEBCDIC UTF i td EBCDIC je standard koj i je prisutan u Eplovom (eng Apple) svetu iviše nema tol iko važnu ulogu ASCII je standard koj i je vrlo prisutan i danas UTF jenastao kao proširenje ASCII standarda javl ja se u više vari janti i uvodi podršku zapisma razl ičita od abecede (kinesko japansko ćiri l ica arapsko i mnoga druga)

Važno je napomenuti da je originalni ASCII standard propisivao 7 bitova za jedankarakter što je dalo prostora za 128 karaktera Među tim karakterima se nalazecifre mala i vel ika slova engleskog alfabeta i niz kontrolnih karaktera Kontrolnikarakteri su oznake za novi red prazno mesto tabulator upravl janje štampačima(vraćanje glave štampača na početak) rad sa terminal ima (alarm i l i obaveštenje

Kako da

Uvod u programski jezik CRad sa stringovima (9 deo)

19

Broj 33

da se nešto dogodi lo) ASCII standard je proširen na 8 bitova odnosno ceo jedanbajt i sada podržava 256 karaktera Potražite na internetu termin bdquoASCII tabelardquo dabiste stekl i uvid u to kako izgleda tzv tabela ASCII karaktera

Rad sa pojedinačnim znakovima ne obećava mnogo Postoj i realna potreba zaradom sa rečima rečenicama l ini jama teksta itd Podaci koj i se sastoje od više odjednog karaktera se u domaćoj l i teraturi nazivaju znakovnim niskama madaodomaćen je i naziv bdquostringrdquo koj i je i mnogo češće u upotrebi U programskomjeziku C se stringovi predstavl ja ju običnim nizovima karaktera (char niz[]) a krajteksta se označava NULL karakterom odnosno speci ja lnim znakom 0 či jabrojevna predstava je pogađate nula Ovakva predstava tekstualnih podatakanosi sa sobom i pojedine kompl ikaci je Gotovo svi savremeni jezici poznaju tipstringa dok su u C-u stringovi ipak samo obični nizovi

Da se podsetimo nizovi u C-u su zapravo pokazivači na deo u memori j i Kadapokušamo da pristupimo jednom elementu niza tada se vrši operaci jabdquodereferenciranjardquo sa zadatim odstupanjem Sledi nekol iko primera koj i i lustrujurad sa nizovima na primeru nizova karaktera

char niz1[] = zdravoniz1[0] = Z

char niz2[5]niz2[0] = 0niz2[1] = kniz2[2] = 0

Pri deklaraci j i niza 1 ni je zadata dužina zato što je u jednom izrazu zadata iinici ja l izaci ja niza koja glasi ldquozdravordquo Prevodi lac može sam da zakl juči kol ikomemori je je potrebno

U drugom primeru je kreiran niz karaktera dužine 5 Međutim popunjena su samoprva tri mesta Primećujete razl iku između prvog i trećeg elementa Prvi je cifra 0(uokviren je navodnicima) a treći je brojčana vrednost 0 koja označava krajstringa

Može se primetiti još jedna razl ika u data dva primera U prvom primeru sukorišćeni dvostruki navodnici dok su u drugom korišćeni jednostruki Razlog za to

Uvod u programski jezik C

20

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

je što se znakovni nizovi koj i su uokvireni dvostrukim navodnicima smatrajustringovima i podrazumevano im se dodaje bdquoterminatorrdquo odnosno znak NULL koj ioznačava kraj stringa Jednostruki navodnici se iskl jučivo koriste za predstavl janjepojedinačnih karaktera Ovo znači da zapisi ldquoardquo i a nisu jednaki Prvi zapis jedužine 2 jer ima i znak NULL koj im je završen

Ispisivanje i učitavanje stringovaPre nego što nastavimo dal je biće objašnjen jednostavan način za ispisivanje iučitavanje stringova pomoću standardnog ulazaizlaza Da se podsetimobibl ioteka za standardni ulazizlaz (ispis podataka u konzol i odnosno terminalu) jestdioh Ukol iko se koristi formatirani ispis potrebno je funkci jama printf() iscanf() proslediti format string koj i sadrži speci ja lan znak s čime je označenoda žel imo da ispišemo znakovni niz sve do NULL karaktera Drugi način jeupotrebom funkci ja puts() gets() i getline() iz bibl ioteke stringh Sledi primer

include ltstdiohgt include ltstringhgt int main()

char niz1[] = Zdravo svete

printf(sn niz1)

scanf(s niz1)puts(niz1)

return 0

Može se primetiti da je u slučaju funkci je printf() potrebno naglasiti speci ja lnimkontrolnim karakterom n da nakon ispisa treba preći u novi red Funkci ja puts() topodrazumevano radi

Za ove i sve druge funkci je dodatnu pomoć je moguće pronaći u Linuksovim manstranicama u odel jku 3 koj i je posvećen standardnim bibl iotekama Recimo mangetline sadrži detal jno uputstvo o funkci j i getline()

Kako da

21

Broj 33

Kopiranje stringovaKao što je u prethodnom odel jku napomenuto stringovi su u C-u samo običninizovi To znači da sledeći kod verovatno neće uraditi ono šta bi bi lo očekivano

niz1 = niz2

Ovime smo pokazivaču niz1 bdquorekl irdquo da pokazuje tamo gde i pokazivač niz2 Efektivno oni sad pokazuju na isti tekst međutim ako izmenimo niz1 to će seodraziti i na niz2 a važi i obrnuto Ovime smo dobi l i samo dva pokazivača na istideo memori je a uglavnom to ni je bio ci l j

Drugi način kako bismo sadržaj drugog niza mogl i da kopiramo u prvi niz je petl jakojom bismo kopiral i element po element Pošto je operaci ja kopiranja stringovavrlo često potrebna postoj i standardna bibl ioteka za rad sa stringovima koja sezove stringh a funkci ja za kopiranje stringova je strcpy()

strcpy(niz1 niz2)

Dati primer kopira sadržaj niza 2 u niz 1 Kopira se element po element sve dok seu nizu 2 ne naiđe na NULL karakter Ovakvo kopiranje (element po element) seinače u stranoj l i teraturi naziva i bdquodeep copyrdquo i vrlo često se sreće u radu sastrukturama podataka gde je potrebno obići celu strukturu podataka i svakielement kopirati a strukturu opet izgraditi u drugom delu memori je

Zaniml j ivo je što je kopiranje stringova moguće pojednostaviti ukol iko definišemonovi tip podatka kao strukturu koja sadrži niz karaktera i potom izvršimo kopiranjeOvo je trik koj i se uglavnom ne koristi u praksi i spomenut je samo kaozaniml j ivost

include ltstringhgt struct str char niz[50]

int main()

struct str s1struct str s2

Uvod u programski jezik C

22

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

strcpy(s1niz zdravo)s2 = s1

s2niz[0] = Z

puts(s1niz)puts(s2niz)

return 0

Kreirana je struktura str koja sadrži pol je niza karaktera pod nazivom niz Pozivomfunkci je strcpy() kopiramo string ldquozdravordquo u s1 čime smo bdquonapuni l irdquo sadržajobjekta s1 Potom je izvršena redovna dodela čime je sadržaj objekta s1 kopiran us2 Zatim je izmenjen samo prvi karakter objekta s2 i oba stringa su ispisanaPrimećujete da su kopirani svi znakovi a da je izmenjen samo drugi objekatZaniml j iv trik

Poređenje spajanje i pretraga stringovaDruga vrlo česta situaci ja je poređenje dva stringa Ukol iko bi poređenje bi loizvršeno upotrebom redovnog operatora za poređenje == tada bi u stvari bi lepoređene samo adrese na koje pokazuju pokazivači tih stringova jer da sepodsetimo stringovi su u C-u samo obični nizovi Ispravan način za poređenje dvastringa je pozivanjem funkci je strcmp() či ja je povratna vrednost 0 ukol iko su jojprosleđeni stringovi sa jednakim sadržajem

include ltstringhgt int main()

char niz1[] = zdravochar niz2[] = zdravo

if( strcmp(niz1 niz2) == 0)puts(Stringovi su jednaki)

elseputs(Stringovi nisu jednaki)

return 0

Kako da

23

Broj 33

Funkci ja strcmp() poredi svaki element prosleđenih nizova pojedinačno a dobraje vežba implementiranje nove funkci je strcmp() koja će unutar petl je da porediodgovarajuće elemente prosleđenih nizova i potom vratiti rezultat 0 ukol iko su svielementi jednaki Potrebno je pripaziti na situaci ju kada su stringovi razl ičitihdužina

U svetu računara spajanje dva sadržaja se zove konkatenaci ja Odatle i nazivfunkci je za spajanje dva stringa strcat() Važno je uveriti se da je string u koj i sedodaje sadržaj dovol jno vel ik da ga prihvati inače može da dođe do nežel jenogprepisivanja u memori j i uništavanja drugih podataka i neispravnog ponašanjaprograma

Pretraga unutar stringa se može obaviti funkci jom strstr() Ova funkci ja kaoparametre očekuje pokazivač na niz karaktera (string) u kojem je potrebno pronaćistring koj i je prosleđen kao drugi parametar Povratna vrednost je pokazivač nadeo memori je gde se žel jeni string prvi put pojavio

Sledi malo opširni j i primer koj i i lustruje spajanje pretragu i kopiranje stringova

include ltstringhgt int main()

char niz_a[50] = LiBRE je char niz_b[] = najbolji casopischar niz_c[] = e-magazin

strcat(niz_a niz_b)puts(niz_a)

char cilj = strstr(niz_a casopis)strcpy(cilj niz_c)

puts(niz_a)

return 0

Uvod u programski jezik C

24

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Pretvaranje tipova podataka u stringove ipretvaranje iz stringovaPretvaranje podataka iz jednog tipa u drugi i l i kastovanje (eng type casting) se zavećinu tipova vrši jednostavno pisanjem tipa u zagradama na primer (int)523 Stringovi su i po ovom pitanju drugači j i Postavl ja se pitanje šta pretvoriti ucelobrojni tip - da l i adresu na koju pokazuje pokazivač niza koj i predstavl ja stringPrvi element Šta ako taj string ni je broj Predstavićemo rešenje za konverzi jubrojeva u stringove i obrnuto

Ispis podataka na ekranu se takođe može smatrati konverzi jom Broj sa pokretnimzarezom je u memori j i prikazan na pomalo čudan način a pozivom funkci jeprintf() kada je kao format zadat f na ekranu ćemo dobiti razuml j iv niz znakovaSl ičan rezultat možemo dobiti funkci jom sprintf() a jedina razl ika u odnosu naprintf() je ta što sprintf() kao prvi argument očekuje pokazivač na string dok sudrugi (format string) i treći (argumenti koj i se povezuju sa formatnim stringom)sl ični kao kod funkci je printf()

Kod pretvaranja stringova u brojevne tipove može poslužiti funkci ja sscanf() kojase ponaša sl ično kao funkci ja scanf() s tim što je prvi argument adresa(pokazivač na string) koju žel imo da skeniramo u nadi da će se poklopiti saformalnim stringom koj i je drugi argument a rezultati će biti sačuvani u adresamakoje su prosleđene kao 3 4 i ostal i parametri Drugi način za pretvaranje stringovau celobrojne brojeve i brojeve sa pokretnim zarezom su funkci je atoi() i atof()

Funkci je koje koriste formatni string su česte u jeziku C i zaslužuju posebnu pažnjumeđutim to je priča za poseban članak U ovu klasu funkci ja spadaju recimo ifunkci je za rad sa datotekama

BezbednostRad sa stringovima može da bude izuzetno opasna stvar po pitanju bezbednostiprograma Ukol iko se niz karaktera ne završava NULL karakterom svašta može dapođe po zlu pri pozivu funkci ja kao što su strcpy() strcmp() i sl ične Cela klasatih funkci ja se oslanja na postojanje znaka koj i označava kraj stringa Kada stringni je propisno završen tada te funkci je mogu da zalutaju u deo memori je vanstringa i svašta može da pođe po zlu Ovakav tip napada se inače zoveprekoračenje bafera (eng buffer overflow) Preporučen način kako da izbegnete

Kako da

25

Broj 33

Pregled popularnosti GNULinuxBSDdistribuci ja za mesec februar

Distrowatch

Pad ltPorast gtIsti rejting =(Korišćeni podaci sa Distrovoča)

12345678910111213141516171819202122232425

MintUbuntuDebianopenSUSEelementaryMageiaFedoraManjaroCentOSLXLEArchBodhiAndroid x86Kal iPCLinuxOSPuppyRobol inuxLubuntuQ4OSBlack LabNetrunnerSimpl icityEvolveZorin4MLinux

2919gt1778gt1701gt1323gt1204gt1174gt1166gt1028lt1020gt965gt957gt907gt900lt760gt742lt732gt695gt670gt663gt655gt652gt629gt607gt583gt517=

takve nepri jatne situaci je pri radu sastringovima je da koristite verzi jefunkci ja koje su ograničenemaksimalnom dužinom stringa kaošto su strncpy() strncat() strncmp() i td Sve te funkci je kaotreći parametar zahtevaju broj koj iodređuje maksimalnu očekivanudužinu stringa Još jedna vrlo korisnafunkci ja je strlen() či j i zadatak je daodredi dužinu stringa Budite pažl j ivi ovo je prvo mesto gde se tražebezbednosni propusti u programimaNe verujte podacima koj i spol ja ulazeu vaš program a pogotovo kada je rečo stringovima

Uvod u programski jezik C

26

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Autor Dejan Maglov

Projekti slobodnog softvera obično počinju kao projekti pojedinca i l i male grupeprogramera a koj i rade na razvoju softvera či j i je ci l j da zadovol j i neke od nj ihovihl ičnih potreba Projekat će se smatrati uspešnim ukol iko se šira zajednicazainteresuje za njega nakon što prepozna korisnost softvera ne samo za pojedincekoj i su započel i projekat već i za širu zajednicu Kada je u pitanju slobodni softvervremenom je postala stalna praksa da se zajednica umeša u razvoj projekataDobri projekti sami privlače zajednicu l judi koj i su zainteresovani za nj ih i ona uvećini slučajeva preuzima na sebe testiranje pobol jšanje funkcionalnosti održavanje i tehničku podršku projekta

Zajednice slobodnog softvera mogu da se okupe oko projekta slobodnog softverapo teritori ja lnom principu i l i da nastanu kombinaci jom ovih principa

Primeri

bull LiBRE projekat okupl ja zajednicu oko projekta bez teritori ja lnog ograničenjabull LUGoNS (Linux User Group of Novi Sad) je zajednica korisnika Linuksa poteritori ja lnom principu bez obzira na konkretan projekat

bull Ubuntu-rs zajednica koja je kombinaci ja okupl janja zajednice oko konkretnogprojekta (Ubuntu) i teritori ja lnog principa koj i se ograničava na teritori ju Srbi je

Ova sinergi ja projekata i korisnika slobodnog softvera ima više prednosti i zakorisnike i za projekat Projekat se na ovaj način brže razvi ja dobi ja na

U potrazi za idealnom distribucijom

Socijalni kriterijumi za izbor idealnedistribucije (6 deo)

Oslobađanje

27

Broj 33

funkcionalnosti greške se brzo ispravl ja ju i td Korisnici dobi ja ju osećaj dapripadaju grupi druže se sa istomišl jenicima učestvuju u promoci j i kval itetnihpojedinaca itd

Dve najvažni je uloge lokalnih zajednica za GNULinuks distribuci je su

1 pružanje tehničke podrške i edukaci je na maternjem jeziku2 rad na lokal izaci j i i pri lagođavanje distribuci je lokalnim potrebama

Informaci ja da postoje lokalne zajednice slobodnog softvera je od naročitogznačaja za početnike i korisnike koj i nedovol jno dobro znaju strane jezike(naročito engleski jezik) Ako izuzmemo komerci ja lne projekte otvorenog koda(Red Het SUSE) ne postoje zvanične škole i kursevi za slobodni softver Zaedukaci ju početnika je uglavnom zadužena zajednica a jasno je da je učenje namaternjem jeziku uvek lakše nego na bi lo kom drugom stranom ma kol ikodobro ga poznajete

Forumi i viki stranice lokalnih zajednica su prave bibl ioteke u koj ima korisnicimogu da nađu većinu odgovora na svoja pitanja a za sva ostala tu su forumi iIRC kanal i zajednica na koj ima uvek ima nekoga i koj i imaju već gotova rešenjaza vel iki broj problema

U potrazi za idealnom distribucijom

28

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Lokalne zajednice kao kriterijum za izbor idealnedistribucijePočetnicima i korisnicima koj i ne vladaju dobro engleskim jezikom toplopreporučujemo da biraju GNULinuks distribuci je koje imaju aktivnu lokalnuzajednicu Ovladavanje novim operativnim sistemom je mnogo lakše ukol iko vambdquoleđa čuvardquo lokalna zajednica na koju se uvek možete osloniti

Već smo spomenul i da su popularni je GNULinuks distribuci je namenjenepočetnicima Slučaj je isti i sa lokalnim zajednicama okupl jenim oko nj ih Ovomeđutim ne znači da je kval itet usluga koje nude manje popularne lokalnezajednice okupl jene oko distribuci ja namenjenih napredni j im korisnicima loši j i Manje popularne distribuci je okupl ja ju manje l judi a l i zato oni poseduju većeznanje Iskustvo sa zajednicama okupl jenim oko slobodnog softvera je uglavnompozitivno i ukazuje na to da kval itet usluga koje one nude korisniku ni je uslovl jenpopularnošću i masovnošću zajednice nego iskl jučivo njenom (ne)aktivnošću

U svakom slučaju dosadašnj i saveti za izbor idealne distribuci je važe i dal jeSoci ja lni aspekt slobodnog softvera je samo dodatni faktor koj i vam može pomoćipri donošenju odluke kada se dvoumite između nekol iko mogućih rešenja

Još uvek ne postoj i na jednom mestu potpuni i ažurirani spisak svih aktivnihsrpskih zajednica Nešto najbl iže tome može da se nađe na adresihttps pulsslobodewordpresscom Za informaci je o nekim drugim lokalnimzajednicama koje možda postoje al i nisu na ovom spisku moraćete sami dapretražite internet

Lokalizacija kao kriterijum za izborZa lokal izaci ju GNULinuks distribuci ja i GNU programa odgovorni su pojedinci ilokalne zajednice Sasvim sol idnu srpsku lokal izaci ju mogu imati i projekti koj iuopšte nemaju svoju lokalnu zajednicu a isto tako lošu lokal izaci ju mogu imati iprojekti sa dobrom lokalnom zajednicom Sve je stvar prioriteta zajednica iaktivnosti pojedinaca

Pravu i kontrol isanu lokal izaci ju može imati samo lokalni projekat Ovakvihprojekata u Srbi j i ima malo i teško se probi ja ju čak i u lokalu u konkurenci j isvetskih projekata Istina je da mnoge veće GNULinuks distribuci je imaju srpskulokal izaci

Oslobađanje

29

Broj 33

ju u ponudi pa se možda sl ični lokalni projekti koj i su usmereni samo na striktnulokal izaci ju smatraju nepotrebnima Uzvodna lokal izaci ja u slučaju Srbi je vrlo čestobude veoma loše čak nakaradno sprovedena Jedna polovina programa jelokal izovana srpskom ćiri l icom a druga latinicom Ako postoj i još delova sistemakoj i uopšte ni je lokal izovan onda se pojavl ju ju i delovi programa koj i su naengleskom Zato ćemo se vratiti na prvu rečenicu ovog pasusa i ponovo utvrditi dasamo lokalni projekat može potpuno kontrol isati pravu srpsku lokal izaci ju

U Srbi j i za sada imamo dva aktivna projekta GNULinuks distribuci je ndash TriOS(http triosrs) i Serbian (http wwwdebian-srbi ja iz rspserbianhtml) Obaprojekta su mlada i imaju svoj ih prednosti i mana Kome treba lokal izovanoperativni sistem može da proba jedan od ova dva projekta

U potrazi za idealnom distribucijom

30

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Iako ove dve domaće distribuci je nisu baš naj idealni je interesantno je probati ih iuporediti sa drugim distribuci jama

Za kraj serijalaNamera nam je bi la da kroz ovaj seri ja l o kriteri jumima pri izboru idealnedistribuci je definišemo većinu kriteri juma pri izboru i pokažemo zašto je teškoodgovoriti na jednostavno pitanje bdquoKoju mi distribuci ju preporučujeterdquo

Ni na samom kraju nismo dal i konkretan odgovor na pitanje koja je idealnaGNULinuks distribuci ja Suviše je subjektivnih ocena da bi se mogao datikonkretan odgovor Smatramo da je jako teško napisati neki algoritam izbora pokriteri jumima koje smo identifikoval i i definisal i a možda je čak i nemoguće poštose izlazi stalno menjaju Izlazi iz tog algoritma su GNULinuks distribuci je koj ih izdana u dan ima sve više a i one stare se stalno menjaju

Sam seri ja l bdquoU potrazi za idealnom distribuci jomrdquo neće biti završen samo zato štose više neće baviti kriteri jumima pri izboru nego će pokušati da predstavl jaGNULinuks distribuci je koje su po nečemu bdquoidealnerdquo

Oslobađanje

31

Broj 33

ORM

Autor Dejan Čugal j

Object relation mapping (ORM)

ORM (eng Object RelationMapping) je način postizanja traj-nosti (eng persistence) objekataunutar relacionih baza podatakaModel deluje kao posrednik nalogičkom delu apl ikaci je Automat-ski presl ikava podatke iz objekata ubazu i nazad na zahtev apl ikaci jeDa bismo objasni l i kako ovo sveradi moramo da vam predstavimoORM frejmvork (eng framework)programa otvorenog koda -Hajbernejt (eng Hibernate -http hibernateorgorm)

Šta je ORMUkratko ORM je automatizovano transparentno presl ikavanje objekatakorišćenjem metapodataka koj i opisuju mapiranje veze između objekta i baze

ORM (2 deo)

Slobodni profesionalac

32

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

podataka u apl ikaci jama koje su napisane u objektno ori jentisanim programskimjezicima Apl ikaci ja komunicira sa ORM-om preko njegovog vlastitog API-ja (engapplication programming interface) i određenih objekata Ova komunikaci ja jepotpuno odvojena od komunikaci je koja se odvi ja između ORM-a i baze podatakapreko SQL-a i DBC-a

Da bi se postigla i dostigla potpuna snaga ORM-a u apl ikaci j i koju projektujemonikako se ne sme iskl jučiti znanje relacionih modela SQL jezika te poznavanjeDBMS-a u kome se radi ORM ni je ništa drugo do srednj i sloj između gorepomenutih tehnologi ja i objektno ori jentisanog programiranja kao što smo to dosada već više puta naglasi l i

Implementacija ORM-aPostoje razl ičiti načini implementaci je ORM-a Mark Fasl (Mark Fussel) je 1997definisao četiri nivoa

1 bdquoČistrdquo relacioni način2 Slabo mapiranje objekata3 Umereno mapiranje objekata4 Potpuno mapiranje objekata

bdquoČistrdquo relacioni način

Cela apl ikaci ja ukl jučujući i korisnički interfejs dizajnirana je relacionim modelom iSQL relacionim operatorima Ovakav pristup je odl ičan za male projekte Direktanpristup SQL-u omogućava fino podešavanje svakog aspekta upita koj i se postavl jabazi podataka Osnovne mane su portabi lnost (prenosivost) i održavanje ovakvihsistema pogotovo ako se planira korišćenje apl ikaci je na duži rok Ovakvi sistemimasovno koriste sačuvane procedure (eng stored procedures) što znači da jeposlovna logika (eng busines logic) prebačena na samu bazu podataka

Slabo mapiranje objekata

Entiteti su predstavl jeni kao klase i mapiranje se radi ekspl icitno ka relacionimtabelama SQLJDBC je sakriven od poslovne logike korišćenjem poznatih šablona(patterns)

Umereno mapiranje objekata

Slobodni profesionalac

33

Broj 33

Dizajn apl ikaci ja se svodi na objektne modele SQL se generiše u vremekompaj l iranja (eng build-time) i l i u vreme izvršavanja (eng run-time) Specifikaci jaupita nad bazama podataka se radi na objektno ori jentisanom jeziku Ovakvisistemi se koriste u apl ikaci jama srednj ih vel ičina kod koj ih je bitna portabi lnostizmeđu razl ičitih sistema za upravl janje bazama podataka (DBMS)

Potpuno mapiranje objekata

Podržava sofisticirano objektno model iranje nasleđivanje i pol imorfizamEfikasnost dobi janja podataka je na visokom nivou i koriste se metode kao što sulenjo učitavanje (eng lazy loading) i strategi ja keširanja (eng caching) Implementaci ja je transparentna u apl ikaci jama Ovaj nivo je jako teško dostići Pojedincu su potrebne godine razvoja da postigne ovakvu fleksibi lnost pristupa imanipulaci ja u relacionim bazama podataka Upravo ovaj nivo se postiže ako sekoriste rešenja ORM-a kao što je Hajbernejt

Zašto ORMImplementaci ja ORM rešenja pogotovo ako seprvi put susrećete sa ovim modelom može dabude veoma frustrirajuća i malo teža zaimplementaci ju Kada ovo kažemo misl imo daprogramer koj i implementira ORM i hoće da istibude kval itetno urađen mora da posedujepredznanje objektno ori jentisanog programiranjai naprednih tehnika kao što su nasleđivanje ipol imorfizam

Ovo inicira fundamentalna pitanja

bull Pa zašto bi iko onda implementirao ovako nešto kompleksnobull Vredi l i truda upuštati se uopšte u ORM

Odgovor ni je jednostavan Dosadašnja iskustva u korišćenju ORM-a i njegovapopularnost već daju odgovor na postavl jeno pitanje Očigledno je da su benefitikoje donosi ovaj model veći od kompleksnosti njegove implementaci je a to su

Hibernate ORM

34

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Veća produktivnost

ORM smanjuje kol ičinu koda potrebnog za ostvarivanje trajnosti podataka Ovoomogućava programeru da vreme koje bi utrošio na ručno mapiranje podatakautroši na druge delove apl ikaci je

Lakše održavanje

Manje l ini ja koda osigurava bol ju razuml j ivost (i možda bol j i kval itet koda) jernaglašava apl ikaci jsku logiku ORM takođe ublažava uticaj nastal ih promena kaošto su promene u bazi strukturi tabela i td

Prenosivost

Većina ORM rešenja podržava sisteme za upravl janje bazama podataka raznihproizvođača ORM u potpunosti odvaja sloj apl ikaci je od stvarne SQL komunikaci jekoja se odvi ja u pozadini Time omogućava da se pišu apl ikaci je koje će moći da seizvršavaju na razl ičitim bazama podataka bez potrebe za dodatnim kodiranjemOva komunikaci ja se odvi ja sa programskim interfejsima ORM-a nezavisno oDBMS-u sa koj im je u bi lo kom momentu povezan ORM takođe omogućava lakšiprelaz sa manj ih na veće baze podataka tokom razvoja apl ikaci je

Uvidel i smo da trenutno postoje dve paradigme koje se bdquosudarajurdquo i koje supodjednako dobre same za sebe Relaciona paradigma potvrđuje da sve što jeizgrađeno na matematičkim osnovama je i trajno u smislu kval iteta koje posedujeU domenu u kom relaciona paradigma egzistira ona je ako je to u ovo vremeuopšte moguće tvrditi nezamenj iva

Ono što otvara pitanja i daje razlog za sumnju je koja je krajnja granicaupotrebl j ivosti relacione paradigme tj kol iki su kapaciteti složenosti zahtevaapl ikaci ja sa kojom može da se nosi Praksa je pokazala da je sasvim mogućebdquoizvestirdquo složene projekte - al i održavanje skalabi lnost razuml j ivost prenosivost -pitanja su sa koj im se relaciona paradigma teško može izboriti

Sa druge strane svoj habitat u informacionim tehnologi jama je našla i objektna

Slobodni profesionalac

35

Broj 33

paradigma Iako na prvi pogled ova dva modela nemaju ništa zajedničko - što je uneku ruku i istinito gledajući prirodu podataka koj im manipul išu - praksa jepokazala da su usko povezane i skoro da imaju sinaptičku vezu

Pitanje bdquokako spoj iti te sinapserdquo dovelo je do žučnih rasprava u uskim naučnimprogramersko-administratorskim krugovima Rodi l i su se razni model i a l i jedan jeiskočio i polako ulazi u široku primenu - a to je ORM Svoj im supti lnim pristupomproblemu nekompatibi lnih paradigmi nekako je uspeo da stvori taj nedostajućibdquoelektrični signalrdquo koj i ih je povezao Ovo je omogući lo da dve strane koje susvaka za sebe u svom domenu ostavi le i ostavl ja ju duboki trag u informacionimtehnologi jama sarađuju i donesu novi kval itet

Korisni l inkovi

[1] Hibernejt http hibernateorg[2] Viki http googlLlZulw[3] Tutori ja l i http googlCGzvnc

Hibernate ORM

36

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Autor Kriptopank

Šta su zapravo metapodaci Najkraće rečeno to su podaci o podacima i l iinformaci je koje opisuju podatke

Najpre da napravimo razl iku između podataka i metapodataka Podaci sunaprimer snimak (i l i transkript) vaših telefonskih razgovora sadržaj poruka kojepišete primate i l i šal jete podaci koje kačite na internet i l i preuzimate pretrageGuglom postovi na forumima dopisivanja na IRC kanal ima i l i drugim četovimaaudio i video snimci Skajp razgovora i tako dal je

Hajde da vidimo šta bi bi l i odgovarajući metapodaci za ove primere

bull Za telefonske razgovore metapodaci mogu biti lokaci ja učesnika brojevitelefona trajanje razgovora IP i MAC adresa

bull Za poruke četove i Skajp i l i druge video-audio komunikaci je sl ično je kao kodtelefonskih razgovora

To su samo metapodaci

Internet mreže i komunikacije

37

Broj 33

bull Kod foruma i pretraga Guglom ima malo manje metapodataka al i Gugl i raznisajtovi i forumi ionako čuvaju logove o korisnicima što su takođe metapodaci

Ako do sada koj im slučajem niste uvidel i opasnost po privatnost u ovimmetapodacima koje svako od nas smrtnika svakodnevno ostavl ja za sobom usvetu interneta i ostal ih digitalnih komunikaci ja nadamo se da će vas ovaj primermakar podstaći na razmišl janje a možda i na nešto više

Zamisl i te da neko (zvaćemo ga posmatrač) stalno sakupl ja metapodatke koje zasobom ostavl jate kao mrvice hleba Posmatrač recimo zna da se nalazite naautoputu nedaleko od famoznog Feketića da se ne krećete da zovete AMSS zatimšlep službu i možda taksi a l i ne zna šta ste razgovaral i I l i posmatrač vidi da steprvo zval i aerodrom Nikola Tesla pa odmah potom taksi a l i ne zna šta sterazgovaral i I l i posmatrač vidi da ste zval i prvo šest brojeva či je identitete takođezna pa vidi da se oni zatim kreću ka vama - GPS (eng Global Positioning System) pa zatim pica servis Mekdonalds i neku poznatu prodavnicu kineske hrane al i nezna šta ste razgovaral i

Posmatrač ne mora da bude mnogo pametan niti da prisluškuje vaše razgovore dabi shvatio šta se dešava i l i šta će se desiti Sasvim mu je jasno da vam je u prvomprimeru auto stao na autoputu zatim da ste se u drugom slučaju uputi l i naaerodrom i da možda putujete van zemlje i l i ste poslal i taksi po nekoga saaerodroma a da u trećem slučaju okupl jate žurku kod vas Više možete pogledatina http googl7vUjP

Iako su to bdquosamordquo metapodaci treba biti svestan da ti metapodaci o vama stvarajujednu digitalnu sl iku i l i bol je reći digitalni mozaik i na neki način vas jedinstvenoodređuju Pogotovo kada se planski prikupl ja ju na više nivoa (kompjuter pametnitelefon pametni automobi l i kreditna kartica) metapodaci čine vaš digitalniidentitet Al i da stvar bude još gora ta sl ika o vama ne mora nužno biti istinita jerse lako može lažirati Recimo možete zameniti telefone i l i automobi le sa nekimnamerno i l i slučajno i l i vam neko može jednostavno ukrasti telefon laptop i l ikreditnu karticu Zaniml j iv video http googlKO1fKf

Evo jednog primera koj i vas može uvući u vel ike nevol je Recimo da prolazitenekom zabačenom ul icom i da vam neprimetno ispadne telefon al i vi to neprimetite i nastavite dal je svoj im putem U toj ul ici se samo nekol iko minutakasni je desi neko ubistvo i vas pozovu u pol ici ju kao osumnj ičenog Ako koj im

To su samo metapodaci

38

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

slučajem nemate dobar al ibi i l i nemate svedoka da posvedoči da niste bi l i u tojul ici nego tamo gde ste stvarno bi l i a drugih svedoka nema - možete jako lošeproći Zaniml j ivi video http googlspS5OZ

Metapodaci se takođe nalaze i u faj lovimapodacima koje svakodnevnopreuzimamo sa interneta pravimo i koristimo Svaki tip podatka može da sadržiodređene metapodatke koj i bol je opisuju sam podatak kao naprimer vremenastanka podatka kol iko je vremena potrošeno za njegovo kreiranje kol iko putamu je pristupl jeno kad je poslednj i put pristupl jeno i tako dal je Iako se ovakvimetapodaci možda još uvek čine bezazlenim oni mogu sadržati i IP adresuračunara sa kog su napravl jeni GPS koordinate (najčešće PNG format sl ika satelefona) ko ga je napravio (l ičnost i l i kompani jaorganizaci ja) naziv uređaja imodel sa koga je napravl jen kao i MAC adresu uređaja mej l adresu kreatorasoftver koj im je napravl jen i tako dal je Sve ovo može mnogo da naškodiprivatnosti izvornog kreatora faj la pogotovo ako je sadržaj poverl j iv Ukol iko nekopresretne taj podatak na internetu može saznati od koga je potekao Da ovo možebiti katastrofa po kreatora takvog faj la može i lustrovati primer torenta Ako stedošl i u posed nekih sl ika i l i video materi ja la i l i teksta koj i žel i te da podel ite sasvetom preko nekog torent sajta morate taj podatak prvo očistiti odmetapodataka da ne bi svako ko skine to što ste okači l i saznao da vi stoj i te izatoga

Internet mreže i komunikacije

39

Broj 33

Ljudi se konstantno prate metapodaci se sakupl ja ju i to ni je sada već ništa novoal i možemo da se trudimo da iza sebe ostavl jamo malo manje nežel jenihmetapodataka i da ih takoreći čistimo iz podataka koje razmenjujemo Na srećupostoje programi koj i ovo dobro rade

Najpre je potrebno da vidimo koje sve metapodatke neki faj l sadrži kako bismo seuveri l i da ovi metapodaci stvarno postoje i da je faj l bezbedan nakon nj ihovogbrisanja

Ako koristite operativne sisteme GNULinuksa treba da iz terminala preuzmete iinstal irate program pod nazivom exiftool

sudo apt-get install exiftool

Ovaj program će nam pružiti uvid u sve metapodatke koje faj l sadrži Korišćenje jeiz terminala al i je zato veoma jednostavno samo ga pokrenite na sledeći način

exiftool File

i l i

exiftool putanjadofajlapočevodkorenogdirektorijuma

Dobićete prikaz metapodataka koje je program pronašao Sada je potrebno davidimo da l i je podatak bdquoprl javrdquo tj da l i ima u njemu nešto da se briše i da akoima iz njega sve nepotrebno obrišemo Tu će nam pomoći drugi program zvaniMAT (eng Metadata Anonymisation Toolkit) koga možete naći na sajtuhttps matboumorg i l i jednostavno za korisnike Ubuntua i Debi jana uSoftverskom centru i l i ga možete instal irati iz terminala

sudo apt-get install mat

MAT će proveriti da l i je podatak bdquoprl javrdquo i l i ne i za vas ga očistiti od nežel jenihmetapodataka

Kada očistite faj l on je spreman za del jenje sa drugima a vi ste bezbedni jer nikone može reći da je faj l potekao sa vašeg računara

To su samo metapodaci

40

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Autor Dejan Čugal j

GH Hardi bdquoPrava matematika nema uticaj na ratrdquo - odbrana matematičara1940 godina

Bi l Tat - britanski matematičar verovatno niste čul i za njega1942 godine je izveo ogroman poduhvat koj i je skratio rat dvegodine (barem po rečima Ajzenhauera) i spasio mi l ione životaNažalost njegova vel ičina je preminula 2002 godine obavi jenavelom tajne i nikada zvanično ni je priznato njegovo dostignuće

Tomi Flauers - bivši inženjer poštanskog saobraćaja pretvorio jematematičke ideje Tata u prvi računar a to ni je bio bdquoENIACrdquo1Preminuo je 1998 godine a pretpostavl jamo da nikada niste čul ini za njegovu vel ičinu

Ovi umni giganti bdquoBlečl i parkardquo omogući l i su Britani j i da dešifruje strogo poverl j ivumašinu koju je koristio Hitler da diriguje drugim svetskim ratom a to ni je bi labdquoENIGMArdquo nego nešto mnogo tajni je i značajni je Vel ika je verovatnoća da nistečul i ni za ovo Neki kažu da je to bio Hitlerov Blekberi (BlackBerry)

Izgubljeni heroji bdquoBlečli parkardquo

1 engl Electronic Numerical Integrator And Computer - prvidigitalni elektronski računar

Internet mreže i komunikacije

41

Broj 33

1939 godine bdquoBlečl i parkrdquo je postao ratni štab MI6 (britanske vojne obaveštajneslužbe) Do danas je procurelo u javnost i dokumentovano brojnim fi lmskimdokumentarcima samo da je tu Alan Tjuring uspeo da dešifruje nemačkumornaričku šifru poznatu kao bdquoENIGMArdquo i uvel iko doprineo pobedi saveznika a to jesamo deo priče koj i je ispričan

U Blečl i parku su bi la tri heroja AlanTjuring Bi l Tat i Tomi Flauers Od nj ihtroj ice jedino Alanu Tjuringu je priznat deozasluga za pobedu saveznika u Drugomsvetskom ratu Pregledom otkrivenihpodataka danas možemo da tvrdimo daje bdquoENIGMArdquo već sa početka drugogsvetskog rata bi la zastarela tehnologi ja Zbog toga je bi lo lako skinuti veo tajne sa

ovog uspeha heroja Blečl i parka

Izgubljeni heroji bdquoBlečli parkardquo

42

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Bi l Tat koj i je dešifrovao bdquoTANI sistemrdquo (TANI) i Tomi Flauers koj i je samo svojomintuici jom i znanjem sklopio prvi računar na svetu (bdquoKOLOSrdquo) u svrhu bržegdolaženja do informaci ja razbi jenog koda bdquoTANIrdquo tako da zastarelost šifrata budesvedena na minimum - radi l i su na novoj generaci j i mašina za šifrovanje Ovatehnologi ja je bi la prepoznata kao tehnologi ja budućnosti pa i danas iznadinformaci ja o tim tehnologi jama stoj i natpis bdquovrhunska tajnardquo (eng Top Secret) Upravo ovaj veo tajni oko šifrata bdquoTANIrdquo i prvog računara je rezultirao iskrivl jenjuistori je informatike

Za uspehe u prvim godinama rata je zaista zaslužno razbi janje bdquoENIGMArdquo šifrata ito ni je sporno al i krajem 1941 godine u etru planete se začuo novi zvuk To je bi lanova mašina za šifrovanje ni je bi la zasnovana na bdquoMorzeurdquo već je radi la naprincipu teleprintera

Jedna od kl jučnih ideja Hitlerovog ratovanja je bi la u vel ikoj mobi lnosti i brzomdelovanju trupa na terenu a da bi se to izvelo komunikaci ja je isto tako morala dabude u najmanju ruku putem radio signala

Razl ika je ogromna Razl ika je u kol ičini podataka koj i može da se prenese ovimbdquotajnimrdquo putem Prvi svetski rat je bio zaniml j iv jer su se šifrovane poruke baziralena rečima dok je Drugi u potpunosti otvorio vrata današnjoj kriptografi j i a to jematematika

Originalan nemački kocircdni naziv za ovaj šifrat bio je bdquoLORENCrdquo Britanska

Internet mreže i komunikacije

43

Broj 33

obaveštajna služba mu je dala nadimak bdquoTANIrdquo Čak ni dan danas ni je baš poznatokako je sve nastalo al i pouzdano se zna da je tajnu mašinu Hitler nazvaobdquoGehajmšrajberrdquo (nem Geheimschreiber) - mašina tajni

U srž i tehnologi ju šifrovanja bdquoLORENCrdquo šifrata nećemo ulaziti u ovom članku al iverujte nam na reč - ni je bi la jednostavna Može se pretpostaviti da je inspiraci jaŠenonovog 2 rada slučajnosti bi la upravo ova tehnologi ja iz Drugog svetskog rata

Ono čime se Treći rajh vodio je bdquosigurnardquo šifrovana veza koju niko ni je smeo dadešifruje Prenošenje šifrovanih poruka pomoću radio signala je dalo obaveštajnimslužbama mogućnost presretanja poruka poslatih radio talasima Da l i se ovo idanas dešava Imamo l i sigurnost u našim šifrovanim podacima današnj ice

Ono što je usledi lo nakon proboja ovog bdquoneuhvatl j ivogrdquo šifrata je upravo ono što jeprincip današnj ice kao neka vrsta protokola koj i mora da se ispoštuje uperfektnom šifarskom Šenonovom sistemu

1 NIKADA NIKADA NE KORISTITI DVA PUTA ISTI KLJUČ ZA ŠIFROVANJE2 NIKADA NIKADA KLJUČ NE SME DA SE ŠALJE ISTIM KOMUNIKACIONIM KANALOM

KAO PORUKA3 NIKADA NIKADA KLJUČ NE SME DA BUDE MANJ I NEGO ŠTO JE PORUKA (engl

2 Klod Elvud Šenon (eng Claude Elwood Shannon) (1916-2001) - Američkinaučnik i inženjer

Izgubljeni heroji bdquoBlečli parkardquo

44

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

one time pad) 4 NIKADA NIKADA NE SMEMO DA SAKRIVAMO SISTEM ŠIFROVANJA SVE MORA

DA JE OTVORENOG KOcircDA

Najveći propusti kriptologi je koj i su uočeni baš u Drugom svetskom ratu jesupokušaj sakrivanja sredstava koj im se generiše tajna poruka i nepoznavanjeŠenonovih krajnj ih granica informaci ja Kada kažemo bdquosredstvo i sakrivanjerdquomisl imo na algoritme Postavl ja se pitanje zašto je danas kriptologi ja sigurni ja negočetrdesetih i pedesetih godina prošlog veka

Danas uprkos tome što su algoritmi za kriptografi ju otvorenog kocircda tajnostinformaci ja je na višem nivou nego što je to bi lo dok je algoritam bio strogopoverl j iv Tajnost tajnih podataka se ne zasniva na tajnosti a lgoritama koj i generišutaj isti bdquotajni izlazrdquo (eng cipher text) nego u nemogućnosti matematičke inverznefunkci je koja bi šifrovan tekst otvori la Ovde se vidi da je svrha strukture otvorenogkocircda kao jednog od značajnih delova današnje kriptologi je ona koja ga činisigurnim i svima dostupnim

Sada kada se sa ove distance osvrnemo na Drugi svetski rat možemo videti kol ikosmo bi l i bl izu apokal ipse Naime Albert Ajnštajn je već 1944 godine imao urukama recept za nuklearnu bombu Šenon je mogao već u to vreme da nampredoči 100 siguran šifrat (tzv Hitlerovu super šifru) a l i ipak sreća nas jeposluži la da čovečanstvo tada ni je bi lo spremno da upotrebi svu raspoloživutehnologi ju

Albert Ajnštajn bdquoČetvrti svetski rat će se voditi tol jagamardquo

Zaboravl jeni heroj i Blečl i parka iako su odigral i važnu ulogu u pobedi saveznika usvetskom ratu postal i su žrtve bdquotop secretrdquo doktrine potpuno su zaboravl jeni inestal i su iz istori je

Zakl jučak ovog članka je da je ideologi ja otvorenog kocircda sasvim sigurno tu da nampomogne i da otvori vrata ka većoj sigurnosti novim idejama i kval itetu sameinfrastrukture sistema koju svi zajedno razvi jamo

Internet mreže i komunikacije

45

Broj 33

Autor Nikola Hardi

NabrajanjaBez brojeva

Za nabrajanje pojmova u Bimeru (eng Beamer) koristi se okruženje itemize aunutar tog okruženja možemo da dodajemo nove stavke pomoću item Primerizgleda ovako

beginitemizeitem Stavka Aitem Stavka Bitem Stavka C

enditemize

Sa brojevima

Postoje situaci je kada uz nabrajanje treba da stoje i redni brojevi - za to se koristienumerate okruženje a nove stavke se takođe dodaju pomoću item

beginenumerateitem Redni broj 1item Redni broj 2item Redni broj 3

endenumerate

prezentaci ja

Beamer (4 deo)

Sam svoj majstor

46

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

DefinicijeTreća situaci ja je nabrajanje parova termin - definici ja U tom slučaju se koristiokruženje description Već možete da pretpostavite kako se dodaju nove stavke

Primer

begindescriptionitem[Pojam A] Definicija izmišljenog pojma Aitem[Pojam B] Definicija izmišljenog pojma Bitem[Pojam C] Definicija izmišljenog pojma C

enddescription

Ostala podešavanja i zanimljivostiSva prethodna okruženja mogu da budu ugneždena jedno unutar drugog dotrećeg nivoa Treba biti pažl j iv jer sla jdovi vrlo lako mogu da postanu nečitl j ivi Osim toga moguće je izabrati i format oznake i l i rednih brojeva - na primer ovako

beginenumerate[I]beginenumarate[a)]

Takođe moguće je upravl jati pojavl j ivanjem pojedinih stavki na slajdovima Drugimrečima možemo da odredimo da se nabrajanja postepeno otkrivaju tako što ćemouz stavku dodati lt1-gt odnosno broj od kojeg slajda žel imo da se ta stavkapojavl ju je Tada će jedno nabrajanje biti bdquorazvučenordquo na više slajdovaJednostavni ja mogućnost je da u zaglavl je okruženja dodamo +- što znači dažel imo da se svakim slajdom otkriva po jedna nova stavka iz nabrajanja Znak bdquo-rdquo uoba primera znači da žel imo da se stavka pojavi na sledećem slajdu i da ostane

Sam svoj majstor

47

Broj 33

prisutna Možemo da izostavimo znak bdquo-rdquo i tada će stavka biti prisutna samo najednom slajdu i l i da napišemo raspon slajdova u koj ima žel imo da ta stavka budeprisutna

Rad sa kolonama i blokovimaDo sada su svi primeri podrazumeval i da je sadržaj napisan preko cele širineslajda al i Bimer (eng Beamer) ima i jednostavne mehanizme za razmeštanjesadržaja po kolonama Za rad sa kolonama se koristi okruženje columns unutarkojeg možemo da dodajemo nove kolone pomoću columnširina Sadržaj jemoguće potom pisati i van okruženja sa kolonama

U paru sa kolonama često se sreće i okruženje block koje se parametrizujenaslovom Primerom su i lustrovani i okruženje column i okruženje block

beginframebegincolumns

column05textwidthbeginblockNaslov levog blokaSadržaj u prvoj (levoj) koloni endblock

column05textwidthbeginblockNaslov desnog blokaSadržaj u drugoj (desnoj) koloni

endblockendcolumns

beginblockVan kolona

Beamer

48

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Tekst koji se nalazi ispod kolonaendblock

endframe

TabeleIako se u radu sa prezentaci jama sadržaj najčešće može uredno rasporeditipomoću kolona i nabrajanja nekada to ni je dovol jno jer su tabele pravi formatBimer podržava standardno Lateh (LaTeX) okruženje za rad sa tabelamaOkruženje za rad sa tabelama se zove tabular Pri kreiranju nove tabele moguće jepodesiti koje kolone će biti razdvojene l ini jom i da l i će nj ihov sadržaj biti centrirani l i uz levu i l i uz desnu ivicu Dodavanje novog reda se jednostavno radidodavanjem hline Lateh pruža zaista jako fleksibi lan rad sa tabelama i sigurno ćedoskočiti svim mogućim i nemogućim zamisl ima Potražite bi lo koje Lateh uputstvoza rad sa tabelama i radiće i sa Bimerom

beginframebegintabular | c | c | c | c |

hlineamp Ponedeljak amp Utorak amp Sreda hline

1 amp 16 amp 32 amp 64 hline2 amp 16 amp 128 amp 1024 hline3 amp 16 amp 512 amp 4096 hline

endtabularendframe

Sam svoj majstor

49

Broj 33

Beamer

Teoreme i istaknut tekstU nastavi su česta izlaganja teorema nj ihovih dokaza i primera U Bimer jeugrađena podrška za elegantno predstavl janje ove trojke Mehanizam takođepodržava postepeno otkrivanje sadržaja sla jda tako da slušaocima ne bude odmahotkriven dokaz teoreme Mehanizam za postepeno otkrivanje se kao i kodnabrajanja postiže pomoću bdquolt1-gtrdquo konstrukci je Evo kako to izgleda

beginframeframetitlePrimer teoreme

begintheoremlt1-gt Teorema kaže da su beamer prezentacijezanimljive

endtheorem

beginexamplelt2-gt Ovaj kod kreira slajd beamer prezentacijeendexample

beginprooflt3-gt Čestitamo stigli ste do kraja serijala o pravljenju beamer prezentacija

endproofendframe

50

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Za krajOvim člankom završavamo seri ja l o Bimeru Nadamo se da smo uspel i da vaszainteresujemo za ovu vrlo korisnu klasu Lateha Trudi l i smo se da vamprezentujemo najvažni je delove Bimera koje ćete najčešće koristiti pri l ikomkreiranja svoj ih prezentaci ja

Napominjemo još jednom da je Bimer samo jedna od klasa Lateha što znači da i zaBimer važi sve ono što ste već mogl i da pročitate u ovom časopisu kad smo pisal iseri ja l bdquoUvod u LaTeXrdquo (LiBRE brojevi 17 do 21) Štaviše ovaj seri ja l o Bimeru jebio nastavak upravo tog seri ja la U ovom seri ja lu nismo pisal i o samomformatiranju teksta u prezentaci jama jer se podrazumeva da važe ista pravi la kao iu Latehu a o tome smo pisal i u prethodnom seri ja lu

Hvala vam što ste prati l i ovaj seri ja l i žel imo vam puno uspeha u kreiranju Bimerprezentaci ja

Sam svoj majstor

51

Broj 33

Autor Nenad Marjanović

Kada smo se upoznal i sa podešavanj ima sistema i umrežavanjem vreme je za našprvi Biglbon Blek (BBB - eng BeagleBone Black) projekat Svakom od nas će ovajizazov dati razl ičite ideje a jedna od nj ih može biti i zaštita privatnosti internetkorisnika Nažalost u Srbi j i ne postoj i ni jedan izlazni tor server (eng node) i to jepomalo tužna sl ika s obzirom da govorimo o populaci j i od sedam mil ionastanovnika Al i ovu sl iku možemo promeniti udruženim snagama i za početakkreiranjem Tor transfer i izlaznog servera U ovde prikazanom grafikonufokusiraćemo se na bdquoRauter Brdquo tačku odnosno transfer server konfiguraci ju

BeagleBone Black Rev C

Vodič od prvog dana (3 deo) ndashBeagleBone Black kao Tor relej

Hardver

52

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Tor predstavl ja mrežu servera koj i se povezuju radi bol je enkripci je podataka izaštite IP adrese korisnika Naš ci l j je da danas postanemo deo ovog predivnogprojekta i da se nađemo na svetskoj karti Tor servera

Brzina interneta i zakonske regulativePotrebno je imati na umu nekol iko bitnih stvari

1 Naš server = naša odgovornost2 Obavezno naznačite da ste vi administrator a ne korisnik istog servera3 Da posedujete internet brzinu od 2 Mbs

Ako ispunjavamo tri navedena pravi la i odgovornosti možemo se posvetitiadministrativnim poslovima

Instalacija i podešavanjaU ovom primeru koristimo Debi jan Vizi (eng Wheezy) odnosno Debi jan 7 verzi juna našem BBB uređaju Vi možete testirati i druge Linuks platforme Prvododajemo izvornu bibl ioteku u etcaptsourceslist faj l pokretanjem sledećekomande u terminalu

echo deb httpdebtorprojectorgtorprojectorg wheezy main gt etcaptsourceslistdtorlist

Zatim dodajemo izvorni kl juč vršimo ažuriranje sistema i instal iramo tor i tor-arm(Tor monitoring sistem)

gpg --keyserver keysgnupgnet --recv 886DDD89gpg --export A3C4F0F979CAA22CDBA8F512EE8CBC9E886DDD89 | sudo apt-keyadd -apt-get updateapt-get install debtorprojectorg-keyring -yapt-get install tor tor-arm egrep screen -y

Ovim smo uspešno završi l i instalaci ju Tor servera i sistema za monitoring odnosnonadgledanja našeg Tor servera Sledećom komandom radimo na podešavanj imaTor servera koja se nalaze u etctortorrc faj lu Obratite pažnju i izvršite potrebne

Hardver

53

Broj 33

izmenu u pol j ima IP adresa (eng Address) nadimka (eng Nickname) i kontaktpodataka (eng ContactInfo) pre pokretanja ove komande Kopiramo i pokrećemokomandu u celosti u terminalu

egrep -v ^(|$) etctortorrcORPort 443Address 19216811Nickname LibreTorRelayRelayBandwidthRate 100 KBRelayBandwidthBurst 120 KBContactInfo ltvi at gmail dot comgt irPort 8080DirPortFrontPage etctortorhtmlExitPolicy reject

Detal je o svim vrednostima nećemo iznositi u ovom broju LiBRE časopisa al ićemo o nj ima pisati u sledećem u kome ćemo pričati o zaštiti Tor servera imogućnosti podešavanja određenih izlaznih pravi la (eng ExitPolicy)

Nakon ovoga možemo primetiti da se u folderu etctor ne nalazi torhtml faj l Ovaj faj l ni je od vel ikog značaja i možete ga l ično napraviti i l i preuzeti jednu kopi ju- naprimer sa sledeće lokaci je

cp usrsharedoctortorhtml etctortorhtml

Opcije i Tor Arm monitoringDa bismo ispravno koristi l i Tor Arm potrebno je urediti još jednom etctortorrcfaj l i restartovati servis

echo -e ldquoDisableDebuggerAttachment 0n AvoidDiskWritesrdquo gtgt etctortorrcsudo service tor reload

Ukol iko žel ite koristiti Tor Arm za nadgledanje aktivnosti na serveru pokreniteprogram screen kl iknite na bdquoEnterrdquo i kucajte sudo -u debian-tor arm Naekranu ćete imati sl ičan prikaz

BeagleBone Black

54

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Hardver

55

Broj 33

Da bismo napusti l i screen program koristimo Ctrl + a + d i na taj način kada sesledeći put pri javimo na server kucamo samo screen -r u terminalu - i naći ćemose ponovo na čuvenom Tor Arm monitoring ekranu

Nakon svake promene konfiguracionih faj lova ako slučajno nismo nešto podesi l ikako treba restartujemo servise

U sledećem broju časopisa govorićemo o minimalnim podešavanj ima ikonfigurisanju izlaznog Tor servera (eng Tor Exit Node) opci jama sigurnosti isl ičnim detal j ima u vezi sa našim prvim projektom Do čitanja u sledećem broju

BeagleBone Black

LUGoNS BarCamp 4subota 7 mart 2015 godine

Četvrti LUGoNS-ov Barkemp (BarCamp) održaće se u Novom Sadu usubotu 7 marta 2015 godine na Fakultetu tehničkih nauka sa početkomu 12 časova

Ulaz je slobodan

Poziv za predaju radovaLUGoNS poziva sve zainteresovane da pošal ju svoje radove (predavanjaprezentaci je radionice i diskusi je) do 28 februara 2015 godine

Oblasti iz koj ih možete da pri javite vaše radove su

bull Slobodan softverbull Zaniml j iv hardverbull Hakerski zakonibull Sigurnosne noćne morebull Anonimnost i privatnost na internetubull Duboki veb (eng Deep Web)bull Soci ja lne mrežebull Soci ja lni inženjeringbull Hakovanje mobi lnih uređajabull Internet u oblaku (eng Clouds) ndash hakovanje razbi janje i neočekivano korišćenjebull DPI (eng deep packet inspection)bull Mreža i mrežna neutralnost ndash vlasništvo cenzura nadmudrivanje i pol itika bdquodefaktordquo standarda

bull Programiranje i programski jezici

Nemojte se ustručavati i slobodno nam se javite ako imate rad na gore navedenei l i sl ične teme koj i smatrate interesantnim

Stranica za predaju radova nalazi se na https events lugonsorgp=1658

Page 19: LiBRE 33 Lat

19

Broj 33

da se nešto dogodi lo) ASCII standard je proširen na 8 bitova odnosno ceo jedanbajt i sada podržava 256 karaktera Potražite na internetu termin bdquoASCII tabelardquo dabiste stekl i uvid u to kako izgleda tzv tabela ASCII karaktera

Rad sa pojedinačnim znakovima ne obećava mnogo Postoj i realna potreba zaradom sa rečima rečenicama l ini jama teksta itd Podaci koj i se sastoje od više odjednog karaktera se u domaćoj l i teraturi nazivaju znakovnim niskama madaodomaćen je i naziv bdquostringrdquo koj i je i mnogo češće u upotrebi U programskomjeziku C se stringovi predstavl ja ju običnim nizovima karaktera (char niz[]) a krajteksta se označava NULL karakterom odnosno speci ja lnim znakom 0 či jabrojevna predstava je pogađate nula Ovakva predstava tekstualnih podatakanosi sa sobom i pojedine kompl ikaci je Gotovo svi savremeni jezici poznaju tipstringa dok su u C-u stringovi ipak samo obični nizovi

Da se podsetimo nizovi u C-u su zapravo pokazivači na deo u memori j i Kadapokušamo da pristupimo jednom elementu niza tada se vrši operaci jabdquodereferenciranjardquo sa zadatim odstupanjem Sledi nekol iko primera koj i i lustrujurad sa nizovima na primeru nizova karaktera

char niz1[] = zdravoniz1[0] = Z

char niz2[5]niz2[0] = 0niz2[1] = kniz2[2] = 0

Pri deklaraci j i niza 1 ni je zadata dužina zato što je u jednom izrazu zadata iinici ja l izaci ja niza koja glasi ldquozdravordquo Prevodi lac može sam da zakl juči kol ikomemori je je potrebno

U drugom primeru je kreiran niz karaktera dužine 5 Međutim popunjena su samoprva tri mesta Primećujete razl iku između prvog i trećeg elementa Prvi je cifra 0(uokviren je navodnicima) a treći je brojčana vrednost 0 koja označava krajstringa

Može se primetiti još jedna razl ika u data dva primera U prvom primeru sukorišćeni dvostruki navodnici dok su u drugom korišćeni jednostruki Razlog za to

Uvod u programski jezik C

20

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

je što se znakovni nizovi koj i su uokvireni dvostrukim navodnicima smatrajustringovima i podrazumevano im se dodaje bdquoterminatorrdquo odnosno znak NULL koj ioznačava kraj stringa Jednostruki navodnici se iskl jučivo koriste za predstavl janjepojedinačnih karaktera Ovo znači da zapisi ldquoardquo i a nisu jednaki Prvi zapis jedužine 2 jer ima i znak NULL koj im je završen

Ispisivanje i učitavanje stringovaPre nego što nastavimo dal je biće objašnjen jednostavan način za ispisivanje iučitavanje stringova pomoću standardnog ulazaizlaza Da se podsetimobibl ioteka za standardni ulazizlaz (ispis podataka u konzol i odnosno terminalu) jestdioh Ukol iko se koristi formatirani ispis potrebno je funkci jama printf() iscanf() proslediti format string koj i sadrži speci ja lan znak s čime je označenoda žel imo da ispišemo znakovni niz sve do NULL karaktera Drugi način jeupotrebom funkci ja puts() gets() i getline() iz bibl ioteke stringh Sledi primer

include ltstdiohgt include ltstringhgt int main()

char niz1[] = Zdravo svete

printf(sn niz1)

scanf(s niz1)puts(niz1)

return 0

Može se primetiti da je u slučaju funkci je printf() potrebno naglasiti speci ja lnimkontrolnim karakterom n da nakon ispisa treba preći u novi red Funkci ja puts() topodrazumevano radi

Za ove i sve druge funkci je dodatnu pomoć je moguće pronaći u Linuksovim manstranicama u odel jku 3 koj i je posvećen standardnim bibl iotekama Recimo mangetline sadrži detal jno uputstvo o funkci j i getline()

Kako da

21

Broj 33

Kopiranje stringovaKao što je u prethodnom odel jku napomenuto stringovi su u C-u samo običninizovi To znači da sledeći kod verovatno neće uraditi ono šta bi bi lo očekivano

niz1 = niz2

Ovime smo pokazivaču niz1 bdquorekl irdquo da pokazuje tamo gde i pokazivač niz2 Efektivno oni sad pokazuju na isti tekst međutim ako izmenimo niz1 to će seodraziti i na niz2 a važi i obrnuto Ovime smo dobi l i samo dva pokazivača na istideo memori je a uglavnom to ni je bio ci l j

Drugi način kako bismo sadržaj drugog niza mogl i da kopiramo u prvi niz je petl jakojom bismo kopiral i element po element Pošto je operaci ja kopiranja stringovavrlo često potrebna postoj i standardna bibl ioteka za rad sa stringovima koja sezove stringh a funkci ja za kopiranje stringova je strcpy()

strcpy(niz1 niz2)

Dati primer kopira sadržaj niza 2 u niz 1 Kopira se element po element sve dok seu nizu 2 ne naiđe na NULL karakter Ovakvo kopiranje (element po element) seinače u stranoj l i teraturi naziva i bdquodeep copyrdquo i vrlo često se sreće u radu sastrukturama podataka gde je potrebno obići celu strukturu podataka i svakielement kopirati a strukturu opet izgraditi u drugom delu memori je

Zaniml j ivo je što je kopiranje stringova moguće pojednostaviti ukol iko definišemonovi tip podatka kao strukturu koja sadrži niz karaktera i potom izvršimo kopiranjeOvo je trik koj i se uglavnom ne koristi u praksi i spomenut je samo kaozaniml j ivost

include ltstringhgt struct str char niz[50]

int main()

struct str s1struct str s2

Uvod u programski jezik C

22

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

strcpy(s1niz zdravo)s2 = s1

s2niz[0] = Z

puts(s1niz)puts(s2niz)

return 0

Kreirana je struktura str koja sadrži pol je niza karaktera pod nazivom niz Pozivomfunkci je strcpy() kopiramo string ldquozdravordquo u s1 čime smo bdquonapuni l irdquo sadržajobjekta s1 Potom je izvršena redovna dodela čime je sadržaj objekta s1 kopiran us2 Zatim je izmenjen samo prvi karakter objekta s2 i oba stringa su ispisanaPrimećujete da su kopirani svi znakovi a da je izmenjen samo drugi objekatZaniml j iv trik

Poređenje spajanje i pretraga stringovaDruga vrlo česta situaci ja je poređenje dva stringa Ukol iko bi poređenje bi loizvršeno upotrebom redovnog operatora za poređenje == tada bi u stvari bi lepoređene samo adrese na koje pokazuju pokazivači tih stringova jer da sepodsetimo stringovi su u C-u samo obični nizovi Ispravan način za poređenje dvastringa je pozivanjem funkci je strcmp() či ja je povratna vrednost 0 ukol iko su jojprosleđeni stringovi sa jednakim sadržajem

include ltstringhgt int main()

char niz1[] = zdravochar niz2[] = zdravo

if( strcmp(niz1 niz2) == 0)puts(Stringovi su jednaki)

elseputs(Stringovi nisu jednaki)

return 0

Kako da

23

Broj 33

Funkci ja strcmp() poredi svaki element prosleđenih nizova pojedinačno a dobraje vežba implementiranje nove funkci je strcmp() koja će unutar petl je da porediodgovarajuće elemente prosleđenih nizova i potom vratiti rezultat 0 ukol iko su svielementi jednaki Potrebno je pripaziti na situaci ju kada su stringovi razl ičitihdužina

U svetu računara spajanje dva sadržaja se zove konkatenaci ja Odatle i nazivfunkci je za spajanje dva stringa strcat() Važno je uveriti se da je string u koj i sedodaje sadržaj dovol jno vel ik da ga prihvati inače može da dođe do nežel jenogprepisivanja u memori j i uništavanja drugih podataka i neispravnog ponašanjaprograma

Pretraga unutar stringa se može obaviti funkci jom strstr() Ova funkci ja kaoparametre očekuje pokazivač na niz karaktera (string) u kojem je potrebno pronaćistring koj i je prosleđen kao drugi parametar Povratna vrednost je pokazivač nadeo memori je gde se žel jeni string prvi put pojavio

Sledi malo opširni j i primer koj i i lustruje spajanje pretragu i kopiranje stringova

include ltstringhgt int main()

char niz_a[50] = LiBRE je char niz_b[] = najbolji casopischar niz_c[] = e-magazin

strcat(niz_a niz_b)puts(niz_a)

char cilj = strstr(niz_a casopis)strcpy(cilj niz_c)

puts(niz_a)

return 0

Uvod u programski jezik C

24

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Pretvaranje tipova podataka u stringove ipretvaranje iz stringovaPretvaranje podataka iz jednog tipa u drugi i l i kastovanje (eng type casting) se zavećinu tipova vrši jednostavno pisanjem tipa u zagradama na primer (int)523 Stringovi su i po ovom pitanju drugači j i Postavl ja se pitanje šta pretvoriti ucelobrojni tip - da l i adresu na koju pokazuje pokazivač niza koj i predstavl ja stringPrvi element Šta ako taj string ni je broj Predstavićemo rešenje za konverzi jubrojeva u stringove i obrnuto

Ispis podataka na ekranu se takođe može smatrati konverzi jom Broj sa pokretnimzarezom je u memori j i prikazan na pomalo čudan način a pozivom funkci jeprintf() kada je kao format zadat f na ekranu ćemo dobiti razuml j iv niz znakovaSl ičan rezultat možemo dobiti funkci jom sprintf() a jedina razl ika u odnosu naprintf() je ta što sprintf() kao prvi argument očekuje pokazivač na string dok sudrugi (format string) i treći (argumenti koj i se povezuju sa formatnim stringom)sl ični kao kod funkci je printf()

Kod pretvaranja stringova u brojevne tipove može poslužiti funkci ja sscanf() kojase ponaša sl ično kao funkci ja scanf() s tim što je prvi argument adresa(pokazivač na string) koju žel imo da skeniramo u nadi da će se poklopiti saformalnim stringom koj i je drugi argument a rezultati će biti sačuvani u adresamakoje su prosleđene kao 3 4 i ostal i parametri Drugi način za pretvaranje stringovau celobrojne brojeve i brojeve sa pokretnim zarezom su funkci je atoi() i atof()

Funkci je koje koriste formatni string su česte u jeziku C i zaslužuju posebnu pažnjumeđutim to je priča za poseban članak U ovu klasu funkci ja spadaju recimo ifunkci je za rad sa datotekama

BezbednostRad sa stringovima može da bude izuzetno opasna stvar po pitanju bezbednostiprograma Ukol iko se niz karaktera ne završava NULL karakterom svašta može dapođe po zlu pri pozivu funkci ja kao što su strcpy() strcmp() i sl ične Cela klasatih funkci ja se oslanja na postojanje znaka koj i označava kraj stringa Kada stringni je propisno završen tada te funkci je mogu da zalutaju u deo memori je vanstringa i svašta može da pođe po zlu Ovakav tip napada se inače zoveprekoračenje bafera (eng buffer overflow) Preporučen način kako da izbegnete

Kako da

25

Broj 33

Pregled popularnosti GNULinuxBSDdistribuci ja za mesec februar

Distrowatch

Pad ltPorast gtIsti rejting =(Korišćeni podaci sa Distrovoča)

12345678910111213141516171819202122232425

MintUbuntuDebianopenSUSEelementaryMageiaFedoraManjaroCentOSLXLEArchBodhiAndroid x86Kal iPCLinuxOSPuppyRobol inuxLubuntuQ4OSBlack LabNetrunnerSimpl icityEvolveZorin4MLinux

2919gt1778gt1701gt1323gt1204gt1174gt1166gt1028lt1020gt965gt957gt907gt900lt760gt742lt732gt695gt670gt663gt655gt652gt629gt607gt583gt517=

takve nepri jatne situaci je pri radu sastringovima je da koristite verzi jefunkci ja koje su ograničenemaksimalnom dužinom stringa kaošto su strncpy() strncat() strncmp() i td Sve te funkci je kaotreći parametar zahtevaju broj koj iodređuje maksimalnu očekivanudužinu stringa Još jedna vrlo korisnafunkci ja je strlen() či j i zadatak je daodredi dužinu stringa Budite pažl j ivi ovo je prvo mesto gde se tražebezbednosni propusti u programimaNe verujte podacima koj i spol ja ulazeu vaš program a pogotovo kada je rečo stringovima

Uvod u programski jezik C

26

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Autor Dejan Maglov

Projekti slobodnog softvera obično počinju kao projekti pojedinca i l i male grupeprogramera a koj i rade na razvoju softvera či j i je ci l j da zadovol j i neke od nj ihovihl ičnih potreba Projekat će se smatrati uspešnim ukol iko se šira zajednicazainteresuje za njega nakon što prepozna korisnost softvera ne samo za pojedincekoj i su započel i projekat već i za širu zajednicu Kada je u pitanju slobodni softvervremenom je postala stalna praksa da se zajednica umeša u razvoj projekataDobri projekti sami privlače zajednicu l judi koj i su zainteresovani za nj ih i ona uvećini slučajeva preuzima na sebe testiranje pobol jšanje funkcionalnosti održavanje i tehničku podršku projekta

Zajednice slobodnog softvera mogu da se okupe oko projekta slobodnog softverapo teritori ja lnom principu i l i da nastanu kombinaci jom ovih principa

Primeri

bull LiBRE projekat okupl ja zajednicu oko projekta bez teritori ja lnog ograničenjabull LUGoNS (Linux User Group of Novi Sad) je zajednica korisnika Linuksa poteritori ja lnom principu bez obzira na konkretan projekat

bull Ubuntu-rs zajednica koja je kombinaci ja okupl janja zajednice oko konkretnogprojekta (Ubuntu) i teritori ja lnog principa koj i se ograničava na teritori ju Srbi je

Ova sinergi ja projekata i korisnika slobodnog softvera ima više prednosti i zakorisnike i za projekat Projekat se na ovaj način brže razvi ja dobi ja na

U potrazi za idealnom distribucijom

Socijalni kriterijumi za izbor idealnedistribucije (6 deo)

Oslobađanje

27

Broj 33

funkcionalnosti greške se brzo ispravl ja ju i td Korisnici dobi ja ju osećaj dapripadaju grupi druže se sa istomišl jenicima učestvuju u promoci j i kval itetnihpojedinaca itd

Dve najvažni je uloge lokalnih zajednica za GNULinuks distribuci je su

1 pružanje tehničke podrške i edukaci je na maternjem jeziku2 rad na lokal izaci j i i pri lagođavanje distribuci je lokalnim potrebama

Informaci ja da postoje lokalne zajednice slobodnog softvera je od naročitogznačaja za početnike i korisnike koj i nedovol jno dobro znaju strane jezike(naročito engleski jezik) Ako izuzmemo komerci ja lne projekte otvorenog koda(Red Het SUSE) ne postoje zvanične škole i kursevi za slobodni softver Zaedukaci ju početnika je uglavnom zadužena zajednica a jasno je da je učenje namaternjem jeziku uvek lakše nego na bi lo kom drugom stranom ma kol ikodobro ga poznajete

Forumi i viki stranice lokalnih zajednica su prave bibl ioteke u koj ima korisnicimogu da nađu većinu odgovora na svoja pitanja a za sva ostala tu su forumi iIRC kanal i zajednica na koj ima uvek ima nekoga i koj i imaju već gotova rešenjaza vel iki broj problema

U potrazi za idealnom distribucijom

28

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Lokalne zajednice kao kriterijum za izbor idealnedistribucijePočetnicima i korisnicima koj i ne vladaju dobro engleskim jezikom toplopreporučujemo da biraju GNULinuks distribuci je koje imaju aktivnu lokalnuzajednicu Ovladavanje novim operativnim sistemom je mnogo lakše ukol iko vambdquoleđa čuvardquo lokalna zajednica na koju se uvek možete osloniti

Već smo spomenul i da su popularni je GNULinuks distribuci je namenjenepočetnicima Slučaj je isti i sa lokalnim zajednicama okupl jenim oko nj ih Ovomeđutim ne znači da je kval itet usluga koje nude manje popularne lokalnezajednice okupl jene oko distribuci ja namenjenih napredni j im korisnicima loši j i Manje popularne distribuci je okupl ja ju manje l judi a l i zato oni poseduju većeznanje Iskustvo sa zajednicama okupl jenim oko slobodnog softvera je uglavnompozitivno i ukazuje na to da kval itet usluga koje one nude korisniku ni je uslovl jenpopularnošću i masovnošću zajednice nego iskl jučivo njenom (ne)aktivnošću

U svakom slučaju dosadašnj i saveti za izbor idealne distribuci je važe i dal jeSoci ja lni aspekt slobodnog softvera je samo dodatni faktor koj i vam može pomoćipri donošenju odluke kada se dvoumite između nekol iko mogućih rešenja

Još uvek ne postoj i na jednom mestu potpuni i ažurirani spisak svih aktivnihsrpskih zajednica Nešto najbl iže tome može da se nađe na adresihttps pulsslobodewordpresscom Za informaci je o nekim drugim lokalnimzajednicama koje možda postoje al i nisu na ovom spisku moraćete sami dapretražite internet

Lokalizacija kao kriterijum za izborZa lokal izaci ju GNULinuks distribuci ja i GNU programa odgovorni su pojedinci ilokalne zajednice Sasvim sol idnu srpsku lokal izaci ju mogu imati i projekti koj iuopšte nemaju svoju lokalnu zajednicu a isto tako lošu lokal izaci ju mogu imati iprojekti sa dobrom lokalnom zajednicom Sve je stvar prioriteta zajednica iaktivnosti pojedinaca

Pravu i kontrol isanu lokal izaci ju može imati samo lokalni projekat Ovakvihprojekata u Srbi j i ima malo i teško se probi ja ju čak i u lokalu u konkurenci j isvetskih projekata Istina je da mnoge veće GNULinuks distribuci je imaju srpskulokal izaci

Oslobađanje

29

Broj 33

ju u ponudi pa se možda sl ični lokalni projekti koj i su usmereni samo na striktnulokal izaci ju smatraju nepotrebnima Uzvodna lokal izaci ja u slučaju Srbi je vrlo čestobude veoma loše čak nakaradno sprovedena Jedna polovina programa jelokal izovana srpskom ćiri l icom a druga latinicom Ako postoj i još delova sistemakoj i uopšte ni je lokal izovan onda se pojavl ju ju i delovi programa koj i su naengleskom Zato ćemo se vratiti na prvu rečenicu ovog pasusa i ponovo utvrditi dasamo lokalni projekat može potpuno kontrol isati pravu srpsku lokal izaci ju

U Srbi j i za sada imamo dva aktivna projekta GNULinuks distribuci je ndash TriOS(http triosrs) i Serbian (http wwwdebian-srbi ja iz rspserbianhtml) Obaprojekta su mlada i imaju svoj ih prednosti i mana Kome treba lokal izovanoperativni sistem može da proba jedan od ova dva projekta

U potrazi za idealnom distribucijom

30

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Iako ove dve domaće distribuci je nisu baš naj idealni je interesantno je probati ih iuporediti sa drugim distribuci jama

Za kraj serijalaNamera nam je bi la da kroz ovaj seri ja l o kriteri jumima pri izboru idealnedistribuci je definišemo većinu kriteri juma pri izboru i pokažemo zašto je teškoodgovoriti na jednostavno pitanje bdquoKoju mi distribuci ju preporučujeterdquo

Ni na samom kraju nismo dal i konkretan odgovor na pitanje koja je idealnaGNULinuks distribuci ja Suviše je subjektivnih ocena da bi se mogao datikonkretan odgovor Smatramo da je jako teško napisati neki algoritam izbora pokriteri jumima koje smo identifikoval i i definisal i a možda je čak i nemoguće poštose izlazi stalno menjaju Izlazi iz tog algoritma su GNULinuks distribuci je koj ih izdana u dan ima sve više a i one stare se stalno menjaju

Sam seri ja l bdquoU potrazi za idealnom distribuci jomrdquo neće biti završen samo zato štose više neće baviti kriteri jumima pri izboru nego će pokušati da predstavl jaGNULinuks distribuci je koje su po nečemu bdquoidealnerdquo

Oslobađanje

31

Broj 33

ORM

Autor Dejan Čugal j

Object relation mapping (ORM)

ORM (eng Object RelationMapping) je način postizanja traj-nosti (eng persistence) objekataunutar relacionih baza podatakaModel deluje kao posrednik nalogičkom delu apl ikaci je Automat-ski presl ikava podatke iz objekata ubazu i nazad na zahtev apl ikaci jeDa bismo objasni l i kako ovo sveradi moramo da vam predstavimoORM frejmvork (eng framework)programa otvorenog koda -Hajbernejt (eng Hibernate -http hibernateorgorm)

Šta je ORMUkratko ORM je automatizovano transparentno presl ikavanje objekatakorišćenjem metapodataka koj i opisuju mapiranje veze između objekta i baze

ORM (2 deo)

Slobodni profesionalac

32

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

podataka u apl ikaci jama koje su napisane u objektno ori jentisanim programskimjezicima Apl ikaci ja komunicira sa ORM-om preko njegovog vlastitog API-ja (engapplication programming interface) i određenih objekata Ova komunikaci ja jepotpuno odvojena od komunikaci je koja se odvi ja između ORM-a i baze podatakapreko SQL-a i DBC-a

Da bi se postigla i dostigla potpuna snaga ORM-a u apl ikaci j i koju projektujemonikako se ne sme iskl jučiti znanje relacionih modela SQL jezika te poznavanjeDBMS-a u kome se radi ORM ni je ništa drugo do srednj i sloj između gorepomenutih tehnologi ja i objektno ori jentisanog programiranja kao što smo to dosada već više puta naglasi l i

Implementacija ORM-aPostoje razl ičiti načini implementaci je ORM-a Mark Fasl (Mark Fussel) je 1997definisao četiri nivoa

1 bdquoČistrdquo relacioni način2 Slabo mapiranje objekata3 Umereno mapiranje objekata4 Potpuno mapiranje objekata

bdquoČistrdquo relacioni način

Cela apl ikaci ja ukl jučujući i korisnički interfejs dizajnirana je relacionim modelom iSQL relacionim operatorima Ovakav pristup je odl ičan za male projekte Direktanpristup SQL-u omogućava fino podešavanje svakog aspekta upita koj i se postavl jabazi podataka Osnovne mane su portabi lnost (prenosivost) i održavanje ovakvihsistema pogotovo ako se planira korišćenje apl ikaci je na duži rok Ovakvi sistemimasovno koriste sačuvane procedure (eng stored procedures) što znači da jeposlovna logika (eng busines logic) prebačena na samu bazu podataka

Slabo mapiranje objekata

Entiteti su predstavl jeni kao klase i mapiranje se radi ekspl icitno ka relacionimtabelama SQLJDBC je sakriven od poslovne logike korišćenjem poznatih šablona(patterns)

Umereno mapiranje objekata

Slobodni profesionalac

33

Broj 33

Dizajn apl ikaci ja se svodi na objektne modele SQL se generiše u vremekompaj l iranja (eng build-time) i l i u vreme izvršavanja (eng run-time) Specifikaci jaupita nad bazama podataka se radi na objektno ori jentisanom jeziku Ovakvisistemi se koriste u apl ikaci jama srednj ih vel ičina kod koj ih je bitna portabi lnostizmeđu razl ičitih sistema za upravl janje bazama podataka (DBMS)

Potpuno mapiranje objekata

Podržava sofisticirano objektno model iranje nasleđivanje i pol imorfizamEfikasnost dobi janja podataka je na visokom nivou i koriste se metode kao što sulenjo učitavanje (eng lazy loading) i strategi ja keširanja (eng caching) Implementaci ja je transparentna u apl ikaci jama Ovaj nivo je jako teško dostići Pojedincu su potrebne godine razvoja da postigne ovakvu fleksibi lnost pristupa imanipulaci ja u relacionim bazama podataka Upravo ovaj nivo se postiže ako sekoriste rešenja ORM-a kao što je Hajbernejt

Zašto ORMImplementaci ja ORM rešenja pogotovo ako seprvi put susrećete sa ovim modelom može dabude veoma frustrirajuća i malo teža zaimplementaci ju Kada ovo kažemo misl imo daprogramer koj i implementira ORM i hoće da istibude kval itetno urađen mora da posedujepredznanje objektno ori jentisanog programiranjai naprednih tehnika kao što su nasleđivanje ipol imorfizam

Ovo inicira fundamentalna pitanja

bull Pa zašto bi iko onda implementirao ovako nešto kompleksnobull Vredi l i truda upuštati se uopšte u ORM

Odgovor ni je jednostavan Dosadašnja iskustva u korišćenju ORM-a i njegovapopularnost već daju odgovor na postavl jeno pitanje Očigledno je da su benefitikoje donosi ovaj model veći od kompleksnosti njegove implementaci je a to su

Hibernate ORM

34

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Veća produktivnost

ORM smanjuje kol ičinu koda potrebnog za ostvarivanje trajnosti podataka Ovoomogućava programeru da vreme koje bi utrošio na ručno mapiranje podatakautroši na druge delove apl ikaci je

Lakše održavanje

Manje l ini ja koda osigurava bol ju razuml j ivost (i možda bol j i kval itet koda) jernaglašava apl ikaci jsku logiku ORM takođe ublažava uticaj nastal ih promena kaošto su promene u bazi strukturi tabela i td

Prenosivost

Većina ORM rešenja podržava sisteme za upravl janje bazama podataka raznihproizvođača ORM u potpunosti odvaja sloj apl ikaci je od stvarne SQL komunikaci jekoja se odvi ja u pozadini Time omogućava da se pišu apl ikaci je koje će moći da seizvršavaju na razl ičitim bazama podataka bez potrebe za dodatnim kodiranjemOva komunikaci ja se odvi ja sa programskim interfejsima ORM-a nezavisno oDBMS-u sa koj im je u bi lo kom momentu povezan ORM takođe omogućava lakšiprelaz sa manj ih na veće baze podataka tokom razvoja apl ikaci je

Uvidel i smo da trenutno postoje dve paradigme koje se bdquosudarajurdquo i koje supodjednako dobre same za sebe Relaciona paradigma potvrđuje da sve što jeizgrađeno na matematičkim osnovama je i trajno u smislu kval iteta koje posedujeU domenu u kom relaciona paradigma egzistira ona je ako je to u ovo vremeuopšte moguće tvrditi nezamenj iva

Ono što otvara pitanja i daje razlog za sumnju je koja je krajnja granicaupotrebl j ivosti relacione paradigme tj kol iki su kapaciteti složenosti zahtevaapl ikaci ja sa kojom može da se nosi Praksa je pokazala da je sasvim mogućebdquoizvestirdquo složene projekte - al i održavanje skalabi lnost razuml j ivost prenosivost -pitanja su sa koj im se relaciona paradigma teško može izboriti

Sa druge strane svoj habitat u informacionim tehnologi jama je našla i objektna

Slobodni profesionalac

35

Broj 33

paradigma Iako na prvi pogled ova dva modela nemaju ništa zajedničko - što je uneku ruku i istinito gledajući prirodu podataka koj im manipul išu - praksa jepokazala da su usko povezane i skoro da imaju sinaptičku vezu

Pitanje bdquokako spoj iti te sinapserdquo dovelo je do žučnih rasprava u uskim naučnimprogramersko-administratorskim krugovima Rodi l i su se razni model i a l i jedan jeiskočio i polako ulazi u široku primenu - a to je ORM Svoj im supti lnim pristupomproblemu nekompatibi lnih paradigmi nekako je uspeo da stvori taj nedostajućibdquoelektrični signalrdquo koj i ih je povezao Ovo je omogući lo da dve strane koje susvaka za sebe u svom domenu ostavi le i ostavl ja ju duboki trag u informacionimtehnologi jama sarađuju i donesu novi kval itet

Korisni l inkovi

[1] Hibernejt http hibernateorg[2] Viki http googlLlZulw[3] Tutori ja l i http googlCGzvnc

Hibernate ORM

36

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Autor Kriptopank

Šta su zapravo metapodaci Najkraće rečeno to su podaci o podacima i l iinformaci je koje opisuju podatke

Najpre da napravimo razl iku između podataka i metapodataka Podaci sunaprimer snimak (i l i transkript) vaših telefonskih razgovora sadržaj poruka kojepišete primate i l i šal jete podaci koje kačite na internet i l i preuzimate pretrageGuglom postovi na forumima dopisivanja na IRC kanal ima i l i drugim četovimaaudio i video snimci Skajp razgovora i tako dal je

Hajde da vidimo šta bi bi l i odgovarajući metapodaci za ove primere

bull Za telefonske razgovore metapodaci mogu biti lokaci ja učesnika brojevitelefona trajanje razgovora IP i MAC adresa

bull Za poruke četove i Skajp i l i druge video-audio komunikaci je sl ično je kao kodtelefonskih razgovora

To su samo metapodaci

Internet mreže i komunikacije

37

Broj 33

bull Kod foruma i pretraga Guglom ima malo manje metapodataka al i Gugl i raznisajtovi i forumi ionako čuvaju logove o korisnicima što su takođe metapodaci

Ako do sada koj im slučajem niste uvidel i opasnost po privatnost u ovimmetapodacima koje svako od nas smrtnika svakodnevno ostavl ja za sobom usvetu interneta i ostal ih digitalnih komunikaci ja nadamo se da će vas ovaj primermakar podstaći na razmišl janje a možda i na nešto više

Zamisl i te da neko (zvaćemo ga posmatrač) stalno sakupl ja metapodatke koje zasobom ostavl jate kao mrvice hleba Posmatrač recimo zna da se nalazite naautoputu nedaleko od famoznog Feketića da se ne krećete da zovete AMSS zatimšlep službu i možda taksi a l i ne zna šta ste razgovaral i I l i posmatrač vidi da steprvo zval i aerodrom Nikola Tesla pa odmah potom taksi a l i ne zna šta sterazgovaral i I l i posmatrač vidi da ste zval i prvo šest brojeva či je identitete takođezna pa vidi da se oni zatim kreću ka vama - GPS (eng Global Positioning System) pa zatim pica servis Mekdonalds i neku poznatu prodavnicu kineske hrane al i nezna šta ste razgovaral i

Posmatrač ne mora da bude mnogo pametan niti da prisluškuje vaše razgovore dabi shvatio šta se dešava i l i šta će se desiti Sasvim mu je jasno da vam je u prvomprimeru auto stao na autoputu zatim da ste se u drugom slučaju uputi l i naaerodrom i da možda putujete van zemlje i l i ste poslal i taksi po nekoga saaerodroma a da u trećem slučaju okupl jate žurku kod vas Više možete pogledatina http googl7vUjP

Iako su to bdquosamordquo metapodaci treba biti svestan da ti metapodaci o vama stvarajujednu digitalnu sl iku i l i bol je reći digitalni mozaik i na neki način vas jedinstvenoodređuju Pogotovo kada se planski prikupl ja ju na više nivoa (kompjuter pametnitelefon pametni automobi l i kreditna kartica) metapodaci čine vaš digitalniidentitet Al i da stvar bude još gora ta sl ika o vama ne mora nužno biti istinita jerse lako može lažirati Recimo možete zameniti telefone i l i automobi le sa nekimnamerno i l i slučajno i l i vam neko može jednostavno ukrasti telefon laptop i l ikreditnu karticu Zaniml j iv video http googlKO1fKf

Evo jednog primera koj i vas može uvući u vel ike nevol je Recimo da prolazitenekom zabačenom ul icom i da vam neprimetno ispadne telefon al i vi to neprimetite i nastavite dal je svoj im putem U toj ul ici se samo nekol iko minutakasni je desi neko ubistvo i vas pozovu u pol ici ju kao osumnj ičenog Ako koj im

To su samo metapodaci

38

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

slučajem nemate dobar al ibi i l i nemate svedoka da posvedoči da niste bi l i u tojul ici nego tamo gde ste stvarno bi l i a drugih svedoka nema - možete jako lošeproći Zaniml j ivi video http googlspS5OZ

Metapodaci se takođe nalaze i u faj lovimapodacima koje svakodnevnopreuzimamo sa interneta pravimo i koristimo Svaki tip podatka može da sadržiodređene metapodatke koj i bol je opisuju sam podatak kao naprimer vremenastanka podatka kol iko je vremena potrošeno za njegovo kreiranje kol iko putamu je pristupl jeno kad je poslednj i put pristupl jeno i tako dal je Iako se ovakvimetapodaci možda još uvek čine bezazlenim oni mogu sadržati i IP adresuračunara sa kog su napravl jeni GPS koordinate (najčešće PNG format sl ika satelefona) ko ga je napravio (l ičnost i l i kompani jaorganizaci ja) naziv uređaja imodel sa koga je napravl jen kao i MAC adresu uređaja mej l adresu kreatorasoftver koj im je napravl jen i tako dal je Sve ovo može mnogo da naškodiprivatnosti izvornog kreatora faj la pogotovo ako je sadržaj poverl j iv Ukol iko nekopresretne taj podatak na internetu može saznati od koga je potekao Da ovo možebiti katastrofa po kreatora takvog faj la može i lustrovati primer torenta Ako stedošl i u posed nekih sl ika i l i video materi ja la i l i teksta koj i žel i te da podel ite sasvetom preko nekog torent sajta morate taj podatak prvo očistiti odmetapodataka da ne bi svako ko skine to što ste okači l i saznao da vi stoj i te izatoga

Internet mreže i komunikacije

39

Broj 33

Ljudi se konstantno prate metapodaci se sakupl ja ju i to ni je sada već ništa novoal i možemo da se trudimo da iza sebe ostavl jamo malo manje nežel jenihmetapodataka i da ih takoreći čistimo iz podataka koje razmenjujemo Na srećupostoje programi koj i ovo dobro rade

Najpre je potrebno da vidimo koje sve metapodatke neki faj l sadrži kako bismo seuveri l i da ovi metapodaci stvarno postoje i da je faj l bezbedan nakon nj ihovogbrisanja

Ako koristite operativne sisteme GNULinuksa treba da iz terminala preuzmete iinstal irate program pod nazivom exiftool

sudo apt-get install exiftool

Ovaj program će nam pružiti uvid u sve metapodatke koje faj l sadrži Korišćenje jeiz terminala al i je zato veoma jednostavno samo ga pokrenite na sledeći način

exiftool File

i l i

exiftool putanjadofajlapočevodkorenogdirektorijuma

Dobićete prikaz metapodataka koje je program pronašao Sada je potrebno davidimo da l i je podatak bdquoprl javrdquo tj da l i ima u njemu nešto da se briše i da akoima iz njega sve nepotrebno obrišemo Tu će nam pomoći drugi program zvaniMAT (eng Metadata Anonymisation Toolkit) koga možete naći na sajtuhttps matboumorg i l i jednostavno za korisnike Ubuntua i Debi jana uSoftverskom centru i l i ga možete instal irati iz terminala

sudo apt-get install mat

MAT će proveriti da l i je podatak bdquoprl javrdquo i l i ne i za vas ga očistiti od nežel jenihmetapodataka

Kada očistite faj l on je spreman za del jenje sa drugima a vi ste bezbedni jer nikone može reći da je faj l potekao sa vašeg računara

To su samo metapodaci

40

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Autor Dejan Čugal j

GH Hardi bdquoPrava matematika nema uticaj na ratrdquo - odbrana matematičara1940 godina

Bi l Tat - britanski matematičar verovatno niste čul i za njega1942 godine je izveo ogroman poduhvat koj i je skratio rat dvegodine (barem po rečima Ajzenhauera) i spasio mi l ione životaNažalost njegova vel ičina je preminula 2002 godine obavi jenavelom tajne i nikada zvanično ni je priznato njegovo dostignuće

Tomi Flauers - bivši inženjer poštanskog saobraćaja pretvorio jematematičke ideje Tata u prvi računar a to ni je bio bdquoENIACrdquo1Preminuo je 1998 godine a pretpostavl jamo da nikada niste čul ini za njegovu vel ičinu

Ovi umni giganti bdquoBlečl i parkardquo omogući l i su Britani j i da dešifruje strogo poverl j ivumašinu koju je koristio Hitler da diriguje drugim svetskim ratom a to ni je bi labdquoENIGMArdquo nego nešto mnogo tajni je i značajni je Vel ika je verovatnoća da nistečul i ni za ovo Neki kažu da je to bio Hitlerov Blekberi (BlackBerry)

Izgubljeni heroji bdquoBlečli parkardquo

1 engl Electronic Numerical Integrator And Computer - prvidigitalni elektronski računar

Internet mreže i komunikacije

41

Broj 33

1939 godine bdquoBlečl i parkrdquo je postao ratni štab MI6 (britanske vojne obaveštajneslužbe) Do danas je procurelo u javnost i dokumentovano brojnim fi lmskimdokumentarcima samo da je tu Alan Tjuring uspeo da dešifruje nemačkumornaričku šifru poznatu kao bdquoENIGMArdquo i uvel iko doprineo pobedi saveznika a to jesamo deo priče koj i je ispričan

U Blečl i parku su bi la tri heroja AlanTjuring Bi l Tat i Tomi Flauers Od nj ihtroj ice jedino Alanu Tjuringu je priznat deozasluga za pobedu saveznika u Drugomsvetskom ratu Pregledom otkrivenihpodataka danas možemo da tvrdimo daje bdquoENIGMArdquo već sa početka drugogsvetskog rata bi la zastarela tehnologi ja Zbog toga je bi lo lako skinuti veo tajne sa

ovog uspeha heroja Blečl i parka

Izgubljeni heroji bdquoBlečli parkardquo

42

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Bi l Tat koj i je dešifrovao bdquoTANI sistemrdquo (TANI) i Tomi Flauers koj i je samo svojomintuici jom i znanjem sklopio prvi računar na svetu (bdquoKOLOSrdquo) u svrhu bržegdolaženja do informaci ja razbi jenog koda bdquoTANIrdquo tako da zastarelost šifrata budesvedena na minimum - radi l i su na novoj generaci j i mašina za šifrovanje Ovatehnologi ja je bi la prepoznata kao tehnologi ja budućnosti pa i danas iznadinformaci ja o tim tehnologi jama stoj i natpis bdquovrhunska tajnardquo (eng Top Secret) Upravo ovaj veo tajni oko šifrata bdquoTANIrdquo i prvog računara je rezultirao iskrivl jenjuistori je informatike

Za uspehe u prvim godinama rata je zaista zaslužno razbi janje bdquoENIGMArdquo šifrata ito ni je sporno al i krajem 1941 godine u etru planete se začuo novi zvuk To je bi lanova mašina za šifrovanje ni je bi la zasnovana na bdquoMorzeurdquo već je radi la naprincipu teleprintera

Jedna od kl jučnih ideja Hitlerovog ratovanja je bi la u vel ikoj mobi lnosti i brzomdelovanju trupa na terenu a da bi se to izvelo komunikaci ja je isto tako morala dabude u najmanju ruku putem radio signala

Razl ika je ogromna Razl ika je u kol ičini podataka koj i može da se prenese ovimbdquotajnimrdquo putem Prvi svetski rat je bio zaniml j iv jer su se šifrovane poruke baziralena rečima dok je Drugi u potpunosti otvorio vrata današnjoj kriptografi j i a to jematematika

Originalan nemački kocircdni naziv za ovaj šifrat bio je bdquoLORENCrdquo Britanska

Internet mreže i komunikacije

43

Broj 33

obaveštajna služba mu je dala nadimak bdquoTANIrdquo Čak ni dan danas ni je baš poznatokako je sve nastalo al i pouzdano se zna da je tajnu mašinu Hitler nazvaobdquoGehajmšrajberrdquo (nem Geheimschreiber) - mašina tajni

U srž i tehnologi ju šifrovanja bdquoLORENCrdquo šifrata nećemo ulaziti u ovom članku al iverujte nam na reč - ni je bi la jednostavna Može se pretpostaviti da je inspiraci jaŠenonovog 2 rada slučajnosti bi la upravo ova tehnologi ja iz Drugog svetskog rata

Ono čime se Treći rajh vodio je bdquosigurnardquo šifrovana veza koju niko ni je smeo dadešifruje Prenošenje šifrovanih poruka pomoću radio signala je dalo obaveštajnimslužbama mogućnost presretanja poruka poslatih radio talasima Da l i se ovo idanas dešava Imamo l i sigurnost u našim šifrovanim podacima današnj ice

Ono što je usledi lo nakon proboja ovog bdquoneuhvatl j ivogrdquo šifrata je upravo ono što jeprincip današnj ice kao neka vrsta protokola koj i mora da se ispoštuje uperfektnom šifarskom Šenonovom sistemu

1 NIKADA NIKADA NE KORISTITI DVA PUTA ISTI KLJUČ ZA ŠIFROVANJE2 NIKADA NIKADA KLJUČ NE SME DA SE ŠALJE ISTIM KOMUNIKACIONIM KANALOM

KAO PORUKA3 NIKADA NIKADA KLJUČ NE SME DA BUDE MANJ I NEGO ŠTO JE PORUKA (engl

2 Klod Elvud Šenon (eng Claude Elwood Shannon) (1916-2001) - Američkinaučnik i inženjer

Izgubljeni heroji bdquoBlečli parkardquo

44

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

one time pad) 4 NIKADA NIKADA NE SMEMO DA SAKRIVAMO SISTEM ŠIFROVANJA SVE MORA

DA JE OTVORENOG KOcircDA

Najveći propusti kriptologi je koj i su uočeni baš u Drugom svetskom ratu jesupokušaj sakrivanja sredstava koj im se generiše tajna poruka i nepoznavanjeŠenonovih krajnj ih granica informaci ja Kada kažemo bdquosredstvo i sakrivanjerdquomisl imo na algoritme Postavl ja se pitanje zašto je danas kriptologi ja sigurni ja negočetrdesetih i pedesetih godina prošlog veka

Danas uprkos tome što su algoritmi za kriptografi ju otvorenog kocircda tajnostinformaci ja je na višem nivou nego što je to bi lo dok je algoritam bio strogopoverl j iv Tajnost tajnih podataka se ne zasniva na tajnosti a lgoritama koj i generišutaj isti bdquotajni izlazrdquo (eng cipher text) nego u nemogućnosti matematičke inverznefunkci je koja bi šifrovan tekst otvori la Ovde se vidi da je svrha strukture otvorenogkocircda kao jednog od značajnih delova današnje kriptologi je ona koja ga činisigurnim i svima dostupnim

Sada kada se sa ove distance osvrnemo na Drugi svetski rat možemo videti kol ikosmo bi l i bl izu apokal ipse Naime Albert Ajnštajn je već 1944 godine imao urukama recept za nuklearnu bombu Šenon je mogao već u to vreme da nampredoči 100 siguran šifrat (tzv Hitlerovu super šifru) a l i ipak sreća nas jeposluži la da čovečanstvo tada ni je bi lo spremno da upotrebi svu raspoloživutehnologi ju

Albert Ajnštajn bdquoČetvrti svetski rat će se voditi tol jagamardquo

Zaboravl jeni heroj i Blečl i parka iako su odigral i važnu ulogu u pobedi saveznika usvetskom ratu postal i su žrtve bdquotop secretrdquo doktrine potpuno su zaboravl jeni inestal i su iz istori je

Zakl jučak ovog članka je da je ideologi ja otvorenog kocircda sasvim sigurno tu da nampomogne i da otvori vrata ka većoj sigurnosti novim idejama i kval itetu sameinfrastrukture sistema koju svi zajedno razvi jamo

Internet mreže i komunikacije

45

Broj 33

Autor Nikola Hardi

NabrajanjaBez brojeva

Za nabrajanje pojmova u Bimeru (eng Beamer) koristi se okruženje itemize aunutar tog okruženja možemo da dodajemo nove stavke pomoću item Primerizgleda ovako

beginitemizeitem Stavka Aitem Stavka Bitem Stavka C

enditemize

Sa brojevima

Postoje situaci je kada uz nabrajanje treba da stoje i redni brojevi - za to se koristienumerate okruženje a nove stavke se takođe dodaju pomoću item

beginenumerateitem Redni broj 1item Redni broj 2item Redni broj 3

endenumerate

prezentaci ja

Beamer (4 deo)

Sam svoj majstor

46

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

DefinicijeTreća situaci ja je nabrajanje parova termin - definici ja U tom slučaju se koristiokruženje description Već možete da pretpostavite kako se dodaju nove stavke

Primer

begindescriptionitem[Pojam A] Definicija izmišljenog pojma Aitem[Pojam B] Definicija izmišljenog pojma Bitem[Pojam C] Definicija izmišljenog pojma C

enddescription

Ostala podešavanja i zanimljivostiSva prethodna okruženja mogu da budu ugneždena jedno unutar drugog dotrećeg nivoa Treba biti pažl j iv jer sla jdovi vrlo lako mogu da postanu nečitl j ivi Osim toga moguće je izabrati i format oznake i l i rednih brojeva - na primer ovako

beginenumerate[I]beginenumarate[a)]

Takođe moguće je upravl jati pojavl j ivanjem pojedinih stavki na slajdovima Drugimrečima možemo da odredimo da se nabrajanja postepeno otkrivaju tako što ćemouz stavku dodati lt1-gt odnosno broj od kojeg slajda žel imo da se ta stavkapojavl ju je Tada će jedno nabrajanje biti bdquorazvučenordquo na više slajdovaJednostavni ja mogućnost je da u zaglavl je okruženja dodamo +- što znači dažel imo da se svakim slajdom otkriva po jedna nova stavka iz nabrajanja Znak bdquo-rdquo uoba primera znači da žel imo da se stavka pojavi na sledećem slajdu i da ostane

Sam svoj majstor

47

Broj 33

prisutna Možemo da izostavimo znak bdquo-rdquo i tada će stavka biti prisutna samo najednom slajdu i l i da napišemo raspon slajdova u koj ima žel imo da ta stavka budeprisutna

Rad sa kolonama i blokovimaDo sada su svi primeri podrazumeval i da je sadržaj napisan preko cele širineslajda al i Bimer (eng Beamer) ima i jednostavne mehanizme za razmeštanjesadržaja po kolonama Za rad sa kolonama se koristi okruženje columns unutarkojeg možemo da dodajemo nove kolone pomoću columnširina Sadržaj jemoguće potom pisati i van okruženja sa kolonama

U paru sa kolonama često se sreće i okruženje block koje se parametrizujenaslovom Primerom su i lustrovani i okruženje column i okruženje block

beginframebegincolumns

column05textwidthbeginblockNaslov levog blokaSadržaj u prvoj (levoj) koloni endblock

column05textwidthbeginblockNaslov desnog blokaSadržaj u drugoj (desnoj) koloni

endblockendcolumns

beginblockVan kolona

Beamer

48

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Tekst koji se nalazi ispod kolonaendblock

endframe

TabeleIako se u radu sa prezentaci jama sadržaj najčešće može uredno rasporeditipomoću kolona i nabrajanja nekada to ni je dovol jno jer su tabele pravi formatBimer podržava standardno Lateh (LaTeX) okruženje za rad sa tabelamaOkruženje za rad sa tabelama se zove tabular Pri kreiranju nove tabele moguće jepodesiti koje kolone će biti razdvojene l ini jom i da l i će nj ihov sadržaj biti centrirani l i uz levu i l i uz desnu ivicu Dodavanje novog reda se jednostavno radidodavanjem hline Lateh pruža zaista jako fleksibi lan rad sa tabelama i sigurno ćedoskočiti svim mogućim i nemogućim zamisl ima Potražite bi lo koje Lateh uputstvoza rad sa tabelama i radiće i sa Bimerom

beginframebegintabular | c | c | c | c |

hlineamp Ponedeljak amp Utorak amp Sreda hline

1 amp 16 amp 32 amp 64 hline2 amp 16 amp 128 amp 1024 hline3 amp 16 amp 512 amp 4096 hline

endtabularendframe

Sam svoj majstor

49

Broj 33

Beamer

Teoreme i istaknut tekstU nastavi su česta izlaganja teorema nj ihovih dokaza i primera U Bimer jeugrađena podrška za elegantno predstavl janje ove trojke Mehanizam takođepodržava postepeno otkrivanje sadržaja sla jda tako da slušaocima ne bude odmahotkriven dokaz teoreme Mehanizam za postepeno otkrivanje se kao i kodnabrajanja postiže pomoću bdquolt1-gtrdquo konstrukci je Evo kako to izgleda

beginframeframetitlePrimer teoreme

begintheoremlt1-gt Teorema kaže da su beamer prezentacijezanimljive

endtheorem

beginexamplelt2-gt Ovaj kod kreira slajd beamer prezentacijeendexample

beginprooflt3-gt Čestitamo stigli ste do kraja serijala o pravljenju beamer prezentacija

endproofendframe

50

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Za krajOvim člankom završavamo seri ja l o Bimeru Nadamo se da smo uspel i da vaszainteresujemo za ovu vrlo korisnu klasu Lateha Trudi l i smo se da vamprezentujemo najvažni je delove Bimera koje ćete najčešće koristiti pri l ikomkreiranja svoj ih prezentaci ja

Napominjemo još jednom da je Bimer samo jedna od klasa Lateha što znači da i zaBimer važi sve ono što ste već mogl i da pročitate u ovom časopisu kad smo pisal iseri ja l bdquoUvod u LaTeXrdquo (LiBRE brojevi 17 do 21) Štaviše ovaj seri ja l o Bimeru jebio nastavak upravo tog seri ja la U ovom seri ja lu nismo pisal i o samomformatiranju teksta u prezentaci jama jer se podrazumeva da važe ista pravi la kao iu Latehu a o tome smo pisal i u prethodnom seri ja lu

Hvala vam što ste prati l i ovaj seri ja l i žel imo vam puno uspeha u kreiranju Bimerprezentaci ja

Sam svoj majstor

51

Broj 33

Autor Nenad Marjanović

Kada smo se upoznal i sa podešavanj ima sistema i umrežavanjem vreme je za našprvi Biglbon Blek (BBB - eng BeagleBone Black) projekat Svakom od nas će ovajizazov dati razl ičite ideje a jedna od nj ih može biti i zaštita privatnosti internetkorisnika Nažalost u Srbi j i ne postoj i ni jedan izlazni tor server (eng node) i to jepomalo tužna sl ika s obzirom da govorimo o populaci j i od sedam mil ionastanovnika Al i ovu sl iku možemo promeniti udruženim snagama i za početakkreiranjem Tor transfer i izlaznog servera U ovde prikazanom grafikonufokusiraćemo se na bdquoRauter Brdquo tačku odnosno transfer server konfiguraci ju

BeagleBone Black Rev C

Vodič od prvog dana (3 deo) ndashBeagleBone Black kao Tor relej

Hardver

52

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Tor predstavl ja mrežu servera koj i se povezuju radi bol je enkripci je podataka izaštite IP adrese korisnika Naš ci l j je da danas postanemo deo ovog predivnogprojekta i da se nađemo na svetskoj karti Tor servera

Brzina interneta i zakonske regulativePotrebno je imati na umu nekol iko bitnih stvari

1 Naš server = naša odgovornost2 Obavezno naznačite da ste vi administrator a ne korisnik istog servera3 Da posedujete internet brzinu od 2 Mbs

Ako ispunjavamo tri navedena pravi la i odgovornosti možemo se posvetitiadministrativnim poslovima

Instalacija i podešavanjaU ovom primeru koristimo Debi jan Vizi (eng Wheezy) odnosno Debi jan 7 verzi juna našem BBB uređaju Vi možete testirati i druge Linuks platforme Prvododajemo izvornu bibl ioteku u etcaptsourceslist faj l pokretanjem sledećekomande u terminalu

echo deb httpdebtorprojectorgtorprojectorg wheezy main gt etcaptsourceslistdtorlist

Zatim dodajemo izvorni kl juč vršimo ažuriranje sistema i instal iramo tor i tor-arm(Tor monitoring sistem)

gpg --keyserver keysgnupgnet --recv 886DDD89gpg --export A3C4F0F979CAA22CDBA8F512EE8CBC9E886DDD89 | sudo apt-keyadd -apt-get updateapt-get install debtorprojectorg-keyring -yapt-get install tor tor-arm egrep screen -y

Ovim smo uspešno završi l i instalaci ju Tor servera i sistema za monitoring odnosnonadgledanja našeg Tor servera Sledećom komandom radimo na podešavanj imaTor servera koja se nalaze u etctortorrc faj lu Obratite pažnju i izvršite potrebne

Hardver

53

Broj 33

izmenu u pol j ima IP adresa (eng Address) nadimka (eng Nickname) i kontaktpodataka (eng ContactInfo) pre pokretanja ove komande Kopiramo i pokrećemokomandu u celosti u terminalu

egrep -v ^(|$) etctortorrcORPort 443Address 19216811Nickname LibreTorRelayRelayBandwidthRate 100 KBRelayBandwidthBurst 120 KBContactInfo ltvi at gmail dot comgt irPort 8080DirPortFrontPage etctortorhtmlExitPolicy reject

Detal je o svim vrednostima nećemo iznositi u ovom broju LiBRE časopisa al ićemo o nj ima pisati u sledećem u kome ćemo pričati o zaštiti Tor servera imogućnosti podešavanja određenih izlaznih pravi la (eng ExitPolicy)

Nakon ovoga možemo primetiti da se u folderu etctor ne nalazi torhtml faj l Ovaj faj l ni je od vel ikog značaja i možete ga l ično napraviti i l i preuzeti jednu kopi ju- naprimer sa sledeće lokaci je

cp usrsharedoctortorhtml etctortorhtml

Opcije i Tor Arm monitoringDa bismo ispravno koristi l i Tor Arm potrebno je urediti još jednom etctortorrcfaj l i restartovati servis

echo -e ldquoDisableDebuggerAttachment 0n AvoidDiskWritesrdquo gtgt etctortorrcsudo service tor reload

Ukol iko žel ite koristiti Tor Arm za nadgledanje aktivnosti na serveru pokreniteprogram screen kl iknite na bdquoEnterrdquo i kucajte sudo -u debian-tor arm Naekranu ćete imati sl ičan prikaz

BeagleBone Black

54

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Hardver

55

Broj 33

Da bismo napusti l i screen program koristimo Ctrl + a + d i na taj način kada sesledeći put pri javimo na server kucamo samo screen -r u terminalu - i naći ćemose ponovo na čuvenom Tor Arm monitoring ekranu

Nakon svake promene konfiguracionih faj lova ako slučajno nismo nešto podesi l ikako treba restartujemo servise

U sledećem broju časopisa govorićemo o minimalnim podešavanj ima ikonfigurisanju izlaznog Tor servera (eng Tor Exit Node) opci jama sigurnosti isl ičnim detal j ima u vezi sa našim prvim projektom Do čitanja u sledećem broju

BeagleBone Black

LUGoNS BarCamp 4subota 7 mart 2015 godine

Četvrti LUGoNS-ov Barkemp (BarCamp) održaće se u Novom Sadu usubotu 7 marta 2015 godine na Fakultetu tehničkih nauka sa početkomu 12 časova

Ulaz je slobodan

Poziv za predaju radovaLUGoNS poziva sve zainteresovane da pošal ju svoje radove (predavanjaprezentaci je radionice i diskusi je) do 28 februara 2015 godine

Oblasti iz koj ih možete da pri javite vaše radove su

bull Slobodan softverbull Zaniml j iv hardverbull Hakerski zakonibull Sigurnosne noćne morebull Anonimnost i privatnost na internetubull Duboki veb (eng Deep Web)bull Soci ja lne mrežebull Soci ja lni inženjeringbull Hakovanje mobi lnih uređajabull Internet u oblaku (eng Clouds) ndash hakovanje razbi janje i neočekivano korišćenjebull DPI (eng deep packet inspection)bull Mreža i mrežna neutralnost ndash vlasništvo cenzura nadmudrivanje i pol itika bdquodefaktordquo standarda

bull Programiranje i programski jezici

Nemojte se ustručavati i slobodno nam se javite ako imate rad na gore navedenei l i sl ične teme koj i smatrate interesantnim

Stranica za predaju radova nalazi se na https events lugonsorgp=1658

Page 20: LiBRE 33 Lat

20

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

je što se znakovni nizovi koj i su uokvireni dvostrukim navodnicima smatrajustringovima i podrazumevano im se dodaje bdquoterminatorrdquo odnosno znak NULL koj ioznačava kraj stringa Jednostruki navodnici se iskl jučivo koriste za predstavl janjepojedinačnih karaktera Ovo znači da zapisi ldquoardquo i a nisu jednaki Prvi zapis jedužine 2 jer ima i znak NULL koj im je završen

Ispisivanje i učitavanje stringovaPre nego što nastavimo dal je biće objašnjen jednostavan način za ispisivanje iučitavanje stringova pomoću standardnog ulazaizlaza Da se podsetimobibl ioteka za standardni ulazizlaz (ispis podataka u konzol i odnosno terminalu) jestdioh Ukol iko se koristi formatirani ispis potrebno je funkci jama printf() iscanf() proslediti format string koj i sadrži speci ja lan znak s čime je označenoda žel imo da ispišemo znakovni niz sve do NULL karaktera Drugi način jeupotrebom funkci ja puts() gets() i getline() iz bibl ioteke stringh Sledi primer

include ltstdiohgt include ltstringhgt int main()

char niz1[] = Zdravo svete

printf(sn niz1)

scanf(s niz1)puts(niz1)

return 0

Može se primetiti da je u slučaju funkci je printf() potrebno naglasiti speci ja lnimkontrolnim karakterom n da nakon ispisa treba preći u novi red Funkci ja puts() topodrazumevano radi

Za ove i sve druge funkci je dodatnu pomoć je moguće pronaći u Linuksovim manstranicama u odel jku 3 koj i je posvećen standardnim bibl iotekama Recimo mangetline sadrži detal jno uputstvo o funkci j i getline()

Kako da

21

Broj 33

Kopiranje stringovaKao što je u prethodnom odel jku napomenuto stringovi su u C-u samo običninizovi To znači da sledeći kod verovatno neće uraditi ono šta bi bi lo očekivano

niz1 = niz2

Ovime smo pokazivaču niz1 bdquorekl irdquo da pokazuje tamo gde i pokazivač niz2 Efektivno oni sad pokazuju na isti tekst međutim ako izmenimo niz1 to će seodraziti i na niz2 a važi i obrnuto Ovime smo dobi l i samo dva pokazivača na istideo memori je a uglavnom to ni je bio ci l j

Drugi način kako bismo sadržaj drugog niza mogl i da kopiramo u prvi niz je petl jakojom bismo kopiral i element po element Pošto je operaci ja kopiranja stringovavrlo često potrebna postoj i standardna bibl ioteka za rad sa stringovima koja sezove stringh a funkci ja za kopiranje stringova je strcpy()

strcpy(niz1 niz2)

Dati primer kopira sadržaj niza 2 u niz 1 Kopira se element po element sve dok seu nizu 2 ne naiđe na NULL karakter Ovakvo kopiranje (element po element) seinače u stranoj l i teraturi naziva i bdquodeep copyrdquo i vrlo često se sreće u radu sastrukturama podataka gde je potrebno obići celu strukturu podataka i svakielement kopirati a strukturu opet izgraditi u drugom delu memori je

Zaniml j ivo je što je kopiranje stringova moguće pojednostaviti ukol iko definišemonovi tip podatka kao strukturu koja sadrži niz karaktera i potom izvršimo kopiranjeOvo je trik koj i se uglavnom ne koristi u praksi i spomenut je samo kaozaniml j ivost

include ltstringhgt struct str char niz[50]

int main()

struct str s1struct str s2

Uvod u programski jezik C

22

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

strcpy(s1niz zdravo)s2 = s1

s2niz[0] = Z

puts(s1niz)puts(s2niz)

return 0

Kreirana je struktura str koja sadrži pol je niza karaktera pod nazivom niz Pozivomfunkci je strcpy() kopiramo string ldquozdravordquo u s1 čime smo bdquonapuni l irdquo sadržajobjekta s1 Potom je izvršena redovna dodela čime je sadržaj objekta s1 kopiran us2 Zatim je izmenjen samo prvi karakter objekta s2 i oba stringa su ispisanaPrimećujete da su kopirani svi znakovi a da je izmenjen samo drugi objekatZaniml j iv trik

Poređenje spajanje i pretraga stringovaDruga vrlo česta situaci ja je poređenje dva stringa Ukol iko bi poređenje bi loizvršeno upotrebom redovnog operatora za poređenje == tada bi u stvari bi lepoređene samo adrese na koje pokazuju pokazivači tih stringova jer da sepodsetimo stringovi su u C-u samo obični nizovi Ispravan način za poređenje dvastringa je pozivanjem funkci je strcmp() či ja je povratna vrednost 0 ukol iko su jojprosleđeni stringovi sa jednakim sadržajem

include ltstringhgt int main()

char niz1[] = zdravochar niz2[] = zdravo

if( strcmp(niz1 niz2) == 0)puts(Stringovi su jednaki)

elseputs(Stringovi nisu jednaki)

return 0

Kako da

23

Broj 33

Funkci ja strcmp() poredi svaki element prosleđenih nizova pojedinačno a dobraje vežba implementiranje nove funkci je strcmp() koja će unutar petl je da porediodgovarajuće elemente prosleđenih nizova i potom vratiti rezultat 0 ukol iko su svielementi jednaki Potrebno je pripaziti na situaci ju kada su stringovi razl ičitihdužina

U svetu računara spajanje dva sadržaja se zove konkatenaci ja Odatle i nazivfunkci je za spajanje dva stringa strcat() Važno je uveriti se da je string u koj i sedodaje sadržaj dovol jno vel ik da ga prihvati inače može da dođe do nežel jenogprepisivanja u memori j i uništavanja drugih podataka i neispravnog ponašanjaprograma

Pretraga unutar stringa se može obaviti funkci jom strstr() Ova funkci ja kaoparametre očekuje pokazivač na niz karaktera (string) u kojem je potrebno pronaćistring koj i je prosleđen kao drugi parametar Povratna vrednost je pokazivač nadeo memori je gde se žel jeni string prvi put pojavio

Sledi malo opširni j i primer koj i i lustruje spajanje pretragu i kopiranje stringova

include ltstringhgt int main()

char niz_a[50] = LiBRE je char niz_b[] = najbolji casopischar niz_c[] = e-magazin

strcat(niz_a niz_b)puts(niz_a)

char cilj = strstr(niz_a casopis)strcpy(cilj niz_c)

puts(niz_a)

return 0

Uvod u programski jezik C

24

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Pretvaranje tipova podataka u stringove ipretvaranje iz stringovaPretvaranje podataka iz jednog tipa u drugi i l i kastovanje (eng type casting) se zavećinu tipova vrši jednostavno pisanjem tipa u zagradama na primer (int)523 Stringovi su i po ovom pitanju drugači j i Postavl ja se pitanje šta pretvoriti ucelobrojni tip - da l i adresu na koju pokazuje pokazivač niza koj i predstavl ja stringPrvi element Šta ako taj string ni je broj Predstavićemo rešenje za konverzi jubrojeva u stringove i obrnuto

Ispis podataka na ekranu se takođe može smatrati konverzi jom Broj sa pokretnimzarezom je u memori j i prikazan na pomalo čudan način a pozivom funkci jeprintf() kada je kao format zadat f na ekranu ćemo dobiti razuml j iv niz znakovaSl ičan rezultat možemo dobiti funkci jom sprintf() a jedina razl ika u odnosu naprintf() je ta što sprintf() kao prvi argument očekuje pokazivač na string dok sudrugi (format string) i treći (argumenti koj i se povezuju sa formatnim stringom)sl ični kao kod funkci je printf()

Kod pretvaranja stringova u brojevne tipove može poslužiti funkci ja sscanf() kojase ponaša sl ično kao funkci ja scanf() s tim što je prvi argument adresa(pokazivač na string) koju žel imo da skeniramo u nadi da će se poklopiti saformalnim stringom koj i je drugi argument a rezultati će biti sačuvani u adresamakoje su prosleđene kao 3 4 i ostal i parametri Drugi način za pretvaranje stringovau celobrojne brojeve i brojeve sa pokretnim zarezom su funkci je atoi() i atof()

Funkci je koje koriste formatni string su česte u jeziku C i zaslužuju posebnu pažnjumeđutim to je priča za poseban članak U ovu klasu funkci ja spadaju recimo ifunkci je za rad sa datotekama

BezbednostRad sa stringovima može da bude izuzetno opasna stvar po pitanju bezbednostiprograma Ukol iko se niz karaktera ne završava NULL karakterom svašta može dapođe po zlu pri pozivu funkci ja kao što su strcpy() strcmp() i sl ične Cela klasatih funkci ja se oslanja na postojanje znaka koj i označava kraj stringa Kada stringni je propisno završen tada te funkci je mogu da zalutaju u deo memori je vanstringa i svašta može da pođe po zlu Ovakav tip napada se inače zoveprekoračenje bafera (eng buffer overflow) Preporučen način kako da izbegnete

Kako da

25

Broj 33

Pregled popularnosti GNULinuxBSDdistribuci ja za mesec februar

Distrowatch

Pad ltPorast gtIsti rejting =(Korišćeni podaci sa Distrovoča)

12345678910111213141516171819202122232425

MintUbuntuDebianopenSUSEelementaryMageiaFedoraManjaroCentOSLXLEArchBodhiAndroid x86Kal iPCLinuxOSPuppyRobol inuxLubuntuQ4OSBlack LabNetrunnerSimpl icityEvolveZorin4MLinux

2919gt1778gt1701gt1323gt1204gt1174gt1166gt1028lt1020gt965gt957gt907gt900lt760gt742lt732gt695gt670gt663gt655gt652gt629gt607gt583gt517=

takve nepri jatne situaci je pri radu sastringovima je da koristite verzi jefunkci ja koje su ograničenemaksimalnom dužinom stringa kaošto su strncpy() strncat() strncmp() i td Sve te funkci je kaotreći parametar zahtevaju broj koj iodređuje maksimalnu očekivanudužinu stringa Još jedna vrlo korisnafunkci ja je strlen() či j i zadatak je daodredi dužinu stringa Budite pažl j ivi ovo je prvo mesto gde se tražebezbednosni propusti u programimaNe verujte podacima koj i spol ja ulazeu vaš program a pogotovo kada je rečo stringovima

Uvod u programski jezik C

26

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Autor Dejan Maglov

Projekti slobodnog softvera obično počinju kao projekti pojedinca i l i male grupeprogramera a koj i rade na razvoju softvera či j i je ci l j da zadovol j i neke od nj ihovihl ičnih potreba Projekat će se smatrati uspešnim ukol iko se šira zajednicazainteresuje za njega nakon što prepozna korisnost softvera ne samo za pojedincekoj i su započel i projekat već i za širu zajednicu Kada je u pitanju slobodni softvervremenom je postala stalna praksa da se zajednica umeša u razvoj projekataDobri projekti sami privlače zajednicu l judi koj i su zainteresovani za nj ih i ona uvećini slučajeva preuzima na sebe testiranje pobol jšanje funkcionalnosti održavanje i tehničku podršku projekta

Zajednice slobodnog softvera mogu da se okupe oko projekta slobodnog softverapo teritori ja lnom principu i l i da nastanu kombinaci jom ovih principa

Primeri

bull LiBRE projekat okupl ja zajednicu oko projekta bez teritori ja lnog ograničenjabull LUGoNS (Linux User Group of Novi Sad) je zajednica korisnika Linuksa poteritori ja lnom principu bez obzira na konkretan projekat

bull Ubuntu-rs zajednica koja je kombinaci ja okupl janja zajednice oko konkretnogprojekta (Ubuntu) i teritori ja lnog principa koj i se ograničava na teritori ju Srbi je

Ova sinergi ja projekata i korisnika slobodnog softvera ima više prednosti i zakorisnike i za projekat Projekat se na ovaj način brže razvi ja dobi ja na

U potrazi za idealnom distribucijom

Socijalni kriterijumi za izbor idealnedistribucije (6 deo)

Oslobađanje

27

Broj 33

funkcionalnosti greške se brzo ispravl ja ju i td Korisnici dobi ja ju osećaj dapripadaju grupi druže se sa istomišl jenicima učestvuju u promoci j i kval itetnihpojedinaca itd

Dve najvažni je uloge lokalnih zajednica za GNULinuks distribuci je su

1 pružanje tehničke podrške i edukaci je na maternjem jeziku2 rad na lokal izaci j i i pri lagođavanje distribuci je lokalnim potrebama

Informaci ja da postoje lokalne zajednice slobodnog softvera je od naročitogznačaja za početnike i korisnike koj i nedovol jno dobro znaju strane jezike(naročito engleski jezik) Ako izuzmemo komerci ja lne projekte otvorenog koda(Red Het SUSE) ne postoje zvanične škole i kursevi za slobodni softver Zaedukaci ju početnika je uglavnom zadužena zajednica a jasno je da je učenje namaternjem jeziku uvek lakše nego na bi lo kom drugom stranom ma kol ikodobro ga poznajete

Forumi i viki stranice lokalnih zajednica su prave bibl ioteke u koj ima korisnicimogu da nađu većinu odgovora na svoja pitanja a za sva ostala tu su forumi iIRC kanal i zajednica na koj ima uvek ima nekoga i koj i imaju već gotova rešenjaza vel iki broj problema

U potrazi za idealnom distribucijom

28

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Lokalne zajednice kao kriterijum za izbor idealnedistribucijePočetnicima i korisnicima koj i ne vladaju dobro engleskim jezikom toplopreporučujemo da biraju GNULinuks distribuci je koje imaju aktivnu lokalnuzajednicu Ovladavanje novim operativnim sistemom je mnogo lakše ukol iko vambdquoleđa čuvardquo lokalna zajednica na koju se uvek možete osloniti

Već smo spomenul i da su popularni je GNULinuks distribuci je namenjenepočetnicima Slučaj je isti i sa lokalnim zajednicama okupl jenim oko nj ih Ovomeđutim ne znači da je kval itet usluga koje nude manje popularne lokalnezajednice okupl jene oko distribuci ja namenjenih napredni j im korisnicima loši j i Manje popularne distribuci je okupl ja ju manje l judi a l i zato oni poseduju većeznanje Iskustvo sa zajednicama okupl jenim oko slobodnog softvera je uglavnompozitivno i ukazuje na to da kval itet usluga koje one nude korisniku ni je uslovl jenpopularnošću i masovnošću zajednice nego iskl jučivo njenom (ne)aktivnošću

U svakom slučaju dosadašnj i saveti za izbor idealne distribuci je važe i dal jeSoci ja lni aspekt slobodnog softvera je samo dodatni faktor koj i vam može pomoćipri donošenju odluke kada se dvoumite između nekol iko mogućih rešenja

Još uvek ne postoj i na jednom mestu potpuni i ažurirani spisak svih aktivnihsrpskih zajednica Nešto najbl iže tome može da se nađe na adresihttps pulsslobodewordpresscom Za informaci je o nekim drugim lokalnimzajednicama koje možda postoje al i nisu na ovom spisku moraćete sami dapretražite internet

Lokalizacija kao kriterijum za izborZa lokal izaci ju GNULinuks distribuci ja i GNU programa odgovorni su pojedinci ilokalne zajednice Sasvim sol idnu srpsku lokal izaci ju mogu imati i projekti koj iuopšte nemaju svoju lokalnu zajednicu a isto tako lošu lokal izaci ju mogu imati iprojekti sa dobrom lokalnom zajednicom Sve je stvar prioriteta zajednica iaktivnosti pojedinaca

Pravu i kontrol isanu lokal izaci ju može imati samo lokalni projekat Ovakvihprojekata u Srbi j i ima malo i teško se probi ja ju čak i u lokalu u konkurenci j isvetskih projekata Istina je da mnoge veće GNULinuks distribuci je imaju srpskulokal izaci

Oslobađanje

29

Broj 33

ju u ponudi pa se možda sl ični lokalni projekti koj i su usmereni samo na striktnulokal izaci ju smatraju nepotrebnima Uzvodna lokal izaci ja u slučaju Srbi je vrlo čestobude veoma loše čak nakaradno sprovedena Jedna polovina programa jelokal izovana srpskom ćiri l icom a druga latinicom Ako postoj i još delova sistemakoj i uopšte ni je lokal izovan onda se pojavl ju ju i delovi programa koj i su naengleskom Zato ćemo se vratiti na prvu rečenicu ovog pasusa i ponovo utvrditi dasamo lokalni projekat može potpuno kontrol isati pravu srpsku lokal izaci ju

U Srbi j i za sada imamo dva aktivna projekta GNULinuks distribuci je ndash TriOS(http triosrs) i Serbian (http wwwdebian-srbi ja iz rspserbianhtml) Obaprojekta su mlada i imaju svoj ih prednosti i mana Kome treba lokal izovanoperativni sistem može da proba jedan od ova dva projekta

U potrazi za idealnom distribucijom

30

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Iako ove dve domaće distribuci je nisu baš naj idealni je interesantno je probati ih iuporediti sa drugim distribuci jama

Za kraj serijalaNamera nam je bi la da kroz ovaj seri ja l o kriteri jumima pri izboru idealnedistribuci je definišemo većinu kriteri juma pri izboru i pokažemo zašto je teškoodgovoriti na jednostavno pitanje bdquoKoju mi distribuci ju preporučujeterdquo

Ni na samom kraju nismo dal i konkretan odgovor na pitanje koja je idealnaGNULinuks distribuci ja Suviše je subjektivnih ocena da bi se mogao datikonkretan odgovor Smatramo da je jako teško napisati neki algoritam izbora pokriteri jumima koje smo identifikoval i i definisal i a možda je čak i nemoguće poštose izlazi stalno menjaju Izlazi iz tog algoritma su GNULinuks distribuci je koj ih izdana u dan ima sve više a i one stare se stalno menjaju

Sam seri ja l bdquoU potrazi za idealnom distribuci jomrdquo neće biti završen samo zato štose više neće baviti kriteri jumima pri izboru nego će pokušati da predstavl jaGNULinuks distribuci je koje su po nečemu bdquoidealnerdquo

Oslobađanje

31

Broj 33

ORM

Autor Dejan Čugal j

Object relation mapping (ORM)

ORM (eng Object RelationMapping) je način postizanja traj-nosti (eng persistence) objekataunutar relacionih baza podatakaModel deluje kao posrednik nalogičkom delu apl ikaci je Automat-ski presl ikava podatke iz objekata ubazu i nazad na zahtev apl ikaci jeDa bismo objasni l i kako ovo sveradi moramo da vam predstavimoORM frejmvork (eng framework)programa otvorenog koda -Hajbernejt (eng Hibernate -http hibernateorgorm)

Šta je ORMUkratko ORM je automatizovano transparentno presl ikavanje objekatakorišćenjem metapodataka koj i opisuju mapiranje veze između objekta i baze

ORM (2 deo)

Slobodni profesionalac

32

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

podataka u apl ikaci jama koje su napisane u objektno ori jentisanim programskimjezicima Apl ikaci ja komunicira sa ORM-om preko njegovog vlastitog API-ja (engapplication programming interface) i određenih objekata Ova komunikaci ja jepotpuno odvojena od komunikaci je koja se odvi ja između ORM-a i baze podatakapreko SQL-a i DBC-a

Da bi se postigla i dostigla potpuna snaga ORM-a u apl ikaci j i koju projektujemonikako se ne sme iskl jučiti znanje relacionih modela SQL jezika te poznavanjeDBMS-a u kome se radi ORM ni je ništa drugo do srednj i sloj između gorepomenutih tehnologi ja i objektno ori jentisanog programiranja kao što smo to dosada već više puta naglasi l i

Implementacija ORM-aPostoje razl ičiti načini implementaci je ORM-a Mark Fasl (Mark Fussel) je 1997definisao četiri nivoa

1 bdquoČistrdquo relacioni način2 Slabo mapiranje objekata3 Umereno mapiranje objekata4 Potpuno mapiranje objekata

bdquoČistrdquo relacioni način

Cela apl ikaci ja ukl jučujući i korisnički interfejs dizajnirana je relacionim modelom iSQL relacionim operatorima Ovakav pristup je odl ičan za male projekte Direktanpristup SQL-u omogućava fino podešavanje svakog aspekta upita koj i se postavl jabazi podataka Osnovne mane su portabi lnost (prenosivost) i održavanje ovakvihsistema pogotovo ako se planira korišćenje apl ikaci je na duži rok Ovakvi sistemimasovno koriste sačuvane procedure (eng stored procedures) što znači da jeposlovna logika (eng busines logic) prebačena na samu bazu podataka

Slabo mapiranje objekata

Entiteti su predstavl jeni kao klase i mapiranje se radi ekspl icitno ka relacionimtabelama SQLJDBC je sakriven od poslovne logike korišćenjem poznatih šablona(patterns)

Umereno mapiranje objekata

Slobodni profesionalac

33

Broj 33

Dizajn apl ikaci ja se svodi na objektne modele SQL se generiše u vremekompaj l iranja (eng build-time) i l i u vreme izvršavanja (eng run-time) Specifikaci jaupita nad bazama podataka se radi na objektno ori jentisanom jeziku Ovakvisistemi se koriste u apl ikaci jama srednj ih vel ičina kod koj ih je bitna portabi lnostizmeđu razl ičitih sistema za upravl janje bazama podataka (DBMS)

Potpuno mapiranje objekata

Podržava sofisticirano objektno model iranje nasleđivanje i pol imorfizamEfikasnost dobi janja podataka je na visokom nivou i koriste se metode kao što sulenjo učitavanje (eng lazy loading) i strategi ja keširanja (eng caching) Implementaci ja je transparentna u apl ikaci jama Ovaj nivo je jako teško dostići Pojedincu su potrebne godine razvoja da postigne ovakvu fleksibi lnost pristupa imanipulaci ja u relacionim bazama podataka Upravo ovaj nivo se postiže ako sekoriste rešenja ORM-a kao što je Hajbernejt

Zašto ORMImplementaci ja ORM rešenja pogotovo ako seprvi put susrećete sa ovim modelom može dabude veoma frustrirajuća i malo teža zaimplementaci ju Kada ovo kažemo misl imo daprogramer koj i implementira ORM i hoće da istibude kval itetno urađen mora da posedujepredznanje objektno ori jentisanog programiranjai naprednih tehnika kao što su nasleđivanje ipol imorfizam

Ovo inicira fundamentalna pitanja

bull Pa zašto bi iko onda implementirao ovako nešto kompleksnobull Vredi l i truda upuštati se uopšte u ORM

Odgovor ni je jednostavan Dosadašnja iskustva u korišćenju ORM-a i njegovapopularnost već daju odgovor na postavl jeno pitanje Očigledno je da su benefitikoje donosi ovaj model veći od kompleksnosti njegove implementaci je a to su

Hibernate ORM

34

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Veća produktivnost

ORM smanjuje kol ičinu koda potrebnog za ostvarivanje trajnosti podataka Ovoomogućava programeru da vreme koje bi utrošio na ručno mapiranje podatakautroši na druge delove apl ikaci je

Lakše održavanje

Manje l ini ja koda osigurava bol ju razuml j ivost (i možda bol j i kval itet koda) jernaglašava apl ikaci jsku logiku ORM takođe ublažava uticaj nastal ih promena kaošto su promene u bazi strukturi tabela i td

Prenosivost

Većina ORM rešenja podržava sisteme za upravl janje bazama podataka raznihproizvođača ORM u potpunosti odvaja sloj apl ikaci je od stvarne SQL komunikaci jekoja se odvi ja u pozadini Time omogućava da se pišu apl ikaci je koje će moći da seizvršavaju na razl ičitim bazama podataka bez potrebe za dodatnim kodiranjemOva komunikaci ja se odvi ja sa programskim interfejsima ORM-a nezavisno oDBMS-u sa koj im je u bi lo kom momentu povezan ORM takođe omogućava lakšiprelaz sa manj ih na veće baze podataka tokom razvoja apl ikaci je

Uvidel i smo da trenutno postoje dve paradigme koje se bdquosudarajurdquo i koje supodjednako dobre same za sebe Relaciona paradigma potvrđuje da sve što jeizgrađeno na matematičkim osnovama je i trajno u smislu kval iteta koje posedujeU domenu u kom relaciona paradigma egzistira ona je ako je to u ovo vremeuopšte moguće tvrditi nezamenj iva

Ono što otvara pitanja i daje razlog za sumnju je koja je krajnja granicaupotrebl j ivosti relacione paradigme tj kol iki su kapaciteti složenosti zahtevaapl ikaci ja sa kojom može da se nosi Praksa je pokazala da je sasvim mogućebdquoizvestirdquo složene projekte - al i održavanje skalabi lnost razuml j ivost prenosivost -pitanja su sa koj im se relaciona paradigma teško može izboriti

Sa druge strane svoj habitat u informacionim tehnologi jama je našla i objektna

Slobodni profesionalac

35

Broj 33

paradigma Iako na prvi pogled ova dva modela nemaju ništa zajedničko - što je uneku ruku i istinito gledajući prirodu podataka koj im manipul išu - praksa jepokazala da su usko povezane i skoro da imaju sinaptičku vezu

Pitanje bdquokako spoj iti te sinapserdquo dovelo je do žučnih rasprava u uskim naučnimprogramersko-administratorskim krugovima Rodi l i su se razni model i a l i jedan jeiskočio i polako ulazi u široku primenu - a to je ORM Svoj im supti lnim pristupomproblemu nekompatibi lnih paradigmi nekako je uspeo da stvori taj nedostajućibdquoelektrični signalrdquo koj i ih je povezao Ovo je omogući lo da dve strane koje susvaka za sebe u svom domenu ostavi le i ostavl ja ju duboki trag u informacionimtehnologi jama sarađuju i donesu novi kval itet

Korisni l inkovi

[1] Hibernejt http hibernateorg[2] Viki http googlLlZulw[3] Tutori ja l i http googlCGzvnc

Hibernate ORM

36

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Autor Kriptopank

Šta su zapravo metapodaci Najkraće rečeno to su podaci o podacima i l iinformaci je koje opisuju podatke

Najpre da napravimo razl iku između podataka i metapodataka Podaci sunaprimer snimak (i l i transkript) vaših telefonskih razgovora sadržaj poruka kojepišete primate i l i šal jete podaci koje kačite na internet i l i preuzimate pretrageGuglom postovi na forumima dopisivanja na IRC kanal ima i l i drugim četovimaaudio i video snimci Skajp razgovora i tako dal je

Hajde da vidimo šta bi bi l i odgovarajući metapodaci za ove primere

bull Za telefonske razgovore metapodaci mogu biti lokaci ja učesnika brojevitelefona trajanje razgovora IP i MAC adresa

bull Za poruke četove i Skajp i l i druge video-audio komunikaci je sl ično je kao kodtelefonskih razgovora

To su samo metapodaci

Internet mreže i komunikacije

37

Broj 33

bull Kod foruma i pretraga Guglom ima malo manje metapodataka al i Gugl i raznisajtovi i forumi ionako čuvaju logove o korisnicima što su takođe metapodaci

Ako do sada koj im slučajem niste uvidel i opasnost po privatnost u ovimmetapodacima koje svako od nas smrtnika svakodnevno ostavl ja za sobom usvetu interneta i ostal ih digitalnih komunikaci ja nadamo se da će vas ovaj primermakar podstaći na razmišl janje a možda i na nešto više

Zamisl i te da neko (zvaćemo ga posmatrač) stalno sakupl ja metapodatke koje zasobom ostavl jate kao mrvice hleba Posmatrač recimo zna da se nalazite naautoputu nedaleko od famoznog Feketića da se ne krećete da zovete AMSS zatimšlep službu i možda taksi a l i ne zna šta ste razgovaral i I l i posmatrač vidi da steprvo zval i aerodrom Nikola Tesla pa odmah potom taksi a l i ne zna šta sterazgovaral i I l i posmatrač vidi da ste zval i prvo šest brojeva či je identitete takođezna pa vidi da se oni zatim kreću ka vama - GPS (eng Global Positioning System) pa zatim pica servis Mekdonalds i neku poznatu prodavnicu kineske hrane al i nezna šta ste razgovaral i

Posmatrač ne mora da bude mnogo pametan niti da prisluškuje vaše razgovore dabi shvatio šta se dešava i l i šta će se desiti Sasvim mu je jasno da vam je u prvomprimeru auto stao na autoputu zatim da ste se u drugom slučaju uputi l i naaerodrom i da možda putujete van zemlje i l i ste poslal i taksi po nekoga saaerodroma a da u trećem slučaju okupl jate žurku kod vas Više možete pogledatina http googl7vUjP

Iako su to bdquosamordquo metapodaci treba biti svestan da ti metapodaci o vama stvarajujednu digitalnu sl iku i l i bol je reći digitalni mozaik i na neki način vas jedinstvenoodređuju Pogotovo kada se planski prikupl ja ju na više nivoa (kompjuter pametnitelefon pametni automobi l i kreditna kartica) metapodaci čine vaš digitalniidentitet Al i da stvar bude još gora ta sl ika o vama ne mora nužno biti istinita jerse lako može lažirati Recimo možete zameniti telefone i l i automobi le sa nekimnamerno i l i slučajno i l i vam neko može jednostavno ukrasti telefon laptop i l ikreditnu karticu Zaniml j iv video http googlKO1fKf

Evo jednog primera koj i vas može uvući u vel ike nevol je Recimo da prolazitenekom zabačenom ul icom i da vam neprimetno ispadne telefon al i vi to neprimetite i nastavite dal je svoj im putem U toj ul ici se samo nekol iko minutakasni je desi neko ubistvo i vas pozovu u pol ici ju kao osumnj ičenog Ako koj im

To su samo metapodaci

38

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

slučajem nemate dobar al ibi i l i nemate svedoka da posvedoči da niste bi l i u tojul ici nego tamo gde ste stvarno bi l i a drugih svedoka nema - možete jako lošeproći Zaniml j ivi video http googlspS5OZ

Metapodaci se takođe nalaze i u faj lovimapodacima koje svakodnevnopreuzimamo sa interneta pravimo i koristimo Svaki tip podatka može da sadržiodređene metapodatke koj i bol je opisuju sam podatak kao naprimer vremenastanka podatka kol iko je vremena potrošeno za njegovo kreiranje kol iko putamu je pristupl jeno kad je poslednj i put pristupl jeno i tako dal je Iako se ovakvimetapodaci možda još uvek čine bezazlenim oni mogu sadržati i IP adresuračunara sa kog su napravl jeni GPS koordinate (najčešće PNG format sl ika satelefona) ko ga je napravio (l ičnost i l i kompani jaorganizaci ja) naziv uređaja imodel sa koga je napravl jen kao i MAC adresu uređaja mej l adresu kreatorasoftver koj im je napravl jen i tako dal je Sve ovo može mnogo da naškodiprivatnosti izvornog kreatora faj la pogotovo ako je sadržaj poverl j iv Ukol iko nekopresretne taj podatak na internetu može saznati od koga je potekao Da ovo možebiti katastrofa po kreatora takvog faj la može i lustrovati primer torenta Ako stedošl i u posed nekih sl ika i l i video materi ja la i l i teksta koj i žel i te da podel ite sasvetom preko nekog torent sajta morate taj podatak prvo očistiti odmetapodataka da ne bi svako ko skine to što ste okači l i saznao da vi stoj i te izatoga

Internet mreže i komunikacije

39

Broj 33

Ljudi se konstantno prate metapodaci se sakupl ja ju i to ni je sada već ništa novoal i možemo da se trudimo da iza sebe ostavl jamo malo manje nežel jenihmetapodataka i da ih takoreći čistimo iz podataka koje razmenjujemo Na srećupostoje programi koj i ovo dobro rade

Najpre je potrebno da vidimo koje sve metapodatke neki faj l sadrži kako bismo seuveri l i da ovi metapodaci stvarno postoje i da je faj l bezbedan nakon nj ihovogbrisanja

Ako koristite operativne sisteme GNULinuksa treba da iz terminala preuzmete iinstal irate program pod nazivom exiftool

sudo apt-get install exiftool

Ovaj program će nam pružiti uvid u sve metapodatke koje faj l sadrži Korišćenje jeiz terminala al i je zato veoma jednostavno samo ga pokrenite na sledeći način

exiftool File

i l i

exiftool putanjadofajlapočevodkorenogdirektorijuma

Dobićete prikaz metapodataka koje je program pronašao Sada je potrebno davidimo da l i je podatak bdquoprl javrdquo tj da l i ima u njemu nešto da se briše i da akoima iz njega sve nepotrebno obrišemo Tu će nam pomoći drugi program zvaniMAT (eng Metadata Anonymisation Toolkit) koga možete naći na sajtuhttps matboumorg i l i jednostavno za korisnike Ubuntua i Debi jana uSoftverskom centru i l i ga možete instal irati iz terminala

sudo apt-get install mat

MAT će proveriti da l i je podatak bdquoprl javrdquo i l i ne i za vas ga očistiti od nežel jenihmetapodataka

Kada očistite faj l on je spreman za del jenje sa drugima a vi ste bezbedni jer nikone može reći da je faj l potekao sa vašeg računara

To su samo metapodaci

40

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Autor Dejan Čugal j

GH Hardi bdquoPrava matematika nema uticaj na ratrdquo - odbrana matematičara1940 godina

Bi l Tat - britanski matematičar verovatno niste čul i za njega1942 godine je izveo ogroman poduhvat koj i je skratio rat dvegodine (barem po rečima Ajzenhauera) i spasio mi l ione životaNažalost njegova vel ičina je preminula 2002 godine obavi jenavelom tajne i nikada zvanično ni je priznato njegovo dostignuće

Tomi Flauers - bivši inženjer poštanskog saobraćaja pretvorio jematematičke ideje Tata u prvi računar a to ni je bio bdquoENIACrdquo1Preminuo je 1998 godine a pretpostavl jamo da nikada niste čul ini za njegovu vel ičinu

Ovi umni giganti bdquoBlečl i parkardquo omogući l i su Britani j i da dešifruje strogo poverl j ivumašinu koju je koristio Hitler da diriguje drugim svetskim ratom a to ni je bi labdquoENIGMArdquo nego nešto mnogo tajni je i značajni je Vel ika je verovatnoća da nistečul i ni za ovo Neki kažu da je to bio Hitlerov Blekberi (BlackBerry)

Izgubljeni heroji bdquoBlečli parkardquo

1 engl Electronic Numerical Integrator And Computer - prvidigitalni elektronski računar

Internet mreže i komunikacije

41

Broj 33

1939 godine bdquoBlečl i parkrdquo je postao ratni štab MI6 (britanske vojne obaveštajneslužbe) Do danas je procurelo u javnost i dokumentovano brojnim fi lmskimdokumentarcima samo da je tu Alan Tjuring uspeo da dešifruje nemačkumornaričku šifru poznatu kao bdquoENIGMArdquo i uvel iko doprineo pobedi saveznika a to jesamo deo priče koj i je ispričan

U Blečl i parku su bi la tri heroja AlanTjuring Bi l Tat i Tomi Flauers Od nj ihtroj ice jedino Alanu Tjuringu je priznat deozasluga za pobedu saveznika u Drugomsvetskom ratu Pregledom otkrivenihpodataka danas možemo da tvrdimo daje bdquoENIGMArdquo već sa početka drugogsvetskog rata bi la zastarela tehnologi ja Zbog toga je bi lo lako skinuti veo tajne sa

ovog uspeha heroja Blečl i parka

Izgubljeni heroji bdquoBlečli parkardquo

42

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Bi l Tat koj i je dešifrovao bdquoTANI sistemrdquo (TANI) i Tomi Flauers koj i je samo svojomintuici jom i znanjem sklopio prvi računar na svetu (bdquoKOLOSrdquo) u svrhu bržegdolaženja do informaci ja razbi jenog koda bdquoTANIrdquo tako da zastarelost šifrata budesvedena na minimum - radi l i su na novoj generaci j i mašina za šifrovanje Ovatehnologi ja je bi la prepoznata kao tehnologi ja budućnosti pa i danas iznadinformaci ja o tim tehnologi jama stoj i natpis bdquovrhunska tajnardquo (eng Top Secret) Upravo ovaj veo tajni oko šifrata bdquoTANIrdquo i prvog računara je rezultirao iskrivl jenjuistori je informatike

Za uspehe u prvim godinama rata je zaista zaslužno razbi janje bdquoENIGMArdquo šifrata ito ni je sporno al i krajem 1941 godine u etru planete se začuo novi zvuk To je bi lanova mašina za šifrovanje ni je bi la zasnovana na bdquoMorzeurdquo već je radi la naprincipu teleprintera

Jedna od kl jučnih ideja Hitlerovog ratovanja je bi la u vel ikoj mobi lnosti i brzomdelovanju trupa na terenu a da bi se to izvelo komunikaci ja je isto tako morala dabude u najmanju ruku putem radio signala

Razl ika je ogromna Razl ika je u kol ičini podataka koj i može da se prenese ovimbdquotajnimrdquo putem Prvi svetski rat je bio zaniml j iv jer su se šifrovane poruke baziralena rečima dok je Drugi u potpunosti otvorio vrata današnjoj kriptografi j i a to jematematika

Originalan nemački kocircdni naziv za ovaj šifrat bio je bdquoLORENCrdquo Britanska

Internet mreže i komunikacije

43

Broj 33

obaveštajna služba mu je dala nadimak bdquoTANIrdquo Čak ni dan danas ni je baš poznatokako je sve nastalo al i pouzdano se zna da je tajnu mašinu Hitler nazvaobdquoGehajmšrajberrdquo (nem Geheimschreiber) - mašina tajni

U srž i tehnologi ju šifrovanja bdquoLORENCrdquo šifrata nećemo ulaziti u ovom članku al iverujte nam na reč - ni je bi la jednostavna Može se pretpostaviti da je inspiraci jaŠenonovog 2 rada slučajnosti bi la upravo ova tehnologi ja iz Drugog svetskog rata

Ono čime se Treći rajh vodio je bdquosigurnardquo šifrovana veza koju niko ni je smeo dadešifruje Prenošenje šifrovanih poruka pomoću radio signala je dalo obaveštajnimslužbama mogućnost presretanja poruka poslatih radio talasima Da l i se ovo idanas dešava Imamo l i sigurnost u našim šifrovanim podacima današnj ice

Ono što je usledi lo nakon proboja ovog bdquoneuhvatl j ivogrdquo šifrata je upravo ono što jeprincip današnj ice kao neka vrsta protokola koj i mora da se ispoštuje uperfektnom šifarskom Šenonovom sistemu

1 NIKADA NIKADA NE KORISTITI DVA PUTA ISTI KLJUČ ZA ŠIFROVANJE2 NIKADA NIKADA KLJUČ NE SME DA SE ŠALJE ISTIM KOMUNIKACIONIM KANALOM

KAO PORUKA3 NIKADA NIKADA KLJUČ NE SME DA BUDE MANJ I NEGO ŠTO JE PORUKA (engl

2 Klod Elvud Šenon (eng Claude Elwood Shannon) (1916-2001) - Američkinaučnik i inženjer

Izgubljeni heroji bdquoBlečli parkardquo

44

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

one time pad) 4 NIKADA NIKADA NE SMEMO DA SAKRIVAMO SISTEM ŠIFROVANJA SVE MORA

DA JE OTVORENOG KOcircDA

Najveći propusti kriptologi je koj i su uočeni baš u Drugom svetskom ratu jesupokušaj sakrivanja sredstava koj im se generiše tajna poruka i nepoznavanjeŠenonovih krajnj ih granica informaci ja Kada kažemo bdquosredstvo i sakrivanjerdquomisl imo na algoritme Postavl ja se pitanje zašto je danas kriptologi ja sigurni ja negočetrdesetih i pedesetih godina prošlog veka

Danas uprkos tome što su algoritmi za kriptografi ju otvorenog kocircda tajnostinformaci ja je na višem nivou nego što je to bi lo dok je algoritam bio strogopoverl j iv Tajnost tajnih podataka se ne zasniva na tajnosti a lgoritama koj i generišutaj isti bdquotajni izlazrdquo (eng cipher text) nego u nemogućnosti matematičke inverznefunkci je koja bi šifrovan tekst otvori la Ovde se vidi da je svrha strukture otvorenogkocircda kao jednog od značajnih delova današnje kriptologi je ona koja ga činisigurnim i svima dostupnim

Sada kada se sa ove distance osvrnemo na Drugi svetski rat možemo videti kol ikosmo bi l i bl izu apokal ipse Naime Albert Ajnštajn je već 1944 godine imao urukama recept za nuklearnu bombu Šenon je mogao već u to vreme da nampredoči 100 siguran šifrat (tzv Hitlerovu super šifru) a l i ipak sreća nas jeposluži la da čovečanstvo tada ni je bi lo spremno da upotrebi svu raspoloživutehnologi ju

Albert Ajnštajn bdquoČetvrti svetski rat će se voditi tol jagamardquo

Zaboravl jeni heroj i Blečl i parka iako su odigral i važnu ulogu u pobedi saveznika usvetskom ratu postal i su žrtve bdquotop secretrdquo doktrine potpuno su zaboravl jeni inestal i su iz istori je

Zakl jučak ovog članka je da je ideologi ja otvorenog kocircda sasvim sigurno tu da nampomogne i da otvori vrata ka većoj sigurnosti novim idejama i kval itetu sameinfrastrukture sistema koju svi zajedno razvi jamo

Internet mreže i komunikacije

45

Broj 33

Autor Nikola Hardi

NabrajanjaBez brojeva

Za nabrajanje pojmova u Bimeru (eng Beamer) koristi se okruženje itemize aunutar tog okruženja možemo da dodajemo nove stavke pomoću item Primerizgleda ovako

beginitemizeitem Stavka Aitem Stavka Bitem Stavka C

enditemize

Sa brojevima

Postoje situaci je kada uz nabrajanje treba da stoje i redni brojevi - za to se koristienumerate okruženje a nove stavke se takođe dodaju pomoću item

beginenumerateitem Redni broj 1item Redni broj 2item Redni broj 3

endenumerate

prezentaci ja

Beamer (4 deo)

Sam svoj majstor

46

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

DefinicijeTreća situaci ja je nabrajanje parova termin - definici ja U tom slučaju se koristiokruženje description Već možete da pretpostavite kako se dodaju nove stavke

Primer

begindescriptionitem[Pojam A] Definicija izmišljenog pojma Aitem[Pojam B] Definicija izmišljenog pojma Bitem[Pojam C] Definicija izmišljenog pojma C

enddescription

Ostala podešavanja i zanimljivostiSva prethodna okruženja mogu da budu ugneždena jedno unutar drugog dotrećeg nivoa Treba biti pažl j iv jer sla jdovi vrlo lako mogu da postanu nečitl j ivi Osim toga moguće je izabrati i format oznake i l i rednih brojeva - na primer ovako

beginenumerate[I]beginenumarate[a)]

Takođe moguće je upravl jati pojavl j ivanjem pojedinih stavki na slajdovima Drugimrečima možemo da odredimo da se nabrajanja postepeno otkrivaju tako što ćemouz stavku dodati lt1-gt odnosno broj od kojeg slajda žel imo da se ta stavkapojavl ju je Tada će jedno nabrajanje biti bdquorazvučenordquo na više slajdovaJednostavni ja mogućnost je da u zaglavl je okruženja dodamo +- što znači dažel imo da se svakim slajdom otkriva po jedna nova stavka iz nabrajanja Znak bdquo-rdquo uoba primera znači da žel imo da se stavka pojavi na sledećem slajdu i da ostane

Sam svoj majstor

47

Broj 33

prisutna Možemo da izostavimo znak bdquo-rdquo i tada će stavka biti prisutna samo najednom slajdu i l i da napišemo raspon slajdova u koj ima žel imo da ta stavka budeprisutna

Rad sa kolonama i blokovimaDo sada su svi primeri podrazumeval i da je sadržaj napisan preko cele širineslajda al i Bimer (eng Beamer) ima i jednostavne mehanizme za razmeštanjesadržaja po kolonama Za rad sa kolonama se koristi okruženje columns unutarkojeg možemo da dodajemo nove kolone pomoću columnširina Sadržaj jemoguće potom pisati i van okruženja sa kolonama

U paru sa kolonama često se sreće i okruženje block koje se parametrizujenaslovom Primerom su i lustrovani i okruženje column i okruženje block

beginframebegincolumns

column05textwidthbeginblockNaslov levog blokaSadržaj u prvoj (levoj) koloni endblock

column05textwidthbeginblockNaslov desnog blokaSadržaj u drugoj (desnoj) koloni

endblockendcolumns

beginblockVan kolona

Beamer

48

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Tekst koji se nalazi ispod kolonaendblock

endframe

TabeleIako se u radu sa prezentaci jama sadržaj najčešće može uredno rasporeditipomoću kolona i nabrajanja nekada to ni je dovol jno jer su tabele pravi formatBimer podržava standardno Lateh (LaTeX) okruženje za rad sa tabelamaOkruženje za rad sa tabelama se zove tabular Pri kreiranju nove tabele moguće jepodesiti koje kolone će biti razdvojene l ini jom i da l i će nj ihov sadržaj biti centrirani l i uz levu i l i uz desnu ivicu Dodavanje novog reda se jednostavno radidodavanjem hline Lateh pruža zaista jako fleksibi lan rad sa tabelama i sigurno ćedoskočiti svim mogućim i nemogućim zamisl ima Potražite bi lo koje Lateh uputstvoza rad sa tabelama i radiće i sa Bimerom

beginframebegintabular | c | c | c | c |

hlineamp Ponedeljak amp Utorak amp Sreda hline

1 amp 16 amp 32 amp 64 hline2 amp 16 amp 128 amp 1024 hline3 amp 16 amp 512 amp 4096 hline

endtabularendframe

Sam svoj majstor

49

Broj 33

Beamer

Teoreme i istaknut tekstU nastavi su česta izlaganja teorema nj ihovih dokaza i primera U Bimer jeugrađena podrška za elegantno predstavl janje ove trojke Mehanizam takođepodržava postepeno otkrivanje sadržaja sla jda tako da slušaocima ne bude odmahotkriven dokaz teoreme Mehanizam za postepeno otkrivanje se kao i kodnabrajanja postiže pomoću bdquolt1-gtrdquo konstrukci je Evo kako to izgleda

beginframeframetitlePrimer teoreme

begintheoremlt1-gt Teorema kaže da su beamer prezentacijezanimljive

endtheorem

beginexamplelt2-gt Ovaj kod kreira slajd beamer prezentacijeendexample

beginprooflt3-gt Čestitamo stigli ste do kraja serijala o pravljenju beamer prezentacija

endproofendframe

50

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Za krajOvim člankom završavamo seri ja l o Bimeru Nadamo se da smo uspel i da vaszainteresujemo za ovu vrlo korisnu klasu Lateha Trudi l i smo se da vamprezentujemo najvažni je delove Bimera koje ćete najčešće koristiti pri l ikomkreiranja svoj ih prezentaci ja

Napominjemo još jednom da je Bimer samo jedna od klasa Lateha što znači da i zaBimer važi sve ono što ste već mogl i da pročitate u ovom časopisu kad smo pisal iseri ja l bdquoUvod u LaTeXrdquo (LiBRE brojevi 17 do 21) Štaviše ovaj seri ja l o Bimeru jebio nastavak upravo tog seri ja la U ovom seri ja lu nismo pisal i o samomformatiranju teksta u prezentaci jama jer se podrazumeva da važe ista pravi la kao iu Latehu a o tome smo pisal i u prethodnom seri ja lu

Hvala vam što ste prati l i ovaj seri ja l i žel imo vam puno uspeha u kreiranju Bimerprezentaci ja

Sam svoj majstor

51

Broj 33

Autor Nenad Marjanović

Kada smo se upoznal i sa podešavanj ima sistema i umrežavanjem vreme je za našprvi Biglbon Blek (BBB - eng BeagleBone Black) projekat Svakom od nas će ovajizazov dati razl ičite ideje a jedna od nj ih može biti i zaštita privatnosti internetkorisnika Nažalost u Srbi j i ne postoj i ni jedan izlazni tor server (eng node) i to jepomalo tužna sl ika s obzirom da govorimo o populaci j i od sedam mil ionastanovnika Al i ovu sl iku možemo promeniti udruženim snagama i za početakkreiranjem Tor transfer i izlaznog servera U ovde prikazanom grafikonufokusiraćemo se na bdquoRauter Brdquo tačku odnosno transfer server konfiguraci ju

BeagleBone Black Rev C

Vodič od prvog dana (3 deo) ndashBeagleBone Black kao Tor relej

Hardver

52

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Tor predstavl ja mrežu servera koj i se povezuju radi bol je enkripci je podataka izaštite IP adrese korisnika Naš ci l j je da danas postanemo deo ovog predivnogprojekta i da se nađemo na svetskoj karti Tor servera

Brzina interneta i zakonske regulativePotrebno je imati na umu nekol iko bitnih stvari

1 Naš server = naša odgovornost2 Obavezno naznačite da ste vi administrator a ne korisnik istog servera3 Da posedujete internet brzinu od 2 Mbs

Ako ispunjavamo tri navedena pravi la i odgovornosti možemo se posvetitiadministrativnim poslovima

Instalacija i podešavanjaU ovom primeru koristimo Debi jan Vizi (eng Wheezy) odnosno Debi jan 7 verzi juna našem BBB uređaju Vi možete testirati i druge Linuks platforme Prvododajemo izvornu bibl ioteku u etcaptsourceslist faj l pokretanjem sledećekomande u terminalu

echo deb httpdebtorprojectorgtorprojectorg wheezy main gt etcaptsourceslistdtorlist

Zatim dodajemo izvorni kl juč vršimo ažuriranje sistema i instal iramo tor i tor-arm(Tor monitoring sistem)

gpg --keyserver keysgnupgnet --recv 886DDD89gpg --export A3C4F0F979CAA22CDBA8F512EE8CBC9E886DDD89 | sudo apt-keyadd -apt-get updateapt-get install debtorprojectorg-keyring -yapt-get install tor tor-arm egrep screen -y

Ovim smo uspešno završi l i instalaci ju Tor servera i sistema za monitoring odnosnonadgledanja našeg Tor servera Sledećom komandom radimo na podešavanj imaTor servera koja se nalaze u etctortorrc faj lu Obratite pažnju i izvršite potrebne

Hardver

53

Broj 33

izmenu u pol j ima IP adresa (eng Address) nadimka (eng Nickname) i kontaktpodataka (eng ContactInfo) pre pokretanja ove komande Kopiramo i pokrećemokomandu u celosti u terminalu

egrep -v ^(|$) etctortorrcORPort 443Address 19216811Nickname LibreTorRelayRelayBandwidthRate 100 KBRelayBandwidthBurst 120 KBContactInfo ltvi at gmail dot comgt irPort 8080DirPortFrontPage etctortorhtmlExitPolicy reject

Detal je o svim vrednostima nećemo iznositi u ovom broju LiBRE časopisa al ićemo o nj ima pisati u sledećem u kome ćemo pričati o zaštiti Tor servera imogućnosti podešavanja određenih izlaznih pravi la (eng ExitPolicy)

Nakon ovoga možemo primetiti da se u folderu etctor ne nalazi torhtml faj l Ovaj faj l ni je od vel ikog značaja i možete ga l ično napraviti i l i preuzeti jednu kopi ju- naprimer sa sledeće lokaci je

cp usrsharedoctortorhtml etctortorhtml

Opcije i Tor Arm monitoringDa bismo ispravno koristi l i Tor Arm potrebno je urediti još jednom etctortorrcfaj l i restartovati servis

echo -e ldquoDisableDebuggerAttachment 0n AvoidDiskWritesrdquo gtgt etctortorrcsudo service tor reload

Ukol iko žel ite koristiti Tor Arm za nadgledanje aktivnosti na serveru pokreniteprogram screen kl iknite na bdquoEnterrdquo i kucajte sudo -u debian-tor arm Naekranu ćete imati sl ičan prikaz

BeagleBone Black

54

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Hardver

55

Broj 33

Da bismo napusti l i screen program koristimo Ctrl + a + d i na taj način kada sesledeći put pri javimo na server kucamo samo screen -r u terminalu - i naći ćemose ponovo na čuvenom Tor Arm monitoring ekranu

Nakon svake promene konfiguracionih faj lova ako slučajno nismo nešto podesi l ikako treba restartujemo servise

U sledećem broju časopisa govorićemo o minimalnim podešavanj ima ikonfigurisanju izlaznog Tor servera (eng Tor Exit Node) opci jama sigurnosti isl ičnim detal j ima u vezi sa našim prvim projektom Do čitanja u sledećem broju

BeagleBone Black

LUGoNS BarCamp 4subota 7 mart 2015 godine

Četvrti LUGoNS-ov Barkemp (BarCamp) održaće se u Novom Sadu usubotu 7 marta 2015 godine na Fakultetu tehničkih nauka sa početkomu 12 časova

Ulaz je slobodan

Poziv za predaju radovaLUGoNS poziva sve zainteresovane da pošal ju svoje radove (predavanjaprezentaci je radionice i diskusi je) do 28 februara 2015 godine

Oblasti iz koj ih možete da pri javite vaše radove su

bull Slobodan softverbull Zaniml j iv hardverbull Hakerski zakonibull Sigurnosne noćne morebull Anonimnost i privatnost na internetubull Duboki veb (eng Deep Web)bull Soci ja lne mrežebull Soci ja lni inženjeringbull Hakovanje mobi lnih uređajabull Internet u oblaku (eng Clouds) ndash hakovanje razbi janje i neočekivano korišćenjebull DPI (eng deep packet inspection)bull Mreža i mrežna neutralnost ndash vlasništvo cenzura nadmudrivanje i pol itika bdquodefaktordquo standarda

bull Programiranje i programski jezici

Nemojte se ustručavati i slobodno nam se javite ako imate rad na gore navedenei l i sl ične teme koj i smatrate interesantnim

Stranica za predaju radova nalazi se na https events lugonsorgp=1658

Page 21: LiBRE 33 Lat

21

Broj 33

Kopiranje stringovaKao što je u prethodnom odel jku napomenuto stringovi su u C-u samo običninizovi To znači da sledeći kod verovatno neće uraditi ono šta bi bi lo očekivano

niz1 = niz2

Ovime smo pokazivaču niz1 bdquorekl irdquo da pokazuje tamo gde i pokazivač niz2 Efektivno oni sad pokazuju na isti tekst međutim ako izmenimo niz1 to će seodraziti i na niz2 a važi i obrnuto Ovime smo dobi l i samo dva pokazivača na istideo memori je a uglavnom to ni je bio ci l j

Drugi način kako bismo sadržaj drugog niza mogl i da kopiramo u prvi niz je petl jakojom bismo kopiral i element po element Pošto je operaci ja kopiranja stringovavrlo često potrebna postoj i standardna bibl ioteka za rad sa stringovima koja sezove stringh a funkci ja za kopiranje stringova je strcpy()

strcpy(niz1 niz2)

Dati primer kopira sadržaj niza 2 u niz 1 Kopira se element po element sve dok seu nizu 2 ne naiđe na NULL karakter Ovakvo kopiranje (element po element) seinače u stranoj l i teraturi naziva i bdquodeep copyrdquo i vrlo često se sreće u radu sastrukturama podataka gde je potrebno obići celu strukturu podataka i svakielement kopirati a strukturu opet izgraditi u drugom delu memori je

Zaniml j ivo je što je kopiranje stringova moguće pojednostaviti ukol iko definišemonovi tip podatka kao strukturu koja sadrži niz karaktera i potom izvršimo kopiranjeOvo je trik koj i se uglavnom ne koristi u praksi i spomenut je samo kaozaniml j ivost

include ltstringhgt struct str char niz[50]

int main()

struct str s1struct str s2

Uvod u programski jezik C

22

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

strcpy(s1niz zdravo)s2 = s1

s2niz[0] = Z

puts(s1niz)puts(s2niz)

return 0

Kreirana je struktura str koja sadrži pol je niza karaktera pod nazivom niz Pozivomfunkci je strcpy() kopiramo string ldquozdravordquo u s1 čime smo bdquonapuni l irdquo sadržajobjekta s1 Potom je izvršena redovna dodela čime je sadržaj objekta s1 kopiran us2 Zatim je izmenjen samo prvi karakter objekta s2 i oba stringa su ispisanaPrimećujete da su kopirani svi znakovi a da je izmenjen samo drugi objekatZaniml j iv trik

Poređenje spajanje i pretraga stringovaDruga vrlo česta situaci ja je poređenje dva stringa Ukol iko bi poređenje bi loizvršeno upotrebom redovnog operatora za poređenje == tada bi u stvari bi lepoređene samo adrese na koje pokazuju pokazivači tih stringova jer da sepodsetimo stringovi su u C-u samo obični nizovi Ispravan način za poređenje dvastringa je pozivanjem funkci je strcmp() či ja je povratna vrednost 0 ukol iko su jojprosleđeni stringovi sa jednakim sadržajem

include ltstringhgt int main()

char niz1[] = zdravochar niz2[] = zdravo

if( strcmp(niz1 niz2) == 0)puts(Stringovi su jednaki)

elseputs(Stringovi nisu jednaki)

return 0

Kako da

23

Broj 33

Funkci ja strcmp() poredi svaki element prosleđenih nizova pojedinačno a dobraje vežba implementiranje nove funkci je strcmp() koja će unutar petl je da porediodgovarajuće elemente prosleđenih nizova i potom vratiti rezultat 0 ukol iko su svielementi jednaki Potrebno je pripaziti na situaci ju kada su stringovi razl ičitihdužina

U svetu računara spajanje dva sadržaja se zove konkatenaci ja Odatle i nazivfunkci je za spajanje dva stringa strcat() Važno je uveriti se da je string u koj i sedodaje sadržaj dovol jno vel ik da ga prihvati inače može da dođe do nežel jenogprepisivanja u memori j i uništavanja drugih podataka i neispravnog ponašanjaprograma

Pretraga unutar stringa se može obaviti funkci jom strstr() Ova funkci ja kaoparametre očekuje pokazivač na niz karaktera (string) u kojem je potrebno pronaćistring koj i je prosleđen kao drugi parametar Povratna vrednost je pokazivač nadeo memori je gde se žel jeni string prvi put pojavio

Sledi malo opširni j i primer koj i i lustruje spajanje pretragu i kopiranje stringova

include ltstringhgt int main()

char niz_a[50] = LiBRE je char niz_b[] = najbolji casopischar niz_c[] = e-magazin

strcat(niz_a niz_b)puts(niz_a)

char cilj = strstr(niz_a casopis)strcpy(cilj niz_c)

puts(niz_a)

return 0

Uvod u programski jezik C

24

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Pretvaranje tipova podataka u stringove ipretvaranje iz stringovaPretvaranje podataka iz jednog tipa u drugi i l i kastovanje (eng type casting) se zavećinu tipova vrši jednostavno pisanjem tipa u zagradama na primer (int)523 Stringovi su i po ovom pitanju drugači j i Postavl ja se pitanje šta pretvoriti ucelobrojni tip - da l i adresu na koju pokazuje pokazivač niza koj i predstavl ja stringPrvi element Šta ako taj string ni je broj Predstavićemo rešenje za konverzi jubrojeva u stringove i obrnuto

Ispis podataka na ekranu se takođe može smatrati konverzi jom Broj sa pokretnimzarezom je u memori j i prikazan na pomalo čudan način a pozivom funkci jeprintf() kada je kao format zadat f na ekranu ćemo dobiti razuml j iv niz znakovaSl ičan rezultat možemo dobiti funkci jom sprintf() a jedina razl ika u odnosu naprintf() je ta što sprintf() kao prvi argument očekuje pokazivač na string dok sudrugi (format string) i treći (argumenti koj i se povezuju sa formatnim stringom)sl ični kao kod funkci je printf()

Kod pretvaranja stringova u brojevne tipove može poslužiti funkci ja sscanf() kojase ponaša sl ično kao funkci ja scanf() s tim što je prvi argument adresa(pokazivač na string) koju žel imo da skeniramo u nadi da će se poklopiti saformalnim stringom koj i je drugi argument a rezultati će biti sačuvani u adresamakoje su prosleđene kao 3 4 i ostal i parametri Drugi način za pretvaranje stringovau celobrojne brojeve i brojeve sa pokretnim zarezom su funkci je atoi() i atof()

Funkci je koje koriste formatni string su česte u jeziku C i zaslužuju posebnu pažnjumeđutim to je priča za poseban članak U ovu klasu funkci ja spadaju recimo ifunkci je za rad sa datotekama

BezbednostRad sa stringovima može da bude izuzetno opasna stvar po pitanju bezbednostiprograma Ukol iko se niz karaktera ne završava NULL karakterom svašta može dapođe po zlu pri pozivu funkci ja kao što su strcpy() strcmp() i sl ične Cela klasatih funkci ja se oslanja na postojanje znaka koj i označava kraj stringa Kada stringni je propisno završen tada te funkci je mogu da zalutaju u deo memori je vanstringa i svašta može da pođe po zlu Ovakav tip napada se inače zoveprekoračenje bafera (eng buffer overflow) Preporučen način kako da izbegnete

Kako da

25

Broj 33

Pregled popularnosti GNULinuxBSDdistribuci ja za mesec februar

Distrowatch

Pad ltPorast gtIsti rejting =(Korišćeni podaci sa Distrovoča)

12345678910111213141516171819202122232425

MintUbuntuDebianopenSUSEelementaryMageiaFedoraManjaroCentOSLXLEArchBodhiAndroid x86Kal iPCLinuxOSPuppyRobol inuxLubuntuQ4OSBlack LabNetrunnerSimpl icityEvolveZorin4MLinux

2919gt1778gt1701gt1323gt1204gt1174gt1166gt1028lt1020gt965gt957gt907gt900lt760gt742lt732gt695gt670gt663gt655gt652gt629gt607gt583gt517=

takve nepri jatne situaci je pri radu sastringovima je da koristite verzi jefunkci ja koje su ograničenemaksimalnom dužinom stringa kaošto su strncpy() strncat() strncmp() i td Sve te funkci je kaotreći parametar zahtevaju broj koj iodređuje maksimalnu očekivanudužinu stringa Još jedna vrlo korisnafunkci ja je strlen() či j i zadatak je daodredi dužinu stringa Budite pažl j ivi ovo je prvo mesto gde se tražebezbednosni propusti u programimaNe verujte podacima koj i spol ja ulazeu vaš program a pogotovo kada je rečo stringovima

Uvod u programski jezik C

26

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Autor Dejan Maglov

Projekti slobodnog softvera obično počinju kao projekti pojedinca i l i male grupeprogramera a koj i rade na razvoju softvera či j i je ci l j da zadovol j i neke od nj ihovihl ičnih potreba Projekat će se smatrati uspešnim ukol iko se šira zajednicazainteresuje za njega nakon što prepozna korisnost softvera ne samo za pojedincekoj i su započel i projekat već i za širu zajednicu Kada je u pitanju slobodni softvervremenom je postala stalna praksa da se zajednica umeša u razvoj projekataDobri projekti sami privlače zajednicu l judi koj i su zainteresovani za nj ih i ona uvećini slučajeva preuzima na sebe testiranje pobol jšanje funkcionalnosti održavanje i tehničku podršku projekta

Zajednice slobodnog softvera mogu da se okupe oko projekta slobodnog softverapo teritori ja lnom principu i l i da nastanu kombinaci jom ovih principa

Primeri

bull LiBRE projekat okupl ja zajednicu oko projekta bez teritori ja lnog ograničenjabull LUGoNS (Linux User Group of Novi Sad) je zajednica korisnika Linuksa poteritori ja lnom principu bez obzira na konkretan projekat

bull Ubuntu-rs zajednica koja je kombinaci ja okupl janja zajednice oko konkretnogprojekta (Ubuntu) i teritori ja lnog principa koj i se ograničava na teritori ju Srbi je

Ova sinergi ja projekata i korisnika slobodnog softvera ima više prednosti i zakorisnike i za projekat Projekat se na ovaj način brže razvi ja dobi ja na

U potrazi za idealnom distribucijom

Socijalni kriterijumi za izbor idealnedistribucije (6 deo)

Oslobađanje

27

Broj 33

funkcionalnosti greške se brzo ispravl ja ju i td Korisnici dobi ja ju osećaj dapripadaju grupi druže se sa istomišl jenicima učestvuju u promoci j i kval itetnihpojedinaca itd

Dve najvažni je uloge lokalnih zajednica za GNULinuks distribuci je su

1 pružanje tehničke podrške i edukaci je na maternjem jeziku2 rad na lokal izaci j i i pri lagođavanje distribuci je lokalnim potrebama

Informaci ja da postoje lokalne zajednice slobodnog softvera je od naročitogznačaja za početnike i korisnike koj i nedovol jno dobro znaju strane jezike(naročito engleski jezik) Ako izuzmemo komerci ja lne projekte otvorenog koda(Red Het SUSE) ne postoje zvanične škole i kursevi za slobodni softver Zaedukaci ju početnika je uglavnom zadužena zajednica a jasno je da je učenje namaternjem jeziku uvek lakše nego na bi lo kom drugom stranom ma kol ikodobro ga poznajete

Forumi i viki stranice lokalnih zajednica su prave bibl ioteke u koj ima korisnicimogu da nađu većinu odgovora na svoja pitanja a za sva ostala tu su forumi iIRC kanal i zajednica na koj ima uvek ima nekoga i koj i imaju već gotova rešenjaza vel iki broj problema

U potrazi za idealnom distribucijom

28

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Lokalne zajednice kao kriterijum za izbor idealnedistribucijePočetnicima i korisnicima koj i ne vladaju dobro engleskim jezikom toplopreporučujemo da biraju GNULinuks distribuci je koje imaju aktivnu lokalnuzajednicu Ovladavanje novim operativnim sistemom je mnogo lakše ukol iko vambdquoleđa čuvardquo lokalna zajednica na koju se uvek možete osloniti

Već smo spomenul i da su popularni je GNULinuks distribuci je namenjenepočetnicima Slučaj je isti i sa lokalnim zajednicama okupl jenim oko nj ih Ovomeđutim ne znači da je kval itet usluga koje nude manje popularne lokalnezajednice okupl jene oko distribuci ja namenjenih napredni j im korisnicima loši j i Manje popularne distribuci je okupl ja ju manje l judi a l i zato oni poseduju većeznanje Iskustvo sa zajednicama okupl jenim oko slobodnog softvera je uglavnompozitivno i ukazuje na to da kval itet usluga koje one nude korisniku ni je uslovl jenpopularnošću i masovnošću zajednice nego iskl jučivo njenom (ne)aktivnošću

U svakom slučaju dosadašnj i saveti za izbor idealne distribuci je važe i dal jeSoci ja lni aspekt slobodnog softvera je samo dodatni faktor koj i vam može pomoćipri donošenju odluke kada se dvoumite između nekol iko mogućih rešenja

Još uvek ne postoj i na jednom mestu potpuni i ažurirani spisak svih aktivnihsrpskih zajednica Nešto najbl iže tome može da se nađe na adresihttps pulsslobodewordpresscom Za informaci je o nekim drugim lokalnimzajednicama koje možda postoje al i nisu na ovom spisku moraćete sami dapretražite internet

Lokalizacija kao kriterijum za izborZa lokal izaci ju GNULinuks distribuci ja i GNU programa odgovorni su pojedinci ilokalne zajednice Sasvim sol idnu srpsku lokal izaci ju mogu imati i projekti koj iuopšte nemaju svoju lokalnu zajednicu a isto tako lošu lokal izaci ju mogu imati iprojekti sa dobrom lokalnom zajednicom Sve je stvar prioriteta zajednica iaktivnosti pojedinaca

Pravu i kontrol isanu lokal izaci ju može imati samo lokalni projekat Ovakvihprojekata u Srbi j i ima malo i teško se probi ja ju čak i u lokalu u konkurenci j isvetskih projekata Istina je da mnoge veće GNULinuks distribuci je imaju srpskulokal izaci

Oslobađanje

29

Broj 33

ju u ponudi pa se možda sl ični lokalni projekti koj i su usmereni samo na striktnulokal izaci ju smatraju nepotrebnima Uzvodna lokal izaci ja u slučaju Srbi je vrlo čestobude veoma loše čak nakaradno sprovedena Jedna polovina programa jelokal izovana srpskom ćiri l icom a druga latinicom Ako postoj i još delova sistemakoj i uopšte ni je lokal izovan onda se pojavl ju ju i delovi programa koj i su naengleskom Zato ćemo se vratiti na prvu rečenicu ovog pasusa i ponovo utvrditi dasamo lokalni projekat može potpuno kontrol isati pravu srpsku lokal izaci ju

U Srbi j i za sada imamo dva aktivna projekta GNULinuks distribuci je ndash TriOS(http triosrs) i Serbian (http wwwdebian-srbi ja iz rspserbianhtml) Obaprojekta su mlada i imaju svoj ih prednosti i mana Kome treba lokal izovanoperativni sistem može da proba jedan od ova dva projekta

U potrazi za idealnom distribucijom

30

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Iako ove dve domaće distribuci je nisu baš naj idealni je interesantno je probati ih iuporediti sa drugim distribuci jama

Za kraj serijalaNamera nam je bi la da kroz ovaj seri ja l o kriteri jumima pri izboru idealnedistribuci je definišemo većinu kriteri juma pri izboru i pokažemo zašto je teškoodgovoriti na jednostavno pitanje bdquoKoju mi distribuci ju preporučujeterdquo

Ni na samom kraju nismo dal i konkretan odgovor na pitanje koja je idealnaGNULinuks distribuci ja Suviše je subjektivnih ocena da bi se mogao datikonkretan odgovor Smatramo da je jako teško napisati neki algoritam izbora pokriteri jumima koje smo identifikoval i i definisal i a možda je čak i nemoguće poštose izlazi stalno menjaju Izlazi iz tog algoritma su GNULinuks distribuci je koj ih izdana u dan ima sve više a i one stare se stalno menjaju

Sam seri ja l bdquoU potrazi za idealnom distribuci jomrdquo neće biti završen samo zato štose više neće baviti kriteri jumima pri izboru nego će pokušati da predstavl jaGNULinuks distribuci je koje su po nečemu bdquoidealnerdquo

Oslobađanje

31

Broj 33

ORM

Autor Dejan Čugal j

Object relation mapping (ORM)

ORM (eng Object RelationMapping) je način postizanja traj-nosti (eng persistence) objekataunutar relacionih baza podatakaModel deluje kao posrednik nalogičkom delu apl ikaci je Automat-ski presl ikava podatke iz objekata ubazu i nazad na zahtev apl ikaci jeDa bismo objasni l i kako ovo sveradi moramo da vam predstavimoORM frejmvork (eng framework)programa otvorenog koda -Hajbernejt (eng Hibernate -http hibernateorgorm)

Šta je ORMUkratko ORM je automatizovano transparentno presl ikavanje objekatakorišćenjem metapodataka koj i opisuju mapiranje veze između objekta i baze

ORM (2 deo)

Slobodni profesionalac

32

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

podataka u apl ikaci jama koje su napisane u objektno ori jentisanim programskimjezicima Apl ikaci ja komunicira sa ORM-om preko njegovog vlastitog API-ja (engapplication programming interface) i određenih objekata Ova komunikaci ja jepotpuno odvojena od komunikaci je koja se odvi ja između ORM-a i baze podatakapreko SQL-a i DBC-a

Da bi se postigla i dostigla potpuna snaga ORM-a u apl ikaci j i koju projektujemonikako se ne sme iskl jučiti znanje relacionih modela SQL jezika te poznavanjeDBMS-a u kome se radi ORM ni je ništa drugo do srednj i sloj između gorepomenutih tehnologi ja i objektno ori jentisanog programiranja kao što smo to dosada već više puta naglasi l i

Implementacija ORM-aPostoje razl ičiti načini implementaci je ORM-a Mark Fasl (Mark Fussel) je 1997definisao četiri nivoa

1 bdquoČistrdquo relacioni način2 Slabo mapiranje objekata3 Umereno mapiranje objekata4 Potpuno mapiranje objekata

bdquoČistrdquo relacioni način

Cela apl ikaci ja ukl jučujući i korisnički interfejs dizajnirana je relacionim modelom iSQL relacionim operatorima Ovakav pristup je odl ičan za male projekte Direktanpristup SQL-u omogućava fino podešavanje svakog aspekta upita koj i se postavl jabazi podataka Osnovne mane su portabi lnost (prenosivost) i održavanje ovakvihsistema pogotovo ako se planira korišćenje apl ikaci je na duži rok Ovakvi sistemimasovno koriste sačuvane procedure (eng stored procedures) što znači da jeposlovna logika (eng busines logic) prebačena na samu bazu podataka

Slabo mapiranje objekata

Entiteti su predstavl jeni kao klase i mapiranje se radi ekspl icitno ka relacionimtabelama SQLJDBC je sakriven od poslovne logike korišćenjem poznatih šablona(patterns)

Umereno mapiranje objekata

Slobodni profesionalac

33

Broj 33

Dizajn apl ikaci ja se svodi na objektne modele SQL se generiše u vremekompaj l iranja (eng build-time) i l i u vreme izvršavanja (eng run-time) Specifikaci jaupita nad bazama podataka se radi na objektno ori jentisanom jeziku Ovakvisistemi se koriste u apl ikaci jama srednj ih vel ičina kod koj ih je bitna portabi lnostizmeđu razl ičitih sistema za upravl janje bazama podataka (DBMS)

Potpuno mapiranje objekata

Podržava sofisticirano objektno model iranje nasleđivanje i pol imorfizamEfikasnost dobi janja podataka je na visokom nivou i koriste se metode kao što sulenjo učitavanje (eng lazy loading) i strategi ja keširanja (eng caching) Implementaci ja je transparentna u apl ikaci jama Ovaj nivo je jako teško dostići Pojedincu su potrebne godine razvoja da postigne ovakvu fleksibi lnost pristupa imanipulaci ja u relacionim bazama podataka Upravo ovaj nivo se postiže ako sekoriste rešenja ORM-a kao što je Hajbernejt

Zašto ORMImplementaci ja ORM rešenja pogotovo ako seprvi put susrećete sa ovim modelom može dabude veoma frustrirajuća i malo teža zaimplementaci ju Kada ovo kažemo misl imo daprogramer koj i implementira ORM i hoće da istibude kval itetno urađen mora da posedujepredznanje objektno ori jentisanog programiranjai naprednih tehnika kao što su nasleđivanje ipol imorfizam

Ovo inicira fundamentalna pitanja

bull Pa zašto bi iko onda implementirao ovako nešto kompleksnobull Vredi l i truda upuštati se uopšte u ORM

Odgovor ni je jednostavan Dosadašnja iskustva u korišćenju ORM-a i njegovapopularnost već daju odgovor na postavl jeno pitanje Očigledno je da su benefitikoje donosi ovaj model veći od kompleksnosti njegove implementaci je a to su

Hibernate ORM

34

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Veća produktivnost

ORM smanjuje kol ičinu koda potrebnog za ostvarivanje trajnosti podataka Ovoomogućava programeru da vreme koje bi utrošio na ručno mapiranje podatakautroši na druge delove apl ikaci je

Lakše održavanje

Manje l ini ja koda osigurava bol ju razuml j ivost (i možda bol j i kval itet koda) jernaglašava apl ikaci jsku logiku ORM takođe ublažava uticaj nastal ih promena kaošto su promene u bazi strukturi tabela i td

Prenosivost

Većina ORM rešenja podržava sisteme za upravl janje bazama podataka raznihproizvođača ORM u potpunosti odvaja sloj apl ikaci je od stvarne SQL komunikaci jekoja se odvi ja u pozadini Time omogućava da se pišu apl ikaci je koje će moći da seizvršavaju na razl ičitim bazama podataka bez potrebe za dodatnim kodiranjemOva komunikaci ja se odvi ja sa programskim interfejsima ORM-a nezavisno oDBMS-u sa koj im je u bi lo kom momentu povezan ORM takođe omogućava lakšiprelaz sa manj ih na veće baze podataka tokom razvoja apl ikaci je

Uvidel i smo da trenutno postoje dve paradigme koje se bdquosudarajurdquo i koje supodjednako dobre same za sebe Relaciona paradigma potvrđuje da sve što jeizgrađeno na matematičkim osnovama je i trajno u smislu kval iteta koje posedujeU domenu u kom relaciona paradigma egzistira ona je ako je to u ovo vremeuopšte moguće tvrditi nezamenj iva

Ono što otvara pitanja i daje razlog za sumnju je koja je krajnja granicaupotrebl j ivosti relacione paradigme tj kol iki su kapaciteti složenosti zahtevaapl ikaci ja sa kojom može da se nosi Praksa je pokazala da je sasvim mogućebdquoizvestirdquo složene projekte - al i održavanje skalabi lnost razuml j ivost prenosivost -pitanja su sa koj im se relaciona paradigma teško može izboriti

Sa druge strane svoj habitat u informacionim tehnologi jama je našla i objektna

Slobodni profesionalac

35

Broj 33

paradigma Iako na prvi pogled ova dva modela nemaju ništa zajedničko - što je uneku ruku i istinito gledajući prirodu podataka koj im manipul išu - praksa jepokazala da su usko povezane i skoro da imaju sinaptičku vezu

Pitanje bdquokako spoj iti te sinapserdquo dovelo je do žučnih rasprava u uskim naučnimprogramersko-administratorskim krugovima Rodi l i su se razni model i a l i jedan jeiskočio i polako ulazi u široku primenu - a to je ORM Svoj im supti lnim pristupomproblemu nekompatibi lnih paradigmi nekako je uspeo da stvori taj nedostajućibdquoelektrični signalrdquo koj i ih je povezao Ovo je omogući lo da dve strane koje susvaka za sebe u svom domenu ostavi le i ostavl ja ju duboki trag u informacionimtehnologi jama sarađuju i donesu novi kval itet

Korisni l inkovi

[1] Hibernejt http hibernateorg[2] Viki http googlLlZulw[3] Tutori ja l i http googlCGzvnc

Hibernate ORM

36

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Autor Kriptopank

Šta su zapravo metapodaci Najkraće rečeno to su podaci o podacima i l iinformaci je koje opisuju podatke

Najpre da napravimo razl iku između podataka i metapodataka Podaci sunaprimer snimak (i l i transkript) vaših telefonskih razgovora sadržaj poruka kojepišete primate i l i šal jete podaci koje kačite na internet i l i preuzimate pretrageGuglom postovi na forumima dopisivanja na IRC kanal ima i l i drugim četovimaaudio i video snimci Skajp razgovora i tako dal je

Hajde da vidimo šta bi bi l i odgovarajući metapodaci za ove primere

bull Za telefonske razgovore metapodaci mogu biti lokaci ja učesnika brojevitelefona trajanje razgovora IP i MAC adresa

bull Za poruke četove i Skajp i l i druge video-audio komunikaci je sl ično je kao kodtelefonskih razgovora

To su samo metapodaci

Internet mreže i komunikacije

37

Broj 33

bull Kod foruma i pretraga Guglom ima malo manje metapodataka al i Gugl i raznisajtovi i forumi ionako čuvaju logove o korisnicima što su takođe metapodaci

Ako do sada koj im slučajem niste uvidel i opasnost po privatnost u ovimmetapodacima koje svako od nas smrtnika svakodnevno ostavl ja za sobom usvetu interneta i ostal ih digitalnih komunikaci ja nadamo se da će vas ovaj primermakar podstaći na razmišl janje a možda i na nešto više

Zamisl i te da neko (zvaćemo ga posmatrač) stalno sakupl ja metapodatke koje zasobom ostavl jate kao mrvice hleba Posmatrač recimo zna da se nalazite naautoputu nedaleko od famoznog Feketića da se ne krećete da zovete AMSS zatimšlep službu i možda taksi a l i ne zna šta ste razgovaral i I l i posmatrač vidi da steprvo zval i aerodrom Nikola Tesla pa odmah potom taksi a l i ne zna šta sterazgovaral i I l i posmatrač vidi da ste zval i prvo šest brojeva či je identitete takođezna pa vidi da se oni zatim kreću ka vama - GPS (eng Global Positioning System) pa zatim pica servis Mekdonalds i neku poznatu prodavnicu kineske hrane al i nezna šta ste razgovaral i

Posmatrač ne mora da bude mnogo pametan niti da prisluškuje vaše razgovore dabi shvatio šta se dešava i l i šta će se desiti Sasvim mu je jasno da vam je u prvomprimeru auto stao na autoputu zatim da ste se u drugom slučaju uputi l i naaerodrom i da možda putujete van zemlje i l i ste poslal i taksi po nekoga saaerodroma a da u trećem slučaju okupl jate žurku kod vas Više možete pogledatina http googl7vUjP

Iako su to bdquosamordquo metapodaci treba biti svestan da ti metapodaci o vama stvarajujednu digitalnu sl iku i l i bol je reći digitalni mozaik i na neki način vas jedinstvenoodređuju Pogotovo kada se planski prikupl ja ju na više nivoa (kompjuter pametnitelefon pametni automobi l i kreditna kartica) metapodaci čine vaš digitalniidentitet Al i da stvar bude još gora ta sl ika o vama ne mora nužno biti istinita jerse lako može lažirati Recimo možete zameniti telefone i l i automobi le sa nekimnamerno i l i slučajno i l i vam neko može jednostavno ukrasti telefon laptop i l ikreditnu karticu Zaniml j iv video http googlKO1fKf

Evo jednog primera koj i vas može uvući u vel ike nevol je Recimo da prolazitenekom zabačenom ul icom i da vam neprimetno ispadne telefon al i vi to neprimetite i nastavite dal je svoj im putem U toj ul ici se samo nekol iko minutakasni je desi neko ubistvo i vas pozovu u pol ici ju kao osumnj ičenog Ako koj im

To su samo metapodaci

38

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

slučajem nemate dobar al ibi i l i nemate svedoka da posvedoči da niste bi l i u tojul ici nego tamo gde ste stvarno bi l i a drugih svedoka nema - možete jako lošeproći Zaniml j ivi video http googlspS5OZ

Metapodaci se takođe nalaze i u faj lovimapodacima koje svakodnevnopreuzimamo sa interneta pravimo i koristimo Svaki tip podatka može da sadržiodređene metapodatke koj i bol je opisuju sam podatak kao naprimer vremenastanka podatka kol iko je vremena potrošeno za njegovo kreiranje kol iko putamu je pristupl jeno kad je poslednj i put pristupl jeno i tako dal je Iako se ovakvimetapodaci možda još uvek čine bezazlenim oni mogu sadržati i IP adresuračunara sa kog su napravl jeni GPS koordinate (najčešće PNG format sl ika satelefona) ko ga je napravio (l ičnost i l i kompani jaorganizaci ja) naziv uređaja imodel sa koga je napravl jen kao i MAC adresu uređaja mej l adresu kreatorasoftver koj im je napravl jen i tako dal je Sve ovo može mnogo da naškodiprivatnosti izvornog kreatora faj la pogotovo ako je sadržaj poverl j iv Ukol iko nekopresretne taj podatak na internetu može saznati od koga je potekao Da ovo možebiti katastrofa po kreatora takvog faj la može i lustrovati primer torenta Ako stedošl i u posed nekih sl ika i l i video materi ja la i l i teksta koj i žel i te da podel ite sasvetom preko nekog torent sajta morate taj podatak prvo očistiti odmetapodataka da ne bi svako ko skine to što ste okači l i saznao da vi stoj i te izatoga

Internet mreže i komunikacije

39

Broj 33

Ljudi se konstantno prate metapodaci se sakupl ja ju i to ni je sada već ništa novoal i možemo da se trudimo da iza sebe ostavl jamo malo manje nežel jenihmetapodataka i da ih takoreći čistimo iz podataka koje razmenjujemo Na srećupostoje programi koj i ovo dobro rade

Najpre je potrebno da vidimo koje sve metapodatke neki faj l sadrži kako bismo seuveri l i da ovi metapodaci stvarno postoje i da je faj l bezbedan nakon nj ihovogbrisanja

Ako koristite operativne sisteme GNULinuksa treba da iz terminala preuzmete iinstal irate program pod nazivom exiftool

sudo apt-get install exiftool

Ovaj program će nam pružiti uvid u sve metapodatke koje faj l sadrži Korišćenje jeiz terminala al i je zato veoma jednostavno samo ga pokrenite na sledeći način

exiftool File

i l i

exiftool putanjadofajlapočevodkorenogdirektorijuma

Dobićete prikaz metapodataka koje je program pronašao Sada je potrebno davidimo da l i je podatak bdquoprl javrdquo tj da l i ima u njemu nešto da se briše i da akoima iz njega sve nepotrebno obrišemo Tu će nam pomoći drugi program zvaniMAT (eng Metadata Anonymisation Toolkit) koga možete naći na sajtuhttps matboumorg i l i jednostavno za korisnike Ubuntua i Debi jana uSoftverskom centru i l i ga možete instal irati iz terminala

sudo apt-get install mat

MAT će proveriti da l i je podatak bdquoprl javrdquo i l i ne i za vas ga očistiti od nežel jenihmetapodataka

Kada očistite faj l on je spreman za del jenje sa drugima a vi ste bezbedni jer nikone može reći da je faj l potekao sa vašeg računara

To su samo metapodaci

40

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Autor Dejan Čugal j

GH Hardi bdquoPrava matematika nema uticaj na ratrdquo - odbrana matematičara1940 godina

Bi l Tat - britanski matematičar verovatno niste čul i za njega1942 godine je izveo ogroman poduhvat koj i je skratio rat dvegodine (barem po rečima Ajzenhauera) i spasio mi l ione životaNažalost njegova vel ičina je preminula 2002 godine obavi jenavelom tajne i nikada zvanično ni je priznato njegovo dostignuće

Tomi Flauers - bivši inženjer poštanskog saobraćaja pretvorio jematematičke ideje Tata u prvi računar a to ni je bio bdquoENIACrdquo1Preminuo je 1998 godine a pretpostavl jamo da nikada niste čul ini za njegovu vel ičinu

Ovi umni giganti bdquoBlečl i parkardquo omogući l i su Britani j i da dešifruje strogo poverl j ivumašinu koju je koristio Hitler da diriguje drugim svetskim ratom a to ni je bi labdquoENIGMArdquo nego nešto mnogo tajni je i značajni je Vel ika je verovatnoća da nistečul i ni za ovo Neki kažu da je to bio Hitlerov Blekberi (BlackBerry)

Izgubljeni heroji bdquoBlečli parkardquo

1 engl Electronic Numerical Integrator And Computer - prvidigitalni elektronski računar

Internet mreže i komunikacije

41

Broj 33

1939 godine bdquoBlečl i parkrdquo je postao ratni štab MI6 (britanske vojne obaveštajneslužbe) Do danas je procurelo u javnost i dokumentovano brojnim fi lmskimdokumentarcima samo da je tu Alan Tjuring uspeo da dešifruje nemačkumornaričku šifru poznatu kao bdquoENIGMArdquo i uvel iko doprineo pobedi saveznika a to jesamo deo priče koj i je ispričan

U Blečl i parku su bi la tri heroja AlanTjuring Bi l Tat i Tomi Flauers Od nj ihtroj ice jedino Alanu Tjuringu je priznat deozasluga za pobedu saveznika u Drugomsvetskom ratu Pregledom otkrivenihpodataka danas možemo da tvrdimo daje bdquoENIGMArdquo već sa početka drugogsvetskog rata bi la zastarela tehnologi ja Zbog toga je bi lo lako skinuti veo tajne sa

ovog uspeha heroja Blečl i parka

Izgubljeni heroji bdquoBlečli parkardquo

42

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Bi l Tat koj i je dešifrovao bdquoTANI sistemrdquo (TANI) i Tomi Flauers koj i je samo svojomintuici jom i znanjem sklopio prvi računar na svetu (bdquoKOLOSrdquo) u svrhu bržegdolaženja do informaci ja razbi jenog koda bdquoTANIrdquo tako da zastarelost šifrata budesvedena na minimum - radi l i su na novoj generaci j i mašina za šifrovanje Ovatehnologi ja je bi la prepoznata kao tehnologi ja budućnosti pa i danas iznadinformaci ja o tim tehnologi jama stoj i natpis bdquovrhunska tajnardquo (eng Top Secret) Upravo ovaj veo tajni oko šifrata bdquoTANIrdquo i prvog računara je rezultirao iskrivl jenjuistori je informatike

Za uspehe u prvim godinama rata je zaista zaslužno razbi janje bdquoENIGMArdquo šifrata ito ni je sporno al i krajem 1941 godine u etru planete se začuo novi zvuk To je bi lanova mašina za šifrovanje ni je bi la zasnovana na bdquoMorzeurdquo već je radi la naprincipu teleprintera

Jedna od kl jučnih ideja Hitlerovog ratovanja je bi la u vel ikoj mobi lnosti i brzomdelovanju trupa na terenu a da bi se to izvelo komunikaci ja je isto tako morala dabude u najmanju ruku putem radio signala

Razl ika je ogromna Razl ika je u kol ičini podataka koj i može da se prenese ovimbdquotajnimrdquo putem Prvi svetski rat je bio zaniml j iv jer su se šifrovane poruke baziralena rečima dok je Drugi u potpunosti otvorio vrata današnjoj kriptografi j i a to jematematika

Originalan nemački kocircdni naziv za ovaj šifrat bio je bdquoLORENCrdquo Britanska

Internet mreže i komunikacije

43

Broj 33

obaveštajna služba mu je dala nadimak bdquoTANIrdquo Čak ni dan danas ni je baš poznatokako je sve nastalo al i pouzdano se zna da je tajnu mašinu Hitler nazvaobdquoGehajmšrajberrdquo (nem Geheimschreiber) - mašina tajni

U srž i tehnologi ju šifrovanja bdquoLORENCrdquo šifrata nećemo ulaziti u ovom članku al iverujte nam na reč - ni je bi la jednostavna Može se pretpostaviti da je inspiraci jaŠenonovog 2 rada slučajnosti bi la upravo ova tehnologi ja iz Drugog svetskog rata

Ono čime se Treći rajh vodio je bdquosigurnardquo šifrovana veza koju niko ni je smeo dadešifruje Prenošenje šifrovanih poruka pomoću radio signala je dalo obaveštajnimslužbama mogućnost presretanja poruka poslatih radio talasima Da l i se ovo idanas dešava Imamo l i sigurnost u našim šifrovanim podacima današnj ice

Ono što je usledi lo nakon proboja ovog bdquoneuhvatl j ivogrdquo šifrata je upravo ono što jeprincip današnj ice kao neka vrsta protokola koj i mora da se ispoštuje uperfektnom šifarskom Šenonovom sistemu

1 NIKADA NIKADA NE KORISTITI DVA PUTA ISTI KLJUČ ZA ŠIFROVANJE2 NIKADA NIKADA KLJUČ NE SME DA SE ŠALJE ISTIM KOMUNIKACIONIM KANALOM

KAO PORUKA3 NIKADA NIKADA KLJUČ NE SME DA BUDE MANJ I NEGO ŠTO JE PORUKA (engl

2 Klod Elvud Šenon (eng Claude Elwood Shannon) (1916-2001) - Američkinaučnik i inženjer

Izgubljeni heroji bdquoBlečli parkardquo

44

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

one time pad) 4 NIKADA NIKADA NE SMEMO DA SAKRIVAMO SISTEM ŠIFROVANJA SVE MORA

DA JE OTVORENOG KOcircDA

Najveći propusti kriptologi je koj i su uočeni baš u Drugom svetskom ratu jesupokušaj sakrivanja sredstava koj im se generiše tajna poruka i nepoznavanjeŠenonovih krajnj ih granica informaci ja Kada kažemo bdquosredstvo i sakrivanjerdquomisl imo na algoritme Postavl ja se pitanje zašto je danas kriptologi ja sigurni ja negočetrdesetih i pedesetih godina prošlog veka

Danas uprkos tome što su algoritmi za kriptografi ju otvorenog kocircda tajnostinformaci ja je na višem nivou nego što je to bi lo dok je algoritam bio strogopoverl j iv Tajnost tajnih podataka se ne zasniva na tajnosti a lgoritama koj i generišutaj isti bdquotajni izlazrdquo (eng cipher text) nego u nemogućnosti matematičke inverznefunkci je koja bi šifrovan tekst otvori la Ovde se vidi da je svrha strukture otvorenogkocircda kao jednog od značajnih delova današnje kriptologi je ona koja ga činisigurnim i svima dostupnim

Sada kada se sa ove distance osvrnemo na Drugi svetski rat možemo videti kol ikosmo bi l i bl izu apokal ipse Naime Albert Ajnštajn je već 1944 godine imao urukama recept za nuklearnu bombu Šenon je mogao već u to vreme da nampredoči 100 siguran šifrat (tzv Hitlerovu super šifru) a l i ipak sreća nas jeposluži la da čovečanstvo tada ni je bi lo spremno da upotrebi svu raspoloživutehnologi ju

Albert Ajnštajn bdquoČetvrti svetski rat će se voditi tol jagamardquo

Zaboravl jeni heroj i Blečl i parka iako su odigral i važnu ulogu u pobedi saveznika usvetskom ratu postal i su žrtve bdquotop secretrdquo doktrine potpuno su zaboravl jeni inestal i su iz istori je

Zakl jučak ovog članka je da je ideologi ja otvorenog kocircda sasvim sigurno tu da nampomogne i da otvori vrata ka većoj sigurnosti novim idejama i kval itetu sameinfrastrukture sistema koju svi zajedno razvi jamo

Internet mreže i komunikacije

45

Broj 33

Autor Nikola Hardi

NabrajanjaBez brojeva

Za nabrajanje pojmova u Bimeru (eng Beamer) koristi se okruženje itemize aunutar tog okruženja možemo da dodajemo nove stavke pomoću item Primerizgleda ovako

beginitemizeitem Stavka Aitem Stavka Bitem Stavka C

enditemize

Sa brojevima

Postoje situaci je kada uz nabrajanje treba da stoje i redni brojevi - za to se koristienumerate okruženje a nove stavke se takođe dodaju pomoću item

beginenumerateitem Redni broj 1item Redni broj 2item Redni broj 3

endenumerate

prezentaci ja

Beamer (4 deo)

Sam svoj majstor

46

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

DefinicijeTreća situaci ja je nabrajanje parova termin - definici ja U tom slučaju se koristiokruženje description Već možete da pretpostavite kako se dodaju nove stavke

Primer

begindescriptionitem[Pojam A] Definicija izmišljenog pojma Aitem[Pojam B] Definicija izmišljenog pojma Bitem[Pojam C] Definicija izmišljenog pojma C

enddescription

Ostala podešavanja i zanimljivostiSva prethodna okruženja mogu da budu ugneždena jedno unutar drugog dotrećeg nivoa Treba biti pažl j iv jer sla jdovi vrlo lako mogu da postanu nečitl j ivi Osim toga moguće je izabrati i format oznake i l i rednih brojeva - na primer ovako

beginenumerate[I]beginenumarate[a)]

Takođe moguće je upravl jati pojavl j ivanjem pojedinih stavki na slajdovima Drugimrečima možemo da odredimo da se nabrajanja postepeno otkrivaju tako što ćemouz stavku dodati lt1-gt odnosno broj od kojeg slajda žel imo da se ta stavkapojavl ju je Tada će jedno nabrajanje biti bdquorazvučenordquo na više slajdovaJednostavni ja mogućnost je da u zaglavl je okruženja dodamo +- što znači dažel imo da se svakim slajdom otkriva po jedna nova stavka iz nabrajanja Znak bdquo-rdquo uoba primera znači da žel imo da se stavka pojavi na sledećem slajdu i da ostane

Sam svoj majstor

47

Broj 33

prisutna Možemo da izostavimo znak bdquo-rdquo i tada će stavka biti prisutna samo najednom slajdu i l i da napišemo raspon slajdova u koj ima žel imo da ta stavka budeprisutna

Rad sa kolonama i blokovimaDo sada su svi primeri podrazumeval i da je sadržaj napisan preko cele širineslajda al i Bimer (eng Beamer) ima i jednostavne mehanizme za razmeštanjesadržaja po kolonama Za rad sa kolonama se koristi okruženje columns unutarkojeg možemo da dodajemo nove kolone pomoću columnširina Sadržaj jemoguće potom pisati i van okruženja sa kolonama

U paru sa kolonama često se sreće i okruženje block koje se parametrizujenaslovom Primerom su i lustrovani i okruženje column i okruženje block

beginframebegincolumns

column05textwidthbeginblockNaslov levog blokaSadržaj u prvoj (levoj) koloni endblock

column05textwidthbeginblockNaslov desnog blokaSadržaj u drugoj (desnoj) koloni

endblockendcolumns

beginblockVan kolona

Beamer

48

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Tekst koji se nalazi ispod kolonaendblock

endframe

TabeleIako se u radu sa prezentaci jama sadržaj najčešće može uredno rasporeditipomoću kolona i nabrajanja nekada to ni je dovol jno jer su tabele pravi formatBimer podržava standardno Lateh (LaTeX) okruženje za rad sa tabelamaOkruženje za rad sa tabelama se zove tabular Pri kreiranju nove tabele moguće jepodesiti koje kolone će biti razdvojene l ini jom i da l i će nj ihov sadržaj biti centrirani l i uz levu i l i uz desnu ivicu Dodavanje novog reda se jednostavno radidodavanjem hline Lateh pruža zaista jako fleksibi lan rad sa tabelama i sigurno ćedoskočiti svim mogućim i nemogućim zamisl ima Potražite bi lo koje Lateh uputstvoza rad sa tabelama i radiće i sa Bimerom

beginframebegintabular | c | c | c | c |

hlineamp Ponedeljak amp Utorak amp Sreda hline

1 amp 16 amp 32 amp 64 hline2 amp 16 amp 128 amp 1024 hline3 amp 16 amp 512 amp 4096 hline

endtabularendframe

Sam svoj majstor

49

Broj 33

Beamer

Teoreme i istaknut tekstU nastavi su česta izlaganja teorema nj ihovih dokaza i primera U Bimer jeugrađena podrška za elegantno predstavl janje ove trojke Mehanizam takođepodržava postepeno otkrivanje sadržaja sla jda tako da slušaocima ne bude odmahotkriven dokaz teoreme Mehanizam za postepeno otkrivanje se kao i kodnabrajanja postiže pomoću bdquolt1-gtrdquo konstrukci je Evo kako to izgleda

beginframeframetitlePrimer teoreme

begintheoremlt1-gt Teorema kaže da su beamer prezentacijezanimljive

endtheorem

beginexamplelt2-gt Ovaj kod kreira slajd beamer prezentacijeendexample

beginprooflt3-gt Čestitamo stigli ste do kraja serijala o pravljenju beamer prezentacija

endproofendframe

50

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Za krajOvim člankom završavamo seri ja l o Bimeru Nadamo se da smo uspel i da vaszainteresujemo za ovu vrlo korisnu klasu Lateha Trudi l i smo se da vamprezentujemo najvažni je delove Bimera koje ćete najčešće koristiti pri l ikomkreiranja svoj ih prezentaci ja

Napominjemo još jednom da je Bimer samo jedna od klasa Lateha što znači da i zaBimer važi sve ono što ste već mogl i da pročitate u ovom časopisu kad smo pisal iseri ja l bdquoUvod u LaTeXrdquo (LiBRE brojevi 17 do 21) Štaviše ovaj seri ja l o Bimeru jebio nastavak upravo tog seri ja la U ovom seri ja lu nismo pisal i o samomformatiranju teksta u prezentaci jama jer se podrazumeva da važe ista pravi la kao iu Latehu a o tome smo pisal i u prethodnom seri ja lu

Hvala vam što ste prati l i ovaj seri ja l i žel imo vam puno uspeha u kreiranju Bimerprezentaci ja

Sam svoj majstor

51

Broj 33

Autor Nenad Marjanović

Kada smo se upoznal i sa podešavanj ima sistema i umrežavanjem vreme je za našprvi Biglbon Blek (BBB - eng BeagleBone Black) projekat Svakom od nas će ovajizazov dati razl ičite ideje a jedna od nj ih može biti i zaštita privatnosti internetkorisnika Nažalost u Srbi j i ne postoj i ni jedan izlazni tor server (eng node) i to jepomalo tužna sl ika s obzirom da govorimo o populaci j i od sedam mil ionastanovnika Al i ovu sl iku možemo promeniti udruženim snagama i za početakkreiranjem Tor transfer i izlaznog servera U ovde prikazanom grafikonufokusiraćemo se na bdquoRauter Brdquo tačku odnosno transfer server konfiguraci ju

BeagleBone Black Rev C

Vodič od prvog dana (3 deo) ndashBeagleBone Black kao Tor relej

Hardver

52

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Tor predstavl ja mrežu servera koj i se povezuju radi bol je enkripci je podataka izaštite IP adrese korisnika Naš ci l j je da danas postanemo deo ovog predivnogprojekta i da se nađemo na svetskoj karti Tor servera

Brzina interneta i zakonske regulativePotrebno je imati na umu nekol iko bitnih stvari

1 Naš server = naša odgovornost2 Obavezno naznačite da ste vi administrator a ne korisnik istog servera3 Da posedujete internet brzinu od 2 Mbs

Ako ispunjavamo tri navedena pravi la i odgovornosti možemo se posvetitiadministrativnim poslovima

Instalacija i podešavanjaU ovom primeru koristimo Debi jan Vizi (eng Wheezy) odnosno Debi jan 7 verzi juna našem BBB uređaju Vi možete testirati i druge Linuks platforme Prvododajemo izvornu bibl ioteku u etcaptsourceslist faj l pokretanjem sledećekomande u terminalu

echo deb httpdebtorprojectorgtorprojectorg wheezy main gt etcaptsourceslistdtorlist

Zatim dodajemo izvorni kl juč vršimo ažuriranje sistema i instal iramo tor i tor-arm(Tor monitoring sistem)

gpg --keyserver keysgnupgnet --recv 886DDD89gpg --export A3C4F0F979CAA22CDBA8F512EE8CBC9E886DDD89 | sudo apt-keyadd -apt-get updateapt-get install debtorprojectorg-keyring -yapt-get install tor tor-arm egrep screen -y

Ovim smo uspešno završi l i instalaci ju Tor servera i sistema za monitoring odnosnonadgledanja našeg Tor servera Sledećom komandom radimo na podešavanj imaTor servera koja se nalaze u etctortorrc faj lu Obratite pažnju i izvršite potrebne

Hardver

53

Broj 33

izmenu u pol j ima IP adresa (eng Address) nadimka (eng Nickname) i kontaktpodataka (eng ContactInfo) pre pokretanja ove komande Kopiramo i pokrećemokomandu u celosti u terminalu

egrep -v ^(|$) etctortorrcORPort 443Address 19216811Nickname LibreTorRelayRelayBandwidthRate 100 KBRelayBandwidthBurst 120 KBContactInfo ltvi at gmail dot comgt irPort 8080DirPortFrontPage etctortorhtmlExitPolicy reject

Detal je o svim vrednostima nećemo iznositi u ovom broju LiBRE časopisa al ićemo o nj ima pisati u sledećem u kome ćemo pričati o zaštiti Tor servera imogućnosti podešavanja određenih izlaznih pravi la (eng ExitPolicy)

Nakon ovoga možemo primetiti da se u folderu etctor ne nalazi torhtml faj l Ovaj faj l ni je od vel ikog značaja i možete ga l ično napraviti i l i preuzeti jednu kopi ju- naprimer sa sledeće lokaci je

cp usrsharedoctortorhtml etctortorhtml

Opcije i Tor Arm monitoringDa bismo ispravno koristi l i Tor Arm potrebno je urediti još jednom etctortorrcfaj l i restartovati servis

echo -e ldquoDisableDebuggerAttachment 0n AvoidDiskWritesrdquo gtgt etctortorrcsudo service tor reload

Ukol iko žel ite koristiti Tor Arm za nadgledanje aktivnosti na serveru pokreniteprogram screen kl iknite na bdquoEnterrdquo i kucajte sudo -u debian-tor arm Naekranu ćete imati sl ičan prikaz

BeagleBone Black

54

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Hardver

55

Broj 33

Da bismo napusti l i screen program koristimo Ctrl + a + d i na taj način kada sesledeći put pri javimo na server kucamo samo screen -r u terminalu - i naći ćemose ponovo na čuvenom Tor Arm monitoring ekranu

Nakon svake promene konfiguracionih faj lova ako slučajno nismo nešto podesi l ikako treba restartujemo servise

U sledećem broju časopisa govorićemo o minimalnim podešavanj ima ikonfigurisanju izlaznog Tor servera (eng Tor Exit Node) opci jama sigurnosti isl ičnim detal j ima u vezi sa našim prvim projektom Do čitanja u sledećem broju

BeagleBone Black

LUGoNS BarCamp 4subota 7 mart 2015 godine

Četvrti LUGoNS-ov Barkemp (BarCamp) održaće se u Novom Sadu usubotu 7 marta 2015 godine na Fakultetu tehničkih nauka sa početkomu 12 časova

Ulaz je slobodan

Poziv za predaju radovaLUGoNS poziva sve zainteresovane da pošal ju svoje radove (predavanjaprezentaci je radionice i diskusi je) do 28 februara 2015 godine

Oblasti iz koj ih možete da pri javite vaše radove su

bull Slobodan softverbull Zaniml j iv hardverbull Hakerski zakonibull Sigurnosne noćne morebull Anonimnost i privatnost na internetubull Duboki veb (eng Deep Web)bull Soci ja lne mrežebull Soci ja lni inženjeringbull Hakovanje mobi lnih uređajabull Internet u oblaku (eng Clouds) ndash hakovanje razbi janje i neočekivano korišćenjebull DPI (eng deep packet inspection)bull Mreža i mrežna neutralnost ndash vlasništvo cenzura nadmudrivanje i pol itika bdquodefaktordquo standarda

bull Programiranje i programski jezici

Nemojte se ustručavati i slobodno nam se javite ako imate rad na gore navedenei l i sl ične teme koj i smatrate interesantnim

Stranica za predaju radova nalazi se na https events lugonsorgp=1658

Page 22: LiBRE 33 Lat

22

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

strcpy(s1niz zdravo)s2 = s1

s2niz[0] = Z

puts(s1niz)puts(s2niz)

return 0

Kreirana je struktura str koja sadrži pol je niza karaktera pod nazivom niz Pozivomfunkci je strcpy() kopiramo string ldquozdravordquo u s1 čime smo bdquonapuni l irdquo sadržajobjekta s1 Potom je izvršena redovna dodela čime je sadržaj objekta s1 kopiran us2 Zatim je izmenjen samo prvi karakter objekta s2 i oba stringa su ispisanaPrimećujete da su kopirani svi znakovi a da je izmenjen samo drugi objekatZaniml j iv trik

Poređenje spajanje i pretraga stringovaDruga vrlo česta situaci ja je poređenje dva stringa Ukol iko bi poređenje bi loizvršeno upotrebom redovnog operatora za poređenje == tada bi u stvari bi lepoređene samo adrese na koje pokazuju pokazivači tih stringova jer da sepodsetimo stringovi su u C-u samo obični nizovi Ispravan način za poređenje dvastringa je pozivanjem funkci je strcmp() či ja je povratna vrednost 0 ukol iko su jojprosleđeni stringovi sa jednakim sadržajem

include ltstringhgt int main()

char niz1[] = zdravochar niz2[] = zdravo

if( strcmp(niz1 niz2) == 0)puts(Stringovi su jednaki)

elseputs(Stringovi nisu jednaki)

return 0

Kako da

23

Broj 33

Funkci ja strcmp() poredi svaki element prosleđenih nizova pojedinačno a dobraje vežba implementiranje nove funkci je strcmp() koja će unutar petl je da porediodgovarajuće elemente prosleđenih nizova i potom vratiti rezultat 0 ukol iko su svielementi jednaki Potrebno je pripaziti na situaci ju kada su stringovi razl ičitihdužina

U svetu računara spajanje dva sadržaja se zove konkatenaci ja Odatle i nazivfunkci je za spajanje dva stringa strcat() Važno je uveriti se da je string u koj i sedodaje sadržaj dovol jno vel ik da ga prihvati inače može da dođe do nežel jenogprepisivanja u memori j i uništavanja drugih podataka i neispravnog ponašanjaprograma

Pretraga unutar stringa se može obaviti funkci jom strstr() Ova funkci ja kaoparametre očekuje pokazivač na niz karaktera (string) u kojem je potrebno pronaćistring koj i je prosleđen kao drugi parametar Povratna vrednost je pokazivač nadeo memori je gde se žel jeni string prvi put pojavio

Sledi malo opširni j i primer koj i i lustruje spajanje pretragu i kopiranje stringova

include ltstringhgt int main()

char niz_a[50] = LiBRE je char niz_b[] = najbolji casopischar niz_c[] = e-magazin

strcat(niz_a niz_b)puts(niz_a)

char cilj = strstr(niz_a casopis)strcpy(cilj niz_c)

puts(niz_a)

return 0

Uvod u programski jezik C

24

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Pretvaranje tipova podataka u stringove ipretvaranje iz stringovaPretvaranje podataka iz jednog tipa u drugi i l i kastovanje (eng type casting) se zavećinu tipova vrši jednostavno pisanjem tipa u zagradama na primer (int)523 Stringovi su i po ovom pitanju drugači j i Postavl ja se pitanje šta pretvoriti ucelobrojni tip - da l i adresu na koju pokazuje pokazivač niza koj i predstavl ja stringPrvi element Šta ako taj string ni je broj Predstavićemo rešenje za konverzi jubrojeva u stringove i obrnuto

Ispis podataka na ekranu se takođe može smatrati konverzi jom Broj sa pokretnimzarezom je u memori j i prikazan na pomalo čudan način a pozivom funkci jeprintf() kada je kao format zadat f na ekranu ćemo dobiti razuml j iv niz znakovaSl ičan rezultat možemo dobiti funkci jom sprintf() a jedina razl ika u odnosu naprintf() je ta što sprintf() kao prvi argument očekuje pokazivač na string dok sudrugi (format string) i treći (argumenti koj i se povezuju sa formatnim stringom)sl ični kao kod funkci je printf()

Kod pretvaranja stringova u brojevne tipove može poslužiti funkci ja sscanf() kojase ponaša sl ično kao funkci ja scanf() s tim što je prvi argument adresa(pokazivač na string) koju žel imo da skeniramo u nadi da će se poklopiti saformalnim stringom koj i je drugi argument a rezultati će biti sačuvani u adresamakoje su prosleđene kao 3 4 i ostal i parametri Drugi način za pretvaranje stringovau celobrojne brojeve i brojeve sa pokretnim zarezom su funkci je atoi() i atof()

Funkci je koje koriste formatni string su česte u jeziku C i zaslužuju posebnu pažnjumeđutim to je priča za poseban članak U ovu klasu funkci ja spadaju recimo ifunkci je za rad sa datotekama

BezbednostRad sa stringovima može da bude izuzetno opasna stvar po pitanju bezbednostiprograma Ukol iko se niz karaktera ne završava NULL karakterom svašta može dapođe po zlu pri pozivu funkci ja kao što su strcpy() strcmp() i sl ične Cela klasatih funkci ja se oslanja na postojanje znaka koj i označava kraj stringa Kada stringni je propisno završen tada te funkci je mogu da zalutaju u deo memori je vanstringa i svašta može da pođe po zlu Ovakav tip napada se inače zoveprekoračenje bafera (eng buffer overflow) Preporučen način kako da izbegnete

Kako da

25

Broj 33

Pregled popularnosti GNULinuxBSDdistribuci ja za mesec februar

Distrowatch

Pad ltPorast gtIsti rejting =(Korišćeni podaci sa Distrovoča)

12345678910111213141516171819202122232425

MintUbuntuDebianopenSUSEelementaryMageiaFedoraManjaroCentOSLXLEArchBodhiAndroid x86Kal iPCLinuxOSPuppyRobol inuxLubuntuQ4OSBlack LabNetrunnerSimpl icityEvolveZorin4MLinux

2919gt1778gt1701gt1323gt1204gt1174gt1166gt1028lt1020gt965gt957gt907gt900lt760gt742lt732gt695gt670gt663gt655gt652gt629gt607gt583gt517=

takve nepri jatne situaci je pri radu sastringovima je da koristite verzi jefunkci ja koje su ograničenemaksimalnom dužinom stringa kaošto su strncpy() strncat() strncmp() i td Sve te funkci je kaotreći parametar zahtevaju broj koj iodređuje maksimalnu očekivanudužinu stringa Još jedna vrlo korisnafunkci ja je strlen() či j i zadatak je daodredi dužinu stringa Budite pažl j ivi ovo je prvo mesto gde se tražebezbednosni propusti u programimaNe verujte podacima koj i spol ja ulazeu vaš program a pogotovo kada je rečo stringovima

Uvod u programski jezik C

26

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Autor Dejan Maglov

Projekti slobodnog softvera obično počinju kao projekti pojedinca i l i male grupeprogramera a koj i rade na razvoju softvera či j i je ci l j da zadovol j i neke od nj ihovihl ičnih potreba Projekat će se smatrati uspešnim ukol iko se šira zajednicazainteresuje za njega nakon što prepozna korisnost softvera ne samo za pojedincekoj i su započel i projekat već i za širu zajednicu Kada je u pitanju slobodni softvervremenom je postala stalna praksa da se zajednica umeša u razvoj projekataDobri projekti sami privlače zajednicu l judi koj i su zainteresovani za nj ih i ona uvećini slučajeva preuzima na sebe testiranje pobol jšanje funkcionalnosti održavanje i tehničku podršku projekta

Zajednice slobodnog softvera mogu da se okupe oko projekta slobodnog softverapo teritori ja lnom principu i l i da nastanu kombinaci jom ovih principa

Primeri

bull LiBRE projekat okupl ja zajednicu oko projekta bez teritori ja lnog ograničenjabull LUGoNS (Linux User Group of Novi Sad) je zajednica korisnika Linuksa poteritori ja lnom principu bez obzira na konkretan projekat

bull Ubuntu-rs zajednica koja je kombinaci ja okupl janja zajednice oko konkretnogprojekta (Ubuntu) i teritori ja lnog principa koj i se ograničava na teritori ju Srbi je

Ova sinergi ja projekata i korisnika slobodnog softvera ima više prednosti i zakorisnike i za projekat Projekat se na ovaj način brže razvi ja dobi ja na

U potrazi za idealnom distribucijom

Socijalni kriterijumi za izbor idealnedistribucije (6 deo)

Oslobađanje

27

Broj 33

funkcionalnosti greške se brzo ispravl ja ju i td Korisnici dobi ja ju osećaj dapripadaju grupi druže se sa istomišl jenicima učestvuju u promoci j i kval itetnihpojedinaca itd

Dve najvažni je uloge lokalnih zajednica za GNULinuks distribuci je su

1 pružanje tehničke podrške i edukaci je na maternjem jeziku2 rad na lokal izaci j i i pri lagođavanje distribuci je lokalnim potrebama

Informaci ja da postoje lokalne zajednice slobodnog softvera je od naročitogznačaja za početnike i korisnike koj i nedovol jno dobro znaju strane jezike(naročito engleski jezik) Ako izuzmemo komerci ja lne projekte otvorenog koda(Red Het SUSE) ne postoje zvanične škole i kursevi za slobodni softver Zaedukaci ju početnika je uglavnom zadužena zajednica a jasno je da je učenje namaternjem jeziku uvek lakše nego na bi lo kom drugom stranom ma kol ikodobro ga poznajete

Forumi i viki stranice lokalnih zajednica su prave bibl ioteke u koj ima korisnicimogu da nađu većinu odgovora na svoja pitanja a za sva ostala tu su forumi iIRC kanal i zajednica na koj ima uvek ima nekoga i koj i imaju već gotova rešenjaza vel iki broj problema

U potrazi za idealnom distribucijom

28

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Lokalne zajednice kao kriterijum za izbor idealnedistribucijePočetnicima i korisnicima koj i ne vladaju dobro engleskim jezikom toplopreporučujemo da biraju GNULinuks distribuci je koje imaju aktivnu lokalnuzajednicu Ovladavanje novim operativnim sistemom je mnogo lakše ukol iko vambdquoleđa čuvardquo lokalna zajednica na koju se uvek možete osloniti

Već smo spomenul i da su popularni je GNULinuks distribuci je namenjenepočetnicima Slučaj je isti i sa lokalnim zajednicama okupl jenim oko nj ih Ovomeđutim ne znači da je kval itet usluga koje nude manje popularne lokalnezajednice okupl jene oko distribuci ja namenjenih napredni j im korisnicima loši j i Manje popularne distribuci je okupl ja ju manje l judi a l i zato oni poseduju većeznanje Iskustvo sa zajednicama okupl jenim oko slobodnog softvera je uglavnompozitivno i ukazuje na to da kval itet usluga koje one nude korisniku ni je uslovl jenpopularnošću i masovnošću zajednice nego iskl jučivo njenom (ne)aktivnošću

U svakom slučaju dosadašnj i saveti za izbor idealne distribuci je važe i dal jeSoci ja lni aspekt slobodnog softvera je samo dodatni faktor koj i vam može pomoćipri donošenju odluke kada se dvoumite između nekol iko mogućih rešenja

Još uvek ne postoj i na jednom mestu potpuni i ažurirani spisak svih aktivnihsrpskih zajednica Nešto najbl iže tome može da se nađe na adresihttps pulsslobodewordpresscom Za informaci je o nekim drugim lokalnimzajednicama koje možda postoje al i nisu na ovom spisku moraćete sami dapretražite internet

Lokalizacija kao kriterijum za izborZa lokal izaci ju GNULinuks distribuci ja i GNU programa odgovorni su pojedinci ilokalne zajednice Sasvim sol idnu srpsku lokal izaci ju mogu imati i projekti koj iuopšte nemaju svoju lokalnu zajednicu a isto tako lošu lokal izaci ju mogu imati iprojekti sa dobrom lokalnom zajednicom Sve je stvar prioriteta zajednica iaktivnosti pojedinaca

Pravu i kontrol isanu lokal izaci ju može imati samo lokalni projekat Ovakvihprojekata u Srbi j i ima malo i teško se probi ja ju čak i u lokalu u konkurenci j isvetskih projekata Istina je da mnoge veće GNULinuks distribuci je imaju srpskulokal izaci

Oslobađanje

29

Broj 33

ju u ponudi pa se možda sl ični lokalni projekti koj i su usmereni samo na striktnulokal izaci ju smatraju nepotrebnima Uzvodna lokal izaci ja u slučaju Srbi je vrlo čestobude veoma loše čak nakaradno sprovedena Jedna polovina programa jelokal izovana srpskom ćiri l icom a druga latinicom Ako postoj i još delova sistemakoj i uopšte ni je lokal izovan onda se pojavl ju ju i delovi programa koj i su naengleskom Zato ćemo se vratiti na prvu rečenicu ovog pasusa i ponovo utvrditi dasamo lokalni projekat može potpuno kontrol isati pravu srpsku lokal izaci ju

U Srbi j i za sada imamo dva aktivna projekta GNULinuks distribuci je ndash TriOS(http triosrs) i Serbian (http wwwdebian-srbi ja iz rspserbianhtml) Obaprojekta su mlada i imaju svoj ih prednosti i mana Kome treba lokal izovanoperativni sistem može da proba jedan od ova dva projekta

U potrazi za idealnom distribucijom

30

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Iako ove dve domaće distribuci je nisu baš naj idealni je interesantno je probati ih iuporediti sa drugim distribuci jama

Za kraj serijalaNamera nam je bi la da kroz ovaj seri ja l o kriteri jumima pri izboru idealnedistribuci je definišemo većinu kriteri juma pri izboru i pokažemo zašto je teškoodgovoriti na jednostavno pitanje bdquoKoju mi distribuci ju preporučujeterdquo

Ni na samom kraju nismo dal i konkretan odgovor na pitanje koja je idealnaGNULinuks distribuci ja Suviše je subjektivnih ocena da bi se mogao datikonkretan odgovor Smatramo da je jako teško napisati neki algoritam izbora pokriteri jumima koje smo identifikoval i i definisal i a možda je čak i nemoguće poštose izlazi stalno menjaju Izlazi iz tog algoritma su GNULinuks distribuci je koj ih izdana u dan ima sve više a i one stare se stalno menjaju

Sam seri ja l bdquoU potrazi za idealnom distribuci jomrdquo neće biti završen samo zato štose više neće baviti kriteri jumima pri izboru nego će pokušati da predstavl jaGNULinuks distribuci je koje su po nečemu bdquoidealnerdquo

Oslobađanje

31

Broj 33

ORM

Autor Dejan Čugal j

Object relation mapping (ORM)

ORM (eng Object RelationMapping) je način postizanja traj-nosti (eng persistence) objekataunutar relacionih baza podatakaModel deluje kao posrednik nalogičkom delu apl ikaci je Automat-ski presl ikava podatke iz objekata ubazu i nazad na zahtev apl ikaci jeDa bismo objasni l i kako ovo sveradi moramo da vam predstavimoORM frejmvork (eng framework)programa otvorenog koda -Hajbernejt (eng Hibernate -http hibernateorgorm)

Šta je ORMUkratko ORM je automatizovano transparentno presl ikavanje objekatakorišćenjem metapodataka koj i opisuju mapiranje veze između objekta i baze

ORM (2 deo)

Slobodni profesionalac

32

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

podataka u apl ikaci jama koje su napisane u objektno ori jentisanim programskimjezicima Apl ikaci ja komunicira sa ORM-om preko njegovog vlastitog API-ja (engapplication programming interface) i određenih objekata Ova komunikaci ja jepotpuno odvojena od komunikaci je koja se odvi ja između ORM-a i baze podatakapreko SQL-a i DBC-a

Da bi se postigla i dostigla potpuna snaga ORM-a u apl ikaci j i koju projektujemonikako se ne sme iskl jučiti znanje relacionih modela SQL jezika te poznavanjeDBMS-a u kome se radi ORM ni je ništa drugo do srednj i sloj između gorepomenutih tehnologi ja i objektno ori jentisanog programiranja kao što smo to dosada već više puta naglasi l i

Implementacija ORM-aPostoje razl ičiti načini implementaci je ORM-a Mark Fasl (Mark Fussel) je 1997definisao četiri nivoa

1 bdquoČistrdquo relacioni način2 Slabo mapiranje objekata3 Umereno mapiranje objekata4 Potpuno mapiranje objekata

bdquoČistrdquo relacioni način

Cela apl ikaci ja ukl jučujući i korisnički interfejs dizajnirana je relacionim modelom iSQL relacionim operatorima Ovakav pristup je odl ičan za male projekte Direktanpristup SQL-u omogućava fino podešavanje svakog aspekta upita koj i se postavl jabazi podataka Osnovne mane su portabi lnost (prenosivost) i održavanje ovakvihsistema pogotovo ako se planira korišćenje apl ikaci je na duži rok Ovakvi sistemimasovno koriste sačuvane procedure (eng stored procedures) što znači da jeposlovna logika (eng busines logic) prebačena na samu bazu podataka

Slabo mapiranje objekata

Entiteti su predstavl jeni kao klase i mapiranje se radi ekspl icitno ka relacionimtabelama SQLJDBC je sakriven od poslovne logike korišćenjem poznatih šablona(patterns)

Umereno mapiranje objekata

Slobodni profesionalac

33

Broj 33

Dizajn apl ikaci ja se svodi na objektne modele SQL se generiše u vremekompaj l iranja (eng build-time) i l i u vreme izvršavanja (eng run-time) Specifikaci jaupita nad bazama podataka se radi na objektno ori jentisanom jeziku Ovakvisistemi se koriste u apl ikaci jama srednj ih vel ičina kod koj ih je bitna portabi lnostizmeđu razl ičitih sistema za upravl janje bazama podataka (DBMS)

Potpuno mapiranje objekata

Podržava sofisticirano objektno model iranje nasleđivanje i pol imorfizamEfikasnost dobi janja podataka je na visokom nivou i koriste se metode kao što sulenjo učitavanje (eng lazy loading) i strategi ja keširanja (eng caching) Implementaci ja je transparentna u apl ikaci jama Ovaj nivo je jako teško dostići Pojedincu su potrebne godine razvoja da postigne ovakvu fleksibi lnost pristupa imanipulaci ja u relacionim bazama podataka Upravo ovaj nivo se postiže ako sekoriste rešenja ORM-a kao što je Hajbernejt

Zašto ORMImplementaci ja ORM rešenja pogotovo ako seprvi put susrećete sa ovim modelom može dabude veoma frustrirajuća i malo teža zaimplementaci ju Kada ovo kažemo misl imo daprogramer koj i implementira ORM i hoće da istibude kval itetno urađen mora da posedujepredznanje objektno ori jentisanog programiranjai naprednih tehnika kao što su nasleđivanje ipol imorfizam

Ovo inicira fundamentalna pitanja

bull Pa zašto bi iko onda implementirao ovako nešto kompleksnobull Vredi l i truda upuštati se uopšte u ORM

Odgovor ni je jednostavan Dosadašnja iskustva u korišćenju ORM-a i njegovapopularnost već daju odgovor na postavl jeno pitanje Očigledno je da su benefitikoje donosi ovaj model veći od kompleksnosti njegove implementaci je a to su

Hibernate ORM

34

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Veća produktivnost

ORM smanjuje kol ičinu koda potrebnog za ostvarivanje trajnosti podataka Ovoomogućava programeru da vreme koje bi utrošio na ručno mapiranje podatakautroši na druge delove apl ikaci je

Lakše održavanje

Manje l ini ja koda osigurava bol ju razuml j ivost (i možda bol j i kval itet koda) jernaglašava apl ikaci jsku logiku ORM takođe ublažava uticaj nastal ih promena kaošto su promene u bazi strukturi tabela i td

Prenosivost

Većina ORM rešenja podržava sisteme za upravl janje bazama podataka raznihproizvođača ORM u potpunosti odvaja sloj apl ikaci je od stvarne SQL komunikaci jekoja se odvi ja u pozadini Time omogućava da se pišu apl ikaci je koje će moći da seizvršavaju na razl ičitim bazama podataka bez potrebe za dodatnim kodiranjemOva komunikaci ja se odvi ja sa programskim interfejsima ORM-a nezavisno oDBMS-u sa koj im je u bi lo kom momentu povezan ORM takođe omogućava lakšiprelaz sa manj ih na veće baze podataka tokom razvoja apl ikaci je

Uvidel i smo da trenutno postoje dve paradigme koje se bdquosudarajurdquo i koje supodjednako dobre same za sebe Relaciona paradigma potvrđuje da sve što jeizgrađeno na matematičkim osnovama je i trajno u smislu kval iteta koje posedujeU domenu u kom relaciona paradigma egzistira ona je ako je to u ovo vremeuopšte moguće tvrditi nezamenj iva

Ono što otvara pitanja i daje razlog za sumnju je koja je krajnja granicaupotrebl j ivosti relacione paradigme tj kol iki su kapaciteti složenosti zahtevaapl ikaci ja sa kojom može da se nosi Praksa je pokazala da je sasvim mogućebdquoizvestirdquo složene projekte - al i održavanje skalabi lnost razuml j ivost prenosivost -pitanja su sa koj im se relaciona paradigma teško može izboriti

Sa druge strane svoj habitat u informacionim tehnologi jama je našla i objektna

Slobodni profesionalac

35

Broj 33

paradigma Iako na prvi pogled ova dva modela nemaju ništa zajedničko - što je uneku ruku i istinito gledajući prirodu podataka koj im manipul išu - praksa jepokazala da su usko povezane i skoro da imaju sinaptičku vezu

Pitanje bdquokako spoj iti te sinapserdquo dovelo je do žučnih rasprava u uskim naučnimprogramersko-administratorskim krugovima Rodi l i su se razni model i a l i jedan jeiskočio i polako ulazi u široku primenu - a to je ORM Svoj im supti lnim pristupomproblemu nekompatibi lnih paradigmi nekako je uspeo da stvori taj nedostajućibdquoelektrični signalrdquo koj i ih je povezao Ovo je omogući lo da dve strane koje susvaka za sebe u svom domenu ostavi le i ostavl ja ju duboki trag u informacionimtehnologi jama sarađuju i donesu novi kval itet

Korisni l inkovi

[1] Hibernejt http hibernateorg[2] Viki http googlLlZulw[3] Tutori ja l i http googlCGzvnc

Hibernate ORM

36

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Autor Kriptopank

Šta su zapravo metapodaci Najkraće rečeno to su podaci o podacima i l iinformaci je koje opisuju podatke

Najpre da napravimo razl iku između podataka i metapodataka Podaci sunaprimer snimak (i l i transkript) vaših telefonskih razgovora sadržaj poruka kojepišete primate i l i šal jete podaci koje kačite na internet i l i preuzimate pretrageGuglom postovi na forumima dopisivanja na IRC kanal ima i l i drugim četovimaaudio i video snimci Skajp razgovora i tako dal je

Hajde da vidimo šta bi bi l i odgovarajući metapodaci za ove primere

bull Za telefonske razgovore metapodaci mogu biti lokaci ja učesnika brojevitelefona trajanje razgovora IP i MAC adresa

bull Za poruke četove i Skajp i l i druge video-audio komunikaci je sl ično je kao kodtelefonskih razgovora

To su samo metapodaci

Internet mreže i komunikacije

37

Broj 33

bull Kod foruma i pretraga Guglom ima malo manje metapodataka al i Gugl i raznisajtovi i forumi ionako čuvaju logove o korisnicima što su takođe metapodaci

Ako do sada koj im slučajem niste uvidel i opasnost po privatnost u ovimmetapodacima koje svako od nas smrtnika svakodnevno ostavl ja za sobom usvetu interneta i ostal ih digitalnih komunikaci ja nadamo se da će vas ovaj primermakar podstaći na razmišl janje a možda i na nešto više

Zamisl i te da neko (zvaćemo ga posmatrač) stalno sakupl ja metapodatke koje zasobom ostavl jate kao mrvice hleba Posmatrač recimo zna da se nalazite naautoputu nedaleko od famoznog Feketića da se ne krećete da zovete AMSS zatimšlep službu i možda taksi a l i ne zna šta ste razgovaral i I l i posmatrač vidi da steprvo zval i aerodrom Nikola Tesla pa odmah potom taksi a l i ne zna šta sterazgovaral i I l i posmatrač vidi da ste zval i prvo šest brojeva či je identitete takođezna pa vidi da se oni zatim kreću ka vama - GPS (eng Global Positioning System) pa zatim pica servis Mekdonalds i neku poznatu prodavnicu kineske hrane al i nezna šta ste razgovaral i

Posmatrač ne mora da bude mnogo pametan niti da prisluškuje vaše razgovore dabi shvatio šta se dešava i l i šta će se desiti Sasvim mu je jasno da vam je u prvomprimeru auto stao na autoputu zatim da ste se u drugom slučaju uputi l i naaerodrom i da možda putujete van zemlje i l i ste poslal i taksi po nekoga saaerodroma a da u trećem slučaju okupl jate žurku kod vas Više možete pogledatina http googl7vUjP

Iako su to bdquosamordquo metapodaci treba biti svestan da ti metapodaci o vama stvarajujednu digitalnu sl iku i l i bol je reći digitalni mozaik i na neki način vas jedinstvenoodređuju Pogotovo kada se planski prikupl ja ju na više nivoa (kompjuter pametnitelefon pametni automobi l i kreditna kartica) metapodaci čine vaš digitalniidentitet Al i da stvar bude još gora ta sl ika o vama ne mora nužno biti istinita jerse lako može lažirati Recimo možete zameniti telefone i l i automobi le sa nekimnamerno i l i slučajno i l i vam neko može jednostavno ukrasti telefon laptop i l ikreditnu karticu Zaniml j iv video http googlKO1fKf

Evo jednog primera koj i vas može uvući u vel ike nevol je Recimo da prolazitenekom zabačenom ul icom i da vam neprimetno ispadne telefon al i vi to neprimetite i nastavite dal je svoj im putem U toj ul ici se samo nekol iko minutakasni je desi neko ubistvo i vas pozovu u pol ici ju kao osumnj ičenog Ako koj im

To su samo metapodaci

38

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

slučajem nemate dobar al ibi i l i nemate svedoka da posvedoči da niste bi l i u tojul ici nego tamo gde ste stvarno bi l i a drugih svedoka nema - možete jako lošeproći Zaniml j ivi video http googlspS5OZ

Metapodaci se takođe nalaze i u faj lovimapodacima koje svakodnevnopreuzimamo sa interneta pravimo i koristimo Svaki tip podatka može da sadržiodređene metapodatke koj i bol je opisuju sam podatak kao naprimer vremenastanka podatka kol iko je vremena potrošeno za njegovo kreiranje kol iko putamu je pristupl jeno kad je poslednj i put pristupl jeno i tako dal je Iako se ovakvimetapodaci možda još uvek čine bezazlenim oni mogu sadržati i IP adresuračunara sa kog su napravl jeni GPS koordinate (najčešće PNG format sl ika satelefona) ko ga je napravio (l ičnost i l i kompani jaorganizaci ja) naziv uređaja imodel sa koga je napravl jen kao i MAC adresu uređaja mej l adresu kreatorasoftver koj im je napravl jen i tako dal je Sve ovo može mnogo da naškodiprivatnosti izvornog kreatora faj la pogotovo ako je sadržaj poverl j iv Ukol iko nekopresretne taj podatak na internetu može saznati od koga je potekao Da ovo možebiti katastrofa po kreatora takvog faj la može i lustrovati primer torenta Ako stedošl i u posed nekih sl ika i l i video materi ja la i l i teksta koj i žel i te da podel ite sasvetom preko nekog torent sajta morate taj podatak prvo očistiti odmetapodataka da ne bi svako ko skine to što ste okači l i saznao da vi stoj i te izatoga

Internet mreže i komunikacije

39

Broj 33

Ljudi se konstantno prate metapodaci se sakupl ja ju i to ni je sada već ništa novoal i možemo da se trudimo da iza sebe ostavl jamo malo manje nežel jenihmetapodataka i da ih takoreći čistimo iz podataka koje razmenjujemo Na srećupostoje programi koj i ovo dobro rade

Najpre je potrebno da vidimo koje sve metapodatke neki faj l sadrži kako bismo seuveri l i da ovi metapodaci stvarno postoje i da je faj l bezbedan nakon nj ihovogbrisanja

Ako koristite operativne sisteme GNULinuksa treba da iz terminala preuzmete iinstal irate program pod nazivom exiftool

sudo apt-get install exiftool

Ovaj program će nam pružiti uvid u sve metapodatke koje faj l sadrži Korišćenje jeiz terminala al i je zato veoma jednostavno samo ga pokrenite na sledeći način

exiftool File

i l i

exiftool putanjadofajlapočevodkorenogdirektorijuma

Dobićete prikaz metapodataka koje je program pronašao Sada je potrebno davidimo da l i je podatak bdquoprl javrdquo tj da l i ima u njemu nešto da se briše i da akoima iz njega sve nepotrebno obrišemo Tu će nam pomoći drugi program zvaniMAT (eng Metadata Anonymisation Toolkit) koga možete naći na sajtuhttps matboumorg i l i jednostavno za korisnike Ubuntua i Debi jana uSoftverskom centru i l i ga možete instal irati iz terminala

sudo apt-get install mat

MAT će proveriti da l i je podatak bdquoprl javrdquo i l i ne i za vas ga očistiti od nežel jenihmetapodataka

Kada očistite faj l on je spreman za del jenje sa drugima a vi ste bezbedni jer nikone može reći da je faj l potekao sa vašeg računara

To su samo metapodaci

40

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Autor Dejan Čugal j

GH Hardi bdquoPrava matematika nema uticaj na ratrdquo - odbrana matematičara1940 godina

Bi l Tat - britanski matematičar verovatno niste čul i za njega1942 godine je izveo ogroman poduhvat koj i je skratio rat dvegodine (barem po rečima Ajzenhauera) i spasio mi l ione životaNažalost njegova vel ičina je preminula 2002 godine obavi jenavelom tajne i nikada zvanično ni je priznato njegovo dostignuće

Tomi Flauers - bivši inženjer poštanskog saobraćaja pretvorio jematematičke ideje Tata u prvi računar a to ni je bio bdquoENIACrdquo1Preminuo je 1998 godine a pretpostavl jamo da nikada niste čul ini za njegovu vel ičinu

Ovi umni giganti bdquoBlečl i parkardquo omogući l i su Britani j i da dešifruje strogo poverl j ivumašinu koju je koristio Hitler da diriguje drugim svetskim ratom a to ni je bi labdquoENIGMArdquo nego nešto mnogo tajni je i značajni je Vel ika je verovatnoća da nistečul i ni za ovo Neki kažu da je to bio Hitlerov Blekberi (BlackBerry)

Izgubljeni heroji bdquoBlečli parkardquo

1 engl Electronic Numerical Integrator And Computer - prvidigitalni elektronski računar

Internet mreže i komunikacije

41

Broj 33

1939 godine bdquoBlečl i parkrdquo je postao ratni štab MI6 (britanske vojne obaveštajneslužbe) Do danas je procurelo u javnost i dokumentovano brojnim fi lmskimdokumentarcima samo da je tu Alan Tjuring uspeo da dešifruje nemačkumornaričku šifru poznatu kao bdquoENIGMArdquo i uvel iko doprineo pobedi saveznika a to jesamo deo priče koj i je ispričan

U Blečl i parku su bi la tri heroja AlanTjuring Bi l Tat i Tomi Flauers Od nj ihtroj ice jedino Alanu Tjuringu je priznat deozasluga za pobedu saveznika u Drugomsvetskom ratu Pregledom otkrivenihpodataka danas možemo da tvrdimo daje bdquoENIGMArdquo već sa početka drugogsvetskog rata bi la zastarela tehnologi ja Zbog toga je bi lo lako skinuti veo tajne sa

ovog uspeha heroja Blečl i parka

Izgubljeni heroji bdquoBlečli parkardquo

42

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Bi l Tat koj i je dešifrovao bdquoTANI sistemrdquo (TANI) i Tomi Flauers koj i je samo svojomintuici jom i znanjem sklopio prvi računar na svetu (bdquoKOLOSrdquo) u svrhu bržegdolaženja do informaci ja razbi jenog koda bdquoTANIrdquo tako da zastarelost šifrata budesvedena na minimum - radi l i su na novoj generaci j i mašina za šifrovanje Ovatehnologi ja je bi la prepoznata kao tehnologi ja budućnosti pa i danas iznadinformaci ja o tim tehnologi jama stoj i natpis bdquovrhunska tajnardquo (eng Top Secret) Upravo ovaj veo tajni oko šifrata bdquoTANIrdquo i prvog računara je rezultirao iskrivl jenjuistori je informatike

Za uspehe u prvim godinama rata je zaista zaslužno razbi janje bdquoENIGMArdquo šifrata ito ni je sporno al i krajem 1941 godine u etru planete se začuo novi zvuk To je bi lanova mašina za šifrovanje ni je bi la zasnovana na bdquoMorzeurdquo već je radi la naprincipu teleprintera

Jedna od kl jučnih ideja Hitlerovog ratovanja je bi la u vel ikoj mobi lnosti i brzomdelovanju trupa na terenu a da bi se to izvelo komunikaci ja je isto tako morala dabude u najmanju ruku putem radio signala

Razl ika je ogromna Razl ika je u kol ičini podataka koj i može da se prenese ovimbdquotajnimrdquo putem Prvi svetski rat je bio zaniml j iv jer su se šifrovane poruke baziralena rečima dok je Drugi u potpunosti otvorio vrata današnjoj kriptografi j i a to jematematika

Originalan nemački kocircdni naziv za ovaj šifrat bio je bdquoLORENCrdquo Britanska

Internet mreže i komunikacije

43

Broj 33

obaveštajna služba mu je dala nadimak bdquoTANIrdquo Čak ni dan danas ni je baš poznatokako je sve nastalo al i pouzdano se zna da je tajnu mašinu Hitler nazvaobdquoGehajmšrajberrdquo (nem Geheimschreiber) - mašina tajni

U srž i tehnologi ju šifrovanja bdquoLORENCrdquo šifrata nećemo ulaziti u ovom članku al iverujte nam na reč - ni je bi la jednostavna Može se pretpostaviti da je inspiraci jaŠenonovog 2 rada slučajnosti bi la upravo ova tehnologi ja iz Drugog svetskog rata

Ono čime se Treći rajh vodio je bdquosigurnardquo šifrovana veza koju niko ni je smeo dadešifruje Prenošenje šifrovanih poruka pomoću radio signala je dalo obaveštajnimslužbama mogućnost presretanja poruka poslatih radio talasima Da l i se ovo idanas dešava Imamo l i sigurnost u našim šifrovanim podacima današnj ice

Ono što je usledi lo nakon proboja ovog bdquoneuhvatl j ivogrdquo šifrata je upravo ono što jeprincip današnj ice kao neka vrsta protokola koj i mora da se ispoštuje uperfektnom šifarskom Šenonovom sistemu

1 NIKADA NIKADA NE KORISTITI DVA PUTA ISTI KLJUČ ZA ŠIFROVANJE2 NIKADA NIKADA KLJUČ NE SME DA SE ŠALJE ISTIM KOMUNIKACIONIM KANALOM

KAO PORUKA3 NIKADA NIKADA KLJUČ NE SME DA BUDE MANJ I NEGO ŠTO JE PORUKA (engl

2 Klod Elvud Šenon (eng Claude Elwood Shannon) (1916-2001) - Američkinaučnik i inženjer

Izgubljeni heroji bdquoBlečli parkardquo

44

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

one time pad) 4 NIKADA NIKADA NE SMEMO DA SAKRIVAMO SISTEM ŠIFROVANJA SVE MORA

DA JE OTVORENOG KOcircDA

Najveći propusti kriptologi je koj i su uočeni baš u Drugom svetskom ratu jesupokušaj sakrivanja sredstava koj im se generiše tajna poruka i nepoznavanjeŠenonovih krajnj ih granica informaci ja Kada kažemo bdquosredstvo i sakrivanjerdquomisl imo na algoritme Postavl ja se pitanje zašto je danas kriptologi ja sigurni ja negočetrdesetih i pedesetih godina prošlog veka

Danas uprkos tome što su algoritmi za kriptografi ju otvorenog kocircda tajnostinformaci ja je na višem nivou nego što je to bi lo dok je algoritam bio strogopoverl j iv Tajnost tajnih podataka se ne zasniva na tajnosti a lgoritama koj i generišutaj isti bdquotajni izlazrdquo (eng cipher text) nego u nemogućnosti matematičke inverznefunkci je koja bi šifrovan tekst otvori la Ovde se vidi da je svrha strukture otvorenogkocircda kao jednog od značajnih delova današnje kriptologi je ona koja ga činisigurnim i svima dostupnim

Sada kada se sa ove distance osvrnemo na Drugi svetski rat možemo videti kol ikosmo bi l i bl izu apokal ipse Naime Albert Ajnštajn je već 1944 godine imao urukama recept za nuklearnu bombu Šenon je mogao već u to vreme da nampredoči 100 siguran šifrat (tzv Hitlerovu super šifru) a l i ipak sreća nas jeposluži la da čovečanstvo tada ni je bi lo spremno da upotrebi svu raspoloživutehnologi ju

Albert Ajnštajn bdquoČetvrti svetski rat će se voditi tol jagamardquo

Zaboravl jeni heroj i Blečl i parka iako su odigral i važnu ulogu u pobedi saveznika usvetskom ratu postal i su žrtve bdquotop secretrdquo doktrine potpuno su zaboravl jeni inestal i su iz istori je

Zakl jučak ovog članka je da je ideologi ja otvorenog kocircda sasvim sigurno tu da nampomogne i da otvori vrata ka većoj sigurnosti novim idejama i kval itetu sameinfrastrukture sistema koju svi zajedno razvi jamo

Internet mreže i komunikacije

45

Broj 33

Autor Nikola Hardi

NabrajanjaBez brojeva

Za nabrajanje pojmova u Bimeru (eng Beamer) koristi se okruženje itemize aunutar tog okruženja možemo da dodajemo nove stavke pomoću item Primerizgleda ovako

beginitemizeitem Stavka Aitem Stavka Bitem Stavka C

enditemize

Sa brojevima

Postoje situaci je kada uz nabrajanje treba da stoje i redni brojevi - za to se koristienumerate okruženje a nove stavke se takođe dodaju pomoću item

beginenumerateitem Redni broj 1item Redni broj 2item Redni broj 3

endenumerate

prezentaci ja

Beamer (4 deo)

Sam svoj majstor

46

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

DefinicijeTreća situaci ja je nabrajanje parova termin - definici ja U tom slučaju se koristiokruženje description Već možete da pretpostavite kako se dodaju nove stavke

Primer

begindescriptionitem[Pojam A] Definicija izmišljenog pojma Aitem[Pojam B] Definicija izmišljenog pojma Bitem[Pojam C] Definicija izmišljenog pojma C

enddescription

Ostala podešavanja i zanimljivostiSva prethodna okruženja mogu da budu ugneždena jedno unutar drugog dotrećeg nivoa Treba biti pažl j iv jer sla jdovi vrlo lako mogu da postanu nečitl j ivi Osim toga moguće je izabrati i format oznake i l i rednih brojeva - na primer ovako

beginenumerate[I]beginenumarate[a)]

Takođe moguće je upravl jati pojavl j ivanjem pojedinih stavki na slajdovima Drugimrečima možemo da odredimo da se nabrajanja postepeno otkrivaju tako što ćemouz stavku dodati lt1-gt odnosno broj od kojeg slajda žel imo da se ta stavkapojavl ju je Tada će jedno nabrajanje biti bdquorazvučenordquo na više slajdovaJednostavni ja mogućnost je da u zaglavl je okruženja dodamo +- što znači dažel imo da se svakim slajdom otkriva po jedna nova stavka iz nabrajanja Znak bdquo-rdquo uoba primera znači da žel imo da se stavka pojavi na sledećem slajdu i da ostane

Sam svoj majstor

47

Broj 33

prisutna Možemo da izostavimo znak bdquo-rdquo i tada će stavka biti prisutna samo najednom slajdu i l i da napišemo raspon slajdova u koj ima žel imo da ta stavka budeprisutna

Rad sa kolonama i blokovimaDo sada su svi primeri podrazumeval i da je sadržaj napisan preko cele širineslajda al i Bimer (eng Beamer) ima i jednostavne mehanizme za razmeštanjesadržaja po kolonama Za rad sa kolonama se koristi okruženje columns unutarkojeg možemo da dodajemo nove kolone pomoću columnširina Sadržaj jemoguće potom pisati i van okruženja sa kolonama

U paru sa kolonama često se sreće i okruženje block koje se parametrizujenaslovom Primerom su i lustrovani i okruženje column i okruženje block

beginframebegincolumns

column05textwidthbeginblockNaslov levog blokaSadržaj u prvoj (levoj) koloni endblock

column05textwidthbeginblockNaslov desnog blokaSadržaj u drugoj (desnoj) koloni

endblockendcolumns

beginblockVan kolona

Beamer

48

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Tekst koji se nalazi ispod kolonaendblock

endframe

TabeleIako se u radu sa prezentaci jama sadržaj najčešće može uredno rasporeditipomoću kolona i nabrajanja nekada to ni je dovol jno jer su tabele pravi formatBimer podržava standardno Lateh (LaTeX) okruženje za rad sa tabelamaOkruženje za rad sa tabelama se zove tabular Pri kreiranju nove tabele moguće jepodesiti koje kolone će biti razdvojene l ini jom i da l i će nj ihov sadržaj biti centrirani l i uz levu i l i uz desnu ivicu Dodavanje novog reda se jednostavno radidodavanjem hline Lateh pruža zaista jako fleksibi lan rad sa tabelama i sigurno ćedoskočiti svim mogućim i nemogućim zamisl ima Potražite bi lo koje Lateh uputstvoza rad sa tabelama i radiće i sa Bimerom

beginframebegintabular | c | c | c | c |

hlineamp Ponedeljak amp Utorak amp Sreda hline

1 amp 16 amp 32 amp 64 hline2 amp 16 amp 128 amp 1024 hline3 amp 16 amp 512 amp 4096 hline

endtabularendframe

Sam svoj majstor

49

Broj 33

Beamer

Teoreme i istaknut tekstU nastavi su česta izlaganja teorema nj ihovih dokaza i primera U Bimer jeugrađena podrška za elegantno predstavl janje ove trojke Mehanizam takođepodržava postepeno otkrivanje sadržaja sla jda tako da slušaocima ne bude odmahotkriven dokaz teoreme Mehanizam za postepeno otkrivanje se kao i kodnabrajanja postiže pomoću bdquolt1-gtrdquo konstrukci je Evo kako to izgleda

beginframeframetitlePrimer teoreme

begintheoremlt1-gt Teorema kaže da su beamer prezentacijezanimljive

endtheorem

beginexamplelt2-gt Ovaj kod kreira slajd beamer prezentacijeendexample

beginprooflt3-gt Čestitamo stigli ste do kraja serijala o pravljenju beamer prezentacija

endproofendframe

50

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Za krajOvim člankom završavamo seri ja l o Bimeru Nadamo se da smo uspel i da vaszainteresujemo za ovu vrlo korisnu klasu Lateha Trudi l i smo se da vamprezentujemo najvažni je delove Bimera koje ćete najčešće koristiti pri l ikomkreiranja svoj ih prezentaci ja

Napominjemo još jednom da je Bimer samo jedna od klasa Lateha što znači da i zaBimer važi sve ono što ste već mogl i da pročitate u ovom časopisu kad smo pisal iseri ja l bdquoUvod u LaTeXrdquo (LiBRE brojevi 17 do 21) Štaviše ovaj seri ja l o Bimeru jebio nastavak upravo tog seri ja la U ovom seri ja lu nismo pisal i o samomformatiranju teksta u prezentaci jama jer se podrazumeva da važe ista pravi la kao iu Latehu a o tome smo pisal i u prethodnom seri ja lu

Hvala vam što ste prati l i ovaj seri ja l i žel imo vam puno uspeha u kreiranju Bimerprezentaci ja

Sam svoj majstor

51

Broj 33

Autor Nenad Marjanović

Kada smo se upoznal i sa podešavanj ima sistema i umrežavanjem vreme je za našprvi Biglbon Blek (BBB - eng BeagleBone Black) projekat Svakom od nas će ovajizazov dati razl ičite ideje a jedna od nj ih može biti i zaštita privatnosti internetkorisnika Nažalost u Srbi j i ne postoj i ni jedan izlazni tor server (eng node) i to jepomalo tužna sl ika s obzirom da govorimo o populaci j i od sedam mil ionastanovnika Al i ovu sl iku možemo promeniti udruženim snagama i za početakkreiranjem Tor transfer i izlaznog servera U ovde prikazanom grafikonufokusiraćemo se na bdquoRauter Brdquo tačku odnosno transfer server konfiguraci ju

BeagleBone Black Rev C

Vodič od prvog dana (3 deo) ndashBeagleBone Black kao Tor relej

Hardver

52

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Tor predstavl ja mrežu servera koj i se povezuju radi bol je enkripci je podataka izaštite IP adrese korisnika Naš ci l j je da danas postanemo deo ovog predivnogprojekta i da se nađemo na svetskoj karti Tor servera

Brzina interneta i zakonske regulativePotrebno je imati na umu nekol iko bitnih stvari

1 Naš server = naša odgovornost2 Obavezno naznačite da ste vi administrator a ne korisnik istog servera3 Da posedujete internet brzinu od 2 Mbs

Ako ispunjavamo tri navedena pravi la i odgovornosti možemo se posvetitiadministrativnim poslovima

Instalacija i podešavanjaU ovom primeru koristimo Debi jan Vizi (eng Wheezy) odnosno Debi jan 7 verzi juna našem BBB uređaju Vi možete testirati i druge Linuks platforme Prvododajemo izvornu bibl ioteku u etcaptsourceslist faj l pokretanjem sledećekomande u terminalu

echo deb httpdebtorprojectorgtorprojectorg wheezy main gt etcaptsourceslistdtorlist

Zatim dodajemo izvorni kl juč vršimo ažuriranje sistema i instal iramo tor i tor-arm(Tor monitoring sistem)

gpg --keyserver keysgnupgnet --recv 886DDD89gpg --export A3C4F0F979CAA22CDBA8F512EE8CBC9E886DDD89 | sudo apt-keyadd -apt-get updateapt-get install debtorprojectorg-keyring -yapt-get install tor tor-arm egrep screen -y

Ovim smo uspešno završi l i instalaci ju Tor servera i sistema za monitoring odnosnonadgledanja našeg Tor servera Sledećom komandom radimo na podešavanj imaTor servera koja se nalaze u etctortorrc faj lu Obratite pažnju i izvršite potrebne

Hardver

53

Broj 33

izmenu u pol j ima IP adresa (eng Address) nadimka (eng Nickname) i kontaktpodataka (eng ContactInfo) pre pokretanja ove komande Kopiramo i pokrećemokomandu u celosti u terminalu

egrep -v ^(|$) etctortorrcORPort 443Address 19216811Nickname LibreTorRelayRelayBandwidthRate 100 KBRelayBandwidthBurst 120 KBContactInfo ltvi at gmail dot comgt irPort 8080DirPortFrontPage etctortorhtmlExitPolicy reject

Detal je o svim vrednostima nećemo iznositi u ovom broju LiBRE časopisa al ićemo o nj ima pisati u sledećem u kome ćemo pričati o zaštiti Tor servera imogućnosti podešavanja određenih izlaznih pravi la (eng ExitPolicy)

Nakon ovoga možemo primetiti da se u folderu etctor ne nalazi torhtml faj l Ovaj faj l ni je od vel ikog značaja i možete ga l ično napraviti i l i preuzeti jednu kopi ju- naprimer sa sledeće lokaci je

cp usrsharedoctortorhtml etctortorhtml

Opcije i Tor Arm monitoringDa bismo ispravno koristi l i Tor Arm potrebno je urediti još jednom etctortorrcfaj l i restartovati servis

echo -e ldquoDisableDebuggerAttachment 0n AvoidDiskWritesrdquo gtgt etctortorrcsudo service tor reload

Ukol iko žel ite koristiti Tor Arm za nadgledanje aktivnosti na serveru pokreniteprogram screen kl iknite na bdquoEnterrdquo i kucajte sudo -u debian-tor arm Naekranu ćete imati sl ičan prikaz

BeagleBone Black

54

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Hardver

55

Broj 33

Da bismo napusti l i screen program koristimo Ctrl + a + d i na taj način kada sesledeći put pri javimo na server kucamo samo screen -r u terminalu - i naći ćemose ponovo na čuvenom Tor Arm monitoring ekranu

Nakon svake promene konfiguracionih faj lova ako slučajno nismo nešto podesi l ikako treba restartujemo servise

U sledećem broju časopisa govorićemo o minimalnim podešavanj ima ikonfigurisanju izlaznog Tor servera (eng Tor Exit Node) opci jama sigurnosti isl ičnim detal j ima u vezi sa našim prvim projektom Do čitanja u sledećem broju

BeagleBone Black

LUGoNS BarCamp 4subota 7 mart 2015 godine

Četvrti LUGoNS-ov Barkemp (BarCamp) održaće se u Novom Sadu usubotu 7 marta 2015 godine na Fakultetu tehničkih nauka sa početkomu 12 časova

Ulaz je slobodan

Poziv za predaju radovaLUGoNS poziva sve zainteresovane da pošal ju svoje radove (predavanjaprezentaci je radionice i diskusi je) do 28 februara 2015 godine

Oblasti iz koj ih možete da pri javite vaše radove su

bull Slobodan softverbull Zaniml j iv hardverbull Hakerski zakonibull Sigurnosne noćne morebull Anonimnost i privatnost na internetubull Duboki veb (eng Deep Web)bull Soci ja lne mrežebull Soci ja lni inženjeringbull Hakovanje mobi lnih uređajabull Internet u oblaku (eng Clouds) ndash hakovanje razbi janje i neočekivano korišćenjebull DPI (eng deep packet inspection)bull Mreža i mrežna neutralnost ndash vlasništvo cenzura nadmudrivanje i pol itika bdquodefaktordquo standarda

bull Programiranje i programski jezici

Nemojte se ustručavati i slobodno nam se javite ako imate rad na gore navedenei l i sl ične teme koj i smatrate interesantnim

Stranica za predaju radova nalazi se na https events lugonsorgp=1658

Page 23: LiBRE 33 Lat

23

Broj 33

Funkci ja strcmp() poredi svaki element prosleđenih nizova pojedinačno a dobraje vežba implementiranje nove funkci je strcmp() koja će unutar petl je da porediodgovarajuće elemente prosleđenih nizova i potom vratiti rezultat 0 ukol iko su svielementi jednaki Potrebno je pripaziti na situaci ju kada su stringovi razl ičitihdužina

U svetu računara spajanje dva sadržaja se zove konkatenaci ja Odatle i nazivfunkci je za spajanje dva stringa strcat() Važno je uveriti se da je string u koj i sedodaje sadržaj dovol jno vel ik da ga prihvati inače može da dođe do nežel jenogprepisivanja u memori j i uništavanja drugih podataka i neispravnog ponašanjaprograma

Pretraga unutar stringa se može obaviti funkci jom strstr() Ova funkci ja kaoparametre očekuje pokazivač na niz karaktera (string) u kojem je potrebno pronaćistring koj i je prosleđen kao drugi parametar Povratna vrednost je pokazivač nadeo memori je gde se žel jeni string prvi put pojavio

Sledi malo opširni j i primer koj i i lustruje spajanje pretragu i kopiranje stringova

include ltstringhgt int main()

char niz_a[50] = LiBRE je char niz_b[] = najbolji casopischar niz_c[] = e-magazin

strcat(niz_a niz_b)puts(niz_a)

char cilj = strstr(niz_a casopis)strcpy(cilj niz_c)

puts(niz_a)

return 0

Uvod u programski jezik C

24

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Pretvaranje tipova podataka u stringove ipretvaranje iz stringovaPretvaranje podataka iz jednog tipa u drugi i l i kastovanje (eng type casting) se zavećinu tipova vrši jednostavno pisanjem tipa u zagradama na primer (int)523 Stringovi su i po ovom pitanju drugači j i Postavl ja se pitanje šta pretvoriti ucelobrojni tip - da l i adresu na koju pokazuje pokazivač niza koj i predstavl ja stringPrvi element Šta ako taj string ni je broj Predstavićemo rešenje za konverzi jubrojeva u stringove i obrnuto

Ispis podataka na ekranu se takođe može smatrati konverzi jom Broj sa pokretnimzarezom je u memori j i prikazan na pomalo čudan način a pozivom funkci jeprintf() kada je kao format zadat f na ekranu ćemo dobiti razuml j iv niz znakovaSl ičan rezultat možemo dobiti funkci jom sprintf() a jedina razl ika u odnosu naprintf() je ta što sprintf() kao prvi argument očekuje pokazivač na string dok sudrugi (format string) i treći (argumenti koj i se povezuju sa formatnim stringom)sl ični kao kod funkci je printf()

Kod pretvaranja stringova u brojevne tipove može poslužiti funkci ja sscanf() kojase ponaša sl ično kao funkci ja scanf() s tim što je prvi argument adresa(pokazivač na string) koju žel imo da skeniramo u nadi da će se poklopiti saformalnim stringom koj i je drugi argument a rezultati će biti sačuvani u adresamakoje su prosleđene kao 3 4 i ostal i parametri Drugi način za pretvaranje stringovau celobrojne brojeve i brojeve sa pokretnim zarezom su funkci je atoi() i atof()

Funkci je koje koriste formatni string su česte u jeziku C i zaslužuju posebnu pažnjumeđutim to je priča za poseban članak U ovu klasu funkci ja spadaju recimo ifunkci je za rad sa datotekama

BezbednostRad sa stringovima može da bude izuzetno opasna stvar po pitanju bezbednostiprograma Ukol iko se niz karaktera ne završava NULL karakterom svašta može dapođe po zlu pri pozivu funkci ja kao što su strcpy() strcmp() i sl ične Cela klasatih funkci ja se oslanja na postojanje znaka koj i označava kraj stringa Kada stringni je propisno završen tada te funkci je mogu da zalutaju u deo memori je vanstringa i svašta može da pođe po zlu Ovakav tip napada se inače zoveprekoračenje bafera (eng buffer overflow) Preporučen način kako da izbegnete

Kako da

25

Broj 33

Pregled popularnosti GNULinuxBSDdistribuci ja za mesec februar

Distrowatch

Pad ltPorast gtIsti rejting =(Korišćeni podaci sa Distrovoča)

12345678910111213141516171819202122232425

MintUbuntuDebianopenSUSEelementaryMageiaFedoraManjaroCentOSLXLEArchBodhiAndroid x86Kal iPCLinuxOSPuppyRobol inuxLubuntuQ4OSBlack LabNetrunnerSimpl icityEvolveZorin4MLinux

2919gt1778gt1701gt1323gt1204gt1174gt1166gt1028lt1020gt965gt957gt907gt900lt760gt742lt732gt695gt670gt663gt655gt652gt629gt607gt583gt517=

takve nepri jatne situaci je pri radu sastringovima je da koristite verzi jefunkci ja koje su ograničenemaksimalnom dužinom stringa kaošto su strncpy() strncat() strncmp() i td Sve te funkci je kaotreći parametar zahtevaju broj koj iodređuje maksimalnu očekivanudužinu stringa Još jedna vrlo korisnafunkci ja je strlen() či j i zadatak je daodredi dužinu stringa Budite pažl j ivi ovo je prvo mesto gde se tražebezbednosni propusti u programimaNe verujte podacima koj i spol ja ulazeu vaš program a pogotovo kada je rečo stringovima

Uvod u programski jezik C

26

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Autor Dejan Maglov

Projekti slobodnog softvera obično počinju kao projekti pojedinca i l i male grupeprogramera a koj i rade na razvoju softvera či j i je ci l j da zadovol j i neke od nj ihovihl ičnih potreba Projekat će se smatrati uspešnim ukol iko se šira zajednicazainteresuje za njega nakon što prepozna korisnost softvera ne samo za pojedincekoj i su započel i projekat već i za širu zajednicu Kada je u pitanju slobodni softvervremenom je postala stalna praksa da se zajednica umeša u razvoj projekataDobri projekti sami privlače zajednicu l judi koj i su zainteresovani za nj ih i ona uvećini slučajeva preuzima na sebe testiranje pobol jšanje funkcionalnosti održavanje i tehničku podršku projekta

Zajednice slobodnog softvera mogu da se okupe oko projekta slobodnog softverapo teritori ja lnom principu i l i da nastanu kombinaci jom ovih principa

Primeri

bull LiBRE projekat okupl ja zajednicu oko projekta bez teritori ja lnog ograničenjabull LUGoNS (Linux User Group of Novi Sad) je zajednica korisnika Linuksa poteritori ja lnom principu bez obzira na konkretan projekat

bull Ubuntu-rs zajednica koja je kombinaci ja okupl janja zajednice oko konkretnogprojekta (Ubuntu) i teritori ja lnog principa koj i se ograničava na teritori ju Srbi je

Ova sinergi ja projekata i korisnika slobodnog softvera ima više prednosti i zakorisnike i za projekat Projekat se na ovaj način brže razvi ja dobi ja na

U potrazi za idealnom distribucijom

Socijalni kriterijumi za izbor idealnedistribucije (6 deo)

Oslobađanje

27

Broj 33

funkcionalnosti greške se brzo ispravl ja ju i td Korisnici dobi ja ju osećaj dapripadaju grupi druže se sa istomišl jenicima učestvuju u promoci j i kval itetnihpojedinaca itd

Dve najvažni je uloge lokalnih zajednica za GNULinuks distribuci je su

1 pružanje tehničke podrške i edukaci je na maternjem jeziku2 rad na lokal izaci j i i pri lagođavanje distribuci je lokalnim potrebama

Informaci ja da postoje lokalne zajednice slobodnog softvera je od naročitogznačaja za početnike i korisnike koj i nedovol jno dobro znaju strane jezike(naročito engleski jezik) Ako izuzmemo komerci ja lne projekte otvorenog koda(Red Het SUSE) ne postoje zvanične škole i kursevi za slobodni softver Zaedukaci ju početnika je uglavnom zadužena zajednica a jasno je da je učenje namaternjem jeziku uvek lakše nego na bi lo kom drugom stranom ma kol ikodobro ga poznajete

Forumi i viki stranice lokalnih zajednica su prave bibl ioteke u koj ima korisnicimogu da nađu većinu odgovora na svoja pitanja a za sva ostala tu su forumi iIRC kanal i zajednica na koj ima uvek ima nekoga i koj i imaju već gotova rešenjaza vel iki broj problema

U potrazi za idealnom distribucijom

28

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Lokalne zajednice kao kriterijum za izbor idealnedistribucijePočetnicima i korisnicima koj i ne vladaju dobro engleskim jezikom toplopreporučujemo da biraju GNULinuks distribuci je koje imaju aktivnu lokalnuzajednicu Ovladavanje novim operativnim sistemom je mnogo lakše ukol iko vambdquoleđa čuvardquo lokalna zajednica na koju se uvek možete osloniti

Već smo spomenul i da su popularni je GNULinuks distribuci je namenjenepočetnicima Slučaj je isti i sa lokalnim zajednicama okupl jenim oko nj ih Ovomeđutim ne znači da je kval itet usluga koje nude manje popularne lokalnezajednice okupl jene oko distribuci ja namenjenih napredni j im korisnicima loši j i Manje popularne distribuci je okupl ja ju manje l judi a l i zato oni poseduju većeznanje Iskustvo sa zajednicama okupl jenim oko slobodnog softvera je uglavnompozitivno i ukazuje na to da kval itet usluga koje one nude korisniku ni je uslovl jenpopularnošću i masovnošću zajednice nego iskl jučivo njenom (ne)aktivnošću

U svakom slučaju dosadašnj i saveti za izbor idealne distribuci je važe i dal jeSoci ja lni aspekt slobodnog softvera je samo dodatni faktor koj i vam može pomoćipri donošenju odluke kada se dvoumite između nekol iko mogućih rešenja

Još uvek ne postoj i na jednom mestu potpuni i ažurirani spisak svih aktivnihsrpskih zajednica Nešto najbl iže tome može da se nađe na adresihttps pulsslobodewordpresscom Za informaci je o nekim drugim lokalnimzajednicama koje možda postoje al i nisu na ovom spisku moraćete sami dapretražite internet

Lokalizacija kao kriterijum za izborZa lokal izaci ju GNULinuks distribuci ja i GNU programa odgovorni su pojedinci ilokalne zajednice Sasvim sol idnu srpsku lokal izaci ju mogu imati i projekti koj iuopšte nemaju svoju lokalnu zajednicu a isto tako lošu lokal izaci ju mogu imati iprojekti sa dobrom lokalnom zajednicom Sve je stvar prioriteta zajednica iaktivnosti pojedinaca

Pravu i kontrol isanu lokal izaci ju može imati samo lokalni projekat Ovakvihprojekata u Srbi j i ima malo i teško se probi ja ju čak i u lokalu u konkurenci j isvetskih projekata Istina je da mnoge veće GNULinuks distribuci je imaju srpskulokal izaci

Oslobađanje

29

Broj 33

ju u ponudi pa se možda sl ični lokalni projekti koj i su usmereni samo na striktnulokal izaci ju smatraju nepotrebnima Uzvodna lokal izaci ja u slučaju Srbi je vrlo čestobude veoma loše čak nakaradno sprovedena Jedna polovina programa jelokal izovana srpskom ćiri l icom a druga latinicom Ako postoj i još delova sistemakoj i uopšte ni je lokal izovan onda se pojavl ju ju i delovi programa koj i su naengleskom Zato ćemo se vratiti na prvu rečenicu ovog pasusa i ponovo utvrditi dasamo lokalni projekat može potpuno kontrol isati pravu srpsku lokal izaci ju

U Srbi j i za sada imamo dva aktivna projekta GNULinuks distribuci je ndash TriOS(http triosrs) i Serbian (http wwwdebian-srbi ja iz rspserbianhtml) Obaprojekta su mlada i imaju svoj ih prednosti i mana Kome treba lokal izovanoperativni sistem može da proba jedan od ova dva projekta

U potrazi za idealnom distribucijom

30

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Iako ove dve domaće distribuci je nisu baš naj idealni je interesantno je probati ih iuporediti sa drugim distribuci jama

Za kraj serijalaNamera nam je bi la da kroz ovaj seri ja l o kriteri jumima pri izboru idealnedistribuci je definišemo većinu kriteri juma pri izboru i pokažemo zašto je teškoodgovoriti na jednostavno pitanje bdquoKoju mi distribuci ju preporučujeterdquo

Ni na samom kraju nismo dal i konkretan odgovor na pitanje koja je idealnaGNULinuks distribuci ja Suviše je subjektivnih ocena da bi se mogao datikonkretan odgovor Smatramo da je jako teško napisati neki algoritam izbora pokriteri jumima koje smo identifikoval i i definisal i a možda je čak i nemoguće poštose izlazi stalno menjaju Izlazi iz tog algoritma su GNULinuks distribuci je koj ih izdana u dan ima sve više a i one stare se stalno menjaju

Sam seri ja l bdquoU potrazi za idealnom distribuci jomrdquo neće biti završen samo zato štose više neće baviti kriteri jumima pri izboru nego će pokušati da predstavl jaGNULinuks distribuci je koje su po nečemu bdquoidealnerdquo

Oslobađanje

31

Broj 33

ORM

Autor Dejan Čugal j

Object relation mapping (ORM)

ORM (eng Object RelationMapping) je način postizanja traj-nosti (eng persistence) objekataunutar relacionih baza podatakaModel deluje kao posrednik nalogičkom delu apl ikaci je Automat-ski presl ikava podatke iz objekata ubazu i nazad na zahtev apl ikaci jeDa bismo objasni l i kako ovo sveradi moramo da vam predstavimoORM frejmvork (eng framework)programa otvorenog koda -Hajbernejt (eng Hibernate -http hibernateorgorm)

Šta je ORMUkratko ORM je automatizovano transparentno presl ikavanje objekatakorišćenjem metapodataka koj i opisuju mapiranje veze između objekta i baze

ORM (2 deo)

Slobodni profesionalac

32

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

podataka u apl ikaci jama koje su napisane u objektno ori jentisanim programskimjezicima Apl ikaci ja komunicira sa ORM-om preko njegovog vlastitog API-ja (engapplication programming interface) i određenih objekata Ova komunikaci ja jepotpuno odvojena od komunikaci je koja se odvi ja između ORM-a i baze podatakapreko SQL-a i DBC-a

Da bi se postigla i dostigla potpuna snaga ORM-a u apl ikaci j i koju projektujemonikako se ne sme iskl jučiti znanje relacionih modela SQL jezika te poznavanjeDBMS-a u kome se radi ORM ni je ništa drugo do srednj i sloj između gorepomenutih tehnologi ja i objektno ori jentisanog programiranja kao što smo to dosada već više puta naglasi l i

Implementacija ORM-aPostoje razl ičiti načini implementaci je ORM-a Mark Fasl (Mark Fussel) je 1997definisao četiri nivoa

1 bdquoČistrdquo relacioni način2 Slabo mapiranje objekata3 Umereno mapiranje objekata4 Potpuno mapiranje objekata

bdquoČistrdquo relacioni način

Cela apl ikaci ja ukl jučujući i korisnički interfejs dizajnirana je relacionim modelom iSQL relacionim operatorima Ovakav pristup je odl ičan za male projekte Direktanpristup SQL-u omogućava fino podešavanje svakog aspekta upita koj i se postavl jabazi podataka Osnovne mane su portabi lnost (prenosivost) i održavanje ovakvihsistema pogotovo ako se planira korišćenje apl ikaci je na duži rok Ovakvi sistemimasovno koriste sačuvane procedure (eng stored procedures) što znači da jeposlovna logika (eng busines logic) prebačena na samu bazu podataka

Slabo mapiranje objekata

Entiteti su predstavl jeni kao klase i mapiranje se radi ekspl icitno ka relacionimtabelama SQLJDBC je sakriven od poslovne logike korišćenjem poznatih šablona(patterns)

Umereno mapiranje objekata

Slobodni profesionalac

33

Broj 33

Dizajn apl ikaci ja se svodi na objektne modele SQL se generiše u vremekompaj l iranja (eng build-time) i l i u vreme izvršavanja (eng run-time) Specifikaci jaupita nad bazama podataka se radi na objektno ori jentisanom jeziku Ovakvisistemi se koriste u apl ikaci jama srednj ih vel ičina kod koj ih je bitna portabi lnostizmeđu razl ičitih sistema za upravl janje bazama podataka (DBMS)

Potpuno mapiranje objekata

Podržava sofisticirano objektno model iranje nasleđivanje i pol imorfizamEfikasnost dobi janja podataka je na visokom nivou i koriste se metode kao što sulenjo učitavanje (eng lazy loading) i strategi ja keširanja (eng caching) Implementaci ja je transparentna u apl ikaci jama Ovaj nivo je jako teško dostići Pojedincu su potrebne godine razvoja da postigne ovakvu fleksibi lnost pristupa imanipulaci ja u relacionim bazama podataka Upravo ovaj nivo se postiže ako sekoriste rešenja ORM-a kao što je Hajbernejt

Zašto ORMImplementaci ja ORM rešenja pogotovo ako seprvi put susrećete sa ovim modelom može dabude veoma frustrirajuća i malo teža zaimplementaci ju Kada ovo kažemo misl imo daprogramer koj i implementira ORM i hoće da istibude kval itetno urađen mora da posedujepredznanje objektno ori jentisanog programiranjai naprednih tehnika kao što su nasleđivanje ipol imorfizam

Ovo inicira fundamentalna pitanja

bull Pa zašto bi iko onda implementirao ovako nešto kompleksnobull Vredi l i truda upuštati se uopšte u ORM

Odgovor ni je jednostavan Dosadašnja iskustva u korišćenju ORM-a i njegovapopularnost već daju odgovor na postavl jeno pitanje Očigledno je da su benefitikoje donosi ovaj model veći od kompleksnosti njegove implementaci je a to su

Hibernate ORM

34

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Veća produktivnost

ORM smanjuje kol ičinu koda potrebnog za ostvarivanje trajnosti podataka Ovoomogućava programeru da vreme koje bi utrošio na ručno mapiranje podatakautroši na druge delove apl ikaci je

Lakše održavanje

Manje l ini ja koda osigurava bol ju razuml j ivost (i možda bol j i kval itet koda) jernaglašava apl ikaci jsku logiku ORM takođe ublažava uticaj nastal ih promena kaošto su promene u bazi strukturi tabela i td

Prenosivost

Većina ORM rešenja podržava sisteme za upravl janje bazama podataka raznihproizvođača ORM u potpunosti odvaja sloj apl ikaci je od stvarne SQL komunikaci jekoja se odvi ja u pozadini Time omogućava da se pišu apl ikaci je koje će moći da seizvršavaju na razl ičitim bazama podataka bez potrebe za dodatnim kodiranjemOva komunikaci ja se odvi ja sa programskim interfejsima ORM-a nezavisno oDBMS-u sa koj im je u bi lo kom momentu povezan ORM takođe omogućava lakšiprelaz sa manj ih na veće baze podataka tokom razvoja apl ikaci je

Uvidel i smo da trenutno postoje dve paradigme koje se bdquosudarajurdquo i koje supodjednako dobre same za sebe Relaciona paradigma potvrđuje da sve što jeizgrađeno na matematičkim osnovama je i trajno u smislu kval iteta koje posedujeU domenu u kom relaciona paradigma egzistira ona je ako je to u ovo vremeuopšte moguće tvrditi nezamenj iva

Ono što otvara pitanja i daje razlog za sumnju je koja je krajnja granicaupotrebl j ivosti relacione paradigme tj kol iki su kapaciteti složenosti zahtevaapl ikaci ja sa kojom može da se nosi Praksa je pokazala da je sasvim mogućebdquoizvestirdquo složene projekte - al i održavanje skalabi lnost razuml j ivost prenosivost -pitanja su sa koj im se relaciona paradigma teško može izboriti

Sa druge strane svoj habitat u informacionim tehnologi jama je našla i objektna

Slobodni profesionalac

35

Broj 33

paradigma Iako na prvi pogled ova dva modela nemaju ništa zajedničko - što je uneku ruku i istinito gledajući prirodu podataka koj im manipul išu - praksa jepokazala da su usko povezane i skoro da imaju sinaptičku vezu

Pitanje bdquokako spoj iti te sinapserdquo dovelo je do žučnih rasprava u uskim naučnimprogramersko-administratorskim krugovima Rodi l i su se razni model i a l i jedan jeiskočio i polako ulazi u široku primenu - a to je ORM Svoj im supti lnim pristupomproblemu nekompatibi lnih paradigmi nekako je uspeo da stvori taj nedostajućibdquoelektrični signalrdquo koj i ih je povezao Ovo je omogući lo da dve strane koje susvaka za sebe u svom domenu ostavi le i ostavl ja ju duboki trag u informacionimtehnologi jama sarađuju i donesu novi kval itet

Korisni l inkovi

[1] Hibernejt http hibernateorg[2] Viki http googlLlZulw[3] Tutori ja l i http googlCGzvnc

Hibernate ORM

36

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Autor Kriptopank

Šta su zapravo metapodaci Najkraće rečeno to su podaci o podacima i l iinformaci je koje opisuju podatke

Najpre da napravimo razl iku između podataka i metapodataka Podaci sunaprimer snimak (i l i transkript) vaših telefonskih razgovora sadržaj poruka kojepišete primate i l i šal jete podaci koje kačite na internet i l i preuzimate pretrageGuglom postovi na forumima dopisivanja na IRC kanal ima i l i drugim četovimaaudio i video snimci Skajp razgovora i tako dal je

Hajde da vidimo šta bi bi l i odgovarajući metapodaci za ove primere

bull Za telefonske razgovore metapodaci mogu biti lokaci ja učesnika brojevitelefona trajanje razgovora IP i MAC adresa

bull Za poruke četove i Skajp i l i druge video-audio komunikaci je sl ično je kao kodtelefonskih razgovora

To su samo metapodaci

Internet mreže i komunikacije

37

Broj 33

bull Kod foruma i pretraga Guglom ima malo manje metapodataka al i Gugl i raznisajtovi i forumi ionako čuvaju logove o korisnicima što su takođe metapodaci

Ako do sada koj im slučajem niste uvidel i opasnost po privatnost u ovimmetapodacima koje svako od nas smrtnika svakodnevno ostavl ja za sobom usvetu interneta i ostal ih digitalnih komunikaci ja nadamo se da će vas ovaj primermakar podstaći na razmišl janje a možda i na nešto više

Zamisl i te da neko (zvaćemo ga posmatrač) stalno sakupl ja metapodatke koje zasobom ostavl jate kao mrvice hleba Posmatrač recimo zna da se nalazite naautoputu nedaleko od famoznog Feketića da se ne krećete da zovete AMSS zatimšlep službu i možda taksi a l i ne zna šta ste razgovaral i I l i posmatrač vidi da steprvo zval i aerodrom Nikola Tesla pa odmah potom taksi a l i ne zna šta sterazgovaral i I l i posmatrač vidi da ste zval i prvo šest brojeva či je identitete takođezna pa vidi da se oni zatim kreću ka vama - GPS (eng Global Positioning System) pa zatim pica servis Mekdonalds i neku poznatu prodavnicu kineske hrane al i nezna šta ste razgovaral i

Posmatrač ne mora da bude mnogo pametan niti da prisluškuje vaše razgovore dabi shvatio šta se dešava i l i šta će se desiti Sasvim mu je jasno da vam je u prvomprimeru auto stao na autoputu zatim da ste se u drugom slučaju uputi l i naaerodrom i da možda putujete van zemlje i l i ste poslal i taksi po nekoga saaerodroma a da u trećem slučaju okupl jate žurku kod vas Više možete pogledatina http googl7vUjP

Iako su to bdquosamordquo metapodaci treba biti svestan da ti metapodaci o vama stvarajujednu digitalnu sl iku i l i bol je reći digitalni mozaik i na neki način vas jedinstvenoodređuju Pogotovo kada se planski prikupl ja ju na više nivoa (kompjuter pametnitelefon pametni automobi l i kreditna kartica) metapodaci čine vaš digitalniidentitet Al i da stvar bude još gora ta sl ika o vama ne mora nužno biti istinita jerse lako može lažirati Recimo možete zameniti telefone i l i automobi le sa nekimnamerno i l i slučajno i l i vam neko može jednostavno ukrasti telefon laptop i l ikreditnu karticu Zaniml j iv video http googlKO1fKf

Evo jednog primera koj i vas može uvući u vel ike nevol je Recimo da prolazitenekom zabačenom ul icom i da vam neprimetno ispadne telefon al i vi to neprimetite i nastavite dal je svoj im putem U toj ul ici se samo nekol iko minutakasni je desi neko ubistvo i vas pozovu u pol ici ju kao osumnj ičenog Ako koj im

To su samo metapodaci

38

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

slučajem nemate dobar al ibi i l i nemate svedoka da posvedoči da niste bi l i u tojul ici nego tamo gde ste stvarno bi l i a drugih svedoka nema - možete jako lošeproći Zaniml j ivi video http googlspS5OZ

Metapodaci se takođe nalaze i u faj lovimapodacima koje svakodnevnopreuzimamo sa interneta pravimo i koristimo Svaki tip podatka može da sadržiodređene metapodatke koj i bol je opisuju sam podatak kao naprimer vremenastanka podatka kol iko je vremena potrošeno za njegovo kreiranje kol iko putamu je pristupl jeno kad je poslednj i put pristupl jeno i tako dal je Iako se ovakvimetapodaci možda još uvek čine bezazlenim oni mogu sadržati i IP adresuračunara sa kog su napravl jeni GPS koordinate (najčešće PNG format sl ika satelefona) ko ga je napravio (l ičnost i l i kompani jaorganizaci ja) naziv uređaja imodel sa koga je napravl jen kao i MAC adresu uređaja mej l adresu kreatorasoftver koj im je napravl jen i tako dal je Sve ovo može mnogo da naškodiprivatnosti izvornog kreatora faj la pogotovo ako je sadržaj poverl j iv Ukol iko nekopresretne taj podatak na internetu može saznati od koga je potekao Da ovo možebiti katastrofa po kreatora takvog faj la može i lustrovati primer torenta Ako stedošl i u posed nekih sl ika i l i video materi ja la i l i teksta koj i žel i te da podel ite sasvetom preko nekog torent sajta morate taj podatak prvo očistiti odmetapodataka da ne bi svako ko skine to što ste okači l i saznao da vi stoj i te izatoga

Internet mreže i komunikacije

39

Broj 33

Ljudi se konstantno prate metapodaci se sakupl ja ju i to ni je sada već ništa novoal i možemo da se trudimo da iza sebe ostavl jamo malo manje nežel jenihmetapodataka i da ih takoreći čistimo iz podataka koje razmenjujemo Na srećupostoje programi koj i ovo dobro rade

Najpre je potrebno da vidimo koje sve metapodatke neki faj l sadrži kako bismo seuveri l i da ovi metapodaci stvarno postoje i da je faj l bezbedan nakon nj ihovogbrisanja

Ako koristite operativne sisteme GNULinuksa treba da iz terminala preuzmete iinstal irate program pod nazivom exiftool

sudo apt-get install exiftool

Ovaj program će nam pružiti uvid u sve metapodatke koje faj l sadrži Korišćenje jeiz terminala al i je zato veoma jednostavno samo ga pokrenite na sledeći način

exiftool File

i l i

exiftool putanjadofajlapočevodkorenogdirektorijuma

Dobićete prikaz metapodataka koje je program pronašao Sada je potrebno davidimo da l i je podatak bdquoprl javrdquo tj da l i ima u njemu nešto da se briše i da akoima iz njega sve nepotrebno obrišemo Tu će nam pomoći drugi program zvaniMAT (eng Metadata Anonymisation Toolkit) koga možete naći na sajtuhttps matboumorg i l i jednostavno za korisnike Ubuntua i Debi jana uSoftverskom centru i l i ga možete instal irati iz terminala

sudo apt-get install mat

MAT će proveriti da l i je podatak bdquoprl javrdquo i l i ne i za vas ga očistiti od nežel jenihmetapodataka

Kada očistite faj l on je spreman za del jenje sa drugima a vi ste bezbedni jer nikone može reći da je faj l potekao sa vašeg računara

To su samo metapodaci

40

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Autor Dejan Čugal j

GH Hardi bdquoPrava matematika nema uticaj na ratrdquo - odbrana matematičara1940 godina

Bi l Tat - britanski matematičar verovatno niste čul i za njega1942 godine je izveo ogroman poduhvat koj i je skratio rat dvegodine (barem po rečima Ajzenhauera) i spasio mi l ione životaNažalost njegova vel ičina je preminula 2002 godine obavi jenavelom tajne i nikada zvanično ni je priznato njegovo dostignuće

Tomi Flauers - bivši inženjer poštanskog saobraćaja pretvorio jematematičke ideje Tata u prvi računar a to ni je bio bdquoENIACrdquo1Preminuo je 1998 godine a pretpostavl jamo da nikada niste čul ini za njegovu vel ičinu

Ovi umni giganti bdquoBlečl i parkardquo omogući l i su Britani j i da dešifruje strogo poverl j ivumašinu koju je koristio Hitler da diriguje drugim svetskim ratom a to ni je bi labdquoENIGMArdquo nego nešto mnogo tajni je i značajni je Vel ika je verovatnoća da nistečul i ni za ovo Neki kažu da je to bio Hitlerov Blekberi (BlackBerry)

Izgubljeni heroji bdquoBlečli parkardquo

1 engl Electronic Numerical Integrator And Computer - prvidigitalni elektronski računar

Internet mreže i komunikacije

41

Broj 33

1939 godine bdquoBlečl i parkrdquo je postao ratni štab MI6 (britanske vojne obaveštajneslužbe) Do danas je procurelo u javnost i dokumentovano brojnim fi lmskimdokumentarcima samo da je tu Alan Tjuring uspeo da dešifruje nemačkumornaričku šifru poznatu kao bdquoENIGMArdquo i uvel iko doprineo pobedi saveznika a to jesamo deo priče koj i je ispričan

U Blečl i parku su bi la tri heroja AlanTjuring Bi l Tat i Tomi Flauers Od nj ihtroj ice jedino Alanu Tjuringu je priznat deozasluga za pobedu saveznika u Drugomsvetskom ratu Pregledom otkrivenihpodataka danas možemo da tvrdimo daje bdquoENIGMArdquo već sa početka drugogsvetskog rata bi la zastarela tehnologi ja Zbog toga je bi lo lako skinuti veo tajne sa

ovog uspeha heroja Blečl i parka

Izgubljeni heroji bdquoBlečli parkardquo

42

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Bi l Tat koj i je dešifrovao bdquoTANI sistemrdquo (TANI) i Tomi Flauers koj i je samo svojomintuici jom i znanjem sklopio prvi računar na svetu (bdquoKOLOSrdquo) u svrhu bržegdolaženja do informaci ja razbi jenog koda bdquoTANIrdquo tako da zastarelost šifrata budesvedena na minimum - radi l i su na novoj generaci j i mašina za šifrovanje Ovatehnologi ja je bi la prepoznata kao tehnologi ja budućnosti pa i danas iznadinformaci ja o tim tehnologi jama stoj i natpis bdquovrhunska tajnardquo (eng Top Secret) Upravo ovaj veo tajni oko šifrata bdquoTANIrdquo i prvog računara je rezultirao iskrivl jenjuistori je informatike

Za uspehe u prvim godinama rata je zaista zaslužno razbi janje bdquoENIGMArdquo šifrata ito ni je sporno al i krajem 1941 godine u etru planete se začuo novi zvuk To je bi lanova mašina za šifrovanje ni je bi la zasnovana na bdquoMorzeurdquo već je radi la naprincipu teleprintera

Jedna od kl jučnih ideja Hitlerovog ratovanja je bi la u vel ikoj mobi lnosti i brzomdelovanju trupa na terenu a da bi se to izvelo komunikaci ja je isto tako morala dabude u najmanju ruku putem radio signala

Razl ika je ogromna Razl ika je u kol ičini podataka koj i može da se prenese ovimbdquotajnimrdquo putem Prvi svetski rat je bio zaniml j iv jer su se šifrovane poruke baziralena rečima dok je Drugi u potpunosti otvorio vrata današnjoj kriptografi j i a to jematematika

Originalan nemački kocircdni naziv za ovaj šifrat bio je bdquoLORENCrdquo Britanska

Internet mreže i komunikacije

43

Broj 33

obaveštajna služba mu je dala nadimak bdquoTANIrdquo Čak ni dan danas ni je baš poznatokako je sve nastalo al i pouzdano se zna da je tajnu mašinu Hitler nazvaobdquoGehajmšrajberrdquo (nem Geheimschreiber) - mašina tajni

U srž i tehnologi ju šifrovanja bdquoLORENCrdquo šifrata nećemo ulaziti u ovom članku al iverujte nam na reč - ni je bi la jednostavna Može se pretpostaviti da je inspiraci jaŠenonovog 2 rada slučajnosti bi la upravo ova tehnologi ja iz Drugog svetskog rata

Ono čime se Treći rajh vodio je bdquosigurnardquo šifrovana veza koju niko ni je smeo dadešifruje Prenošenje šifrovanih poruka pomoću radio signala je dalo obaveštajnimslužbama mogućnost presretanja poruka poslatih radio talasima Da l i se ovo idanas dešava Imamo l i sigurnost u našim šifrovanim podacima današnj ice

Ono što je usledi lo nakon proboja ovog bdquoneuhvatl j ivogrdquo šifrata je upravo ono što jeprincip današnj ice kao neka vrsta protokola koj i mora da se ispoštuje uperfektnom šifarskom Šenonovom sistemu

1 NIKADA NIKADA NE KORISTITI DVA PUTA ISTI KLJUČ ZA ŠIFROVANJE2 NIKADA NIKADA KLJUČ NE SME DA SE ŠALJE ISTIM KOMUNIKACIONIM KANALOM

KAO PORUKA3 NIKADA NIKADA KLJUČ NE SME DA BUDE MANJ I NEGO ŠTO JE PORUKA (engl

2 Klod Elvud Šenon (eng Claude Elwood Shannon) (1916-2001) - Američkinaučnik i inženjer

Izgubljeni heroji bdquoBlečli parkardquo

44

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

one time pad) 4 NIKADA NIKADA NE SMEMO DA SAKRIVAMO SISTEM ŠIFROVANJA SVE MORA

DA JE OTVORENOG KOcircDA

Najveći propusti kriptologi je koj i su uočeni baš u Drugom svetskom ratu jesupokušaj sakrivanja sredstava koj im se generiše tajna poruka i nepoznavanjeŠenonovih krajnj ih granica informaci ja Kada kažemo bdquosredstvo i sakrivanjerdquomisl imo na algoritme Postavl ja se pitanje zašto je danas kriptologi ja sigurni ja negočetrdesetih i pedesetih godina prošlog veka

Danas uprkos tome što su algoritmi za kriptografi ju otvorenog kocircda tajnostinformaci ja je na višem nivou nego što je to bi lo dok je algoritam bio strogopoverl j iv Tajnost tajnih podataka se ne zasniva na tajnosti a lgoritama koj i generišutaj isti bdquotajni izlazrdquo (eng cipher text) nego u nemogućnosti matematičke inverznefunkci je koja bi šifrovan tekst otvori la Ovde se vidi da je svrha strukture otvorenogkocircda kao jednog od značajnih delova današnje kriptologi je ona koja ga činisigurnim i svima dostupnim

Sada kada se sa ove distance osvrnemo na Drugi svetski rat možemo videti kol ikosmo bi l i bl izu apokal ipse Naime Albert Ajnštajn je već 1944 godine imao urukama recept za nuklearnu bombu Šenon je mogao već u to vreme da nampredoči 100 siguran šifrat (tzv Hitlerovu super šifru) a l i ipak sreća nas jeposluži la da čovečanstvo tada ni je bi lo spremno da upotrebi svu raspoloživutehnologi ju

Albert Ajnštajn bdquoČetvrti svetski rat će se voditi tol jagamardquo

Zaboravl jeni heroj i Blečl i parka iako su odigral i važnu ulogu u pobedi saveznika usvetskom ratu postal i su žrtve bdquotop secretrdquo doktrine potpuno su zaboravl jeni inestal i su iz istori je

Zakl jučak ovog članka je da je ideologi ja otvorenog kocircda sasvim sigurno tu da nampomogne i da otvori vrata ka većoj sigurnosti novim idejama i kval itetu sameinfrastrukture sistema koju svi zajedno razvi jamo

Internet mreže i komunikacije

45

Broj 33

Autor Nikola Hardi

NabrajanjaBez brojeva

Za nabrajanje pojmova u Bimeru (eng Beamer) koristi se okruženje itemize aunutar tog okruženja možemo da dodajemo nove stavke pomoću item Primerizgleda ovako

beginitemizeitem Stavka Aitem Stavka Bitem Stavka C

enditemize

Sa brojevima

Postoje situaci je kada uz nabrajanje treba da stoje i redni brojevi - za to se koristienumerate okruženje a nove stavke se takođe dodaju pomoću item

beginenumerateitem Redni broj 1item Redni broj 2item Redni broj 3

endenumerate

prezentaci ja

Beamer (4 deo)

Sam svoj majstor

46

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

DefinicijeTreća situaci ja je nabrajanje parova termin - definici ja U tom slučaju se koristiokruženje description Već možete da pretpostavite kako se dodaju nove stavke

Primer

begindescriptionitem[Pojam A] Definicija izmišljenog pojma Aitem[Pojam B] Definicija izmišljenog pojma Bitem[Pojam C] Definicija izmišljenog pojma C

enddescription

Ostala podešavanja i zanimljivostiSva prethodna okruženja mogu da budu ugneždena jedno unutar drugog dotrećeg nivoa Treba biti pažl j iv jer sla jdovi vrlo lako mogu da postanu nečitl j ivi Osim toga moguće je izabrati i format oznake i l i rednih brojeva - na primer ovako

beginenumerate[I]beginenumarate[a)]

Takođe moguće je upravl jati pojavl j ivanjem pojedinih stavki na slajdovima Drugimrečima možemo da odredimo da se nabrajanja postepeno otkrivaju tako što ćemouz stavku dodati lt1-gt odnosno broj od kojeg slajda žel imo da se ta stavkapojavl ju je Tada će jedno nabrajanje biti bdquorazvučenordquo na više slajdovaJednostavni ja mogućnost je da u zaglavl je okruženja dodamo +- što znači dažel imo da se svakim slajdom otkriva po jedna nova stavka iz nabrajanja Znak bdquo-rdquo uoba primera znači da žel imo da se stavka pojavi na sledećem slajdu i da ostane

Sam svoj majstor

47

Broj 33

prisutna Možemo da izostavimo znak bdquo-rdquo i tada će stavka biti prisutna samo najednom slajdu i l i da napišemo raspon slajdova u koj ima žel imo da ta stavka budeprisutna

Rad sa kolonama i blokovimaDo sada su svi primeri podrazumeval i da je sadržaj napisan preko cele širineslajda al i Bimer (eng Beamer) ima i jednostavne mehanizme za razmeštanjesadržaja po kolonama Za rad sa kolonama se koristi okruženje columns unutarkojeg možemo da dodajemo nove kolone pomoću columnširina Sadržaj jemoguće potom pisati i van okruženja sa kolonama

U paru sa kolonama često se sreće i okruženje block koje se parametrizujenaslovom Primerom su i lustrovani i okruženje column i okruženje block

beginframebegincolumns

column05textwidthbeginblockNaslov levog blokaSadržaj u prvoj (levoj) koloni endblock

column05textwidthbeginblockNaslov desnog blokaSadržaj u drugoj (desnoj) koloni

endblockendcolumns

beginblockVan kolona

Beamer

48

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Tekst koji se nalazi ispod kolonaendblock

endframe

TabeleIako se u radu sa prezentaci jama sadržaj najčešće može uredno rasporeditipomoću kolona i nabrajanja nekada to ni je dovol jno jer su tabele pravi formatBimer podržava standardno Lateh (LaTeX) okruženje za rad sa tabelamaOkruženje za rad sa tabelama se zove tabular Pri kreiranju nove tabele moguće jepodesiti koje kolone će biti razdvojene l ini jom i da l i će nj ihov sadržaj biti centrirani l i uz levu i l i uz desnu ivicu Dodavanje novog reda se jednostavno radidodavanjem hline Lateh pruža zaista jako fleksibi lan rad sa tabelama i sigurno ćedoskočiti svim mogućim i nemogućim zamisl ima Potražite bi lo koje Lateh uputstvoza rad sa tabelama i radiće i sa Bimerom

beginframebegintabular | c | c | c | c |

hlineamp Ponedeljak amp Utorak amp Sreda hline

1 amp 16 amp 32 amp 64 hline2 amp 16 amp 128 amp 1024 hline3 amp 16 amp 512 amp 4096 hline

endtabularendframe

Sam svoj majstor

49

Broj 33

Beamer

Teoreme i istaknut tekstU nastavi su česta izlaganja teorema nj ihovih dokaza i primera U Bimer jeugrađena podrška za elegantno predstavl janje ove trojke Mehanizam takođepodržava postepeno otkrivanje sadržaja sla jda tako da slušaocima ne bude odmahotkriven dokaz teoreme Mehanizam za postepeno otkrivanje se kao i kodnabrajanja postiže pomoću bdquolt1-gtrdquo konstrukci je Evo kako to izgleda

beginframeframetitlePrimer teoreme

begintheoremlt1-gt Teorema kaže da su beamer prezentacijezanimljive

endtheorem

beginexamplelt2-gt Ovaj kod kreira slajd beamer prezentacijeendexample

beginprooflt3-gt Čestitamo stigli ste do kraja serijala o pravljenju beamer prezentacija

endproofendframe

50

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Za krajOvim člankom završavamo seri ja l o Bimeru Nadamo se da smo uspel i da vaszainteresujemo za ovu vrlo korisnu klasu Lateha Trudi l i smo se da vamprezentujemo najvažni je delove Bimera koje ćete najčešće koristiti pri l ikomkreiranja svoj ih prezentaci ja

Napominjemo još jednom da je Bimer samo jedna od klasa Lateha što znači da i zaBimer važi sve ono što ste već mogl i da pročitate u ovom časopisu kad smo pisal iseri ja l bdquoUvod u LaTeXrdquo (LiBRE brojevi 17 do 21) Štaviše ovaj seri ja l o Bimeru jebio nastavak upravo tog seri ja la U ovom seri ja lu nismo pisal i o samomformatiranju teksta u prezentaci jama jer se podrazumeva da važe ista pravi la kao iu Latehu a o tome smo pisal i u prethodnom seri ja lu

Hvala vam što ste prati l i ovaj seri ja l i žel imo vam puno uspeha u kreiranju Bimerprezentaci ja

Sam svoj majstor

51

Broj 33

Autor Nenad Marjanović

Kada smo se upoznal i sa podešavanj ima sistema i umrežavanjem vreme je za našprvi Biglbon Blek (BBB - eng BeagleBone Black) projekat Svakom od nas će ovajizazov dati razl ičite ideje a jedna od nj ih može biti i zaštita privatnosti internetkorisnika Nažalost u Srbi j i ne postoj i ni jedan izlazni tor server (eng node) i to jepomalo tužna sl ika s obzirom da govorimo o populaci j i od sedam mil ionastanovnika Al i ovu sl iku možemo promeniti udruženim snagama i za početakkreiranjem Tor transfer i izlaznog servera U ovde prikazanom grafikonufokusiraćemo se na bdquoRauter Brdquo tačku odnosno transfer server konfiguraci ju

BeagleBone Black Rev C

Vodič od prvog dana (3 deo) ndashBeagleBone Black kao Tor relej

Hardver

52

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Tor predstavl ja mrežu servera koj i se povezuju radi bol je enkripci je podataka izaštite IP adrese korisnika Naš ci l j je da danas postanemo deo ovog predivnogprojekta i da se nađemo na svetskoj karti Tor servera

Brzina interneta i zakonske regulativePotrebno je imati na umu nekol iko bitnih stvari

1 Naš server = naša odgovornost2 Obavezno naznačite da ste vi administrator a ne korisnik istog servera3 Da posedujete internet brzinu od 2 Mbs

Ako ispunjavamo tri navedena pravi la i odgovornosti možemo se posvetitiadministrativnim poslovima

Instalacija i podešavanjaU ovom primeru koristimo Debi jan Vizi (eng Wheezy) odnosno Debi jan 7 verzi juna našem BBB uređaju Vi možete testirati i druge Linuks platforme Prvododajemo izvornu bibl ioteku u etcaptsourceslist faj l pokretanjem sledećekomande u terminalu

echo deb httpdebtorprojectorgtorprojectorg wheezy main gt etcaptsourceslistdtorlist

Zatim dodajemo izvorni kl juč vršimo ažuriranje sistema i instal iramo tor i tor-arm(Tor monitoring sistem)

gpg --keyserver keysgnupgnet --recv 886DDD89gpg --export A3C4F0F979CAA22CDBA8F512EE8CBC9E886DDD89 | sudo apt-keyadd -apt-get updateapt-get install debtorprojectorg-keyring -yapt-get install tor tor-arm egrep screen -y

Ovim smo uspešno završi l i instalaci ju Tor servera i sistema za monitoring odnosnonadgledanja našeg Tor servera Sledećom komandom radimo na podešavanj imaTor servera koja se nalaze u etctortorrc faj lu Obratite pažnju i izvršite potrebne

Hardver

53

Broj 33

izmenu u pol j ima IP adresa (eng Address) nadimka (eng Nickname) i kontaktpodataka (eng ContactInfo) pre pokretanja ove komande Kopiramo i pokrećemokomandu u celosti u terminalu

egrep -v ^(|$) etctortorrcORPort 443Address 19216811Nickname LibreTorRelayRelayBandwidthRate 100 KBRelayBandwidthBurst 120 KBContactInfo ltvi at gmail dot comgt irPort 8080DirPortFrontPage etctortorhtmlExitPolicy reject

Detal je o svim vrednostima nećemo iznositi u ovom broju LiBRE časopisa al ićemo o nj ima pisati u sledećem u kome ćemo pričati o zaštiti Tor servera imogućnosti podešavanja određenih izlaznih pravi la (eng ExitPolicy)

Nakon ovoga možemo primetiti da se u folderu etctor ne nalazi torhtml faj l Ovaj faj l ni je od vel ikog značaja i možete ga l ično napraviti i l i preuzeti jednu kopi ju- naprimer sa sledeće lokaci je

cp usrsharedoctortorhtml etctortorhtml

Opcije i Tor Arm monitoringDa bismo ispravno koristi l i Tor Arm potrebno je urediti još jednom etctortorrcfaj l i restartovati servis

echo -e ldquoDisableDebuggerAttachment 0n AvoidDiskWritesrdquo gtgt etctortorrcsudo service tor reload

Ukol iko žel ite koristiti Tor Arm za nadgledanje aktivnosti na serveru pokreniteprogram screen kl iknite na bdquoEnterrdquo i kucajte sudo -u debian-tor arm Naekranu ćete imati sl ičan prikaz

BeagleBone Black

54

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Hardver

55

Broj 33

Da bismo napusti l i screen program koristimo Ctrl + a + d i na taj način kada sesledeći put pri javimo na server kucamo samo screen -r u terminalu - i naći ćemose ponovo na čuvenom Tor Arm monitoring ekranu

Nakon svake promene konfiguracionih faj lova ako slučajno nismo nešto podesi l ikako treba restartujemo servise

U sledećem broju časopisa govorićemo o minimalnim podešavanj ima ikonfigurisanju izlaznog Tor servera (eng Tor Exit Node) opci jama sigurnosti isl ičnim detal j ima u vezi sa našim prvim projektom Do čitanja u sledećem broju

BeagleBone Black

LUGoNS BarCamp 4subota 7 mart 2015 godine

Četvrti LUGoNS-ov Barkemp (BarCamp) održaće se u Novom Sadu usubotu 7 marta 2015 godine na Fakultetu tehničkih nauka sa početkomu 12 časova

Ulaz je slobodan

Poziv za predaju radovaLUGoNS poziva sve zainteresovane da pošal ju svoje radove (predavanjaprezentaci je radionice i diskusi je) do 28 februara 2015 godine

Oblasti iz koj ih možete da pri javite vaše radove su

bull Slobodan softverbull Zaniml j iv hardverbull Hakerski zakonibull Sigurnosne noćne morebull Anonimnost i privatnost na internetubull Duboki veb (eng Deep Web)bull Soci ja lne mrežebull Soci ja lni inženjeringbull Hakovanje mobi lnih uređajabull Internet u oblaku (eng Clouds) ndash hakovanje razbi janje i neočekivano korišćenjebull DPI (eng deep packet inspection)bull Mreža i mrežna neutralnost ndash vlasništvo cenzura nadmudrivanje i pol itika bdquodefaktordquo standarda

bull Programiranje i programski jezici

Nemojte se ustručavati i slobodno nam se javite ako imate rad na gore navedenei l i sl ične teme koj i smatrate interesantnim

Stranica za predaju radova nalazi se na https events lugonsorgp=1658

Page 24: LiBRE 33 Lat

24

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Pretvaranje tipova podataka u stringove ipretvaranje iz stringovaPretvaranje podataka iz jednog tipa u drugi i l i kastovanje (eng type casting) se zavećinu tipova vrši jednostavno pisanjem tipa u zagradama na primer (int)523 Stringovi su i po ovom pitanju drugači j i Postavl ja se pitanje šta pretvoriti ucelobrojni tip - da l i adresu na koju pokazuje pokazivač niza koj i predstavl ja stringPrvi element Šta ako taj string ni je broj Predstavićemo rešenje za konverzi jubrojeva u stringove i obrnuto

Ispis podataka na ekranu se takođe može smatrati konverzi jom Broj sa pokretnimzarezom je u memori j i prikazan na pomalo čudan način a pozivom funkci jeprintf() kada je kao format zadat f na ekranu ćemo dobiti razuml j iv niz znakovaSl ičan rezultat možemo dobiti funkci jom sprintf() a jedina razl ika u odnosu naprintf() je ta što sprintf() kao prvi argument očekuje pokazivač na string dok sudrugi (format string) i treći (argumenti koj i se povezuju sa formatnim stringom)sl ični kao kod funkci je printf()

Kod pretvaranja stringova u brojevne tipove može poslužiti funkci ja sscanf() kojase ponaša sl ično kao funkci ja scanf() s tim što je prvi argument adresa(pokazivač na string) koju žel imo da skeniramo u nadi da će se poklopiti saformalnim stringom koj i je drugi argument a rezultati će biti sačuvani u adresamakoje su prosleđene kao 3 4 i ostal i parametri Drugi način za pretvaranje stringovau celobrojne brojeve i brojeve sa pokretnim zarezom su funkci je atoi() i atof()

Funkci je koje koriste formatni string su česte u jeziku C i zaslužuju posebnu pažnjumeđutim to je priča za poseban članak U ovu klasu funkci ja spadaju recimo ifunkci je za rad sa datotekama

BezbednostRad sa stringovima može da bude izuzetno opasna stvar po pitanju bezbednostiprograma Ukol iko se niz karaktera ne završava NULL karakterom svašta može dapođe po zlu pri pozivu funkci ja kao što su strcpy() strcmp() i sl ične Cela klasatih funkci ja se oslanja na postojanje znaka koj i označava kraj stringa Kada stringni je propisno završen tada te funkci je mogu da zalutaju u deo memori je vanstringa i svašta može da pođe po zlu Ovakav tip napada se inače zoveprekoračenje bafera (eng buffer overflow) Preporučen način kako da izbegnete

Kako da

25

Broj 33

Pregled popularnosti GNULinuxBSDdistribuci ja za mesec februar

Distrowatch

Pad ltPorast gtIsti rejting =(Korišćeni podaci sa Distrovoča)

12345678910111213141516171819202122232425

MintUbuntuDebianopenSUSEelementaryMageiaFedoraManjaroCentOSLXLEArchBodhiAndroid x86Kal iPCLinuxOSPuppyRobol inuxLubuntuQ4OSBlack LabNetrunnerSimpl icityEvolveZorin4MLinux

2919gt1778gt1701gt1323gt1204gt1174gt1166gt1028lt1020gt965gt957gt907gt900lt760gt742lt732gt695gt670gt663gt655gt652gt629gt607gt583gt517=

takve nepri jatne situaci je pri radu sastringovima je da koristite verzi jefunkci ja koje su ograničenemaksimalnom dužinom stringa kaošto su strncpy() strncat() strncmp() i td Sve te funkci je kaotreći parametar zahtevaju broj koj iodređuje maksimalnu očekivanudužinu stringa Još jedna vrlo korisnafunkci ja je strlen() či j i zadatak je daodredi dužinu stringa Budite pažl j ivi ovo je prvo mesto gde se tražebezbednosni propusti u programimaNe verujte podacima koj i spol ja ulazeu vaš program a pogotovo kada je rečo stringovima

Uvod u programski jezik C

26

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Autor Dejan Maglov

Projekti slobodnog softvera obično počinju kao projekti pojedinca i l i male grupeprogramera a koj i rade na razvoju softvera či j i je ci l j da zadovol j i neke od nj ihovihl ičnih potreba Projekat će se smatrati uspešnim ukol iko se šira zajednicazainteresuje za njega nakon što prepozna korisnost softvera ne samo za pojedincekoj i su započel i projekat već i za širu zajednicu Kada je u pitanju slobodni softvervremenom je postala stalna praksa da se zajednica umeša u razvoj projekataDobri projekti sami privlače zajednicu l judi koj i su zainteresovani za nj ih i ona uvećini slučajeva preuzima na sebe testiranje pobol jšanje funkcionalnosti održavanje i tehničku podršku projekta

Zajednice slobodnog softvera mogu da se okupe oko projekta slobodnog softverapo teritori ja lnom principu i l i da nastanu kombinaci jom ovih principa

Primeri

bull LiBRE projekat okupl ja zajednicu oko projekta bez teritori ja lnog ograničenjabull LUGoNS (Linux User Group of Novi Sad) je zajednica korisnika Linuksa poteritori ja lnom principu bez obzira na konkretan projekat

bull Ubuntu-rs zajednica koja je kombinaci ja okupl janja zajednice oko konkretnogprojekta (Ubuntu) i teritori ja lnog principa koj i se ograničava na teritori ju Srbi je

Ova sinergi ja projekata i korisnika slobodnog softvera ima više prednosti i zakorisnike i za projekat Projekat se na ovaj način brže razvi ja dobi ja na

U potrazi za idealnom distribucijom

Socijalni kriterijumi za izbor idealnedistribucije (6 deo)

Oslobađanje

27

Broj 33

funkcionalnosti greške se brzo ispravl ja ju i td Korisnici dobi ja ju osećaj dapripadaju grupi druže se sa istomišl jenicima učestvuju u promoci j i kval itetnihpojedinaca itd

Dve najvažni je uloge lokalnih zajednica za GNULinuks distribuci je su

1 pružanje tehničke podrške i edukaci je na maternjem jeziku2 rad na lokal izaci j i i pri lagođavanje distribuci je lokalnim potrebama

Informaci ja da postoje lokalne zajednice slobodnog softvera je od naročitogznačaja za početnike i korisnike koj i nedovol jno dobro znaju strane jezike(naročito engleski jezik) Ako izuzmemo komerci ja lne projekte otvorenog koda(Red Het SUSE) ne postoje zvanične škole i kursevi za slobodni softver Zaedukaci ju početnika je uglavnom zadužena zajednica a jasno je da je učenje namaternjem jeziku uvek lakše nego na bi lo kom drugom stranom ma kol ikodobro ga poznajete

Forumi i viki stranice lokalnih zajednica su prave bibl ioteke u koj ima korisnicimogu da nađu većinu odgovora na svoja pitanja a za sva ostala tu su forumi iIRC kanal i zajednica na koj ima uvek ima nekoga i koj i imaju već gotova rešenjaza vel iki broj problema

U potrazi za idealnom distribucijom

28

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Lokalne zajednice kao kriterijum za izbor idealnedistribucijePočetnicima i korisnicima koj i ne vladaju dobro engleskim jezikom toplopreporučujemo da biraju GNULinuks distribuci je koje imaju aktivnu lokalnuzajednicu Ovladavanje novim operativnim sistemom je mnogo lakše ukol iko vambdquoleđa čuvardquo lokalna zajednica na koju se uvek možete osloniti

Već smo spomenul i da su popularni je GNULinuks distribuci je namenjenepočetnicima Slučaj je isti i sa lokalnim zajednicama okupl jenim oko nj ih Ovomeđutim ne znači da je kval itet usluga koje nude manje popularne lokalnezajednice okupl jene oko distribuci ja namenjenih napredni j im korisnicima loši j i Manje popularne distribuci je okupl ja ju manje l judi a l i zato oni poseduju većeznanje Iskustvo sa zajednicama okupl jenim oko slobodnog softvera je uglavnompozitivno i ukazuje na to da kval itet usluga koje one nude korisniku ni je uslovl jenpopularnošću i masovnošću zajednice nego iskl jučivo njenom (ne)aktivnošću

U svakom slučaju dosadašnj i saveti za izbor idealne distribuci je važe i dal jeSoci ja lni aspekt slobodnog softvera je samo dodatni faktor koj i vam može pomoćipri donošenju odluke kada se dvoumite između nekol iko mogućih rešenja

Još uvek ne postoj i na jednom mestu potpuni i ažurirani spisak svih aktivnihsrpskih zajednica Nešto najbl iže tome može da se nađe na adresihttps pulsslobodewordpresscom Za informaci je o nekim drugim lokalnimzajednicama koje možda postoje al i nisu na ovom spisku moraćete sami dapretražite internet

Lokalizacija kao kriterijum za izborZa lokal izaci ju GNULinuks distribuci ja i GNU programa odgovorni su pojedinci ilokalne zajednice Sasvim sol idnu srpsku lokal izaci ju mogu imati i projekti koj iuopšte nemaju svoju lokalnu zajednicu a isto tako lošu lokal izaci ju mogu imati iprojekti sa dobrom lokalnom zajednicom Sve je stvar prioriteta zajednica iaktivnosti pojedinaca

Pravu i kontrol isanu lokal izaci ju može imati samo lokalni projekat Ovakvihprojekata u Srbi j i ima malo i teško se probi ja ju čak i u lokalu u konkurenci j isvetskih projekata Istina je da mnoge veće GNULinuks distribuci je imaju srpskulokal izaci

Oslobađanje

29

Broj 33

ju u ponudi pa se možda sl ični lokalni projekti koj i su usmereni samo na striktnulokal izaci ju smatraju nepotrebnima Uzvodna lokal izaci ja u slučaju Srbi je vrlo čestobude veoma loše čak nakaradno sprovedena Jedna polovina programa jelokal izovana srpskom ćiri l icom a druga latinicom Ako postoj i još delova sistemakoj i uopšte ni je lokal izovan onda se pojavl ju ju i delovi programa koj i su naengleskom Zato ćemo se vratiti na prvu rečenicu ovog pasusa i ponovo utvrditi dasamo lokalni projekat može potpuno kontrol isati pravu srpsku lokal izaci ju

U Srbi j i za sada imamo dva aktivna projekta GNULinuks distribuci je ndash TriOS(http triosrs) i Serbian (http wwwdebian-srbi ja iz rspserbianhtml) Obaprojekta su mlada i imaju svoj ih prednosti i mana Kome treba lokal izovanoperativni sistem može da proba jedan od ova dva projekta

U potrazi za idealnom distribucijom

30

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Iako ove dve domaće distribuci je nisu baš naj idealni je interesantno je probati ih iuporediti sa drugim distribuci jama

Za kraj serijalaNamera nam je bi la da kroz ovaj seri ja l o kriteri jumima pri izboru idealnedistribuci je definišemo većinu kriteri juma pri izboru i pokažemo zašto je teškoodgovoriti na jednostavno pitanje bdquoKoju mi distribuci ju preporučujeterdquo

Ni na samom kraju nismo dal i konkretan odgovor na pitanje koja je idealnaGNULinuks distribuci ja Suviše je subjektivnih ocena da bi se mogao datikonkretan odgovor Smatramo da je jako teško napisati neki algoritam izbora pokriteri jumima koje smo identifikoval i i definisal i a možda je čak i nemoguće poštose izlazi stalno menjaju Izlazi iz tog algoritma su GNULinuks distribuci je koj ih izdana u dan ima sve više a i one stare se stalno menjaju

Sam seri ja l bdquoU potrazi za idealnom distribuci jomrdquo neće biti završen samo zato štose više neće baviti kriteri jumima pri izboru nego će pokušati da predstavl jaGNULinuks distribuci je koje su po nečemu bdquoidealnerdquo

Oslobađanje

31

Broj 33

ORM

Autor Dejan Čugal j

Object relation mapping (ORM)

ORM (eng Object RelationMapping) je način postizanja traj-nosti (eng persistence) objekataunutar relacionih baza podatakaModel deluje kao posrednik nalogičkom delu apl ikaci je Automat-ski presl ikava podatke iz objekata ubazu i nazad na zahtev apl ikaci jeDa bismo objasni l i kako ovo sveradi moramo da vam predstavimoORM frejmvork (eng framework)programa otvorenog koda -Hajbernejt (eng Hibernate -http hibernateorgorm)

Šta je ORMUkratko ORM je automatizovano transparentno presl ikavanje objekatakorišćenjem metapodataka koj i opisuju mapiranje veze između objekta i baze

ORM (2 deo)

Slobodni profesionalac

32

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

podataka u apl ikaci jama koje su napisane u objektno ori jentisanim programskimjezicima Apl ikaci ja komunicira sa ORM-om preko njegovog vlastitog API-ja (engapplication programming interface) i određenih objekata Ova komunikaci ja jepotpuno odvojena od komunikaci je koja se odvi ja između ORM-a i baze podatakapreko SQL-a i DBC-a

Da bi se postigla i dostigla potpuna snaga ORM-a u apl ikaci j i koju projektujemonikako se ne sme iskl jučiti znanje relacionih modela SQL jezika te poznavanjeDBMS-a u kome se radi ORM ni je ništa drugo do srednj i sloj između gorepomenutih tehnologi ja i objektno ori jentisanog programiranja kao što smo to dosada već više puta naglasi l i

Implementacija ORM-aPostoje razl ičiti načini implementaci je ORM-a Mark Fasl (Mark Fussel) je 1997definisao četiri nivoa

1 bdquoČistrdquo relacioni način2 Slabo mapiranje objekata3 Umereno mapiranje objekata4 Potpuno mapiranje objekata

bdquoČistrdquo relacioni način

Cela apl ikaci ja ukl jučujući i korisnički interfejs dizajnirana je relacionim modelom iSQL relacionim operatorima Ovakav pristup je odl ičan za male projekte Direktanpristup SQL-u omogućava fino podešavanje svakog aspekta upita koj i se postavl jabazi podataka Osnovne mane su portabi lnost (prenosivost) i održavanje ovakvihsistema pogotovo ako se planira korišćenje apl ikaci je na duži rok Ovakvi sistemimasovno koriste sačuvane procedure (eng stored procedures) što znači da jeposlovna logika (eng busines logic) prebačena na samu bazu podataka

Slabo mapiranje objekata

Entiteti su predstavl jeni kao klase i mapiranje se radi ekspl icitno ka relacionimtabelama SQLJDBC je sakriven od poslovne logike korišćenjem poznatih šablona(patterns)

Umereno mapiranje objekata

Slobodni profesionalac

33

Broj 33

Dizajn apl ikaci ja se svodi na objektne modele SQL se generiše u vremekompaj l iranja (eng build-time) i l i u vreme izvršavanja (eng run-time) Specifikaci jaupita nad bazama podataka se radi na objektno ori jentisanom jeziku Ovakvisistemi se koriste u apl ikaci jama srednj ih vel ičina kod koj ih je bitna portabi lnostizmeđu razl ičitih sistema za upravl janje bazama podataka (DBMS)

Potpuno mapiranje objekata

Podržava sofisticirano objektno model iranje nasleđivanje i pol imorfizamEfikasnost dobi janja podataka je na visokom nivou i koriste se metode kao što sulenjo učitavanje (eng lazy loading) i strategi ja keširanja (eng caching) Implementaci ja je transparentna u apl ikaci jama Ovaj nivo je jako teško dostići Pojedincu su potrebne godine razvoja da postigne ovakvu fleksibi lnost pristupa imanipulaci ja u relacionim bazama podataka Upravo ovaj nivo se postiže ako sekoriste rešenja ORM-a kao što je Hajbernejt

Zašto ORMImplementaci ja ORM rešenja pogotovo ako seprvi put susrećete sa ovim modelom može dabude veoma frustrirajuća i malo teža zaimplementaci ju Kada ovo kažemo misl imo daprogramer koj i implementira ORM i hoće da istibude kval itetno urađen mora da posedujepredznanje objektno ori jentisanog programiranjai naprednih tehnika kao što su nasleđivanje ipol imorfizam

Ovo inicira fundamentalna pitanja

bull Pa zašto bi iko onda implementirao ovako nešto kompleksnobull Vredi l i truda upuštati se uopšte u ORM

Odgovor ni je jednostavan Dosadašnja iskustva u korišćenju ORM-a i njegovapopularnost već daju odgovor na postavl jeno pitanje Očigledno je da su benefitikoje donosi ovaj model veći od kompleksnosti njegove implementaci je a to su

Hibernate ORM

34

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Veća produktivnost

ORM smanjuje kol ičinu koda potrebnog za ostvarivanje trajnosti podataka Ovoomogućava programeru da vreme koje bi utrošio na ručno mapiranje podatakautroši na druge delove apl ikaci je

Lakše održavanje

Manje l ini ja koda osigurava bol ju razuml j ivost (i možda bol j i kval itet koda) jernaglašava apl ikaci jsku logiku ORM takođe ublažava uticaj nastal ih promena kaošto su promene u bazi strukturi tabela i td

Prenosivost

Većina ORM rešenja podržava sisteme za upravl janje bazama podataka raznihproizvođača ORM u potpunosti odvaja sloj apl ikaci je od stvarne SQL komunikaci jekoja se odvi ja u pozadini Time omogućava da se pišu apl ikaci je koje će moći da seizvršavaju na razl ičitim bazama podataka bez potrebe za dodatnim kodiranjemOva komunikaci ja se odvi ja sa programskim interfejsima ORM-a nezavisno oDBMS-u sa koj im je u bi lo kom momentu povezan ORM takođe omogućava lakšiprelaz sa manj ih na veće baze podataka tokom razvoja apl ikaci je

Uvidel i smo da trenutno postoje dve paradigme koje se bdquosudarajurdquo i koje supodjednako dobre same za sebe Relaciona paradigma potvrđuje da sve što jeizgrađeno na matematičkim osnovama je i trajno u smislu kval iteta koje posedujeU domenu u kom relaciona paradigma egzistira ona je ako je to u ovo vremeuopšte moguće tvrditi nezamenj iva

Ono što otvara pitanja i daje razlog za sumnju je koja je krajnja granicaupotrebl j ivosti relacione paradigme tj kol iki su kapaciteti složenosti zahtevaapl ikaci ja sa kojom može da se nosi Praksa je pokazala da je sasvim mogućebdquoizvestirdquo složene projekte - al i održavanje skalabi lnost razuml j ivost prenosivost -pitanja su sa koj im se relaciona paradigma teško može izboriti

Sa druge strane svoj habitat u informacionim tehnologi jama je našla i objektna

Slobodni profesionalac

35

Broj 33

paradigma Iako na prvi pogled ova dva modela nemaju ništa zajedničko - što je uneku ruku i istinito gledajući prirodu podataka koj im manipul išu - praksa jepokazala da su usko povezane i skoro da imaju sinaptičku vezu

Pitanje bdquokako spoj iti te sinapserdquo dovelo je do žučnih rasprava u uskim naučnimprogramersko-administratorskim krugovima Rodi l i su se razni model i a l i jedan jeiskočio i polako ulazi u široku primenu - a to je ORM Svoj im supti lnim pristupomproblemu nekompatibi lnih paradigmi nekako je uspeo da stvori taj nedostajućibdquoelektrični signalrdquo koj i ih je povezao Ovo je omogući lo da dve strane koje susvaka za sebe u svom domenu ostavi le i ostavl ja ju duboki trag u informacionimtehnologi jama sarađuju i donesu novi kval itet

Korisni l inkovi

[1] Hibernejt http hibernateorg[2] Viki http googlLlZulw[3] Tutori ja l i http googlCGzvnc

Hibernate ORM

36

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Autor Kriptopank

Šta su zapravo metapodaci Najkraće rečeno to su podaci o podacima i l iinformaci je koje opisuju podatke

Najpre da napravimo razl iku između podataka i metapodataka Podaci sunaprimer snimak (i l i transkript) vaših telefonskih razgovora sadržaj poruka kojepišete primate i l i šal jete podaci koje kačite na internet i l i preuzimate pretrageGuglom postovi na forumima dopisivanja na IRC kanal ima i l i drugim četovimaaudio i video snimci Skajp razgovora i tako dal je

Hajde da vidimo šta bi bi l i odgovarajući metapodaci za ove primere

bull Za telefonske razgovore metapodaci mogu biti lokaci ja učesnika brojevitelefona trajanje razgovora IP i MAC adresa

bull Za poruke četove i Skajp i l i druge video-audio komunikaci je sl ično je kao kodtelefonskih razgovora

To su samo metapodaci

Internet mreže i komunikacije

37

Broj 33

bull Kod foruma i pretraga Guglom ima malo manje metapodataka al i Gugl i raznisajtovi i forumi ionako čuvaju logove o korisnicima što su takođe metapodaci

Ako do sada koj im slučajem niste uvidel i opasnost po privatnost u ovimmetapodacima koje svako od nas smrtnika svakodnevno ostavl ja za sobom usvetu interneta i ostal ih digitalnih komunikaci ja nadamo se da će vas ovaj primermakar podstaći na razmišl janje a možda i na nešto više

Zamisl i te da neko (zvaćemo ga posmatrač) stalno sakupl ja metapodatke koje zasobom ostavl jate kao mrvice hleba Posmatrač recimo zna da se nalazite naautoputu nedaleko od famoznog Feketića da se ne krećete da zovete AMSS zatimšlep službu i možda taksi a l i ne zna šta ste razgovaral i I l i posmatrač vidi da steprvo zval i aerodrom Nikola Tesla pa odmah potom taksi a l i ne zna šta sterazgovaral i I l i posmatrač vidi da ste zval i prvo šest brojeva či je identitete takođezna pa vidi da se oni zatim kreću ka vama - GPS (eng Global Positioning System) pa zatim pica servis Mekdonalds i neku poznatu prodavnicu kineske hrane al i nezna šta ste razgovaral i

Posmatrač ne mora da bude mnogo pametan niti da prisluškuje vaše razgovore dabi shvatio šta se dešava i l i šta će se desiti Sasvim mu je jasno da vam je u prvomprimeru auto stao na autoputu zatim da ste se u drugom slučaju uputi l i naaerodrom i da možda putujete van zemlje i l i ste poslal i taksi po nekoga saaerodroma a da u trećem slučaju okupl jate žurku kod vas Više možete pogledatina http googl7vUjP

Iako su to bdquosamordquo metapodaci treba biti svestan da ti metapodaci o vama stvarajujednu digitalnu sl iku i l i bol je reći digitalni mozaik i na neki način vas jedinstvenoodređuju Pogotovo kada se planski prikupl ja ju na više nivoa (kompjuter pametnitelefon pametni automobi l i kreditna kartica) metapodaci čine vaš digitalniidentitet Al i da stvar bude još gora ta sl ika o vama ne mora nužno biti istinita jerse lako može lažirati Recimo možete zameniti telefone i l i automobi le sa nekimnamerno i l i slučajno i l i vam neko može jednostavno ukrasti telefon laptop i l ikreditnu karticu Zaniml j iv video http googlKO1fKf

Evo jednog primera koj i vas može uvući u vel ike nevol je Recimo da prolazitenekom zabačenom ul icom i da vam neprimetno ispadne telefon al i vi to neprimetite i nastavite dal je svoj im putem U toj ul ici se samo nekol iko minutakasni je desi neko ubistvo i vas pozovu u pol ici ju kao osumnj ičenog Ako koj im

To su samo metapodaci

38

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

slučajem nemate dobar al ibi i l i nemate svedoka da posvedoči da niste bi l i u tojul ici nego tamo gde ste stvarno bi l i a drugih svedoka nema - možete jako lošeproći Zaniml j ivi video http googlspS5OZ

Metapodaci se takođe nalaze i u faj lovimapodacima koje svakodnevnopreuzimamo sa interneta pravimo i koristimo Svaki tip podatka može da sadržiodređene metapodatke koj i bol je opisuju sam podatak kao naprimer vremenastanka podatka kol iko je vremena potrošeno za njegovo kreiranje kol iko putamu je pristupl jeno kad je poslednj i put pristupl jeno i tako dal je Iako se ovakvimetapodaci možda još uvek čine bezazlenim oni mogu sadržati i IP adresuračunara sa kog su napravl jeni GPS koordinate (najčešće PNG format sl ika satelefona) ko ga je napravio (l ičnost i l i kompani jaorganizaci ja) naziv uređaja imodel sa koga je napravl jen kao i MAC adresu uređaja mej l adresu kreatorasoftver koj im je napravl jen i tako dal je Sve ovo može mnogo da naškodiprivatnosti izvornog kreatora faj la pogotovo ako je sadržaj poverl j iv Ukol iko nekopresretne taj podatak na internetu može saznati od koga je potekao Da ovo možebiti katastrofa po kreatora takvog faj la može i lustrovati primer torenta Ako stedošl i u posed nekih sl ika i l i video materi ja la i l i teksta koj i žel i te da podel ite sasvetom preko nekog torent sajta morate taj podatak prvo očistiti odmetapodataka da ne bi svako ko skine to što ste okači l i saznao da vi stoj i te izatoga

Internet mreže i komunikacije

39

Broj 33

Ljudi se konstantno prate metapodaci se sakupl ja ju i to ni je sada već ništa novoal i možemo da se trudimo da iza sebe ostavl jamo malo manje nežel jenihmetapodataka i da ih takoreći čistimo iz podataka koje razmenjujemo Na srećupostoje programi koj i ovo dobro rade

Najpre je potrebno da vidimo koje sve metapodatke neki faj l sadrži kako bismo seuveri l i da ovi metapodaci stvarno postoje i da je faj l bezbedan nakon nj ihovogbrisanja

Ako koristite operativne sisteme GNULinuksa treba da iz terminala preuzmete iinstal irate program pod nazivom exiftool

sudo apt-get install exiftool

Ovaj program će nam pružiti uvid u sve metapodatke koje faj l sadrži Korišćenje jeiz terminala al i je zato veoma jednostavno samo ga pokrenite na sledeći način

exiftool File

i l i

exiftool putanjadofajlapočevodkorenogdirektorijuma

Dobićete prikaz metapodataka koje je program pronašao Sada je potrebno davidimo da l i je podatak bdquoprl javrdquo tj da l i ima u njemu nešto da se briše i da akoima iz njega sve nepotrebno obrišemo Tu će nam pomoći drugi program zvaniMAT (eng Metadata Anonymisation Toolkit) koga možete naći na sajtuhttps matboumorg i l i jednostavno za korisnike Ubuntua i Debi jana uSoftverskom centru i l i ga možete instal irati iz terminala

sudo apt-get install mat

MAT će proveriti da l i je podatak bdquoprl javrdquo i l i ne i za vas ga očistiti od nežel jenihmetapodataka

Kada očistite faj l on je spreman za del jenje sa drugima a vi ste bezbedni jer nikone može reći da je faj l potekao sa vašeg računara

To su samo metapodaci

40

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Autor Dejan Čugal j

GH Hardi bdquoPrava matematika nema uticaj na ratrdquo - odbrana matematičara1940 godina

Bi l Tat - britanski matematičar verovatno niste čul i za njega1942 godine je izveo ogroman poduhvat koj i je skratio rat dvegodine (barem po rečima Ajzenhauera) i spasio mi l ione životaNažalost njegova vel ičina je preminula 2002 godine obavi jenavelom tajne i nikada zvanično ni je priznato njegovo dostignuće

Tomi Flauers - bivši inženjer poštanskog saobraćaja pretvorio jematematičke ideje Tata u prvi računar a to ni je bio bdquoENIACrdquo1Preminuo je 1998 godine a pretpostavl jamo da nikada niste čul ini za njegovu vel ičinu

Ovi umni giganti bdquoBlečl i parkardquo omogući l i su Britani j i da dešifruje strogo poverl j ivumašinu koju je koristio Hitler da diriguje drugim svetskim ratom a to ni je bi labdquoENIGMArdquo nego nešto mnogo tajni je i značajni je Vel ika je verovatnoća da nistečul i ni za ovo Neki kažu da je to bio Hitlerov Blekberi (BlackBerry)

Izgubljeni heroji bdquoBlečli parkardquo

1 engl Electronic Numerical Integrator And Computer - prvidigitalni elektronski računar

Internet mreže i komunikacije

41

Broj 33

1939 godine bdquoBlečl i parkrdquo je postao ratni štab MI6 (britanske vojne obaveštajneslužbe) Do danas je procurelo u javnost i dokumentovano brojnim fi lmskimdokumentarcima samo da je tu Alan Tjuring uspeo da dešifruje nemačkumornaričku šifru poznatu kao bdquoENIGMArdquo i uvel iko doprineo pobedi saveznika a to jesamo deo priče koj i je ispričan

U Blečl i parku su bi la tri heroja AlanTjuring Bi l Tat i Tomi Flauers Od nj ihtroj ice jedino Alanu Tjuringu je priznat deozasluga za pobedu saveznika u Drugomsvetskom ratu Pregledom otkrivenihpodataka danas možemo da tvrdimo daje bdquoENIGMArdquo već sa početka drugogsvetskog rata bi la zastarela tehnologi ja Zbog toga je bi lo lako skinuti veo tajne sa

ovog uspeha heroja Blečl i parka

Izgubljeni heroji bdquoBlečli parkardquo

42

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Bi l Tat koj i je dešifrovao bdquoTANI sistemrdquo (TANI) i Tomi Flauers koj i je samo svojomintuici jom i znanjem sklopio prvi računar na svetu (bdquoKOLOSrdquo) u svrhu bržegdolaženja do informaci ja razbi jenog koda bdquoTANIrdquo tako da zastarelost šifrata budesvedena na minimum - radi l i su na novoj generaci j i mašina za šifrovanje Ovatehnologi ja je bi la prepoznata kao tehnologi ja budućnosti pa i danas iznadinformaci ja o tim tehnologi jama stoj i natpis bdquovrhunska tajnardquo (eng Top Secret) Upravo ovaj veo tajni oko šifrata bdquoTANIrdquo i prvog računara je rezultirao iskrivl jenjuistori je informatike

Za uspehe u prvim godinama rata je zaista zaslužno razbi janje bdquoENIGMArdquo šifrata ito ni je sporno al i krajem 1941 godine u etru planete se začuo novi zvuk To je bi lanova mašina za šifrovanje ni je bi la zasnovana na bdquoMorzeurdquo već je radi la naprincipu teleprintera

Jedna od kl jučnih ideja Hitlerovog ratovanja je bi la u vel ikoj mobi lnosti i brzomdelovanju trupa na terenu a da bi se to izvelo komunikaci ja je isto tako morala dabude u najmanju ruku putem radio signala

Razl ika je ogromna Razl ika je u kol ičini podataka koj i može da se prenese ovimbdquotajnimrdquo putem Prvi svetski rat je bio zaniml j iv jer su se šifrovane poruke baziralena rečima dok je Drugi u potpunosti otvorio vrata današnjoj kriptografi j i a to jematematika

Originalan nemački kocircdni naziv za ovaj šifrat bio je bdquoLORENCrdquo Britanska

Internet mreže i komunikacije

43

Broj 33

obaveštajna služba mu je dala nadimak bdquoTANIrdquo Čak ni dan danas ni je baš poznatokako je sve nastalo al i pouzdano se zna da je tajnu mašinu Hitler nazvaobdquoGehajmšrajberrdquo (nem Geheimschreiber) - mašina tajni

U srž i tehnologi ju šifrovanja bdquoLORENCrdquo šifrata nećemo ulaziti u ovom članku al iverujte nam na reč - ni je bi la jednostavna Može se pretpostaviti da je inspiraci jaŠenonovog 2 rada slučajnosti bi la upravo ova tehnologi ja iz Drugog svetskog rata

Ono čime se Treći rajh vodio je bdquosigurnardquo šifrovana veza koju niko ni je smeo dadešifruje Prenošenje šifrovanih poruka pomoću radio signala je dalo obaveštajnimslužbama mogućnost presretanja poruka poslatih radio talasima Da l i se ovo idanas dešava Imamo l i sigurnost u našim šifrovanim podacima današnj ice

Ono što je usledi lo nakon proboja ovog bdquoneuhvatl j ivogrdquo šifrata je upravo ono što jeprincip današnj ice kao neka vrsta protokola koj i mora da se ispoštuje uperfektnom šifarskom Šenonovom sistemu

1 NIKADA NIKADA NE KORISTITI DVA PUTA ISTI KLJUČ ZA ŠIFROVANJE2 NIKADA NIKADA KLJUČ NE SME DA SE ŠALJE ISTIM KOMUNIKACIONIM KANALOM

KAO PORUKA3 NIKADA NIKADA KLJUČ NE SME DA BUDE MANJ I NEGO ŠTO JE PORUKA (engl

2 Klod Elvud Šenon (eng Claude Elwood Shannon) (1916-2001) - Američkinaučnik i inženjer

Izgubljeni heroji bdquoBlečli parkardquo

44

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

one time pad) 4 NIKADA NIKADA NE SMEMO DA SAKRIVAMO SISTEM ŠIFROVANJA SVE MORA

DA JE OTVORENOG KOcircDA

Najveći propusti kriptologi je koj i su uočeni baš u Drugom svetskom ratu jesupokušaj sakrivanja sredstava koj im se generiše tajna poruka i nepoznavanjeŠenonovih krajnj ih granica informaci ja Kada kažemo bdquosredstvo i sakrivanjerdquomisl imo na algoritme Postavl ja se pitanje zašto je danas kriptologi ja sigurni ja negočetrdesetih i pedesetih godina prošlog veka

Danas uprkos tome što su algoritmi za kriptografi ju otvorenog kocircda tajnostinformaci ja je na višem nivou nego što je to bi lo dok je algoritam bio strogopoverl j iv Tajnost tajnih podataka se ne zasniva na tajnosti a lgoritama koj i generišutaj isti bdquotajni izlazrdquo (eng cipher text) nego u nemogućnosti matematičke inverznefunkci je koja bi šifrovan tekst otvori la Ovde se vidi da je svrha strukture otvorenogkocircda kao jednog od značajnih delova današnje kriptologi je ona koja ga činisigurnim i svima dostupnim

Sada kada se sa ove distance osvrnemo na Drugi svetski rat možemo videti kol ikosmo bi l i bl izu apokal ipse Naime Albert Ajnštajn je već 1944 godine imao urukama recept za nuklearnu bombu Šenon je mogao već u to vreme da nampredoči 100 siguran šifrat (tzv Hitlerovu super šifru) a l i ipak sreća nas jeposluži la da čovečanstvo tada ni je bi lo spremno da upotrebi svu raspoloživutehnologi ju

Albert Ajnštajn bdquoČetvrti svetski rat će se voditi tol jagamardquo

Zaboravl jeni heroj i Blečl i parka iako su odigral i važnu ulogu u pobedi saveznika usvetskom ratu postal i su žrtve bdquotop secretrdquo doktrine potpuno su zaboravl jeni inestal i su iz istori je

Zakl jučak ovog članka je da je ideologi ja otvorenog kocircda sasvim sigurno tu da nampomogne i da otvori vrata ka većoj sigurnosti novim idejama i kval itetu sameinfrastrukture sistema koju svi zajedno razvi jamo

Internet mreže i komunikacije

45

Broj 33

Autor Nikola Hardi

NabrajanjaBez brojeva

Za nabrajanje pojmova u Bimeru (eng Beamer) koristi se okruženje itemize aunutar tog okruženja možemo da dodajemo nove stavke pomoću item Primerizgleda ovako

beginitemizeitem Stavka Aitem Stavka Bitem Stavka C

enditemize

Sa brojevima

Postoje situaci je kada uz nabrajanje treba da stoje i redni brojevi - za to se koristienumerate okruženje a nove stavke se takođe dodaju pomoću item

beginenumerateitem Redni broj 1item Redni broj 2item Redni broj 3

endenumerate

prezentaci ja

Beamer (4 deo)

Sam svoj majstor

46

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

DefinicijeTreća situaci ja je nabrajanje parova termin - definici ja U tom slučaju se koristiokruženje description Već možete da pretpostavite kako se dodaju nove stavke

Primer

begindescriptionitem[Pojam A] Definicija izmišljenog pojma Aitem[Pojam B] Definicija izmišljenog pojma Bitem[Pojam C] Definicija izmišljenog pojma C

enddescription

Ostala podešavanja i zanimljivostiSva prethodna okruženja mogu da budu ugneždena jedno unutar drugog dotrećeg nivoa Treba biti pažl j iv jer sla jdovi vrlo lako mogu da postanu nečitl j ivi Osim toga moguće je izabrati i format oznake i l i rednih brojeva - na primer ovako

beginenumerate[I]beginenumarate[a)]

Takođe moguće je upravl jati pojavl j ivanjem pojedinih stavki na slajdovima Drugimrečima možemo da odredimo da se nabrajanja postepeno otkrivaju tako što ćemouz stavku dodati lt1-gt odnosno broj od kojeg slajda žel imo da se ta stavkapojavl ju je Tada će jedno nabrajanje biti bdquorazvučenordquo na više slajdovaJednostavni ja mogućnost je da u zaglavl je okruženja dodamo +- što znači dažel imo da se svakim slajdom otkriva po jedna nova stavka iz nabrajanja Znak bdquo-rdquo uoba primera znači da žel imo da se stavka pojavi na sledećem slajdu i da ostane

Sam svoj majstor

47

Broj 33

prisutna Možemo da izostavimo znak bdquo-rdquo i tada će stavka biti prisutna samo najednom slajdu i l i da napišemo raspon slajdova u koj ima žel imo da ta stavka budeprisutna

Rad sa kolonama i blokovimaDo sada su svi primeri podrazumeval i da je sadržaj napisan preko cele širineslajda al i Bimer (eng Beamer) ima i jednostavne mehanizme za razmeštanjesadržaja po kolonama Za rad sa kolonama se koristi okruženje columns unutarkojeg možemo da dodajemo nove kolone pomoću columnširina Sadržaj jemoguće potom pisati i van okruženja sa kolonama

U paru sa kolonama često se sreće i okruženje block koje se parametrizujenaslovom Primerom su i lustrovani i okruženje column i okruženje block

beginframebegincolumns

column05textwidthbeginblockNaslov levog blokaSadržaj u prvoj (levoj) koloni endblock

column05textwidthbeginblockNaslov desnog blokaSadržaj u drugoj (desnoj) koloni

endblockendcolumns

beginblockVan kolona

Beamer

48

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Tekst koji se nalazi ispod kolonaendblock

endframe

TabeleIako se u radu sa prezentaci jama sadržaj najčešće može uredno rasporeditipomoću kolona i nabrajanja nekada to ni je dovol jno jer su tabele pravi formatBimer podržava standardno Lateh (LaTeX) okruženje za rad sa tabelamaOkruženje za rad sa tabelama se zove tabular Pri kreiranju nove tabele moguće jepodesiti koje kolone će biti razdvojene l ini jom i da l i će nj ihov sadržaj biti centrirani l i uz levu i l i uz desnu ivicu Dodavanje novog reda se jednostavno radidodavanjem hline Lateh pruža zaista jako fleksibi lan rad sa tabelama i sigurno ćedoskočiti svim mogućim i nemogućim zamisl ima Potražite bi lo koje Lateh uputstvoza rad sa tabelama i radiće i sa Bimerom

beginframebegintabular | c | c | c | c |

hlineamp Ponedeljak amp Utorak amp Sreda hline

1 amp 16 amp 32 amp 64 hline2 amp 16 amp 128 amp 1024 hline3 amp 16 amp 512 amp 4096 hline

endtabularendframe

Sam svoj majstor

49

Broj 33

Beamer

Teoreme i istaknut tekstU nastavi su česta izlaganja teorema nj ihovih dokaza i primera U Bimer jeugrađena podrška za elegantno predstavl janje ove trojke Mehanizam takođepodržava postepeno otkrivanje sadržaja sla jda tako da slušaocima ne bude odmahotkriven dokaz teoreme Mehanizam za postepeno otkrivanje se kao i kodnabrajanja postiže pomoću bdquolt1-gtrdquo konstrukci je Evo kako to izgleda

beginframeframetitlePrimer teoreme

begintheoremlt1-gt Teorema kaže da su beamer prezentacijezanimljive

endtheorem

beginexamplelt2-gt Ovaj kod kreira slajd beamer prezentacijeendexample

beginprooflt3-gt Čestitamo stigli ste do kraja serijala o pravljenju beamer prezentacija

endproofendframe

50

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Za krajOvim člankom završavamo seri ja l o Bimeru Nadamo se da smo uspel i da vaszainteresujemo za ovu vrlo korisnu klasu Lateha Trudi l i smo se da vamprezentujemo najvažni je delove Bimera koje ćete najčešće koristiti pri l ikomkreiranja svoj ih prezentaci ja

Napominjemo još jednom da je Bimer samo jedna od klasa Lateha što znači da i zaBimer važi sve ono što ste već mogl i da pročitate u ovom časopisu kad smo pisal iseri ja l bdquoUvod u LaTeXrdquo (LiBRE brojevi 17 do 21) Štaviše ovaj seri ja l o Bimeru jebio nastavak upravo tog seri ja la U ovom seri ja lu nismo pisal i o samomformatiranju teksta u prezentaci jama jer se podrazumeva da važe ista pravi la kao iu Latehu a o tome smo pisal i u prethodnom seri ja lu

Hvala vam što ste prati l i ovaj seri ja l i žel imo vam puno uspeha u kreiranju Bimerprezentaci ja

Sam svoj majstor

51

Broj 33

Autor Nenad Marjanović

Kada smo se upoznal i sa podešavanj ima sistema i umrežavanjem vreme je za našprvi Biglbon Blek (BBB - eng BeagleBone Black) projekat Svakom od nas će ovajizazov dati razl ičite ideje a jedna od nj ih može biti i zaštita privatnosti internetkorisnika Nažalost u Srbi j i ne postoj i ni jedan izlazni tor server (eng node) i to jepomalo tužna sl ika s obzirom da govorimo o populaci j i od sedam mil ionastanovnika Al i ovu sl iku možemo promeniti udruženim snagama i za početakkreiranjem Tor transfer i izlaznog servera U ovde prikazanom grafikonufokusiraćemo se na bdquoRauter Brdquo tačku odnosno transfer server konfiguraci ju

BeagleBone Black Rev C

Vodič od prvog dana (3 deo) ndashBeagleBone Black kao Tor relej

Hardver

52

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Tor predstavl ja mrežu servera koj i se povezuju radi bol je enkripci je podataka izaštite IP adrese korisnika Naš ci l j je da danas postanemo deo ovog predivnogprojekta i da se nađemo na svetskoj karti Tor servera

Brzina interneta i zakonske regulativePotrebno je imati na umu nekol iko bitnih stvari

1 Naš server = naša odgovornost2 Obavezno naznačite da ste vi administrator a ne korisnik istog servera3 Da posedujete internet brzinu od 2 Mbs

Ako ispunjavamo tri navedena pravi la i odgovornosti možemo se posvetitiadministrativnim poslovima

Instalacija i podešavanjaU ovom primeru koristimo Debi jan Vizi (eng Wheezy) odnosno Debi jan 7 verzi juna našem BBB uređaju Vi možete testirati i druge Linuks platforme Prvododajemo izvornu bibl ioteku u etcaptsourceslist faj l pokretanjem sledećekomande u terminalu

echo deb httpdebtorprojectorgtorprojectorg wheezy main gt etcaptsourceslistdtorlist

Zatim dodajemo izvorni kl juč vršimo ažuriranje sistema i instal iramo tor i tor-arm(Tor monitoring sistem)

gpg --keyserver keysgnupgnet --recv 886DDD89gpg --export A3C4F0F979CAA22CDBA8F512EE8CBC9E886DDD89 | sudo apt-keyadd -apt-get updateapt-get install debtorprojectorg-keyring -yapt-get install tor tor-arm egrep screen -y

Ovim smo uspešno završi l i instalaci ju Tor servera i sistema za monitoring odnosnonadgledanja našeg Tor servera Sledećom komandom radimo na podešavanj imaTor servera koja se nalaze u etctortorrc faj lu Obratite pažnju i izvršite potrebne

Hardver

53

Broj 33

izmenu u pol j ima IP adresa (eng Address) nadimka (eng Nickname) i kontaktpodataka (eng ContactInfo) pre pokretanja ove komande Kopiramo i pokrećemokomandu u celosti u terminalu

egrep -v ^(|$) etctortorrcORPort 443Address 19216811Nickname LibreTorRelayRelayBandwidthRate 100 KBRelayBandwidthBurst 120 KBContactInfo ltvi at gmail dot comgt irPort 8080DirPortFrontPage etctortorhtmlExitPolicy reject

Detal je o svim vrednostima nećemo iznositi u ovom broju LiBRE časopisa al ićemo o nj ima pisati u sledećem u kome ćemo pričati o zaštiti Tor servera imogućnosti podešavanja određenih izlaznih pravi la (eng ExitPolicy)

Nakon ovoga možemo primetiti da se u folderu etctor ne nalazi torhtml faj l Ovaj faj l ni je od vel ikog značaja i možete ga l ično napraviti i l i preuzeti jednu kopi ju- naprimer sa sledeće lokaci je

cp usrsharedoctortorhtml etctortorhtml

Opcije i Tor Arm monitoringDa bismo ispravno koristi l i Tor Arm potrebno je urediti još jednom etctortorrcfaj l i restartovati servis

echo -e ldquoDisableDebuggerAttachment 0n AvoidDiskWritesrdquo gtgt etctortorrcsudo service tor reload

Ukol iko žel ite koristiti Tor Arm za nadgledanje aktivnosti na serveru pokreniteprogram screen kl iknite na bdquoEnterrdquo i kucajte sudo -u debian-tor arm Naekranu ćete imati sl ičan prikaz

BeagleBone Black

54

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Hardver

55

Broj 33

Da bismo napusti l i screen program koristimo Ctrl + a + d i na taj način kada sesledeći put pri javimo na server kucamo samo screen -r u terminalu - i naći ćemose ponovo na čuvenom Tor Arm monitoring ekranu

Nakon svake promene konfiguracionih faj lova ako slučajno nismo nešto podesi l ikako treba restartujemo servise

U sledećem broju časopisa govorićemo o minimalnim podešavanj ima ikonfigurisanju izlaznog Tor servera (eng Tor Exit Node) opci jama sigurnosti isl ičnim detal j ima u vezi sa našim prvim projektom Do čitanja u sledećem broju

BeagleBone Black

LUGoNS BarCamp 4subota 7 mart 2015 godine

Četvrti LUGoNS-ov Barkemp (BarCamp) održaće se u Novom Sadu usubotu 7 marta 2015 godine na Fakultetu tehničkih nauka sa početkomu 12 časova

Ulaz je slobodan

Poziv za predaju radovaLUGoNS poziva sve zainteresovane da pošal ju svoje radove (predavanjaprezentaci je radionice i diskusi je) do 28 februara 2015 godine

Oblasti iz koj ih možete da pri javite vaše radove su

bull Slobodan softverbull Zaniml j iv hardverbull Hakerski zakonibull Sigurnosne noćne morebull Anonimnost i privatnost na internetubull Duboki veb (eng Deep Web)bull Soci ja lne mrežebull Soci ja lni inženjeringbull Hakovanje mobi lnih uređajabull Internet u oblaku (eng Clouds) ndash hakovanje razbi janje i neočekivano korišćenjebull DPI (eng deep packet inspection)bull Mreža i mrežna neutralnost ndash vlasništvo cenzura nadmudrivanje i pol itika bdquodefaktordquo standarda

bull Programiranje i programski jezici

Nemojte se ustručavati i slobodno nam se javite ako imate rad na gore navedenei l i sl ične teme koj i smatrate interesantnim

Stranica za predaju radova nalazi se na https events lugonsorgp=1658

Page 25: LiBRE 33 Lat

25

Broj 33

Pregled popularnosti GNULinuxBSDdistribuci ja za mesec februar

Distrowatch

Pad ltPorast gtIsti rejting =(Korišćeni podaci sa Distrovoča)

12345678910111213141516171819202122232425

MintUbuntuDebianopenSUSEelementaryMageiaFedoraManjaroCentOSLXLEArchBodhiAndroid x86Kal iPCLinuxOSPuppyRobol inuxLubuntuQ4OSBlack LabNetrunnerSimpl icityEvolveZorin4MLinux

2919gt1778gt1701gt1323gt1204gt1174gt1166gt1028lt1020gt965gt957gt907gt900lt760gt742lt732gt695gt670gt663gt655gt652gt629gt607gt583gt517=

takve nepri jatne situaci je pri radu sastringovima je da koristite verzi jefunkci ja koje su ograničenemaksimalnom dužinom stringa kaošto su strncpy() strncat() strncmp() i td Sve te funkci je kaotreći parametar zahtevaju broj koj iodređuje maksimalnu očekivanudužinu stringa Još jedna vrlo korisnafunkci ja je strlen() či j i zadatak je daodredi dužinu stringa Budite pažl j ivi ovo je prvo mesto gde se tražebezbednosni propusti u programimaNe verujte podacima koj i spol ja ulazeu vaš program a pogotovo kada je rečo stringovima

Uvod u programski jezik C

26

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Autor Dejan Maglov

Projekti slobodnog softvera obično počinju kao projekti pojedinca i l i male grupeprogramera a koj i rade na razvoju softvera či j i je ci l j da zadovol j i neke od nj ihovihl ičnih potreba Projekat će se smatrati uspešnim ukol iko se šira zajednicazainteresuje za njega nakon što prepozna korisnost softvera ne samo za pojedincekoj i su započel i projekat već i za širu zajednicu Kada je u pitanju slobodni softvervremenom je postala stalna praksa da se zajednica umeša u razvoj projekataDobri projekti sami privlače zajednicu l judi koj i su zainteresovani za nj ih i ona uvećini slučajeva preuzima na sebe testiranje pobol jšanje funkcionalnosti održavanje i tehničku podršku projekta

Zajednice slobodnog softvera mogu da se okupe oko projekta slobodnog softverapo teritori ja lnom principu i l i da nastanu kombinaci jom ovih principa

Primeri

bull LiBRE projekat okupl ja zajednicu oko projekta bez teritori ja lnog ograničenjabull LUGoNS (Linux User Group of Novi Sad) je zajednica korisnika Linuksa poteritori ja lnom principu bez obzira na konkretan projekat

bull Ubuntu-rs zajednica koja je kombinaci ja okupl janja zajednice oko konkretnogprojekta (Ubuntu) i teritori ja lnog principa koj i se ograničava na teritori ju Srbi je

Ova sinergi ja projekata i korisnika slobodnog softvera ima više prednosti i zakorisnike i za projekat Projekat se na ovaj način brže razvi ja dobi ja na

U potrazi za idealnom distribucijom

Socijalni kriterijumi za izbor idealnedistribucije (6 deo)

Oslobađanje

27

Broj 33

funkcionalnosti greške se brzo ispravl ja ju i td Korisnici dobi ja ju osećaj dapripadaju grupi druže se sa istomišl jenicima učestvuju u promoci j i kval itetnihpojedinaca itd

Dve najvažni je uloge lokalnih zajednica za GNULinuks distribuci je su

1 pružanje tehničke podrške i edukaci je na maternjem jeziku2 rad na lokal izaci j i i pri lagođavanje distribuci je lokalnim potrebama

Informaci ja da postoje lokalne zajednice slobodnog softvera je od naročitogznačaja za početnike i korisnike koj i nedovol jno dobro znaju strane jezike(naročito engleski jezik) Ako izuzmemo komerci ja lne projekte otvorenog koda(Red Het SUSE) ne postoje zvanične škole i kursevi za slobodni softver Zaedukaci ju početnika je uglavnom zadužena zajednica a jasno je da je učenje namaternjem jeziku uvek lakše nego na bi lo kom drugom stranom ma kol ikodobro ga poznajete

Forumi i viki stranice lokalnih zajednica su prave bibl ioteke u koj ima korisnicimogu da nađu većinu odgovora na svoja pitanja a za sva ostala tu su forumi iIRC kanal i zajednica na koj ima uvek ima nekoga i koj i imaju već gotova rešenjaza vel iki broj problema

U potrazi za idealnom distribucijom

28

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Lokalne zajednice kao kriterijum za izbor idealnedistribucijePočetnicima i korisnicima koj i ne vladaju dobro engleskim jezikom toplopreporučujemo da biraju GNULinuks distribuci je koje imaju aktivnu lokalnuzajednicu Ovladavanje novim operativnim sistemom je mnogo lakše ukol iko vambdquoleđa čuvardquo lokalna zajednica na koju se uvek možete osloniti

Već smo spomenul i da su popularni je GNULinuks distribuci je namenjenepočetnicima Slučaj je isti i sa lokalnim zajednicama okupl jenim oko nj ih Ovomeđutim ne znači da je kval itet usluga koje nude manje popularne lokalnezajednice okupl jene oko distribuci ja namenjenih napredni j im korisnicima loši j i Manje popularne distribuci je okupl ja ju manje l judi a l i zato oni poseduju većeznanje Iskustvo sa zajednicama okupl jenim oko slobodnog softvera je uglavnompozitivno i ukazuje na to da kval itet usluga koje one nude korisniku ni je uslovl jenpopularnošću i masovnošću zajednice nego iskl jučivo njenom (ne)aktivnošću

U svakom slučaju dosadašnj i saveti za izbor idealne distribuci je važe i dal jeSoci ja lni aspekt slobodnog softvera je samo dodatni faktor koj i vam može pomoćipri donošenju odluke kada se dvoumite između nekol iko mogućih rešenja

Još uvek ne postoj i na jednom mestu potpuni i ažurirani spisak svih aktivnihsrpskih zajednica Nešto najbl iže tome može da se nađe na adresihttps pulsslobodewordpresscom Za informaci je o nekim drugim lokalnimzajednicama koje možda postoje al i nisu na ovom spisku moraćete sami dapretražite internet

Lokalizacija kao kriterijum za izborZa lokal izaci ju GNULinuks distribuci ja i GNU programa odgovorni su pojedinci ilokalne zajednice Sasvim sol idnu srpsku lokal izaci ju mogu imati i projekti koj iuopšte nemaju svoju lokalnu zajednicu a isto tako lošu lokal izaci ju mogu imati iprojekti sa dobrom lokalnom zajednicom Sve je stvar prioriteta zajednica iaktivnosti pojedinaca

Pravu i kontrol isanu lokal izaci ju može imati samo lokalni projekat Ovakvihprojekata u Srbi j i ima malo i teško se probi ja ju čak i u lokalu u konkurenci j isvetskih projekata Istina je da mnoge veće GNULinuks distribuci je imaju srpskulokal izaci

Oslobađanje

29

Broj 33

ju u ponudi pa se možda sl ični lokalni projekti koj i su usmereni samo na striktnulokal izaci ju smatraju nepotrebnima Uzvodna lokal izaci ja u slučaju Srbi je vrlo čestobude veoma loše čak nakaradno sprovedena Jedna polovina programa jelokal izovana srpskom ćiri l icom a druga latinicom Ako postoj i još delova sistemakoj i uopšte ni je lokal izovan onda se pojavl ju ju i delovi programa koj i su naengleskom Zato ćemo se vratiti na prvu rečenicu ovog pasusa i ponovo utvrditi dasamo lokalni projekat može potpuno kontrol isati pravu srpsku lokal izaci ju

U Srbi j i za sada imamo dva aktivna projekta GNULinuks distribuci je ndash TriOS(http triosrs) i Serbian (http wwwdebian-srbi ja iz rspserbianhtml) Obaprojekta su mlada i imaju svoj ih prednosti i mana Kome treba lokal izovanoperativni sistem može da proba jedan od ova dva projekta

U potrazi za idealnom distribucijom

30

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Iako ove dve domaće distribuci je nisu baš naj idealni je interesantno je probati ih iuporediti sa drugim distribuci jama

Za kraj serijalaNamera nam je bi la da kroz ovaj seri ja l o kriteri jumima pri izboru idealnedistribuci je definišemo većinu kriteri juma pri izboru i pokažemo zašto je teškoodgovoriti na jednostavno pitanje bdquoKoju mi distribuci ju preporučujeterdquo

Ni na samom kraju nismo dal i konkretan odgovor na pitanje koja je idealnaGNULinuks distribuci ja Suviše je subjektivnih ocena da bi se mogao datikonkretan odgovor Smatramo da je jako teško napisati neki algoritam izbora pokriteri jumima koje smo identifikoval i i definisal i a možda je čak i nemoguće poštose izlazi stalno menjaju Izlazi iz tog algoritma su GNULinuks distribuci je koj ih izdana u dan ima sve više a i one stare se stalno menjaju

Sam seri ja l bdquoU potrazi za idealnom distribuci jomrdquo neće biti završen samo zato štose više neće baviti kriteri jumima pri izboru nego će pokušati da predstavl jaGNULinuks distribuci je koje su po nečemu bdquoidealnerdquo

Oslobađanje

31

Broj 33

ORM

Autor Dejan Čugal j

Object relation mapping (ORM)

ORM (eng Object RelationMapping) je način postizanja traj-nosti (eng persistence) objekataunutar relacionih baza podatakaModel deluje kao posrednik nalogičkom delu apl ikaci je Automat-ski presl ikava podatke iz objekata ubazu i nazad na zahtev apl ikaci jeDa bismo objasni l i kako ovo sveradi moramo da vam predstavimoORM frejmvork (eng framework)programa otvorenog koda -Hajbernejt (eng Hibernate -http hibernateorgorm)

Šta je ORMUkratko ORM je automatizovano transparentno presl ikavanje objekatakorišćenjem metapodataka koj i opisuju mapiranje veze između objekta i baze

ORM (2 deo)

Slobodni profesionalac

32

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

podataka u apl ikaci jama koje su napisane u objektno ori jentisanim programskimjezicima Apl ikaci ja komunicira sa ORM-om preko njegovog vlastitog API-ja (engapplication programming interface) i određenih objekata Ova komunikaci ja jepotpuno odvojena od komunikaci je koja se odvi ja između ORM-a i baze podatakapreko SQL-a i DBC-a

Da bi se postigla i dostigla potpuna snaga ORM-a u apl ikaci j i koju projektujemonikako se ne sme iskl jučiti znanje relacionih modela SQL jezika te poznavanjeDBMS-a u kome se radi ORM ni je ništa drugo do srednj i sloj između gorepomenutih tehnologi ja i objektno ori jentisanog programiranja kao što smo to dosada već više puta naglasi l i

Implementacija ORM-aPostoje razl ičiti načini implementaci je ORM-a Mark Fasl (Mark Fussel) je 1997definisao četiri nivoa

1 bdquoČistrdquo relacioni način2 Slabo mapiranje objekata3 Umereno mapiranje objekata4 Potpuno mapiranje objekata

bdquoČistrdquo relacioni način

Cela apl ikaci ja ukl jučujući i korisnički interfejs dizajnirana je relacionim modelom iSQL relacionim operatorima Ovakav pristup je odl ičan za male projekte Direktanpristup SQL-u omogućava fino podešavanje svakog aspekta upita koj i se postavl jabazi podataka Osnovne mane su portabi lnost (prenosivost) i održavanje ovakvihsistema pogotovo ako se planira korišćenje apl ikaci je na duži rok Ovakvi sistemimasovno koriste sačuvane procedure (eng stored procedures) što znači da jeposlovna logika (eng busines logic) prebačena na samu bazu podataka

Slabo mapiranje objekata

Entiteti su predstavl jeni kao klase i mapiranje se radi ekspl icitno ka relacionimtabelama SQLJDBC je sakriven od poslovne logike korišćenjem poznatih šablona(patterns)

Umereno mapiranje objekata

Slobodni profesionalac

33

Broj 33

Dizajn apl ikaci ja se svodi na objektne modele SQL se generiše u vremekompaj l iranja (eng build-time) i l i u vreme izvršavanja (eng run-time) Specifikaci jaupita nad bazama podataka se radi na objektno ori jentisanom jeziku Ovakvisistemi se koriste u apl ikaci jama srednj ih vel ičina kod koj ih je bitna portabi lnostizmeđu razl ičitih sistema za upravl janje bazama podataka (DBMS)

Potpuno mapiranje objekata

Podržava sofisticirano objektno model iranje nasleđivanje i pol imorfizamEfikasnost dobi janja podataka je na visokom nivou i koriste se metode kao što sulenjo učitavanje (eng lazy loading) i strategi ja keširanja (eng caching) Implementaci ja je transparentna u apl ikaci jama Ovaj nivo je jako teško dostići Pojedincu su potrebne godine razvoja da postigne ovakvu fleksibi lnost pristupa imanipulaci ja u relacionim bazama podataka Upravo ovaj nivo se postiže ako sekoriste rešenja ORM-a kao što je Hajbernejt

Zašto ORMImplementaci ja ORM rešenja pogotovo ako seprvi put susrećete sa ovim modelom može dabude veoma frustrirajuća i malo teža zaimplementaci ju Kada ovo kažemo misl imo daprogramer koj i implementira ORM i hoće da istibude kval itetno urađen mora da posedujepredznanje objektno ori jentisanog programiranjai naprednih tehnika kao što su nasleđivanje ipol imorfizam

Ovo inicira fundamentalna pitanja

bull Pa zašto bi iko onda implementirao ovako nešto kompleksnobull Vredi l i truda upuštati se uopšte u ORM

Odgovor ni je jednostavan Dosadašnja iskustva u korišćenju ORM-a i njegovapopularnost već daju odgovor na postavl jeno pitanje Očigledno je da su benefitikoje donosi ovaj model veći od kompleksnosti njegove implementaci je a to su

Hibernate ORM

34

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Veća produktivnost

ORM smanjuje kol ičinu koda potrebnog za ostvarivanje trajnosti podataka Ovoomogućava programeru da vreme koje bi utrošio na ručno mapiranje podatakautroši na druge delove apl ikaci je

Lakše održavanje

Manje l ini ja koda osigurava bol ju razuml j ivost (i možda bol j i kval itet koda) jernaglašava apl ikaci jsku logiku ORM takođe ublažava uticaj nastal ih promena kaošto su promene u bazi strukturi tabela i td

Prenosivost

Većina ORM rešenja podržava sisteme za upravl janje bazama podataka raznihproizvođača ORM u potpunosti odvaja sloj apl ikaci je od stvarne SQL komunikaci jekoja se odvi ja u pozadini Time omogućava da se pišu apl ikaci je koje će moći da seizvršavaju na razl ičitim bazama podataka bez potrebe za dodatnim kodiranjemOva komunikaci ja se odvi ja sa programskim interfejsima ORM-a nezavisno oDBMS-u sa koj im je u bi lo kom momentu povezan ORM takođe omogućava lakšiprelaz sa manj ih na veće baze podataka tokom razvoja apl ikaci je

Uvidel i smo da trenutno postoje dve paradigme koje se bdquosudarajurdquo i koje supodjednako dobre same za sebe Relaciona paradigma potvrđuje da sve što jeizgrađeno na matematičkim osnovama je i trajno u smislu kval iteta koje posedujeU domenu u kom relaciona paradigma egzistira ona je ako je to u ovo vremeuopšte moguće tvrditi nezamenj iva

Ono što otvara pitanja i daje razlog za sumnju je koja je krajnja granicaupotrebl j ivosti relacione paradigme tj kol iki su kapaciteti složenosti zahtevaapl ikaci ja sa kojom može da se nosi Praksa je pokazala da je sasvim mogućebdquoizvestirdquo složene projekte - al i održavanje skalabi lnost razuml j ivost prenosivost -pitanja su sa koj im se relaciona paradigma teško može izboriti

Sa druge strane svoj habitat u informacionim tehnologi jama je našla i objektna

Slobodni profesionalac

35

Broj 33

paradigma Iako na prvi pogled ova dva modela nemaju ništa zajedničko - što je uneku ruku i istinito gledajući prirodu podataka koj im manipul išu - praksa jepokazala da su usko povezane i skoro da imaju sinaptičku vezu

Pitanje bdquokako spoj iti te sinapserdquo dovelo je do žučnih rasprava u uskim naučnimprogramersko-administratorskim krugovima Rodi l i su se razni model i a l i jedan jeiskočio i polako ulazi u široku primenu - a to je ORM Svoj im supti lnim pristupomproblemu nekompatibi lnih paradigmi nekako je uspeo da stvori taj nedostajućibdquoelektrični signalrdquo koj i ih je povezao Ovo je omogući lo da dve strane koje susvaka za sebe u svom domenu ostavi le i ostavl ja ju duboki trag u informacionimtehnologi jama sarađuju i donesu novi kval itet

Korisni l inkovi

[1] Hibernejt http hibernateorg[2] Viki http googlLlZulw[3] Tutori ja l i http googlCGzvnc

Hibernate ORM

36

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Autor Kriptopank

Šta su zapravo metapodaci Najkraće rečeno to su podaci o podacima i l iinformaci je koje opisuju podatke

Najpre da napravimo razl iku između podataka i metapodataka Podaci sunaprimer snimak (i l i transkript) vaših telefonskih razgovora sadržaj poruka kojepišete primate i l i šal jete podaci koje kačite na internet i l i preuzimate pretrageGuglom postovi na forumima dopisivanja na IRC kanal ima i l i drugim četovimaaudio i video snimci Skajp razgovora i tako dal je

Hajde da vidimo šta bi bi l i odgovarajući metapodaci za ove primere

bull Za telefonske razgovore metapodaci mogu biti lokaci ja učesnika brojevitelefona trajanje razgovora IP i MAC adresa

bull Za poruke četove i Skajp i l i druge video-audio komunikaci je sl ično je kao kodtelefonskih razgovora

To su samo metapodaci

Internet mreže i komunikacije

37

Broj 33

bull Kod foruma i pretraga Guglom ima malo manje metapodataka al i Gugl i raznisajtovi i forumi ionako čuvaju logove o korisnicima što su takođe metapodaci

Ako do sada koj im slučajem niste uvidel i opasnost po privatnost u ovimmetapodacima koje svako od nas smrtnika svakodnevno ostavl ja za sobom usvetu interneta i ostal ih digitalnih komunikaci ja nadamo se da će vas ovaj primermakar podstaći na razmišl janje a možda i na nešto više

Zamisl i te da neko (zvaćemo ga posmatrač) stalno sakupl ja metapodatke koje zasobom ostavl jate kao mrvice hleba Posmatrač recimo zna da se nalazite naautoputu nedaleko od famoznog Feketića da se ne krećete da zovete AMSS zatimšlep službu i možda taksi a l i ne zna šta ste razgovaral i I l i posmatrač vidi da steprvo zval i aerodrom Nikola Tesla pa odmah potom taksi a l i ne zna šta sterazgovaral i I l i posmatrač vidi da ste zval i prvo šest brojeva či je identitete takođezna pa vidi da se oni zatim kreću ka vama - GPS (eng Global Positioning System) pa zatim pica servis Mekdonalds i neku poznatu prodavnicu kineske hrane al i nezna šta ste razgovaral i

Posmatrač ne mora da bude mnogo pametan niti da prisluškuje vaše razgovore dabi shvatio šta se dešava i l i šta će se desiti Sasvim mu je jasno da vam je u prvomprimeru auto stao na autoputu zatim da ste se u drugom slučaju uputi l i naaerodrom i da možda putujete van zemlje i l i ste poslal i taksi po nekoga saaerodroma a da u trećem slučaju okupl jate žurku kod vas Više možete pogledatina http googl7vUjP

Iako su to bdquosamordquo metapodaci treba biti svestan da ti metapodaci o vama stvarajujednu digitalnu sl iku i l i bol je reći digitalni mozaik i na neki način vas jedinstvenoodređuju Pogotovo kada se planski prikupl ja ju na više nivoa (kompjuter pametnitelefon pametni automobi l i kreditna kartica) metapodaci čine vaš digitalniidentitet Al i da stvar bude još gora ta sl ika o vama ne mora nužno biti istinita jerse lako može lažirati Recimo možete zameniti telefone i l i automobi le sa nekimnamerno i l i slučajno i l i vam neko može jednostavno ukrasti telefon laptop i l ikreditnu karticu Zaniml j iv video http googlKO1fKf

Evo jednog primera koj i vas može uvući u vel ike nevol je Recimo da prolazitenekom zabačenom ul icom i da vam neprimetno ispadne telefon al i vi to neprimetite i nastavite dal je svoj im putem U toj ul ici se samo nekol iko minutakasni je desi neko ubistvo i vas pozovu u pol ici ju kao osumnj ičenog Ako koj im

To su samo metapodaci

38

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

slučajem nemate dobar al ibi i l i nemate svedoka da posvedoči da niste bi l i u tojul ici nego tamo gde ste stvarno bi l i a drugih svedoka nema - možete jako lošeproći Zaniml j ivi video http googlspS5OZ

Metapodaci se takođe nalaze i u faj lovimapodacima koje svakodnevnopreuzimamo sa interneta pravimo i koristimo Svaki tip podatka može da sadržiodređene metapodatke koj i bol je opisuju sam podatak kao naprimer vremenastanka podatka kol iko je vremena potrošeno za njegovo kreiranje kol iko putamu je pristupl jeno kad je poslednj i put pristupl jeno i tako dal je Iako se ovakvimetapodaci možda još uvek čine bezazlenim oni mogu sadržati i IP adresuračunara sa kog su napravl jeni GPS koordinate (najčešće PNG format sl ika satelefona) ko ga je napravio (l ičnost i l i kompani jaorganizaci ja) naziv uređaja imodel sa koga je napravl jen kao i MAC adresu uređaja mej l adresu kreatorasoftver koj im je napravl jen i tako dal je Sve ovo može mnogo da naškodiprivatnosti izvornog kreatora faj la pogotovo ako je sadržaj poverl j iv Ukol iko nekopresretne taj podatak na internetu može saznati od koga je potekao Da ovo možebiti katastrofa po kreatora takvog faj la može i lustrovati primer torenta Ako stedošl i u posed nekih sl ika i l i video materi ja la i l i teksta koj i žel i te da podel ite sasvetom preko nekog torent sajta morate taj podatak prvo očistiti odmetapodataka da ne bi svako ko skine to što ste okači l i saznao da vi stoj i te izatoga

Internet mreže i komunikacije

39

Broj 33

Ljudi se konstantno prate metapodaci se sakupl ja ju i to ni je sada već ništa novoal i možemo da se trudimo da iza sebe ostavl jamo malo manje nežel jenihmetapodataka i da ih takoreći čistimo iz podataka koje razmenjujemo Na srećupostoje programi koj i ovo dobro rade

Najpre je potrebno da vidimo koje sve metapodatke neki faj l sadrži kako bismo seuveri l i da ovi metapodaci stvarno postoje i da je faj l bezbedan nakon nj ihovogbrisanja

Ako koristite operativne sisteme GNULinuksa treba da iz terminala preuzmete iinstal irate program pod nazivom exiftool

sudo apt-get install exiftool

Ovaj program će nam pružiti uvid u sve metapodatke koje faj l sadrži Korišćenje jeiz terminala al i je zato veoma jednostavno samo ga pokrenite na sledeći način

exiftool File

i l i

exiftool putanjadofajlapočevodkorenogdirektorijuma

Dobićete prikaz metapodataka koje je program pronašao Sada je potrebno davidimo da l i je podatak bdquoprl javrdquo tj da l i ima u njemu nešto da se briše i da akoima iz njega sve nepotrebno obrišemo Tu će nam pomoći drugi program zvaniMAT (eng Metadata Anonymisation Toolkit) koga možete naći na sajtuhttps matboumorg i l i jednostavno za korisnike Ubuntua i Debi jana uSoftverskom centru i l i ga možete instal irati iz terminala

sudo apt-get install mat

MAT će proveriti da l i je podatak bdquoprl javrdquo i l i ne i za vas ga očistiti od nežel jenihmetapodataka

Kada očistite faj l on je spreman za del jenje sa drugima a vi ste bezbedni jer nikone može reći da je faj l potekao sa vašeg računara

To su samo metapodaci

40

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Autor Dejan Čugal j

GH Hardi bdquoPrava matematika nema uticaj na ratrdquo - odbrana matematičara1940 godina

Bi l Tat - britanski matematičar verovatno niste čul i za njega1942 godine je izveo ogroman poduhvat koj i je skratio rat dvegodine (barem po rečima Ajzenhauera) i spasio mi l ione životaNažalost njegova vel ičina je preminula 2002 godine obavi jenavelom tajne i nikada zvanično ni je priznato njegovo dostignuće

Tomi Flauers - bivši inženjer poštanskog saobraćaja pretvorio jematematičke ideje Tata u prvi računar a to ni je bio bdquoENIACrdquo1Preminuo je 1998 godine a pretpostavl jamo da nikada niste čul ini za njegovu vel ičinu

Ovi umni giganti bdquoBlečl i parkardquo omogući l i su Britani j i da dešifruje strogo poverl j ivumašinu koju je koristio Hitler da diriguje drugim svetskim ratom a to ni je bi labdquoENIGMArdquo nego nešto mnogo tajni je i značajni je Vel ika je verovatnoća da nistečul i ni za ovo Neki kažu da je to bio Hitlerov Blekberi (BlackBerry)

Izgubljeni heroji bdquoBlečli parkardquo

1 engl Electronic Numerical Integrator And Computer - prvidigitalni elektronski računar

Internet mreže i komunikacije

41

Broj 33

1939 godine bdquoBlečl i parkrdquo je postao ratni štab MI6 (britanske vojne obaveštajneslužbe) Do danas je procurelo u javnost i dokumentovano brojnim fi lmskimdokumentarcima samo da je tu Alan Tjuring uspeo da dešifruje nemačkumornaričku šifru poznatu kao bdquoENIGMArdquo i uvel iko doprineo pobedi saveznika a to jesamo deo priče koj i je ispričan

U Blečl i parku su bi la tri heroja AlanTjuring Bi l Tat i Tomi Flauers Od nj ihtroj ice jedino Alanu Tjuringu je priznat deozasluga za pobedu saveznika u Drugomsvetskom ratu Pregledom otkrivenihpodataka danas možemo da tvrdimo daje bdquoENIGMArdquo već sa početka drugogsvetskog rata bi la zastarela tehnologi ja Zbog toga je bi lo lako skinuti veo tajne sa

ovog uspeha heroja Blečl i parka

Izgubljeni heroji bdquoBlečli parkardquo

42

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Bi l Tat koj i je dešifrovao bdquoTANI sistemrdquo (TANI) i Tomi Flauers koj i je samo svojomintuici jom i znanjem sklopio prvi računar na svetu (bdquoKOLOSrdquo) u svrhu bržegdolaženja do informaci ja razbi jenog koda bdquoTANIrdquo tako da zastarelost šifrata budesvedena na minimum - radi l i su na novoj generaci j i mašina za šifrovanje Ovatehnologi ja je bi la prepoznata kao tehnologi ja budućnosti pa i danas iznadinformaci ja o tim tehnologi jama stoj i natpis bdquovrhunska tajnardquo (eng Top Secret) Upravo ovaj veo tajni oko šifrata bdquoTANIrdquo i prvog računara je rezultirao iskrivl jenjuistori je informatike

Za uspehe u prvim godinama rata je zaista zaslužno razbi janje bdquoENIGMArdquo šifrata ito ni je sporno al i krajem 1941 godine u etru planete se začuo novi zvuk To je bi lanova mašina za šifrovanje ni je bi la zasnovana na bdquoMorzeurdquo već je radi la naprincipu teleprintera

Jedna od kl jučnih ideja Hitlerovog ratovanja je bi la u vel ikoj mobi lnosti i brzomdelovanju trupa na terenu a da bi se to izvelo komunikaci ja je isto tako morala dabude u najmanju ruku putem radio signala

Razl ika je ogromna Razl ika je u kol ičini podataka koj i može da se prenese ovimbdquotajnimrdquo putem Prvi svetski rat je bio zaniml j iv jer su se šifrovane poruke baziralena rečima dok je Drugi u potpunosti otvorio vrata današnjoj kriptografi j i a to jematematika

Originalan nemački kocircdni naziv za ovaj šifrat bio je bdquoLORENCrdquo Britanska

Internet mreže i komunikacije

43

Broj 33

obaveštajna služba mu je dala nadimak bdquoTANIrdquo Čak ni dan danas ni je baš poznatokako je sve nastalo al i pouzdano se zna da je tajnu mašinu Hitler nazvaobdquoGehajmšrajberrdquo (nem Geheimschreiber) - mašina tajni

U srž i tehnologi ju šifrovanja bdquoLORENCrdquo šifrata nećemo ulaziti u ovom članku al iverujte nam na reč - ni je bi la jednostavna Može se pretpostaviti da je inspiraci jaŠenonovog 2 rada slučajnosti bi la upravo ova tehnologi ja iz Drugog svetskog rata

Ono čime se Treći rajh vodio je bdquosigurnardquo šifrovana veza koju niko ni je smeo dadešifruje Prenošenje šifrovanih poruka pomoću radio signala je dalo obaveštajnimslužbama mogućnost presretanja poruka poslatih radio talasima Da l i se ovo idanas dešava Imamo l i sigurnost u našim šifrovanim podacima današnj ice

Ono što je usledi lo nakon proboja ovog bdquoneuhvatl j ivogrdquo šifrata je upravo ono što jeprincip današnj ice kao neka vrsta protokola koj i mora da se ispoštuje uperfektnom šifarskom Šenonovom sistemu

1 NIKADA NIKADA NE KORISTITI DVA PUTA ISTI KLJUČ ZA ŠIFROVANJE2 NIKADA NIKADA KLJUČ NE SME DA SE ŠALJE ISTIM KOMUNIKACIONIM KANALOM

KAO PORUKA3 NIKADA NIKADA KLJUČ NE SME DA BUDE MANJ I NEGO ŠTO JE PORUKA (engl

2 Klod Elvud Šenon (eng Claude Elwood Shannon) (1916-2001) - Američkinaučnik i inženjer

Izgubljeni heroji bdquoBlečli parkardquo

44

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

one time pad) 4 NIKADA NIKADA NE SMEMO DA SAKRIVAMO SISTEM ŠIFROVANJA SVE MORA

DA JE OTVORENOG KOcircDA

Najveći propusti kriptologi je koj i su uočeni baš u Drugom svetskom ratu jesupokušaj sakrivanja sredstava koj im se generiše tajna poruka i nepoznavanjeŠenonovih krajnj ih granica informaci ja Kada kažemo bdquosredstvo i sakrivanjerdquomisl imo na algoritme Postavl ja se pitanje zašto je danas kriptologi ja sigurni ja negočetrdesetih i pedesetih godina prošlog veka

Danas uprkos tome što su algoritmi za kriptografi ju otvorenog kocircda tajnostinformaci ja je na višem nivou nego što je to bi lo dok je algoritam bio strogopoverl j iv Tajnost tajnih podataka se ne zasniva na tajnosti a lgoritama koj i generišutaj isti bdquotajni izlazrdquo (eng cipher text) nego u nemogućnosti matematičke inverznefunkci je koja bi šifrovan tekst otvori la Ovde se vidi da je svrha strukture otvorenogkocircda kao jednog od značajnih delova današnje kriptologi je ona koja ga činisigurnim i svima dostupnim

Sada kada se sa ove distance osvrnemo na Drugi svetski rat možemo videti kol ikosmo bi l i bl izu apokal ipse Naime Albert Ajnštajn je već 1944 godine imao urukama recept za nuklearnu bombu Šenon je mogao već u to vreme da nampredoči 100 siguran šifrat (tzv Hitlerovu super šifru) a l i ipak sreća nas jeposluži la da čovečanstvo tada ni je bi lo spremno da upotrebi svu raspoloživutehnologi ju

Albert Ajnštajn bdquoČetvrti svetski rat će se voditi tol jagamardquo

Zaboravl jeni heroj i Blečl i parka iako su odigral i važnu ulogu u pobedi saveznika usvetskom ratu postal i su žrtve bdquotop secretrdquo doktrine potpuno su zaboravl jeni inestal i su iz istori je

Zakl jučak ovog članka je da je ideologi ja otvorenog kocircda sasvim sigurno tu da nampomogne i da otvori vrata ka većoj sigurnosti novim idejama i kval itetu sameinfrastrukture sistema koju svi zajedno razvi jamo

Internet mreže i komunikacije

45

Broj 33

Autor Nikola Hardi

NabrajanjaBez brojeva

Za nabrajanje pojmova u Bimeru (eng Beamer) koristi se okruženje itemize aunutar tog okruženja možemo da dodajemo nove stavke pomoću item Primerizgleda ovako

beginitemizeitem Stavka Aitem Stavka Bitem Stavka C

enditemize

Sa brojevima

Postoje situaci je kada uz nabrajanje treba da stoje i redni brojevi - za to se koristienumerate okruženje a nove stavke se takođe dodaju pomoću item

beginenumerateitem Redni broj 1item Redni broj 2item Redni broj 3

endenumerate

prezentaci ja

Beamer (4 deo)

Sam svoj majstor

46

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

DefinicijeTreća situaci ja je nabrajanje parova termin - definici ja U tom slučaju se koristiokruženje description Već možete da pretpostavite kako se dodaju nove stavke

Primer

begindescriptionitem[Pojam A] Definicija izmišljenog pojma Aitem[Pojam B] Definicija izmišljenog pojma Bitem[Pojam C] Definicija izmišljenog pojma C

enddescription

Ostala podešavanja i zanimljivostiSva prethodna okruženja mogu da budu ugneždena jedno unutar drugog dotrećeg nivoa Treba biti pažl j iv jer sla jdovi vrlo lako mogu da postanu nečitl j ivi Osim toga moguće je izabrati i format oznake i l i rednih brojeva - na primer ovako

beginenumerate[I]beginenumarate[a)]

Takođe moguće je upravl jati pojavl j ivanjem pojedinih stavki na slajdovima Drugimrečima možemo da odredimo da se nabrajanja postepeno otkrivaju tako što ćemouz stavku dodati lt1-gt odnosno broj od kojeg slajda žel imo da se ta stavkapojavl ju je Tada će jedno nabrajanje biti bdquorazvučenordquo na više slajdovaJednostavni ja mogućnost je da u zaglavl je okruženja dodamo +- što znači dažel imo da se svakim slajdom otkriva po jedna nova stavka iz nabrajanja Znak bdquo-rdquo uoba primera znači da žel imo da se stavka pojavi na sledećem slajdu i da ostane

Sam svoj majstor

47

Broj 33

prisutna Možemo da izostavimo znak bdquo-rdquo i tada će stavka biti prisutna samo najednom slajdu i l i da napišemo raspon slajdova u koj ima žel imo da ta stavka budeprisutna

Rad sa kolonama i blokovimaDo sada su svi primeri podrazumeval i da je sadržaj napisan preko cele širineslajda al i Bimer (eng Beamer) ima i jednostavne mehanizme za razmeštanjesadržaja po kolonama Za rad sa kolonama se koristi okruženje columns unutarkojeg možemo da dodajemo nove kolone pomoću columnširina Sadržaj jemoguće potom pisati i van okruženja sa kolonama

U paru sa kolonama često se sreće i okruženje block koje se parametrizujenaslovom Primerom su i lustrovani i okruženje column i okruženje block

beginframebegincolumns

column05textwidthbeginblockNaslov levog blokaSadržaj u prvoj (levoj) koloni endblock

column05textwidthbeginblockNaslov desnog blokaSadržaj u drugoj (desnoj) koloni

endblockendcolumns

beginblockVan kolona

Beamer

48

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Tekst koji se nalazi ispod kolonaendblock

endframe

TabeleIako se u radu sa prezentaci jama sadržaj najčešće može uredno rasporeditipomoću kolona i nabrajanja nekada to ni je dovol jno jer su tabele pravi formatBimer podržava standardno Lateh (LaTeX) okruženje za rad sa tabelamaOkruženje za rad sa tabelama se zove tabular Pri kreiranju nove tabele moguće jepodesiti koje kolone će biti razdvojene l ini jom i da l i će nj ihov sadržaj biti centrirani l i uz levu i l i uz desnu ivicu Dodavanje novog reda se jednostavno radidodavanjem hline Lateh pruža zaista jako fleksibi lan rad sa tabelama i sigurno ćedoskočiti svim mogućim i nemogućim zamisl ima Potražite bi lo koje Lateh uputstvoza rad sa tabelama i radiće i sa Bimerom

beginframebegintabular | c | c | c | c |

hlineamp Ponedeljak amp Utorak amp Sreda hline

1 amp 16 amp 32 amp 64 hline2 amp 16 amp 128 amp 1024 hline3 amp 16 amp 512 amp 4096 hline

endtabularendframe

Sam svoj majstor

49

Broj 33

Beamer

Teoreme i istaknut tekstU nastavi su česta izlaganja teorema nj ihovih dokaza i primera U Bimer jeugrađena podrška za elegantno predstavl janje ove trojke Mehanizam takođepodržava postepeno otkrivanje sadržaja sla jda tako da slušaocima ne bude odmahotkriven dokaz teoreme Mehanizam za postepeno otkrivanje se kao i kodnabrajanja postiže pomoću bdquolt1-gtrdquo konstrukci je Evo kako to izgleda

beginframeframetitlePrimer teoreme

begintheoremlt1-gt Teorema kaže da su beamer prezentacijezanimljive

endtheorem

beginexamplelt2-gt Ovaj kod kreira slajd beamer prezentacijeendexample

beginprooflt3-gt Čestitamo stigli ste do kraja serijala o pravljenju beamer prezentacija

endproofendframe

50

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Za krajOvim člankom završavamo seri ja l o Bimeru Nadamo se da smo uspel i da vaszainteresujemo za ovu vrlo korisnu klasu Lateha Trudi l i smo se da vamprezentujemo najvažni je delove Bimera koje ćete najčešće koristiti pri l ikomkreiranja svoj ih prezentaci ja

Napominjemo još jednom da je Bimer samo jedna od klasa Lateha što znači da i zaBimer važi sve ono što ste već mogl i da pročitate u ovom časopisu kad smo pisal iseri ja l bdquoUvod u LaTeXrdquo (LiBRE brojevi 17 do 21) Štaviše ovaj seri ja l o Bimeru jebio nastavak upravo tog seri ja la U ovom seri ja lu nismo pisal i o samomformatiranju teksta u prezentaci jama jer se podrazumeva da važe ista pravi la kao iu Latehu a o tome smo pisal i u prethodnom seri ja lu

Hvala vam što ste prati l i ovaj seri ja l i žel imo vam puno uspeha u kreiranju Bimerprezentaci ja

Sam svoj majstor

51

Broj 33

Autor Nenad Marjanović

Kada smo se upoznal i sa podešavanj ima sistema i umrežavanjem vreme je za našprvi Biglbon Blek (BBB - eng BeagleBone Black) projekat Svakom od nas će ovajizazov dati razl ičite ideje a jedna od nj ih može biti i zaštita privatnosti internetkorisnika Nažalost u Srbi j i ne postoj i ni jedan izlazni tor server (eng node) i to jepomalo tužna sl ika s obzirom da govorimo o populaci j i od sedam mil ionastanovnika Al i ovu sl iku možemo promeniti udruženim snagama i za početakkreiranjem Tor transfer i izlaznog servera U ovde prikazanom grafikonufokusiraćemo se na bdquoRauter Brdquo tačku odnosno transfer server konfiguraci ju

BeagleBone Black Rev C

Vodič od prvog dana (3 deo) ndashBeagleBone Black kao Tor relej

Hardver

52

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Tor predstavl ja mrežu servera koj i se povezuju radi bol je enkripci je podataka izaštite IP adrese korisnika Naš ci l j je da danas postanemo deo ovog predivnogprojekta i da se nađemo na svetskoj karti Tor servera

Brzina interneta i zakonske regulativePotrebno je imati na umu nekol iko bitnih stvari

1 Naš server = naša odgovornost2 Obavezno naznačite da ste vi administrator a ne korisnik istog servera3 Da posedujete internet brzinu od 2 Mbs

Ako ispunjavamo tri navedena pravi la i odgovornosti možemo se posvetitiadministrativnim poslovima

Instalacija i podešavanjaU ovom primeru koristimo Debi jan Vizi (eng Wheezy) odnosno Debi jan 7 verzi juna našem BBB uređaju Vi možete testirati i druge Linuks platforme Prvododajemo izvornu bibl ioteku u etcaptsourceslist faj l pokretanjem sledećekomande u terminalu

echo deb httpdebtorprojectorgtorprojectorg wheezy main gt etcaptsourceslistdtorlist

Zatim dodajemo izvorni kl juč vršimo ažuriranje sistema i instal iramo tor i tor-arm(Tor monitoring sistem)

gpg --keyserver keysgnupgnet --recv 886DDD89gpg --export A3C4F0F979CAA22CDBA8F512EE8CBC9E886DDD89 | sudo apt-keyadd -apt-get updateapt-get install debtorprojectorg-keyring -yapt-get install tor tor-arm egrep screen -y

Ovim smo uspešno završi l i instalaci ju Tor servera i sistema za monitoring odnosnonadgledanja našeg Tor servera Sledećom komandom radimo na podešavanj imaTor servera koja se nalaze u etctortorrc faj lu Obratite pažnju i izvršite potrebne

Hardver

53

Broj 33

izmenu u pol j ima IP adresa (eng Address) nadimka (eng Nickname) i kontaktpodataka (eng ContactInfo) pre pokretanja ove komande Kopiramo i pokrećemokomandu u celosti u terminalu

egrep -v ^(|$) etctortorrcORPort 443Address 19216811Nickname LibreTorRelayRelayBandwidthRate 100 KBRelayBandwidthBurst 120 KBContactInfo ltvi at gmail dot comgt irPort 8080DirPortFrontPage etctortorhtmlExitPolicy reject

Detal je o svim vrednostima nećemo iznositi u ovom broju LiBRE časopisa al ićemo o nj ima pisati u sledećem u kome ćemo pričati o zaštiti Tor servera imogućnosti podešavanja određenih izlaznih pravi la (eng ExitPolicy)

Nakon ovoga možemo primetiti da se u folderu etctor ne nalazi torhtml faj l Ovaj faj l ni je od vel ikog značaja i možete ga l ično napraviti i l i preuzeti jednu kopi ju- naprimer sa sledeće lokaci je

cp usrsharedoctortorhtml etctortorhtml

Opcije i Tor Arm monitoringDa bismo ispravno koristi l i Tor Arm potrebno je urediti još jednom etctortorrcfaj l i restartovati servis

echo -e ldquoDisableDebuggerAttachment 0n AvoidDiskWritesrdquo gtgt etctortorrcsudo service tor reload

Ukol iko žel ite koristiti Tor Arm za nadgledanje aktivnosti na serveru pokreniteprogram screen kl iknite na bdquoEnterrdquo i kucajte sudo -u debian-tor arm Naekranu ćete imati sl ičan prikaz

BeagleBone Black

54

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Hardver

55

Broj 33

Da bismo napusti l i screen program koristimo Ctrl + a + d i na taj način kada sesledeći put pri javimo na server kucamo samo screen -r u terminalu - i naći ćemose ponovo na čuvenom Tor Arm monitoring ekranu

Nakon svake promene konfiguracionih faj lova ako slučajno nismo nešto podesi l ikako treba restartujemo servise

U sledećem broju časopisa govorićemo o minimalnim podešavanj ima ikonfigurisanju izlaznog Tor servera (eng Tor Exit Node) opci jama sigurnosti isl ičnim detal j ima u vezi sa našim prvim projektom Do čitanja u sledećem broju

BeagleBone Black

LUGoNS BarCamp 4subota 7 mart 2015 godine

Četvrti LUGoNS-ov Barkemp (BarCamp) održaće se u Novom Sadu usubotu 7 marta 2015 godine na Fakultetu tehničkih nauka sa početkomu 12 časova

Ulaz je slobodan

Poziv za predaju radovaLUGoNS poziva sve zainteresovane da pošal ju svoje radove (predavanjaprezentaci je radionice i diskusi je) do 28 februara 2015 godine

Oblasti iz koj ih možete da pri javite vaše radove su

bull Slobodan softverbull Zaniml j iv hardverbull Hakerski zakonibull Sigurnosne noćne morebull Anonimnost i privatnost na internetubull Duboki veb (eng Deep Web)bull Soci ja lne mrežebull Soci ja lni inženjeringbull Hakovanje mobi lnih uređajabull Internet u oblaku (eng Clouds) ndash hakovanje razbi janje i neočekivano korišćenjebull DPI (eng deep packet inspection)bull Mreža i mrežna neutralnost ndash vlasništvo cenzura nadmudrivanje i pol itika bdquodefaktordquo standarda

bull Programiranje i programski jezici

Nemojte se ustručavati i slobodno nam se javite ako imate rad na gore navedenei l i sl ične teme koj i smatrate interesantnim

Stranica za predaju radova nalazi se na https events lugonsorgp=1658

Page 26: LiBRE 33 Lat

26

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Autor Dejan Maglov

Projekti slobodnog softvera obično počinju kao projekti pojedinca i l i male grupeprogramera a koj i rade na razvoju softvera či j i je ci l j da zadovol j i neke od nj ihovihl ičnih potreba Projekat će se smatrati uspešnim ukol iko se šira zajednicazainteresuje za njega nakon što prepozna korisnost softvera ne samo za pojedincekoj i su započel i projekat već i za širu zajednicu Kada je u pitanju slobodni softvervremenom je postala stalna praksa da se zajednica umeša u razvoj projekataDobri projekti sami privlače zajednicu l judi koj i su zainteresovani za nj ih i ona uvećini slučajeva preuzima na sebe testiranje pobol jšanje funkcionalnosti održavanje i tehničku podršku projekta

Zajednice slobodnog softvera mogu da se okupe oko projekta slobodnog softverapo teritori ja lnom principu i l i da nastanu kombinaci jom ovih principa

Primeri

bull LiBRE projekat okupl ja zajednicu oko projekta bez teritori ja lnog ograničenjabull LUGoNS (Linux User Group of Novi Sad) je zajednica korisnika Linuksa poteritori ja lnom principu bez obzira na konkretan projekat

bull Ubuntu-rs zajednica koja je kombinaci ja okupl janja zajednice oko konkretnogprojekta (Ubuntu) i teritori ja lnog principa koj i se ograničava na teritori ju Srbi je

Ova sinergi ja projekata i korisnika slobodnog softvera ima više prednosti i zakorisnike i za projekat Projekat se na ovaj način brže razvi ja dobi ja na

U potrazi za idealnom distribucijom

Socijalni kriterijumi za izbor idealnedistribucije (6 deo)

Oslobađanje

27

Broj 33

funkcionalnosti greške se brzo ispravl ja ju i td Korisnici dobi ja ju osećaj dapripadaju grupi druže se sa istomišl jenicima učestvuju u promoci j i kval itetnihpojedinaca itd

Dve najvažni je uloge lokalnih zajednica za GNULinuks distribuci je su

1 pružanje tehničke podrške i edukaci je na maternjem jeziku2 rad na lokal izaci j i i pri lagođavanje distribuci je lokalnim potrebama

Informaci ja da postoje lokalne zajednice slobodnog softvera je od naročitogznačaja za početnike i korisnike koj i nedovol jno dobro znaju strane jezike(naročito engleski jezik) Ako izuzmemo komerci ja lne projekte otvorenog koda(Red Het SUSE) ne postoje zvanične škole i kursevi za slobodni softver Zaedukaci ju početnika je uglavnom zadužena zajednica a jasno je da je učenje namaternjem jeziku uvek lakše nego na bi lo kom drugom stranom ma kol ikodobro ga poznajete

Forumi i viki stranice lokalnih zajednica su prave bibl ioteke u koj ima korisnicimogu da nađu većinu odgovora na svoja pitanja a za sva ostala tu su forumi iIRC kanal i zajednica na koj ima uvek ima nekoga i koj i imaju već gotova rešenjaza vel iki broj problema

U potrazi za idealnom distribucijom

28

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Lokalne zajednice kao kriterijum za izbor idealnedistribucijePočetnicima i korisnicima koj i ne vladaju dobro engleskim jezikom toplopreporučujemo da biraju GNULinuks distribuci je koje imaju aktivnu lokalnuzajednicu Ovladavanje novim operativnim sistemom je mnogo lakše ukol iko vambdquoleđa čuvardquo lokalna zajednica na koju se uvek možete osloniti

Već smo spomenul i da su popularni je GNULinuks distribuci je namenjenepočetnicima Slučaj je isti i sa lokalnim zajednicama okupl jenim oko nj ih Ovomeđutim ne znači da je kval itet usluga koje nude manje popularne lokalnezajednice okupl jene oko distribuci ja namenjenih napredni j im korisnicima loši j i Manje popularne distribuci je okupl ja ju manje l judi a l i zato oni poseduju većeznanje Iskustvo sa zajednicama okupl jenim oko slobodnog softvera je uglavnompozitivno i ukazuje na to da kval itet usluga koje one nude korisniku ni je uslovl jenpopularnošću i masovnošću zajednice nego iskl jučivo njenom (ne)aktivnošću

U svakom slučaju dosadašnj i saveti za izbor idealne distribuci je važe i dal jeSoci ja lni aspekt slobodnog softvera je samo dodatni faktor koj i vam može pomoćipri donošenju odluke kada se dvoumite između nekol iko mogućih rešenja

Još uvek ne postoj i na jednom mestu potpuni i ažurirani spisak svih aktivnihsrpskih zajednica Nešto najbl iže tome može da se nađe na adresihttps pulsslobodewordpresscom Za informaci je o nekim drugim lokalnimzajednicama koje možda postoje al i nisu na ovom spisku moraćete sami dapretražite internet

Lokalizacija kao kriterijum za izborZa lokal izaci ju GNULinuks distribuci ja i GNU programa odgovorni su pojedinci ilokalne zajednice Sasvim sol idnu srpsku lokal izaci ju mogu imati i projekti koj iuopšte nemaju svoju lokalnu zajednicu a isto tako lošu lokal izaci ju mogu imati iprojekti sa dobrom lokalnom zajednicom Sve je stvar prioriteta zajednica iaktivnosti pojedinaca

Pravu i kontrol isanu lokal izaci ju može imati samo lokalni projekat Ovakvihprojekata u Srbi j i ima malo i teško se probi ja ju čak i u lokalu u konkurenci j isvetskih projekata Istina je da mnoge veće GNULinuks distribuci je imaju srpskulokal izaci

Oslobađanje

29

Broj 33

ju u ponudi pa se možda sl ični lokalni projekti koj i su usmereni samo na striktnulokal izaci ju smatraju nepotrebnima Uzvodna lokal izaci ja u slučaju Srbi je vrlo čestobude veoma loše čak nakaradno sprovedena Jedna polovina programa jelokal izovana srpskom ćiri l icom a druga latinicom Ako postoj i još delova sistemakoj i uopšte ni je lokal izovan onda se pojavl ju ju i delovi programa koj i su naengleskom Zato ćemo se vratiti na prvu rečenicu ovog pasusa i ponovo utvrditi dasamo lokalni projekat može potpuno kontrol isati pravu srpsku lokal izaci ju

U Srbi j i za sada imamo dva aktivna projekta GNULinuks distribuci je ndash TriOS(http triosrs) i Serbian (http wwwdebian-srbi ja iz rspserbianhtml) Obaprojekta su mlada i imaju svoj ih prednosti i mana Kome treba lokal izovanoperativni sistem može da proba jedan od ova dva projekta

U potrazi za idealnom distribucijom

30

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Iako ove dve domaće distribuci je nisu baš naj idealni je interesantno je probati ih iuporediti sa drugim distribuci jama

Za kraj serijalaNamera nam je bi la da kroz ovaj seri ja l o kriteri jumima pri izboru idealnedistribuci je definišemo većinu kriteri juma pri izboru i pokažemo zašto je teškoodgovoriti na jednostavno pitanje bdquoKoju mi distribuci ju preporučujeterdquo

Ni na samom kraju nismo dal i konkretan odgovor na pitanje koja je idealnaGNULinuks distribuci ja Suviše je subjektivnih ocena da bi se mogao datikonkretan odgovor Smatramo da je jako teško napisati neki algoritam izbora pokriteri jumima koje smo identifikoval i i definisal i a možda je čak i nemoguće poštose izlazi stalno menjaju Izlazi iz tog algoritma su GNULinuks distribuci je koj ih izdana u dan ima sve više a i one stare se stalno menjaju

Sam seri ja l bdquoU potrazi za idealnom distribuci jomrdquo neće biti završen samo zato štose više neće baviti kriteri jumima pri izboru nego će pokušati da predstavl jaGNULinuks distribuci je koje su po nečemu bdquoidealnerdquo

Oslobađanje

31

Broj 33

ORM

Autor Dejan Čugal j

Object relation mapping (ORM)

ORM (eng Object RelationMapping) je način postizanja traj-nosti (eng persistence) objekataunutar relacionih baza podatakaModel deluje kao posrednik nalogičkom delu apl ikaci je Automat-ski presl ikava podatke iz objekata ubazu i nazad na zahtev apl ikaci jeDa bismo objasni l i kako ovo sveradi moramo da vam predstavimoORM frejmvork (eng framework)programa otvorenog koda -Hajbernejt (eng Hibernate -http hibernateorgorm)

Šta je ORMUkratko ORM je automatizovano transparentno presl ikavanje objekatakorišćenjem metapodataka koj i opisuju mapiranje veze između objekta i baze

ORM (2 deo)

Slobodni profesionalac

32

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

podataka u apl ikaci jama koje su napisane u objektno ori jentisanim programskimjezicima Apl ikaci ja komunicira sa ORM-om preko njegovog vlastitog API-ja (engapplication programming interface) i određenih objekata Ova komunikaci ja jepotpuno odvojena od komunikaci je koja se odvi ja između ORM-a i baze podatakapreko SQL-a i DBC-a

Da bi se postigla i dostigla potpuna snaga ORM-a u apl ikaci j i koju projektujemonikako se ne sme iskl jučiti znanje relacionih modela SQL jezika te poznavanjeDBMS-a u kome se radi ORM ni je ništa drugo do srednj i sloj između gorepomenutih tehnologi ja i objektno ori jentisanog programiranja kao što smo to dosada već više puta naglasi l i

Implementacija ORM-aPostoje razl ičiti načini implementaci je ORM-a Mark Fasl (Mark Fussel) je 1997definisao četiri nivoa

1 bdquoČistrdquo relacioni način2 Slabo mapiranje objekata3 Umereno mapiranje objekata4 Potpuno mapiranje objekata

bdquoČistrdquo relacioni način

Cela apl ikaci ja ukl jučujući i korisnički interfejs dizajnirana je relacionim modelom iSQL relacionim operatorima Ovakav pristup je odl ičan za male projekte Direktanpristup SQL-u omogućava fino podešavanje svakog aspekta upita koj i se postavl jabazi podataka Osnovne mane su portabi lnost (prenosivost) i održavanje ovakvihsistema pogotovo ako se planira korišćenje apl ikaci je na duži rok Ovakvi sistemimasovno koriste sačuvane procedure (eng stored procedures) što znači da jeposlovna logika (eng busines logic) prebačena na samu bazu podataka

Slabo mapiranje objekata

Entiteti su predstavl jeni kao klase i mapiranje se radi ekspl icitno ka relacionimtabelama SQLJDBC je sakriven od poslovne logike korišćenjem poznatih šablona(patterns)

Umereno mapiranje objekata

Slobodni profesionalac

33

Broj 33

Dizajn apl ikaci ja se svodi na objektne modele SQL se generiše u vremekompaj l iranja (eng build-time) i l i u vreme izvršavanja (eng run-time) Specifikaci jaupita nad bazama podataka se radi na objektno ori jentisanom jeziku Ovakvisistemi se koriste u apl ikaci jama srednj ih vel ičina kod koj ih je bitna portabi lnostizmeđu razl ičitih sistema za upravl janje bazama podataka (DBMS)

Potpuno mapiranje objekata

Podržava sofisticirano objektno model iranje nasleđivanje i pol imorfizamEfikasnost dobi janja podataka je na visokom nivou i koriste se metode kao što sulenjo učitavanje (eng lazy loading) i strategi ja keširanja (eng caching) Implementaci ja je transparentna u apl ikaci jama Ovaj nivo je jako teško dostići Pojedincu su potrebne godine razvoja da postigne ovakvu fleksibi lnost pristupa imanipulaci ja u relacionim bazama podataka Upravo ovaj nivo se postiže ako sekoriste rešenja ORM-a kao što je Hajbernejt

Zašto ORMImplementaci ja ORM rešenja pogotovo ako seprvi put susrećete sa ovim modelom može dabude veoma frustrirajuća i malo teža zaimplementaci ju Kada ovo kažemo misl imo daprogramer koj i implementira ORM i hoće da istibude kval itetno urađen mora da posedujepredznanje objektno ori jentisanog programiranjai naprednih tehnika kao što su nasleđivanje ipol imorfizam

Ovo inicira fundamentalna pitanja

bull Pa zašto bi iko onda implementirao ovako nešto kompleksnobull Vredi l i truda upuštati se uopšte u ORM

Odgovor ni je jednostavan Dosadašnja iskustva u korišćenju ORM-a i njegovapopularnost već daju odgovor na postavl jeno pitanje Očigledno je da su benefitikoje donosi ovaj model veći od kompleksnosti njegove implementaci je a to su

Hibernate ORM

34

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Veća produktivnost

ORM smanjuje kol ičinu koda potrebnog za ostvarivanje trajnosti podataka Ovoomogućava programeru da vreme koje bi utrošio na ručno mapiranje podatakautroši na druge delove apl ikaci je

Lakše održavanje

Manje l ini ja koda osigurava bol ju razuml j ivost (i možda bol j i kval itet koda) jernaglašava apl ikaci jsku logiku ORM takođe ublažava uticaj nastal ih promena kaošto su promene u bazi strukturi tabela i td

Prenosivost

Većina ORM rešenja podržava sisteme za upravl janje bazama podataka raznihproizvođača ORM u potpunosti odvaja sloj apl ikaci je od stvarne SQL komunikaci jekoja se odvi ja u pozadini Time omogućava da se pišu apl ikaci je koje će moći da seizvršavaju na razl ičitim bazama podataka bez potrebe za dodatnim kodiranjemOva komunikaci ja se odvi ja sa programskim interfejsima ORM-a nezavisno oDBMS-u sa koj im je u bi lo kom momentu povezan ORM takođe omogućava lakšiprelaz sa manj ih na veće baze podataka tokom razvoja apl ikaci je

Uvidel i smo da trenutno postoje dve paradigme koje se bdquosudarajurdquo i koje supodjednako dobre same za sebe Relaciona paradigma potvrđuje da sve što jeizgrađeno na matematičkim osnovama je i trajno u smislu kval iteta koje posedujeU domenu u kom relaciona paradigma egzistira ona je ako je to u ovo vremeuopšte moguće tvrditi nezamenj iva

Ono što otvara pitanja i daje razlog za sumnju je koja je krajnja granicaupotrebl j ivosti relacione paradigme tj kol iki su kapaciteti složenosti zahtevaapl ikaci ja sa kojom može da se nosi Praksa je pokazala da je sasvim mogućebdquoizvestirdquo složene projekte - al i održavanje skalabi lnost razuml j ivost prenosivost -pitanja su sa koj im se relaciona paradigma teško može izboriti

Sa druge strane svoj habitat u informacionim tehnologi jama je našla i objektna

Slobodni profesionalac

35

Broj 33

paradigma Iako na prvi pogled ova dva modela nemaju ništa zajedničko - što je uneku ruku i istinito gledajući prirodu podataka koj im manipul išu - praksa jepokazala da su usko povezane i skoro da imaju sinaptičku vezu

Pitanje bdquokako spoj iti te sinapserdquo dovelo je do žučnih rasprava u uskim naučnimprogramersko-administratorskim krugovima Rodi l i su se razni model i a l i jedan jeiskočio i polako ulazi u široku primenu - a to je ORM Svoj im supti lnim pristupomproblemu nekompatibi lnih paradigmi nekako je uspeo da stvori taj nedostajućibdquoelektrični signalrdquo koj i ih je povezao Ovo je omogući lo da dve strane koje susvaka za sebe u svom domenu ostavi le i ostavl ja ju duboki trag u informacionimtehnologi jama sarađuju i donesu novi kval itet

Korisni l inkovi

[1] Hibernejt http hibernateorg[2] Viki http googlLlZulw[3] Tutori ja l i http googlCGzvnc

Hibernate ORM

36

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Autor Kriptopank

Šta su zapravo metapodaci Najkraće rečeno to su podaci o podacima i l iinformaci je koje opisuju podatke

Najpre da napravimo razl iku između podataka i metapodataka Podaci sunaprimer snimak (i l i transkript) vaših telefonskih razgovora sadržaj poruka kojepišete primate i l i šal jete podaci koje kačite na internet i l i preuzimate pretrageGuglom postovi na forumima dopisivanja na IRC kanal ima i l i drugim četovimaaudio i video snimci Skajp razgovora i tako dal je

Hajde da vidimo šta bi bi l i odgovarajući metapodaci za ove primere

bull Za telefonske razgovore metapodaci mogu biti lokaci ja učesnika brojevitelefona trajanje razgovora IP i MAC adresa

bull Za poruke četove i Skajp i l i druge video-audio komunikaci je sl ično je kao kodtelefonskih razgovora

To su samo metapodaci

Internet mreže i komunikacije

37

Broj 33

bull Kod foruma i pretraga Guglom ima malo manje metapodataka al i Gugl i raznisajtovi i forumi ionako čuvaju logove o korisnicima što su takođe metapodaci

Ako do sada koj im slučajem niste uvidel i opasnost po privatnost u ovimmetapodacima koje svako od nas smrtnika svakodnevno ostavl ja za sobom usvetu interneta i ostal ih digitalnih komunikaci ja nadamo se da će vas ovaj primermakar podstaći na razmišl janje a možda i na nešto više

Zamisl i te da neko (zvaćemo ga posmatrač) stalno sakupl ja metapodatke koje zasobom ostavl jate kao mrvice hleba Posmatrač recimo zna da se nalazite naautoputu nedaleko od famoznog Feketića da se ne krećete da zovete AMSS zatimšlep službu i možda taksi a l i ne zna šta ste razgovaral i I l i posmatrač vidi da steprvo zval i aerodrom Nikola Tesla pa odmah potom taksi a l i ne zna šta sterazgovaral i I l i posmatrač vidi da ste zval i prvo šest brojeva či je identitete takođezna pa vidi da se oni zatim kreću ka vama - GPS (eng Global Positioning System) pa zatim pica servis Mekdonalds i neku poznatu prodavnicu kineske hrane al i nezna šta ste razgovaral i

Posmatrač ne mora da bude mnogo pametan niti da prisluškuje vaše razgovore dabi shvatio šta se dešava i l i šta će se desiti Sasvim mu je jasno da vam je u prvomprimeru auto stao na autoputu zatim da ste se u drugom slučaju uputi l i naaerodrom i da možda putujete van zemlje i l i ste poslal i taksi po nekoga saaerodroma a da u trećem slučaju okupl jate žurku kod vas Više možete pogledatina http googl7vUjP

Iako su to bdquosamordquo metapodaci treba biti svestan da ti metapodaci o vama stvarajujednu digitalnu sl iku i l i bol je reći digitalni mozaik i na neki način vas jedinstvenoodređuju Pogotovo kada se planski prikupl ja ju na više nivoa (kompjuter pametnitelefon pametni automobi l i kreditna kartica) metapodaci čine vaš digitalniidentitet Al i da stvar bude još gora ta sl ika o vama ne mora nužno biti istinita jerse lako može lažirati Recimo možete zameniti telefone i l i automobi le sa nekimnamerno i l i slučajno i l i vam neko može jednostavno ukrasti telefon laptop i l ikreditnu karticu Zaniml j iv video http googlKO1fKf

Evo jednog primera koj i vas može uvući u vel ike nevol je Recimo da prolazitenekom zabačenom ul icom i da vam neprimetno ispadne telefon al i vi to neprimetite i nastavite dal je svoj im putem U toj ul ici se samo nekol iko minutakasni je desi neko ubistvo i vas pozovu u pol ici ju kao osumnj ičenog Ako koj im

To su samo metapodaci

38

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

slučajem nemate dobar al ibi i l i nemate svedoka da posvedoči da niste bi l i u tojul ici nego tamo gde ste stvarno bi l i a drugih svedoka nema - možete jako lošeproći Zaniml j ivi video http googlspS5OZ

Metapodaci se takođe nalaze i u faj lovimapodacima koje svakodnevnopreuzimamo sa interneta pravimo i koristimo Svaki tip podatka može da sadržiodređene metapodatke koj i bol je opisuju sam podatak kao naprimer vremenastanka podatka kol iko je vremena potrošeno za njegovo kreiranje kol iko putamu je pristupl jeno kad je poslednj i put pristupl jeno i tako dal je Iako se ovakvimetapodaci možda još uvek čine bezazlenim oni mogu sadržati i IP adresuračunara sa kog su napravl jeni GPS koordinate (najčešće PNG format sl ika satelefona) ko ga je napravio (l ičnost i l i kompani jaorganizaci ja) naziv uređaja imodel sa koga je napravl jen kao i MAC adresu uređaja mej l adresu kreatorasoftver koj im je napravl jen i tako dal je Sve ovo može mnogo da naškodiprivatnosti izvornog kreatora faj la pogotovo ako je sadržaj poverl j iv Ukol iko nekopresretne taj podatak na internetu može saznati od koga je potekao Da ovo možebiti katastrofa po kreatora takvog faj la može i lustrovati primer torenta Ako stedošl i u posed nekih sl ika i l i video materi ja la i l i teksta koj i žel i te da podel ite sasvetom preko nekog torent sajta morate taj podatak prvo očistiti odmetapodataka da ne bi svako ko skine to što ste okači l i saznao da vi stoj i te izatoga

Internet mreže i komunikacije

39

Broj 33

Ljudi se konstantno prate metapodaci se sakupl ja ju i to ni je sada već ništa novoal i možemo da se trudimo da iza sebe ostavl jamo malo manje nežel jenihmetapodataka i da ih takoreći čistimo iz podataka koje razmenjujemo Na srećupostoje programi koj i ovo dobro rade

Najpre je potrebno da vidimo koje sve metapodatke neki faj l sadrži kako bismo seuveri l i da ovi metapodaci stvarno postoje i da je faj l bezbedan nakon nj ihovogbrisanja

Ako koristite operativne sisteme GNULinuksa treba da iz terminala preuzmete iinstal irate program pod nazivom exiftool

sudo apt-get install exiftool

Ovaj program će nam pružiti uvid u sve metapodatke koje faj l sadrži Korišćenje jeiz terminala al i je zato veoma jednostavno samo ga pokrenite na sledeći način

exiftool File

i l i

exiftool putanjadofajlapočevodkorenogdirektorijuma

Dobićete prikaz metapodataka koje je program pronašao Sada je potrebno davidimo da l i je podatak bdquoprl javrdquo tj da l i ima u njemu nešto da se briše i da akoima iz njega sve nepotrebno obrišemo Tu će nam pomoći drugi program zvaniMAT (eng Metadata Anonymisation Toolkit) koga možete naći na sajtuhttps matboumorg i l i jednostavno za korisnike Ubuntua i Debi jana uSoftverskom centru i l i ga možete instal irati iz terminala

sudo apt-get install mat

MAT će proveriti da l i je podatak bdquoprl javrdquo i l i ne i za vas ga očistiti od nežel jenihmetapodataka

Kada očistite faj l on je spreman za del jenje sa drugima a vi ste bezbedni jer nikone može reći da je faj l potekao sa vašeg računara

To su samo metapodaci

40

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Autor Dejan Čugal j

GH Hardi bdquoPrava matematika nema uticaj na ratrdquo - odbrana matematičara1940 godina

Bi l Tat - britanski matematičar verovatno niste čul i za njega1942 godine je izveo ogroman poduhvat koj i je skratio rat dvegodine (barem po rečima Ajzenhauera) i spasio mi l ione životaNažalost njegova vel ičina je preminula 2002 godine obavi jenavelom tajne i nikada zvanično ni je priznato njegovo dostignuće

Tomi Flauers - bivši inženjer poštanskog saobraćaja pretvorio jematematičke ideje Tata u prvi računar a to ni je bio bdquoENIACrdquo1Preminuo je 1998 godine a pretpostavl jamo da nikada niste čul ini za njegovu vel ičinu

Ovi umni giganti bdquoBlečl i parkardquo omogući l i su Britani j i da dešifruje strogo poverl j ivumašinu koju je koristio Hitler da diriguje drugim svetskim ratom a to ni je bi labdquoENIGMArdquo nego nešto mnogo tajni je i značajni je Vel ika je verovatnoća da nistečul i ni za ovo Neki kažu da je to bio Hitlerov Blekberi (BlackBerry)

Izgubljeni heroji bdquoBlečli parkardquo

1 engl Electronic Numerical Integrator And Computer - prvidigitalni elektronski računar

Internet mreže i komunikacije

41

Broj 33

1939 godine bdquoBlečl i parkrdquo je postao ratni štab MI6 (britanske vojne obaveštajneslužbe) Do danas je procurelo u javnost i dokumentovano brojnim fi lmskimdokumentarcima samo da je tu Alan Tjuring uspeo da dešifruje nemačkumornaričku šifru poznatu kao bdquoENIGMArdquo i uvel iko doprineo pobedi saveznika a to jesamo deo priče koj i je ispričan

U Blečl i parku su bi la tri heroja AlanTjuring Bi l Tat i Tomi Flauers Od nj ihtroj ice jedino Alanu Tjuringu je priznat deozasluga za pobedu saveznika u Drugomsvetskom ratu Pregledom otkrivenihpodataka danas možemo da tvrdimo daje bdquoENIGMArdquo već sa početka drugogsvetskog rata bi la zastarela tehnologi ja Zbog toga je bi lo lako skinuti veo tajne sa

ovog uspeha heroja Blečl i parka

Izgubljeni heroji bdquoBlečli parkardquo

42

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Bi l Tat koj i je dešifrovao bdquoTANI sistemrdquo (TANI) i Tomi Flauers koj i je samo svojomintuici jom i znanjem sklopio prvi računar na svetu (bdquoKOLOSrdquo) u svrhu bržegdolaženja do informaci ja razbi jenog koda bdquoTANIrdquo tako da zastarelost šifrata budesvedena na minimum - radi l i su na novoj generaci j i mašina za šifrovanje Ovatehnologi ja je bi la prepoznata kao tehnologi ja budućnosti pa i danas iznadinformaci ja o tim tehnologi jama stoj i natpis bdquovrhunska tajnardquo (eng Top Secret) Upravo ovaj veo tajni oko šifrata bdquoTANIrdquo i prvog računara je rezultirao iskrivl jenjuistori je informatike

Za uspehe u prvim godinama rata je zaista zaslužno razbi janje bdquoENIGMArdquo šifrata ito ni je sporno al i krajem 1941 godine u etru planete se začuo novi zvuk To je bi lanova mašina za šifrovanje ni je bi la zasnovana na bdquoMorzeurdquo već je radi la naprincipu teleprintera

Jedna od kl jučnih ideja Hitlerovog ratovanja je bi la u vel ikoj mobi lnosti i brzomdelovanju trupa na terenu a da bi se to izvelo komunikaci ja je isto tako morala dabude u najmanju ruku putem radio signala

Razl ika je ogromna Razl ika je u kol ičini podataka koj i može da se prenese ovimbdquotajnimrdquo putem Prvi svetski rat je bio zaniml j iv jer su se šifrovane poruke baziralena rečima dok je Drugi u potpunosti otvorio vrata današnjoj kriptografi j i a to jematematika

Originalan nemački kocircdni naziv za ovaj šifrat bio je bdquoLORENCrdquo Britanska

Internet mreže i komunikacije

43

Broj 33

obaveštajna služba mu je dala nadimak bdquoTANIrdquo Čak ni dan danas ni je baš poznatokako je sve nastalo al i pouzdano se zna da je tajnu mašinu Hitler nazvaobdquoGehajmšrajberrdquo (nem Geheimschreiber) - mašina tajni

U srž i tehnologi ju šifrovanja bdquoLORENCrdquo šifrata nećemo ulaziti u ovom članku al iverujte nam na reč - ni je bi la jednostavna Može se pretpostaviti da je inspiraci jaŠenonovog 2 rada slučajnosti bi la upravo ova tehnologi ja iz Drugog svetskog rata

Ono čime se Treći rajh vodio je bdquosigurnardquo šifrovana veza koju niko ni je smeo dadešifruje Prenošenje šifrovanih poruka pomoću radio signala je dalo obaveštajnimslužbama mogućnost presretanja poruka poslatih radio talasima Da l i se ovo idanas dešava Imamo l i sigurnost u našim šifrovanim podacima današnj ice

Ono što je usledi lo nakon proboja ovog bdquoneuhvatl j ivogrdquo šifrata je upravo ono što jeprincip današnj ice kao neka vrsta protokola koj i mora da se ispoštuje uperfektnom šifarskom Šenonovom sistemu

1 NIKADA NIKADA NE KORISTITI DVA PUTA ISTI KLJUČ ZA ŠIFROVANJE2 NIKADA NIKADA KLJUČ NE SME DA SE ŠALJE ISTIM KOMUNIKACIONIM KANALOM

KAO PORUKA3 NIKADA NIKADA KLJUČ NE SME DA BUDE MANJ I NEGO ŠTO JE PORUKA (engl

2 Klod Elvud Šenon (eng Claude Elwood Shannon) (1916-2001) - Američkinaučnik i inženjer

Izgubljeni heroji bdquoBlečli parkardquo

44

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

one time pad) 4 NIKADA NIKADA NE SMEMO DA SAKRIVAMO SISTEM ŠIFROVANJA SVE MORA

DA JE OTVORENOG KOcircDA

Najveći propusti kriptologi je koj i su uočeni baš u Drugom svetskom ratu jesupokušaj sakrivanja sredstava koj im se generiše tajna poruka i nepoznavanjeŠenonovih krajnj ih granica informaci ja Kada kažemo bdquosredstvo i sakrivanjerdquomisl imo na algoritme Postavl ja se pitanje zašto je danas kriptologi ja sigurni ja negočetrdesetih i pedesetih godina prošlog veka

Danas uprkos tome što su algoritmi za kriptografi ju otvorenog kocircda tajnostinformaci ja je na višem nivou nego što je to bi lo dok je algoritam bio strogopoverl j iv Tajnost tajnih podataka se ne zasniva na tajnosti a lgoritama koj i generišutaj isti bdquotajni izlazrdquo (eng cipher text) nego u nemogućnosti matematičke inverznefunkci je koja bi šifrovan tekst otvori la Ovde se vidi da je svrha strukture otvorenogkocircda kao jednog od značajnih delova današnje kriptologi je ona koja ga činisigurnim i svima dostupnim

Sada kada se sa ove distance osvrnemo na Drugi svetski rat možemo videti kol ikosmo bi l i bl izu apokal ipse Naime Albert Ajnštajn je već 1944 godine imao urukama recept za nuklearnu bombu Šenon je mogao već u to vreme da nampredoči 100 siguran šifrat (tzv Hitlerovu super šifru) a l i ipak sreća nas jeposluži la da čovečanstvo tada ni je bi lo spremno da upotrebi svu raspoloživutehnologi ju

Albert Ajnštajn bdquoČetvrti svetski rat će se voditi tol jagamardquo

Zaboravl jeni heroj i Blečl i parka iako su odigral i važnu ulogu u pobedi saveznika usvetskom ratu postal i su žrtve bdquotop secretrdquo doktrine potpuno su zaboravl jeni inestal i su iz istori je

Zakl jučak ovog članka je da je ideologi ja otvorenog kocircda sasvim sigurno tu da nampomogne i da otvori vrata ka većoj sigurnosti novim idejama i kval itetu sameinfrastrukture sistema koju svi zajedno razvi jamo

Internet mreže i komunikacije

45

Broj 33

Autor Nikola Hardi

NabrajanjaBez brojeva

Za nabrajanje pojmova u Bimeru (eng Beamer) koristi se okruženje itemize aunutar tog okruženja možemo da dodajemo nove stavke pomoću item Primerizgleda ovako

beginitemizeitem Stavka Aitem Stavka Bitem Stavka C

enditemize

Sa brojevima

Postoje situaci je kada uz nabrajanje treba da stoje i redni brojevi - za to se koristienumerate okruženje a nove stavke se takođe dodaju pomoću item

beginenumerateitem Redni broj 1item Redni broj 2item Redni broj 3

endenumerate

prezentaci ja

Beamer (4 deo)

Sam svoj majstor

46

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

DefinicijeTreća situaci ja je nabrajanje parova termin - definici ja U tom slučaju se koristiokruženje description Već možete da pretpostavite kako se dodaju nove stavke

Primer

begindescriptionitem[Pojam A] Definicija izmišljenog pojma Aitem[Pojam B] Definicija izmišljenog pojma Bitem[Pojam C] Definicija izmišljenog pojma C

enddescription

Ostala podešavanja i zanimljivostiSva prethodna okruženja mogu da budu ugneždena jedno unutar drugog dotrećeg nivoa Treba biti pažl j iv jer sla jdovi vrlo lako mogu da postanu nečitl j ivi Osim toga moguće je izabrati i format oznake i l i rednih brojeva - na primer ovako

beginenumerate[I]beginenumarate[a)]

Takođe moguće je upravl jati pojavl j ivanjem pojedinih stavki na slajdovima Drugimrečima možemo da odredimo da se nabrajanja postepeno otkrivaju tako što ćemouz stavku dodati lt1-gt odnosno broj od kojeg slajda žel imo da se ta stavkapojavl ju je Tada će jedno nabrajanje biti bdquorazvučenordquo na više slajdovaJednostavni ja mogućnost je da u zaglavl je okruženja dodamo +- što znači dažel imo da se svakim slajdom otkriva po jedna nova stavka iz nabrajanja Znak bdquo-rdquo uoba primera znači da žel imo da se stavka pojavi na sledećem slajdu i da ostane

Sam svoj majstor

47

Broj 33

prisutna Možemo da izostavimo znak bdquo-rdquo i tada će stavka biti prisutna samo najednom slajdu i l i da napišemo raspon slajdova u koj ima žel imo da ta stavka budeprisutna

Rad sa kolonama i blokovimaDo sada su svi primeri podrazumeval i da je sadržaj napisan preko cele širineslajda al i Bimer (eng Beamer) ima i jednostavne mehanizme za razmeštanjesadržaja po kolonama Za rad sa kolonama se koristi okruženje columns unutarkojeg možemo da dodajemo nove kolone pomoću columnširina Sadržaj jemoguće potom pisati i van okruženja sa kolonama

U paru sa kolonama često se sreće i okruženje block koje se parametrizujenaslovom Primerom su i lustrovani i okruženje column i okruženje block

beginframebegincolumns

column05textwidthbeginblockNaslov levog blokaSadržaj u prvoj (levoj) koloni endblock

column05textwidthbeginblockNaslov desnog blokaSadržaj u drugoj (desnoj) koloni

endblockendcolumns

beginblockVan kolona

Beamer

48

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Tekst koji se nalazi ispod kolonaendblock

endframe

TabeleIako se u radu sa prezentaci jama sadržaj najčešće može uredno rasporeditipomoću kolona i nabrajanja nekada to ni je dovol jno jer su tabele pravi formatBimer podržava standardno Lateh (LaTeX) okruženje za rad sa tabelamaOkruženje za rad sa tabelama se zove tabular Pri kreiranju nove tabele moguće jepodesiti koje kolone će biti razdvojene l ini jom i da l i će nj ihov sadržaj biti centrirani l i uz levu i l i uz desnu ivicu Dodavanje novog reda se jednostavno radidodavanjem hline Lateh pruža zaista jako fleksibi lan rad sa tabelama i sigurno ćedoskočiti svim mogućim i nemogućim zamisl ima Potražite bi lo koje Lateh uputstvoza rad sa tabelama i radiće i sa Bimerom

beginframebegintabular | c | c | c | c |

hlineamp Ponedeljak amp Utorak amp Sreda hline

1 amp 16 amp 32 amp 64 hline2 amp 16 amp 128 amp 1024 hline3 amp 16 amp 512 amp 4096 hline

endtabularendframe

Sam svoj majstor

49

Broj 33

Beamer

Teoreme i istaknut tekstU nastavi su česta izlaganja teorema nj ihovih dokaza i primera U Bimer jeugrađena podrška za elegantno predstavl janje ove trojke Mehanizam takođepodržava postepeno otkrivanje sadržaja sla jda tako da slušaocima ne bude odmahotkriven dokaz teoreme Mehanizam za postepeno otkrivanje se kao i kodnabrajanja postiže pomoću bdquolt1-gtrdquo konstrukci je Evo kako to izgleda

beginframeframetitlePrimer teoreme

begintheoremlt1-gt Teorema kaže da su beamer prezentacijezanimljive

endtheorem

beginexamplelt2-gt Ovaj kod kreira slajd beamer prezentacijeendexample

beginprooflt3-gt Čestitamo stigli ste do kraja serijala o pravljenju beamer prezentacija

endproofendframe

50

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Za krajOvim člankom završavamo seri ja l o Bimeru Nadamo se da smo uspel i da vaszainteresujemo za ovu vrlo korisnu klasu Lateha Trudi l i smo se da vamprezentujemo najvažni je delove Bimera koje ćete najčešće koristiti pri l ikomkreiranja svoj ih prezentaci ja

Napominjemo još jednom da je Bimer samo jedna od klasa Lateha što znači da i zaBimer važi sve ono što ste već mogl i da pročitate u ovom časopisu kad smo pisal iseri ja l bdquoUvod u LaTeXrdquo (LiBRE brojevi 17 do 21) Štaviše ovaj seri ja l o Bimeru jebio nastavak upravo tog seri ja la U ovom seri ja lu nismo pisal i o samomformatiranju teksta u prezentaci jama jer se podrazumeva da važe ista pravi la kao iu Latehu a o tome smo pisal i u prethodnom seri ja lu

Hvala vam što ste prati l i ovaj seri ja l i žel imo vam puno uspeha u kreiranju Bimerprezentaci ja

Sam svoj majstor

51

Broj 33

Autor Nenad Marjanović

Kada smo se upoznal i sa podešavanj ima sistema i umrežavanjem vreme je za našprvi Biglbon Blek (BBB - eng BeagleBone Black) projekat Svakom od nas će ovajizazov dati razl ičite ideje a jedna od nj ih može biti i zaštita privatnosti internetkorisnika Nažalost u Srbi j i ne postoj i ni jedan izlazni tor server (eng node) i to jepomalo tužna sl ika s obzirom da govorimo o populaci j i od sedam mil ionastanovnika Al i ovu sl iku možemo promeniti udruženim snagama i za početakkreiranjem Tor transfer i izlaznog servera U ovde prikazanom grafikonufokusiraćemo se na bdquoRauter Brdquo tačku odnosno transfer server konfiguraci ju

BeagleBone Black Rev C

Vodič od prvog dana (3 deo) ndashBeagleBone Black kao Tor relej

Hardver

52

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Tor predstavl ja mrežu servera koj i se povezuju radi bol je enkripci je podataka izaštite IP adrese korisnika Naš ci l j je da danas postanemo deo ovog predivnogprojekta i da se nađemo na svetskoj karti Tor servera

Brzina interneta i zakonske regulativePotrebno je imati na umu nekol iko bitnih stvari

1 Naš server = naša odgovornost2 Obavezno naznačite da ste vi administrator a ne korisnik istog servera3 Da posedujete internet brzinu od 2 Mbs

Ako ispunjavamo tri navedena pravi la i odgovornosti možemo se posvetitiadministrativnim poslovima

Instalacija i podešavanjaU ovom primeru koristimo Debi jan Vizi (eng Wheezy) odnosno Debi jan 7 verzi juna našem BBB uređaju Vi možete testirati i druge Linuks platforme Prvododajemo izvornu bibl ioteku u etcaptsourceslist faj l pokretanjem sledećekomande u terminalu

echo deb httpdebtorprojectorgtorprojectorg wheezy main gt etcaptsourceslistdtorlist

Zatim dodajemo izvorni kl juč vršimo ažuriranje sistema i instal iramo tor i tor-arm(Tor monitoring sistem)

gpg --keyserver keysgnupgnet --recv 886DDD89gpg --export A3C4F0F979CAA22CDBA8F512EE8CBC9E886DDD89 | sudo apt-keyadd -apt-get updateapt-get install debtorprojectorg-keyring -yapt-get install tor tor-arm egrep screen -y

Ovim smo uspešno završi l i instalaci ju Tor servera i sistema za monitoring odnosnonadgledanja našeg Tor servera Sledećom komandom radimo na podešavanj imaTor servera koja se nalaze u etctortorrc faj lu Obratite pažnju i izvršite potrebne

Hardver

53

Broj 33

izmenu u pol j ima IP adresa (eng Address) nadimka (eng Nickname) i kontaktpodataka (eng ContactInfo) pre pokretanja ove komande Kopiramo i pokrećemokomandu u celosti u terminalu

egrep -v ^(|$) etctortorrcORPort 443Address 19216811Nickname LibreTorRelayRelayBandwidthRate 100 KBRelayBandwidthBurst 120 KBContactInfo ltvi at gmail dot comgt irPort 8080DirPortFrontPage etctortorhtmlExitPolicy reject

Detal je o svim vrednostima nećemo iznositi u ovom broju LiBRE časopisa al ićemo o nj ima pisati u sledećem u kome ćemo pričati o zaštiti Tor servera imogućnosti podešavanja određenih izlaznih pravi la (eng ExitPolicy)

Nakon ovoga možemo primetiti da se u folderu etctor ne nalazi torhtml faj l Ovaj faj l ni je od vel ikog značaja i možete ga l ično napraviti i l i preuzeti jednu kopi ju- naprimer sa sledeće lokaci je

cp usrsharedoctortorhtml etctortorhtml

Opcije i Tor Arm monitoringDa bismo ispravno koristi l i Tor Arm potrebno je urediti još jednom etctortorrcfaj l i restartovati servis

echo -e ldquoDisableDebuggerAttachment 0n AvoidDiskWritesrdquo gtgt etctortorrcsudo service tor reload

Ukol iko žel ite koristiti Tor Arm za nadgledanje aktivnosti na serveru pokreniteprogram screen kl iknite na bdquoEnterrdquo i kucajte sudo -u debian-tor arm Naekranu ćete imati sl ičan prikaz

BeagleBone Black

54

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Hardver

55

Broj 33

Da bismo napusti l i screen program koristimo Ctrl + a + d i na taj način kada sesledeći put pri javimo na server kucamo samo screen -r u terminalu - i naći ćemose ponovo na čuvenom Tor Arm monitoring ekranu

Nakon svake promene konfiguracionih faj lova ako slučajno nismo nešto podesi l ikako treba restartujemo servise

U sledećem broju časopisa govorićemo o minimalnim podešavanj ima ikonfigurisanju izlaznog Tor servera (eng Tor Exit Node) opci jama sigurnosti isl ičnim detal j ima u vezi sa našim prvim projektom Do čitanja u sledećem broju

BeagleBone Black

LUGoNS BarCamp 4subota 7 mart 2015 godine

Četvrti LUGoNS-ov Barkemp (BarCamp) održaće se u Novom Sadu usubotu 7 marta 2015 godine na Fakultetu tehničkih nauka sa početkomu 12 časova

Ulaz je slobodan

Poziv za predaju radovaLUGoNS poziva sve zainteresovane da pošal ju svoje radove (predavanjaprezentaci je radionice i diskusi je) do 28 februara 2015 godine

Oblasti iz koj ih možete da pri javite vaše radove su

bull Slobodan softverbull Zaniml j iv hardverbull Hakerski zakonibull Sigurnosne noćne morebull Anonimnost i privatnost na internetubull Duboki veb (eng Deep Web)bull Soci ja lne mrežebull Soci ja lni inženjeringbull Hakovanje mobi lnih uređajabull Internet u oblaku (eng Clouds) ndash hakovanje razbi janje i neočekivano korišćenjebull DPI (eng deep packet inspection)bull Mreža i mrežna neutralnost ndash vlasništvo cenzura nadmudrivanje i pol itika bdquodefaktordquo standarda

bull Programiranje i programski jezici

Nemojte se ustručavati i slobodno nam se javite ako imate rad na gore navedenei l i sl ične teme koj i smatrate interesantnim

Stranica za predaju radova nalazi se na https events lugonsorgp=1658

Page 27: LiBRE 33 Lat

27

Broj 33

funkcionalnosti greške se brzo ispravl ja ju i td Korisnici dobi ja ju osećaj dapripadaju grupi druže se sa istomišl jenicima učestvuju u promoci j i kval itetnihpojedinaca itd

Dve najvažni je uloge lokalnih zajednica za GNULinuks distribuci je su

1 pružanje tehničke podrške i edukaci je na maternjem jeziku2 rad na lokal izaci j i i pri lagođavanje distribuci je lokalnim potrebama

Informaci ja da postoje lokalne zajednice slobodnog softvera je od naročitogznačaja za početnike i korisnike koj i nedovol jno dobro znaju strane jezike(naročito engleski jezik) Ako izuzmemo komerci ja lne projekte otvorenog koda(Red Het SUSE) ne postoje zvanične škole i kursevi za slobodni softver Zaedukaci ju početnika je uglavnom zadužena zajednica a jasno je da je učenje namaternjem jeziku uvek lakše nego na bi lo kom drugom stranom ma kol ikodobro ga poznajete

Forumi i viki stranice lokalnih zajednica su prave bibl ioteke u koj ima korisnicimogu da nađu većinu odgovora na svoja pitanja a za sva ostala tu su forumi iIRC kanal i zajednica na koj ima uvek ima nekoga i koj i imaju već gotova rešenjaza vel iki broj problema

U potrazi za idealnom distribucijom

28

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Lokalne zajednice kao kriterijum za izbor idealnedistribucijePočetnicima i korisnicima koj i ne vladaju dobro engleskim jezikom toplopreporučujemo da biraju GNULinuks distribuci je koje imaju aktivnu lokalnuzajednicu Ovladavanje novim operativnim sistemom je mnogo lakše ukol iko vambdquoleđa čuvardquo lokalna zajednica na koju se uvek možete osloniti

Već smo spomenul i da su popularni je GNULinuks distribuci je namenjenepočetnicima Slučaj je isti i sa lokalnim zajednicama okupl jenim oko nj ih Ovomeđutim ne znači da je kval itet usluga koje nude manje popularne lokalnezajednice okupl jene oko distribuci ja namenjenih napredni j im korisnicima loši j i Manje popularne distribuci je okupl ja ju manje l judi a l i zato oni poseduju većeznanje Iskustvo sa zajednicama okupl jenim oko slobodnog softvera je uglavnompozitivno i ukazuje na to da kval itet usluga koje one nude korisniku ni je uslovl jenpopularnošću i masovnošću zajednice nego iskl jučivo njenom (ne)aktivnošću

U svakom slučaju dosadašnj i saveti za izbor idealne distribuci je važe i dal jeSoci ja lni aspekt slobodnog softvera je samo dodatni faktor koj i vam može pomoćipri donošenju odluke kada se dvoumite između nekol iko mogućih rešenja

Još uvek ne postoj i na jednom mestu potpuni i ažurirani spisak svih aktivnihsrpskih zajednica Nešto najbl iže tome može da se nađe na adresihttps pulsslobodewordpresscom Za informaci je o nekim drugim lokalnimzajednicama koje možda postoje al i nisu na ovom spisku moraćete sami dapretražite internet

Lokalizacija kao kriterijum za izborZa lokal izaci ju GNULinuks distribuci ja i GNU programa odgovorni su pojedinci ilokalne zajednice Sasvim sol idnu srpsku lokal izaci ju mogu imati i projekti koj iuopšte nemaju svoju lokalnu zajednicu a isto tako lošu lokal izaci ju mogu imati iprojekti sa dobrom lokalnom zajednicom Sve je stvar prioriteta zajednica iaktivnosti pojedinaca

Pravu i kontrol isanu lokal izaci ju može imati samo lokalni projekat Ovakvihprojekata u Srbi j i ima malo i teško se probi ja ju čak i u lokalu u konkurenci j isvetskih projekata Istina je da mnoge veće GNULinuks distribuci je imaju srpskulokal izaci

Oslobađanje

29

Broj 33

ju u ponudi pa se možda sl ični lokalni projekti koj i su usmereni samo na striktnulokal izaci ju smatraju nepotrebnima Uzvodna lokal izaci ja u slučaju Srbi je vrlo čestobude veoma loše čak nakaradno sprovedena Jedna polovina programa jelokal izovana srpskom ćiri l icom a druga latinicom Ako postoj i još delova sistemakoj i uopšte ni je lokal izovan onda se pojavl ju ju i delovi programa koj i su naengleskom Zato ćemo se vratiti na prvu rečenicu ovog pasusa i ponovo utvrditi dasamo lokalni projekat može potpuno kontrol isati pravu srpsku lokal izaci ju

U Srbi j i za sada imamo dva aktivna projekta GNULinuks distribuci je ndash TriOS(http triosrs) i Serbian (http wwwdebian-srbi ja iz rspserbianhtml) Obaprojekta su mlada i imaju svoj ih prednosti i mana Kome treba lokal izovanoperativni sistem može da proba jedan od ova dva projekta

U potrazi za idealnom distribucijom

30

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Iako ove dve domaće distribuci je nisu baš naj idealni je interesantno je probati ih iuporediti sa drugim distribuci jama

Za kraj serijalaNamera nam je bi la da kroz ovaj seri ja l o kriteri jumima pri izboru idealnedistribuci je definišemo većinu kriteri juma pri izboru i pokažemo zašto je teškoodgovoriti na jednostavno pitanje bdquoKoju mi distribuci ju preporučujeterdquo

Ni na samom kraju nismo dal i konkretan odgovor na pitanje koja je idealnaGNULinuks distribuci ja Suviše je subjektivnih ocena da bi se mogao datikonkretan odgovor Smatramo da je jako teško napisati neki algoritam izbora pokriteri jumima koje smo identifikoval i i definisal i a možda je čak i nemoguće poštose izlazi stalno menjaju Izlazi iz tog algoritma su GNULinuks distribuci je koj ih izdana u dan ima sve više a i one stare se stalno menjaju

Sam seri ja l bdquoU potrazi za idealnom distribuci jomrdquo neće biti završen samo zato štose više neće baviti kriteri jumima pri izboru nego će pokušati da predstavl jaGNULinuks distribuci je koje su po nečemu bdquoidealnerdquo

Oslobađanje

31

Broj 33

ORM

Autor Dejan Čugal j

Object relation mapping (ORM)

ORM (eng Object RelationMapping) je način postizanja traj-nosti (eng persistence) objekataunutar relacionih baza podatakaModel deluje kao posrednik nalogičkom delu apl ikaci je Automat-ski presl ikava podatke iz objekata ubazu i nazad na zahtev apl ikaci jeDa bismo objasni l i kako ovo sveradi moramo da vam predstavimoORM frejmvork (eng framework)programa otvorenog koda -Hajbernejt (eng Hibernate -http hibernateorgorm)

Šta je ORMUkratko ORM je automatizovano transparentno presl ikavanje objekatakorišćenjem metapodataka koj i opisuju mapiranje veze između objekta i baze

ORM (2 deo)

Slobodni profesionalac

32

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

podataka u apl ikaci jama koje su napisane u objektno ori jentisanim programskimjezicima Apl ikaci ja komunicira sa ORM-om preko njegovog vlastitog API-ja (engapplication programming interface) i određenih objekata Ova komunikaci ja jepotpuno odvojena od komunikaci je koja se odvi ja između ORM-a i baze podatakapreko SQL-a i DBC-a

Da bi se postigla i dostigla potpuna snaga ORM-a u apl ikaci j i koju projektujemonikako se ne sme iskl jučiti znanje relacionih modela SQL jezika te poznavanjeDBMS-a u kome se radi ORM ni je ništa drugo do srednj i sloj između gorepomenutih tehnologi ja i objektno ori jentisanog programiranja kao što smo to dosada već više puta naglasi l i

Implementacija ORM-aPostoje razl ičiti načini implementaci je ORM-a Mark Fasl (Mark Fussel) je 1997definisao četiri nivoa

1 bdquoČistrdquo relacioni način2 Slabo mapiranje objekata3 Umereno mapiranje objekata4 Potpuno mapiranje objekata

bdquoČistrdquo relacioni način

Cela apl ikaci ja ukl jučujući i korisnički interfejs dizajnirana je relacionim modelom iSQL relacionim operatorima Ovakav pristup je odl ičan za male projekte Direktanpristup SQL-u omogućava fino podešavanje svakog aspekta upita koj i se postavl jabazi podataka Osnovne mane su portabi lnost (prenosivost) i održavanje ovakvihsistema pogotovo ako se planira korišćenje apl ikaci je na duži rok Ovakvi sistemimasovno koriste sačuvane procedure (eng stored procedures) što znači da jeposlovna logika (eng busines logic) prebačena na samu bazu podataka

Slabo mapiranje objekata

Entiteti su predstavl jeni kao klase i mapiranje se radi ekspl icitno ka relacionimtabelama SQLJDBC je sakriven od poslovne logike korišćenjem poznatih šablona(patterns)

Umereno mapiranje objekata

Slobodni profesionalac

33

Broj 33

Dizajn apl ikaci ja se svodi na objektne modele SQL se generiše u vremekompaj l iranja (eng build-time) i l i u vreme izvršavanja (eng run-time) Specifikaci jaupita nad bazama podataka se radi na objektno ori jentisanom jeziku Ovakvisistemi se koriste u apl ikaci jama srednj ih vel ičina kod koj ih je bitna portabi lnostizmeđu razl ičitih sistema za upravl janje bazama podataka (DBMS)

Potpuno mapiranje objekata

Podržava sofisticirano objektno model iranje nasleđivanje i pol imorfizamEfikasnost dobi janja podataka je na visokom nivou i koriste se metode kao što sulenjo učitavanje (eng lazy loading) i strategi ja keširanja (eng caching) Implementaci ja je transparentna u apl ikaci jama Ovaj nivo je jako teško dostići Pojedincu su potrebne godine razvoja da postigne ovakvu fleksibi lnost pristupa imanipulaci ja u relacionim bazama podataka Upravo ovaj nivo se postiže ako sekoriste rešenja ORM-a kao što je Hajbernejt

Zašto ORMImplementaci ja ORM rešenja pogotovo ako seprvi put susrećete sa ovim modelom može dabude veoma frustrirajuća i malo teža zaimplementaci ju Kada ovo kažemo misl imo daprogramer koj i implementira ORM i hoće da istibude kval itetno urađen mora da posedujepredznanje objektno ori jentisanog programiranjai naprednih tehnika kao što su nasleđivanje ipol imorfizam

Ovo inicira fundamentalna pitanja

bull Pa zašto bi iko onda implementirao ovako nešto kompleksnobull Vredi l i truda upuštati se uopšte u ORM

Odgovor ni je jednostavan Dosadašnja iskustva u korišćenju ORM-a i njegovapopularnost već daju odgovor na postavl jeno pitanje Očigledno je da su benefitikoje donosi ovaj model veći od kompleksnosti njegove implementaci je a to su

Hibernate ORM

34

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Veća produktivnost

ORM smanjuje kol ičinu koda potrebnog za ostvarivanje trajnosti podataka Ovoomogućava programeru da vreme koje bi utrošio na ručno mapiranje podatakautroši na druge delove apl ikaci je

Lakše održavanje

Manje l ini ja koda osigurava bol ju razuml j ivost (i možda bol j i kval itet koda) jernaglašava apl ikaci jsku logiku ORM takođe ublažava uticaj nastal ih promena kaošto su promene u bazi strukturi tabela i td

Prenosivost

Većina ORM rešenja podržava sisteme za upravl janje bazama podataka raznihproizvođača ORM u potpunosti odvaja sloj apl ikaci je od stvarne SQL komunikaci jekoja se odvi ja u pozadini Time omogućava da se pišu apl ikaci je koje će moći da seizvršavaju na razl ičitim bazama podataka bez potrebe za dodatnim kodiranjemOva komunikaci ja se odvi ja sa programskim interfejsima ORM-a nezavisno oDBMS-u sa koj im je u bi lo kom momentu povezan ORM takođe omogućava lakšiprelaz sa manj ih na veće baze podataka tokom razvoja apl ikaci je

Uvidel i smo da trenutno postoje dve paradigme koje se bdquosudarajurdquo i koje supodjednako dobre same za sebe Relaciona paradigma potvrđuje da sve što jeizgrađeno na matematičkim osnovama je i trajno u smislu kval iteta koje posedujeU domenu u kom relaciona paradigma egzistira ona je ako je to u ovo vremeuopšte moguće tvrditi nezamenj iva

Ono što otvara pitanja i daje razlog za sumnju je koja je krajnja granicaupotrebl j ivosti relacione paradigme tj kol iki su kapaciteti složenosti zahtevaapl ikaci ja sa kojom može da se nosi Praksa je pokazala da je sasvim mogućebdquoizvestirdquo složene projekte - al i održavanje skalabi lnost razuml j ivost prenosivost -pitanja su sa koj im se relaciona paradigma teško može izboriti

Sa druge strane svoj habitat u informacionim tehnologi jama je našla i objektna

Slobodni profesionalac

35

Broj 33

paradigma Iako na prvi pogled ova dva modela nemaju ništa zajedničko - što je uneku ruku i istinito gledajući prirodu podataka koj im manipul išu - praksa jepokazala da su usko povezane i skoro da imaju sinaptičku vezu

Pitanje bdquokako spoj iti te sinapserdquo dovelo je do žučnih rasprava u uskim naučnimprogramersko-administratorskim krugovima Rodi l i su se razni model i a l i jedan jeiskočio i polako ulazi u široku primenu - a to je ORM Svoj im supti lnim pristupomproblemu nekompatibi lnih paradigmi nekako je uspeo da stvori taj nedostajućibdquoelektrični signalrdquo koj i ih je povezao Ovo je omogući lo da dve strane koje susvaka za sebe u svom domenu ostavi le i ostavl ja ju duboki trag u informacionimtehnologi jama sarađuju i donesu novi kval itet

Korisni l inkovi

[1] Hibernejt http hibernateorg[2] Viki http googlLlZulw[3] Tutori ja l i http googlCGzvnc

Hibernate ORM

36

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Autor Kriptopank

Šta su zapravo metapodaci Najkraće rečeno to su podaci o podacima i l iinformaci je koje opisuju podatke

Najpre da napravimo razl iku između podataka i metapodataka Podaci sunaprimer snimak (i l i transkript) vaših telefonskih razgovora sadržaj poruka kojepišete primate i l i šal jete podaci koje kačite na internet i l i preuzimate pretrageGuglom postovi na forumima dopisivanja na IRC kanal ima i l i drugim četovimaaudio i video snimci Skajp razgovora i tako dal je

Hajde da vidimo šta bi bi l i odgovarajući metapodaci za ove primere

bull Za telefonske razgovore metapodaci mogu biti lokaci ja učesnika brojevitelefona trajanje razgovora IP i MAC adresa

bull Za poruke četove i Skajp i l i druge video-audio komunikaci je sl ično je kao kodtelefonskih razgovora

To su samo metapodaci

Internet mreže i komunikacije

37

Broj 33

bull Kod foruma i pretraga Guglom ima malo manje metapodataka al i Gugl i raznisajtovi i forumi ionako čuvaju logove o korisnicima što su takođe metapodaci

Ako do sada koj im slučajem niste uvidel i opasnost po privatnost u ovimmetapodacima koje svako od nas smrtnika svakodnevno ostavl ja za sobom usvetu interneta i ostal ih digitalnih komunikaci ja nadamo se da će vas ovaj primermakar podstaći na razmišl janje a možda i na nešto više

Zamisl i te da neko (zvaćemo ga posmatrač) stalno sakupl ja metapodatke koje zasobom ostavl jate kao mrvice hleba Posmatrač recimo zna da se nalazite naautoputu nedaleko od famoznog Feketića da se ne krećete da zovete AMSS zatimšlep službu i možda taksi a l i ne zna šta ste razgovaral i I l i posmatrač vidi da steprvo zval i aerodrom Nikola Tesla pa odmah potom taksi a l i ne zna šta sterazgovaral i I l i posmatrač vidi da ste zval i prvo šest brojeva či je identitete takođezna pa vidi da se oni zatim kreću ka vama - GPS (eng Global Positioning System) pa zatim pica servis Mekdonalds i neku poznatu prodavnicu kineske hrane al i nezna šta ste razgovaral i

Posmatrač ne mora da bude mnogo pametan niti da prisluškuje vaše razgovore dabi shvatio šta se dešava i l i šta će se desiti Sasvim mu je jasno da vam je u prvomprimeru auto stao na autoputu zatim da ste se u drugom slučaju uputi l i naaerodrom i da možda putujete van zemlje i l i ste poslal i taksi po nekoga saaerodroma a da u trećem slučaju okupl jate žurku kod vas Više možete pogledatina http googl7vUjP

Iako su to bdquosamordquo metapodaci treba biti svestan da ti metapodaci o vama stvarajujednu digitalnu sl iku i l i bol je reći digitalni mozaik i na neki način vas jedinstvenoodređuju Pogotovo kada se planski prikupl ja ju na više nivoa (kompjuter pametnitelefon pametni automobi l i kreditna kartica) metapodaci čine vaš digitalniidentitet Al i da stvar bude još gora ta sl ika o vama ne mora nužno biti istinita jerse lako može lažirati Recimo možete zameniti telefone i l i automobi le sa nekimnamerno i l i slučajno i l i vam neko može jednostavno ukrasti telefon laptop i l ikreditnu karticu Zaniml j iv video http googlKO1fKf

Evo jednog primera koj i vas može uvući u vel ike nevol je Recimo da prolazitenekom zabačenom ul icom i da vam neprimetno ispadne telefon al i vi to neprimetite i nastavite dal je svoj im putem U toj ul ici se samo nekol iko minutakasni je desi neko ubistvo i vas pozovu u pol ici ju kao osumnj ičenog Ako koj im

To su samo metapodaci

38

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

slučajem nemate dobar al ibi i l i nemate svedoka da posvedoči da niste bi l i u tojul ici nego tamo gde ste stvarno bi l i a drugih svedoka nema - možete jako lošeproći Zaniml j ivi video http googlspS5OZ

Metapodaci se takođe nalaze i u faj lovimapodacima koje svakodnevnopreuzimamo sa interneta pravimo i koristimo Svaki tip podatka može da sadržiodređene metapodatke koj i bol je opisuju sam podatak kao naprimer vremenastanka podatka kol iko je vremena potrošeno za njegovo kreiranje kol iko putamu je pristupl jeno kad je poslednj i put pristupl jeno i tako dal je Iako se ovakvimetapodaci možda još uvek čine bezazlenim oni mogu sadržati i IP adresuračunara sa kog su napravl jeni GPS koordinate (najčešće PNG format sl ika satelefona) ko ga je napravio (l ičnost i l i kompani jaorganizaci ja) naziv uređaja imodel sa koga je napravl jen kao i MAC adresu uređaja mej l adresu kreatorasoftver koj im je napravl jen i tako dal je Sve ovo može mnogo da naškodiprivatnosti izvornog kreatora faj la pogotovo ako je sadržaj poverl j iv Ukol iko nekopresretne taj podatak na internetu može saznati od koga je potekao Da ovo možebiti katastrofa po kreatora takvog faj la može i lustrovati primer torenta Ako stedošl i u posed nekih sl ika i l i video materi ja la i l i teksta koj i žel i te da podel ite sasvetom preko nekog torent sajta morate taj podatak prvo očistiti odmetapodataka da ne bi svako ko skine to što ste okači l i saznao da vi stoj i te izatoga

Internet mreže i komunikacije

39

Broj 33

Ljudi se konstantno prate metapodaci se sakupl ja ju i to ni je sada već ništa novoal i možemo da se trudimo da iza sebe ostavl jamo malo manje nežel jenihmetapodataka i da ih takoreći čistimo iz podataka koje razmenjujemo Na srećupostoje programi koj i ovo dobro rade

Najpre je potrebno da vidimo koje sve metapodatke neki faj l sadrži kako bismo seuveri l i da ovi metapodaci stvarno postoje i da je faj l bezbedan nakon nj ihovogbrisanja

Ako koristite operativne sisteme GNULinuksa treba da iz terminala preuzmete iinstal irate program pod nazivom exiftool

sudo apt-get install exiftool

Ovaj program će nam pružiti uvid u sve metapodatke koje faj l sadrži Korišćenje jeiz terminala al i je zato veoma jednostavno samo ga pokrenite na sledeći način

exiftool File

i l i

exiftool putanjadofajlapočevodkorenogdirektorijuma

Dobićete prikaz metapodataka koje je program pronašao Sada je potrebno davidimo da l i je podatak bdquoprl javrdquo tj da l i ima u njemu nešto da se briše i da akoima iz njega sve nepotrebno obrišemo Tu će nam pomoći drugi program zvaniMAT (eng Metadata Anonymisation Toolkit) koga možete naći na sajtuhttps matboumorg i l i jednostavno za korisnike Ubuntua i Debi jana uSoftverskom centru i l i ga možete instal irati iz terminala

sudo apt-get install mat

MAT će proveriti da l i je podatak bdquoprl javrdquo i l i ne i za vas ga očistiti od nežel jenihmetapodataka

Kada očistite faj l on je spreman za del jenje sa drugima a vi ste bezbedni jer nikone može reći da je faj l potekao sa vašeg računara

To su samo metapodaci

40

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Autor Dejan Čugal j

GH Hardi bdquoPrava matematika nema uticaj na ratrdquo - odbrana matematičara1940 godina

Bi l Tat - britanski matematičar verovatno niste čul i za njega1942 godine je izveo ogroman poduhvat koj i je skratio rat dvegodine (barem po rečima Ajzenhauera) i spasio mi l ione životaNažalost njegova vel ičina je preminula 2002 godine obavi jenavelom tajne i nikada zvanično ni je priznato njegovo dostignuće

Tomi Flauers - bivši inženjer poštanskog saobraćaja pretvorio jematematičke ideje Tata u prvi računar a to ni je bio bdquoENIACrdquo1Preminuo je 1998 godine a pretpostavl jamo da nikada niste čul ini za njegovu vel ičinu

Ovi umni giganti bdquoBlečl i parkardquo omogući l i su Britani j i da dešifruje strogo poverl j ivumašinu koju je koristio Hitler da diriguje drugim svetskim ratom a to ni je bi labdquoENIGMArdquo nego nešto mnogo tajni je i značajni je Vel ika je verovatnoća da nistečul i ni za ovo Neki kažu da je to bio Hitlerov Blekberi (BlackBerry)

Izgubljeni heroji bdquoBlečli parkardquo

1 engl Electronic Numerical Integrator And Computer - prvidigitalni elektronski računar

Internet mreže i komunikacije

41

Broj 33

1939 godine bdquoBlečl i parkrdquo je postao ratni štab MI6 (britanske vojne obaveštajneslužbe) Do danas je procurelo u javnost i dokumentovano brojnim fi lmskimdokumentarcima samo da je tu Alan Tjuring uspeo da dešifruje nemačkumornaričku šifru poznatu kao bdquoENIGMArdquo i uvel iko doprineo pobedi saveznika a to jesamo deo priče koj i je ispričan

U Blečl i parku su bi la tri heroja AlanTjuring Bi l Tat i Tomi Flauers Od nj ihtroj ice jedino Alanu Tjuringu je priznat deozasluga za pobedu saveznika u Drugomsvetskom ratu Pregledom otkrivenihpodataka danas možemo da tvrdimo daje bdquoENIGMArdquo već sa početka drugogsvetskog rata bi la zastarela tehnologi ja Zbog toga je bi lo lako skinuti veo tajne sa

ovog uspeha heroja Blečl i parka

Izgubljeni heroji bdquoBlečli parkardquo

42

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Bi l Tat koj i je dešifrovao bdquoTANI sistemrdquo (TANI) i Tomi Flauers koj i je samo svojomintuici jom i znanjem sklopio prvi računar na svetu (bdquoKOLOSrdquo) u svrhu bržegdolaženja do informaci ja razbi jenog koda bdquoTANIrdquo tako da zastarelost šifrata budesvedena na minimum - radi l i su na novoj generaci j i mašina za šifrovanje Ovatehnologi ja je bi la prepoznata kao tehnologi ja budućnosti pa i danas iznadinformaci ja o tim tehnologi jama stoj i natpis bdquovrhunska tajnardquo (eng Top Secret) Upravo ovaj veo tajni oko šifrata bdquoTANIrdquo i prvog računara je rezultirao iskrivl jenjuistori je informatike

Za uspehe u prvim godinama rata je zaista zaslužno razbi janje bdquoENIGMArdquo šifrata ito ni je sporno al i krajem 1941 godine u etru planete se začuo novi zvuk To je bi lanova mašina za šifrovanje ni je bi la zasnovana na bdquoMorzeurdquo već je radi la naprincipu teleprintera

Jedna od kl jučnih ideja Hitlerovog ratovanja je bi la u vel ikoj mobi lnosti i brzomdelovanju trupa na terenu a da bi se to izvelo komunikaci ja je isto tako morala dabude u najmanju ruku putem radio signala

Razl ika je ogromna Razl ika je u kol ičini podataka koj i može da se prenese ovimbdquotajnimrdquo putem Prvi svetski rat je bio zaniml j iv jer su se šifrovane poruke baziralena rečima dok je Drugi u potpunosti otvorio vrata današnjoj kriptografi j i a to jematematika

Originalan nemački kocircdni naziv za ovaj šifrat bio je bdquoLORENCrdquo Britanska

Internet mreže i komunikacije

43

Broj 33

obaveštajna služba mu je dala nadimak bdquoTANIrdquo Čak ni dan danas ni je baš poznatokako je sve nastalo al i pouzdano se zna da je tajnu mašinu Hitler nazvaobdquoGehajmšrajberrdquo (nem Geheimschreiber) - mašina tajni

U srž i tehnologi ju šifrovanja bdquoLORENCrdquo šifrata nećemo ulaziti u ovom članku al iverujte nam na reč - ni je bi la jednostavna Može se pretpostaviti da je inspiraci jaŠenonovog 2 rada slučajnosti bi la upravo ova tehnologi ja iz Drugog svetskog rata

Ono čime se Treći rajh vodio je bdquosigurnardquo šifrovana veza koju niko ni je smeo dadešifruje Prenošenje šifrovanih poruka pomoću radio signala je dalo obaveštajnimslužbama mogućnost presretanja poruka poslatih radio talasima Da l i se ovo idanas dešava Imamo l i sigurnost u našim šifrovanim podacima današnj ice

Ono što je usledi lo nakon proboja ovog bdquoneuhvatl j ivogrdquo šifrata je upravo ono što jeprincip današnj ice kao neka vrsta protokola koj i mora da se ispoštuje uperfektnom šifarskom Šenonovom sistemu

1 NIKADA NIKADA NE KORISTITI DVA PUTA ISTI KLJUČ ZA ŠIFROVANJE2 NIKADA NIKADA KLJUČ NE SME DA SE ŠALJE ISTIM KOMUNIKACIONIM KANALOM

KAO PORUKA3 NIKADA NIKADA KLJUČ NE SME DA BUDE MANJ I NEGO ŠTO JE PORUKA (engl

2 Klod Elvud Šenon (eng Claude Elwood Shannon) (1916-2001) - Američkinaučnik i inženjer

Izgubljeni heroji bdquoBlečli parkardquo

44

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

one time pad) 4 NIKADA NIKADA NE SMEMO DA SAKRIVAMO SISTEM ŠIFROVANJA SVE MORA

DA JE OTVORENOG KOcircDA

Najveći propusti kriptologi je koj i su uočeni baš u Drugom svetskom ratu jesupokušaj sakrivanja sredstava koj im se generiše tajna poruka i nepoznavanjeŠenonovih krajnj ih granica informaci ja Kada kažemo bdquosredstvo i sakrivanjerdquomisl imo na algoritme Postavl ja se pitanje zašto je danas kriptologi ja sigurni ja negočetrdesetih i pedesetih godina prošlog veka

Danas uprkos tome što su algoritmi za kriptografi ju otvorenog kocircda tajnostinformaci ja je na višem nivou nego što je to bi lo dok je algoritam bio strogopoverl j iv Tajnost tajnih podataka se ne zasniva na tajnosti a lgoritama koj i generišutaj isti bdquotajni izlazrdquo (eng cipher text) nego u nemogućnosti matematičke inverznefunkci je koja bi šifrovan tekst otvori la Ovde se vidi da je svrha strukture otvorenogkocircda kao jednog od značajnih delova današnje kriptologi je ona koja ga činisigurnim i svima dostupnim

Sada kada se sa ove distance osvrnemo na Drugi svetski rat možemo videti kol ikosmo bi l i bl izu apokal ipse Naime Albert Ajnštajn je već 1944 godine imao urukama recept za nuklearnu bombu Šenon je mogao već u to vreme da nampredoči 100 siguran šifrat (tzv Hitlerovu super šifru) a l i ipak sreća nas jeposluži la da čovečanstvo tada ni je bi lo spremno da upotrebi svu raspoloživutehnologi ju

Albert Ajnštajn bdquoČetvrti svetski rat će se voditi tol jagamardquo

Zaboravl jeni heroj i Blečl i parka iako su odigral i važnu ulogu u pobedi saveznika usvetskom ratu postal i su žrtve bdquotop secretrdquo doktrine potpuno su zaboravl jeni inestal i su iz istori je

Zakl jučak ovog članka je da je ideologi ja otvorenog kocircda sasvim sigurno tu da nampomogne i da otvori vrata ka većoj sigurnosti novim idejama i kval itetu sameinfrastrukture sistema koju svi zajedno razvi jamo

Internet mreže i komunikacije

45

Broj 33

Autor Nikola Hardi

NabrajanjaBez brojeva

Za nabrajanje pojmova u Bimeru (eng Beamer) koristi se okruženje itemize aunutar tog okruženja možemo da dodajemo nove stavke pomoću item Primerizgleda ovako

beginitemizeitem Stavka Aitem Stavka Bitem Stavka C

enditemize

Sa brojevima

Postoje situaci je kada uz nabrajanje treba da stoje i redni brojevi - za to se koristienumerate okruženje a nove stavke se takođe dodaju pomoću item

beginenumerateitem Redni broj 1item Redni broj 2item Redni broj 3

endenumerate

prezentaci ja

Beamer (4 deo)

Sam svoj majstor

46

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

DefinicijeTreća situaci ja je nabrajanje parova termin - definici ja U tom slučaju se koristiokruženje description Već možete da pretpostavite kako se dodaju nove stavke

Primer

begindescriptionitem[Pojam A] Definicija izmišljenog pojma Aitem[Pojam B] Definicija izmišljenog pojma Bitem[Pojam C] Definicija izmišljenog pojma C

enddescription

Ostala podešavanja i zanimljivostiSva prethodna okruženja mogu da budu ugneždena jedno unutar drugog dotrećeg nivoa Treba biti pažl j iv jer sla jdovi vrlo lako mogu da postanu nečitl j ivi Osim toga moguće je izabrati i format oznake i l i rednih brojeva - na primer ovako

beginenumerate[I]beginenumarate[a)]

Takođe moguće je upravl jati pojavl j ivanjem pojedinih stavki na slajdovima Drugimrečima možemo da odredimo da se nabrajanja postepeno otkrivaju tako što ćemouz stavku dodati lt1-gt odnosno broj od kojeg slajda žel imo da se ta stavkapojavl ju je Tada će jedno nabrajanje biti bdquorazvučenordquo na više slajdovaJednostavni ja mogućnost je da u zaglavl je okruženja dodamo +- što znači dažel imo da se svakim slajdom otkriva po jedna nova stavka iz nabrajanja Znak bdquo-rdquo uoba primera znači da žel imo da se stavka pojavi na sledećem slajdu i da ostane

Sam svoj majstor

47

Broj 33

prisutna Možemo da izostavimo znak bdquo-rdquo i tada će stavka biti prisutna samo najednom slajdu i l i da napišemo raspon slajdova u koj ima žel imo da ta stavka budeprisutna

Rad sa kolonama i blokovimaDo sada su svi primeri podrazumeval i da je sadržaj napisan preko cele širineslajda al i Bimer (eng Beamer) ima i jednostavne mehanizme za razmeštanjesadržaja po kolonama Za rad sa kolonama se koristi okruženje columns unutarkojeg možemo da dodajemo nove kolone pomoću columnširina Sadržaj jemoguće potom pisati i van okruženja sa kolonama

U paru sa kolonama često se sreće i okruženje block koje se parametrizujenaslovom Primerom su i lustrovani i okruženje column i okruženje block

beginframebegincolumns

column05textwidthbeginblockNaslov levog blokaSadržaj u prvoj (levoj) koloni endblock

column05textwidthbeginblockNaslov desnog blokaSadržaj u drugoj (desnoj) koloni

endblockendcolumns

beginblockVan kolona

Beamer

48

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Tekst koji se nalazi ispod kolonaendblock

endframe

TabeleIako se u radu sa prezentaci jama sadržaj najčešće može uredno rasporeditipomoću kolona i nabrajanja nekada to ni je dovol jno jer su tabele pravi formatBimer podržava standardno Lateh (LaTeX) okruženje za rad sa tabelamaOkruženje za rad sa tabelama se zove tabular Pri kreiranju nove tabele moguće jepodesiti koje kolone će biti razdvojene l ini jom i da l i će nj ihov sadržaj biti centrirani l i uz levu i l i uz desnu ivicu Dodavanje novog reda se jednostavno radidodavanjem hline Lateh pruža zaista jako fleksibi lan rad sa tabelama i sigurno ćedoskočiti svim mogućim i nemogućim zamisl ima Potražite bi lo koje Lateh uputstvoza rad sa tabelama i radiće i sa Bimerom

beginframebegintabular | c | c | c | c |

hlineamp Ponedeljak amp Utorak amp Sreda hline

1 amp 16 amp 32 amp 64 hline2 amp 16 amp 128 amp 1024 hline3 amp 16 amp 512 amp 4096 hline

endtabularendframe

Sam svoj majstor

49

Broj 33

Beamer

Teoreme i istaknut tekstU nastavi su česta izlaganja teorema nj ihovih dokaza i primera U Bimer jeugrađena podrška za elegantno predstavl janje ove trojke Mehanizam takođepodržava postepeno otkrivanje sadržaja sla jda tako da slušaocima ne bude odmahotkriven dokaz teoreme Mehanizam za postepeno otkrivanje se kao i kodnabrajanja postiže pomoću bdquolt1-gtrdquo konstrukci je Evo kako to izgleda

beginframeframetitlePrimer teoreme

begintheoremlt1-gt Teorema kaže da su beamer prezentacijezanimljive

endtheorem

beginexamplelt2-gt Ovaj kod kreira slajd beamer prezentacijeendexample

beginprooflt3-gt Čestitamo stigli ste do kraja serijala o pravljenju beamer prezentacija

endproofendframe

50

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Za krajOvim člankom završavamo seri ja l o Bimeru Nadamo se da smo uspel i da vaszainteresujemo za ovu vrlo korisnu klasu Lateha Trudi l i smo se da vamprezentujemo najvažni je delove Bimera koje ćete najčešće koristiti pri l ikomkreiranja svoj ih prezentaci ja

Napominjemo još jednom da je Bimer samo jedna od klasa Lateha što znači da i zaBimer važi sve ono što ste već mogl i da pročitate u ovom časopisu kad smo pisal iseri ja l bdquoUvod u LaTeXrdquo (LiBRE brojevi 17 do 21) Štaviše ovaj seri ja l o Bimeru jebio nastavak upravo tog seri ja la U ovom seri ja lu nismo pisal i o samomformatiranju teksta u prezentaci jama jer se podrazumeva da važe ista pravi la kao iu Latehu a o tome smo pisal i u prethodnom seri ja lu

Hvala vam što ste prati l i ovaj seri ja l i žel imo vam puno uspeha u kreiranju Bimerprezentaci ja

Sam svoj majstor

51

Broj 33

Autor Nenad Marjanović

Kada smo se upoznal i sa podešavanj ima sistema i umrežavanjem vreme je za našprvi Biglbon Blek (BBB - eng BeagleBone Black) projekat Svakom od nas će ovajizazov dati razl ičite ideje a jedna od nj ih može biti i zaštita privatnosti internetkorisnika Nažalost u Srbi j i ne postoj i ni jedan izlazni tor server (eng node) i to jepomalo tužna sl ika s obzirom da govorimo o populaci j i od sedam mil ionastanovnika Al i ovu sl iku možemo promeniti udruženim snagama i za početakkreiranjem Tor transfer i izlaznog servera U ovde prikazanom grafikonufokusiraćemo se na bdquoRauter Brdquo tačku odnosno transfer server konfiguraci ju

BeagleBone Black Rev C

Vodič od prvog dana (3 deo) ndashBeagleBone Black kao Tor relej

Hardver

52

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Tor predstavl ja mrežu servera koj i se povezuju radi bol je enkripci je podataka izaštite IP adrese korisnika Naš ci l j je da danas postanemo deo ovog predivnogprojekta i da se nađemo na svetskoj karti Tor servera

Brzina interneta i zakonske regulativePotrebno je imati na umu nekol iko bitnih stvari

1 Naš server = naša odgovornost2 Obavezno naznačite da ste vi administrator a ne korisnik istog servera3 Da posedujete internet brzinu od 2 Mbs

Ako ispunjavamo tri navedena pravi la i odgovornosti možemo se posvetitiadministrativnim poslovima

Instalacija i podešavanjaU ovom primeru koristimo Debi jan Vizi (eng Wheezy) odnosno Debi jan 7 verzi juna našem BBB uređaju Vi možete testirati i druge Linuks platforme Prvododajemo izvornu bibl ioteku u etcaptsourceslist faj l pokretanjem sledećekomande u terminalu

echo deb httpdebtorprojectorgtorprojectorg wheezy main gt etcaptsourceslistdtorlist

Zatim dodajemo izvorni kl juč vršimo ažuriranje sistema i instal iramo tor i tor-arm(Tor monitoring sistem)

gpg --keyserver keysgnupgnet --recv 886DDD89gpg --export A3C4F0F979CAA22CDBA8F512EE8CBC9E886DDD89 | sudo apt-keyadd -apt-get updateapt-get install debtorprojectorg-keyring -yapt-get install tor tor-arm egrep screen -y

Ovim smo uspešno završi l i instalaci ju Tor servera i sistema za monitoring odnosnonadgledanja našeg Tor servera Sledećom komandom radimo na podešavanj imaTor servera koja se nalaze u etctortorrc faj lu Obratite pažnju i izvršite potrebne

Hardver

53

Broj 33

izmenu u pol j ima IP adresa (eng Address) nadimka (eng Nickname) i kontaktpodataka (eng ContactInfo) pre pokretanja ove komande Kopiramo i pokrećemokomandu u celosti u terminalu

egrep -v ^(|$) etctortorrcORPort 443Address 19216811Nickname LibreTorRelayRelayBandwidthRate 100 KBRelayBandwidthBurst 120 KBContactInfo ltvi at gmail dot comgt irPort 8080DirPortFrontPage etctortorhtmlExitPolicy reject

Detal je o svim vrednostima nećemo iznositi u ovom broju LiBRE časopisa al ićemo o nj ima pisati u sledećem u kome ćemo pričati o zaštiti Tor servera imogućnosti podešavanja određenih izlaznih pravi la (eng ExitPolicy)

Nakon ovoga možemo primetiti da se u folderu etctor ne nalazi torhtml faj l Ovaj faj l ni je od vel ikog značaja i možete ga l ično napraviti i l i preuzeti jednu kopi ju- naprimer sa sledeće lokaci je

cp usrsharedoctortorhtml etctortorhtml

Opcije i Tor Arm monitoringDa bismo ispravno koristi l i Tor Arm potrebno je urediti još jednom etctortorrcfaj l i restartovati servis

echo -e ldquoDisableDebuggerAttachment 0n AvoidDiskWritesrdquo gtgt etctortorrcsudo service tor reload

Ukol iko žel ite koristiti Tor Arm za nadgledanje aktivnosti na serveru pokreniteprogram screen kl iknite na bdquoEnterrdquo i kucajte sudo -u debian-tor arm Naekranu ćete imati sl ičan prikaz

BeagleBone Black

54

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Hardver

55

Broj 33

Da bismo napusti l i screen program koristimo Ctrl + a + d i na taj način kada sesledeći put pri javimo na server kucamo samo screen -r u terminalu - i naći ćemose ponovo na čuvenom Tor Arm monitoring ekranu

Nakon svake promene konfiguracionih faj lova ako slučajno nismo nešto podesi l ikako treba restartujemo servise

U sledećem broju časopisa govorićemo o minimalnim podešavanj ima ikonfigurisanju izlaznog Tor servera (eng Tor Exit Node) opci jama sigurnosti isl ičnim detal j ima u vezi sa našim prvim projektom Do čitanja u sledećem broju

BeagleBone Black

LUGoNS BarCamp 4subota 7 mart 2015 godine

Četvrti LUGoNS-ov Barkemp (BarCamp) održaće se u Novom Sadu usubotu 7 marta 2015 godine na Fakultetu tehničkih nauka sa početkomu 12 časova

Ulaz je slobodan

Poziv za predaju radovaLUGoNS poziva sve zainteresovane da pošal ju svoje radove (predavanjaprezentaci je radionice i diskusi je) do 28 februara 2015 godine

Oblasti iz koj ih možete da pri javite vaše radove su

bull Slobodan softverbull Zaniml j iv hardverbull Hakerski zakonibull Sigurnosne noćne morebull Anonimnost i privatnost na internetubull Duboki veb (eng Deep Web)bull Soci ja lne mrežebull Soci ja lni inženjeringbull Hakovanje mobi lnih uređajabull Internet u oblaku (eng Clouds) ndash hakovanje razbi janje i neočekivano korišćenjebull DPI (eng deep packet inspection)bull Mreža i mrežna neutralnost ndash vlasništvo cenzura nadmudrivanje i pol itika bdquodefaktordquo standarda

bull Programiranje i programski jezici

Nemojte se ustručavati i slobodno nam se javite ako imate rad na gore navedenei l i sl ične teme koj i smatrate interesantnim

Stranica za predaju radova nalazi se na https events lugonsorgp=1658

Page 28: LiBRE 33 Lat

28

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Lokalne zajednice kao kriterijum za izbor idealnedistribucijePočetnicima i korisnicima koj i ne vladaju dobro engleskim jezikom toplopreporučujemo da biraju GNULinuks distribuci je koje imaju aktivnu lokalnuzajednicu Ovladavanje novim operativnim sistemom je mnogo lakše ukol iko vambdquoleđa čuvardquo lokalna zajednica na koju se uvek možete osloniti

Već smo spomenul i da su popularni je GNULinuks distribuci je namenjenepočetnicima Slučaj je isti i sa lokalnim zajednicama okupl jenim oko nj ih Ovomeđutim ne znači da je kval itet usluga koje nude manje popularne lokalnezajednice okupl jene oko distribuci ja namenjenih napredni j im korisnicima loši j i Manje popularne distribuci je okupl ja ju manje l judi a l i zato oni poseduju većeznanje Iskustvo sa zajednicama okupl jenim oko slobodnog softvera je uglavnompozitivno i ukazuje na to da kval itet usluga koje one nude korisniku ni je uslovl jenpopularnošću i masovnošću zajednice nego iskl jučivo njenom (ne)aktivnošću

U svakom slučaju dosadašnj i saveti za izbor idealne distribuci je važe i dal jeSoci ja lni aspekt slobodnog softvera je samo dodatni faktor koj i vam može pomoćipri donošenju odluke kada se dvoumite između nekol iko mogućih rešenja

Još uvek ne postoj i na jednom mestu potpuni i ažurirani spisak svih aktivnihsrpskih zajednica Nešto najbl iže tome može da se nađe na adresihttps pulsslobodewordpresscom Za informaci je o nekim drugim lokalnimzajednicama koje možda postoje al i nisu na ovom spisku moraćete sami dapretražite internet

Lokalizacija kao kriterijum za izborZa lokal izaci ju GNULinuks distribuci ja i GNU programa odgovorni su pojedinci ilokalne zajednice Sasvim sol idnu srpsku lokal izaci ju mogu imati i projekti koj iuopšte nemaju svoju lokalnu zajednicu a isto tako lošu lokal izaci ju mogu imati iprojekti sa dobrom lokalnom zajednicom Sve je stvar prioriteta zajednica iaktivnosti pojedinaca

Pravu i kontrol isanu lokal izaci ju može imati samo lokalni projekat Ovakvihprojekata u Srbi j i ima malo i teško se probi ja ju čak i u lokalu u konkurenci j isvetskih projekata Istina je da mnoge veće GNULinuks distribuci je imaju srpskulokal izaci

Oslobađanje

29

Broj 33

ju u ponudi pa se možda sl ični lokalni projekti koj i su usmereni samo na striktnulokal izaci ju smatraju nepotrebnima Uzvodna lokal izaci ja u slučaju Srbi je vrlo čestobude veoma loše čak nakaradno sprovedena Jedna polovina programa jelokal izovana srpskom ćiri l icom a druga latinicom Ako postoj i još delova sistemakoj i uopšte ni je lokal izovan onda se pojavl ju ju i delovi programa koj i su naengleskom Zato ćemo se vratiti na prvu rečenicu ovog pasusa i ponovo utvrditi dasamo lokalni projekat može potpuno kontrol isati pravu srpsku lokal izaci ju

U Srbi j i za sada imamo dva aktivna projekta GNULinuks distribuci je ndash TriOS(http triosrs) i Serbian (http wwwdebian-srbi ja iz rspserbianhtml) Obaprojekta su mlada i imaju svoj ih prednosti i mana Kome treba lokal izovanoperativni sistem može da proba jedan od ova dva projekta

U potrazi za idealnom distribucijom

30

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Iako ove dve domaće distribuci je nisu baš naj idealni je interesantno je probati ih iuporediti sa drugim distribuci jama

Za kraj serijalaNamera nam je bi la da kroz ovaj seri ja l o kriteri jumima pri izboru idealnedistribuci je definišemo većinu kriteri juma pri izboru i pokažemo zašto je teškoodgovoriti na jednostavno pitanje bdquoKoju mi distribuci ju preporučujeterdquo

Ni na samom kraju nismo dal i konkretan odgovor na pitanje koja je idealnaGNULinuks distribuci ja Suviše je subjektivnih ocena da bi se mogao datikonkretan odgovor Smatramo da je jako teško napisati neki algoritam izbora pokriteri jumima koje smo identifikoval i i definisal i a možda je čak i nemoguće poštose izlazi stalno menjaju Izlazi iz tog algoritma su GNULinuks distribuci je koj ih izdana u dan ima sve više a i one stare se stalno menjaju

Sam seri ja l bdquoU potrazi za idealnom distribuci jomrdquo neće biti završen samo zato štose više neće baviti kriteri jumima pri izboru nego će pokušati da predstavl jaGNULinuks distribuci je koje su po nečemu bdquoidealnerdquo

Oslobađanje

31

Broj 33

ORM

Autor Dejan Čugal j

Object relation mapping (ORM)

ORM (eng Object RelationMapping) je način postizanja traj-nosti (eng persistence) objekataunutar relacionih baza podatakaModel deluje kao posrednik nalogičkom delu apl ikaci je Automat-ski presl ikava podatke iz objekata ubazu i nazad na zahtev apl ikaci jeDa bismo objasni l i kako ovo sveradi moramo da vam predstavimoORM frejmvork (eng framework)programa otvorenog koda -Hajbernejt (eng Hibernate -http hibernateorgorm)

Šta je ORMUkratko ORM je automatizovano transparentno presl ikavanje objekatakorišćenjem metapodataka koj i opisuju mapiranje veze između objekta i baze

ORM (2 deo)

Slobodni profesionalac

32

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

podataka u apl ikaci jama koje su napisane u objektno ori jentisanim programskimjezicima Apl ikaci ja komunicira sa ORM-om preko njegovog vlastitog API-ja (engapplication programming interface) i određenih objekata Ova komunikaci ja jepotpuno odvojena od komunikaci je koja se odvi ja između ORM-a i baze podatakapreko SQL-a i DBC-a

Da bi se postigla i dostigla potpuna snaga ORM-a u apl ikaci j i koju projektujemonikako se ne sme iskl jučiti znanje relacionih modela SQL jezika te poznavanjeDBMS-a u kome se radi ORM ni je ništa drugo do srednj i sloj između gorepomenutih tehnologi ja i objektno ori jentisanog programiranja kao što smo to dosada već više puta naglasi l i

Implementacija ORM-aPostoje razl ičiti načini implementaci je ORM-a Mark Fasl (Mark Fussel) je 1997definisao četiri nivoa

1 bdquoČistrdquo relacioni način2 Slabo mapiranje objekata3 Umereno mapiranje objekata4 Potpuno mapiranje objekata

bdquoČistrdquo relacioni način

Cela apl ikaci ja ukl jučujući i korisnički interfejs dizajnirana je relacionim modelom iSQL relacionim operatorima Ovakav pristup je odl ičan za male projekte Direktanpristup SQL-u omogućava fino podešavanje svakog aspekta upita koj i se postavl jabazi podataka Osnovne mane su portabi lnost (prenosivost) i održavanje ovakvihsistema pogotovo ako se planira korišćenje apl ikaci je na duži rok Ovakvi sistemimasovno koriste sačuvane procedure (eng stored procedures) što znači da jeposlovna logika (eng busines logic) prebačena na samu bazu podataka

Slabo mapiranje objekata

Entiteti su predstavl jeni kao klase i mapiranje se radi ekspl icitno ka relacionimtabelama SQLJDBC je sakriven od poslovne logike korišćenjem poznatih šablona(patterns)

Umereno mapiranje objekata

Slobodni profesionalac

33

Broj 33

Dizajn apl ikaci ja se svodi na objektne modele SQL se generiše u vremekompaj l iranja (eng build-time) i l i u vreme izvršavanja (eng run-time) Specifikaci jaupita nad bazama podataka se radi na objektno ori jentisanom jeziku Ovakvisistemi se koriste u apl ikaci jama srednj ih vel ičina kod koj ih je bitna portabi lnostizmeđu razl ičitih sistema za upravl janje bazama podataka (DBMS)

Potpuno mapiranje objekata

Podržava sofisticirano objektno model iranje nasleđivanje i pol imorfizamEfikasnost dobi janja podataka je na visokom nivou i koriste se metode kao što sulenjo učitavanje (eng lazy loading) i strategi ja keširanja (eng caching) Implementaci ja je transparentna u apl ikaci jama Ovaj nivo je jako teško dostići Pojedincu su potrebne godine razvoja da postigne ovakvu fleksibi lnost pristupa imanipulaci ja u relacionim bazama podataka Upravo ovaj nivo se postiže ako sekoriste rešenja ORM-a kao što je Hajbernejt

Zašto ORMImplementaci ja ORM rešenja pogotovo ako seprvi put susrećete sa ovim modelom može dabude veoma frustrirajuća i malo teža zaimplementaci ju Kada ovo kažemo misl imo daprogramer koj i implementira ORM i hoće da istibude kval itetno urađen mora da posedujepredznanje objektno ori jentisanog programiranjai naprednih tehnika kao što su nasleđivanje ipol imorfizam

Ovo inicira fundamentalna pitanja

bull Pa zašto bi iko onda implementirao ovako nešto kompleksnobull Vredi l i truda upuštati se uopšte u ORM

Odgovor ni je jednostavan Dosadašnja iskustva u korišćenju ORM-a i njegovapopularnost već daju odgovor na postavl jeno pitanje Očigledno je da su benefitikoje donosi ovaj model veći od kompleksnosti njegove implementaci je a to su

Hibernate ORM

34

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Veća produktivnost

ORM smanjuje kol ičinu koda potrebnog za ostvarivanje trajnosti podataka Ovoomogućava programeru da vreme koje bi utrošio na ručno mapiranje podatakautroši na druge delove apl ikaci je

Lakše održavanje

Manje l ini ja koda osigurava bol ju razuml j ivost (i možda bol j i kval itet koda) jernaglašava apl ikaci jsku logiku ORM takođe ublažava uticaj nastal ih promena kaošto su promene u bazi strukturi tabela i td

Prenosivost

Većina ORM rešenja podržava sisteme za upravl janje bazama podataka raznihproizvođača ORM u potpunosti odvaja sloj apl ikaci je od stvarne SQL komunikaci jekoja se odvi ja u pozadini Time omogućava da se pišu apl ikaci je koje će moći da seizvršavaju na razl ičitim bazama podataka bez potrebe za dodatnim kodiranjemOva komunikaci ja se odvi ja sa programskim interfejsima ORM-a nezavisno oDBMS-u sa koj im je u bi lo kom momentu povezan ORM takođe omogućava lakšiprelaz sa manj ih na veće baze podataka tokom razvoja apl ikaci je

Uvidel i smo da trenutno postoje dve paradigme koje se bdquosudarajurdquo i koje supodjednako dobre same za sebe Relaciona paradigma potvrđuje da sve što jeizgrađeno na matematičkim osnovama je i trajno u smislu kval iteta koje posedujeU domenu u kom relaciona paradigma egzistira ona je ako je to u ovo vremeuopšte moguće tvrditi nezamenj iva

Ono što otvara pitanja i daje razlog za sumnju je koja je krajnja granicaupotrebl j ivosti relacione paradigme tj kol iki su kapaciteti složenosti zahtevaapl ikaci ja sa kojom može da se nosi Praksa je pokazala da je sasvim mogućebdquoizvestirdquo složene projekte - al i održavanje skalabi lnost razuml j ivost prenosivost -pitanja su sa koj im se relaciona paradigma teško može izboriti

Sa druge strane svoj habitat u informacionim tehnologi jama je našla i objektna

Slobodni profesionalac

35

Broj 33

paradigma Iako na prvi pogled ova dva modela nemaju ništa zajedničko - što je uneku ruku i istinito gledajući prirodu podataka koj im manipul išu - praksa jepokazala da su usko povezane i skoro da imaju sinaptičku vezu

Pitanje bdquokako spoj iti te sinapserdquo dovelo je do žučnih rasprava u uskim naučnimprogramersko-administratorskim krugovima Rodi l i su se razni model i a l i jedan jeiskočio i polako ulazi u široku primenu - a to je ORM Svoj im supti lnim pristupomproblemu nekompatibi lnih paradigmi nekako je uspeo da stvori taj nedostajućibdquoelektrični signalrdquo koj i ih je povezao Ovo je omogući lo da dve strane koje susvaka za sebe u svom domenu ostavi le i ostavl ja ju duboki trag u informacionimtehnologi jama sarađuju i donesu novi kval itet

Korisni l inkovi

[1] Hibernejt http hibernateorg[2] Viki http googlLlZulw[3] Tutori ja l i http googlCGzvnc

Hibernate ORM

36

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Autor Kriptopank

Šta su zapravo metapodaci Najkraće rečeno to su podaci o podacima i l iinformaci je koje opisuju podatke

Najpre da napravimo razl iku između podataka i metapodataka Podaci sunaprimer snimak (i l i transkript) vaših telefonskih razgovora sadržaj poruka kojepišete primate i l i šal jete podaci koje kačite na internet i l i preuzimate pretrageGuglom postovi na forumima dopisivanja na IRC kanal ima i l i drugim četovimaaudio i video snimci Skajp razgovora i tako dal je

Hajde da vidimo šta bi bi l i odgovarajući metapodaci za ove primere

bull Za telefonske razgovore metapodaci mogu biti lokaci ja učesnika brojevitelefona trajanje razgovora IP i MAC adresa

bull Za poruke četove i Skajp i l i druge video-audio komunikaci je sl ično je kao kodtelefonskih razgovora

To su samo metapodaci

Internet mreže i komunikacije

37

Broj 33

bull Kod foruma i pretraga Guglom ima malo manje metapodataka al i Gugl i raznisajtovi i forumi ionako čuvaju logove o korisnicima što su takođe metapodaci

Ako do sada koj im slučajem niste uvidel i opasnost po privatnost u ovimmetapodacima koje svako od nas smrtnika svakodnevno ostavl ja za sobom usvetu interneta i ostal ih digitalnih komunikaci ja nadamo se da će vas ovaj primermakar podstaći na razmišl janje a možda i na nešto više

Zamisl i te da neko (zvaćemo ga posmatrač) stalno sakupl ja metapodatke koje zasobom ostavl jate kao mrvice hleba Posmatrač recimo zna da se nalazite naautoputu nedaleko od famoznog Feketića da se ne krećete da zovete AMSS zatimšlep službu i možda taksi a l i ne zna šta ste razgovaral i I l i posmatrač vidi da steprvo zval i aerodrom Nikola Tesla pa odmah potom taksi a l i ne zna šta sterazgovaral i I l i posmatrač vidi da ste zval i prvo šest brojeva či je identitete takođezna pa vidi da se oni zatim kreću ka vama - GPS (eng Global Positioning System) pa zatim pica servis Mekdonalds i neku poznatu prodavnicu kineske hrane al i nezna šta ste razgovaral i

Posmatrač ne mora da bude mnogo pametan niti da prisluškuje vaše razgovore dabi shvatio šta se dešava i l i šta će se desiti Sasvim mu je jasno da vam je u prvomprimeru auto stao na autoputu zatim da ste se u drugom slučaju uputi l i naaerodrom i da možda putujete van zemlje i l i ste poslal i taksi po nekoga saaerodroma a da u trećem slučaju okupl jate žurku kod vas Više možete pogledatina http googl7vUjP

Iako su to bdquosamordquo metapodaci treba biti svestan da ti metapodaci o vama stvarajujednu digitalnu sl iku i l i bol je reći digitalni mozaik i na neki način vas jedinstvenoodređuju Pogotovo kada se planski prikupl ja ju na više nivoa (kompjuter pametnitelefon pametni automobi l i kreditna kartica) metapodaci čine vaš digitalniidentitet Al i da stvar bude još gora ta sl ika o vama ne mora nužno biti istinita jerse lako može lažirati Recimo možete zameniti telefone i l i automobi le sa nekimnamerno i l i slučajno i l i vam neko može jednostavno ukrasti telefon laptop i l ikreditnu karticu Zaniml j iv video http googlKO1fKf

Evo jednog primera koj i vas može uvući u vel ike nevol je Recimo da prolazitenekom zabačenom ul icom i da vam neprimetno ispadne telefon al i vi to neprimetite i nastavite dal je svoj im putem U toj ul ici se samo nekol iko minutakasni je desi neko ubistvo i vas pozovu u pol ici ju kao osumnj ičenog Ako koj im

To su samo metapodaci

38

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

slučajem nemate dobar al ibi i l i nemate svedoka da posvedoči da niste bi l i u tojul ici nego tamo gde ste stvarno bi l i a drugih svedoka nema - možete jako lošeproći Zaniml j ivi video http googlspS5OZ

Metapodaci se takođe nalaze i u faj lovimapodacima koje svakodnevnopreuzimamo sa interneta pravimo i koristimo Svaki tip podatka može da sadržiodređene metapodatke koj i bol je opisuju sam podatak kao naprimer vremenastanka podatka kol iko je vremena potrošeno za njegovo kreiranje kol iko putamu je pristupl jeno kad je poslednj i put pristupl jeno i tako dal je Iako se ovakvimetapodaci možda još uvek čine bezazlenim oni mogu sadržati i IP adresuračunara sa kog su napravl jeni GPS koordinate (najčešće PNG format sl ika satelefona) ko ga je napravio (l ičnost i l i kompani jaorganizaci ja) naziv uređaja imodel sa koga je napravl jen kao i MAC adresu uređaja mej l adresu kreatorasoftver koj im je napravl jen i tako dal je Sve ovo može mnogo da naškodiprivatnosti izvornog kreatora faj la pogotovo ako je sadržaj poverl j iv Ukol iko nekopresretne taj podatak na internetu može saznati od koga je potekao Da ovo možebiti katastrofa po kreatora takvog faj la može i lustrovati primer torenta Ako stedošl i u posed nekih sl ika i l i video materi ja la i l i teksta koj i žel i te da podel ite sasvetom preko nekog torent sajta morate taj podatak prvo očistiti odmetapodataka da ne bi svako ko skine to što ste okači l i saznao da vi stoj i te izatoga

Internet mreže i komunikacije

39

Broj 33

Ljudi se konstantno prate metapodaci se sakupl ja ju i to ni je sada već ništa novoal i možemo da se trudimo da iza sebe ostavl jamo malo manje nežel jenihmetapodataka i da ih takoreći čistimo iz podataka koje razmenjujemo Na srećupostoje programi koj i ovo dobro rade

Najpre je potrebno da vidimo koje sve metapodatke neki faj l sadrži kako bismo seuveri l i da ovi metapodaci stvarno postoje i da je faj l bezbedan nakon nj ihovogbrisanja

Ako koristite operativne sisteme GNULinuksa treba da iz terminala preuzmete iinstal irate program pod nazivom exiftool

sudo apt-get install exiftool

Ovaj program će nam pružiti uvid u sve metapodatke koje faj l sadrži Korišćenje jeiz terminala al i je zato veoma jednostavno samo ga pokrenite na sledeći način

exiftool File

i l i

exiftool putanjadofajlapočevodkorenogdirektorijuma

Dobićete prikaz metapodataka koje je program pronašao Sada je potrebno davidimo da l i je podatak bdquoprl javrdquo tj da l i ima u njemu nešto da se briše i da akoima iz njega sve nepotrebno obrišemo Tu će nam pomoći drugi program zvaniMAT (eng Metadata Anonymisation Toolkit) koga možete naći na sajtuhttps matboumorg i l i jednostavno za korisnike Ubuntua i Debi jana uSoftverskom centru i l i ga možete instal irati iz terminala

sudo apt-get install mat

MAT će proveriti da l i je podatak bdquoprl javrdquo i l i ne i za vas ga očistiti od nežel jenihmetapodataka

Kada očistite faj l on je spreman za del jenje sa drugima a vi ste bezbedni jer nikone može reći da je faj l potekao sa vašeg računara

To su samo metapodaci

40

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Autor Dejan Čugal j

GH Hardi bdquoPrava matematika nema uticaj na ratrdquo - odbrana matematičara1940 godina

Bi l Tat - britanski matematičar verovatno niste čul i za njega1942 godine je izveo ogroman poduhvat koj i je skratio rat dvegodine (barem po rečima Ajzenhauera) i spasio mi l ione životaNažalost njegova vel ičina je preminula 2002 godine obavi jenavelom tajne i nikada zvanično ni je priznato njegovo dostignuće

Tomi Flauers - bivši inženjer poštanskog saobraćaja pretvorio jematematičke ideje Tata u prvi računar a to ni je bio bdquoENIACrdquo1Preminuo je 1998 godine a pretpostavl jamo da nikada niste čul ini za njegovu vel ičinu

Ovi umni giganti bdquoBlečl i parkardquo omogući l i su Britani j i da dešifruje strogo poverl j ivumašinu koju je koristio Hitler da diriguje drugim svetskim ratom a to ni je bi labdquoENIGMArdquo nego nešto mnogo tajni je i značajni je Vel ika je verovatnoća da nistečul i ni za ovo Neki kažu da je to bio Hitlerov Blekberi (BlackBerry)

Izgubljeni heroji bdquoBlečli parkardquo

1 engl Electronic Numerical Integrator And Computer - prvidigitalni elektronski računar

Internet mreže i komunikacije

41

Broj 33

1939 godine bdquoBlečl i parkrdquo je postao ratni štab MI6 (britanske vojne obaveštajneslužbe) Do danas je procurelo u javnost i dokumentovano brojnim fi lmskimdokumentarcima samo da je tu Alan Tjuring uspeo da dešifruje nemačkumornaričku šifru poznatu kao bdquoENIGMArdquo i uvel iko doprineo pobedi saveznika a to jesamo deo priče koj i je ispričan

U Blečl i parku su bi la tri heroja AlanTjuring Bi l Tat i Tomi Flauers Od nj ihtroj ice jedino Alanu Tjuringu je priznat deozasluga za pobedu saveznika u Drugomsvetskom ratu Pregledom otkrivenihpodataka danas možemo da tvrdimo daje bdquoENIGMArdquo već sa početka drugogsvetskog rata bi la zastarela tehnologi ja Zbog toga je bi lo lako skinuti veo tajne sa

ovog uspeha heroja Blečl i parka

Izgubljeni heroji bdquoBlečli parkardquo

42

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Bi l Tat koj i je dešifrovao bdquoTANI sistemrdquo (TANI) i Tomi Flauers koj i je samo svojomintuici jom i znanjem sklopio prvi računar na svetu (bdquoKOLOSrdquo) u svrhu bržegdolaženja do informaci ja razbi jenog koda bdquoTANIrdquo tako da zastarelost šifrata budesvedena na minimum - radi l i su na novoj generaci j i mašina za šifrovanje Ovatehnologi ja je bi la prepoznata kao tehnologi ja budućnosti pa i danas iznadinformaci ja o tim tehnologi jama stoj i natpis bdquovrhunska tajnardquo (eng Top Secret) Upravo ovaj veo tajni oko šifrata bdquoTANIrdquo i prvog računara je rezultirao iskrivl jenjuistori je informatike

Za uspehe u prvim godinama rata je zaista zaslužno razbi janje bdquoENIGMArdquo šifrata ito ni je sporno al i krajem 1941 godine u etru planete se začuo novi zvuk To je bi lanova mašina za šifrovanje ni je bi la zasnovana na bdquoMorzeurdquo već je radi la naprincipu teleprintera

Jedna od kl jučnih ideja Hitlerovog ratovanja je bi la u vel ikoj mobi lnosti i brzomdelovanju trupa na terenu a da bi se to izvelo komunikaci ja je isto tako morala dabude u najmanju ruku putem radio signala

Razl ika je ogromna Razl ika je u kol ičini podataka koj i može da se prenese ovimbdquotajnimrdquo putem Prvi svetski rat je bio zaniml j iv jer su se šifrovane poruke baziralena rečima dok je Drugi u potpunosti otvorio vrata današnjoj kriptografi j i a to jematematika

Originalan nemački kocircdni naziv za ovaj šifrat bio je bdquoLORENCrdquo Britanska

Internet mreže i komunikacije

43

Broj 33

obaveštajna služba mu je dala nadimak bdquoTANIrdquo Čak ni dan danas ni je baš poznatokako je sve nastalo al i pouzdano se zna da je tajnu mašinu Hitler nazvaobdquoGehajmšrajberrdquo (nem Geheimschreiber) - mašina tajni

U srž i tehnologi ju šifrovanja bdquoLORENCrdquo šifrata nećemo ulaziti u ovom članku al iverujte nam na reč - ni je bi la jednostavna Može se pretpostaviti da je inspiraci jaŠenonovog 2 rada slučajnosti bi la upravo ova tehnologi ja iz Drugog svetskog rata

Ono čime se Treći rajh vodio je bdquosigurnardquo šifrovana veza koju niko ni je smeo dadešifruje Prenošenje šifrovanih poruka pomoću radio signala je dalo obaveštajnimslužbama mogućnost presretanja poruka poslatih radio talasima Da l i se ovo idanas dešava Imamo l i sigurnost u našim šifrovanim podacima današnj ice

Ono što je usledi lo nakon proboja ovog bdquoneuhvatl j ivogrdquo šifrata je upravo ono što jeprincip današnj ice kao neka vrsta protokola koj i mora da se ispoštuje uperfektnom šifarskom Šenonovom sistemu

1 NIKADA NIKADA NE KORISTITI DVA PUTA ISTI KLJUČ ZA ŠIFROVANJE2 NIKADA NIKADA KLJUČ NE SME DA SE ŠALJE ISTIM KOMUNIKACIONIM KANALOM

KAO PORUKA3 NIKADA NIKADA KLJUČ NE SME DA BUDE MANJ I NEGO ŠTO JE PORUKA (engl

2 Klod Elvud Šenon (eng Claude Elwood Shannon) (1916-2001) - Američkinaučnik i inženjer

Izgubljeni heroji bdquoBlečli parkardquo

44

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

one time pad) 4 NIKADA NIKADA NE SMEMO DA SAKRIVAMO SISTEM ŠIFROVANJA SVE MORA

DA JE OTVORENOG KOcircDA

Najveći propusti kriptologi je koj i su uočeni baš u Drugom svetskom ratu jesupokušaj sakrivanja sredstava koj im se generiše tajna poruka i nepoznavanjeŠenonovih krajnj ih granica informaci ja Kada kažemo bdquosredstvo i sakrivanjerdquomisl imo na algoritme Postavl ja se pitanje zašto je danas kriptologi ja sigurni ja negočetrdesetih i pedesetih godina prošlog veka

Danas uprkos tome što su algoritmi za kriptografi ju otvorenog kocircda tajnostinformaci ja je na višem nivou nego što je to bi lo dok je algoritam bio strogopoverl j iv Tajnost tajnih podataka se ne zasniva na tajnosti a lgoritama koj i generišutaj isti bdquotajni izlazrdquo (eng cipher text) nego u nemogućnosti matematičke inverznefunkci je koja bi šifrovan tekst otvori la Ovde se vidi da je svrha strukture otvorenogkocircda kao jednog od značajnih delova današnje kriptologi je ona koja ga činisigurnim i svima dostupnim

Sada kada se sa ove distance osvrnemo na Drugi svetski rat možemo videti kol ikosmo bi l i bl izu apokal ipse Naime Albert Ajnštajn je već 1944 godine imao urukama recept za nuklearnu bombu Šenon je mogao već u to vreme da nampredoči 100 siguran šifrat (tzv Hitlerovu super šifru) a l i ipak sreća nas jeposluži la da čovečanstvo tada ni je bi lo spremno da upotrebi svu raspoloživutehnologi ju

Albert Ajnštajn bdquoČetvrti svetski rat će se voditi tol jagamardquo

Zaboravl jeni heroj i Blečl i parka iako su odigral i važnu ulogu u pobedi saveznika usvetskom ratu postal i su žrtve bdquotop secretrdquo doktrine potpuno su zaboravl jeni inestal i su iz istori je

Zakl jučak ovog članka je da je ideologi ja otvorenog kocircda sasvim sigurno tu da nampomogne i da otvori vrata ka većoj sigurnosti novim idejama i kval itetu sameinfrastrukture sistema koju svi zajedno razvi jamo

Internet mreže i komunikacije

45

Broj 33

Autor Nikola Hardi

NabrajanjaBez brojeva

Za nabrajanje pojmova u Bimeru (eng Beamer) koristi se okruženje itemize aunutar tog okruženja možemo da dodajemo nove stavke pomoću item Primerizgleda ovako

beginitemizeitem Stavka Aitem Stavka Bitem Stavka C

enditemize

Sa brojevima

Postoje situaci je kada uz nabrajanje treba da stoje i redni brojevi - za to se koristienumerate okruženje a nove stavke se takođe dodaju pomoću item

beginenumerateitem Redni broj 1item Redni broj 2item Redni broj 3

endenumerate

prezentaci ja

Beamer (4 deo)

Sam svoj majstor

46

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

DefinicijeTreća situaci ja je nabrajanje parova termin - definici ja U tom slučaju se koristiokruženje description Već možete da pretpostavite kako se dodaju nove stavke

Primer

begindescriptionitem[Pojam A] Definicija izmišljenog pojma Aitem[Pojam B] Definicija izmišljenog pojma Bitem[Pojam C] Definicija izmišljenog pojma C

enddescription

Ostala podešavanja i zanimljivostiSva prethodna okruženja mogu da budu ugneždena jedno unutar drugog dotrećeg nivoa Treba biti pažl j iv jer sla jdovi vrlo lako mogu da postanu nečitl j ivi Osim toga moguće je izabrati i format oznake i l i rednih brojeva - na primer ovako

beginenumerate[I]beginenumarate[a)]

Takođe moguće je upravl jati pojavl j ivanjem pojedinih stavki na slajdovima Drugimrečima možemo da odredimo da se nabrajanja postepeno otkrivaju tako što ćemouz stavku dodati lt1-gt odnosno broj od kojeg slajda žel imo da se ta stavkapojavl ju je Tada će jedno nabrajanje biti bdquorazvučenordquo na više slajdovaJednostavni ja mogućnost je da u zaglavl je okruženja dodamo +- što znači dažel imo da se svakim slajdom otkriva po jedna nova stavka iz nabrajanja Znak bdquo-rdquo uoba primera znači da žel imo da se stavka pojavi na sledećem slajdu i da ostane

Sam svoj majstor

47

Broj 33

prisutna Možemo da izostavimo znak bdquo-rdquo i tada će stavka biti prisutna samo najednom slajdu i l i da napišemo raspon slajdova u koj ima žel imo da ta stavka budeprisutna

Rad sa kolonama i blokovimaDo sada su svi primeri podrazumeval i da je sadržaj napisan preko cele širineslajda al i Bimer (eng Beamer) ima i jednostavne mehanizme za razmeštanjesadržaja po kolonama Za rad sa kolonama se koristi okruženje columns unutarkojeg možemo da dodajemo nove kolone pomoću columnširina Sadržaj jemoguće potom pisati i van okruženja sa kolonama

U paru sa kolonama često se sreće i okruženje block koje se parametrizujenaslovom Primerom su i lustrovani i okruženje column i okruženje block

beginframebegincolumns

column05textwidthbeginblockNaslov levog blokaSadržaj u prvoj (levoj) koloni endblock

column05textwidthbeginblockNaslov desnog blokaSadržaj u drugoj (desnoj) koloni

endblockendcolumns

beginblockVan kolona

Beamer

48

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Tekst koji se nalazi ispod kolonaendblock

endframe

TabeleIako se u radu sa prezentaci jama sadržaj najčešće može uredno rasporeditipomoću kolona i nabrajanja nekada to ni je dovol jno jer su tabele pravi formatBimer podržava standardno Lateh (LaTeX) okruženje za rad sa tabelamaOkruženje za rad sa tabelama se zove tabular Pri kreiranju nove tabele moguće jepodesiti koje kolone će biti razdvojene l ini jom i da l i će nj ihov sadržaj biti centrirani l i uz levu i l i uz desnu ivicu Dodavanje novog reda se jednostavno radidodavanjem hline Lateh pruža zaista jako fleksibi lan rad sa tabelama i sigurno ćedoskočiti svim mogućim i nemogućim zamisl ima Potražite bi lo koje Lateh uputstvoza rad sa tabelama i radiće i sa Bimerom

beginframebegintabular | c | c | c | c |

hlineamp Ponedeljak amp Utorak amp Sreda hline

1 amp 16 amp 32 amp 64 hline2 amp 16 amp 128 amp 1024 hline3 amp 16 amp 512 amp 4096 hline

endtabularendframe

Sam svoj majstor

49

Broj 33

Beamer

Teoreme i istaknut tekstU nastavi su česta izlaganja teorema nj ihovih dokaza i primera U Bimer jeugrađena podrška za elegantno predstavl janje ove trojke Mehanizam takođepodržava postepeno otkrivanje sadržaja sla jda tako da slušaocima ne bude odmahotkriven dokaz teoreme Mehanizam za postepeno otkrivanje se kao i kodnabrajanja postiže pomoću bdquolt1-gtrdquo konstrukci je Evo kako to izgleda

beginframeframetitlePrimer teoreme

begintheoremlt1-gt Teorema kaže da su beamer prezentacijezanimljive

endtheorem

beginexamplelt2-gt Ovaj kod kreira slajd beamer prezentacijeendexample

beginprooflt3-gt Čestitamo stigli ste do kraja serijala o pravljenju beamer prezentacija

endproofendframe

50

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Za krajOvim člankom završavamo seri ja l o Bimeru Nadamo se da smo uspel i da vaszainteresujemo za ovu vrlo korisnu klasu Lateha Trudi l i smo se da vamprezentujemo najvažni je delove Bimera koje ćete najčešće koristiti pri l ikomkreiranja svoj ih prezentaci ja

Napominjemo još jednom da je Bimer samo jedna od klasa Lateha što znači da i zaBimer važi sve ono što ste već mogl i da pročitate u ovom časopisu kad smo pisal iseri ja l bdquoUvod u LaTeXrdquo (LiBRE brojevi 17 do 21) Štaviše ovaj seri ja l o Bimeru jebio nastavak upravo tog seri ja la U ovom seri ja lu nismo pisal i o samomformatiranju teksta u prezentaci jama jer se podrazumeva da važe ista pravi la kao iu Latehu a o tome smo pisal i u prethodnom seri ja lu

Hvala vam što ste prati l i ovaj seri ja l i žel imo vam puno uspeha u kreiranju Bimerprezentaci ja

Sam svoj majstor

51

Broj 33

Autor Nenad Marjanović

Kada smo se upoznal i sa podešavanj ima sistema i umrežavanjem vreme je za našprvi Biglbon Blek (BBB - eng BeagleBone Black) projekat Svakom od nas će ovajizazov dati razl ičite ideje a jedna od nj ih može biti i zaštita privatnosti internetkorisnika Nažalost u Srbi j i ne postoj i ni jedan izlazni tor server (eng node) i to jepomalo tužna sl ika s obzirom da govorimo o populaci j i od sedam mil ionastanovnika Al i ovu sl iku možemo promeniti udruženim snagama i za početakkreiranjem Tor transfer i izlaznog servera U ovde prikazanom grafikonufokusiraćemo se na bdquoRauter Brdquo tačku odnosno transfer server konfiguraci ju

BeagleBone Black Rev C

Vodič od prvog dana (3 deo) ndashBeagleBone Black kao Tor relej

Hardver

52

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Tor predstavl ja mrežu servera koj i se povezuju radi bol je enkripci je podataka izaštite IP adrese korisnika Naš ci l j je da danas postanemo deo ovog predivnogprojekta i da se nađemo na svetskoj karti Tor servera

Brzina interneta i zakonske regulativePotrebno je imati na umu nekol iko bitnih stvari

1 Naš server = naša odgovornost2 Obavezno naznačite da ste vi administrator a ne korisnik istog servera3 Da posedujete internet brzinu od 2 Mbs

Ako ispunjavamo tri navedena pravi la i odgovornosti možemo se posvetitiadministrativnim poslovima

Instalacija i podešavanjaU ovom primeru koristimo Debi jan Vizi (eng Wheezy) odnosno Debi jan 7 verzi juna našem BBB uređaju Vi možete testirati i druge Linuks platforme Prvododajemo izvornu bibl ioteku u etcaptsourceslist faj l pokretanjem sledećekomande u terminalu

echo deb httpdebtorprojectorgtorprojectorg wheezy main gt etcaptsourceslistdtorlist

Zatim dodajemo izvorni kl juč vršimo ažuriranje sistema i instal iramo tor i tor-arm(Tor monitoring sistem)

gpg --keyserver keysgnupgnet --recv 886DDD89gpg --export A3C4F0F979CAA22CDBA8F512EE8CBC9E886DDD89 | sudo apt-keyadd -apt-get updateapt-get install debtorprojectorg-keyring -yapt-get install tor tor-arm egrep screen -y

Ovim smo uspešno završi l i instalaci ju Tor servera i sistema za monitoring odnosnonadgledanja našeg Tor servera Sledećom komandom radimo na podešavanj imaTor servera koja se nalaze u etctortorrc faj lu Obratite pažnju i izvršite potrebne

Hardver

53

Broj 33

izmenu u pol j ima IP adresa (eng Address) nadimka (eng Nickname) i kontaktpodataka (eng ContactInfo) pre pokretanja ove komande Kopiramo i pokrećemokomandu u celosti u terminalu

egrep -v ^(|$) etctortorrcORPort 443Address 19216811Nickname LibreTorRelayRelayBandwidthRate 100 KBRelayBandwidthBurst 120 KBContactInfo ltvi at gmail dot comgt irPort 8080DirPortFrontPage etctortorhtmlExitPolicy reject

Detal je o svim vrednostima nećemo iznositi u ovom broju LiBRE časopisa al ićemo o nj ima pisati u sledećem u kome ćemo pričati o zaštiti Tor servera imogućnosti podešavanja određenih izlaznih pravi la (eng ExitPolicy)

Nakon ovoga možemo primetiti da se u folderu etctor ne nalazi torhtml faj l Ovaj faj l ni je od vel ikog značaja i možete ga l ično napraviti i l i preuzeti jednu kopi ju- naprimer sa sledeće lokaci je

cp usrsharedoctortorhtml etctortorhtml

Opcije i Tor Arm monitoringDa bismo ispravno koristi l i Tor Arm potrebno je urediti još jednom etctortorrcfaj l i restartovati servis

echo -e ldquoDisableDebuggerAttachment 0n AvoidDiskWritesrdquo gtgt etctortorrcsudo service tor reload

Ukol iko žel ite koristiti Tor Arm za nadgledanje aktivnosti na serveru pokreniteprogram screen kl iknite na bdquoEnterrdquo i kucajte sudo -u debian-tor arm Naekranu ćete imati sl ičan prikaz

BeagleBone Black

54

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Hardver

55

Broj 33

Da bismo napusti l i screen program koristimo Ctrl + a + d i na taj način kada sesledeći put pri javimo na server kucamo samo screen -r u terminalu - i naći ćemose ponovo na čuvenom Tor Arm monitoring ekranu

Nakon svake promene konfiguracionih faj lova ako slučajno nismo nešto podesi l ikako treba restartujemo servise

U sledećem broju časopisa govorićemo o minimalnim podešavanj ima ikonfigurisanju izlaznog Tor servera (eng Tor Exit Node) opci jama sigurnosti isl ičnim detal j ima u vezi sa našim prvim projektom Do čitanja u sledećem broju

BeagleBone Black

LUGoNS BarCamp 4subota 7 mart 2015 godine

Četvrti LUGoNS-ov Barkemp (BarCamp) održaće se u Novom Sadu usubotu 7 marta 2015 godine na Fakultetu tehničkih nauka sa početkomu 12 časova

Ulaz je slobodan

Poziv za predaju radovaLUGoNS poziva sve zainteresovane da pošal ju svoje radove (predavanjaprezentaci je radionice i diskusi je) do 28 februara 2015 godine

Oblasti iz koj ih možete da pri javite vaše radove su

bull Slobodan softverbull Zaniml j iv hardverbull Hakerski zakonibull Sigurnosne noćne morebull Anonimnost i privatnost na internetubull Duboki veb (eng Deep Web)bull Soci ja lne mrežebull Soci ja lni inženjeringbull Hakovanje mobi lnih uređajabull Internet u oblaku (eng Clouds) ndash hakovanje razbi janje i neočekivano korišćenjebull DPI (eng deep packet inspection)bull Mreža i mrežna neutralnost ndash vlasništvo cenzura nadmudrivanje i pol itika bdquodefaktordquo standarda

bull Programiranje i programski jezici

Nemojte se ustručavati i slobodno nam se javite ako imate rad na gore navedenei l i sl ične teme koj i smatrate interesantnim

Stranica za predaju radova nalazi se na https events lugonsorgp=1658

Page 29: LiBRE 33 Lat

29

Broj 33

ju u ponudi pa se možda sl ični lokalni projekti koj i su usmereni samo na striktnulokal izaci ju smatraju nepotrebnima Uzvodna lokal izaci ja u slučaju Srbi je vrlo čestobude veoma loše čak nakaradno sprovedena Jedna polovina programa jelokal izovana srpskom ćiri l icom a druga latinicom Ako postoj i još delova sistemakoj i uopšte ni je lokal izovan onda se pojavl ju ju i delovi programa koj i su naengleskom Zato ćemo se vratiti na prvu rečenicu ovog pasusa i ponovo utvrditi dasamo lokalni projekat može potpuno kontrol isati pravu srpsku lokal izaci ju

U Srbi j i za sada imamo dva aktivna projekta GNULinuks distribuci je ndash TriOS(http triosrs) i Serbian (http wwwdebian-srbi ja iz rspserbianhtml) Obaprojekta su mlada i imaju svoj ih prednosti i mana Kome treba lokal izovanoperativni sistem može da proba jedan od ova dva projekta

U potrazi za idealnom distribucijom

30

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Iako ove dve domaće distribuci je nisu baš naj idealni je interesantno je probati ih iuporediti sa drugim distribuci jama

Za kraj serijalaNamera nam je bi la da kroz ovaj seri ja l o kriteri jumima pri izboru idealnedistribuci je definišemo većinu kriteri juma pri izboru i pokažemo zašto je teškoodgovoriti na jednostavno pitanje bdquoKoju mi distribuci ju preporučujeterdquo

Ni na samom kraju nismo dal i konkretan odgovor na pitanje koja je idealnaGNULinuks distribuci ja Suviše je subjektivnih ocena da bi se mogao datikonkretan odgovor Smatramo da je jako teško napisati neki algoritam izbora pokriteri jumima koje smo identifikoval i i definisal i a možda je čak i nemoguće poštose izlazi stalno menjaju Izlazi iz tog algoritma su GNULinuks distribuci je koj ih izdana u dan ima sve više a i one stare se stalno menjaju

Sam seri ja l bdquoU potrazi za idealnom distribuci jomrdquo neće biti završen samo zato štose više neće baviti kriteri jumima pri izboru nego će pokušati da predstavl jaGNULinuks distribuci je koje su po nečemu bdquoidealnerdquo

Oslobađanje

31

Broj 33

ORM

Autor Dejan Čugal j

Object relation mapping (ORM)

ORM (eng Object RelationMapping) je način postizanja traj-nosti (eng persistence) objekataunutar relacionih baza podatakaModel deluje kao posrednik nalogičkom delu apl ikaci je Automat-ski presl ikava podatke iz objekata ubazu i nazad na zahtev apl ikaci jeDa bismo objasni l i kako ovo sveradi moramo da vam predstavimoORM frejmvork (eng framework)programa otvorenog koda -Hajbernejt (eng Hibernate -http hibernateorgorm)

Šta je ORMUkratko ORM je automatizovano transparentno presl ikavanje objekatakorišćenjem metapodataka koj i opisuju mapiranje veze između objekta i baze

ORM (2 deo)

Slobodni profesionalac

32

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

podataka u apl ikaci jama koje su napisane u objektno ori jentisanim programskimjezicima Apl ikaci ja komunicira sa ORM-om preko njegovog vlastitog API-ja (engapplication programming interface) i određenih objekata Ova komunikaci ja jepotpuno odvojena od komunikaci je koja se odvi ja između ORM-a i baze podatakapreko SQL-a i DBC-a

Da bi se postigla i dostigla potpuna snaga ORM-a u apl ikaci j i koju projektujemonikako se ne sme iskl jučiti znanje relacionih modela SQL jezika te poznavanjeDBMS-a u kome se radi ORM ni je ništa drugo do srednj i sloj između gorepomenutih tehnologi ja i objektno ori jentisanog programiranja kao što smo to dosada već više puta naglasi l i

Implementacija ORM-aPostoje razl ičiti načini implementaci je ORM-a Mark Fasl (Mark Fussel) je 1997definisao četiri nivoa

1 bdquoČistrdquo relacioni način2 Slabo mapiranje objekata3 Umereno mapiranje objekata4 Potpuno mapiranje objekata

bdquoČistrdquo relacioni način

Cela apl ikaci ja ukl jučujući i korisnički interfejs dizajnirana je relacionim modelom iSQL relacionim operatorima Ovakav pristup je odl ičan za male projekte Direktanpristup SQL-u omogućava fino podešavanje svakog aspekta upita koj i se postavl jabazi podataka Osnovne mane su portabi lnost (prenosivost) i održavanje ovakvihsistema pogotovo ako se planira korišćenje apl ikaci je na duži rok Ovakvi sistemimasovno koriste sačuvane procedure (eng stored procedures) što znači da jeposlovna logika (eng busines logic) prebačena na samu bazu podataka

Slabo mapiranje objekata

Entiteti su predstavl jeni kao klase i mapiranje se radi ekspl icitno ka relacionimtabelama SQLJDBC je sakriven od poslovne logike korišćenjem poznatih šablona(patterns)

Umereno mapiranje objekata

Slobodni profesionalac

33

Broj 33

Dizajn apl ikaci ja se svodi na objektne modele SQL se generiše u vremekompaj l iranja (eng build-time) i l i u vreme izvršavanja (eng run-time) Specifikaci jaupita nad bazama podataka se radi na objektno ori jentisanom jeziku Ovakvisistemi se koriste u apl ikaci jama srednj ih vel ičina kod koj ih je bitna portabi lnostizmeđu razl ičitih sistema za upravl janje bazama podataka (DBMS)

Potpuno mapiranje objekata

Podržava sofisticirano objektno model iranje nasleđivanje i pol imorfizamEfikasnost dobi janja podataka je na visokom nivou i koriste se metode kao što sulenjo učitavanje (eng lazy loading) i strategi ja keširanja (eng caching) Implementaci ja je transparentna u apl ikaci jama Ovaj nivo je jako teško dostići Pojedincu su potrebne godine razvoja da postigne ovakvu fleksibi lnost pristupa imanipulaci ja u relacionim bazama podataka Upravo ovaj nivo se postiže ako sekoriste rešenja ORM-a kao što je Hajbernejt

Zašto ORMImplementaci ja ORM rešenja pogotovo ako seprvi put susrećete sa ovim modelom može dabude veoma frustrirajuća i malo teža zaimplementaci ju Kada ovo kažemo misl imo daprogramer koj i implementira ORM i hoće da istibude kval itetno urađen mora da posedujepredznanje objektno ori jentisanog programiranjai naprednih tehnika kao što su nasleđivanje ipol imorfizam

Ovo inicira fundamentalna pitanja

bull Pa zašto bi iko onda implementirao ovako nešto kompleksnobull Vredi l i truda upuštati se uopšte u ORM

Odgovor ni je jednostavan Dosadašnja iskustva u korišćenju ORM-a i njegovapopularnost već daju odgovor na postavl jeno pitanje Očigledno je da su benefitikoje donosi ovaj model veći od kompleksnosti njegove implementaci je a to su

Hibernate ORM

34

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Veća produktivnost

ORM smanjuje kol ičinu koda potrebnog za ostvarivanje trajnosti podataka Ovoomogućava programeru da vreme koje bi utrošio na ručno mapiranje podatakautroši na druge delove apl ikaci je

Lakše održavanje

Manje l ini ja koda osigurava bol ju razuml j ivost (i možda bol j i kval itet koda) jernaglašava apl ikaci jsku logiku ORM takođe ublažava uticaj nastal ih promena kaošto su promene u bazi strukturi tabela i td

Prenosivost

Većina ORM rešenja podržava sisteme za upravl janje bazama podataka raznihproizvođača ORM u potpunosti odvaja sloj apl ikaci je od stvarne SQL komunikaci jekoja se odvi ja u pozadini Time omogućava da se pišu apl ikaci je koje će moći da seizvršavaju na razl ičitim bazama podataka bez potrebe za dodatnim kodiranjemOva komunikaci ja se odvi ja sa programskim interfejsima ORM-a nezavisno oDBMS-u sa koj im je u bi lo kom momentu povezan ORM takođe omogućava lakšiprelaz sa manj ih na veće baze podataka tokom razvoja apl ikaci je

Uvidel i smo da trenutno postoje dve paradigme koje se bdquosudarajurdquo i koje supodjednako dobre same za sebe Relaciona paradigma potvrđuje da sve što jeizgrađeno na matematičkim osnovama je i trajno u smislu kval iteta koje posedujeU domenu u kom relaciona paradigma egzistira ona je ako je to u ovo vremeuopšte moguće tvrditi nezamenj iva

Ono što otvara pitanja i daje razlog za sumnju je koja je krajnja granicaupotrebl j ivosti relacione paradigme tj kol iki su kapaciteti složenosti zahtevaapl ikaci ja sa kojom može da se nosi Praksa je pokazala da je sasvim mogućebdquoizvestirdquo složene projekte - al i održavanje skalabi lnost razuml j ivost prenosivost -pitanja su sa koj im se relaciona paradigma teško može izboriti

Sa druge strane svoj habitat u informacionim tehnologi jama je našla i objektna

Slobodni profesionalac

35

Broj 33

paradigma Iako na prvi pogled ova dva modela nemaju ništa zajedničko - što je uneku ruku i istinito gledajući prirodu podataka koj im manipul išu - praksa jepokazala da su usko povezane i skoro da imaju sinaptičku vezu

Pitanje bdquokako spoj iti te sinapserdquo dovelo je do žučnih rasprava u uskim naučnimprogramersko-administratorskim krugovima Rodi l i su se razni model i a l i jedan jeiskočio i polako ulazi u široku primenu - a to je ORM Svoj im supti lnim pristupomproblemu nekompatibi lnih paradigmi nekako je uspeo da stvori taj nedostajućibdquoelektrični signalrdquo koj i ih je povezao Ovo je omogući lo da dve strane koje susvaka za sebe u svom domenu ostavi le i ostavl ja ju duboki trag u informacionimtehnologi jama sarađuju i donesu novi kval itet

Korisni l inkovi

[1] Hibernejt http hibernateorg[2] Viki http googlLlZulw[3] Tutori ja l i http googlCGzvnc

Hibernate ORM

36

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Autor Kriptopank

Šta su zapravo metapodaci Najkraće rečeno to su podaci o podacima i l iinformaci je koje opisuju podatke

Najpre da napravimo razl iku između podataka i metapodataka Podaci sunaprimer snimak (i l i transkript) vaših telefonskih razgovora sadržaj poruka kojepišete primate i l i šal jete podaci koje kačite na internet i l i preuzimate pretrageGuglom postovi na forumima dopisivanja na IRC kanal ima i l i drugim četovimaaudio i video snimci Skajp razgovora i tako dal je

Hajde da vidimo šta bi bi l i odgovarajući metapodaci za ove primere

bull Za telefonske razgovore metapodaci mogu biti lokaci ja učesnika brojevitelefona trajanje razgovora IP i MAC adresa

bull Za poruke četove i Skajp i l i druge video-audio komunikaci je sl ično je kao kodtelefonskih razgovora

To su samo metapodaci

Internet mreže i komunikacije

37

Broj 33

bull Kod foruma i pretraga Guglom ima malo manje metapodataka al i Gugl i raznisajtovi i forumi ionako čuvaju logove o korisnicima što su takođe metapodaci

Ako do sada koj im slučajem niste uvidel i opasnost po privatnost u ovimmetapodacima koje svako od nas smrtnika svakodnevno ostavl ja za sobom usvetu interneta i ostal ih digitalnih komunikaci ja nadamo se da će vas ovaj primermakar podstaći na razmišl janje a možda i na nešto više

Zamisl i te da neko (zvaćemo ga posmatrač) stalno sakupl ja metapodatke koje zasobom ostavl jate kao mrvice hleba Posmatrač recimo zna da se nalazite naautoputu nedaleko od famoznog Feketića da se ne krećete da zovete AMSS zatimšlep službu i možda taksi a l i ne zna šta ste razgovaral i I l i posmatrač vidi da steprvo zval i aerodrom Nikola Tesla pa odmah potom taksi a l i ne zna šta sterazgovaral i I l i posmatrač vidi da ste zval i prvo šest brojeva či je identitete takođezna pa vidi da se oni zatim kreću ka vama - GPS (eng Global Positioning System) pa zatim pica servis Mekdonalds i neku poznatu prodavnicu kineske hrane al i nezna šta ste razgovaral i

Posmatrač ne mora da bude mnogo pametan niti da prisluškuje vaše razgovore dabi shvatio šta se dešava i l i šta će se desiti Sasvim mu je jasno da vam je u prvomprimeru auto stao na autoputu zatim da ste se u drugom slučaju uputi l i naaerodrom i da možda putujete van zemlje i l i ste poslal i taksi po nekoga saaerodroma a da u trećem slučaju okupl jate žurku kod vas Više možete pogledatina http googl7vUjP

Iako su to bdquosamordquo metapodaci treba biti svestan da ti metapodaci o vama stvarajujednu digitalnu sl iku i l i bol je reći digitalni mozaik i na neki način vas jedinstvenoodređuju Pogotovo kada se planski prikupl ja ju na više nivoa (kompjuter pametnitelefon pametni automobi l i kreditna kartica) metapodaci čine vaš digitalniidentitet Al i da stvar bude još gora ta sl ika o vama ne mora nužno biti istinita jerse lako može lažirati Recimo možete zameniti telefone i l i automobi le sa nekimnamerno i l i slučajno i l i vam neko može jednostavno ukrasti telefon laptop i l ikreditnu karticu Zaniml j iv video http googlKO1fKf

Evo jednog primera koj i vas može uvući u vel ike nevol je Recimo da prolazitenekom zabačenom ul icom i da vam neprimetno ispadne telefon al i vi to neprimetite i nastavite dal je svoj im putem U toj ul ici se samo nekol iko minutakasni je desi neko ubistvo i vas pozovu u pol ici ju kao osumnj ičenog Ako koj im

To su samo metapodaci

38

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

slučajem nemate dobar al ibi i l i nemate svedoka da posvedoči da niste bi l i u tojul ici nego tamo gde ste stvarno bi l i a drugih svedoka nema - možete jako lošeproći Zaniml j ivi video http googlspS5OZ

Metapodaci se takođe nalaze i u faj lovimapodacima koje svakodnevnopreuzimamo sa interneta pravimo i koristimo Svaki tip podatka može da sadržiodređene metapodatke koj i bol je opisuju sam podatak kao naprimer vremenastanka podatka kol iko je vremena potrošeno za njegovo kreiranje kol iko putamu je pristupl jeno kad je poslednj i put pristupl jeno i tako dal je Iako se ovakvimetapodaci možda još uvek čine bezazlenim oni mogu sadržati i IP adresuračunara sa kog su napravl jeni GPS koordinate (najčešće PNG format sl ika satelefona) ko ga je napravio (l ičnost i l i kompani jaorganizaci ja) naziv uređaja imodel sa koga je napravl jen kao i MAC adresu uređaja mej l adresu kreatorasoftver koj im je napravl jen i tako dal je Sve ovo može mnogo da naškodiprivatnosti izvornog kreatora faj la pogotovo ako je sadržaj poverl j iv Ukol iko nekopresretne taj podatak na internetu može saznati od koga je potekao Da ovo možebiti katastrofa po kreatora takvog faj la može i lustrovati primer torenta Ako stedošl i u posed nekih sl ika i l i video materi ja la i l i teksta koj i žel i te da podel ite sasvetom preko nekog torent sajta morate taj podatak prvo očistiti odmetapodataka da ne bi svako ko skine to što ste okači l i saznao da vi stoj i te izatoga

Internet mreže i komunikacije

39

Broj 33

Ljudi se konstantno prate metapodaci se sakupl ja ju i to ni je sada već ništa novoal i možemo da se trudimo da iza sebe ostavl jamo malo manje nežel jenihmetapodataka i da ih takoreći čistimo iz podataka koje razmenjujemo Na srećupostoje programi koj i ovo dobro rade

Najpre je potrebno da vidimo koje sve metapodatke neki faj l sadrži kako bismo seuveri l i da ovi metapodaci stvarno postoje i da je faj l bezbedan nakon nj ihovogbrisanja

Ako koristite operativne sisteme GNULinuksa treba da iz terminala preuzmete iinstal irate program pod nazivom exiftool

sudo apt-get install exiftool

Ovaj program će nam pružiti uvid u sve metapodatke koje faj l sadrži Korišćenje jeiz terminala al i je zato veoma jednostavno samo ga pokrenite na sledeći način

exiftool File

i l i

exiftool putanjadofajlapočevodkorenogdirektorijuma

Dobićete prikaz metapodataka koje je program pronašao Sada je potrebno davidimo da l i je podatak bdquoprl javrdquo tj da l i ima u njemu nešto da se briše i da akoima iz njega sve nepotrebno obrišemo Tu će nam pomoći drugi program zvaniMAT (eng Metadata Anonymisation Toolkit) koga možete naći na sajtuhttps matboumorg i l i jednostavno za korisnike Ubuntua i Debi jana uSoftverskom centru i l i ga možete instal irati iz terminala

sudo apt-get install mat

MAT će proveriti da l i je podatak bdquoprl javrdquo i l i ne i za vas ga očistiti od nežel jenihmetapodataka

Kada očistite faj l on je spreman za del jenje sa drugima a vi ste bezbedni jer nikone može reći da je faj l potekao sa vašeg računara

To su samo metapodaci

40

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Autor Dejan Čugal j

GH Hardi bdquoPrava matematika nema uticaj na ratrdquo - odbrana matematičara1940 godina

Bi l Tat - britanski matematičar verovatno niste čul i za njega1942 godine je izveo ogroman poduhvat koj i je skratio rat dvegodine (barem po rečima Ajzenhauera) i spasio mi l ione životaNažalost njegova vel ičina je preminula 2002 godine obavi jenavelom tajne i nikada zvanično ni je priznato njegovo dostignuće

Tomi Flauers - bivši inženjer poštanskog saobraćaja pretvorio jematematičke ideje Tata u prvi računar a to ni je bio bdquoENIACrdquo1Preminuo je 1998 godine a pretpostavl jamo da nikada niste čul ini za njegovu vel ičinu

Ovi umni giganti bdquoBlečl i parkardquo omogući l i su Britani j i da dešifruje strogo poverl j ivumašinu koju je koristio Hitler da diriguje drugim svetskim ratom a to ni je bi labdquoENIGMArdquo nego nešto mnogo tajni je i značajni je Vel ika je verovatnoća da nistečul i ni za ovo Neki kažu da je to bio Hitlerov Blekberi (BlackBerry)

Izgubljeni heroji bdquoBlečli parkardquo

1 engl Electronic Numerical Integrator And Computer - prvidigitalni elektronski računar

Internet mreže i komunikacije

41

Broj 33

1939 godine bdquoBlečl i parkrdquo je postao ratni štab MI6 (britanske vojne obaveštajneslužbe) Do danas je procurelo u javnost i dokumentovano brojnim fi lmskimdokumentarcima samo da je tu Alan Tjuring uspeo da dešifruje nemačkumornaričku šifru poznatu kao bdquoENIGMArdquo i uvel iko doprineo pobedi saveznika a to jesamo deo priče koj i je ispričan

U Blečl i parku su bi la tri heroja AlanTjuring Bi l Tat i Tomi Flauers Od nj ihtroj ice jedino Alanu Tjuringu je priznat deozasluga za pobedu saveznika u Drugomsvetskom ratu Pregledom otkrivenihpodataka danas možemo da tvrdimo daje bdquoENIGMArdquo već sa početka drugogsvetskog rata bi la zastarela tehnologi ja Zbog toga je bi lo lako skinuti veo tajne sa

ovog uspeha heroja Blečl i parka

Izgubljeni heroji bdquoBlečli parkardquo

42

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Bi l Tat koj i je dešifrovao bdquoTANI sistemrdquo (TANI) i Tomi Flauers koj i je samo svojomintuici jom i znanjem sklopio prvi računar na svetu (bdquoKOLOSrdquo) u svrhu bržegdolaženja do informaci ja razbi jenog koda bdquoTANIrdquo tako da zastarelost šifrata budesvedena na minimum - radi l i su na novoj generaci j i mašina za šifrovanje Ovatehnologi ja je bi la prepoznata kao tehnologi ja budućnosti pa i danas iznadinformaci ja o tim tehnologi jama stoj i natpis bdquovrhunska tajnardquo (eng Top Secret) Upravo ovaj veo tajni oko šifrata bdquoTANIrdquo i prvog računara je rezultirao iskrivl jenjuistori je informatike

Za uspehe u prvim godinama rata je zaista zaslužno razbi janje bdquoENIGMArdquo šifrata ito ni je sporno al i krajem 1941 godine u etru planete se začuo novi zvuk To je bi lanova mašina za šifrovanje ni je bi la zasnovana na bdquoMorzeurdquo već je radi la naprincipu teleprintera

Jedna od kl jučnih ideja Hitlerovog ratovanja je bi la u vel ikoj mobi lnosti i brzomdelovanju trupa na terenu a da bi se to izvelo komunikaci ja je isto tako morala dabude u najmanju ruku putem radio signala

Razl ika je ogromna Razl ika je u kol ičini podataka koj i može da se prenese ovimbdquotajnimrdquo putem Prvi svetski rat je bio zaniml j iv jer su se šifrovane poruke baziralena rečima dok je Drugi u potpunosti otvorio vrata današnjoj kriptografi j i a to jematematika

Originalan nemački kocircdni naziv za ovaj šifrat bio je bdquoLORENCrdquo Britanska

Internet mreže i komunikacije

43

Broj 33

obaveštajna služba mu je dala nadimak bdquoTANIrdquo Čak ni dan danas ni je baš poznatokako je sve nastalo al i pouzdano se zna da je tajnu mašinu Hitler nazvaobdquoGehajmšrajberrdquo (nem Geheimschreiber) - mašina tajni

U srž i tehnologi ju šifrovanja bdquoLORENCrdquo šifrata nećemo ulaziti u ovom članku al iverujte nam na reč - ni je bi la jednostavna Može se pretpostaviti da je inspiraci jaŠenonovog 2 rada slučajnosti bi la upravo ova tehnologi ja iz Drugog svetskog rata

Ono čime se Treći rajh vodio je bdquosigurnardquo šifrovana veza koju niko ni je smeo dadešifruje Prenošenje šifrovanih poruka pomoću radio signala je dalo obaveštajnimslužbama mogućnost presretanja poruka poslatih radio talasima Da l i se ovo idanas dešava Imamo l i sigurnost u našim šifrovanim podacima današnj ice

Ono što je usledi lo nakon proboja ovog bdquoneuhvatl j ivogrdquo šifrata je upravo ono što jeprincip današnj ice kao neka vrsta protokola koj i mora da se ispoštuje uperfektnom šifarskom Šenonovom sistemu

1 NIKADA NIKADA NE KORISTITI DVA PUTA ISTI KLJUČ ZA ŠIFROVANJE2 NIKADA NIKADA KLJUČ NE SME DA SE ŠALJE ISTIM KOMUNIKACIONIM KANALOM

KAO PORUKA3 NIKADA NIKADA KLJUČ NE SME DA BUDE MANJ I NEGO ŠTO JE PORUKA (engl

2 Klod Elvud Šenon (eng Claude Elwood Shannon) (1916-2001) - Američkinaučnik i inženjer

Izgubljeni heroji bdquoBlečli parkardquo

44

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

one time pad) 4 NIKADA NIKADA NE SMEMO DA SAKRIVAMO SISTEM ŠIFROVANJA SVE MORA

DA JE OTVORENOG KOcircDA

Najveći propusti kriptologi je koj i su uočeni baš u Drugom svetskom ratu jesupokušaj sakrivanja sredstava koj im se generiše tajna poruka i nepoznavanjeŠenonovih krajnj ih granica informaci ja Kada kažemo bdquosredstvo i sakrivanjerdquomisl imo na algoritme Postavl ja se pitanje zašto je danas kriptologi ja sigurni ja negočetrdesetih i pedesetih godina prošlog veka

Danas uprkos tome što su algoritmi za kriptografi ju otvorenog kocircda tajnostinformaci ja je na višem nivou nego što je to bi lo dok je algoritam bio strogopoverl j iv Tajnost tajnih podataka se ne zasniva na tajnosti a lgoritama koj i generišutaj isti bdquotajni izlazrdquo (eng cipher text) nego u nemogućnosti matematičke inverznefunkci je koja bi šifrovan tekst otvori la Ovde se vidi da je svrha strukture otvorenogkocircda kao jednog od značajnih delova današnje kriptologi je ona koja ga činisigurnim i svima dostupnim

Sada kada se sa ove distance osvrnemo na Drugi svetski rat možemo videti kol ikosmo bi l i bl izu apokal ipse Naime Albert Ajnštajn je već 1944 godine imao urukama recept za nuklearnu bombu Šenon je mogao već u to vreme da nampredoči 100 siguran šifrat (tzv Hitlerovu super šifru) a l i ipak sreća nas jeposluži la da čovečanstvo tada ni je bi lo spremno da upotrebi svu raspoloživutehnologi ju

Albert Ajnštajn bdquoČetvrti svetski rat će se voditi tol jagamardquo

Zaboravl jeni heroj i Blečl i parka iako su odigral i važnu ulogu u pobedi saveznika usvetskom ratu postal i su žrtve bdquotop secretrdquo doktrine potpuno su zaboravl jeni inestal i su iz istori je

Zakl jučak ovog članka je da je ideologi ja otvorenog kocircda sasvim sigurno tu da nampomogne i da otvori vrata ka većoj sigurnosti novim idejama i kval itetu sameinfrastrukture sistema koju svi zajedno razvi jamo

Internet mreže i komunikacije

45

Broj 33

Autor Nikola Hardi

NabrajanjaBez brojeva

Za nabrajanje pojmova u Bimeru (eng Beamer) koristi se okruženje itemize aunutar tog okruženja možemo da dodajemo nove stavke pomoću item Primerizgleda ovako

beginitemizeitem Stavka Aitem Stavka Bitem Stavka C

enditemize

Sa brojevima

Postoje situaci je kada uz nabrajanje treba da stoje i redni brojevi - za to se koristienumerate okruženje a nove stavke se takođe dodaju pomoću item

beginenumerateitem Redni broj 1item Redni broj 2item Redni broj 3

endenumerate

prezentaci ja

Beamer (4 deo)

Sam svoj majstor

46

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

DefinicijeTreća situaci ja je nabrajanje parova termin - definici ja U tom slučaju se koristiokruženje description Već možete da pretpostavite kako se dodaju nove stavke

Primer

begindescriptionitem[Pojam A] Definicija izmišljenog pojma Aitem[Pojam B] Definicija izmišljenog pojma Bitem[Pojam C] Definicija izmišljenog pojma C

enddescription

Ostala podešavanja i zanimljivostiSva prethodna okruženja mogu da budu ugneždena jedno unutar drugog dotrećeg nivoa Treba biti pažl j iv jer sla jdovi vrlo lako mogu da postanu nečitl j ivi Osim toga moguće je izabrati i format oznake i l i rednih brojeva - na primer ovako

beginenumerate[I]beginenumarate[a)]

Takođe moguće je upravl jati pojavl j ivanjem pojedinih stavki na slajdovima Drugimrečima možemo da odredimo da se nabrajanja postepeno otkrivaju tako što ćemouz stavku dodati lt1-gt odnosno broj od kojeg slajda žel imo da se ta stavkapojavl ju je Tada će jedno nabrajanje biti bdquorazvučenordquo na više slajdovaJednostavni ja mogućnost je da u zaglavl je okruženja dodamo +- što znači dažel imo da se svakim slajdom otkriva po jedna nova stavka iz nabrajanja Znak bdquo-rdquo uoba primera znači da žel imo da se stavka pojavi na sledećem slajdu i da ostane

Sam svoj majstor

47

Broj 33

prisutna Možemo da izostavimo znak bdquo-rdquo i tada će stavka biti prisutna samo najednom slajdu i l i da napišemo raspon slajdova u koj ima žel imo da ta stavka budeprisutna

Rad sa kolonama i blokovimaDo sada su svi primeri podrazumeval i da je sadržaj napisan preko cele širineslajda al i Bimer (eng Beamer) ima i jednostavne mehanizme za razmeštanjesadržaja po kolonama Za rad sa kolonama se koristi okruženje columns unutarkojeg možemo da dodajemo nove kolone pomoću columnširina Sadržaj jemoguće potom pisati i van okruženja sa kolonama

U paru sa kolonama često se sreće i okruženje block koje se parametrizujenaslovom Primerom su i lustrovani i okruženje column i okruženje block

beginframebegincolumns

column05textwidthbeginblockNaslov levog blokaSadržaj u prvoj (levoj) koloni endblock

column05textwidthbeginblockNaslov desnog blokaSadržaj u drugoj (desnoj) koloni

endblockendcolumns

beginblockVan kolona

Beamer

48

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Tekst koji se nalazi ispod kolonaendblock

endframe

TabeleIako se u radu sa prezentaci jama sadržaj najčešće može uredno rasporeditipomoću kolona i nabrajanja nekada to ni je dovol jno jer su tabele pravi formatBimer podržava standardno Lateh (LaTeX) okruženje za rad sa tabelamaOkruženje za rad sa tabelama se zove tabular Pri kreiranju nove tabele moguće jepodesiti koje kolone će biti razdvojene l ini jom i da l i će nj ihov sadržaj biti centrirani l i uz levu i l i uz desnu ivicu Dodavanje novog reda se jednostavno radidodavanjem hline Lateh pruža zaista jako fleksibi lan rad sa tabelama i sigurno ćedoskočiti svim mogućim i nemogućim zamisl ima Potražite bi lo koje Lateh uputstvoza rad sa tabelama i radiće i sa Bimerom

beginframebegintabular | c | c | c | c |

hlineamp Ponedeljak amp Utorak amp Sreda hline

1 amp 16 amp 32 amp 64 hline2 amp 16 amp 128 amp 1024 hline3 amp 16 amp 512 amp 4096 hline

endtabularendframe

Sam svoj majstor

49

Broj 33

Beamer

Teoreme i istaknut tekstU nastavi su česta izlaganja teorema nj ihovih dokaza i primera U Bimer jeugrađena podrška za elegantno predstavl janje ove trojke Mehanizam takođepodržava postepeno otkrivanje sadržaja sla jda tako da slušaocima ne bude odmahotkriven dokaz teoreme Mehanizam za postepeno otkrivanje se kao i kodnabrajanja postiže pomoću bdquolt1-gtrdquo konstrukci je Evo kako to izgleda

beginframeframetitlePrimer teoreme

begintheoremlt1-gt Teorema kaže da su beamer prezentacijezanimljive

endtheorem

beginexamplelt2-gt Ovaj kod kreira slajd beamer prezentacijeendexample

beginprooflt3-gt Čestitamo stigli ste do kraja serijala o pravljenju beamer prezentacija

endproofendframe

50

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Za krajOvim člankom završavamo seri ja l o Bimeru Nadamo se da smo uspel i da vaszainteresujemo za ovu vrlo korisnu klasu Lateha Trudi l i smo se da vamprezentujemo najvažni je delove Bimera koje ćete najčešće koristiti pri l ikomkreiranja svoj ih prezentaci ja

Napominjemo još jednom da je Bimer samo jedna od klasa Lateha što znači da i zaBimer važi sve ono što ste već mogl i da pročitate u ovom časopisu kad smo pisal iseri ja l bdquoUvod u LaTeXrdquo (LiBRE brojevi 17 do 21) Štaviše ovaj seri ja l o Bimeru jebio nastavak upravo tog seri ja la U ovom seri ja lu nismo pisal i o samomformatiranju teksta u prezentaci jama jer se podrazumeva da važe ista pravi la kao iu Latehu a o tome smo pisal i u prethodnom seri ja lu

Hvala vam što ste prati l i ovaj seri ja l i žel imo vam puno uspeha u kreiranju Bimerprezentaci ja

Sam svoj majstor

51

Broj 33

Autor Nenad Marjanović

Kada smo se upoznal i sa podešavanj ima sistema i umrežavanjem vreme je za našprvi Biglbon Blek (BBB - eng BeagleBone Black) projekat Svakom od nas će ovajizazov dati razl ičite ideje a jedna od nj ih može biti i zaštita privatnosti internetkorisnika Nažalost u Srbi j i ne postoj i ni jedan izlazni tor server (eng node) i to jepomalo tužna sl ika s obzirom da govorimo o populaci j i od sedam mil ionastanovnika Al i ovu sl iku možemo promeniti udruženim snagama i za početakkreiranjem Tor transfer i izlaznog servera U ovde prikazanom grafikonufokusiraćemo se na bdquoRauter Brdquo tačku odnosno transfer server konfiguraci ju

BeagleBone Black Rev C

Vodič od prvog dana (3 deo) ndashBeagleBone Black kao Tor relej

Hardver

52

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Tor predstavl ja mrežu servera koj i se povezuju radi bol je enkripci je podataka izaštite IP adrese korisnika Naš ci l j je da danas postanemo deo ovog predivnogprojekta i da se nađemo na svetskoj karti Tor servera

Brzina interneta i zakonske regulativePotrebno je imati na umu nekol iko bitnih stvari

1 Naš server = naša odgovornost2 Obavezno naznačite da ste vi administrator a ne korisnik istog servera3 Da posedujete internet brzinu od 2 Mbs

Ako ispunjavamo tri navedena pravi la i odgovornosti možemo se posvetitiadministrativnim poslovima

Instalacija i podešavanjaU ovom primeru koristimo Debi jan Vizi (eng Wheezy) odnosno Debi jan 7 verzi juna našem BBB uređaju Vi možete testirati i druge Linuks platforme Prvododajemo izvornu bibl ioteku u etcaptsourceslist faj l pokretanjem sledećekomande u terminalu

echo deb httpdebtorprojectorgtorprojectorg wheezy main gt etcaptsourceslistdtorlist

Zatim dodajemo izvorni kl juč vršimo ažuriranje sistema i instal iramo tor i tor-arm(Tor monitoring sistem)

gpg --keyserver keysgnupgnet --recv 886DDD89gpg --export A3C4F0F979CAA22CDBA8F512EE8CBC9E886DDD89 | sudo apt-keyadd -apt-get updateapt-get install debtorprojectorg-keyring -yapt-get install tor tor-arm egrep screen -y

Ovim smo uspešno završi l i instalaci ju Tor servera i sistema za monitoring odnosnonadgledanja našeg Tor servera Sledećom komandom radimo na podešavanj imaTor servera koja se nalaze u etctortorrc faj lu Obratite pažnju i izvršite potrebne

Hardver

53

Broj 33

izmenu u pol j ima IP adresa (eng Address) nadimka (eng Nickname) i kontaktpodataka (eng ContactInfo) pre pokretanja ove komande Kopiramo i pokrećemokomandu u celosti u terminalu

egrep -v ^(|$) etctortorrcORPort 443Address 19216811Nickname LibreTorRelayRelayBandwidthRate 100 KBRelayBandwidthBurst 120 KBContactInfo ltvi at gmail dot comgt irPort 8080DirPortFrontPage etctortorhtmlExitPolicy reject

Detal je o svim vrednostima nećemo iznositi u ovom broju LiBRE časopisa al ićemo o nj ima pisati u sledećem u kome ćemo pričati o zaštiti Tor servera imogućnosti podešavanja određenih izlaznih pravi la (eng ExitPolicy)

Nakon ovoga možemo primetiti da se u folderu etctor ne nalazi torhtml faj l Ovaj faj l ni je od vel ikog značaja i možete ga l ično napraviti i l i preuzeti jednu kopi ju- naprimer sa sledeće lokaci je

cp usrsharedoctortorhtml etctortorhtml

Opcije i Tor Arm monitoringDa bismo ispravno koristi l i Tor Arm potrebno je urediti još jednom etctortorrcfaj l i restartovati servis

echo -e ldquoDisableDebuggerAttachment 0n AvoidDiskWritesrdquo gtgt etctortorrcsudo service tor reload

Ukol iko žel ite koristiti Tor Arm za nadgledanje aktivnosti na serveru pokreniteprogram screen kl iknite na bdquoEnterrdquo i kucajte sudo -u debian-tor arm Naekranu ćete imati sl ičan prikaz

BeagleBone Black

54

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Hardver

55

Broj 33

Da bismo napusti l i screen program koristimo Ctrl + a + d i na taj način kada sesledeći put pri javimo na server kucamo samo screen -r u terminalu - i naći ćemose ponovo na čuvenom Tor Arm monitoring ekranu

Nakon svake promene konfiguracionih faj lova ako slučajno nismo nešto podesi l ikako treba restartujemo servise

U sledećem broju časopisa govorićemo o minimalnim podešavanj ima ikonfigurisanju izlaznog Tor servera (eng Tor Exit Node) opci jama sigurnosti isl ičnim detal j ima u vezi sa našim prvim projektom Do čitanja u sledećem broju

BeagleBone Black

LUGoNS BarCamp 4subota 7 mart 2015 godine

Četvrti LUGoNS-ov Barkemp (BarCamp) održaće se u Novom Sadu usubotu 7 marta 2015 godine na Fakultetu tehničkih nauka sa početkomu 12 časova

Ulaz je slobodan

Poziv za predaju radovaLUGoNS poziva sve zainteresovane da pošal ju svoje radove (predavanjaprezentaci je radionice i diskusi je) do 28 februara 2015 godine

Oblasti iz koj ih možete da pri javite vaše radove su

bull Slobodan softverbull Zaniml j iv hardverbull Hakerski zakonibull Sigurnosne noćne morebull Anonimnost i privatnost na internetubull Duboki veb (eng Deep Web)bull Soci ja lne mrežebull Soci ja lni inženjeringbull Hakovanje mobi lnih uređajabull Internet u oblaku (eng Clouds) ndash hakovanje razbi janje i neočekivano korišćenjebull DPI (eng deep packet inspection)bull Mreža i mrežna neutralnost ndash vlasništvo cenzura nadmudrivanje i pol itika bdquodefaktordquo standarda

bull Programiranje i programski jezici

Nemojte se ustručavati i slobodno nam se javite ako imate rad na gore navedenei l i sl ične teme koj i smatrate interesantnim

Stranica za predaju radova nalazi se na https events lugonsorgp=1658

Page 30: LiBRE 33 Lat

30

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Iako ove dve domaće distribuci je nisu baš naj idealni je interesantno je probati ih iuporediti sa drugim distribuci jama

Za kraj serijalaNamera nam je bi la da kroz ovaj seri ja l o kriteri jumima pri izboru idealnedistribuci je definišemo većinu kriteri juma pri izboru i pokažemo zašto je teškoodgovoriti na jednostavno pitanje bdquoKoju mi distribuci ju preporučujeterdquo

Ni na samom kraju nismo dal i konkretan odgovor na pitanje koja je idealnaGNULinuks distribuci ja Suviše je subjektivnih ocena da bi se mogao datikonkretan odgovor Smatramo da je jako teško napisati neki algoritam izbora pokriteri jumima koje smo identifikoval i i definisal i a možda je čak i nemoguće poštose izlazi stalno menjaju Izlazi iz tog algoritma su GNULinuks distribuci je koj ih izdana u dan ima sve više a i one stare se stalno menjaju

Sam seri ja l bdquoU potrazi za idealnom distribuci jomrdquo neće biti završen samo zato štose više neće baviti kriteri jumima pri izboru nego će pokušati da predstavl jaGNULinuks distribuci je koje su po nečemu bdquoidealnerdquo

Oslobađanje

31

Broj 33

ORM

Autor Dejan Čugal j

Object relation mapping (ORM)

ORM (eng Object RelationMapping) je način postizanja traj-nosti (eng persistence) objekataunutar relacionih baza podatakaModel deluje kao posrednik nalogičkom delu apl ikaci je Automat-ski presl ikava podatke iz objekata ubazu i nazad na zahtev apl ikaci jeDa bismo objasni l i kako ovo sveradi moramo da vam predstavimoORM frejmvork (eng framework)programa otvorenog koda -Hajbernejt (eng Hibernate -http hibernateorgorm)

Šta je ORMUkratko ORM je automatizovano transparentno presl ikavanje objekatakorišćenjem metapodataka koj i opisuju mapiranje veze između objekta i baze

ORM (2 deo)

Slobodni profesionalac

32

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

podataka u apl ikaci jama koje su napisane u objektno ori jentisanim programskimjezicima Apl ikaci ja komunicira sa ORM-om preko njegovog vlastitog API-ja (engapplication programming interface) i određenih objekata Ova komunikaci ja jepotpuno odvojena od komunikaci je koja se odvi ja između ORM-a i baze podatakapreko SQL-a i DBC-a

Da bi se postigla i dostigla potpuna snaga ORM-a u apl ikaci j i koju projektujemonikako se ne sme iskl jučiti znanje relacionih modela SQL jezika te poznavanjeDBMS-a u kome se radi ORM ni je ništa drugo do srednj i sloj između gorepomenutih tehnologi ja i objektno ori jentisanog programiranja kao što smo to dosada već više puta naglasi l i

Implementacija ORM-aPostoje razl ičiti načini implementaci je ORM-a Mark Fasl (Mark Fussel) je 1997definisao četiri nivoa

1 bdquoČistrdquo relacioni način2 Slabo mapiranje objekata3 Umereno mapiranje objekata4 Potpuno mapiranje objekata

bdquoČistrdquo relacioni način

Cela apl ikaci ja ukl jučujući i korisnički interfejs dizajnirana je relacionim modelom iSQL relacionim operatorima Ovakav pristup je odl ičan za male projekte Direktanpristup SQL-u omogućava fino podešavanje svakog aspekta upita koj i se postavl jabazi podataka Osnovne mane su portabi lnost (prenosivost) i održavanje ovakvihsistema pogotovo ako se planira korišćenje apl ikaci je na duži rok Ovakvi sistemimasovno koriste sačuvane procedure (eng stored procedures) što znači da jeposlovna logika (eng busines logic) prebačena na samu bazu podataka

Slabo mapiranje objekata

Entiteti su predstavl jeni kao klase i mapiranje se radi ekspl icitno ka relacionimtabelama SQLJDBC je sakriven od poslovne logike korišćenjem poznatih šablona(patterns)

Umereno mapiranje objekata

Slobodni profesionalac

33

Broj 33

Dizajn apl ikaci ja se svodi na objektne modele SQL se generiše u vremekompaj l iranja (eng build-time) i l i u vreme izvršavanja (eng run-time) Specifikaci jaupita nad bazama podataka se radi na objektno ori jentisanom jeziku Ovakvisistemi se koriste u apl ikaci jama srednj ih vel ičina kod koj ih je bitna portabi lnostizmeđu razl ičitih sistema za upravl janje bazama podataka (DBMS)

Potpuno mapiranje objekata

Podržava sofisticirano objektno model iranje nasleđivanje i pol imorfizamEfikasnost dobi janja podataka je na visokom nivou i koriste se metode kao što sulenjo učitavanje (eng lazy loading) i strategi ja keširanja (eng caching) Implementaci ja je transparentna u apl ikaci jama Ovaj nivo je jako teško dostići Pojedincu su potrebne godine razvoja da postigne ovakvu fleksibi lnost pristupa imanipulaci ja u relacionim bazama podataka Upravo ovaj nivo se postiže ako sekoriste rešenja ORM-a kao što je Hajbernejt

Zašto ORMImplementaci ja ORM rešenja pogotovo ako seprvi put susrećete sa ovim modelom može dabude veoma frustrirajuća i malo teža zaimplementaci ju Kada ovo kažemo misl imo daprogramer koj i implementira ORM i hoće da istibude kval itetno urađen mora da posedujepredznanje objektno ori jentisanog programiranjai naprednih tehnika kao što su nasleđivanje ipol imorfizam

Ovo inicira fundamentalna pitanja

bull Pa zašto bi iko onda implementirao ovako nešto kompleksnobull Vredi l i truda upuštati se uopšte u ORM

Odgovor ni je jednostavan Dosadašnja iskustva u korišćenju ORM-a i njegovapopularnost već daju odgovor na postavl jeno pitanje Očigledno je da su benefitikoje donosi ovaj model veći od kompleksnosti njegove implementaci je a to su

Hibernate ORM

34

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Veća produktivnost

ORM smanjuje kol ičinu koda potrebnog za ostvarivanje trajnosti podataka Ovoomogućava programeru da vreme koje bi utrošio na ručno mapiranje podatakautroši na druge delove apl ikaci je

Lakše održavanje

Manje l ini ja koda osigurava bol ju razuml j ivost (i možda bol j i kval itet koda) jernaglašava apl ikaci jsku logiku ORM takođe ublažava uticaj nastal ih promena kaošto su promene u bazi strukturi tabela i td

Prenosivost

Većina ORM rešenja podržava sisteme za upravl janje bazama podataka raznihproizvođača ORM u potpunosti odvaja sloj apl ikaci je od stvarne SQL komunikaci jekoja se odvi ja u pozadini Time omogućava da se pišu apl ikaci je koje će moći da seizvršavaju na razl ičitim bazama podataka bez potrebe za dodatnim kodiranjemOva komunikaci ja se odvi ja sa programskim interfejsima ORM-a nezavisno oDBMS-u sa koj im je u bi lo kom momentu povezan ORM takođe omogućava lakšiprelaz sa manj ih na veće baze podataka tokom razvoja apl ikaci je

Uvidel i smo da trenutno postoje dve paradigme koje se bdquosudarajurdquo i koje supodjednako dobre same za sebe Relaciona paradigma potvrđuje da sve što jeizgrađeno na matematičkim osnovama je i trajno u smislu kval iteta koje posedujeU domenu u kom relaciona paradigma egzistira ona je ako je to u ovo vremeuopšte moguće tvrditi nezamenj iva

Ono što otvara pitanja i daje razlog za sumnju je koja je krajnja granicaupotrebl j ivosti relacione paradigme tj kol iki su kapaciteti složenosti zahtevaapl ikaci ja sa kojom može da se nosi Praksa je pokazala da je sasvim mogućebdquoizvestirdquo složene projekte - al i održavanje skalabi lnost razuml j ivost prenosivost -pitanja su sa koj im se relaciona paradigma teško može izboriti

Sa druge strane svoj habitat u informacionim tehnologi jama je našla i objektna

Slobodni profesionalac

35

Broj 33

paradigma Iako na prvi pogled ova dva modela nemaju ništa zajedničko - što je uneku ruku i istinito gledajući prirodu podataka koj im manipul išu - praksa jepokazala da su usko povezane i skoro da imaju sinaptičku vezu

Pitanje bdquokako spoj iti te sinapserdquo dovelo je do žučnih rasprava u uskim naučnimprogramersko-administratorskim krugovima Rodi l i su se razni model i a l i jedan jeiskočio i polako ulazi u široku primenu - a to je ORM Svoj im supti lnim pristupomproblemu nekompatibi lnih paradigmi nekako je uspeo da stvori taj nedostajućibdquoelektrični signalrdquo koj i ih je povezao Ovo je omogući lo da dve strane koje susvaka za sebe u svom domenu ostavi le i ostavl ja ju duboki trag u informacionimtehnologi jama sarađuju i donesu novi kval itet

Korisni l inkovi

[1] Hibernejt http hibernateorg[2] Viki http googlLlZulw[3] Tutori ja l i http googlCGzvnc

Hibernate ORM

36

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Autor Kriptopank

Šta su zapravo metapodaci Najkraće rečeno to su podaci o podacima i l iinformaci je koje opisuju podatke

Najpre da napravimo razl iku između podataka i metapodataka Podaci sunaprimer snimak (i l i transkript) vaših telefonskih razgovora sadržaj poruka kojepišete primate i l i šal jete podaci koje kačite na internet i l i preuzimate pretrageGuglom postovi na forumima dopisivanja na IRC kanal ima i l i drugim četovimaaudio i video snimci Skajp razgovora i tako dal je

Hajde da vidimo šta bi bi l i odgovarajući metapodaci za ove primere

bull Za telefonske razgovore metapodaci mogu biti lokaci ja učesnika brojevitelefona trajanje razgovora IP i MAC adresa

bull Za poruke četove i Skajp i l i druge video-audio komunikaci je sl ično je kao kodtelefonskih razgovora

To su samo metapodaci

Internet mreže i komunikacije

37

Broj 33

bull Kod foruma i pretraga Guglom ima malo manje metapodataka al i Gugl i raznisajtovi i forumi ionako čuvaju logove o korisnicima što su takođe metapodaci

Ako do sada koj im slučajem niste uvidel i opasnost po privatnost u ovimmetapodacima koje svako od nas smrtnika svakodnevno ostavl ja za sobom usvetu interneta i ostal ih digitalnih komunikaci ja nadamo se da će vas ovaj primermakar podstaći na razmišl janje a možda i na nešto više

Zamisl i te da neko (zvaćemo ga posmatrač) stalno sakupl ja metapodatke koje zasobom ostavl jate kao mrvice hleba Posmatrač recimo zna da se nalazite naautoputu nedaleko od famoznog Feketića da se ne krećete da zovete AMSS zatimšlep službu i možda taksi a l i ne zna šta ste razgovaral i I l i posmatrač vidi da steprvo zval i aerodrom Nikola Tesla pa odmah potom taksi a l i ne zna šta sterazgovaral i I l i posmatrač vidi da ste zval i prvo šest brojeva či je identitete takođezna pa vidi da se oni zatim kreću ka vama - GPS (eng Global Positioning System) pa zatim pica servis Mekdonalds i neku poznatu prodavnicu kineske hrane al i nezna šta ste razgovaral i

Posmatrač ne mora da bude mnogo pametan niti da prisluškuje vaše razgovore dabi shvatio šta se dešava i l i šta će se desiti Sasvim mu je jasno da vam je u prvomprimeru auto stao na autoputu zatim da ste se u drugom slučaju uputi l i naaerodrom i da možda putujete van zemlje i l i ste poslal i taksi po nekoga saaerodroma a da u trećem slučaju okupl jate žurku kod vas Više možete pogledatina http googl7vUjP

Iako su to bdquosamordquo metapodaci treba biti svestan da ti metapodaci o vama stvarajujednu digitalnu sl iku i l i bol je reći digitalni mozaik i na neki način vas jedinstvenoodređuju Pogotovo kada se planski prikupl ja ju na više nivoa (kompjuter pametnitelefon pametni automobi l i kreditna kartica) metapodaci čine vaš digitalniidentitet Al i da stvar bude još gora ta sl ika o vama ne mora nužno biti istinita jerse lako može lažirati Recimo možete zameniti telefone i l i automobi le sa nekimnamerno i l i slučajno i l i vam neko može jednostavno ukrasti telefon laptop i l ikreditnu karticu Zaniml j iv video http googlKO1fKf

Evo jednog primera koj i vas može uvući u vel ike nevol je Recimo da prolazitenekom zabačenom ul icom i da vam neprimetno ispadne telefon al i vi to neprimetite i nastavite dal je svoj im putem U toj ul ici se samo nekol iko minutakasni je desi neko ubistvo i vas pozovu u pol ici ju kao osumnj ičenog Ako koj im

To su samo metapodaci

38

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

slučajem nemate dobar al ibi i l i nemate svedoka da posvedoči da niste bi l i u tojul ici nego tamo gde ste stvarno bi l i a drugih svedoka nema - možete jako lošeproći Zaniml j ivi video http googlspS5OZ

Metapodaci se takođe nalaze i u faj lovimapodacima koje svakodnevnopreuzimamo sa interneta pravimo i koristimo Svaki tip podatka može da sadržiodređene metapodatke koj i bol je opisuju sam podatak kao naprimer vremenastanka podatka kol iko je vremena potrošeno za njegovo kreiranje kol iko putamu je pristupl jeno kad je poslednj i put pristupl jeno i tako dal je Iako se ovakvimetapodaci možda još uvek čine bezazlenim oni mogu sadržati i IP adresuračunara sa kog su napravl jeni GPS koordinate (najčešće PNG format sl ika satelefona) ko ga je napravio (l ičnost i l i kompani jaorganizaci ja) naziv uređaja imodel sa koga je napravl jen kao i MAC adresu uređaja mej l adresu kreatorasoftver koj im je napravl jen i tako dal je Sve ovo može mnogo da naškodiprivatnosti izvornog kreatora faj la pogotovo ako je sadržaj poverl j iv Ukol iko nekopresretne taj podatak na internetu može saznati od koga je potekao Da ovo možebiti katastrofa po kreatora takvog faj la može i lustrovati primer torenta Ako stedošl i u posed nekih sl ika i l i video materi ja la i l i teksta koj i žel i te da podel ite sasvetom preko nekog torent sajta morate taj podatak prvo očistiti odmetapodataka da ne bi svako ko skine to što ste okači l i saznao da vi stoj i te izatoga

Internet mreže i komunikacije

39

Broj 33

Ljudi se konstantno prate metapodaci se sakupl ja ju i to ni je sada već ništa novoal i možemo da se trudimo da iza sebe ostavl jamo malo manje nežel jenihmetapodataka i da ih takoreći čistimo iz podataka koje razmenjujemo Na srećupostoje programi koj i ovo dobro rade

Najpre je potrebno da vidimo koje sve metapodatke neki faj l sadrži kako bismo seuveri l i da ovi metapodaci stvarno postoje i da je faj l bezbedan nakon nj ihovogbrisanja

Ako koristite operativne sisteme GNULinuksa treba da iz terminala preuzmete iinstal irate program pod nazivom exiftool

sudo apt-get install exiftool

Ovaj program će nam pružiti uvid u sve metapodatke koje faj l sadrži Korišćenje jeiz terminala al i je zato veoma jednostavno samo ga pokrenite na sledeći način

exiftool File

i l i

exiftool putanjadofajlapočevodkorenogdirektorijuma

Dobićete prikaz metapodataka koje je program pronašao Sada je potrebno davidimo da l i je podatak bdquoprl javrdquo tj da l i ima u njemu nešto da se briše i da akoima iz njega sve nepotrebno obrišemo Tu će nam pomoći drugi program zvaniMAT (eng Metadata Anonymisation Toolkit) koga možete naći na sajtuhttps matboumorg i l i jednostavno za korisnike Ubuntua i Debi jana uSoftverskom centru i l i ga možete instal irati iz terminala

sudo apt-get install mat

MAT će proveriti da l i je podatak bdquoprl javrdquo i l i ne i za vas ga očistiti od nežel jenihmetapodataka

Kada očistite faj l on je spreman za del jenje sa drugima a vi ste bezbedni jer nikone može reći da je faj l potekao sa vašeg računara

To su samo metapodaci

40

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Autor Dejan Čugal j

GH Hardi bdquoPrava matematika nema uticaj na ratrdquo - odbrana matematičara1940 godina

Bi l Tat - britanski matematičar verovatno niste čul i za njega1942 godine je izveo ogroman poduhvat koj i je skratio rat dvegodine (barem po rečima Ajzenhauera) i spasio mi l ione životaNažalost njegova vel ičina je preminula 2002 godine obavi jenavelom tajne i nikada zvanično ni je priznato njegovo dostignuće

Tomi Flauers - bivši inženjer poštanskog saobraćaja pretvorio jematematičke ideje Tata u prvi računar a to ni je bio bdquoENIACrdquo1Preminuo je 1998 godine a pretpostavl jamo da nikada niste čul ini za njegovu vel ičinu

Ovi umni giganti bdquoBlečl i parkardquo omogući l i su Britani j i da dešifruje strogo poverl j ivumašinu koju je koristio Hitler da diriguje drugim svetskim ratom a to ni je bi labdquoENIGMArdquo nego nešto mnogo tajni je i značajni je Vel ika je verovatnoća da nistečul i ni za ovo Neki kažu da je to bio Hitlerov Blekberi (BlackBerry)

Izgubljeni heroji bdquoBlečli parkardquo

1 engl Electronic Numerical Integrator And Computer - prvidigitalni elektronski računar

Internet mreže i komunikacije

41

Broj 33

1939 godine bdquoBlečl i parkrdquo je postao ratni štab MI6 (britanske vojne obaveštajneslužbe) Do danas je procurelo u javnost i dokumentovano brojnim fi lmskimdokumentarcima samo da je tu Alan Tjuring uspeo da dešifruje nemačkumornaričku šifru poznatu kao bdquoENIGMArdquo i uvel iko doprineo pobedi saveznika a to jesamo deo priče koj i je ispričan

U Blečl i parku su bi la tri heroja AlanTjuring Bi l Tat i Tomi Flauers Od nj ihtroj ice jedino Alanu Tjuringu je priznat deozasluga za pobedu saveznika u Drugomsvetskom ratu Pregledom otkrivenihpodataka danas možemo da tvrdimo daje bdquoENIGMArdquo već sa početka drugogsvetskog rata bi la zastarela tehnologi ja Zbog toga je bi lo lako skinuti veo tajne sa

ovog uspeha heroja Blečl i parka

Izgubljeni heroji bdquoBlečli parkardquo

42

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Bi l Tat koj i je dešifrovao bdquoTANI sistemrdquo (TANI) i Tomi Flauers koj i je samo svojomintuici jom i znanjem sklopio prvi računar na svetu (bdquoKOLOSrdquo) u svrhu bržegdolaženja do informaci ja razbi jenog koda bdquoTANIrdquo tako da zastarelost šifrata budesvedena na minimum - radi l i su na novoj generaci j i mašina za šifrovanje Ovatehnologi ja je bi la prepoznata kao tehnologi ja budućnosti pa i danas iznadinformaci ja o tim tehnologi jama stoj i natpis bdquovrhunska tajnardquo (eng Top Secret) Upravo ovaj veo tajni oko šifrata bdquoTANIrdquo i prvog računara je rezultirao iskrivl jenjuistori je informatike

Za uspehe u prvim godinama rata je zaista zaslužno razbi janje bdquoENIGMArdquo šifrata ito ni je sporno al i krajem 1941 godine u etru planete se začuo novi zvuk To je bi lanova mašina za šifrovanje ni je bi la zasnovana na bdquoMorzeurdquo već je radi la naprincipu teleprintera

Jedna od kl jučnih ideja Hitlerovog ratovanja je bi la u vel ikoj mobi lnosti i brzomdelovanju trupa na terenu a da bi se to izvelo komunikaci ja je isto tako morala dabude u najmanju ruku putem radio signala

Razl ika je ogromna Razl ika je u kol ičini podataka koj i može da se prenese ovimbdquotajnimrdquo putem Prvi svetski rat je bio zaniml j iv jer su se šifrovane poruke baziralena rečima dok je Drugi u potpunosti otvorio vrata današnjoj kriptografi j i a to jematematika

Originalan nemački kocircdni naziv za ovaj šifrat bio je bdquoLORENCrdquo Britanska

Internet mreže i komunikacije

43

Broj 33

obaveštajna služba mu je dala nadimak bdquoTANIrdquo Čak ni dan danas ni je baš poznatokako je sve nastalo al i pouzdano se zna da je tajnu mašinu Hitler nazvaobdquoGehajmšrajberrdquo (nem Geheimschreiber) - mašina tajni

U srž i tehnologi ju šifrovanja bdquoLORENCrdquo šifrata nećemo ulaziti u ovom članku al iverujte nam na reč - ni je bi la jednostavna Može se pretpostaviti da je inspiraci jaŠenonovog 2 rada slučajnosti bi la upravo ova tehnologi ja iz Drugog svetskog rata

Ono čime se Treći rajh vodio je bdquosigurnardquo šifrovana veza koju niko ni je smeo dadešifruje Prenošenje šifrovanih poruka pomoću radio signala je dalo obaveštajnimslužbama mogućnost presretanja poruka poslatih radio talasima Da l i se ovo idanas dešava Imamo l i sigurnost u našim šifrovanim podacima današnj ice

Ono što je usledi lo nakon proboja ovog bdquoneuhvatl j ivogrdquo šifrata je upravo ono što jeprincip današnj ice kao neka vrsta protokola koj i mora da se ispoštuje uperfektnom šifarskom Šenonovom sistemu

1 NIKADA NIKADA NE KORISTITI DVA PUTA ISTI KLJUČ ZA ŠIFROVANJE2 NIKADA NIKADA KLJUČ NE SME DA SE ŠALJE ISTIM KOMUNIKACIONIM KANALOM

KAO PORUKA3 NIKADA NIKADA KLJUČ NE SME DA BUDE MANJ I NEGO ŠTO JE PORUKA (engl

2 Klod Elvud Šenon (eng Claude Elwood Shannon) (1916-2001) - Američkinaučnik i inženjer

Izgubljeni heroji bdquoBlečli parkardquo

44

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

one time pad) 4 NIKADA NIKADA NE SMEMO DA SAKRIVAMO SISTEM ŠIFROVANJA SVE MORA

DA JE OTVORENOG KOcircDA

Najveći propusti kriptologi je koj i su uočeni baš u Drugom svetskom ratu jesupokušaj sakrivanja sredstava koj im se generiše tajna poruka i nepoznavanjeŠenonovih krajnj ih granica informaci ja Kada kažemo bdquosredstvo i sakrivanjerdquomisl imo na algoritme Postavl ja se pitanje zašto je danas kriptologi ja sigurni ja negočetrdesetih i pedesetih godina prošlog veka

Danas uprkos tome što su algoritmi za kriptografi ju otvorenog kocircda tajnostinformaci ja je na višem nivou nego što je to bi lo dok je algoritam bio strogopoverl j iv Tajnost tajnih podataka se ne zasniva na tajnosti a lgoritama koj i generišutaj isti bdquotajni izlazrdquo (eng cipher text) nego u nemogućnosti matematičke inverznefunkci je koja bi šifrovan tekst otvori la Ovde se vidi da je svrha strukture otvorenogkocircda kao jednog od značajnih delova današnje kriptologi je ona koja ga činisigurnim i svima dostupnim

Sada kada se sa ove distance osvrnemo na Drugi svetski rat možemo videti kol ikosmo bi l i bl izu apokal ipse Naime Albert Ajnštajn je već 1944 godine imao urukama recept za nuklearnu bombu Šenon je mogao već u to vreme da nampredoči 100 siguran šifrat (tzv Hitlerovu super šifru) a l i ipak sreća nas jeposluži la da čovečanstvo tada ni je bi lo spremno da upotrebi svu raspoloživutehnologi ju

Albert Ajnštajn bdquoČetvrti svetski rat će se voditi tol jagamardquo

Zaboravl jeni heroj i Blečl i parka iako su odigral i važnu ulogu u pobedi saveznika usvetskom ratu postal i su žrtve bdquotop secretrdquo doktrine potpuno su zaboravl jeni inestal i su iz istori je

Zakl jučak ovog članka je da je ideologi ja otvorenog kocircda sasvim sigurno tu da nampomogne i da otvori vrata ka većoj sigurnosti novim idejama i kval itetu sameinfrastrukture sistema koju svi zajedno razvi jamo

Internet mreže i komunikacije

45

Broj 33

Autor Nikola Hardi

NabrajanjaBez brojeva

Za nabrajanje pojmova u Bimeru (eng Beamer) koristi se okruženje itemize aunutar tog okruženja možemo da dodajemo nove stavke pomoću item Primerizgleda ovako

beginitemizeitem Stavka Aitem Stavka Bitem Stavka C

enditemize

Sa brojevima

Postoje situaci je kada uz nabrajanje treba da stoje i redni brojevi - za to se koristienumerate okruženje a nove stavke se takođe dodaju pomoću item

beginenumerateitem Redni broj 1item Redni broj 2item Redni broj 3

endenumerate

prezentaci ja

Beamer (4 deo)

Sam svoj majstor

46

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

DefinicijeTreća situaci ja je nabrajanje parova termin - definici ja U tom slučaju se koristiokruženje description Već možete da pretpostavite kako se dodaju nove stavke

Primer

begindescriptionitem[Pojam A] Definicija izmišljenog pojma Aitem[Pojam B] Definicija izmišljenog pojma Bitem[Pojam C] Definicija izmišljenog pojma C

enddescription

Ostala podešavanja i zanimljivostiSva prethodna okruženja mogu da budu ugneždena jedno unutar drugog dotrećeg nivoa Treba biti pažl j iv jer sla jdovi vrlo lako mogu da postanu nečitl j ivi Osim toga moguće je izabrati i format oznake i l i rednih brojeva - na primer ovako

beginenumerate[I]beginenumarate[a)]

Takođe moguće je upravl jati pojavl j ivanjem pojedinih stavki na slajdovima Drugimrečima možemo da odredimo da se nabrajanja postepeno otkrivaju tako što ćemouz stavku dodati lt1-gt odnosno broj od kojeg slajda žel imo da se ta stavkapojavl ju je Tada će jedno nabrajanje biti bdquorazvučenordquo na više slajdovaJednostavni ja mogućnost je da u zaglavl je okruženja dodamo +- što znači dažel imo da se svakim slajdom otkriva po jedna nova stavka iz nabrajanja Znak bdquo-rdquo uoba primera znači da žel imo da se stavka pojavi na sledećem slajdu i da ostane

Sam svoj majstor

47

Broj 33

prisutna Možemo da izostavimo znak bdquo-rdquo i tada će stavka biti prisutna samo najednom slajdu i l i da napišemo raspon slajdova u koj ima žel imo da ta stavka budeprisutna

Rad sa kolonama i blokovimaDo sada su svi primeri podrazumeval i da je sadržaj napisan preko cele širineslajda al i Bimer (eng Beamer) ima i jednostavne mehanizme za razmeštanjesadržaja po kolonama Za rad sa kolonama se koristi okruženje columns unutarkojeg možemo da dodajemo nove kolone pomoću columnširina Sadržaj jemoguće potom pisati i van okruženja sa kolonama

U paru sa kolonama često se sreće i okruženje block koje se parametrizujenaslovom Primerom su i lustrovani i okruženje column i okruženje block

beginframebegincolumns

column05textwidthbeginblockNaslov levog blokaSadržaj u prvoj (levoj) koloni endblock

column05textwidthbeginblockNaslov desnog blokaSadržaj u drugoj (desnoj) koloni

endblockendcolumns

beginblockVan kolona

Beamer

48

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Tekst koji se nalazi ispod kolonaendblock

endframe

TabeleIako se u radu sa prezentaci jama sadržaj najčešće može uredno rasporeditipomoću kolona i nabrajanja nekada to ni je dovol jno jer su tabele pravi formatBimer podržava standardno Lateh (LaTeX) okruženje za rad sa tabelamaOkruženje za rad sa tabelama se zove tabular Pri kreiranju nove tabele moguće jepodesiti koje kolone će biti razdvojene l ini jom i da l i će nj ihov sadržaj biti centrirani l i uz levu i l i uz desnu ivicu Dodavanje novog reda se jednostavno radidodavanjem hline Lateh pruža zaista jako fleksibi lan rad sa tabelama i sigurno ćedoskočiti svim mogućim i nemogućim zamisl ima Potražite bi lo koje Lateh uputstvoza rad sa tabelama i radiće i sa Bimerom

beginframebegintabular | c | c | c | c |

hlineamp Ponedeljak amp Utorak amp Sreda hline

1 amp 16 amp 32 amp 64 hline2 amp 16 amp 128 amp 1024 hline3 amp 16 amp 512 amp 4096 hline

endtabularendframe

Sam svoj majstor

49

Broj 33

Beamer

Teoreme i istaknut tekstU nastavi su česta izlaganja teorema nj ihovih dokaza i primera U Bimer jeugrađena podrška za elegantno predstavl janje ove trojke Mehanizam takođepodržava postepeno otkrivanje sadržaja sla jda tako da slušaocima ne bude odmahotkriven dokaz teoreme Mehanizam za postepeno otkrivanje se kao i kodnabrajanja postiže pomoću bdquolt1-gtrdquo konstrukci je Evo kako to izgleda

beginframeframetitlePrimer teoreme

begintheoremlt1-gt Teorema kaže da su beamer prezentacijezanimljive

endtheorem

beginexamplelt2-gt Ovaj kod kreira slajd beamer prezentacijeendexample

beginprooflt3-gt Čestitamo stigli ste do kraja serijala o pravljenju beamer prezentacija

endproofendframe

50

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Za krajOvim člankom završavamo seri ja l o Bimeru Nadamo se da smo uspel i da vaszainteresujemo za ovu vrlo korisnu klasu Lateha Trudi l i smo se da vamprezentujemo najvažni je delove Bimera koje ćete najčešće koristiti pri l ikomkreiranja svoj ih prezentaci ja

Napominjemo još jednom da je Bimer samo jedna od klasa Lateha što znači da i zaBimer važi sve ono što ste već mogl i da pročitate u ovom časopisu kad smo pisal iseri ja l bdquoUvod u LaTeXrdquo (LiBRE brojevi 17 do 21) Štaviše ovaj seri ja l o Bimeru jebio nastavak upravo tog seri ja la U ovom seri ja lu nismo pisal i o samomformatiranju teksta u prezentaci jama jer se podrazumeva da važe ista pravi la kao iu Latehu a o tome smo pisal i u prethodnom seri ja lu

Hvala vam što ste prati l i ovaj seri ja l i žel imo vam puno uspeha u kreiranju Bimerprezentaci ja

Sam svoj majstor

51

Broj 33

Autor Nenad Marjanović

Kada smo se upoznal i sa podešavanj ima sistema i umrežavanjem vreme je za našprvi Biglbon Blek (BBB - eng BeagleBone Black) projekat Svakom od nas će ovajizazov dati razl ičite ideje a jedna od nj ih može biti i zaštita privatnosti internetkorisnika Nažalost u Srbi j i ne postoj i ni jedan izlazni tor server (eng node) i to jepomalo tužna sl ika s obzirom da govorimo o populaci j i od sedam mil ionastanovnika Al i ovu sl iku možemo promeniti udruženim snagama i za početakkreiranjem Tor transfer i izlaznog servera U ovde prikazanom grafikonufokusiraćemo se na bdquoRauter Brdquo tačku odnosno transfer server konfiguraci ju

BeagleBone Black Rev C

Vodič od prvog dana (3 deo) ndashBeagleBone Black kao Tor relej

Hardver

52

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Tor predstavl ja mrežu servera koj i se povezuju radi bol je enkripci je podataka izaštite IP adrese korisnika Naš ci l j je da danas postanemo deo ovog predivnogprojekta i da se nađemo na svetskoj karti Tor servera

Brzina interneta i zakonske regulativePotrebno je imati na umu nekol iko bitnih stvari

1 Naš server = naša odgovornost2 Obavezno naznačite da ste vi administrator a ne korisnik istog servera3 Da posedujete internet brzinu od 2 Mbs

Ako ispunjavamo tri navedena pravi la i odgovornosti možemo se posvetitiadministrativnim poslovima

Instalacija i podešavanjaU ovom primeru koristimo Debi jan Vizi (eng Wheezy) odnosno Debi jan 7 verzi juna našem BBB uređaju Vi možete testirati i druge Linuks platforme Prvododajemo izvornu bibl ioteku u etcaptsourceslist faj l pokretanjem sledećekomande u terminalu

echo deb httpdebtorprojectorgtorprojectorg wheezy main gt etcaptsourceslistdtorlist

Zatim dodajemo izvorni kl juč vršimo ažuriranje sistema i instal iramo tor i tor-arm(Tor monitoring sistem)

gpg --keyserver keysgnupgnet --recv 886DDD89gpg --export A3C4F0F979CAA22CDBA8F512EE8CBC9E886DDD89 | sudo apt-keyadd -apt-get updateapt-get install debtorprojectorg-keyring -yapt-get install tor tor-arm egrep screen -y

Ovim smo uspešno završi l i instalaci ju Tor servera i sistema za monitoring odnosnonadgledanja našeg Tor servera Sledećom komandom radimo na podešavanj imaTor servera koja se nalaze u etctortorrc faj lu Obratite pažnju i izvršite potrebne

Hardver

53

Broj 33

izmenu u pol j ima IP adresa (eng Address) nadimka (eng Nickname) i kontaktpodataka (eng ContactInfo) pre pokretanja ove komande Kopiramo i pokrećemokomandu u celosti u terminalu

egrep -v ^(|$) etctortorrcORPort 443Address 19216811Nickname LibreTorRelayRelayBandwidthRate 100 KBRelayBandwidthBurst 120 KBContactInfo ltvi at gmail dot comgt irPort 8080DirPortFrontPage etctortorhtmlExitPolicy reject

Detal je o svim vrednostima nećemo iznositi u ovom broju LiBRE časopisa al ićemo o nj ima pisati u sledećem u kome ćemo pričati o zaštiti Tor servera imogućnosti podešavanja određenih izlaznih pravi la (eng ExitPolicy)

Nakon ovoga možemo primetiti da se u folderu etctor ne nalazi torhtml faj l Ovaj faj l ni je od vel ikog značaja i možete ga l ično napraviti i l i preuzeti jednu kopi ju- naprimer sa sledeće lokaci je

cp usrsharedoctortorhtml etctortorhtml

Opcije i Tor Arm monitoringDa bismo ispravno koristi l i Tor Arm potrebno je urediti još jednom etctortorrcfaj l i restartovati servis

echo -e ldquoDisableDebuggerAttachment 0n AvoidDiskWritesrdquo gtgt etctortorrcsudo service tor reload

Ukol iko žel ite koristiti Tor Arm za nadgledanje aktivnosti na serveru pokreniteprogram screen kl iknite na bdquoEnterrdquo i kucajte sudo -u debian-tor arm Naekranu ćete imati sl ičan prikaz

BeagleBone Black

54

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Hardver

55

Broj 33

Da bismo napusti l i screen program koristimo Ctrl + a + d i na taj način kada sesledeći put pri javimo na server kucamo samo screen -r u terminalu - i naći ćemose ponovo na čuvenom Tor Arm monitoring ekranu

Nakon svake promene konfiguracionih faj lova ako slučajno nismo nešto podesi l ikako treba restartujemo servise

U sledećem broju časopisa govorićemo o minimalnim podešavanj ima ikonfigurisanju izlaznog Tor servera (eng Tor Exit Node) opci jama sigurnosti isl ičnim detal j ima u vezi sa našim prvim projektom Do čitanja u sledećem broju

BeagleBone Black

LUGoNS BarCamp 4subota 7 mart 2015 godine

Četvrti LUGoNS-ov Barkemp (BarCamp) održaće se u Novom Sadu usubotu 7 marta 2015 godine na Fakultetu tehničkih nauka sa početkomu 12 časova

Ulaz je slobodan

Poziv za predaju radovaLUGoNS poziva sve zainteresovane da pošal ju svoje radove (predavanjaprezentaci je radionice i diskusi je) do 28 februara 2015 godine

Oblasti iz koj ih možete da pri javite vaše radove su

bull Slobodan softverbull Zaniml j iv hardverbull Hakerski zakonibull Sigurnosne noćne morebull Anonimnost i privatnost na internetubull Duboki veb (eng Deep Web)bull Soci ja lne mrežebull Soci ja lni inženjeringbull Hakovanje mobi lnih uređajabull Internet u oblaku (eng Clouds) ndash hakovanje razbi janje i neočekivano korišćenjebull DPI (eng deep packet inspection)bull Mreža i mrežna neutralnost ndash vlasništvo cenzura nadmudrivanje i pol itika bdquodefaktordquo standarda

bull Programiranje i programski jezici

Nemojte se ustručavati i slobodno nam se javite ako imate rad na gore navedenei l i sl ične teme koj i smatrate interesantnim

Stranica za predaju radova nalazi se na https events lugonsorgp=1658

Page 31: LiBRE 33 Lat

31

Broj 33

ORM

Autor Dejan Čugal j

Object relation mapping (ORM)

ORM (eng Object RelationMapping) je način postizanja traj-nosti (eng persistence) objekataunutar relacionih baza podatakaModel deluje kao posrednik nalogičkom delu apl ikaci je Automat-ski presl ikava podatke iz objekata ubazu i nazad na zahtev apl ikaci jeDa bismo objasni l i kako ovo sveradi moramo da vam predstavimoORM frejmvork (eng framework)programa otvorenog koda -Hajbernejt (eng Hibernate -http hibernateorgorm)

Šta je ORMUkratko ORM je automatizovano transparentno presl ikavanje objekatakorišćenjem metapodataka koj i opisuju mapiranje veze između objekta i baze

ORM (2 deo)

Slobodni profesionalac

32

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

podataka u apl ikaci jama koje su napisane u objektno ori jentisanim programskimjezicima Apl ikaci ja komunicira sa ORM-om preko njegovog vlastitog API-ja (engapplication programming interface) i određenih objekata Ova komunikaci ja jepotpuno odvojena od komunikaci je koja se odvi ja između ORM-a i baze podatakapreko SQL-a i DBC-a

Da bi se postigla i dostigla potpuna snaga ORM-a u apl ikaci j i koju projektujemonikako se ne sme iskl jučiti znanje relacionih modela SQL jezika te poznavanjeDBMS-a u kome se radi ORM ni je ništa drugo do srednj i sloj između gorepomenutih tehnologi ja i objektno ori jentisanog programiranja kao što smo to dosada već više puta naglasi l i

Implementacija ORM-aPostoje razl ičiti načini implementaci je ORM-a Mark Fasl (Mark Fussel) je 1997definisao četiri nivoa

1 bdquoČistrdquo relacioni način2 Slabo mapiranje objekata3 Umereno mapiranje objekata4 Potpuno mapiranje objekata

bdquoČistrdquo relacioni način

Cela apl ikaci ja ukl jučujući i korisnički interfejs dizajnirana je relacionim modelom iSQL relacionim operatorima Ovakav pristup je odl ičan za male projekte Direktanpristup SQL-u omogućava fino podešavanje svakog aspekta upita koj i se postavl jabazi podataka Osnovne mane su portabi lnost (prenosivost) i održavanje ovakvihsistema pogotovo ako se planira korišćenje apl ikaci je na duži rok Ovakvi sistemimasovno koriste sačuvane procedure (eng stored procedures) što znači da jeposlovna logika (eng busines logic) prebačena na samu bazu podataka

Slabo mapiranje objekata

Entiteti su predstavl jeni kao klase i mapiranje se radi ekspl icitno ka relacionimtabelama SQLJDBC je sakriven od poslovne logike korišćenjem poznatih šablona(patterns)

Umereno mapiranje objekata

Slobodni profesionalac

33

Broj 33

Dizajn apl ikaci ja se svodi na objektne modele SQL se generiše u vremekompaj l iranja (eng build-time) i l i u vreme izvršavanja (eng run-time) Specifikaci jaupita nad bazama podataka se radi na objektno ori jentisanom jeziku Ovakvisistemi se koriste u apl ikaci jama srednj ih vel ičina kod koj ih je bitna portabi lnostizmeđu razl ičitih sistema za upravl janje bazama podataka (DBMS)

Potpuno mapiranje objekata

Podržava sofisticirano objektno model iranje nasleđivanje i pol imorfizamEfikasnost dobi janja podataka je na visokom nivou i koriste se metode kao što sulenjo učitavanje (eng lazy loading) i strategi ja keširanja (eng caching) Implementaci ja je transparentna u apl ikaci jama Ovaj nivo je jako teško dostići Pojedincu su potrebne godine razvoja da postigne ovakvu fleksibi lnost pristupa imanipulaci ja u relacionim bazama podataka Upravo ovaj nivo se postiže ako sekoriste rešenja ORM-a kao što je Hajbernejt

Zašto ORMImplementaci ja ORM rešenja pogotovo ako seprvi put susrećete sa ovim modelom može dabude veoma frustrirajuća i malo teža zaimplementaci ju Kada ovo kažemo misl imo daprogramer koj i implementira ORM i hoće da istibude kval itetno urađen mora da posedujepredznanje objektno ori jentisanog programiranjai naprednih tehnika kao što su nasleđivanje ipol imorfizam

Ovo inicira fundamentalna pitanja

bull Pa zašto bi iko onda implementirao ovako nešto kompleksnobull Vredi l i truda upuštati se uopšte u ORM

Odgovor ni je jednostavan Dosadašnja iskustva u korišćenju ORM-a i njegovapopularnost već daju odgovor na postavl jeno pitanje Očigledno je da su benefitikoje donosi ovaj model veći od kompleksnosti njegove implementaci je a to su

Hibernate ORM

34

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Veća produktivnost

ORM smanjuje kol ičinu koda potrebnog za ostvarivanje trajnosti podataka Ovoomogućava programeru da vreme koje bi utrošio na ručno mapiranje podatakautroši na druge delove apl ikaci je

Lakše održavanje

Manje l ini ja koda osigurava bol ju razuml j ivost (i možda bol j i kval itet koda) jernaglašava apl ikaci jsku logiku ORM takođe ublažava uticaj nastal ih promena kaošto su promene u bazi strukturi tabela i td

Prenosivost

Većina ORM rešenja podržava sisteme za upravl janje bazama podataka raznihproizvođača ORM u potpunosti odvaja sloj apl ikaci je od stvarne SQL komunikaci jekoja se odvi ja u pozadini Time omogućava da se pišu apl ikaci je koje će moći da seizvršavaju na razl ičitim bazama podataka bez potrebe za dodatnim kodiranjemOva komunikaci ja se odvi ja sa programskim interfejsima ORM-a nezavisno oDBMS-u sa koj im je u bi lo kom momentu povezan ORM takođe omogućava lakšiprelaz sa manj ih na veće baze podataka tokom razvoja apl ikaci je

Uvidel i smo da trenutno postoje dve paradigme koje se bdquosudarajurdquo i koje supodjednako dobre same za sebe Relaciona paradigma potvrđuje da sve što jeizgrađeno na matematičkim osnovama je i trajno u smislu kval iteta koje posedujeU domenu u kom relaciona paradigma egzistira ona je ako je to u ovo vremeuopšte moguće tvrditi nezamenj iva

Ono što otvara pitanja i daje razlog za sumnju je koja je krajnja granicaupotrebl j ivosti relacione paradigme tj kol iki su kapaciteti složenosti zahtevaapl ikaci ja sa kojom može da se nosi Praksa je pokazala da je sasvim mogućebdquoizvestirdquo složene projekte - al i održavanje skalabi lnost razuml j ivost prenosivost -pitanja su sa koj im se relaciona paradigma teško može izboriti

Sa druge strane svoj habitat u informacionim tehnologi jama je našla i objektna

Slobodni profesionalac

35

Broj 33

paradigma Iako na prvi pogled ova dva modela nemaju ništa zajedničko - što je uneku ruku i istinito gledajući prirodu podataka koj im manipul išu - praksa jepokazala da su usko povezane i skoro da imaju sinaptičku vezu

Pitanje bdquokako spoj iti te sinapserdquo dovelo je do žučnih rasprava u uskim naučnimprogramersko-administratorskim krugovima Rodi l i su se razni model i a l i jedan jeiskočio i polako ulazi u široku primenu - a to je ORM Svoj im supti lnim pristupomproblemu nekompatibi lnih paradigmi nekako je uspeo da stvori taj nedostajućibdquoelektrični signalrdquo koj i ih je povezao Ovo je omogući lo da dve strane koje susvaka za sebe u svom domenu ostavi le i ostavl ja ju duboki trag u informacionimtehnologi jama sarađuju i donesu novi kval itet

Korisni l inkovi

[1] Hibernejt http hibernateorg[2] Viki http googlLlZulw[3] Tutori ja l i http googlCGzvnc

Hibernate ORM

36

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Autor Kriptopank

Šta su zapravo metapodaci Najkraće rečeno to su podaci o podacima i l iinformaci je koje opisuju podatke

Najpre da napravimo razl iku između podataka i metapodataka Podaci sunaprimer snimak (i l i transkript) vaših telefonskih razgovora sadržaj poruka kojepišete primate i l i šal jete podaci koje kačite na internet i l i preuzimate pretrageGuglom postovi na forumima dopisivanja na IRC kanal ima i l i drugim četovimaaudio i video snimci Skajp razgovora i tako dal je

Hajde da vidimo šta bi bi l i odgovarajući metapodaci za ove primere

bull Za telefonske razgovore metapodaci mogu biti lokaci ja učesnika brojevitelefona trajanje razgovora IP i MAC adresa

bull Za poruke četove i Skajp i l i druge video-audio komunikaci je sl ično je kao kodtelefonskih razgovora

To su samo metapodaci

Internet mreže i komunikacije

37

Broj 33

bull Kod foruma i pretraga Guglom ima malo manje metapodataka al i Gugl i raznisajtovi i forumi ionako čuvaju logove o korisnicima što su takođe metapodaci

Ako do sada koj im slučajem niste uvidel i opasnost po privatnost u ovimmetapodacima koje svako od nas smrtnika svakodnevno ostavl ja za sobom usvetu interneta i ostal ih digitalnih komunikaci ja nadamo se da će vas ovaj primermakar podstaći na razmišl janje a možda i na nešto više

Zamisl i te da neko (zvaćemo ga posmatrač) stalno sakupl ja metapodatke koje zasobom ostavl jate kao mrvice hleba Posmatrač recimo zna da se nalazite naautoputu nedaleko od famoznog Feketića da se ne krećete da zovete AMSS zatimšlep službu i možda taksi a l i ne zna šta ste razgovaral i I l i posmatrač vidi da steprvo zval i aerodrom Nikola Tesla pa odmah potom taksi a l i ne zna šta sterazgovaral i I l i posmatrač vidi da ste zval i prvo šest brojeva či je identitete takođezna pa vidi da se oni zatim kreću ka vama - GPS (eng Global Positioning System) pa zatim pica servis Mekdonalds i neku poznatu prodavnicu kineske hrane al i nezna šta ste razgovaral i

Posmatrač ne mora da bude mnogo pametan niti da prisluškuje vaše razgovore dabi shvatio šta se dešava i l i šta će se desiti Sasvim mu je jasno da vam je u prvomprimeru auto stao na autoputu zatim da ste se u drugom slučaju uputi l i naaerodrom i da možda putujete van zemlje i l i ste poslal i taksi po nekoga saaerodroma a da u trećem slučaju okupl jate žurku kod vas Više možete pogledatina http googl7vUjP

Iako su to bdquosamordquo metapodaci treba biti svestan da ti metapodaci o vama stvarajujednu digitalnu sl iku i l i bol je reći digitalni mozaik i na neki način vas jedinstvenoodređuju Pogotovo kada se planski prikupl ja ju na više nivoa (kompjuter pametnitelefon pametni automobi l i kreditna kartica) metapodaci čine vaš digitalniidentitet Al i da stvar bude još gora ta sl ika o vama ne mora nužno biti istinita jerse lako može lažirati Recimo možete zameniti telefone i l i automobi le sa nekimnamerno i l i slučajno i l i vam neko može jednostavno ukrasti telefon laptop i l ikreditnu karticu Zaniml j iv video http googlKO1fKf

Evo jednog primera koj i vas može uvući u vel ike nevol je Recimo da prolazitenekom zabačenom ul icom i da vam neprimetno ispadne telefon al i vi to neprimetite i nastavite dal je svoj im putem U toj ul ici se samo nekol iko minutakasni je desi neko ubistvo i vas pozovu u pol ici ju kao osumnj ičenog Ako koj im

To su samo metapodaci

38

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

slučajem nemate dobar al ibi i l i nemate svedoka da posvedoči da niste bi l i u tojul ici nego tamo gde ste stvarno bi l i a drugih svedoka nema - možete jako lošeproći Zaniml j ivi video http googlspS5OZ

Metapodaci se takođe nalaze i u faj lovimapodacima koje svakodnevnopreuzimamo sa interneta pravimo i koristimo Svaki tip podatka može da sadržiodređene metapodatke koj i bol je opisuju sam podatak kao naprimer vremenastanka podatka kol iko je vremena potrošeno za njegovo kreiranje kol iko putamu je pristupl jeno kad je poslednj i put pristupl jeno i tako dal je Iako se ovakvimetapodaci možda još uvek čine bezazlenim oni mogu sadržati i IP adresuračunara sa kog su napravl jeni GPS koordinate (najčešće PNG format sl ika satelefona) ko ga je napravio (l ičnost i l i kompani jaorganizaci ja) naziv uređaja imodel sa koga je napravl jen kao i MAC adresu uređaja mej l adresu kreatorasoftver koj im je napravl jen i tako dal je Sve ovo može mnogo da naškodiprivatnosti izvornog kreatora faj la pogotovo ako je sadržaj poverl j iv Ukol iko nekopresretne taj podatak na internetu može saznati od koga je potekao Da ovo možebiti katastrofa po kreatora takvog faj la može i lustrovati primer torenta Ako stedošl i u posed nekih sl ika i l i video materi ja la i l i teksta koj i žel i te da podel ite sasvetom preko nekog torent sajta morate taj podatak prvo očistiti odmetapodataka da ne bi svako ko skine to što ste okači l i saznao da vi stoj i te izatoga

Internet mreže i komunikacije

39

Broj 33

Ljudi se konstantno prate metapodaci se sakupl ja ju i to ni je sada već ništa novoal i možemo da se trudimo da iza sebe ostavl jamo malo manje nežel jenihmetapodataka i da ih takoreći čistimo iz podataka koje razmenjujemo Na srećupostoje programi koj i ovo dobro rade

Najpre je potrebno da vidimo koje sve metapodatke neki faj l sadrži kako bismo seuveri l i da ovi metapodaci stvarno postoje i da je faj l bezbedan nakon nj ihovogbrisanja

Ako koristite operativne sisteme GNULinuksa treba da iz terminala preuzmete iinstal irate program pod nazivom exiftool

sudo apt-get install exiftool

Ovaj program će nam pružiti uvid u sve metapodatke koje faj l sadrži Korišćenje jeiz terminala al i je zato veoma jednostavno samo ga pokrenite na sledeći način

exiftool File

i l i

exiftool putanjadofajlapočevodkorenogdirektorijuma

Dobićete prikaz metapodataka koje je program pronašao Sada je potrebno davidimo da l i je podatak bdquoprl javrdquo tj da l i ima u njemu nešto da se briše i da akoima iz njega sve nepotrebno obrišemo Tu će nam pomoći drugi program zvaniMAT (eng Metadata Anonymisation Toolkit) koga možete naći na sajtuhttps matboumorg i l i jednostavno za korisnike Ubuntua i Debi jana uSoftverskom centru i l i ga možete instal irati iz terminala

sudo apt-get install mat

MAT će proveriti da l i je podatak bdquoprl javrdquo i l i ne i za vas ga očistiti od nežel jenihmetapodataka

Kada očistite faj l on je spreman za del jenje sa drugima a vi ste bezbedni jer nikone može reći da je faj l potekao sa vašeg računara

To su samo metapodaci

40

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Autor Dejan Čugal j

GH Hardi bdquoPrava matematika nema uticaj na ratrdquo - odbrana matematičara1940 godina

Bi l Tat - britanski matematičar verovatno niste čul i za njega1942 godine je izveo ogroman poduhvat koj i je skratio rat dvegodine (barem po rečima Ajzenhauera) i spasio mi l ione životaNažalost njegova vel ičina je preminula 2002 godine obavi jenavelom tajne i nikada zvanično ni je priznato njegovo dostignuće

Tomi Flauers - bivši inženjer poštanskog saobraćaja pretvorio jematematičke ideje Tata u prvi računar a to ni je bio bdquoENIACrdquo1Preminuo je 1998 godine a pretpostavl jamo da nikada niste čul ini za njegovu vel ičinu

Ovi umni giganti bdquoBlečl i parkardquo omogući l i su Britani j i da dešifruje strogo poverl j ivumašinu koju je koristio Hitler da diriguje drugim svetskim ratom a to ni je bi labdquoENIGMArdquo nego nešto mnogo tajni je i značajni je Vel ika je verovatnoća da nistečul i ni za ovo Neki kažu da je to bio Hitlerov Blekberi (BlackBerry)

Izgubljeni heroji bdquoBlečli parkardquo

1 engl Electronic Numerical Integrator And Computer - prvidigitalni elektronski računar

Internet mreže i komunikacije

41

Broj 33

1939 godine bdquoBlečl i parkrdquo je postao ratni štab MI6 (britanske vojne obaveštajneslužbe) Do danas je procurelo u javnost i dokumentovano brojnim fi lmskimdokumentarcima samo da je tu Alan Tjuring uspeo da dešifruje nemačkumornaričku šifru poznatu kao bdquoENIGMArdquo i uvel iko doprineo pobedi saveznika a to jesamo deo priče koj i je ispričan

U Blečl i parku su bi la tri heroja AlanTjuring Bi l Tat i Tomi Flauers Od nj ihtroj ice jedino Alanu Tjuringu je priznat deozasluga za pobedu saveznika u Drugomsvetskom ratu Pregledom otkrivenihpodataka danas možemo da tvrdimo daje bdquoENIGMArdquo već sa početka drugogsvetskog rata bi la zastarela tehnologi ja Zbog toga je bi lo lako skinuti veo tajne sa

ovog uspeha heroja Blečl i parka

Izgubljeni heroji bdquoBlečli parkardquo

42

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Bi l Tat koj i je dešifrovao bdquoTANI sistemrdquo (TANI) i Tomi Flauers koj i je samo svojomintuici jom i znanjem sklopio prvi računar na svetu (bdquoKOLOSrdquo) u svrhu bržegdolaženja do informaci ja razbi jenog koda bdquoTANIrdquo tako da zastarelost šifrata budesvedena na minimum - radi l i su na novoj generaci j i mašina za šifrovanje Ovatehnologi ja je bi la prepoznata kao tehnologi ja budućnosti pa i danas iznadinformaci ja o tim tehnologi jama stoj i natpis bdquovrhunska tajnardquo (eng Top Secret) Upravo ovaj veo tajni oko šifrata bdquoTANIrdquo i prvog računara je rezultirao iskrivl jenjuistori je informatike

Za uspehe u prvim godinama rata je zaista zaslužno razbi janje bdquoENIGMArdquo šifrata ito ni je sporno al i krajem 1941 godine u etru planete se začuo novi zvuk To je bi lanova mašina za šifrovanje ni je bi la zasnovana na bdquoMorzeurdquo već je radi la naprincipu teleprintera

Jedna od kl jučnih ideja Hitlerovog ratovanja je bi la u vel ikoj mobi lnosti i brzomdelovanju trupa na terenu a da bi se to izvelo komunikaci ja je isto tako morala dabude u najmanju ruku putem radio signala

Razl ika je ogromna Razl ika je u kol ičini podataka koj i može da se prenese ovimbdquotajnimrdquo putem Prvi svetski rat je bio zaniml j iv jer su se šifrovane poruke baziralena rečima dok je Drugi u potpunosti otvorio vrata današnjoj kriptografi j i a to jematematika

Originalan nemački kocircdni naziv za ovaj šifrat bio je bdquoLORENCrdquo Britanska

Internet mreže i komunikacije

43

Broj 33

obaveštajna služba mu je dala nadimak bdquoTANIrdquo Čak ni dan danas ni je baš poznatokako je sve nastalo al i pouzdano se zna da je tajnu mašinu Hitler nazvaobdquoGehajmšrajberrdquo (nem Geheimschreiber) - mašina tajni

U srž i tehnologi ju šifrovanja bdquoLORENCrdquo šifrata nećemo ulaziti u ovom članku al iverujte nam na reč - ni je bi la jednostavna Može se pretpostaviti da je inspiraci jaŠenonovog 2 rada slučajnosti bi la upravo ova tehnologi ja iz Drugog svetskog rata

Ono čime se Treći rajh vodio je bdquosigurnardquo šifrovana veza koju niko ni je smeo dadešifruje Prenošenje šifrovanih poruka pomoću radio signala je dalo obaveštajnimslužbama mogućnost presretanja poruka poslatih radio talasima Da l i se ovo idanas dešava Imamo l i sigurnost u našim šifrovanim podacima današnj ice

Ono što je usledi lo nakon proboja ovog bdquoneuhvatl j ivogrdquo šifrata je upravo ono što jeprincip današnj ice kao neka vrsta protokola koj i mora da se ispoštuje uperfektnom šifarskom Šenonovom sistemu

1 NIKADA NIKADA NE KORISTITI DVA PUTA ISTI KLJUČ ZA ŠIFROVANJE2 NIKADA NIKADA KLJUČ NE SME DA SE ŠALJE ISTIM KOMUNIKACIONIM KANALOM

KAO PORUKA3 NIKADA NIKADA KLJUČ NE SME DA BUDE MANJ I NEGO ŠTO JE PORUKA (engl

2 Klod Elvud Šenon (eng Claude Elwood Shannon) (1916-2001) - Američkinaučnik i inženjer

Izgubljeni heroji bdquoBlečli parkardquo

44

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

one time pad) 4 NIKADA NIKADA NE SMEMO DA SAKRIVAMO SISTEM ŠIFROVANJA SVE MORA

DA JE OTVORENOG KOcircDA

Najveći propusti kriptologi je koj i su uočeni baš u Drugom svetskom ratu jesupokušaj sakrivanja sredstava koj im se generiše tajna poruka i nepoznavanjeŠenonovih krajnj ih granica informaci ja Kada kažemo bdquosredstvo i sakrivanjerdquomisl imo na algoritme Postavl ja se pitanje zašto je danas kriptologi ja sigurni ja negočetrdesetih i pedesetih godina prošlog veka

Danas uprkos tome što su algoritmi za kriptografi ju otvorenog kocircda tajnostinformaci ja je na višem nivou nego što je to bi lo dok je algoritam bio strogopoverl j iv Tajnost tajnih podataka se ne zasniva na tajnosti a lgoritama koj i generišutaj isti bdquotajni izlazrdquo (eng cipher text) nego u nemogućnosti matematičke inverznefunkci je koja bi šifrovan tekst otvori la Ovde se vidi da je svrha strukture otvorenogkocircda kao jednog od značajnih delova današnje kriptologi je ona koja ga činisigurnim i svima dostupnim

Sada kada se sa ove distance osvrnemo na Drugi svetski rat možemo videti kol ikosmo bi l i bl izu apokal ipse Naime Albert Ajnštajn je već 1944 godine imao urukama recept za nuklearnu bombu Šenon je mogao već u to vreme da nampredoči 100 siguran šifrat (tzv Hitlerovu super šifru) a l i ipak sreća nas jeposluži la da čovečanstvo tada ni je bi lo spremno da upotrebi svu raspoloživutehnologi ju

Albert Ajnštajn bdquoČetvrti svetski rat će se voditi tol jagamardquo

Zaboravl jeni heroj i Blečl i parka iako su odigral i važnu ulogu u pobedi saveznika usvetskom ratu postal i su žrtve bdquotop secretrdquo doktrine potpuno su zaboravl jeni inestal i su iz istori je

Zakl jučak ovog članka je da je ideologi ja otvorenog kocircda sasvim sigurno tu da nampomogne i da otvori vrata ka većoj sigurnosti novim idejama i kval itetu sameinfrastrukture sistema koju svi zajedno razvi jamo

Internet mreže i komunikacije

45

Broj 33

Autor Nikola Hardi

NabrajanjaBez brojeva

Za nabrajanje pojmova u Bimeru (eng Beamer) koristi se okruženje itemize aunutar tog okruženja možemo da dodajemo nove stavke pomoću item Primerizgleda ovako

beginitemizeitem Stavka Aitem Stavka Bitem Stavka C

enditemize

Sa brojevima

Postoje situaci je kada uz nabrajanje treba da stoje i redni brojevi - za to se koristienumerate okruženje a nove stavke se takođe dodaju pomoću item

beginenumerateitem Redni broj 1item Redni broj 2item Redni broj 3

endenumerate

prezentaci ja

Beamer (4 deo)

Sam svoj majstor

46

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

DefinicijeTreća situaci ja je nabrajanje parova termin - definici ja U tom slučaju se koristiokruženje description Već možete da pretpostavite kako se dodaju nove stavke

Primer

begindescriptionitem[Pojam A] Definicija izmišljenog pojma Aitem[Pojam B] Definicija izmišljenog pojma Bitem[Pojam C] Definicija izmišljenog pojma C

enddescription

Ostala podešavanja i zanimljivostiSva prethodna okruženja mogu da budu ugneždena jedno unutar drugog dotrećeg nivoa Treba biti pažl j iv jer sla jdovi vrlo lako mogu da postanu nečitl j ivi Osim toga moguće je izabrati i format oznake i l i rednih brojeva - na primer ovako

beginenumerate[I]beginenumarate[a)]

Takođe moguće je upravl jati pojavl j ivanjem pojedinih stavki na slajdovima Drugimrečima možemo da odredimo da se nabrajanja postepeno otkrivaju tako što ćemouz stavku dodati lt1-gt odnosno broj od kojeg slajda žel imo da se ta stavkapojavl ju je Tada će jedno nabrajanje biti bdquorazvučenordquo na više slajdovaJednostavni ja mogućnost je da u zaglavl je okruženja dodamo +- što znači dažel imo da se svakim slajdom otkriva po jedna nova stavka iz nabrajanja Znak bdquo-rdquo uoba primera znači da žel imo da se stavka pojavi na sledećem slajdu i da ostane

Sam svoj majstor

47

Broj 33

prisutna Možemo da izostavimo znak bdquo-rdquo i tada će stavka biti prisutna samo najednom slajdu i l i da napišemo raspon slajdova u koj ima žel imo da ta stavka budeprisutna

Rad sa kolonama i blokovimaDo sada su svi primeri podrazumeval i da je sadržaj napisan preko cele širineslajda al i Bimer (eng Beamer) ima i jednostavne mehanizme za razmeštanjesadržaja po kolonama Za rad sa kolonama se koristi okruženje columns unutarkojeg možemo da dodajemo nove kolone pomoću columnširina Sadržaj jemoguće potom pisati i van okruženja sa kolonama

U paru sa kolonama često se sreće i okruženje block koje se parametrizujenaslovom Primerom su i lustrovani i okruženje column i okruženje block

beginframebegincolumns

column05textwidthbeginblockNaslov levog blokaSadržaj u prvoj (levoj) koloni endblock

column05textwidthbeginblockNaslov desnog blokaSadržaj u drugoj (desnoj) koloni

endblockendcolumns

beginblockVan kolona

Beamer

48

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Tekst koji se nalazi ispod kolonaendblock

endframe

TabeleIako se u radu sa prezentaci jama sadržaj najčešće može uredno rasporeditipomoću kolona i nabrajanja nekada to ni je dovol jno jer su tabele pravi formatBimer podržava standardno Lateh (LaTeX) okruženje za rad sa tabelamaOkruženje za rad sa tabelama se zove tabular Pri kreiranju nove tabele moguće jepodesiti koje kolone će biti razdvojene l ini jom i da l i će nj ihov sadržaj biti centrirani l i uz levu i l i uz desnu ivicu Dodavanje novog reda se jednostavno radidodavanjem hline Lateh pruža zaista jako fleksibi lan rad sa tabelama i sigurno ćedoskočiti svim mogućim i nemogućim zamisl ima Potražite bi lo koje Lateh uputstvoza rad sa tabelama i radiće i sa Bimerom

beginframebegintabular | c | c | c | c |

hlineamp Ponedeljak amp Utorak amp Sreda hline

1 amp 16 amp 32 amp 64 hline2 amp 16 amp 128 amp 1024 hline3 amp 16 amp 512 amp 4096 hline

endtabularendframe

Sam svoj majstor

49

Broj 33

Beamer

Teoreme i istaknut tekstU nastavi su česta izlaganja teorema nj ihovih dokaza i primera U Bimer jeugrađena podrška za elegantno predstavl janje ove trojke Mehanizam takođepodržava postepeno otkrivanje sadržaja sla jda tako da slušaocima ne bude odmahotkriven dokaz teoreme Mehanizam za postepeno otkrivanje se kao i kodnabrajanja postiže pomoću bdquolt1-gtrdquo konstrukci je Evo kako to izgleda

beginframeframetitlePrimer teoreme

begintheoremlt1-gt Teorema kaže da su beamer prezentacijezanimljive

endtheorem

beginexamplelt2-gt Ovaj kod kreira slajd beamer prezentacijeendexample

beginprooflt3-gt Čestitamo stigli ste do kraja serijala o pravljenju beamer prezentacija

endproofendframe

50

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Za krajOvim člankom završavamo seri ja l o Bimeru Nadamo se da smo uspel i da vaszainteresujemo za ovu vrlo korisnu klasu Lateha Trudi l i smo se da vamprezentujemo najvažni je delove Bimera koje ćete najčešće koristiti pri l ikomkreiranja svoj ih prezentaci ja

Napominjemo još jednom da je Bimer samo jedna od klasa Lateha što znači da i zaBimer važi sve ono što ste već mogl i da pročitate u ovom časopisu kad smo pisal iseri ja l bdquoUvod u LaTeXrdquo (LiBRE brojevi 17 do 21) Štaviše ovaj seri ja l o Bimeru jebio nastavak upravo tog seri ja la U ovom seri ja lu nismo pisal i o samomformatiranju teksta u prezentaci jama jer se podrazumeva da važe ista pravi la kao iu Latehu a o tome smo pisal i u prethodnom seri ja lu

Hvala vam što ste prati l i ovaj seri ja l i žel imo vam puno uspeha u kreiranju Bimerprezentaci ja

Sam svoj majstor

51

Broj 33

Autor Nenad Marjanović

Kada smo se upoznal i sa podešavanj ima sistema i umrežavanjem vreme je za našprvi Biglbon Blek (BBB - eng BeagleBone Black) projekat Svakom od nas će ovajizazov dati razl ičite ideje a jedna od nj ih može biti i zaštita privatnosti internetkorisnika Nažalost u Srbi j i ne postoj i ni jedan izlazni tor server (eng node) i to jepomalo tužna sl ika s obzirom da govorimo o populaci j i od sedam mil ionastanovnika Al i ovu sl iku možemo promeniti udruženim snagama i za početakkreiranjem Tor transfer i izlaznog servera U ovde prikazanom grafikonufokusiraćemo se na bdquoRauter Brdquo tačku odnosno transfer server konfiguraci ju

BeagleBone Black Rev C

Vodič od prvog dana (3 deo) ndashBeagleBone Black kao Tor relej

Hardver

52

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Tor predstavl ja mrežu servera koj i se povezuju radi bol je enkripci je podataka izaštite IP adrese korisnika Naš ci l j je da danas postanemo deo ovog predivnogprojekta i da se nađemo na svetskoj karti Tor servera

Brzina interneta i zakonske regulativePotrebno je imati na umu nekol iko bitnih stvari

1 Naš server = naša odgovornost2 Obavezno naznačite da ste vi administrator a ne korisnik istog servera3 Da posedujete internet brzinu od 2 Mbs

Ako ispunjavamo tri navedena pravi la i odgovornosti možemo se posvetitiadministrativnim poslovima

Instalacija i podešavanjaU ovom primeru koristimo Debi jan Vizi (eng Wheezy) odnosno Debi jan 7 verzi juna našem BBB uređaju Vi možete testirati i druge Linuks platforme Prvododajemo izvornu bibl ioteku u etcaptsourceslist faj l pokretanjem sledećekomande u terminalu

echo deb httpdebtorprojectorgtorprojectorg wheezy main gt etcaptsourceslistdtorlist

Zatim dodajemo izvorni kl juč vršimo ažuriranje sistema i instal iramo tor i tor-arm(Tor monitoring sistem)

gpg --keyserver keysgnupgnet --recv 886DDD89gpg --export A3C4F0F979CAA22CDBA8F512EE8CBC9E886DDD89 | sudo apt-keyadd -apt-get updateapt-get install debtorprojectorg-keyring -yapt-get install tor tor-arm egrep screen -y

Ovim smo uspešno završi l i instalaci ju Tor servera i sistema za monitoring odnosnonadgledanja našeg Tor servera Sledećom komandom radimo na podešavanj imaTor servera koja se nalaze u etctortorrc faj lu Obratite pažnju i izvršite potrebne

Hardver

53

Broj 33

izmenu u pol j ima IP adresa (eng Address) nadimka (eng Nickname) i kontaktpodataka (eng ContactInfo) pre pokretanja ove komande Kopiramo i pokrećemokomandu u celosti u terminalu

egrep -v ^(|$) etctortorrcORPort 443Address 19216811Nickname LibreTorRelayRelayBandwidthRate 100 KBRelayBandwidthBurst 120 KBContactInfo ltvi at gmail dot comgt irPort 8080DirPortFrontPage etctortorhtmlExitPolicy reject

Detal je o svim vrednostima nećemo iznositi u ovom broju LiBRE časopisa al ićemo o nj ima pisati u sledećem u kome ćemo pričati o zaštiti Tor servera imogućnosti podešavanja određenih izlaznih pravi la (eng ExitPolicy)

Nakon ovoga možemo primetiti da se u folderu etctor ne nalazi torhtml faj l Ovaj faj l ni je od vel ikog značaja i možete ga l ično napraviti i l i preuzeti jednu kopi ju- naprimer sa sledeće lokaci je

cp usrsharedoctortorhtml etctortorhtml

Opcije i Tor Arm monitoringDa bismo ispravno koristi l i Tor Arm potrebno je urediti još jednom etctortorrcfaj l i restartovati servis

echo -e ldquoDisableDebuggerAttachment 0n AvoidDiskWritesrdquo gtgt etctortorrcsudo service tor reload

Ukol iko žel ite koristiti Tor Arm za nadgledanje aktivnosti na serveru pokreniteprogram screen kl iknite na bdquoEnterrdquo i kucajte sudo -u debian-tor arm Naekranu ćete imati sl ičan prikaz

BeagleBone Black

54

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Hardver

55

Broj 33

Da bismo napusti l i screen program koristimo Ctrl + a + d i na taj način kada sesledeći put pri javimo na server kucamo samo screen -r u terminalu - i naći ćemose ponovo na čuvenom Tor Arm monitoring ekranu

Nakon svake promene konfiguracionih faj lova ako slučajno nismo nešto podesi l ikako treba restartujemo servise

U sledećem broju časopisa govorićemo o minimalnim podešavanj ima ikonfigurisanju izlaznog Tor servera (eng Tor Exit Node) opci jama sigurnosti isl ičnim detal j ima u vezi sa našim prvim projektom Do čitanja u sledećem broju

BeagleBone Black

LUGoNS BarCamp 4subota 7 mart 2015 godine

Četvrti LUGoNS-ov Barkemp (BarCamp) održaće se u Novom Sadu usubotu 7 marta 2015 godine na Fakultetu tehničkih nauka sa početkomu 12 časova

Ulaz je slobodan

Poziv za predaju radovaLUGoNS poziva sve zainteresovane da pošal ju svoje radove (predavanjaprezentaci je radionice i diskusi je) do 28 februara 2015 godine

Oblasti iz koj ih možete da pri javite vaše radove su

bull Slobodan softverbull Zaniml j iv hardverbull Hakerski zakonibull Sigurnosne noćne morebull Anonimnost i privatnost na internetubull Duboki veb (eng Deep Web)bull Soci ja lne mrežebull Soci ja lni inženjeringbull Hakovanje mobi lnih uređajabull Internet u oblaku (eng Clouds) ndash hakovanje razbi janje i neočekivano korišćenjebull DPI (eng deep packet inspection)bull Mreža i mrežna neutralnost ndash vlasništvo cenzura nadmudrivanje i pol itika bdquodefaktordquo standarda

bull Programiranje i programski jezici

Nemojte se ustručavati i slobodno nam se javite ako imate rad na gore navedenei l i sl ične teme koj i smatrate interesantnim

Stranica za predaju radova nalazi se na https events lugonsorgp=1658

Page 32: LiBRE 33 Lat

32

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

podataka u apl ikaci jama koje su napisane u objektno ori jentisanim programskimjezicima Apl ikaci ja komunicira sa ORM-om preko njegovog vlastitog API-ja (engapplication programming interface) i određenih objekata Ova komunikaci ja jepotpuno odvojena od komunikaci je koja se odvi ja između ORM-a i baze podatakapreko SQL-a i DBC-a

Da bi se postigla i dostigla potpuna snaga ORM-a u apl ikaci j i koju projektujemonikako se ne sme iskl jučiti znanje relacionih modela SQL jezika te poznavanjeDBMS-a u kome se radi ORM ni je ništa drugo do srednj i sloj između gorepomenutih tehnologi ja i objektno ori jentisanog programiranja kao što smo to dosada već više puta naglasi l i

Implementacija ORM-aPostoje razl ičiti načini implementaci je ORM-a Mark Fasl (Mark Fussel) je 1997definisao četiri nivoa

1 bdquoČistrdquo relacioni način2 Slabo mapiranje objekata3 Umereno mapiranje objekata4 Potpuno mapiranje objekata

bdquoČistrdquo relacioni način

Cela apl ikaci ja ukl jučujući i korisnički interfejs dizajnirana je relacionim modelom iSQL relacionim operatorima Ovakav pristup je odl ičan za male projekte Direktanpristup SQL-u omogućava fino podešavanje svakog aspekta upita koj i se postavl jabazi podataka Osnovne mane su portabi lnost (prenosivost) i održavanje ovakvihsistema pogotovo ako se planira korišćenje apl ikaci je na duži rok Ovakvi sistemimasovno koriste sačuvane procedure (eng stored procedures) što znači da jeposlovna logika (eng busines logic) prebačena na samu bazu podataka

Slabo mapiranje objekata

Entiteti su predstavl jeni kao klase i mapiranje se radi ekspl icitno ka relacionimtabelama SQLJDBC je sakriven od poslovne logike korišćenjem poznatih šablona(patterns)

Umereno mapiranje objekata

Slobodni profesionalac

33

Broj 33

Dizajn apl ikaci ja se svodi na objektne modele SQL se generiše u vremekompaj l iranja (eng build-time) i l i u vreme izvršavanja (eng run-time) Specifikaci jaupita nad bazama podataka se radi na objektno ori jentisanom jeziku Ovakvisistemi se koriste u apl ikaci jama srednj ih vel ičina kod koj ih je bitna portabi lnostizmeđu razl ičitih sistema za upravl janje bazama podataka (DBMS)

Potpuno mapiranje objekata

Podržava sofisticirano objektno model iranje nasleđivanje i pol imorfizamEfikasnost dobi janja podataka je na visokom nivou i koriste se metode kao što sulenjo učitavanje (eng lazy loading) i strategi ja keširanja (eng caching) Implementaci ja je transparentna u apl ikaci jama Ovaj nivo je jako teško dostići Pojedincu su potrebne godine razvoja da postigne ovakvu fleksibi lnost pristupa imanipulaci ja u relacionim bazama podataka Upravo ovaj nivo se postiže ako sekoriste rešenja ORM-a kao što je Hajbernejt

Zašto ORMImplementaci ja ORM rešenja pogotovo ako seprvi put susrećete sa ovim modelom može dabude veoma frustrirajuća i malo teža zaimplementaci ju Kada ovo kažemo misl imo daprogramer koj i implementira ORM i hoće da istibude kval itetno urađen mora da posedujepredznanje objektno ori jentisanog programiranjai naprednih tehnika kao što su nasleđivanje ipol imorfizam

Ovo inicira fundamentalna pitanja

bull Pa zašto bi iko onda implementirao ovako nešto kompleksnobull Vredi l i truda upuštati se uopšte u ORM

Odgovor ni je jednostavan Dosadašnja iskustva u korišćenju ORM-a i njegovapopularnost već daju odgovor na postavl jeno pitanje Očigledno je da su benefitikoje donosi ovaj model veći od kompleksnosti njegove implementaci je a to su

Hibernate ORM

34

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Veća produktivnost

ORM smanjuje kol ičinu koda potrebnog za ostvarivanje trajnosti podataka Ovoomogućava programeru da vreme koje bi utrošio na ručno mapiranje podatakautroši na druge delove apl ikaci je

Lakše održavanje

Manje l ini ja koda osigurava bol ju razuml j ivost (i možda bol j i kval itet koda) jernaglašava apl ikaci jsku logiku ORM takođe ublažava uticaj nastal ih promena kaošto su promene u bazi strukturi tabela i td

Prenosivost

Većina ORM rešenja podržava sisteme za upravl janje bazama podataka raznihproizvođača ORM u potpunosti odvaja sloj apl ikaci je od stvarne SQL komunikaci jekoja se odvi ja u pozadini Time omogućava da se pišu apl ikaci je koje će moći da seizvršavaju na razl ičitim bazama podataka bez potrebe za dodatnim kodiranjemOva komunikaci ja se odvi ja sa programskim interfejsima ORM-a nezavisno oDBMS-u sa koj im je u bi lo kom momentu povezan ORM takođe omogućava lakšiprelaz sa manj ih na veće baze podataka tokom razvoja apl ikaci je

Uvidel i smo da trenutno postoje dve paradigme koje se bdquosudarajurdquo i koje supodjednako dobre same za sebe Relaciona paradigma potvrđuje da sve što jeizgrađeno na matematičkim osnovama je i trajno u smislu kval iteta koje posedujeU domenu u kom relaciona paradigma egzistira ona je ako je to u ovo vremeuopšte moguće tvrditi nezamenj iva

Ono što otvara pitanja i daje razlog za sumnju je koja je krajnja granicaupotrebl j ivosti relacione paradigme tj kol iki su kapaciteti složenosti zahtevaapl ikaci ja sa kojom može da se nosi Praksa je pokazala da je sasvim mogućebdquoizvestirdquo složene projekte - al i održavanje skalabi lnost razuml j ivost prenosivost -pitanja su sa koj im se relaciona paradigma teško može izboriti

Sa druge strane svoj habitat u informacionim tehnologi jama je našla i objektna

Slobodni profesionalac

35

Broj 33

paradigma Iako na prvi pogled ova dva modela nemaju ništa zajedničko - što je uneku ruku i istinito gledajući prirodu podataka koj im manipul išu - praksa jepokazala da su usko povezane i skoro da imaju sinaptičku vezu

Pitanje bdquokako spoj iti te sinapserdquo dovelo je do žučnih rasprava u uskim naučnimprogramersko-administratorskim krugovima Rodi l i su se razni model i a l i jedan jeiskočio i polako ulazi u široku primenu - a to je ORM Svoj im supti lnim pristupomproblemu nekompatibi lnih paradigmi nekako je uspeo da stvori taj nedostajućibdquoelektrični signalrdquo koj i ih je povezao Ovo je omogući lo da dve strane koje susvaka za sebe u svom domenu ostavi le i ostavl ja ju duboki trag u informacionimtehnologi jama sarađuju i donesu novi kval itet

Korisni l inkovi

[1] Hibernejt http hibernateorg[2] Viki http googlLlZulw[3] Tutori ja l i http googlCGzvnc

Hibernate ORM

36

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Autor Kriptopank

Šta su zapravo metapodaci Najkraće rečeno to su podaci o podacima i l iinformaci je koje opisuju podatke

Najpre da napravimo razl iku između podataka i metapodataka Podaci sunaprimer snimak (i l i transkript) vaših telefonskih razgovora sadržaj poruka kojepišete primate i l i šal jete podaci koje kačite na internet i l i preuzimate pretrageGuglom postovi na forumima dopisivanja na IRC kanal ima i l i drugim četovimaaudio i video snimci Skajp razgovora i tako dal je

Hajde da vidimo šta bi bi l i odgovarajući metapodaci za ove primere

bull Za telefonske razgovore metapodaci mogu biti lokaci ja učesnika brojevitelefona trajanje razgovora IP i MAC adresa

bull Za poruke četove i Skajp i l i druge video-audio komunikaci je sl ično je kao kodtelefonskih razgovora

To su samo metapodaci

Internet mreže i komunikacije

37

Broj 33

bull Kod foruma i pretraga Guglom ima malo manje metapodataka al i Gugl i raznisajtovi i forumi ionako čuvaju logove o korisnicima što su takođe metapodaci

Ako do sada koj im slučajem niste uvidel i opasnost po privatnost u ovimmetapodacima koje svako od nas smrtnika svakodnevno ostavl ja za sobom usvetu interneta i ostal ih digitalnih komunikaci ja nadamo se da će vas ovaj primermakar podstaći na razmišl janje a možda i na nešto više

Zamisl i te da neko (zvaćemo ga posmatrač) stalno sakupl ja metapodatke koje zasobom ostavl jate kao mrvice hleba Posmatrač recimo zna da se nalazite naautoputu nedaleko od famoznog Feketića da se ne krećete da zovete AMSS zatimšlep službu i možda taksi a l i ne zna šta ste razgovaral i I l i posmatrač vidi da steprvo zval i aerodrom Nikola Tesla pa odmah potom taksi a l i ne zna šta sterazgovaral i I l i posmatrač vidi da ste zval i prvo šest brojeva či je identitete takođezna pa vidi da se oni zatim kreću ka vama - GPS (eng Global Positioning System) pa zatim pica servis Mekdonalds i neku poznatu prodavnicu kineske hrane al i nezna šta ste razgovaral i

Posmatrač ne mora da bude mnogo pametan niti da prisluškuje vaše razgovore dabi shvatio šta se dešava i l i šta će se desiti Sasvim mu je jasno da vam je u prvomprimeru auto stao na autoputu zatim da ste se u drugom slučaju uputi l i naaerodrom i da možda putujete van zemlje i l i ste poslal i taksi po nekoga saaerodroma a da u trećem slučaju okupl jate žurku kod vas Više možete pogledatina http googl7vUjP

Iako su to bdquosamordquo metapodaci treba biti svestan da ti metapodaci o vama stvarajujednu digitalnu sl iku i l i bol je reći digitalni mozaik i na neki način vas jedinstvenoodređuju Pogotovo kada se planski prikupl ja ju na više nivoa (kompjuter pametnitelefon pametni automobi l i kreditna kartica) metapodaci čine vaš digitalniidentitet Al i da stvar bude još gora ta sl ika o vama ne mora nužno biti istinita jerse lako može lažirati Recimo možete zameniti telefone i l i automobi le sa nekimnamerno i l i slučajno i l i vam neko može jednostavno ukrasti telefon laptop i l ikreditnu karticu Zaniml j iv video http googlKO1fKf

Evo jednog primera koj i vas može uvući u vel ike nevol je Recimo da prolazitenekom zabačenom ul icom i da vam neprimetno ispadne telefon al i vi to neprimetite i nastavite dal je svoj im putem U toj ul ici se samo nekol iko minutakasni je desi neko ubistvo i vas pozovu u pol ici ju kao osumnj ičenog Ako koj im

To su samo metapodaci

38

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

slučajem nemate dobar al ibi i l i nemate svedoka da posvedoči da niste bi l i u tojul ici nego tamo gde ste stvarno bi l i a drugih svedoka nema - možete jako lošeproći Zaniml j ivi video http googlspS5OZ

Metapodaci se takođe nalaze i u faj lovimapodacima koje svakodnevnopreuzimamo sa interneta pravimo i koristimo Svaki tip podatka može da sadržiodređene metapodatke koj i bol je opisuju sam podatak kao naprimer vremenastanka podatka kol iko je vremena potrošeno za njegovo kreiranje kol iko putamu je pristupl jeno kad je poslednj i put pristupl jeno i tako dal je Iako se ovakvimetapodaci možda još uvek čine bezazlenim oni mogu sadržati i IP adresuračunara sa kog su napravl jeni GPS koordinate (najčešće PNG format sl ika satelefona) ko ga je napravio (l ičnost i l i kompani jaorganizaci ja) naziv uređaja imodel sa koga je napravl jen kao i MAC adresu uređaja mej l adresu kreatorasoftver koj im je napravl jen i tako dal je Sve ovo može mnogo da naškodiprivatnosti izvornog kreatora faj la pogotovo ako je sadržaj poverl j iv Ukol iko nekopresretne taj podatak na internetu može saznati od koga je potekao Da ovo možebiti katastrofa po kreatora takvog faj la može i lustrovati primer torenta Ako stedošl i u posed nekih sl ika i l i video materi ja la i l i teksta koj i žel i te da podel ite sasvetom preko nekog torent sajta morate taj podatak prvo očistiti odmetapodataka da ne bi svako ko skine to što ste okači l i saznao da vi stoj i te izatoga

Internet mreže i komunikacije

39

Broj 33

Ljudi se konstantno prate metapodaci se sakupl ja ju i to ni je sada već ništa novoal i možemo da se trudimo da iza sebe ostavl jamo malo manje nežel jenihmetapodataka i da ih takoreći čistimo iz podataka koje razmenjujemo Na srećupostoje programi koj i ovo dobro rade

Najpre je potrebno da vidimo koje sve metapodatke neki faj l sadrži kako bismo seuveri l i da ovi metapodaci stvarno postoje i da je faj l bezbedan nakon nj ihovogbrisanja

Ako koristite operativne sisteme GNULinuksa treba da iz terminala preuzmete iinstal irate program pod nazivom exiftool

sudo apt-get install exiftool

Ovaj program će nam pružiti uvid u sve metapodatke koje faj l sadrži Korišćenje jeiz terminala al i je zato veoma jednostavno samo ga pokrenite na sledeći način

exiftool File

i l i

exiftool putanjadofajlapočevodkorenogdirektorijuma

Dobićete prikaz metapodataka koje je program pronašao Sada je potrebno davidimo da l i je podatak bdquoprl javrdquo tj da l i ima u njemu nešto da se briše i da akoima iz njega sve nepotrebno obrišemo Tu će nam pomoći drugi program zvaniMAT (eng Metadata Anonymisation Toolkit) koga možete naći na sajtuhttps matboumorg i l i jednostavno za korisnike Ubuntua i Debi jana uSoftverskom centru i l i ga možete instal irati iz terminala

sudo apt-get install mat

MAT će proveriti da l i je podatak bdquoprl javrdquo i l i ne i za vas ga očistiti od nežel jenihmetapodataka

Kada očistite faj l on je spreman za del jenje sa drugima a vi ste bezbedni jer nikone može reći da je faj l potekao sa vašeg računara

To su samo metapodaci

40

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Autor Dejan Čugal j

GH Hardi bdquoPrava matematika nema uticaj na ratrdquo - odbrana matematičara1940 godina

Bi l Tat - britanski matematičar verovatno niste čul i za njega1942 godine je izveo ogroman poduhvat koj i je skratio rat dvegodine (barem po rečima Ajzenhauera) i spasio mi l ione životaNažalost njegova vel ičina je preminula 2002 godine obavi jenavelom tajne i nikada zvanično ni je priznato njegovo dostignuće

Tomi Flauers - bivši inženjer poštanskog saobraćaja pretvorio jematematičke ideje Tata u prvi računar a to ni je bio bdquoENIACrdquo1Preminuo je 1998 godine a pretpostavl jamo da nikada niste čul ini za njegovu vel ičinu

Ovi umni giganti bdquoBlečl i parkardquo omogući l i su Britani j i da dešifruje strogo poverl j ivumašinu koju je koristio Hitler da diriguje drugim svetskim ratom a to ni je bi labdquoENIGMArdquo nego nešto mnogo tajni je i značajni je Vel ika je verovatnoća da nistečul i ni za ovo Neki kažu da je to bio Hitlerov Blekberi (BlackBerry)

Izgubljeni heroji bdquoBlečli parkardquo

1 engl Electronic Numerical Integrator And Computer - prvidigitalni elektronski računar

Internet mreže i komunikacije

41

Broj 33

1939 godine bdquoBlečl i parkrdquo je postao ratni štab MI6 (britanske vojne obaveštajneslužbe) Do danas je procurelo u javnost i dokumentovano brojnim fi lmskimdokumentarcima samo da je tu Alan Tjuring uspeo da dešifruje nemačkumornaričku šifru poznatu kao bdquoENIGMArdquo i uvel iko doprineo pobedi saveznika a to jesamo deo priče koj i je ispričan

U Blečl i parku su bi la tri heroja AlanTjuring Bi l Tat i Tomi Flauers Od nj ihtroj ice jedino Alanu Tjuringu je priznat deozasluga za pobedu saveznika u Drugomsvetskom ratu Pregledom otkrivenihpodataka danas možemo da tvrdimo daje bdquoENIGMArdquo već sa početka drugogsvetskog rata bi la zastarela tehnologi ja Zbog toga je bi lo lako skinuti veo tajne sa

ovog uspeha heroja Blečl i parka

Izgubljeni heroji bdquoBlečli parkardquo

42

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Bi l Tat koj i je dešifrovao bdquoTANI sistemrdquo (TANI) i Tomi Flauers koj i je samo svojomintuici jom i znanjem sklopio prvi računar na svetu (bdquoKOLOSrdquo) u svrhu bržegdolaženja do informaci ja razbi jenog koda bdquoTANIrdquo tako da zastarelost šifrata budesvedena na minimum - radi l i su na novoj generaci j i mašina za šifrovanje Ovatehnologi ja je bi la prepoznata kao tehnologi ja budućnosti pa i danas iznadinformaci ja o tim tehnologi jama stoj i natpis bdquovrhunska tajnardquo (eng Top Secret) Upravo ovaj veo tajni oko šifrata bdquoTANIrdquo i prvog računara je rezultirao iskrivl jenjuistori je informatike

Za uspehe u prvim godinama rata je zaista zaslužno razbi janje bdquoENIGMArdquo šifrata ito ni je sporno al i krajem 1941 godine u etru planete se začuo novi zvuk To je bi lanova mašina za šifrovanje ni je bi la zasnovana na bdquoMorzeurdquo već je radi la naprincipu teleprintera

Jedna od kl jučnih ideja Hitlerovog ratovanja je bi la u vel ikoj mobi lnosti i brzomdelovanju trupa na terenu a da bi se to izvelo komunikaci ja je isto tako morala dabude u najmanju ruku putem radio signala

Razl ika je ogromna Razl ika je u kol ičini podataka koj i može da se prenese ovimbdquotajnimrdquo putem Prvi svetski rat je bio zaniml j iv jer su se šifrovane poruke baziralena rečima dok je Drugi u potpunosti otvorio vrata današnjoj kriptografi j i a to jematematika

Originalan nemački kocircdni naziv za ovaj šifrat bio je bdquoLORENCrdquo Britanska

Internet mreže i komunikacije

43

Broj 33

obaveštajna služba mu je dala nadimak bdquoTANIrdquo Čak ni dan danas ni je baš poznatokako je sve nastalo al i pouzdano se zna da je tajnu mašinu Hitler nazvaobdquoGehajmšrajberrdquo (nem Geheimschreiber) - mašina tajni

U srž i tehnologi ju šifrovanja bdquoLORENCrdquo šifrata nećemo ulaziti u ovom članku al iverujte nam na reč - ni je bi la jednostavna Može se pretpostaviti da je inspiraci jaŠenonovog 2 rada slučajnosti bi la upravo ova tehnologi ja iz Drugog svetskog rata

Ono čime se Treći rajh vodio je bdquosigurnardquo šifrovana veza koju niko ni je smeo dadešifruje Prenošenje šifrovanih poruka pomoću radio signala je dalo obaveštajnimslužbama mogućnost presretanja poruka poslatih radio talasima Da l i se ovo idanas dešava Imamo l i sigurnost u našim šifrovanim podacima današnj ice

Ono što je usledi lo nakon proboja ovog bdquoneuhvatl j ivogrdquo šifrata je upravo ono što jeprincip današnj ice kao neka vrsta protokola koj i mora da se ispoštuje uperfektnom šifarskom Šenonovom sistemu

1 NIKADA NIKADA NE KORISTITI DVA PUTA ISTI KLJUČ ZA ŠIFROVANJE2 NIKADA NIKADA KLJUČ NE SME DA SE ŠALJE ISTIM KOMUNIKACIONIM KANALOM

KAO PORUKA3 NIKADA NIKADA KLJUČ NE SME DA BUDE MANJ I NEGO ŠTO JE PORUKA (engl

2 Klod Elvud Šenon (eng Claude Elwood Shannon) (1916-2001) - Američkinaučnik i inženjer

Izgubljeni heroji bdquoBlečli parkardquo

44

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

one time pad) 4 NIKADA NIKADA NE SMEMO DA SAKRIVAMO SISTEM ŠIFROVANJA SVE MORA

DA JE OTVORENOG KOcircDA

Najveći propusti kriptologi je koj i su uočeni baš u Drugom svetskom ratu jesupokušaj sakrivanja sredstava koj im se generiše tajna poruka i nepoznavanjeŠenonovih krajnj ih granica informaci ja Kada kažemo bdquosredstvo i sakrivanjerdquomisl imo na algoritme Postavl ja se pitanje zašto je danas kriptologi ja sigurni ja negočetrdesetih i pedesetih godina prošlog veka

Danas uprkos tome što su algoritmi za kriptografi ju otvorenog kocircda tajnostinformaci ja je na višem nivou nego što je to bi lo dok je algoritam bio strogopoverl j iv Tajnost tajnih podataka se ne zasniva na tajnosti a lgoritama koj i generišutaj isti bdquotajni izlazrdquo (eng cipher text) nego u nemogućnosti matematičke inverznefunkci je koja bi šifrovan tekst otvori la Ovde se vidi da je svrha strukture otvorenogkocircda kao jednog od značajnih delova današnje kriptologi je ona koja ga činisigurnim i svima dostupnim

Sada kada se sa ove distance osvrnemo na Drugi svetski rat možemo videti kol ikosmo bi l i bl izu apokal ipse Naime Albert Ajnštajn je već 1944 godine imao urukama recept za nuklearnu bombu Šenon je mogao već u to vreme da nampredoči 100 siguran šifrat (tzv Hitlerovu super šifru) a l i ipak sreća nas jeposluži la da čovečanstvo tada ni je bi lo spremno da upotrebi svu raspoloživutehnologi ju

Albert Ajnštajn bdquoČetvrti svetski rat će se voditi tol jagamardquo

Zaboravl jeni heroj i Blečl i parka iako su odigral i važnu ulogu u pobedi saveznika usvetskom ratu postal i su žrtve bdquotop secretrdquo doktrine potpuno su zaboravl jeni inestal i su iz istori je

Zakl jučak ovog članka je da je ideologi ja otvorenog kocircda sasvim sigurno tu da nampomogne i da otvori vrata ka većoj sigurnosti novim idejama i kval itetu sameinfrastrukture sistema koju svi zajedno razvi jamo

Internet mreže i komunikacije

45

Broj 33

Autor Nikola Hardi

NabrajanjaBez brojeva

Za nabrajanje pojmova u Bimeru (eng Beamer) koristi se okruženje itemize aunutar tog okruženja možemo da dodajemo nove stavke pomoću item Primerizgleda ovako

beginitemizeitem Stavka Aitem Stavka Bitem Stavka C

enditemize

Sa brojevima

Postoje situaci je kada uz nabrajanje treba da stoje i redni brojevi - za to se koristienumerate okruženje a nove stavke se takođe dodaju pomoću item

beginenumerateitem Redni broj 1item Redni broj 2item Redni broj 3

endenumerate

prezentaci ja

Beamer (4 deo)

Sam svoj majstor

46

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

DefinicijeTreća situaci ja je nabrajanje parova termin - definici ja U tom slučaju se koristiokruženje description Već možete da pretpostavite kako se dodaju nove stavke

Primer

begindescriptionitem[Pojam A] Definicija izmišljenog pojma Aitem[Pojam B] Definicija izmišljenog pojma Bitem[Pojam C] Definicija izmišljenog pojma C

enddescription

Ostala podešavanja i zanimljivostiSva prethodna okruženja mogu da budu ugneždena jedno unutar drugog dotrećeg nivoa Treba biti pažl j iv jer sla jdovi vrlo lako mogu da postanu nečitl j ivi Osim toga moguće je izabrati i format oznake i l i rednih brojeva - na primer ovako

beginenumerate[I]beginenumarate[a)]

Takođe moguće je upravl jati pojavl j ivanjem pojedinih stavki na slajdovima Drugimrečima možemo da odredimo da se nabrajanja postepeno otkrivaju tako što ćemouz stavku dodati lt1-gt odnosno broj od kojeg slajda žel imo da se ta stavkapojavl ju je Tada će jedno nabrajanje biti bdquorazvučenordquo na više slajdovaJednostavni ja mogućnost je da u zaglavl je okruženja dodamo +- što znači dažel imo da se svakim slajdom otkriva po jedna nova stavka iz nabrajanja Znak bdquo-rdquo uoba primera znači da žel imo da se stavka pojavi na sledećem slajdu i da ostane

Sam svoj majstor

47

Broj 33

prisutna Možemo da izostavimo znak bdquo-rdquo i tada će stavka biti prisutna samo najednom slajdu i l i da napišemo raspon slajdova u koj ima žel imo da ta stavka budeprisutna

Rad sa kolonama i blokovimaDo sada su svi primeri podrazumeval i da je sadržaj napisan preko cele širineslajda al i Bimer (eng Beamer) ima i jednostavne mehanizme za razmeštanjesadržaja po kolonama Za rad sa kolonama se koristi okruženje columns unutarkojeg možemo da dodajemo nove kolone pomoću columnširina Sadržaj jemoguće potom pisati i van okruženja sa kolonama

U paru sa kolonama često se sreće i okruženje block koje se parametrizujenaslovom Primerom su i lustrovani i okruženje column i okruženje block

beginframebegincolumns

column05textwidthbeginblockNaslov levog blokaSadržaj u prvoj (levoj) koloni endblock

column05textwidthbeginblockNaslov desnog blokaSadržaj u drugoj (desnoj) koloni

endblockendcolumns

beginblockVan kolona

Beamer

48

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Tekst koji se nalazi ispod kolonaendblock

endframe

TabeleIako se u radu sa prezentaci jama sadržaj najčešće može uredno rasporeditipomoću kolona i nabrajanja nekada to ni je dovol jno jer su tabele pravi formatBimer podržava standardno Lateh (LaTeX) okruženje za rad sa tabelamaOkruženje za rad sa tabelama se zove tabular Pri kreiranju nove tabele moguće jepodesiti koje kolone će biti razdvojene l ini jom i da l i će nj ihov sadržaj biti centrirani l i uz levu i l i uz desnu ivicu Dodavanje novog reda se jednostavno radidodavanjem hline Lateh pruža zaista jako fleksibi lan rad sa tabelama i sigurno ćedoskočiti svim mogućim i nemogućim zamisl ima Potražite bi lo koje Lateh uputstvoza rad sa tabelama i radiće i sa Bimerom

beginframebegintabular | c | c | c | c |

hlineamp Ponedeljak amp Utorak amp Sreda hline

1 amp 16 amp 32 amp 64 hline2 amp 16 amp 128 amp 1024 hline3 amp 16 amp 512 amp 4096 hline

endtabularendframe

Sam svoj majstor

49

Broj 33

Beamer

Teoreme i istaknut tekstU nastavi su česta izlaganja teorema nj ihovih dokaza i primera U Bimer jeugrađena podrška za elegantno predstavl janje ove trojke Mehanizam takođepodržava postepeno otkrivanje sadržaja sla jda tako da slušaocima ne bude odmahotkriven dokaz teoreme Mehanizam za postepeno otkrivanje se kao i kodnabrajanja postiže pomoću bdquolt1-gtrdquo konstrukci je Evo kako to izgleda

beginframeframetitlePrimer teoreme

begintheoremlt1-gt Teorema kaže da su beamer prezentacijezanimljive

endtheorem

beginexamplelt2-gt Ovaj kod kreira slajd beamer prezentacijeendexample

beginprooflt3-gt Čestitamo stigli ste do kraja serijala o pravljenju beamer prezentacija

endproofendframe

50

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Za krajOvim člankom završavamo seri ja l o Bimeru Nadamo se da smo uspel i da vaszainteresujemo za ovu vrlo korisnu klasu Lateha Trudi l i smo se da vamprezentujemo najvažni je delove Bimera koje ćete najčešće koristiti pri l ikomkreiranja svoj ih prezentaci ja

Napominjemo još jednom da je Bimer samo jedna od klasa Lateha što znači da i zaBimer važi sve ono što ste već mogl i da pročitate u ovom časopisu kad smo pisal iseri ja l bdquoUvod u LaTeXrdquo (LiBRE brojevi 17 do 21) Štaviše ovaj seri ja l o Bimeru jebio nastavak upravo tog seri ja la U ovom seri ja lu nismo pisal i o samomformatiranju teksta u prezentaci jama jer se podrazumeva da važe ista pravi la kao iu Latehu a o tome smo pisal i u prethodnom seri ja lu

Hvala vam što ste prati l i ovaj seri ja l i žel imo vam puno uspeha u kreiranju Bimerprezentaci ja

Sam svoj majstor

51

Broj 33

Autor Nenad Marjanović

Kada smo se upoznal i sa podešavanj ima sistema i umrežavanjem vreme je za našprvi Biglbon Blek (BBB - eng BeagleBone Black) projekat Svakom od nas će ovajizazov dati razl ičite ideje a jedna od nj ih može biti i zaštita privatnosti internetkorisnika Nažalost u Srbi j i ne postoj i ni jedan izlazni tor server (eng node) i to jepomalo tužna sl ika s obzirom da govorimo o populaci j i od sedam mil ionastanovnika Al i ovu sl iku možemo promeniti udruženim snagama i za početakkreiranjem Tor transfer i izlaznog servera U ovde prikazanom grafikonufokusiraćemo se na bdquoRauter Brdquo tačku odnosno transfer server konfiguraci ju

BeagleBone Black Rev C

Vodič od prvog dana (3 deo) ndashBeagleBone Black kao Tor relej

Hardver

52

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Tor predstavl ja mrežu servera koj i se povezuju radi bol je enkripci je podataka izaštite IP adrese korisnika Naš ci l j je da danas postanemo deo ovog predivnogprojekta i da se nađemo na svetskoj karti Tor servera

Brzina interneta i zakonske regulativePotrebno je imati na umu nekol iko bitnih stvari

1 Naš server = naša odgovornost2 Obavezno naznačite da ste vi administrator a ne korisnik istog servera3 Da posedujete internet brzinu od 2 Mbs

Ako ispunjavamo tri navedena pravi la i odgovornosti možemo se posvetitiadministrativnim poslovima

Instalacija i podešavanjaU ovom primeru koristimo Debi jan Vizi (eng Wheezy) odnosno Debi jan 7 verzi juna našem BBB uređaju Vi možete testirati i druge Linuks platforme Prvododajemo izvornu bibl ioteku u etcaptsourceslist faj l pokretanjem sledećekomande u terminalu

echo deb httpdebtorprojectorgtorprojectorg wheezy main gt etcaptsourceslistdtorlist

Zatim dodajemo izvorni kl juč vršimo ažuriranje sistema i instal iramo tor i tor-arm(Tor monitoring sistem)

gpg --keyserver keysgnupgnet --recv 886DDD89gpg --export A3C4F0F979CAA22CDBA8F512EE8CBC9E886DDD89 | sudo apt-keyadd -apt-get updateapt-get install debtorprojectorg-keyring -yapt-get install tor tor-arm egrep screen -y

Ovim smo uspešno završi l i instalaci ju Tor servera i sistema za monitoring odnosnonadgledanja našeg Tor servera Sledećom komandom radimo na podešavanj imaTor servera koja se nalaze u etctortorrc faj lu Obratite pažnju i izvršite potrebne

Hardver

53

Broj 33

izmenu u pol j ima IP adresa (eng Address) nadimka (eng Nickname) i kontaktpodataka (eng ContactInfo) pre pokretanja ove komande Kopiramo i pokrećemokomandu u celosti u terminalu

egrep -v ^(|$) etctortorrcORPort 443Address 19216811Nickname LibreTorRelayRelayBandwidthRate 100 KBRelayBandwidthBurst 120 KBContactInfo ltvi at gmail dot comgt irPort 8080DirPortFrontPage etctortorhtmlExitPolicy reject

Detal je o svim vrednostima nećemo iznositi u ovom broju LiBRE časopisa al ićemo o nj ima pisati u sledećem u kome ćemo pričati o zaštiti Tor servera imogućnosti podešavanja određenih izlaznih pravi la (eng ExitPolicy)

Nakon ovoga možemo primetiti da se u folderu etctor ne nalazi torhtml faj l Ovaj faj l ni je od vel ikog značaja i možete ga l ično napraviti i l i preuzeti jednu kopi ju- naprimer sa sledeće lokaci je

cp usrsharedoctortorhtml etctortorhtml

Opcije i Tor Arm monitoringDa bismo ispravno koristi l i Tor Arm potrebno je urediti još jednom etctortorrcfaj l i restartovati servis

echo -e ldquoDisableDebuggerAttachment 0n AvoidDiskWritesrdquo gtgt etctortorrcsudo service tor reload

Ukol iko žel ite koristiti Tor Arm za nadgledanje aktivnosti na serveru pokreniteprogram screen kl iknite na bdquoEnterrdquo i kucajte sudo -u debian-tor arm Naekranu ćete imati sl ičan prikaz

BeagleBone Black

54

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Hardver

55

Broj 33

Da bismo napusti l i screen program koristimo Ctrl + a + d i na taj način kada sesledeći put pri javimo na server kucamo samo screen -r u terminalu - i naći ćemose ponovo na čuvenom Tor Arm monitoring ekranu

Nakon svake promene konfiguracionih faj lova ako slučajno nismo nešto podesi l ikako treba restartujemo servise

U sledećem broju časopisa govorićemo o minimalnim podešavanj ima ikonfigurisanju izlaznog Tor servera (eng Tor Exit Node) opci jama sigurnosti isl ičnim detal j ima u vezi sa našim prvim projektom Do čitanja u sledećem broju

BeagleBone Black

LUGoNS BarCamp 4subota 7 mart 2015 godine

Četvrti LUGoNS-ov Barkemp (BarCamp) održaće se u Novom Sadu usubotu 7 marta 2015 godine na Fakultetu tehničkih nauka sa početkomu 12 časova

Ulaz je slobodan

Poziv za predaju radovaLUGoNS poziva sve zainteresovane da pošal ju svoje radove (predavanjaprezentaci je radionice i diskusi je) do 28 februara 2015 godine

Oblasti iz koj ih možete da pri javite vaše radove su

bull Slobodan softverbull Zaniml j iv hardverbull Hakerski zakonibull Sigurnosne noćne morebull Anonimnost i privatnost na internetubull Duboki veb (eng Deep Web)bull Soci ja lne mrežebull Soci ja lni inženjeringbull Hakovanje mobi lnih uređajabull Internet u oblaku (eng Clouds) ndash hakovanje razbi janje i neočekivano korišćenjebull DPI (eng deep packet inspection)bull Mreža i mrežna neutralnost ndash vlasništvo cenzura nadmudrivanje i pol itika bdquodefaktordquo standarda

bull Programiranje i programski jezici

Nemojte se ustručavati i slobodno nam se javite ako imate rad na gore navedenei l i sl ične teme koj i smatrate interesantnim

Stranica za predaju radova nalazi se na https events lugonsorgp=1658

Page 33: LiBRE 33 Lat

33

Broj 33

Dizajn apl ikaci ja se svodi na objektne modele SQL se generiše u vremekompaj l iranja (eng build-time) i l i u vreme izvršavanja (eng run-time) Specifikaci jaupita nad bazama podataka se radi na objektno ori jentisanom jeziku Ovakvisistemi se koriste u apl ikaci jama srednj ih vel ičina kod koj ih je bitna portabi lnostizmeđu razl ičitih sistema za upravl janje bazama podataka (DBMS)

Potpuno mapiranje objekata

Podržava sofisticirano objektno model iranje nasleđivanje i pol imorfizamEfikasnost dobi janja podataka je na visokom nivou i koriste se metode kao što sulenjo učitavanje (eng lazy loading) i strategi ja keširanja (eng caching) Implementaci ja je transparentna u apl ikaci jama Ovaj nivo je jako teško dostići Pojedincu su potrebne godine razvoja da postigne ovakvu fleksibi lnost pristupa imanipulaci ja u relacionim bazama podataka Upravo ovaj nivo se postiže ako sekoriste rešenja ORM-a kao što je Hajbernejt

Zašto ORMImplementaci ja ORM rešenja pogotovo ako seprvi put susrećete sa ovim modelom može dabude veoma frustrirajuća i malo teža zaimplementaci ju Kada ovo kažemo misl imo daprogramer koj i implementira ORM i hoće da istibude kval itetno urađen mora da posedujepredznanje objektno ori jentisanog programiranjai naprednih tehnika kao što su nasleđivanje ipol imorfizam

Ovo inicira fundamentalna pitanja

bull Pa zašto bi iko onda implementirao ovako nešto kompleksnobull Vredi l i truda upuštati se uopšte u ORM

Odgovor ni je jednostavan Dosadašnja iskustva u korišćenju ORM-a i njegovapopularnost već daju odgovor na postavl jeno pitanje Očigledno je da su benefitikoje donosi ovaj model veći od kompleksnosti njegove implementaci je a to su

Hibernate ORM

34

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Veća produktivnost

ORM smanjuje kol ičinu koda potrebnog za ostvarivanje trajnosti podataka Ovoomogućava programeru da vreme koje bi utrošio na ručno mapiranje podatakautroši na druge delove apl ikaci je

Lakše održavanje

Manje l ini ja koda osigurava bol ju razuml j ivost (i možda bol j i kval itet koda) jernaglašava apl ikaci jsku logiku ORM takođe ublažava uticaj nastal ih promena kaošto su promene u bazi strukturi tabela i td

Prenosivost

Većina ORM rešenja podržava sisteme za upravl janje bazama podataka raznihproizvođača ORM u potpunosti odvaja sloj apl ikaci je od stvarne SQL komunikaci jekoja se odvi ja u pozadini Time omogućava da se pišu apl ikaci je koje će moći da seizvršavaju na razl ičitim bazama podataka bez potrebe za dodatnim kodiranjemOva komunikaci ja se odvi ja sa programskim interfejsima ORM-a nezavisno oDBMS-u sa koj im je u bi lo kom momentu povezan ORM takođe omogućava lakšiprelaz sa manj ih na veće baze podataka tokom razvoja apl ikaci je

Uvidel i smo da trenutno postoje dve paradigme koje se bdquosudarajurdquo i koje supodjednako dobre same za sebe Relaciona paradigma potvrđuje da sve što jeizgrađeno na matematičkim osnovama je i trajno u smislu kval iteta koje posedujeU domenu u kom relaciona paradigma egzistira ona je ako je to u ovo vremeuopšte moguće tvrditi nezamenj iva

Ono što otvara pitanja i daje razlog za sumnju je koja je krajnja granicaupotrebl j ivosti relacione paradigme tj kol iki su kapaciteti složenosti zahtevaapl ikaci ja sa kojom može da se nosi Praksa je pokazala da je sasvim mogućebdquoizvestirdquo složene projekte - al i održavanje skalabi lnost razuml j ivost prenosivost -pitanja su sa koj im se relaciona paradigma teško može izboriti

Sa druge strane svoj habitat u informacionim tehnologi jama je našla i objektna

Slobodni profesionalac

35

Broj 33

paradigma Iako na prvi pogled ova dva modela nemaju ništa zajedničko - što je uneku ruku i istinito gledajući prirodu podataka koj im manipul išu - praksa jepokazala da su usko povezane i skoro da imaju sinaptičku vezu

Pitanje bdquokako spoj iti te sinapserdquo dovelo je do žučnih rasprava u uskim naučnimprogramersko-administratorskim krugovima Rodi l i su se razni model i a l i jedan jeiskočio i polako ulazi u široku primenu - a to je ORM Svoj im supti lnim pristupomproblemu nekompatibi lnih paradigmi nekako je uspeo da stvori taj nedostajućibdquoelektrični signalrdquo koj i ih je povezao Ovo je omogući lo da dve strane koje susvaka za sebe u svom domenu ostavi le i ostavl ja ju duboki trag u informacionimtehnologi jama sarađuju i donesu novi kval itet

Korisni l inkovi

[1] Hibernejt http hibernateorg[2] Viki http googlLlZulw[3] Tutori ja l i http googlCGzvnc

Hibernate ORM

36

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Autor Kriptopank

Šta su zapravo metapodaci Najkraće rečeno to su podaci o podacima i l iinformaci je koje opisuju podatke

Najpre da napravimo razl iku između podataka i metapodataka Podaci sunaprimer snimak (i l i transkript) vaših telefonskih razgovora sadržaj poruka kojepišete primate i l i šal jete podaci koje kačite na internet i l i preuzimate pretrageGuglom postovi na forumima dopisivanja na IRC kanal ima i l i drugim četovimaaudio i video snimci Skajp razgovora i tako dal je

Hajde da vidimo šta bi bi l i odgovarajući metapodaci za ove primere

bull Za telefonske razgovore metapodaci mogu biti lokaci ja učesnika brojevitelefona trajanje razgovora IP i MAC adresa

bull Za poruke četove i Skajp i l i druge video-audio komunikaci je sl ično je kao kodtelefonskih razgovora

To su samo metapodaci

Internet mreže i komunikacije

37

Broj 33

bull Kod foruma i pretraga Guglom ima malo manje metapodataka al i Gugl i raznisajtovi i forumi ionako čuvaju logove o korisnicima što su takođe metapodaci

Ako do sada koj im slučajem niste uvidel i opasnost po privatnost u ovimmetapodacima koje svako od nas smrtnika svakodnevno ostavl ja za sobom usvetu interneta i ostal ih digitalnih komunikaci ja nadamo se da će vas ovaj primermakar podstaći na razmišl janje a možda i na nešto više

Zamisl i te da neko (zvaćemo ga posmatrač) stalno sakupl ja metapodatke koje zasobom ostavl jate kao mrvice hleba Posmatrač recimo zna da se nalazite naautoputu nedaleko od famoznog Feketića da se ne krećete da zovete AMSS zatimšlep službu i možda taksi a l i ne zna šta ste razgovaral i I l i posmatrač vidi da steprvo zval i aerodrom Nikola Tesla pa odmah potom taksi a l i ne zna šta sterazgovaral i I l i posmatrač vidi da ste zval i prvo šest brojeva či je identitete takođezna pa vidi da se oni zatim kreću ka vama - GPS (eng Global Positioning System) pa zatim pica servis Mekdonalds i neku poznatu prodavnicu kineske hrane al i nezna šta ste razgovaral i

Posmatrač ne mora da bude mnogo pametan niti da prisluškuje vaše razgovore dabi shvatio šta se dešava i l i šta će se desiti Sasvim mu je jasno da vam je u prvomprimeru auto stao na autoputu zatim da ste se u drugom slučaju uputi l i naaerodrom i da možda putujete van zemlje i l i ste poslal i taksi po nekoga saaerodroma a da u trećem slučaju okupl jate žurku kod vas Više možete pogledatina http googl7vUjP

Iako su to bdquosamordquo metapodaci treba biti svestan da ti metapodaci o vama stvarajujednu digitalnu sl iku i l i bol je reći digitalni mozaik i na neki način vas jedinstvenoodređuju Pogotovo kada se planski prikupl ja ju na više nivoa (kompjuter pametnitelefon pametni automobi l i kreditna kartica) metapodaci čine vaš digitalniidentitet Al i da stvar bude još gora ta sl ika o vama ne mora nužno biti istinita jerse lako može lažirati Recimo možete zameniti telefone i l i automobi le sa nekimnamerno i l i slučajno i l i vam neko može jednostavno ukrasti telefon laptop i l ikreditnu karticu Zaniml j iv video http googlKO1fKf

Evo jednog primera koj i vas može uvući u vel ike nevol je Recimo da prolazitenekom zabačenom ul icom i da vam neprimetno ispadne telefon al i vi to neprimetite i nastavite dal je svoj im putem U toj ul ici se samo nekol iko minutakasni je desi neko ubistvo i vas pozovu u pol ici ju kao osumnj ičenog Ako koj im

To su samo metapodaci

38

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

slučajem nemate dobar al ibi i l i nemate svedoka da posvedoči da niste bi l i u tojul ici nego tamo gde ste stvarno bi l i a drugih svedoka nema - možete jako lošeproći Zaniml j ivi video http googlspS5OZ

Metapodaci se takođe nalaze i u faj lovimapodacima koje svakodnevnopreuzimamo sa interneta pravimo i koristimo Svaki tip podatka može da sadržiodređene metapodatke koj i bol je opisuju sam podatak kao naprimer vremenastanka podatka kol iko je vremena potrošeno za njegovo kreiranje kol iko putamu je pristupl jeno kad je poslednj i put pristupl jeno i tako dal je Iako se ovakvimetapodaci možda još uvek čine bezazlenim oni mogu sadržati i IP adresuračunara sa kog su napravl jeni GPS koordinate (najčešće PNG format sl ika satelefona) ko ga je napravio (l ičnost i l i kompani jaorganizaci ja) naziv uređaja imodel sa koga je napravl jen kao i MAC adresu uređaja mej l adresu kreatorasoftver koj im je napravl jen i tako dal je Sve ovo može mnogo da naškodiprivatnosti izvornog kreatora faj la pogotovo ako je sadržaj poverl j iv Ukol iko nekopresretne taj podatak na internetu može saznati od koga je potekao Da ovo možebiti katastrofa po kreatora takvog faj la može i lustrovati primer torenta Ako stedošl i u posed nekih sl ika i l i video materi ja la i l i teksta koj i žel i te da podel ite sasvetom preko nekog torent sajta morate taj podatak prvo očistiti odmetapodataka da ne bi svako ko skine to što ste okači l i saznao da vi stoj i te izatoga

Internet mreže i komunikacije

39

Broj 33

Ljudi se konstantno prate metapodaci se sakupl ja ju i to ni je sada već ništa novoal i možemo da se trudimo da iza sebe ostavl jamo malo manje nežel jenihmetapodataka i da ih takoreći čistimo iz podataka koje razmenjujemo Na srećupostoje programi koj i ovo dobro rade

Najpre je potrebno da vidimo koje sve metapodatke neki faj l sadrži kako bismo seuveri l i da ovi metapodaci stvarno postoje i da je faj l bezbedan nakon nj ihovogbrisanja

Ako koristite operativne sisteme GNULinuksa treba da iz terminala preuzmete iinstal irate program pod nazivom exiftool

sudo apt-get install exiftool

Ovaj program će nam pružiti uvid u sve metapodatke koje faj l sadrži Korišćenje jeiz terminala al i je zato veoma jednostavno samo ga pokrenite na sledeći način

exiftool File

i l i

exiftool putanjadofajlapočevodkorenogdirektorijuma

Dobićete prikaz metapodataka koje je program pronašao Sada je potrebno davidimo da l i je podatak bdquoprl javrdquo tj da l i ima u njemu nešto da se briše i da akoima iz njega sve nepotrebno obrišemo Tu će nam pomoći drugi program zvaniMAT (eng Metadata Anonymisation Toolkit) koga možete naći na sajtuhttps matboumorg i l i jednostavno za korisnike Ubuntua i Debi jana uSoftverskom centru i l i ga možete instal irati iz terminala

sudo apt-get install mat

MAT će proveriti da l i je podatak bdquoprl javrdquo i l i ne i za vas ga očistiti od nežel jenihmetapodataka

Kada očistite faj l on je spreman za del jenje sa drugima a vi ste bezbedni jer nikone može reći da je faj l potekao sa vašeg računara

To su samo metapodaci

40

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Autor Dejan Čugal j

GH Hardi bdquoPrava matematika nema uticaj na ratrdquo - odbrana matematičara1940 godina

Bi l Tat - britanski matematičar verovatno niste čul i za njega1942 godine je izveo ogroman poduhvat koj i je skratio rat dvegodine (barem po rečima Ajzenhauera) i spasio mi l ione životaNažalost njegova vel ičina je preminula 2002 godine obavi jenavelom tajne i nikada zvanično ni je priznato njegovo dostignuće

Tomi Flauers - bivši inženjer poštanskog saobraćaja pretvorio jematematičke ideje Tata u prvi računar a to ni je bio bdquoENIACrdquo1Preminuo je 1998 godine a pretpostavl jamo da nikada niste čul ini za njegovu vel ičinu

Ovi umni giganti bdquoBlečl i parkardquo omogući l i su Britani j i da dešifruje strogo poverl j ivumašinu koju je koristio Hitler da diriguje drugim svetskim ratom a to ni je bi labdquoENIGMArdquo nego nešto mnogo tajni je i značajni je Vel ika je verovatnoća da nistečul i ni za ovo Neki kažu da je to bio Hitlerov Blekberi (BlackBerry)

Izgubljeni heroji bdquoBlečli parkardquo

1 engl Electronic Numerical Integrator And Computer - prvidigitalni elektronski računar

Internet mreže i komunikacije

41

Broj 33

1939 godine bdquoBlečl i parkrdquo je postao ratni štab MI6 (britanske vojne obaveštajneslužbe) Do danas je procurelo u javnost i dokumentovano brojnim fi lmskimdokumentarcima samo da je tu Alan Tjuring uspeo da dešifruje nemačkumornaričku šifru poznatu kao bdquoENIGMArdquo i uvel iko doprineo pobedi saveznika a to jesamo deo priče koj i je ispričan

U Blečl i parku su bi la tri heroja AlanTjuring Bi l Tat i Tomi Flauers Od nj ihtroj ice jedino Alanu Tjuringu je priznat deozasluga za pobedu saveznika u Drugomsvetskom ratu Pregledom otkrivenihpodataka danas možemo da tvrdimo daje bdquoENIGMArdquo već sa početka drugogsvetskog rata bi la zastarela tehnologi ja Zbog toga je bi lo lako skinuti veo tajne sa

ovog uspeha heroja Blečl i parka

Izgubljeni heroji bdquoBlečli parkardquo

42

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Bi l Tat koj i je dešifrovao bdquoTANI sistemrdquo (TANI) i Tomi Flauers koj i je samo svojomintuici jom i znanjem sklopio prvi računar na svetu (bdquoKOLOSrdquo) u svrhu bržegdolaženja do informaci ja razbi jenog koda bdquoTANIrdquo tako da zastarelost šifrata budesvedena na minimum - radi l i su na novoj generaci j i mašina za šifrovanje Ovatehnologi ja je bi la prepoznata kao tehnologi ja budućnosti pa i danas iznadinformaci ja o tim tehnologi jama stoj i natpis bdquovrhunska tajnardquo (eng Top Secret) Upravo ovaj veo tajni oko šifrata bdquoTANIrdquo i prvog računara je rezultirao iskrivl jenjuistori je informatike

Za uspehe u prvim godinama rata je zaista zaslužno razbi janje bdquoENIGMArdquo šifrata ito ni je sporno al i krajem 1941 godine u etru planete se začuo novi zvuk To je bi lanova mašina za šifrovanje ni je bi la zasnovana na bdquoMorzeurdquo već je radi la naprincipu teleprintera

Jedna od kl jučnih ideja Hitlerovog ratovanja je bi la u vel ikoj mobi lnosti i brzomdelovanju trupa na terenu a da bi se to izvelo komunikaci ja je isto tako morala dabude u najmanju ruku putem radio signala

Razl ika je ogromna Razl ika je u kol ičini podataka koj i može da se prenese ovimbdquotajnimrdquo putem Prvi svetski rat je bio zaniml j iv jer su se šifrovane poruke baziralena rečima dok je Drugi u potpunosti otvorio vrata današnjoj kriptografi j i a to jematematika

Originalan nemački kocircdni naziv za ovaj šifrat bio je bdquoLORENCrdquo Britanska

Internet mreže i komunikacije

43

Broj 33

obaveštajna služba mu je dala nadimak bdquoTANIrdquo Čak ni dan danas ni je baš poznatokako je sve nastalo al i pouzdano se zna da je tajnu mašinu Hitler nazvaobdquoGehajmšrajberrdquo (nem Geheimschreiber) - mašina tajni

U srž i tehnologi ju šifrovanja bdquoLORENCrdquo šifrata nećemo ulaziti u ovom članku al iverujte nam na reč - ni je bi la jednostavna Može se pretpostaviti da je inspiraci jaŠenonovog 2 rada slučajnosti bi la upravo ova tehnologi ja iz Drugog svetskog rata

Ono čime se Treći rajh vodio je bdquosigurnardquo šifrovana veza koju niko ni je smeo dadešifruje Prenošenje šifrovanih poruka pomoću radio signala je dalo obaveštajnimslužbama mogućnost presretanja poruka poslatih radio talasima Da l i se ovo idanas dešava Imamo l i sigurnost u našim šifrovanim podacima današnj ice

Ono što je usledi lo nakon proboja ovog bdquoneuhvatl j ivogrdquo šifrata je upravo ono što jeprincip današnj ice kao neka vrsta protokola koj i mora da se ispoštuje uperfektnom šifarskom Šenonovom sistemu

1 NIKADA NIKADA NE KORISTITI DVA PUTA ISTI KLJUČ ZA ŠIFROVANJE2 NIKADA NIKADA KLJUČ NE SME DA SE ŠALJE ISTIM KOMUNIKACIONIM KANALOM

KAO PORUKA3 NIKADA NIKADA KLJUČ NE SME DA BUDE MANJ I NEGO ŠTO JE PORUKA (engl

2 Klod Elvud Šenon (eng Claude Elwood Shannon) (1916-2001) - Američkinaučnik i inženjer

Izgubljeni heroji bdquoBlečli parkardquo

44

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

one time pad) 4 NIKADA NIKADA NE SMEMO DA SAKRIVAMO SISTEM ŠIFROVANJA SVE MORA

DA JE OTVORENOG KOcircDA

Najveći propusti kriptologi je koj i su uočeni baš u Drugom svetskom ratu jesupokušaj sakrivanja sredstava koj im se generiše tajna poruka i nepoznavanjeŠenonovih krajnj ih granica informaci ja Kada kažemo bdquosredstvo i sakrivanjerdquomisl imo na algoritme Postavl ja se pitanje zašto je danas kriptologi ja sigurni ja negočetrdesetih i pedesetih godina prošlog veka

Danas uprkos tome što su algoritmi za kriptografi ju otvorenog kocircda tajnostinformaci ja je na višem nivou nego što je to bi lo dok je algoritam bio strogopoverl j iv Tajnost tajnih podataka se ne zasniva na tajnosti a lgoritama koj i generišutaj isti bdquotajni izlazrdquo (eng cipher text) nego u nemogućnosti matematičke inverznefunkci je koja bi šifrovan tekst otvori la Ovde se vidi da je svrha strukture otvorenogkocircda kao jednog od značajnih delova današnje kriptologi je ona koja ga činisigurnim i svima dostupnim

Sada kada se sa ove distance osvrnemo na Drugi svetski rat možemo videti kol ikosmo bi l i bl izu apokal ipse Naime Albert Ajnštajn je već 1944 godine imao urukama recept za nuklearnu bombu Šenon je mogao već u to vreme da nampredoči 100 siguran šifrat (tzv Hitlerovu super šifru) a l i ipak sreća nas jeposluži la da čovečanstvo tada ni je bi lo spremno da upotrebi svu raspoloživutehnologi ju

Albert Ajnštajn bdquoČetvrti svetski rat će se voditi tol jagamardquo

Zaboravl jeni heroj i Blečl i parka iako su odigral i važnu ulogu u pobedi saveznika usvetskom ratu postal i su žrtve bdquotop secretrdquo doktrine potpuno su zaboravl jeni inestal i su iz istori je

Zakl jučak ovog članka je da je ideologi ja otvorenog kocircda sasvim sigurno tu da nampomogne i da otvori vrata ka većoj sigurnosti novim idejama i kval itetu sameinfrastrukture sistema koju svi zajedno razvi jamo

Internet mreže i komunikacije

45

Broj 33

Autor Nikola Hardi

NabrajanjaBez brojeva

Za nabrajanje pojmova u Bimeru (eng Beamer) koristi se okruženje itemize aunutar tog okruženja možemo da dodajemo nove stavke pomoću item Primerizgleda ovako

beginitemizeitem Stavka Aitem Stavka Bitem Stavka C

enditemize

Sa brojevima

Postoje situaci je kada uz nabrajanje treba da stoje i redni brojevi - za to se koristienumerate okruženje a nove stavke se takođe dodaju pomoću item

beginenumerateitem Redni broj 1item Redni broj 2item Redni broj 3

endenumerate

prezentaci ja

Beamer (4 deo)

Sam svoj majstor

46

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

DefinicijeTreća situaci ja je nabrajanje parova termin - definici ja U tom slučaju se koristiokruženje description Već možete da pretpostavite kako se dodaju nove stavke

Primer

begindescriptionitem[Pojam A] Definicija izmišljenog pojma Aitem[Pojam B] Definicija izmišljenog pojma Bitem[Pojam C] Definicija izmišljenog pojma C

enddescription

Ostala podešavanja i zanimljivostiSva prethodna okruženja mogu da budu ugneždena jedno unutar drugog dotrećeg nivoa Treba biti pažl j iv jer sla jdovi vrlo lako mogu da postanu nečitl j ivi Osim toga moguće je izabrati i format oznake i l i rednih brojeva - na primer ovako

beginenumerate[I]beginenumarate[a)]

Takođe moguće je upravl jati pojavl j ivanjem pojedinih stavki na slajdovima Drugimrečima možemo da odredimo da se nabrajanja postepeno otkrivaju tako što ćemouz stavku dodati lt1-gt odnosno broj od kojeg slajda žel imo da se ta stavkapojavl ju je Tada će jedno nabrajanje biti bdquorazvučenordquo na više slajdovaJednostavni ja mogućnost je da u zaglavl je okruženja dodamo +- što znači dažel imo da se svakim slajdom otkriva po jedna nova stavka iz nabrajanja Znak bdquo-rdquo uoba primera znači da žel imo da se stavka pojavi na sledećem slajdu i da ostane

Sam svoj majstor

47

Broj 33

prisutna Možemo da izostavimo znak bdquo-rdquo i tada će stavka biti prisutna samo najednom slajdu i l i da napišemo raspon slajdova u koj ima žel imo da ta stavka budeprisutna

Rad sa kolonama i blokovimaDo sada su svi primeri podrazumeval i da je sadržaj napisan preko cele širineslajda al i Bimer (eng Beamer) ima i jednostavne mehanizme za razmeštanjesadržaja po kolonama Za rad sa kolonama se koristi okruženje columns unutarkojeg možemo da dodajemo nove kolone pomoću columnširina Sadržaj jemoguće potom pisati i van okruženja sa kolonama

U paru sa kolonama često se sreće i okruženje block koje se parametrizujenaslovom Primerom su i lustrovani i okruženje column i okruženje block

beginframebegincolumns

column05textwidthbeginblockNaslov levog blokaSadržaj u prvoj (levoj) koloni endblock

column05textwidthbeginblockNaslov desnog blokaSadržaj u drugoj (desnoj) koloni

endblockendcolumns

beginblockVan kolona

Beamer

48

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Tekst koji se nalazi ispod kolonaendblock

endframe

TabeleIako se u radu sa prezentaci jama sadržaj najčešće može uredno rasporeditipomoću kolona i nabrajanja nekada to ni je dovol jno jer su tabele pravi formatBimer podržava standardno Lateh (LaTeX) okruženje za rad sa tabelamaOkruženje za rad sa tabelama se zove tabular Pri kreiranju nove tabele moguće jepodesiti koje kolone će biti razdvojene l ini jom i da l i će nj ihov sadržaj biti centrirani l i uz levu i l i uz desnu ivicu Dodavanje novog reda se jednostavno radidodavanjem hline Lateh pruža zaista jako fleksibi lan rad sa tabelama i sigurno ćedoskočiti svim mogućim i nemogućim zamisl ima Potražite bi lo koje Lateh uputstvoza rad sa tabelama i radiće i sa Bimerom

beginframebegintabular | c | c | c | c |

hlineamp Ponedeljak amp Utorak amp Sreda hline

1 amp 16 amp 32 amp 64 hline2 amp 16 amp 128 amp 1024 hline3 amp 16 amp 512 amp 4096 hline

endtabularendframe

Sam svoj majstor

49

Broj 33

Beamer

Teoreme i istaknut tekstU nastavi su česta izlaganja teorema nj ihovih dokaza i primera U Bimer jeugrađena podrška za elegantno predstavl janje ove trojke Mehanizam takođepodržava postepeno otkrivanje sadržaja sla jda tako da slušaocima ne bude odmahotkriven dokaz teoreme Mehanizam za postepeno otkrivanje se kao i kodnabrajanja postiže pomoću bdquolt1-gtrdquo konstrukci je Evo kako to izgleda

beginframeframetitlePrimer teoreme

begintheoremlt1-gt Teorema kaže da su beamer prezentacijezanimljive

endtheorem

beginexamplelt2-gt Ovaj kod kreira slajd beamer prezentacijeendexample

beginprooflt3-gt Čestitamo stigli ste do kraja serijala o pravljenju beamer prezentacija

endproofendframe

50

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Za krajOvim člankom završavamo seri ja l o Bimeru Nadamo se da smo uspel i da vaszainteresujemo za ovu vrlo korisnu klasu Lateha Trudi l i smo se da vamprezentujemo najvažni je delove Bimera koje ćete najčešće koristiti pri l ikomkreiranja svoj ih prezentaci ja

Napominjemo još jednom da je Bimer samo jedna od klasa Lateha što znači da i zaBimer važi sve ono što ste već mogl i da pročitate u ovom časopisu kad smo pisal iseri ja l bdquoUvod u LaTeXrdquo (LiBRE brojevi 17 do 21) Štaviše ovaj seri ja l o Bimeru jebio nastavak upravo tog seri ja la U ovom seri ja lu nismo pisal i o samomformatiranju teksta u prezentaci jama jer se podrazumeva da važe ista pravi la kao iu Latehu a o tome smo pisal i u prethodnom seri ja lu

Hvala vam što ste prati l i ovaj seri ja l i žel imo vam puno uspeha u kreiranju Bimerprezentaci ja

Sam svoj majstor

51

Broj 33

Autor Nenad Marjanović

Kada smo se upoznal i sa podešavanj ima sistema i umrežavanjem vreme je za našprvi Biglbon Blek (BBB - eng BeagleBone Black) projekat Svakom od nas će ovajizazov dati razl ičite ideje a jedna od nj ih može biti i zaštita privatnosti internetkorisnika Nažalost u Srbi j i ne postoj i ni jedan izlazni tor server (eng node) i to jepomalo tužna sl ika s obzirom da govorimo o populaci j i od sedam mil ionastanovnika Al i ovu sl iku možemo promeniti udruženim snagama i za početakkreiranjem Tor transfer i izlaznog servera U ovde prikazanom grafikonufokusiraćemo se na bdquoRauter Brdquo tačku odnosno transfer server konfiguraci ju

BeagleBone Black Rev C

Vodič od prvog dana (3 deo) ndashBeagleBone Black kao Tor relej

Hardver

52

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Tor predstavl ja mrežu servera koj i se povezuju radi bol je enkripci je podataka izaštite IP adrese korisnika Naš ci l j je da danas postanemo deo ovog predivnogprojekta i da se nađemo na svetskoj karti Tor servera

Brzina interneta i zakonske regulativePotrebno je imati na umu nekol iko bitnih stvari

1 Naš server = naša odgovornost2 Obavezno naznačite da ste vi administrator a ne korisnik istog servera3 Da posedujete internet brzinu od 2 Mbs

Ako ispunjavamo tri navedena pravi la i odgovornosti možemo se posvetitiadministrativnim poslovima

Instalacija i podešavanjaU ovom primeru koristimo Debi jan Vizi (eng Wheezy) odnosno Debi jan 7 verzi juna našem BBB uređaju Vi možete testirati i druge Linuks platforme Prvododajemo izvornu bibl ioteku u etcaptsourceslist faj l pokretanjem sledećekomande u terminalu

echo deb httpdebtorprojectorgtorprojectorg wheezy main gt etcaptsourceslistdtorlist

Zatim dodajemo izvorni kl juč vršimo ažuriranje sistema i instal iramo tor i tor-arm(Tor monitoring sistem)

gpg --keyserver keysgnupgnet --recv 886DDD89gpg --export A3C4F0F979CAA22CDBA8F512EE8CBC9E886DDD89 | sudo apt-keyadd -apt-get updateapt-get install debtorprojectorg-keyring -yapt-get install tor tor-arm egrep screen -y

Ovim smo uspešno završi l i instalaci ju Tor servera i sistema za monitoring odnosnonadgledanja našeg Tor servera Sledećom komandom radimo na podešavanj imaTor servera koja se nalaze u etctortorrc faj lu Obratite pažnju i izvršite potrebne

Hardver

53

Broj 33

izmenu u pol j ima IP adresa (eng Address) nadimka (eng Nickname) i kontaktpodataka (eng ContactInfo) pre pokretanja ove komande Kopiramo i pokrećemokomandu u celosti u terminalu

egrep -v ^(|$) etctortorrcORPort 443Address 19216811Nickname LibreTorRelayRelayBandwidthRate 100 KBRelayBandwidthBurst 120 KBContactInfo ltvi at gmail dot comgt irPort 8080DirPortFrontPage etctortorhtmlExitPolicy reject

Detal je o svim vrednostima nećemo iznositi u ovom broju LiBRE časopisa al ićemo o nj ima pisati u sledećem u kome ćemo pričati o zaštiti Tor servera imogućnosti podešavanja određenih izlaznih pravi la (eng ExitPolicy)

Nakon ovoga možemo primetiti da se u folderu etctor ne nalazi torhtml faj l Ovaj faj l ni je od vel ikog značaja i možete ga l ično napraviti i l i preuzeti jednu kopi ju- naprimer sa sledeće lokaci je

cp usrsharedoctortorhtml etctortorhtml

Opcije i Tor Arm monitoringDa bismo ispravno koristi l i Tor Arm potrebno je urediti još jednom etctortorrcfaj l i restartovati servis

echo -e ldquoDisableDebuggerAttachment 0n AvoidDiskWritesrdquo gtgt etctortorrcsudo service tor reload

Ukol iko žel ite koristiti Tor Arm za nadgledanje aktivnosti na serveru pokreniteprogram screen kl iknite na bdquoEnterrdquo i kucajte sudo -u debian-tor arm Naekranu ćete imati sl ičan prikaz

BeagleBone Black

54

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Hardver

55

Broj 33

Da bismo napusti l i screen program koristimo Ctrl + a + d i na taj način kada sesledeći put pri javimo na server kucamo samo screen -r u terminalu - i naći ćemose ponovo na čuvenom Tor Arm monitoring ekranu

Nakon svake promene konfiguracionih faj lova ako slučajno nismo nešto podesi l ikako treba restartujemo servise

U sledećem broju časopisa govorićemo o minimalnim podešavanj ima ikonfigurisanju izlaznog Tor servera (eng Tor Exit Node) opci jama sigurnosti isl ičnim detal j ima u vezi sa našim prvim projektom Do čitanja u sledećem broju

BeagleBone Black

LUGoNS BarCamp 4subota 7 mart 2015 godine

Četvrti LUGoNS-ov Barkemp (BarCamp) održaće se u Novom Sadu usubotu 7 marta 2015 godine na Fakultetu tehničkih nauka sa početkomu 12 časova

Ulaz je slobodan

Poziv za predaju radovaLUGoNS poziva sve zainteresovane da pošal ju svoje radove (predavanjaprezentaci je radionice i diskusi je) do 28 februara 2015 godine

Oblasti iz koj ih možete da pri javite vaše radove su

bull Slobodan softverbull Zaniml j iv hardverbull Hakerski zakonibull Sigurnosne noćne morebull Anonimnost i privatnost na internetubull Duboki veb (eng Deep Web)bull Soci ja lne mrežebull Soci ja lni inženjeringbull Hakovanje mobi lnih uređajabull Internet u oblaku (eng Clouds) ndash hakovanje razbi janje i neočekivano korišćenjebull DPI (eng deep packet inspection)bull Mreža i mrežna neutralnost ndash vlasništvo cenzura nadmudrivanje i pol itika bdquodefaktordquo standarda

bull Programiranje i programski jezici

Nemojte se ustručavati i slobodno nam se javite ako imate rad na gore navedenei l i sl ične teme koj i smatrate interesantnim

Stranica za predaju radova nalazi se na https events lugonsorgp=1658

Page 34: LiBRE 33 Lat

34

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Veća produktivnost

ORM smanjuje kol ičinu koda potrebnog za ostvarivanje trajnosti podataka Ovoomogućava programeru da vreme koje bi utrošio na ručno mapiranje podatakautroši na druge delove apl ikaci je

Lakše održavanje

Manje l ini ja koda osigurava bol ju razuml j ivost (i možda bol j i kval itet koda) jernaglašava apl ikaci jsku logiku ORM takođe ublažava uticaj nastal ih promena kaošto su promene u bazi strukturi tabela i td

Prenosivost

Većina ORM rešenja podržava sisteme za upravl janje bazama podataka raznihproizvođača ORM u potpunosti odvaja sloj apl ikaci je od stvarne SQL komunikaci jekoja se odvi ja u pozadini Time omogućava da se pišu apl ikaci je koje će moći da seizvršavaju na razl ičitim bazama podataka bez potrebe za dodatnim kodiranjemOva komunikaci ja se odvi ja sa programskim interfejsima ORM-a nezavisno oDBMS-u sa koj im je u bi lo kom momentu povezan ORM takođe omogućava lakšiprelaz sa manj ih na veće baze podataka tokom razvoja apl ikaci je

Uvidel i smo da trenutno postoje dve paradigme koje se bdquosudarajurdquo i koje supodjednako dobre same za sebe Relaciona paradigma potvrđuje da sve što jeizgrađeno na matematičkim osnovama je i trajno u smislu kval iteta koje posedujeU domenu u kom relaciona paradigma egzistira ona je ako je to u ovo vremeuopšte moguće tvrditi nezamenj iva

Ono što otvara pitanja i daje razlog za sumnju je koja je krajnja granicaupotrebl j ivosti relacione paradigme tj kol iki su kapaciteti složenosti zahtevaapl ikaci ja sa kojom može da se nosi Praksa je pokazala da je sasvim mogućebdquoizvestirdquo složene projekte - al i održavanje skalabi lnost razuml j ivost prenosivost -pitanja su sa koj im se relaciona paradigma teško može izboriti

Sa druge strane svoj habitat u informacionim tehnologi jama je našla i objektna

Slobodni profesionalac

35

Broj 33

paradigma Iako na prvi pogled ova dva modela nemaju ništa zajedničko - što je uneku ruku i istinito gledajući prirodu podataka koj im manipul išu - praksa jepokazala da su usko povezane i skoro da imaju sinaptičku vezu

Pitanje bdquokako spoj iti te sinapserdquo dovelo je do žučnih rasprava u uskim naučnimprogramersko-administratorskim krugovima Rodi l i su se razni model i a l i jedan jeiskočio i polako ulazi u široku primenu - a to je ORM Svoj im supti lnim pristupomproblemu nekompatibi lnih paradigmi nekako je uspeo da stvori taj nedostajućibdquoelektrični signalrdquo koj i ih je povezao Ovo je omogući lo da dve strane koje susvaka za sebe u svom domenu ostavi le i ostavl ja ju duboki trag u informacionimtehnologi jama sarađuju i donesu novi kval itet

Korisni l inkovi

[1] Hibernejt http hibernateorg[2] Viki http googlLlZulw[3] Tutori ja l i http googlCGzvnc

Hibernate ORM

36

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Autor Kriptopank

Šta su zapravo metapodaci Najkraće rečeno to su podaci o podacima i l iinformaci je koje opisuju podatke

Najpre da napravimo razl iku između podataka i metapodataka Podaci sunaprimer snimak (i l i transkript) vaših telefonskih razgovora sadržaj poruka kojepišete primate i l i šal jete podaci koje kačite na internet i l i preuzimate pretrageGuglom postovi na forumima dopisivanja na IRC kanal ima i l i drugim četovimaaudio i video snimci Skajp razgovora i tako dal je

Hajde da vidimo šta bi bi l i odgovarajući metapodaci za ove primere

bull Za telefonske razgovore metapodaci mogu biti lokaci ja učesnika brojevitelefona trajanje razgovora IP i MAC adresa

bull Za poruke četove i Skajp i l i druge video-audio komunikaci je sl ično je kao kodtelefonskih razgovora

To su samo metapodaci

Internet mreže i komunikacije

37

Broj 33

bull Kod foruma i pretraga Guglom ima malo manje metapodataka al i Gugl i raznisajtovi i forumi ionako čuvaju logove o korisnicima što su takođe metapodaci

Ako do sada koj im slučajem niste uvidel i opasnost po privatnost u ovimmetapodacima koje svako od nas smrtnika svakodnevno ostavl ja za sobom usvetu interneta i ostal ih digitalnih komunikaci ja nadamo se da će vas ovaj primermakar podstaći na razmišl janje a možda i na nešto više

Zamisl i te da neko (zvaćemo ga posmatrač) stalno sakupl ja metapodatke koje zasobom ostavl jate kao mrvice hleba Posmatrač recimo zna da se nalazite naautoputu nedaleko od famoznog Feketića da se ne krećete da zovete AMSS zatimšlep službu i možda taksi a l i ne zna šta ste razgovaral i I l i posmatrač vidi da steprvo zval i aerodrom Nikola Tesla pa odmah potom taksi a l i ne zna šta sterazgovaral i I l i posmatrač vidi da ste zval i prvo šest brojeva či je identitete takođezna pa vidi da se oni zatim kreću ka vama - GPS (eng Global Positioning System) pa zatim pica servis Mekdonalds i neku poznatu prodavnicu kineske hrane al i nezna šta ste razgovaral i

Posmatrač ne mora da bude mnogo pametan niti da prisluškuje vaše razgovore dabi shvatio šta se dešava i l i šta će se desiti Sasvim mu je jasno da vam je u prvomprimeru auto stao na autoputu zatim da ste se u drugom slučaju uputi l i naaerodrom i da možda putujete van zemlje i l i ste poslal i taksi po nekoga saaerodroma a da u trećem slučaju okupl jate žurku kod vas Više možete pogledatina http googl7vUjP

Iako su to bdquosamordquo metapodaci treba biti svestan da ti metapodaci o vama stvarajujednu digitalnu sl iku i l i bol je reći digitalni mozaik i na neki način vas jedinstvenoodređuju Pogotovo kada se planski prikupl ja ju na više nivoa (kompjuter pametnitelefon pametni automobi l i kreditna kartica) metapodaci čine vaš digitalniidentitet Al i da stvar bude još gora ta sl ika o vama ne mora nužno biti istinita jerse lako može lažirati Recimo možete zameniti telefone i l i automobi le sa nekimnamerno i l i slučajno i l i vam neko može jednostavno ukrasti telefon laptop i l ikreditnu karticu Zaniml j iv video http googlKO1fKf

Evo jednog primera koj i vas može uvući u vel ike nevol je Recimo da prolazitenekom zabačenom ul icom i da vam neprimetno ispadne telefon al i vi to neprimetite i nastavite dal je svoj im putem U toj ul ici se samo nekol iko minutakasni je desi neko ubistvo i vas pozovu u pol ici ju kao osumnj ičenog Ako koj im

To su samo metapodaci

38

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

slučajem nemate dobar al ibi i l i nemate svedoka da posvedoči da niste bi l i u tojul ici nego tamo gde ste stvarno bi l i a drugih svedoka nema - možete jako lošeproći Zaniml j ivi video http googlspS5OZ

Metapodaci se takođe nalaze i u faj lovimapodacima koje svakodnevnopreuzimamo sa interneta pravimo i koristimo Svaki tip podatka može da sadržiodređene metapodatke koj i bol je opisuju sam podatak kao naprimer vremenastanka podatka kol iko je vremena potrošeno za njegovo kreiranje kol iko putamu je pristupl jeno kad je poslednj i put pristupl jeno i tako dal je Iako se ovakvimetapodaci možda još uvek čine bezazlenim oni mogu sadržati i IP adresuračunara sa kog su napravl jeni GPS koordinate (najčešće PNG format sl ika satelefona) ko ga je napravio (l ičnost i l i kompani jaorganizaci ja) naziv uređaja imodel sa koga je napravl jen kao i MAC adresu uređaja mej l adresu kreatorasoftver koj im je napravl jen i tako dal je Sve ovo može mnogo da naškodiprivatnosti izvornog kreatora faj la pogotovo ako je sadržaj poverl j iv Ukol iko nekopresretne taj podatak na internetu može saznati od koga je potekao Da ovo možebiti katastrofa po kreatora takvog faj la može i lustrovati primer torenta Ako stedošl i u posed nekih sl ika i l i video materi ja la i l i teksta koj i žel i te da podel ite sasvetom preko nekog torent sajta morate taj podatak prvo očistiti odmetapodataka da ne bi svako ko skine to što ste okači l i saznao da vi stoj i te izatoga

Internet mreže i komunikacije

39

Broj 33

Ljudi se konstantno prate metapodaci se sakupl ja ju i to ni je sada već ništa novoal i možemo da se trudimo da iza sebe ostavl jamo malo manje nežel jenihmetapodataka i da ih takoreći čistimo iz podataka koje razmenjujemo Na srećupostoje programi koj i ovo dobro rade

Najpre je potrebno da vidimo koje sve metapodatke neki faj l sadrži kako bismo seuveri l i da ovi metapodaci stvarno postoje i da je faj l bezbedan nakon nj ihovogbrisanja

Ako koristite operativne sisteme GNULinuksa treba da iz terminala preuzmete iinstal irate program pod nazivom exiftool

sudo apt-get install exiftool

Ovaj program će nam pružiti uvid u sve metapodatke koje faj l sadrži Korišćenje jeiz terminala al i je zato veoma jednostavno samo ga pokrenite na sledeći način

exiftool File

i l i

exiftool putanjadofajlapočevodkorenogdirektorijuma

Dobićete prikaz metapodataka koje je program pronašao Sada je potrebno davidimo da l i je podatak bdquoprl javrdquo tj da l i ima u njemu nešto da se briše i da akoima iz njega sve nepotrebno obrišemo Tu će nam pomoći drugi program zvaniMAT (eng Metadata Anonymisation Toolkit) koga možete naći na sajtuhttps matboumorg i l i jednostavno za korisnike Ubuntua i Debi jana uSoftverskom centru i l i ga možete instal irati iz terminala

sudo apt-get install mat

MAT će proveriti da l i je podatak bdquoprl javrdquo i l i ne i za vas ga očistiti od nežel jenihmetapodataka

Kada očistite faj l on je spreman za del jenje sa drugima a vi ste bezbedni jer nikone može reći da je faj l potekao sa vašeg računara

To su samo metapodaci

40

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Autor Dejan Čugal j

GH Hardi bdquoPrava matematika nema uticaj na ratrdquo - odbrana matematičara1940 godina

Bi l Tat - britanski matematičar verovatno niste čul i za njega1942 godine je izveo ogroman poduhvat koj i je skratio rat dvegodine (barem po rečima Ajzenhauera) i spasio mi l ione životaNažalost njegova vel ičina je preminula 2002 godine obavi jenavelom tajne i nikada zvanično ni je priznato njegovo dostignuće

Tomi Flauers - bivši inženjer poštanskog saobraćaja pretvorio jematematičke ideje Tata u prvi računar a to ni je bio bdquoENIACrdquo1Preminuo je 1998 godine a pretpostavl jamo da nikada niste čul ini za njegovu vel ičinu

Ovi umni giganti bdquoBlečl i parkardquo omogući l i su Britani j i da dešifruje strogo poverl j ivumašinu koju je koristio Hitler da diriguje drugim svetskim ratom a to ni je bi labdquoENIGMArdquo nego nešto mnogo tajni je i značajni je Vel ika je verovatnoća da nistečul i ni za ovo Neki kažu da je to bio Hitlerov Blekberi (BlackBerry)

Izgubljeni heroji bdquoBlečli parkardquo

1 engl Electronic Numerical Integrator And Computer - prvidigitalni elektronski računar

Internet mreže i komunikacije

41

Broj 33

1939 godine bdquoBlečl i parkrdquo je postao ratni štab MI6 (britanske vojne obaveštajneslužbe) Do danas je procurelo u javnost i dokumentovano brojnim fi lmskimdokumentarcima samo da je tu Alan Tjuring uspeo da dešifruje nemačkumornaričku šifru poznatu kao bdquoENIGMArdquo i uvel iko doprineo pobedi saveznika a to jesamo deo priče koj i je ispričan

U Blečl i parku su bi la tri heroja AlanTjuring Bi l Tat i Tomi Flauers Od nj ihtroj ice jedino Alanu Tjuringu je priznat deozasluga za pobedu saveznika u Drugomsvetskom ratu Pregledom otkrivenihpodataka danas možemo da tvrdimo daje bdquoENIGMArdquo već sa početka drugogsvetskog rata bi la zastarela tehnologi ja Zbog toga je bi lo lako skinuti veo tajne sa

ovog uspeha heroja Blečl i parka

Izgubljeni heroji bdquoBlečli parkardquo

42

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Bi l Tat koj i je dešifrovao bdquoTANI sistemrdquo (TANI) i Tomi Flauers koj i je samo svojomintuici jom i znanjem sklopio prvi računar na svetu (bdquoKOLOSrdquo) u svrhu bržegdolaženja do informaci ja razbi jenog koda bdquoTANIrdquo tako da zastarelost šifrata budesvedena na minimum - radi l i su na novoj generaci j i mašina za šifrovanje Ovatehnologi ja je bi la prepoznata kao tehnologi ja budućnosti pa i danas iznadinformaci ja o tim tehnologi jama stoj i natpis bdquovrhunska tajnardquo (eng Top Secret) Upravo ovaj veo tajni oko šifrata bdquoTANIrdquo i prvog računara je rezultirao iskrivl jenjuistori je informatike

Za uspehe u prvim godinama rata je zaista zaslužno razbi janje bdquoENIGMArdquo šifrata ito ni je sporno al i krajem 1941 godine u etru planete se začuo novi zvuk To je bi lanova mašina za šifrovanje ni je bi la zasnovana na bdquoMorzeurdquo već je radi la naprincipu teleprintera

Jedna od kl jučnih ideja Hitlerovog ratovanja je bi la u vel ikoj mobi lnosti i brzomdelovanju trupa na terenu a da bi se to izvelo komunikaci ja je isto tako morala dabude u najmanju ruku putem radio signala

Razl ika je ogromna Razl ika je u kol ičini podataka koj i može da se prenese ovimbdquotajnimrdquo putem Prvi svetski rat je bio zaniml j iv jer su se šifrovane poruke baziralena rečima dok je Drugi u potpunosti otvorio vrata današnjoj kriptografi j i a to jematematika

Originalan nemački kocircdni naziv za ovaj šifrat bio je bdquoLORENCrdquo Britanska

Internet mreže i komunikacije

43

Broj 33

obaveštajna služba mu je dala nadimak bdquoTANIrdquo Čak ni dan danas ni je baš poznatokako je sve nastalo al i pouzdano se zna da je tajnu mašinu Hitler nazvaobdquoGehajmšrajberrdquo (nem Geheimschreiber) - mašina tajni

U srž i tehnologi ju šifrovanja bdquoLORENCrdquo šifrata nećemo ulaziti u ovom članku al iverujte nam na reč - ni je bi la jednostavna Može se pretpostaviti da je inspiraci jaŠenonovog 2 rada slučajnosti bi la upravo ova tehnologi ja iz Drugog svetskog rata

Ono čime se Treći rajh vodio je bdquosigurnardquo šifrovana veza koju niko ni je smeo dadešifruje Prenošenje šifrovanih poruka pomoću radio signala je dalo obaveštajnimslužbama mogućnost presretanja poruka poslatih radio talasima Da l i se ovo idanas dešava Imamo l i sigurnost u našim šifrovanim podacima današnj ice

Ono što je usledi lo nakon proboja ovog bdquoneuhvatl j ivogrdquo šifrata je upravo ono što jeprincip današnj ice kao neka vrsta protokola koj i mora da se ispoštuje uperfektnom šifarskom Šenonovom sistemu

1 NIKADA NIKADA NE KORISTITI DVA PUTA ISTI KLJUČ ZA ŠIFROVANJE2 NIKADA NIKADA KLJUČ NE SME DA SE ŠALJE ISTIM KOMUNIKACIONIM KANALOM

KAO PORUKA3 NIKADA NIKADA KLJUČ NE SME DA BUDE MANJ I NEGO ŠTO JE PORUKA (engl

2 Klod Elvud Šenon (eng Claude Elwood Shannon) (1916-2001) - Američkinaučnik i inženjer

Izgubljeni heroji bdquoBlečli parkardquo

44

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

one time pad) 4 NIKADA NIKADA NE SMEMO DA SAKRIVAMO SISTEM ŠIFROVANJA SVE MORA

DA JE OTVORENOG KOcircDA

Najveći propusti kriptologi je koj i su uočeni baš u Drugom svetskom ratu jesupokušaj sakrivanja sredstava koj im se generiše tajna poruka i nepoznavanjeŠenonovih krajnj ih granica informaci ja Kada kažemo bdquosredstvo i sakrivanjerdquomisl imo na algoritme Postavl ja se pitanje zašto je danas kriptologi ja sigurni ja negočetrdesetih i pedesetih godina prošlog veka

Danas uprkos tome što su algoritmi za kriptografi ju otvorenog kocircda tajnostinformaci ja je na višem nivou nego što je to bi lo dok je algoritam bio strogopoverl j iv Tajnost tajnih podataka se ne zasniva na tajnosti a lgoritama koj i generišutaj isti bdquotajni izlazrdquo (eng cipher text) nego u nemogućnosti matematičke inverznefunkci je koja bi šifrovan tekst otvori la Ovde se vidi da je svrha strukture otvorenogkocircda kao jednog od značajnih delova današnje kriptologi je ona koja ga činisigurnim i svima dostupnim

Sada kada se sa ove distance osvrnemo na Drugi svetski rat možemo videti kol ikosmo bi l i bl izu apokal ipse Naime Albert Ajnštajn je već 1944 godine imao urukama recept za nuklearnu bombu Šenon je mogao već u to vreme da nampredoči 100 siguran šifrat (tzv Hitlerovu super šifru) a l i ipak sreća nas jeposluži la da čovečanstvo tada ni je bi lo spremno da upotrebi svu raspoloživutehnologi ju

Albert Ajnštajn bdquoČetvrti svetski rat će se voditi tol jagamardquo

Zaboravl jeni heroj i Blečl i parka iako su odigral i važnu ulogu u pobedi saveznika usvetskom ratu postal i su žrtve bdquotop secretrdquo doktrine potpuno su zaboravl jeni inestal i su iz istori je

Zakl jučak ovog članka je da je ideologi ja otvorenog kocircda sasvim sigurno tu da nampomogne i da otvori vrata ka većoj sigurnosti novim idejama i kval itetu sameinfrastrukture sistema koju svi zajedno razvi jamo

Internet mreže i komunikacije

45

Broj 33

Autor Nikola Hardi

NabrajanjaBez brojeva

Za nabrajanje pojmova u Bimeru (eng Beamer) koristi se okruženje itemize aunutar tog okruženja možemo da dodajemo nove stavke pomoću item Primerizgleda ovako

beginitemizeitem Stavka Aitem Stavka Bitem Stavka C

enditemize

Sa brojevima

Postoje situaci je kada uz nabrajanje treba da stoje i redni brojevi - za to se koristienumerate okruženje a nove stavke se takođe dodaju pomoću item

beginenumerateitem Redni broj 1item Redni broj 2item Redni broj 3

endenumerate

prezentaci ja

Beamer (4 deo)

Sam svoj majstor

46

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

DefinicijeTreća situaci ja je nabrajanje parova termin - definici ja U tom slučaju se koristiokruženje description Već možete da pretpostavite kako se dodaju nove stavke

Primer

begindescriptionitem[Pojam A] Definicija izmišljenog pojma Aitem[Pojam B] Definicija izmišljenog pojma Bitem[Pojam C] Definicija izmišljenog pojma C

enddescription

Ostala podešavanja i zanimljivostiSva prethodna okruženja mogu da budu ugneždena jedno unutar drugog dotrećeg nivoa Treba biti pažl j iv jer sla jdovi vrlo lako mogu da postanu nečitl j ivi Osim toga moguće je izabrati i format oznake i l i rednih brojeva - na primer ovako

beginenumerate[I]beginenumarate[a)]

Takođe moguće je upravl jati pojavl j ivanjem pojedinih stavki na slajdovima Drugimrečima možemo da odredimo da se nabrajanja postepeno otkrivaju tako što ćemouz stavku dodati lt1-gt odnosno broj od kojeg slajda žel imo da se ta stavkapojavl ju je Tada će jedno nabrajanje biti bdquorazvučenordquo na više slajdovaJednostavni ja mogućnost je da u zaglavl je okruženja dodamo +- što znači dažel imo da se svakim slajdom otkriva po jedna nova stavka iz nabrajanja Znak bdquo-rdquo uoba primera znači da žel imo da se stavka pojavi na sledećem slajdu i da ostane

Sam svoj majstor

47

Broj 33

prisutna Možemo da izostavimo znak bdquo-rdquo i tada će stavka biti prisutna samo najednom slajdu i l i da napišemo raspon slajdova u koj ima žel imo da ta stavka budeprisutna

Rad sa kolonama i blokovimaDo sada su svi primeri podrazumeval i da je sadržaj napisan preko cele širineslajda al i Bimer (eng Beamer) ima i jednostavne mehanizme za razmeštanjesadržaja po kolonama Za rad sa kolonama se koristi okruženje columns unutarkojeg možemo da dodajemo nove kolone pomoću columnširina Sadržaj jemoguće potom pisati i van okruženja sa kolonama

U paru sa kolonama često se sreće i okruženje block koje se parametrizujenaslovom Primerom su i lustrovani i okruženje column i okruženje block

beginframebegincolumns

column05textwidthbeginblockNaslov levog blokaSadržaj u prvoj (levoj) koloni endblock

column05textwidthbeginblockNaslov desnog blokaSadržaj u drugoj (desnoj) koloni

endblockendcolumns

beginblockVan kolona

Beamer

48

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Tekst koji se nalazi ispod kolonaendblock

endframe

TabeleIako se u radu sa prezentaci jama sadržaj najčešće može uredno rasporeditipomoću kolona i nabrajanja nekada to ni je dovol jno jer su tabele pravi formatBimer podržava standardno Lateh (LaTeX) okruženje za rad sa tabelamaOkruženje za rad sa tabelama se zove tabular Pri kreiranju nove tabele moguće jepodesiti koje kolone će biti razdvojene l ini jom i da l i će nj ihov sadržaj biti centrirani l i uz levu i l i uz desnu ivicu Dodavanje novog reda se jednostavno radidodavanjem hline Lateh pruža zaista jako fleksibi lan rad sa tabelama i sigurno ćedoskočiti svim mogućim i nemogućim zamisl ima Potražite bi lo koje Lateh uputstvoza rad sa tabelama i radiće i sa Bimerom

beginframebegintabular | c | c | c | c |

hlineamp Ponedeljak amp Utorak amp Sreda hline

1 amp 16 amp 32 amp 64 hline2 amp 16 amp 128 amp 1024 hline3 amp 16 amp 512 amp 4096 hline

endtabularendframe

Sam svoj majstor

49

Broj 33

Beamer

Teoreme i istaknut tekstU nastavi su česta izlaganja teorema nj ihovih dokaza i primera U Bimer jeugrađena podrška za elegantno predstavl janje ove trojke Mehanizam takođepodržava postepeno otkrivanje sadržaja sla jda tako da slušaocima ne bude odmahotkriven dokaz teoreme Mehanizam za postepeno otkrivanje se kao i kodnabrajanja postiže pomoću bdquolt1-gtrdquo konstrukci je Evo kako to izgleda

beginframeframetitlePrimer teoreme

begintheoremlt1-gt Teorema kaže da su beamer prezentacijezanimljive

endtheorem

beginexamplelt2-gt Ovaj kod kreira slajd beamer prezentacijeendexample

beginprooflt3-gt Čestitamo stigli ste do kraja serijala o pravljenju beamer prezentacija

endproofendframe

50

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Za krajOvim člankom završavamo seri ja l o Bimeru Nadamo se da smo uspel i da vaszainteresujemo za ovu vrlo korisnu klasu Lateha Trudi l i smo se da vamprezentujemo najvažni je delove Bimera koje ćete najčešće koristiti pri l ikomkreiranja svoj ih prezentaci ja

Napominjemo još jednom da je Bimer samo jedna od klasa Lateha što znači da i zaBimer važi sve ono što ste već mogl i da pročitate u ovom časopisu kad smo pisal iseri ja l bdquoUvod u LaTeXrdquo (LiBRE brojevi 17 do 21) Štaviše ovaj seri ja l o Bimeru jebio nastavak upravo tog seri ja la U ovom seri ja lu nismo pisal i o samomformatiranju teksta u prezentaci jama jer se podrazumeva da važe ista pravi la kao iu Latehu a o tome smo pisal i u prethodnom seri ja lu

Hvala vam što ste prati l i ovaj seri ja l i žel imo vam puno uspeha u kreiranju Bimerprezentaci ja

Sam svoj majstor

51

Broj 33

Autor Nenad Marjanović

Kada smo se upoznal i sa podešavanj ima sistema i umrežavanjem vreme je za našprvi Biglbon Blek (BBB - eng BeagleBone Black) projekat Svakom od nas će ovajizazov dati razl ičite ideje a jedna od nj ih može biti i zaštita privatnosti internetkorisnika Nažalost u Srbi j i ne postoj i ni jedan izlazni tor server (eng node) i to jepomalo tužna sl ika s obzirom da govorimo o populaci j i od sedam mil ionastanovnika Al i ovu sl iku možemo promeniti udruženim snagama i za početakkreiranjem Tor transfer i izlaznog servera U ovde prikazanom grafikonufokusiraćemo se na bdquoRauter Brdquo tačku odnosno transfer server konfiguraci ju

BeagleBone Black Rev C

Vodič od prvog dana (3 deo) ndashBeagleBone Black kao Tor relej

Hardver

52

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Tor predstavl ja mrežu servera koj i se povezuju radi bol je enkripci je podataka izaštite IP adrese korisnika Naš ci l j je da danas postanemo deo ovog predivnogprojekta i da se nađemo na svetskoj karti Tor servera

Brzina interneta i zakonske regulativePotrebno je imati na umu nekol iko bitnih stvari

1 Naš server = naša odgovornost2 Obavezno naznačite da ste vi administrator a ne korisnik istog servera3 Da posedujete internet brzinu od 2 Mbs

Ako ispunjavamo tri navedena pravi la i odgovornosti možemo se posvetitiadministrativnim poslovima

Instalacija i podešavanjaU ovom primeru koristimo Debi jan Vizi (eng Wheezy) odnosno Debi jan 7 verzi juna našem BBB uređaju Vi možete testirati i druge Linuks platforme Prvododajemo izvornu bibl ioteku u etcaptsourceslist faj l pokretanjem sledećekomande u terminalu

echo deb httpdebtorprojectorgtorprojectorg wheezy main gt etcaptsourceslistdtorlist

Zatim dodajemo izvorni kl juč vršimo ažuriranje sistema i instal iramo tor i tor-arm(Tor monitoring sistem)

gpg --keyserver keysgnupgnet --recv 886DDD89gpg --export A3C4F0F979CAA22CDBA8F512EE8CBC9E886DDD89 | sudo apt-keyadd -apt-get updateapt-get install debtorprojectorg-keyring -yapt-get install tor tor-arm egrep screen -y

Ovim smo uspešno završi l i instalaci ju Tor servera i sistema za monitoring odnosnonadgledanja našeg Tor servera Sledećom komandom radimo na podešavanj imaTor servera koja se nalaze u etctortorrc faj lu Obratite pažnju i izvršite potrebne

Hardver

53

Broj 33

izmenu u pol j ima IP adresa (eng Address) nadimka (eng Nickname) i kontaktpodataka (eng ContactInfo) pre pokretanja ove komande Kopiramo i pokrećemokomandu u celosti u terminalu

egrep -v ^(|$) etctortorrcORPort 443Address 19216811Nickname LibreTorRelayRelayBandwidthRate 100 KBRelayBandwidthBurst 120 KBContactInfo ltvi at gmail dot comgt irPort 8080DirPortFrontPage etctortorhtmlExitPolicy reject

Detal je o svim vrednostima nećemo iznositi u ovom broju LiBRE časopisa al ićemo o nj ima pisati u sledećem u kome ćemo pričati o zaštiti Tor servera imogućnosti podešavanja određenih izlaznih pravi la (eng ExitPolicy)

Nakon ovoga možemo primetiti da se u folderu etctor ne nalazi torhtml faj l Ovaj faj l ni je od vel ikog značaja i možete ga l ično napraviti i l i preuzeti jednu kopi ju- naprimer sa sledeće lokaci je

cp usrsharedoctortorhtml etctortorhtml

Opcije i Tor Arm monitoringDa bismo ispravno koristi l i Tor Arm potrebno je urediti još jednom etctortorrcfaj l i restartovati servis

echo -e ldquoDisableDebuggerAttachment 0n AvoidDiskWritesrdquo gtgt etctortorrcsudo service tor reload

Ukol iko žel ite koristiti Tor Arm za nadgledanje aktivnosti na serveru pokreniteprogram screen kl iknite na bdquoEnterrdquo i kucajte sudo -u debian-tor arm Naekranu ćete imati sl ičan prikaz

BeagleBone Black

54

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Hardver

55

Broj 33

Da bismo napusti l i screen program koristimo Ctrl + a + d i na taj način kada sesledeći put pri javimo na server kucamo samo screen -r u terminalu - i naći ćemose ponovo na čuvenom Tor Arm monitoring ekranu

Nakon svake promene konfiguracionih faj lova ako slučajno nismo nešto podesi l ikako treba restartujemo servise

U sledećem broju časopisa govorićemo o minimalnim podešavanj ima ikonfigurisanju izlaznog Tor servera (eng Tor Exit Node) opci jama sigurnosti isl ičnim detal j ima u vezi sa našim prvim projektom Do čitanja u sledećem broju

BeagleBone Black

LUGoNS BarCamp 4subota 7 mart 2015 godine

Četvrti LUGoNS-ov Barkemp (BarCamp) održaće se u Novom Sadu usubotu 7 marta 2015 godine na Fakultetu tehničkih nauka sa početkomu 12 časova

Ulaz je slobodan

Poziv za predaju radovaLUGoNS poziva sve zainteresovane da pošal ju svoje radove (predavanjaprezentaci je radionice i diskusi je) do 28 februara 2015 godine

Oblasti iz koj ih možete da pri javite vaše radove su

bull Slobodan softverbull Zaniml j iv hardverbull Hakerski zakonibull Sigurnosne noćne morebull Anonimnost i privatnost na internetubull Duboki veb (eng Deep Web)bull Soci ja lne mrežebull Soci ja lni inženjeringbull Hakovanje mobi lnih uređajabull Internet u oblaku (eng Clouds) ndash hakovanje razbi janje i neočekivano korišćenjebull DPI (eng deep packet inspection)bull Mreža i mrežna neutralnost ndash vlasništvo cenzura nadmudrivanje i pol itika bdquodefaktordquo standarda

bull Programiranje i programski jezici

Nemojte se ustručavati i slobodno nam se javite ako imate rad na gore navedenei l i sl ične teme koj i smatrate interesantnim

Stranica za predaju radova nalazi se na https events lugonsorgp=1658

Page 35: LiBRE 33 Lat

35

Broj 33

paradigma Iako na prvi pogled ova dva modela nemaju ništa zajedničko - što je uneku ruku i istinito gledajući prirodu podataka koj im manipul išu - praksa jepokazala da su usko povezane i skoro da imaju sinaptičku vezu

Pitanje bdquokako spoj iti te sinapserdquo dovelo je do žučnih rasprava u uskim naučnimprogramersko-administratorskim krugovima Rodi l i su se razni model i a l i jedan jeiskočio i polako ulazi u široku primenu - a to je ORM Svoj im supti lnim pristupomproblemu nekompatibi lnih paradigmi nekako je uspeo da stvori taj nedostajućibdquoelektrični signalrdquo koj i ih je povezao Ovo je omogući lo da dve strane koje susvaka za sebe u svom domenu ostavi le i ostavl ja ju duboki trag u informacionimtehnologi jama sarađuju i donesu novi kval itet

Korisni l inkovi

[1] Hibernejt http hibernateorg[2] Viki http googlLlZulw[3] Tutori ja l i http googlCGzvnc

Hibernate ORM

36

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Autor Kriptopank

Šta su zapravo metapodaci Najkraće rečeno to su podaci o podacima i l iinformaci je koje opisuju podatke

Najpre da napravimo razl iku između podataka i metapodataka Podaci sunaprimer snimak (i l i transkript) vaših telefonskih razgovora sadržaj poruka kojepišete primate i l i šal jete podaci koje kačite na internet i l i preuzimate pretrageGuglom postovi na forumima dopisivanja na IRC kanal ima i l i drugim četovimaaudio i video snimci Skajp razgovora i tako dal je

Hajde da vidimo šta bi bi l i odgovarajući metapodaci za ove primere

bull Za telefonske razgovore metapodaci mogu biti lokaci ja učesnika brojevitelefona trajanje razgovora IP i MAC adresa

bull Za poruke četove i Skajp i l i druge video-audio komunikaci je sl ično je kao kodtelefonskih razgovora

To su samo metapodaci

Internet mreže i komunikacije

37

Broj 33

bull Kod foruma i pretraga Guglom ima malo manje metapodataka al i Gugl i raznisajtovi i forumi ionako čuvaju logove o korisnicima što su takođe metapodaci

Ako do sada koj im slučajem niste uvidel i opasnost po privatnost u ovimmetapodacima koje svako od nas smrtnika svakodnevno ostavl ja za sobom usvetu interneta i ostal ih digitalnih komunikaci ja nadamo se da će vas ovaj primermakar podstaći na razmišl janje a možda i na nešto više

Zamisl i te da neko (zvaćemo ga posmatrač) stalno sakupl ja metapodatke koje zasobom ostavl jate kao mrvice hleba Posmatrač recimo zna da se nalazite naautoputu nedaleko od famoznog Feketića da se ne krećete da zovete AMSS zatimšlep službu i možda taksi a l i ne zna šta ste razgovaral i I l i posmatrač vidi da steprvo zval i aerodrom Nikola Tesla pa odmah potom taksi a l i ne zna šta sterazgovaral i I l i posmatrač vidi da ste zval i prvo šest brojeva či je identitete takođezna pa vidi da se oni zatim kreću ka vama - GPS (eng Global Positioning System) pa zatim pica servis Mekdonalds i neku poznatu prodavnicu kineske hrane al i nezna šta ste razgovaral i

Posmatrač ne mora da bude mnogo pametan niti da prisluškuje vaše razgovore dabi shvatio šta se dešava i l i šta će se desiti Sasvim mu je jasno da vam je u prvomprimeru auto stao na autoputu zatim da ste se u drugom slučaju uputi l i naaerodrom i da možda putujete van zemlje i l i ste poslal i taksi po nekoga saaerodroma a da u trećem slučaju okupl jate žurku kod vas Više možete pogledatina http googl7vUjP

Iako su to bdquosamordquo metapodaci treba biti svestan da ti metapodaci o vama stvarajujednu digitalnu sl iku i l i bol je reći digitalni mozaik i na neki način vas jedinstvenoodređuju Pogotovo kada se planski prikupl ja ju na više nivoa (kompjuter pametnitelefon pametni automobi l i kreditna kartica) metapodaci čine vaš digitalniidentitet Al i da stvar bude još gora ta sl ika o vama ne mora nužno biti istinita jerse lako može lažirati Recimo možete zameniti telefone i l i automobi le sa nekimnamerno i l i slučajno i l i vam neko može jednostavno ukrasti telefon laptop i l ikreditnu karticu Zaniml j iv video http googlKO1fKf

Evo jednog primera koj i vas može uvući u vel ike nevol je Recimo da prolazitenekom zabačenom ul icom i da vam neprimetno ispadne telefon al i vi to neprimetite i nastavite dal je svoj im putem U toj ul ici se samo nekol iko minutakasni je desi neko ubistvo i vas pozovu u pol ici ju kao osumnj ičenog Ako koj im

To su samo metapodaci

38

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

slučajem nemate dobar al ibi i l i nemate svedoka da posvedoči da niste bi l i u tojul ici nego tamo gde ste stvarno bi l i a drugih svedoka nema - možete jako lošeproći Zaniml j ivi video http googlspS5OZ

Metapodaci se takođe nalaze i u faj lovimapodacima koje svakodnevnopreuzimamo sa interneta pravimo i koristimo Svaki tip podatka može da sadržiodređene metapodatke koj i bol je opisuju sam podatak kao naprimer vremenastanka podatka kol iko je vremena potrošeno za njegovo kreiranje kol iko putamu je pristupl jeno kad je poslednj i put pristupl jeno i tako dal je Iako se ovakvimetapodaci možda još uvek čine bezazlenim oni mogu sadržati i IP adresuračunara sa kog su napravl jeni GPS koordinate (najčešće PNG format sl ika satelefona) ko ga je napravio (l ičnost i l i kompani jaorganizaci ja) naziv uređaja imodel sa koga je napravl jen kao i MAC adresu uređaja mej l adresu kreatorasoftver koj im je napravl jen i tako dal je Sve ovo može mnogo da naškodiprivatnosti izvornog kreatora faj la pogotovo ako je sadržaj poverl j iv Ukol iko nekopresretne taj podatak na internetu može saznati od koga je potekao Da ovo možebiti katastrofa po kreatora takvog faj la može i lustrovati primer torenta Ako stedošl i u posed nekih sl ika i l i video materi ja la i l i teksta koj i žel i te da podel ite sasvetom preko nekog torent sajta morate taj podatak prvo očistiti odmetapodataka da ne bi svako ko skine to što ste okači l i saznao da vi stoj i te izatoga

Internet mreže i komunikacije

39

Broj 33

Ljudi se konstantno prate metapodaci se sakupl ja ju i to ni je sada već ništa novoal i možemo da se trudimo da iza sebe ostavl jamo malo manje nežel jenihmetapodataka i da ih takoreći čistimo iz podataka koje razmenjujemo Na srećupostoje programi koj i ovo dobro rade

Najpre je potrebno da vidimo koje sve metapodatke neki faj l sadrži kako bismo seuveri l i da ovi metapodaci stvarno postoje i da je faj l bezbedan nakon nj ihovogbrisanja

Ako koristite operativne sisteme GNULinuksa treba da iz terminala preuzmete iinstal irate program pod nazivom exiftool

sudo apt-get install exiftool

Ovaj program će nam pružiti uvid u sve metapodatke koje faj l sadrži Korišćenje jeiz terminala al i je zato veoma jednostavno samo ga pokrenite na sledeći način

exiftool File

i l i

exiftool putanjadofajlapočevodkorenogdirektorijuma

Dobićete prikaz metapodataka koje je program pronašao Sada je potrebno davidimo da l i je podatak bdquoprl javrdquo tj da l i ima u njemu nešto da se briše i da akoima iz njega sve nepotrebno obrišemo Tu će nam pomoći drugi program zvaniMAT (eng Metadata Anonymisation Toolkit) koga možete naći na sajtuhttps matboumorg i l i jednostavno za korisnike Ubuntua i Debi jana uSoftverskom centru i l i ga možete instal irati iz terminala

sudo apt-get install mat

MAT će proveriti da l i je podatak bdquoprl javrdquo i l i ne i za vas ga očistiti od nežel jenihmetapodataka

Kada očistite faj l on je spreman za del jenje sa drugima a vi ste bezbedni jer nikone može reći da je faj l potekao sa vašeg računara

To su samo metapodaci

40

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Autor Dejan Čugal j

GH Hardi bdquoPrava matematika nema uticaj na ratrdquo - odbrana matematičara1940 godina

Bi l Tat - britanski matematičar verovatno niste čul i za njega1942 godine je izveo ogroman poduhvat koj i je skratio rat dvegodine (barem po rečima Ajzenhauera) i spasio mi l ione životaNažalost njegova vel ičina je preminula 2002 godine obavi jenavelom tajne i nikada zvanično ni je priznato njegovo dostignuće

Tomi Flauers - bivši inženjer poštanskog saobraćaja pretvorio jematematičke ideje Tata u prvi računar a to ni je bio bdquoENIACrdquo1Preminuo je 1998 godine a pretpostavl jamo da nikada niste čul ini za njegovu vel ičinu

Ovi umni giganti bdquoBlečl i parkardquo omogući l i su Britani j i da dešifruje strogo poverl j ivumašinu koju je koristio Hitler da diriguje drugim svetskim ratom a to ni je bi labdquoENIGMArdquo nego nešto mnogo tajni je i značajni je Vel ika je verovatnoća da nistečul i ni za ovo Neki kažu da je to bio Hitlerov Blekberi (BlackBerry)

Izgubljeni heroji bdquoBlečli parkardquo

1 engl Electronic Numerical Integrator And Computer - prvidigitalni elektronski računar

Internet mreže i komunikacije

41

Broj 33

1939 godine bdquoBlečl i parkrdquo je postao ratni štab MI6 (britanske vojne obaveštajneslužbe) Do danas je procurelo u javnost i dokumentovano brojnim fi lmskimdokumentarcima samo da je tu Alan Tjuring uspeo da dešifruje nemačkumornaričku šifru poznatu kao bdquoENIGMArdquo i uvel iko doprineo pobedi saveznika a to jesamo deo priče koj i je ispričan

U Blečl i parku su bi la tri heroja AlanTjuring Bi l Tat i Tomi Flauers Od nj ihtroj ice jedino Alanu Tjuringu je priznat deozasluga za pobedu saveznika u Drugomsvetskom ratu Pregledom otkrivenihpodataka danas možemo da tvrdimo daje bdquoENIGMArdquo već sa početka drugogsvetskog rata bi la zastarela tehnologi ja Zbog toga je bi lo lako skinuti veo tajne sa

ovog uspeha heroja Blečl i parka

Izgubljeni heroji bdquoBlečli parkardquo

42

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Bi l Tat koj i je dešifrovao bdquoTANI sistemrdquo (TANI) i Tomi Flauers koj i je samo svojomintuici jom i znanjem sklopio prvi računar na svetu (bdquoKOLOSrdquo) u svrhu bržegdolaženja do informaci ja razbi jenog koda bdquoTANIrdquo tako da zastarelost šifrata budesvedena na minimum - radi l i su na novoj generaci j i mašina za šifrovanje Ovatehnologi ja je bi la prepoznata kao tehnologi ja budućnosti pa i danas iznadinformaci ja o tim tehnologi jama stoj i natpis bdquovrhunska tajnardquo (eng Top Secret) Upravo ovaj veo tajni oko šifrata bdquoTANIrdquo i prvog računara je rezultirao iskrivl jenjuistori je informatike

Za uspehe u prvim godinama rata je zaista zaslužno razbi janje bdquoENIGMArdquo šifrata ito ni je sporno al i krajem 1941 godine u etru planete se začuo novi zvuk To je bi lanova mašina za šifrovanje ni je bi la zasnovana na bdquoMorzeurdquo već je radi la naprincipu teleprintera

Jedna od kl jučnih ideja Hitlerovog ratovanja je bi la u vel ikoj mobi lnosti i brzomdelovanju trupa na terenu a da bi se to izvelo komunikaci ja je isto tako morala dabude u najmanju ruku putem radio signala

Razl ika je ogromna Razl ika je u kol ičini podataka koj i može da se prenese ovimbdquotajnimrdquo putem Prvi svetski rat je bio zaniml j iv jer su se šifrovane poruke baziralena rečima dok je Drugi u potpunosti otvorio vrata današnjoj kriptografi j i a to jematematika

Originalan nemački kocircdni naziv za ovaj šifrat bio je bdquoLORENCrdquo Britanska

Internet mreže i komunikacije

43

Broj 33

obaveštajna služba mu je dala nadimak bdquoTANIrdquo Čak ni dan danas ni je baš poznatokako je sve nastalo al i pouzdano se zna da je tajnu mašinu Hitler nazvaobdquoGehajmšrajberrdquo (nem Geheimschreiber) - mašina tajni

U srž i tehnologi ju šifrovanja bdquoLORENCrdquo šifrata nećemo ulaziti u ovom članku al iverujte nam na reč - ni je bi la jednostavna Može se pretpostaviti da je inspiraci jaŠenonovog 2 rada slučajnosti bi la upravo ova tehnologi ja iz Drugog svetskog rata

Ono čime se Treći rajh vodio je bdquosigurnardquo šifrovana veza koju niko ni je smeo dadešifruje Prenošenje šifrovanih poruka pomoću radio signala je dalo obaveštajnimslužbama mogućnost presretanja poruka poslatih radio talasima Da l i se ovo idanas dešava Imamo l i sigurnost u našim šifrovanim podacima današnj ice

Ono što je usledi lo nakon proboja ovog bdquoneuhvatl j ivogrdquo šifrata je upravo ono što jeprincip današnj ice kao neka vrsta protokola koj i mora da se ispoštuje uperfektnom šifarskom Šenonovom sistemu

1 NIKADA NIKADA NE KORISTITI DVA PUTA ISTI KLJUČ ZA ŠIFROVANJE2 NIKADA NIKADA KLJUČ NE SME DA SE ŠALJE ISTIM KOMUNIKACIONIM KANALOM

KAO PORUKA3 NIKADA NIKADA KLJUČ NE SME DA BUDE MANJ I NEGO ŠTO JE PORUKA (engl

2 Klod Elvud Šenon (eng Claude Elwood Shannon) (1916-2001) - Američkinaučnik i inženjer

Izgubljeni heroji bdquoBlečli parkardquo

44

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

one time pad) 4 NIKADA NIKADA NE SMEMO DA SAKRIVAMO SISTEM ŠIFROVANJA SVE MORA

DA JE OTVORENOG KOcircDA

Najveći propusti kriptologi je koj i su uočeni baš u Drugom svetskom ratu jesupokušaj sakrivanja sredstava koj im se generiše tajna poruka i nepoznavanjeŠenonovih krajnj ih granica informaci ja Kada kažemo bdquosredstvo i sakrivanjerdquomisl imo na algoritme Postavl ja se pitanje zašto je danas kriptologi ja sigurni ja negočetrdesetih i pedesetih godina prošlog veka

Danas uprkos tome što su algoritmi za kriptografi ju otvorenog kocircda tajnostinformaci ja je na višem nivou nego što je to bi lo dok je algoritam bio strogopoverl j iv Tajnost tajnih podataka se ne zasniva na tajnosti a lgoritama koj i generišutaj isti bdquotajni izlazrdquo (eng cipher text) nego u nemogućnosti matematičke inverznefunkci je koja bi šifrovan tekst otvori la Ovde se vidi da je svrha strukture otvorenogkocircda kao jednog od značajnih delova današnje kriptologi je ona koja ga činisigurnim i svima dostupnim

Sada kada se sa ove distance osvrnemo na Drugi svetski rat možemo videti kol ikosmo bi l i bl izu apokal ipse Naime Albert Ajnštajn je već 1944 godine imao urukama recept za nuklearnu bombu Šenon je mogao već u to vreme da nampredoči 100 siguran šifrat (tzv Hitlerovu super šifru) a l i ipak sreća nas jeposluži la da čovečanstvo tada ni je bi lo spremno da upotrebi svu raspoloživutehnologi ju

Albert Ajnštajn bdquoČetvrti svetski rat će se voditi tol jagamardquo

Zaboravl jeni heroj i Blečl i parka iako su odigral i važnu ulogu u pobedi saveznika usvetskom ratu postal i su žrtve bdquotop secretrdquo doktrine potpuno su zaboravl jeni inestal i su iz istori je

Zakl jučak ovog članka je da je ideologi ja otvorenog kocircda sasvim sigurno tu da nampomogne i da otvori vrata ka većoj sigurnosti novim idejama i kval itetu sameinfrastrukture sistema koju svi zajedno razvi jamo

Internet mreže i komunikacije

45

Broj 33

Autor Nikola Hardi

NabrajanjaBez brojeva

Za nabrajanje pojmova u Bimeru (eng Beamer) koristi se okruženje itemize aunutar tog okruženja možemo da dodajemo nove stavke pomoću item Primerizgleda ovako

beginitemizeitem Stavka Aitem Stavka Bitem Stavka C

enditemize

Sa brojevima

Postoje situaci je kada uz nabrajanje treba da stoje i redni brojevi - za to se koristienumerate okruženje a nove stavke se takođe dodaju pomoću item

beginenumerateitem Redni broj 1item Redni broj 2item Redni broj 3

endenumerate

prezentaci ja

Beamer (4 deo)

Sam svoj majstor

46

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

DefinicijeTreća situaci ja je nabrajanje parova termin - definici ja U tom slučaju se koristiokruženje description Već možete da pretpostavite kako se dodaju nove stavke

Primer

begindescriptionitem[Pojam A] Definicija izmišljenog pojma Aitem[Pojam B] Definicija izmišljenog pojma Bitem[Pojam C] Definicija izmišljenog pojma C

enddescription

Ostala podešavanja i zanimljivostiSva prethodna okruženja mogu da budu ugneždena jedno unutar drugog dotrećeg nivoa Treba biti pažl j iv jer sla jdovi vrlo lako mogu da postanu nečitl j ivi Osim toga moguće je izabrati i format oznake i l i rednih brojeva - na primer ovako

beginenumerate[I]beginenumarate[a)]

Takođe moguće je upravl jati pojavl j ivanjem pojedinih stavki na slajdovima Drugimrečima možemo da odredimo da se nabrajanja postepeno otkrivaju tako što ćemouz stavku dodati lt1-gt odnosno broj od kojeg slajda žel imo da se ta stavkapojavl ju je Tada će jedno nabrajanje biti bdquorazvučenordquo na više slajdovaJednostavni ja mogućnost je da u zaglavl je okruženja dodamo +- što znači dažel imo da se svakim slajdom otkriva po jedna nova stavka iz nabrajanja Znak bdquo-rdquo uoba primera znači da žel imo da se stavka pojavi na sledećem slajdu i da ostane

Sam svoj majstor

47

Broj 33

prisutna Možemo da izostavimo znak bdquo-rdquo i tada će stavka biti prisutna samo najednom slajdu i l i da napišemo raspon slajdova u koj ima žel imo da ta stavka budeprisutna

Rad sa kolonama i blokovimaDo sada su svi primeri podrazumeval i da je sadržaj napisan preko cele širineslajda al i Bimer (eng Beamer) ima i jednostavne mehanizme za razmeštanjesadržaja po kolonama Za rad sa kolonama se koristi okruženje columns unutarkojeg možemo da dodajemo nove kolone pomoću columnširina Sadržaj jemoguće potom pisati i van okruženja sa kolonama

U paru sa kolonama često se sreće i okruženje block koje se parametrizujenaslovom Primerom su i lustrovani i okruženje column i okruženje block

beginframebegincolumns

column05textwidthbeginblockNaslov levog blokaSadržaj u prvoj (levoj) koloni endblock

column05textwidthbeginblockNaslov desnog blokaSadržaj u drugoj (desnoj) koloni

endblockendcolumns

beginblockVan kolona

Beamer

48

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Tekst koji se nalazi ispod kolonaendblock

endframe

TabeleIako se u radu sa prezentaci jama sadržaj najčešće može uredno rasporeditipomoću kolona i nabrajanja nekada to ni je dovol jno jer su tabele pravi formatBimer podržava standardno Lateh (LaTeX) okruženje za rad sa tabelamaOkruženje za rad sa tabelama se zove tabular Pri kreiranju nove tabele moguće jepodesiti koje kolone će biti razdvojene l ini jom i da l i će nj ihov sadržaj biti centrirani l i uz levu i l i uz desnu ivicu Dodavanje novog reda se jednostavno radidodavanjem hline Lateh pruža zaista jako fleksibi lan rad sa tabelama i sigurno ćedoskočiti svim mogućim i nemogućim zamisl ima Potražite bi lo koje Lateh uputstvoza rad sa tabelama i radiće i sa Bimerom

beginframebegintabular | c | c | c | c |

hlineamp Ponedeljak amp Utorak amp Sreda hline

1 amp 16 amp 32 amp 64 hline2 amp 16 amp 128 amp 1024 hline3 amp 16 amp 512 amp 4096 hline

endtabularendframe

Sam svoj majstor

49

Broj 33

Beamer

Teoreme i istaknut tekstU nastavi su česta izlaganja teorema nj ihovih dokaza i primera U Bimer jeugrađena podrška za elegantno predstavl janje ove trojke Mehanizam takođepodržava postepeno otkrivanje sadržaja sla jda tako da slušaocima ne bude odmahotkriven dokaz teoreme Mehanizam za postepeno otkrivanje se kao i kodnabrajanja postiže pomoću bdquolt1-gtrdquo konstrukci je Evo kako to izgleda

beginframeframetitlePrimer teoreme

begintheoremlt1-gt Teorema kaže da su beamer prezentacijezanimljive

endtheorem

beginexamplelt2-gt Ovaj kod kreira slajd beamer prezentacijeendexample

beginprooflt3-gt Čestitamo stigli ste do kraja serijala o pravljenju beamer prezentacija

endproofendframe

50

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Za krajOvim člankom završavamo seri ja l o Bimeru Nadamo se da smo uspel i da vaszainteresujemo za ovu vrlo korisnu klasu Lateha Trudi l i smo se da vamprezentujemo najvažni je delove Bimera koje ćete najčešće koristiti pri l ikomkreiranja svoj ih prezentaci ja

Napominjemo još jednom da je Bimer samo jedna od klasa Lateha što znači da i zaBimer važi sve ono što ste već mogl i da pročitate u ovom časopisu kad smo pisal iseri ja l bdquoUvod u LaTeXrdquo (LiBRE brojevi 17 do 21) Štaviše ovaj seri ja l o Bimeru jebio nastavak upravo tog seri ja la U ovom seri ja lu nismo pisal i o samomformatiranju teksta u prezentaci jama jer se podrazumeva da važe ista pravi la kao iu Latehu a o tome smo pisal i u prethodnom seri ja lu

Hvala vam što ste prati l i ovaj seri ja l i žel imo vam puno uspeha u kreiranju Bimerprezentaci ja

Sam svoj majstor

51

Broj 33

Autor Nenad Marjanović

Kada smo se upoznal i sa podešavanj ima sistema i umrežavanjem vreme je za našprvi Biglbon Blek (BBB - eng BeagleBone Black) projekat Svakom od nas će ovajizazov dati razl ičite ideje a jedna od nj ih može biti i zaštita privatnosti internetkorisnika Nažalost u Srbi j i ne postoj i ni jedan izlazni tor server (eng node) i to jepomalo tužna sl ika s obzirom da govorimo o populaci j i od sedam mil ionastanovnika Al i ovu sl iku možemo promeniti udruženim snagama i za početakkreiranjem Tor transfer i izlaznog servera U ovde prikazanom grafikonufokusiraćemo se na bdquoRauter Brdquo tačku odnosno transfer server konfiguraci ju

BeagleBone Black Rev C

Vodič od prvog dana (3 deo) ndashBeagleBone Black kao Tor relej

Hardver

52

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Tor predstavl ja mrežu servera koj i se povezuju radi bol je enkripci je podataka izaštite IP adrese korisnika Naš ci l j je da danas postanemo deo ovog predivnogprojekta i da se nađemo na svetskoj karti Tor servera

Brzina interneta i zakonske regulativePotrebno je imati na umu nekol iko bitnih stvari

1 Naš server = naša odgovornost2 Obavezno naznačite da ste vi administrator a ne korisnik istog servera3 Da posedujete internet brzinu od 2 Mbs

Ako ispunjavamo tri navedena pravi la i odgovornosti možemo se posvetitiadministrativnim poslovima

Instalacija i podešavanjaU ovom primeru koristimo Debi jan Vizi (eng Wheezy) odnosno Debi jan 7 verzi juna našem BBB uređaju Vi možete testirati i druge Linuks platforme Prvododajemo izvornu bibl ioteku u etcaptsourceslist faj l pokretanjem sledećekomande u terminalu

echo deb httpdebtorprojectorgtorprojectorg wheezy main gt etcaptsourceslistdtorlist

Zatim dodajemo izvorni kl juč vršimo ažuriranje sistema i instal iramo tor i tor-arm(Tor monitoring sistem)

gpg --keyserver keysgnupgnet --recv 886DDD89gpg --export A3C4F0F979CAA22CDBA8F512EE8CBC9E886DDD89 | sudo apt-keyadd -apt-get updateapt-get install debtorprojectorg-keyring -yapt-get install tor tor-arm egrep screen -y

Ovim smo uspešno završi l i instalaci ju Tor servera i sistema za monitoring odnosnonadgledanja našeg Tor servera Sledećom komandom radimo na podešavanj imaTor servera koja se nalaze u etctortorrc faj lu Obratite pažnju i izvršite potrebne

Hardver

53

Broj 33

izmenu u pol j ima IP adresa (eng Address) nadimka (eng Nickname) i kontaktpodataka (eng ContactInfo) pre pokretanja ove komande Kopiramo i pokrećemokomandu u celosti u terminalu

egrep -v ^(|$) etctortorrcORPort 443Address 19216811Nickname LibreTorRelayRelayBandwidthRate 100 KBRelayBandwidthBurst 120 KBContactInfo ltvi at gmail dot comgt irPort 8080DirPortFrontPage etctortorhtmlExitPolicy reject

Detal je o svim vrednostima nećemo iznositi u ovom broju LiBRE časopisa al ićemo o nj ima pisati u sledećem u kome ćemo pričati o zaštiti Tor servera imogućnosti podešavanja određenih izlaznih pravi la (eng ExitPolicy)

Nakon ovoga možemo primetiti da se u folderu etctor ne nalazi torhtml faj l Ovaj faj l ni je od vel ikog značaja i možete ga l ično napraviti i l i preuzeti jednu kopi ju- naprimer sa sledeće lokaci je

cp usrsharedoctortorhtml etctortorhtml

Opcije i Tor Arm monitoringDa bismo ispravno koristi l i Tor Arm potrebno je urediti još jednom etctortorrcfaj l i restartovati servis

echo -e ldquoDisableDebuggerAttachment 0n AvoidDiskWritesrdquo gtgt etctortorrcsudo service tor reload

Ukol iko žel ite koristiti Tor Arm za nadgledanje aktivnosti na serveru pokreniteprogram screen kl iknite na bdquoEnterrdquo i kucajte sudo -u debian-tor arm Naekranu ćete imati sl ičan prikaz

BeagleBone Black

54

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Hardver

55

Broj 33

Da bismo napusti l i screen program koristimo Ctrl + a + d i na taj način kada sesledeći put pri javimo na server kucamo samo screen -r u terminalu - i naći ćemose ponovo na čuvenom Tor Arm monitoring ekranu

Nakon svake promene konfiguracionih faj lova ako slučajno nismo nešto podesi l ikako treba restartujemo servise

U sledećem broju časopisa govorićemo o minimalnim podešavanj ima ikonfigurisanju izlaznog Tor servera (eng Tor Exit Node) opci jama sigurnosti isl ičnim detal j ima u vezi sa našim prvim projektom Do čitanja u sledećem broju

BeagleBone Black

LUGoNS BarCamp 4subota 7 mart 2015 godine

Četvrti LUGoNS-ov Barkemp (BarCamp) održaće se u Novom Sadu usubotu 7 marta 2015 godine na Fakultetu tehničkih nauka sa početkomu 12 časova

Ulaz je slobodan

Poziv za predaju radovaLUGoNS poziva sve zainteresovane da pošal ju svoje radove (predavanjaprezentaci je radionice i diskusi je) do 28 februara 2015 godine

Oblasti iz koj ih možete da pri javite vaše radove su

bull Slobodan softverbull Zaniml j iv hardverbull Hakerski zakonibull Sigurnosne noćne morebull Anonimnost i privatnost na internetubull Duboki veb (eng Deep Web)bull Soci ja lne mrežebull Soci ja lni inženjeringbull Hakovanje mobi lnih uređajabull Internet u oblaku (eng Clouds) ndash hakovanje razbi janje i neočekivano korišćenjebull DPI (eng deep packet inspection)bull Mreža i mrežna neutralnost ndash vlasništvo cenzura nadmudrivanje i pol itika bdquodefaktordquo standarda

bull Programiranje i programski jezici

Nemojte se ustručavati i slobodno nam se javite ako imate rad na gore navedenei l i sl ične teme koj i smatrate interesantnim

Stranica za predaju radova nalazi se na https events lugonsorgp=1658

Page 36: LiBRE 33 Lat

36

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Autor Kriptopank

Šta su zapravo metapodaci Najkraće rečeno to su podaci o podacima i l iinformaci je koje opisuju podatke

Najpre da napravimo razl iku između podataka i metapodataka Podaci sunaprimer snimak (i l i transkript) vaših telefonskih razgovora sadržaj poruka kojepišete primate i l i šal jete podaci koje kačite na internet i l i preuzimate pretrageGuglom postovi na forumima dopisivanja na IRC kanal ima i l i drugim četovimaaudio i video snimci Skajp razgovora i tako dal je

Hajde da vidimo šta bi bi l i odgovarajući metapodaci za ove primere

bull Za telefonske razgovore metapodaci mogu biti lokaci ja učesnika brojevitelefona trajanje razgovora IP i MAC adresa

bull Za poruke četove i Skajp i l i druge video-audio komunikaci je sl ično je kao kodtelefonskih razgovora

To su samo metapodaci

Internet mreže i komunikacije

37

Broj 33

bull Kod foruma i pretraga Guglom ima malo manje metapodataka al i Gugl i raznisajtovi i forumi ionako čuvaju logove o korisnicima što su takođe metapodaci

Ako do sada koj im slučajem niste uvidel i opasnost po privatnost u ovimmetapodacima koje svako od nas smrtnika svakodnevno ostavl ja za sobom usvetu interneta i ostal ih digitalnih komunikaci ja nadamo se da će vas ovaj primermakar podstaći na razmišl janje a možda i na nešto više

Zamisl i te da neko (zvaćemo ga posmatrač) stalno sakupl ja metapodatke koje zasobom ostavl jate kao mrvice hleba Posmatrač recimo zna da se nalazite naautoputu nedaleko od famoznog Feketića da se ne krećete da zovete AMSS zatimšlep službu i možda taksi a l i ne zna šta ste razgovaral i I l i posmatrač vidi da steprvo zval i aerodrom Nikola Tesla pa odmah potom taksi a l i ne zna šta sterazgovaral i I l i posmatrač vidi da ste zval i prvo šest brojeva či je identitete takođezna pa vidi da se oni zatim kreću ka vama - GPS (eng Global Positioning System) pa zatim pica servis Mekdonalds i neku poznatu prodavnicu kineske hrane al i nezna šta ste razgovaral i

Posmatrač ne mora da bude mnogo pametan niti da prisluškuje vaše razgovore dabi shvatio šta se dešava i l i šta će se desiti Sasvim mu je jasno da vam je u prvomprimeru auto stao na autoputu zatim da ste se u drugom slučaju uputi l i naaerodrom i da možda putujete van zemlje i l i ste poslal i taksi po nekoga saaerodroma a da u trećem slučaju okupl jate žurku kod vas Više možete pogledatina http googl7vUjP

Iako su to bdquosamordquo metapodaci treba biti svestan da ti metapodaci o vama stvarajujednu digitalnu sl iku i l i bol je reći digitalni mozaik i na neki način vas jedinstvenoodređuju Pogotovo kada se planski prikupl ja ju na više nivoa (kompjuter pametnitelefon pametni automobi l i kreditna kartica) metapodaci čine vaš digitalniidentitet Al i da stvar bude još gora ta sl ika o vama ne mora nužno biti istinita jerse lako može lažirati Recimo možete zameniti telefone i l i automobi le sa nekimnamerno i l i slučajno i l i vam neko može jednostavno ukrasti telefon laptop i l ikreditnu karticu Zaniml j iv video http googlKO1fKf

Evo jednog primera koj i vas može uvući u vel ike nevol je Recimo da prolazitenekom zabačenom ul icom i da vam neprimetno ispadne telefon al i vi to neprimetite i nastavite dal je svoj im putem U toj ul ici se samo nekol iko minutakasni je desi neko ubistvo i vas pozovu u pol ici ju kao osumnj ičenog Ako koj im

To su samo metapodaci

38

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

slučajem nemate dobar al ibi i l i nemate svedoka da posvedoči da niste bi l i u tojul ici nego tamo gde ste stvarno bi l i a drugih svedoka nema - možete jako lošeproći Zaniml j ivi video http googlspS5OZ

Metapodaci se takođe nalaze i u faj lovimapodacima koje svakodnevnopreuzimamo sa interneta pravimo i koristimo Svaki tip podatka može da sadržiodređene metapodatke koj i bol je opisuju sam podatak kao naprimer vremenastanka podatka kol iko je vremena potrošeno za njegovo kreiranje kol iko putamu je pristupl jeno kad je poslednj i put pristupl jeno i tako dal je Iako se ovakvimetapodaci možda još uvek čine bezazlenim oni mogu sadržati i IP adresuračunara sa kog su napravl jeni GPS koordinate (najčešće PNG format sl ika satelefona) ko ga je napravio (l ičnost i l i kompani jaorganizaci ja) naziv uređaja imodel sa koga je napravl jen kao i MAC adresu uređaja mej l adresu kreatorasoftver koj im je napravl jen i tako dal je Sve ovo može mnogo da naškodiprivatnosti izvornog kreatora faj la pogotovo ako je sadržaj poverl j iv Ukol iko nekopresretne taj podatak na internetu može saznati od koga je potekao Da ovo možebiti katastrofa po kreatora takvog faj la može i lustrovati primer torenta Ako stedošl i u posed nekih sl ika i l i video materi ja la i l i teksta koj i žel i te da podel ite sasvetom preko nekog torent sajta morate taj podatak prvo očistiti odmetapodataka da ne bi svako ko skine to što ste okači l i saznao da vi stoj i te izatoga

Internet mreže i komunikacije

39

Broj 33

Ljudi se konstantno prate metapodaci se sakupl ja ju i to ni je sada već ništa novoal i možemo da se trudimo da iza sebe ostavl jamo malo manje nežel jenihmetapodataka i da ih takoreći čistimo iz podataka koje razmenjujemo Na srećupostoje programi koj i ovo dobro rade

Najpre je potrebno da vidimo koje sve metapodatke neki faj l sadrži kako bismo seuveri l i da ovi metapodaci stvarno postoje i da je faj l bezbedan nakon nj ihovogbrisanja

Ako koristite operativne sisteme GNULinuksa treba da iz terminala preuzmete iinstal irate program pod nazivom exiftool

sudo apt-get install exiftool

Ovaj program će nam pružiti uvid u sve metapodatke koje faj l sadrži Korišćenje jeiz terminala al i je zato veoma jednostavno samo ga pokrenite na sledeći način

exiftool File

i l i

exiftool putanjadofajlapočevodkorenogdirektorijuma

Dobićete prikaz metapodataka koje je program pronašao Sada je potrebno davidimo da l i je podatak bdquoprl javrdquo tj da l i ima u njemu nešto da se briše i da akoima iz njega sve nepotrebno obrišemo Tu će nam pomoći drugi program zvaniMAT (eng Metadata Anonymisation Toolkit) koga možete naći na sajtuhttps matboumorg i l i jednostavno za korisnike Ubuntua i Debi jana uSoftverskom centru i l i ga možete instal irati iz terminala

sudo apt-get install mat

MAT će proveriti da l i je podatak bdquoprl javrdquo i l i ne i za vas ga očistiti od nežel jenihmetapodataka

Kada očistite faj l on je spreman za del jenje sa drugima a vi ste bezbedni jer nikone može reći da je faj l potekao sa vašeg računara

To su samo metapodaci

40

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Autor Dejan Čugal j

GH Hardi bdquoPrava matematika nema uticaj na ratrdquo - odbrana matematičara1940 godina

Bi l Tat - britanski matematičar verovatno niste čul i za njega1942 godine je izveo ogroman poduhvat koj i je skratio rat dvegodine (barem po rečima Ajzenhauera) i spasio mi l ione životaNažalost njegova vel ičina je preminula 2002 godine obavi jenavelom tajne i nikada zvanično ni je priznato njegovo dostignuće

Tomi Flauers - bivši inženjer poštanskog saobraćaja pretvorio jematematičke ideje Tata u prvi računar a to ni je bio bdquoENIACrdquo1Preminuo je 1998 godine a pretpostavl jamo da nikada niste čul ini za njegovu vel ičinu

Ovi umni giganti bdquoBlečl i parkardquo omogući l i su Britani j i da dešifruje strogo poverl j ivumašinu koju je koristio Hitler da diriguje drugim svetskim ratom a to ni je bi labdquoENIGMArdquo nego nešto mnogo tajni je i značajni je Vel ika je verovatnoća da nistečul i ni za ovo Neki kažu da je to bio Hitlerov Blekberi (BlackBerry)

Izgubljeni heroji bdquoBlečli parkardquo

1 engl Electronic Numerical Integrator And Computer - prvidigitalni elektronski računar

Internet mreže i komunikacije

41

Broj 33

1939 godine bdquoBlečl i parkrdquo je postao ratni štab MI6 (britanske vojne obaveštajneslužbe) Do danas je procurelo u javnost i dokumentovano brojnim fi lmskimdokumentarcima samo da je tu Alan Tjuring uspeo da dešifruje nemačkumornaričku šifru poznatu kao bdquoENIGMArdquo i uvel iko doprineo pobedi saveznika a to jesamo deo priče koj i je ispričan

U Blečl i parku su bi la tri heroja AlanTjuring Bi l Tat i Tomi Flauers Od nj ihtroj ice jedino Alanu Tjuringu je priznat deozasluga za pobedu saveznika u Drugomsvetskom ratu Pregledom otkrivenihpodataka danas možemo da tvrdimo daje bdquoENIGMArdquo već sa početka drugogsvetskog rata bi la zastarela tehnologi ja Zbog toga je bi lo lako skinuti veo tajne sa

ovog uspeha heroja Blečl i parka

Izgubljeni heroji bdquoBlečli parkardquo

42

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Bi l Tat koj i je dešifrovao bdquoTANI sistemrdquo (TANI) i Tomi Flauers koj i je samo svojomintuici jom i znanjem sklopio prvi računar na svetu (bdquoKOLOSrdquo) u svrhu bržegdolaženja do informaci ja razbi jenog koda bdquoTANIrdquo tako da zastarelost šifrata budesvedena na minimum - radi l i su na novoj generaci j i mašina za šifrovanje Ovatehnologi ja je bi la prepoznata kao tehnologi ja budućnosti pa i danas iznadinformaci ja o tim tehnologi jama stoj i natpis bdquovrhunska tajnardquo (eng Top Secret) Upravo ovaj veo tajni oko šifrata bdquoTANIrdquo i prvog računara je rezultirao iskrivl jenjuistori je informatike

Za uspehe u prvim godinama rata je zaista zaslužno razbi janje bdquoENIGMArdquo šifrata ito ni je sporno al i krajem 1941 godine u etru planete se začuo novi zvuk To je bi lanova mašina za šifrovanje ni je bi la zasnovana na bdquoMorzeurdquo već je radi la naprincipu teleprintera

Jedna od kl jučnih ideja Hitlerovog ratovanja je bi la u vel ikoj mobi lnosti i brzomdelovanju trupa na terenu a da bi se to izvelo komunikaci ja je isto tako morala dabude u najmanju ruku putem radio signala

Razl ika je ogromna Razl ika je u kol ičini podataka koj i može da se prenese ovimbdquotajnimrdquo putem Prvi svetski rat je bio zaniml j iv jer su se šifrovane poruke baziralena rečima dok je Drugi u potpunosti otvorio vrata današnjoj kriptografi j i a to jematematika

Originalan nemački kocircdni naziv za ovaj šifrat bio je bdquoLORENCrdquo Britanska

Internet mreže i komunikacije

43

Broj 33

obaveštajna služba mu je dala nadimak bdquoTANIrdquo Čak ni dan danas ni je baš poznatokako je sve nastalo al i pouzdano se zna da je tajnu mašinu Hitler nazvaobdquoGehajmšrajberrdquo (nem Geheimschreiber) - mašina tajni

U srž i tehnologi ju šifrovanja bdquoLORENCrdquo šifrata nećemo ulaziti u ovom članku al iverujte nam na reč - ni je bi la jednostavna Može se pretpostaviti da je inspiraci jaŠenonovog 2 rada slučajnosti bi la upravo ova tehnologi ja iz Drugog svetskog rata

Ono čime se Treći rajh vodio je bdquosigurnardquo šifrovana veza koju niko ni je smeo dadešifruje Prenošenje šifrovanih poruka pomoću radio signala je dalo obaveštajnimslužbama mogućnost presretanja poruka poslatih radio talasima Da l i se ovo idanas dešava Imamo l i sigurnost u našim šifrovanim podacima današnj ice

Ono što je usledi lo nakon proboja ovog bdquoneuhvatl j ivogrdquo šifrata je upravo ono što jeprincip današnj ice kao neka vrsta protokola koj i mora da se ispoštuje uperfektnom šifarskom Šenonovom sistemu

1 NIKADA NIKADA NE KORISTITI DVA PUTA ISTI KLJUČ ZA ŠIFROVANJE2 NIKADA NIKADA KLJUČ NE SME DA SE ŠALJE ISTIM KOMUNIKACIONIM KANALOM

KAO PORUKA3 NIKADA NIKADA KLJUČ NE SME DA BUDE MANJ I NEGO ŠTO JE PORUKA (engl

2 Klod Elvud Šenon (eng Claude Elwood Shannon) (1916-2001) - Američkinaučnik i inženjer

Izgubljeni heroji bdquoBlečli parkardquo

44

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

one time pad) 4 NIKADA NIKADA NE SMEMO DA SAKRIVAMO SISTEM ŠIFROVANJA SVE MORA

DA JE OTVORENOG KOcircDA

Najveći propusti kriptologi je koj i su uočeni baš u Drugom svetskom ratu jesupokušaj sakrivanja sredstava koj im se generiše tajna poruka i nepoznavanjeŠenonovih krajnj ih granica informaci ja Kada kažemo bdquosredstvo i sakrivanjerdquomisl imo na algoritme Postavl ja se pitanje zašto je danas kriptologi ja sigurni ja negočetrdesetih i pedesetih godina prošlog veka

Danas uprkos tome što su algoritmi za kriptografi ju otvorenog kocircda tajnostinformaci ja je na višem nivou nego što je to bi lo dok je algoritam bio strogopoverl j iv Tajnost tajnih podataka se ne zasniva na tajnosti a lgoritama koj i generišutaj isti bdquotajni izlazrdquo (eng cipher text) nego u nemogućnosti matematičke inverznefunkci je koja bi šifrovan tekst otvori la Ovde se vidi da je svrha strukture otvorenogkocircda kao jednog od značajnih delova današnje kriptologi je ona koja ga činisigurnim i svima dostupnim

Sada kada se sa ove distance osvrnemo na Drugi svetski rat možemo videti kol ikosmo bi l i bl izu apokal ipse Naime Albert Ajnštajn je već 1944 godine imao urukama recept za nuklearnu bombu Šenon je mogao već u to vreme da nampredoči 100 siguran šifrat (tzv Hitlerovu super šifru) a l i ipak sreća nas jeposluži la da čovečanstvo tada ni je bi lo spremno da upotrebi svu raspoloživutehnologi ju

Albert Ajnštajn bdquoČetvrti svetski rat će se voditi tol jagamardquo

Zaboravl jeni heroj i Blečl i parka iako su odigral i važnu ulogu u pobedi saveznika usvetskom ratu postal i su žrtve bdquotop secretrdquo doktrine potpuno su zaboravl jeni inestal i su iz istori je

Zakl jučak ovog članka je da je ideologi ja otvorenog kocircda sasvim sigurno tu da nampomogne i da otvori vrata ka većoj sigurnosti novim idejama i kval itetu sameinfrastrukture sistema koju svi zajedno razvi jamo

Internet mreže i komunikacije

45

Broj 33

Autor Nikola Hardi

NabrajanjaBez brojeva

Za nabrajanje pojmova u Bimeru (eng Beamer) koristi se okruženje itemize aunutar tog okruženja možemo da dodajemo nove stavke pomoću item Primerizgleda ovako

beginitemizeitem Stavka Aitem Stavka Bitem Stavka C

enditemize

Sa brojevima

Postoje situaci je kada uz nabrajanje treba da stoje i redni brojevi - za to se koristienumerate okruženje a nove stavke se takođe dodaju pomoću item

beginenumerateitem Redni broj 1item Redni broj 2item Redni broj 3

endenumerate

prezentaci ja

Beamer (4 deo)

Sam svoj majstor

46

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

DefinicijeTreća situaci ja je nabrajanje parova termin - definici ja U tom slučaju se koristiokruženje description Već možete da pretpostavite kako se dodaju nove stavke

Primer

begindescriptionitem[Pojam A] Definicija izmišljenog pojma Aitem[Pojam B] Definicija izmišljenog pojma Bitem[Pojam C] Definicija izmišljenog pojma C

enddescription

Ostala podešavanja i zanimljivostiSva prethodna okruženja mogu da budu ugneždena jedno unutar drugog dotrećeg nivoa Treba biti pažl j iv jer sla jdovi vrlo lako mogu da postanu nečitl j ivi Osim toga moguće je izabrati i format oznake i l i rednih brojeva - na primer ovako

beginenumerate[I]beginenumarate[a)]

Takođe moguće je upravl jati pojavl j ivanjem pojedinih stavki na slajdovima Drugimrečima možemo da odredimo da se nabrajanja postepeno otkrivaju tako što ćemouz stavku dodati lt1-gt odnosno broj od kojeg slajda žel imo da se ta stavkapojavl ju je Tada će jedno nabrajanje biti bdquorazvučenordquo na više slajdovaJednostavni ja mogućnost je da u zaglavl je okruženja dodamo +- što znači dažel imo da se svakim slajdom otkriva po jedna nova stavka iz nabrajanja Znak bdquo-rdquo uoba primera znači da žel imo da se stavka pojavi na sledećem slajdu i da ostane

Sam svoj majstor

47

Broj 33

prisutna Možemo da izostavimo znak bdquo-rdquo i tada će stavka biti prisutna samo najednom slajdu i l i da napišemo raspon slajdova u koj ima žel imo da ta stavka budeprisutna

Rad sa kolonama i blokovimaDo sada su svi primeri podrazumeval i da je sadržaj napisan preko cele širineslajda al i Bimer (eng Beamer) ima i jednostavne mehanizme za razmeštanjesadržaja po kolonama Za rad sa kolonama se koristi okruženje columns unutarkojeg možemo da dodajemo nove kolone pomoću columnširina Sadržaj jemoguće potom pisati i van okruženja sa kolonama

U paru sa kolonama često se sreće i okruženje block koje se parametrizujenaslovom Primerom su i lustrovani i okruženje column i okruženje block

beginframebegincolumns

column05textwidthbeginblockNaslov levog blokaSadržaj u prvoj (levoj) koloni endblock

column05textwidthbeginblockNaslov desnog blokaSadržaj u drugoj (desnoj) koloni

endblockendcolumns

beginblockVan kolona

Beamer

48

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Tekst koji se nalazi ispod kolonaendblock

endframe

TabeleIako se u radu sa prezentaci jama sadržaj najčešće može uredno rasporeditipomoću kolona i nabrajanja nekada to ni je dovol jno jer su tabele pravi formatBimer podržava standardno Lateh (LaTeX) okruženje za rad sa tabelamaOkruženje za rad sa tabelama se zove tabular Pri kreiranju nove tabele moguće jepodesiti koje kolone će biti razdvojene l ini jom i da l i će nj ihov sadržaj biti centrirani l i uz levu i l i uz desnu ivicu Dodavanje novog reda se jednostavno radidodavanjem hline Lateh pruža zaista jako fleksibi lan rad sa tabelama i sigurno ćedoskočiti svim mogućim i nemogućim zamisl ima Potražite bi lo koje Lateh uputstvoza rad sa tabelama i radiće i sa Bimerom

beginframebegintabular | c | c | c | c |

hlineamp Ponedeljak amp Utorak amp Sreda hline

1 amp 16 amp 32 amp 64 hline2 amp 16 amp 128 amp 1024 hline3 amp 16 amp 512 amp 4096 hline

endtabularendframe

Sam svoj majstor

49

Broj 33

Beamer

Teoreme i istaknut tekstU nastavi su česta izlaganja teorema nj ihovih dokaza i primera U Bimer jeugrađena podrška za elegantno predstavl janje ove trojke Mehanizam takođepodržava postepeno otkrivanje sadržaja sla jda tako da slušaocima ne bude odmahotkriven dokaz teoreme Mehanizam za postepeno otkrivanje se kao i kodnabrajanja postiže pomoću bdquolt1-gtrdquo konstrukci je Evo kako to izgleda

beginframeframetitlePrimer teoreme

begintheoremlt1-gt Teorema kaže da su beamer prezentacijezanimljive

endtheorem

beginexamplelt2-gt Ovaj kod kreira slajd beamer prezentacijeendexample

beginprooflt3-gt Čestitamo stigli ste do kraja serijala o pravljenju beamer prezentacija

endproofendframe

50

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Za krajOvim člankom završavamo seri ja l o Bimeru Nadamo se da smo uspel i da vaszainteresujemo za ovu vrlo korisnu klasu Lateha Trudi l i smo se da vamprezentujemo najvažni je delove Bimera koje ćete najčešće koristiti pri l ikomkreiranja svoj ih prezentaci ja

Napominjemo još jednom da je Bimer samo jedna od klasa Lateha što znači da i zaBimer važi sve ono što ste već mogl i da pročitate u ovom časopisu kad smo pisal iseri ja l bdquoUvod u LaTeXrdquo (LiBRE brojevi 17 do 21) Štaviše ovaj seri ja l o Bimeru jebio nastavak upravo tog seri ja la U ovom seri ja lu nismo pisal i o samomformatiranju teksta u prezentaci jama jer se podrazumeva da važe ista pravi la kao iu Latehu a o tome smo pisal i u prethodnom seri ja lu

Hvala vam što ste prati l i ovaj seri ja l i žel imo vam puno uspeha u kreiranju Bimerprezentaci ja

Sam svoj majstor

51

Broj 33

Autor Nenad Marjanović

Kada smo se upoznal i sa podešavanj ima sistema i umrežavanjem vreme je za našprvi Biglbon Blek (BBB - eng BeagleBone Black) projekat Svakom od nas će ovajizazov dati razl ičite ideje a jedna od nj ih može biti i zaštita privatnosti internetkorisnika Nažalost u Srbi j i ne postoj i ni jedan izlazni tor server (eng node) i to jepomalo tužna sl ika s obzirom da govorimo o populaci j i od sedam mil ionastanovnika Al i ovu sl iku možemo promeniti udruženim snagama i za početakkreiranjem Tor transfer i izlaznog servera U ovde prikazanom grafikonufokusiraćemo se na bdquoRauter Brdquo tačku odnosno transfer server konfiguraci ju

BeagleBone Black Rev C

Vodič od prvog dana (3 deo) ndashBeagleBone Black kao Tor relej

Hardver

52

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Tor predstavl ja mrežu servera koj i se povezuju radi bol je enkripci je podataka izaštite IP adrese korisnika Naš ci l j je da danas postanemo deo ovog predivnogprojekta i da se nađemo na svetskoj karti Tor servera

Brzina interneta i zakonske regulativePotrebno je imati na umu nekol iko bitnih stvari

1 Naš server = naša odgovornost2 Obavezno naznačite da ste vi administrator a ne korisnik istog servera3 Da posedujete internet brzinu od 2 Mbs

Ako ispunjavamo tri navedena pravi la i odgovornosti možemo se posvetitiadministrativnim poslovima

Instalacija i podešavanjaU ovom primeru koristimo Debi jan Vizi (eng Wheezy) odnosno Debi jan 7 verzi juna našem BBB uređaju Vi možete testirati i druge Linuks platforme Prvododajemo izvornu bibl ioteku u etcaptsourceslist faj l pokretanjem sledećekomande u terminalu

echo deb httpdebtorprojectorgtorprojectorg wheezy main gt etcaptsourceslistdtorlist

Zatim dodajemo izvorni kl juč vršimo ažuriranje sistema i instal iramo tor i tor-arm(Tor monitoring sistem)

gpg --keyserver keysgnupgnet --recv 886DDD89gpg --export A3C4F0F979CAA22CDBA8F512EE8CBC9E886DDD89 | sudo apt-keyadd -apt-get updateapt-get install debtorprojectorg-keyring -yapt-get install tor tor-arm egrep screen -y

Ovim smo uspešno završi l i instalaci ju Tor servera i sistema za monitoring odnosnonadgledanja našeg Tor servera Sledećom komandom radimo na podešavanj imaTor servera koja se nalaze u etctortorrc faj lu Obratite pažnju i izvršite potrebne

Hardver

53

Broj 33

izmenu u pol j ima IP adresa (eng Address) nadimka (eng Nickname) i kontaktpodataka (eng ContactInfo) pre pokretanja ove komande Kopiramo i pokrećemokomandu u celosti u terminalu

egrep -v ^(|$) etctortorrcORPort 443Address 19216811Nickname LibreTorRelayRelayBandwidthRate 100 KBRelayBandwidthBurst 120 KBContactInfo ltvi at gmail dot comgt irPort 8080DirPortFrontPage etctortorhtmlExitPolicy reject

Detal je o svim vrednostima nećemo iznositi u ovom broju LiBRE časopisa al ićemo o nj ima pisati u sledećem u kome ćemo pričati o zaštiti Tor servera imogućnosti podešavanja određenih izlaznih pravi la (eng ExitPolicy)

Nakon ovoga možemo primetiti da se u folderu etctor ne nalazi torhtml faj l Ovaj faj l ni je od vel ikog značaja i možete ga l ično napraviti i l i preuzeti jednu kopi ju- naprimer sa sledeće lokaci je

cp usrsharedoctortorhtml etctortorhtml

Opcije i Tor Arm monitoringDa bismo ispravno koristi l i Tor Arm potrebno je urediti još jednom etctortorrcfaj l i restartovati servis

echo -e ldquoDisableDebuggerAttachment 0n AvoidDiskWritesrdquo gtgt etctortorrcsudo service tor reload

Ukol iko žel ite koristiti Tor Arm za nadgledanje aktivnosti na serveru pokreniteprogram screen kl iknite na bdquoEnterrdquo i kucajte sudo -u debian-tor arm Naekranu ćete imati sl ičan prikaz

BeagleBone Black

54

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Hardver

55

Broj 33

Da bismo napusti l i screen program koristimo Ctrl + a + d i na taj način kada sesledeći put pri javimo na server kucamo samo screen -r u terminalu - i naći ćemose ponovo na čuvenom Tor Arm monitoring ekranu

Nakon svake promene konfiguracionih faj lova ako slučajno nismo nešto podesi l ikako treba restartujemo servise

U sledećem broju časopisa govorićemo o minimalnim podešavanj ima ikonfigurisanju izlaznog Tor servera (eng Tor Exit Node) opci jama sigurnosti isl ičnim detal j ima u vezi sa našim prvim projektom Do čitanja u sledećem broju

BeagleBone Black

LUGoNS BarCamp 4subota 7 mart 2015 godine

Četvrti LUGoNS-ov Barkemp (BarCamp) održaće se u Novom Sadu usubotu 7 marta 2015 godine na Fakultetu tehničkih nauka sa početkomu 12 časova

Ulaz je slobodan

Poziv za predaju radovaLUGoNS poziva sve zainteresovane da pošal ju svoje radove (predavanjaprezentaci je radionice i diskusi je) do 28 februara 2015 godine

Oblasti iz koj ih možete da pri javite vaše radove su

bull Slobodan softverbull Zaniml j iv hardverbull Hakerski zakonibull Sigurnosne noćne morebull Anonimnost i privatnost na internetubull Duboki veb (eng Deep Web)bull Soci ja lne mrežebull Soci ja lni inženjeringbull Hakovanje mobi lnih uređajabull Internet u oblaku (eng Clouds) ndash hakovanje razbi janje i neočekivano korišćenjebull DPI (eng deep packet inspection)bull Mreža i mrežna neutralnost ndash vlasništvo cenzura nadmudrivanje i pol itika bdquodefaktordquo standarda

bull Programiranje i programski jezici

Nemojte se ustručavati i slobodno nam se javite ako imate rad na gore navedenei l i sl ične teme koj i smatrate interesantnim

Stranica za predaju radova nalazi se na https events lugonsorgp=1658

Page 37: LiBRE 33 Lat

37

Broj 33

bull Kod foruma i pretraga Guglom ima malo manje metapodataka al i Gugl i raznisajtovi i forumi ionako čuvaju logove o korisnicima što su takođe metapodaci

Ako do sada koj im slučajem niste uvidel i opasnost po privatnost u ovimmetapodacima koje svako od nas smrtnika svakodnevno ostavl ja za sobom usvetu interneta i ostal ih digitalnih komunikaci ja nadamo se da će vas ovaj primermakar podstaći na razmišl janje a možda i na nešto više

Zamisl i te da neko (zvaćemo ga posmatrač) stalno sakupl ja metapodatke koje zasobom ostavl jate kao mrvice hleba Posmatrač recimo zna da se nalazite naautoputu nedaleko od famoznog Feketića da se ne krećete da zovete AMSS zatimšlep službu i možda taksi a l i ne zna šta ste razgovaral i I l i posmatrač vidi da steprvo zval i aerodrom Nikola Tesla pa odmah potom taksi a l i ne zna šta sterazgovaral i I l i posmatrač vidi da ste zval i prvo šest brojeva či je identitete takođezna pa vidi da se oni zatim kreću ka vama - GPS (eng Global Positioning System) pa zatim pica servis Mekdonalds i neku poznatu prodavnicu kineske hrane al i nezna šta ste razgovaral i

Posmatrač ne mora da bude mnogo pametan niti da prisluškuje vaše razgovore dabi shvatio šta se dešava i l i šta će se desiti Sasvim mu je jasno da vam je u prvomprimeru auto stao na autoputu zatim da ste se u drugom slučaju uputi l i naaerodrom i da možda putujete van zemlje i l i ste poslal i taksi po nekoga saaerodroma a da u trećem slučaju okupl jate žurku kod vas Više možete pogledatina http googl7vUjP

Iako su to bdquosamordquo metapodaci treba biti svestan da ti metapodaci o vama stvarajujednu digitalnu sl iku i l i bol je reći digitalni mozaik i na neki način vas jedinstvenoodređuju Pogotovo kada se planski prikupl ja ju na više nivoa (kompjuter pametnitelefon pametni automobi l i kreditna kartica) metapodaci čine vaš digitalniidentitet Al i da stvar bude još gora ta sl ika o vama ne mora nužno biti istinita jerse lako može lažirati Recimo možete zameniti telefone i l i automobi le sa nekimnamerno i l i slučajno i l i vam neko može jednostavno ukrasti telefon laptop i l ikreditnu karticu Zaniml j iv video http googlKO1fKf

Evo jednog primera koj i vas može uvući u vel ike nevol je Recimo da prolazitenekom zabačenom ul icom i da vam neprimetno ispadne telefon al i vi to neprimetite i nastavite dal je svoj im putem U toj ul ici se samo nekol iko minutakasni je desi neko ubistvo i vas pozovu u pol ici ju kao osumnj ičenog Ako koj im

To su samo metapodaci

38

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

slučajem nemate dobar al ibi i l i nemate svedoka da posvedoči da niste bi l i u tojul ici nego tamo gde ste stvarno bi l i a drugih svedoka nema - možete jako lošeproći Zaniml j ivi video http googlspS5OZ

Metapodaci se takođe nalaze i u faj lovimapodacima koje svakodnevnopreuzimamo sa interneta pravimo i koristimo Svaki tip podatka može da sadržiodređene metapodatke koj i bol je opisuju sam podatak kao naprimer vremenastanka podatka kol iko je vremena potrošeno za njegovo kreiranje kol iko putamu je pristupl jeno kad je poslednj i put pristupl jeno i tako dal je Iako se ovakvimetapodaci možda još uvek čine bezazlenim oni mogu sadržati i IP adresuračunara sa kog su napravl jeni GPS koordinate (najčešće PNG format sl ika satelefona) ko ga je napravio (l ičnost i l i kompani jaorganizaci ja) naziv uređaja imodel sa koga je napravl jen kao i MAC adresu uređaja mej l adresu kreatorasoftver koj im je napravl jen i tako dal je Sve ovo može mnogo da naškodiprivatnosti izvornog kreatora faj la pogotovo ako je sadržaj poverl j iv Ukol iko nekopresretne taj podatak na internetu može saznati od koga je potekao Da ovo možebiti katastrofa po kreatora takvog faj la može i lustrovati primer torenta Ako stedošl i u posed nekih sl ika i l i video materi ja la i l i teksta koj i žel i te da podel ite sasvetom preko nekog torent sajta morate taj podatak prvo očistiti odmetapodataka da ne bi svako ko skine to što ste okači l i saznao da vi stoj i te izatoga

Internet mreže i komunikacije

39

Broj 33

Ljudi se konstantno prate metapodaci se sakupl ja ju i to ni je sada već ništa novoal i možemo da se trudimo da iza sebe ostavl jamo malo manje nežel jenihmetapodataka i da ih takoreći čistimo iz podataka koje razmenjujemo Na srećupostoje programi koj i ovo dobro rade

Najpre je potrebno da vidimo koje sve metapodatke neki faj l sadrži kako bismo seuveri l i da ovi metapodaci stvarno postoje i da je faj l bezbedan nakon nj ihovogbrisanja

Ako koristite operativne sisteme GNULinuksa treba da iz terminala preuzmete iinstal irate program pod nazivom exiftool

sudo apt-get install exiftool

Ovaj program će nam pružiti uvid u sve metapodatke koje faj l sadrži Korišćenje jeiz terminala al i je zato veoma jednostavno samo ga pokrenite na sledeći način

exiftool File

i l i

exiftool putanjadofajlapočevodkorenogdirektorijuma

Dobićete prikaz metapodataka koje je program pronašao Sada je potrebno davidimo da l i je podatak bdquoprl javrdquo tj da l i ima u njemu nešto da se briše i da akoima iz njega sve nepotrebno obrišemo Tu će nam pomoći drugi program zvaniMAT (eng Metadata Anonymisation Toolkit) koga možete naći na sajtuhttps matboumorg i l i jednostavno za korisnike Ubuntua i Debi jana uSoftverskom centru i l i ga možete instal irati iz terminala

sudo apt-get install mat

MAT će proveriti da l i je podatak bdquoprl javrdquo i l i ne i za vas ga očistiti od nežel jenihmetapodataka

Kada očistite faj l on je spreman za del jenje sa drugima a vi ste bezbedni jer nikone može reći da je faj l potekao sa vašeg računara

To su samo metapodaci

40

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Autor Dejan Čugal j

GH Hardi bdquoPrava matematika nema uticaj na ratrdquo - odbrana matematičara1940 godina

Bi l Tat - britanski matematičar verovatno niste čul i za njega1942 godine je izveo ogroman poduhvat koj i je skratio rat dvegodine (barem po rečima Ajzenhauera) i spasio mi l ione životaNažalost njegova vel ičina je preminula 2002 godine obavi jenavelom tajne i nikada zvanično ni je priznato njegovo dostignuće

Tomi Flauers - bivši inženjer poštanskog saobraćaja pretvorio jematematičke ideje Tata u prvi računar a to ni je bio bdquoENIACrdquo1Preminuo je 1998 godine a pretpostavl jamo da nikada niste čul ini za njegovu vel ičinu

Ovi umni giganti bdquoBlečl i parkardquo omogući l i su Britani j i da dešifruje strogo poverl j ivumašinu koju je koristio Hitler da diriguje drugim svetskim ratom a to ni je bi labdquoENIGMArdquo nego nešto mnogo tajni je i značajni je Vel ika je verovatnoća da nistečul i ni za ovo Neki kažu da je to bio Hitlerov Blekberi (BlackBerry)

Izgubljeni heroji bdquoBlečli parkardquo

1 engl Electronic Numerical Integrator And Computer - prvidigitalni elektronski računar

Internet mreže i komunikacije

41

Broj 33

1939 godine bdquoBlečl i parkrdquo je postao ratni štab MI6 (britanske vojne obaveštajneslužbe) Do danas je procurelo u javnost i dokumentovano brojnim fi lmskimdokumentarcima samo da je tu Alan Tjuring uspeo da dešifruje nemačkumornaričku šifru poznatu kao bdquoENIGMArdquo i uvel iko doprineo pobedi saveznika a to jesamo deo priče koj i je ispričan

U Blečl i parku su bi la tri heroja AlanTjuring Bi l Tat i Tomi Flauers Od nj ihtroj ice jedino Alanu Tjuringu je priznat deozasluga za pobedu saveznika u Drugomsvetskom ratu Pregledom otkrivenihpodataka danas možemo da tvrdimo daje bdquoENIGMArdquo već sa početka drugogsvetskog rata bi la zastarela tehnologi ja Zbog toga je bi lo lako skinuti veo tajne sa

ovog uspeha heroja Blečl i parka

Izgubljeni heroji bdquoBlečli parkardquo

42

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Bi l Tat koj i je dešifrovao bdquoTANI sistemrdquo (TANI) i Tomi Flauers koj i je samo svojomintuici jom i znanjem sklopio prvi računar na svetu (bdquoKOLOSrdquo) u svrhu bržegdolaženja do informaci ja razbi jenog koda bdquoTANIrdquo tako da zastarelost šifrata budesvedena na minimum - radi l i su na novoj generaci j i mašina za šifrovanje Ovatehnologi ja je bi la prepoznata kao tehnologi ja budućnosti pa i danas iznadinformaci ja o tim tehnologi jama stoj i natpis bdquovrhunska tajnardquo (eng Top Secret) Upravo ovaj veo tajni oko šifrata bdquoTANIrdquo i prvog računara je rezultirao iskrivl jenjuistori je informatike

Za uspehe u prvim godinama rata je zaista zaslužno razbi janje bdquoENIGMArdquo šifrata ito ni je sporno al i krajem 1941 godine u etru planete se začuo novi zvuk To je bi lanova mašina za šifrovanje ni je bi la zasnovana na bdquoMorzeurdquo već je radi la naprincipu teleprintera

Jedna od kl jučnih ideja Hitlerovog ratovanja je bi la u vel ikoj mobi lnosti i brzomdelovanju trupa na terenu a da bi se to izvelo komunikaci ja je isto tako morala dabude u najmanju ruku putem radio signala

Razl ika je ogromna Razl ika je u kol ičini podataka koj i može da se prenese ovimbdquotajnimrdquo putem Prvi svetski rat je bio zaniml j iv jer su se šifrovane poruke baziralena rečima dok je Drugi u potpunosti otvorio vrata današnjoj kriptografi j i a to jematematika

Originalan nemački kocircdni naziv za ovaj šifrat bio je bdquoLORENCrdquo Britanska

Internet mreže i komunikacije

43

Broj 33

obaveštajna služba mu je dala nadimak bdquoTANIrdquo Čak ni dan danas ni je baš poznatokako je sve nastalo al i pouzdano se zna da je tajnu mašinu Hitler nazvaobdquoGehajmšrajberrdquo (nem Geheimschreiber) - mašina tajni

U srž i tehnologi ju šifrovanja bdquoLORENCrdquo šifrata nećemo ulaziti u ovom članku al iverujte nam na reč - ni je bi la jednostavna Može se pretpostaviti da je inspiraci jaŠenonovog 2 rada slučajnosti bi la upravo ova tehnologi ja iz Drugog svetskog rata

Ono čime se Treći rajh vodio je bdquosigurnardquo šifrovana veza koju niko ni je smeo dadešifruje Prenošenje šifrovanih poruka pomoću radio signala je dalo obaveštajnimslužbama mogućnost presretanja poruka poslatih radio talasima Da l i se ovo idanas dešava Imamo l i sigurnost u našim šifrovanim podacima današnj ice

Ono što je usledi lo nakon proboja ovog bdquoneuhvatl j ivogrdquo šifrata je upravo ono što jeprincip današnj ice kao neka vrsta protokola koj i mora da se ispoštuje uperfektnom šifarskom Šenonovom sistemu

1 NIKADA NIKADA NE KORISTITI DVA PUTA ISTI KLJUČ ZA ŠIFROVANJE2 NIKADA NIKADA KLJUČ NE SME DA SE ŠALJE ISTIM KOMUNIKACIONIM KANALOM

KAO PORUKA3 NIKADA NIKADA KLJUČ NE SME DA BUDE MANJ I NEGO ŠTO JE PORUKA (engl

2 Klod Elvud Šenon (eng Claude Elwood Shannon) (1916-2001) - Američkinaučnik i inženjer

Izgubljeni heroji bdquoBlečli parkardquo

44

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

one time pad) 4 NIKADA NIKADA NE SMEMO DA SAKRIVAMO SISTEM ŠIFROVANJA SVE MORA

DA JE OTVORENOG KOcircDA

Najveći propusti kriptologi je koj i su uočeni baš u Drugom svetskom ratu jesupokušaj sakrivanja sredstava koj im se generiše tajna poruka i nepoznavanjeŠenonovih krajnj ih granica informaci ja Kada kažemo bdquosredstvo i sakrivanjerdquomisl imo na algoritme Postavl ja se pitanje zašto je danas kriptologi ja sigurni ja negočetrdesetih i pedesetih godina prošlog veka

Danas uprkos tome što su algoritmi za kriptografi ju otvorenog kocircda tajnostinformaci ja je na višem nivou nego što je to bi lo dok je algoritam bio strogopoverl j iv Tajnost tajnih podataka se ne zasniva na tajnosti a lgoritama koj i generišutaj isti bdquotajni izlazrdquo (eng cipher text) nego u nemogućnosti matematičke inverznefunkci je koja bi šifrovan tekst otvori la Ovde se vidi da je svrha strukture otvorenogkocircda kao jednog od značajnih delova današnje kriptologi je ona koja ga činisigurnim i svima dostupnim

Sada kada se sa ove distance osvrnemo na Drugi svetski rat možemo videti kol ikosmo bi l i bl izu apokal ipse Naime Albert Ajnštajn je već 1944 godine imao urukama recept za nuklearnu bombu Šenon je mogao već u to vreme da nampredoči 100 siguran šifrat (tzv Hitlerovu super šifru) a l i ipak sreća nas jeposluži la da čovečanstvo tada ni je bi lo spremno da upotrebi svu raspoloživutehnologi ju

Albert Ajnštajn bdquoČetvrti svetski rat će se voditi tol jagamardquo

Zaboravl jeni heroj i Blečl i parka iako su odigral i važnu ulogu u pobedi saveznika usvetskom ratu postal i su žrtve bdquotop secretrdquo doktrine potpuno su zaboravl jeni inestal i su iz istori je

Zakl jučak ovog članka je da je ideologi ja otvorenog kocircda sasvim sigurno tu da nampomogne i da otvori vrata ka većoj sigurnosti novim idejama i kval itetu sameinfrastrukture sistema koju svi zajedno razvi jamo

Internet mreže i komunikacije

45

Broj 33

Autor Nikola Hardi

NabrajanjaBez brojeva

Za nabrajanje pojmova u Bimeru (eng Beamer) koristi se okruženje itemize aunutar tog okruženja možemo da dodajemo nove stavke pomoću item Primerizgleda ovako

beginitemizeitem Stavka Aitem Stavka Bitem Stavka C

enditemize

Sa brojevima

Postoje situaci je kada uz nabrajanje treba da stoje i redni brojevi - za to se koristienumerate okruženje a nove stavke se takođe dodaju pomoću item

beginenumerateitem Redni broj 1item Redni broj 2item Redni broj 3

endenumerate

prezentaci ja

Beamer (4 deo)

Sam svoj majstor

46

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

DefinicijeTreća situaci ja je nabrajanje parova termin - definici ja U tom slučaju se koristiokruženje description Već možete da pretpostavite kako se dodaju nove stavke

Primer

begindescriptionitem[Pojam A] Definicija izmišljenog pojma Aitem[Pojam B] Definicija izmišljenog pojma Bitem[Pojam C] Definicija izmišljenog pojma C

enddescription

Ostala podešavanja i zanimljivostiSva prethodna okruženja mogu da budu ugneždena jedno unutar drugog dotrećeg nivoa Treba biti pažl j iv jer sla jdovi vrlo lako mogu da postanu nečitl j ivi Osim toga moguće je izabrati i format oznake i l i rednih brojeva - na primer ovako

beginenumerate[I]beginenumarate[a)]

Takođe moguće je upravl jati pojavl j ivanjem pojedinih stavki na slajdovima Drugimrečima možemo da odredimo da se nabrajanja postepeno otkrivaju tako što ćemouz stavku dodati lt1-gt odnosno broj od kojeg slajda žel imo da se ta stavkapojavl ju je Tada će jedno nabrajanje biti bdquorazvučenordquo na više slajdovaJednostavni ja mogućnost je da u zaglavl je okruženja dodamo +- što znači dažel imo da se svakim slajdom otkriva po jedna nova stavka iz nabrajanja Znak bdquo-rdquo uoba primera znači da žel imo da se stavka pojavi na sledećem slajdu i da ostane

Sam svoj majstor

47

Broj 33

prisutna Možemo da izostavimo znak bdquo-rdquo i tada će stavka biti prisutna samo najednom slajdu i l i da napišemo raspon slajdova u koj ima žel imo da ta stavka budeprisutna

Rad sa kolonama i blokovimaDo sada su svi primeri podrazumeval i da je sadržaj napisan preko cele širineslajda al i Bimer (eng Beamer) ima i jednostavne mehanizme za razmeštanjesadržaja po kolonama Za rad sa kolonama se koristi okruženje columns unutarkojeg možemo da dodajemo nove kolone pomoću columnširina Sadržaj jemoguće potom pisati i van okruženja sa kolonama

U paru sa kolonama često se sreće i okruženje block koje se parametrizujenaslovom Primerom su i lustrovani i okruženje column i okruženje block

beginframebegincolumns

column05textwidthbeginblockNaslov levog blokaSadržaj u prvoj (levoj) koloni endblock

column05textwidthbeginblockNaslov desnog blokaSadržaj u drugoj (desnoj) koloni

endblockendcolumns

beginblockVan kolona

Beamer

48

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Tekst koji se nalazi ispod kolonaendblock

endframe

TabeleIako se u radu sa prezentaci jama sadržaj najčešće može uredno rasporeditipomoću kolona i nabrajanja nekada to ni je dovol jno jer su tabele pravi formatBimer podržava standardno Lateh (LaTeX) okruženje za rad sa tabelamaOkruženje za rad sa tabelama se zove tabular Pri kreiranju nove tabele moguće jepodesiti koje kolone će biti razdvojene l ini jom i da l i će nj ihov sadržaj biti centrirani l i uz levu i l i uz desnu ivicu Dodavanje novog reda se jednostavno radidodavanjem hline Lateh pruža zaista jako fleksibi lan rad sa tabelama i sigurno ćedoskočiti svim mogućim i nemogućim zamisl ima Potražite bi lo koje Lateh uputstvoza rad sa tabelama i radiće i sa Bimerom

beginframebegintabular | c | c | c | c |

hlineamp Ponedeljak amp Utorak amp Sreda hline

1 amp 16 amp 32 amp 64 hline2 amp 16 amp 128 amp 1024 hline3 amp 16 amp 512 amp 4096 hline

endtabularendframe

Sam svoj majstor

49

Broj 33

Beamer

Teoreme i istaknut tekstU nastavi su česta izlaganja teorema nj ihovih dokaza i primera U Bimer jeugrađena podrška za elegantno predstavl janje ove trojke Mehanizam takođepodržava postepeno otkrivanje sadržaja sla jda tako da slušaocima ne bude odmahotkriven dokaz teoreme Mehanizam za postepeno otkrivanje se kao i kodnabrajanja postiže pomoću bdquolt1-gtrdquo konstrukci je Evo kako to izgleda

beginframeframetitlePrimer teoreme

begintheoremlt1-gt Teorema kaže da su beamer prezentacijezanimljive

endtheorem

beginexamplelt2-gt Ovaj kod kreira slajd beamer prezentacijeendexample

beginprooflt3-gt Čestitamo stigli ste do kraja serijala o pravljenju beamer prezentacija

endproofendframe

50

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Za krajOvim člankom završavamo seri ja l o Bimeru Nadamo se da smo uspel i da vaszainteresujemo za ovu vrlo korisnu klasu Lateha Trudi l i smo se da vamprezentujemo najvažni je delove Bimera koje ćete najčešće koristiti pri l ikomkreiranja svoj ih prezentaci ja

Napominjemo još jednom da je Bimer samo jedna od klasa Lateha što znači da i zaBimer važi sve ono što ste već mogl i da pročitate u ovom časopisu kad smo pisal iseri ja l bdquoUvod u LaTeXrdquo (LiBRE brojevi 17 do 21) Štaviše ovaj seri ja l o Bimeru jebio nastavak upravo tog seri ja la U ovom seri ja lu nismo pisal i o samomformatiranju teksta u prezentaci jama jer se podrazumeva da važe ista pravi la kao iu Latehu a o tome smo pisal i u prethodnom seri ja lu

Hvala vam što ste prati l i ovaj seri ja l i žel imo vam puno uspeha u kreiranju Bimerprezentaci ja

Sam svoj majstor

51

Broj 33

Autor Nenad Marjanović

Kada smo se upoznal i sa podešavanj ima sistema i umrežavanjem vreme je za našprvi Biglbon Blek (BBB - eng BeagleBone Black) projekat Svakom od nas će ovajizazov dati razl ičite ideje a jedna od nj ih može biti i zaštita privatnosti internetkorisnika Nažalost u Srbi j i ne postoj i ni jedan izlazni tor server (eng node) i to jepomalo tužna sl ika s obzirom da govorimo o populaci j i od sedam mil ionastanovnika Al i ovu sl iku možemo promeniti udruženim snagama i za početakkreiranjem Tor transfer i izlaznog servera U ovde prikazanom grafikonufokusiraćemo se na bdquoRauter Brdquo tačku odnosno transfer server konfiguraci ju

BeagleBone Black Rev C

Vodič od prvog dana (3 deo) ndashBeagleBone Black kao Tor relej

Hardver

52

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Tor predstavl ja mrežu servera koj i se povezuju radi bol je enkripci je podataka izaštite IP adrese korisnika Naš ci l j je da danas postanemo deo ovog predivnogprojekta i da se nađemo na svetskoj karti Tor servera

Brzina interneta i zakonske regulativePotrebno je imati na umu nekol iko bitnih stvari

1 Naš server = naša odgovornost2 Obavezno naznačite da ste vi administrator a ne korisnik istog servera3 Da posedujete internet brzinu od 2 Mbs

Ako ispunjavamo tri navedena pravi la i odgovornosti možemo se posvetitiadministrativnim poslovima

Instalacija i podešavanjaU ovom primeru koristimo Debi jan Vizi (eng Wheezy) odnosno Debi jan 7 verzi juna našem BBB uređaju Vi možete testirati i druge Linuks platforme Prvododajemo izvornu bibl ioteku u etcaptsourceslist faj l pokretanjem sledećekomande u terminalu

echo deb httpdebtorprojectorgtorprojectorg wheezy main gt etcaptsourceslistdtorlist

Zatim dodajemo izvorni kl juč vršimo ažuriranje sistema i instal iramo tor i tor-arm(Tor monitoring sistem)

gpg --keyserver keysgnupgnet --recv 886DDD89gpg --export A3C4F0F979CAA22CDBA8F512EE8CBC9E886DDD89 | sudo apt-keyadd -apt-get updateapt-get install debtorprojectorg-keyring -yapt-get install tor tor-arm egrep screen -y

Ovim smo uspešno završi l i instalaci ju Tor servera i sistema za monitoring odnosnonadgledanja našeg Tor servera Sledećom komandom radimo na podešavanj imaTor servera koja se nalaze u etctortorrc faj lu Obratite pažnju i izvršite potrebne

Hardver

53

Broj 33

izmenu u pol j ima IP adresa (eng Address) nadimka (eng Nickname) i kontaktpodataka (eng ContactInfo) pre pokretanja ove komande Kopiramo i pokrećemokomandu u celosti u terminalu

egrep -v ^(|$) etctortorrcORPort 443Address 19216811Nickname LibreTorRelayRelayBandwidthRate 100 KBRelayBandwidthBurst 120 KBContactInfo ltvi at gmail dot comgt irPort 8080DirPortFrontPage etctortorhtmlExitPolicy reject

Detal je o svim vrednostima nećemo iznositi u ovom broju LiBRE časopisa al ićemo o nj ima pisati u sledećem u kome ćemo pričati o zaštiti Tor servera imogućnosti podešavanja određenih izlaznih pravi la (eng ExitPolicy)

Nakon ovoga možemo primetiti da se u folderu etctor ne nalazi torhtml faj l Ovaj faj l ni je od vel ikog značaja i možete ga l ično napraviti i l i preuzeti jednu kopi ju- naprimer sa sledeće lokaci je

cp usrsharedoctortorhtml etctortorhtml

Opcije i Tor Arm monitoringDa bismo ispravno koristi l i Tor Arm potrebno je urediti još jednom etctortorrcfaj l i restartovati servis

echo -e ldquoDisableDebuggerAttachment 0n AvoidDiskWritesrdquo gtgt etctortorrcsudo service tor reload

Ukol iko žel ite koristiti Tor Arm za nadgledanje aktivnosti na serveru pokreniteprogram screen kl iknite na bdquoEnterrdquo i kucajte sudo -u debian-tor arm Naekranu ćete imati sl ičan prikaz

BeagleBone Black

54

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Hardver

55

Broj 33

Da bismo napusti l i screen program koristimo Ctrl + a + d i na taj način kada sesledeći put pri javimo na server kucamo samo screen -r u terminalu - i naći ćemose ponovo na čuvenom Tor Arm monitoring ekranu

Nakon svake promene konfiguracionih faj lova ako slučajno nismo nešto podesi l ikako treba restartujemo servise

U sledećem broju časopisa govorićemo o minimalnim podešavanj ima ikonfigurisanju izlaznog Tor servera (eng Tor Exit Node) opci jama sigurnosti isl ičnim detal j ima u vezi sa našim prvim projektom Do čitanja u sledećem broju

BeagleBone Black

LUGoNS BarCamp 4subota 7 mart 2015 godine

Četvrti LUGoNS-ov Barkemp (BarCamp) održaće se u Novom Sadu usubotu 7 marta 2015 godine na Fakultetu tehničkih nauka sa početkomu 12 časova

Ulaz je slobodan

Poziv za predaju radovaLUGoNS poziva sve zainteresovane da pošal ju svoje radove (predavanjaprezentaci je radionice i diskusi je) do 28 februara 2015 godine

Oblasti iz koj ih možete da pri javite vaše radove su

bull Slobodan softverbull Zaniml j iv hardverbull Hakerski zakonibull Sigurnosne noćne morebull Anonimnost i privatnost na internetubull Duboki veb (eng Deep Web)bull Soci ja lne mrežebull Soci ja lni inženjeringbull Hakovanje mobi lnih uređajabull Internet u oblaku (eng Clouds) ndash hakovanje razbi janje i neočekivano korišćenjebull DPI (eng deep packet inspection)bull Mreža i mrežna neutralnost ndash vlasništvo cenzura nadmudrivanje i pol itika bdquodefaktordquo standarda

bull Programiranje i programski jezici

Nemojte se ustručavati i slobodno nam se javite ako imate rad na gore navedenei l i sl ične teme koj i smatrate interesantnim

Stranica za predaju radova nalazi se na https events lugonsorgp=1658

Page 38: LiBRE 33 Lat

38

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

slučajem nemate dobar al ibi i l i nemate svedoka da posvedoči da niste bi l i u tojul ici nego tamo gde ste stvarno bi l i a drugih svedoka nema - možete jako lošeproći Zaniml j ivi video http googlspS5OZ

Metapodaci se takođe nalaze i u faj lovimapodacima koje svakodnevnopreuzimamo sa interneta pravimo i koristimo Svaki tip podatka može da sadržiodređene metapodatke koj i bol je opisuju sam podatak kao naprimer vremenastanka podatka kol iko je vremena potrošeno za njegovo kreiranje kol iko putamu je pristupl jeno kad je poslednj i put pristupl jeno i tako dal je Iako se ovakvimetapodaci možda još uvek čine bezazlenim oni mogu sadržati i IP adresuračunara sa kog su napravl jeni GPS koordinate (najčešće PNG format sl ika satelefona) ko ga je napravio (l ičnost i l i kompani jaorganizaci ja) naziv uređaja imodel sa koga je napravl jen kao i MAC adresu uređaja mej l adresu kreatorasoftver koj im je napravl jen i tako dal je Sve ovo može mnogo da naškodiprivatnosti izvornog kreatora faj la pogotovo ako je sadržaj poverl j iv Ukol iko nekopresretne taj podatak na internetu može saznati od koga je potekao Da ovo možebiti katastrofa po kreatora takvog faj la može i lustrovati primer torenta Ako stedošl i u posed nekih sl ika i l i video materi ja la i l i teksta koj i žel i te da podel ite sasvetom preko nekog torent sajta morate taj podatak prvo očistiti odmetapodataka da ne bi svako ko skine to što ste okači l i saznao da vi stoj i te izatoga

Internet mreže i komunikacije

39

Broj 33

Ljudi se konstantno prate metapodaci se sakupl ja ju i to ni je sada već ništa novoal i možemo da se trudimo da iza sebe ostavl jamo malo manje nežel jenihmetapodataka i da ih takoreći čistimo iz podataka koje razmenjujemo Na srećupostoje programi koj i ovo dobro rade

Najpre je potrebno da vidimo koje sve metapodatke neki faj l sadrži kako bismo seuveri l i da ovi metapodaci stvarno postoje i da je faj l bezbedan nakon nj ihovogbrisanja

Ako koristite operativne sisteme GNULinuksa treba da iz terminala preuzmete iinstal irate program pod nazivom exiftool

sudo apt-get install exiftool

Ovaj program će nam pružiti uvid u sve metapodatke koje faj l sadrži Korišćenje jeiz terminala al i je zato veoma jednostavno samo ga pokrenite na sledeći način

exiftool File

i l i

exiftool putanjadofajlapočevodkorenogdirektorijuma

Dobićete prikaz metapodataka koje je program pronašao Sada je potrebno davidimo da l i je podatak bdquoprl javrdquo tj da l i ima u njemu nešto da se briše i da akoima iz njega sve nepotrebno obrišemo Tu će nam pomoći drugi program zvaniMAT (eng Metadata Anonymisation Toolkit) koga možete naći na sajtuhttps matboumorg i l i jednostavno za korisnike Ubuntua i Debi jana uSoftverskom centru i l i ga možete instal irati iz terminala

sudo apt-get install mat

MAT će proveriti da l i je podatak bdquoprl javrdquo i l i ne i za vas ga očistiti od nežel jenihmetapodataka

Kada očistite faj l on je spreman za del jenje sa drugima a vi ste bezbedni jer nikone može reći da je faj l potekao sa vašeg računara

To su samo metapodaci

40

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Autor Dejan Čugal j

GH Hardi bdquoPrava matematika nema uticaj na ratrdquo - odbrana matematičara1940 godina

Bi l Tat - britanski matematičar verovatno niste čul i za njega1942 godine je izveo ogroman poduhvat koj i je skratio rat dvegodine (barem po rečima Ajzenhauera) i spasio mi l ione životaNažalost njegova vel ičina je preminula 2002 godine obavi jenavelom tajne i nikada zvanično ni je priznato njegovo dostignuće

Tomi Flauers - bivši inženjer poštanskog saobraćaja pretvorio jematematičke ideje Tata u prvi računar a to ni je bio bdquoENIACrdquo1Preminuo je 1998 godine a pretpostavl jamo da nikada niste čul ini za njegovu vel ičinu

Ovi umni giganti bdquoBlečl i parkardquo omogući l i su Britani j i da dešifruje strogo poverl j ivumašinu koju je koristio Hitler da diriguje drugim svetskim ratom a to ni je bi labdquoENIGMArdquo nego nešto mnogo tajni je i značajni je Vel ika je verovatnoća da nistečul i ni za ovo Neki kažu da je to bio Hitlerov Blekberi (BlackBerry)

Izgubljeni heroji bdquoBlečli parkardquo

1 engl Electronic Numerical Integrator And Computer - prvidigitalni elektronski računar

Internet mreže i komunikacije

41

Broj 33

1939 godine bdquoBlečl i parkrdquo je postao ratni štab MI6 (britanske vojne obaveštajneslužbe) Do danas je procurelo u javnost i dokumentovano brojnim fi lmskimdokumentarcima samo da je tu Alan Tjuring uspeo da dešifruje nemačkumornaričku šifru poznatu kao bdquoENIGMArdquo i uvel iko doprineo pobedi saveznika a to jesamo deo priče koj i je ispričan

U Blečl i parku su bi la tri heroja AlanTjuring Bi l Tat i Tomi Flauers Od nj ihtroj ice jedino Alanu Tjuringu je priznat deozasluga za pobedu saveznika u Drugomsvetskom ratu Pregledom otkrivenihpodataka danas možemo da tvrdimo daje bdquoENIGMArdquo već sa početka drugogsvetskog rata bi la zastarela tehnologi ja Zbog toga je bi lo lako skinuti veo tajne sa

ovog uspeha heroja Blečl i parka

Izgubljeni heroji bdquoBlečli parkardquo

42

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Bi l Tat koj i je dešifrovao bdquoTANI sistemrdquo (TANI) i Tomi Flauers koj i je samo svojomintuici jom i znanjem sklopio prvi računar na svetu (bdquoKOLOSrdquo) u svrhu bržegdolaženja do informaci ja razbi jenog koda bdquoTANIrdquo tako da zastarelost šifrata budesvedena na minimum - radi l i su na novoj generaci j i mašina za šifrovanje Ovatehnologi ja je bi la prepoznata kao tehnologi ja budućnosti pa i danas iznadinformaci ja o tim tehnologi jama stoj i natpis bdquovrhunska tajnardquo (eng Top Secret) Upravo ovaj veo tajni oko šifrata bdquoTANIrdquo i prvog računara je rezultirao iskrivl jenjuistori je informatike

Za uspehe u prvim godinama rata je zaista zaslužno razbi janje bdquoENIGMArdquo šifrata ito ni je sporno al i krajem 1941 godine u etru planete se začuo novi zvuk To je bi lanova mašina za šifrovanje ni je bi la zasnovana na bdquoMorzeurdquo već je radi la naprincipu teleprintera

Jedna od kl jučnih ideja Hitlerovog ratovanja je bi la u vel ikoj mobi lnosti i brzomdelovanju trupa na terenu a da bi se to izvelo komunikaci ja je isto tako morala dabude u najmanju ruku putem radio signala

Razl ika je ogromna Razl ika je u kol ičini podataka koj i može da se prenese ovimbdquotajnimrdquo putem Prvi svetski rat je bio zaniml j iv jer su se šifrovane poruke baziralena rečima dok je Drugi u potpunosti otvorio vrata današnjoj kriptografi j i a to jematematika

Originalan nemački kocircdni naziv za ovaj šifrat bio je bdquoLORENCrdquo Britanska

Internet mreže i komunikacije

43

Broj 33

obaveštajna služba mu je dala nadimak bdquoTANIrdquo Čak ni dan danas ni je baš poznatokako je sve nastalo al i pouzdano se zna da je tajnu mašinu Hitler nazvaobdquoGehajmšrajberrdquo (nem Geheimschreiber) - mašina tajni

U srž i tehnologi ju šifrovanja bdquoLORENCrdquo šifrata nećemo ulaziti u ovom članku al iverujte nam na reč - ni je bi la jednostavna Može se pretpostaviti da je inspiraci jaŠenonovog 2 rada slučajnosti bi la upravo ova tehnologi ja iz Drugog svetskog rata

Ono čime se Treći rajh vodio je bdquosigurnardquo šifrovana veza koju niko ni je smeo dadešifruje Prenošenje šifrovanih poruka pomoću radio signala je dalo obaveštajnimslužbama mogućnost presretanja poruka poslatih radio talasima Da l i se ovo idanas dešava Imamo l i sigurnost u našim šifrovanim podacima današnj ice

Ono što je usledi lo nakon proboja ovog bdquoneuhvatl j ivogrdquo šifrata je upravo ono što jeprincip današnj ice kao neka vrsta protokola koj i mora da se ispoštuje uperfektnom šifarskom Šenonovom sistemu

1 NIKADA NIKADA NE KORISTITI DVA PUTA ISTI KLJUČ ZA ŠIFROVANJE2 NIKADA NIKADA KLJUČ NE SME DA SE ŠALJE ISTIM KOMUNIKACIONIM KANALOM

KAO PORUKA3 NIKADA NIKADA KLJUČ NE SME DA BUDE MANJ I NEGO ŠTO JE PORUKA (engl

2 Klod Elvud Šenon (eng Claude Elwood Shannon) (1916-2001) - Američkinaučnik i inženjer

Izgubljeni heroji bdquoBlečli parkardquo

44

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

one time pad) 4 NIKADA NIKADA NE SMEMO DA SAKRIVAMO SISTEM ŠIFROVANJA SVE MORA

DA JE OTVORENOG KOcircDA

Najveći propusti kriptologi je koj i su uočeni baš u Drugom svetskom ratu jesupokušaj sakrivanja sredstava koj im se generiše tajna poruka i nepoznavanjeŠenonovih krajnj ih granica informaci ja Kada kažemo bdquosredstvo i sakrivanjerdquomisl imo na algoritme Postavl ja se pitanje zašto je danas kriptologi ja sigurni ja negočetrdesetih i pedesetih godina prošlog veka

Danas uprkos tome što su algoritmi za kriptografi ju otvorenog kocircda tajnostinformaci ja je na višem nivou nego što je to bi lo dok je algoritam bio strogopoverl j iv Tajnost tajnih podataka se ne zasniva na tajnosti a lgoritama koj i generišutaj isti bdquotajni izlazrdquo (eng cipher text) nego u nemogućnosti matematičke inverznefunkci je koja bi šifrovan tekst otvori la Ovde se vidi da je svrha strukture otvorenogkocircda kao jednog od značajnih delova današnje kriptologi je ona koja ga činisigurnim i svima dostupnim

Sada kada se sa ove distance osvrnemo na Drugi svetski rat možemo videti kol ikosmo bi l i bl izu apokal ipse Naime Albert Ajnštajn je već 1944 godine imao urukama recept za nuklearnu bombu Šenon je mogao već u to vreme da nampredoči 100 siguran šifrat (tzv Hitlerovu super šifru) a l i ipak sreća nas jeposluži la da čovečanstvo tada ni je bi lo spremno da upotrebi svu raspoloživutehnologi ju

Albert Ajnštajn bdquoČetvrti svetski rat će se voditi tol jagamardquo

Zaboravl jeni heroj i Blečl i parka iako su odigral i važnu ulogu u pobedi saveznika usvetskom ratu postal i su žrtve bdquotop secretrdquo doktrine potpuno su zaboravl jeni inestal i su iz istori je

Zakl jučak ovog članka je da je ideologi ja otvorenog kocircda sasvim sigurno tu da nampomogne i da otvori vrata ka većoj sigurnosti novim idejama i kval itetu sameinfrastrukture sistema koju svi zajedno razvi jamo

Internet mreže i komunikacije

45

Broj 33

Autor Nikola Hardi

NabrajanjaBez brojeva

Za nabrajanje pojmova u Bimeru (eng Beamer) koristi se okruženje itemize aunutar tog okruženja možemo da dodajemo nove stavke pomoću item Primerizgleda ovako

beginitemizeitem Stavka Aitem Stavka Bitem Stavka C

enditemize

Sa brojevima

Postoje situaci je kada uz nabrajanje treba da stoje i redni brojevi - za to se koristienumerate okruženje a nove stavke se takođe dodaju pomoću item

beginenumerateitem Redni broj 1item Redni broj 2item Redni broj 3

endenumerate

prezentaci ja

Beamer (4 deo)

Sam svoj majstor

46

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

DefinicijeTreća situaci ja je nabrajanje parova termin - definici ja U tom slučaju se koristiokruženje description Već možete da pretpostavite kako se dodaju nove stavke

Primer

begindescriptionitem[Pojam A] Definicija izmišljenog pojma Aitem[Pojam B] Definicija izmišljenog pojma Bitem[Pojam C] Definicija izmišljenog pojma C

enddescription

Ostala podešavanja i zanimljivostiSva prethodna okruženja mogu da budu ugneždena jedno unutar drugog dotrećeg nivoa Treba biti pažl j iv jer sla jdovi vrlo lako mogu da postanu nečitl j ivi Osim toga moguće je izabrati i format oznake i l i rednih brojeva - na primer ovako

beginenumerate[I]beginenumarate[a)]

Takođe moguće je upravl jati pojavl j ivanjem pojedinih stavki na slajdovima Drugimrečima možemo da odredimo da se nabrajanja postepeno otkrivaju tako što ćemouz stavku dodati lt1-gt odnosno broj od kojeg slajda žel imo da se ta stavkapojavl ju je Tada će jedno nabrajanje biti bdquorazvučenordquo na više slajdovaJednostavni ja mogućnost je da u zaglavl je okruženja dodamo +- što znači dažel imo da se svakim slajdom otkriva po jedna nova stavka iz nabrajanja Znak bdquo-rdquo uoba primera znači da žel imo da se stavka pojavi na sledećem slajdu i da ostane

Sam svoj majstor

47

Broj 33

prisutna Možemo da izostavimo znak bdquo-rdquo i tada će stavka biti prisutna samo najednom slajdu i l i da napišemo raspon slajdova u koj ima žel imo da ta stavka budeprisutna

Rad sa kolonama i blokovimaDo sada su svi primeri podrazumeval i da je sadržaj napisan preko cele širineslajda al i Bimer (eng Beamer) ima i jednostavne mehanizme za razmeštanjesadržaja po kolonama Za rad sa kolonama se koristi okruženje columns unutarkojeg možemo da dodajemo nove kolone pomoću columnširina Sadržaj jemoguće potom pisati i van okruženja sa kolonama

U paru sa kolonama često se sreće i okruženje block koje se parametrizujenaslovom Primerom su i lustrovani i okruženje column i okruženje block

beginframebegincolumns

column05textwidthbeginblockNaslov levog blokaSadržaj u prvoj (levoj) koloni endblock

column05textwidthbeginblockNaslov desnog blokaSadržaj u drugoj (desnoj) koloni

endblockendcolumns

beginblockVan kolona

Beamer

48

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Tekst koji se nalazi ispod kolonaendblock

endframe

TabeleIako se u radu sa prezentaci jama sadržaj najčešće može uredno rasporeditipomoću kolona i nabrajanja nekada to ni je dovol jno jer su tabele pravi formatBimer podržava standardno Lateh (LaTeX) okruženje za rad sa tabelamaOkruženje za rad sa tabelama se zove tabular Pri kreiranju nove tabele moguće jepodesiti koje kolone će biti razdvojene l ini jom i da l i će nj ihov sadržaj biti centrirani l i uz levu i l i uz desnu ivicu Dodavanje novog reda se jednostavno radidodavanjem hline Lateh pruža zaista jako fleksibi lan rad sa tabelama i sigurno ćedoskočiti svim mogućim i nemogućim zamisl ima Potražite bi lo koje Lateh uputstvoza rad sa tabelama i radiće i sa Bimerom

beginframebegintabular | c | c | c | c |

hlineamp Ponedeljak amp Utorak amp Sreda hline

1 amp 16 amp 32 amp 64 hline2 amp 16 amp 128 amp 1024 hline3 amp 16 amp 512 amp 4096 hline

endtabularendframe

Sam svoj majstor

49

Broj 33

Beamer

Teoreme i istaknut tekstU nastavi su česta izlaganja teorema nj ihovih dokaza i primera U Bimer jeugrađena podrška za elegantno predstavl janje ove trojke Mehanizam takođepodržava postepeno otkrivanje sadržaja sla jda tako da slušaocima ne bude odmahotkriven dokaz teoreme Mehanizam za postepeno otkrivanje se kao i kodnabrajanja postiže pomoću bdquolt1-gtrdquo konstrukci je Evo kako to izgleda

beginframeframetitlePrimer teoreme

begintheoremlt1-gt Teorema kaže da su beamer prezentacijezanimljive

endtheorem

beginexamplelt2-gt Ovaj kod kreira slajd beamer prezentacijeendexample

beginprooflt3-gt Čestitamo stigli ste do kraja serijala o pravljenju beamer prezentacija

endproofendframe

50

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Za krajOvim člankom završavamo seri ja l o Bimeru Nadamo se da smo uspel i da vaszainteresujemo za ovu vrlo korisnu klasu Lateha Trudi l i smo se da vamprezentujemo najvažni je delove Bimera koje ćete najčešće koristiti pri l ikomkreiranja svoj ih prezentaci ja

Napominjemo još jednom da je Bimer samo jedna od klasa Lateha što znači da i zaBimer važi sve ono što ste već mogl i da pročitate u ovom časopisu kad smo pisal iseri ja l bdquoUvod u LaTeXrdquo (LiBRE brojevi 17 do 21) Štaviše ovaj seri ja l o Bimeru jebio nastavak upravo tog seri ja la U ovom seri ja lu nismo pisal i o samomformatiranju teksta u prezentaci jama jer se podrazumeva da važe ista pravi la kao iu Latehu a o tome smo pisal i u prethodnom seri ja lu

Hvala vam što ste prati l i ovaj seri ja l i žel imo vam puno uspeha u kreiranju Bimerprezentaci ja

Sam svoj majstor

51

Broj 33

Autor Nenad Marjanović

Kada smo se upoznal i sa podešavanj ima sistema i umrežavanjem vreme je za našprvi Biglbon Blek (BBB - eng BeagleBone Black) projekat Svakom od nas će ovajizazov dati razl ičite ideje a jedna od nj ih može biti i zaštita privatnosti internetkorisnika Nažalost u Srbi j i ne postoj i ni jedan izlazni tor server (eng node) i to jepomalo tužna sl ika s obzirom da govorimo o populaci j i od sedam mil ionastanovnika Al i ovu sl iku možemo promeniti udruženim snagama i za početakkreiranjem Tor transfer i izlaznog servera U ovde prikazanom grafikonufokusiraćemo se na bdquoRauter Brdquo tačku odnosno transfer server konfiguraci ju

BeagleBone Black Rev C

Vodič od prvog dana (3 deo) ndashBeagleBone Black kao Tor relej

Hardver

52

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Tor predstavl ja mrežu servera koj i se povezuju radi bol je enkripci je podataka izaštite IP adrese korisnika Naš ci l j je da danas postanemo deo ovog predivnogprojekta i da se nađemo na svetskoj karti Tor servera

Brzina interneta i zakonske regulativePotrebno je imati na umu nekol iko bitnih stvari

1 Naš server = naša odgovornost2 Obavezno naznačite da ste vi administrator a ne korisnik istog servera3 Da posedujete internet brzinu od 2 Mbs

Ako ispunjavamo tri navedena pravi la i odgovornosti možemo se posvetitiadministrativnim poslovima

Instalacija i podešavanjaU ovom primeru koristimo Debi jan Vizi (eng Wheezy) odnosno Debi jan 7 verzi juna našem BBB uređaju Vi možete testirati i druge Linuks platforme Prvododajemo izvornu bibl ioteku u etcaptsourceslist faj l pokretanjem sledećekomande u terminalu

echo deb httpdebtorprojectorgtorprojectorg wheezy main gt etcaptsourceslistdtorlist

Zatim dodajemo izvorni kl juč vršimo ažuriranje sistema i instal iramo tor i tor-arm(Tor monitoring sistem)

gpg --keyserver keysgnupgnet --recv 886DDD89gpg --export A3C4F0F979CAA22CDBA8F512EE8CBC9E886DDD89 | sudo apt-keyadd -apt-get updateapt-get install debtorprojectorg-keyring -yapt-get install tor tor-arm egrep screen -y

Ovim smo uspešno završi l i instalaci ju Tor servera i sistema za monitoring odnosnonadgledanja našeg Tor servera Sledećom komandom radimo na podešavanj imaTor servera koja se nalaze u etctortorrc faj lu Obratite pažnju i izvršite potrebne

Hardver

53

Broj 33

izmenu u pol j ima IP adresa (eng Address) nadimka (eng Nickname) i kontaktpodataka (eng ContactInfo) pre pokretanja ove komande Kopiramo i pokrećemokomandu u celosti u terminalu

egrep -v ^(|$) etctortorrcORPort 443Address 19216811Nickname LibreTorRelayRelayBandwidthRate 100 KBRelayBandwidthBurst 120 KBContactInfo ltvi at gmail dot comgt irPort 8080DirPortFrontPage etctortorhtmlExitPolicy reject

Detal je o svim vrednostima nećemo iznositi u ovom broju LiBRE časopisa al ićemo o nj ima pisati u sledećem u kome ćemo pričati o zaštiti Tor servera imogućnosti podešavanja određenih izlaznih pravi la (eng ExitPolicy)

Nakon ovoga možemo primetiti da se u folderu etctor ne nalazi torhtml faj l Ovaj faj l ni je od vel ikog značaja i možete ga l ično napraviti i l i preuzeti jednu kopi ju- naprimer sa sledeće lokaci je

cp usrsharedoctortorhtml etctortorhtml

Opcije i Tor Arm monitoringDa bismo ispravno koristi l i Tor Arm potrebno je urediti još jednom etctortorrcfaj l i restartovati servis

echo -e ldquoDisableDebuggerAttachment 0n AvoidDiskWritesrdquo gtgt etctortorrcsudo service tor reload

Ukol iko žel ite koristiti Tor Arm za nadgledanje aktivnosti na serveru pokreniteprogram screen kl iknite na bdquoEnterrdquo i kucajte sudo -u debian-tor arm Naekranu ćete imati sl ičan prikaz

BeagleBone Black

54

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Hardver

55

Broj 33

Da bismo napusti l i screen program koristimo Ctrl + a + d i na taj način kada sesledeći put pri javimo na server kucamo samo screen -r u terminalu - i naći ćemose ponovo na čuvenom Tor Arm monitoring ekranu

Nakon svake promene konfiguracionih faj lova ako slučajno nismo nešto podesi l ikako treba restartujemo servise

U sledećem broju časopisa govorićemo o minimalnim podešavanj ima ikonfigurisanju izlaznog Tor servera (eng Tor Exit Node) opci jama sigurnosti isl ičnim detal j ima u vezi sa našim prvim projektom Do čitanja u sledećem broju

BeagleBone Black

LUGoNS BarCamp 4subota 7 mart 2015 godine

Četvrti LUGoNS-ov Barkemp (BarCamp) održaće se u Novom Sadu usubotu 7 marta 2015 godine na Fakultetu tehničkih nauka sa početkomu 12 časova

Ulaz je slobodan

Poziv za predaju radovaLUGoNS poziva sve zainteresovane da pošal ju svoje radove (predavanjaprezentaci je radionice i diskusi je) do 28 februara 2015 godine

Oblasti iz koj ih možete da pri javite vaše radove su

bull Slobodan softverbull Zaniml j iv hardverbull Hakerski zakonibull Sigurnosne noćne morebull Anonimnost i privatnost na internetubull Duboki veb (eng Deep Web)bull Soci ja lne mrežebull Soci ja lni inženjeringbull Hakovanje mobi lnih uređajabull Internet u oblaku (eng Clouds) ndash hakovanje razbi janje i neočekivano korišćenjebull DPI (eng deep packet inspection)bull Mreža i mrežna neutralnost ndash vlasništvo cenzura nadmudrivanje i pol itika bdquodefaktordquo standarda

bull Programiranje i programski jezici

Nemojte se ustručavati i slobodno nam se javite ako imate rad na gore navedenei l i sl ične teme koj i smatrate interesantnim

Stranica za predaju radova nalazi se na https events lugonsorgp=1658

Page 39: LiBRE 33 Lat

39

Broj 33

Ljudi se konstantno prate metapodaci se sakupl ja ju i to ni je sada već ništa novoal i možemo da se trudimo da iza sebe ostavl jamo malo manje nežel jenihmetapodataka i da ih takoreći čistimo iz podataka koje razmenjujemo Na srećupostoje programi koj i ovo dobro rade

Najpre je potrebno da vidimo koje sve metapodatke neki faj l sadrži kako bismo seuveri l i da ovi metapodaci stvarno postoje i da je faj l bezbedan nakon nj ihovogbrisanja

Ako koristite operativne sisteme GNULinuksa treba da iz terminala preuzmete iinstal irate program pod nazivom exiftool

sudo apt-get install exiftool

Ovaj program će nam pružiti uvid u sve metapodatke koje faj l sadrži Korišćenje jeiz terminala al i je zato veoma jednostavno samo ga pokrenite na sledeći način

exiftool File

i l i

exiftool putanjadofajlapočevodkorenogdirektorijuma

Dobićete prikaz metapodataka koje je program pronašao Sada je potrebno davidimo da l i je podatak bdquoprl javrdquo tj da l i ima u njemu nešto da se briše i da akoima iz njega sve nepotrebno obrišemo Tu će nam pomoći drugi program zvaniMAT (eng Metadata Anonymisation Toolkit) koga možete naći na sajtuhttps matboumorg i l i jednostavno za korisnike Ubuntua i Debi jana uSoftverskom centru i l i ga možete instal irati iz terminala

sudo apt-get install mat

MAT će proveriti da l i je podatak bdquoprl javrdquo i l i ne i za vas ga očistiti od nežel jenihmetapodataka

Kada očistite faj l on je spreman za del jenje sa drugima a vi ste bezbedni jer nikone može reći da je faj l potekao sa vašeg računara

To su samo metapodaci

40

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Autor Dejan Čugal j

GH Hardi bdquoPrava matematika nema uticaj na ratrdquo - odbrana matematičara1940 godina

Bi l Tat - britanski matematičar verovatno niste čul i za njega1942 godine je izveo ogroman poduhvat koj i je skratio rat dvegodine (barem po rečima Ajzenhauera) i spasio mi l ione životaNažalost njegova vel ičina je preminula 2002 godine obavi jenavelom tajne i nikada zvanično ni je priznato njegovo dostignuće

Tomi Flauers - bivši inženjer poštanskog saobraćaja pretvorio jematematičke ideje Tata u prvi računar a to ni je bio bdquoENIACrdquo1Preminuo je 1998 godine a pretpostavl jamo da nikada niste čul ini za njegovu vel ičinu

Ovi umni giganti bdquoBlečl i parkardquo omogući l i su Britani j i da dešifruje strogo poverl j ivumašinu koju je koristio Hitler da diriguje drugim svetskim ratom a to ni je bi labdquoENIGMArdquo nego nešto mnogo tajni je i značajni je Vel ika je verovatnoća da nistečul i ni za ovo Neki kažu da je to bio Hitlerov Blekberi (BlackBerry)

Izgubljeni heroji bdquoBlečli parkardquo

1 engl Electronic Numerical Integrator And Computer - prvidigitalni elektronski računar

Internet mreže i komunikacije

41

Broj 33

1939 godine bdquoBlečl i parkrdquo je postao ratni štab MI6 (britanske vojne obaveštajneslužbe) Do danas je procurelo u javnost i dokumentovano brojnim fi lmskimdokumentarcima samo da je tu Alan Tjuring uspeo da dešifruje nemačkumornaričku šifru poznatu kao bdquoENIGMArdquo i uvel iko doprineo pobedi saveznika a to jesamo deo priče koj i je ispričan

U Blečl i parku su bi la tri heroja AlanTjuring Bi l Tat i Tomi Flauers Od nj ihtroj ice jedino Alanu Tjuringu je priznat deozasluga za pobedu saveznika u Drugomsvetskom ratu Pregledom otkrivenihpodataka danas možemo da tvrdimo daje bdquoENIGMArdquo već sa početka drugogsvetskog rata bi la zastarela tehnologi ja Zbog toga je bi lo lako skinuti veo tajne sa

ovog uspeha heroja Blečl i parka

Izgubljeni heroji bdquoBlečli parkardquo

42

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Bi l Tat koj i je dešifrovao bdquoTANI sistemrdquo (TANI) i Tomi Flauers koj i je samo svojomintuici jom i znanjem sklopio prvi računar na svetu (bdquoKOLOSrdquo) u svrhu bržegdolaženja do informaci ja razbi jenog koda bdquoTANIrdquo tako da zastarelost šifrata budesvedena na minimum - radi l i su na novoj generaci j i mašina za šifrovanje Ovatehnologi ja je bi la prepoznata kao tehnologi ja budućnosti pa i danas iznadinformaci ja o tim tehnologi jama stoj i natpis bdquovrhunska tajnardquo (eng Top Secret) Upravo ovaj veo tajni oko šifrata bdquoTANIrdquo i prvog računara je rezultirao iskrivl jenjuistori je informatike

Za uspehe u prvim godinama rata je zaista zaslužno razbi janje bdquoENIGMArdquo šifrata ito ni je sporno al i krajem 1941 godine u etru planete se začuo novi zvuk To je bi lanova mašina za šifrovanje ni je bi la zasnovana na bdquoMorzeurdquo već je radi la naprincipu teleprintera

Jedna od kl jučnih ideja Hitlerovog ratovanja je bi la u vel ikoj mobi lnosti i brzomdelovanju trupa na terenu a da bi se to izvelo komunikaci ja je isto tako morala dabude u najmanju ruku putem radio signala

Razl ika je ogromna Razl ika je u kol ičini podataka koj i može da se prenese ovimbdquotajnimrdquo putem Prvi svetski rat je bio zaniml j iv jer su se šifrovane poruke baziralena rečima dok je Drugi u potpunosti otvorio vrata današnjoj kriptografi j i a to jematematika

Originalan nemački kocircdni naziv za ovaj šifrat bio je bdquoLORENCrdquo Britanska

Internet mreže i komunikacije

43

Broj 33

obaveštajna služba mu je dala nadimak bdquoTANIrdquo Čak ni dan danas ni je baš poznatokako je sve nastalo al i pouzdano se zna da je tajnu mašinu Hitler nazvaobdquoGehajmšrajberrdquo (nem Geheimschreiber) - mašina tajni

U srž i tehnologi ju šifrovanja bdquoLORENCrdquo šifrata nećemo ulaziti u ovom članku al iverujte nam na reč - ni je bi la jednostavna Može se pretpostaviti da je inspiraci jaŠenonovog 2 rada slučajnosti bi la upravo ova tehnologi ja iz Drugog svetskog rata

Ono čime se Treći rajh vodio je bdquosigurnardquo šifrovana veza koju niko ni je smeo dadešifruje Prenošenje šifrovanih poruka pomoću radio signala je dalo obaveštajnimslužbama mogućnost presretanja poruka poslatih radio talasima Da l i se ovo idanas dešava Imamo l i sigurnost u našim šifrovanim podacima današnj ice

Ono što je usledi lo nakon proboja ovog bdquoneuhvatl j ivogrdquo šifrata je upravo ono što jeprincip današnj ice kao neka vrsta protokola koj i mora da se ispoštuje uperfektnom šifarskom Šenonovom sistemu

1 NIKADA NIKADA NE KORISTITI DVA PUTA ISTI KLJUČ ZA ŠIFROVANJE2 NIKADA NIKADA KLJUČ NE SME DA SE ŠALJE ISTIM KOMUNIKACIONIM KANALOM

KAO PORUKA3 NIKADA NIKADA KLJUČ NE SME DA BUDE MANJ I NEGO ŠTO JE PORUKA (engl

2 Klod Elvud Šenon (eng Claude Elwood Shannon) (1916-2001) - Američkinaučnik i inženjer

Izgubljeni heroji bdquoBlečli parkardquo

44

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

one time pad) 4 NIKADA NIKADA NE SMEMO DA SAKRIVAMO SISTEM ŠIFROVANJA SVE MORA

DA JE OTVORENOG KOcircDA

Najveći propusti kriptologi je koj i su uočeni baš u Drugom svetskom ratu jesupokušaj sakrivanja sredstava koj im se generiše tajna poruka i nepoznavanjeŠenonovih krajnj ih granica informaci ja Kada kažemo bdquosredstvo i sakrivanjerdquomisl imo na algoritme Postavl ja se pitanje zašto je danas kriptologi ja sigurni ja negočetrdesetih i pedesetih godina prošlog veka

Danas uprkos tome što su algoritmi za kriptografi ju otvorenog kocircda tajnostinformaci ja je na višem nivou nego što je to bi lo dok je algoritam bio strogopoverl j iv Tajnost tajnih podataka se ne zasniva na tajnosti a lgoritama koj i generišutaj isti bdquotajni izlazrdquo (eng cipher text) nego u nemogućnosti matematičke inverznefunkci je koja bi šifrovan tekst otvori la Ovde se vidi da je svrha strukture otvorenogkocircda kao jednog od značajnih delova današnje kriptologi je ona koja ga činisigurnim i svima dostupnim

Sada kada se sa ove distance osvrnemo na Drugi svetski rat možemo videti kol ikosmo bi l i bl izu apokal ipse Naime Albert Ajnštajn je već 1944 godine imao urukama recept za nuklearnu bombu Šenon je mogao već u to vreme da nampredoči 100 siguran šifrat (tzv Hitlerovu super šifru) a l i ipak sreća nas jeposluži la da čovečanstvo tada ni je bi lo spremno da upotrebi svu raspoloživutehnologi ju

Albert Ajnštajn bdquoČetvrti svetski rat će se voditi tol jagamardquo

Zaboravl jeni heroj i Blečl i parka iako su odigral i važnu ulogu u pobedi saveznika usvetskom ratu postal i su žrtve bdquotop secretrdquo doktrine potpuno su zaboravl jeni inestal i su iz istori je

Zakl jučak ovog članka je da je ideologi ja otvorenog kocircda sasvim sigurno tu da nampomogne i da otvori vrata ka većoj sigurnosti novim idejama i kval itetu sameinfrastrukture sistema koju svi zajedno razvi jamo

Internet mreže i komunikacije

45

Broj 33

Autor Nikola Hardi

NabrajanjaBez brojeva

Za nabrajanje pojmova u Bimeru (eng Beamer) koristi se okruženje itemize aunutar tog okruženja možemo da dodajemo nove stavke pomoću item Primerizgleda ovako

beginitemizeitem Stavka Aitem Stavka Bitem Stavka C

enditemize

Sa brojevima

Postoje situaci je kada uz nabrajanje treba da stoje i redni brojevi - za to se koristienumerate okruženje a nove stavke se takođe dodaju pomoću item

beginenumerateitem Redni broj 1item Redni broj 2item Redni broj 3

endenumerate

prezentaci ja

Beamer (4 deo)

Sam svoj majstor

46

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

DefinicijeTreća situaci ja je nabrajanje parova termin - definici ja U tom slučaju se koristiokruženje description Već možete da pretpostavite kako se dodaju nove stavke

Primer

begindescriptionitem[Pojam A] Definicija izmišljenog pojma Aitem[Pojam B] Definicija izmišljenog pojma Bitem[Pojam C] Definicija izmišljenog pojma C

enddescription

Ostala podešavanja i zanimljivostiSva prethodna okruženja mogu da budu ugneždena jedno unutar drugog dotrećeg nivoa Treba biti pažl j iv jer sla jdovi vrlo lako mogu da postanu nečitl j ivi Osim toga moguće je izabrati i format oznake i l i rednih brojeva - na primer ovako

beginenumerate[I]beginenumarate[a)]

Takođe moguće je upravl jati pojavl j ivanjem pojedinih stavki na slajdovima Drugimrečima možemo da odredimo da se nabrajanja postepeno otkrivaju tako što ćemouz stavku dodati lt1-gt odnosno broj od kojeg slajda žel imo da se ta stavkapojavl ju je Tada će jedno nabrajanje biti bdquorazvučenordquo na više slajdovaJednostavni ja mogućnost je da u zaglavl je okruženja dodamo +- što znači dažel imo da se svakim slajdom otkriva po jedna nova stavka iz nabrajanja Znak bdquo-rdquo uoba primera znači da žel imo da se stavka pojavi na sledećem slajdu i da ostane

Sam svoj majstor

47

Broj 33

prisutna Možemo da izostavimo znak bdquo-rdquo i tada će stavka biti prisutna samo najednom slajdu i l i da napišemo raspon slajdova u koj ima žel imo da ta stavka budeprisutna

Rad sa kolonama i blokovimaDo sada su svi primeri podrazumeval i da je sadržaj napisan preko cele širineslajda al i Bimer (eng Beamer) ima i jednostavne mehanizme za razmeštanjesadržaja po kolonama Za rad sa kolonama se koristi okruženje columns unutarkojeg možemo da dodajemo nove kolone pomoću columnširina Sadržaj jemoguće potom pisati i van okruženja sa kolonama

U paru sa kolonama često se sreće i okruženje block koje se parametrizujenaslovom Primerom su i lustrovani i okruženje column i okruženje block

beginframebegincolumns

column05textwidthbeginblockNaslov levog blokaSadržaj u prvoj (levoj) koloni endblock

column05textwidthbeginblockNaslov desnog blokaSadržaj u drugoj (desnoj) koloni

endblockendcolumns

beginblockVan kolona

Beamer

48

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Tekst koji se nalazi ispod kolonaendblock

endframe

TabeleIako se u radu sa prezentaci jama sadržaj najčešće može uredno rasporeditipomoću kolona i nabrajanja nekada to ni je dovol jno jer su tabele pravi formatBimer podržava standardno Lateh (LaTeX) okruženje za rad sa tabelamaOkruženje za rad sa tabelama se zove tabular Pri kreiranju nove tabele moguće jepodesiti koje kolone će biti razdvojene l ini jom i da l i će nj ihov sadržaj biti centrirani l i uz levu i l i uz desnu ivicu Dodavanje novog reda se jednostavno radidodavanjem hline Lateh pruža zaista jako fleksibi lan rad sa tabelama i sigurno ćedoskočiti svim mogućim i nemogućim zamisl ima Potražite bi lo koje Lateh uputstvoza rad sa tabelama i radiće i sa Bimerom

beginframebegintabular | c | c | c | c |

hlineamp Ponedeljak amp Utorak amp Sreda hline

1 amp 16 amp 32 amp 64 hline2 amp 16 amp 128 amp 1024 hline3 amp 16 amp 512 amp 4096 hline

endtabularendframe

Sam svoj majstor

49

Broj 33

Beamer

Teoreme i istaknut tekstU nastavi su česta izlaganja teorema nj ihovih dokaza i primera U Bimer jeugrađena podrška za elegantno predstavl janje ove trojke Mehanizam takođepodržava postepeno otkrivanje sadržaja sla jda tako da slušaocima ne bude odmahotkriven dokaz teoreme Mehanizam za postepeno otkrivanje se kao i kodnabrajanja postiže pomoću bdquolt1-gtrdquo konstrukci je Evo kako to izgleda

beginframeframetitlePrimer teoreme

begintheoremlt1-gt Teorema kaže da su beamer prezentacijezanimljive

endtheorem

beginexamplelt2-gt Ovaj kod kreira slajd beamer prezentacijeendexample

beginprooflt3-gt Čestitamo stigli ste do kraja serijala o pravljenju beamer prezentacija

endproofendframe

50

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Za krajOvim člankom završavamo seri ja l o Bimeru Nadamo se da smo uspel i da vaszainteresujemo za ovu vrlo korisnu klasu Lateha Trudi l i smo se da vamprezentujemo najvažni je delove Bimera koje ćete najčešće koristiti pri l ikomkreiranja svoj ih prezentaci ja

Napominjemo još jednom da je Bimer samo jedna od klasa Lateha što znači da i zaBimer važi sve ono što ste već mogl i da pročitate u ovom časopisu kad smo pisal iseri ja l bdquoUvod u LaTeXrdquo (LiBRE brojevi 17 do 21) Štaviše ovaj seri ja l o Bimeru jebio nastavak upravo tog seri ja la U ovom seri ja lu nismo pisal i o samomformatiranju teksta u prezentaci jama jer se podrazumeva da važe ista pravi la kao iu Latehu a o tome smo pisal i u prethodnom seri ja lu

Hvala vam što ste prati l i ovaj seri ja l i žel imo vam puno uspeha u kreiranju Bimerprezentaci ja

Sam svoj majstor

51

Broj 33

Autor Nenad Marjanović

Kada smo se upoznal i sa podešavanj ima sistema i umrežavanjem vreme je za našprvi Biglbon Blek (BBB - eng BeagleBone Black) projekat Svakom od nas će ovajizazov dati razl ičite ideje a jedna od nj ih može biti i zaštita privatnosti internetkorisnika Nažalost u Srbi j i ne postoj i ni jedan izlazni tor server (eng node) i to jepomalo tužna sl ika s obzirom da govorimo o populaci j i od sedam mil ionastanovnika Al i ovu sl iku možemo promeniti udruženim snagama i za početakkreiranjem Tor transfer i izlaznog servera U ovde prikazanom grafikonufokusiraćemo se na bdquoRauter Brdquo tačku odnosno transfer server konfiguraci ju

BeagleBone Black Rev C

Vodič od prvog dana (3 deo) ndashBeagleBone Black kao Tor relej

Hardver

52

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Tor predstavl ja mrežu servera koj i se povezuju radi bol je enkripci je podataka izaštite IP adrese korisnika Naš ci l j je da danas postanemo deo ovog predivnogprojekta i da se nađemo na svetskoj karti Tor servera

Brzina interneta i zakonske regulativePotrebno je imati na umu nekol iko bitnih stvari

1 Naš server = naša odgovornost2 Obavezno naznačite da ste vi administrator a ne korisnik istog servera3 Da posedujete internet brzinu od 2 Mbs

Ako ispunjavamo tri navedena pravi la i odgovornosti možemo se posvetitiadministrativnim poslovima

Instalacija i podešavanjaU ovom primeru koristimo Debi jan Vizi (eng Wheezy) odnosno Debi jan 7 verzi juna našem BBB uređaju Vi možete testirati i druge Linuks platforme Prvododajemo izvornu bibl ioteku u etcaptsourceslist faj l pokretanjem sledećekomande u terminalu

echo deb httpdebtorprojectorgtorprojectorg wheezy main gt etcaptsourceslistdtorlist

Zatim dodajemo izvorni kl juč vršimo ažuriranje sistema i instal iramo tor i tor-arm(Tor monitoring sistem)

gpg --keyserver keysgnupgnet --recv 886DDD89gpg --export A3C4F0F979CAA22CDBA8F512EE8CBC9E886DDD89 | sudo apt-keyadd -apt-get updateapt-get install debtorprojectorg-keyring -yapt-get install tor tor-arm egrep screen -y

Ovim smo uspešno završi l i instalaci ju Tor servera i sistema za monitoring odnosnonadgledanja našeg Tor servera Sledećom komandom radimo na podešavanj imaTor servera koja se nalaze u etctortorrc faj lu Obratite pažnju i izvršite potrebne

Hardver

53

Broj 33

izmenu u pol j ima IP adresa (eng Address) nadimka (eng Nickname) i kontaktpodataka (eng ContactInfo) pre pokretanja ove komande Kopiramo i pokrećemokomandu u celosti u terminalu

egrep -v ^(|$) etctortorrcORPort 443Address 19216811Nickname LibreTorRelayRelayBandwidthRate 100 KBRelayBandwidthBurst 120 KBContactInfo ltvi at gmail dot comgt irPort 8080DirPortFrontPage etctortorhtmlExitPolicy reject

Detal je o svim vrednostima nećemo iznositi u ovom broju LiBRE časopisa al ićemo o nj ima pisati u sledećem u kome ćemo pričati o zaštiti Tor servera imogućnosti podešavanja određenih izlaznih pravi la (eng ExitPolicy)

Nakon ovoga možemo primetiti da se u folderu etctor ne nalazi torhtml faj l Ovaj faj l ni je od vel ikog značaja i možete ga l ično napraviti i l i preuzeti jednu kopi ju- naprimer sa sledeće lokaci je

cp usrsharedoctortorhtml etctortorhtml

Opcije i Tor Arm monitoringDa bismo ispravno koristi l i Tor Arm potrebno je urediti još jednom etctortorrcfaj l i restartovati servis

echo -e ldquoDisableDebuggerAttachment 0n AvoidDiskWritesrdquo gtgt etctortorrcsudo service tor reload

Ukol iko žel ite koristiti Tor Arm za nadgledanje aktivnosti na serveru pokreniteprogram screen kl iknite na bdquoEnterrdquo i kucajte sudo -u debian-tor arm Naekranu ćete imati sl ičan prikaz

BeagleBone Black

54

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Hardver

55

Broj 33

Da bismo napusti l i screen program koristimo Ctrl + a + d i na taj način kada sesledeći put pri javimo na server kucamo samo screen -r u terminalu - i naći ćemose ponovo na čuvenom Tor Arm monitoring ekranu

Nakon svake promene konfiguracionih faj lova ako slučajno nismo nešto podesi l ikako treba restartujemo servise

U sledećem broju časopisa govorićemo o minimalnim podešavanj ima ikonfigurisanju izlaznog Tor servera (eng Tor Exit Node) opci jama sigurnosti isl ičnim detal j ima u vezi sa našim prvim projektom Do čitanja u sledećem broju

BeagleBone Black

LUGoNS BarCamp 4subota 7 mart 2015 godine

Četvrti LUGoNS-ov Barkemp (BarCamp) održaće se u Novom Sadu usubotu 7 marta 2015 godine na Fakultetu tehničkih nauka sa početkomu 12 časova

Ulaz je slobodan

Poziv za predaju radovaLUGoNS poziva sve zainteresovane da pošal ju svoje radove (predavanjaprezentaci je radionice i diskusi je) do 28 februara 2015 godine

Oblasti iz koj ih možete da pri javite vaše radove su

bull Slobodan softverbull Zaniml j iv hardverbull Hakerski zakonibull Sigurnosne noćne morebull Anonimnost i privatnost na internetubull Duboki veb (eng Deep Web)bull Soci ja lne mrežebull Soci ja lni inženjeringbull Hakovanje mobi lnih uređajabull Internet u oblaku (eng Clouds) ndash hakovanje razbi janje i neočekivano korišćenjebull DPI (eng deep packet inspection)bull Mreža i mrežna neutralnost ndash vlasništvo cenzura nadmudrivanje i pol itika bdquodefaktordquo standarda

bull Programiranje i programski jezici

Nemojte se ustručavati i slobodno nam se javite ako imate rad na gore navedenei l i sl ične teme koj i smatrate interesantnim

Stranica za predaju radova nalazi se na https events lugonsorgp=1658

Page 40: LiBRE 33 Lat

40

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Autor Dejan Čugal j

GH Hardi bdquoPrava matematika nema uticaj na ratrdquo - odbrana matematičara1940 godina

Bi l Tat - britanski matematičar verovatno niste čul i za njega1942 godine je izveo ogroman poduhvat koj i je skratio rat dvegodine (barem po rečima Ajzenhauera) i spasio mi l ione životaNažalost njegova vel ičina je preminula 2002 godine obavi jenavelom tajne i nikada zvanično ni je priznato njegovo dostignuće

Tomi Flauers - bivši inženjer poštanskog saobraćaja pretvorio jematematičke ideje Tata u prvi računar a to ni je bio bdquoENIACrdquo1Preminuo je 1998 godine a pretpostavl jamo da nikada niste čul ini za njegovu vel ičinu

Ovi umni giganti bdquoBlečl i parkardquo omogući l i su Britani j i da dešifruje strogo poverl j ivumašinu koju je koristio Hitler da diriguje drugim svetskim ratom a to ni je bi labdquoENIGMArdquo nego nešto mnogo tajni je i značajni je Vel ika je verovatnoća da nistečul i ni za ovo Neki kažu da je to bio Hitlerov Blekberi (BlackBerry)

Izgubljeni heroji bdquoBlečli parkardquo

1 engl Electronic Numerical Integrator And Computer - prvidigitalni elektronski računar

Internet mreže i komunikacije

41

Broj 33

1939 godine bdquoBlečl i parkrdquo je postao ratni štab MI6 (britanske vojne obaveštajneslužbe) Do danas je procurelo u javnost i dokumentovano brojnim fi lmskimdokumentarcima samo da je tu Alan Tjuring uspeo da dešifruje nemačkumornaričku šifru poznatu kao bdquoENIGMArdquo i uvel iko doprineo pobedi saveznika a to jesamo deo priče koj i je ispričan

U Blečl i parku su bi la tri heroja AlanTjuring Bi l Tat i Tomi Flauers Od nj ihtroj ice jedino Alanu Tjuringu je priznat deozasluga za pobedu saveznika u Drugomsvetskom ratu Pregledom otkrivenihpodataka danas možemo da tvrdimo daje bdquoENIGMArdquo već sa početka drugogsvetskog rata bi la zastarela tehnologi ja Zbog toga je bi lo lako skinuti veo tajne sa

ovog uspeha heroja Blečl i parka

Izgubljeni heroji bdquoBlečli parkardquo

42

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Bi l Tat koj i je dešifrovao bdquoTANI sistemrdquo (TANI) i Tomi Flauers koj i je samo svojomintuici jom i znanjem sklopio prvi računar na svetu (bdquoKOLOSrdquo) u svrhu bržegdolaženja do informaci ja razbi jenog koda bdquoTANIrdquo tako da zastarelost šifrata budesvedena na minimum - radi l i su na novoj generaci j i mašina za šifrovanje Ovatehnologi ja je bi la prepoznata kao tehnologi ja budućnosti pa i danas iznadinformaci ja o tim tehnologi jama stoj i natpis bdquovrhunska tajnardquo (eng Top Secret) Upravo ovaj veo tajni oko šifrata bdquoTANIrdquo i prvog računara je rezultirao iskrivl jenjuistori je informatike

Za uspehe u prvim godinama rata je zaista zaslužno razbi janje bdquoENIGMArdquo šifrata ito ni je sporno al i krajem 1941 godine u etru planete se začuo novi zvuk To je bi lanova mašina za šifrovanje ni je bi la zasnovana na bdquoMorzeurdquo već je radi la naprincipu teleprintera

Jedna od kl jučnih ideja Hitlerovog ratovanja je bi la u vel ikoj mobi lnosti i brzomdelovanju trupa na terenu a da bi se to izvelo komunikaci ja je isto tako morala dabude u najmanju ruku putem radio signala

Razl ika je ogromna Razl ika je u kol ičini podataka koj i može da se prenese ovimbdquotajnimrdquo putem Prvi svetski rat je bio zaniml j iv jer su se šifrovane poruke baziralena rečima dok je Drugi u potpunosti otvorio vrata današnjoj kriptografi j i a to jematematika

Originalan nemački kocircdni naziv za ovaj šifrat bio je bdquoLORENCrdquo Britanska

Internet mreže i komunikacije

43

Broj 33

obaveštajna služba mu je dala nadimak bdquoTANIrdquo Čak ni dan danas ni je baš poznatokako je sve nastalo al i pouzdano se zna da je tajnu mašinu Hitler nazvaobdquoGehajmšrajberrdquo (nem Geheimschreiber) - mašina tajni

U srž i tehnologi ju šifrovanja bdquoLORENCrdquo šifrata nećemo ulaziti u ovom članku al iverujte nam na reč - ni je bi la jednostavna Može se pretpostaviti da je inspiraci jaŠenonovog 2 rada slučajnosti bi la upravo ova tehnologi ja iz Drugog svetskog rata

Ono čime se Treći rajh vodio je bdquosigurnardquo šifrovana veza koju niko ni je smeo dadešifruje Prenošenje šifrovanih poruka pomoću radio signala je dalo obaveštajnimslužbama mogućnost presretanja poruka poslatih radio talasima Da l i se ovo idanas dešava Imamo l i sigurnost u našim šifrovanim podacima današnj ice

Ono što je usledi lo nakon proboja ovog bdquoneuhvatl j ivogrdquo šifrata je upravo ono što jeprincip današnj ice kao neka vrsta protokola koj i mora da se ispoštuje uperfektnom šifarskom Šenonovom sistemu

1 NIKADA NIKADA NE KORISTITI DVA PUTA ISTI KLJUČ ZA ŠIFROVANJE2 NIKADA NIKADA KLJUČ NE SME DA SE ŠALJE ISTIM KOMUNIKACIONIM KANALOM

KAO PORUKA3 NIKADA NIKADA KLJUČ NE SME DA BUDE MANJ I NEGO ŠTO JE PORUKA (engl

2 Klod Elvud Šenon (eng Claude Elwood Shannon) (1916-2001) - Američkinaučnik i inženjer

Izgubljeni heroji bdquoBlečli parkardquo

44

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

one time pad) 4 NIKADA NIKADA NE SMEMO DA SAKRIVAMO SISTEM ŠIFROVANJA SVE MORA

DA JE OTVORENOG KOcircDA

Najveći propusti kriptologi je koj i su uočeni baš u Drugom svetskom ratu jesupokušaj sakrivanja sredstava koj im se generiše tajna poruka i nepoznavanjeŠenonovih krajnj ih granica informaci ja Kada kažemo bdquosredstvo i sakrivanjerdquomisl imo na algoritme Postavl ja se pitanje zašto je danas kriptologi ja sigurni ja negočetrdesetih i pedesetih godina prošlog veka

Danas uprkos tome što su algoritmi za kriptografi ju otvorenog kocircda tajnostinformaci ja je na višem nivou nego što je to bi lo dok je algoritam bio strogopoverl j iv Tajnost tajnih podataka se ne zasniva na tajnosti a lgoritama koj i generišutaj isti bdquotajni izlazrdquo (eng cipher text) nego u nemogućnosti matematičke inverznefunkci je koja bi šifrovan tekst otvori la Ovde se vidi da je svrha strukture otvorenogkocircda kao jednog od značajnih delova današnje kriptologi je ona koja ga činisigurnim i svima dostupnim

Sada kada se sa ove distance osvrnemo na Drugi svetski rat možemo videti kol ikosmo bi l i bl izu apokal ipse Naime Albert Ajnštajn je već 1944 godine imao urukama recept za nuklearnu bombu Šenon je mogao već u to vreme da nampredoči 100 siguran šifrat (tzv Hitlerovu super šifru) a l i ipak sreća nas jeposluži la da čovečanstvo tada ni je bi lo spremno da upotrebi svu raspoloživutehnologi ju

Albert Ajnštajn bdquoČetvrti svetski rat će se voditi tol jagamardquo

Zaboravl jeni heroj i Blečl i parka iako su odigral i važnu ulogu u pobedi saveznika usvetskom ratu postal i su žrtve bdquotop secretrdquo doktrine potpuno su zaboravl jeni inestal i su iz istori je

Zakl jučak ovog članka je da je ideologi ja otvorenog kocircda sasvim sigurno tu da nampomogne i da otvori vrata ka većoj sigurnosti novim idejama i kval itetu sameinfrastrukture sistema koju svi zajedno razvi jamo

Internet mreže i komunikacije

45

Broj 33

Autor Nikola Hardi

NabrajanjaBez brojeva

Za nabrajanje pojmova u Bimeru (eng Beamer) koristi se okruženje itemize aunutar tog okruženja možemo da dodajemo nove stavke pomoću item Primerizgleda ovako

beginitemizeitem Stavka Aitem Stavka Bitem Stavka C

enditemize

Sa brojevima

Postoje situaci je kada uz nabrajanje treba da stoje i redni brojevi - za to se koristienumerate okruženje a nove stavke se takođe dodaju pomoću item

beginenumerateitem Redni broj 1item Redni broj 2item Redni broj 3

endenumerate

prezentaci ja

Beamer (4 deo)

Sam svoj majstor

46

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

DefinicijeTreća situaci ja je nabrajanje parova termin - definici ja U tom slučaju se koristiokruženje description Već možete da pretpostavite kako se dodaju nove stavke

Primer

begindescriptionitem[Pojam A] Definicija izmišljenog pojma Aitem[Pojam B] Definicija izmišljenog pojma Bitem[Pojam C] Definicija izmišljenog pojma C

enddescription

Ostala podešavanja i zanimljivostiSva prethodna okruženja mogu da budu ugneždena jedno unutar drugog dotrećeg nivoa Treba biti pažl j iv jer sla jdovi vrlo lako mogu da postanu nečitl j ivi Osim toga moguće je izabrati i format oznake i l i rednih brojeva - na primer ovako

beginenumerate[I]beginenumarate[a)]

Takođe moguće je upravl jati pojavl j ivanjem pojedinih stavki na slajdovima Drugimrečima možemo da odredimo da se nabrajanja postepeno otkrivaju tako što ćemouz stavku dodati lt1-gt odnosno broj od kojeg slajda žel imo da se ta stavkapojavl ju je Tada će jedno nabrajanje biti bdquorazvučenordquo na više slajdovaJednostavni ja mogućnost je da u zaglavl je okruženja dodamo +- što znači dažel imo da se svakim slajdom otkriva po jedna nova stavka iz nabrajanja Znak bdquo-rdquo uoba primera znači da žel imo da se stavka pojavi na sledećem slajdu i da ostane

Sam svoj majstor

47

Broj 33

prisutna Možemo da izostavimo znak bdquo-rdquo i tada će stavka biti prisutna samo najednom slajdu i l i da napišemo raspon slajdova u koj ima žel imo da ta stavka budeprisutna

Rad sa kolonama i blokovimaDo sada su svi primeri podrazumeval i da je sadržaj napisan preko cele širineslajda al i Bimer (eng Beamer) ima i jednostavne mehanizme za razmeštanjesadržaja po kolonama Za rad sa kolonama se koristi okruženje columns unutarkojeg možemo da dodajemo nove kolone pomoću columnširina Sadržaj jemoguće potom pisati i van okruženja sa kolonama

U paru sa kolonama često se sreće i okruženje block koje se parametrizujenaslovom Primerom su i lustrovani i okruženje column i okruženje block

beginframebegincolumns

column05textwidthbeginblockNaslov levog blokaSadržaj u prvoj (levoj) koloni endblock

column05textwidthbeginblockNaslov desnog blokaSadržaj u drugoj (desnoj) koloni

endblockendcolumns

beginblockVan kolona

Beamer

48

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Tekst koji se nalazi ispod kolonaendblock

endframe

TabeleIako se u radu sa prezentaci jama sadržaj najčešće može uredno rasporeditipomoću kolona i nabrajanja nekada to ni je dovol jno jer su tabele pravi formatBimer podržava standardno Lateh (LaTeX) okruženje za rad sa tabelamaOkruženje za rad sa tabelama se zove tabular Pri kreiranju nove tabele moguće jepodesiti koje kolone će biti razdvojene l ini jom i da l i će nj ihov sadržaj biti centrirani l i uz levu i l i uz desnu ivicu Dodavanje novog reda se jednostavno radidodavanjem hline Lateh pruža zaista jako fleksibi lan rad sa tabelama i sigurno ćedoskočiti svim mogućim i nemogućim zamisl ima Potražite bi lo koje Lateh uputstvoza rad sa tabelama i radiće i sa Bimerom

beginframebegintabular | c | c | c | c |

hlineamp Ponedeljak amp Utorak amp Sreda hline

1 amp 16 amp 32 amp 64 hline2 amp 16 amp 128 amp 1024 hline3 amp 16 amp 512 amp 4096 hline

endtabularendframe

Sam svoj majstor

49

Broj 33

Beamer

Teoreme i istaknut tekstU nastavi su česta izlaganja teorema nj ihovih dokaza i primera U Bimer jeugrađena podrška za elegantno predstavl janje ove trojke Mehanizam takođepodržava postepeno otkrivanje sadržaja sla jda tako da slušaocima ne bude odmahotkriven dokaz teoreme Mehanizam za postepeno otkrivanje se kao i kodnabrajanja postiže pomoću bdquolt1-gtrdquo konstrukci je Evo kako to izgleda

beginframeframetitlePrimer teoreme

begintheoremlt1-gt Teorema kaže da su beamer prezentacijezanimljive

endtheorem

beginexamplelt2-gt Ovaj kod kreira slajd beamer prezentacijeendexample

beginprooflt3-gt Čestitamo stigli ste do kraja serijala o pravljenju beamer prezentacija

endproofendframe

50

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Za krajOvim člankom završavamo seri ja l o Bimeru Nadamo se da smo uspel i da vaszainteresujemo za ovu vrlo korisnu klasu Lateha Trudi l i smo se da vamprezentujemo najvažni je delove Bimera koje ćete najčešće koristiti pri l ikomkreiranja svoj ih prezentaci ja

Napominjemo još jednom da je Bimer samo jedna od klasa Lateha što znači da i zaBimer važi sve ono što ste već mogl i da pročitate u ovom časopisu kad smo pisal iseri ja l bdquoUvod u LaTeXrdquo (LiBRE brojevi 17 do 21) Štaviše ovaj seri ja l o Bimeru jebio nastavak upravo tog seri ja la U ovom seri ja lu nismo pisal i o samomformatiranju teksta u prezentaci jama jer se podrazumeva da važe ista pravi la kao iu Latehu a o tome smo pisal i u prethodnom seri ja lu

Hvala vam što ste prati l i ovaj seri ja l i žel imo vam puno uspeha u kreiranju Bimerprezentaci ja

Sam svoj majstor

51

Broj 33

Autor Nenad Marjanović

Kada smo se upoznal i sa podešavanj ima sistema i umrežavanjem vreme je za našprvi Biglbon Blek (BBB - eng BeagleBone Black) projekat Svakom od nas će ovajizazov dati razl ičite ideje a jedna od nj ih može biti i zaštita privatnosti internetkorisnika Nažalost u Srbi j i ne postoj i ni jedan izlazni tor server (eng node) i to jepomalo tužna sl ika s obzirom da govorimo o populaci j i od sedam mil ionastanovnika Al i ovu sl iku možemo promeniti udruženim snagama i za početakkreiranjem Tor transfer i izlaznog servera U ovde prikazanom grafikonufokusiraćemo se na bdquoRauter Brdquo tačku odnosno transfer server konfiguraci ju

BeagleBone Black Rev C

Vodič od prvog dana (3 deo) ndashBeagleBone Black kao Tor relej

Hardver

52

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Tor predstavl ja mrežu servera koj i se povezuju radi bol je enkripci je podataka izaštite IP adrese korisnika Naš ci l j je da danas postanemo deo ovog predivnogprojekta i da se nađemo na svetskoj karti Tor servera

Brzina interneta i zakonske regulativePotrebno je imati na umu nekol iko bitnih stvari

1 Naš server = naša odgovornost2 Obavezno naznačite da ste vi administrator a ne korisnik istog servera3 Da posedujete internet brzinu od 2 Mbs

Ako ispunjavamo tri navedena pravi la i odgovornosti možemo se posvetitiadministrativnim poslovima

Instalacija i podešavanjaU ovom primeru koristimo Debi jan Vizi (eng Wheezy) odnosno Debi jan 7 verzi juna našem BBB uređaju Vi možete testirati i druge Linuks platforme Prvododajemo izvornu bibl ioteku u etcaptsourceslist faj l pokretanjem sledećekomande u terminalu

echo deb httpdebtorprojectorgtorprojectorg wheezy main gt etcaptsourceslistdtorlist

Zatim dodajemo izvorni kl juč vršimo ažuriranje sistema i instal iramo tor i tor-arm(Tor monitoring sistem)

gpg --keyserver keysgnupgnet --recv 886DDD89gpg --export A3C4F0F979CAA22CDBA8F512EE8CBC9E886DDD89 | sudo apt-keyadd -apt-get updateapt-get install debtorprojectorg-keyring -yapt-get install tor tor-arm egrep screen -y

Ovim smo uspešno završi l i instalaci ju Tor servera i sistema za monitoring odnosnonadgledanja našeg Tor servera Sledećom komandom radimo na podešavanj imaTor servera koja se nalaze u etctortorrc faj lu Obratite pažnju i izvršite potrebne

Hardver

53

Broj 33

izmenu u pol j ima IP adresa (eng Address) nadimka (eng Nickname) i kontaktpodataka (eng ContactInfo) pre pokretanja ove komande Kopiramo i pokrećemokomandu u celosti u terminalu

egrep -v ^(|$) etctortorrcORPort 443Address 19216811Nickname LibreTorRelayRelayBandwidthRate 100 KBRelayBandwidthBurst 120 KBContactInfo ltvi at gmail dot comgt irPort 8080DirPortFrontPage etctortorhtmlExitPolicy reject

Detal je o svim vrednostima nećemo iznositi u ovom broju LiBRE časopisa al ićemo o nj ima pisati u sledećem u kome ćemo pričati o zaštiti Tor servera imogućnosti podešavanja određenih izlaznih pravi la (eng ExitPolicy)

Nakon ovoga možemo primetiti da se u folderu etctor ne nalazi torhtml faj l Ovaj faj l ni je od vel ikog značaja i možete ga l ično napraviti i l i preuzeti jednu kopi ju- naprimer sa sledeće lokaci je

cp usrsharedoctortorhtml etctortorhtml

Opcije i Tor Arm monitoringDa bismo ispravno koristi l i Tor Arm potrebno je urediti još jednom etctortorrcfaj l i restartovati servis

echo -e ldquoDisableDebuggerAttachment 0n AvoidDiskWritesrdquo gtgt etctortorrcsudo service tor reload

Ukol iko žel ite koristiti Tor Arm za nadgledanje aktivnosti na serveru pokreniteprogram screen kl iknite na bdquoEnterrdquo i kucajte sudo -u debian-tor arm Naekranu ćete imati sl ičan prikaz

BeagleBone Black

54

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Hardver

55

Broj 33

Da bismo napusti l i screen program koristimo Ctrl + a + d i na taj način kada sesledeći put pri javimo na server kucamo samo screen -r u terminalu - i naći ćemose ponovo na čuvenom Tor Arm monitoring ekranu

Nakon svake promene konfiguracionih faj lova ako slučajno nismo nešto podesi l ikako treba restartujemo servise

U sledećem broju časopisa govorićemo o minimalnim podešavanj ima ikonfigurisanju izlaznog Tor servera (eng Tor Exit Node) opci jama sigurnosti isl ičnim detal j ima u vezi sa našim prvim projektom Do čitanja u sledećem broju

BeagleBone Black

LUGoNS BarCamp 4subota 7 mart 2015 godine

Četvrti LUGoNS-ov Barkemp (BarCamp) održaće se u Novom Sadu usubotu 7 marta 2015 godine na Fakultetu tehničkih nauka sa početkomu 12 časova

Ulaz je slobodan

Poziv za predaju radovaLUGoNS poziva sve zainteresovane da pošal ju svoje radove (predavanjaprezentaci je radionice i diskusi je) do 28 februara 2015 godine

Oblasti iz koj ih možete da pri javite vaše radove su

bull Slobodan softverbull Zaniml j iv hardverbull Hakerski zakonibull Sigurnosne noćne morebull Anonimnost i privatnost na internetubull Duboki veb (eng Deep Web)bull Soci ja lne mrežebull Soci ja lni inženjeringbull Hakovanje mobi lnih uređajabull Internet u oblaku (eng Clouds) ndash hakovanje razbi janje i neočekivano korišćenjebull DPI (eng deep packet inspection)bull Mreža i mrežna neutralnost ndash vlasništvo cenzura nadmudrivanje i pol itika bdquodefaktordquo standarda

bull Programiranje i programski jezici

Nemojte se ustručavati i slobodno nam se javite ako imate rad na gore navedenei l i sl ične teme koj i smatrate interesantnim

Stranica za predaju radova nalazi se na https events lugonsorgp=1658

Page 41: LiBRE 33 Lat

41

Broj 33

1939 godine bdquoBlečl i parkrdquo je postao ratni štab MI6 (britanske vojne obaveštajneslužbe) Do danas je procurelo u javnost i dokumentovano brojnim fi lmskimdokumentarcima samo da je tu Alan Tjuring uspeo da dešifruje nemačkumornaričku šifru poznatu kao bdquoENIGMArdquo i uvel iko doprineo pobedi saveznika a to jesamo deo priče koj i je ispričan

U Blečl i parku su bi la tri heroja AlanTjuring Bi l Tat i Tomi Flauers Od nj ihtroj ice jedino Alanu Tjuringu je priznat deozasluga za pobedu saveznika u Drugomsvetskom ratu Pregledom otkrivenihpodataka danas možemo da tvrdimo daje bdquoENIGMArdquo već sa početka drugogsvetskog rata bi la zastarela tehnologi ja Zbog toga je bi lo lako skinuti veo tajne sa

ovog uspeha heroja Blečl i parka

Izgubljeni heroji bdquoBlečli parkardquo

42

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Bi l Tat koj i je dešifrovao bdquoTANI sistemrdquo (TANI) i Tomi Flauers koj i je samo svojomintuici jom i znanjem sklopio prvi računar na svetu (bdquoKOLOSrdquo) u svrhu bržegdolaženja do informaci ja razbi jenog koda bdquoTANIrdquo tako da zastarelost šifrata budesvedena na minimum - radi l i su na novoj generaci j i mašina za šifrovanje Ovatehnologi ja je bi la prepoznata kao tehnologi ja budućnosti pa i danas iznadinformaci ja o tim tehnologi jama stoj i natpis bdquovrhunska tajnardquo (eng Top Secret) Upravo ovaj veo tajni oko šifrata bdquoTANIrdquo i prvog računara je rezultirao iskrivl jenjuistori je informatike

Za uspehe u prvim godinama rata je zaista zaslužno razbi janje bdquoENIGMArdquo šifrata ito ni je sporno al i krajem 1941 godine u etru planete se začuo novi zvuk To je bi lanova mašina za šifrovanje ni je bi la zasnovana na bdquoMorzeurdquo već je radi la naprincipu teleprintera

Jedna od kl jučnih ideja Hitlerovog ratovanja je bi la u vel ikoj mobi lnosti i brzomdelovanju trupa na terenu a da bi se to izvelo komunikaci ja je isto tako morala dabude u najmanju ruku putem radio signala

Razl ika je ogromna Razl ika je u kol ičini podataka koj i može da se prenese ovimbdquotajnimrdquo putem Prvi svetski rat je bio zaniml j iv jer su se šifrovane poruke baziralena rečima dok je Drugi u potpunosti otvorio vrata današnjoj kriptografi j i a to jematematika

Originalan nemački kocircdni naziv za ovaj šifrat bio je bdquoLORENCrdquo Britanska

Internet mreže i komunikacije

43

Broj 33

obaveštajna služba mu je dala nadimak bdquoTANIrdquo Čak ni dan danas ni je baš poznatokako je sve nastalo al i pouzdano se zna da je tajnu mašinu Hitler nazvaobdquoGehajmšrajberrdquo (nem Geheimschreiber) - mašina tajni

U srž i tehnologi ju šifrovanja bdquoLORENCrdquo šifrata nećemo ulaziti u ovom članku al iverujte nam na reč - ni je bi la jednostavna Može se pretpostaviti da je inspiraci jaŠenonovog 2 rada slučajnosti bi la upravo ova tehnologi ja iz Drugog svetskog rata

Ono čime se Treći rajh vodio je bdquosigurnardquo šifrovana veza koju niko ni je smeo dadešifruje Prenošenje šifrovanih poruka pomoću radio signala je dalo obaveštajnimslužbama mogućnost presretanja poruka poslatih radio talasima Da l i se ovo idanas dešava Imamo l i sigurnost u našim šifrovanim podacima današnj ice

Ono što je usledi lo nakon proboja ovog bdquoneuhvatl j ivogrdquo šifrata je upravo ono što jeprincip današnj ice kao neka vrsta protokola koj i mora da se ispoštuje uperfektnom šifarskom Šenonovom sistemu

1 NIKADA NIKADA NE KORISTITI DVA PUTA ISTI KLJUČ ZA ŠIFROVANJE2 NIKADA NIKADA KLJUČ NE SME DA SE ŠALJE ISTIM KOMUNIKACIONIM KANALOM

KAO PORUKA3 NIKADA NIKADA KLJUČ NE SME DA BUDE MANJ I NEGO ŠTO JE PORUKA (engl

2 Klod Elvud Šenon (eng Claude Elwood Shannon) (1916-2001) - Američkinaučnik i inženjer

Izgubljeni heroji bdquoBlečli parkardquo

44

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

one time pad) 4 NIKADA NIKADA NE SMEMO DA SAKRIVAMO SISTEM ŠIFROVANJA SVE MORA

DA JE OTVORENOG KOcircDA

Najveći propusti kriptologi je koj i su uočeni baš u Drugom svetskom ratu jesupokušaj sakrivanja sredstava koj im se generiše tajna poruka i nepoznavanjeŠenonovih krajnj ih granica informaci ja Kada kažemo bdquosredstvo i sakrivanjerdquomisl imo na algoritme Postavl ja se pitanje zašto je danas kriptologi ja sigurni ja negočetrdesetih i pedesetih godina prošlog veka

Danas uprkos tome što su algoritmi za kriptografi ju otvorenog kocircda tajnostinformaci ja je na višem nivou nego što je to bi lo dok je algoritam bio strogopoverl j iv Tajnost tajnih podataka se ne zasniva na tajnosti a lgoritama koj i generišutaj isti bdquotajni izlazrdquo (eng cipher text) nego u nemogućnosti matematičke inverznefunkci je koja bi šifrovan tekst otvori la Ovde se vidi da je svrha strukture otvorenogkocircda kao jednog od značajnih delova današnje kriptologi je ona koja ga činisigurnim i svima dostupnim

Sada kada se sa ove distance osvrnemo na Drugi svetski rat možemo videti kol ikosmo bi l i bl izu apokal ipse Naime Albert Ajnštajn je već 1944 godine imao urukama recept za nuklearnu bombu Šenon je mogao već u to vreme da nampredoči 100 siguran šifrat (tzv Hitlerovu super šifru) a l i ipak sreća nas jeposluži la da čovečanstvo tada ni je bi lo spremno da upotrebi svu raspoloživutehnologi ju

Albert Ajnštajn bdquoČetvrti svetski rat će se voditi tol jagamardquo

Zaboravl jeni heroj i Blečl i parka iako su odigral i važnu ulogu u pobedi saveznika usvetskom ratu postal i su žrtve bdquotop secretrdquo doktrine potpuno su zaboravl jeni inestal i su iz istori je

Zakl jučak ovog članka je da je ideologi ja otvorenog kocircda sasvim sigurno tu da nampomogne i da otvori vrata ka većoj sigurnosti novim idejama i kval itetu sameinfrastrukture sistema koju svi zajedno razvi jamo

Internet mreže i komunikacije

45

Broj 33

Autor Nikola Hardi

NabrajanjaBez brojeva

Za nabrajanje pojmova u Bimeru (eng Beamer) koristi se okruženje itemize aunutar tog okruženja možemo da dodajemo nove stavke pomoću item Primerizgleda ovako

beginitemizeitem Stavka Aitem Stavka Bitem Stavka C

enditemize

Sa brojevima

Postoje situaci je kada uz nabrajanje treba da stoje i redni brojevi - za to se koristienumerate okruženje a nove stavke se takođe dodaju pomoću item

beginenumerateitem Redni broj 1item Redni broj 2item Redni broj 3

endenumerate

prezentaci ja

Beamer (4 deo)

Sam svoj majstor

46

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

DefinicijeTreća situaci ja je nabrajanje parova termin - definici ja U tom slučaju se koristiokruženje description Već možete da pretpostavite kako se dodaju nove stavke

Primer

begindescriptionitem[Pojam A] Definicija izmišljenog pojma Aitem[Pojam B] Definicija izmišljenog pojma Bitem[Pojam C] Definicija izmišljenog pojma C

enddescription

Ostala podešavanja i zanimljivostiSva prethodna okruženja mogu da budu ugneždena jedno unutar drugog dotrećeg nivoa Treba biti pažl j iv jer sla jdovi vrlo lako mogu da postanu nečitl j ivi Osim toga moguće je izabrati i format oznake i l i rednih brojeva - na primer ovako

beginenumerate[I]beginenumarate[a)]

Takođe moguće je upravl jati pojavl j ivanjem pojedinih stavki na slajdovima Drugimrečima možemo da odredimo da se nabrajanja postepeno otkrivaju tako što ćemouz stavku dodati lt1-gt odnosno broj od kojeg slajda žel imo da se ta stavkapojavl ju je Tada će jedno nabrajanje biti bdquorazvučenordquo na više slajdovaJednostavni ja mogućnost je da u zaglavl je okruženja dodamo +- što znači dažel imo da se svakim slajdom otkriva po jedna nova stavka iz nabrajanja Znak bdquo-rdquo uoba primera znači da žel imo da se stavka pojavi na sledećem slajdu i da ostane

Sam svoj majstor

47

Broj 33

prisutna Možemo da izostavimo znak bdquo-rdquo i tada će stavka biti prisutna samo najednom slajdu i l i da napišemo raspon slajdova u koj ima žel imo da ta stavka budeprisutna

Rad sa kolonama i blokovimaDo sada su svi primeri podrazumeval i da je sadržaj napisan preko cele širineslajda al i Bimer (eng Beamer) ima i jednostavne mehanizme za razmeštanjesadržaja po kolonama Za rad sa kolonama se koristi okruženje columns unutarkojeg možemo da dodajemo nove kolone pomoću columnširina Sadržaj jemoguće potom pisati i van okruženja sa kolonama

U paru sa kolonama često se sreće i okruženje block koje se parametrizujenaslovom Primerom su i lustrovani i okruženje column i okruženje block

beginframebegincolumns

column05textwidthbeginblockNaslov levog blokaSadržaj u prvoj (levoj) koloni endblock

column05textwidthbeginblockNaslov desnog blokaSadržaj u drugoj (desnoj) koloni

endblockendcolumns

beginblockVan kolona

Beamer

48

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Tekst koji se nalazi ispod kolonaendblock

endframe

TabeleIako se u radu sa prezentaci jama sadržaj najčešće može uredno rasporeditipomoću kolona i nabrajanja nekada to ni je dovol jno jer su tabele pravi formatBimer podržava standardno Lateh (LaTeX) okruženje za rad sa tabelamaOkruženje za rad sa tabelama se zove tabular Pri kreiranju nove tabele moguće jepodesiti koje kolone će biti razdvojene l ini jom i da l i će nj ihov sadržaj biti centrirani l i uz levu i l i uz desnu ivicu Dodavanje novog reda se jednostavno radidodavanjem hline Lateh pruža zaista jako fleksibi lan rad sa tabelama i sigurno ćedoskočiti svim mogućim i nemogućim zamisl ima Potražite bi lo koje Lateh uputstvoza rad sa tabelama i radiće i sa Bimerom

beginframebegintabular | c | c | c | c |

hlineamp Ponedeljak amp Utorak amp Sreda hline

1 amp 16 amp 32 amp 64 hline2 amp 16 amp 128 amp 1024 hline3 amp 16 amp 512 amp 4096 hline

endtabularendframe

Sam svoj majstor

49

Broj 33

Beamer

Teoreme i istaknut tekstU nastavi su česta izlaganja teorema nj ihovih dokaza i primera U Bimer jeugrađena podrška za elegantno predstavl janje ove trojke Mehanizam takođepodržava postepeno otkrivanje sadržaja sla jda tako da slušaocima ne bude odmahotkriven dokaz teoreme Mehanizam za postepeno otkrivanje se kao i kodnabrajanja postiže pomoću bdquolt1-gtrdquo konstrukci je Evo kako to izgleda

beginframeframetitlePrimer teoreme

begintheoremlt1-gt Teorema kaže da su beamer prezentacijezanimljive

endtheorem

beginexamplelt2-gt Ovaj kod kreira slajd beamer prezentacijeendexample

beginprooflt3-gt Čestitamo stigli ste do kraja serijala o pravljenju beamer prezentacija

endproofendframe

50

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Za krajOvim člankom završavamo seri ja l o Bimeru Nadamo se da smo uspel i da vaszainteresujemo za ovu vrlo korisnu klasu Lateha Trudi l i smo se da vamprezentujemo najvažni je delove Bimera koje ćete najčešće koristiti pri l ikomkreiranja svoj ih prezentaci ja

Napominjemo još jednom da je Bimer samo jedna od klasa Lateha što znači da i zaBimer važi sve ono što ste već mogl i da pročitate u ovom časopisu kad smo pisal iseri ja l bdquoUvod u LaTeXrdquo (LiBRE brojevi 17 do 21) Štaviše ovaj seri ja l o Bimeru jebio nastavak upravo tog seri ja la U ovom seri ja lu nismo pisal i o samomformatiranju teksta u prezentaci jama jer se podrazumeva da važe ista pravi la kao iu Latehu a o tome smo pisal i u prethodnom seri ja lu

Hvala vam što ste prati l i ovaj seri ja l i žel imo vam puno uspeha u kreiranju Bimerprezentaci ja

Sam svoj majstor

51

Broj 33

Autor Nenad Marjanović

Kada smo se upoznal i sa podešavanj ima sistema i umrežavanjem vreme je za našprvi Biglbon Blek (BBB - eng BeagleBone Black) projekat Svakom od nas će ovajizazov dati razl ičite ideje a jedna od nj ih može biti i zaštita privatnosti internetkorisnika Nažalost u Srbi j i ne postoj i ni jedan izlazni tor server (eng node) i to jepomalo tužna sl ika s obzirom da govorimo o populaci j i od sedam mil ionastanovnika Al i ovu sl iku možemo promeniti udruženim snagama i za početakkreiranjem Tor transfer i izlaznog servera U ovde prikazanom grafikonufokusiraćemo se na bdquoRauter Brdquo tačku odnosno transfer server konfiguraci ju

BeagleBone Black Rev C

Vodič od prvog dana (3 deo) ndashBeagleBone Black kao Tor relej

Hardver

52

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Tor predstavl ja mrežu servera koj i se povezuju radi bol je enkripci je podataka izaštite IP adrese korisnika Naš ci l j je da danas postanemo deo ovog predivnogprojekta i da se nađemo na svetskoj karti Tor servera

Brzina interneta i zakonske regulativePotrebno je imati na umu nekol iko bitnih stvari

1 Naš server = naša odgovornost2 Obavezno naznačite da ste vi administrator a ne korisnik istog servera3 Da posedujete internet brzinu od 2 Mbs

Ako ispunjavamo tri navedena pravi la i odgovornosti možemo se posvetitiadministrativnim poslovima

Instalacija i podešavanjaU ovom primeru koristimo Debi jan Vizi (eng Wheezy) odnosno Debi jan 7 verzi juna našem BBB uređaju Vi možete testirati i druge Linuks platforme Prvododajemo izvornu bibl ioteku u etcaptsourceslist faj l pokretanjem sledećekomande u terminalu

echo deb httpdebtorprojectorgtorprojectorg wheezy main gt etcaptsourceslistdtorlist

Zatim dodajemo izvorni kl juč vršimo ažuriranje sistema i instal iramo tor i tor-arm(Tor monitoring sistem)

gpg --keyserver keysgnupgnet --recv 886DDD89gpg --export A3C4F0F979CAA22CDBA8F512EE8CBC9E886DDD89 | sudo apt-keyadd -apt-get updateapt-get install debtorprojectorg-keyring -yapt-get install tor tor-arm egrep screen -y

Ovim smo uspešno završi l i instalaci ju Tor servera i sistema za monitoring odnosnonadgledanja našeg Tor servera Sledećom komandom radimo na podešavanj imaTor servera koja se nalaze u etctortorrc faj lu Obratite pažnju i izvršite potrebne

Hardver

53

Broj 33

izmenu u pol j ima IP adresa (eng Address) nadimka (eng Nickname) i kontaktpodataka (eng ContactInfo) pre pokretanja ove komande Kopiramo i pokrećemokomandu u celosti u terminalu

egrep -v ^(|$) etctortorrcORPort 443Address 19216811Nickname LibreTorRelayRelayBandwidthRate 100 KBRelayBandwidthBurst 120 KBContactInfo ltvi at gmail dot comgt irPort 8080DirPortFrontPage etctortorhtmlExitPolicy reject

Detal je o svim vrednostima nećemo iznositi u ovom broju LiBRE časopisa al ićemo o nj ima pisati u sledećem u kome ćemo pričati o zaštiti Tor servera imogućnosti podešavanja određenih izlaznih pravi la (eng ExitPolicy)

Nakon ovoga možemo primetiti da se u folderu etctor ne nalazi torhtml faj l Ovaj faj l ni je od vel ikog značaja i možete ga l ično napraviti i l i preuzeti jednu kopi ju- naprimer sa sledeće lokaci je

cp usrsharedoctortorhtml etctortorhtml

Opcije i Tor Arm monitoringDa bismo ispravno koristi l i Tor Arm potrebno je urediti još jednom etctortorrcfaj l i restartovati servis

echo -e ldquoDisableDebuggerAttachment 0n AvoidDiskWritesrdquo gtgt etctortorrcsudo service tor reload

Ukol iko žel ite koristiti Tor Arm za nadgledanje aktivnosti na serveru pokreniteprogram screen kl iknite na bdquoEnterrdquo i kucajte sudo -u debian-tor arm Naekranu ćete imati sl ičan prikaz

BeagleBone Black

54

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Hardver

55

Broj 33

Da bismo napusti l i screen program koristimo Ctrl + a + d i na taj način kada sesledeći put pri javimo na server kucamo samo screen -r u terminalu - i naći ćemose ponovo na čuvenom Tor Arm monitoring ekranu

Nakon svake promene konfiguracionih faj lova ako slučajno nismo nešto podesi l ikako treba restartujemo servise

U sledećem broju časopisa govorićemo o minimalnim podešavanj ima ikonfigurisanju izlaznog Tor servera (eng Tor Exit Node) opci jama sigurnosti isl ičnim detal j ima u vezi sa našim prvim projektom Do čitanja u sledećem broju

BeagleBone Black

LUGoNS BarCamp 4subota 7 mart 2015 godine

Četvrti LUGoNS-ov Barkemp (BarCamp) održaće se u Novom Sadu usubotu 7 marta 2015 godine na Fakultetu tehničkih nauka sa početkomu 12 časova

Ulaz je slobodan

Poziv za predaju radovaLUGoNS poziva sve zainteresovane da pošal ju svoje radove (predavanjaprezentaci je radionice i diskusi je) do 28 februara 2015 godine

Oblasti iz koj ih možete da pri javite vaše radove su

bull Slobodan softverbull Zaniml j iv hardverbull Hakerski zakonibull Sigurnosne noćne morebull Anonimnost i privatnost na internetubull Duboki veb (eng Deep Web)bull Soci ja lne mrežebull Soci ja lni inženjeringbull Hakovanje mobi lnih uređajabull Internet u oblaku (eng Clouds) ndash hakovanje razbi janje i neočekivano korišćenjebull DPI (eng deep packet inspection)bull Mreža i mrežna neutralnost ndash vlasništvo cenzura nadmudrivanje i pol itika bdquodefaktordquo standarda

bull Programiranje i programski jezici

Nemojte se ustručavati i slobodno nam se javite ako imate rad na gore navedenei l i sl ične teme koj i smatrate interesantnim

Stranica za predaju radova nalazi se na https events lugonsorgp=1658

Page 42: LiBRE 33 Lat

42

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Bi l Tat koj i je dešifrovao bdquoTANI sistemrdquo (TANI) i Tomi Flauers koj i je samo svojomintuici jom i znanjem sklopio prvi računar na svetu (bdquoKOLOSrdquo) u svrhu bržegdolaženja do informaci ja razbi jenog koda bdquoTANIrdquo tako da zastarelost šifrata budesvedena na minimum - radi l i su na novoj generaci j i mašina za šifrovanje Ovatehnologi ja je bi la prepoznata kao tehnologi ja budućnosti pa i danas iznadinformaci ja o tim tehnologi jama stoj i natpis bdquovrhunska tajnardquo (eng Top Secret) Upravo ovaj veo tajni oko šifrata bdquoTANIrdquo i prvog računara je rezultirao iskrivl jenjuistori je informatike

Za uspehe u prvim godinama rata je zaista zaslužno razbi janje bdquoENIGMArdquo šifrata ito ni je sporno al i krajem 1941 godine u etru planete se začuo novi zvuk To je bi lanova mašina za šifrovanje ni je bi la zasnovana na bdquoMorzeurdquo već je radi la naprincipu teleprintera

Jedna od kl jučnih ideja Hitlerovog ratovanja je bi la u vel ikoj mobi lnosti i brzomdelovanju trupa na terenu a da bi se to izvelo komunikaci ja je isto tako morala dabude u najmanju ruku putem radio signala

Razl ika je ogromna Razl ika je u kol ičini podataka koj i može da se prenese ovimbdquotajnimrdquo putem Prvi svetski rat je bio zaniml j iv jer su se šifrovane poruke baziralena rečima dok je Drugi u potpunosti otvorio vrata današnjoj kriptografi j i a to jematematika

Originalan nemački kocircdni naziv za ovaj šifrat bio je bdquoLORENCrdquo Britanska

Internet mreže i komunikacije

43

Broj 33

obaveštajna služba mu je dala nadimak bdquoTANIrdquo Čak ni dan danas ni je baš poznatokako je sve nastalo al i pouzdano se zna da je tajnu mašinu Hitler nazvaobdquoGehajmšrajberrdquo (nem Geheimschreiber) - mašina tajni

U srž i tehnologi ju šifrovanja bdquoLORENCrdquo šifrata nećemo ulaziti u ovom članku al iverujte nam na reč - ni je bi la jednostavna Može se pretpostaviti da je inspiraci jaŠenonovog 2 rada slučajnosti bi la upravo ova tehnologi ja iz Drugog svetskog rata

Ono čime se Treći rajh vodio je bdquosigurnardquo šifrovana veza koju niko ni je smeo dadešifruje Prenošenje šifrovanih poruka pomoću radio signala je dalo obaveštajnimslužbama mogućnost presretanja poruka poslatih radio talasima Da l i se ovo idanas dešava Imamo l i sigurnost u našim šifrovanim podacima današnj ice

Ono što je usledi lo nakon proboja ovog bdquoneuhvatl j ivogrdquo šifrata je upravo ono što jeprincip današnj ice kao neka vrsta protokola koj i mora da se ispoštuje uperfektnom šifarskom Šenonovom sistemu

1 NIKADA NIKADA NE KORISTITI DVA PUTA ISTI KLJUČ ZA ŠIFROVANJE2 NIKADA NIKADA KLJUČ NE SME DA SE ŠALJE ISTIM KOMUNIKACIONIM KANALOM

KAO PORUKA3 NIKADA NIKADA KLJUČ NE SME DA BUDE MANJ I NEGO ŠTO JE PORUKA (engl

2 Klod Elvud Šenon (eng Claude Elwood Shannon) (1916-2001) - Američkinaučnik i inženjer

Izgubljeni heroji bdquoBlečli parkardquo

44

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

one time pad) 4 NIKADA NIKADA NE SMEMO DA SAKRIVAMO SISTEM ŠIFROVANJA SVE MORA

DA JE OTVORENOG KOcircDA

Najveći propusti kriptologi je koj i su uočeni baš u Drugom svetskom ratu jesupokušaj sakrivanja sredstava koj im se generiše tajna poruka i nepoznavanjeŠenonovih krajnj ih granica informaci ja Kada kažemo bdquosredstvo i sakrivanjerdquomisl imo na algoritme Postavl ja se pitanje zašto je danas kriptologi ja sigurni ja negočetrdesetih i pedesetih godina prošlog veka

Danas uprkos tome što su algoritmi za kriptografi ju otvorenog kocircda tajnostinformaci ja je na višem nivou nego što je to bi lo dok je algoritam bio strogopoverl j iv Tajnost tajnih podataka se ne zasniva na tajnosti a lgoritama koj i generišutaj isti bdquotajni izlazrdquo (eng cipher text) nego u nemogućnosti matematičke inverznefunkci je koja bi šifrovan tekst otvori la Ovde se vidi da je svrha strukture otvorenogkocircda kao jednog od značajnih delova današnje kriptologi je ona koja ga činisigurnim i svima dostupnim

Sada kada se sa ove distance osvrnemo na Drugi svetski rat možemo videti kol ikosmo bi l i bl izu apokal ipse Naime Albert Ajnštajn je već 1944 godine imao urukama recept za nuklearnu bombu Šenon je mogao već u to vreme da nampredoči 100 siguran šifrat (tzv Hitlerovu super šifru) a l i ipak sreća nas jeposluži la da čovečanstvo tada ni je bi lo spremno da upotrebi svu raspoloživutehnologi ju

Albert Ajnštajn bdquoČetvrti svetski rat će se voditi tol jagamardquo

Zaboravl jeni heroj i Blečl i parka iako su odigral i važnu ulogu u pobedi saveznika usvetskom ratu postal i su žrtve bdquotop secretrdquo doktrine potpuno su zaboravl jeni inestal i su iz istori je

Zakl jučak ovog članka je da je ideologi ja otvorenog kocircda sasvim sigurno tu da nampomogne i da otvori vrata ka većoj sigurnosti novim idejama i kval itetu sameinfrastrukture sistema koju svi zajedno razvi jamo

Internet mreže i komunikacije

45

Broj 33

Autor Nikola Hardi

NabrajanjaBez brojeva

Za nabrajanje pojmova u Bimeru (eng Beamer) koristi se okruženje itemize aunutar tog okruženja možemo da dodajemo nove stavke pomoću item Primerizgleda ovako

beginitemizeitem Stavka Aitem Stavka Bitem Stavka C

enditemize

Sa brojevima

Postoje situaci je kada uz nabrajanje treba da stoje i redni brojevi - za to se koristienumerate okruženje a nove stavke se takođe dodaju pomoću item

beginenumerateitem Redni broj 1item Redni broj 2item Redni broj 3

endenumerate

prezentaci ja

Beamer (4 deo)

Sam svoj majstor

46

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

DefinicijeTreća situaci ja je nabrajanje parova termin - definici ja U tom slučaju se koristiokruženje description Već možete da pretpostavite kako se dodaju nove stavke

Primer

begindescriptionitem[Pojam A] Definicija izmišljenog pojma Aitem[Pojam B] Definicija izmišljenog pojma Bitem[Pojam C] Definicija izmišljenog pojma C

enddescription

Ostala podešavanja i zanimljivostiSva prethodna okruženja mogu da budu ugneždena jedno unutar drugog dotrećeg nivoa Treba biti pažl j iv jer sla jdovi vrlo lako mogu da postanu nečitl j ivi Osim toga moguće je izabrati i format oznake i l i rednih brojeva - na primer ovako

beginenumerate[I]beginenumarate[a)]

Takođe moguće je upravl jati pojavl j ivanjem pojedinih stavki na slajdovima Drugimrečima možemo da odredimo da se nabrajanja postepeno otkrivaju tako što ćemouz stavku dodati lt1-gt odnosno broj od kojeg slajda žel imo da se ta stavkapojavl ju je Tada će jedno nabrajanje biti bdquorazvučenordquo na više slajdovaJednostavni ja mogućnost je da u zaglavl je okruženja dodamo +- što znači dažel imo da se svakim slajdom otkriva po jedna nova stavka iz nabrajanja Znak bdquo-rdquo uoba primera znači da žel imo da se stavka pojavi na sledećem slajdu i da ostane

Sam svoj majstor

47

Broj 33

prisutna Možemo da izostavimo znak bdquo-rdquo i tada će stavka biti prisutna samo najednom slajdu i l i da napišemo raspon slajdova u koj ima žel imo da ta stavka budeprisutna

Rad sa kolonama i blokovimaDo sada su svi primeri podrazumeval i da je sadržaj napisan preko cele širineslajda al i Bimer (eng Beamer) ima i jednostavne mehanizme za razmeštanjesadržaja po kolonama Za rad sa kolonama se koristi okruženje columns unutarkojeg možemo da dodajemo nove kolone pomoću columnširina Sadržaj jemoguće potom pisati i van okruženja sa kolonama

U paru sa kolonama često se sreće i okruženje block koje se parametrizujenaslovom Primerom su i lustrovani i okruženje column i okruženje block

beginframebegincolumns

column05textwidthbeginblockNaslov levog blokaSadržaj u prvoj (levoj) koloni endblock

column05textwidthbeginblockNaslov desnog blokaSadržaj u drugoj (desnoj) koloni

endblockendcolumns

beginblockVan kolona

Beamer

48

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Tekst koji se nalazi ispod kolonaendblock

endframe

TabeleIako se u radu sa prezentaci jama sadržaj najčešće može uredno rasporeditipomoću kolona i nabrajanja nekada to ni je dovol jno jer su tabele pravi formatBimer podržava standardno Lateh (LaTeX) okruženje za rad sa tabelamaOkruženje za rad sa tabelama se zove tabular Pri kreiranju nove tabele moguće jepodesiti koje kolone će biti razdvojene l ini jom i da l i će nj ihov sadržaj biti centrirani l i uz levu i l i uz desnu ivicu Dodavanje novog reda se jednostavno radidodavanjem hline Lateh pruža zaista jako fleksibi lan rad sa tabelama i sigurno ćedoskočiti svim mogućim i nemogućim zamisl ima Potražite bi lo koje Lateh uputstvoza rad sa tabelama i radiće i sa Bimerom

beginframebegintabular | c | c | c | c |

hlineamp Ponedeljak amp Utorak amp Sreda hline

1 amp 16 amp 32 amp 64 hline2 amp 16 amp 128 amp 1024 hline3 amp 16 amp 512 amp 4096 hline

endtabularendframe

Sam svoj majstor

49

Broj 33

Beamer

Teoreme i istaknut tekstU nastavi su česta izlaganja teorema nj ihovih dokaza i primera U Bimer jeugrađena podrška za elegantno predstavl janje ove trojke Mehanizam takođepodržava postepeno otkrivanje sadržaja sla jda tako da slušaocima ne bude odmahotkriven dokaz teoreme Mehanizam za postepeno otkrivanje se kao i kodnabrajanja postiže pomoću bdquolt1-gtrdquo konstrukci je Evo kako to izgleda

beginframeframetitlePrimer teoreme

begintheoremlt1-gt Teorema kaže da su beamer prezentacijezanimljive

endtheorem

beginexamplelt2-gt Ovaj kod kreira slajd beamer prezentacijeendexample

beginprooflt3-gt Čestitamo stigli ste do kraja serijala o pravljenju beamer prezentacija

endproofendframe

50

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Za krajOvim člankom završavamo seri ja l o Bimeru Nadamo se da smo uspel i da vaszainteresujemo za ovu vrlo korisnu klasu Lateha Trudi l i smo se da vamprezentujemo najvažni je delove Bimera koje ćete najčešće koristiti pri l ikomkreiranja svoj ih prezentaci ja

Napominjemo još jednom da je Bimer samo jedna od klasa Lateha što znači da i zaBimer važi sve ono što ste već mogl i da pročitate u ovom časopisu kad smo pisal iseri ja l bdquoUvod u LaTeXrdquo (LiBRE brojevi 17 do 21) Štaviše ovaj seri ja l o Bimeru jebio nastavak upravo tog seri ja la U ovom seri ja lu nismo pisal i o samomformatiranju teksta u prezentaci jama jer se podrazumeva da važe ista pravi la kao iu Latehu a o tome smo pisal i u prethodnom seri ja lu

Hvala vam što ste prati l i ovaj seri ja l i žel imo vam puno uspeha u kreiranju Bimerprezentaci ja

Sam svoj majstor

51

Broj 33

Autor Nenad Marjanović

Kada smo se upoznal i sa podešavanj ima sistema i umrežavanjem vreme je za našprvi Biglbon Blek (BBB - eng BeagleBone Black) projekat Svakom od nas će ovajizazov dati razl ičite ideje a jedna od nj ih može biti i zaštita privatnosti internetkorisnika Nažalost u Srbi j i ne postoj i ni jedan izlazni tor server (eng node) i to jepomalo tužna sl ika s obzirom da govorimo o populaci j i od sedam mil ionastanovnika Al i ovu sl iku možemo promeniti udruženim snagama i za početakkreiranjem Tor transfer i izlaznog servera U ovde prikazanom grafikonufokusiraćemo se na bdquoRauter Brdquo tačku odnosno transfer server konfiguraci ju

BeagleBone Black Rev C

Vodič od prvog dana (3 deo) ndashBeagleBone Black kao Tor relej

Hardver

52

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Tor predstavl ja mrežu servera koj i se povezuju radi bol je enkripci je podataka izaštite IP adrese korisnika Naš ci l j je da danas postanemo deo ovog predivnogprojekta i da se nađemo na svetskoj karti Tor servera

Brzina interneta i zakonske regulativePotrebno je imati na umu nekol iko bitnih stvari

1 Naš server = naša odgovornost2 Obavezno naznačite da ste vi administrator a ne korisnik istog servera3 Da posedujete internet brzinu od 2 Mbs

Ako ispunjavamo tri navedena pravi la i odgovornosti možemo se posvetitiadministrativnim poslovima

Instalacija i podešavanjaU ovom primeru koristimo Debi jan Vizi (eng Wheezy) odnosno Debi jan 7 verzi juna našem BBB uređaju Vi možete testirati i druge Linuks platforme Prvododajemo izvornu bibl ioteku u etcaptsourceslist faj l pokretanjem sledećekomande u terminalu

echo deb httpdebtorprojectorgtorprojectorg wheezy main gt etcaptsourceslistdtorlist

Zatim dodajemo izvorni kl juč vršimo ažuriranje sistema i instal iramo tor i tor-arm(Tor monitoring sistem)

gpg --keyserver keysgnupgnet --recv 886DDD89gpg --export A3C4F0F979CAA22CDBA8F512EE8CBC9E886DDD89 | sudo apt-keyadd -apt-get updateapt-get install debtorprojectorg-keyring -yapt-get install tor tor-arm egrep screen -y

Ovim smo uspešno završi l i instalaci ju Tor servera i sistema za monitoring odnosnonadgledanja našeg Tor servera Sledećom komandom radimo na podešavanj imaTor servera koja se nalaze u etctortorrc faj lu Obratite pažnju i izvršite potrebne

Hardver

53

Broj 33

izmenu u pol j ima IP adresa (eng Address) nadimka (eng Nickname) i kontaktpodataka (eng ContactInfo) pre pokretanja ove komande Kopiramo i pokrećemokomandu u celosti u terminalu

egrep -v ^(|$) etctortorrcORPort 443Address 19216811Nickname LibreTorRelayRelayBandwidthRate 100 KBRelayBandwidthBurst 120 KBContactInfo ltvi at gmail dot comgt irPort 8080DirPortFrontPage etctortorhtmlExitPolicy reject

Detal je o svim vrednostima nećemo iznositi u ovom broju LiBRE časopisa al ićemo o nj ima pisati u sledećem u kome ćemo pričati o zaštiti Tor servera imogućnosti podešavanja određenih izlaznih pravi la (eng ExitPolicy)

Nakon ovoga možemo primetiti da se u folderu etctor ne nalazi torhtml faj l Ovaj faj l ni je od vel ikog značaja i možete ga l ično napraviti i l i preuzeti jednu kopi ju- naprimer sa sledeće lokaci je

cp usrsharedoctortorhtml etctortorhtml

Opcije i Tor Arm monitoringDa bismo ispravno koristi l i Tor Arm potrebno je urediti još jednom etctortorrcfaj l i restartovati servis

echo -e ldquoDisableDebuggerAttachment 0n AvoidDiskWritesrdquo gtgt etctortorrcsudo service tor reload

Ukol iko žel ite koristiti Tor Arm za nadgledanje aktivnosti na serveru pokreniteprogram screen kl iknite na bdquoEnterrdquo i kucajte sudo -u debian-tor arm Naekranu ćete imati sl ičan prikaz

BeagleBone Black

54

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Hardver

55

Broj 33

Da bismo napusti l i screen program koristimo Ctrl + a + d i na taj način kada sesledeći put pri javimo na server kucamo samo screen -r u terminalu - i naći ćemose ponovo na čuvenom Tor Arm monitoring ekranu

Nakon svake promene konfiguracionih faj lova ako slučajno nismo nešto podesi l ikako treba restartujemo servise

U sledećem broju časopisa govorićemo o minimalnim podešavanj ima ikonfigurisanju izlaznog Tor servera (eng Tor Exit Node) opci jama sigurnosti isl ičnim detal j ima u vezi sa našim prvim projektom Do čitanja u sledećem broju

BeagleBone Black

LUGoNS BarCamp 4subota 7 mart 2015 godine

Četvrti LUGoNS-ov Barkemp (BarCamp) održaće se u Novom Sadu usubotu 7 marta 2015 godine na Fakultetu tehničkih nauka sa početkomu 12 časova

Ulaz je slobodan

Poziv za predaju radovaLUGoNS poziva sve zainteresovane da pošal ju svoje radove (predavanjaprezentaci je radionice i diskusi je) do 28 februara 2015 godine

Oblasti iz koj ih možete da pri javite vaše radove su

bull Slobodan softverbull Zaniml j iv hardverbull Hakerski zakonibull Sigurnosne noćne morebull Anonimnost i privatnost na internetubull Duboki veb (eng Deep Web)bull Soci ja lne mrežebull Soci ja lni inženjeringbull Hakovanje mobi lnih uređajabull Internet u oblaku (eng Clouds) ndash hakovanje razbi janje i neočekivano korišćenjebull DPI (eng deep packet inspection)bull Mreža i mrežna neutralnost ndash vlasništvo cenzura nadmudrivanje i pol itika bdquodefaktordquo standarda

bull Programiranje i programski jezici

Nemojte se ustručavati i slobodno nam se javite ako imate rad na gore navedenei l i sl ične teme koj i smatrate interesantnim

Stranica za predaju radova nalazi se na https events lugonsorgp=1658

Page 43: LiBRE 33 Lat

43

Broj 33

obaveštajna služba mu je dala nadimak bdquoTANIrdquo Čak ni dan danas ni je baš poznatokako je sve nastalo al i pouzdano se zna da je tajnu mašinu Hitler nazvaobdquoGehajmšrajberrdquo (nem Geheimschreiber) - mašina tajni

U srž i tehnologi ju šifrovanja bdquoLORENCrdquo šifrata nećemo ulaziti u ovom članku al iverujte nam na reč - ni je bi la jednostavna Može se pretpostaviti da je inspiraci jaŠenonovog 2 rada slučajnosti bi la upravo ova tehnologi ja iz Drugog svetskog rata

Ono čime se Treći rajh vodio je bdquosigurnardquo šifrovana veza koju niko ni je smeo dadešifruje Prenošenje šifrovanih poruka pomoću radio signala je dalo obaveštajnimslužbama mogućnost presretanja poruka poslatih radio talasima Da l i se ovo idanas dešava Imamo l i sigurnost u našim šifrovanim podacima današnj ice

Ono što je usledi lo nakon proboja ovog bdquoneuhvatl j ivogrdquo šifrata je upravo ono što jeprincip današnj ice kao neka vrsta protokola koj i mora da se ispoštuje uperfektnom šifarskom Šenonovom sistemu

1 NIKADA NIKADA NE KORISTITI DVA PUTA ISTI KLJUČ ZA ŠIFROVANJE2 NIKADA NIKADA KLJUČ NE SME DA SE ŠALJE ISTIM KOMUNIKACIONIM KANALOM

KAO PORUKA3 NIKADA NIKADA KLJUČ NE SME DA BUDE MANJ I NEGO ŠTO JE PORUKA (engl

2 Klod Elvud Šenon (eng Claude Elwood Shannon) (1916-2001) - Američkinaučnik i inženjer

Izgubljeni heroji bdquoBlečli parkardquo

44

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

one time pad) 4 NIKADA NIKADA NE SMEMO DA SAKRIVAMO SISTEM ŠIFROVANJA SVE MORA

DA JE OTVORENOG KOcircDA

Najveći propusti kriptologi je koj i su uočeni baš u Drugom svetskom ratu jesupokušaj sakrivanja sredstava koj im se generiše tajna poruka i nepoznavanjeŠenonovih krajnj ih granica informaci ja Kada kažemo bdquosredstvo i sakrivanjerdquomisl imo na algoritme Postavl ja se pitanje zašto je danas kriptologi ja sigurni ja negočetrdesetih i pedesetih godina prošlog veka

Danas uprkos tome što su algoritmi za kriptografi ju otvorenog kocircda tajnostinformaci ja je na višem nivou nego što je to bi lo dok je algoritam bio strogopoverl j iv Tajnost tajnih podataka se ne zasniva na tajnosti a lgoritama koj i generišutaj isti bdquotajni izlazrdquo (eng cipher text) nego u nemogućnosti matematičke inverznefunkci je koja bi šifrovan tekst otvori la Ovde se vidi da je svrha strukture otvorenogkocircda kao jednog od značajnih delova današnje kriptologi je ona koja ga činisigurnim i svima dostupnim

Sada kada se sa ove distance osvrnemo na Drugi svetski rat možemo videti kol ikosmo bi l i bl izu apokal ipse Naime Albert Ajnštajn je već 1944 godine imao urukama recept za nuklearnu bombu Šenon je mogao već u to vreme da nampredoči 100 siguran šifrat (tzv Hitlerovu super šifru) a l i ipak sreća nas jeposluži la da čovečanstvo tada ni je bi lo spremno da upotrebi svu raspoloživutehnologi ju

Albert Ajnštajn bdquoČetvrti svetski rat će se voditi tol jagamardquo

Zaboravl jeni heroj i Blečl i parka iako su odigral i važnu ulogu u pobedi saveznika usvetskom ratu postal i su žrtve bdquotop secretrdquo doktrine potpuno su zaboravl jeni inestal i su iz istori je

Zakl jučak ovog članka je da je ideologi ja otvorenog kocircda sasvim sigurno tu da nampomogne i da otvori vrata ka većoj sigurnosti novim idejama i kval itetu sameinfrastrukture sistema koju svi zajedno razvi jamo

Internet mreže i komunikacije

45

Broj 33

Autor Nikola Hardi

NabrajanjaBez brojeva

Za nabrajanje pojmova u Bimeru (eng Beamer) koristi se okruženje itemize aunutar tog okruženja možemo da dodajemo nove stavke pomoću item Primerizgleda ovako

beginitemizeitem Stavka Aitem Stavka Bitem Stavka C

enditemize

Sa brojevima

Postoje situaci je kada uz nabrajanje treba da stoje i redni brojevi - za to se koristienumerate okruženje a nove stavke se takođe dodaju pomoću item

beginenumerateitem Redni broj 1item Redni broj 2item Redni broj 3

endenumerate

prezentaci ja

Beamer (4 deo)

Sam svoj majstor

46

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

DefinicijeTreća situaci ja je nabrajanje parova termin - definici ja U tom slučaju se koristiokruženje description Već možete da pretpostavite kako se dodaju nove stavke

Primer

begindescriptionitem[Pojam A] Definicija izmišljenog pojma Aitem[Pojam B] Definicija izmišljenog pojma Bitem[Pojam C] Definicija izmišljenog pojma C

enddescription

Ostala podešavanja i zanimljivostiSva prethodna okruženja mogu da budu ugneždena jedno unutar drugog dotrećeg nivoa Treba biti pažl j iv jer sla jdovi vrlo lako mogu da postanu nečitl j ivi Osim toga moguće je izabrati i format oznake i l i rednih brojeva - na primer ovako

beginenumerate[I]beginenumarate[a)]

Takođe moguće je upravl jati pojavl j ivanjem pojedinih stavki na slajdovima Drugimrečima možemo da odredimo da se nabrajanja postepeno otkrivaju tako što ćemouz stavku dodati lt1-gt odnosno broj od kojeg slajda žel imo da se ta stavkapojavl ju je Tada će jedno nabrajanje biti bdquorazvučenordquo na više slajdovaJednostavni ja mogućnost je da u zaglavl je okruženja dodamo +- što znači dažel imo da se svakim slajdom otkriva po jedna nova stavka iz nabrajanja Znak bdquo-rdquo uoba primera znači da žel imo da se stavka pojavi na sledećem slajdu i da ostane

Sam svoj majstor

47

Broj 33

prisutna Možemo da izostavimo znak bdquo-rdquo i tada će stavka biti prisutna samo najednom slajdu i l i da napišemo raspon slajdova u koj ima žel imo da ta stavka budeprisutna

Rad sa kolonama i blokovimaDo sada su svi primeri podrazumeval i da je sadržaj napisan preko cele širineslajda al i Bimer (eng Beamer) ima i jednostavne mehanizme za razmeštanjesadržaja po kolonama Za rad sa kolonama se koristi okruženje columns unutarkojeg možemo da dodajemo nove kolone pomoću columnširina Sadržaj jemoguće potom pisati i van okruženja sa kolonama

U paru sa kolonama često se sreće i okruženje block koje se parametrizujenaslovom Primerom su i lustrovani i okruženje column i okruženje block

beginframebegincolumns

column05textwidthbeginblockNaslov levog blokaSadržaj u prvoj (levoj) koloni endblock

column05textwidthbeginblockNaslov desnog blokaSadržaj u drugoj (desnoj) koloni

endblockendcolumns

beginblockVan kolona

Beamer

48

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Tekst koji se nalazi ispod kolonaendblock

endframe

TabeleIako se u radu sa prezentaci jama sadržaj najčešće može uredno rasporeditipomoću kolona i nabrajanja nekada to ni je dovol jno jer su tabele pravi formatBimer podržava standardno Lateh (LaTeX) okruženje za rad sa tabelamaOkruženje za rad sa tabelama se zove tabular Pri kreiranju nove tabele moguće jepodesiti koje kolone će biti razdvojene l ini jom i da l i će nj ihov sadržaj biti centrirani l i uz levu i l i uz desnu ivicu Dodavanje novog reda se jednostavno radidodavanjem hline Lateh pruža zaista jako fleksibi lan rad sa tabelama i sigurno ćedoskočiti svim mogućim i nemogućim zamisl ima Potražite bi lo koje Lateh uputstvoza rad sa tabelama i radiće i sa Bimerom

beginframebegintabular | c | c | c | c |

hlineamp Ponedeljak amp Utorak amp Sreda hline

1 amp 16 amp 32 amp 64 hline2 amp 16 amp 128 amp 1024 hline3 amp 16 amp 512 amp 4096 hline

endtabularendframe

Sam svoj majstor

49

Broj 33

Beamer

Teoreme i istaknut tekstU nastavi su česta izlaganja teorema nj ihovih dokaza i primera U Bimer jeugrađena podrška za elegantno predstavl janje ove trojke Mehanizam takođepodržava postepeno otkrivanje sadržaja sla jda tako da slušaocima ne bude odmahotkriven dokaz teoreme Mehanizam za postepeno otkrivanje se kao i kodnabrajanja postiže pomoću bdquolt1-gtrdquo konstrukci je Evo kako to izgleda

beginframeframetitlePrimer teoreme

begintheoremlt1-gt Teorema kaže da su beamer prezentacijezanimljive

endtheorem

beginexamplelt2-gt Ovaj kod kreira slajd beamer prezentacijeendexample

beginprooflt3-gt Čestitamo stigli ste do kraja serijala o pravljenju beamer prezentacija

endproofendframe

50

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Za krajOvim člankom završavamo seri ja l o Bimeru Nadamo se da smo uspel i da vaszainteresujemo za ovu vrlo korisnu klasu Lateha Trudi l i smo se da vamprezentujemo najvažni je delove Bimera koje ćete najčešće koristiti pri l ikomkreiranja svoj ih prezentaci ja

Napominjemo još jednom da je Bimer samo jedna od klasa Lateha što znači da i zaBimer važi sve ono što ste već mogl i da pročitate u ovom časopisu kad smo pisal iseri ja l bdquoUvod u LaTeXrdquo (LiBRE brojevi 17 do 21) Štaviše ovaj seri ja l o Bimeru jebio nastavak upravo tog seri ja la U ovom seri ja lu nismo pisal i o samomformatiranju teksta u prezentaci jama jer se podrazumeva da važe ista pravi la kao iu Latehu a o tome smo pisal i u prethodnom seri ja lu

Hvala vam što ste prati l i ovaj seri ja l i žel imo vam puno uspeha u kreiranju Bimerprezentaci ja

Sam svoj majstor

51

Broj 33

Autor Nenad Marjanović

Kada smo se upoznal i sa podešavanj ima sistema i umrežavanjem vreme je za našprvi Biglbon Blek (BBB - eng BeagleBone Black) projekat Svakom od nas će ovajizazov dati razl ičite ideje a jedna od nj ih može biti i zaštita privatnosti internetkorisnika Nažalost u Srbi j i ne postoj i ni jedan izlazni tor server (eng node) i to jepomalo tužna sl ika s obzirom da govorimo o populaci j i od sedam mil ionastanovnika Al i ovu sl iku možemo promeniti udruženim snagama i za početakkreiranjem Tor transfer i izlaznog servera U ovde prikazanom grafikonufokusiraćemo se na bdquoRauter Brdquo tačku odnosno transfer server konfiguraci ju

BeagleBone Black Rev C

Vodič od prvog dana (3 deo) ndashBeagleBone Black kao Tor relej

Hardver

52

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Tor predstavl ja mrežu servera koj i se povezuju radi bol je enkripci je podataka izaštite IP adrese korisnika Naš ci l j je da danas postanemo deo ovog predivnogprojekta i da se nađemo na svetskoj karti Tor servera

Brzina interneta i zakonske regulativePotrebno je imati na umu nekol iko bitnih stvari

1 Naš server = naša odgovornost2 Obavezno naznačite da ste vi administrator a ne korisnik istog servera3 Da posedujete internet brzinu od 2 Mbs

Ako ispunjavamo tri navedena pravi la i odgovornosti možemo se posvetitiadministrativnim poslovima

Instalacija i podešavanjaU ovom primeru koristimo Debi jan Vizi (eng Wheezy) odnosno Debi jan 7 verzi juna našem BBB uređaju Vi možete testirati i druge Linuks platforme Prvododajemo izvornu bibl ioteku u etcaptsourceslist faj l pokretanjem sledećekomande u terminalu

echo deb httpdebtorprojectorgtorprojectorg wheezy main gt etcaptsourceslistdtorlist

Zatim dodajemo izvorni kl juč vršimo ažuriranje sistema i instal iramo tor i tor-arm(Tor monitoring sistem)

gpg --keyserver keysgnupgnet --recv 886DDD89gpg --export A3C4F0F979CAA22CDBA8F512EE8CBC9E886DDD89 | sudo apt-keyadd -apt-get updateapt-get install debtorprojectorg-keyring -yapt-get install tor tor-arm egrep screen -y

Ovim smo uspešno završi l i instalaci ju Tor servera i sistema za monitoring odnosnonadgledanja našeg Tor servera Sledećom komandom radimo na podešavanj imaTor servera koja se nalaze u etctortorrc faj lu Obratite pažnju i izvršite potrebne

Hardver

53

Broj 33

izmenu u pol j ima IP adresa (eng Address) nadimka (eng Nickname) i kontaktpodataka (eng ContactInfo) pre pokretanja ove komande Kopiramo i pokrećemokomandu u celosti u terminalu

egrep -v ^(|$) etctortorrcORPort 443Address 19216811Nickname LibreTorRelayRelayBandwidthRate 100 KBRelayBandwidthBurst 120 KBContactInfo ltvi at gmail dot comgt irPort 8080DirPortFrontPage etctortorhtmlExitPolicy reject

Detal je o svim vrednostima nećemo iznositi u ovom broju LiBRE časopisa al ićemo o nj ima pisati u sledećem u kome ćemo pričati o zaštiti Tor servera imogućnosti podešavanja određenih izlaznih pravi la (eng ExitPolicy)

Nakon ovoga možemo primetiti da se u folderu etctor ne nalazi torhtml faj l Ovaj faj l ni je od vel ikog značaja i možete ga l ično napraviti i l i preuzeti jednu kopi ju- naprimer sa sledeće lokaci je

cp usrsharedoctortorhtml etctortorhtml

Opcije i Tor Arm monitoringDa bismo ispravno koristi l i Tor Arm potrebno je urediti još jednom etctortorrcfaj l i restartovati servis

echo -e ldquoDisableDebuggerAttachment 0n AvoidDiskWritesrdquo gtgt etctortorrcsudo service tor reload

Ukol iko žel ite koristiti Tor Arm za nadgledanje aktivnosti na serveru pokreniteprogram screen kl iknite na bdquoEnterrdquo i kucajte sudo -u debian-tor arm Naekranu ćete imati sl ičan prikaz

BeagleBone Black

54

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Hardver

55

Broj 33

Da bismo napusti l i screen program koristimo Ctrl + a + d i na taj način kada sesledeći put pri javimo na server kucamo samo screen -r u terminalu - i naći ćemose ponovo na čuvenom Tor Arm monitoring ekranu

Nakon svake promene konfiguracionih faj lova ako slučajno nismo nešto podesi l ikako treba restartujemo servise

U sledećem broju časopisa govorićemo o minimalnim podešavanj ima ikonfigurisanju izlaznog Tor servera (eng Tor Exit Node) opci jama sigurnosti isl ičnim detal j ima u vezi sa našim prvim projektom Do čitanja u sledećem broju

BeagleBone Black

LUGoNS BarCamp 4subota 7 mart 2015 godine

Četvrti LUGoNS-ov Barkemp (BarCamp) održaće se u Novom Sadu usubotu 7 marta 2015 godine na Fakultetu tehničkih nauka sa početkomu 12 časova

Ulaz je slobodan

Poziv za predaju radovaLUGoNS poziva sve zainteresovane da pošal ju svoje radove (predavanjaprezentaci je radionice i diskusi je) do 28 februara 2015 godine

Oblasti iz koj ih možete da pri javite vaše radove su

bull Slobodan softverbull Zaniml j iv hardverbull Hakerski zakonibull Sigurnosne noćne morebull Anonimnost i privatnost na internetubull Duboki veb (eng Deep Web)bull Soci ja lne mrežebull Soci ja lni inženjeringbull Hakovanje mobi lnih uređajabull Internet u oblaku (eng Clouds) ndash hakovanje razbi janje i neočekivano korišćenjebull DPI (eng deep packet inspection)bull Mreža i mrežna neutralnost ndash vlasništvo cenzura nadmudrivanje i pol itika bdquodefaktordquo standarda

bull Programiranje i programski jezici

Nemojte se ustručavati i slobodno nam se javite ako imate rad na gore navedenei l i sl ične teme koj i smatrate interesantnim

Stranica za predaju radova nalazi se na https events lugonsorgp=1658

Page 44: LiBRE 33 Lat

44

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

one time pad) 4 NIKADA NIKADA NE SMEMO DA SAKRIVAMO SISTEM ŠIFROVANJA SVE MORA

DA JE OTVORENOG KOcircDA

Najveći propusti kriptologi je koj i su uočeni baš u Drugom svetskom ratu jesupokušaj sakrivanja sredstava koj im se generiše tajna poruka i nepoznavanjeŠenonovih krajnj ih granica informaci ja Kada kažemo bdquosredstvo i sakrivanjerdquomisl imo na algoritme Postavl ja se pitanje zašto je danas kriptologi ja sigurni ja negočetrdesetih i pedesetih godina prošlog veka

Danas uprkos tome što su algoritmi za kriptografi ju otvorenog kocircda tajnostinformaci ja je na višem nivou nego što je to bi lo dok je algoritam bio strogopoverl j iv Tajnost tajnih podataka se ne zasniva na tajnosti a lgoritama koj i generišutaj isti bdquotajni izlazrdquo (eng cipher text) nego u nemogućnosti matematičke inverznefunkci je koja bi šifrovan tekst otvori la Ovde se vidi da je svrha strukture otvorenogkocircda kao jednog od značajnih delova današnje kriptologi je ona koja ga činisigurnim i svima dostupnim

Sada kada se sa ove distance osvrnemo na Drugi svetski rat možemo videti kol ikosmo bi l i bl izu apokal ipse Naime Albert Ajnštajn je već 1944 godine imao urukama recept za nuklearnu bombu Šenon je mogao već u to vreme da nampredoči 100 siguran šifrat (tzv Hitlerovu super šifru) a l i ipak sreća nas jeposluži la da čovečanstvo tada ni je bi lo spremno da upotrebi svu raspoloživutehnologi ju

Albert Ajnštajn bdquoČetvrti svetski rat će se voditi tol jagamardquo

Zaboravl jeni heroj i Blečl i parka iako su odigral i važnu ulogu u pobedi saveznika usvetskom ratu postal i su žrtve bdquotop secretrdquo doktrine potpuno su zaboravl jeni inestal i su iz istori je

Zakl jučak ovog članka je da je ideologi ja otvorenog kocircda sasvim sigurno tu da nampomogne i da otvori vrata ka većoj sigurnosti novim idejama i kval itetu sameinfrastrukture sistema koju svi zajedno razvi jamo

Internet mreže i komunikacije

45

Broj 33

Autor Nikola Hardi

NabrajanjaBez brojeva

Za nabrajanje pojmova u Bimeru (eng Beamer) koristi se okruženje itemize aunutar tog okruženja možemo da dodajemo nove stavke pomoću item Primerizgleda ovako

beginitemizeitem Stavka Aitem Stavka Bitem Stavka C

enditemize

Sa brojevima

Postoje situaci je kada uz nabrajanje treba da stoje i redni brojevi - za to se koristienumerate okruženje a nove stavke se takođe dodaju pomoću item

beginenumerateitem Redni broj 1item Redni broj 2item Redni broj 3

endenumerate

prezentaci ja

Beamer (4 deo)

Sam svoj majstor

46

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

DefinicijeTreća situaci ja je nabrajanje parova termin - definici ja U tom slučaju se koristiokruženje description Već možete da pretpostavite kako se dodaju nove stavke

Primer

begindescriptionitem[Pojam A] Definicija izmišljenog pojma Aitem[Pojam B] Definicija izmišljenog pojma Bitem[Pojam C] Definicija izmišljenog pojma C

enddescription

Ostala podešavanja i zanimljivostiSva prethodna okruženja mogu da budu ugneždena jedno unutar drugog dotrećeg nivoa Treba biti pažl j iv jer sla jdovi vrlo lako mogu da postanu nečitl j ivi Osim toga moguće je izabrati i format oznake i l i rednih brojeva - na primer ovako

beginenumerate[I]beginenumarate[a)]

Takođe moguće je upravl jati pojavl j ivanjem pojedinih stavki na slajdovima Drugimrečima možemo da odredimo da se nabrajanja postepeno otkrivaju tako što ćemouz stavku dodati lt1-gt odnosno broj od kojeg slajda žel imo da se ta stavkapojavl ju je Tada će jedno nabrajanje biti bdquorazvučenordquo na više slajdovaJednostavni ja mogućnost je da u zaglavl je okruženja dodamo +- što znači dažel imo da se svakim slajdom otkriva po jedna nova stavka iz nabrajanja Znak bdquo-rdquo uoba primera znači da žel imo da se stavka pojavi na sledećem slajdu i da ostane

Sam svoj majstor

47

Broj 33

prisutna Možemo da izostavimo znak bdquo-rdquo i tada će stavka biti prisutna samo najednom slajdu i l i da napišemo raspon slajdova u koj ima žel imo da ta stavka budeprisutna

Rad sa kolonama i blokovimaDo sada su svi primeri podrazumeval i da je sadržaj napisan preko cele širineslajda al i Bimer (eng Beamer) ima i jednostavne mehanizme za razmeštanjesadržaja po kolonama Za rad sa kolonama se koristi okruženje columns unutarkojeg možemo da dodajemo nove kolone pomoću columnširina Sadržaj jemoguće potom pisati i van okruženja sa kolonama

U paru sa kolonama često se sreće i okruženje block koje se parametrizujenaslovom Primerom su i lustrovani i okruženje column i okruženje block

beginframebegincolumns

column05textwidthbeginblockNaslov levog blokaSadržaj u prvoj (levoj) koloni endblock

column05textwidthbeginblockNaslov desnog blokaSadržaj u drugoj (desnoj) koloni

endblockendcolumns

beginblockVan kolona

Beamer

48

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Tekst koji se nalazi ispod kolonaendblock

endframe

TabeleIako se u radu sa prezentaci jama sadržaj najčešće može uredno rasporeditipomoću kolona i nabrajanja nekada to ni je dovol jno jer su tabele pravi formatBimer podržava standardno Lateh (LaTeX) okruženje za rad sa tabelamaOkruženje za rad sa tabelama se zove tabular Pri kreiranju nove tabele moguće jepodesiti koje kolone će biti razdvojene l ini jom i da l i će nj ihov sadržaj biti centrirani l i uz levu i l i uz desnu ivicu Dodavanje novog reda se jednostavno radidodavanjem hline Lateh pruža zaista jako fleksibi lan rad sa tabelama i sigurno ćedoskočiti svim mogućim i nemogućim zamisl ima Potražite bi lo koje Lateh uputstvoza rad sa tabelama i radiće i sa Bimerom

beginframebegintabular | c | c | c | c |

hlineamp Ponedeljak amp Utorak amp Sreda hline

1 amp 16 amp 32 amp 64 hline2 amp 16 amp 128 amp 1024 hline3 amp 16 amp 512 amp 4096 hline

endtabularendframe

Sam svoj majstor

49

Broj 33

Beamer

Teoreme i istaknut tekstU nastavi su česta izlaganja teorema nj ihovih dokaza i primera U Bimer jeugrađena podrška za elegantno predstavl janje ove trojke Mehanizam takođepodržava postepeno otkrivanje sadržaja sla jda tako da slušaocima ne bude odmahotkriven dokaz teoreme Mehanizam za postepeno otkrivanje se kao i kodnabrajanja postiže pomoću bdquolt1-gtrdquo konstrukci je Evo kako to izgleda

beginframeframetitlePrimer teoreme

begintheoremlt1-gt Teorema kaže da su beamer prezentacijezanimljive

endtheorem

beginexamplelt2-gt Ovaj kod kreira slajd beamer prezentacijeendexample

beginprooflt3-gt Čestitamo stigli ste do kraja serijala o pravljenju beamer prezentacija

endproofendframe

50

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Za krajOvim člankom završavamo seri ja l o Bimeru Nadamo se da smo uspel i da vaszainteresujemo za ovu vrlo korisnu klasu Lateha Trudi l i smo se da vamprezentujemo najvažni je delove Bimera koje ćete najčešće koristiti pri l ikomkreiranja svoj ih prezentaci ja

Napominjemo još jednom da je Bimer samo jedna od klasa Lateha što znači da i zaBimer važi sve ono što ste već mogl i da pročitate u ovom časopisu kad smo pisal iseri ja l bdquoUvod u LaTeXrdquo (LiBRE brojevi 17 do 21) Štaviše ovaj seri ja l o Bimeru jebio nastavak upravo tog seri ja la U ovom seri ja lu nismo pisal i o samomformatiranju teksta u prezentaci jama jer se podrazumeva da važe ista pravi la kao iu Latehu a o tome smo pisal i u prethodnom seri ja lu

Hvala vam što ste prati l i ovaj seri ja l i žel imo vam puno uspeha u kreiranju Bimerprezentaci ja

Sam svoj majstor

51

Broj 33

Autor Nenad Marjanović

Kada smo se upoznal i sa podešavanj ima sistema i umrežavanjem vreme je za našprvi Biglbon Blek (BBB - eng BeagleBone Black) projekat Svakom od nas će ovajizazov dati razl ičite ideje a jedna od nj ih može biti i zaštita privatnosti internetkorisnika Nažalost u Srbi j i ne postoj i ni jedan izlazni tor server (eng node) i to jepomalo tužna sl ika s obzirom da govorimo o populaci j i od sedam mil ionastanovnika Al i ovu sl iku možemo promeniti udruženim snagama i za početakkreiranjem Tor transfer i izlaznog servera U ovde prikazanom grafikonufokusiraćemo se na bdquoRauter Brdquo tačku odnosno transfer server konfiguraci ju

BeagleBone Black Rev C

Vodič od prvog dana (3 deo) ndashBeagleBone Black kao Tor relej

Hardver

52

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Tor predstavl ja mrežu servera koj i se povezuju radi bol je enkripci je podataka izaštite IP adrese korisnika Naš ci l j je da danas postanemo deo ovog predivnogprojekta i da se nađemo na svetskoj karti Tor servera

Brzina interneta i zakonske regulativePotrebno je imati na umu nekol iko bitnih stvari

1 Naš server = naša odgovornost2 Obavezno naznačite da ste vi administrator a ne korisnik istog servera3 Da posedujete internet brzinu od 2 Mbs

Ako ispunjavamo tri navedena pravi la i odgovornosti možemo se posvetitiadministrativnim poslovima

Instalacija i podešavanjaU ovom primeru koristimo Debi jan Vizi (eng Wheezy) odnosno Debi jan 7 verzi juna našem BBB uređaju Vi možete testirati i druge Linuks platforme Prvododajemo izvornu bibl ioteku u etcaptsourceslist faj l pokretanjem sledećekomande u terminalu

echo deb httpdebtorprojectorgtorprojectorg wheezy main gt etcaptsourceslistdtorlist

Zatim dodajemo izvorni kl juč vršimo ažuriranje sistema i instal iramo tor i tor-arm(Tor monitoring sistem)

gpg --keyserver keysgnupgnet --recv 886DDD89gpg --export A3C4F0F979CAA22CDBA8F512EE8CBC9E886DDD89 | sudo apt-keyadd -apt-get updateapt-get install debtorprojectorg-keyring -yapt-get install tor tor-arm egrep screen -y

Ovim smo uspešno završi l i instalaci ju Tor servera i sistema za monitoring odnosnonadgledanja našeg Tor servera Sledećom komandom radimo na podešavanj imaTor servera koja se nalaze u etctortorrc faj lu Obratite pažnju i izvršite potrebne

Hardver

53

Broj 33

izmenu u pol j ima IP adresa (eng Address) nadimka (eng Nickname) i kontaktpodataka (eng ContactInfo) pre pokretanja ove komande Kopiramo i pokrećemokomandu u celosti u terminalu

egrep -v ^(|$) etctortorrcORPort 443Address 19216811Nickname LibreTorRelayRelayBandwidthRate 100 KBRelayBandwidthBurst 120 KBContactInfo ltvi at gmail dot comgt irPort 8080DirPortFrontPage etctortorhtmlExitPolicy reject

Detal je o svim vrednostima nećemo iznositi u ovom broju LiBRE časopisa al ićemo o nj ima pisati u sledećem u kome ćemo pričati o zaštiti Tor servera imogućnosti podešavanja određenih izlaznih pravi la (eng ExitPolicy)

Nakon ovoga možemo primetiti da se u folderu etctor ne nalazi torhtml faj l Ovaj faj l ni je od vel ikog značaja i možete ga l ično napraviti i l i preuzeti jednu kopi ju- naprimer sa sledeće lokaci je

cp usrsharedoctortorhtml etctortorhtml

Opcije i Tor Arm monitoringDa bismo ispravno koristi l i Tor Arm potrebno je urediti još jednom etctortorrcfaj l i restartovati servis

echo -e ldquoDisableDebuggerAttachment 0n AvoidDiskWritesrdquo gtgt etctortorrcsudo service tor reload

Ukol iko žel ite koristiti Tor Arm za nadgledanje aktivnosti na serveru pokreniteprogram screen kl iknite na bdquoEnterrdquo i kucajte sudo -u debian-tor arm Naekranu ćete imati sl ičan prikaz

BeagleBone Black

54

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Hardver

55

Broj 33

Da bismo napusti l i screen program koristimo Ctrl + a + d i na taj način kada sesledeći put pri javimo na server kucamo samo screen -r u terminalu - i naći ćemose ponovo na čuvenom Tor Arm monitoring ekranu

Nakon svake promene konfiguracionih faj lova ako slučajno nismo nešto podesi l ikako treba restartujemo servise

U sledećem broju časopisa govorićemo o minimalnim podešavanj ima ikonfigurisanju izlaznog Tor servera (eng Tor Exit Node) opci jama sigurnosti isl ičnim detal j ima u vezi sa našim prvim projektom Do čitanja u sledećem broju

BeagleBone Black

LUGoNS BarCamp 4subota 7 mart 2015 godine

Četvrti LUGoNS-ov Barkemp (BarCamp) održaće se u Novom Sadu usubotu 7 marta 2015 godine na Fakultetu tehničkih nauka sa početkomu 12 časova

Ulaz je slobodan

Poziv za predaju radovaLUGoNS poziva sve zainteresovane da pošal ju svoje radove (predavanjaprezentaci je radionice i diskusi je) do 28 februara 2015 godine

Oblasti iz koj ih možete da pri javite vaše radove su

bull Slobodan softverbull Zaniml j iv hardverbull Hakerski zakonibull Sigurnosne noćne morebull Anonimnost i privatnost na internetubull Duboki veb (eng Deep Web)bull Soci ja lne mrežebull Soci ja lni inženjeringbull Hakovanje mobi lnih uređajabull Internet u oblaku (eng Clouds) ndash hakovanje razbi janje i neočekivano korišćenjebull DPI (eng deep packet inspection)bull Mreža i mrežna neutralnost ndash vlasništvo cenzura nadmudrivanje i pol itika bdquodefaktordquo standarda

bull Programiranje i programski jezici

Nemojte se ustručavati i slobodno nam se javite ako imate rad na gore navedenei l i sl ične teme koj i smatrate interesantnim

Stranica za predaju radova nalazi se na https events lugonsorgp=1658

Page 45: LiBRE 33 Lat

45

Broj 33

Autor Nikola Hardi

NabrajanjaBez brojeva

Za nabrajanje pojmova u Bimeru (eng Beamer) koristi se okruženje itemize aunutar tog okruženja možemo da dodajemo nove stavke pomoću item Primerizgleda ovako

beginitemizeitem Stavka Aitem Stavka Bitem Stavka C

enditemize

Sa brojevima

Postoje situaci je kada uz nabrajanje treba da stoje i redni brojevi - za to se koristienumerate okruženje a nove stavke se takođe dodaju pomoću item

beginenumerateitem Redni broj 1item Redni broj 2item Redni broj 3

endenumerate

prezentaci ja

Beamer (4 deo)

Sam svoj majstor

46

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

DefinicijeTreća situaci ja je nabrajanje parova termin - definici ja U tom slučaju se koristiokruženje description Već možete da pretpostavite kako se dodaju nove stavke

Primer

begindescriptionitem[Pojam A] Definicija izmišljenog pojma Aitem[Pojam B] Definicija izmišljenog pojma Bitem[Pojam C] Definicija izmišljenog pojma C

enddescription

Ostala podešavanja i zanimljivostiSva prethodna okruženja mogu da budu ugneždena jedno unutar drugog dotrećeg nivoa Treba biti pažl j iv jer sla jdovi vrlo lako mogu da postanu nečitl j ivi Osim toga moguće je izabrati i format oznake i l i rednih brojeva - na primer ovako

beginenumerate[I]beginenumarate[a)]

Takođe moguće je upravl jati pojavl j ivanjem pojedinih stavki na slajdovima Drugimrečima možemo da odredimo da se nabrajanja postepeno otkrivaju tako što ćemouz stavku dodati lt1-gt odnosno broj od kojeg slajda žel imo da se ta stavkapojavl ju je Tada će jedno nabrajanje biti bdquorazvučenordquo na više slajdovaJednostavni ja mogućnost je da u zaglavl je okruženja dodamo +- što znači dažel imo da se svakim slajdom otkriva po jedna nova stavka iz nabrajanja Znak bdquo-rdquo uoba primera znači da žel imo da se stavka pojavi na sledećem slajdu i da ostane

Sam svoj majstor

47

Broj 33

prisutna Možemo da izostavimo znak bdquo-rdquo i tada će stavka biti prisutna samo najednom slajdu i l i da napišemo raspon slajdova u koj ima žel imo da ta stavka budeprisutna

Rad sa kolonama i blokovimaDo sada su svi primeri podrazumeval i da je sadržaj napisan preko cele širineslajda al i Bimer (eng Beamer) ima i jednostavne mehanizme za razmeštanjesadržaja po kolonama Za rad sa kolonama se koristi okruženje columns unutarkojeg možemo da dodajemo nove kolone pomoću columnširina Sadržaj jemoguće potom pisati i van okruženja sa kolonama

U paru sa kolonama često se sreće i okruženje block koje se parametrizujenaslovom Primerom su i lustrovani i okruženje column i okruženje block

beginframebegincolumns

column05textwidthbeginblockNaslov levog blokaSadržaj u prvoj (levoj) koloni endblock

column05textwidthbeginblockNaslov desnog blokaSadržaj u drugoj (desnoj) koloni

endblockendcolumns

beginblockVan kolona

Beamer

48

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Tekst koji se nalazi ispod kolonaendblock

endframe

TabeleIako se u radu sa prezentaci jama sadržaj najčešće može uredno rasporeditipomoću kolona i nabrajanja nekada to ni je dovol jno jer su tabele pravi formatBimer podržava standardno Lateh (LaTeX) okruženje za rad sa tabelamaOkruženje za rad sa tabelama se zove tabular Pri kreiranju nove tabele moguće jepodesiti koje kolone će biti razdvojene l ini jom i da l i će nj ihov sadržaj biti centrirani l i uz levu i l i uz desnu ivicu Dodavanje novog reda se jednostavno radidodavanjem hline Lateh pruža zaista jako fleksibi lan rad sa tabelama i sigurno ćedoskočiti svim mogućim i nemogućim zamisl ima Potražite bi lo koje Lateh uputstvoza rad sa tabelama i radiće i sa Bimerom

beginframebegintabular | c | c | c | c |

hlineamp Ponedeljak amp Utorak amp Sreda hline

1 amp 16 amp 32 amp 64 hline2 amp 16 amp 128 amp 1024 hline3 amp 16 amp 512 amp 4096 hline

endtabularendframe

Sam svoj majstor

49

Broj 33

Beamer

Teoreme i istaknut tekstU nastavi su česta izlaganja teorema nj ihovih dokaza i primera U Bimer jeugrađena podrška za elegantno predstavl janje ove trojke Mehanizam takođepodržava postepeno otkrivanje sadržaja sla jda tako da slušaocima ne bude odmahotkriven dokaz teoreme Mehanizam za postepeno otkrivanje se kao i kodnabrajanja postiže pomoću bdquolt1-gtrdquo konstrukci je Evo kako to izgleda

beginframeframetitlePrimer teoreme

begintheoremlt1-gt Teorema kaže da su beamer prezentacijezanimljive

endtheorem

beginexamplelt2-gt Ovaj kod kreira slajd beamer prezentacijeendexample

beginprooflt3-gt Čestitamo stigli ste do kraja serijala o pravljenju beamer prezentacija

endproofendframe

50

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Za krajOvim člankom završavamo seri ja l o Bimeru Nadamo se da smo uspel i da vaszainteresujemo za ovu vrlo korisnu klasu Lateha Trudi l i smo se da vamprezentujemo najvažni je delove Bimera koje ćete najčešće koristiti pri l ikomkreiranja svoj ih prezentaci ja

Napominjemo još jednom da je Bimer samo jedna od klasa Lateha što znači da i zaBimer važi sve ono što ste već mogl i da pročitate u ovom časopisu kad smo pisal iseri ja l bdquoUvod u LaTeXrdquo (LiBRE brojevi 17 do 21) Štaviše ovaj seri ja l o Bimeru jebio nastavak upravo tog seri ja la U ovom seri ja lu nismo pisal i o samomformatiranju teksta u prezentaci jama jer se podrazumeva da važe ista pravi la kao iu Latehu a o tome smo pisal i u prethodnom seri ja lu

Hvala vam što ste prati l i ovaj seri ja l i žel imo vam puno uspeha u kreiranju Bimerprezentaci ja

Sam svoj majstor

51

Broj 33

Autor Nenad Marjanović

Kada smo se upoznal i sa podešavanj ima sistema i umrežavanjem vreme je za našprvi Biglbon Blek (BBB - eng BeagleBone Black) projekat Svakom od nas će ovajizazov dati razl ičite ideje a jedna od nj ih može biti i zaštita privatnosti internetkorisnika Nažalost u Srbi j i ne postoj i ni jedan izlazni tor server (eng node) i to jepomalo tužna sl ika s obzirom da govorimo o populaci j i od sedam mil ionastanovnika Al i ovu sl iku možemo promeniti udruženim snagama i za početakkreiranjem Tor transfer i izlaznog servera U ovde prikazanom grafikonufokusiraćemo se na bdquoRauter Brdquo tačku odnosno transfer server konfiguraci ju

BeagleBone Black Rev C

Vodič od prvog dana (3 deo) ndashBeagleBone Black kao Tor relej

Hardver

52

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Tor predstavl ja mrežu servera koj i se povezuju radi bol je enkripci je podataka izaštite IP adrese korisnika Naš ci l j je da danas postanemo deo ovog predivnogprojekta i da se nađemo na svetskoj karti Tor servera

Brzina interneta i zakonske regulativePotrebno je imati na umu nekol iko bitnih stvari

1 Naš server = naša odgovornost2 Obavezno naznačite da ste vi administrator a ne korisnik istog servera3 Da posedujete internet brzinu od 2 Mbs

Ako ispunjavamo tri navedena pravi la i odgovornosti možemo se posvetitiadministrativnim poslovima

Instalacija i podešavanjaU ovom primeru koristimo Debi jan Vizi (eng Wheezy) odnosno Debi jan 7 verzi juna našem BBB uređaju Vi možete testirati i druge Linuks platforme Prvododajemo izvornu bibl ioteku u etcaptsourceslist faj l pokretanjem sledećekomande u terminalu

echo deb httpdebtorprojectorgtorprojectorg wheezy main gt etcaptsourceslistdtorlist

Zatim dodajemo izvorni kl juč vršimo ažuriranje sistema i instal iramo tor i tor-arm(Tor monitoring sistem)

gpg --keyserver keysgnupgnet --recv 886DDD89gpg --export A3C4F0F979CAA22CDBA8F512EE8CBC9E886DDD89 | sudo apt-keyadd -apt-get updateapt-get install debtorprojectorg-keyring -yapt-get install tor tor-arm egrep screen -y

Ovim smo uspešno završi l i instalaci ju Tor servera i sistema za monitoring odnosnonadgledanja našeg Tor servera Sledećom komandom radimo na podešavanj imaTor servera koja se nalaze u etctortorrc faj lu Obratite pažnju i izvršite potrebne

Hardver

53

Broj 33

izmenu u pol j ima IP adresa (eng Address) nadimka (eng Nickname) i kontaktpodataka (eng ContactInfo) pre pokretanja ove komande Kopiramo i pokrećemokomandu u celosti u terminalu

egrep -v ^(|$) etctortorrcORPort 443Address 19216811Nickname LibreTorRelayRelayBandwidthRate 100 KBRelayBandwidthBurst 120 KBContactInfo ltvi at gmail dot comgt irPort 8080DirPortFrontPage etctortorhtmlExitPolicy reject

Detal je o svim vrednostima nećemo iznositi u ovom broju LiBRE časopisa al ićemo o nj ima pisati u sledećem u kome ćemo pričati o zaštiti Tor servera imogućnosti podešavanja određenih izlaznih pravi la (eng ExitPolicy)

Nakon ovoga možemo primetiti da se u folderu etctor ne nalazi torhtml faj l Ovaj faj l ni je od vel ikog značaja i možete ga l ično napraviti i l i preuzeti jednu kopi ju- naprimer sa sledeće lokaci je

cp usrsharedoctortorhtml etctortorhtml

Opcije i Tor Arm monitoringDa bismo ispravno koristi l i Tor Arm potrebno je urediti još jednom etctortorrcfaj l i restartovati servis

echo -e ldquoDisableDebuggerAttachment 0n AvoidDiskWritesrdquo gtgt etctortorrcsudo service tor reload

Ukol iko žel ite koristiti Tor Arm za nadgledanje aktivnosti na serveru pokreniteprogram screen kl iknite na bdquoEnterrdquo i kucajte sudo -u debian-tor arm Naekranu ćete imati sl ičan prikaz

BeagleBone Black

54

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Hardver

55

Broj 33

Da bismo napusti l i screen program koristimo Ctrl + a + d i na taj način kada sesledeći put pri javimo na server kucamo samo screen -r u terminalu - i naći ćemose ponovo na čuvenom Tor Arm monitoring ekranu

Nakon svake promene konfiguracionih faj lova ako slučajno nismo nešto podesi l ikako treba restartujemo servise

U sledećem broju časopisa govorićemo o minimalnim podešavanj ima ikonfigurisanju izlaznog Tor servera (eng Tor Exit Node) opci jama sigurnosti isl ičnim detal j ima u vezi sa našim prvim projektom Do čitanja u sledećem broju

BeagleBone Black

LUGoNS BarCamp 4subota 7 mart 2015 godine

Četvrti LUGoNS-ov Barkemp (BarCamp) održaće se u Novom Sadu usubotu 7 marta 2015 godine na Fakultetu tehničkih nauka sa početkomu 12 časova

Ulaz je slobodan

Poziv za predaju radovaLUGoNS poziva sve zainteresovane da pošal ju svoje radove (predavanjaprezentaci je radionice i diskusi je) do 28 februara 2015 godine

Oblasti iz koj ih možete da pri javite vaše radove su

bull Slobodan softverbull Zaniml j iv hardverbull Hakerski zakonibull Sigurnosne noćne morebull Anonimnost i privatnost na internetubull Duboki veb (eng Deep Web)bull Soci ja lne mrežebull Soci ja lni inženjeringbull Hakovanje mobi lnih uređajabull Internet u oblaku (eng Clouds) ndash hakovanje razbi janje i neočekivano korišćenjebull DPI (eng deep packet inspection)bull Mreža i mrežna neutralnost ndash vlasništvo cenzura nadmudrivanje i pol itika bdquodefaktordquo standarda

bull Programiranje i programski jezici

Nemojte se ustručavati i slobodno nam se javite ako imate rad na gore navedenei l i sl ične teme koj i smatrate interesantnim

Stranica za predaju radova nalazi se na https events lugonsorgp=1658

Page 46: LiBRE 33 Lat

46

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

DefinicijeTreća situaci ja je nabrajanje parova termin - definici ja U tom slučaju se koristiokruženje description Već možete da pretpostavite kako se dodaju nove stavke

Primer

begindescriptionitem[Pojam A] Definicija izmišljenog pojma Aitem[Pojam B] Definicija izmišljenog pojma Bitem[Pojam C] Definicija izmišljenog pojma C

enddescription

Ostala podešavanja i zanimljivostiSva prethodna okruženja mogu da budu ugneždena jedno unutar drugog dotrećeg nivoa Treba biti pažl j iv jer sla jdovi vrlo lako mogu da postanu nečitl j ivi Osim toga moguće je izabrati i format oznake i l i rednih brojeva - na primer ovako

beginenumerate[I]beginenumarate[a)]

Takođe moguće je upravl jati pojavl j ivanjem pojedinih stavki na slajdovima Drugimrečima možemo da odredimo da se nabrajanja postepeno otkrivaju tako što ćemouz stavku dodati lt1-gt odnosno broj od kojeg slajda žel imo da se ta stavkapojavl ju je Tada će jedno nabrajanje biti bdquorazvučenordquo na više slajdovaJednostavni ja mogućnost je da u zaglavl je okruženja dodamo +- što znači dažel imo da se svakim slajdom otkriva po jedna nova stavka iz nabrajanja Znak bdquo-rdquo uoba primera znači da žel imo da se stavka pojavi na sledećem slajdu i da ostane

Sam svoj majstor

47

Broj 33

prisutna Možemo da izostavimo znak bdquo-rdquo i tada će stavka biti prisutna samo najednom slajdu i l i da napišemo raspon slajdova u koj ima žel imo da ta stavka budeprisutna

Rad sa kolonama i blokovimaDo sada su svi primeri podrazumeval i da je sadržaj napisan preko cele širineslajda al i Bimer (eng Beamer) ima i jednostavne mehanizme za razmeštanjesadržaja po kolonama Za rad sa kolonama se koristi okruženje columns unutarkojeg možemo da dodajemo nove kolone pomoću columnširina Sadržaj jemoguće potom pisati i van okruženja sa kolonama

U paru sa kolonama često se sreće i okruženje block koje se parametrizujenaslovom Primerom su i lustrovani i okruženje column i okruženje block

beginframebegincolumns

column05textwidthbeginblockNaslov levog blokaSadržaj u prvoj (levoj) koloni endblock

column05textwidthbeginblockNaslov desnog blokaSadržaj u drugoj (desnoj) koloni

endblockendcolumns

beginblockVan kolona

Beamer

48

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Tekst koji se nalazi ispod kolonaendblock

endframe

TabeleIako se u radu sa prezentaci jama sadržaj najčešće može uredno rasporeditipomoću kolona i nabrajanja nekada to ni je dovol jno jer su tabele pravi formatBimer podržava standardno Lateh (LaTeX) okruženje za rad sa tabelamaOkruženje za rad sa tabelama se zove tabular Pri kreiranju nove tabele moguće jepodesiti koje kolone će biti razdvojene l ini jom i da l i će nj ihov sadržaj biti centrirani l i uz levu i l i uz desnu ivicu Dodavanje novog reda se jednostavno radidodavanjem hline Lateh pruža zaista jako fleksibi lan rad sa tabelama i sigurno ćedoskočiti svim mogućim i nemogućim zamisl ima Potražite bi lo koje Lateh uputstvoza rad sa tabelama i radiće i sa Bimerom

beginframebegintabular | c | c | c | c |

hlineamp Ponedeljak amp Utorak amp Sreda hline

1 amp 16 amp 32 amp 64 hline2 amp 16 amp 128 amp 1024 hline3 amp 16 amp 512 amp 4096 hline

endtabularendframe

Sam svoj majstor

49

Broj 33

Beamer

Teoreme i istaknut tekstU nastavi su česta izlaganja teorema nj ihovih dokaza i primera U Bimer jeugrađena podrška za elegantno predstavl janje ove trojke Mehanizam takođepodržava postepeno otkrivanje sadržaja sla jda tako da slušaocima ne bude odmahotkriven dokaz teoreme Mehanizam za postepeno otkrivanje se kao i kodnabrajanja postiže pomoću bdquolt1-gtrdquo konstrukci je Evo kako to izgleda

beginframeframetitlePrimer teoreme

begintheoremlt1-gt Teorema kaže da su beamer prezentacijezanimljive

endtheorem

beginexamplelt2-gt Ovaj kod kreira slajd beamer prezentacijeendexample

beginprooflt3-gt Čestitamo stigli ste do kraja serijala o pravljenju beamer prezentacija

endproofendframe

50

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Za krajOvim člankom završavamo seri ja l o Bimeru Nadamo se da smo uspel i da vaszainteresujemo za ovu vrlo korisnu klasu Lateha Trudi l i smo se da vamprezentujemo najvažni je delove Bimera koje ćete najčešće koristiti pri l ikomkreiranja svoj ih prezentaci ja

Napominjemo još jednom da je Bimer samo jedna od klasa Lateha što znači da i zaBimer važi sve ono što ste već mogl i da pročitate u ovom časopisu kad smo pisal iseri ja l bdquoUvod u LaTeXrdquo (LiBRE brojevi 17 do 21) Štaviše ovaj seri ja l o Bimeru jebio nastavak upravo tog seri ja la U ovom seri ja lu nismo pisal i o samomformatiranju teksta u prezentaci jama jer se podrazumeva da važe ista pravi la kao iu Latehu a o tome smo pisal i u prethodnom seri ja lu

Hvala vam što ste prati l i ovaj seri ja l i žel imo vam puno uspeha u kreiranju Bimerprezentaci ja

Sam svoj majstor

51

Broj 33

Autor Nenad Marjanović

Kada smo se upoznal i sa podešavanj ima sistema i umrežavanjem vreme je za našprvi Biglbon Blek (BBB - eng BeagleBone Black) projekat Svakom od nas će ovajizazov dati razl ičite ideje a jedna od nj ih može biti i zaštita privatnosti internetkorisnika Nažalost u Srbi j i ne postoj i ni jedan izlazni tor server (eng node) i to jepomalo tužna sl ika s obzirom da govorimo o populaci j i od sedam mil ionastanovnika Al i ovu sl iku možemo promeniti udruženim snagama i za početakkreiranjem Tor transfer i izlaznog servera U ovde prikazanom grafikonufokusiraćemo se na bdquoRauter Brdquo tačku odnosno transfer server konfiguraci ju

BeagleBone Black Rev C

Vodič od prvog dana (3 deo) ndashBeagleBone Black kao Tor relej

Hardver

52

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Tor predstavl ja mrežu servera koj i se povezuju radi bol je enkripci je podataka izaštite IP adrese korisnika Naš ci l j je da danas postanemo deo ovog predivnogprojekta i da se nađemo na svetskoj karti Tor servera

Brzina interneta i zakonske regulativePotrebno je imati na umu nekol iko bitnih stvari

1 Naš server = naša odgovornost2 Obavezno naznačite da ste vi administrator a ne korisnik istog servera3 Da posedujete internet brzinu od 2 Mbs

Ako ispunjavamo tri navedena pravi la i odgovornosti možemo se posvetitiadministrativnim poslovima

Instalacija i podešavanjaU ovom primeru koristimo Debi jan Vizi (eng Wheezy) odnosno Debi jan 7 verzi juna našem BBB uređaju Vi možete testirati i druge Linuks platforme Prvododajemo izvornu bibl ioteku u etcaptsourceslist faj l pokretanjem sledećekomande u terminalu

echo deb httpdebtorprojectorgtorprojectorg wheezy main gt etcaptsourceslistdtorlist

Zatim dodajemo izvorni kl juč vršimo ažuriranje sistema i instal iramo tor i tor-arm(Tor monitoring sistem)

gpg --keyserver keysgnupgnet --recv 886DDD89gpg --export A3C4F0F979CAA22CDBA8F512EE8CBC9E886DDD89 | sudo apt-keyadd -apt-get updateapt-get install debtorprojectorg-keyring -yapt-get install tor tor-arm egrep screen -y

Ovim smo uspešno završi l i instalaci ju Tor servera i sistema za monitoring odnosnonadgledanja našeg Tor servera Sledećom komandom radimo na podešavanj imaTor servera koja se nalaze u etctortorrc faj lu Obratite pažnju i izvršite potrebne

Hardver

53

Broj 33

izmenu u pol j ima IP adresa (eng Address) nadimka (eng Nickname) i kontaktpodataka (eng ContactInfo) pre pokretanja ove komande Kopiramo i pokrećemokomandu u celosti u terminalu

egrep -v ^(|$) etctortorrcORPort 443Address 19216811Nickname LibreTorRelayRelayBandwidthRate 100 KBRelayBandwidthBurst 120 KBContactInfo ltvi at gmail dot comgt irPort 8080DirPortFrontPage etctortorhtmlExitPolicy reject

Detal je o svim vrednostima nećemo iznositi u ovom broju LiBRE časopisa al ićemo o nj ima pisati u sledećem u kome ćemo pričati o zaštiti Tor servera imogućnosti podešavanja određenih izlaznih pravi la (eng ExitPolicy)

Nakon ovoga možemo primetiti da se u folderu etctor ne nalazi torhtml faj l Ovaj faj l ni je od vel ikog značaja i možete ga l ično napraviti i l i preuzeti jednu kopi ju- naprimer sa sledeće lokaci je

cp usrsharedoctortorhtml etctortorhtml

Opcije i Tor Arm monitoringDa bismo ispravno koristi l i Tor Arm potrebno je urediti još jednom etctortorrcfaj l i restartovati servis

echo -e ldquoDisableDebuggerAttachment 0n AvoidDiskWritesrdquo gtgt etctortorrcsudo service tor reload

Ukol iko žel ite koristiti Tor Arm za nadgledanje aktivnosti na serveru pokreniteprogram screen kl iknite na bdquoEnterrdquo i kucajte sudo -u debian-tor arm Naekranu ćete imati sl ičan prikaz

BeagleBone Black

54

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Hardver

55

Broj 33

Da bismo napusti l i screen program koristimo Ctrl + a + d i na taj način kada sesledeći put pri javimo na server kucamo samo screen -r u terminalu - i naći ćemose ponovo na čuvenom Tor Arm monitoring ekranu

Nakon svake promene konfiguracionih faj lova ako slučajno nismo nešto podesi l ikako treba restartujemo servise

U sledećem broju časopisa govorićemo o minimalnim podešavanj ima ikonfigurisanju izlaznog Tor servera (eng Tor Exit Node) opci jama sigurnosti isl ičnim detal j ima u vezi sa našim prvim projektom Do čitanja u sledećem broju

BeagleBone Black

LUGoNS BarCamp 4subota 7 mart 2015 godine

Četvrti LUGoNS-ov Barkemp (BarCamp) održaće se u Novom Sadu usubotu 7 marta 2015 godine na Fakultetu tehničkih nauka sa početkomu 12 časova

Ulaz je slobodan

Poziv za predaju radovaLUGoNS poziva sve zainteresovane da pošal ju svoje radove (predavanjaprezentaci je radionice i diskusi je) do 28 februara 2015 godine

Oblasti iz koj ih možete da pri javite vaše radove su

bull Slobodan softverbull Zaniml j iv hardverbull Hakerski zakonibull Sigurnosne noćne morebull Anonimnost i privatnost na internetubull Duboki veb (eng Deep Web)bull Soci ja lne mrežebull Soci ja lni inženjeringbull Hakovanje mobi lnih uređajabull Internet u oblaku (eng Clouds) ndash hakovanje razbi janje i neočekivano korišćenjebull DPI (eng deep packet inspection)bull Mreža i mrežna neutralnost ndash vlasništvo cenzura nadmudrivanje i pol itika bdquodefaktordquo standarda

bull Programiranje i programski jezici

Nemojte se ustručavati i slobodno nam se javite ako imate rad na gore navedenei l i sl ične teme koj i smatrate interesantnim

Stranica za predaju radova nalazi se na https events lugonsorgp=1658

Page 47: LiBRE 33 Lat

47

Broj 33

prisutna Možemo da izostavimo znak bdquo-rdquo i tada će stavka biti prisutna samo najednom slajdu i l i da napišemo raspon slajdova u koj ima žel imo da ta stavka budeprisutna

Rad sa kolonama i blokovimaDo sada su svi primeri podrazumeval i da je sadržaj napisan preko cele širineslajda al i Bimer (eng Beamer) ima i jednostavne mehanizme za razmeštanjesadržaja po kolonama Za rad sa kolonama se koristi okruženje columns unutarkojeg možemo da dodajemo nove kolone pomoću columnširina Sadržaj jemoguće potom pisati i van okruženja sa kolonama

U paru sa kolonama često se sreće i okruženje block koje se parametrizujenaslovom Primerom su i lustrovani i okruženje column i okruženje block

beginframebegincolumns

column05textwidthbeginblockNaslov levog blokaSadržaj u prvoj (levoj) koloni endblock

column05textwidthbeginblockNaslov desnog blokaSadržaj u drugoj (desnoj) koloni

endblockendcolumns

beginblockVan kolona

Beamer

48

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Tekst koji se nalazi ispod kolonaendblock

endframe

TabeleIako se u radu sa prezentaci jama sadržaj najčešće može uredno rasporeditipomoću kolona i nabrajanja nekada to ni je dovol jno jer su tabele pravi formatBimer podržava standardno Lateh (LaTeX) okruženje za rad sa tabelamaOkruženje za rad sa tabelama se zove tabular Pri kreiranju nove tabele moguće jepodesiti koje kolone će biti razdvojene l ini jom i da l i će nj ihov sadržaj biti centrirani l i uz levu i l i uz desnu ivicu Dodavanje novog reda se jednostavno radidodavanjem hline Lateh pruža zaista jako fleksibi lan rad sa tabelama i sigurno ćedoskočiti svim mogućim i nemogućim zamisl ima Potražite bi lo koje Lateh uputstvoza rad sa tabelama i radiće i sa Bimerom

beginframebegintabular | c | c | c | c |

hlineamp Ponedeljak amp Utorak amp Sreda hline

1 amp 16 amp 32 amp 64 hline2 amp 16 amp 128 amp 1024 hline3 amp 16 amp 512 amp 4096 hline

endtabularendframe

Sam svoj majstor

49

Broj 33

Beamer

Teoreme i istaknut tekstU nastavi su česta izlaganja teorema nj ihovih dokaza i primera U Bimer jeugrađena podrška za elegantno predstavl janje ove trojke Mehanizam takođepodržava postepeno otkrivanje sadržaja sla jda tako da slušaocima ne bude odmahotkriven dokaz teoreme Mehanizam za postepeno otkrivanje se kao i kodnabrajanja postiže pomoću bdquolt1-gtrdquo konstrukci je Evo kako to izgleda

beginframeframetitlePrimer teoreme

begintheoremlt1-gt Teorema kaže da su beamer prezentacijezanimljive

endtheorem

beginexamplelt2-gt Ovaj kod kreira slajd beamer prezentacijeendexample

beginprooflt3-gt Čestitamo stigli ste do kraja serijala o pravljenju beamer prezentacija

endproofendframe

50

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Za krajOvim člankom završavamo seri ja l o Bimeru Nadamo se da smo uspel i da vaszainteresujemo za ovu vrlo korisnu klasu Lateha Trudi l i smo se da vamprezentujemo najvažni je delove Bimera koje ćete najčešće koristiti pri l ikomkreiranja svoj ih prezentaci ja

Napominjemo još jednom da je Bimer samo jedna od klasa Lateha što znači da i zaBimer važi sve ono što ste već mogl i da pročitate u ovom časopisu kad smo pisal iseri ja l bdquoUvod u LaTeXrdquo (LiBRE brojevi 17 do 21) Štaviše ovaj seri ja l o Bimeru jebio nastavak upravo tog seri ja la U ovom seri ja lu nismo pisal i o samomformatiranju teksta u prezentaci jama jer se podrazumeva da važe ista pravi la kao iu Latehu a o tome smo pisal i u prethodnom seri ja lu

Hvala vam što ste prati l i ovaj seri ja l i žel imo vam puno uspeha u kreiranju Bimerprezentaci ja

Sam svoj majstor

51

Broj 33

Autor Nenad Marjanović

Kada smo se upoznal i sa podešavanj ima sistema i umrežavanjem vreme je za našprvi Biglbon Blek (BBB - eng BeagleBone Black) projekat Svakom od nas će ovajizazov dati razl ičite ideje a jedna od nj ih može biti i zaštita privatnosti internetkorisnika Nažalost u Srbi j i ne postoj i ni jedan izlazni tor server (eng node) i to jepomalo tužna sl ika s obzirom da govorimo o populaci j i od sedam mil ionastanovnika Al i ovu sl iku možemo promeniti udruženim snagama i za početakkreiranjem Tor transfer i izlaznog servera U ovde prikazanom grafikonufokusiraćemo se na bdquoRauter Brdquo tačku odnosno transfer server konfiguraci ju

BeagleBone Black Rev C

Vodič od prvog dana (3 deo) ndashBeagleBone Black kao Tor relej

Hardver

52

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Tor predstavl ja mrežu servera koj i se povezuju radi bol je enkripci je podataka izaštite IP adrese korisnika Naš ci l j je da danas postanemo deo ovog predivnogprojekta i da se nađemo na svetskoj karti Tor servera

Brzina interneta i zakonske regulativePotrebno je imati na umu nekol iko bitnih stvari

1 Naš server = naša odgovornost2 Obavezno naznačite da ste vi administrator a ne korisnik istog servera3 Da posedujete internet brzinu od 2 Mbs

Ako ispunjavamo tri navedena pravi la i odgovornosti možemo se posvetitiadministrativnim poslovima

Instalacija i podešavanjaU ovom primeru koristimo Debi jan Vizi (eng Wheezy) odnosno Debi jan 7 verzi juna našem BBB uređaju Vi možete testirati i druge Linuks platforme Prvododajemo izvornu bibl ioteku u etcaptsourceslist faj l pokretanjem sledećekomande u terminalu

echo deb httpdebtorprojectorgtorprojectorg wheezy main gt etcaptsourceslistdtorlist

Zatim dodajemo izvorni kl juč vršimo ažuriranje sistema i instal iramo tor i tor-arm(Tor monitoring sistem)

gpg --keyserver keysgnupgnet --recv 886DDD89gpg --export A3C4F0F979CAA22CDBA8F512EE8CBC9E886DDD89 | sudo apt-keyadd -apt-get updateapt-get install debtorprojectorg-keyring -yapt-get install tor tor-arm egrep screen -y

Ovim smo uspešno završi l i instalaci ju Tor servera i sistema za monitoring odnosnonadgledanja našeg Tor servera Sledećom komandom radimo na podešavanj imaTor servera koja se nalaze u etctortorrc faj lu Obratite pažnju i izvršite potrebne

Hardver

53

Broj 33

izmenu u pol j ima IP adresa (eng Address) nadimka (eng Nickname) i kontaktpodataka (eng ContactInfo) pre pokretanja ove komande Kopiramo i pokrećemokomandu u celosti u terminalu

egrep -v ^(|$) etctortorrcORPort 443Address 19216811Nickname LibreTorRelayRelayBandwidthRate 100 KBRelayBandwidthBurst 120 KBContactInfo ltvi at gmail dot comgt irPort 8080DirPortFrontPage etctortorhtmlExitPolicy reject

Detal je o svim vrednostima nećemo iznositi u ovom broju LiBRE časopisa al ićemo o nj ima pisati u sledećem u kome ćemo pričati o zaštiti Tor servera imogućnosti podešavanja određenih izlaznih pravi la (eng ExitPolicy)

Nakon ovoga možemo primetiti da se u folderu etctor ne nalazi torhtml faj l Ovaj faj l ni je od vel ikog značaja i možete ga l ično napraviti i l i preuzeti jednu kopi ju- naprimer sa sledeće lokaci je

cp usrsharedoctortorhtml etctortorhtml

Opcije i Tor Arm monitoringDa bismo ispravno koristi l i Tor Arm potrebno je urediti još jednom etctortorrcfaj l i restartovati servis

echo -e ldquoDisableDebuggerAttachment 0n AvoidDiskWritesrdquo gtgt etctortorrcsudo service tor reload

Ukol iko žel ite koristiti Tor Arm za nadgledanje aktivnosti na serveru pokreniteprogram screen kl iknite na bdquoEnterrdquo i kucajte sudo -u debian-tor arm Naekranu ćete imati sl ičan prikaz

BeagleBone Black

54

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Hardver

55

Broj 33

Da bismo napusti l i screen program koristimo Ctrl + a + d i na taj način kada sesledeći put pri javimo na server kucamo samo screen -r u terminalu - i naći ćemose ponovo na čuvenom Tor Arm monitoring ekranu

Nakon svake promene konfiguracionih faj lova ako slučajno nismo nešto podesi l ikako treba restartujemo servise

U sledećem broju časopisa govorićemo o minimalnim podešavanj ima ikonfigurisanju izlaznog Tor servera (eng Tor Exit Node) opci jama sigurnosti isl ičnim detal j ima u vezi sa našim prvim projektom Do čitanja u sledećem broju

BeagleBone Black

LUGoNS BarCamp 4subota 7 mart 2015 godine

Četvrti LUGoNS-ov Barkemp (BarCamp) održaće se u Novom Sadu usubotu 7 marta 2015 godine na Fakultetu tehničkih nauka sa početkomu 12 časova

Ulaz je slobodan

Poziv za predaju radovaLUGoNS poziva sve zainteresovane da pošal ju svoje radove (predavanjaprezentaci je radionice i diskusi je) do 28 februara 2015 godine

Oblasti iz koj ih možete da pri javite vaše radove su

bull Slobodan softverbull Zaniml j iv hardverbull Hakerski zakonibull Sigurnosne noćne morebull Anonimnost i privatnost na internetubull Duboki veb (eng Deep Web)bull Soci ja lne mrežebull Soci ja lni inženjeringbull Hakovanje mobi lnih uređajabull Internet u oblaku (eng Clouds) ndash hakovanje razbi janje i neočekivano korišćenjebull DPI (eng deep packet inspection)bull Mreža i mrežna neutralnost ndash vlasništvo cenzura nadmudrivanje i pol itika bdquodefaktordquo standarda

bull Programiranje i programski jezici

Nemojte se ustručavati i slobodno nam se javite ako imate rad na gore navedenei l i sl ične teme koj i smatrate interesantnim

Stranica za predaju radova nalazi se na https events lugonsorgp=1658

Page 48: LiBRE 33 Lat

48

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Tekst koji se nalazi ispod kolonaendblock

endframe

TabeleIako se u radu sa prezentaci jama sadržaj najčešće može uredno rasporeditipomoću kolona i nabrajanja nekada to ni je dovol jno jer su tabele pravi formatBimer podržava standardno Lateh (LaTeX) okruženje za rad sa tabelamaOkruženje za rad sa tabelama se zove tabular Pri kreiranju nove tabele moguće jepodesiti koje kolone će biti razdvojene l ini jom i da l i će nj ihov sadržaj biti centrirani l i uz levu i l i uz desnu ivicu Dodavanje novog reda se jednostavno radidodavanjem hline Lateh pruža zaista jako fleksibi lan rad sa tabelama i sigurno ćedoskočiti svim mogućim i nemogućim zamisl ima Potražite bi lo koje Lateh uputstvoza rad sa tabelama i radiće i sa Bimerom

beginframebegintabular | c | c | c | c |

hlineamp Ponedeljak amp Utorak amp Sreda hline

1 amp 16 amp 32 amp 64 hline2 amp 16 amp 128 amp 1024 hline3 amp 16 amp 512 amp 4096 hline

endtabularendframe

Sam svoj majstor

49

Broj 33

Beamer

Teoreme i istaknut tekstU nastavi su česta izlaganja teorema nj ihovih dokaza i primera U Bimer jeugrađena podrška za elegantno predstavl janje ove trojke Mehanizam takođepodržava postepeno otkrivanje sadržaja sla jda tako da slušaocima ne bude odmahotkriven dokaz teoreme Mehanizam za postepeno otkrivanje se kao i kodnabrajanja postiže pomoću bdquolt1-gtrdquo konstrukci je Evo kako to izgleda

beginframeframetitlePrimer teoreme

begintheoremlt1-gt Teorema kaže da su beamer prezentacijezanimljive

endtheorem

beginexamplelt2-gt Ovaj kod kreira slajd beamer prezentacijeendexample

beginprooflt3-gt Čestitamo stigli ste do kraja serijala o pravljenju beamer prezentacija

endproofendframe

50

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Za krajOvim člankom završavamo seri ja l o Bimeru Nadamo se da smo uspel i da vaszainteresujemo za ovu vrlo korisnu klasu Lateha Trudi l i smo se da vamprezentujemo najvažni je delove Bimera koje ćete najčešće koristiti pri l ikomkreiranja svoj ih prezentaci ja

Napominjemo još jednom da je Bimer samo jedna od klasa Lateha što znači da i zaBimer važi sve ono što ste već mogl i da pročitate u ovom časopisu kad smo pisal iseri ja l bdquoUvod u LaTeXrdquo (LiBRE brojevi 17 do 21) Štaviše ovaj seri ja l o Bimeru jebio nastavak upravo tog seri ja la U ovom seri ja lu nismo pisal i o samomformatiranju teksta u prezentaci jama jer se podrazumeva da važe ista pravi la kao iu Latehu a o tome smo pisal i u prethodnom seri ja lu

Hvala vam što ste prati l i ovaj seri ja l i žel imo vam puno uspeha u kreiranju Bimerprezentaci ja

Sam svoj majstor

51

Broj 33

Autor Nenad Marjanović

Kada smo se upoznal i sa podešavanj ima sistema i umrežavanjem vreme je za našprvi Biglbon Blek (BBB - eng BeagleBone Black) projekat Svakom od nas će ovajizazov dati razl ičite ideje a jedna od nj ih može biti i zaštita privatnosti internetkorisnika Nažalost u Srbi j i ne postoj i ni jedan izlazni tor server (eng node) i to jepomalo tužna sl ika s obzirom da govorimo o populaci j i od sedam mil ionastanovnika Al i ovu sl iku možemo promeniti udruženim snagama i za početakkreiranjem Tor transfer i izlaznog servera U ovde prikazanom grafikonufokusiraćemo se na bdquoRauter Brdquo tačku odnosno transfer server konfiguraci ju

BeagleBone Black Rev C

Vodič od prvog dana (3 deo) ndashBeagleBone Black kao Tor relej

Hardver

52

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Tor predstavl ja mrežu servera koj i se povezuju radi bol je enkripci je podataka izaštite IP adrese korisnika Naš ci l j je da danas postanemo deo ovog predivnogprojekta i da se nađemo na svetskoj karti Tor servera

Brzina interneta i zakonske regulativePotrebno je imati na umu nekol iko bitnih stvari

1 Naš server = naša odgovornost2 Obavezno naznačite da ste vi administrator a ne korisnik istog servera3 Da posedujete internet brzinu od 2 Mbs

Ako ispunjavamo tri navedena pravi la i odgovornosti možemo se posvetitiadministrativnim poslovima

Instalacija i podešavanjaU ovom primeru koristimo Debi jan Vizi (eng Wheezy) odnosno Debi jan 7 verzi juna našem BBB uređaju Vi možete testirati i druge Linuks platforme Prvododajemo izvornu bibl ioteku u etcaptsourceslist faj l pokretanjem sledećekomande u terminalu

echo deb httpdebtorprojectorgtorprojectorg wheezy main gt etcaptsourceslistdtorlist

Zatim dodajemo izvorni kl juč vršimo ažuriranje sistema i instal iramo tor i tor-arm(Tor monitoring sistem)

gpg --keyserver keysgnupgnet --recv 886DDD89gpg --export A3C4F0F979CAA22CDBA8F512EE8CBC9E886DDD89 | sudo apt-keyadd -apt-get updateapt-get install debtorprojectorg-keyring -yapt-get install tor tor-arm egrep screen -y

Ovim smo uspešno završi l i instalaci ju Tor servera i sistema za monitoring odnosnonadgledanja našeg Tor servera Sledećom komandom radimo na podešavanj imaTor servera koja se nalaze u etctortorrc faj lu Obratite pažnju i izvršite potrebne

Hardver

53

Broj 33

izmenu u pol j ima IP adresa (eng Address) nadimka (eng Nickname) i kontaktpodataka (eng ContactInfo) pre pokretanja ove komande Kopiramo i pokrećemokomandu u celosti u terminalu

egrep -v ^(|$) etctortorrcORPort 443Address 19216811Nickname LibreTorRelayRelayBandwidthRate 100 KBRelayBandwidthBurst 120 KBContactInfo ltvi at gmail dot comgt irPort 8080DirPortFrontPage etctortorhtmlExitPolicy reject

Detal je o svim vrednostima nećemo iznositi u ovom broju LiBRE časopisa al ićemo o nj ima pisati u sledećem u kome ćemo pričati o zaštiti Tor servera imogućnosti podešavanja određenih izlaznih pravi la (eng ExitPolicy)

Nakon ovoga možemo primetiti da se u folderu etctor ne nalazi torhtml faj l Ovaj faj l ni je od vel ikog značaja i možete ga l ično napraviti i l i preuzeti jednu kopi ju- naprimer sa sledeće lokaci je

cp usrsharedoctortorhtml etctortorhtml

Opcije i Tor Arm monitoringDa bismo ispravno koristi l i Tor Arm potrebno je urediti još jednom etctortorrcfaj l i restartovati servis

echo -e ldquoDisableDebuggerAttachment 0n AvoidDiskWritesrdquo gtgt etctortorrcsudo service tor reload

Ukol iko žel ite koristiti Tor Arm za nadgledanje aktivnosti na serveru pokreniteprogram screen kl iknite na bdquoEnterrdquo i kucajte sudo -u debian-tor arm Naekranu ćete imati sl ičan prikaz

BeagleBone Black

54

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Hardver

55

Broj 33

Da bismo napusti l i screen program koristimo Ctrl + a + d i na taj način kada sesledeći put pri javimo na server kucamo samo screen -r u terminalu - i naći ćemose ponovo na čuvenom Tor Arm monitoring ekranu

Nakon svake promene konfiguracionih faj lova ako slučajno nismo nešto podesi l ikako treba restartujemo servise

U sledećem broju časopisa govorićemo o minimalnim podešavanj ima ikonfigurisanju izlaznog Tor servera (eng Tor Exit Node) opci jama sigurnosti isl ičnim detal j ima u vezi sa našim prvim projektom Do čitanja u sledećem broju

BeagleBone Black

LUGoNS BarCamp 4subota 7 mart 2015 godine

Četvrti LUGoNS-ov Barkemp (BarCamp) održaće se u Novom Sadu usubotu 7 marta 2015 godine na Fakultetu tehničkih nauka sa početkomu 12 časova

Ulaz je slobodan

Poziv za predaju radovaLUGoNS poziva sve zainteresovane da pošal ju svoje radove (predavanjaprezentaci je radionice i diskusi je) do 28 februara 2015 godine

Oblasti iz koj ih možete da pri javite vaše radove su

bull Slobodan softverbull Zaniml j iv hardverbull Hakerski zakonibull Sigurnosne noćne morebull Anonimnost i privatnost na internetubull Duboki veb (eng Deep Web)bull Soci ja lne mrežebull Soci ja lni inženjeringbull Hakovanje mobi lnih uređajabull Internet u oblaku (eng Clouds) ndash hakovanje razbi janje i neočekivano korišćenjebull DPI (eng deep packet inspection)bull Mreža i mrežna neutralnost ndash vlasništvo cenzura nadmudrivanje i pol itika bdquodefaktordquo standarda

bull Programiranje i programski jezici

Nemojte se ustručavati i slobodno nam se javite ako imate rad na gore navedenei l i sl ične teme koj i smatrate interesantnim

Stranica za predaju radova nalazi se na https events lugonsorgp=1658

Page 49: LiBRE 33 Lat

49

Broj 33

Beamer

Teoreme i istaknut tekstU nastavi su česta izlaganja teorema nj ihovih dokaza i primera U Bimer jeugrađena podrška za elegantno predstavl janje ove trojke Mehanizam takođepodržava postepeno otkrivanje sadržaja sla jda tako da slušaocima ne bude odmahotkriven dokaz teoreme Mehanizam za postepeno otkrivanje se kao i kodnabrajanja postiže pomoću bdquolt1-gtrdquo konstrukci je Evo kako to izgleda

beginframeframetitlePrimer teoreme

begintheoremlt1-gt Teorema kaže da su beamer prezentacijezanimljive

endtheorem

beginexamplelt2-gt Ovaj kod kreira slajd beamer prezentacijeendexample

beginprooflt3-gt Čestitamo stigli ste do kraja serijala o pravljenju beamer prezentacija

endproofendframe

50

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Za krajOvim člankom završavamo seri ja l o Bimeru Nadamo se da smo uspel i da vaszainteresujemo za ovu vrlo korisnu klasu Lateha Trudi l i smo se da vamprezentujemo najvažni je delove Bimera koje ćete najčešće koristiti pri l ikomkreiranja svoj ih prezentaci ja

Napominjemo još jednom da je Bimer samo jedna od klasa Lateha što znači da i zaBimer važi sve ono što ste već mogl i da pročitate u ovom časopisu kad smo pisal iseri ja l bdquoUvod u LaTeXrdquo (LiBRE brojevi 17 do 21) Štaviše ovaj seri ja l o Bimeru jebio nastavak upravo tog seri ja la U ovom seri ja lu nismo pisal i o samomformatiranju teksta u prezentaci jama jer se podrazumeva da važe ista pravi la kao iu Latehu a o tome smo pisal i u prethodnom seri ja lu

Hvala vam što ste prati l i ovaj seri ja l i žel imo vam puno uspeha u kreiranju Bimerprezentaci ja

Sam svoj majstor

51

Broj 33

Autor Nenad Marjanović

Kada smo se upoznal i sa podešavanj ima sistema i umrežavanjem vreme je za našprvi Biglbon Blek (BBB - eng BeagleBone Black) projekat Svakom od nas će ovajizazov dati razl ičite ideje a jedna od nj ih može biti i zaštita privatnosti internetkorisnika Nažalost u Srbi j i ne postoj i ni jedan izlazni tor server (eng node) i to jepomalo tužna sl ika s obzirom da govorimo o populaci j i od sedam mil ionastanovnika Al i ovu sl iku možemo promeniti udruženim snagama i za početakkreiranjem Tor transfer i izlaznog servera U ovde prikazanom grafikonufokusiraćemo se na bdquoRauter Brdquo tačku odnosno transfer server konfiguraci ju

BeagleBone Black Rev C

Vodič od prvog dana (3 deo) ndashBeagleBone Black kao Tor relej

Hardver

52

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Tor predstavl ja mrežu servera koj i se povezuju radi bol je enkripci je podataka izaštite IP adrese korisnika Naš ci l j je da danas postanemo deo ovog predivnogprojekta i da se nađemo na svetskoj karti Tor servera

Brzina interneta i zakonske regulativePotrebno je imati na umu nekol iko bitnih stvari

1 Naš server = naša odgovornost2 Obavezno naznačite da ste vi administrator a ne korisnik istog servera3 Da posedujete internet brzinu od 2 Mbs

Ako ispunjavamo tri navedena pravi la i odgovornosti možemo se posvetitiadministrativnim poslovima

Instalacija i podešavanjaU ovom primeru koristimo Debi jan Vizi (eng Wheezy) odnosno Debi jan 7 verzi juna našem BBB uređaju Vi možete testirati i druge Linuks platforme Prvododajemo izvornu bibl ioteku u etcaptsourceslist faj l pokretanjem sledećekomande u terminalu

echo deb httpdebtorprojectorgtorprojectorg wheezy main gt etcaptsourceslistdtorlist

Zatim dodajemo izvorni kl juč vršimo ažuriranje sistema i instal iramo tor i tor-arm(Tor monitoring sistem)

gpg --keyserver keysgnupgnet --recv 886DDD89gpg --export A3C4F0F979CAA22CDBA8F512EE8CBC9E886DDD89 | sudo apt-keyadd -apt-get updateapt-get install debtorprojectorg-keyring -yapt-get install tor tor-arm egrep screen -y

Ovim smo uspešno završi l i instalaci ju Tor servera i sistema za monitoring odnosnonadgledanja našeg Tor servera Sledećom komandom radimo na podešavanj imaTor servera koja se nalaze u etctortorrc faj lu Obratite pažnju i izvršite potrebne

Hardver

53

Broj 33

izmenu u pol j ima IP adresa (eng Address) nadimka (eng Nickname) i kontaktpodataka (eng ContactInfo) pre pokretanja ove komande Kopiramo i pokrećemokomandu u celosti u terminalu

egrep -v ^(|$) etctortorrcORPort 443Address 19216811Nickname LibreTorRelayRelayBandwidthRate 100 KBRelayBandwidthBurst 120 KBContactInfo ltvi at gmail dot comgt irPort 8080DirPortFrontPage etctortorhtmlExitPolicy reject

Detal je o svim vrednostima nećemo iznositi u ovom broju LiBRE časopisa al ićemo o nj ima pisati u sledećem u kome ćemo pričati o zaštiti Tor servera imogućnosti podešavanja određenih izlaznih pravi la (eng ExitPolicy)

Nakon ovoga možemo primetiti da se u folderu etctor ne nalazi torhtml faj l Ovaj faj l ni je od vel ikog značaja i možete ga l ično napraviti i l i preuzeti jednu kopi ju- naprimer sa sledeće lokaci je

cp usrsharedoctortorhtml etctortorhtml

Opcije i Tor Arm monitoringDa bismo ispravno koristi l i Tor Arm potrebno je urediti još jednom etctortorrcfaj l i restartovati servis

echo -e ldquoDisableDebuggerAttachment 0n AvoidDiskWritesrdquo gtgt etctortorrcsudo service tor reload

Ukol iko žel ite koristiti Tor Arm za nadgledanje aktivnosti na serveru pokreniteprogram screen kl iknite na bdquoEnterrdquo i kucajte sudo -u debian-tor arm Naekranu ćete imati sl ičan prikaz

BeagleBone Black

54

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Hardver

55

Broj 33

Da bismo napusti l i screen program koristimo Ctrl + a + d i na taj način kada sesledeći put pri javimo na server kucamo samo screen -r u terminalu - i naći ćemose ponovo na čuvenom Tor Arm monitoring ekranu

Nakon svake promene konfiguracionih faj lova ako slučajno nismo nešto podesi l ikako treba restartujemo servise

U sledećem broju časopisa govorićemo o minimalnim podešavanj ima ikonfigurisanju izlaznog Tor servera (eng Tor Exit Node) opci jama sigurnosti isl ičnim detal j ima u vezi sa našim prvim projektom Do čitanja u sledećem broju

BeagleBone Black

LUGoNS BarCamp 4subota 7 mart 2015 godine

Četvrti LUGoNS-ov Barkemp (BarCamp) održaće se u Novom Sadu usubotu 7 marta 2015 godine na Fakultetu tehničkih nauka sa početkomu 12 časova

Ulaz je slobodan

Poziv za predaju radovaLUGoNS poziva sve zainteresovane da pošal ju svoje radove (predavanjaprezentaci je radionice i diskusi je) do 28 februara 2015 godine

Oblasti iz koj ih možete da pri javite vaše radove su

bull Slobodan softverbull Zaniml j iv hardverbull Hakerski zakonibull Sigurnosne noćne morebull Anonimnost i privatnost na internetubull Duboki veb (eng Deep Web)bull Soci ja lne mrežebull Soci ja lni inženjeringbull Hakovanje mobi lnih uređajabull Internet u oblaku (eng Clouds) ndash hakovanje razbi janje i neočekivano korišćenjebull DPI (eng deep packet inspection)bull Mreža i mrežna neutralnost ndash vlasništvo cenzura nadmudrivanje i pol itika bdquodefaktordquo standarda

bull Programiranje i programski jezici

Nemojte se ustručavati i slobodno nam se javite ako imate rad na gore navedenei l i sl ične teme koj i smatrate interesantnim

Stranica za predaju radova nalazi se na https events lugonsorgp=1658

Page 50: LiBRE 33 Lat

50

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Za krajOvim člankom završavamo seri ja l o Bimeru Nadamo se da smo uspel i da vaszainteresujemo za ovu vrlo korisnu klasu Lateha Trudi l i smo se da vamprezentujemo najvažni je delove Bimera koje ćete najčešće koristiti pri l ikomkreiranja svoj ih prezentaci ja

Napominjemo još jednom da je Bimer samo jedna od klasa Lateha što znači da i zaBimer važi sve ono što ste već mogl i da pročitate u ovom časopisu kad smo pisal iseri ja l bdquoUvod u LaTeXrdquo (LiBRE brojevi 17 do 21) Štaviše ovaj seri ja l o Bimeru jebio nastavak upravo tog seri ja la U ovom seri ja lu nismo pisal i o samomformatiranju teksta u prezentaci jama jer se podrazumeva da važe ista pravi la kao iu Latehu a o tome smo pisal i u prethodnom seri ja lu

Hvala vam što ste prati l i ovaj seri ja l i žel imo vam puno uspeha u kreiranju Bimerprezentaci ja

Sam svoj majstor

51

Broj 33

Autor Nenad Marjanović

Kada smo se upoznal i sa podešavanj ima sistema i umrežavanjem vreme je za našprvi Biglbon Blek (BBB - eng BeagleBone Black) projekat Svakom od nas će ovajizazov dati razl ičite ideje a jedna od nj ih može biti i zaštita privatnosti internetkorisnika Nažalost u Srbi j i ne postoj i ni jedan izlazni tor server (eng node) i to jepomalo tužna sl ika s obzirom da govorimo o populaci j i od sedam mil ionastanovnika Al i ovu sl iku možemo promeniti udruženim snagama i za početakkreiranjem Tor transfer i izlaznog servera U ovde prikazanom grafikonufokusiraćemo se na bdquoRauter Brdquo tačku odnosno transfer server konfiguraci ju

BeagleBone Black Rev C

Vodič od prvog dana (3 deo) ndashBeagleBone Black kao Tor relej

Hardver

52

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Tor predstavl ja mrežu servera koj i se povezuju radi bol je enkripci je podataka izaštite IP adrese korisnika Naš ci l j je da danas postanemo deo ovog predivnogprojekta i da se nađemo na svetskoj karti Tor servera

Brzina interneta i zakonske regulativePotrebno je imati na umu nekol iko bitnih stvari

1 Naš server = naša odgovornost2 Obavezno naznačite da ste vi administrator a ne korisnik istog servera3 Da posedujete internet brzinu od 2 Mbs

Ako ispunjavamo tri navedena pravi la i odgovornosti možemo se posvetitiadministrativnim poslovima

Instalacija i podešavanjaU ovom primeru koristimo Debi jan Vizi (eng Wheezy) odnosno Debi jan 7 verzi juna našem BBB uređaju Vi možete testirati i druge Linuks platforme Prvododajemo izvornu bibl ioteku u etcaptsourceslist faj l pokretanjem sledećekomande u terminalu

echo deb httpdebtorprojectorgtorprojectorg wheezy main gt etcaptsourceslistdtorlist

Zatim dodajemo izvorni kl juč vršimo ažuriranje sistema i instal iramo tor i tor-arm(Tor monitoring sistem)

gpg --keyserver keysgnupgnet --recv 886DDD89gpg --export A3C4F0F979CAA22CDBA8F512EE8CBC9E886DDD89 | sudo apt-keyadd -apt-get updateapt-get install debtorprojectorg-keyring -yapt-get install tor tor-arm egrep screen -y

Ovim smo uspešno završi l i instalaci ju Tor servera i sistema za monitoring odnosnonadgledanja našeg Tor servera Sledećom komandom radimo na podešavanj imaTor servera koja se nalaze u etctortorrc faj lu Obratite pažnju i izvršite potrebne

Hardver

53

Broj 33

izmenu u pol j ima IP adresa (eng Address) nadimka (eng Nickname) i kontaktpodataka (eng ContactInfo) pre pokretanja ove komande Kopiramo i pokrećemokomandu u celosti u terminalu

egrep -v ^(|$) etctortorrcORPort 443Address 19216811Nickname LibreTorRelayRelayBandwidthRate 100 KBRelayBandwidthBurst 120 KBContactInfo ltvi at gmail dot comgt irPort 8080DirPortFrontPage etctortorhtmlExitPolicy reject

Detal je o svim vrednostima nećemo iznositi u ovom broju LiBRE časopisa al ićemo o nj ima pisati u sledećem u kome ćemo pričati o zaštiti Tor servera imogućnosti podešavanja određenih izlaznih pravi la (eng ExitPolicy)

Nakon ovoga možemo primetiti da se u folderu etctor ne nalazi torhtml faj l Ovaj faj l ni je od vel ikog značaja i možete ga l ično napraviti i l i preuzeti jednu kopi ju- naprimer sa sledeće lokaci je

cp usrsharedoctortorhtml etctortorhtml

Opcije i Tor Arm monitoringDa bismo ispravno koristi l i Tor Arm potrebno je urediti još jednom etctortorrcfaj l i restartovati servis

echo -e ldquoDisableDebuggerAttachment 0n AvoidDiskWritesrdquo gtgt etctortorrcsudo service tor reload

Ukol iko žel ite koristiti Tor Arm za nadgledanje aktivnosti na serveru pokreniteprogram screen kl iknite na bdquoEnterrdquo i kucajte sudo -u debian-tor arm Naekranu ćete imati sl ičan prikaz

BeagleBone Black

54

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Hardver

55

Broj 33

Da bismo napusti l i screen program koristimo Ctrl + a + d i na taj način kada sesledeći put pri javimo na server kucamo samo screen -r u terminalu - i naći ćemose ponovo na čuvenom Tor Arm monitoring ekranu

Nakon svake promene konfiguracionih faj lova ako slučajno nismo nešto podesi l ikako treba restartujemo servise

U sledećem broju časopisa govorićemo o minimalnim podešavanj ima ikonfigurisanju izlaznog Tor servera (eng Tor Exit Node) opci jama sigurnosti isl ičnim detal j ima u vezi sa našim prvim projektom Do čitanja u sledećem broju

BeagleBone Black

LUGoNS BarCamp 4subota 7 mart 2015 godine

Četvrti LUGoNS-ov Barkemp (BarCamp) održaće se u Novom Sadu usubotu 7 marta 2015 godine na Fakultetu tehničkih nauka sa početkomu 12 časova

Ulaz je slobodan

Poziv za predaju radovaLUGoNS poziva sve zainteresovane da pošal ju svoje radove (predavanjaprezentaci je radionice i diskusi je) do 28 februara 2015 godine

Oblasti iz koj ih možete da pri javite vaše radove su

bull Slobodan softverbull Zaniml j iv hardverbull Hakerski zakonibull Sigurnosne noćne morebull Anonimnost i privatnost na internetubull Duboki veb (eng Deep Web)bull Soci ja lne mrežebull Soci ja lni inženjeringbull Hakovanje mobi lnih uređajabull Internet u oblaku (eng Clouds) ndash hakovanje razbi janje i neočekivano korišćenjebull DPI (eng deep packet inspection)bull Mreža i mrežna neutralnost ndash vlasništvo cenzura nadmudrivanje i pol itika bdquodefaktordquo standarda

bull Programiranje i programski jezici

Nemojte se ustručavati i slobodno nam se javite ako imate rad na gore navedenei l i sl ične teme koj i smatrate interesantnim

Stranica za predaju radova nalazi se na https events lugonsorgp=1658

Page 51: LiBRE 33 Lat

51

Broj 33

Autor Nenad Marjanović

Kada smo se upoznal i sa podešavanj ima sistema i umrežavanjem vreme je za našprvi Biglbon Blek (BBB - eng BeagleBone Black) projekat Svakom od nas će ovajizazov dati razl ičite ideje a jedna od nj ih može biti i zaštita privatnosti internetkorisnika Nažalost u Srbi j i ne postoj i ni jedan izlazni tor server (eng node) i to jepomalo tužna sl ika s obzirom da govorimo o populaci j i od sedam mil ionastanovnika Al i ovu sl iku možemo promeniti udruženim snagama i za početakkreiranjem Tor transfer i izlaznog servera U ovde prikazanom grafikonufokusiraćemo se na bdquoRauter Brdquo tačku odnosno transfer server konfiguraci ju

BeagleBone Black Rev C

Vodič od prvog dana (3 deo) ndashBeagleBone Black kao Tor relej

Hardver

52

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Tor predstavl ja mrežu servera koj i se povezuju radi bol je enkripci je podataka izaštite IP adrese korisnika Naš ci l j je da danas postanemo deo ovog predivnogprojekta i da se nađemo na svetskoj karti Tor servera

Brzina interneta i zakonske regulativePotrebno je imati na umu nekol iko bitnih stvari

1 Naš server = naša odgovornost2 Obavezno naznačite da ste vi administrator a ne korisnik istog servera3 Da posedujete internet brzinu od 2 Mbs

Ako ispunjavamo tri navedena pravi la i odgovornosti možemo se posvetitiadministrativnim poslovima

Instalacija i podešavanjaU ovom primeru koristimo Debi jan Vizi (eng Wheezy) odnosno Debi jan 7 verzi juna našem BBB uređaju Vi možete testirati i druge Linuks platforme Prvododajemo izvornu bibl ioteku u etcaptsourceslist faj l pokretanjem sledećekomande u terminalu

echo deb httpdebtorprojectorgtorprojectorg wheezy main gt etcaptsourceslistdtorlist

Zatim dodajemo izvorni kl juč vršimo ažuriranje sistema i instal iramo tor i tor-arm(Tor monitoring sistem)

gpg --keyserver keysgnupgnet --recv 886DDD89gpg --export A3C4F0F979CAA22CDBA8F512EE8CBC9E886DDD89 | sudo apt-keyadd -apt-get updateapt-get install debtorprojectorg-keyring -yapt-get install tor tor-arm egrep screen -y

Ovim smo uspešno završi l i instalaci ju Tor servera i sistema za monitoring odnosnonadgledanja našeg Tor servera Sledećom komandom radimo na podešavanj imaTor servera koja se nalaze u etctortorrc faj lu Obratite pažnju i izvršite potrebne

Hardver

53

Broj 33

izmenu u pol j ima IP adresa (eng Address) nadimka (eng Nickname) i kontaktpodataka (eng ContactInfo) pre pokretanja ove komande Kopiramo i pokrećemokomandu u celosti u terminalu

egrep -v ^(|$) etctortorrcORPort 443Address 19216811Nickname LibreTorRelayRelayBandwidthRate 100 KBRelayBandwidthBurst 120 KBContactInfo ltvi at gmail dot comgt irPort 8080DirPortFrontPage etctortorhtmlExitPolicy reject

Detal je o svim vrednostima nećemo iznositi u ovom broju LiBRE časopisa al ićemo o nj ima pisati u sledećem u kome ćemo pričati o zaštiti Tor servera imogućnosti podešavanja određenih izlaznih pravi la (eng ExitPolicy)

Nakon ovoga možemo primetiti da se u folderu etctor ne nalazi torhtml faj l Ovaj faj l ni je od vel ikog značaja i možete ga l ično napraviti i l i preuzeti jednu kopi ju- naprimer sa sledeće lokaci je

cp usrsharedoctortorhtml etctortorhtml

Opcije i Tor Arm monitoringDa bismo ispravno koristi l i Tor Arm potrebno je urediti još jednom etctortorrcfaj l i restartovati servis

echo -e ldquoDisableDebuggerAttachment 0n AvoidDiskWritesrdquo gtgt etctortorrcsudo service tor reload

Ukol iko žel ite koristiti Tor Arm za nadgledanje aktivnosti na serveru pokreniteprogram screen kl iknite na bdquoEnterrdquo i kucajte sudo -u debian-tor arm Naekranu ćete imati sl ičan prikaz

BeagleBone Black

54

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Hardver

55

Broj 33

Da bismo napusti l i screen program koristimo Ctrl + a + d i na taj način kada sesledeći put pri javimo na server kucamo samo screen -r u terminalu - i naći ćemose ponovo na čuvenom Tor Arm monitoring ekranu

Nakon svake promene konfiguracionih faj lova ako slučajno nismo nešto podesi l ikako treba restartujemo servise

U sledećem broju časopisa govorićemo o minimalnim podešavanj ima ikonfigurisanju izlaznog Tor servera (eng Tor Exit Node) opci jama sigurnosti isl ičnim detal j ima u vezi sa našim prvim projektom Do čitanja u sledećem broju

BeagleBone Black

LUGoNS BarCamp 4subota 7 mart 2015 godine

Četvrti LUGoNS-ov Barkemp (BarCamp) održaće se u Novom Sadu usubotu 7 marta 2015 godine na Fakultetu tehničkih nauka sa početkomu 12 časova

Ulaz je slobodan

Poziv za predaju radovaLUGoNS poziva sve zainteresovane da pošal ju svoje radove (predavanjaprezentaci je radionice i diskusi je) do 28 februara 2015 godine

Oblasti iz koj ih možete da pri javite vaše radove su

bull Slobodan softverbull Zaniml j iv hardverbull Hakerski zakonibull Sigurnosne noćne morebull Anonimnost i privatnost na internetubull Duboki veb (eng Deep Web)bull Soci ja lne mrežebull Soci ja lni inženjeringbull Hakovanje mobi lnih uređajabull Internet u oblaku (eng Clouds) ndash hakovanje razbi janje i neočekivano korišćenjebull DPI (eng deep packet inspection)bull Mreža i mrežna neutralnost ndash vlasništvo cenzura nadmudrivanje i pol itika bdquodefaktordquo standarda

bull Programiranje i programski jezici

Nemojte se ustručavati i slobodno nam se javite ako imate rad na gore navedenei l i sl ične teme koj i smatrate interesantnim

Stranica za predaju radova nalazi se na https events lugonsorgp=1658

Page 52: LiBRE 33 Lat

52

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Tor predstavl ja mrežu servera koj i se povezuju radi bol je enkripci je podataka izaštite IP adrese korisnika Naš ci l j je da danas postanemo deo ovog predivnogprojekta i da se nađemo na svetskoj karti Tor servera

Brzina interneta i zakonske regulativePotrebno je imati na umu nekol iko bitnih stvari

1 Naš server = naša odgovornost2 Obavezno naznačite da ste vi administrator a ne korisnik istog servera3 Da posedujete internet brzinu od 2 Mbs

Ako ispunjavamo tri navedena pravi la i odgovornosti možemo se posvetitiadministrativnim poslovima

Instalacija i podešavanjaU ovom primeru koristimo Debi jan Vizi (eng Wheezy) odnosno Debi jan 7 verzi juna našem BBB uređaju Vi možete testirati i druge Linuks platforme Prvododajemo izvornu bibl ioteku u etcaptsourceslist faj l pokretanjem sledećekomande u terminalu

echo deb httpdebtorprojectorgtorprojectorg wheezy main gt etcaptsourceslistdtorlist

Zatim dodajemo izvorni kl juč vršimo ažuriranje sistema i instal iramo tor i tor-arm(Tor monitoring sistem)

gpg --keyserver keysgnupgnet --recv 886DDD89gpg --export A3C4F0F979CAA22CDBA8F512EE8CBC9E886DDD89 | sudo apt-keyadd -apt-get updateapt-get install debtorprojectorg-keyring -yapt-get install tor tor-arm egrep screen -y

Ovim smo uspešno završi l i instalaci ju Tor servera i sistema za monitoring odnosnonadgledanja našeg Tor servera Sledećom komandom radimo na podešavanj imaTor servera koja se nalaze u etctortorrc faj lu Obratite pažnju i izvršite potrebne

Hardver

53

Broj 33

izmenu u pol j ima IP adresa (eng Address) nadimka (eng Nickname) i kontaktpodataka (eng ContactInfo) pre pokretanja ove komande Kopiramo i pokrećemokomandu u celosti u terminalu

egrep -v ^(|$) etctortorrcORPort 443Address 19216811Nickname LibreTorRelayRelayBandwidthRate 100 KBRelayBandwidthBurst 120 KBContactInfo ltvi at gmail dot comgt irPort 8080DirPortFrontPage etctortorhtmlExitPolicy reject

Detal je o svim vrednostima nećemo iznositi u ovom broju LiBRE časopisa al ićemo o nj ima pisati u sledećem u kome ćemo pričati o zaštiti Tor servera imogućnosti podešavanja određenih izlaznih pravi la (eng ExitPolicy)

Nakon ovoga možemo primetiti da se u folderu etctor ne nalazi torhtml faj l Ovaj faj l ni je od vel ikog značaja i možete ga l ično napraviti i l i preuzeti jednu kopi ju- naprimer sa sledeće lokaci je

cp usrsharedoctortorhtml etctortorhtml

Opcije i Tor Arm monitoringDa bismo ispravno koristi l i Tor Arm potrebno je urediti još jednom etctortorrcfaj l i restartovati servis

echo -e ldquoDisableDebuggerAttachment 0n AvoidDiskWritesrdquo gtgt etctortorrcsudo service tor reload

Ukol iko žel ite koristiti Tor Arm za nadgledanje aktivnosti na serveru pokreniteprogram screen kl iknite na bdquoEnterrdquo i kucajte sudo -u debian-tor arm Naekranu ćete imati sl ičan prikaz

BeagleBone Black

54

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Hardver

55

Broj 33

Da bismo napusti l i screen program koristimo Ctrl + a + d i na taj način kada sesledeći put pri javimo na server kucamo samo screen -r u terminalu - i naći ćemose ponovo na čuvenom Tor Arm monitoring ekranu

Nakon svake promene konfiguracionih faj lova ako slučajno nismo nešto podesi l ikako treba restartujemo servise

U sledećem broju časopisa govorićemo o minimalnim podešavanj ima ikonfigurisanju izlaznog Tor servera (eng Tor Exit Node) opci jama sigurnosti isl ičnim detal j ima u vezi sa našim prvim projektom Do čitanja u sledećem broju

BeagleBone Black

LUGoNS BarCamp 4subota 7 mart 2015 godine

Četvrti LUGoNS-ov Barkemp (BarCamp) održaće se u Novom Sadu usubotu 7 marta 2015 godine na Fakultetu tehničkih nauka sa početkomu 12 časova

Ulaz je slobodan

Poziv za predaju radovaLUGoNS poziva sve zainteresovane da pošal ju svoje radove (predavanjaprezentaci je radionice i diskusi je) do 28 februara 2015 godine

Oblasti iz koj ih možete da pri javite vaše radove su

bull Slobodan softverbull Zaniml j iv hardverbull Hakerski zakonibull Sigurnosne noćne morebull Anonimnost i privatnost na internetubull Duboki veb (eng Deep Web)bull Soci ja lne mrežebull Soci ja lni inženjeringbull Hakovanje mobi lnih uređajabull Internet u oblaku (eng Clouds) ndash hakovanje razbi janje i neočekivano korišćenjebull DPI (eng deep packet inspection)bull Mreža i mrežna neutralnost ndash vlasništvo cenzura nadmudrivanje i pol itika bdquodefaktordquo standarda

bull Programiranje i programski jezici

Nemojte se ustručavati i slobodno nam se javite ako imate rad na gore navedenei l i sl ične teme koj i smatrate interesantnim

Stranica za predaju radova nalazi se na https events lugonsorgp=1658

Page 53: LiBRE 33 Lat

53

Broj 33

izmenu u pol j ima IP adresa (eng Address) nadimka (eng Nickname) i kontaktpodataka (eng ContactInfo) pre pokretanja ove komande Kopiramo i pokrećemokomandu u celosti u terminalu

egrep -v ^(|$) etctortorrcORPort 443Address 19216811Nickname LibreTorRelayRelayBandwidthRate 100 KBRelayBandwidthBurst 120 KBContactInfo ltvi at gmail dot comgt irPort 8080DirPortFrontPage etctortorhtmlExitPolicy reject

Detal je o svim vrednostima nećemo iznositi u ovom broju LiBRE časopisa al ićemo o nj ima pisati u sledećem u kome ćemo pričati o zaštiti Tor servera imogućnosti podešavanja određenih izlaznih pravi la (eng ExitPolicy)

Nakon ovoga možemo primetiti da se u folderu etctor ne nalazi torhtml faj l Ovaj faj l ni je od vel ikog značaja i možete ga l ično napraviti i l i preuzeti jednu kopi ju- naprimer sa sledeće lokaci je

cp usrsharedoctortorhtml etctortorhtml

Opcije i Tor Arm monitoringDa bismo ispravno koristi l i Tor Arm potrebno je urediti još jednom etctortorrcfaj l i restartovati servis

echo -e ldquoDisableDebuggerAttachment 0n AvoidDiskWritesrdquo gtgt etctortorrcsudo service tor reload

Ukol iko žel ite koristiti Tor Arm za nadgledanje aktivnosti na serveru pokreniteprogram screen kl iknite na bdquoEnterrdquo i kucajte sudo -u debian-tor arm Naekranu ćete imati sl ičan prikaz

BeagleBone Black

54

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Hardver

55

Broj 33

Da bismo napusti l i screen program koristimo Ctrl + a + d i na taj način kada sesledeći put pri javimo na server kucamo samo screen -r u terminalu - i naći ćemose ponovo na čuvenom Tor Arm monitoring ekranu

Nakon svake promene konfiguracionih faj lova ako slučajno nismo nešto podesi l ikako treba restartujemo servise

U sledećem broju časopisa govorićemo o minimalnim podešavanj ima ikonfigurisanju izlaznog Tor servera (eng Tor Exit Node) opci jama sigurnosti isl ičnim detal j ima u vezi sa našim prvim projektom Do čitanja u sledećem broju

BeagleBone Black

LUGoNS BarCamp 4subota 7 mart 2015 godine

Četvrti LUGoNS-ov Barkemp (BarCamp) održaće se u Novom Sadu usubotu 7 marta 2015 godine na Fakultetu tehničkih nauka sa početkomu 12 časova

Ulaz je slobodan

Poziv za predaju radovaLUGoNS poziva sve zainteresovane da pošal ju svoje radove (predavanjaprezentaci je radionice i diskusi je) do 28 februara 2015 godine

Oblasti iz koj ih možete da pri javite vaše radove su

bull Slobodan softverbull Zaniml j iv hardverbull Hakerski zakonibull Sigurnosne noćne morebull Anonimnost i privatnost na internetubull Duboki veb (eng Deep Web)bull Soci ja lne mrežebull Soci ja lni inženjeringbull Hakovanje mobi lnih uređajabull Internet u oblaku (eng Clouds) ndash hakovanje razbi janje i neočekivano korišćenjebull DPI (eng deep packet inspection)bull Mreža i mrežna neutralnost ndash vlasništvo cenzura nadmudrivanje i pol itika bdquodefaktordquo standarda

bull Programiranje i programski jezici

Nemojte se ustručavati i slobodno nam se javite ako imate rad na gore navedenei l i sl ične teme koj i smatrate interesantnim

Stranica za predaju radova nalazi se na https events lugonsorgp=1658

Page 54: LiBRE 33 Lat

54

LLiiBBRREE ČASOPIS O SLOBODNOM SOFTVERU Februar 2015

Hardver

55

Broj 33

Da bismo napusti l i screen program koristimo Ctrl + a + d i na taj način kada sesledeći put pri javimo na server kucamo samo screen -r u terminalu - i naći ćemose ponovo na čuvenom Tor Arm monitoring ekranu

Nakon svake promene konfiguracionih faj lova ako slučajno nismo nešto podesi l ikako treba restartujemo servise

U sledećem broju časopisa govorićemo o minimalnim podešavanj ima ikonfigurisanju izlaznog Tor servera (eng Tor Exit Node) opci jama sigurnosti isl ičnim detal j ima u vezi sa našim prvim projektom Do čitanja u sledećem broju

BeagleBone Black

LUGoNS BarCamp 4subota 7 mart 2015 godine

Četvrti LUGoNS-ov Barkemp (BarCamp) održaće se u Novom Sadu usubotu 7 marta 2015 godine na Fakultetu tehničkih nauka sa početkomu 12 časova

Ulaz je slobodan

Poziv za predaju radovaLUGoNS poziva sve zainteresovane da pošal ju svoje radove (predavanjaprezentaci je radionice i diskusi je) do 28 februara 2015 godine

Oblasti iz koj ih možete da pri javite vaše radove su

bull Slobodan softverbull Zaniml j iv hardverbull Hakerski zakonibull Sigurnosne noćne morebull Anonimnost i privatnost na internetubull Duboki veb (eng Deep Web)bull Soci ja lne mrežebull Soci ja lni inženjeringbull Hakovanje mobi lnih uređajabull Internet u oblaku (eng Clouds) ndash hakovanje razbi janje i neočekivano korišćenjebull DPI (eng deep packet inspection)bull Mreža i mrežna neutralnost ndash vlasništvo cenzura nadmudrivanje i pol itika bdquodefaktordquo standarda

bull Programiranje i programski jezici

Nemojte se ustručavati i slobodno nam se javite ako imate rad na gore navedenei l i sl ične teme koj i smatrate interesantnim

Stranica za predaju radova nalazi se na https events lugonsorgp=1658

Page 55: LiBRE 33 Lat

55

Broj 33

Da bismo napusti l i screen program koristimo Ctrl + a + d i na taj način kada sesledeći put pri javimo na server kucamo samo screen -r u terminalu - i naći ćemose ponovo na čuvenom Tor Arm monitoring ekranu

Nakon svake promene konfiguracionih faj lova ako slučajno nismo nešto podesi l ikako treba restartujemo servise

U sledećem broju časopisa govorićemo o minimalnim podešavanj ima ikonfigurisanju izlaznog Tor servera (eng Tor Exit Node) opci jama sigurnosti isl ičnim detal j ima u vezi sa našim prvim projektom Do čitanja u sledećem broju

BeagleBone Black

LUGoNS BarCamp 4subota 7 mart 2015 godine

Četvrti LUGoNS-ov Barkemp (BarCamp) održaće se u Novom Sadu usubotu 7 marta 2015 godine na Fakultetu tehničkih nauka sa početkomu 12 časova

Ulaz je slobodan

Poziv za predaju radovaLUGoNS poziva sve zainteresovane da pošal ju svoje radove (predavanjaprezentaci je radionice i diskusi je) do 28 februara 2015 godine

Oblasti iz koj ih možete da pri javite vaše radove su

bull Slobodan softverbull Zaniml j iv hardverbull Hakerski zakonibull Sigurnosne noćne morebull Anonimnost i privatnost na internetubull Duboki veb (eng Deep Web)bull Soci ja lne mrežebull Soci ja lni inženjeringbull Hakovanje mobi lnih uređajabull Internet u oblaku (eng Clouds) ndash hakovanje razbi janje i neočekivano korišćenjebull DPI (eng deep packet inspection)bull Mreža i mrežna neutralnost ndash vlasništvo cenzura nadmudrivanje i pol itika bdquodefaktordquo standarda

bull Programiranje i programski jezici

Nemojte se ustručavati i slobodno nam se javite ako imate rad na gore navedenei l i sl ične teme koj i smatrate interesantnim

Stranica za predaju radova nalazi se na https events lugonsorgp=1658

Page 56: LiBRE 33 Lat

LUGoNS BarCamp 4subota 7 mart 2015 godine

Četvrti LUGoNS-ov Barkemp (BarCamp) održaće se u Novom Sadu usubotu 7 marta 2015 godine na Fakultetu tehničkih nauka sa početkomu 12 časova

Ulaz je slobodan

Poziv za predaju radovaLUGoNS poziva sve zainteresovane da pošal ju svoje radove (predavanjaprezentaci je radionice i diskusi je) do 28 februara 2015 godine

Oblasti iz koj ih možete da pri javite vaše radove su

bull Slobodan softverbull Zaniml j iv hardverbull Hakerski zakonibull Sigurnosne noćne morebull Anonimnost i privatnost na internetubull Duboki veb (eng Deep Web)bull Soci ja lne mrežebull Soci ja lni inženjeringbull Hakovanje mobi lnih uređajabull Internet u oblaku (eng Clouds) ndash hakovanje razbi janje i neočekivano korišćenjebull DPI (eng deep packet inspection)bull Mreža i mrežna neutralnost ndash vlasništvo cenzura nadmudrivanje i pol itika bdquodefaktordquo standarda

bull Programiranje i programski jezici

Nemojte se ustručavati i slobodno nam se javite ako imate rad na gore navedenei l i sl ične teme koj i smatrate interesantnim

Stranica za predaju radova nalazi se na https events lugonsorgp=1658