abclinuxu.cz AbcLinuxu.cz itbiz.cz ITBiz.cz HDmag.cz HDmag.cz abcprace.cz AbcPráce.cz
AbcLinuxu hledá autory!
Inzerujte na AbcPráce.cz od 950 Kč
Rozšířené hledání
×
    dnes 18:11 | Komunita

    Po šestiletém úsilí byla z jádra Linux odstraněna funkce strncpy(). Všechna předchozí volání této funkce byla převedena na bezpečnější alternativy.

    Ladislav Hagara | Komentářů: 1
    dnes 17:22 | Nová verze

    Byla vydána nová verze 261 správce systému a služeb systemd (Wikipedie, GitHub). Z novinek lze vypíchnout nový subsystém IMDS (Cloud "Instance Metadata Service"), nový příkaz storagectl nebo novou komponentu systemd-sysinstall.

    Ladislav Hagara | Komentářů: 2
    dnes 12:00 | Nová verze

    Vývojové prostředí Qt Creator bylo vydáno ve verzi 20 (seznam změn). Novinky zahrnují hlavně rozšíření pro integraci LLM agentů nebo minimalistický editační režim uživatelského rozhraní („zen mode“).

    |🇵🇸 | Komentářů: 0
    včera 10:22 | Humor

    Už jste se prolétli na webu Google Earth? Přibyl tam Simulátor letu (Nástroje / Simulátor letu). Funguje i bez účtu Google [𝕏].

    Ladislav Hagara | Komentářů: 0
    včera 09:55 | Nová verze

    Byla vydána nová verze 4.7 (𝕏, Bluesky, Mastodon) multiplatformního open source herního enginu Godot (Wikipedie, GitHub). Přehled novinek i s náhledy v příspěvku na blogu.

    Ladislav Hagara | Komentářů: 2
    18.6. 13:33 | Nová verze

    Mastodon (Wikipedie) - sociální síť, která není na prodej - byl vydán ve verzi 4.6. Přehled novinek s náhledy v oznámení na blogu.

    Ladislav Hagara | Komentářů: 0
    18.6. 12:44 | IT novinky

    V Edici CZ.NIC, knižní řady správce české národní domény, vychází nová kniha Martina Malého Kódy, buildy, firmwary. Autor po půl roce od vydání předchozího titulu přichází se svou již sedmou knihou, tentokrát zaměřenou na vývoj programového vybavení pro embedded zařízení. Publikace s podtitulem Základy vývojářského řemesla pro tvůrce hobby elektroniky nabízí praktického průvodce pro všechny, kdo své projekty vytvořené s Arduinem

    … více »
    Ladislav Hagara | Komentářů: 0
    18.6. 11:44 | Komunita

    V Brně na FIT VUT probíhá dvoudenní open source komunitní konference DevConf.CZ 2026. Na programu je celá řada zajímavých přednášek, lightning talků, meetupů a workshopů. Přednášky lze sledovat i online na YouTube kanálu konference. Aktuální dění lze sledovat na Matrixu, 𝕏 nebo Mastodonu.

    Ladislav Hagara | Komentářů: 0
    18.6. 04:22 | Nová verze

    Byla vydána nová verze 15.1 svobodného unixového operačního systému FreeBSD. Podrobný přehled novinek v poznámkách k vydání.

    Ladislav Hagara | Komentářů: 1
    17.6. 19:11 | Zajímavý projekt

    Vývojáři Ubuntu představili projekt Myna, tj. iniciativu zaměřenou na přidání funkce převodu řeči na text do prostředí desktopu Ubuntu. Dle plánu již v Ubuntu 26.10.

    Ladislav Hagara | Komentářů: 6
    Které desktopové prostředí na Linuxu používáte?
     (11%)
     (8%)
     (2%)
     (16%)
     (31%)
     (3%)
     (6%)
     (3%)
     (15%)
     (26%)
    Celkem 1948 hlasů
     Komentářů: 30, poslední 3.4. 20:20
    Rozcestník


    Dotaz: Kontrolní kód s max 14 znaky

    5.10.2011 10:35 Proki
    Kontrolní kód s max 14 znaky
    Přečteno: 576×
    Dobrý den, v jedné aplikaci potřebuji vytvářet kontrolní kódy různě dlouhých XML dokumentů, které se přenášejí mezi systémy. Podmínkou je, že tento kód může mít maximálně 14 alfanumerických znaků a bylo by vhodné, aby například dvě chyby v dokumentu nevygenerovali platný opět kontrolní součet. Tento kontrolní součet slouží jen pro detekci chyb při přenosu, nemusí být tedy generován žádným šifrovacím algoritmem. Děkuji za každou radu, co bych mohl použít, případně za každé nakopnutí správným směrem. Celý den hledám různé algoritmy, ale všechny mnou nalezené generují kódy delší jak 15 znaků. Zkrácení delšího kódu si dovolit nemohu.

    Odpovědi

    5.10.2011 11:00 VjEtNaM | skóre: 4
    Rozbalit Rozbalit vše Re: Kontrolní kód s max 14 znaky
    Asi idealni pro kontrolu detekce chyby přenosu se mi zdá CRC-32.
    Délka kontolního hashe pro CRC-32 je 8 znaků hex např "04C11DB7".
    Možnost kolize dvou kontrolních součtů je 1:2^32.
    Ve spoustě prog. jazyků již bývá implementován jako funkce.
    Více info zde -> Wiki-CRC
    5.10.2011 11:18 Semo | skóre: 45 | blog: Semo
    Rozbalit Rozbalit vše Re: Kontrolní kód s max 14 znaky
    Nechapem, preco by si nemohol z nejakeho dlhsieho kodu brat len podmnozinu 14 znakov.
    If you hold a Unix shell up to your ear, you can you hear the C.
    5.10.2011 12:06 VjEtNaM | skóre: 4
    Rozbalit Rozbalit vše Re: Kontrolní kód s max 14 znaky
    Určitě mohl ale, hashovaci algoritmy nejsou nadarmo navrženy tak aby co nejméně docházelo ke kolizím.
    Tím že se vezme pouze podmnožina části znaků múže dojít k nepředpokládanému zvýšení pravděpodobnosti kolizí.
    5.10.2011 13:45 me vakérav
    Rozbalit Rozbalit vše Re: Kontrolní kód s max 14 znaky
    Aby co nejméně docházelo ke kolizím je potřeba hodnoty hashe rozprostřít rovnoměrně do prostoru. To znamená, že i jednotlivé části hashe jsou co nejvíce rozprostřeny (= všechny hodnoty stejně náhodně zastoupeny).

    Takže pokud by část hashe vedla ke zvýšení pravděpodobnosti kolize (většímu než daným samotným zkrácením prostoru), jedná se o špatný hash.

    Správná odpověď na tazatelovu otázku je vzít některý standardní hash a použít z něj třeba prvních 14 znaků. To je IMHO zcela korektní operace. (Anebo: Udělat hash, to převést na binární podobu (tj. dvouznaky 0-9a-f převést na bajty, čímž se zkrátí o polovinu), to base64ovat a z výsledku vzít prvních 14 znaků.)
    5.10.2011 15:34 Sten
    Rozbalit Rozbalit vše Re: Kontrolní kód s max 14 znaky
    Souhlasím. Jmenuje se to lavinový efekt (změna jednoho bitu kompletně změní celý hash). Hlavní důvod nicméně není předcházení kolizím, ale ochrana před prolomením pomocí statistické analýzy.
    5.10.2011 17:03 VjEtNaM | skóre: 4
    Rozbalit Rozbalit vše Re: Kontrolní kód s max 14 znaky
    Díky za link rád jsem se poučil.
    5.10.2011 15:04 Sten
    Rozbalit Rozbalit vše Re: Kontrolní kód s max 14 znaky
    14 alfanumerických znaků? To je 6214 kombinací (pokud se rozlišují velká a malá písmena), což je cca 1,2 × 1025. To můžete klidně použít nějakou 64-bitovou heš (třeba CRC-64) a vhodně to namapovat na písmena a čísla.
    5.10.2011 18:34 l4m4
    Rozbalit Rozbalit vše Re: Kontrolní kód s max 14 znaky
    14 alnum znaků obsáhne cca 83 bitů informace. Takže lepší je vzít delší hash a uříznout, jak radí jiní.
    6.10.2011 10:35 Sten
    Rozbalit Rozbalit vše Re: Kontrolní kód s max 14 znaky
    Možná by tedy bylo lepší použít Skein nebo Fletcher, kde si můžete nastavit délku, jakou potřebujete. CRC umí taky libovolnou délku, ale je tam problém s výběrem vhodných mocnin.
    Heron avatar 5.10.2011 20:58 Heron | skóre: 53 | blog: root_at_heron | Olomouc
    Rozbalit Rozbalit vše Re: Kontrolní kód s max 14 znaky
    CRC je kontrolní součet a ne hash. Obojí má jiné použití a nelze to zaměnovat.
    pepe_ avatar 6.10.2011 01:06 pepe_ | skóre: 48
    Rozbalit Rozbalit vše Re: Kontrolní kód s max 14 znaky
    Příloha:

    crc32 urcite staci ...

    6.10.2011 08:47 l4m4
    Rozbalit Rozbalit vše Re: Kontrolní kód s max 14 znaky
    Proč určitě stačí? Proč v perlu, když o perlu tazatel nic nepíše? Proč, když už v perlu, používat složitě Archive::Zip namísto standardního Digest?
    6.10.2011 10:26 Sten
    Rozbalit Rozbalit vše Re: Kontrolní kód s max 14 znaky
    Hašovací funkce nejsou jenom kryptografické, CRC je zrovna nekryptografická hašovací funkce :-)
    Heron avatar 6.10.2011 10:52 Heron | skóre: 53 | blog: root_at_heron | Olomouc
    Rozbalit Rozbalit vše Re: Kontrolní kód s max 14 znaky
    To je pravda.

    Jen jsem chtěl upozornit na skutečnost, že CRC má zcela jiné použití a návrh, než taková rodina funkcí SHA a nemělo by se to zaměňovat. CRC jsou navržené jako kontrolní součty a SHA je navržená jako kryptograficky bezpečná. Což je vidět už jen z délky výstupu. Kryprograficky silné funkce jsou ty o délce 160b a více.
    6.10.2011 10:47 Proki
    Rozbalit Rozbalit vše Re: Kontrolní kód s max 14 znaky
    Zkusil jsem implementovat algoritmus, kdy vstup hashuju pomocí funkce MD5 a pak jej převedu do vyšší číselné soustavy tak, aby výstup měl maximálně 14 znaků (za využití dalších písmen abecedy neomezující se pouze na 0-9, a-f jako je tomu u šestnáctkové soustavy). Dal by se tento postup v reálu aplikovat nebo je to naprosto chybná cesta a CRC-32 by bylo pro kontrolu chyb vhodnější?
    6.10.2011 11:01 me vakérav
    Rozbalit Rozbalit vše Re: Kontrolní kód s max 14 znaky
    Jo, viz poslední věta v závorce tady. Ale standardní base64 se mi zdá jednodušší než implementovat něco svého.

    Nicméně pro kontrolu chyb stačí skoro cokoli, klidně to CRC32.
    6.10.2011 11:45 l4m4
    Rozbalit Rozbalit vše Re: Kontrolní kód s max 14 znaky
    Base62 ovšem obsahuje dva nealanumetické znaky (+ a /). Tudíž je-li ten požadavek striktní, je nutno použít Base62.
    Tarmaq avatar 6.10.2011 12:40 Tarmaq | skóre: 39
    Rozbalit Rozbalit vše Re: Kontrolní kód s max 14 znaky
    a k paddingu je vyuzivan znak =
    Don't panic!

    Založit nové vláknoNahoru

    Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

    ISSN 1214-1267   www.czech-server.cz
    © 1999-2015 Nitemedia s. r. o. Všechna práva vyhrazena.