Algoritmus sha 256 v jednoduchých slovech. Vysvětlete krypto-algoritmy pro těžbu. Vítěznější

Oleksandr Markov

Zkratka SHA 256 znamená Secure Hash Algorithm – mechanismus požadavku na hash vytvořený faksimilemi NSA. Klíčovým úkolem algoritmu je transformace typové informace hodnoty na pevnou hodnotu, mělo by být možné rozlišit způsob identifikace těchto dat.

Historie vzhledu

Je velmi významné, že se jedná o algoritmus další generace, výtvory založené na jeho nástupci - SHA-1, který byl sám o sobě rozšířen v roce 1995 a ukázalo se, že je použit pro civilní účely. Aktualizovaná verze Populární algoritmus Nin_ byl vytvořen specialisty Národní bezpečnostní agentury v roce 2002.

O tři roky později se objevil patent, který mi umožňuje získat algoritmus pro civilní účely. Třetí verze populárního mechanismu se objevila v roce 2012 a na vývoji se podíleli specialisté z agentur National Standards. Mimochodem, SHA-3 vyhraje nad svými předchůdci.

Není možné dešifrovat převedená data, fragmenty hash součtu nelze považovat za šifrovací proces v klasickém interpretačním procesu. Jednosměrný šifrovací algoritmus zpracovává neurčité množství informací.

Varto označují, že úplně všechno základní verze Algoritmus Secure Hashing Algorithm byl vytvořen v souladu s Merkle-Damgardovým principem: informace jsou rozděleny do stejných kategorií. Skupina kůže podléhá jednostrannému úchopu, po kterém se kůže kůže výrazně změní.

Takový způsob šifrování může být neosobní:

  • stlačování dat se provádí okamžitě;
  • je nemožné provést proces transformace bez klíčů;
  • imovirnіst vzhled kolіzіy zveda nanіvets.

Technická charakteristika

Protokol schůzek pro data, rozdělení na části, celkový vzhled - 64 bajtů. Algoritmus zajišťuje konsolidaci, po které je deklarován 256bitový kód. Technologie šifrování je založena na zdánlivě nepříjemném kole, jehož cykličnost je 64krát.

  • Velikost bloku 64 bajtů.
  • Maximální délka kódu, který má být zašifrován, je 33 bajtů.
  • Parametry výstrahy – 32 bajtů.
  • Rozmir pro zamovchuvannyam - 4 bajty.
  • Počet opakování na hranicích jednoho cyklu je 64.
  • Rychlost algoritmu je 140 Mb/s.

Jak bylo uvedeno dříve, protokol SHA-256 je založen na konceptu Merkle-Damgard a poté je nejprve rozdělen na bloky a poté na sousední slova.

Shromažďování informací k předání náhodného rozsahu opakování - 64 nebo 80. Cyklus kůže je doprovázen transformací slov. Kód hash dílčího součtu je generován po dílčím součtu hodnot cob.

Kryptoměna s algoritmem SHA-256

Pojďme se podívat na digitální měny, jejichž těžba je založena na principech algoritmu SHA-256:

  • Bitcoin je měna, která nevyžaduje další představování, stejně jako dříve je nejoblíbenějším kryptografickým aktivem.
  • Peercoin je jedinečný v tom, že kód je vytvořen na bázi bitcoinu, zatímco mechanismus je vítězný pro obranu opatření a PoW je pro distribuci coinů.
  • Namecoin - technologie s kódem Postupně budu zlepšovat bezpečnost, soukromí, decentralizaci.
  • Unobtanium - vyznačuje se minimálním kolébáním před inflací. Na vidobot mincí Unobtanium je potřeba asi 300 mincí.
  • Deutsche eMark je digitální opatření pro převod různých aktiv, například haléřů. Výměna probíhá bez zprostředkovatelů.
  • BetaCoin je mezinárodní platební systém, který funguje na stejném principu jako systém Bitcoin.
  • Joulecoin – zajišťuje nejefektivnější potvrzování transakcí na základě bitcoinu.
  • IXCoin je dalším projektem založeným na kódu založeném na principu peer-to-peer.
  • – Blockchainová platforma, jačí vinice pro zveřejňování jedinečného obsahu.

Varto také znamená, že algoritmus SHA-256 vítězí v systému Litecoin, ale ne v podprogramu. Pro těžbu je nainstalován protokol Scrypt.

Těžba kryptoměn na algoritmu SHA-256

Z nějakého důvodu lze získat coiny, jejichž systémy se používají pro tento protokol, třemi způsoby:

  • ASIC.

Složitost těžby bez střední cesty závisí na skutečnosti, že existuje způsob, jak najít kryptoměnu. Největší účinností se však v každém případě vyznačuje samotný nástavec ASIC, jehož hlava je skvěle variovatelná.

Průměrný ASIC miner má cenu asi 100 tisíc rublů (Asic Miner AVALON 821), ale je možné zakoupit i dražší modely, jejichž cena může dosáhnout pěti milionů rublů (Asic Miner BITFURY B8 16NM 50 TH/S) .

Pokud jde o vidoboot kryptoměny na procesorech, je taková metoda nejméně efektivní. Zvláště když mluvíme o digitální měně Bitcoin.

Nejvhodnější řešení je z grafických karet. Průměrná varianta hýžďové fermi se pohybuje v rozmezí 1000-2000 $. Jak vybrat grafickou kartu pro videobudku s kryptoměnou založenou na algoritmu SHA-256?

Pokud mluvíte o Nvidii, pak nejlepší řešení stát se grafickou kartou (1400 MH/s). Je zřejmé, že v AMD neexistuje nic jako nepřetržitý konkurent, takže k těžbě slouží všechny karty řady Vega. Grafický adaptér Radeon RX Vega poskytuje těžbu rychlostí 1200 MH/S. Stejné držení takového držení je další věc, kterou lze vyhrát.

Pokud hledáte levnější variantu, v tomto případě můžete získat Radeon 7970, takže uvidíte až 800 MH/s. Nezapomeňte, že grafická karta pro spuštění farmy bude potřebovat více vybavení, například chladicí radiátory, obytnou jednotku, operační paměti atd.

Višňovok

To je vše, co těžaři potřebují vědět o algoritmu SHA-256. Je zřejmé, že mnoho moderních kryptoměn je založeno na protokolu Scrypt a těžba nejpopulárnějších coinů (BTC) se stejně jako dříve řídí tímto principem.

K čemu je SHA - 256?

SHA 256 – zkratka pro Secure Hash Algorithm – není populární kryptografických hashovací algoritmus, rozdělení National Security Agency - Americká národní bezpečnostní agentura. Úkol SHA-256 je založen na skutečnosti, že je nutné generovat sadu dat s pevnou hodnotou, která slouží jako identifikátor tsikh danikh.

Hodnoty Otrimane jsou porovnávány s duplikáty oficiálních údajů, protože je nelze odebrat. Hlavní náplní přikládání algoritmu je práce v různých doplňcích nebo službách, souvisejících s ochranou informací, defunkční a otrimala širší širší. Vítězí také jako technologie pro těžbu kryptoměn.

Tento algoritmus patří do skupiny šifrovacích algoritmů SHA-2, které byly vyvinuty na základě algoritmu SHA-1, který byl poprvé vytvořen v roce 1995 pro civilní účely. Samotný SHA-2 byl rozložen Národní bezpečnostní agenturou USA na jaře 2002. Po dobu tří let vydávala americká NSA patent na používání technologie SHA v civilních projektech.

V roce 2012 byla v Národním institutu pro standardy a technologie provedena aktualizace algoritmu: SHA - 3. Pro rok byl nový algoritmus přijat jako zjednodušený hlavní algoritmus SHA - 2, ale je již zastaralý, ale SHA - 1 stále vítězí.

Hash - množství dat nezašifrovaných klasickou technologií rozumіnni, to je nemožnost dešifrování dat z návratové knihy. Tse jednosměrné šifrování pro libovolný počet dat. Všechny SHA algoritmy jsou založeny na Merkle-Damgardově metodě: data jsou rozdělena do stejných skupin, jejichž povrch musí projít jednosměrnou stlačovací funkcí. V důsledku toho dozhina se data mění.

Tato metoda má dvě významné výhody:

  • rychlé šifrování je prakticky nemožné dešifrovat bez klíčů;
  • minimální riziko výskytu kolismů (stejné obrázky).

Vítěznější

Dnešní skin hacker Merezhi, zná chi, hacker SHA-256: bezpečnostní certifikát SSL, druh skin hijackingu webové stránky, včetně algoritmu SHA-256. Je to nezbytné pro zřízení a ověření chráněného z'ednannya s webem.

Plus SHA - 256

SHA-256-self rozšíření těžební algoritmus uprostřed ostatních. Vіn se ukázal jako silný jako zlo (na vzácné chyby) a účinný algoritmus jak pro těžbu, tak pro jiné účely.

Mínus SHA – 256

Golovny nedolіkom SHA - 256 є jóga pod kontrolou těžařům: seznamy největších výpočetních tlaků odebírají většinu kryptoměny, včetně jedné základní principy kryptoměn decentralizace.

Poté jako velcí investoři začali investovat haléře do kalkulačního tlaku pro průmyslovou těžbu bitcoinů, zvýšila se složitelnost bagator miningu a začalo se zvyšovat napětí ve výpočtu vinatkoviy. V jiných protokolech, moderních a „uvězněných“ v těžbě kryptoměn, jako je Scrypt, je jen málo změn. Bez ohledu na ty, kteří dnes SHA-256 zaujímá větší část trhu s kryptoměnami, uvolníme svou nadvládu tím, že přidáme břemeno dalších ukradených a podsunutých protokolů.

Po jedné hodině Algoritmy SHA-1 přestaly poskytovat nezbytnou úroveň spolehlivosti díky nepravděpodobnému ospravedlnění kolizí. SHA-256, stejně jako SHA-512, je bezpečnější v případě nedostatku, ale stále existuje nehybnost viny.

Wiki o kryptoměnách

Těžba na SHA - 256

Těžba na SHA - 256, stejně jako na jakémkoli jiném algoritmu - celý proces se zdá být skládací. kryptografickýchúkoly, jak program generuje pro těžbu na základě dat z předchozích bloků.

Existují tři způsoby těžby s různými funkcemi SHA-256:

  • CPU (centrální procesorová jednotka);
  • GPU (grafický procesor);
  • specializace Procesor: ASIC.

Pro těžbu je hash součtem vítězství jako identifikátor již existujících bloků a vytvoření nových na základě předchozích. Proces těžby je zobrazen v rozhraní na adrese "accepted f33ae3bc9 ...". De f33ae3bc9 - tse hash - součet, část dat, uznáno pro dešifrování. Hlavní blok je složen z velkého množství podobných hashů – sum.

Tobto, těžba s algoritmem SHA - 256 є bezchybný výběr správné hash hodnoty - součet, výčet čísel pro vytvoření nového bloku. Čím větší jsou vaše počítací tlaky, tím větší je šance na nalezení správného bloku: rychlost řazení různých hashových součtů ležících v tlacích.

Výzva pro ty, které Bitcoin vyzve na algoritmu SHA - 256 konkurenční těžba nových potřeb v oblasti velkého otupujícího napětí. Proto se pro těžbu bitcoinů dlouhodobě zdokonaluje výroba „ASIC“ – aplikačně specifický integrovaný obvod, tj. e. integrovaný obvod zvláštního určení. ASIC umožňují těžit bitcoiny a další kryptoměny na algoritmu SHA-256 bohatší, efektivnější a levnější.

Jak kryptoměny hackují algoritmus SHA - 256

SHA - 256 je klasický algoritmus pro kryptoměny: hlavní kryptoměna, bitcoin, byla inspirována novým. Zdá se, že stejný algoritmus vítězí pro forky bitcoinů: pro Bitcoin Cash, Gold, Diamond.

Krim them, SHA - 256 také vítězné:

  • Steemit;
  • DigiByte;
  • peercoin;
  • namecoin;
  • teckcoin;
  • ocoin;
  • zetacoin;
  • emercoin.

Algoritmus SHA-256 také vítězí jako podprogram v kryptoměně Litecoin a hlavním algoritmem pro těžbu je Scrypt.

S rostoucí popularitou kryptoměny ji stále více lidí začalo přijímat jako slibný finanční nástroj. Prote, málo lidí se zapojuje, jakou hodnotu představují pro vědecký a technologický pokrok. Abychom se tomuto fenoménu dostali na kloub, je nutné projít nejrůznějšími kryptografickými informacemi k pochopení, stejně jako neznámými a tajnými zkratkami pro kód SHA-256. O tom a timetsya v aktuálním článku.

co je těžba?

Těžba je hlavním skladištěm mechanismu jakéhokoli druhu digitální měny. Princip dії polagaє při seskupování podle těžařů k dokončení operace v jednom bloku, který byl již neosobně změněn pro instalaci červeného hash kódu, který umožňuje speciální pomocníky. Jako kdyby byla dodržena stejná hodnota, blok je můj a přidán do blockchainu mince. Taková počítací činnost nedává žádný druh žíravosti, trestný čin propagace skládání generování potřebného bloku. Na druhou stranu, zvonky a píšťalky e-měny koristuvachi lze vštípit, takže jejich maydanchik nepřevezme kontrolu a centralizaci.

Standardní hashovací funkce přijímá blok jako vstup informace o zpěvu, když jsem cestou ven viděl ten nepředstavitelný význam. Je rozdělen tak, že neexistuje žádná optimální metoda, jak znát potřebný indikátor, je třeba opakovat a opakovat hledání, dokud nenajdete správný hash kód.

Jedním z nejpopulárnějších protokolů je SHA-256. Nejznámější první kryptoměnou na světě je bitcoin. Zlepšení bezpečnosti se navíc rovná tomu, že algoritmus byl spuštěn 2x a již se nazývá podvržený.

V bitcoinech vyžadují kritéria použitelnosti hashe počet „0“ na klas. Důležité je také ukazovat podobnou hodnotu, jako je například zadání čísla auta, nebo stylového, které končí párem 0. Pochopitelně, pro hashovací funkci je to skládací. V danou hodinu může správná hodnota zahrnovat přibližně 17 klasových nul, a proto pouze jedna ku 1,4 násobená 10 ve 20 krocích. Vedení zápasu, znát podobný hash je mnohem přesnější, znát stejný hash uprostřed celého světa neznámé hmoty na planetě.

Agentura vytvořila poštovní verzi algoritmu SHA-256 národní bezpečnost USA jaro 2002. O několik měsíců později Národní metrologická univerzita zveřejnila nový šifrovací protokol ve FIPS PUB 180-2, přijatý na federální úrovni, pro bezpečné zpracování dat. Vzimku 2004 roku vіn popovnivsya jinou verzi algoritmu.

Na další 3 roky vydala NSA patent na SHA 2. generace v rámci Royalty-free licence. To samé způsobilo stagnaci techniky v civilních oblastech.

Získejte respekt! Dokončit cicavia fakt: kožené koristuvách Pavouk celého světa, aniž bych to sám věděl, na hodinu vlastní je internet dražší než tento protokol. Když je webový zdroj chráněn bezpečnostním certifikátem SSL, automaticky se spustí proti algoritmu SHA-256.

Tento protokol je založen na informacích rozdělených na části po 512 bitech (nebo 64 bytech). Vіn rob її kryptografický "zmіshuvannya" a poté vіd vіdє 256bitový hash kód. Před skladem vstoupí algoritmus do jediného jednoduchého kola, které se opakuje 64krát.

Kromě toho může SHA-256 dosáhnout špatných technických parametrů:

  • Indikátor velikosti bloku (bajtů) - 64.
  • Omezení přípustné délky prodloužení (bajtů) - 33.
  • Charakteristika povinného výtahu oznámení (bajty) - 32.
  • Standardní velikost slova (bajt) - 4.
  • Parametr délky vnitřní stanice (bajtů) je 32.
  • Počet iterací v jednom cyklu je menší než 64.
  • Rychlost dosažitelná protokolem (MiB/s) je přibližně 140.

Práce algoritmu SHA-256 je založena na metodě pobízení Merkle-Damgarda, je možné do určité míry index klasu po změně rozdělit na bloky a ti svým způsobem na 16 slov.

Získávání dat pro průchod smyčkou, což je 80 nebo 64 iterací. Kožená fáze je charakteristická spuštěním hashování z úložných bloků. Několik z nich je zpracováno nástroji funkce. Poté jsou přidány výsledky transformace, když je ve výsledku vidět správná indikace hash kódu. Pro vytvoření bloku cherd jsou nastaveny hodnoty fronty. Chcete-li je předělat okremo jedním způsobem, člověk se nevzdává.

Také varto hádat 6bitové operace, založené na takovém funkčním protokolu:

  • "a" - bitová operace "I";
  • "shr" - posune hodnotu o požadovaný počet bitů doprava;
  • "hniloby" - tým je z hlediska fronty podobný, se stejným rozdílem, který způsobuje cyklickou destrukci;
  • "||" nebo zřetězení - operace spojování částí liniové stavby, většinou řad;
  • "xor" - příkaz pro výběr "ABO";
  • "+" - obvyklá operace skládání.

Jak můžete prosím dokončit typickou sadu operací pro jakýkoli šifrovací algoritmus.

Pro určení hodnoty algoritmu je nutné se vrátit ke kryptoanalýze. Tsya disciplína znát metody dešifrování informací bez potřeby speciálního klíče.

První studie SHA-256 o přítomnosti vtípků začaly být rozpoznávány padělky v roce 2003. Tehdy na protokolu nebyly milosti.

Prote se již v polovině roku 2008 skupině expertů z Indie podařilo zjistit čísla pro 22 iterací architektur rodiny SHA. Po několika měsících navrhování metody řešení kolizí pro zkrácenou verzi protokolu a poté pro iteraci 31 hašování samotného SHA-256, který není meziproduktem.

Za hodinu pro analýzu funkce hrdla je nutné otestovat přesnost až 2 různých útoků:

  1. Přítomnost prototypu spočívá v dešifrování cob zprávy na yogo hash kódu. Opirnіst tento typ vplyu zaručuje nejlepší obranu výsledků transformace.
  2. Rebuvannya kolіzіy - podobná výstupní data s různými vstupními parametry. Pokud jde o odolnost vůči takové rozmanitosti útoků, je přímo ladem. elektronický podpisіz vekoristannyam skutečný protokol.

Tvůrci další generace algoritmu SHA lhali, že nový šifrovací mechanismus je funkční na základě jiných principů. Na podzim 2012 se tedy na světě objevil protokol třetí série Keccak.

Prakticky zastosuvannya a certifikace technologie

Zákony Spojených států amerických umožňují použití SHA-256 a dalších podobných metod hašování ve stejných státních programech na ochranu informací. Na druhou stranu je povoleno blokovat algoritmus komerčními společnostmi.

Důležité! Proto není nic překvapivého na tom, že se tento protokol používá pro první digitální měnu. Emise nových bitcoinů je stanovena způsobem pořadí významnosti pro současnou architekturu SHA-256.

Jak se to hodí do specializovaných přístaveb pro kryptoměnu vidobotku? Kožené háčkování pro tento algoritmus může dosáhnout jednoduchého vzhledu - primitivní bitové operace a 32bitové skládání (ať je to někdo, kdo zná základy obvodů, můžete to snadno vidět, jako byste se dívali na chodbu). A za to efektivní práce Asic-miners potřebují k algoritmu pouze tucet bloků a kroků.

Na rozdíl od bitcoinů, litecoinů, dogcoinů a dalších podobných „coinů“ se používá šifrovací protokol Scrypt, který je vybaven funkcí skládání. Algoritmus Tsey v průběhu aktivity nabere 1024 různých hodnot hašovacích funkcí a na výstupu poslední z nich vezmeme výsledek. Zavdyaki tsomu pro implementaci protokolu bude vyžadovat šíleně velký tlak.

Višňovok

Dá se říci, že protokol SHA-256 se zdá být velmi snadný a dnes neexistují žádné speciální přístroje (tzv. minery), které by jógu úspěšně obešly. Od té doby je nutné těžit na procesoru nebo vybírat farmy z grafických karet, ASIC-přílohy umožňují jejich pánům vydělat více peněz. Nicméně, který z nich má Zvorotný Bík. Výběr těžařů za účelem centralizace kryptoměny je také nutné vyvinout nové hashovací protokoly. Scrypt se stal takovým algoritmem a je mnohem pokročilejším mechanismem, který vyžaduje značnou produktivitu a teoreticky umožňuje speciální aplikace speciálních výhod.

Z pozice obyčejného koristuvacha není mezi protokoly SHA-256 a Scrypt žádný rozdíl. Digitální měnu můžete těžit pomocí svého počítače nebo farmy libovolných daných protokolů.

Algoritmus SHA-256 si dnes půjčuje více než 40 % celkového trhu, ochrany, držení těla a další. Nemohu zastavit smrad dusícího oslavovaného nástupce. Takže z několika nových je třeba hádat o obzvláště „miner-proof“ Dagger protokolu, který je vybrán k vítězství v decentralizovaném Maidan Efirium. Případně já sám převezmu taktovku vůdce v hashárně a v prostoru SHA-256.

, "Secure Hash Standard (SHS)", USA. Ministerstvo obchodu, březen 2012

Podmínky:
FIPS Federal Information Processing Standard (Federal Information Processing Standard).
SHA Secure Hash Algorithm (silný hash algoritmus).
Slovo - unsigned se změní na 32 bitů (4 bajty) nebo 64 bitů (8 bajtů), aby padalo stejným způsobem jako u algoritmu SHA.

SECURE HASH STANDARD (skupina kryptografických funkcí SHA-1 a SHA-2)

Rodina kryptografické funkce SHA dělení dvěma dílčími násobky: algoritmus ne mezi SHA-1(vydáno v roce 1995 rotsi - FIPS PUB 180-1) a řada algoritmů pod názvem SHA-2(vydáno 2002 - FIPS PUB 180-2, aktualizováno 2008 - FIPS PUB 180-3): SHA-224, SHA-256, SHA-384, SHA-512; Algoritmy byly přidány do FIPS PUB 180-4 v roce 2012 SHA-512/224і SHA-512/256. Podíváme se na standard FIPS PUB 180-4, který pokrývá celou rodinu hashovacích funkcí SHA-1 a SHA-2.

Tento standard definuje následující hashovací algoritmy: SHA-1, SHA-224, SHA-256, SHA-384, SHA-512, SHA-512/224і SHA-512/256, která by měla být vypočtena na základě vzhledu digitálních dat (recenze). Jak zadat hash-algoritmus pro podání daně, ať už je to datum, ale méně, nižší 264 bitů (např. SHA-1, SHA-224і SHA-256) nebo méně, nižší 2128 bitů (pro SHA-384, SHA-512, SHA-512/224і SHA-512/256), pak bude uveden výsledek, pořadí upozornění na digest nebo hash hodnotu. Rozsah hašovací hodnoty informace leží v rozsahu od 160 do 512 bitů (nebo od 20 do 64 bajtů), aby ležel ve zvoleném algoritmu. Algoritmy SHA znějí vítězně spolu s dalšími kryptografickými algoritmy, například s algoritmy digitální podpis buď pro hodinu hašování s klíčem pro potvrzení autentizace (HMAC), nebo pro konjugaci záporných čísel (bit).

Hashovací algoritmy, které jsou součástí tohoto standardu, se nazývají bezpečné pro ty, kteří po daném algoritmu nelze dále vypočítat: 1) revidovat výstrahy pro konkrétní přehled výstrah, jinak 2) znát dvě různá oznámení, která mohou být stejným výtahem oznámení (znát řazení). Be-yakі zm_ni v povіdomlennі, s dzhe vysokoj ymovirnіstyu, produkují až různé hodnoty hash. Síla autority je založena na vytváření převodu digitálních podpisů, ověřování potvrzení a vytváření obrácených čísel.

Algoritmus kůže se skládá ze dvou fází: Přední obložení ten výpočet hashe. Přední obložení obsahuje dodatečné informace, přerušení další upomínky na M- bitové bloky, і nastavení počátečních hodnot, které jsou vítězné při počítání hashe. Výpočet hashe se počítá iterativně M-bitový blok dalších informací a hackerských funkcí, konstant a operací se slovy k získání hodnoty hash. Výsledkem robotického postupu je výpočet hash є digest digest.

Algoritmy pro rozlišení mezi bloky a řádky hašovaných dat a hash hodnotou - div. stůl 1.

Algoritmus Rozmir podomlennya (v bitech) Blok Rozmír (v bitech) Rozmír slova (v bitech) Rozmarýn k trávení informací (v bitech)
SHA-1 < 2 64 512 32 160
SHA-224 < 2 64 512 32 224
SHA-256 < 2 64 512 32 256
SHA-384 < 2 128 1024 64 384
SHA-512 < 2 128 1024 64 512
SHA-512/224 < 2 128 1024 64 224
SHA-512/256 < 2 128 1024 64 256
Funkce

SHA-1 sekvence nelineárních funkcí f 0, f 1,..., f 79. Funkce kůže f t, de 0 ≤ t< 79 , fungující na třech 32bitových změnách: X, y, і z, což má za následek otočení jednoho 32bitového slova. V algoritmu SHA-1 vítězí útočná sada nelineárních funkcí f t (x, y, z):
00 ≤ t ≤ 19Ch(x, y, z)
20 ≤ t ≤ 39Parita (x, y, z)= x XOR y XOR z
40 ≤ t ≤ 59Maj(x, y, z)
60 ≤ t ≤ 79Parita (x, y, z)= x XOR y XOR z

Booleovská algebra.
Obnovit respekt, co např. funkce Ch můžete to vyjádřit jinak:
z XOR (x AND (y XOR z))
Výsledek se nemění. V jiných implementacích algoritmu lze takové možnosti použít.

SHA-224 a SHA-256 používající nelineární funkce:

Ch(x, y, z)= (x A y) XOR (NE x A z)
Maj(x, y, z)= (x AND y) XOR (x a z) XOR (y a z)

Sigma0(x)= ROTR(x, 2) XOR ROTR(x, 13) XOR ROTR(x, 22)
Sigma1(x)= ROTR(x, 6) XOR ROTR(x, 11) XOR ROTR(x, 25)

Delta0(x)= ROTR(x; 7) XOR ROTR(x, 18) XOR SHR(x, 3)
Delta1(x)= ROTR(x; 17) XOR ROTR(x; 19) XOR SHR(x; 10)


n bit:
ROTR(x, n) = (x»n) | (x "(32-n))
SHR - zsuv pravá ruka n bit:
SHR(x, n) = x » n

SHA-384, SHA-512, SHA-512/224, SHA-512/384 počet nelineárních funkcí:

Ch(x, y, z)= (x A y) XOR (NE x A z)
Maj(x, y, z)= (x AND y) XOR (x a z) XOR (y a z)

Sigma0(x)= ROTR(x, 28) XOR ROTR(x, 34) XOR ROTR(x, 39)
Sigma1(x)= ROTR(x; 14) XOR ROTR(x, 18) XOR ROTR(x, 41)

Delta0(x)= ROTR(x; 1) XOR ROTR(x, 8) XOR SHR(x, 7)
Delta1(x)= ROTR(x; 19) XOR ROTR(x, 61) XOR SHR(x; 6)

Operace se slovy (64-bit).
ROTR - cyklický zsuv pravá ruka n bit:
ROTR(x, n) = (x»n) | (x "(64-n))
SHR - zsuv pravá ruka n bit:
SHR(x, n) = x » n

Constanti

Constanti K t
00 ≤ t ≤ 19 0x5a827999
20 ≤ t ≤ 39 0x6ed9eba1
40 ≤ t ≤ 59 0x8f1bbcdc
60 ≤ t ≤ 79 0xca62c1d6

(Jakmile vás zasáhlo jídlo, hvězdy přišly z čísel, pak to má být dzherelo:
0x5A827999 = $\sqrt(2) / 4$, 0x6ED9EBA1 = $\sqrt(3) / 4$, 0x8F1BBCDC = $\sqrt(5) / 4$, 0xCA62C1D6 = $\sqrt(10) vynásobeno všemi / 0x8F1BBCDC 232).

64 konstant (32bitová slova): K 0, K 1 ... K 63. (Pro doplňky: konstanty qi s prvními 32 bity střílených částí odmocniny prvních 64 prvočísel).

K = [
0x428a2f98, 0x71374491, 0xb5c0fbcf, 0xe9b5dba5,
0x3956c25b, 0x59f111f1, 0x923f82a4, 0xab1c5ed5,
0xd807aa98, 0x12835b01, 0x243185be, 0x550c7dc3,
0x72be5d74, 0x80deb1fe, 0x9bdc06a7, 0xc19bf174,
0xe49b69c1, 0xefbe4786, 0x0fc19dc6, 0x240ca1cc,
0x2de92c6f, 0x4a7484aa, 0x5cb0a9dc, 0x76f988da,
0x983e5152, 0xa831c66d, 0xb00327c8, 0xbf597fc7,
0xc6e00bf3, 0xd5a79147, 0x06ca6351, 0x14292967,
0x27b70a85, 0x2e1b2138, 0x4d2c6dfc, 0x53380d13,
0x650a7354, 0x766a0abb, 0x81c2c92e, 0x92722c85,
0xa2bfe8a1, 0xa81a664b, 0xc24b8b70, 0xc76c51a3,
0xd192e819, 0xd6990624, 0xf40e3585, 0x106aa070,
0x19a4c116, 0x1e376c08, 0x2748774c, 0x34b0bcb5,
0x391c0cb3, 0x4ed8aa4a, 0x5b9cca4f, 0x682e6ff3,
0x748f82ee, 0x78a5636f, 0x84c87814, 0x8cc70208,
0x90befffa, 0xa4506ceb, 0xbef9a3f7, 0xc67178f2
]

80 konstant (64bitová slova): K 0, K 1 ... K 79. (Pro doplňky: konstanty qi s prvními 64 bity střílených zlomků odmocnin z prvních 80 prvočísel).

K = [
0x428a2f98d728ae22, 0x7137449123ef65cd, 0xb5c0fbcfec4d3b2f, 0xe9b5dba58189dbbc,
0x3956c25bf348b538, 0x59f111f1b605d019, 0x923f82a4af194f9b, 0xab1c5ed5da6d8118,
0xd807aa98a3030242, 0x12835b0145706fbe, 0x243185be4ee4b28c, 0x550c7dc3d5ffb4e2,
0x72be5d74f27b896f, 0x80deb1fe3b1696b1, 0x9bdc06a725c71235, 0xc19bf174cf692694,
0xe49b69c19ef14ad2, 0xefbe4786384f25e3, 0x0fc19dc68b8cd5b5, 0x240ca1cc77ac9c65,
0x2de92c6f592b0275, 0x4a7484aa6ea6e483, 0x5cb0a9dcbd41fbd4, 0x76f988da831153b5,
0x983e5152ee66dfab, 0xa831c66d2db43210, 0xb00327c898fb213f, 0xbf597fc7beef0ee4,
0xc6e00bf33da88fc2, 0xd5a79147930aa725, 0x06ca6351e003826f, 0x142929670a0e6e70,
0x27b70a8546d22ffc, 0x2e1b21385c26c926, 0x4d2c6dfc5ac42aed, 0x53380d139d95b3df,
0x650a73548baf63de, 0x766a0abb3c77b2a8, 0x81c2c92e47edaee6, 0x92722c851482353b,
0xa2bfe8a14cf10364, 0xa81a664bbc423001, 0xc24b8b70d0f89791, 0xc76c51a30654be30,
0xd192e819d6ef5218, 0xd69906245565a910, 0xf40e35855771202a, 0x106aa07032bbd1b8,
0x19a4c116b8d2d0c8, 0x1e376c085141ab53, 0x2748774cdf8eeb99, 0x34b0bcb5e19b48a8,
0x391c0cb3c5c95a63, 0x4ed8aa4ae3418acb, 0x5b9cca4f7763e373, 0x682e6ff3d6b2b8a3,
0x748f82ee5defb2fc, 0x78a5636f43172f60, 0x84c87814a1f0ab72, 0x8cc702081a6439ec,
0x90befffa23631e28, 0xa4506cebde82bde9, 0xbef9a3f7b2c67915, 0xc67178f2e372532b,
0xca273eceea26619c, 0xd186b8c721c0c207, 0xeada7dd6cde0eb1e, 0xf57d4f7fee6ed178,
0x06f067aa72176fba, 0x0a637dc5a2c898a6, 0x113f9804bef90dae, 0x1b710b35131c471b,
0x28db77f523047d84, 0x32caab7b40c72493, 0x3c9ebe0a15c9bebc, 0x431d67c49c100d4c,
0x4cc5d4becb3e42b6, 0x597f299cfc657e2a, 0x5fcb6fab3ad6faec, 0x6c44198c4a475817
]

Přední obložení
1. Další informace

Meta zrobiti podomlennya dělitelná 512 nebo 1024 bity, ukládat stejným způsobem jako algoritmus SHA. Dodatek lze zkontrolovat před postupem počítání hashů nebo během postupu počítání hashů, než je dokončen blok (iv), který bude nahrazen.

M dorivnyuє l "jeden" k- takže rozmіr otrimannogo podomlennya buv 64. řádu menší než násobek 512 ( l+1+k = 448 mod 512). Dali, 64bitové upozornění je přidáno ke konečnému výsledku l vnější pomoc M "abc" "jeden", pak 448 - (24+1) = 423 bitů «0» a například 64bitová reprezentace světa 24 = 00 ... 011000. Výsledek bude mít 512bitovou reprezentaci ve tvaru:

Je přijatelné, aby se pamatovalo na dovzhina M dorivnyuє l bit. Připomenutí až do konce "jeden" a potom nula - u čísla k- takže za účelem rozšíření počtu odstraněných písmen o 128 řádků méně než násobek 896 ( l+1+k = 896 mod 1024). Dali, ke konečnému výsledku je přidáno 128bitové upozornění l vnější pomoc M. Například (ASCII text) máme připomenutí "abc" dozhinoy 8 * 3 \u003d 24 bitů. Dodaemo to podomlennya "jeden", pak 896 - (24+1) = 871 bitů «0» a například 128bitová reprezentace světa 24 = 00 ... 011000. Výsledek bude mít 1024bitovou reprezentaci ve tvaru:

2. Zapnutí další upomínky M- bitové bloky

N M-bitové bloky.

Další informace se dělí na č. 512- bitové bloky: M(1), M(2) ... M(N). Protože 512 bitů lze převést jako 16 (šestnáct) 32bitových slov, poté prvních 32 bitů i M 0 (i), přichází 32 bitů M 1 (i), a tak jdeme na M 15(i).

Další informace se dělí na N 1024- bitové bloky: M(1), M(2) ... M(N). Protože 512 bitů lze převést jako 16 (šestnáct) 64bitových slov, poté prvních 64 bitů i blok M 0 (i), přichází 64 bitů M 1 (i), a tak jdeme na M 15(i).

3. Nastavení počátečních hodnot

Před postupem pro výpočet hashe algoritmus nastaví počáteční hodnoty H. Rozmír ta kіlkіst slіv H uložit podle zvoleného algoritmu.

Chotiri 32bitová slova.
H0 = 0x67452301
H1 = 0xefcdab89
H2=0x98badcfe
H3 = 0x10325476
H4 = 0xc3d2e1f0

Jedná se o 32bitový slіv.

0xc1059ed8, 0x367cd507, 0x3070dd17, 0xf70e5939,
0xffc00b31, 0x68581511, 0x64f98fa7, 0xbefa4fa4)

Jedná se o 32bitový slіv.
H0, H1, H2, H3, H4, H5, H6, H7 = (
0x6a09e667, 0xbb67ae85, 0x3c6ef372, 0xa54ff53a,
0x510e527f, 0x9b05688c, 0x1f83d9ab, 0x5be0cd19)

(Pro doplňky: hodnoty qi s prvními 32 bity zlomkových částí druhé odmocniny prvočísel - pořadová čísla: prvních 8).

Jedná se o 64bitový slіv.
H0, H1, H2, H3, H4, H5, H6, H7 = (
0xcbbb9d5dc1059ed8, 0x629a292a367cd507, 0x9159015a3070dd17,
0x152fecd8f70e5939, 0x67332667ffc00b31, 0x8eb44a8768581511,
0xdb0c2e0d64f98fa7, 0x47b5481dbefa4fa4)

(Pro doplňky: hodnoty qi s prvními 64 bity zlomkových částí druhé odmocniny prvočísel - pořadová čísla: od 9. do 16.).

Jedná se o 64bitový slіv.
H0, H1, H2, H3, H4, H5, H6, H7 = (


(Pro doplňky: hodnoty qi s prvními 64 bity zlomkových částí druhé odmocniny prvočísel - pořadová čísla: prvních 8).



H0, H1, H2, H3, H4, H5, H6, H7 = (
0x6a09e667f3bcc908, 0xbb67ae8584caa73b, 0x3c6ef372fe94f82b,
0xa54ff53a5f1d36f1, 0x510e527fade682d1, 0x9b05688c2b3e6c1f,
0x1f83d9abfb41bd6b, 0x5be0cd19137e2179)











Jedná se o 64bitový slіv.
H0, H1, H2, H3, H4, H5, H6, H7 = (
0x8C3D37C819544DA2, 0x73E1996689DCD4D6, 0x1DFAB7AE32FF9C82,
0x679DD514582F9FCF, 0x0F6D2B697BD44DA8, 0x77E36F7304C48942,
0x3F9D85A86A1D36C8, 0x1112E6AD91D692A1)

„SHA-512/t“ je běžný název pro t-bitovou hashovací funkci založenou na SHA-512, jejíž výsledek je zkrácen na t-bit. Verze vzhledu t-bitové hashovací funkce bude vyžadovat jiné inicializační hodnoty. Pro koho je zadáno speciální postup přiřazení hodnoty SHA-512/t cob ke konkrétní variantě t.

Postup odvození hodnoty klasu SHA-512/t.
1. Převzetí cob hodnoty H do algoritmu SHA-512.
H0, H1, H2, H3, H4, H5, H6, H7 = (
0x6a09e667f3bcc908, 0xbb67ae8584caa73b, 0x3c6ef372fe94f82b,
0xa54ff53a5f1d36f1, 0x510e527fade682d1, 0x9b05688c2b3e6c1f,
0x1f83d9abfb41bd6b, 0x5be0cd19137e2179)

2. Robimo následující výpočet:
H0' = H0 XOR 0xA5A5A5A5A5A5A5A5
H1' = H1 XOR 0xA5A5A5A5A5A5A5A5
H2' = H2 XOR 0xA5A5A5A5A5A5A5A5
H3' = H3 XOR 0xA5A5A5A5A5A5A5A5
H4' = H4 XOR 0xA5A5A5A5A5A5A5A5
H5' = H5 XOR 0xA5A5A5A5A5A5A5A5
H6' = H6 XOR 0xA5A5A5A5A5A5A5A5
H7' = H7 XOR 0xA5A5A5A5A5A5A5A5

3. Volitelný typ hash řetězce SHA-512("SHA-512/t") (například t může být "224" nebo "256") s hodnotami cob ​​H'. Hodnota hash i bude hodnota cob pro algoritmus SHA-512/t:
H pro SHA-512/224 = SHA512(H', "SHA-512/224")
H pro SHA-512/256 = SHA512(H', "SHA-512/256")

Jedná se o 64bitový slіv.
H0, H1, H2, H3, H4, H5, H6, H7 = (
0x22312194FC2BF72C, 0x9F555FA3C84C64C2, 0x2393B86B6F53B151,
0x963877195940EABD, 0x96283EE2A88EFFE3, 0xBE5E1E2553863992,
0x2B0199FC2C85B8AA, 0x0EB72DDC81C52CA2)

Výpočet hash

V algoritmu "+" vіdbuvaetsya pro modul 2 32 .

Pro i = 1 až N:
{
1. i
M 0 (i) na M 15(i))
80 sliv rozmírom 32 řad (s W0 na W 79):
Wt = Mt pro t = 0..15
Wt = ROTL(W t-3 XOR W t-8 XOR W t-14 XOR W t-16, 1) pro t = 16..79
(Cicavo, co varianta cob specifikace SHA (algoritmus SHA-0) boo
cyklické volání doleva ROTL(x; 1))

2. Nejprve změňte a, b, c, d, e.
a = H0(i-1)
b=H1(i-1)
c = H2(i-1)
d=H3(i-1)
e = H4(i-1)

3. Hlavová smyčka funkce embosování
Pro t = 0 až 79
TEMP= ROTL(a, 5) + ft (b, c, d) + e + Wt + Kt
e=d
d=c
c= ROTL(b, 30)
b = a
a = TEPLOTA

4.
H0(i) = (H0(i-1) + a)
H1(i) = (H1(i-1) + b)
H2(i) = (H2(i-1) + c)
H3(i) = (H3(i-1) + d)
H4(i) = (H4(i-1) + e)
}

Výsledná hodnota hash je 160bitový výtah:
H0(N) || H1(N) || H2(N) || H3(N) || H4(N)(5 řádků * 32 bitů = 160 bitů)

Operace se slovy (32-bit).
ROTL - cyklické volání doleva n bit:
ROTL(x, n) = (x "n) | (x" (32-n))

V algoritmu "+" vіdbuvaetsya pro modul 2 32 .

Pro i = 1 až N:
{
1. i-tý blok podpory pro pomoc indukovaného algoritmu
transformovat z 16 slov do světa 32 kategorií (od M 0 (i) na M 15(i))
64 slov má 32 úrovní (z W0 na W 63):
Wt = Mt pro t = 0..15
W t \u003d W t-16 + Delta0(Wt-15) + W i-7 + Delta1(Wt-2) pro t = 16..63

2.
a = H0(i-1)
b=H1(i-1)
c = H2(i-1)
d=H3(i-1)
e = H4(i-1)
f=H5(i-1)
g=H6(i-1)
h=H7(i-1)

3. Hlavová smyčka funkce embosování
Pro t = 0 až 63
TEMP1=h+ Sigma1(e) + Ch(e, f, g) + Wt + Kt
TEMP2= Sigma0(a) + mjr(a, b, c)
h = g
g = f
f=e
e = d + TEMP1
d=c
c = b
b = a
a = TEMP1 + TEMP2

4. Důležitá střední hodnota hash
H0(i) = (H0(i-1) + a)
H1(i) = (H1(i-1) + b)
H2(i) = (H2(i-1) + c)
H3(i) = (H3(i-1) + d)
H4(i) = (H4(i-1) + e)
H5(i) = (H5(i-1) + f)
H6(i) = (H6(i-1) + g)
H7(i) = (H7(i-1) + h)
}

Výsledná hodnota hash je 256bitový výtah:
(8 řádků * 32 bitů = 256 bitů)
Respekt: ​​pořadí bajtů slova skinu "big-endian"

Algoritmus bude opět pracovat s algoritmem SHA-256. Určitě v hodnotách, které inicializují, H (div. vyšší) a v tom, jak se bere výsledný hash. Protože Vezmeme 256bitový výtah zprávy, vezmeme pouze prvních 224 bitů, abychom získali konečnou hodnotu hash:

H0(N) || H1(N) || H2(N) || H3(N) || H4(N) || H5(N) || H6(N)(7 řádků * 32 bitů = 224 bitů)
Respekt: ​​pořadí bajtů slova skinu "big-endian"

Algoritmus je podobný SHA-256, pouze všechny změny těchto slov jsou 64bitové.
V algoritmu "+" přiřazeno pro modul 2 64 .

Pro i = 1 až N:
{
1. i-tý blok podpory pro pomoc indukovaného algoritmu
transformovat z 16 slov do světa 64 kategorií (od M 0 (i) na M 15(i))
80 sliv rozmírom 64 řad (s W0 na W 79):
Wt = Mt pro t = 0..15
W t \u003d W t-16 + Delta0(Wt-15) + W i-7 + Delta1(Wt-2) pro t = 16..79

2. Nejprve změňte a, b, c, d, e, f, g, h.
a = H0(i-1)
b=H1(i-1)
c = H2(i-1)
d=H3(i-1)
e = H4(i-1)
f=H5(i-1)
g=H6(i-1)
h=H7(i-1)

3. Hlavová smyčka funkce embosování
Pro t = 0 až 79
TEMP1=h+ Sigma1(e) + Ch(e, f, g) + Wt + Kt
TEMP2= Sigma0(a) + mjr(a, b, c)
h = g
g = f
f=e
e = d + TEMP1
d=c
c = b
b = a
a = TEMP1 + TEMP2

4. Důležitá střední hodnota hash
H0(i) = (H0(i-1) + a)
H1(i) = (H1(i-1) + b)
H2(i) = (H2(i-1) + c)
H3(i) = (H3(i-1) + d)
H4(i) = (H4(i-1) + e)
H5(i) = (H5(i-1) + f)
H6(i) = (H6(i-1) + g)
H7(i) = (H7(i-1) + h)
}

Výsledná hodnota hash je 512bitový výtah zprávy:
H0(N) || H1(N) || H2(N) || H3(N) || H4(N) || H5(N) || H6(N) || H7(N)(8 řádků * 64 bitů = 512 bitů)
Respekt: ​​pořadí bajtů slova skinu "big-endian"

Algoritmus bude opět pracovat s algoritmem SHA-512. Určitě v hodnotách, které inicializují, H (div. vyšší) a v tom, jak se bere výsledný hash. Protože vezmeme 512bitový výtah zprávy, vezmeme pouze prvních 384 bitů, abychom získali konečnou hodnotu hash:

H0(N) || H1(N) || H2(N) || H3(N) || H4(N) || H5(N)(6 řádků * 64 bitů = 384 bitů)
Respekt: ​​pořadí bajtů slova skinu "big-endian"

Algoritmus bude opět pracovat s algoritmem SHA-512. Určitě v hodnotách, které inicializují, H (div. vyšší) a v tom, jak se bere výsledný hash. Protože potřebujeme 512bitový výtah, vezmeme pouze prvních 224 bitů, abychom získali konečnou hodnotu hash:

H0(N) || H1(N) || H2(N) || prvních 32 bitů H3 (N)(3 slova * 64 bitů + 32 bitů = 224 bitů)
Respekt: ​​pořadí bajtů slova skinu "big-endian"

Algoritmus bude opět pracovat s algoritmem SHA-512. Určitě v hodnotách, které inicializují, H (div. vyšší) a v tom, jak se bere výsledný hash. Protože vezmeme 512bitový výtah zprávy, vezmeme pouze prvních 256 bitů, abychom získali konečnou hodnotu hash:

H0(N) || H1(N) || H2(N) || H3(N)(4 slova * 64 bitů = 256 bitů)
Respekt: ​​pořadí bajtů slova skinu "big-endian"

Kryptografická primitiva
Algoritmy s otevřeným klíčem RSA DSA
Streamové šifry RC4
Hashovací funkce

SHA-256 je jednosměrná funkce pro převod digitálních bitcoinů na pevnou délku (256 bitů, 32 bajtů) ze vstupních dat až do 2,31 exabajtů (2⁶⁴ bitů) Secure Hash Algorithm Verze 2) vydané NSA v roce 2002 roci.

Rodinné hashovací funkce SHA-2 založené na Merkle-Damgardově struktuře.

Týdenní upozornění po přidání je rozděleno do bloků, kožený blok na 16 řádků. Algoritmus prochází blok aktualizace vzhledu cyklem 64 iterací. Při iteraci skinu jsou transformována 2 slova, funkce transformace je nastavena na jiná slova. Výsledky zpracování bloku skinu se sečtou, součet jsou hodnoty hashovací funkce. Osskіlki ініціалізація Stanu se výsledkem kruhového objezdu vnější jednotky, posel se vysmívá paralelním blokům. Grafické znázornění jedné iterace zpracování datového bloku:

V současné době existují metody pro konstrukci kolií až do 31 iterací. Prostřednictvím algoritmické podobnosti SHA-2 h SHA-1 a přítomnost ve zbývajících potenciálních nesrovnalostech, bylo rozhodnuto, že SHA-3 by měl být založen na jiném algoritmu. 2. července 2012 NIST ověřil algoritmus Keccak SHA-3.

Algoritmus pro pseudokód rozrahunka vіdbitka vvglyadі:

Vysvětlení:
Všechny změny jsou bez znaménka, mohou se rozšířit o 32 bitů a při výpočtu se sčítají po modulu 232
zpráva- vyhidne dviykove podomlennya
m- Změněná oznámení Inicializace změn
(prvních 32 bitů částice brokovnice druhá odmocnina z prvních osmi prvočísel [typ 2 až 19]):
h0:=0x6A09E667
h1:=0xBB67AE85
h2:=0x3C6EF372
h3:= 0xA54FF53A
h4:=0x510E527F
h5:=0x9B05688C
h6:=0x1F83D9AB
h7:=0x5BE0CD19 Konstantní stůl
(prvních 32 bitů částice brokovnice odmocnina z prvních 64 prvočísel [typ 2 až 311]):
k:=
0x428A2F98, 0x71374491, 0xB5C0FBCF, 0xE9B5DBA5, 0x3956C25B, 0x59F111F1, 0x923F82A4, 0xAB1C5ED5,
0xD807AA98, 0x12835B01, 0x243185BE, 0x550C7DC3, 0x72BE5D74, 0x80DEB1FE, 0x9BDC06A7, 0xC19BF174,
0xE49B69C1, 0xEFBE4786, 0x0FC19DC6, 0x240CA1CC, 0x2DE92C6F, 0x4A7484AA, 0x5CB0A9DC, 0x76F988DA,
0x983E5152, 0xA831C66D, 0xB00327C8, 0xBF597FC7, 0xC6E00BF3, 0xD5A79147, 0x06CA6351, 0x14292967,
0x27B70A85, 0x2E1B2138, 0x4D2C6DFC, 0x53380D13, 0x650A7354, 0x766A0ABB, 0x81C2C92E, 0x92722C85,
0xA2BFE8A1, 0xA81A664B, 0xC24B8B70, 0xC76C51A3, 0xD192E819, 0xD6990624, 0xF40E3585, 0x106AA070,
0x19A4C116, 0x1E376C08, 0x2748774C, 0x34B0BCB5, 0x391C0CB3, 0x4ED8AA4A, 0x5B9CCA4F, 0x682E6FF3,
0x748F82EE, 0x78A5636F, 0x84C87814, 0x8CC70208, 0x90BEFFFA, 0xA4506CEB, 0xBEF9A3F7, 0xC67178F2 Přední obložení:
m:= zpráva ǁ [ jediný takt]
m:= m ǁ , de k- pro mě nejméně neznámé číslo, takové že
(L + 1 + K) mod 512 = 448
m:= mǁ Dovzhina(zpráva) - délka výstupní zprávy pro bity pro 64bitové číslo v pořadí bajtů od vysoké po nízkou Následující oznámení jsou zpracovávána následujícími částmi 512 bitů:
rozdělit oznámení na shmatki 512 bitů
pro skin shmatti shmatok 16 řádků pokrývky hlavy 32 bitů (v pořadí bajtů od seniora po mladého uprostřed slova): w Vygenerujte dalších 48 slov:
pro i Pohled 16 před 63
s0:= (š rotr 7) xor(w rotr 18) xor(w shr 3)
s1:= (š rotr 17) xor(w rotr 19) xor(w shr 10)
w[i] := w + s0 + w + s1
Inicializace dalších změn:
a:=h0
b:= h1
c:=h2
d:= h3
e:= h4
f:= h5
g:= h6
h:= h7 Hlavní smyčka:
pro i Pohled 0 před 63
Σ0:= (a rotr 2) xor(A rotr 13) xor(A rotr 22)
Ma:= (a a b) xor(A a C) xor(b a C)
t2:= Σ0 + Ma
Σ1:= (např rotr 6) xor(E rotr 11) xor(E rotr 25)
Ch:= (např a F) xor ((ne E) a G)
t1: = h + Σ1 + Ch + k[i] + w[i] h: = g
g:= f
f:=e
e:= d + t1
d:=c
c:=b
b:=a
a:= t1 + t2 Přidejte poslední hodnotu k dříve vypočítanému výsledku:
h0:= h0 + a
h1:= h1 + b
h2:= h2 + c
h3:= h3 + d
h4:= h4 + e
h5:= h5 + f
h6:= h6 + g
h7:= h7 + h Odeberte součet hodnot hash:
digest = hash = h0 ǁ h1 ǁ h2 ǁ h3 ǁ h4 ǁ h5 ǁ h6 ǁ h7

Algoritmus vikoristovuetsya:

  • bitcoin- emise kryptoměny prostřednictvím vyhledávání zvuků se stejnými hodnotovými rámečky
  • DNSSEC- Strávit DNSKEY
  • DSA- výhra za vytvoření elektronického digitálního podpisu
  • IPSec- v protokolech ESPі IKE
  • OpenLDAP- haše hesel
  • PGP- mrknutí pro vytvoření elektronického digitálního podpisu
  • S/MIME- přezkoumat výtah
  • SHACAL-2- blokový šifrovací algoritmus
  • X.509- výhra za vytvoření certifikátu elektronického digitálního podpisu
Poruchy