<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0" 
    xmlns:dc="http://purl.org/dc/elements/1.1/"
    xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
    xmlns:admin="http://webns.net/mvcb/"
    xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
    xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:itunes="http://www.itunes.com/dtds/podcast-1.0.dtd">
	<channel>
<title>Jan Rychter</title><link>http://jan.rychter.com/index.html</link><description>Blog technologiczny</description><dc:language>pl</dc:language><dc:creator>jan@rychter.com</dc:creator><dc:rights>Copyright (C) 2008 Jan Rychter</dc:rights><dc:date>2008-09-21T11:07:19+02:00</dc:date><admin:generatorAgent rdf:resource="http://www.realmacsoftware.com/" />
<admin:errorReportsTo rdf:resource="mailto:jan@rychter.com" /><sy:updatePeriod>hourly</sy:updatePeriod>
<sy:updateFrequency>1</sy:updateFrequency>
<sy:updateBase>2000-01-01T12:00+00:00</sy:updateBase>
<lastBuildDate>Sun, 21 Sep 2008 11:13:17 +0200</lastBuildDate><item><title>Aula 25: zdj&#x119;cia</title><dc:creator>jan@rychter.com</dc:creator><category>Aula</category><dc:date>2008-09-21T11:07:19+02:00</dc:date><link>http://jan.rychter.com/blog/files/b8bdfb202dab6ac16912760988d3f663-13.html#unique-entry-id-13</link><guid isPermaLink="true">http://jan.rychter.com/blog/files/b8bdfb202dab6ac16912760988d3f663-13.html#unique-entry-id-13</guid><content:encoded><![CDATA[Zaczęliśmy nowy sezon spotkań <a href="http://aulapolska.pl/" rel="self">aulowych</a>. Z rozmachem, bo w sali Agory zmieściło się około 130 os&oacute;b. Jak zwykle według wielu uczestnik&oacute;w najciekawsza część spotkań to kuluarowe dyskusje przy pizzy, jednak moim zdaniem panel dyskusyjny z udziałem przedstawicieli funduszy inwestycyjnych typu <em>seed</em> r&oacute;wnież był bardzo interesujący. Z pewnością będzie więcej tego typu dyskusji na przyszłych Aulach (może nieco staranniej przygotowanych).<br /><br />Na razie zaś <a href="../photography/aula25/aula25.html" rel="self" title="Aula 25">zdjęcia</a> dla tych, kt&oacute;rzy nie mogli być.<br />]]></content:encoded></item><item><title>Obiektywne podejmowanie decyzji technologicznych</title><dc:creator>jan@rychter.com</dc:creator><category>Technologie</category><dc:date>2008-07-04T17:10:47+02:00</dc:date><link>http://jan.rychter.com/blog/files/obiektywne-decyzje-technologiczne-07-2008.html#unique-entry-id-11</link><guid isPermaLink="true">http://jan.rychter.com/blog/files/obiektywne-decyzje-technologiczne-07-2008.html#unique-entry-id-11</guid><content:encoded><![CDATA[Niedawno znowu miałem do czynienia z wybieraniem systemu kontroli wersji (VCS). Spotykam się z tym zagadnieniem średnio raz na rok w r&oacute;żnych okolicznościach i za każdym razem wyboru trzeba dokonywać od nowa. Jest tak gł&oacute;wnie dlatego, że od kilku lat mamy do czynienia z prawdziwą eksplozją ilości system&oacute;w VCS i wreszcie jest w czym wybierać.<br /><br />O tym co wybrałem i dlaczego napiszę kiedy indziej, teraz chciałem się skupić na spostrzeżeniu dotyczącym samego procesu wyboru.<br /><br />Rozproszonych system&oacute;w kontroli wersji jest wiele. Przynajmniej cztery stanowią w tej chwili czoł&oacute;wkę: darcs, git, mercurial (hg) i bzr. Zar&oacute;wno sama technologia śledzenia wersji jak i systemy w tym pomagające są niezmiernie skomplikowane. Mam tu na myśli skomplikowanie samej dziedziny problemu -- nie da się uprościć czegoś, co z natury jest trudne.<br /><br />Jak zachowuje się umysł ludzki gdy ma dokonać wyboru spośr&oacute;d kilku trudnych do zrozumienia możliwości w niezmiernie skomplikowanym środowisku? Kieruje się intuicją!<br /><br />Intuicja jest znakomitym sposobem na podejmowanie decyzji i z pewnością w czasach gdy byliśmy rasą polującą na zwierzynę w lesie nie raz ratowała nam życie i napełniała żołądki. Niestety, zawodzi kompletnie przy skomplikowanych technologicznych zagadnieniach. Tu por&oacute;wnywać powinniśmy starannie, krok po kroku, robiąc notatki, wypełniając tabele. Nic na skr&oacute;ty.<br /><br />Tymczasem warto poczytać fora dyskusyjne albo posłuchać dowolnej dyskusji informatyk&oacute;w na temat system&oacute;w DVCS. &ldquo;git jest za skomplikowany żeby się go dało używać&rdquo;, &ldquo;darcs jest wolny&rdquo;, &ldquo;mercurial jest jedynym sensownym systemem, jest wspaniały, a reszta jest gorsza&rdquo;, &ldquo;bazaar jest najlepszy, bo jest w pythonie i łatwo go modyfikować&rdquo; -- to tylko niekt&oacute;re ze stwierdzeń, jakie już usłyszałem. Problem w tym, że każde z nich wygłaszane było przez osobę, kt&oacute;ra nie zadała sobie trudu przetestowania kilku system&oacute;w! Każdy z wypowiadających się zaczął proces testowania i gdy tylko znalazł jeden system, kt&oacute;ry w miarę spełniał jego wymagania (i kt&oacute;rego się w miarę nauczył), zaprzestawał poszukiwań. Dlaczego? Bo tak jest łatwiej! Trzeba włożyć wysiłek i przełamać się, by nauczyć się kolejnego systemu, umysł intuicyjnie odrzuca wszystko co z nim związane. Ten pierwszy wydaje nam się najlepszy, tylko dlatego, że już włożyliśmy tyle wysiłku w nauczenie się go.<br /><br />Do tego dochodzi intuicja: jeśli czegoś używa więcej os&oacute;b, to pewnie jest lepsze. Jeśli strona WWW dotycząca jednego systemu jest lepsza niż innego, to &oacute;w system jest lepszy. Jeśli...<br /><br />Problem dotyczy nie tylko wyboru systemu kontroli wersji. Mn&oacute;stwo decyzji technologicznych podejmowanych jest bez odpowiedniego zbadania opcji, na podstawie intuicji. Zbyt często też trzymamy się kurczowo pierwszej lepiej zrozumianej opcji, zamiast włożyć wysiłek w zrozumienie wszystkich.<br /><br />Znacie podobne przypadki? Nie zgadzacie się? <a href="mailto:jan@rychter.com" rel="self">Piszcie do mnie</a>.<br />]]></content:encoded></item><item><title>Aula 24: zdj&#x119;cia</title><dc:creator>jan@rychter.com</dc:creator><category>Aula</category><dc:date>2008-07-04T00:19:26+02:00</dc:date><link>http://jan.rychter.com/blog/files/67c95d6fdce00f64de8eb016c582882f-10.html#unique-entry-id-10</link><guid isPermaLink="true">http://jan.rychter.com/blog/files/67c95d6fdce00f64de8eb016c582882f-10.html#unique-entry-id-10</guid><content:encoded><![CDATA[Oto <a href="../photography/aula24/aula24.html" rel="self" title="Aula 24">zdjęcia z Auli 24</a>, ostatniej przed wakacjami. Było tłumnie, więc przydał się balkon, gdzie pomieściła się część uczestnik&oacute;w!]]></content:encoded></item><item><title>TechAula 2 wkr&#xf3;tce</title><dc:creator>jan@rychter.com</dc:creator><category>Aula</category><dc:date>2008-06-23T12:02:40+02:00</dc:date><link>http://jan.rychter.com/blog/files/cddd77578a59933360e935b822eef406-9.html#unique-entry-id-9</link><guid isPermaLink="true">http://jan.rychter.com/blog/files/cddd77578a59933360e935b822eef406-9.html#unique-entry-id-9</guid><content:encoded><![CDATA[Już w najbliższy czwartek druga TechAula! Zapowiada się ciekawie: <a href="http://binarylifeforms.com/" rel="self">Marcin Kaszyński</a> opowie o django. Cieszy mnie to, bo od dawna chciałem usłyszeć więcej o django od kogoś, kto sporo go używał. Marcin django używa regularnie i od dawna, co więcej używa go do pisania prawdziwych aplikacji (np. <a href="http://oiola.com/" rel="self">Oiola</a>), więc temat zna doskonale.<br /><br /><a href="http://korpus.pl/~nathell" rel="self">Daniel Janus</a> powie o obsłudze błęd&oacute;w. Temat często zamiatany przez programist&oacute;w pod szafę, w praktyce staje się bardzo istotny gdy mamy klient&oacute;w płacących za używanie oprogramowania. Daniel ma spore doświadczenie z kilkoma językami oprogramowania, co daje mu też szerokie spojrzenie na ten temat.<br /><br />Sam zamierzam kr&oacute;tko przedstawić koncepcję kontynuacji oraz pokazać dlaczego są interesującym tematem jeśli chodzi o aplikacje WWW. Będzie kr&oacute;tko, to raczej pilot serialu niż pełnoprawne wystąpienie, ale mam nadzieję zainteresować tematem kilka os&oacute;b.<br /><br /><a href="http://aulapolska.pl/?p=65" rel="self">Zapraszamy</a> -- warto też powiedzieć o spotkaniu znajomym programistom, bo nie każdy czytuje blogi.]]></content:encoded></item><item><title>Aula 23: zdj&#x119;cia</title><dc:creator>jan@rychter.com</dc:creator><category>Fotografia</category><category>Aula</category><dc:date>2008-06-20T11:09:14+02:00</dc:date><link>http://jan.rychter.com/blog/files/3215074a4cbf8b90e3cd5dd3eceb3cf8-8.html#unique-entry-id-8</link><guid isPermaLink="true">http://jan.rychter.com/blog/files/3215074a4cbf8b90e3cd5dd3eceb3cf8-8.html#unique-entry-id-8</guid><content:encoded><![CDATA[Oto <a href="../photography/aula23/aula23.html" rel="self" title="Aula 23">zdjęcia z Auli 23</a>, kt&oacute;ra odbyła się wczoraj. Przy okazji przypomnę, że już za tydzień druga TechAula -- program pojawi się wkr&oacute;tce na <a href="http://aulapolska.pl/" rel="self">http://aulapolska.pl/</a>. Będzie znowu o pisaniu aplikacji WWW: django i nie tylko!<br />]]></content:encoded></item><item><title>KreoAula 1</title><dc:creator>jan@rychter.com</dc:creator><category>Fotografia</category><category>Aula</category><dc:date>2008-06-13T12:41:25+02:00</dc:date><link>http://jan.rychter.com/blog/files/29691b6dd1a4946de25cd34a111371c7-7.html#unique-entry-id-7</link><guid isPermaLink="true">http://jan.rychter.com/blog/files/29691b6dd1a4946de25cd34a111371c7-7.html#unique-entry-id-7</guid><content:encoded><![CDATA[Inauguracyjna KreoAula odbyła się wczoraj. Publiczność dopisała, sala była wypełniona po brzegi. Interesująco rozwinęła się też dyskusja panelowa, w kt&oacute;rej uczestniczyło sporo os&oacute;b z publiczności. Skr&oacute;cona wersja <a href="../photography/kreoaula1/kreoaula1.html" rel="self" title="KreoAula 1">fotoreportażu</a> w sekcji &ldquo;<a href="../photography/photography.html" rel="self" title="Photography">Photography</a>&rdquo;... ]]></content:encoded></item><item><title>G&#xf3;raszka 2008</title><dc:creator>jan@rychter.com</dc:creator><category>Fotografia</category><dc:date>2008-06-08T14:55:15+02:00</dc:date><link>http://jan.rychter.com/blog/files/95af55e46f365aa2e175efafd4d892d1-6.html#unique-entry-id-6</link><guid isPermaLink="true">http://jan.rychter.com/blog/files/95af55e46f365aa2e175efafd4d892d1-6.html#unique-entry-id-6</guid><content:encoded><![CDATA[Kr&oacute;tki <a href="../photography/goraszka2008/goraszka2008.html" rel="self" title="Góraszka 2008">fotoreportaż</a> z Międzynarodowego Pikniku Lotniczego G&oacute;raszka 2008.<br />]]></content:encoded></item><item><title>Teoria a praktyka</title><dc:creator>jan@rychter.com</dc:creator><category>Technologie</category><dc:date>2008-04-02T12:30:10+02:00</dc:date><link>http://jan.rychter.com/blog/files/selinux-apparmor-04-2008.html#unique-entry-id-5</link><guid isPermaLink="true">http://jan.rychter.com/blog/files/selinux-apparmor-04-2008.html#unique-entry-id-5</guid><content:encoded><![CDATA[W świecie technologii często zdarza się, że względy inne niż czysto<br />merytoryczne decydują o tym, kt&oacute;ra technologia się upowszechni. <br /><br />Miałem okazję ostatnio por&oacute;wnać ze sobą dwa mechanizmy zabezpieczeń<br />systemu Linux: <a href="http://www.nsa.gov/selinux/" rel="self">SELinux</a> (Security-Enhanced Linux) i <a href="http://www.novell.com/linux/security/apparmor/overview.html" rel="self">AppArmor</a>. Oba<br />przedstawiane są jako pełnoprawne rozwiązanie kontroli dostępu.<br /><br />Systemy UNIX tradycyjnie opierają się na nieskomplikowanej kontroli praw<br />dostępu: każdy element w systemie plik&oacute;w ma prawa dostępu dla<br />użytkownika, grupy oraz wszystkich pozostałych. Nie zawsze to jednak<br />wystarcza -- z powodu częstych problem&oacute;w z bezpieczeństwem<br />poszczeg&oacute;lnych aplikacji, często potrzebne jest ograniczenie praw<br />dostępu konkretnym programom wyłącznie do niezbędnych dla nich plik&oacute;w,<br />czy urządzeń w systemie. Co ważniejsze, istotnym problemem w systemach<br />UNIX jest wszechmocny administrator (root), kt&oacute;ry ma nieograniczony<br />dostęp do wszystkiego.<br /><br />Mechanizmy MAC (<a href="http://en.wikipedia.org/wiki/Mandatory_access_control" rel="self">Mandatory Access Control</a>) pozwalają na ograniczenie praw<br />dostępu. Poprzez zdefiniowanie polityki bezpieczeństwa można pozwolić<br />konkretnym aplikacjom na dostęp do konkretnych element&oacute;w systemu,<br />niezbędnych im do pracy. Co więcej, możliwe jest zdefiniowanie takiej<br />polityki bezpieczeństwa, w kt&oacute;rej nie ma wszechmocnego administratora, a<br />zmiana polityki bezpieczeństwa nie jest możliwa bez restartu systemu i<br />fizycznego dostępu do niego. Dla systemu Linux powstały dwa mechanizmy<br />typu MAC: SELinux i AppArmor.<br /><br /><a href="http://www.nsa.gov/selinux/" rel="self">SELinux</a> jest rozwiązaniem nieco starszym. Początkowo opracowane w NSA<br />(National Security Agency), zostało szybko przyjęte m.in. przez Red Hata<br />jako rozwiązanie bezpieczeństwa dla system&oacute;w Red Hat Enterprise<br />Linux. Pozwala na zdefiniowanie kompletnej polityki bezpieczeństwa dla<br />całego systemu i całkowite wzajemne odizolowanie od siebie aplikacji.<br /><br /><a href="http://www.novell.com/linux/security/apparmor/overview.html" rel="self">AppArmor</a> to alternatywne rozwiązanie, opracowane w firmie Immunix, a<br />następnie rozwinięte przez Novella. Cele są tu nieco inne niż dla<br />SELinux: AppArmor służy do chronienia systemu przed konkretnymi<br />zagrożeniami, ze strony konkretnych aplikacji. Z założenia niewielka<br />część program&oacute;w w systemie będzie miała zdefiniowane profile<br />bezpieczeństwa. Będą to na og&oacute;ł programy mające kontakt ze światem<br />zewnętrznym, takie jak np. serwisy sieciowe.<br /><br />Najbardziej zaognionym punktem spornym w dyskusjach na temat wyższości<br />jednego rozwiązania nad drugim jest ich podejście do oznaczania plik&oacute;w w<br />systemie. SELinux operuje na i-węzłach -- odpowiednio oznaczonej<br />konkretnej zawartości w systemie plik&oacute;w. AppArmor używa tradycyjnych<br />ścieżek dostępu.<br /><br />Zwolennicy SELinux twierdzą, że używanie ścieżek dostępu nie zapewnia<br />odpowiedniego bezpieczeństwa. Można przecież tworzyć dowiązania (hard<br />links), manipulować przestrzenią nazw systemu plik&oacute;w, czy podmieniać<br />zawartość plik&oacute;w. W końcu ścieżka do pliku to wyłącznie wskazanie --<br />"plik, kt&oacute;ry znajduje się pod tym adresem", nie zaś sama zawartość<br />pliku. Dlatego SELinux wymaga oznaczania i-węzł&oacute;w, czyli konkretnej<br />zawartości, za pomocą specjalnych metek. Do nich p&oacute;źniej odwołuje się<br />polityka bezpieczeństwa.<br /><br />Entuzjaści AppArmor odpowiadają na to: racja, ścieżki dostępu mają swoje<br />wady. Są za to nieskomplikowane, intuicyjne w użyciu, a wszyscy są do<br />nich przyzwyczajeni. Politykę bezpieczeństwa tworzy się więc łatwo.<br /><br />Trudno jest por&oacute;wnać ze sobą mechanizmy, kt&oacute;re w założeniach mają<br />spełniać r&oacute;żne role. W praktyce jednak często staje się przed wyborem,<br />kt&oacute;rego z nich użyć.<br /><br />Teoretycznie SELinux jest rozwiązaniem technologicznie lepszym. Pozwala<br />na zdefiniowanie kompletnej polityki bezpieczeństwa, odseparowanie od<br />siebie przepływ&oacute;w danych, zabezpieczenie całego systemu. Definiowanie<br />dostępu do konkretnych i-węzł&oacute;w zabezpiecza system przed wieloma<br />rodzajami atak&oacute;w. Są też jednak minusy: i-węzły w systemie plik&oacute;w trzeba<br />oznaczyć i pilnować, by pozostały oznaczone. Trudniej jest robić kopie<br />bezpieczeństwa, bo trzeba dbać o zachowanie metadanych. Politykę<br />bezpieczeństwa definiuje się też trudno.<br /><br />W praktyce więc AppArmor, pomimo że ma mniejsze możliwości, może się<br />okazać znacznie lepszym rozwiązaniem. W wielu zastosowaniach lepiej mieć<br />dobrze wdrożony i działający AppArmor dla ograniczonej liczby aplikacji,<br />niż nie do końca zaimplementowany SELinux dla całego systemu.<br /><br />Dochodząc do tytułu tego artykułu: w teorii SELinux jest rozwiązaniem<br />bardziej zaawansowanym technologicznie, ale w praktyce AppArmor spisuje<br />się lepiej. Wystarczającym powodem jest tu trudność użycia: są znacznie<br />większe szanse, że administrator poprawnie zdefiniuje profile<br />bezpieczeństwa w AppArmor, niż że zrobi to dobrze dla SELinux, a nawet<br />najlepsze technologicznie rozwiązanie przy źle zdefiniowanej polityce<br />bezpieczeństwa nie zabezpieczy systemu.<br /><br />Macie przemyślenia na ten temat? <a href="mailto:jan@rychter.com" rel="self">Piszcie do mnie</a>, proszę. Podejmę dyskusję w przyszłych artykułach.]]></content:encoded></item><item><title>Dlaczego nie u&#x17c;ywam podpisu elektronicznego?</title><dc:creator>jan@rychter.com</dc:creator><category>Technologie</category><dc:date>2008-03-19T12:19:19+01:00</dc:date><link>http://jan.rychter.com/blog/files/podpis-elektroniczny-03-2008.html#unique-entry-id-4</link><guid isPermaLink="true">http://jan.rychter.com/blog/files/podpis-elektroniczny-03-2008.html#unique-entry-id-4</guid><content:encoded><![CDATA[Przysłuchiwałem się niedawno dyskusji podczas <a href="http://www.pti.org.pl/om/klub.php?news=723&wid=30" rel="self">spotkania Klubu Informatyka PTI</a>. Samego spotkania sprawozdawać nie będę, zrobili to znacznie lepiej <a href="http://prawo.vagla.pl/node/7762" rel="self">inni</a> -- napiszę jednak o czymś, co uważam za istotne dla sprawy podpisu elektronicznego.<br /><br />W samej dyskusji brałem udział biernie, tylko się przysłuchując. Nie uważałem, żebym miał wiele do dodania, w końcu dyskutowali ludzie, kt&oacute;rzy od lat zajmują się tym tematem. Rozmowa toczyła się wok&oacute;ł problem&oacute;w z adopcją podpisu elektronicznego w Polsce. Jako gł&oacute;wne problemy wymieniane były ceny (sprawdziłem -- certyfikat kwalifikowany to minimum 300zł rocznie, co zakrawa na żart) oraz brak świadomości istnienia podpisu elektronicznego w społeczeństwie.<br /><br />Dodałbym trzeci pow&oacute;d braku adopcji. Choć zapewne nieznaczący w ujęciu statystycznym, w gronie ludzi zajmujących się informatyką może okazać się istotny. Dlaczego ja sam nie używam podpisu elektronicznego?<br /><br /><strong>Bo się boję.<br /></strong><br />W pędzie do popularyzacji podpisu elektronicznego zapomnieliśmy o edukacji. Podpis taki daje co prawda wiele korzyści, ale niesie także ze sobą zagrożenia. O tych drugich mało kto m&oacute;wi, mam też wrażenie, że mało kto zadaje sobie trud pełnego ich zrozumienia.<br /><br />Centra certyfikacyjne sprzedadzą nam certyfikaty, karty kryptograficzne, czytniki kart, wszystko z zapewnieniem, że są to produkty najwyższej klasy bezpieczeństwa. Istotnie tak jest. Problem jednak w tym, że większość klient&oacute;w owe wysokiej klasy produkty podłączy do swojego komputera PC, prawdopodobnie z systemem Microsoft Windows. W najlepszym przypadku nie będzie wiadomo, co się na nim dzieje, jaki kod jest wykonywany, z czym się komunikuje i co robi. W rzeczywistości, czyli w większości przypadk&oacute;w, &oacute;w komputer będzie jednym wielkim zoo, gdzie wśr&oacute;d żyraf (programy obserwujące zachowania) i bawoł&oacute;w (wirusy) będą zwinnie bujać się na linach małpy (keyloggery).<br /><br />Owszem, szybko odpowiedzą eksperci -- ale to nie ma znaczenia, bo podpis generowany jest na specjalnej bezpiecznej karcie z mikroprocesorem! Nie można go ukraść i nie można nim nic podpisać, gdy karta nie jest włożona do czytnika. Tak faktycznie jest. Niestety, nadal można nim podpisać kilka r&oacute;żnych rzeczy zamiast jednej. Temu zaradzi czytnik z klawiaturą (pin-padem) -- zakrzykną eksperci! To prawda -- nawet wtedy jednak pozostaje gł&oacute;wny problem: użytkownik nie wie, co podpisuje.<br /><br />Pamiętajmy, że to co akurat wyświetla na ekranie nasz komputer, nie musi mieć żadnego związku z tym, co do podpisania dostaje czytnik. I tak prawie zawsze podpisem opatruje się funkcję skr&oacute;tu dokumentu, a nie cały dokument, użytkownik zaś na ekranie widzi dokument. Gł&oacute;wnym jednak problemem dla mnie jest to, że nie mogę być pewien czy faktycznie podpisuję to, co widzę na ekranie.<br /><br />Jeśli ktoś w tym momencie twierdzi, że taki atak nie jest prawdopodobny, to jest naiwny. Wiele os&oacute;b twierdzi, że programy przechwytujące naciśnięcia klawiszy (keyloggery) to problem wydumany. Tym polecam pobudkę, na przykład poprzez <a href="http://yro.slashdot.org/article.pl?sid=07/09/09/2011240&from=rss" rel="self">przeczytanie o Mumbai</a>, gdzie wręcz wymaga się od kawiarni internetowych instalowania takich program&oacute;w.<br /><br />Cały problem w tym, że mając bezpieczną infrastrukturę do podpisu elektronicznego, wprowadzamy do niej element, kt&oacute;remu nie można ufać: komputer PC. Wydawało mi się to tak oczywistym przeoczeniem, że nie chciałem wierzyć, że tw&oacute;rcy ustaw o podpisie elektronicznym nie pomyśleli o tym problemie. Wczytałem się więc w akty prawne. Co się okazało? Pomyśleli -- i nawet opisali precyzyjnie jakie wymagania musi spełniać "bezpieczne urządzenie do składania podpis&oacute;w elektronicznych":<br /><br /><blockquote><p>&sect; 6. Bezpieczne urządzenie do składania podpis&oacute;w elektronicznych oraz bezpieczne urządzenie do weryfikacji podpis&oacute;w elektronicznych mają możliwość obliczania i prezentowania przynajmniej jednej z funkcji skr&oacute;tu w stosunku do danych służących do weryfikacji bezpiecznego podpisu elektronicznego lub poświadczenia elektronicznego, będących dla osoby składającej bezpieczny podpis elektroniczny lub weryfikującego bezpieczny podpis elektroniczny punktem zaufania. (<a href="http://ipsec.pl/podpis_elektroniczny/Rozporzadzenie%20o%20warunkach%20technicznych.pdf" rel="self">ROZPORZĄDZENIE RADY MINISTR&Oacute;W z dnia 7 sierpnia 2002 r., Dz. U. Nr 128, poz. 1094</a>) (podkreślenie autora)</p></blockquote><br /><br />Oto i rozwiązanie mojego problemu -- mam komputer PC, kt&oacute;ry wyświetla mi na ekranie dokument i pokazuje jego funkcję skr&oacute;tu. R&oacute;wnocześnie, &oacute;w dokument przesyłany jest do zaufanego urządzenia zewnętrznego (najlepiej z otwartym, audytowalnym), kt&oacute;re niezależnie liczy funkcję skr&oacute;tu i wyświetla mi ją na wbudowanym ekranie LCD. Do urządzenia zewnętrznego mam zaufanie, wiem też, że jego oprogramowania nie da się zmienić, bo jest zapisane w pamięci ROM. Mogę więc por&oacute;wnać oba skr&oacute;ty i spokojnie autoryzować podpis, wiedząc co podpisałem.<br /><br />Nie rozumiem dlaczego <a href="http://www.sigillum.pl/sig-cmsws/page/?D;91" rel="self">na stronach Sigillum</a> jest informacja, że bezpiecznym urządzeniem do składania i weryfikacji podpisu elektronicznego zgodnie z wymaganiami ustawy i rozporządzenia są zestawy czytnik + komputer PC + oprogramowanie. W żaden spos&oacute;b za bezpieczny (czyli spełniający wymagania opisane w Rozdziale 2 rozporządzenia) nie może być uznany komputer PC z oprogramowaniem, chociażby dlatego, że nie ma kontroli nad wyświetlanym obrazem na ekranie oraz nad danymi wpisywanymi z klawiatury. Wytłumaczeniem nie może być ograniczenie technologiczne, bo <a href="http://www.reiner-sct.com/content/view/6/17/" rel="self">istnieją czytniki z wyświetlaczem</a> -- i jak przypuszczam, wynik funkcji skr&oacute;tu potrafią wyświetlić.<br /><br />Nie jestem bynajmniej jedynym, kt&oacute;ry zauważył problem. Przykładem może być chociażby praca "<a href="http://www.tml.tkk.fi/Publications/C/25/papers/Varjus_final.pdf" rel="self">Digital signature in insecure environments</a>".<br /><br />W profesjonalnej analizie o bezpieczeństwie zawsze m&oacute;wi się jako o kompromisie. Można mieć system albo bezpieczny, albo wygodny w użyciu. Na drugim wykresie pokazać można ryzyko finansowe: ile klient ryzykuje, wybierając mniej bezpieczny system. O ile wybory te są świadome, można dobrze dobrać politykę bezpieczeństwa do realnych wymagań. W przypadku podpisu elektronicznego jestem w stanie zrozumieć, że w wielu zastosowaniach biznesowych (takich jak np. masowe podpisywanie faktur wykonywane na zaufanym i zabezpieczonym systemie) obecne rozwiązania mają sens i są rozsądnym kompromisem. Nie jest tak jednak w przypadku os&oacute;b fizycznych. Tu systemy są znacznie gorzej zabezpieczone (to dopiero eufemizm!), a względne ryzyko finansowo-prawne niepor&oacute;wnywalnie większe.<br /><br />Jeśli chodzi o mnie, podpisując na komputerze z systemem Linux czułbym się lekko niekomfortowo, ale zaakceptowałbym ryzyko, w końcu system jest audytowalny i kod systemu i aplikacji jest regularnie oglądany przez wiele os&oacute;b. Na moim MacBooku z Mac OS X byłbym już dużo ostrożniejszy, zaś z Windows nie odważyłbym się na podpis w og&oacute;le. Dop&oacute;ki więc na rynku nie będą powszechnie dostępne czytniki kart z klawiaturą (pin-padem), wyświetlaczem pokazującym funkcję skr&oacute;tu oraz audytowalnym oprogramowaniem, dop&oacute;ty nie będę używał podpisu elektronicznego, kt&oacute;ry może rodzić dla mnie skutki prawne.<br /><br /><br />]]></content:encoded></item><item><title>Sztuka prezentacji: pi&#x119;&#x107; rad dla wyst&#x119;puj&#x105;cych</title><dc:creator>jan@rychter.com</dc:creator><category>R&#xf3;&#x17c;ne</category><dc:date>2008-03-17T14:31:48+01:00</dc:date><link>http://jan.rychter.com/blog/files/sztuka-prezentacji-03-2008.html#unique-entry-id-3</link><guid isPermaLink="true">http://jan.rychter.com/blog/files/sztuka-prezentacji-03-2008.html#unique-entry-id-3</guid><content:encoded><![CDATA[Po ostatnich spotkaniach bootstrapowych i aulowych nasunęło mi się kilka spostrzeżeń na temat sposobu prezentowania, szczeg&oacute;lnie gdy czas prezentacji jest bardzo kr&oacute;tki. Spisuję je w formie rad -- nie dlatego, żebym sam trudną sztukę wystąpień publicznych opanował w stopniu doskonałym, ale po to by pomogły tym, kt&oacute;rzy dopiero zaczynają się tego uczyć. Oto kilka rad, kt&oacute;rych warto się trzymać:<br /><br />1. Przećwicz sam lub przed znajomymi swoją prezentację zanim powiesz ją publicznie. To jest niezmiernie ważne, szczeg&oacute;lnie dla prezentacji kr&oacute;tkich (5 minut), gdzie każda sekunda ma znaczenie. W żaden inny spos&oacute;b nie dowiesz się czy zmieścisz się w czasie, co jest naprawdę trudne do oszacowania nawet dla doświadczonych m&oacute;wc&oacute;w. Jeśli ćwiczysz ze znajomymi, dodatkowo skrytykują oni Twoją prezentację, zwr&oacute;cą uwagę na to, co jest niejasne i poradzą skr&oacute;cić to, o czym m&oacute;wisz za długo. Jeśli ćwiczysz sam, nie r&oacute;b tego na skr&oacute;ty: wygłoś prezentację, a nie czytaj w myśli. To są zupełnie r&oacute;żne rzeczy.<br /><br />2. Miej spos&oacute;b na skr&oacute;cenie lub wydłużenie prezentacji, jeśli zajdzie taka potrzeba. Wydłużenie jest nietrudne: wystarczy mieć na końcu dodatkowy slajd lub dwa, a na nich rozwinięcie ciekawszych wątk&oacute;w. Skr&oacute;cenie jest trudniejsze, ale niezmiernie cenne, bo znacznie lepiej jest zamknąć prezentację własną puentą niż mieć ją przerwaną brutalnie na 2-3 slajdy przed końcem. Sam staram się na końcowych slajdach mieć kilka punkt&oacute;w, kt&oacute;rych w razie potrzeby mogę nie omawiać.<br /><br />3. Nadaj swojej prezentacji strukturę. Niech będzie widoczne z jakich części się składa i na kt&oacute;rym jej etapie jest słuchacz w każdej chwili. Struktura zaczyna się od dokładnego przemyślenia prezentacji, ale potem można ją też podkreślać formatowaniem slajd&oacute;w, kolorem paska z boku lub na dole, "progress-barem", a nawet przejściami między slajdami. Warto też dodawać wskaz&oacute;wki słowne ("kolejne zagadnienie, o kt&oacute;rym powiem", "drugi temat to", "ostatni temat dotyczy" itp.). Niedoścignionym mistrzem nadawania struktury był dla mnie <a href="http://en.wikipedia.org/wiki/Michael_Dertouzos" rel="self">Michael Dertouzos</a>, szef MIT Laboratory for Computer Science, kt&oacute;ry potrafił wygłosić 45-minutowy wykład <strong>bez slajd&oacute;w</strong> (!) tak, by w każdym momencie dowolny słuchacz wiedział dokładnie o czym jest mowa, gdzie obecny temat mieści się w og&oacute;lnej strukturze wykładu i co będzie dalej. Słuchając go na konferencji ACM1 zrozumiałem, jak bardzo wiele jeszcze muszę się nauczyć jeśli chodzi o publiczne wystąpienia.<br /><br />Dla dłuższych prezentacji warto wstawić blisko początku slajd opisujący strukturę, zaś potem trzymać się punkt&oacute;w z tego slajdu.<br /><br />4. Zadbaj o aspekty techniczne. Jeśli masz prezentację na urządzeniu USB, wgraj ją wcześniej na komputer organizatora. Jeśli masz własny laptop, sprawdź wcześniej, czy działa z rzutnikiem i czy masz poprawne ustawienia ekranu. Wyłącz Wi-Fi i Bluetooth, żeby nie dostać kompromitujących komunikat&oacute;w od kogoś w czasie prezentacji.<br /><br />	⁃	Jeśli używasz Windows: wyłącz screensaver, posprzątaj pulpit, by nie było tam poufnych bądź kompromitujących rzeczy (tak, tak). <br /><br />	⁃	Jeśli używasz Mac OS: nie ustawiaj swojego maka w tryb "mirror", tylko w Keynote wybierz "present on secondary display", w ten spos&oacute;b Tw&oacute;j pulpit nigdy nie pojawi się na ekranie rzutnika. Ważne: zawsze podłączaj rzutnik do komputera, nigdy rzutnik do przelotki wetkniętej do komputera (wiele os&oacute;b robi to drugie, przez co komputer ma kłopoty z wykryciem rzutnika). <br /><br />Mn&oacute;stwo os&oacute;b nie zwraca uwagi na takie rzeczy, a mają one duże znaczenie dla odbioru m&oacute;wcy i jakości prezentacji. Jeśli ktoś zaczyna sp&oacute;źniony pięć minut po wielkiej walce z laptopami, kablami, ekranami, desktopami i ustawieniami, to ma znacznie gorszą pozycję wyjściową niż inny m&oacute;wca, startujący na luzie i bez problem&oacute;w. M&oacute;wca jest zestresowany, publiczność znudzona lub (gorzej) rozbawiona. Naprawdę lepiej to dobrze przygotować.<br /><br />5. Gdy przedstawiasz "elevator pitch", czyli radykalnie nowy pomysł na biznes w wielkim skr&oacute;cie, koniecznie na początku powiedz na czym polega pomysł. Oczywiste? A jednak. Widziałem już sporo prezentacji w kt&oacute;rych po kilku minutach nadal nie było wiadomo o co chodzi, za to dowiedziałem się dużo o konkurencji, rynkach, trendach i innych mało istotnych rzeczach. Jeśli nie umiesz opisać czym jest Tw&oacute;j pomysł w jednym zdaniu na jednym slajdzie, to nie powinieneś go prezentować.<br /><br /><br />]]></content:encoded></item><item><title>Statystyki k&#x142;ami&#x105;</title><dc:creator>jan@rychter.com</dc:creator><category>Aula</category><dc:date>2008-03-14T13:31:32+01:00</dc:date><link>http://jan.rychter.com/blog/files/statystyki-klamia-14-03-2008.html#unique-entry-id-2</link><guid isPermaLink="true">http://jan.rychter.com/blog/files/statystyki-klamia-14-03-2008.html#unique-entry-id-2</guid><content:encoded><![CDATA[Jak wiadomo, statystyki kłamią. A skoro kłamią, to nikt nie powiedział, że raz opublikowanych wynik&oacute;w nie można zmienić. Na ostatniej <a href="http://www.aulapolska.pl/" rel="self">Auli</a> rozdałem uczestnikom tę samą ankietę, kt&oacute;rą dostali wszyscy na Og&oacute;lnopolskim Barcampie. W ten spos&oacute;b pozyskałem prawie dwudziestu nowych respondent&oacute;w. Oto jak poprzesuwały się obszary zainteresowań:<br /><br /><img class="imageStyle" alt="techaula-ankieta-infografika-2-2" src="http://jan.rychter.com/blog/files/page27_blog_entry2_1.png" width="531" height="654"/><br />Starałem się utrzymać og&oacute;lną orientację grafiki podobną do tej poprzedniej -- wymagało to odwr&oacute;cenia jednego ze składnik&oacute;w podstawowych i poobracania wykresu ręcznie.<br /><br />Co widać nowego? Niewiele -- za to wyniki się skonkretyzowały. Tematy popularne ("mainstream") są zgrupowane ciaśniej razem. Erlang odjechał zgodnie z przewidywaniami w stronę język&oacute;w funkcyjnych. Lua, SeaSide i Arc nadal leżą na końcu znanego świata, zaś makra wyraźnie już wylądowały w grupie mainstream, więc większość respondent&oacute;w nie widzi ich jako metaprogramowanie.<br /><br />Chciałbym przygotować animację zmian w miarę jak przybywa respondent&oacute;w, lecz nie wiem czy znajdę na to czas. Są niestety ekspertyzy i oprogramowanie do napisania...<br /><br /><br />]]></content:encoded></item><item><title>Startuje TechAula</title><dc:creator>jan@rychter.com</dc:creator><category>Aula</category><dc:date>2008-03-01T14:22:03+01:00</dc:date><link>http://jan.rychter.com/blog/files/startuje-techaula-03-2008.html#unique-entry-id-1</link><guid isPermaLink="true">http://jan.rychter.com/blog/files/startuje-techaula-03-2008.html#unique-entry-id-1</guid><content:encoded><![CDATA[Wkr&oacute;tce pierwsze spotkanie TechAuli, czyli nurtu technologicznego spotkań <a href="http://aulapolska.pl" rel="self">Aula Polska</a>. Przygotowania zajmują mi sporo czasu -- trzeba określić tematy wystąpień, znaleźć m&oacute;wc&oacute;w, przekonać że chcą być m&oacute;wcami, um&oacute;wić. Trochę jeszcze może to potrwać.<br /><br />W międzyczasie kr&oacute;tki "<em>teaser</em>", czyli opis koncepcji TechAuli:<br /><br /><blockquote><p>TechAula jest miejscem do dyskusji o nowych technologiach informatycznych. Dyskutowane tematy mają z założenia być kontrowersyjne. Koledzy z dużych firm będą stukać się w głowę, m&oacute;wiąc "kto o tym słyszał? przecież nikt tego nie używa! wiadomo, że świat przechodzi na technologię X!". Tym lepiej: by zbudować firmę typu start-up niezbędne są technologie, kt&oacute;re pozwolą wybić się z tłumu, wyjść ponad średnią. Przecież nikt nigdy nie osiągnął sukcesu robiąc to samo, co wszyscy! Warto więc o nowych i kontrowersyjnych technologiach słuchać, nawet jeśli połowa z nich okaże się być kiedyś niewypałami.<br/>TechAula to nie jest miejsce do dyskusji o tym, jak najlepiej wytłoczyć kolejną aplikację w Java Enterprise Cokolwiek ani o tym jak zrobić, by kod w PHP działał dwa procent szybciej. Nie rozmawiamy tu o "industry standard practices", nie m&oacute;wimy o trendach, tendencjach i modach.  Nie jesteśmy zapatrzeni w to, co robi "świat". Jeśli technologia jest powszechnie używana, automatycznie przestaje być nośnym tematem dla TechAuli, chyba że można przedstawić jej interesującą krytykę.<br/>Rolą TechAuli jest poszerzanie horyzont&oacute;w. Nawet jeśli nigdy nie użyjemy danego języka programowania, to pewne pojęcia, jakie on wprowadza, mogą okazać się użyteczne. Podobnie jest z wieloma technologiami i pomysłami. Stąd szeroki zakres tematyczny i dodatkowe punkty dla temat&oacute;w, o kt&oacute;rych pojęcia jak dotąd nie ma nikt.</p></blockquote>Korzystając z okazji: jeśli ktoś przeczytawszy powyższy opis ma ciekawy temat do zaprezentowania, to zapraszam do kontaktu ze mną!<br />]]></content:encoded></item><item><title>Wyniki ankiety TechAuli</title><dc:creator>jan@rychter.com</dc:creator><category>Aula</category><dc:date>2008-03-06T14:22:07+01:00</dc:date><link>http://jan.rychter.com/blog/files/ankieta-techaula-26-02-2008.html#unique-entry-id-0</link><guid isPermaLink="true">http://jan.rychter.com/blog/files/ankieta-techaula-26-02-2008.html#unique-entry-id-0</guid><content:encoded><![CDATA[26 lutego na Og&oacute;lnopolskim Barcampie rozdaliśmy wszystkim do wypełnienia ankietę. Chodziło o przygotowanie TechAuli, czyli nurtu technologicznego spotkań Aulowych.<br /><br />Opracowanie wynik&oacute;w zajęło mi trochę czasu, gł&oacute;wnie dlatego, że musiałem nauczyć się kilku nowych dla mnie technik. Wyniki jednak są interesujące. Oto wygenerowana automatycznie infografika podsumowująca jedną ilustracją wyniki ankiety:<br /><br /><img class="imageStyle" alt="techaula-ankieta-pca" src="http://jan.rychter.com/blog/files/page27_blog_entry0_1.png" width="555" height="650"/><br /><br />Powyższa infografika zawiera mn&oacute;stwo informacji. Wielkość czcionki i jej kolor oznaczają średnie zainteresowanie danym tematem (większa czcionka i "gorętszy" kolor to większe zainteresowanie). Koła odpowiadają znajomości danego pojęcia: im mniejsze koło, tym więcej os&oacute;b zaznaczyło zero przy danym pojęciu, co oznacza że w og&oacute;le go nie znali. Położenie pojęć wynika z analizy czynnik&oacute;w podstawowych i jest najlepszą projekcją danych w dwa wymiary przy zachowaniu wzajemnych odległości między pojęciami. Odległości definiowane są przez korelację odpowiedzi, co oznacza że pojęcia na kt&oacute;re ludzie odpowiadali podobnie powinny znaleźć się bliżej siebie. Odpowiednio, na przeciwnych biegunach grafiki znajdą się pojęcia, na kt&oacute;re ankietowani odpowiadali skrajnie r&oacute;żnie.<br /><br />Kreski pod pojęciami reprezentują "potencjalne zainteresowanie". Zakładając, że jeśli ktoś zaznaczył "0" przy danym terminie, to dziś nic o nim nie wie, ale bardzo chciałby się dowiedzieć, policzono nowe średnie zainteresowanie. Kreski i ich kolor odpowiadają r&oacute;żnicy pomiędzy średnim zainteresowaniem oraz tym "nowym", uznającym zero za "bardzo interesujący temat". Jak widać, są tematy kt&oacute;re są zar&oacute;wno nieźle znane, jak i mają spory potencjał (np. django), są też tematy oklepane (Perl) i kompletnie nowe (Lua).<br /><br />Interesujące jest, że Erlang i Prolog znalazły się blisko najbardziej znanych pojęć. Nazwy te brzmią znajomo dla wielu os&oacute;b, wygląda to na efekt dobrego marketingu, kt&oacute;rego nie ma np. Lua. Inne ciekawe spostrzeżenia, to że makra znalazły się zdecydowanie zbyt blisko Perla i technologii doskonale wszystkim znanych, z czego można wnioskować, że uczestnicy ankiety interpretowali to pojęcie jako makra tekstowe, a nie programistyczne (z język&oacute;w typu Lisp). Podobnie nieoczekiwane jest umiejscowienie "pattern matching" i "non-deterministic programming". Pierwszego oczekiwałbym raczej w okolicy język&oacute;w funkcyjnych (być może mylony był z wyrażeniami regularnymi), drugiego przynajmniej bliżej języka Prolog.<br /><br />Na najbliższych spotkaniach Auli i TechAuli zamierzam znowu poprosić tych, kt&oacute;rzy jeszcze ankiety nie wypełnili, o odpowiedzi. Ciekaw jestem, jak poprzesuwają się k&oacute;łka na grafice!<br /><br /><br />]]></content:encoded></item></channel>
</rss>