Konsensuso algoritmas yra procesas, naudojamas siekiant susitarti tarp paskirstytų sistemų arba tinklų. Jis naudojamas operacijoms patvirtinti ir paskirstytų sistemų gedimams užtikrinti.
Konsensuso algoritmai yra paskirstytojo skaičiavimo algoritmo tipas, naudojamas siekiant susitarti dėl vienos duomenų vertės tarp paskirstytų procesų ar sistemų. Jie naudojami siekiant užtikrinti, kad visi paskirstytos sistemos dalyviai susitartų dėl tos pačios duomenų vertės ir kad visi dalyviai sutiktų su bet kokiais duomenų vertės pakeitimais. Sutarimo algoritmai naudojami paskirstytose sistemose, pvz., blokų grandinės tinkluose, paskirstytose duomenų bazėse ir paskirstytose failų sistemose.
Daugiausia Bendras konsensuso algoritmas yra darbo įrodymo (PoW) algoritmas, naudojamas Bitcoin blokų grandinėje. Pagal PoW algoritmą kalnakasiai varžosi, kad išspręstų kriptografinį galvosūkį, kad į blokų grandinę įtrauktų naują bloką. Kalnakasys, kuris pirmasis išsprendžia galvosūkį, yra apdovanojamas blokiniu atlygiu. Šis atlygis skatina kalnakasius toliau dirbti su blokų grandine ir užtikrina, kad blokų grandinė išliktų saugi.
Kiti konsensuso algoritmai apima stake-of-stake (PoS), deleguotas stake-of-stake (DPoS) ir Bizantijos klaida Tolerancija (BFT). PoS yra panašus į PoW, bet vietoj to, kad kalnakasiai varžytųsi dėl kriptografinio galvosūkio, jie varžosi dėl tam tikro kiekio monetų. DPoS yra PoS variantas, kai išrenkama delegatų grupė, kuri patvirtina operacijas ir įtraukia blokus į blokų grandinę. BFT yra sutarimo algoritmas, naudojamas paskirstytose sistemose, siekiant užtikrinti, kad visi dalyviai sutiktų dėl tos pačios duomenų vertės, net jei kai kurie dalyviai yra klaidingi arba kenkėjiški.
Sutarimo algoritmai yra svarbi paskirstytų sistemų dalis, nes jie užtikrina, kad visi dalyviai susitartų dėl tos pačios duomenų vertės ir kad bet kokie duomenų vertės pakeitimai būtų susitarė visi dalyviai. Jie naudojami paskirstytų sistemų saugumui ir vientisumui užtikrinti ir yra būtini blokų grandinės tinklų veikimui.