Šifrování pro lamy - instalace nejnovějšího GnuPG 1.4.0a
V předchozím článku jsem popisoval instalaci GnuPG, její optimalizované nullify.org varianty. Tato varianta Vám instaluje GnuPG verze 1.2.3, nicméně, dostupná je již verze 1.4.0a. Verzi 1.4.0a si můžete stáhnout z GnuPG.org, nicméně, program TheBat! Vám s ní nebude fungovat, bude vypisovat tuto hlášku:
gpg: conversion from `utf-8' to `CP0' not available
A pokud vyzkoušíte spustit WinPT 0.7.96, tak pro změnu zahlásí, že máte chybnou verzi GnuPG.
Instalace poslední verze GnuPG (1.4.0a) a WinPT 0.9.14:
- stáhněte si soubor gnupg-w32cli-1.4.0a.zip a
rozbalte jej do adresáře
C:\GnuPG\. - stáhněte si soubor gnupg-w32cli-1.4.0a-cpfix.zip a
rozbalte jej do adresáře
C:\GnuPG\, stávající obsah přepište. - stáhněte si soubor winpt-0.9.14-exe.zip a
rozbalte jej do adresáře
C:\GnuPG\.
Po této operaci budete mít plně funkční GnuPG verze 1.4.0a (i pro TheBat!) a WinPT poslední verze 0.9.14.
Šifrování pro lamy - instalace GnuPG (GPG) na Windows

Tento třídílný seriál o šifrování (především emailové korespondence) na Windows nebude mít za cíl objasňovat žádnou teorii, o té toho již bylo napsáno dost třeba na novinky.cz (patnácti-dílný seriál), a něco málo napsal i Arthur Dent (úvodní článek).
Zprovoznit šifrování emailů pomocí standardu OpenPGP je na Linuxu mimořádně snadné, protože komponenty jako gpg, gpa či kgpg se instalují standardně v každé distribuci, a email klienti jako je KMail pro KDE či Evolution pro Gnome mají pro gpg standardně postavený GUI interface. Nicméně, na Windows je situace poněkud složitější, zvláště pro lidi, co neumí a nechtějí používat příkazovou řádku, ovšem i zde existují klikací balíčky pro řádkové gpg typu WinPT (správa klíčů), Enigmail (doplněk pro Thunderbird), či podpora pro gpg v programu TheBat!
První díl této série se bude zabývat instalaci GnuPG, což je open-source implementace OpenPGP standardu (plus je známá komerční implementace PGP).
OpenPGP je nejpoužívanější standard pro šifrování emailů na světě.
A proč vlastně šifrovat a podepisovat svoje zprávy?
Poslat email jako
radek.hulan@gmail.commůže naprosto každý, (Open)PGP podpis ovšem zaručí, že identifikace skutečného odesilatele není zkompromitována. Šifrování zprávy navíc znemožní, technicky, komukoliv neoprávněnému tuto zprávu číst, ať už to je Vaše konkurence, ISP, či další uživatelé internetu. Šifrovat prostě můžete, takže otázka nezní, proč ano, ale proč ne?
Zend’s PHP 5 Coding Contest - více praxe, méně teorie
Na Interval.cz vyšel můj článek Zend’s PHP 5 Coding Contest - trochu méně teorie a více praxe, který popisuje hned 6 užitečných aplikací z této soutěže.
Co si musíte koupit pro sebe na Vánoce 2004?

Vánoce jsou svátky klidu, pohody a blahobytu, a na Vánoce se lidé mají jaksi více rádi a jsou snad i více spokojeni. Abych byl i já spokojen s tím, co na Vánoce dostanu, pravidelně kupuji na Vánoce dárky nejen pro své bližší, ale i pro sebe. Je tak zcela jisté, že dostanu přesně to, co chci, a dokonce i něco navíc. :-)
Co si koupit pro sebe (a stojí to pár korun)?
| Předmět | K čemu to je | Cena |
|---|---|---|
| Beyerdynamic DT 331 sluchátka | fantastická sluchátka pro celodenní poslech, mimořádná HiFi kvalita zvuku, 20 - 20,000 Hz rozsah, bezkonkurenční pro HiFi poslech i pro počítač, cokoliv jiného je jen kompromis (ať už levná sluchátka, tak ještě horší 5/7+1 levné sety) | 2,600 Kč |
| Bluetrek G2 Bluetooth handsfree | Bluetooth sluchátko k Vašemu telefonu s naprosto skvělou kvalitou zvuku a příjmem, používat dnes telefon bez BT sluchátka je zastaralé a nemoderní, až poprvé vyzkoušíte volat s oběma rukama volnýma, pochopíte, jaká je to obrovská výhoda a nebudete chtít nikdy jinak! | 1,990 Kč |
| SoundBlaster Audigy2 ZS Platinum zvuková karta | špičková zvuková karta do Vašeho PC s mimořádnou kvalitou zvuku, pokud máte špičková sluchátka Beyerdynamic DT 331, potřebujete i špičkovou zvukovou kartu, rozdíl je neuvěřitelný! | 4,300 Kč |
| Siemens SX1 chytrý telefon | přestože je tento telefon s operačním systémem Symbian již rok starý, nic lepšího (snad kromě Nokie 6630) dosud neexistuje, podpora pro tisíce programů a skvělá ergonomie telefonu a klávesnice Vás rozhodně zaujme | 7,000 Kč |
| FujiFilm FinePix S5500 Zoom digitální fotoaparát + 128MB karta + akumulátorky | FujiFilm S5500 je digitální zdcadlovka s 4Mpx a desetinásobným optickým zoomem špičkové kvality, a za vynikající cenu, má výborné a profesionální tělo, výborný objektiv, a konkuruje tak aparátům Canon a Nicon a třídu výše | 12,200 Kč |
| Logitech Cordless Desktop LX700 CZ bezdrátová klávesnice a myš | tento set Logitechu je bezkonkurenčně nejlepší myší a klávesnici, nikdo se k němu ani zdálky nepřibližuje (ani Microsoft, a už vůbec ne výrobci jako Genius, Chicony či jiní), Vaše produktivita několikrát stoupne díky dokonalé této klávesnici a myši | 3,000 Kč |
| Braun HC50 zastřihávač vlasů | pokud preferujete vlasy a vousy dlouhé přesně 3 mm, tak jako já, je tento zastřihávač tím nejlepším možným | 2,150 Kč |
NAVRCHOLU.cz a TOPLIST.cz - nové verze měřících kódů
Přepsal jsem kód pro NAVRCHOLU.cz a TOPLIST.cz tak, aby byl kompatibilní se všemi browsery, a zlepšil podporu pro MSIE. Problém, vypozorovaný v reálu, byl v tom, že Opera i Firefox / Mozilla, když se pomocí DOM JavaScriptu změní src u tagu img, tak načtou až tento nový obrázek (protože obrázky načítají v application/xhtml+xml až po proběhnutí DOM skriptů), kdežto MSIE jej načítá dvakrát, poprvé s URL (src) původním, a podruhé s URL změněným DOM skriptem, po dokončení načtení stránky.
Tak jsem obrázek z XHTML kódu úplně vydělal, a tvoří se pomocí appendChild(createNewEle('img')), s tím, že statistika je teď přesná ve všech browserech (ale načítá se pochopitelně až po natažení celé stránky i v MSIE).
Kód pro navrcholu.js
// (c) Radek HULAN, http://hulan.cz/
// This work is licensed under the Creative Commons Attribution License.
//
// NAVRCHOLU.cz statistics that works under XHTML 1.1 served with
// MIME type application/xhtml+xml as well as text/html MIME type.
// helper functions
var isXHTML;
function createNewEle(ele){
if(isXHTML)
return document.createElementNS('http://www.w3.org/1999/xhtml', ele);
else
return document.createElement(ele);
};
// navrcholu.cz code
function navrcholu(){
var ele=document.getElementById('navrcholu');
if (!ele) return;
isXHTML=/html\:/.test(document.getElementsByTagName('body')[0].nodeName);
// navrcholu.cz id from title
var id=parseInt(ele.getAttribute('title'));
if (!id) alert('TITLE attribute does not contain your NAVRCHOLU.cz ID!');
// some variables
var n=navigator;
var p=document;
var c,t,b,j,m,r,y,d,x,w;
d=x=w=j=0;
// detect flash plugin in MSIE
if(n.appVersion.indexOf("MSIE")>=0 && n.appVersion.indexOf("Win")>=0 && n.userAgent.indexOf("Opera")<0) {
p.writeln("");
p.writeln("on error resume next");
p.writeln("For i=7 to 4 Step -1");
p.writeln(" If IsObject(CreateObject(\"ShockwaveFlash.ShockwaveFlash.\" & i)) Then");
p.writeln(" n3f8q=i");
p.writeln(" Exit For");
p.writeln(" End If");
p.writeln("Next");
p.writeln("");
} else
eval("var n3f8q=0");
// detect flash in other browsers
if( n.plugins && n.plugins["Shockwave Flash"]){
t=n.plugins["Shockwave Flash"].description;
n3f8q=parseInt(t.charAt(t.indexOf(".")-1));
}
// get other vars
m=(n.userAgent.substring(0,8)=="Mozilla/") ? n.userAgent.substring(8,9) : 4;
if(m>2) j=(n.javaEnabled()) ? 1 : 0;
r=window.top.document.referrer;
if(m>3 && screen){
d=screen.colorDepth;
if(d==0) d=screen.pixelDepth;
x=screen.width;
w=(p.all) ? top.document.body.clientWidth:top.innerWidth;
}
y=new Date();
y.setTime(y.getTime()-31536000000);
p.cookie="nvt=1";
c=(p.cookie.indexOf("nvt") != -1)?1:0;
p.cookie="nvt=1; expires="+y.toGMTString();
// set new A attributes
ele.href='http://navrcholu.cz/Statistika/'+id+'/';
ele.setAttribute('title','NAVRCHOLU.cz');
// create IMG
var img=ele.appendChild(createNewEle('img'));
img.setAttribute('alt','NAVRCHOLU.cz');
img.setAttribute('style','width:80px;height:15px');
img.setAttribute('src','http://c1.navrcholu.cz/hit?site='+id+';t=o80;'
+'fv='+n3f8q+';js='+j+';cs='+c+';ref='+escape(r)+';cd='
+d+';sx='+x+';wx='+w+';jss=1;r='+Math.random());
}
navrcholu();
Použití pro navrcholu.cz
ReiserFS má na Linuxu problémy
Instaloval jsem dnes na jeden nový počítač Fedora Core 3, a při instalaci jsesm zvolil linux reiserfs, čímž jsem mohl kromě ext3 partitions
vytvořit i ReiserFS partition (standardně Fedora Core 3 instaluje i LVM2 a RAID, na stanici poněkud zbytečné věci). ReiserFS je pokročilý
žurnálový filesystém, mimořádně rychlý, je dokonce základním filesystémem pro distribuce jako je SUSE 9.1, SUSE 9.2, Gentoo a pár dalších.
Měl jsem s ReiserFS již jednu nemilou zkušenost, a to sice v případě SUSE 9.1, na druhou stranu jsem to ale nepřičítal
filesystému, ale něčemu jinému, a dnes
k té jedné nemilé zkušenosti přibyla druhá. Po instalaci jsem 20 minut pracoval, a počítač totálně zatuhnul.
Tak jsem jej restartoval, spustil reiserfsck,
a pracoval dalších 20 minut, a další vytuhnutí. Tak jsem smazal celou novou instalaci, dal tam tradiční ext3 (ale bez LVM2 a RAID), prosazované Red Hatem,
který má přece jenom obrovské serverové zkušenosti, pracuji asi 3 hodiny a vše je v pořádku. Obávám se, že ReiserFS má ještě své nemalé chybičky.
Deblogizace. Nikdo nezůstane blogem!

Pixy se stydí za
to, že je blogger. Blogger = člověk publikující, spisovatel, dokumentarista.
Já se za to nestydím, styděl bych se za to být špatným bloggerem (což rozhodně
nejsem), ale díky SEO optimalizaci jsem URL /blog/ nahradil
za /blog/, takže si prosím
opravte Vaše bookmarky a RSS čtečky.
Nové URL:
https://myego.cz/
Samozřejmě, nadále zůstanu zejména odborným webem, který ovšem dokáže vedle článků o DOM modelu v JavaScriptu pro navrcholu.cz publikovat i zábavné texty typu Anděl s plnou pusou semene, za cílem získání nesmírně rozsáhlé návštěvnosti, při zachování špičkové kvality ;-)
Technicky je přesměrování řešeno pomocí souboru .htaccess s tímto obsahem:
redirect 301 /blog/ https://myego.cz/
Vzhledem k výbornému online redakčnímu
systému jsem nemusel nic přegenerovávat, stačilo
změnit v nastavení pár URL, přejmenovat na FTP adresář z blog na radek.hulan,
a vyčistit cache statických XHTML stránek. Celá procedura zabrala přesně 30
sekund i s úpravou registrace na Toplist.cz.
TOPLIST.cz s application/xhtml+xml
Podobně jako NAVRCHOLU.cz
skript pro měření návštěvnosti je nutné přepsat
pro podporu application/xhtml+xml, u TOPLIST.cz je
to to samé.
Výsledek byl testován a funguje v Opeře 7.60 TP4, Firefoxu 1.0
(application/xhtml+xml), a rovněž v MSIE 6.0 (text/html).
Zde je kód pro toplist.js:
// (c) Radek HULAN, http://hulan.cz/ // This work is licensed under the Creative Commons Attribution License. // // TOPLIST.cz statistics that works under XHTML 1.1 served with // MIME type application/xhtml+xml as well as text/html MIME type. // // // Usage - place this in your XHTHML 1.1 code: // // // // helper functions var isXHTML; function createNewEle(ele){ if(isXHTML) return document.createElementNS('http://www.w3.org/1999/xhtml', ele); else return document.createElement(ele); }; function toplist(){ var ele=document.getElementById('toplist'); if (!ele) return; isXHTML=/html\:/.test(document.getElementsByTagName('body')[0].nodeName); // toplist.cz id from title var id=parseInt(ele.getAttribute('title')); if (!id) alert('TITLE attribute does not contain your TOPLIST.cz ID!'); var img=ele.getElementsByTagName('img'); // set new A attributes ele.href='http://toplist.cz/stat/'+id; ele.setAttribute('title','TOPLIST.cz'); // create IMG var img=ele.appendChild(createNewEle('img')); img.setAttribute('alt','TOPLIST.cz'); img.setAttribute('style','width:88px;height:120px'); img.setAttribute('src','http://toplist.cz/count.asp?id='+id +'&logo=bc' +'&http='+escape(document.referrer) +'&wi='+escape(window.screen.width) +'&he='+escape(window.screen.height) +'&cd='+escape(window.screen.colorDepth) +'&t='+escape(document.title)); } toplist();
Použití skriptu:
Vložte tento kód do Vašeho XHTML:
Pochopitelně, číslo 64941 upravte na Vaše číslo počítadla. Kód je pochopitelně napsaný tak, že funguje i při vypnutém JavaScriptu.
NAVRCHOLU.cz s application/xhtml+xml
V sobotu jsem se zaregistroval do statistik navrcholu.cz a dnes mi přišlo potvrzení registrace. Navrcholu.cz toho umí hodně, nicméně, jejich JavaScript pro měření byl plný write() a writeln(), takže jsem jej musel přepsat do DOM JavaScriptu, jinak by pochopitelně v XHTML 1.1 nefungoval (zabralo to 10 minut i s testováním).
Výsledek byl testován a funguje v Opeře 7.60 TP4, Firefoxu 1.0 (application/xhtml+xml), a rovněž v MSIE 6.0 (text/html).
Zde je kód pro navrcholu.js:
// (c) Radek HULAN, http://hulan.cz/ // This work is licensed under the Creative Commons Attribution License. // // NAVRCHOLU.cz statistics that works under XHTML 1.1 served with // MIME type application/xhtml+xml as well as text/html MIME type. // // // Usage - place this in your XHTHML 1.1 code: // // // // helper functions var isXHTML; function createNewEle(ele){ if(isXHTML) return document.createElementNS('http://www.w3.org/1999/xhtml', ele); else return document.createElement(ele); }; // navrcholu.cz code function navrcholu(){ var ele=document.getElementById('navrcholu'); if (!ele) return; isXHTML=/html\:/.test(document.getElementsByTagName('body')[0].nodeName); // navrcholu.cz id from title var id=parseInt(ele.getAttribute('title')); if (!id) alert('TITLE attribute does not contain your NAVRCHOLU.cz ID!'); // some variables var n=navigator; var p=document; var c,t,b,j,m,r,y,d,x,w; d=x=w=j=0; // detect flash plugin in MSIE if(n.appVersion.indexOf("MSIE")>=0 && n.appVersion.indexOf("Win")>=0 && n.userAgent.indexOf("Opera")<0) { p.writeln(""); p.writeln("on error resume next"); p.writeln("For i=7 to 4 Step -1"); p.writeln(" If IsObject(CreateObject(\"ShockwaveFlash.ShockwaveFlash.\" & i)) Then"); p.writeln(" n3f8q=i"); p.writeln(" Exit For"); p.writeln(" End If"); p.writeln("Next"); p.writeln(""); } else eval("var n3f8q=0"); // detect flash in other browsers if( n.plugins && n.plugins["Shockwave Flash"]){ t=n.plugins["Shockwave Flash"].description; n3f8q=parseInt(t.charAt(t.indexOf(".")-1)); } // get other vars m=(n.userAgent.substring(0,8)=="Mozilla/") ? n.userAgent.substring(8,9) : 4; if(m>2) j=(n.javaEnabled()) ? 1 : 0; r=window.top.document.referrer; if(m>3 && screen){ d=screen.colorDepth; if(d==0) d=screen.pixelDepth; x=screen.width; w=(p.all) ? top.document.body.clientWidth:top.innerWidth; } y=new Date(); y.setTime(y.getTime()-31536000000); p.cookie="nvt=1"; c=(p.cookie.indexOf("nvt") != -1)?1:0; p.cookie="nvt=1; expires="+y.toGMTString(); // set new A attributes ele.href='http://navrcholu.cz/Statistika/'+id+'/'; ele.setAttribute('title','NAVRCHOLU.cz'); // create IMG var img=ele.appendChild(createNewEle('img')); img.setAttribute('alt','NAVRCHOLU.cz'); img.setAttribute('style','width:80px;height:15px'); img.setAttribute('src','http://c1.navrcholu.cz/hit?site='+id+';t=o80;' +'fv='+n3f8q+';js='+j+';cs='+c+';ref='+escape(r)+';cd=' +d+';sx='+x+';wx='+w+';jss=1;r='+Math.random()); } navrcholu();
Použití skriptu:
Vložte tento kód do Vašeho XHTML:
Pochopitelně, číslo 77391 upravte na Vaše číslo počítadla. Kód je pochopitelně napsaný tak, že funguje i při vypnutém JavaScriptu.
Doufám, že mě za tento kód, který by měl dodat navrcholu.cz, a ne já, bude třeba nabídnuta Profi statistika navrcholu.cz na rok zdarma. Přijmul bych to, a s radostí zveřejnil ;-)
Xstandard - vynikající XHTML 1.1 WYSIWYG editor
Xstandard je vynikající XHTML 1.1 validní (!) WYSIWYG editor, který je ve verzi Xstandard Lite zdarma i pro komerční použití. Je to fantastický produkt, který skutečně generuje XHTML 1.1 zdrojový kód, za každé okolnosi well-formed.
Xstandard má to všem jedno omezení, je napsán jako ActiveX komponenta, a tudíž funguje jen pod Windows (nikoliv na Linuxu) za použití MSIE 5.5 a vyššího, nebo Firefoxu 1.0 / Mozilly 1.7 a vyšší. Samozřejmě, na Linuxu je možné použít projekt Wine a spustit Xstandard pod ním.
Xstandard umí automaticky dělat odstavce, seznamy, tabulky, tagy code, pre, abbr, samp, a další, jeho integrace do stávajícího prostředí je triviální, postačí zavolat object s typem application/x-xstandard, pro Firefox, nebo s clsid:0EED7206-1661-11D7-84A3-00606744831D pro MSIE.
Tento fantastický WYSIWYG editor jen nově implementován v redakčním systému F-ART:CMS. Pro stávající uživatele systému F-ART:CMS je implementace Xstadard dostupná zdarma. V systému BLOG:CMS, publikovaném v GNU GPL licenci, tato komponenta dostupná nebude.
XHTML 1.1 validní web má obrovský význam pro optimalizaci pro vyhledávače (SEO), protože validní weby s minimem markupu a převahou textu jsou roboty mnohem snázeji indexovány.
Ukázky editoru (WYSIWYG a zdrojový kód):

