abclinuxu.cz AbcLinuxu.cz itbiz.cz ITBiz.cz HDmag.cz HDmag.cz abcprace.cz AbcPráce.cz
Inzerujte na AbcPráce.cz od 950 Kč
Rozšířené hledání
×
    včera 14:55 | IT novinky

    Před 70 lety, 7. června 1954, ve věku 41 let, zemřel Alan Turing, britský matematik, logik, kryptoanalytik a zakladatel moderní informatiky.

    Ladislav Hagara | Komentářů: 8
    včera 11:44 | Zajímavý software

    NiceGUI umožňuje používat webový prohlížeč jako frontend pro kód v Pythonu. Zdrojové kódy jsou k dispozici na GitHubu pod licencí MIT.

    Ladislav Hagara | Komentářů: 1
    včera 10:55 | Nová verze

    Open source platforma Home Assistant (Demo, GitHub, Wikipedie) pro monitorování a řízení inteligentní domácnosti byla vydána ve verzi 2024.6. Z novinek lze vypíchnout lepší integraci LLM (OpenAI, Google AI, Ollama) nebo podporu Matter 1.3.

    Ladislav Hagara | Komentářů: 0
    6.6. 20:55 | IT novinky

    IKEA ve Spojeném království hledá zaměstnance do své nové pobočky. Do pobočky v počítačové hře Roblox. Nástupní mzda je 13,15 liber na hodinu.

    Ladislav Hagara | Komentářů: 0
    6.6. 10:44 | Zajímavý článek

    Alyssa Rosenzweig se v příspěvku na svém blogu Vulkan 1.3 na M1 za 1 měsíc rozepsala o novém Vulkan 1.3 ovladači Honeykrisp pro Apple M1 splňujícím specifikaci Khronosu. Vychází z ovladače NVK pro GPU od Nvidie. V plánu je dále rozchodit DXVK a vkd3d-proton a tím pádem Direct3D, aby na Apple M1 s Asahi Linuxem běžely hry pro Microsoft Windows.

    Ladislav Hagara | Komentářů: 35
    6.6. 01:00 | Nová verze

    Byla vydána (𝕏) květnová aktualizace aneb nová verze 1.90 editoru zdrojových kódů Visual Studio Code (Wikipedie). Přehled novinek i s náhledy a animovanými gify v poznámkách k vydání. Ve verzi 1.90 vyjde také VSCodium, tj. komunitní sestavení Visual Studia Code bez telemetrie a licenčních podmínek Microsoftu.

    Ladislav Hagara | Komentářů: 0
    6.6. 00:44 | Nová verze

    Byla vydána (Mastodon, 𝕏) nová verze 2024.2 linuxové distribuce navržené pro digitální forenzní analýzu a penetrační testování Kali Linux (Wikipedie). Přehled novinek se seznamem nových nástrojů v oficiálním oznámení.

    Ladislav Hagara | Komentářů: 0
    5.6. 16:44 | IT novinky

    Počítačová hra Tetris slaví 40 let. Alexej Pažitnov dokončil první hratelnou verzi 6. června 1984. Mezitím vznikla celá řada variant. Například Peklo nebo Nebe. Loni měl premiéru film Tetris.

    Ladislav Hagara | Komentářů: 10
    5.6. 10:44 | Nová verze

    MicroPython (Wikipedie), tj. implementace Pythonu 3 optimalizovaná pro jednočipové počítače, byl vydán ve verzi 1.23.0. V přehledu novinek je vypíchnuta podpora dynamických USB zařízení nebo nové moduly openamp, tls a vfs.

    Ladislav Hagara | Komentářů: 0
    5.6. 10:22 | Nová verze

    Canonical vydal Ubuntu Core 24. Představení na YouTube. Nová verze Ubuntu Core vychází z Ubuntu 24.04 LTS a podporována bude 12 let. Ubuntu Core je určeno pro IoT (internet věcí) a vestavěné systémy.

    Ladislav Hagara | Komentářů: 2
    Rozcestník

    Dotaz: Jak šifrovat data tak, abych je nemohl sám dešifrovat

    5.11.2014 21:23 perlil
    Jak šifrovat data tak, abych je nemohl sám dešifrovat
    Přečteno: 1148×

    Ahoj. Mám aplikaci (skriptík) v PHP, který potřebuje odesílat něco na "servery". V podstatě se jedná o to, že vytvoří lokálně několik souborů, pomocí cronu se spouští bash skript, který připojí různá ssh sdílení a na ně to nasype. Potřeboval bych, aby některá (ne všechna) data v těchto souborech byla šifrovaná (není problém udělat pomocí PHP) tak, abych je nemohl dešifrovat já, ale pouze ty servery, na které to sypu. Logické řešení je asymetrická kryptografie. Jenže jsem četl, že z privátního klíče se dá vygenerovat veřejný, takže kdybych šifroval privátním klíčem a na všech serverech, kam to posílám byl veřejný, tak bych pořád i já (odesílatel) byl schopný vygenerovat si svůj veřejný klíč a data dešifrovat. A udělat to opačně mi přijde blbost - 1x šifrovat veřejným a Xkrát dešifrovat privátním.

    Jak toto vyřešit?

    Odpovědi

    5.11.2014 21:28 Filip Jirsák
    Rozbalit Rozbalit vše Re: Jak šifrovat data tak, abych je nemohl sám dešifrovat
    Při použití asymetrické kryptografie se vždy šifruje veřejným klíčem a dešifruje privátním. Opačně je to nesmysl, veřejný klíč je veřejný od toho, že ho může znát každý - takže by každý mohl zprávu rozšifrovat.
    5.11.2014 21:30 VM
    Rozbalit Rozbalit vše Re: Jak šifrovat data tak, abych je nemohl sám dešifrovat
    Co takhle šifrování veřejným klíčem přestat považovat za blbost?
    5.11.2014 21:51 perlil
    Rozbalit Rozbalit vše Re: Jak šifrovat data tak, abych je nemohl sám dešifrovat
    To samo o sobě blbost není, ale takhle bude mít ten samý privátní klíč několik příjemců.
    5.11.2014 21:56 Filip Jirsák
    Rozbalit Rozbalit vše Re: Jak šifrovat data tak, abych je nemohl sám dešifrovat
    Pokud všem posíláte stejná data, ničemu to nevadí. Pokud ne, šifrujte pro každého příjemce zvlášť, vždy jeho klíčem.
    Jendа avatar 5.11.2014 22:21 Jendа | skóre: 78 | blog: Jenda | JO70FB
    Rozbalit Rozbalit vše Re: Jak šifrovat data tak, abych je nemohl sám dešifrovat
    Třeba gpg umí šifrovat více klíči. gpg -e -r klíč1 -r klíč2 -r klíč3
    5.11.2014 22:30 Michal Kubeček | skóre: 72 | Luštěnice
    Rozbalit Rozbalit vše Re: Jak šifrovat data tak, abych je nemohl sám dešifrovat
    z privátního klíče se dá vygenerovat veřejný

    Striktně vzato nedá. Je ale obvyklé, že buď jsou v tom souboru oba nebo máte k němu i veřejný.

    6.11.2014 08:25 Peter Fodrek | skóre: 11
    Rozbalit Rozbalit vše Re: Jak šifrovat data tak, abych je nemohl sám dešifrovat
    Vzdy sa sa da z verejneho kluca ziskat sukromny a naopak. Len to trva, v bezpecnych siftach, min 102 rokov na beznom PC
    Heron avatar 6.11.2014 09:03 Heron | skóre: 53 | blog: root_at_heron | Olomouc
    Rozbalit Rozbalit vše Re: Jak šifrovat data tak, abych je nemohl sám dešifrovat
    102? Proč zrovna konkrétně 102? Pominu-li, že u skutečných šifer se to číslo blíží (zhora) spíše 10^9 roků.
    pavlix avatar 6.11.2014 09:11 pavlix | skóre: 54 | blog: pavlix
    Rozbalit Rozbalit vše Re: Jak šifrovat data tak, abych je nemohl sám dešifrovat
    A tedy se to nedá, pokud to člověk posuzuje z praktického pohledu.
    Já už tu vlastně ani nejsem. Abclinuxu umřelo.
    6.11.2014 14:07 Peter Fodrek | skóre: 11
    Rozbalit Rozbalit vše Re: Jak šifrovat data tak, abych je nemohl sám dešifrovat
    pokial si kupite PC tak, to nema vyznam. Pokial si kupite superpocitac za par stoviek milionov USD a budete ho zivit, tak ten to stihne za 1,5 mesiaca.

    To ci to je prakticky nemozne je funkciou 1. Vyznamu informacie, alebo moznych finacnych ziskov z desifrovania 2. Casu, ktory mate k dispozicii 3. Financii, ktore mate k dispozicii..
    Jendа avatar 6.11.2014 14:16 Jendа | skóre: 78 | blog: Jenda | JO70FB
    Rozbalit Rozbalit vše Re: Jak šifrovat data tak, abych je nemohl sám dešifrovat
    Pokial si kupite superpocitac za par stoviek milionov USD a budete ho zivit, tak ten to stihne za 1,5 mesiaca.
    Nevěřím. Největší známý současný botnet (Bitcoin) spočítal za dobu své existence „pouze“ 2^82 operací a stál ne stovky milionů, ale miliardu USD.

    //kde se vzalo to číslo 1,5 měsíce? když prodloužím klíč o jeden bit, budou to najednou 3 měsíce? co když ho prodloužím o 8 bitů?
    6.11.2014 14:01 Peter Fodrek | skóre: 11
    Rozbalit Rozbalit vše Re: Jak šifrovat data tak, abych je nemohl sám dešifrovat
    nas ucli, ze 102 rokv je hrancia medzi sifrou, ktora je bezp[ecna a tou, ktora je nebezpecna. Ucili nas to v roku 1995. Teda uz dost davno. mozno sa standardy sprisnili
    Heron avatar 6.11.2014 14:38 Heron | skóre: 53 | blog: root_at_heron | Olomouc
    Rozbalit Rozbalit vše Re: Jak šifrovat data tak, abych je nemohl sám dešifrovat

    Zvláštní. Nechce se mi věřit, že by si lidé v roce 1995 nedovedli představit použít místo 1 počítače třeba těch 102 a mít to za snesitelný 1 rok.

    V každém případě, dnes každá rozumná šifra má sílu takovou, že bruteforce attack by trval déle, než je doba existence celého vesmíru (13.7 mld let).

    Rozumná šifra dneska začíná na bezpečnostní síle 112b (tedy AES něco jako 224 - používá se 256), a pokud má Jenda pravdu s těmi 82b operací u Bitcoinu, tak se pohybujeme o 112-82 = 30 (binárních) řádu jinde. Tedy 2^30 (1048576x výkon Bitcoinu - jak dlouho to běží a kolik je tam kompů netuším).

    6.11.2014 14:40 Michal Kubeček | skóre: 72 | Luštěnice
    Rozbalit Rozbalit vše Re: Jak šifrovat data tak, abych je nemohl sám dešifrovat
    Tedy 2^30 (1048576x výkon Bitcoinu

    To by bylo 2^20. 2^30 je něco přes miliardu.

    Heron avatar 6.11.2014 14:43 Heron | skóre: 53 | blog: root_at_heron | Olomouc
    Rozbalit Rozbalit vše Re: Jak šifrovat data tak, abych je nemohl sám dešifrovat
    +1

    Překlep v bc.
    Jendа avatar 7.11.2014 02:33 Jendа | skóre: 78 | blog: Jenda | JO70FB
    Rozbalit Rozbalit vše Re: Jak šifrovat data tak, abych je nemohl sám dešifrovat
    (zdroj k tomu Bitcoinu - položka Total cummulative number of hashes)
    pavlix avatar 6.11.2014 14:43 pavlix | skóre: 54 | blog: pavlix
    Rozbalit Rozbalit vše Re: Jak šifrovat data tak, abych je nemohl sám dešifrovat
    Taky nesmí člověk věřit každé kravině.
    Já už tu vlastně ani nejsem. Abclinuxu umřelo.
    7.11.2014 09:05 Xerces
    Rozbalit Rozbalit vše Re: Jak šifrovat data tak, abych je nemohl sám dešifrovat
    Na to asi žádný standard není. Každopádně je to praktické pravidlo. Po 102 letech budu s největší pravděpodobností pod drnem a bude mi jedno jestli mě někdo bude žalovat za slabé zabezpečení. :-)
    7.11.2014 09:51 Sten
    Rozbalit Rozbalit vše Re: Jak šifrovat data tak, abych je nemohl sám dešifrovat
    Nebylo to 102 bitů? To by tehdy tak odpovídalo
    pavlix avatar 7.11.2014 14:55 pavlix | skóre: 54 | blog: pavlix
    Rozbalit Rozbalit vše Re: Jak šifrovat data tak, abych je nemohl sám dešifrovat
    To je jak rádio jerevan.
    Já už tu vlastně ani nejsem. Abclinuxu umřelo.
    7.11.2014 15:05 jekub
    Rozbalit Rozbalit vše Re: Jak šifrovat data tak, abych je nemohl sám dešifrovat
    takze ted uz jen 83 :-)
    6.11.2014 12:12 a1
    Rozbalit Rozbalit vše Re: Jak šifrovat data tak, abych je nemohl sám dešifrovat
    OT: proc nesmite ta data desifrovat (kdyz mate stejne k dispozici plaintext) ??
    pavlix avatar 6.11.2014 12:16 pavlix | skóre: 54 | blog: pavlix
    Rozbalit Rozbalit vše Re: Jak šifrovat data tak, abych je nemohl sám dešifrovat
    To je dobrá otázka.
    Já už tu vlastně ani nejsem. Abclinuxu umřelo.
    6.11.2014 12:27 Michal Kubeček | skóre: 72 | Luštěnice
    Rozbalit Rozbalit vše Re: Jak šifrovat data tak, abych je nemohl sám dešifrovat
    Např. proto, aby ten, kdo by později získal nad strojem kontrolu a dostal se tedy i ke klíči, nemohl dešifrovat starší data (předpokládám, že se plaintext verze ihned po zašifrování smaže).
    6.11.2014 13:05 perlil
    Rozbalit Rozbalit vše Re: Jak šifrovat data tak, abych je nemohl sám dešifrovat
    přesně
    6.11.2014 22:53 a1
    Rozbalit Rozbalit vše Re: Jak šifrovat data tak, abych je nemohl sám dešifrovat
    aha takze otazka nezni "abych je nemohl desifrovat ja" ale "aby je nemohl desifrovat utocnik" ;)

    kazdopadne je to tu uz napsane 100 krat: asymetricka sifra

    BTW: smazat plaintext muzu i bez toho aniz bych ho sifroval ;)
    Jendа avatar 7.11.2014 02:36 Jendа | skóre: 78 | blog: Jenda | JO70FB
    Rozbalit Rozbalit vše Re: Jak šifrovat data tak, abych je nemohl sám dešifrovat
    BTW: smazat plaintext muzu i bez toho aniz bych ho sifroval ;)
    No ale já ho pak budu asi někdy v budoucnu potřebovat :-). Třeba když by to byly logy. Takhle se to dá řešit klíčem v trezoru, ke kterému se útočník ani v případě kompromitace nedostane. Samozřejmě je pak potřeba dešifrování provádět na čistém systému…
    pavlix avatar 7.11.2014 15:33 pavlix | skóre: 54 | blog: pavlix
    Rozbalit Rozbalit vše Re: Jak šifrovat data tak, abych je nemohl sám dešifrovat
    No ale já ho pak budu asi někdy v budoucnu potřebovat :-).
    To měla být zřejmě narážka na to, že zašifrování neřeší uvedený problém a musí se nad tím přemýšlet.
    Já už tu vlastně ani nejsem. Abclinuxu umřelo.
    pavlix avatar 6.11.2014 12:26 pavlix | skóre: 54 | blog: pavlix
    Rozbalit Rozbalit vše Re: Jak šifrovat data tak, abych je nemohl sám dešifrovat
    Řeknu to, co ostatní, jinými slovy. Asymetrická kryptografie se většinou používá tak, že jeden z klíču je privátní a druhý veřejný, přičemž klíče byly vygenerovány společně. Ty pojmy mají jasně definovaný význam ve smyslu že privátní klíč je potřeba skrývat, zatímco veřejný klíč není potřeba skrývat a v ideálním případě lze skutečně vystavit pro širokou veřejnost. Když pominu jemné nuance slova veřejný ve spojení veřejný klíč, vždy se jedná o ten klíč, který agent vydává protistraně, aby mohl privátní použít k podepisování nebo dešifrování. Data šifrovaná privátním klíčem jsou veřejná (a zjednodušeně řečeno podepsaná). Naopak kdokoli může šifrovat data veřejným klíčem, pokud mám být jejich jediným příjemcem.

    Příjemci musejí mít buď každý svůj privátní klíč, nebo ve zjednodušeném případě jeden sdílený (bezpečně dopravený) privátní klíč a šifrování probíhá odpovídajícím veřejným klíčem.

    Představa, že něco zašifruju privátním klíčem a budu to považovat za tajné, je jenom matení pojmů. Ale docela by mě zajímala odpověď na otázku výše, proč je potřeba abych nemohl číst zprávu, ke které mám nezašifrovaný originál, to jako požadavek nedává moc smysl.
    Já už tu vlastně ani nejsem. Abclinuxu umřelo.
    7.11.2014 16:35 lertimir | skóre: 64 | blog: Par_slov
    Rozbalit Rozbalit vše Re: Jak šifrovat data tak, abych je nemohl sám dešifrovat
    Spíše se obecně šifrují vlastní data symetrickými šiframi. Hlavně proto, že asymetrické šifry jsou násobně výpočetně (a tedy časově nebo v průtoku dat) náročnější než symetrické stejné bezpečnosti. Současný poměr je cca 10^4-10^5. A používá se náhodně generovaný jednorázový klíč relace. Asymetrická šifra se používá spolu s dalšími kryptografickými elementy na bezpečné ustavení tohoto klíče relace.

    V případě tazatele je možné několik řešení.
    1. Změna protokolu z "push" - skriptík odesílá, na "pull" skriptík uloží a servery si data stáhnou. V tom případě jeden veřejný klíč skriptíkového server se distribuuje na ostatní servery.
    2. Řešení triviální. Každý server uloží na u skriptíku své veřejné klíče a ten bude každému posílat jinak zašifrovaná data.
    3. Řešení pitomé. Rozdistribuji soukromý klíč na všechny servery. To nicméně stejně nepomůže, abych posílal jedna data, protože při procesu generování klíče relace se ustaví jiný klíč pro každý server. A kompromitace libovolného mista likviduje komunikaci ze všemi stranami.
    4. Řešení sofistikované. Použít některý z "multi party key exchange protocols" Jako jsou dokumentovány třeba 1, 2, 3 a mnoho dalších článků. Ale to je trochu z kanónem na vrabce a navíc asi zcela za hranicemi tazatelových schopností, když ani nechápe, jak funguje asymetrické crypto.
    Jendа avatar 7.11.2014 18:33 Jendа | skóre: 78 | blog: Jenda | JO70FB
    Rozbalit Rozbalit vše Re: Jak šifrovat data tak, abych je nemohl sám dešifrovat
    Řešení triviální. Každý server uloží na u skriptíku své veřejné klíče a ten bude každému posílat jinak zašifrovaná data.
    Řešení ještě triviálnější: data se zašifrují jen jednou symetrickým klíčem a různá data na různé servery znamenají pouze jinak zašifrovaný tento jeden klíč. Takže overhead je minimální. Jak už jsem psal výše, třeba GPG tohle umí naprosto jednoduše.
    pavlix avatar 7.11.2014 19:46 pavlix | skóre: 54 | blog: pavlix
    Rozbalit Rozbalit vše Re: Jak šifrovat data tak, abych je nemohl sám dešifrovat
    Výše jsi psal, že umí šifrovat více klíči, ale ne co to přesně znamená.
    Já už tu vlastně ani nejsem. Abclinuxu umřelo.
    pavlix avatar 7.11.2014 19:45 pavlix | skóre: 54 | blog: pavlix
    Rozbalit Rozbalit vše Re: Jak šifrovat data tak, abych je nemohl sám dešifrovat
    Spíše se obecně šifrují vlastní data symetrickými šiframi. Hlavně proto, že asymetrické šifry jsou násobně výpočetně (a tedy časově nebo v průtoku dat) náročnější než symetrické stejné bezpečnosti. Současný poměr je cca 10^4-10^5. A používá se náhodně generovaný jednorázový klíč relace. Asymetrická šifra se používá spolu s dalšími kryptografickými elementy na bezpečné ustavení tohoto klíče relace.
    To bych si v kontextu diskuze troufl označit za implementační detail.
    Změna protokolu z "push" - skriptík odesílá, na "pull" skriptík uloží a servery si data stáhnou.
    To z pohledu šifrování vůbec nic neřeší, je v podstatě jedno, kdo iniciuje spojení.
    Řešení triviální. Každý server uloží na u skriptíku své veřejné klíče a ten bude každému posílat jinak zašifrovaná data.
    To jsem psal.
    Řešení pitomé. Rozdistribuji soukromý klíč na všechny servery.
    To jsem taky psal.
    To nicméně stejně nepomůže, abych posílal jedna data, protože při procesu generování klíče relace se ustaví jiný klíč pro každý server.
    Nebo lze data jednou zašifrovat a rozeslat. Navíc je to úplně jedno, protože klíč použitý na úrovni relace je opět jen implementační detail, který člověk v podstatě nemusí řešit.
    A kompromitace libovolného mista likviduje komunikaci ze všemi stranami.
    Což je typický projev sdílených klíčů.
    Řešení sofistikované. Použít některý z "multi party key exchange protocols" Jako jsou dokumentovány třeba 1, 2, 3 a mnoho dalších článků. Ale to je trochu z kanónem na vrabce a navíc asi zcela za hranicemi tazatelových schopností, když ani nechápe, jak funguje asymetrické crypto.
    Souhlasím jak s kanónem na vrabce, tak s hranicemi tazatele.
    Já už tu vlastně ani nejsem. Abclinuxu umřelo.

    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.