diff --git a/public/content/translations/hu/bridges/index.md b/public/content/translations/hu/bridges/index.md index bd61edc97c0..2c6807f594e 100644 --- a/public/content/translations/hu/bridges/index.md +++ b/public/content/translations/hu/bridges/index.md @@ -6,7 +6,7 @@ lang: hu # Blokkláncösszekötők {#prerequisites} -_A Web3 egy olyan ökoszisztémává fejlődött, ahol L1 blokkláncok és L2 skálázási megoldások találhatók, mind egyedi képességekkel és kompromisszumokkal. Ahogy növekszik a blokkláncprotokollok száma, úgy nő [a kereslet is, hogy az eszközöket láncok között lehessen mozgatni](). Az igény kielégítéséhez összekötőkre vagy hidakra van szükségünk._ +_A Web3 egy olyan ökoszisztémává fejlődött, ahol L1 blokkláncok és L2 skálázási megoldások találhatók, mind egyedi képességekkel és kompromisszumokkal. Ahogy növekszik a blokkláncprotokollok száma, úgy nő [a kereslet is, hogy az eszközöket láncok között lehessen mozgatni](https://dune.xyz/eliasimos/Bridge-Away-(from-Ethereum)). Az igény kielégítéséhez összekötőkre vagy hidakra van szükségünk._ @@ -30,7 +30,7 @@ A hidak kötik össze a blokkláncokat, lehetővé téve az információ és a t A hidak lehetőséget adnak arra, hogy: -- az eszközök és az információk a láncok között mozogjanak +- az eszközök és az információk a láncok között mozogjanak. - a decentralizált alkalmazások hozzáférjenek a különféle blokkláncok erősségeihez – így azok képességeit fejleszteni tudják (mivel a protokollok esetében manapság több tér van az innovációra). - a felhasználók új platformokat érjenek el és hasznosítsák a különböző láncok előnyeit. - a fejlesztők a különböző blokklánc-ökoszisztémákon együttműködjenek és új platformokat építsenek a felhasználók számára. diff --git a/public/content/translations/hu/community/code-of-conduct/index.md b/public/content/translations/hu/community/code-of-conduct/index.md index f651b5b2f2e..064d6c5f54b 100644 --- a/public/content/translations/hu/community/code-of-conduct/index.md +++ b/public/content/translations/hu/community/code-of-conduct/index.md @@ -52,7 +52,7 @@ Az elfogadhatatlan viselkedések például: - Fizikai erőszak, azzal való fenyegetés vagy támogatása bármilyen formában - Szexualitással kapcsolatos beszéd vagy kép használata, illetve ilyen jellegű közeledés -- Egy másik személy eljátszása, vagy rosszhiszeműen azt állítani, hogy egy személlyel vagy szervezettel kapcsolatban áll valaki. +- Egy másik ember megszemélyesítése, vagy rosszhiszeműen azt állítani, hogy egy személlyel vagy szervezettel kapcsolatban áll valaki - Zavaró, derogáló kommentek, személyes vagy politikai támadások - Más tag zaklatása nyilvános vagy privát csatornákon - Mások privát információinak nyilvánossá tétele, mint fizikai vagy elektronikus cím, kifejezett kérése nélkül diff --git a/public/content/translations/hu/community/get-involved/index.md b/public/content/translations/hu/community/get-involved/index.md index 1073907af8f..8e506b50d95 100644 --- a/public/content/translations/hu/community/get-involved/index.md +++ b/public/content/translations/hu/community/get-involved/index.md @@ -28,7 +28,7 @@ Kezdje azzal, hogy elolvassa az ethereum.org misszióját és értékeit a [maga - Írjon vagy véleményezzen egy Ethereum fejlesztési javaslatot (EIP) - Írjon EIP-t 1. Adja be ötletét az [Ethereum Magicians csoportnak](https://ethereum-magicians.org) - 2. Olvassa el az [EIP-1-et](https://eip.ethereum.org/EIPS/eip-1) – **Igen, ez a _teljes_ dokumentum.** + 2. Olvassa el az [EIP-1-et](https://eips.ethereum.org/EIPS/eip-1) – **Igen, ez a _teljes_ dokumentum.** 3. Kövesse az EIP-1 iránymutatásait. Hivatkozzon rá, ahogy a vázlatot készíti. - Tudja meg, hogyan lehet [EIP-szerkesztő](https://eips.ethereum.org/EIPS/eip-5069) - Ön is véleményezheti az EIP-ket már most! Nézze meg a [nyitott PR-okat az `e-review` címkét](https://github.com/ethereum/EIPs/pulls?q=is%3Apr+is%3Aopen+label%3Ae-review) használva. Adjon technikai visszajelzést a `discussion-to` hivatkozáson. diff --git a/public/content/translations/hu/community/grants/index.md b/public/content/translations/hu/community/grants/index.md index ebfbecf2baf..5f9cf04857b 100644 --- a/public/content/translations/hu/community/grants/index.md +++ b/public/content/translations/hu/community/grants/index.md @@ -15,30 +15,26 @@ A listát a közösség tartja karban. Ha bármit hiányol vagy nem talál helye Ezek a programok a kiterjed Ethereum-ökoszisztémát támogatják és a projektek széles körének ajánlanak finanszírozást. Mint a skálázási megoldások, közösségépítés, biztonság, adatvédelem és még sok más. Nem kötődnek valamelyik platformhoz, és mindig jó kiindulópont, ha valamiért Ön bizonytalan a támogatások témájában. - [EF Ecosystem Support Program](https://esp.ethereum.foundation) – _Nyílt forráskódú projektek finanszírozása: fókuszban az egyetemes eszközök, infrastruktúra, kutatás és közjavak_ -- [Ethereum RFPs](https://github.com/ethereum/requests-for-proposals) – _Javaslatok kérése az Ethereum Alapítvány által az ökoszisztémában való munkavégzés és projektek kapcsán_ - [MetaCartel](https://www.metacartel.org/grants/) – _Dapp fejlesztése, DAO létrehozása_ - [Moloch DAO](https://www.molochdao.com/) – _Adatvédelem, L2 skálázás, kliensbiztonság és más területek_ -- [Open Grants](https://opengrants.com/explore) -- [DAO Grants](https://docs.google.com/spreadsheets/d/1XHc-p_MHNRdjacc8uOEjtPoWL86olP4GyxAJOFO0zxY/edit#gid=0) - _A támogatást ajánló szervezetek listája Google-táblázatban_ +- [DAO Grants](https://docs.google.com/spreadsheets/d/1XHc-p_MHNRdjacc8uOEjtPoWL86olP4GyxAJOFO0zxY/edit#gid=0) – _A támogatást ajánló szervezetek listája Google-táblázatban_ - [Crunchbase for Web3 Grants](https://www.cryptoneur.xyz/web3-grants) – _Támogatások szűrése és keresése kategória, alkalmazási terület, összeg és egyéb alapján. Segítsen, hogy mások is megtalálják a megfelelő támogatást._ - [Academic Grants](https://esp.ethereum.foundation/academic-grants) – _Az Ethereummal kapcsolatos akadémiai munkák támogatása_ +- [Blockworks Grantfarm](https://blockworks.co/grants/programs) – _A Blockworks egy átfogó jegyzéket hozott létre, lefedve az összes támogatást, változtatási javaslatot (RFP) és hibavadászatot._ ## Projektspecifikus {#project-specific} Projektek által adott támogatás olyanoknak, akik az adott technológiát fejlesztenék vagy kísérleteznének vele. - [Aave Grants Program](https://aavegrants.org/) – _[Aave](https://aave.com/) támogatási DAO_ -- [Balancer](https://balancergrants.notion.site/Balancer-Community-Grants-23e562c5bc4347cd8304637bff0058e6) – _[Balancer](https://balancer.fi/) ökoszisztéma finanszírozási alapja_ +- [Balancer](https://quark-ceres-740.notion.site/Balancer-Grants-938f1b979810427f8d903a904315da41) – _[A Balancer](https://balancer.fi/) ökoszisztéma finanszírozási alapja_ - [Chainlink Grants Program](https://chain.link/community/grants) – _[Chainlink](https://chain.link/) közösségi támogatások_ -- [Compound Grants Program](https://compoundgrants.org/) – _[Compound](https://compound.finance/) pénzügyi ökoszisztéma_ - [Decentraland Grants Program](https://governance.decentraland.org/grants/) – _[Decentraland](https://decentraland.org/) DAO Metaverzum_ -- [Lido Ecosystem Grants Organisation (LEGO)](https://lego.lido.fi/) – _[Lido](https://lido.fi/) pénzügyi ökoszisztéma_ +- [Lido Ecosystem Grants Organisation (LEGO)](https://lido.fi/lego) – _[Lido](https://lido.fi/) pénzügyi ökoszisztéma_ - [MetaMask Program](https://metamaskgrants.org/) – _[MetaMask](https://metamask.io/) munkavállalók által vezetett támogatási DAO_ -- [mStable Grants Program](https://docs.mstable.org/advanced/grants-program) – _[mStable](https://mstable.org/) közösség_ - [SKALE Network Grants Program](https://skale.space/developers#grants) – _[SKALE Network](https://skale.space/) ökoszisztéma_ - [The Graph](https://airtable.com/shrdfvnFvVch3IOVm) – _[The Graph](https://thegraph.com/) ökoszisztéma_ -- [UMA Grants Program](https://grants.umaproject.org/) – _[UMA](https://umaproject.org/) fejlesztői támogatás_ -- [Uniswap Grants Program](https://www.unigrants.org/) – _[Uniswap](https://uniswap.org/) közösség_ +- [Uniswap Grants Program](https://www.uniswapfoundation.org/apply-for-a-grant) – _[Uniswap](https://uniswap.org/) közösség_ - [Web3-támogatások](https://web3grants.net) – _A web3/kripto területén futó támogatási programok kimerítő listája_ ## Kvadratikus finanszírozás {#quadratic-funding} diff --git a/public/content/translations/hu/community/language-resources/index.md b/public/content/translations/hu/community/language-resources/index.md index 1eca7a08156..e0b31101c7a 100644 --- a/public/content/translations/hu/community/language-resources/index.md +++ b/public/content/translations/hu/community/language-resources/index.md @@ -72,7 +72,7 @@ Ha Ön kétnyelvű és segítene nekünk, hogy több embert érjünk el, akkor k - [Gwei.cz](https://gwei.cz) – helyi közösség a web3 körül, amely oktatási anyagokat készít, online és személyes találkozókat szervez - [Gwei.cz Příručka](https://prirucka.gwei.cz/) – Ethereum útmutató kezdőknek - [DAO Příručka](https://dao.gwei.cz/) – útmutató kezdőknek a DAO-okról -- [Mastering Ethereum](https://ipfs.infura-ipfs.io/ipfs/bafybeidvuxhnsgfx3tncpfxheqglkjwmdxclknlgd7s7qggd2a6bzgb27m) – Az Ethereum elsajátítása, cseh verzió +- [Mastering Ethereum](https://ipfs.io/ipfs/bafybeidvuxhnsgfx3tncpfxheqglkjwmdxclknlgd7s7qggd2a6bzgb27m) – Az Ethereum elsajátítása, cseh verzió ### Francia {#fr} diff --git a/public/content/translations/hu/community/online/index.md b/public/content/translations/hu/community/online/index.md index d5d3ae8aa82..f3e3844b977 100644 --- a/public/content/translations/hu/community/online/index.md +++ b/public/content/translations/hu/community/online/index.md @@ -24,13 +24,13 @@ Ethereum rajongók százezrei gyűlnek össze ezeken az online fórumokon, hogy Ethereum Cat Herders – projektmanagement-támogatás az Ethereum-fejlesztésekhez Ethereum Hackers – az ETHGlobal által üzemeltetett Discord chat: online közösség az Ethereum hackereknek világszinten CryptoDevs – Ethereum-fejlesztésre fókuszáló Discord-közösség -EthStaker Discord – közösségi vezetésű útmutatás, oktatás, támogatás és források a meglévő és lehetséges letéteseknek -Ethereum.org website team – beszélgessen az ethereum.org web fejlesztésről és dizájnról a közösség tagjaival +EthStaker Discord – közösségi vezetésű útmutatás, oktatás, támogatás és források a meglévő és lehetséges letéteseknek +Ethereum.org website team – beszélgessen az ethereum.org web fejlesztésről és dizájnról a közösség tagjaival Matos Discord – web3 alkotói közösség, ahol a fejlesztők, az iparági vezetők és az Ethereum rajongók találkoznak. Szenvedélyünk a web3 fejlesztés, a dizájn és a kultúra. Jöjjön és építsen velünk. -Solidity Gitter – solidity fejlesztésről (Gitter) szóló csevegés +Solidity Gitter – solidity fejlesztésről (Gitter) szóló csevegés Solidity Matrix – solidity fejlesztősről (Matrix) szóló csevegés -Ethereum Stack Exchange _–kérdések és válaszok fóruma_ -Peeranha _– decentralizált kérdések és válaszok fóruma_ +Ethereum Stack Exchange *–kérdések és válaszok fóruma* +Peeranha *– decentralizált kérdések és válaszok fóruma* ## YouTube és Twitter {#youtube-and-twitter} diff --git a/public/content/translations/hu/community/research/index.md b/public/content/translations/hu/community/research/index.md index 24b92d10a0f..2640721be20 100644 --- a/public/content/translations/hu/community/research/index.md +++ b/public/content/translations/hu/community/research/index.md @@ -26,7 +26,7 @@ Ez a riport 2022. májusában készült, melyben a [DelphiDigital](https://membe A protokollkutatás az Ethereum alaprétegével foglalkozik – szabályok összessége, hogy a csomópontok hogyan kapcsolódnak, kommunikálnak, cserélik és tárolják az adatot, és hogyan jutnak konszenzusra a blokklánc státuszát illetően. A protokollkutatás két fő kategóriára oszlik: konszenzus és végrehajtási. -### Consensus {#consensus} +### Konszenzus {#consensus} A konszenzuskutatás az [Ethereum proof-of-stake mechanizmusával](/developers/docs/consensus-mechanisms/pos/) foglalkozik. Néhány példa: @@ -39,16 +39,16 @@ Emellett a jövőbe előretekintő kutatások, a protokoll alapvető újratervez #### Háttér olvasmányok {#background-reading} -- [Introduction to proof-of-stake](/developers/docs/consensus-mechanisms/pos/) -- [Casper-FFG paper](https://arxiv.org/abs/1710.09437) +- [Bevezetés a proof-of-stake mechanizmusba](/developers/docs/consensus-mechanisms/pos/) +- [Casper-FFG leírás](https://arxiv.org/abs/1710.09437) - [Casper-FFG magyarázat](https://arxiv.org/abs/1710.09437) -- [Gasper paper](https://arxiv.org/abs/2003.03052) +- [Gasper leírás](https://arxiv.org/abs/2003.03052) #### Jelenlegi kutatás {#recent-research} - [Ethresear.ch konszenzus](https://ethresear.ch/c/consensus/29) - [Elérhetőség/Véglegesség dilemma](https://arxiv.org/abs/2009.04987) -- [Single slot finality](https://ethresear.ch/t/a-model-for-cumulative-committee-based-finality/10259) +- [Egy sloton belüli véglegesség](https://ethresear.ch/t/a-model-for-cumulative-committee-based-finality/10259) - [Javaslattevő-építő szétválasztása](https://notes.ethereum.org/@vbuterin/pbs_censorship_resistance) ### Végrehajtási {#execution} @@ -67,7 +67,7 @@ A végrehajtási réteg a tranzakciók feldolgozását végzi, az [Ethereum virt #### Jelenlegi kutatás {#recent-research-1} - [Adatbázis optimalizáció](https://github.com/ledgerwatch/erigon/blob/devel/docs/programmers_guide/db_faq.md) -- [State expiry](https://notes.ethereum.org/@vbuterin/state_expiry_eip) +- [A státusz lejárata](https://notes.ethereum.org/@vbuterin/state_expiry_eip) - [Utak a státusz lejáratának beállításához](https://hackmd.io/@vbuterin/state_expiry_paths) - [Verkle és státusz lejáratának beállítása](https://notes.ethereum.org/@vbuterin/verkle_and_state_expiry_proposal) - [Előzmények kezelése](https://eips.ethereum.org/EIPS/eip-4444) @@ -124,7 +124,7 @@ Az L2 az egyik területe még több kutatást és fejlesztést igényel – ez p - [Bevezetés a blokklánchidak működésébe](/bridges/) - [Vitalik a hidakról](https://old.reddit.com/r/ethereum/comments/rwojtk/ama_we_are_the_efs_research_team_pt_7_07_january/hrngyk8/) - [A blokklánchidakról szóló cikk](https://medium.com/1kxnetwork/blockchain-bridges-5db6afac44f8) -- [A hidakba ragadt érték]() +- [A hidakba ragadt érték](https://dune.com/eliasimos/Bridge-Away-(from-Ethereum)) #### Jelenlegi kutatás {#recent-research-3} @@ -156,7 +156,7 @@ A [csomópontok futtatása](/developers/docs/nodes-and-clients/run-a-node/) szer #### Jelenlegi kutatás {#recent-research-5} -- [ecdsa a FGPA-król](https://ethresear.ch/t/does-ecdsa-on-fpga-solve-the-scaling-problem/6738) +- [ecdsa a FPGA-król](https://ethresear.ch/t/does-ecdsa-on-fpga-solve-the-scaling-problem/6738) ## Biztonság {#security} @@ -346,7 +346,6 @@ Az Ethereum fejlesztők eszközei gyorsan fejlődnek. Ezen a területen is sok a - [Fejlesztői keretrendszerek](/developers/docs/frameworks/) - [Konszenzusfejlesztői eszközök listája](https://github.com/ConsenSys/ethereum-developer-tools-list) - [Token szabványok](/developers/docs/standards/tokens/) -- [Biastek: Ethereum-eszközök](https://biastek.com/ethereum-tools/) - [CryptoDevHub: EVM-eszközök](https://cryptodevhub.io/wiki/ethereum-virtual-machine-tools) #### Jelenlegi kutatás {#recent-research-17} diff --git a/public/content/translations/hu/community/support/index.md b/public/content/translations/hu/community/support/index.md index efc25e4f4cb..2a3add460b3 100644 --- a/public/content/translations/hu/community/support/index.md +++ b/public/content/translations/hu/community/support/index.md @@ -30,7 +30,7 @@ Gondjai vannak a tárcájával? A legtöbb tárcának van dedikált támogatói - [Argent](https://support.argent.xyz/hc/) - [MyEtherWallet](https://help.myetherwallet.com/) -_Ez nem egy teljes lista. Segítségre van szüksége, hogy megtalálja az adott tárca támogatói csapatát? Csatlakozzon az [ethereum.org Discord](https://discord.gg/ethereum-org) csatornához, és megpróbálunk segíteni._ +_Ez nem egy teljes lista. Segítségre van szüksége, hogy megtalálja az adott tárca támogatói csapatát? Csatlakozzon az [ethereum.org Discord](https://discord.gg/rZz26QWfCg) csatornához, és megpróbálunk segíteni._ Ethereum-tárcát keres? [Fedezze fel az Ethereum-tárcák teljes választékát](/wallets/find-wallet/). @@ -39,7 +39,7 @@ Ethereum-tárcát keres? [Fedezze fel az Ethereum-tárcák teljes választékát A fejlesztés tele van kihívásokkal. Alább található néhány fejlesztőket támogató platform, tapasztalt Ethereum-fejlesztőkkel. - [Alchemy University](https://university.alchemy.com/#starter_code) -- [CryptoDevs discord](https://discord.gg/Z9TA39m8Yu) +- [CryptoDevs discord](https://discord.com/invite/5W5tVb3) - [Ethereum StackExchange](https://ethereum.stackexchange.com/) - [StackOverflow](https://stackoverflow.com/questions/tagged/web3) - [Web3 University](https://www.web3.university/) @@ -53,7 +53,7 @@ A kérdése egy bizonyos eszközhöz, projekthez vagy könyvtárhoz kapcsolódik Néhány népszerű példa: -- [Solidity](https://gitter.im/ethereum/solidity) +- [Solidity](https://gitter.im/ethereum/solidity/) - [ethers.js](https://discord.gg/6jyGVDK6Jx) - [web3.js](https://discord.gg/GsABYQu4sC) - [Hardhat](https://discord.gg/xtrMGhmbfZ) @@ -65,7 +65,7 @@ Néhány népszerű példa: Ha Ön csomópontot vagy validátort futtat, a következő közösségek segítenek belevágni. -- [EthStaker discord](https://discord.io/ethstaker) +- [EthStaker discord](https://discord.gg/ethstaker) - [EthStaker reddit](https://www.reddit.com/r/ethstaker) Az Ethereum klienseket építő csapatok is dedikált, nyilvános fórumokkal rendelkeznek, ahol kérdezni lehet. diff --git a/public/content/translations/hu/decentralized-identity/index.md b/public/content/translations/hu/decentralized-identity/index.md index 2f5e810a0df..718c4999731 100644 --- a/public/content/translations/hu/decentralized-identity/index.md +++ b/public/content/translations/hu/decentralized-identity/index.md @@ -161,6 +161,7 @@ Számtalan ambiciózus projekt használja az Ethereumot a decentralizált identi - **[Proof of Humanity](https://www.proofofhumanity.id)** – _Az emberség igazolása (PoH) egy közösségi identitás igazolására készült rendszer, mely az Ethereumra épül._ - **[BrightID](https://www.brightid.org/)** – _Egy decentralizált, nyílt forráskódú, közösségi identitási hálózat, amely új módot keres az azonosításra egy közösségi gráf megalkotásával és elemzésével._ - **[Proof-of-personhood Passport](https://proofofpersonhood.com/)** - _Egy decentralizált, digitális identitásgyűjtemény._ +- **[walt.id](https://walt.id)** – _Nyílt forráskódú, decentralizált identitás- és tárcainfrastruktúra, amely lehetővé teszi a fejlesztőknek és szervezeteknek, hogy kihasználják a szuverén identitást, valamint az NFT-ket/SBT-ket._ ## További olvasnivaló {#further-reading} @@ -170,6 +171,7 @@ Számtalan ambiciózus projekt használja az Ethereumot a decentralizált identi - [Mi az az Ethereum ERC725? Független identitáskezelés a blokkláncon](https://cryptoslate.com/what-is-erc725-self-sovereign-identity-management-on-the-blockchain/) — _Sam Town_ - [Hogyan tudja a blokklánc megoldani a digitális identitás problémáját](https://time.com/6142810/proof-of-humanity/) — _Andrew R. Chow_ - [Mi az a decentralizált identitás és miért érdemes figyelembe venni?](https://web3.hashnode.com/what-is-decentralized-identity) — _Emmanuel Awosika_ +- [Bevezetés a decentralizált identitás világába](https://walt.id/white-paper/digital-identity) – _Dominik Beron_ ### Videók {#videos} @@ -177,9 +179,11 @@ Számtalan ambiciózus projekt használja az Ethereumot a decentralizált identi - [Az Ethereumba való bejelentkezés és a decentralizált identitás témája a Ceramic, IDX, React és 3ID Connect használatával](https://www.youtube.com/watch?v=t9gWZYJxk7c) — _YouTube útmutató a személyazonosítási rendszer kiépítéséről, mely az Ethereum-tárca alapján létrehozza, kiolvassa és frissíti a felhasználó profilját – Nader Dabit_ - [BrightID – Decentralizált identitás az Ethereumon](https://www.youtube.com/watch?v=D3DbMFYGRoM) — _Bankless podcast epizód a BrightID-ról, ami egy decentralizált identitási megoldás az Ethereumon_ - [A láncon kívüli internet: decentralizált identitás és igazolható bizonyítványok (VC)](https://www.youtube.com/watch?v=EZ_Bb6j87mg) — EthDenver 2022 Evin McMullen prezentációja +- [A hitelesítő adatok bemutatása](https://www.youtube.com/watch?v=ce1IdSr-Kig) – YouTube magyarázó videó példával Tamino Baumanntól ### Közösségek {#communities} - [ERC-725 szövetség a GitHubon](https://github.com/erc725alliance) — _Az ERC725 szabvány támogatói, mely az Ethereum-blokkláncon való identitáskezelést célozza_ - [SpruceID Discord-szerver](https://discord.com/invite/Sf9tSFzrnt) — _Rajongók és fejlesztők közössége, akik az Ethereumba való bejelentkezés funkcióján dolgoznak_ - [Veramo Labs](https://discord.gg/sYBUXpACh4) — _Fejlesztői közösség, melynek célja az alkalmazásokhoz szükséges igazolható adatok keretrendszerének kidolgozása_ +- [walt.id](https://discord.com/invite/AW8AgqJthZ) – _Fejlesztők és építők közössége, akik a decentralizált identitás számtalan iparágban való felhasználási területeivel foglalkoznak_ diff --git a/public/content/translations/hu/desci/index.md b/public/content/translations/hu/desci/index.md index a0797e6f91d..0dea61e9879 100644 --- a/public/content/translations/hu/desci/index.md +++ b/public/content/translations/hu/desci/index.md @@ -103,7 +103,7 @@ Fedezze fel a projekteket és csatlakozzon a DeSci közösségéhez. - [OceanDAO: az adattal kapcsolatos tudományok DAO által irányított finanszírozása](https://oceanprotocol.com/dao) - [Opscientia: nyílt, decentralizált, tudományos munkafolyamatok](https://opsci.io/research/) - [LabDAO: fehérjék számítógépes szimulációja](https://alphafodl.vercel.app/) -- [Bio.xyz: finanszírozás szerzése a biotechnológiai DAO-jához vagy decentralizált tudományos projektjéhez](https://www.molecule.to/) +- [Bio.xyz: finanszírozás szerzése a biotechnológiai DAO-jához vagy decentralizált tudományos projektjéhez](https://www.bio.xyz/) - [ResearchHub: tudományos eredmények publikálása és azok megvitatása munkatársaival](https://www.researchhub.com/) - [VitaDAO: hosszútávú kutatások finanszírozása a szponzorált kutatási megállapodások alapján](https://www.vitadao.com/) - [Fleming Protocol: nyílt forráskódú adatgazdaság, amely fűti a kollaboratív orvosbiológiai felfedezéseket](https://medium.com/@FlemingProtocol/a-data-economy-for-patient-driven-biomedical-innovation-9d56bf63d3dd) diff --git a/public/content/translations/hu/developers/docs/accounts/index.md b/public/content/translations/hu/developers/docs/accounts/index.md index 0f76a61e5b8..8b7ef20585f 100644 --- a/public/content/translations/hu/developers/docs/accounts/index.md +++ b/public/content/translations/hu/developers/docs/accounts/index.md @@ -2,21 +2,20 @@ title: Ethereum számlák description: Az Ethereum számlák magyarázata – az adatstruktúrájuk és a kapcsolatuk a kulcspár kriptográfiával. lang: hu -isOutdated: true --- Egy Ethereum számla egy olyan entitás, mely ether (ETH) egyenleggel rendelkezik és tranzakciókat tud indítani az Ethereumon. A számlák lehetnek felhasználók által irányítottak, vagy okos szerződésként telepítettek. ## Előfeltételek {#prerequisites} -A számlák téma könnyen feldolgozható még a legkezdőbb felhasználóknak is. De ennek az oldalnak a jobb megértése érdekében javasoljuk, hogy először olvasd el a [bevezetés az Ethereumba](/developers/docs/intro-to-ethereum/) oldalunkat. +Ennek az oldalnak a jobb megértése érdekében javasoljuk, hogy először olvassa el a [bevezetés az Ethereumba](/developers/docs/intro-to-ethereum/) oldalunkat. ## Számlatípusok {#types-of-account} Az Ethereum két számlatípust kínál: -- Külső tulajdonú - bárki irányíthatja a privát kulcsokkal -- Szerződés - egy okosszerződés, melyet a hálózatra telepítettek és kód irányítja. Tudj meg többet az [okosszerződésekről](/developers/docs/smart-contracts/) +- Externally owned account (EOA) – bárki irányíthatja a privát kulcsokkal +- Szerződéses számla – egy okosszerződés, amelyet a hálózatra telepítettek és kód irányítja. Tudjon meg többet az [okosszerződésekről](/developers/docs/smart-contracts/) Mindkét számlatípus képes: @@ -29,22 +28,24 @@ Mindkét számlatípus képes: - Egy számla létrehozása nem kerül semmibe - Tranzakciókat indíthatsz -- A külső tulajdonú számlák közötti tranzakciók csak ETH átutalások lehetnek +- A külső tulajdonú számlák közötti tranzakciók csak ETH/token átutalások lehetnek +- Egy kriptográfiai kulcspárból állnak: a nyilvános és a privát kulcs kontrollálja a számlával kapcsolatos ügyleteket **Szerződés** -- Egy számla létrehozás költséggel jár, mivel a hálózati tárhelyet használod +- Egy számla létrehozása költséggel jár, mivel a hálózati tárhelyet használja - Csak úgy küldhet tranzakciókat ha az egy válasz egy bejövő tranzakcióra -- Külső tulajdonú számláról küldött tranzakciók beindíthat egy programkódot, mely parancsokat hajt végre, mint például token átutalásokat vagy akár új szerződés létrehozásokat +- A külső tulajdonú számláról szerződéses számlára küldött tranzakciók egy programkódot indítanak, amely sokféle parancsot tud végrehajtani, mint például token átutalása vagy akár új szerződés létrehozása +- A szerződéses számláknak nincs privát kulcsuk. Ehelyett az okosszerződés logikája kontrollálja azokat ## Egy számla közelebbről {#an-account-examined} Az Ethereum számláknak négy mezőjük van: -- `nonce` – egy számláló, mely a számláról küldött tranzakciók számát jelzi. Ez biztosítja, hogy minden tranzakciót csak egyszer dolgozzanak fel. Szerződéses számlák esetében ez a szám jelzi a számla által létrehozott szerződéseket -- `balance` – A cím által birtokolt Wei-k száma. A Wei az ETH egysége és 1e+18 Wei van egy ETH-ben. -- `codeHash` – Az összes ilyen kódrészletet az állapot adatbázis tartalmazza a megfelelő hashek alatt későbbi visszakeresés céljából. Szerződéses számláknál ez az a kód, ami hashelődik és codeHashként tárolódik. Külső tulajdonú számláknál a codeHash mező egy üres sztring hash-e. -- `storageRoot` – Néha úgy is hivatkoznak rá, mint tárhely hash. Egy Merkle Patricia fa gyökér csomópontjának 256-bites hash-e, mely kódolja a számla tárhelyének tartalmát (egy mapping 256-bites integer értékek között), a fába kódolva, mint egy 256-bites integer kulcsok 256-bites Keccak hash-e és az RLP kódolású 256-bites integer értékek közötti leképzés. Ez a fa a számla tárolótartalmának hash-ét kódolja, és alapértelmezés szerint üres. +- `nonce` – Egy számláló, amely az elküldött tranzakciók számát (külső tulajdonú számla) vagy a létrehozott szerződések számát (szerződéses számla) mutatja. Egy adott nonce segítségével csak egy tranzakció hajtható végre az adott számlára, így nem lehet újrajátszani a tranzakciót, így védve van az ilyen jellegű támadásoktól. +- `balance` – A cím által birtokolt Wei-k száma. A Wei az ETH denominált egysége és 1e+18 Wei van egy ETH-ben. +- `codeHash` – Ez a hash egy számla _kódjára_ hivatkozik az Ethereum Virtuális Gépen (EVM). A szerződéses számlák olyan kódrészleteket tartalmaznak, amelyek különféle műveleteket tudnak végrehajtani. Ez az EVM-kód kerül végrehajtásra, ha a számla egy üzenethívást kap. A többi számlamezővel ellentétben ezt nem lehet megváltoztatni. Az összes ilyen kódrészletet az státuszadatbázis tartalmazza a megfelelő hashek alatt későbbi visszakeresés céljából. Ezt a hash-értéket nevezik codeHash-nek. Külső tulajdonú számláknál a codeHash mező egy üres sztring hash-e. +- `storageRoot` – Néha úgy is hivatkoznak rá, mint tárhely-hash. Egy Merkle Patricia trie gyökér csomópontjához tartozó 256 bites hash, amely a számla tárhelyének tartalmát kódolja (256 bites integer értékek közötti leképzés), a fába kódolva, mint egy 256 bites integer kulcsok 256 bites Keccak hash-e és az RLP kódolású 256 bites integer értékek közötti leképzés. Ez a fa a számla tárolótartalmának hash-ét kódolja, és alapértelmezés szerint üres. ![Egy diagram mely egy számla felépítését mutatja be](./accounts.png) _Diagram átvéve az [Ethereum EVM illusztrálva](https://takenobu-hs.github.io/downloads/ethereum_evm_illustrated.pdf)_ anyagból @@ -66,21 +67,24 @@ Példa: `fffffffffffffffffffffffffffffffebaaedce6af48a03bbfd25e8cd036415f` -A publikus kulcs a privátkulcsból generálódik az elliptikus görbe digitális aláírás algoritmussal (ECDSA). A számlád publikus címét úgy kaphatod meg, ha elveszed a legutolsó 20 bájtot a publikus kulcsból és hozzáadsz egy `0x` előtagot az elejére. +A nyilvános kulcsot a privát kulcsból generálják az [Elliptic Curve Digital Signature Algorithm](https://wikipedia.org/wiki/Elliptic_Curve_Digital_Signature_Algorithm) segítségével. A számla publikus címét úgy lehet megkapni, ha elvesszük a legutolsó 20 bájtot a Keccak-256 hash nyilvános kulcsából és hozzáadunk egy `0x` előtagot az elejére. -Itt egy példa számla létrehozásra a konzolban a GETH `personal_newAccount` függvény használatával +A következő példa megmutatja, hogyan lehet a [Clef](https://geth.ethereum.org/docs/tools/clef/introduction) nevű aláíró eszközzel egy új számlát létrehozni. A Clef egy számlakezelő és -aláíró eszköz, amely az Ethereum klienssel, a [Geth-szel](https://geth.ethereum.org) van egybecsomagolva. A `clef newaccount` parancs egy új kulcspárt hoz létre, és egy titkosított kulcstárolóba menti el. -```go -> personal.newAccount() -Passphrase: -Repeat passphrase: -"0x5e97870f263700f46aa00d967821199b9bc5a120" +``` +> clef newaccount --keystore + +Please enter a password for the new account to be created: +> -> personal.newAccount("h4ck3r") -"0x3d80b31a78c30fc628f20b2c89d7ddbf6e53cedc" +------------ +INFO [10-28|16:19:09.156] Your new key was generated address=0x5e97870f263700f46aa00d967821199b9bc5a120 +WARN [10-28|16:19:09.306] Please backup your key file path=/home/user/go-ethereum/data/keystore/UTC--2022-10-28T15-19-08.000825927Z--5e97870f263700f46aa00d967821199b9bc5a120 +WARN [10-28|16:19:09.306] Please remember your password! +Generated account 0x5e97870f263700f46aa00d967821199b9bc5a120 ``` -[GETH dokumentáció](https://geth.ethereum.org/docs) +[Geth-dokumentáció](https://geth.ethereum.org/docs) Lehetséges új publikus kulcsokat származtatni a privát kulcsodból, de nem tudsz publikus kulcsokból privát kulcsot származtatni. Ez azt jelenti, hogy létfontosságú a privát kulcs biztonságban tartása, és ahogy a neve is sugallja: **PRIVÁT**. @@ -94,14 +98,30 @@ Példa: `0x06012c8cf97bead5deae237070f9587f8e7a266d` -Ez a szerződés cím általában akkor jön létre, amikor egy szerződést feltelepítenek az Ethereum Blokkláncra. A cím a készítő címéből és ebből a címről küldött tranzakciók számából (a “nonce”) származik. +Ez a szerződés cím általában akkor jön létre, amikor egy szerződést feltelepítenek az Ethereum blokkláncra. A cím a készítő címéből és az erről a címről küldött tranzakciók számából („nonce”) származik. + +## Validátorkulcsok {#validators-keys} + +Az Ethereumon létezik egy másik típusú kulcs is, amelyet a proof-of-work-alapú konszenzusról a proof-of-stake-alapúra való átálláskor vezettek be. Ezek a BLS kulcsok, amelyek a validátorokat azonosítják. Hatékonyan aggregálhatók, hogy a hálózatnak kevesebb sávszélességre legyen szüksége a konszenzus elérésekor. Ezen kulcsaggregáció nélkül a validátor minimális letétének sokkal nagyobbnak kellene lennie. + +[Bővebben a validátorkulcsokról](/developers/docs/consensus-mechanisms/pos/keys/). -## Egy megjegyzés a tárcákkal kapcsolatban {#a-note-on-wallets} +## Megjegyzés a tárcákkal kapcsolatban {#a-note-on-wallets} -Egy számla nem egy tárca. Egy tárca az a kulcspár, mely hozzá van rendelve a felhasználó által birtokolt számlához, mely lehetővé teszi a felhasználó számára, hogy tranzakciókat indítson vagy kezelje a számlát. +A számla nem egyenlő a tárcával. A számla az a kulcspár, amely a felhasználó Ethereum számlájához tartozik. A tárca egy olyan interfész vagy alkalmazás, amely lehetővé teszi az Ethereum számlával való interakciót. + +## Egy vizuális bemutató {#a-visual-demo} + +Nézze meg, ahogy Austin elmagyarázza a hash funkciót és a kulcspárokat. + + + + ## További olvasnivaló {#further-reading} +- [Az Ethereum-számlák megértése](https://info.etherscan.com/understanding-ethereum-accounts/) - etherscan + _Ismersz olyan közösségi anyagot, amely segített neked? Módosítsd az oldalt és add hozzá!_ ## Kapcsolódó témák {#related-topics} diff --git a/public/content/translations/hu/developers/docs/apis/backend/index.md b/public/content/translations/hu/developers/docs/apis/backend/index.md index 9c48bf0ef74..f7c5a9577d2 100644 --- a/public/content/translations/hu/developers/docs/apis/backend/index.md +++ b/public/content/translations/hu/developers/docs/apis/backend/index.md @@ -6,13 +6,13 @@ lang: hu Ahhoz, hogy egy szoftver alkalmazás interakcióba lépjen az Ethereum blokklánccal (vagyis képes legyen blokklánc adatok olvasására és/vagy tranzakció küldésre a hálózatra), rá kell csatlakoznia egy Ethereum csomópontra. -Erre a célra minden Ethereum kliens implementálja a JSON-RPC specifikációt, így egy egységes végpontkészlet áll rendelkezésre, amelyekre az alkalmazások támaszkodhatnak. +Erre a célra minden Ethereum-kliens implementálja a [JSON-RPC](/developers/docs/apis/json-rpc/) specifikációt, így egységes [módszerek](/developers/docs/apis/json-rpc/#json-rpc-methods) állnak rendelkezésre, amelyekre az alkalmazások támaszkodhatnak. Ha egy bizonyos programnyelvet szeretnél használni, hogy csatlakozz egy Ethereum csomóponttal, akkor fejleszd ki a saját megoldásodat, de ugyanakkor számos kényelmes könyvtár létezik az ökoszisztémán belül, melyek megkönnyítik ezt. Ezekkel a könyvtárakkal a fejlesztők intuitív, egysoros metódusokat írhatnak, hogy kezdeményezzenek egy JSON RPC kérést (a háttérben), mely interakcióba lép az Ethereummal. ## Előfeltételek {#prerequisites} -Lehet, hogy érdemes megérteni az [Ethereum stacket](/developers/docs/ethereum-stack/) és az[Ethereum klienseket](/docs/nodes-and-clients/). +Érdemes lehet előbb alaposan megismerni az [Ethereum stacket](/developers/docs/ethereum-stack/) és az [Ethereum-klienseket](/developers/docs/nodes-and-clients/). ## Miért használj egy könyvtárat? {#why-use-a-library} @@ -22,16 +22,22 @@ Ezek a könyvtárak elveszik a komplexitás nagy részét, mely Ethereum csomóp **Alchemy -** **_Ethereum Fejlesztési Platform._** -- [alchemyapi.io](https://alchemyapi.io) +- [alchemy.com](https://www.alchemy.com/) - [Dokumentáció](https://docs.alchemyapi.io/) - [GitHub](https://github.com/alchemyplatform) -- [Discord](https://discord.gg/kwqVnrA) +- [Discord](https://discord.com/invite/A39JVCM) -**BlockCypher -** **_Ethereum Web API-ok_** +**BlockCypher -** **_Ethereum Web API-k._** - [blockcypher.com](https://www.blockcypher.com/) - [Dokumentáció](https://www.blockcypher.com/dev/ethereum/) +**Blast by Bware Labs -** **_Decentralizált API-k az Ethereum főhálózatra és teszthálózatokra._** + +- [blastapi.io](https://blastapi.io/) +- [Dokumentáció](https://docs.blastapi.io) +- [Discord](https://discord.com/invite/VPkWESgtvV) + **Infura -** **_Az Ethereum API, mint szolgáltatás._** - [infura.io](https://infura.io) @@ -42,37 +48,57 @@ Ezek a könyvtárak elveszik a komplexitás nagy részét, mely Ethereum csomóp - [cloudflare-eth.com](https://cloudflare-eth.com) -**Nodesmith -** **_JSON-RPC API hozzáférés az Ethereum mainnet-hez és testnet-ekhez._** +**Coinbase Cloud Node -** **_Blokklánc-infrastruktúra API._** + +- [Coinbase Cloud Node](https://www.coinbase.com/cloud/products/node) +- [Dokumentáció](https://docs.cloud.coinbase.com/node/reference/welcome-to-node) + +**DataHub by Figment -** **_Web3 API szolgáltatások az Ethereum főhálózattal és teszthálózatokkal._** + +- [DataHub](https://www.figment.io/datahub) +- [Dokumentáció](https://docs.figment.io/introduction/what-is-datahub) + +**NFTPort -** **_Ethereum-adatok és Mint API-k._** + +- [nftport.xyz](https://www.nftport.xyz/) +- [Dokumentáció](https://docs.nftport.xyz/) +- [GitHub](https://github.com/nftport/) +- [Discord](https://discord.com/invite/K8nNrEgqhE) + +**Nodesmith -** **_JSON-RPC API-hozzáférés az Ethereum főhálózathoz és teszthálózatokhoz._** - [nodesmith.io](https://nodesmith.io/network/ethereum/) - [Dokumentáció](https://nodesmith.io/docs/#/ethereum/apiRef) -**Ethercluster -** **_Futtasd a saját Ethereum API szolgáltatásodat, mely támogatja az ETH-et és ETC-t is._** +**Ethercluster -** **_Futtasson saját, ETH-et és ETC-t is támogató Ethereum API szolgáltatásokat._** - [ethercluster.com](https://www.ethercluster.com/) -**Chainstack -** **_Elosztott és dedikált Ethereum csomópontok, mint szolgáltatás._** +**Chainstack -** **_Osztott és dedikált Ethereum-csomópontok mint szolgáltatás._** - [chainstack.com](https://chainstack.com) - [Dokumentáció](https://docs.chainstack.com) +- [Ethereum API reference](https://docs.chainstack.com/api/ethereum/ethereum-api-reference) -**QuikNode -** **_Blokklánc fejlesztési platform._** +**QuickNode -** **_Blokklánc-infrastruktúra mint szolgáltatás._** -- [quiknode.io](https://quiknode.io) +- [quicknode.com](https://quicknode.com) +- [Dokumentáció](https://www.quicknode.com/docs) +- [Discord](https://discord.gg/NaR7TtpvJq) -**Python Tooling -** **_Különféle Ethereum library-k Python-nal való interakciókhoz_** +**Python Tooling -** **_Különféle Ethereum-könyvtárak Python-nal való interakciókhoz_** - [py.ethereum.org](http://python.ethereum.org/) - [web3.py GitHub](https://github.com/ethereum/web3.py) - [web3.py Chat](https://gitter.im/ethereum/web3.py) -**web3j -** **_Egy Java/Android/Kotlin/Scala integráció library Ethereum-ra._** +**web3j -** **_Java/Android/Kotlin/Scala integrációs könyvtár Ethereumra._** - [GitHub](https://github.com/web3j/web3j) - [Dokumentáció](https://docs.web3j.io/) - [Gitter](https://gitter.im/web3j/web3j) -**Rivet -** **_Ethereum és Ethereum Classic API-ok mint szolgáltatás, melyet nyílt forráskódú szoftver működtet._** +**Rivet -** **_Ethereum és Ethereum Classic API-k mint szolgáltatás, amelyeket nyílt forráskódú szoftver működtet._** - [rivet.cloud](https://rivet.cloud) - [Dokumentáció](https://rivet.cloud/docs/) @@ -84,16 +110,73 @@ Ezek a könyvtárak elveszik a komplexitás nagy részét, mely Ethereum csomóp - [Dokumentáció](http://docs.nethereum.com/en/latest/) - [Discord](https://discord.com/invite/jQPrR58FxX) +**Tatum -** **_A végső blokklánc-fejlesztési platform._** + +- [Tatum](https://tatum.io/) +- [GitHub](https://github.com/tatumio/) +- [Dokumentáció](https://docs.tatum.io/) +- [Discord](https://discord.gg/EDmW3kjTC9) + +**Watchdata -** **_Egyszerű és megbízható API-hozzáférés az Ethereum-blokklánchoz._** + +- [Watchdata](https://watchdata.io/) +- [Dokumentáció](https://docs.watchdata.io/) +- [Discord](https://discord.com/invite/TZRJbZ6bdn) + +**Zmok -** **_Sebességorientált Ethereum-csomópontok mint JSON-RPC/WebSockets API._** + +- [zmok.io](https://zmok.io/) +- [GitHub](https://github.com/zmok-io) +- [Dokumentáció](https://docs.zmok.io/) +- [Discord](https://discord.gg/fAHeh3ka6s) + +**NOWNodes – _Teljes csomópontok és blokkfelfedezők._** + +- [NOWNodes.io](https://nownodes.io/) +- [Dokumentáció](https://documenter.getpostman.com/view/13630829/TVmFkLwy#intro) + +**Moralis -** **_Vállalati szintű EVM API-szolgáltató._** + +- [moralis.io](http://moralis.io) +- [Dokumentáció](https://docs.moralis.io/) +- [GitHub](https://github.com/MoralisWeb3) +- [Discord](https://discord.com/invite/KYswaxwEtg) +- [Fórum](https://forum.moralis.io/) + +**Chainbase -** **_Teljes web3-adatinfrastruktúra az Ethereumra._** + +- [chainbase.com](https://chainbase.com/) +- [Dokumentáció](https://docs.chainbase.com/) +- [Discord](https://discord.gg/Wx6qpqz4AF) + +**GetBlock-** **_Blokklánc mint szolgáltatás a Web3 fejlesztéshez_** + +- [GetBlock.io](https://getblock.io/) +- [Dokumentáció](https://getblock.io/docs/) + +**BlockPi -** **_Hatékonyabb és gyorsabb RPC-szolgáltatások_** + +- [blockpi.io](https://blockpi.io/) +- [Dokumentáció](https://docs.blockpi.io/) +- [GitHub](https://github.com/BlockPILabs) +- [Discord](https://discord.com/invite/xTvGVrGVZv) + +**Tokenview -** **_Az általános multikripto blokklánc API-k platformja._** + +- [services.tokenview.io](https://services.tokenview.io/) +- [Dokumentáció](https://services.tokenview.io/docs?type=api) +- [GitHub](https://github.com/Tokenview) + ## További olvasnivaló {#further-reading} -_Ismersz olyan közösségi anyagot, mely segített neked? Módosítsd az oldalt és add hozzá!_ +_Van olyan közösségi erőforrása, amely segített Önnek? Szerkessze ezt az oldalt, és adja hozzá!_ ## Kapcsolódó témák {#related-topics} -- [Csomópontok és kliensek](/developers/docs/nodes-and-clients/) +- [ Csomópontok és kliensek](/developers/docs/nodes-and-clients/) - [Fejlesztői keretrendszerek](/developers/docs/frameworks/) ## Kapcsolódó útmutatók {#related-tutorials} -- [Állítsd be a Web3js, hogy JavaScriptben használd az Ethereum blokkláncot](/developers/tutorials/set-up-web3js-to-use-ethereum-in-javascript/) _– Intrukciók arról, hogyan állítsd be a web3.js-t a projektedben._ -- [Okosszerződés hívása JavaScriptből](/developers/tutorials/calling-a-smart-contract-from-javascript/) _– A DAI token használata, hogy lásd hogyan lehet szerződés függvényeket meghívni JavaScript használatával._ +- [Web3js beállítása az Ethereum-blokklánc használatához JavaScriptben](/developers/tutorials/set-up-web3js-to-use-ethereum-in-javascript/) _– Útmutató a web3.js projektben való beállításához.._ +- [Okosszerződés hívása JavaScriptből](/developers/tutorials/calling-a-smart-contract-from-javascript/) _– A DAI token használatával tekintse meg, hogyan hívhat be szerződéseket a JavaScript segítségével._ diff --git a/public/content/translations/hu/developers/docs/apis/javascript/index.md b/public/content/translations/hu/developers/docs/apis/javascript/index.md index cddb5f1737f..804bcb31653 100644 --- a/public/content/translations/hu/developers/docs/apis/javascript/index.md +++ b/public/content/translations/hu/developers/docs/apis/javascript/index.md @@ -6,38 +6,40 @@ lang: hu Ahhoz, hogy egy web alkalmazás interakcióba lépjen az Ethereum blokklánccal (vagyis képes legyen blokklánc adatok olvasására és/vagy tranzakció küldésre a hálózatra), rá kell csatlakoznia egy Ethereum csomópontra. -Erre a célra minden Ethereum kliens implementálja a JSON-RPC specifikációt, így egy egységes végpontkészlet áll rendelkezésre, amelyekre az alkalmazások támaszkodhatnak. +Erre a célra minden Ethereum-kliens implementálja a [JSON-RPC](/developers/docs/apis/json-rpc/) specifikációt, így egységes [módszerek](/developers/docs/apis/json-rpc/#json-rpc-methods) állnak rendelkezésre, amelyekre az alkalmazások támaszkodhatnak. Ha JavaScript programnyelvet szeretnél használni, hogy csatlakozz egy Ethereum csomóponttal, lehetőséged van vanilla JavaScriptet használni, de ugyanakkor számos kényelmes könyvtár létezik az ökoszisztémán belül, melyek megkönnyítik ezt. Ezekkel a könyvtárakkal a fejlesztők intuitív, egysoros metódusokat írhatnak, hogy kezdeményezzenek egy JSON RPC kérést (a háttérben), mely interakcióba lép az Ethereummal. +Az [egyesítés (Merge)](/roadmap/merge/) után, az Ethereum szoftver két kapcsolódó darabja – egy végrehajtó kliens és egy konszenzus kliens – kell a csomópont futtatásához. Gondoskodjon arról, hogy a csomópont mindkét kliens benne legyen. Ha a csomópont nem a helyi gépen van (pl. egy AWS-en fut), akkor az IP-címet frissíteni kell az útmutatóban. Bővebb információért érdemes felkeresni a [csomópont futtatása](/developers/docs/nodes-and-clients/run-a-node/) oldalt. + ## Előfeltételek {#prerequisites} -A JavaScript megértése mellett lehet, hogy érdemes megérteni az [Ethereum stacket](/developers/docs/ethereum-stack/) és az [Ethereum klienseket](/developers/docs/nodes-and-clients/). +A JavaScript megértése mellett lehet érdemes lehet előbb alaposan megismerni az [Ethereum stacket](/developers/docs/ethereum-stack/) és az [Ethereum-klienseket](/developers/docs/nodes-and-clients/). ## Miért használj könyvtárat? {#why-use-a-library} -Ezek a könyvtárak elveszik a komplexitás nagy részét, mely Ethereum csomóponthoz történő közvetlen csatlakozással jár. Ezenkívül használati függvényeket is szolgáltatnak (pl.: ETH konvertálása Gwei-be), így fejlesztőként kevesebb időt kell az Ethereum kliensek bonyodalmaival foglalkoznod és több időd jut egyedi funkcionalitást kialakítani az alkalmazásodnak. +Ezek a könyvtárak elveszik a komplexitás nagy részét, mely Ethereum csomóponthoz történő közvetlen csatlakozással jár. Ezen kívül használati függvényeket is szolgáltatnak (pl.: ETH konvertálása Gwei-be), így fejlesztőként kevesebb időt kell az Ethereum kliensek bonyodalmaival foglalkoznod és több időd jut egyedi funkcionalitást kialakítani az alkalmazásodnak. ## Könyvtár tulajdonságok {#library-features} ### Csatlakozás Ethereum csomóponthoz {#connect-to-ethereum-nodes} -Szolgáltatók használatakor ezen könyvtárak használatával rácsatlakozhatsz az Ethereumra és olvashatod az adatait, legyen az JSON-RPC-n, INFURA-n, Etherscan-en, Alchemy-n vagy MetaMaskon keresztül. +Szolgáltatók használatakor ezen könyvtárak használatával rácsatlakozhat az Ethereumra és kiolvashatja az adatait, függetlenül attól, hogy JSON-RPC, INFURA, Etherscan, Alchemy vagy MetaMask rendszeren keresztül történik. -**Ethers példa** +**Példa az Ethers-re** ```js -// Egy Web3Provider bewrappol egy standard Web3 szolgáltatót, ez az -// amit a MetaMask beinjektál minden oldalra úgy mint, window.ethereum +// A Web3Provider wraps a standard Web3 provider, which is +// what MetaMask injects as window.ethereum into each page const provider = new ethers.providers.Web3Provider(window.ethereum) -// A MetaMask plugin továbbá lehetővé teszi tranzakciók aláírását -// ether küldésekor és hogy kifizessük az állapotváltást a blokkláncon. +// The MetaMask plugin also allows signing transactions to +// send ether and pay to change state within the blockchain. // Ehhez kell egy számla aláíró (account signer)... const signer = provider.getSigner() ``` -**Web3js példa** +**Példa a Web3js-re** ```js var web3 = new Web3("http://localhost:8545") @@ -60,7 +62,7 @@ var web3 = new Web3( // linux rendszerben az elérési út: "/users/myuser/.ethereum/geth.ipc" ``` -Amint be van állítva, lekérdezéseket indíthatsz a blokkláncon a következőkre: +Amint be van állítva, lekérdezéseket indíthat a blokkláncon a következőkre: - blokkszámok - gas becslések @@ -70,9 +72,9 @@ Amint be van állítva, lekérdezéseket indíthatsz a blokkláncon a következ ### Tárca funkcionalitás {#wallet-functionality} -Ezek a könyvtárak funkcionalitást adnak, hogy tárcákat hozz létre, kulcsokat kezelj és tranzakciókat írj alá. +Ezek a könyvtárak funkcionalitást adnak, hogy tárcákat hozzon létre, kulcsokat kezeljen és tranzakciókat írjon alá. -Itt egy Ethers példa +Íme egy példa az Ethers-re ```js //Tárca instance létrehozása emlékeztető erősítőből... @@ -140,9 +142,9 @@ wallet.getTransactionCount() wallet.sendTransaction(tx) ``` -[Olvasd el a teljes dokumentációt](https://docs.ethers.io/v5/api/signer/#Wallet) +[Olvassa el a teljes dokumentációt](https://docs.ethers.io/v5/api/signer/#Wallet) -Ha be van állítva, akkor már tudsz: +Amint be van állítva, a következőket teheti: - számlákat létrehozni - tranzakciókat küldeni @@ -151,9 +153,9 @@ Ha be van állítva, akkor már tudsz: ### Interakció okosszerződés függvényekkel {#interact-with-smart-contract-functions} -A JavaScript kliens könyvtárak lehetővé teszik az alkalmazásod számára, hogy okosszerződés függvényeket hívjanak meg egy befordított szerződés Application Binary Interface-ének (ABI) olvasásával. +A Javascript-kliens könyvtárai lehetővé teszik az alkalmazás számára, hogy okosszerződés-függvényeket hívjanak meg egy befordított szerződés Application Binary Interface-ének (ABI) olvasásával. -Az ABI lényegében elmagyarázza a szerződés függvényeit egy JSON formátumban és lehetővé teszi, hogy normáls JavaScript objectként használd. +Az ABI lényegében elmagyarázza a szerződés függvényeit egy JSON formátumban és lehetővé teszi, hogy normális Javascript-objektumként használja. A következő Solidity szerződés tehát: @@ -215,7 +217,7 @@ Ez azt jelenti, hogy: A használati függvények praktikus könnyítéseke adnak, hogy egyszerűbb legyen az Ethereumon való építés. -Az ETH értékei alapvetően Wei-ben vannak megadva. 1 ETH = 1,000,000,000,000,000,000 WEI – ez azt jelenti, hogy sok számmal kell foglalkoznod! `web3.utils.toWei` átkonvertálja az ethert Wei-re neked. +Az ETH értékei alapvetően Wei-ben vannak megadva. 1 ETH = 1,000,000,000,000,000,000 WEI – ez azt jelenti, hogy sok számmal kell foglalkoznia! `web3.utils.toWei` átkonvertálja az ethert Wei-re. Az ethers-ben így néz ki: @@ -240,12 +242,12 @@ ethers.utils.formatEther(balance) - [Dokumentáció](https://docs.web3js.org/) - [GitHub](https://github.com/ethereum/web3.js/) -**Ethers.js -** **_Teljes Ethereum tárca implementáció és segédprogramok JavaScript-ben és TypeScript-ben._** +**Ethers.js -** **_Teljes Ethereum-tárcaimplementáció és segédprogramok JavaScript-ben és TypeScript-ben._** -- [Dokumentáció](https://docs.ethers.io/ethers.js/html/) +- [Dokumentáció](https://docs.ethers.io/) - [GitHub](https://github.com/ethers-io/ethers.js/) -**The Graph -** **_Egy Ethereum és IPFS adat indexelés és lekérdezés protokoll a GraphQL használatával.._** +**The Graph -** **_Egy Ethereum- és IPFS-adatindexelési és -lekérdezési protokoll a GraphQL használatával._** - [The Graph](https://thegraph.com/) - [Graph Explorer](https://thegraph.com/explorer/) @@ -253,31 +255,41 @@ ethers.utils.formatEther(balance) - [GitHub](https://github.com/graphprotocol/) - [Discord](https://thegraph.com/discord) -**light.js -** **_Egy magas szintű, reaktív JS könyvtár light client-ekre optimalizálva._** +**light.js -** **_Egy magas szintű, reaktív JS könyvtár könnyű kliensekre optimalizálva._** - [GitHub](https://github.com/openethereum/js-libs/tree/master/packages/light.js) -**Web3-wrapper -** **_Typescript Web3.js alternatíva._** +**Web3-wrapper -** **_A Typescript Web3.js alternatíva._** - [Dokumentáció](https://0x.org/docs/web3-wrapper#introduction) - [GitHub](https://github.com/0xProject/0x-monorepo/tree/development/packages/web3-wrapper) -**Alchemyweb3 -** **_Egy Web3.js wrapper automatikus újrapróbálkozásokkal és fejlesztett API-okkal._** +**Alchemyweb3 -** **_Egy Web3.js wrapper automatikus újrapróbálkozásokkal és továbbfejlesztett API-kkal._** - [Dokumentáció](https://docs.alchemy.com/reference/api-overview) - [GitHub](https://github.com/alchemyplatform/alchemy-web3) +**Alchemy NFT API -** **_API az NFT adat megszerzésére, beleértve a tulajdonjogot, metaadatok attribútumait stb._** + +- [Dokumentáció](https://docs.alchemy.com/alchemy/enhanced-apis/nft-api) +- [GitHub](https://github.com/alchemyplatform/alchemy-web3) + +**viem -** **_TypeScript-interfész az Ethereumra._** + +- [Dokumentáció](https://viem.sh) +- [GitHub](https://github.com/wagmi-dev/viem) + ## További olvasnivaló {#further-reading} -_Ismersz olyan közösségi anyagot, mely segített neked? Módosítsd az oldalt és add hozzá!_ +_Van olyan közösségi erőforrása, amely segített Önnek? Szerkessze ezt az oldalt, és adja hozzá!_ ## Kapcsolódó témák {#related-topics} -- [Csomópontok és kliensek](/developers/docs/nodes-and-clients/) +- [ Csomópontok és kliensek](/developers/docs/nodes-and-clients/) - [Fejlesztői keretrendszerek](/developers/docs/frameworks/) ## Kapcsolódó útmutatók {#related-tutorials} -- [Állítsd be a Web3js, hogy JavaScriptben használd az Ethereum blokkláncot](/developers/tutorials/set-up-web3js-to-use-ethereum-in-javascript/) _– Instrukciók arról, hogyan állítsd be a web3.js-t a projektedben._ -- [Okosszerződés hívása JavaScriptből](/developers/tutorials/calling-a-smart-contract-from-javascript/) _– A DAI token használata, hogy lásd hogyan lehet szerződés függvényeket meghívni JavaScript használatával._ -- [Tranzakció küldés web3-mal és Alchemy-vel](/developers/tutorials/sending-transactions-using-web3-and-alchemy/) _– Egy step-by-step útmutató arról, hogyan lehet tranzakciókat küldeni a backendből._ +- [Web3js beállítása az Ethereum-blokklánc használatához JavaScriptben](/developers/tutorials/set-up-web3js-to-use-ethereum-in-javascript/) _– Útmutató a web3.js projektben való beállításához.._ +- [Okosszerződés hívása JavaScriptből](/developers/tutorials/calling-a-smart-contract-from-javascript/) _– A DAI token használatával tekintse meg, hogyan hívhat be szerződéseket a JavaScript segítségével._ +- [Tranzakció küldése web3-mal és Alchemy-vel](/developers/tutorials/sending-transactions-using-web3-and-alchemy/) _– Egy részletes útmutató arról, hogyan lehet tranzakciókat küldeni a backendből._ diff --git a/public/content/translations/hu/developers/docs/apis/json-rpc/index.md b/public/content/translations/hu/developers/docs/apis/json-rpc/index.md new file mode 100644 index 00000000000..23402c798ab --- /dev/null +++ b/public/content/translations/hu/developers/docs/apis/json-rpc/index.md @@ -0,0 +1,1767 @@ +--- +title: JSON-RPC API +description: Egy státuszmentes, könnyű remote procedure call (RPC) protokoll az Ethereum-kliensekhez. +lang: hu +--- + +Ahhoz, hogy egy szoftveralkalmazás interakcióba lépjen az Ethereum blokklánccal –a blokkláncadatokat olvasva vagy tranzakciókat küldve a hálózatra –, rá kell csatlakoznia egy Ethereum-csomópontra. + +Ebből a célból minden [Ethereum-kliens](/developers/docs/nodes-and-clients/#execution-clients) implementálja a [JSON-RPC specifikációt](https://github.com/ethereum/execution-apis), így az alkalmazások egységesen egyféle metóduscsomagra támaszkodhatnak, függetlenül az adott csomópont vagy kliens fajtájától. + +A [JSON-RPC](https://www.jsonrpc.org/specification) egy státuszmentes, könnyű remote procedure call (RPC) protokoll. Számos adatstruktúrát, valamint ezek feldolgozásának szabályait is meghatározza. Ez a megoldás nem függ az átadási módoktól, mivel a koncepciókat használni lehet ugyanabban a folyamatban, socketeknél, HTTP-vel és számos más üzenetküldő környezetben. Az adatformátum JSON (RFC 4627). + +## Kliensimplementációk {#client-implementations} + +Az Ethereum-kliensek mindegyike használhat különböző programozási nyelveket, amikor a JSON-RPC specifikációt implementálja. Tekintse meg az egyéni [kliensdokumentációt](/developers/docs/nodes-and-clients/#execution-clients) további részletekért a specifikus programozási nyelvekről. Érdemes megnézni a kliensdokumentációt a legutóbbi API-támogatási információ miatt is. + +## Kényelmi könyvtárak {#convenience-libraries} + +Választhatja, hogy az Ethereum-kliensekkel közvetlenül kapcsolódik a JSON-RPC API révén, de az alkalmazásfejlesztők rendelkezésére állnak egyszerűbb opciók is. Számos [JavaScript](/developers/docs/apis/javascript/#available-libraries) és [backend API](/developers/docs/apis/backend/#available-libraries) könyvtár létezik, hogy a JSON-RPC API tetejére egy wrappert (burkoló réteget) adjon. Ezekkel a könyvtárakkal a fejlesztők intuitív, egysoros metódusokat írhatnak, hogy JSON-RPC-kérést kezdeményezzenek (a háttérben), amely interakcióba lép az Ethereummal. + +## Konszenzusos kliens API-k {#consensus-clients} + +Ez az írás főleg a JSON-RPC API-val foglalkozik, melyet az Ethereum végrehajtási kliensei használnak. Ugyanakkor a konszenzusos klienseknek is van egy RPC API-ja, amellyel a felhasználók lekérhetnek információkat a csomópontról, Beacon-blokkokról, Beacon-státuszokról és más konszenzussal kapcsolatos adatokról közvetlenül a csomópontról. Ez az API a [Beacon API honlapon](https://ethereum.github.io/beacon-APIs/#/) van dokumentálva. + +Egy belső API-t használnak a kliensek közötti kommunikációra a csomóponton belül, így a konszenzusos kliens és a végrehajtási kliens képes adatot cserélni. Ezt nevezik Motor API-nak, amelynek specifikációja a [GitHubon](https://github.com/ethereum/execution-apis/blob/main/src/engine/common.md) érhető el. + +## Végrehajtási kliens specifikációi {#spec} + +[Tekintse meg a teljes JSON-RPC API specifikációt a GitHubon](https://github.com/ethereum/execution-apis). + +## Egyezmények {#conventions} + +### Hexadecimális értékű kódolás {#hex-encoding} + +Két fontos adattípus megy át a JSON-ön: formázatlan bájttömbök és mennyiségek. Mindkettő hexadecimális kódolásban van elküldve, de más a formázási követelmény. + +#### Mennyiségek {#quantities-encoding} + +A mennyiségek (egész számok, számok) kódolásánál: hexadecimálisban, „0x” előtaggal, a legtömörebb kifejeződésben kell kódolni (kivéve a nullát, mert az „0x0” lesz). + +Néhány példa: + +- 0x41 (65 decimálisban) +- 0x400 (1024 decimálisban) +- HELYTELEN: 0x (legalább egy számjegy még szükséges, a nulla írása „0x0”) +- HELYTELEN: 0x0400 (nem kezdődhet nullával a szám) +- HELYTELEN: ff (a 0x előtagot ki kell tenni) + +### Formázatlan adat {#unformatted-data-encoding} + +Amikor formázatlan adatot (bájtsorok, számlacímek, hashek, bájtkódtömbök) kell kódolni: hexadecimálisban, „0x” előtaggal, két hex számjegy bájtonként. + +Néhány példa: + +- 0x41 (1-es méret, „A”) +- 0x004200 (3-as méret, "\0B\0") +- 0x (size 0, "") +- HELYTELEN: 0xf0f0f (páros számú kell legyen) +- HELYTELEN: 004200 (a 0x előtagot ki kell tenni) + +### Az alapértelmezett blokkparaméter {#default-block} + +A következő metódusok egy extra alapértelmezett blokkparaméterrel rendelkeznek: + +- [eth_getBalance](#eth_getbalance) +- [eth_getCode](#eth_getcode) +- [eth_getTransactionCount](#eth_gettransactioncount) +- [eth_getStorageAt](#eth_getstorageat) +- [eth_call](#eth_call) + +Amikor az Ethereum státuszát érintő kérések érkeznek, akkor a legutolsó alapértelmezett blokkparaméter határozza meg a blokk méretét. + +A defaultBlock paraméter a következők lehetnek: + +- `HEX String` – egy egész szám mint blokkszám +- `String "earliest"` – a legkorábbi/genezis blokk +- `String "latest"` – a legutóbb kibányászott blokk +- `String "safe"` – a blokk legutóbbi biztonságos feje +- `String "finalized"` – a legutóbbi véglegesedett blokk +- `String "pending"` – a függőben lévő státusz/tranzakciók esetében + +## Példák + +Ebben a leírásban példákat mutatunk be, hogyan lehet használni az egyéni JSON_RPC API végpontokat a parancssoreszközzel, ami a [curl](https://curl.se). Ezek az egyéni végpontpéldák a [Curl példák](#curl-examples) szekciókban találhatók alább. Ezek után bemutatunk egy [példát az elejétől a végéig](#usage-example) egy okosszerződés átfordítására és telepítésére egy Geth csomópont, a JSON_RPC API és a curl használatával. + +## Példák a curlre {#curl-examples} + +Alább láthatók azok a példák, amikor a JSON_RPC API-t használjuk egy [curl](https://curl.se) kérést létrehozva egy Ethereum-csomópontnak. Minden példa tartalmazza az adott végpont specifikációit, paramétereit, visszatérési típusát és egy működő példát arról, hogyan kell használni. + +A curl-kérések hibát adhatnak vissza a tartalom típusa miatt. Ennek az az oka, hogy a `--data` opció beállítja a tartalomtípust `application/x-www-form-urlencoded` értékre. Ha az Ön által használt csomópontnak ez nem tetszik, akkor manuálisa állítsa át a fejlécet, hogy a `-H "Content-Type: application/json"` a hívás elején legyen. A példák nem tartalmazzák az URL/IP és port kombinációját, amit a curl utolsó változójaként kell megadni (például `127.0.0.1:8545`). Egy komplett curl-kérés, amely ezeket a plusz adatokat is tartalmazza, így néz ki: + +```shell +curl -H "Content-Type: application/json" -X POST --data '{"jsonrpc":"2.0","method":"web3_clientVersion","params":[],"id":67}' 127.0.0.1:8545 +``` + +## Pletyka, státusz, előzményadatok {#gossip-state-history} + +Néhány központi JSON-RPC metódushoz szükség van az Ethereum hálózati adataira, amelyek általában háromfélék lehetnek: _Pletyka, státusz és előzményadatok_. Az ebben a részben található hivatkozások segítségével az adott metódusra tud lépni, de a tartalomjegyzéket is használhatja a metódusok teljes listájának megtekintéséhez. + +### Pletyka metódusok {#gossip-methods} + +> Ezek a metódusok a lánc fejét követik nyomon. Így kerülnek be tranzakciók a hálózatra, találják meg az útjukat a blokkokba, és az, a kliensek így szereznek tudomást az új blokkokról. + +- [eth_blockNumber](#eth_blocknumber) +- [eth_sendRawTransaction](#eth_sendrawtransaction) + +### Státusz metódusok {#state_methods} + +> Olyan metódusok, melyek az összes tárolt adat jelenlegi státuszát riportálják. A „státusz” olyan, akár egy nagy, megosztott RAM rész, ami számlaegyenlegeket, szerződésadatokat és gázbecsléseket tartalmaz. + +- [eth_getBalance](#eth_getbalance) +- [eth_getStorageAt](#eth_getstorageat) +- [eth_getTransactionCount](#eth_gettransactioncount) +- [eth_getCode](#eth_getcode) +- [eth_call](#eth_call) +- [eth_estimateGas](#eth_estimategas) + +### Előzményadatok metódusok {#history_methods} + +> Minden egyes blokkból képes előzményadatokat lekérni egészen a genezisig. Olyan mint egy hatalmas, egyre bővülő fájl, amely tartalmazza az összes blokkfejlécet, blokkadatot, a szülőblokk testvérblokkjait (ommer/uncle) és a tranzakció-visszaigazolásokat. + +- [eth_getBlockTransactionCountByHash](#eth_getblocktransactioncountbyhash) +- [eth_getBlockTransactionCountByNumber](#eth_getblocktransactioncountbynumber) +- [eth_getUncleCountByBlockHash](#eth_getunclecountbyblockhash) +- [eth_getUncleCountByBlockNumber](#eth_getunclecountbyblocknumber) +- [eth_getBlockByHash](#eth_getblockbyhash) +- [eth_getBlockByNumber](#eth_getblockbynumber) +- [eth_getTransactionByHash](#eth_gettransactionbyhash) +- [eth_getTransactionByBlockHashAndIndex](#eth_gettransactionbyblockhashandindex) +- [eth_getTransactionByBlockNumberAndIndex](#eth_gettransactionbyblocknumberandindex) +- [eth_getTransactionReceipt](#eth_gettransactionreceipt) +- [eth_getUncleByBlockHashAndIndex](#eth_getunclebyblockhashandindex) +- [eth_getUncleByBlockNumberAndIndex](#eth_getunclebyblocknumberandindex) + +## JSON-RPC API metódusok {#json-rpc-methods} + +### web3_clientVersion {#web3_clientversion} + +Visszaadja a jelenlegi kliensverziót. + +**Parameters** + +Egyik sem + +**Returns** + +`String` – A jelenlegi kliensverzió + +**Példa** + +```js +// Request +curl -X POST --data '{"jsonrpc":"2.0","method":"web3_clientVersion","params":[],"id":67}' +// Result +{ + "id":67, + "jsonrpc":"2.0", + "result": "Geth/v1.12.1-stable/linux-amd64/go1.19.1" +} +``` + +### web3_sha3 {#web3_sha3} + +Visszaadja az adott adat keccak-256 szerinti értékét (_nem_ a szabványosított SHA3-256 szerintit). + +**Parameters** + +1. `DATA` – Az adatok átkonvertálva SHA3 hash formátumba + +```js +params: ["0x68656c6c6f20776f726c64"] +``` + +**Returns** + +`DATA` – Az adott sztring SHA3-eredménye. + +**Példa** + +```js +// Request +curl -X POST --data '{"jsonrpc":"2.0","method":"web3_sha3","params":["0x68656c6c6f20776f726c64"],"id":64}' +// Result +{ + "id":64, + "jsonrpc": "2.0", + "result": "0x47173285a8d7341e5e972fc677286384f802f8ef42a5ec5f03bbfa254cb01fad" +} +``` + +### net_version {#net_version} + +Visszaadja a jelenlegi hálózati azonosítót. + +**Parameters** + +Egyik sem + +**Returns** + +`String` – Jelenlegi hálózati azonosító. + +A jelenlegi hálózati azonosítók teljes listája a [chainlist.org](https://chainlist.org) oldalon érhető el. Néhány jellemző példa: + +- `1`: Ethereum főhálózata +- `5`: Goerli teszthálózat +- `11155111`: Sepolia teszthálózat + +**Példa** + +```js +// Request +curl -X POST --data '{"jsonrpc":"2.0","method":"net_version","params":[],"id":67}' +// Result +{ + "id":67, + "jsonrpc": "2.0", + "result": "3" +} +``` + +### net_listening {#net_listening} + +A `true` értéket adja vissza, ha a kliens aktívan hallgatja a hálózati kapcsolatokat. + +**Parameters** + +Egyik sem + +**Returns** + +`Boolean` – `true`, amikor hallgatja, máskülönben `false`. + +**Példa** + +```js +// Request +curl -X POST --data '{"jsonrpc":"2.0","method":"net_listening","params":[],"id":67}' +// Result +{ + "id":67, + "jsonrpc":"2.0", + "result":true +} +``` + +### net_peerCount {#net_peercount} + +Visszaadja a társak számát, amelyek jelenleg a klienshez kapcsolódnak. + +**Parameters** + +Egyik sem + +**Returns** + +`QUANTITY` – a kapcsolódó társak száma egész számként. + +**Példa** + +```js +// Request +curl -X POST --data '{"jsonrpc":"2.0","method":"net_peerCount","params":[],"id":74}' +// Result +{ + "id":74, + "jsonrpc": "2.0", + "result": "0x2" // 2 +} +``` + +### eth_protocolVersion {#eth_protocolversion} + +A jelenlegi Ethereum-protokollverziót adja vissza. Vegye figyelembe, hogy ez a metódus [a Geth-ben nem érhető el](https://github.com/ethereum/go-ethereum/pull/22064#issuecomment-788682924). + +**Parameters** + +Egyik sem + +**Returns** + +`String` – Az Ethereum jelenlegi protokollverziója + +**Példa** + +```js +// Request +curl -X POST --data '{"jsonrpc":"2.0","method":"eth_protocolVersion","params":[],"id":67}' +// Result +{ + "id":67, + "jsonrpc": "2.0", + "result": "54" +} +``` + +### eth_syncing {#eth_syncing} + +Egy objektumot ad vissza a szinkronizálási státuszról szóló adattal vagy `false`. + +**Parameters** + +Egyik sem + +**Returns** + +A pontos visszakapott adat a kliensimplementációk szerint változik. Minden kliens `false` értéket küld, amikor a csomópont nem szinkronizál, és mindegyik elküldi a következő mezőket. + +`Object|Boolean`, egy objektum a szinkronizálási státuszról szóló adattal vagy `false`, amikor nem szinkronizál: + +- `startingBlock`: `QUANTITY` – Az a blokk, amelynél az importálása kezdődött (csak akkor lesz visszaállítva, miután a szinkronizálás elérte a fejet) +- `currentBlock`: `QUANTITY` – A jelenlegi blokk, azonos az eth_blockNumber mezővel +- `highestBlock`: `QUANTITY` – A becsült legnagyobb számú blokk + +Ugyanakkor az egyéni kliensek további adatokat is adhatnak. A Geth például ezt küldi vissza: + +```json +{ + "jsonrpc": "2.0", + "id": 1, + "result": { + "currentBlock": "0x3cf522", + "healedBytecodeBytes": "0x0", + "healedBytecodes": "0x0", + "healedTrienodes": "0x0", + "healingBytecode": "0x0", + "healingTrienodes": "0x0", + "highestBlock": "0x3e0e41", + "startingBlock": "0x3cbed5", + "syncedAccountBytes": "0x0", + "syncedAccounts": "0x0", + "syncedBytecodeBytes": "0x0", + "syncedBytecodes": "0x0", + "syncedStorage": "0x0", + "syncedStorageBytes": "0x0" + } +} +``` + +Amíg a Besu ezt küldi vissza: + +```json +{ + "jsonrpc": "2.0", + "id": 51, + "result": { + "startingBlock": "0x0", + "currentBlock": "0x1518", + "highestBlock": "0x9567a3", + "pulledStates": "0x203ca", + "knownStates": "0x200636" + } +} +``` + +Tekintse meg az adott kliens dokumentációját a további adatokért. + +**Példa** + +```js +// Request +curl -X POST --data '{"jsonrpc":"2.0","method":"eth_syncing","params":[],"id":1}' +// Result +{ + "id":1, + "jsonrpc": "2.0", + "result": { + startingBlock: '0x384', + currentBlock: '0x386', + highestBlock: '0x454' + } +} +// Or when not syncing +{ + "id":1, + "jsonrpc": "2.0", + "result": false +} +``` + +### eth_coinbase {#eth_coinbase} + +A kliens coinbase-címét adja vissza. + +**Parameters** + +Egyik sem + +**Returns** + +`DATA`, 20 bájt – a jelenlegi coinbase címe. + +**Példa** + +```js +// Request +curl -X POST --data '{"jsonrpc":"2.0","method":"eth_coinbase","params":[],"id":64}' +// Result +{ + "id":64, + "jsonrpc": "2.0", + "result": "0x407d73d8a49eeb85d32cf465507dd71d507100c1" +} +``` + +### eth_chainId {#eth_chainId} + +Visszaadja a láncazonosítót, amellyel az újrajátszástól védett tranzakciókat írják alá. + +**Parameters** + +Egyik sem + +**Returns** + +`chainId`, hexadecimális érték mint sztring, amely a jelenlegi láncazonosítót mutatja egész számként. + +**Példa** + +```js +// Request +curl -X POST --data '{"jsonrpc":"2.0","method":"eth_chainId","params":[],"id":67}' +// Result +{ + "id":67, + "jsonrpc": "2.0", + "result": "0x1" +} +``` + +### eth_mining {#eth_mining} + +A visszaadott érték `true`, ha a kliens aktívan bányászik új blokkokat. Ez csak proof-of-work hálózatok esetén küld vissza `true` értéket, és talán a [egyesítés (Merge)](/roadmap/merge/) óta nincs is benne minden kliensben. + +**Parameters** + +Egyik sem + +**Returns** + +`Boolean` – `true` értéket ad vissza, ha a kliens bányászik, különben `false`. + +**Példa** + +```js +// Request +curl -X POST --data '{"jsonrpc":"2.0","method":"eth_mining","params":[],"id":71}' +// +{ + "id":71, + "jsonrpc": "2.0", + "result": true +} +``` + +### eth_hashrate {#eth_hashrate} + +Visszaadja a hashek számát másodpercenként, amellyel a csomópont a bányászatot végzi. Ez csak proof-of-work hálózatok esetén küld vissza `true` értéket, és talán a [egyesítés (Merge)](/roadmap/merge/) óta nincs is benne minden kliensben. + +**Parameters** + +Egyik sem + +**Returns** + +`QUANTITY` – hashek száma másodpercenként. + +**Példa** + +```js +// Request +curl -X POST --data '{"jsonrpc":"2.0","method":"eth_hashrate","params":[],"id":71}' +// Result +{ + "id":71, + "jsonrpc": "2.0", + "result": "0x38a" +} +``` + +### eth_gasPrice {#eth_gasprice} + +Visszaadja a jelenlegi becsült gázárat wei-ben. Például a Besu kliens megvizsgálja az utolsó 100 blokkot, és a gáz egységárának mediánját küldi vissza alapból. + +**Parameters** + +Egyik sem + +**Returns** + +`QUANTITY` – a jelenlegi gázár wei-ben egész számként. + +**Példa** + +```js +// Request +curl -X POST --data '{"jsonrpc":"2.0","method":"eth_gasPrice","params":[],"id":73}' +// Result +{ + "id":73, + "jsonrpc": "2.0", + "result": "0x1dfd14000" // 8049999872 Wei +} +``` + +### eth_accounts {#eth_accounts} + +A kliens által birtokolt címek listáját adja vissza. + +**Parameters** + +Egyik sem + +**Returns** + +`Array of DATA`, 20 bájt – a kliens által birtokolt címek. + +**Példa** + +```js +// Request +curl -X POST --data '{"jsonrpc":"2.0","method":"eth_accounts","params":[],"id":1}' +// Result +{ + "id":1, + "jsonrpc": "2.0", + "result": ["0x407d73d8a49eeb85d32cf465507dd71d507100c1"] +} +``` + +### eth_blockNumber {#eth_blocknumber} + +A legutóbbi blokk számát adja vissza. + +**Parameters** + +Egyik sem + +**Returns** + +`QUANTITY` – a legutóbbi blokk száma egész számként, amelynél a kliens tart. + +**Példa** + +```js +// Request +curl -X POST --data '{"jsonrpc":"2.0","method":"eth_blockNumber","params":[],"id":83}' +// Result +{ + "id":83, + "jsonrpc": "2.0", + "result": "0x4b7" // 1207 +} +``` + +### eth_getBalance {#eth_getbalance} + +Az adott cím számlaegyenlegét adja vissza. + +**Parameters** + +1. `DATA`, 20 bájt – cím, melynek az egyenlegét ellenőrizzük. +2. `QUANTITY|TAG` – a blokk száma egész számként, vagy a `"latest"`, `"earliest"` vagy `"pending"` sztringek – nézze meg az [alapértelmezett blokkparamétereket](/developers/docs/apis/json-rpc/#default-block) + +```js +params: ["0x407d73d8a49eeb85d32cf465507dd71d507100c1", "latest"] +``` + +**Returns** + +`QUANTITY` – a jelenlegi egyenleg wei-ben egész számként. + +**Példa** + +```js +// Request +curl -X POST --data '{"jsonrpc":"2.0","method":"eth_getBalance","params":["0x407d73d8a49eeb85d32cf465507dd71d507100c1", "latest"],"id":1}' +// Result +{ + "id":1, + "jsonrpc": "2.0", + "result": "0x0234c8a3397aab58" // 158972490234375000 +} +``` + +### eth_getStorageAt {#eth_getstorageat} + +Egy adott címen lévő tárhely pozícióját adja vissza. + +**Parameters** + +1. `DATA`, 20 bájt – a tárhely címe. +2. `QUANTITY` – a tárhelyben lévő pozíció egész számként. +3. `QUANTITY|TAG` – a blokk száma egész számként, vagy a `"latest"`, `"earliest"` vagy `"pending"` sztringek – nézze meg az [alapértelmezett blokkparamétereket](/developers/docs/apis/json-rpc/#default-block) + +**Returns** + +`DATA` – az adott tárhelypozíció értéke. + +**Példa** Kiszámolja a pontos pozíciót, a visszakapott tárhely függvényében. Vegyük a következő szerződést, ami itt van telepítve: `0x295a70b2de5e3953354a6a8344e616ed314d7251`, ezzel a címmel:`0x391694e7e0b0cce554cb130d723a9d27458f9298`. + +``` +contract Storage { + uint pos0; + mapping(address => uint) pos1; + function Storage() { + pos0 = 1234; + pos1[msg.sender] = 5678; + } +} +``` + +A pos0 érték megszerzése egyértelmű: + +```js +curl -X POST --data '{"jsonrpc":"2.0", "method": "eth_getStorageAt", "params": ["0x295a70b2de5e3953354a6a8344e616ed314d7251", "0x0", "latest"], "id": 1}' localhost:8545 +{"jsonrpc":"2.0","id":1,"result":"0x00000000000000000000000000000000000000000000000000000000000004d2"} +``` + +A térkép egyik elemének megszerzése már nehezebb. A térképen egy elem pozícióját így kalkuláljuk: + +```js +keccack(LeftPad32(key, 0), LeftPad32(map position, 0)) +``` + +Ahhoz, hogy megszerezzük a tárhelyet a pos1["0x391694e7e0b0cce554cb130d723a9d27458f9298"] tekintetében, a pozíciót így kell kalkulálni: + +```js +keccak( + decodeHex( + "000000000000000000000000391694e7e0b0cce554cb130d723a9d27458f9298" + + "0000000000000000000000000000000000000000000000000000000000000001" + ) +) +``` + +A web3-könyvtárban található Geth konzolt lehet használni a kalkulációhoz: + +```js +> var key = "000000000000000000000000391694e7e0b0cce554cb130d723a9d27458f9298" + "0000000000000000000000000000000000000000000000000000000000000001" +undefined +> web3.sha3(key, {"encoding": "hex"}) +"0x6661e9d6d8b923d5bbaab1b96e1dd51ff6ea2a93520fdc9eb75d059238b8c5e9" +``` + +Most pedig a tárhely megszerzése: + +```js +curl -X POST --data '{"jsonrpc":"2.0", "method": "eth_getStorageAt", "params": ["0x295a70b2de5e3953354a6a8344e616ed314d7251", "0x6661e9d6d8b923d5bbaab1b96e1dd51ff6ea2a93520fdc9eb75d059238b8c5e9", "latest"], "id": 1}' localhost:8545 +{"jsonrpc":"2.0","id":1,"result":"0x000000000000000000000000000000000000000000000000000000000000162e"} +``` + +### eth_getTransactionCount {#eth_gettransactioncount} + +Visszaadja a tranzakciók számát, amelyeket egy adott címről _küldtek_. + +**Parameters** + +1. `DATA`, 20 bájt – cím. +2. `QUANTITY|TAG` – a blokk száma egész számként, vagy a `"latest"`, `"earliest"` vagy `"pending"` sztringek – nézze meg az [alapértelmezett blokkparamétereket](/developers/docs/apis/json-rpc/#default-block) + +```js +params: [ + "0x407d73d8a49eeb85d32cf465507dd71d507100c1", + "latest", // state at the latest block +] +``` + +**Returns** + +`QUANTITY` – a tranzakciók száma egész számként, amit erről a címről küldtek. + +**Példa** + +```js +// Request +curl -X POST --data '{"jsonrpc":"2.0","method":"eth_getTransactionCount","params":["0x407d73d8a49eeb85d32cf465507dd71d507100c1","latest"],"id":1}' +// Result +{ + "id":1, + "jsonrpc": "2.0", + "result": "0x1" // 1 +} +``` + +### eth_getBlockTransactionCountByHash {#eth_getblocktransactioncountbyhash} + +Visszaadja a tranzakciók számát egy blokkban, egy olyan blokkból, mely egyezik a megadott blokkhashsel. + +**Parameters** + +1. `DATA`, 32 bájt – blokkhash + +```js +params: ["0xb903239f8543d04b5dc1ba6579132b143087c68db1b2168786408fcbce568238"] +``` + +**Returns** + +`QUANTITY` – ebben a blokkban lévő tranzakciók száma egész számként. + +**Példa** + +```js +// Request +curl -X POST --data '{"jsonrpc":"2.0","method":"eth_getBlockTransactionCountByHash","params":["0xb903239f8543d04b5dc1ba6579132b143087c68db1b2168786408fcbce568238"],"id":1}' +// Result +{ + "id":1, + "jsonrpc": "2.0", + "result": "0xb" // 11 +} +``` + +### eth_getBlockTransactionCountByNumber {#eth_getblocktransactioncountbynumber} + +Visszaadja a tranzakciók számát egy blokkban, amely az adott blokkszámnak felel meg. + +**Parameters** + +1. `QUANTITY|TAG` – a blokkszáma egész számként, vagy a `"earliest"`, `"latest"` vagy `"pending"` sztringek, az [alapértelmezett blokkparaméterek](/developers/docs/apis/json-rpc/#default-block) szerint. + +```js +params: [ + "0xe8", // 232 +] +``` + +**Returns** + +`QUANTITY` – ebben a blokkban lévő tranzakciók száma egész számként. + +**Példa** + +```js +// Request +curl -X POST --data '{"jsonrpc":"2.0","method":"eth_getBlockTransactionCountByNumber","params":["0xe8"],"id":1}' +// Result +{ + "id":1, + "jsonrpc": "2.0", + "result": "0xa" // 10 +} +``` + +### eth_getUncleCountByBlockHash {#eth_getunclecountbyblockhash} + +Visszaadja az uncle-blokkok számát egy olyan blokkból, ami a blokkhashnek megfelel. + +**Parameters** + +1. `DATA`, 32 bájt – blokkhash + +```js +params: ["0xb903239f8543d04b5dc1ba6579132b143087c68db1b2168786408fcbce568238"] +``` + +**Returns** + +`QUANTITY` – ebben a blokkban az uncle-blokkok száma egész számként. + +**Példa** + +```js +// Request +curl -X POST --data '{"jsonrpc":"2.0","method":"eth_getUncleCountByBlockHash","params":["0xb903239f8543d04b5dc1ba6579132b143087c68db1b2168786408fcbce568238"],"id":1}' +// Result +{ + "id":1, + "jsonrpc": "2.0", + "result": "0x1" // 1 +} +``` + +### eth_getUncleCountByBlockNumber {#eth_getunclecountbyblocknumber} + +Visszaadja az uncle-blokkok számát egy olyan blokkból, ami egy adott blokkszámnak megfelel. + +**Parameters** + +1. `QUANTITY|TAG` – a blokkszáma egész számként, vagy a "latest", "earliest" vagy "pending" sztringek, nézze meg az [alapértelmezett blokkparamétereket](/developers/docs/apis/json-rpc/#default-block) + +```js +params: [ + "0xe8", // 232 +] +``` + +**Returns** + +`QUANTITY` – ebben a blokkban az uncle-blokkok száma egész számként. + +**Példa** + +```js +// Request +curl -X POST --data '{"jsonrpc":"2.0","method":"eth_getUncleCountByBlockNumber","params":["0xe8"],"id":1}' +// Result +{ + "id":1, + "jsonrpc": "2.0", + "result": "0x1" // 1 +} +``` + +### eth_getCode {#eth_getcode} + +Visszaadja az adott címen lévő kódot. + +**Parameters** + +1. `DATA`, 20 bájt – cím +2. `QUANTITY|TAG` – a blokk száma egész számként, vagy a `"latest"`, `"earliest"` vagy `"pending"` sztringek – nézze meg az [alapértelmezett blokkparamétereket](/developers/docs/apis/json-rpc/#default-block) + +```js +params: [ + "0xa94f5374fce5edbc8e2a8697c15331677e6ebf0b", + "0x2", // 2 +] +``` + +**Returns** + +`DATA` – a kód az adott címről. + +**Példa** + +```js +// Request +curl -X POST --data '{"jsonrpc":"2.0","method":"eth_getCode","params":["0xa94f5374fce5edbc8e2a8697c15331677e6ebf0b", "0x2"],"id":1}' +// Result +{ + "id":1, + "jsonrpc": "2.0", + "result": "0x600160008035811a818181146012578301005b601b6001356025565b8060005260206000f25b600060078202905091905056" +} +``` + +### eth_sign {#eth_sign} + +Az aláírás metódus kikalkulál egy Ethereum-specifikus aláírást a következővel: `sign(keccak256("\x19Ethereum Signed Message:\n" + len(message) + message)))`. + +Ha az üzenethez egy előtagot adunk, akkor a kikalkulált aláírást úgy ismeri fel, mint Ethereum-specifikus aláírás. Ez megakadályozza a rosszhiszemű felhasználást, amikor egy támadó alkalmazás tetszőleges adatokat (például tranzakciókat) ír alá, és arra használja az aláírást, hogy megszemélyesítse áldozatát. + +Megjegyzés: az aláíráshoz olyan cím kell, amely nincs zárolva. + +**Parameters** + +1. `DATA`, 20 bájt – cím +2. `DATA`, N bájt – az aláírandó üzenet + +**Returns** + +`DATA`: Aláírás + +**Példa** + +```js +// Request +curl -X POST --data '{"jsonrpc":"2.0","method":"eth_sign","params":["0x9b2055d370f73ec7d8a03e965129118dc8f5bf83", "0xdeadbeaf"],"id":1}' +// Result +{ + "id":1, + "jsonrpc": "2.0", + "result": "0xa3f20717a250c2b0b729b7e5becbff67fdaef7e0699da4de7ca5895b02a170a12d887fd3b17bfdce3481f10bea41f45ba9f709d39ce8325427b57afcfc994cee1b" +} +``` + +### eth_signTransaction {#eth_signtransaction} + +Aláír egy olyan tranzakciót, amelyet egy későbbi időpontban be lehet küldeni a hálózatra az [eth_sendRawTransaction](#eth_sendrawtransaction) segítségével. + +**Parameters** + +1. `Object` – A tranzakcióobjektum + +- `type`: +- `from`: `DATA`, 20 bájt – A cím, amelyről a tranzakció érkezett. +- `to`: `DATA`, 20 bájt – (opcionális új szerződés létrehozásakor) A tranzakció címzettjének címe. +- `gas`: `QUANTITY` – (opcionális, alapértelmezett: 90 000) A tranzakció végrehajtásához biztosított gáz egész számban megadva. Visszaküldi a fel nem használt gázt. +- `gasPrice`: `QUANTITY` – (opcionális, alapértelmezett: To-Be-Determined) a gasPrice (gázár) egész számként, ami a wei-ben fizetendő gázra vonatkozik. +- `value`: `QUANTITY` – (opcionális) a tranzakcióban küldött érték egész számként, wei-ben. +- `data`: `DATA` – A szerződés kódjának átfordítása VAGY a meghívott metódus aláírásának és kódolt paramétereinek a hashe. +- `nonce`: `QUANTITY` – (opcionális) A nonce egész számmal megadva. Ez lehetővé teszi a saját függőben lévő tranzakciók felülírását, amelyek ugyanazt a nonce-t használják. + +**Returns** + +`DATA`, Az RLP-kódolású tranzakcióobjektum, melyet a specifikus számla aláírt. + +**Példa** + +```js +// Request +curl -X POST --data '{"id": 1,"jsonrpc": "2.0","method": "eth_signTransaction","params": [{"data":"0xd46e8dd67c5d32be8d46e8dd67c5d32be8058bb8eb970870f072445675058bb8eb970870f072445675","from": "0xb60e8dd61c5d32be8058bb8eb970870f07233155","gas": "0x76c0","gasPrice": "0x9184e72a000","to": "0xd46e8dd67c5d32be8058bb8eb970870f07244567","value": "0x9184e72a"}]}' +// Result +{ + "id": 1, + "jsonrpc": "2.0", + "result": "0xa3f20717a250c2b0b729b7e5becbff67fdaef7e0699da4de7ca5895b02a170a12d887fd3b17bfdce3481f10bea41f45ba9f709d39ce8325427b57afcfc994cee1b" +} +``` + +### eth_sendTransaction {#eth_sendtransaction} + +Készít egy új üzenetküldési tranzakciót vagy szerződéslétrehozást, ha az adatmezőben kód van, és aláírja a `from` mezőben definiált számlával. + +**Parameters** + +1. `Object` – A tranzakcióobjektum + +- `from`: `DATA`, 20 bájt – A cím, amelyről a tranzakció érkezett. +- `to`: `DATA`, 20 bájt – (opcionális új szerződés létrehozásakor) A tranzakció címzettjének címe. +- `gas`: `QUANTITY` – (opcionális, alapértelmezett: 90 000) A tranzakció végrehajtásához biztosított gáz egész számban megadva. Visszaküldi a fel nem használt gázt. +- `gasPrice`: `QUANTITY` – (opcionális, alapértelmezett: To-Be-Determined) a gasPrice (gázár) egész számként, ami a fizetendő gázra vonatkozik. +- `value`: `QUANTITY` – (opcionális) a tranzakcióban küldött érték egész számként. +- `input`: `DATA` – A szerződés kódjának átfordítása VAGY a meghívott metódus aláírásának és kódolt paramétereinek a hashe. +- `nonce`: `QUANTITY` – (opcionális) A nonce egész számmal megadva. Ez lehetővé teszi a saját függőben lévő tranzakciók felülírását, amelyek ugyanazt a nonce-t használják. + +```js +params: [ + { + from: "0xb60e8dd61c5d32be8058bb8eb970870f07233155", + to: "0xd46e8dd67c5d32be8058bb8eb970870f07244567", + gas: "0x76c0", // 30400 + gasPrice: "0x9184e72a000", // 10000000000000 + value: "0x9184e72a", // 2441406250 + input: + "0xd46e8dd67c5d32be8d46e8dd67c5d32be8058bb8eb970870f072445675058bb8eb970870f072445675", + }, +] +``` + +**Returns** + +`DATA`, 32 bájt – a tranzakció hashe vagy a nulla hash, ha a tranzakció még nem elérhető. + +Használja az [eth_getTransactionReceipt](#eth_gettransactionreceipt) parancsot, hogy megszerezze a szerződéscímet, miután a tranzakciót kibányászták, és amikor létrehozta a szerződést. + +**Példa** + +```js +// Request +curl -X POST --data '{"jsonrpc":"2.0","method":"eth_sendTransaction","params":[{see above}],"id":1}' +// Result +{ + "id":1, + "jsonrpc": "2.0", + "result": "0xe670ec64341771606e55d6b4ca35a1a6b75ee3d5145a99d05921026d1527331" +} +``` + +### eth_sendRawTransaction {#eth_sendrawtransaction} + +Egy új üzenetküldési tranzakciót vagy szerződéslétrehozást hoz létre az aláírt tranzakciókhoz. + +**Parameters** + +1. `DATA`, az aláírt tranzakciós adatok. + +```js +params: [ + "0xd46e8dd67c5d32be8d46e8dd67c5d32be8058bb8eb970870f072445675058bb8eb970870f072445675", +] +``` + +**Returns** + +`DATA`, 32 bájt – a tranzakció hashe vagy a nulla hash, ha a tranzakció még nem elérhető. + +Használja az [eth_getTransactionReceipt](#eth_gettransactionreceipt) parancsot, hogy megszerezze a szerződéscímet, miután a tranzakciót kibányászták, és amikor létrehozta a szerződést. + +**Példa** + +```js +// Request +curl -X POST --data '{"jsonrpc":"2.0","method":"eth_sendRawTransaction","params":[{see above}],"id":1}' +// Result +{ + "id":1, + "jsonrpc": "2.0", + "result": "0xe670ec64341771606e55d6b4ca35a1a6b75ee3d5145a99d05921026d1527331" +} +``` + +### eth_call {#eth_call} + +Azonnal végrehajt egy új üzenethívást anélkül, hogy létrehozna egy tranzakciót a blokkláncon. Gyakran használják arra, hogy csak olvasási (read-only) okosszerződés-függvényeket hajtsanak végre, például a `balanceOf` kód egy ERC-20-as szerződésnél. + +**Parameters** + +1. `Object` – A tranzakcióhívás objektuma + +- `from`: `DATA`, 20 bájt – (opcionális) A tranzakció küldőjének címe. +- `to`: `DATA`, 20 bájt – A tranzakció címzettjének címe. +- `gas`: `QUANTITY` – (opcionális) A tranzakció végrehajtásához adott gáz egész számként. Az eth_call nulla gázt fogyaszt, de néhány végrehajtásnak szüksége lehet rá. +- `gasPrice`: `QUANTITY` – (opcionális) a gasPrice (gázár) egész számként, ami a fizetendő gázra vonatkozik +- `value`: `QUANTITY` – (opcionális) a tranzakcióban küldött érték egész számként +- `input`: `DATA` – (opcionális) a metódus aláírásának és kódolt paramétereinek a hashe. A részletekért tekintse meg az [Ethereum-szerződés ABI-ját a Solidity dokumentációban](https://docs.soliditylang.org/en/latest/abi-spec.html). + +2. `QUANTITY|TAG` – a blokk száma egész számként, vagy a `"latest"`, `"earliest"` vagy `"pending"` sztringek – nézze meg az [alapértelmezett blokkparamétereket](/developers/docs/apis/json-rpc/#default-block) + +**Returns** + +`DATA` – a végrehajtott szerződés visszatérési értéke. + +**Példa** + +```js +// Request +curl -X POST --data '{"jsonrpc":"2.0","method":"eth_call","params":[{see above}],"id":1}' +// Result +{ + "id":1, + "jsonrpc": "2.0", + "result": "0x" +} +``` + +### eth_estimateGas {#eth_estimategas} + +Megbecsüli, hogy egy tranzakció végrehajtásához mennyi gázra lesz szükség. A tranzakció nem kerül hozzáadásra a blokklánchoz. Vegye figyelembe, hogy a becslés szignifikánsan több is lehet, mint amennyit elhasznál a tranzakció, melynek számos oka van, beleértve az EVM működési módját és a csomópontok teljesítményét. + +**Parameters** + +Nézze meg az [eth_call](#eth_call) paramétereit az összes opcionális paraméter kivételével. Ha nincs megadva gázkorlátozás, akkor a Geth a függőben lévő blokk gázkorlátozását használja felső értékként. Ennek eredményeként a visszakapott becslés talán nem elég a hívás/tranzakció végrehajtásához, amikor a gáz mennyisége magasabb, mint a függőben lévő blokk gázkorlátozása. + +**Returns** + +`QUANTITY` – a felhasznált gáz mennyisége. + +**Példa** + +```js +// Request +curl -X POST --data '{"jsonrpc":"2.0","method":"eth_estimateGas","params":[{see above}],"id":1}' +// Result +{ + "id":1, + "jsonrpc": "2.0", + "result": "0x5208" // 21000 +} +``` + +### eth_getBlockByHash {#eth_getblockbyhash} + +Egy blokkról ad információt hash alapján. + +**Parameters** + +1. `DATA`, 32 bájt – egy blokk hashe. +2. `Boolean` – Ha `true`, akkor visszaadja a teljes tranzakcióobjektumot, ha `false`, akkor csak a tranzakciók hashét. + +```js +params: [ + "0xdc0818cf78f21a8e70579cb46a43643f78291264dda342ae31049421c82d21ae", + false, +] +``` + +**Returns** + +`Object` – Egy blokkobjektum, vagy `null`, amikor nem talál blokkot: + +- `number`: `QUANTITY` – a blokkszám. `null`, amikor a blokk függőben van. +- `hash`: `DATA`, 32 bájt – a blokk hashe. `null`, amikor a blokk függőben van. +- `parentHash`: `DATA`, 32 bájt – a szülőblokk hashe. +- `nonce`: `DATA`, 8 bájt – a létrehozott proof-of-work hashe. `null`, amikor a blokk függőben van. +- `sha3Uncles`: `DATA`, 32 bájt – a blokkban lévő uncle blokkok SHA3-ja. +- `logsBloom`: `DATA`, 256 bájt – a bloom-szűrés a blokkok naplózására. `null`, amikor a blokk függőben van. +- `transactionsRoot`: `DATA`, 32 bájt – a blokk tranzakciós fájának a gyökere. +- `stateRoot`: `DATA`, 32 bájt – a blokk végső státuszfájának a gyökere. +- `receiptsRoot`: `DATA`, 32 bájt – a blokk visszaigazolás-fájának a gyökere. +- `miner`: `DATA`, 20 bájt – annak a címe, akinek a bányászati jutalom jár. +- `difficulty`: `QUANTITY` – erre a blokkra vonatkozó nehézség egész számként. +- `totalDifficulty`: `QUANTITY` – a lánc teljes nehézsége eddig a blokkig, egész számként. +- `extraData`: `DATA` – ennek a blokknak a „további adatok” mezője. +- `size`: `QUANTITY` – a blokk mérete bájtban, egész számként. +- `gasLimit`: `QUANTITY` – a maximálisan megengedett gáz ebben a blokkban. +- `gasUsed`: `QUANTITY` – a tranzakciók által elhasznált összes gáz ebben a blokkban. +- `timestamp`: `QUANTITY` – a unix időbélyege, amikor a blokkot összeállították. +- `transactions`: `Array` – Tranzakcióobjektumok tömbje, vagy 32 bájtos tranzakcióhashek az utolsó megadott paraméter alapján. +- `uncles`: `Array` – Az uncle hashek sora. + +**Példa** + +```js +// Request +curl -X POST --data '{"jsonrpc":"2.0","method":"eth_getBlockByHash","params":["0xdc0818cf78f21a8e70579cb46a43643f78291264dda342ae31049421c82d21ae", false],"id":1}' +// Result +{ +{ +"jsonrpc": "2.0", +"id": 1, +"result": { + "difficulty": "0x4ea3f27bc", + "extraData": "0x476574682f4c5649562f76312e302e302f6c696e75782f676f312e342e32", + "gasLimit": "0x1388", + "gasUsed": "0x0", + "hash": "0xdc0818cf78f21a8e70579cb46a43643f78291264dda342ae31049421c82d21ae", + "logsBloom": "0x00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "miner": "0xbb7b8287f3f0a933474a79eae42cbca977791171", + "mixHash": "0x4fffe9ae21f1c9e15207b1f472d5bbdd68c9595d461666602f2be20daf5e7843", + "nonce": "0x689056015818adbe", + "number": "0x1b4", + "parentHash": "0xe99e022112df268087ea7eafaf4790497fd21dbeeb6bd7a1721df161a6657a54", + "receiptsRoot": "0x56e81f171bcc55a6ff8345e692c0f86e5b48e01b996cadc001622fb5e363b421", + "sha3Uncles": "0x1dcc4de8dec75d7aab85b567b6ccd41ad312451b948a7413f0a142fd40d49347", + "size": "0x220", + "stateRoot": "0xddc8b0234c2e0cad087c8b389aa7ef01f7d79b2570bccb77ce48648aa61c904d", + "timestamp": "0x55ba467c", + "totalDifficulty": "0x78ed983323d", + "transactions": [ + ], + "transactionsRoot": "0x56e81f171bcc55a6ff8345e692c0f86e5b48e01b996cadc001622fb5e363b421", + "uncles": [ + ] +} +} +``` + +### eth_getBlockByNumber {#eth_getblockbynumber} + +Egy blokkról ad információt a blokkszám alapján. + +**Parameters** + +1. `QUANTITY|TAG` – a blokkszáma egész számként, vagy a `"earliest"`, `"latest"` vagy `"pending"` sztringek, az [alapértelmezett blokkparaméterek](/developers/docs/apis/json-rpc/#default-block) szerint. +2. `Boolean` – Ha `true`, akkor visszaadja a teljes tranzakcióobjektumot, ha `false`, akkor csak a tranzakciók hashét. + +```js +params: [ + "0x1b4", // 436 + true, +] +``` + +**Visszaküldött információk** Nézze meg az [eth_getBlockByHash](#eth_getblockbyhash) résznél + +**Példa** + +```js +// Request +curl -X POST --data '{"jsonrpc":"2.0","method":"eth_getBlockByNumber","params":["0x1b4", true],"id":1}' +``` + +Az eredményeket nézze meg az [eth_getBlockByHash](#eth_getblockbyhash) résznél + +### eth_getTransactionByHash {#eth_gettransactionbyhash} + +Információt ad egy tranzakcióról a tranzakció hashe alapján. + +**Parameters** + +1. `DATA`, 32 bájt – tranzakció-hash + +```js +params: ["0x88df016429689c079f3b2f6ad39fa052532c56795b733da78a91ebe6a713944b"] +``` + +**Returns** + +`Object` – Egy tranzakcióobjektum, vagy `null`, amikor nem talál tranzakciót: + +- `blockHash`: `DATA`, 32 bájt – a blokk-hash, amelyben ez a tranzakció volt. `null`, amikor függőben van. +- `blockNumber`: `QUANTITY` – a blokkszám, amelyben ez a tranzakció volt. `null`, amikor függőben van. +- `from`: `DATA`, 20 bájt – a küldő címe. +- `gas`: `QUANTITY` – a küldő által adott gáz. +- `gasPrice`: `QUANTITY` – a küldő által megadott gázár wei-ben. +- `hash`: `DATA`, 32 bájt – a tranzakció hashe. +- `input`: `DATA` – a tranzakcióval együtt küldött adatok. +- `nonce`: `QUANTITY` – a tranzakciók száma, melyet a küldő az adott tranzakció előtt végzett. +- `to`: `DATA`, 20 bájt – a fogadó címe. `null`, amikor ez egy szerződéslétrehozó tranzakció. +- `transactionIndex`: `QUANTITY` – a tranzakcióindex pozíciója a blokkban, egész számként. `null`, amikor függőben van. +- `value`: `QUANTITY` – a küldött érték wei-ben. +- `v`: `QUANTITY` – ECDSA visszaállítási azonosító +- `r`: `QUANTITY` – ECDSA aláírás r +- `s`: `QUANTITY` – ECDSA aláírás s + +**Példa** + +```js +// Request +curl -X POST --data '{"jsonrpc":"2.0","method":"eth_getTransactionByHash","params":["0x88df016429689c079f3b2f6ad39fa052532c56795b733da78a91ebe6a713944b"],"id":1}' +// Result +{ + "jsonrpc":"2.0", + "id":1, + "result":{ + "blockHash":"0x1d59ff54b1eb26b013ce3cb5fc9dab3705b415a67127a003c3e61eb445bb8df2", + "blockNumber":"0x5daf3b", // 6139707 + "from":"0xa7d9ddbe1f17865597fbd27ec712455208b6b76d", + "gas":"0xc350", // 50000 + "gasPrice":"0x4a817c800", // 20000000000 + "hash":"0x88df016429689c079f3b2f6ad39fa052532c56795b733da78a91ebe6a713944b", + "input":"0x68656c6c6f21", + "nonce":"0x15", // 21 + "to":"0xf02c1c8e6114b1dbe8937a39260b5b0a374432bb", + "transactionIndex":"0x41", // 65 + "value":"0xf3dbb76162000", // 4290000000000000 + "v":"0x25", // 37 + "r":"0x1b5e176d927f8e9ab405058b2d2457392da3e20f328b16ddabcebc33eaac5fea", + "s":"0x4ba69724e8f69de52f0125ad8b3c5c2cef33019bac3249e2c0a2192766d1721c" + } +} +``` + +### eth_getTransactionByBlockHashAndIndex {#eth_gettransactionbyblockhashandindex} + +Egy tranzakcióról ad információt a blokk-hash és a tranzakcióindex pozíciója alapján. + +**Parameters** + +1. `DATA`, 32 bájt – egy blokk hashe. +2. `QUANTITY` – a tranzakcióindex pozíciója egész számként. + +```js +params: [ + "0xe670ec64341771606e55d6b4ca35a1a6b75ee3d5145a99d05921026d1527331", + "0x0", // 0 +] +``` + +**Visszaküldött információk** Nézze meg az [eth_getTransactionByHash](#eth_gettransactionbyhash) résznél + +**Példa** + +```js +// Request +curl -X POST --data '{"jsonrpc":"2.0","method":"eth_getTransactionByBlockHashAndIndex","params":["0xc6ef2fc5426d6ad6fd9e2a26abeab0aa2411b7ab17f30a99d3cb96aed1d1055b", "0x0"],"id":1}' +``` + +Az eredményeket nézze meg az [eth_getTransactionByHash](#eth_gettransactionbyhash) résznél + +### eth_getTransactionByBlockNumberAndIndex {#eth_gettransactionbyblocknumberandindex} + +Egy tranzakcióról ad információt a blokkszám és a tranzakcióindex pozíciója alapján. + +**Parameters** + +1. `QUANTITY|TAG` – a blokkszáma, vagy a `"earliest"`, `"latest"` vagy `"pending"` sztringek, az [alapértelmezett blokkparaméterek](/developers/docs/apis/json-rpc/#default-block) szerint. +2. `QUANTITY` – a tranzakcióindex pozíciója. + +```js +params: [ + "0x29c", // 668 + "0x0", // 0 +] +``` + +**Visszaküldött információk** Nézze meg az [eth_getTransactionByHash](#eth_gettransactionbyhash) résznél + +**Példa** + +```js +// Request +curl -X POST --data '{"jsonrpc":"2.0","method":"eth_getTransactionByBlockNumberAndIndex","params":["0x29c", "0x0"],"id":1}' +``` + +Az eredményeket nézze meg az [eth_getTransactionByHash](#eth_gettransactionbyhash) résznél + +### eth_getTransactionReceipt {#eth_gettransactionreceipt} + +Egy tranzakció visszaigazolását adja meg a tranzakció-hash alapján. + +**Megjegyzés:** A visszaigazolás nem érthető el függőben lévő tranzakciók esetében. + +**Parameters** + +1. `DATA`, 32 bájt – tranzakció-hash + +```js +params: ["0x85d995eba9763907fdf35cd2034144dd9d53ce32cbec21349d4b12823c6860c5"] +``` + +**Visszaküldött információk** `Object` – Egy tranzakció visszaigazolási objektuma, vagy `null`, amikor a visszaigazolást nem találja: + +- `transactionHash`: `DATA`, 32 bájt – a tranzakció hashe. +- `transactionIndex`: `QUANTITY` – a tranzakcióindex pozíciója a blokkban, egész számként. +- `blockHash`: `DATA`, 32 bájt – a blokk-hash, amelyben ez a tranzakció volt. +- `blockNumber`: `QUANTITY` – a blokkszám, amelyben ez a tranzakció volt. +- `from`: `DATA`, 20 bájt – a küldő címe. +- `to`: `DATA`, 20 bájt – a fogadó címe. null, amikor ez egy szerződéslétrehozó tranzakció. +- `cumulativeGasUsed` : `QUANTITY` – A gáz teljes mennyisége, amikor ez a tranzakció végrehajtásra került a blokkban. +- `effectiveGasPrice` : `QUANTITY` – Az alapdíj és a borravaló összege a gáz egységére vonatkozóan. +- `gasUsed`: `QUANTITY` – A felhasznált gáz mennyisége erre az adott tranzakcióra vonatkozóan. +- `contractAddress`: `DATA`, 20 bájt – A létrehozott szerződéscím, ha ez a tranzakció szerződéslétrehozásról szól, máskülönben `null`. +- `logs`: `Array` – A naplózási objektumok tömbje, amelyet ez a tranzakció generált. +- `logsBloom`: `DATA`, 256 bájt – Bloom-szűrés a könnyű kliensekhez, hogy gyorsan elérjék a kapcsolódó naplóbejegyzéseket. +- `type`: `QUANTITY` – a tranzakciótípus egész számként, `0x0` a korábbi tranzakciókért, `0x1` a hozzáférési lista típusért, `0x2` a dinamikus díjakért. + +Emellett megadja _a kettő közül az egyiket_ : + +- `root` : `DATA` 32 bájt tranzakció utáni státuszgyökér (pre Byzantium) +- `status`: `QUANTITY` vagy `1` (sikeres), vagy `0` (sikertelen) + +**Példa** + +```js +// Request +curl -X POST --data '{"jsonrpc":"2.0","method":"eth_getTransactionReceipt","params":["0x85d995eba9763907fdf35cd2034144dd9d53ce32cbec21349d4b12823c6860c5"],"id":1}' +// Result +{ + "jsonrpc": "2.0", + "id": 1, + "result": { + "blockHash": + "0xa957d47df264a31badc3ae823e10ac1d444b098d9b73d204c40426e57f47e8c3", + "blockNumber": "0xeff35f", + "contractAddress": null, // string of the address if it was created + "cumulativeGasUsed": "0xa12515", + "effectiveGasPrice": "0x5a9c688d4", + "from": "0x6221a9c005f6e47eb398fd867784cacfdcfff4e7", + "gasUsed": "0xb4c8", + "logs": [{ + // logs as returned by getFilterLogs, etc. + }], + "logsBloom": "0x00...0", // 256 byte bloom filter + "status": "0x1", + "to": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2", + "transactionHash": + "0x85d995eba9763907fdf35cd2034144dd9d53ce32cbec21349d4b12823c6860c5", + "transactionIndex": "0x66", + "type": "0x2" + } +} +``` + +### eth_getUncleByBlockHashAndIndex {#eth_getunclebyblockhashandindex} + +Egy blokk uncle-blokkjáról ad információt a hash és az uncle-index pozíciója alapján. + +**Parameters** + +1. `DATA`, 32 bájt – egy blokk hashe. +2. `QUANTITY` – az uncle-index pozíciója. + +```js +params: [ + "0xc6ef2fc5426d6ad6fd9e2a26abeab0aa2411b7ab17f30a99d3cb96aed1d1055b", + "0x0", // 0 +] +``` + +**Visszaküldött információk** Nézze meg az [eth_getBlockByHash](#eth_getblockbyhash) résznél + +**Példa** + +```js +// Request +curl -X POST --data '{"jsonrpc":"2.0","method":"eth_getUncleByBlockHashAndIndex","params":["0xc6ef2fc5426d6ad6fd9e2a26abeab0aa2411b7ab17f30a99d3cb96aed1d1055b", "0x0"],"id":1}' +``` + +Az eredményeket nézze meg az [eth_getBlockByHash](#eth_getblockbyhash) résznél + +**Megjegyzés**: A nagybácsi nem tartalmaz egyedi tranzakciókat. + +### eth_getUncleByBlockNumberAndIndex {#eth_getunclebyblocknumberandindex} + +Egy blokk uncle-blokkjáról ad információt a blokkszám és az uncle-index pozíciója alapján. + +**Parameters** + +1. `QUANTITY|TAG` – a blokkszáma, vagy a `"earliest"`, `"latest"` vagy `"pending"` sztringek, az [alapértelmezett blokkparaméterek](/developers/docs/apis/json-rpc/#default-block) szerint. +2. `QUANTITY` – az uncle-index pozíciója. + +```js +params: [ + "0x29c", // 668 + "0x0", // 0 +] +``` + +**Visszaküldött információk** Nézze meg az [eth_getBlockByHash](#eth_getblockbyhash) résznél + +**Megjegyzés**: A nagybácsi nem tartalmaz egyedi tranzakciókat. + +**Példa** + +```js +// Request +curl -X POST --data '{"jsonrpc":"2.0","method":"eth_getUncleByBlockNumberAndIndex","params":["0x29c", "0x0"],"id":1}' +``` + +Az eredményeket nézze meg az [eth_getBlockByHash](#eth_getblockbyhash) résznél + +### eth_newFilter {#eth_newfilter} + +Egy szűrőobjektumot hoz létre a szűrőopciók alapján, hogy értesítsen, amikor a státusz változik (a naplóban). A státusz megváltozásának ellenőrzéséhez az [eth_getFilterChanges](#eth_getfilterchanges) metódust kell meghívni. + +**Megjegyzés a témaszűrők meghatározásához:** A témák sorrendfüggők. Egy tranzakció egy olyan naplóval, melyben [A, B] téma (topic) van, a következő témaszűrőkhöz lesz hozzáillesztve: + +- `[]` „bármi” +- `[A]` „A az első helyen (utána bármi)” +- `[null, B]` „bármi az első helyen ÉS B a második helyen (és utána bármi)” +- `[A, B]` „A az első helyen ÉS B a második helyen (és utána bármi)” +- `[[A, B], [A, B]]` „(A VAGY B) az első helyen ÉS (A VAGY B) a második helyen (és utána bármi)” +- **Parameters** + +1. `Object` – A szűrőopciók: + +- `fromBlock`: `QUANTITY|TAG` – (opcionális, alapértelmezett: `"latest"`) blokkszám egész számként, vagy `"latest"` az utolsó kibányászott blokkra vagy `"pending"`, `"earliest"` a még ki nem bányászott tranzakciókra. +- `toBlock`: `QUANTITY|TAG` – (opcionális, alapértelmezett: `"latest"`) blokkszám egész számként, vagy `"latest"` az utolsó kibányászott blokkra vagy `"pending"`, `"earliest"` a még ki nem bányászott tranzakciókra. +- `address`: `DATA|Array`, 20 bájt – (opcionális) A szerződéscím vagy címek listája, amelyekről a naplók származnak. +- `topics`: `Array of DATA`, – (opcionális) a `DATA` témák (topics) 32 bájtos tömbje. A témák sorrendfüggők. Minden téma egy DATA tömb lehet „vagy” opciókkal. + +```js +params: [ + { + fromBlock: "0x1", + toBlock: "0x2", + address: "0x8888f1f195afa192cfee860698584c030f4c9db1", + topics: [ + "0x000000000000000000000000a94f5374fce5edbc8e2a8697c15331677e6ebf0b", + null, + [ + "0x000000000000000000000000a94f5374fce5edbc8e2a8697c15331677e6ebf0b", + "0x0000000000000000000000000aff3454fce5edbc8cca8697c15331677e6ebccc", + ], + ], + }, +] +``` + +**Visszaküldött információk** `QUANTITY` – Egy szűrő id. + +**Példa** + +```js +// Request +curl -X POST --data '{"jsonrpc":"2.0","method":"eth_newFilter","params":[{"topics":["0x12341234"]}],"id":73}' +// Result +{ + "id":1, + "jsonrpc": "2.0", + "result": "0x1" // 1 +} +``` + +### eth_newBlockFilter {#eth_newblockfilter} + +Létrehoz egy szűrőt a csomópontban, hogy értesítsen az új blokk érkezéséről. A státusz megváltozásának ellenőrzéséhez az [eth_getFilterChanges](#eth_getfilterchanges) metódust kell meghívni. + +**Paraméterek** Egyik sem + +**Visszaküldött információk** `QUANTITY` – Egy szűrő id. + +**Példa** + +```js +// Request +curl -X POST --data '{"jsonrpc":"2.0","method":"eth_newBlockFilter","params":[],"id":73}' +// Result +{ + "id":1, + "jsonrpc": "2.0", + "result": "0x1" // 1 +} +``` + +### eth_newPendingTransactionFilter {#eth_newpendingtransactionfilter} + +Létrehoz egy szűrőt a csomópontban, hogy értesítsen új függőben lévő tranzakciók érkezéséről. A státusz megváltozásának ellenőrzéséhez az [eth_getFilterChanges](#eth_getfilterchanges) metódust kell meghívni. + +**Paraméterek** Egyik sem + +**Visszaküldött információk** `QUANTITY` – Egy szűrő id. + +**Példa** + +```js +// Request +curl -X POST --data '{"jsonrpc":"2.0","method":"eth_newPendingTransactionFilter","params":[],"id":73}' +// Result +{ + "id":1, + "jsonrpc": "2.0", + "result": "0x1" // 1 +} +``` + +### eth_uninstallFilter {#eth_uninstallfilter} + +Egy adott azonosító alatti szűrő eltávolítása. Mindig érdemes meghívni, ha már nincs szükség az adott ellenőrzésre. Emellett a szűrőket ideiglenesen leállíthatja, amikor egy időszakban nincs azokra szükség az [eth_getFilterChanges](#eth_getfilterchanges) metódussal. + +**Parameters** + +1. `QUANTITY` – A szűrő azonosítója. + +```js +params: [ + "0xb", // 11 +] +``` + +**Visszaküldött információk** `Boolean` – `true`, ha a szűrőt sikeresen eltávolította, máskülönben `false`. + +**Példa** + +```js +// Request +curl -X POST --data '{"jsonrpc":"2.0","method":"eth_uninstallFilter","params":["0xb"],"id":73}' +// Result +{ + "id":1, + "jsonrpc": "2.0", + "result": true +} +``` + +### eth_getFilterChanges {#eth_getfilterchanges} + +Egy szűrőre vonatkozó szelektív hívás, ami a naplótömböt adja vissza, amely az utolsó szelektív hívás óta történteket foglalja magában. + +**Parameters** + +1. `QUANTITY` – A szűrő azonosítója. + +```js +params: [ + "0x16", // 22 +] +``` + +**Visszaküldött információk** `Array` – Naplóobjektumok tömbje, vagy egy üres tömb, ha semmi sem változott a legutóbbi szelektív hívás óta. + +- Az `eth_newBlockFilter` által létrehozott szűrőkre a visszakapott értékek a blokkhashek (`DATA`, 32 bájt), például `["0x3454645634534..."]`. +- Az `eth_newPendingTransactionFilter` által létrehozott szűrőkre a visszakapott értékek a tranzakcióhashek (`DATA`, 32 bájt), például `["0x6345343454645..."]`. +- Az `eth_newFilter` által készített szűrőkre a naplók olyan objektumok lesznek, melyek a következő paraméterekkel rendelkeznek: + - `removed`: `TAG` – `true`, amikor a naplót törölték a lánc újrarendezése miatt. `false`, ha ez egy érvényes napló. + - `logIndex`: `QUANTITY` – a naplóindex pozíciója a blokkban, egész számként. `null`, amikor a napló függőben van. + - `transactionIndex`: `QUANTITY` – a tranzakcióindex pozíciója, amelyből a napló készült, egész számként. `null`, amikor a napló függőben van. + - `transactionHash`: `DATA`, 32 bájt – a tranzakció hashe, amelyből ez a napló készült. `null`, amikor a napló függőben van. + - `blockHash`: `DATA`, 32 bájt – a blokk-hash, amelyben ez a napló volt. `null`, amikor függőben van. `null`, amikor a napló függőben van. + - `blockNumber`: `QUANTITY` – a blokkszám, ahol ez a napló volt. `null`, amikor függőben van. `null`, amikor a napló függőben van. + - `address`: `DATA`, 20 bájt – a cím, ahonnan ez a napló származik. + - `data`: `DATA` – nullát vagy a napló több 32 bájtos nem indexált argumentumát tartalmazza. + - `topics`: `Array of DATA` – 0-tól 4-ig tartó tömbje a 32 bájtos, indexált naplóargumentumok `DATA` részleteinek. (A _Solidity-ben_: Az első téma (topic) az esemény aláírásának a _hashe_ (például `Deposit(address,bytes32,uint256)`), kivéve ha az eseményt az `anonymous` specifikációval deklarálták.) +- **Példa** + +```js +// Request +curl -X POST --data '{"jsonrpc":"2.0","method":"eth_getFilterChanges","params":["0x16"],"id":73}' +// Result +{ + "id":1, + "jsonrpc":"2.0", + "result": [{ + "logIndex": "0x1", // 1 + "blockNumber":"0x1b4", // 436 + "blockHash": "0x8216c5785ac562ff41e2dcfdf5785ac562ff41e2dcfdf829c5a142f1fccd7d", + "transactionHash": "0xdf829c5a142f1fccd7d8216c5785ac562ff41e2dcfdf5785ac562ff41e2dcf", + "transactionIndex": "0x0", // 0 + "address": "0x16c5785ac562ff41e2dcfdf829c5a142f1fccd7d", + "data":"0x0000000000000000000000000000000000000000000000000000000000000000", + "topics": ["0x59ebeb90bc63057b6515673c3ecf9438e5058bca0f92585014eced636878c9a5"] + },{ + ... + }] +} +``` + +### eth_getFilterLogs {#eth_getfilterlogs} + +Visszaadja a megadott azonosítóval rendelkező szűrőnek megfelelő összes napló tömbjét. + +**Parameters** + +1. `QUANTITY` – A szűrő azonosítója. + +```js +params: [ + "0x16", // 22 +] +``` + +**Visszaküldött információk** Nézze meg az [eth_getFilterChanges](#eth_getfilterchanges) résznél + +**Példa** + +```js +// Request +curl -X POST --data '{"jsonrpc":"2.0","method":"eth_getFilterLogs","params":["0x16"],"id":74}' +``` + +Az eredményeket nézze meg az [eth_getFilterChanges](#eth_getfilterchanges) résznél + +### eth_getLogs {#eth_getlogs} + +Visszaadja az adott szűrőobjektumnak megfelelő összes naplótömböt. + +**Parameters** + +1. `Object` – A szűrőopciók: + +- `fromBlock`: `QUANTITY|TAG` – (opcionális, alapértelmezett: `"latest"`) blokkszám egész számként, vagy `"latest"` az utolsó kibányászott blokkra vagy `"pending"`, `"earliest"` a még ki nem bányászott tranzakciókra. +- `toBlock`: `QUANTITY|TAG` – (opcionális, alapértelmezett: `"latest"`) blokkszám egész számként, vagy `"latest"` az utolsó kibányászott blokkra vagy `"pending"`, `"earliest"` a még ki nem bányászott tranzakciókra. +- `address`: `DATA|Array`, 20 bájt – (opcionális) A szerződéscím vagy címek listája, amelyekről a naplók származnak. +- `topics`: `Array of DATA`, – (opcionális) a `DATA` témák (topics) 32 bájtos tömbje. A témák sorrendfüggők. Minden téma egy DATA tömb lehet „vagy” opciókkal. +- `blockhash`: `DATA`, 32 bájt – (opcionális, **jövő**) Az EIP-234 bevezetésével a `blockHash` egy új szűrőopció lesz, amely egyetlen blokkra redukálja a visszakapott naplókat egy 32-bájtos hashsel rendelkező `blockHash` segítségével. A `blockHash` használata azonos a `fromBlock` = `toBlock` = blokkszám hashsel (`blockHash`). Ha a `blockHash` benne van a szűrőkritériumban, akkor nem engedélyezett se a `fromBlock`, se a `toBlock`. + +```js +params: [ + { + topics: [ + "0x000000000000000000000000a94f5374fce5edbc8e2a8697c15331677e6ebf0b", + ], + }, +] +``` + +**Visszaküldött információk** Nézze meg az [eth_getFilterChanges](#eth_getfilterchanges) résznél + +**Példa** + +```js +// Request +curl -X POST --data '{"jsonrpc":"2.0","method":"eth_getLogs","params":[{"topics":["0x000000000000000000000000a94f5374fce5edbc8e2a8697c15331677e6ebf0b"]}],"id":74}' +``` + +Az eredményeket nézze meg az [eth_getFilterChanges](#eth_getfilterchanges) résznél + +## Használati példa {#usage-example} + +### Egy szerződés telepítése JSON_RPC-vel {#deploying-contract} + +Ez a rész azt mutatja be, hogyan lehet egy szerződést telepíteni kizárólag az RPC-interfésszel. Alternatív utak állnak rendelkezésre a szerződéstelepítéshez, ahol ez a komplexitás csökken, például az RPC-interfészre épített könyvtárak segítségével, mint amilyen a [web3.js](https://web3js.readthedocs.io/) és a [web3.py](https://github.com/ethereum/web3.py). Ezek az absztrakciók általában könnyebben érthetők és nem annyira hajlamosak a hibára, de akkor is érdemes megérteni, hogy mi is zajlik a háttérben. + +A következő egy egyszerű, `Multiply7` nevű okosszerződés, amelyet a JSON-RPC-interfésszel telepítünk egy Ethereum-csomópontra. Ez az útmutató azt feltételezi, hogy Ön már futtat egy Geth-csomópontot. A csomópontokról és a kliensekről bővebben [itt](/developers/docs/nodes-and-clients/run-a-node) olvashat. Tekintse meg az egyéni [kliensdokumentációt](/developers/docs/nodes-and-clients/), hogy hogyan lehet HTTP JSON-RPC-t indítani nem Geth-klienseken. A legtöbb kliens alapértelmezés szerint a `localhost:8545` kódon működik. + +```javascript +contract Multiply7 { + event Print(uint); + function multiply(uint input) returns (uint) { + Print(input * 7); + return input * 7; + } +} +``` + +Az első dolog, hogy a HTTP RPC-interfész engedélyezve legyen. Ez azt jelenti, hogy a Geth-nek a beállításkor megadjuk a `--http` jelölőt (flag). Ebben a példában egy Geth-csomópontot használunk egy privát fejlesztési láncon. Ehhez a megközelítéshez nincs szükség etherre, mint egy valódi hálózaton. + +```bash +geth --http --dev console 2>>geth.log +``` + +Ez elindítja a HTTP RPC interfészt a `http://localhost:8545` kódon. + +A [curl](https://curl.se) segítségével a Coinbase-címet és egyenleget lekérve ellenőrizhetjük, hogy az interfész fut-e. Vegye figyelembe, hogy e példában az adatok mások, mint az Ön lokális csomópontján. Ha ki szeretné próbálni ezeket a parancsokat, akkor a lekérdezés paramétereit a második curl kérésben cserélje le az első kérésre kapott eredményekre. + +```bash +curl --data '{"jsonrpc":"2.0","method":"eth_coinbase", "id":1}' -H "Content-Type: application/json" localhost:8545 +{"id":1,"jsonrpc":"2.0","result":["0x9b1d35635cc34752ca54713bb99d38614f63c955"]} + +curl --data '{"jsonrpc":"2.0","method":"eth_getBalance", "params": ["0x9b1d35635cc34752ca54713bb99d38614f63c955", "latest"], "id":2}' -H "Content-Type: application/json" localhost:8545 +{"id":2,"jsonrpc":"2.0","result":"0x1639e49bba16280000"} +``` + +Mivel a számok hexadecimálisan vannak kódolva, ezért a visszakapott egyenleg wei-ben egy hexadecimális sztring. Ha az egyenleget etherben, számként szeretnénk megkapni, akkor használhatjuk a web3-at a Geth-konzolból. + +```javascript +web3.fromWei("0x1639e49bba16280000", "ether") +// "410" +``` + +Most, hogy ethert tettünk a privát fejlesztési láncra, telepíthetjük a szerződést. Az első lépés, hogy a Multiply7 szerződést át kell fordítani bájtkódra, hogy el lehessen küldeni az EVM-nek. A solc, a Solidity átfordító telepítéséhez kövesse a [Solidity dokumentációt](https://docs.soliditylang.org/en/latest/installing-solidity.html). (Előfordulhat, hogy egy régebbi `solc` kiadást szeretne használni, hogy az illeszkedjen [a példában szereplő átfordító verziójához](https://github.com/ethereum/solidity/releases/tag/v0.4.20).) + +Most tehát átfordíthatjuk a Multiply7 szerződést bájtkódra, hogy el lehessen küldeni az EVM-nek. + +```bash +echo 'pragma solidity ^0.4.16; contract Multiply7 { event Print(uint); function multiply(uint input) public returns (uint) { Print(input * 7); return input * 7; } }' | solc --bin + +======= :Multiply7 ======= +Binary: +6060604052341561000f57600080fd5b60eb8061001d6000396000f300606060405260043610603f576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff168063c6888fa1146044575b600080fd5b3415604e57600080fd5b606260048080359060200190919050506078565b6040518082815260200191505060405180910390f35b60007f24abdb5865df5079dcc5ac590ff6f01d5c16edbc5fab4e195d9febd1114503da600783026040518082815260200191505060405180910390a16007820290509190505600a165627a7a7230582040383f19d9f65246752244189b02f56e8d0980ed44e7a56c0b200458caad20bb0029 +``` + +Megvan az átfordított kód, úgyhogy most meghatározzunk, mennyi gázköltséget igényel a telepítése. Az RPC-interfésznek van egy `eth_estimateGas` metódusa, ami megadja a becsült értéket. + +```bash +curl --data '{"jsonrpc":"2.0","method": "eth_estimateGas", "params": [{"from": "0x9b1d35635cc34752ca54713bb99d38614f63c955", "data": "0x6060604052341561000f57600080fd5b60eb8061001d6000396000f300606060405260043610603f576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff168063c6888fa1146044575b600080fd5b3415604e57600080fd5b606260048080359060200190919050506078565b6040518082815260200191505060405180910390f35b60007f24abdb5865df5079dcc5ac590ff6f01d5c16edbc5fab4e195d9febd1114503da600783026040518082815260200191505060405180910390a16007820290509190505600a165627a7a7230582040383f19d9f65246752244189b02f56e8d0980ed44e7a56c0b200458caad20bb0029"}], "id": 5}' -H "Content-Type: application/json" localhost:8545 +{"jsonrpc":"2.0","id":5,"result":"0x1c31e"} +``` + +Végül telepítjük a szerződést. + +```bash +curl --data '{"jsonrpc":"2.0","method": "eth_sendTransaction", "params": [{"from": "0x9b1d35635cc34752ca54713bb99d38614f63c955", "gas": "0x1c31e", "data": "0x6060604052341561000f57600080fd5b60eb8061001d6000396000f300606060405260043610603f576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff168063c6888fa1146044575b600080fd5b3415604e57600080fd5b606260048080359060200190919050506078565b6040518082815260200191505060405180910390f35b60007f24abdb5865df5079dcc5ac590ff6f01d5c16edbc5fab4e195d9febd1114503da600783026040518082815260200191505060405180910390a16007820290509190505600a165627a7a7230582040383f19d9f65246752244189b02f56e8d0980ed44e7a56c0b200458caad20bb0029"}], "id": 6}' -H "Content-Type: application/json" localhost:8545 +{"id":6,"jsonrpc":"2.0","result":"0xe1f3095770633ab2b18081658bad475439f6a08c902d0915903bafff06e6febf"} +``` + +A tranzakciót elfogadta a csomópont, és visszaküldte a tranzakcióhasht. Ezzel a hashsel lehet nyomon követni a tranzakciót. A következő lépés, hogy meghatározzuk a címet, ahová a szerződés telepítésre került. Minden végrehajtott tranzakció egy visszaigazolást ad. Ez a visszaigazolás számos információt tartalmaz a tranzakcióról, például melyik blokkba került be és mennyi gázt használt fel az EVM. Ha egy tranzakció létrehoz egy szerződést, akkor a szerződés címe is benne lesz a visszaigazolásban. A visszaigazolást megszerezhetjük az `eth_getTransactionReceipt` RPC metódussal. + +```bash +curl --data '{"jsonrpc":"2.0","method": "eth_getTransactionReceipt", "params": ["0xe1f3095770633ab2b18081658bad475439f6a08c902d0915903bafff06e6febf"], "id": 7}' -H "Content-Type: application/json" localhost:8545 +{"jsonrpc":"2.0","id":7,"result":{"blockHash":"0x77b1a4f6872b9066312de3744f60020cbd8102af68b1f6512a05b7619d527a4f","blockNumber":"0x1","contractAddress":"0x4d03d617d700cf81935d7f797f4e2ae719648262","cumulativeGasUsed":"0x1c31e","from":"0x9b1d35635cc34752ca54713bb99d38614f63c955","gasUsed":"0x1c31e","logs":[],"logsBloom":"0x00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000","status":"0x1","to":null,"transactionHash":"0xe1f3095770633ab2b18081658bad475439f6a08c902d0915903bafff06e6febf","transactionIndex":"0x0"}} +``` + +A szerződést a `0x4d03d617d700cf81935d7f797f4e2ae719648262` címen hozta létre. Ha nullát kapunk eredményül, akkor a tranzakció még nem került be a blokkba. Várjon egy kicsit, ellenőrizze, hogy a bányász fut-e, és próbálja meg újra. + +#### Interakció okosszerződésekkel {#interacting-with-smart-contract} + +Ebben a példában elküldünk egy tranzakciót az `eth_sendTransaction` metódussal a szerződés `multiply` metódusának. + +Az `eth_sendTransaction` számos argumentumot igényel, mint a `from`, `to` és `data`. `From` a számla nyilvános címe, a `to` pedig a szerződés címe. A `data` tartalmazza a csomagot, hogy melyik metódust milyen argumentumokkal kell meghívni. Itt jön képbe az [ABI (application binary interface)](https://docs.soliditylang.org/en/latest/abi-spec.html). Az ABI egy JSON-fájl, amely meghatározza, hogyan kell az EVM számára megadni és kódolni az adatokat. + +Az adattörzs bájtjai határozzák meg, hogy a szerződés melyik metódusát hívják meg. Ez a Kessak-hash első 4 bájtja a függvénynév és az argumentumtípusok felett, hexadecimálisan kódolva. A szorzás függvény uint-et fogad el, ami azonos az uint256-tal. Ez a következőt jelenti: + +```javascript +web3.sha3("multiply(uint256)").substring(0, 10) +// "0xc6888fa1" +``` + +A következő lépés az argumentumok kódolása. Egyetlen uint256 van csak, amelynek értéke legyen 6. Az ABI egyik része azt mutatja be, hogy miként kell kódolni az uint256 típusokat. + +`int: enc(X)` az X két kiegészítős big-endian kódolása, a magasabb rendű (bal) oldalon 0xff-el feltöltve negatív X esetén és nulla > bájttal pozitív X esetén úgy, hogy a hossza a 32 bájt többszöröse legyen. + +Ennek a kódolása a következő: `0000000000000000000000000000000000000000000000000000000000000006`. + +A függvényválasztót és a kódolt argumentumot kombinálva az adatunk a következő: `0xc6888fa10000000000000000000000000000000000000000000000000000000000000006`. + +Ezt el lehet küldeni a csomópontnak: + +```bash +curl --data '{"jsonrpc":"2.0","method": "eth_sendTransaction", "params": [{"from": "0xeb85a5557e5bdc18ee1934a89d8bb402398ee26a", "to": "0x6ff93b4b46b41c0c3c9baee01c255d3b4675963d", "data": "0xc6888fa10000000000000000000000000000000000000000000000000000000000000006"}], "id": 8}' -H "Content-Type: application/json" localhost:8545 +{"id":8,"jsonrpc":"2.0","result":"0x759cf065cbc22e9d779748dc53763854e5376eea07409e590c990eafc0869d74"} +``` + +Mivel egy tranzakciót küldtünk, ezért egy hasht kapunk vissza. A visszaigazolás megérkezésekor a következőt látjuk: + +```javascript +{ + blockHash: "0xbf0a347307b8c63dd8c1d3d7cbdc0b463e6e7c9bf0a35be40393588242f01d55", + blockNumber: 268, + contractAddress: null, + cumulativeGasUsed: 22631, + gasUsed: 22631, + logs: [{ + address: "0x6ff93b4b46b41c0c3c9baee01c255d3b4675963d", + blockHash: "0xbf0a347307b8c63dd8c1d3d7cbdc0b463e6e7c9bf0a35be40393588242f01d55", + blockNumber: 268, + data: "0x000000000000000000000000000000000000000000000000000000000000002a", + logIndex: 0, + topics: ["0x24abdb5865df5079dcc5ac590ff6f01d5c16edbc5fab4e195d9febd1114503da"], + transactionHash: "0x759cf065cbc22e9d779748dc53763854e5376eea07409e590c990eafc0869d74", + transactionIndex: 0 + }], + transactionHash: "0x759cf065cbc22e9d779748dc53763854e5376eea07409e590c990eafc0869d74", + transactionIndex: 0 +} +``` + +A visszaigazolás tartalmaz egy naplót. Ezt a naplót az EVM generálta a tranzakció-végrehajtáskor és beletette a visszaigazolásba. A `multiply` függvény azt mutatja, hogy a `Print` eseményt a bemeneti érték 7-szeresével indította el. Mivel a `Print` eseményre az argumentum egy uint256 volt, kódolhatjuk az ABI szabályai szerint, ami a várt 42-es decimális értéket adja. Az adat mellett érdemes megjegyezni, hogy a témák (topics) révén meghatározható, hogy melyik esemény hozta létre a naplót: + +```javascript +web3.sha3("Print(uint256)") +// "24abdb5865df5079dcc5ac590ff6f01d5c16edbc5fab4e195d9febd1114503da" +``` + +Ez csak egy rövid bevezető volt a leggyakoribb feladatokba, a JSON-RPC közvetlen használatát demonstrálandó. + +## Kapcsolódó témák {#related-topics} + +- [JSON-RPC specifikáció](http://www.jsonrpc.org/specification) +- [ Csomópontok és kliensek](/developers/docs/nodes-and-clients/) +- [JavaScript API-ok](/developers/docs/apis/javascript/) +- [Backend API-ok](/developers/docs/apis/backend/) +- [Végrehajtási kliensek](/developers/docs/nodes-and-clients/#execution-clients) diff --git a/public/content/translations/hu/developers/docs/blocks/index.md b/public/content/translations/hu/developers/docs/blocks/index.md index 9aed9314fb8..da2ee088349 100644 --- a/public/content/translations/hu/developers/docs/blocks/index.md +++ b/public/content/translations/hu/developers/docs/blocks/index.md @@ -8,57 +8,145 @@ A blokkok tranzakciókból álló csoportosítások a láncban lévő előző bl ## Előfeltételek {#prerequisites} -A blokkok könnyen feldolgozhatók még a legkezdőbb felhasználóknak is. De ennek az oldalnak a jobb megértése érdekében javasoljuk, hogy először olvasd el a [Számlák](/developers/docs/accounts/), [Tranzakciók](/developers/docs/transactions/), és a [Bevezetés az Ethereumba](/developers/docs/intro-to-ethereum/) cikkeinket. +A blokkok könnyen feldolgozhatók még a legkezdőbb felhasználóknak is. De ennek az oldalnak a jobb megértése érdekében javasoljuk, hogy először olvassa el a [Számlák](/developers/docs/accounts/), a [Tranzakciók](/developers/docs/transactions/) és a [Bevezetés az Ethereumba](/developers/docs/intro-to-ethereum/) című cikkeinket. ## Miért kellenek a blokkok? {#why-blocks} -Hogy biztosítsuk azt, hogy az Ethereum hálózat minden résztvevője egy szinkronizált állapotot tart fenn és megegyezik a pontos tranzakciós történetben, a tranzakciókat blokkokba rendezzük. Ez azt jelenti, hogy tucatnyi (vagy több száz) tranzakció felett van elköteleződés, egyetértés és szinkronizáció egyszerre. +Annak biztosítása érdekében, hogy az Ethereum-hálózat minden résztvevője egy szinkronizált állapotot tart fenn és megegyezik a pontos tranzakciós történetben, a tranzakciókat blokkokba rendezzük. Ez azt jelenti, hogy több tucatnyi (vagy több száz) tranzakció felett van elköteleződés, egyetértés és szinkronizáció egyszerre. -![Egy diagram, mely egy tranzakciót mutat egy blokkban ahogy az állapotot változatja](./tx-block.png) _Diagram átvéve az [Ethereum EVM illusztrálva](https://takenobu-hs.github.io/downloads/ethereum_evm_illustrated.pdf)_ anyagból +![Diagram, amely egy státuszt módosító blokkban lévő tranzakciót mutat](./tx-block.png) _Diagram átvéve az [Ethereum EVM illusztrálva](https://takenobu-hs.github.io/downloads/ethereum_evm_illustrated.pdf)_ anyagból -Az elkötelezettségek elosztásával elegendő időt adunk az összes hálózati résztvevőnek konszenzusra jutni: annak ellenére, hogy a tranzakciós kérelmek másodpercenként több tucatszor fordulnak elő, az Ethereum blokkjai körülbelül tizenöt másodpercenként köteleződnek el. +Az elkötelezettségek elosztásával elegendő időt adunk az összes hálózati résztvevőnek arra, hogy konszenzusra tudjanak jutni: annak ellenére, hogy a tranzakciós kérelmek másodpercenként több tucatszor fordulnak elő, az Ethereum blokkjai tizenkét másodpercenként köteleződnek el. ## Hogy működnek a blokkok {#how-blocks-work} Hogy megőrizzük a tranzakciós történetet, a blokkoknak szigorú sorrendet kell betartaniuk (minden létrejövő új blokk tartalmaz egy referenciát a szülő blokkjára), és a blokkokban lévő tranzakciók is szigorú sorrendet követnek. Ritka esetek kivételével bármikor amikor a hálózat összes résztvevője egyetért a blokkok pontos számában és előzményeiben, és azon dolgozik, hogy az aktuális élő tranzakciós kérelmeket a következő blokkba csomagolja. -Amint egy blokk össze van állítva (ki van bányászva) egy bányász által a hálózaton, tovább terjed a hálózat többi része számára; az összes csomópont hozzáfűzi ezt a blokkot a blokkláncukra és folytatódik a bányászat. A pontos blokk összeállítási (bányászati) folyamatot és az elköteleződés/konszenzus folyamatot jelenleg az Ethereum “proof-of-work” protokollja specifikálja. +Amint egy blokkot egy véletlenszerűen választott validátor összeállít által a hálózaton, az továbbterjed a hálózat többi részére; az összes csomópont hozzáfűzi ezt a blokkot a blokkláncukra, majd egy új validátort választanak a következő blokk összeállításához. A pontos blokk-összeállítási folyamatot és az elköteleződés/konszenzus folyamatot jelenleg az Ethereum „proof-of-stake” protokollja specifikálja. -### Egy vizuális bemutató {#a-visual-demo} +## Proof-of-stake protokoll {#proof-of-work-protocol} - +A proof-of-stake a következőket jelenti: -## A proof-of-work protokoll {#proof-of-work-protocol} +- A validációt végző csomópontoknak letétbe kell helyezniük 32 ETH-t egy letéti szerződésbe fedezetként, hogy elkerülhető legyen a rosszhiszemű viselkedés. Ez segít megvédeni a hálózatot, mert a rosszhiszemű viselkedés következtében a letét egy része vagy egésze megsemmisül. +- Minden slotban (tizenkét másodpercben) a validátort véletlenszerűen választják ki, hogy javasoljon egy blokkot. Tranzakciókat gyűjt össze, végrehajtja azokat és meghatározza a blokklánc új státuszát. Ezt az információt egy blokkba csomagolja és elküldi a többi validátornak. +- A többi validátor megtudja, hogy van egy új blokk, újra végrehajtja a tranzakciókat, hogy azok megegyeznek-e a javasolt új státusszal. Feltéve a blokk érvényes, hozzáteszik a saját adatbázisukhoz. +- Ha egy validátor két ütköző blokkot talál ugyanarra a slotra, akkor az elágazást választó algoritmussal azt választják, amelyet a legtöbb letétbe helyezett ETH támogat. -A proof-of-work a következőket jelenti: - -- A bányászó csomópontoknak változó, de jelentős mértékű energiát, időt és számítási kapacitást kell fordítaniuk, hogy előállítsanak egy "törvényességi igazolást" egy adott blokkra, melyet a hálózatra terjesztenek. Ez segít megvédeni a hálózatot többek között \* a spam/szolgáltatás megtagadási támadásoktól, mivel az igazolásokat drága előállítani. -- A többi bányásznak, aki hall az érvényes igazolással rendelkező új blokkról, muszáj elfogadni az új blokkot, mint egy kanonikus következő blokkot a blokkláncon. -- A pontos idő, mely egy adott bányász számára szükséges, hogy előteremtse az igazolást, egy random változó nagy varianciával. Ez biztosítja azt, hogy valószínűtlen*, hogy két bányász egyszerre teremti meg az igazolást a következő felterjesztett blokkra; amikor egy bányász elkészít és tovább terjeszt egy igazolt blokkot, szinte teljesen biztosak lehetnek abban, hogy a hálózat elfogadja ezt a blokkot, mint egy következő kanonikus blokkok a blokkláncban, konfliktus nélkül* (habár van egy protokoll a nézeteltérések megoldására, arra az esetre amikor két igazolt blokkokból álló lánc egy időben elkészül). - -[Többet a bányászatról](/developers/docs/consensus-mechanisms/pow/mining/) +[A proof-of-stake-ről bővebben](/developers/docs/consensus-mechanisms/pos) ## Mi van egy blokkban? {#block-anatomy} -- Időbélyeg – a blokk kibányászásának ideje. -- Blokkszám – blokklánc hossza blokkokban. -- Nehézség – a blokk kibányászásához szükséges erőfeszítés. -- mixHash – a blokk egyedi azonosítója. -- Egy szülő hash – az előző blokk egyedi azonosítója (így kapcsolódnak össze a blokkok egy lánccá). -- Tranzakciós lista – a blokkban lévő tranzakciók listája. -- Állapot gyökér – a rendszer teljes állapota: számla egyenlegek, szerződés tárhely, szerződés kód és számla nonce-ok vannak benne. -- Nonce – egy hash, melyet ha kombinálunk a mixHash-sel, akkor be tudjuk bizonyítani, hogy végig ment a [proof-of-work](/developers/docs/consensus-mechanisms/pow/) folyamaton. +A blokkban rengeteg információ van. A legmagasabb szinten a következő mezőket tartalmazza: + +| Mező | Leírás | +|:---------------- |:----------------------------------------------------------------------------- | +| `slot` | az a slot, amelyhez a blokk tartozik | +| `proposer_index` | a validátor azonosítója, aki a blokkot javasolta | +| `parent_root` | az előző blokk hash-e | +| `state_root` | a státusz objektum gyökér hash-e | +| `törzs` | egy olyan objektum, amely számos mezőt tartalmaz, ahogy azt alább definiáljuk | + +A blokk `body` számos mezőt tartalmaz: + +| Mező | Leírás | +|:-------------------- |:------------------------------------------------------------------- | +| `randao_reveal` | egy érték, amely a következő blokkjavaslót választja ki | +| `eth1_data` | információ a letéti szerződésről | +| `graffiti` | tetszőleges adat a blokkok taggelésére | +| `proposer_slashings` | a validátorok listája, akiket slashelni kell | +| `attester_slashings` | a validátorok listája, akiket slashelni kell | +| `tanúsítások` | a tanúsítók listája, akik ezt a blokkot támogatják | +| `behelyezés` | az új letétek listája a letéti szerződésbe | +| `voluntary_exits` | a validátorok listája, akik kilépnek a hálózatból | +| `sync_aggregate` | a validátorok egy csoportja, akik a könnyű klienseket szolgálják ki | +| `execution_payload` | a végrehajtási klienstől jövő tranzakciók | + +A `attestations` (tanúsítások) mező tartalmazza a blokkban lévő az összes tanúsítást. A tanúsítások saját adattípussal rendelkezik, amelyben számos adat megtalálható. A tanúsítások a következőket tartalmazzák: + +| Mező | Leírás | +|:------------------ |:------------------------------------------------------------ | +| `aggregation_bits` | a validátorok listája, akik részt vettek a tanúsításban | +| `adat` | konténer számos almezővel | +| `aláírás` | az összes tanúsítást végző validátor aláírásának aggregátuma | + +A `data` mező a `tanúsítás` részen belül tartalmazza: + +| Mező | Leírás | +|:------------------- |:----------------------------------------------------------------- | +| `slot` | a slot, amelyhez a tanúsítás kapcsolódik | +| `index` | a tanúsítást végző validátorok indexei | +| `beacon_block_root` | a Beacon blokk gyökér hash-e, amely ezt az objektumot tartalmazza | +| `forrás` | az utolsó igazolt ellenőrzési pont | +| `target` | a legutolsó korszak határoló blokkja | + +A tranzakciók végrehajtása az `execution_payload` paraméterben frissíti a globális állapotot. Minden kliens újra végrehajtja a tranzakciókat, amelyek a `execution_payload` paraméterben vannak, hogy biztosítsa, az új állapot egyezik az új blokk `state_root` mezőjében lévőjével. Így tudják a kliensek megmondani, hogy az új blokkot érvényes és biztonságos-e hozzáadni a saját blokkláncukhoz. Az `execution payload` maga egy objektum, amely számos mezővel rendelkezik. Van egy `execution_payload_header` is, ami fontos összegzőinformációkat tartalmaz a végrehajtási adatokról. Ezek az adatstruktúrák a következőképpen vannak rendezve: + +Az `execution_payload_header` a következő mezőket tartalmazza: + +| Mező | Leírás | +|:------------------- |:------------------------------------------------------------------------ | +| `parent_hash` | a jelenlegi blokk elődjének a hash-e | +| `fee_recipient` | a számla címe, amelyre a tranzakciós díjakat fizették | +| `state_root` | a globális állapot gyökér hash-e, miután a változások bementek a blokkba | +| `receipts_root` | a tranzakció fogadói fájának hash-e | +| `logs_bloom` | eseménynaplókat tartalmazó adatstruktúra | +| `prev_randao` | egy érték, amit a véletlenszerű validátor kiválasztásnál használnak | +| `block_number` | a jelenlegi blokk száma | +| `gas_limit` | a jelenlegi blokkban megengedett maximális gáz | +| `gas_used` | a jelenlegi blokkban elhasznált gáz aktuális összege | +| `timestamp` | a blokk ideje | +| `extra_data` | tetszőleges hozzáadott adat, mint nyers bájt | +| `base_fee_per_gas` | az alapdíj értéke | +| `block_hash` | a végrehajtó blokk hash-e | +| `transactions_root` | a végrehajtási csomagban lévő tranzakciók gyökér hash-e | +| `withdrawal_root` | a végrehajtási csomagban lévő visszavonások gyökér hash-e | + +Az `execution_payload` maga a következőket tartalmazza (ami azonos a fejléccel, kivéve, hogy a gyökér hash-ek helyett a tranzakciók és visszavonások aktuális listáját tartalmazza): + +| Mező | Leírás | +|:------------------ |:------------------------------------------------------------------------ | +| `parent_hash` | a jelenlegi blokk elődjének a hash-e | +| `fee_recipient` | a számla címe, amelyre a tranzakciós díjakat fizették | +| `state_root` | a globális állapot gyökér hash-e, miután a változások bementek a blokkba | +| `receipts_root` | a tranzakció fogadói fájának hash-e | +| `logs_bloom` | eseménynaplókat tartalmazó adatstruktúra | +| `prev_randao` | egy érték, amit a véletlenszerű validátor kiválasztásnál használnak | +| `block_number` | a jelenlegi blokk száma | +| `gas_limit` | a jelenlegi blokkban megengedett maximális gáz | +| `gas_used` | a jelenlegi blokkban elhasznált gáz aktuális összege | +| `timestamp` | a blokk ideje | +| `extra_data` | tetszőleges hozzáadott adat, mint nyers bájt | +| `base_fee_per_gas` | az alapdíj értéke | +| `block_hash` | a végrehajtó blokk hash-e | +| `tranzakciók` | a tranzakciók listája, amit végre kell hajtani | +| `kivételek` | a visszavonásra kerülő objektumok listája | + +A `withdrawals` (visszavonások) listája tartalmazza a `withdrawal` (visszavonási) objektumokat, amelyek a következőképpen vannak strukturálva: + +| Mező | Leírás | +|:---------------- |:---------------------------------- | +| `address` | a visszavonásra került számla címe | +| `amount` | a visszavonás összege | +| `index` | a visszavonás index értéke | +| `validatorIndex` | a validátor index értéke | + +## Blokk idő {#block-time} + +A blokk ideje arra utal, hogy mennyi idő választja el a blokkokat. Az Ethereumban az időt tizenkét másodperces egységekre bontják, amelyet slotnak neveznek. Minden slotban egy validátort választanak, hogy javasoljon blokkot. Feltéve, hogy minden validátor online van és teljesen működőképes, minden slotban lesz egy blokk, tehát a blokk idő 12 másodperc. Azonban a validátorok lehetnek néha offline is, amikor felkérik őket blokkjavaslatra, tehát a slot néha üresen megy. + +Ez különbözik a proof-of-work alapú rendszerektől, ahol a blokk ideje valószínű érték és a protokoll céljának kibányászási nehézsége állítja be. Az Ethereum [átlagos blokkideje](https://etherscan.io/chart/blocktime) egy tökéletes példa erre, ahol az átállás a proof-of-work mechanizmusról a proof-of-stake-re egyértelműen kikövetkeztethető az új 12 másodperces blokkidő konzisztens voltából. ## Blokkméret {#block-size} -Utolsó fontos megjegyzés, hogy a blokkok maguk is korlátozott méretűek. Minden blokknak van egy blokk gáz limite, melyet a hálózat és a bányászok állítanak be közösen: az összes tranzakció által teljesen felhasznált gáznak a blokkban kevesebbnek kell lennie, mint a gáz limitnek. Ez fontos, mert ez azt jelenti, hogy a blokkok nem lehetnek tetszőlegesen nagyok. Ha a blokkok tetszőlegesen nagyok lehetnének, akkor a kevésbé teljesítőképes teljes csomópontok egyre kevésbé tudnának lépést tartani a hálózattal a tárhely és sebesség igények miatt. A blokk gáz limit a nulladik blokkban (block 0) 5,000-ről indult; bármely új blokkot bányászó bányász módosíthatja a gáz limitet 0,1%-ig bármely irányba a szülő blokk gáz limitétől. A gáz limit jelenleg 2018 Novemberében 8,000,000 körül mozog. +Utolsó fontos megjegyzés, hogy a blokkok maguk is korlátozott méretűek. Minden blokk 15 millió gáz célmérettel rendelkezik, de a blokk mérete a hálózati kereslet függvényében, egészen a 30 millió gáz határig (ami a célméret kétszerese) változik. A blokkban lévő tranzakciók által elköltött teljes gáz mennyisége kevesebb kell legyen, mint a blokk gázkorlátozása. Ez fontos, mert ez azt jelenti, hogy a blokkok nem lehetnek tetszőlegesen nagyok. Ha a blokkok tetszőlegesen nagyok lehetnének, akkor a kevésbé teljesítőképes teljes csomópontok egyre kevésbé tudnának lépést tartani a hálózattal a tárhely- és sebességigények miatt. Minél nagyobb a blokk, annál nagyobb számítási erő kell ahhoz, hogy időben fel legyen dolgozva a következő slotra. Ez egy centralizáló erő, amelynek úgy áll ellen, hogy határt szab a méretnek. ## További olvasnivaló {#further-reading} -_Ismersz olyan közösségi anyagot, amely segített neked? Módosítsd az oldalt és add hozzá!_ +_Van olyan közösségi erőforrása, amely segített Önnek? Szerkessze ezt az oldalt, és adja hozzá!_ ## Kapcsolódó témák {#related-topics} -- [Bányászat](/developers/docs/consensus-mechanisms/pow/mining/) - [Tranzakciók](/developers/docs/transactions/) - [Gáz](/developers/docs/gas/) +- [Proof-of-stake](/developers/docs/consensus-mechanisms/pos) diff --git a/public/content/translations/hu/developers/docs/consensus-mechanisms/index.md b/public/content/translations/hu/developers/docs/consensus-mechanisms/index.md index 28f1afbc34a..8b824a1a854 100644 --- a/public/content/translations/hu/developers/docs/consensus-mechanisms/index.md +++ b/public/content/translations/hu/developers/docs/consensus-mechanisms/index.md @@ -1,58 +1,89 @@ --- title: Konszenzus mechanizmusok -description: Egy magyarázat az elosztott rendszerek konszenzus protokolljairól és szerepükről az Ethereumban. +description: Az elosztott rendszerek konszenzusprotokolljainak és szerepeiknek bemutatása az Ethereumban. lang: hu -incomplete: true --- -Az Ethereumhoz hasonló blokkláncok esetében, melyek lényegében elosztott adatbázisok, a hálózat csomópontjainak el kell tudni érniük az egyetértést a rendszer jelenlegi állapota felett. Ezt konszenzus mechanizmusokkal lehet elérni. - -Habár nem tartozik a dapp fejlesztés témakörébe, a konszenzus mechanizmusok megértése segít megmagyarázni olyan dolgokat, melyek relevánsak számodra és a felhasználóid számára, mint például a gáz árak vagy a tranzakciós idők. +A konszenzusmechanizmust gyakran használják arra, hogy proof-of-stake (letéti igazolás), proof-of-work (munkaigazolás) vagy proof-of-authority (jogosultságigazolás) protokollokra hivatkoznak. Ugyanakkor ezek csak a konszenzusmechanizmus elemei, amelyek megvédik azt a Sybil-támadásoktól (amikor valaki több személynek adja ki magát). A konszenzusmechanizmus elképzelések, protokollok és ösztönzők teljes halmaza, amely lehetővé teszi, hogy csomópontok elosztott kötege meg tudjon egyezni a blokklánc státuszáról. ## Előfeltételek {#prerequisites} -Ennek az oldalnak a jobb megértése érdekében javasoljuk, hogy először olvasd el a [bevezetés az Ethereumba](/developers/docs/intro-to-ethereum/) oldalunkat. +Ennek az oldalnak a könnyebb megértése érdekében javasoljuk, hogy először olvassa el a [bevezetés az Ethereumba](/developers/docs/intro-to-ethereum/) oldalunkat. + +## Mi az a konszenzus? {#what-is-consensus} + +A konszenzus azt jelenti, hogy általános megegyezés történik. Tegyük fel, hogy egy csapat ember moziba megy. Ha a választott film kapcsán nincs nézeltérés, akkor konszenzus van. Ha nézeteltérés van, akkor a csoportnak el kell döntenie, hogy mit nézzen. Szélsőséges esetben a csoport több felé fog válni. + +Az Ethereum blokkláncon ez a folyamat formális, a konszenzus eléréséhez a hálózaton lévő csomópontok 66%-ának egyet kell értenie a hálózat globális státuszát illetően. ## Mi az a konszenzus mechanizmus? {#what-is-a-consensus-mechanism} -A konszenzus mechanizmusok (más néven konszenzus protokollok vagy konszenzus algoritmusok) lehetővé teszik az elosztott rendszerek (számítógépes hálózatok) számára, hogy együtt dolgozzanak és biztonságosak maradjanak. +A konszenzusmechanizmus kifejezés a protokollok, ösztönzők és elképzelések egész halmazára utal, amelyek lehetővé teszik, hogy a csomópontok hálózata megegyezzen a blokklánc státuszáról. -Évtizedekig használták ezeket a mechanizmusokat, hogy elérjék az adatbázis csomópontok, alkalmazás szerverek és más vállalati infrastruktúrák közötti konszenzust. Az elmúlt években újfajta konszenzus protokollokat találtak fel, melyek lehetővé teszik az Ethereumhoz hasonló kriptoökonómiai rendszerek számára, hogy egyet tudjanak érteni a hálózat állapota felett. +Az Ethereum egy proof-of-stake-alapú konszenzusmechanizmust használ, amelynek kriptogazdasági biztonsága abból ered, hogy a letétesek által zárolt tőkéhez jutalmak és büntetések kapcsolódnak. Ez az ösztönző struktúra arra ösztönzi az egyes letéteseket, hogy becsületes validátorokat működtessenek, bünteti azokat, akik nem így tesznek, és rendkívül magas költséget teremt a hálózat megtámadásához. -Emellett egy konszenzus mechanizmus egy kriptoökonómiai rendszerben segít kivédeni bizonyos gazdasági támadásokat. Elméletben egy támadó képes megdönteni a konszenzust, ha a hálózat 51%-át irányítja. A konszenzus mechanizmusokat arra tervezték, hogy ellehetetlenítsék ezeket az "51%-os támadásokat". Különböző mechanizmusok különböző módon próbálják megoldani ezt a biztonsági problémát. +Ezután van egy protokoll, amely szabályozza, hogyan választják ki a becsületes validátorokat, hogy blokkokat javasoljanak vagy validáljanak, tranzakciókat dolgozzanak fel és szavazzanak a lánc fejéről. Azokban a ritka helyzetekben, amikor több blokk is ugyanabban a pozícióban van a lánc élén, van egy elágazásválasztó-mechanizmus, amely kiválasztja a „legnehezebb” láncot alkotó blokkokat, a blokkokra szavazó validátorok száma alapján, a letétbe helyezett ether-egyenlegükkel súlyozva. + +A konszenzus szempontjából fontosak a kódon kívüli koncepciók is, mint a megszokotton kívüli társadalmi koordináció biztonsága, mely a hálózat elleni támadások elleni védelmi vonal. + +Ezek az elemeket együttesen adják ki a konszenzusmechanizmust. ## A konszenzus mechanizmusok fajtái {#types-of-consensus-mechanisms} -### Proof-of-work {#proof-of-work} +### Proof-of-work alapú {#proof-of-work} -Az Ethereum, a Bitcoinhoz hasonlóan, jelenleg a proof-of-work (PoW) konszenzus protokollt használja. +Ahogy a Bitcoin, korábban Ethereum is a **proof-of-work (PoW)** alapú konszenzusprotokollt használta. #### Blokk létrehozás {#pow-block-creation} -A proof-of-work-öt a [bányászok](/developers/docs/consensus-mechanisms/pow/mining/) végzik, akik azért versenyeznek, hogy feldolgozott tranzakciókkal teli blokkokat hozhassanak létre. A győztes megosztja az új blokkot a hálózat többi részével és valamennyi újonnan kibocsájtott ETH-et kap jutalmul. A versenyt az nyeri, akinek a számítógépe a leggyorsabban tud megoldani egy matematikai feladványt - ez teremti meg a kapcsolatot a jelenlegi blokk és az előző blokk között. Ennek a feladványnak a megoldása jelenti a munkát a "proof-of-work-ben". +A bányászok versenyeznek, hogy új blokkokat hozzanak létre, amelyek tele vannak feldolgozott tranzakciókkal. A győztes megosztja az új blokkot a hálózat többi részével és valamennyi újonnan kibocsátott ETH-t kap jutalmul. A versenyt az a számítógép nyeri, amelyik a leggyorsabban meg tud oldani egy matematikai feladványt. Ez hozza létre a kriptográfiai kapcsolatot az aktuális és az azt megelőző blokk között. Ennek a feladványnak a megoldása jelenti a munkát a „proof-of-work-ben”. A kanonikus láncot ezután egy elágazásválasztási szabály határozza meg, amely kiválasztja azon blokkok halmazát, amelyek bányászatával a legtöbb munkát végezték. #### Biztonság {#pow-security} -A hálózatot az tartja biztonságban, hogy a hálózat számítási erejének több mint 51%-ára van szükséged, hogy átverd a láncot. Ez olyan nagy befektetést igényelne a felszerelésben és energiában, hogy valószínűleg többet költenél, mint amennyit nyernél vele. +A hálózatot az tartja biztonságban, hogy a számítási kapacitás több mint 51%-ára van szükség a lánc meghamisításához. Ez olyan nagy befektetést igényelne a felszerelésben és energiában, hogy a támadó valószínűleg többet költene, mint amennyit nyerne vele. -Többet a [proof-of-work-ről (PoW)](/developers/docs/consensus-mechanisms/pow/) +Bővebben a [proof-of-work-ről (PoW)](/developers/docs/consensus-mechanisms/pow/) -### Proof-of-stake {#proof-of-stake} +### Proof-of-stake alapú {#proof-of-stake} -Az Ethereum a tervek szerint átvált a [proof-of-stake (PoS)](/developers/docs/consensus-mechanisms/pos/) konszenzus protokollra. +Az Ethereum jelenleg **proof-of-stake (PoS)** alapú konszenzusprotokollt használ. #### Blokk létrehozás {#pos-block-creation} -A proof-of-stake-t validátorok végzik, akik letétbe helyezték az ETH-jüket, hogy részt vegyenek a rendszerben. Egy adott validátort véletlenszerűen választanak ki, hogy új blokkot hozzon létre és megossza a hálózattal, valamint jutalmat kapjon. Ahelyett, hogy intenzív számítási munkát kelljen végezned, csak az ETH-edet szükséges letenned a hálózatba. Ez az ami ösztönzi az egészséges hálózati viselkedést. +A validátorok blokkokat hoznak létre. Minden slotban véletlenszerűen kiválasztanak egy blokkelőterjesztőt. A kiválasztott konszenzuskliense egy adat tranzakciót kér végrehajtási csomagként a végrehajtási klienstől. Ezt konszenzusadatokba csomagolják, hogy egy blokkot alkossanak, melyet az Ethereum hálózat többi csomópontjának továbbítanak. Ezért a blokkkészítésért ETH-t kapnak. Ritka esetekben, amikor egy slothoz több blokk is létezik, vagy a csomópontok különböző időpontokban értesülnek a blokkokról, az elágazásválasztó-algoritmus azt a blokkot választja ki, amely a legnagyobb súlyú tanúsítással alkotja a láncot (ahol a tanúsítást végező validátorok számát azok ETH-egyenlegével súlyozzák). #### Biztonság {#pos-security} -A proof-of-stake rendszert az tartja biztonságban, hogy az összes letétbe helyezett ETH-nek az 51%-át kell birtokolnod, hogy átverd a láncot. És az, hogy a letétedet megvágják ha rosszindulatúan viselkedsz. +A proof-of-stake rendszer kriptogazdasági szempontból biztonságos, mivel egy támadónak, aki megpróbálja átvenni az irányítást a lánc felett, hatalmas mennyiségű ETH-t kell feláldoznia. A jutalmak rendszere arra ösztönzi az egyes letétbe helyezőket, hogy tisztességesen viselkedjenek, a büntetések pedig visszatartják őket attól, hogy rosszhiszeműen cselekedjenek. + +Bővebben a [proof-of-stake-ről](/developers/docs/consensus-mechanisms/pos/) + +### Vizuális áttekintés {#types-of-consensus-video} -Többet a [proof-of-stake-ről (PoS)](/developers/docs/consensus-mechanisms/pos/) +Tekintse meg az Ethereumon használt különféle konszenzusmechanizmusokat: + + + +### Ellenállás a Sybil-támadásnak & láncválasztás {#sybil-chain} + +A proof-of-work és proof-of-stake önmagukban nem konszenzusprotokollok, de az egyszerűség kedvéért gyakran így hivatkoznak rájuk. Ezek Sybil-ellenálló mechanizmusok és a blokkok létrehozójának kiválasztói; ezek segítségével lehet eldönteni, hogy ki a legutóbbi blokk kreálója. Egy másik fontos összetevő a láncválasztó (elágazásválasztó) algoritmus, amely lehetővé teszi a csomópontok számára, hogy egyetlen helyes blokkot válasszanak a lánc élére olyan esetekben, amikor több blokk van ugyanabban a pozícióban. + +A **Sybil-rezisztencia** azt méri, hogy egy protokoll hogyan viselkedik egy [Sybil-támadással](https://wikipedia.org/wiki/Sybil_attack) szemben. Sybil-támadás esetén egy felhasználó vagy csoport több felhasználónak adja ki magát. Az ilyen típusú támadásokkal szembeni ellenállás lényeges egy decentralizált blokkláncnál, és lehetővé teszi, hogy a bányászok és a validálók a befektetett erőforrások alapján egyenlő mértékben részesüljenek jutalomban. A proof-of-work és proof-of-stake mechanizmusok úgy védekeznek, hogy a felhasználóknak sok energiát kell ráfordítaniuk vagy sok biztosítékot kell nyújtaniuk. Ezek a védelmek gazdaságilag elrettentőek a Sybil-támadásokkal szemben. + +A **láncválasztási szabály** dönti el, hogy melyik lánc a „helyes”. A Bitcoin a „leghosszabb lánc” szabályt alkalmazza, ami azt jelenti, hogy amelyik blokklánc a leghosszabb, azt a többi csomópont is elfogadja érvényesnek, és azzal dolgozik. A proof-of-work láncok esetében a leghosszabb láncot a lánc összesített proof-of-work nehézsége határozza meg. Korábban az Ethereum is a leghosszabb lánc szabályát használta; most a proof-of-stake mechanizmussal működik, egy frissített elágazásválasztó algoritmust fogadott el, amely a lánc „súlyát” méri. A súly a validátorok szavazatainak összege, súlyozva a validátorok letétbe helyezett ether-egyenlegével. + +Az Ethereum a [Gasper](/developers/docs/consensus-mechanisms/pos/gasper/) nevű konszenzusmechanizmust használja, ami kombinálja a [Casper FFG proof-of-stake](https://arxiv.org/abs/1710.09437) módszert a [GHOST elágazásválasztási szabállyale](https://arxiv.org/abs/2003.03052). ## További olvasnivaló {#further-reading} +- [Mi az a blokklánc konszenzusalgoritmus?](https://academy.binance.com/en/articles/what-is-a-blockchain-consensus-algorithm) +- [Mit jelent a Nakamoto-konszenzus? Útmutató kezdőknek](https://blockonomi.com/nakamoto-consensus/) +- [Hogyan működik a Casper?](https://medium.com/unitychain/intro-to-casper-ffg-9ed944d98b2d) +- [A proof-of-work blokkláncok biztonságáról és teljesítményéről](https://eprint.iacr.org/2016/555.pdf) +- [Bizánci hiba](https://en.wikipedia.org/wiki/Byzantine_fault) + +_Ismersz olyan közösségi anyagot, amely segített neked? Módosítsd az oldalt és add hozzá!_ + ## Kapcsolódó témák {#related-topics} - [Proof-of-work](/developers/docs/consensus-mechanisms/pow/) diff --git a/public/content/translations/hu/developers/docs/consensus-mechanisms/pos/attack-and-defense/index.md b/public/content/translations/hu/developers/docs/consensus-mechanisms/pos/attack-and-defense/index.md new file mode 100644 index 00000000000..2eb0c36a410 --- /dev/null +++ b/public/content/translations/hu/developers/docs/consensus-mechanisms/pos/attack-and-defense/index.md @@ -0,0 +1,163 @@ +--- +title: Az Ethereum proof-of-stake rendszerére vonatkozó támadás és védekezés +description: Ismerje meg a proof-of-stake Ethereum elleni ismert támadási vektorokat és azok elleni védelmet. +lang: hu +--- + +A tolvajok és szabotőrök folyamatosan keresik a lehetőséget, hogy megtámadják az Ethereum kliensszoftverét. Ez az oldal ismerteti az Ethereum konszenzusrétegét érő ismert támadási vektorokat, és felvázolja, hogyan lehet ezeket a támadásokat kivédeni. Az ezen az oldalon található információk egy [hosszabb változatból](https://mirror.xyz/jmcook.eth/YqHargbVWVNRQqQpVpzrqEQ8IqwNUJDIpwRP7SS5FXs) származnak. + +## Előfeltételek {#prerequisites} + +A [proof-of-stake](/developers/docs/consensus-mechanisms/pos/) alapszintű ismerete szükséges. Hasznos lesz továbbá, ha alapszintű ismeretekkel rendelkezel az Ethereum [ösztönzési réteg](/developers/docs/docs/consensus-mechanisms/pos/rewards-and-penalties) és az elágazásválasztási algoritmus, [LMD-GHOST](/developers/docs/consensus-mechanisms/pos/gasper) működéséről. + +## Mit akarnak a támadók? {#what-do-attackers-want} + +Gyakori tévhit, hogy egy sikeres támadó képes új ethert generálni, vagy tetszőleges számlákról ethert lehívni. Egyik sem lehetséges, mivel minden tranzakciót a hálózat összes végrehajtási kliense hajtja végre. A tranzakcióknak meg kell felelniük az érvényesség alapvető feltételeinek (például a tranzakciókat a feladó privát kulcsa írja alá, a feladónak elegendő egyenleggel kell rendelkeznie stb. Az eredménynek három osztálya van, amelyet egy támadó reálisan megcélozhat: átszervezés, dupla véglegesség vagy a véglegesség késleltetése. + +Az **átszervezés** a blokkok új sorrendbe rendezése, esetleg a kanonikus láncban lévő blokkok hozzáadásával vagy kivonásával. Egy rosszindulatú átszervezés biztosíthatja, hogy bizonyos blokkok bekerüljenek vagy kikerüljenek, lehetővé téve a dupla költést vagy az értékkivonást előre és hátra futó tranzakciókkal (MEV). Az átszervezés arra is felhasználható, hogy bizonyos tranzakciókat ne lehessen felvenni a kanonikus láncba, ami a cenzúra egy formája. Az átszervezés legszélsőségesebb formája a „véglegesítés visszaállítása”, amely eltávolítja vagy helyettesíti a korábban véglegesített blokkokat. Ez csak akkor lehetséges, ha a támadó a teljes feltett éter több mint ⅓-át megsemmisíti – ez a garancia az úgynevezett „gazdasági véglegesség” (erről később még lesz szó). + +**Kettős véglegesség** az a valószínűtlen, de súlyos állapot, amikor két elágazás képes egyszerre véglegesedni, ami tartós szakadást okoz a láncban. Ez elméletileg lehetséges egy olyan támadó számára, aki hajlandó a teljes feltett éter 34%-át kockáztatni. A közösség kénytelen lenne a láncon kívül koordinálni és megegyezni arról, hogy melyik láncot kövesse, amihez a társadalmi réteg erejére lenne szükség. + +A **végleges késleltetése** megakadályozza, hogy a hálózat elérje a szükséges feltételeket a lánc szakaszainak véglegesítéséhez. Véglegesség nélkül nehéz megbízni az Ethereumra épülő pénzügyi alkalmazásokban. A végső késleltetéses támadás célja valószínűleg egyszerűen az Ethereum megzavarása, nem pedig a közvetlen haszonszerzés, kivéve, ha a támadónak stratégiai short pozíciója(i) van(nak). + +A szociális réteg elleni támadás célja lehet az Ethereumba vetett közbizalom aláásása, az ether leértékelése, az elfogadás csökkentése vagy az Ethereum közösség gyengítése, hogy megnehezítse a sávon kívüli koordinációt. + +Miután megállapítottuk, hogy egy ellenfél miért támadhatja meg az Ethereumot, a következő szakaszok azt vizsgálják meg, hogy _hogyan_ lehet ezt megtenni. + +## Támadási módszerek {#methods-of-attack} + +### Nulladik rétegbeli támadások {#layer-0} + +Először is, azok a személyek, akik nem vesznek részt aktívan az Ethereumban (a kliensszoftver futtatásával), a társadalmi réteget (nulladik réteg) célozva támadhatnak. A nulladik réteg az alap, amelyre az Ethereum épül, és mint ilyen, potenciális támadási felületet jelent, amelynek következményei a stack többi részére is kihatnak. Néhány példa: + +- Egy félretájékoztató kampány alááshatja a közösség bizalmát az Ethereum ütemtervét, fejlesztőcsapatokat, alkalmazásokba stb. illetően. Ez pedig csökkentheti a hálózat biztosításában résztvevők számát, ami rontja a decentralizációt és a kriptogazdasági biztonságot. +- Célzott támadások és/vagy fenyegetés a fejlesztői közösség ellen. Ez a fejlesztők önkéntes kilépéséhez vezethet, és lelassíthatja az Ethereum fejlődését. + +- A túlbuzgó szabályozás a nulladik réteg elleni támadásnak is tekinthető, mivel gyorsan visszavetheti a részvételt és az elfogadást. +- Hozzáértő, de rosszindulatú szereplők beszivárgása a fejlesztői közösségbe, akiknek célja a fejlődés lelassítása a megbeszélések megzavarásával, a fontos döntések késleltetésével, szemeteléssel (sapm) stb. +- Az Ethereum ökoszisztéma kulcsszereplőinek adott kenőpénzek, hogy ezzel befolyásolják a döntéshozatalt. + +Ezeket a támadásokat az teszi különösen veszélyessé, hogy sok esetben nagyon kevés tőkére vagy technikai tudásra van szükség. Egy nulladik rétegű támadás egy kriptogazdasági támadás multiplikátora lehet. Ha például a cenzúrát vagy a véglegesség visszaállítását egy rosszindulatú többségi érdekelt fél érné el, a társadalmi réteg aláásása megnehezíthetné a sávon kívüli közösségi válaszlépések koordinálását. + +A nulladik rétegbeli támadások elleni védekezés valószínűleg nem egyszerű, de néhány alapelvet fel lehet állítani. Az egyik az Ethereummal kapcsolatos nyilvános információk magas jel-zaj arányának fenntartása, amelyeket a közösség becsületes tagjai hoznak létre és terjesztenek blogokon, discord szervereken, kommentált specifikációkon, könyveken, podcastokon és a Youtube-on keresztül. Itt az ethereum.org-on igyekszünk pontos információkat fenntartani és a lehető legtöbb nyelvre lefordítani. A tér minőségi információkkal és mémekkel való elárasztása hatékony védekezés a félretájékoztatás ellen. + +Egy másik fontos megerősítés a társadalmi réteg támadásaival szemben az egyértelmű küldetésnyilatkozat és az irányítási protokoll. Az Ethereum a decentralizáció és a biztonság bajnokaként pozicionálta magát az L1-es okosszerződések között, miközben nagyra értékeli a skálázhatóságot és a fenntarthatóságot is. Bármilyen nézeteltérések merülnek fel az Ethereum közösségben, ezek az alapelvek minimálisan sérülnek. A narratíva értékelése ezen alapelvek alapján, és a felülvizsgálat egymást követő fordulóin keresztül az EIP (Ethereum Fejlesztési Javaslatok) folyamatában segíthet a közösségnek megkülönböztetni a jó és a rossz szereplőket, és korlátozhatja a rosszindulatú szereplők lehetőségét az Ethereum jövőbeli irányának befolyásolására. + +Végezetül fontos, hogy az Ethereum közösség nyitott és befogadó maradjon minden résztvevő számára. A zártkörű közösségek különösen sebezhetőek a társadalmi támadásokkal szemben, mivel könnyű „mi és ők” narratívákat építeni. A törzsiség és a mérgező maximalizmus árt a közösségnek és aláássa a nulladik réteg biztonságát. A hálózat biztonságában érdekelt ether-tagok úgy tekintsék az online és személyes találkozásokat, mint ami közvetlenül hozzájárul az Ethereum nulladik rétegének biztonságához. + +### A protokoll megtámadása {#attacking-the-protocol} + +Bárki futtathatja az Ethereum kliensszoftverét. Ahhoz, hogy egy validátor hozzáadjon egy klienshez, a felhasználónak 32 ethert kell betennie a letéti szerződésbe. A validátor lehetővé teszi a felhasználó számára, hogy aktívan részt vegyen az Ethereum hálózatának biztonságában azáltal, hogy új blokkokat javasol és tanúsít. A validátornak mostantól van egy olyan hangja, amellyel befolyásolhatja a blokklánc jövőbeli tartalmát – teheti ezt becsületesen, és a jutalmak révén növelheti az ether egyenlegét, vagy megpróbálhatja a folyamatot a saját előnyére manipulálni, kockáztatva a letétjét. A támadás egyik módja az, hogy a teljes letét nagyobb hányadát halmozzák fel, majd ezt arra használják, hogy a becsületes validálókat túlszavazzák. Minél nagyobb a támadó által ellenőrzött letét aránya, annál nagyobb a szavazóereje, különösen bizonyos gazdasági mérföldköveknél, amelyeket később megvizsgálunk. A legtöbb támadó azonban nem lesz képes elegendő ethert felhalmozni ahhoz, hogy ilyen módon támadjon, így ehelyett finom technikákat kell alkalmazniuk, hogy manipulálják a becsületes többséget, hogy egy bizonyos módon cselekedjen. + +Alapvetően minden kis letétes támadás a validátor kétféle hibás viselkedésének variációja: az alulaktivitás (nem vagy későn tesznek javaslatot) vagy a túlaktivitás (túl sokszor tesznek javaslatot egy sloton belül). Legegyszerűbb formájukban ezeket a műveleteket az elágazásválasztó algoritmus és az ösztönző réteg könnyen kezeli, de vannak okos módszerek arra, hogy a támadók előnyére játszhassák ki a rendszert. + +### Kis mennyiségű ETH-t használó támadások {#attacks-by-small-stakeholders} + +#### Átszervezések (reorg) {#reorgs} + +Több cikk is ismertette az Ethereum elleni olyan támadásokat, amelyek a teljes feltett ether csak kis hányadával érnek el reorgokat vagy végleges késleltetést. Ezek a támadások általában arra épülnek, hogy a támadó visszatart valamilyen információt a többi validátor elől, majd valamilyen árnyalt módon és/vagy egy alkalmas pillanatban kiadja azt. Céljuk általában az, hogy kiszorítsanak egy vagy több becsületes blokkot a kanonikus láncból. Egy tanulmány, [Neuder et al 2020](https://arxiv.org/pdf/2102.02247.pdf), megmutatta, hogy egy támadó validátor hogyan hozhat létre és tanúsíthat egy blokkot (`B`) egy adott `n+1` slothoz, de tartózkodhat attól, hogy azt a hálózat más csomópontjainak továbbítsa. Ehelyett a következő `n+2` slotig megtartják az igazolt blokkot. Egy becsületes validátor egy blokkot (`C`) javasol a `n+2` slotba. Ezzel szinte egyidejűleg a támadó kiadhatja a visszatartott blokkját (`B`) és az arra vonatkozó visszatartott tanúsítványait, és a `n+2` slotra leadott szavazataival azt is tanúsíthatja, hogy `B` a lánc feje, ezzel gyakorlatilag tagadva a becsületes `C` blokk létezését. Amikor az őszinte `D` blokk felszabadul, az elágazásválasztó algoritmus úgy látja, hogy a `B` tetejére épülő `D` nehezebb, mint a `C`-re épülő `D`. A támadónak tehát sikerült eltávolítania a `n+2` slotban lévő becsületes `C` blokkot a kanonikus láncból egy 1 blokkos ex ante reorg segítségével. [Egy támadónak a tét 34%-ával](https://www.youtube.com/watch?v=6vzXwwk12ZE) nagyon jó esélye van arra, hogy sikerrel járjon ebben a támadásban, amint azt [ebben a jegyzetben](https://notes.ethereum.org/plgVdz-ORe-fGjK06BZ_3A#Fork-choice-by-block-slot-pair) kifejtettük. Elméletileg azonban ezt a támadást kisebb letétekkel is meg lehetne kísérelni. [Neuder et al 2020](https://arxiv.org/pdf/2102.02247.pdf) leírta, hogy ez a támadás 30%-os letét mellett is működik, de később kimutatták, hogy [2%-os letét mellett is életképes](https://arxiv.org/pdf/2009.04987.pdf), majd [egyetlen validátor](https://arxiv.org/abs/2110.10086#) esetén is, a következő fejezetben vizsgált kiegyensúlyozási technikák segítségével. + +![ex-ante reorg](reorg-schematic.png) + +A fent leírt egyblokkos átszervezési támadás koncepcionális ábrája (a https://notes.ethereum.org/plgVdz-ORe-fGjK06BZ_3A#Fork-choice-by-block-slot-pair oldalról átvéve) + +Egy kifinomultabb támadás a becsületes validátorok halmazát különálló csoportokra oszthatja, amelyeknek különböző nézeteik vannak a lánc fejéről. Ezt nevezik **kiegyenlítő támadásnak**. A támadó megvárja az esélyt, hogy egy blokkot javasoljon, és amikor az megérkezik, kétértelművé válik, és kettőt javasol. Az egyik blokkot a becsületes validátorok felének, a másik blokkot pedig a másik felének küldik. Az elágazásválasztó algoritmus észlelné a kétértelműséget, és a blokkot javaslót megbüntetné és kidobná a hálózatból, de a két blokk továbbra is létezne, és a validátorok körülbelül fele tanúsítaná mindkét elágazást. Eközben a fennmaradó rosszindulatú validátorok visszatartják tanúsításaikat. Ezután az egyik vagy másik elágazást előnyben részesítő tanúsítások szelektív felszabadításával éppen elég validátornak adják át a tanúsítások felhalmozott súlyát az egyik vagy másik elágazás javára, amint az elágazásválasztó algoritmus lefut, így a tanúsítások felhalmozott súlyát az egyik vagy másik elágazás javára billentik. Ez a végtelenségig folytatódhat, a támadó validátorok pedig fenntartják a validátorok egyenletes elosztását a két elágazás között. Mivel egyik elágazás sem tud 2/3-os szupertöbbséget szerezni, a hálózat nem kerülne véglegesítésre. + +**A pattogó (bouncing) támadások** hasonlóak. A szavazatokat a támadó validátorok ismét visszatartják. Ahelyett, hogy a szavazatokat úgy adnák le, hogy a két elágazás között egyenletes legyen a felosztás, a megfelelő pillanatokban arra használják a szavazataikat, hogy olyan ellenőrzőpontokat igazoljanak, amelyek felváltva váltakoznak az A és a B elágazás között. A tanúsításnak ez a két elágazás közötti felcserélése megakadályozza, hogy olyan igazolt forrás- és célellenőrzési pontok párjai legyenek, amelyek bármelyik láncban véglegesíthetők, ami megállítja a véglegesítést. + + + +Mind a pattogó (bouncing), mind a kiegyenlítő (balancing) támadás arra épül, hogy a támadónak kifinomult kontrollja van az üzenetek időzítése felett a hálózaton keresztül, ami nem valószínű. Mindazonáltal a protokollba védelmet építettek be a gyors üzeneteknek a lassú üzenetekkel szemben adott többletsúlyozás formájában. Ez az úgynevezett [javaslattevő-súlynövelés (proposer-weight boosting)](https://github.com/ethereum/consensus-specs/pull/2730). A pattogó támadások elleni védekezés érdekében az elágazásválasztó algoritmust úgy frissítették, hogy a legutóbbi igazolt ellenőrzőpont csak [az adott korszak slotjainak első 1/3-ában](https://ethresear.ch/t/prevention-of-bouncing-attack-on-ffg/6114) válthat át egy alternatív láncra. Ez a feltétel megakadályozza, hogy a támadó szavazatokat gyűjtsön a későbbi használatra – az elágazásválasztó algoritmus egyszerűen hű marad ahhoz az ellenőrzőponthoz, amelyet a korszak első 1/3-ában választott, amely idő alatt a legtöbb becsületes validátor szavazott volna. + +Együttesen ezek az intézkedések olyan forgatókönyvet hoznak létre, amelyben egy becsületes blokkajánló nagyon gyorsan kibocsátja blokkját a slot kezdete után, majd van egy kb. 1/3 slotnyi (4 másodperc) időszak, amikor az új blokk miatt az elágazásválasztó algoritmus egy másik láncra válthat. Ugyanezen határidő után a lassú validátoroktól érkező tanúsításokat a korábban érkezett tanúsításokhoz képest lefelé súlyozzák. Ez nagymértékben kedvez a gyors ajánlattevőknek és a validátoroknak a lánc fejének meghatározásakor, és jelentősen csökkenti a sikeres kiegyenlítő (balancing) vagy pattogó (bouncing) támadás valószínűségét. + +Érdemes megjegyezni, hogy a javaslattevő erősítése önmagában csak az „olcsó reorgok” ellen véd, vagyis kis letétellel rendelkező támadó esetén. Valójában a előterjesztő-erősítés önmagában is kijátszható a nagyobb érdekeltek által. E [bejegyzés](https://ethresear.ch/t/change-fork-choice-rule-to-mitigate-balancing-and-reorging-attacks/11127) szerzői leírják, hogy egy támadó, aki a letét 7%-ával rendelkezik, hogyan vetheti be a szavazatait stratégiailag, hogy becsületes validálók becsapásával a saját elágazásákra építsen, és egy becsületes blokkot átszervezzen. Ezt a támadást ideális késleltetési feltételeket feltételezve dolgozták ki, ami nagyon valószínűtlen. A támadónak kedveznek az esélyek, de a nagyobb letét nagyobb tőkekockázatot és erősebb gazdasági visszatartó erőt is jelent. + +Javasoltak egy [kiegyenlítő támadást is, amely kifejezetten az LMD-szabályt célozza](https://ethresear.ch/t/balancing-attack-lmd-edition/11853), és amely a előterjesztő-erősítés ellenére is életképesnek bizonyult. Egy támadó két versengő láncot hoz létre úgy, hogy a blokkjavaslatát egyenlővé teszi, és minden egyes blokkot a hálózat egy-egy felére terjeszti el, így közelítőleg egyensúlyt hoz létre az elágazások között. Ezután az összejátszó validátorok kiegyenlítik a szavazataikat, úgy időzítve, hogy a hálózat fele a `A` elágazásra kapja meg először a szavazatát, a másik fele pedig a `B` elágazásra. Mivel az LMD-szabály elveti a második igazolást, és csak az elsőt tartja meg minden egyes validátor számára, a hálózat egyik fele csak az `A`-ra adott szavazatokat látja, a másik fele csak a `B`-re adottakat. A szerzők leírják, hogy az LMD-szabály "figyelemre méltó hatalmat" ad az ellenfélnek a kiegyenlítő támadáshoz. + +Ezt az LMD támadási vektort a [az elágazásválasztó algoritmus frissítésével](https://github.com/ethereum/consensus-specs/pull/2845) zártuk le úgy, hogy az elágazásválasztásnál az egyenlőtlen validátorokat teljesen kizárja a megfontolásból. Az egyenlőtlen validátorok jövőbeli befolyását az elágazásválasztó algoritmus kihagyja a számításból. Ez megakadályozza a fent vázolt kiegyenlítő támadást, miközben a lavinatámadásokkal szembeni ellenállóképességet is fenntartja. + +A támadások egy másik osztályát, az úgynevezett [**lavinatámadásokat**](https://ethresear.ch/t/avalanche-attack-on-proof-of-stake-ghost/11854/3) egy [2022 márciusában megjelent tanulmányban](https://arxiv.org/pdf/2203.01315.pdf) írták le. A lavinatámadáshoz a támadónak több egymást követő blokkajánlót kell irányítania. A támadó minden egyes blokkjavaslati slotban visszatartja a blokkját, és addig gyűjti azokat, amíg az őszinte lánc el nem éri a visszatartott blokkokkal azonos részfa súlyát. Ezután a visszatartott blokkok felszabadulnak úgy, hogy maximálisan kiegyenlítődnek. A szerzők szerint a előterjesztő-erősítés – az elsődleges védelem a kiegyenlítő és pattogó támadások ellen – nem véd a lavinatámadás egyes változatai ellen. A szerzők azonban a támadást csak az Ethereum elágazásválasztó algoritmusának egy erősen idealizált változatán mutatták be (a GHOST-ot használták LMD nélkül). + +A lavinatámadást az LMD-GHOST elágazásválasztó algoritmus LMD része enyhíti. Az LMD jelentése a „legutolsó üzenet által vezérelt” (latest-message-driven), és az egyes validátorok által vezetett táblázatra utal, amely a többi validátortól kapott legfrissebb üzenetet tartalmazza. Ez a mező csak akkor frissül, ha az új üzenet egy későbbi időpontból származik, mint a táblázatban egy adott validátort illetően már szereplő üzenet. A gyakorlatban ez azt jelenti, hogy minden egyes slotban az első fogadott üzenet az, amelyet a rendszer elfogadott, és minden további üzenet kétértelműség, amelyet figyelmen kívül kell hagyni. Másképpen fogalmazva, a konszenzuskliensek nem veszik figyelembe a kétértelműséget – a validátoroktól elsőként érkező üzenetet használják, a kétértelműséget elvetik, megelőzve ezzel a lavinatámadásokat. + +Az elágazásválasztási szabály számos más lehetséges jövőbeli frissítése is létezik, amelyek növelhetik a előterjesztő-erősítés által nyújtott biztonságot. Az egyik a [nézetösszevonás](https://ethresear.ch/t/view-merge-as-a-replacement-for-proposer-boost/13739), ahol a tanúsítók `n` másodperccel egy slot kezdete előtt befagyasztják az elágazásválasztásról alkotott nézetüket, és a javaslattevő ezután segít szinkronizálni a lánc nézetét a hálózaton. Egy másik lehetséges fejlesztés az [ egy sloton belüli véglegesség (single-slot finality)](https://notes.ethereum.org/@vbuterin/single_slot_finality), amely az üzenet időzítésén alapuló támadások ellen véd azáltal, hogy a láncot egyetlen slot után véglegesíti. + +#### Véglegesség késleltetése {#finality-delay} + +[Az a cikk](https://econcs.pku.edu.cn/wine2020/wine2020/Workshop/GTiB20_paper_8.pdf), amely először írta le az alacsony költségű, egyetlen blokkot érintő reorg támadást, leírt egy végső késleltetés (liveness failure) nevű támadást is, amely arra támaszkodik, hogy a támadó egy korszakkal határos blokk javaslattevője. Ez azért kritikus, mert ezek a korszakhatár blokkok lesznek az ellenőrző pontok, amelyeket a Casper FFG a lánc egyes részeinek véglegesítéséhez használ. A támadó egyszerűen visszatartja a blokkját, amíg elegendő becsületes validátor nem használja FFG-szavazatát az előző korszakhatárblokk javára, mint az aktuális véglegesítési cél. Ezután kiadja a visszatartott blokkot. Ők tanúsítják a blokkjukat, és a fennmaradó becsületes validátorok is ezt teszik, különböző célellenőrzési pontokkal rendelkező elágazásokat hozva létre. Ha jól időzítették, akkor megakadályozzák a véglegességet, mert nem lesz 2/3-os szupertöbbség, amely bármelyik elágazást tanúsítja. Minél kisebb a letét, annál pontosabb időzítésre van szükség, mivel a támadó kevesebb tanúsítást ellenőriz közvetlenül, és annál kisebb az esélye annak, hogy a támadó ellenőrzi a validátort, amely a korszakhatárblokkot javasolja. + +#### Nagy hatótávolságú támadások {#long-range-attacks} + +Létezik egy, a proof-of-stake blokkláncokra jellemző támadási osztály is, amelynek lényege, hogy a genezisblokkban részt vevő validátor fenntartja a blokklánc egy különálló elágazását a helyes blokklánc mellett, és végül meggyőzi az őszinte validátorhalmazt, hogy később egy alkalmas időpontban váltson át rá. Ez a fajta támadás nem lehetséges az Ethereumon, mivel a véglegességi eszköz (finality gadget) biztosítja, hogy az összes validátor rendszeres időközönként (ellenőrzőpontok) megegyezzen a becsületes lánc állapotáról. Ez az egyszerű mechanizmus semlegesíti a nagy hatótávolságú támadókat, mivel az Ethereum kliensei egyszerűen nem fogják a véglegesített blokkokat újraszervezni. A hálózathoz csatlakozó új csomópontok úgy teszik ezt, hogy keresnek egy megbízható legutóbbi állapot hash-t (egy [gyenge szubjektivitás](https://blog.ethereum.org/2014/11/25/proof-stake-learned-love-weak-subjectivity/) ellenőrzőpontot), és azt használják pszeudo-genezis blokkként, amelyre építkeznek. Ez egy „bizalmi bejáratot” hoz létre a hálózatba belépő új csomópont számára, mielőtt az elkezdené ellenőrizni az információkat saját maga számára. + +#### Szolgáltatásmegtagadás (DoS) {#denial-of-service} + +Az Ethereum proof-of-stake mechanizmusa minden egyes slotban egyetlen validátort választ ki a teljes validátorkészletből, aki blokkajánló lesz. Ezt egy nyilvánosan ismert függvény segítségével lehet kiszámítani, és egy támadó számára lehetséges, hogy a következő blokkelőterjesztőt beazonosítsa. Ezután a támadó eláraszthatja szeméttel (spam) a blokkelőterjesztőt, hogy megakadályozza, hogy információt cseréljen a társaival. A hálózat többi része számára úgy tűnne, hogy a blokkelőterjesztő offline, és a slot egyszerűen üresen marad. Ez egyfajta cenzúra lehet bizonyos validátorokkal szemben, megakadályozva őket abban, hogy információt adjanak hozzá a blokklánchoz. Az egyetlen, titkos vezető kiválasztás (SSLE) vagy az egynél több titkos vezető kiválasztás megvalósítása csökkenti a szolgáltatásmegtagadás (DoS) kockázatát, mivel mindig csak a blokkelőterjesztő tudja, hogy kiválasztották, és nem ismerhető meg előre. Ez még nem valósult meg, de aktív [kutatás-fejlesztési](https://ethresear.ch/t/secret-non-single-leader-election/11789) terület. + +Mindezek alapján elmondható, hogy kis letétekkel nehéz sikeresen megtámadni az Ethereumot. Az itt leírt életképes támadásokhoz idealizált elágasztásválasztó algoritmusra, valószínűtlen hálózati körülményekre van szükség, vagy a támadási vektorokat már lezárták az kliensszoftver javításokkal. Ez nem zárja ki a lehetőséget, de a kisebbségi letéttel rendelkező támadó hatékonyságát meghatározza az, hogy milyen szintű technikai képességekkel bír, a konszenzusréteg ismerete és a szerencse. A támadó szempontjából az lehet a legjobb megoldás, ha minél több ethert halmoz fel, és a teljes letét többségi hányadával próbál elérni valamit. + +### A támadók a teljes letét >=33%-át használják {#attackers-with-33-stake} + +Az eddig említett összes támadás sikerének valószínűsége megnő, ha a támadónak több letétbe helyezett ether áll rendelkezésére, amivel szavazhat, és több validálót választhat, akik blokkokat javasolhatnak az egyes slotokban. Egy rosszindulatú validátor ezért arra törekedhet, hogy minél több letétbe helyezett ether irányítson. + +A feltett ether 33%-a egy támadó számára viszonyítási alap, mivel egy ennél nagyobb összeggel képesek megakadályozni a lánc véglegesítését anélkül, hogy a többi validáló tevékenységét irányítaniuk kellene. Egyszerűen mindannyian együtt eltűnhetnek. Ha a letétbe helyezett ether 1/3-a vagy több mint 1/3-a rosszindulatúan vagy nem tanúsít, akkor a 2/3-os szupertöbbség nem állhat fenn, és a lánc nem véglegesíthető. Ez ellen az inaktivitás elszivárgással védekeznek. Az inaktivitás elszivárgás azonosítja azokat a validátorokat, akik nem vagy a többséggel ellentétesen tanúsítanak. A nem tanúsító validátorok által birtokolt letétbe helyezett ether fokozatosan elvezetésre kerül, míg végül együttesen a teljes mennyiség kevesebb mint 1/3-át képviselik, így a lánc újra véglegesedhet. + +Az inaktivitási elszivárgás célja, hogy a lánc ismét véglegesedjen. A támadó azonban a letétbe helyezett ether egy részét is elveszíti. A teljes letétbe helyezett ether 33%-át kitevő validátorok tartós inaktivitása nagyon drága, még akkor is, ha nem is kapnak súlyos és kizárással járó büntetést. + +Feltételezve, hogy az Ethereum-hálózat aszinkron (az üzenetek küldése és fogadása között késések vannak), egy támadó, aki a teljes letét 34%-át ellenőrzi, kétszeres véglegesítést okozhat. Ez azért van, mert a támadó kétértelművé teheti, ha őt választják blokkelőterjesztőnek, majd duplán szavazhat az összes validátorával. Ez olyan helyzetet teremt, amelyben a blokkláncnak egy olyan elágazása létezik, amely mellett a letétbe helyezett ether 34%-a szavazott. Mindkét elágazásra csak a fennmaradó validátorok 50%-ának kell szavaznia, hogy mindkét elágazást szupertöbbség támogassa, és így mindkét lánc véglegesíthető (mivel a támadó validátorok 34%-a + a fennmaradó 66% fele = 67% mindkét elágazásnál). Az egymással versengő blokkokat a becsületes validátorok kb. 50%-ának kellene megkapnia, így ez a támadás csak akkor életképes, ha a támadónak bizonyos fokú ellenőrzése van a hálózaton terjedő üzenetek időzítése felett, így a becsületes validátorok felét rá tudja kényszeríteni az egyes láncokra. A támadónak szükségszerűen el kellene pusztítania a teljes letétjét (kb. 10 millió ether 34%-a a mai validátor halmazt figyelembe véve), hogy elérje ezt a kettős véglegességet, mivel a validátorok 34%-a egyszerre kétszer szavazna – ez egy súlyos és kizárással járó büntetés maximális korrelációval. Ezzel a támadással szemben az a magas költség áll, hogy a teljes letétbe helyezett ether 34%-át el kell pusztítani. A támadásból való kilábaláshoz az Ethereum közösségnek „sávon kívül” kell koordinálnia, és meg kellene állapodnia abban, hogy az egyik elágazást követi, a másikat pedig figyelmen kívül hagyja. + +### A támadók a teljes letét kb. 50%-át használják {#attackers-with-50-stake} + +A letétbe helyezett ether 50%-ánál a validátorok egy rosszindulatú csoportja elméletileg két egyforma méretű elágazásra oszthatná a láncot, majd egyszerűen felhasználhatná a teljes 50%-os letétjét arra, hogy a becsületes validátorok csoportjával ellentétesen szavazzon, így fenntartva a két elágazást és megakadályozva a véglegesítést. A két elágazáson az inaktivitási elszivárgása végül mindkét lánc véglegesítéséhez vezet. Ezen a ponton az egyetlen lehetőség a közösségi helyreállítás. + +Nagyon valószínűtlen, hogy a validátorok egy ellenséges csoportja következetesen ellenőrizni tudná a teljes letét pontosan 50%-át, mivel a becsületes validátorok száma, a hálózati késleltetés stb. változó mértékű – egy racionális támadó számára a támadás hatalmas költsége és a siker alacsony valószínűsége erős visszatartó erőnek tűnik, különösen ha a _több mint_ 50% megszerzése nagyobb hatalmat szabadít fel. + +A teljes letét >50%-ánál a támadó uralni tudta az elágazásválasztó algoritmust. Ebben az esetben a támadó képes lenne a többségi szavazattal tanúsítani, ami elegendő kontrollt adna neki ahhoz, hogy rövid átrendeződéseket hajtson végre anélkül, hogy becsületes klienseket kellene becsapnia. A becsületes validálók követnék ezt a példát, mivel az ő elágazásválasztó algoritmusuk is a támadó által preferált láncot látná a legnehezebbnek, így a lánc véglegesedhetne. Ez lehetővé teszi a támadó számára, hogy bizonyos tranzakciókat cenzúrázzon, rövidtávú átszervezéseket végezzen, és a blokkok önérdekű átrendezésével profitot (MEV) szerezzen. Ez ellen a többségi részesedés hatalmas költsége (az írás idején ez kb. 19 milliárd dollár) ad védelmet, amelyet egy támadó kockáztat, mivel a társadalmi réteg közbeléphet, és elfogadhat egy becsületes kisebbségi elágazást, ami drámaian leértékeli a támadó részesedését. + +### A támadók a teljes letét >=66%-át használják {#attackers-with-66-stake} + +Egy támadó, aki az összes letétbe helyezett ether 66%-ával vagy többel rendelkezik, véglegesítheti a preferált láncot anélkül, hogy a becsületes validálókat kényszerítenie kellene. A támadók egyszerűen megszavazhatják a preferált elágazást, majd véglegesíthetik azt, mert tisztességtelen szupertöbbséggel szavazhatnak. A szupertöbbség birtokosaként a támadó irányítaná a véglegesített blokkok tartalmát, hatalmában állna költeni, visszatekerni és újrakölteni, cenzúrázni bizonyos tranzakciókat és tetszés szerint átszervezni a láncot. Azzal, hogy a támadó további ethert vásárol, hogy 51% helyett 66%-ot ellenőrizzen, megszerzi a képességet, hogy utólagos reorgokat és végleges visszafordításokat hajtson végre (azaz megváltoztassa a múltat és ellenőrizze a jövőt is). Az egyetlen igazi védekezés a hatalmas költség, a teljes letétbe helyezett ether 66%-a, és a közösségi rétegre támaszkodva egy alternatív elágazás elfogadásának koordinálása. Ezt a következő részben részletesebben is megvizsgáljuk. + +## Emberek: az utolsó védelmi vonal {#people-the-last-line-of-defense} + +Ha a tisztességtelen validátoroknak sikerül véglegesíteniük a lánc általuk preferált verzióját, az Ethereum közösség nehéz helyzetbe kerül. A kanonikus lánc tartalmaz egy tisztességtelen szakaszt a történetébe beépítve, míg a becsületes validátorok büntetést kaphatnak, ha egy alternatív (becsületes) láncot tanúsítanak. Vegye figyelembe, hogy egy véglegesített, de hibás lánc a többségi kliens hibájából is adódhat. Végül a végső megoldás az, hogy a közösségi (nulladik) rétegre hagyatkozunk. + +Az Ethereum proof-of-stake konszenzusának egyik erőssége, hogy a közösség számos [védekező stratégiát](https://youtu.be/1m12zgJ42dI?t=1712) alkalmazhat egy támadás esetén. A minimális válasz lehet a támadók validátorainak a hálózatból való kizárása további szankció nélkül. A hálózatba való újbóli belépéshez a támadó egy aktiválási sorba kerül, amely biztosítja, hogy a validátorok halmaza fokozatosan növekedjen. Például elegendő validátor hozzáadása ahhoz, hogy megduplázza a letétbe helyezett ether mennyiségét, körülbelül 200 napot vesz igénybe, így a becsületes validátorok ennyi időt nyerhetnek, mielőtt a támadó újabb 51%-os támadást kísérelhet meg. A közösség azonban dönthet úgy is, hogy szigorúbban bünteti a támadót, visszavonva a korábbi jutalmakat, vagy elégetve a letéti tőke egy részét (vagy akár 100%-át). + +A támadóra kiszabott büntetéstől függetlenül a közösségnek közösen kell döntenie arról is, hogy a tisztességtelen lánc – annak ellenére, hogy az Ethereum-kliensekbe kódolt elágazásválasztó algoritmus előnyben részesíti – valójában érvénytelen, és a közösségnek inkább a tisztességes láncra kellene építenie. A becsületes validátorok megállapodhatnak, hogy az Ethereum blokklánc közösség által elfogadott elágazására építenek, amely például a támadás megkezdése előtt elágazhatott a kanonikus láncról, vagy a támadók validátorait eltávolíthatják. A becsületes validátorok ösztönzést kapnának arra, hogy erre a láncra építsenek, mert elkerülhetnék a büntetést, amit azért kapnának, ha (jogosan) nem tanúsítanák a támadó láncát. Az Ethereumra épülő tőzsdék, on-rampok és alkalmazások inkább a helyes láncon szeretnének lenni, és követnék a becsületes validálókat a helyes blokkláncra. + +Ez azonban jelentős vezetési kihívást jelentene. Néhány felhasználó és validáló kétségtelenül veszítene a helyes láncra való visszaváltás következtében, a támadás után validált blokkokban lévő tranzakciókat potenciálisan visszavonnák, megzavarva az alkalmazási réteget, és ez aláássa egyes felhasználók etikai elképzeléseit, akik hajlamosak azt hinni, hogy „a kód a törvény”. A tőzsdék és az alkalmazások valószínűleg összekapcsolták a láncon kívüli műveleteket a láncon belüli tranzakciókkal, amelyeket most vissza lehet göngyölíteni, elindítva a visszavonások és felülvizsgálatok tömkelegét, amelyet nehéz lenne tisztességesen kibogozni, különösen, ha a jogtalanul szerzett nyereségeket összekeverték, DeFi-ba vagy más származékos termékekbe helyezték, amelyek másodlagos hatásokkal járnak a tisztességes felhasználók számára. Kétségtelen, hogy néhány felhasználó, talán még az intézményiek is, hasznot húztak volna a tisztességtelen láncból, ravaszságból vagy szerencsés véletlenből, és elleneznék az elágazást, hogy megvédjék a hasznukat. Elpróbálták a >51%-os támadásokra adott közösségi válaszlépéseket, hogy egy ésszerű, összehangolt választ gyorsan végre lehessen hajtani. A témáról tekintse meg Vitalik hasznos eszmecseréit az ethresear.ch-n [itt](https://ethresear.ch/t/timeliness-detectors-and-51-attack-recovery-in-blockchains/6925) és [itt](https://ethresear.ch/t/responding-to-51-attacks-in-casper-ffg/6363), valamint a Twitteren [itt](https://twitter.com/skylar_eth/status/1551798684727508992?s=20&t=oHZ1xv8QZdOgAXhxZKtHEw). Az összehangolt társadalmi reakció célja a támadó megbüntetése és a többi felhasználóra gyakorolt hatások minimalizálása kell, hogy legyen. + +A vezetés már önmagában is bonyolult téma. Egy tisztességtelen véglegesítő láncra adott nulladik réteg vészreakció kezelése kihívást jelentene az Ethereum közösség számára, de ez már [megtörtént](/history/#dao-fork-summary) – [kétszer](/history/#tangerine-whistle) – az Ethereum történetében. + +Mindazonáltal van valami kielégítő abban, hogy a végső megoldás a való világban található. Végső soron, még e fenomenális technológiai rendszer ellenére is, ha a legrosszabb valaha is bekövetkezne, a valódi embereknek kellene koordinálniuk a kiutat. + +## Összegzés {#summary} + +Ez az oldal azt vizsgálta, hogy a támadók milyen módon próbálhatják meg kihasználni az Ethereum proof-of-stake konszenzus protokollját. A reorgokat és a véglegesítés késleltetését a teljes letétbe helyezett ether növekvő arányú támadók esetében vizsgáltuk. Összességében a gazdagabb támadóknak nagyobb esélyük van a sikerre, mivel a letétjük szavazati joggal jár, amellyel befolyásolni tudják a jövőbeli blokkok tartalmát. Bizonyos küszöbértékeknél a támadó ereje növekszik: + +33%: késleltetett véglegesség + +34%: késleltetett véglegesség, kettős véglegesség + +51%: késleltetett véglegesség, kettős véglegesség, cenzúra, a blokklánc jövőjének ellenőrzése + +66%: késleltetett véglegesség, kettős véglegesség, cenzúra, a blokklánc jövőjének és múltjának ellenőrzése + +Létezik egy sor kifinomultabb támadás is, amelyekhez kis mennyiségű letétbe helyezett ether is elég, de egy kifinomult támadó kell hozzá, aki az üzenet időzítése felett kontrollt gyakorol, hogy a saját javára befolyásolja a becsületes validátorok halmazát. + +Összességében, e potenciális támadási vektorok ellenére a sikeres támadás kockázata alacsony, minden bizonnyal alacsonyabb, mint a proof-of-work-nél. Mival a támadó, aki a becsületes validátorok szavazati erejével elnyomja a becsületes validátorokat, a letétbe helyezett ether költségét kockáztatja. A beépített „jutalmazás-büntetés” ösztönző réteg megvéd a legtöbb visszaéléstől, különösen az alacsony letéttel rendelkező támadóktól. A kifinomultabb pattogó és kiegyenlítő támadások szintén nem valószínű, hogy sikerrel járnak, mivel a valós hálózati feltételek miatt nehéz elérni az üzenetek kézbesítésének szabályozását a validálók meghatározott részhalmazaihoz, és a klienscsapatok egyszerű javításokkal lezárták az ismert pattogó, kiegyenlítő és lavina támadási vektorokat. + +A 34%-os, 51%-os vagy 66%-os támadások sávon kívüli társadalmi koordinációt igényelnek a megoldásához. Bár ez valószínűleg fájdalmas lenne a közösség számára, a sávon kívüli válaszadás képessége erős visszatartó erőt jelent a támadóknak. Az Ethereum közösségi rétege a végső biztosíték – egy technikailag sikeres támadást még mindig ki lehet iktatni azzal, hogy a közösség elfogad egy becsületes elágazást. A támadó és az Ethereum közösség versenyt futna – a 66%-os támadásra költött dollármilliárdokat egy sikeres közösségi koordináció eltörölné, ha elég gyorsan végzik, így a támadó rengeteg nem likvid etherrel egy tisztességtelen láncon, amelyet az Ethereum közösség figyelmen kívül hagy. Alacsony a valószínűsége, hogy ez a támadónak végül nyereséget hoz, ezért hatékony visszatartóerőt jelent. Ezért olyan fontos a szorosan összehangolt értékekkel rendelkező, összetartó közösségi réteg fenntartása. + +## További olvasnivaló {#further-reading} + +- [A jelen írás részletesebb verziója](https://mirror.xyz/jmcook.eth/YqHargbVWVNRQqQpVpzrqEQ8IqwNUJDIpwRP7SS5FXs) +- [Vitalik az elszámolási véglegességről](https://blog.ethereum.org/2016/05/09/on-settlement-finality/) +- [LMD GHOST leírás](https://arxiv.org/abs/2003.03052) +- [Casper-FFG leírás](https://arxiv.org/abs/1710.09437) +- [Gasper leírás](https://arxiv.org/pdf/2003.03052.pdf) +- [A javaslattevő erősítés konszenzus specifikációi](https://github.com/ethereum/consensus-specs/pull/2730) +- [Pattogó támadások az ethresear.ch oldalon](https://ethresear.ch/t/prevention-of-bouncing-attack-on-ffg/6114) +- [SSLE kutatás](https://ethresear.ch/t/secret-non-single-leader-election/11789) diff --git a/public/content/translations/hu/developers/docs/consensus-mechanisms/pos/attestations/index.md b/public/content/translations/hu/developers/docs/consensus-mechanisms/pos/attestations/index.md new file mode 100644 index 00000000000..2f3e4ff23ed --- /dev/null +++ b/public/content/translations/hu/developers/docs/consensus-mechanisms/pos/attestations/index.md @@ -0,0 +1,86 @@ +--- +title: Tanúsítások +description: A tanúsítások menete az Ethereum proof-of-stake (letéti igazolás) mechanizmusában. +lang: hu +--- + +A validátornak minden korszakban (epoch) tanusítást kell készítenie, aláírnia és szétküldenie. Ez a leírás bemutatja, hogyan néznek ki ezek a tanúsítások, hogyan kezelik azokat és kommunikálják a konszenzuskliensek között. + +## Mi az a tanúsítás? {#what-is-an-attestation} + +Minden [korszakban (epoch)](/glossary/#epoch) (6,4 perc) a validátor tanúsítást készít a hálózatnak. A tanúsítás a korszak egy megadott slotjára történik. A tanúsítás célja az, hogy szavazzon amellett, ahogyan ő maga látja a láncot, különösképpen a legutóbbi ellenőrzött blokk és a jelen korszak első blokkja tekintetében (melyeket `source` (eredet) és `target` (cél) ellenőrzési pontoknak neveznek). Az információt összekombinálják az összes résztvevő validátorra, így a hálózat konszenzust tud elérni a blokklánc státuszát illetően. + +A tanúsítás a következő elemekből áll: + +- `aggregation_bits`: a validátorok bitlistája, ahol a pozíció a validátornak a bizottságbeli indexéhez kapcsolódik; az érték (0/1) azt mutatja, hogy a validátor aláírta a `data` mezőt (tehát aktív és egyetért a blokkelőterjesztővel) +- `data`: a tanúsításhoz kapcsolódó részletek, ahogy az alább látszik +- `signature`: egy BLS aláírás, ami aggregálja az egyéni validátorok aláírásait + +A tanúsítást végző validátor első feladata az, hogy felépítse a `data` mezőit. A `data` a következő információkat tartalmazza: + +- `slot`: A slot száma, melyre a tanúsítás vonatkozik +- `index`: Egy szám, ami beazonosítja, hogy a validátor melyik bizottsághoz tartozik egy adott slotban +- `beacon_block_root`: A blokk gyökérhash-e, amit a validátor lát a lánc fejeként (az elágazásválasztási algoritmus alkalmazásának eredménye) +- `source`: A véglegesedési szavazás része, mely azt mutatja, hogy a validátorok melyik blokkot látják a legutolsó igazoltnak +- `target`: A véglegesedési szavazás része, mely azt mutatja, hogy a validátorok melyik blokkot látják a jelen korszak első blokkjának + +Amint a `data` felépül, a validátor átválthatja a bitet az `aggregation_bits` mezőben 0-ról 1-re, amely a saját validátor indexéhez kapcsolódik, így mutatja, hogy részt vett. + +Végül a valdátor aláírja a tanusítást és elküldi azt a hálózaton. + +### Aggregált tanúsítás {#aggregated-attestation} + +Az adat elterjesztése a hálózaton minden validátor esetében jelentős költséggel jár. Ezért az egyéni validátorok tanúsításait aggregálják az alhálókon belül, mielőtt szélesebb körben szétküldenék azt. Ennek része az aláírások aggregálása, így a kiküldött tanúsítás tartalmazza a konszenzus `data` mezőit és egyetlen aláírást, melyet az összes validátor aláírásából készítenek, aki egyetértett a `data` tartalmával. Ezt le lehet ellenőrizni az `aggregation_bits` mezővel, mert ez adja meg a bizottságban lévő validátorok indexeit (akiknek az ID-ja része a `data` mezőinek), amellyel le lehet kérdezni az egyéni aláírásokat. + +Minden korszakban minden alhálóban egy validátort kiválasztanak, hogy `aggregator` legyen. Az aggregátor összegyűjti az összes tanúsítást, amelyről hall a pletykahálózaton, s melyeknek ugyanolyan `data` áll rendelkezésre, mint neki. Minden egyező tanúsítás küldője feljegyződik az `aggregation_bits` mezőben. Ezután az aggregátor szétküldi az aggregált tanúsítást a szélesebb hálózaton. + +Amikor a validátort választják blokkelőterjesztőnek, akkor az új blokkba beteszi az aggregált tanúsításokat az alhálózatoktól egészen az utolsó slotig. + +### A tanúsítások belefoglalásának életciklusa {#attestation-inclusion-lifecycle} + +1. Létrehozás +2. Elterjesztés +3. Aggregálás +4. Elterjesztés +5. Belefoglalás + +A tanúsítás életciklusát a következő ábra is bemutatja: + +![a tanúsítás életciklusa](./attestation_schematic.png) + +## Jutalmak {#rewards} + +A validátorok jutalmat kapnak az elküldött tanúsításokért. A tanúsítás jutalma két dologtól függ: a `base reward` (alapjutalom) és az `inclusion delay` (belefoglalási késés). A belefoglalási késés a legjobb esetben 1. + +`attestation reward = 7/8 x base reward x (1/inclusion delay)` + +### Alapjutalom {#base-reward} + +Az alapjutalom számítása a tanúsításban részt vevő validátorok számától és az általuk letétbe helyezett ether egyenlegétől függ: + +`base reward = validator effective balance x 2^6 / SQRT(Effective balance of all active validators)` + +#### Belefoglalási késés {#inclusion-delay} + +Aikor a validátorok szavaztak a lánc fejére (`block n`), akkor a `block n+1` még nem volt előterjesztve. Ezért a tanúsítások természetes módon **one block later** (egy blokkal később) kerülnek be, így minden tanúsítás, amelyik azt mondta, hogy a `block n` a lánc feje, az bekerül a `block n+1`-be, és az **inclusion delay** (belefoglalási késés) értéke 1. Ha a belefoglalási késés két slotnyi lesz, akkor a tanúsítási jutalom feleződik, mert a jutalom kiszámításához az alapjutalom szorozva van a belefoglalási késés reciprokával. + +### Tanúsítási esetek {#attestation-scenarios} + +#### Hiányzó validátor, aki szavaz {#missing-voting-validator} + +A validátoroknak legfeljebb 1 korszak áll rendelkezésre, hogy elküldjék a tanúsításukat. Ha a tanúsítás lekési a 0. korszakot, akkor belefoglalási késéssel be tudják még küldeni az 1. korszakban. + +#### Hiányzó aggregátor {#missing-aggregator} + +Összesen 16 aggregátor van minden korszakban. Emellett véletlenszerű validátorok be vannak jegyezve **két alhálózatra 256 korszakra**, és ők helyettesítik az aggregátorokat, ha bárki hiányzik. + +#### Hiányzó blokkelőterjesztő {#missing-block-proposer} + +Néhány esetben a szerencsés aggregátor blokkelőterjesztővé válhat. Ha a tanúsítás nem került be, mert a blokkelőterjesztő hiányzik, akkor a következő előterjesztő felkapja az aggregált tanúsítást és beteszi a következő blokkba. Ugyanakkor az **inclusion delay** megnövekszik eggyel. + +## További olvasnivaló {#further-reading} + +- [Tanúsítások Vitalik által kommentált konszenzusspecifikációban](https://github.com/ethereum/annotated-spec/blob/master/phase0/beacon-chain.md#attestationdata) +- [Tanúsítások az eth2book.info oldalon](https://eth2book.info/altair/part3/containers/dependencies#attestationdata) + +_Ismersz olyan közösségi anyagot, amely segített neked? Módosítsd az oldalt és add hozzá!_ diff --git a/public/content/translations/hu/developers/docs/consensus-mechanisms/pos/block-proposal/index.md b/public/content/translations/hu/developers/docs/consensus-mechanisms/pos/block-proposal/index.md new file mode 100644 index 00000000000..1b60ca77048 --- /dev/null +++ b/public/content/translations/hu/developers/docs/consensus-mechanisms/pos/block-proposal/index.md @@ -0,0 +1,69 @@ +--- +title: Blokkjavaslat +description: Magyarázat a blokkok előterjesztéséről a proof-of-stake Ethereumban. +lang: hu +--- + +A blokkok a blokklánc alapvető egységei. A blokkok az információ különálló egységei, melyeket a csomópontok elterjesztik egymás között, megegyeznek felőle és hozzáadják a saját adatbázisukhoz. Ez az oldal feltárja, hogyan jönnek létre a blokkok. + +## Előfeltételek {#prerequisites} + +A blokkelőterjesztés része a proof-of-stake (letéti igazolás) protokollnak. Ahhoz, hogy könnyebben átlássa a folyamatot, tekintse meg a [proof-of-stake-ről](/developers/docs/consensus-mechanisms/pos/) és a [blokk architektúráról](/developers/docs/blocks/) szóló anyagokat. + +## Ki hozza létre a blokkot? {#who-produces-blocks} + +A validátorszámlák javasolják a blokkokat. A validátorszámlákat azok a csomópontműködtetők kezelik, akik validátorszoftvert futtatnak a végrehajtási és konszenzusklienseik részeként, s letétbe helyeztek 32 ETH-t a letéti szerződésbe. Ugyanakkor egy adott validátor csak esetenként felel azért, hogy blokkot javasoljon. Az Ethereum az időt slotokra és korszakokra (epoch) osztja fel. Minden slot 12 másodperc, és 32 slot (6,4 perc) tesz ki egy korszakot. Minden slotban lehetőség van arra, hogy az Ethereumon egy új blokkot hozzanak létre. + +### Véletlenszerű kiválasztás {#random-selection} + +A kijelölt validátort ál-véletlenszerűen választják, hogy javasoljon blokkot egy adott slotban. A blokkláncban nincs olyan, hogy valódi véletlenszerűség, mert ha minden csomópont valóban véletlen számokat generálna, akkor sose lenne konszenzus. Ehelyett az a lényeg, hogy a validátorkiválasztás megjósolhatatlan legyen. A véletlenszerűséget az Ethereumon egy RANDAO-nak nevezett algoritmussal érik el, ami összekeveri a blokkelőterjesztőtől jövő hash-t egy seed-del, ami minden blokkban frissítve van. Ezt az értéket használják, hogy kiválasszanak egy adott validátort a teljes szettből. A validátorkiválasztás két korszakra előre adott, hogy ezzel védekezzenek a seed manipuláció ellen. + +Habár a validátorokat hozzáadják a RANDAO-hoz minden slotban, de a globális RANDAO értéke csak egyszer frissül minden korszakban. Ahhoz, hogy a következő blokkelőterjesztő indexét kiszámolja, a RANDAO értéket összekeveri a slotszámmal, hogy minden slotnak egyedi értéke legyen. A valószínűség, hogy egy adott validátor kiválasztásra kerül, nem egyszerűen `1/N` (ahol `N` = teljes aktív validátorok). Ehelyett ezt súlyozzák minden validátor aktuális ETH egyenlegével. A maximum egyenleg (balance) az 32 ETH (tehát `balance < 32 ETH` kevesebb súlyt jelent, mint `balance == 32 ETH`, de `balance > 32 ETH` nem jelent nagyobb súlyt, mint `balance == 32 ETH`). + +Minden slotban egy blokkelőterjesztőt választanak. Normális esetben a dedikált slotbn egy blokkelőterjesztő létrehoz és elküld egyetlen blokkot. Két blokk létrehozása ugyanarra a slotra egy súlyos és kizárással járó büntetés, más néven kétértelműség. + +## Hogyan jön létre a blokk? {#how-is-a-block-created} + +A blokkelőterjesztőnek egy aláírt beacon blokkot kell szétküldeni, amely a lánc aktuális fejére épül, ahogy azt a lokálisan futtatott elágazásválasztási algoritmusuk mutatja. Az elágazásválasztás algoritmusa először érvényesíti az előző slotból származó tanúsításokat, majd megkeresi azt a blokkot, melynek összességében a legtöbb tanúsítása van. Ez a blokk lesz a szülője annak az új blokknak, melyet a javaslattevő készít. + +A blokkelőterjesztője összegyűjti az adatokat a saját lokális adatbázisából és a láncról, s ebből állít össze blokkot. A blokk tartalma alább látszik: + +```rust +class BeaconBlockBody(Container): + randao_reveal: BLSSignature + eth1_data: Eth1Data + graffiti: Bytes32 + proposer_slashings: List[ProposerSlashing, MAX_PROPOSER_SLASHINGS] + attester_slashings: List[AttesterSlashing, MAX_ATTESTER_SLASHINGS] + attestations: List[Attestation, MAX_ATTESTATIONS] + deposits: List[Deposit, MAX_DEPOSITS] + voluntary_exits: List[SignedVoluntaryExit, MAX_VOLUNTARY_EXITS] + sync_aggregate: SyncAggregate + execution_payload: ExecutionPayload +``` + +A `randao_reveal` mező egy igazolható, véletlenszerű értéket vesz fel, melyet a blokkelőterjesztő hoz létre azzal, hogy aláírja a jelenlegi korszak számát. Az `eth1_data` egy szavazat arra, ahogy a blokkelőterjesztő a letéti szerződést látja, beleértve a letéti Merkle-fa gyökerét és a letétek teljes számát, mely lehetővé teszi az új letétek ellenőrzését. A `graffiti` egy opcionális mező, mellyel üzenetet lehet adni a blokkhoz. A `proposer_slashings` és az `attester_slashings` olyan mezők, melyek bizonyítják, hogy adott validátorok súlyos büntetést érdemelnek aszerint, ahogy az előterjesztő látja a láncot. A `deposits` az új validátorletétek listája, melyről az előterjesztő tudomással bír, a `voluntary_exits` pedig azok a validátorok, akikről a konszenzusréteg pletykahálózatán hallott, hogy ki akarnak lépni. A `sync_aggregate` egy olyan vektor, mely megmutatja, melyik validátorok voltak korábban a szinkronizálási bizottság tagjai (a validátorok alcsoportja, melyek a könnyű klienseknek biztosítanak adatot) és vettek részt az adatok aláírásában. + +Az `execution_payload` információt ad a végrehajtási és a konszenzus kliensek közötti átadott tranzakciókról. Az `execution_payload` a végrehajtandó adatok egy csomagja, melyet beágyaznak egy beacon blokkba. Az `execution_payload` mezői a blokkstruktúrát mutatják, ahogy azt az Ethereum Sárgakönyv felvázolja, kivéve, hogy nincsenek ommerek és `prev_randao` van a `difficulty` helyett. A végrehajtási kliens a tranzakciók egy helyi gyűjtőjéhez fér hozzá, melyről a saját pletykahálózatán hallott. Ezeket a tranzakciókat helyben végrehajtja, hogy egy friss státuszfát kapjon (post-state). A tranzakciók bekürülnek az `execution_payload` mezőbe egy listaként, mint `transactions`, az új státuszfa (post-state) pedig a `state-root` mezőbe kerül. + +Ezeket az adatokat egy beacon blokkba gyűjtik, melyet aláírnak és szétküldenek az előterjesztő társainak, akik továbbküldik a saját társaiknak, és így tovább. + +Bővebben a [a blokkok anatomiájáról](/developers/docs/blocks). + +## Mi történik a blokkal? {#what-happens-to-blocks} + +A blokk bekerül az előterjesztő helyi adatbázisába és elküldi azt a társaknak a konszenzusréteg pletykahálózatán keresztül. Amikor egy validátor megkap egy blokkot, ellenőrzi a benne lévő adatokat, beleértve, hogy a megfelelő szülővel rendelkezik-e, a megfelelő slotra vonatkozik, az előterjesztő indexe megfelel-e, a RANDAO nyilatkozat érvénye és az előterjesztőt nem büntették-e meg. Az `execution_payload` kicsomagolásra kerül, és a validátor végrehajtási kliense újra lefuttatja a tranzakciókat, hogy ellenőrizze a javasolt státuszváltozást. Ha a blokk átmegy minden ellenőrzésen, akkor az összes validátor hozzáadja a blokkot a saját kanonikus láncához. Majd a folyamat kezdődik előlről a következő slotban. + +## Blokkjutalmak {#block-rewards} + +A blokkelőterjesztő fizetséget kap a munkájáért. Van egy `base_reward` (alapdíj), melyet az aktív validátorok számából és az ő aktuális egyenlegeikből kalkulálnak ki. A blokkelőterjesztő ezután megkapja a `base_reward` egy töredékét minden érvényes tanúsításért, mely a blokkba került; minél több validátor tanúsítja a blokkot, annál nagyobb ez a jutalom. Azért is jutalom jár, ha valaki bejelent egy validátort, akit meg kell büntetni. Ez `1/512 * aktuális egyenleg` minden súlyosan megbüntetett validátor után. + +[Bővebben a jutalmakról és büntetésekről](/developers/docs/consensus-mechanisms/pos/rewards-and-penalties) + +## További olvasnivaló {#further-reading} + +- [Bevezetés a blokkokba](/developers/docs/blocks/) +- [Bevezetés a proof-of-stake mechanizmusba](/developers/docs/consensus-mechanisms/pos/) +- [Az Ethereum konszenzusspecifikációi](https://github.com/ethereum/consensus-specs) +- [Bevezetés a Gasperbe](/developers/docs/consensus-mechanisms/pos/) +- [Az Ethereum frissítése](https://eth2book.info/) diff --git a/public/content/translations/hu/developers/docs/consensus-mechanisms/pos/faqs/index.md b/public/content/translations/hu/developers/docs/consensus-mechanisms/pos/faqs/index.md new file mode 100644 index 00000000000..fb6842d06e0 --- /dev/null +++ b/public/content/translations/hu/developers/docs/consensus-mechanisms/pos/faqs/index.md @@ -0,0 +1,172 @@ +--- +title: Gyakran ismételt kérdések +description: Gyakran ismételt kérdések az Ethereum proof-of-stake (letéti igazolás) mechanizmusáról. +lang: hu +--- + +## Mi az a proof-of-stake? {#what-is-proof-of-stake} + +A proof-of-stake (letéti igazolás) egy algoritmusfajta, ami biztonságot tud adni a blokkláncoknak azáltal, hogy a támadók elveszítik az értékeiket, amint rosszhiszeműen viselkednek. A proof-of-stake rendszereknél szükség van egy validátorszettre, amely eszközöket biztosít, s ezeket lehet megsemmisíteni, ha bizonyítottan rosszindulatúan cselekszenek. Az Ethereum proof-of-stake mechanizmust használ arra, hogy biztosítsa a blokkláncot. + +## Hogyan viszonyul a proof-of-stake a proof-of-work mechanizmushoz? {#comparison-to-proof-of-work} + +A proof-of-work (munkaigazolás) és a proof-of-stake (letéti igazolás) egyaránt olyan mechanizmus, mely elrettenti a rosszhiszemű szereplőket attól, hogy teleszemeteljék vagy becsapják a hálózatot. Mindkettőnél azok a csomópontok, melyek aktívan részt vesznek a konszenzusban, valamennyi eszközt „tesznek be a hálózatba”, melyet elveszítenek, ha nem viselkednek megfelelően. + +A proof-of-work esetében ez az eszköz az energia. A bányászként ismert csomópont egy olyan algoritmust futtat, melynek célja, hogy egy értéket gyorsabban számoljon ki, mint az összes többi csomópont. A leggyorsabb csomópont javasolhat blokkot a láncra. Ahhoz, hogy a lánc történetét megváltoztassa vagy dominálja a blokkelőterjesztést, a bányásznak olyan hatalmas számítási kapacitással kell bírnia, hogy minden megnyerje a versenyt. Ez olyan szinten drága és nehezen kivitelezhető, hogy ez megvédi a láncot a támadásoktól. A proof-of-work alapú bányászathoz szükséges energia egy valódi eszköz, amiért a bányászok fizetnek. + +A proof-of-stake-hez validátor szerepű csomópontokra van szükség, amelyek egyértelműen kriptoeszközt adnak át egy okosszerződésnek. Ha egy validátor nem megfelelően viselkedik, ezt a kriptót megsemmisíthetik, mivel ezt közvetlen módon letétbe helyezték a láncon, nem pedig közvetett módon, az energiakiadáson keresztül. + +A proof-of-work sokkal eneriaigényesebb, mert a bányászati folyamatban elektromosságot égetnek el. A proof-of-stake ezzel szemben csak nagyon kevés energiát igényel – az Ethereum validátorokat igen alacsony kapacitású eszközön is futtathatják, mint amilyen a Raspberry Pi. Az Ethereum proof-of-stake mechanizmusát sokkal biztonságosabbnak vélik, mint a proof-of-work metódust, mert a támadás költsége sokkal nagyobb, a támadót pedig sokkal súlyosabb következmények sújtják. + +A proof-of-work versus proof-of-stake egy állandó téma. [Vitalik Buterin blogja](https://vitalik.ca/general/2017/12/31/pos_faq.html#what-are-the-benefits-of-proof-of-stake-as-opposed-to-proof-of-work), valamint a Justin Drake és Lyn Alden közötti vita remekül összefoglalja az érveket. + + + +## Energiatakarékos a proof-of-stake? {#is-pos-energy-efficient} + +Igen. A proof-of-stake hálózat csomópontjai kis mennyiségű energiát használnak. Egy harmadik fél által készített tanulmány szerint az Ethereum teljes proof-of-stake hálózatának fogyasztása kb. 0,0026 TWh/év, ami nagyjából 13.000-szer kevesebb, mint a játék csak az Egyesült Államokban. + +[Bővebben az Ethereum energiafelhasználásáról](/energy-consumption/). + +## Biztonságos a proof-of-stake? {#is-pos-secure} + +Az Ethereum proof-of-stake mechanizmusa nagyon biztonságos. A mechanizmust nyolc éven át kutatták, fejlesztették és alaposan tesztelték, mielőtt életbe lépett volna. A biztonsági garanciák eltérnek a proof-of-work-alapú blokkláncoktól. A proof-of-stake-ben a rosszindulatú validátorokat aktívan meg lehet büntetni (slash) és ki lehet dobni a validátorok közül, ami nekik jelentős összegű ETH-be kerül. A proof-of-work esetében a támadó megismételheti a támadását, amíg elegendő hash-kapacitással rendelkezik. Az Ethereum proof-of-stake-nél egy ugyanolyan jellegű támadás költségesebb, mint proof-of-work esetén. A lánc elérhetőségének befolyásolásához a hálózaton lévő összes letétbe helyezett ether legalább 33%-ára van szükség (kivéve a nagyon kifinomult, rendkívül valószínűtlen sikerű támadások esetén). A jövőbeli blokkok tartalmának ellenőrzéséhez a teljes letétbe helyezett ETH legalább 51%-a szükséges, a historikus adatok átírásához pedig a teljes letét több mint 66%-a kell. Az Ethereum protokollja a 33%-os vagy 51%-os támadásoknál megsemmisítené ezeket az eszközöket, a 66%-os támadásnál pedig társadalmi konszenzussal oldaná meg. + +- [Bővebben az Ethereum proof-of-stake támadás elleni védelméről](/developers/docs/consensus-mechanisms/pos/attack-and-defense) +- [Bővebben a proof-of-stake dizájnról](https://medium.com/@VitalikButerin/a-proof-of-stake-design-philosophy-506585978d51) + +## Olcsóbbá teszi az Ethereumot a proof-of-stake? {#does-pos-make-ethereum-cheaper} + +Nem. A tranzakció elküldésének költségét (gázdíj) egy dinamikus díjpiac határozza meg, amely a hálózati kereslet növekedésével nő. A konszenzusmechanizmus ezt közvetlenül nem befolyásolja. + +[Bővebben a gázról](/developers/docs/gas). + +## Mik azok a csomópontok, kliensek és validátorok? {#what-are-nodes-clients-and-validators} + +A csomópontok az Ethereum-hálózathoz csatlakozó számítógépek. A kliensek az általuk futtatott szoftverek, amelyek a számítógépet csomóponttá alakítják. A klienseknek két típusa van: a végrehajtási és a konszenzuskliensek. Mindkettőre szükség van egy csomópont létrehozásához. A validátor a konszenzuskliens opcionális kiegészítője, amely lehetővé teszi a csomópont számára, hogy részt vegyen a proof-of-stake konszenzusban. Ez azt jelenti, hogy blokkokat hoz létre és javasol, amikor kiválasztják, és igazolja azokat a blokkokat, amelyekről a hálózaton hall. Egy validátor futtatásához a csomópont üzemeltetőjének 32 ETH-t kell befizetnie a letéti szerződésbe. + +- [Bővebben a csomópontokról és kliensekről](/developers/docs/nodes-and-clients) +- [Többet a letétbe helyezésről](/staking) + +## A proof-of-stake egy új ötlet? {#is-pos-new} + +Nem. A BitcoinTalk egyik felhasználója 2011-ben [javasolta a proof-of-stake alapötletét](https://bitcointalk.org/index.php?topic=27787.0) a Bitcoin továbbfejlesztéseként. Tizenegy év telt el, mire készen állt a megvalósításra az Ethereum főhálózaton. Néhány más lánc már korábban megvalósította a proof-of-stake-et, de nem az Ethereum sajátos mechanizmusát (ami Gasper néven ismert). + +## Mi a különleges az Ethereum proof-of-stake mechanizmusában? {#why-is-ethereum-pos-special} + +Az Ethereum proof-of-stake mechanizmusa teljesen egyedi. Nem ez volt az első proof-of-stake mechanizmus, amelyet megterveztek és megvalósítottak, de ez a legstabilabb. A proof-of-stake mechanizmusát Casper-nek nevezik. A Casper határozza meg, hogyan választják ki a validátorokat a blokkelőterjesztésre, hogyan és mikor tanúsítanak, hogyan számolják a tanúsításokat, milyen jutalmakat és büntetéseket kapnak a validátorok, a súlyos büntetések feltételeit, a hibabiztos mechanizmusokat, mint például az inaktivitás elszivárgás, és a „véglegesség” feltételeit. A véglegesség egy feltétel, hogy egy blokk a kanonikus lánc állandó része legyen, a hálózaton lévő összes letétbe helyezett ETH legalább 66%-ának szavazatával kell bírnia. A kutatók a Caspert kifejezetten az Ethereum számára fejlesztették ki, így ez az első és egyetlen blokklánc, amely megvalósította. + +A Casper mellett az Ethereum proof-of-stake-je egy LMD-GHOST nevű elágazásválasztó-algoritmust használ. Erre abban az esetben van szükség, ha két blokk létezik ugyanarra a slotra. Ezáltal a blokklánc két elágazást hoz létre. Az LMD-GHOST azt választja ki, amelyiknél a tanúsítások „súlya” a legnagyobb. A súly a tanúsítások száma súlyozva a validátorok tényleges egyenlegével. Az LMD-GHOST egyedülálló az Ethereumban. + +A Casper és az LMD_GHOST kombinációja Gasper néven ismert. + +[Bővebben a Gasperről](/developers/docs/consensus-mechanisms/pos/gasper/) + +## Mi az a súlyos büntetés (slashing)? {#what-is-slashing} + +Súlyos büntetésnek nevezzük a validáló letétjének megsemmisítését és a validálónak a hálózatból való kizárását. A súlyos büntetés során elveszített ETH mennyisége a megbüntetett validátorok számával arányos – ez azt jelenti, hogy az összejátszó validátorok súlyosabb büntetést kapnak, mint az egyének. + +[Bővebben a súlyos büntetésről (slashing)](/developers/docs/consensus-mechanisms/pos/rewards-and-penalties#slashing) + +## Miért kell a validátoroknak 32 ETH? {#why-32-eth} + +A validátoroknak ETH-t kell letétbe helyezniük, hogy legyen mit veszíteniük, ha rosszhiszeműen viselkednek. Azért is kell 32 ETH-t feltölteniük, hogy a csomópontok egyszerűbb hardveren is működhessenek. Ha az egy validátorra jutó minimális ETH alacsonyabb lenne, akkor a validátorok száma, és így az egyes slotokban feldolgozandó üzenetek száma is növekedne, ezért nagyobb teljesítményű hardverre lenne szükség egy csomóponthoz. + +## Hogyan választják ki a validátorokat? {#how-are-validators-selected} + +Egy adott validátor álvéletlenszerűen kerül kiválasztásra a RANDAO nevű algoritmus segítségével, hogy egy adott slotban blokkot javasoljon; ez a blokkotelőterjesztőtől származó hash-t keveri egy seed-del, amely minden blokkban frissül. Ezt az értéket használják, hogy kiválasszanak egy adott validátort a teljes szettből. A validátor kiválasztását négy korszakra előre elvégzik. + +[Bővebben a validátorkiválasztásról](/developers/docs/consensus-mechanisms/pos/block-proposal) + +## Mi az a letét grinding? {#what-is-stake-grinding} + +A letét grinding egy proof-of-stake hálózat elleni támadás, ahol a támadó megpróbálja a validátor kiválasztási algoritmust a saját validátorai javára torzítani. A RANDAO letéti grinding támadásához a teljes lekötött ETH-mennyiség felére van szükség. + +[Bővebben a letéti grindingről](https://eth2book.info/altair/part2/building_blocks/randomness/#randao-biasability) + +## Mi az a közösségi slashing? {#what-is-social-slashing} + +A közösségi slashing a közösség azon lehetősége, hogy egy támadás esetén eldöntse a blokklánc elágazását. Ez lehetővé teszi a közösség számára, hogy helyreálljon egy helytelen láncot véglegesítő támadás esetén. A közösségi slashing a cenzoráló támadások ellen is használható. + +- [Bővebben a közösségi slashingről](https://ercwl.medium.com/the-case-for-social-slashing-59277ff4d9c7) +- [Vitalik Buterin a közösségi slashingről](https://vitalik.ca/general/2017/12/31/pos_faq.html#what-is-proof-of-stake) + +## Engem is érhet súlyos büntetés (slashing)? {#will-i-get-slashed} + +Validátorként nehéz súlyos büntetést szerezni, hacsak nem valaki szándékosan rosszindulatúan viselkedik. A súlyos büntetést speciális esetekben alkalmazzák, amikor a validátorok több blokkot javasolnak ugyanabban a slotban, vagy ellentmondanak önmaguknak a tanúsításaikkal – ezek nem valószínű, hogy véletlenül előfordulnak. + +[Bővebben a súlyos büntetés feltételeiről](https://eth2book.info/altair/part2/incentives/slashing) + +## Mit jelent a nincs kockázat probléma? {#what-is-nothing-at-stake-problem} + +A nincs kockázat probléma egy koncepcionális hiányosság néhány proof-of-stake mechanizmus esetén, ahol csak jutalmak vannak, s nincsenek büntetések. Ha nincs kockázat, tehát nem lehet a letétet elveszíteni, akkor a gyakorlatias validátor ugyanúgy tanúsítja bármelyik vagy akár több elágazását is a blokkláncnak, mert ebből több jutalmat kap. Az Ethereum ezt úgy kezeli, hogy véglegességi feltételeket szab és létezik súlyos büntetés, így biztosítható a kanonikus lánc. + +[Bővebben a nincs kockázat problémáról](https://vitalik.ca/general/2017/12/31/pos_faq.html#what-is-the-nothing-at-stake-problem-and-how-can-it-be-fixed) + +## Mi az az elágazásválasztó-algoritmus? {#what-is-a-fork-choice-algorithm} + +Az elágazásválasztó-algoritmus olyan szabályokat alkalmaz, amelyek meghatározzák, hogy melyik lánc a kanonikus. Optimális körülmények között nincs szükség elágazásválasztási szabályra, mivel slotonként csak egy blokkelőterjesztő van, és csak egy blokk jön létre. Alkalmanként lehetséges, hogy több blokk keletkezik ugyanarra a slotra vagy későn érkező információ miatt több lehetőség van a lánc fejéhez közeli blokkok szerveződésére. Ezekben az esetekben minden kliensnek azonos módon kell végrehajtania néhány szabályt, hogy biztosítsa, hogy a blokkok helyes sorrendjét válasszák. Az elágazásválasztó-algoritmus kódolja ezeket a szabályokat. + +Az Ethereum elágazásválasztási-algoritmusának neve LMD-GHOST. Azt az elágazást választja, amelyiknek a legnagyobb a tanúsítási súlya, vagyis amelyikre a legtöbb letétbe helyezett ETH szavazott. + +[Bővebben az LMD-GHOST-ról](/developers/docs/consensus-mechanisms/pos/gasper/#fork-choice) + +## Mit jelent a véglegesség a proof-of-stake-ben? {#what-is-finality} + +A véglegesség a proof-of-stake-ben az a garancia, hogy egy adott blokk stabil része a kanonikus láncnak, és nem lehet azt visszafordítani, kivéve, ha a konszenzus meghiúsul, és a támadó a teljes letétbe helyezett ether 33%-át elégeti. Ez egy kriptogazdasági véglegesség, szemben a „valószínűségi véglegességgel”, amely a proof-of-work blokkláncokra releváns. A valószínűségi véglegességben nincsenek explicit véglegesített/nem véglegesített státuszok a blokkok számára – egyszerűen egyre kevésbé valószínű, hogy egy blokkot el lehet távolítani a láncból, ahogy telik az idő, és a felhasználók maguk határozzák meg, hogy mikor eléggé biztosak abban, hogy egy blokk helyzete „biztonságos”. A kriptogazdasági véglegesítésnél az ellenőrzőpont blokkpárjait a letétbe helyezett ether 66%-ának kell megszavaznia. Ha ez a feltétel teljesül, akkor az ellenőrzőpontok közötti blokkok egyértelműen véglegesek. + +[Bővebben a véglegességről](/developers/docs/consensus-mechanisms/pos/#finality) + +## Mi az a „gyenge szubjektivitás”? {#what-is-weak-subjectivity} + +A gyenge szubjektivitás a proof-of-stake hálózatok egyik jellemzője, ahol a társadalmi információkat használják a blokklánc aktuális státuszának megerősítésére. Az új csomópontok vagy a hálózathoz egy hosszabb offline állapot után csatlakozó csomópontok kaphatnak egy friss állapotot, így azonnal láthatják, hogy a megfelelő láncon vannak-e. Ezeket a státuszokat a gyenge szubjektivitás ellenőrzési pontjainak nevezik, és más csomópontok üzemeltetőitől kaphatók, blokkfelfedezőktől vagy több nyilvános végponttól. + +[Bővebben a gyenge szubjektivitásról](/developers/docs/consensus-mechanisms/pos/weak-subjectivity) + +## Ellenáll a proof-of-stake a cenzúrának? {#is-pos-censorship-resistant} + +A cenzúrának való ellenállását jelenleg nehéz bizonyítani. A proof-of-work-től eltérően azonban a proof-of-stake lehetőséget ad a cenzúrázó validátorok megbüntetésére. A protokollban hamarosan szétválasztják a blokképítőket a blokkelőterjesztőktől, és bevezetik azon tranzakciók listáját, amelyeket a blokképítőknek bele kell foglalniuk a blokkba. Ez a javaslattevő-építő szétválasztás, mely segít megakadályozni, hogy a validátorok cenzúrázzák a tranzakciókat. + +[Bővebben a javaslattevő-építő szétválasztásról (PBS)](https://notes.ethereum.org/@fradamt/H1TsYRfJc#Original-basic-scheme) + +## Az Ethereum proof-of-stake rendszerét érheti 51%-os támadás? {#pos-51-attack} + +Igen. A proof-of-stake rendszer ugyanúgy ki van téve az 51%-os támadásnak, mint a proof-of-work. Ahelyett, hogy a támadónak a hálózat hash teljesítményének 51%-ára lenne szüksége, az összes letétbe helyezett ETH 51%-a kell. Az a támadó, aki a teljes letét 51%-át összegyűjti, átveszi az irányítást az elágazásválasztó-algoritmus felett. Ez lehetővé teszi a támadó számára, hogy bizonyos tranzakciókat cenzúrázzon, rövidtávú átszervezéseket végezzen, és a blokkok önérdekű átrendezésével profitot (MEV) szerezzen. + +[Bővebben a proof-of-stake-re irányuló támadásokról](/developers/docs/consensus-mechanisms/pos/attack-and-defense) + +## Mi a közösségi koordináció, és miért van rá szükség? {#what-is-social-coordination} + +A közösségi koordináció az Ethereum utolsó védelmi vonala, amely lehetővé teszi, hogy egy helyes láncot helyreállítsanak egy olyan támadásból, amely helytelen blokkokat véglegesített. Ebben az esetben az Ethereum közösségnek „sávon kívül” kellene koordinálnia és megállapodnia egy helyes kisebbségi elágazás használatában, és ezzel a támadó validálóit kizárni (slashing). Ehhez az alkalmazásokra és a tőzsdékre is szükség lenne, hogy felismerjék a helyes elágazást. + +[Bővebben a közösségi koordinációról](/developers/docs/consensus-mechanisms/pos/attack-and-defense#people-the-last-line-of-defense) + +## A proof-of-stake-ben a gazdagok gazdagabbak lesznek? {#do-rich-get-richer} + +Minél több ETH-t tesz letétbe valaki, annál több validátort tud futtatni, és annál több jutalmat tud felhalmozni. A jutalmak lineárisan skálázódnak a letétbe helyezett ETH összegével, és mindenki ugyanannyi százalékos hozamot kap. A proof-of-work jobban gazdagítja a gazdagokat, mint a proof-of-stake, mivel a gazdagabb bányászok, akik hardvereket vásárolnak, a méretgazdaságosság előnyeit élvezik, tehát a vagyon és a jutalom közötti kapcsolat nem lineáris. + +## A proof-of-stake centralizáltabb, mint a proof-of-work? {#is-pos-decentralized} + +Nem, a proof-of-work a centralizáció felé hajlik, mivel a bányászati költségek növekednek és kiszorítják a magánszemélyeket, majd a kisebb vállalatokat, és így tovább. A proof-of-stake jelenlegi problémája a likvid letéti derivatívák (LSD) hatása. Ezek olyan tokenek, amelyek valamilyen letétbe helyezett ETH-t képviselnek, és amelyeket bárki elcserélhet a másodlagos piacokon anélkül, hogy a tényleges ETH letétet felbontanák. Az LSD-k lehetővé teszik a felhasználók számára, hogy 32 ETH-nél kevesebb letétet tegyenek, de egyúttal centralizációs kockázatot is teremtenek, ahol néhány nagy szervezet végül a letét nagy részét ellenőrizheti. Ezért az [önálló letétbe helyezés](/staking/solo) a legjobb megoldás az Ethereum számára. + +[Bővebben a letétcentralizációról az LSD-kben](https://notes.ethereum.org/@djrtwo/risks-of-lsd) + +## Miért csak ETH-t lehet letétbe helyezni? {#why-can-i-only-stake-eth} + +Az ETH az Ethereum natív valutája. Elengedhetetlen, hogy minden letét egyetlen valutában legyen, mert így lehet a súlyozott szavazatokhoz szükséges aktuális egyenlegeket venni és ez kell a biztonsághoz is. Az ETH az Ethereum alapvető összetevője, nem egy okosszerződés. Más valuták beépítése jelentősen megnövelné a bonyolultságot és csökkentené a letétek biztonságát. + +## Az Ethereum az egyetlen proof-of-stake blokklánc? {#is-ethereum-the-only-pos-blockchain} + +Nem, több proof-of-stake blokklánc létezik. Egyik sem azonos az Ethereummal, mert annak proof-of-stake mechanizmusa egyedülálló. + +## Mi az a Merge? {#what-is-the-merge} + +A Merge volt az a pillanat, amikor az Ethereum kikapcsolta a proof-of-work alapú konszenzusmechanizmusát, és bekapcsolta a proof-of-stake alapút. A Merge 2022. szeptember 15-én történt. + +[A beolvadásról bővebben](/roadmap/merge) + +## Mi az elérhetőség és a biztonság? {#what-are-liveness-and-safety} + +Az elérhetőség és a biztonság a blokklánc két alapvető biztonsági szempontja. Az elérhetőség azt jelenti, hogy a lánc véglegesedni tud. Ha a lánc véglegesedése leáll, vagy a felhasználók nem tudnak könnyen hozzáférni, akkor nem elérhető a lánc. A hozzáférés rendkívül magas költségei is elérhetőségi hibák. A biztonság arra utal, hogy mennyire nehéz a láncot megtámadni, vagyis egymásnak ellentmondó ellenőrzőpontokat véglegesíteni. + +[Bővebb információkat talál a Casper dokumentációban](https://arxiv.org/pdf/1710.09437.pdf) diff --git a/public/content/translations/hu/developers/docs/consensus-mechanisms/pos/gasper/index.md b/public/content/translations/hu/developers/docs/consensus-mechanisms/pos/gasper/index.md new file mode 100644 index 00000000000..ffed7011082 --- /dev/null +++ b/public/content/translations/hu/developers/docs/consensus-mechanisms/pos/gasper/index.md @@ -0,0 +1,52 @@ +--- +title: Gasper +description: A Gasper proof-of-stake mechanizmusának magyarázata. +lang: hu +--- + +A Gasper a Casper, a baráti véglegességi eszköz (Casper-FFG), és az LMD-GHOST elágazásválasztó-algoritmus kombinációja. Ezek az összetevők együttesen alkotják az Ethereum proof-of-stake-et biztosító konszenzusmechanizmust. A Casper az a mechanizmus, amely bizonyos blokkokat „véglegesre” frissít, hogy a hálózatba újonnan belépők biztosak lehessenek abban, hogy a kanonikus láncot szinkronizálják. Az elágazásválasztó-algoritmus felhalmozott szavazatokat használ, hogy a csomópontok könnyen kiválaszthassák a helyeset, amikor elágazások keletkeznek a blokkláncban. + +**Érdemes megjegyezni**, hogy a Casper-FFG eredeti definíciója kissé megváltozott a Gasperbe való beépítéshez. Ezen az oldalon a frissített változatot tekintjük át. + +## Előfeltételek + +A jelen téma könnyebb megértéséhez tekintse meg a [proof-of-stake](/developers/docs/consensus-mechanisms/pos/) alapjairól szóló oldalt. + +## Gasper szerepe {#role-of-gasper} + +A Gasper egy proof-of-stake blokklánc tetején helyezkedik el, ahol a csomópontok biztonsági letétként ethert biztosítanak, amely megsemmisíthető, ha lusták vagy rosszhiszeműek a blokkok javaslata vagy validálása során. A Gasper az a mechanizmus, amely meghatározza, hogyan jutalmazzák és büntetik a validálókat, hogyan döntenek arról, hogy mely blokkokat fogadják el és melyeket utasítják el, és hogy a blokklánc melyik elágazására építsenek. + +## Mi az a véglegesség? {#what-is-finality} + +A véglegesség bizonyos blokkok tulajdonsága, ami azt jelenti, hogy nem lehet visszafordítani azokat, kivéve, ha kritikus konszenzushiba történt, és a támadó a teljes letétbe helyezett ether legalább 1/3-át megsemmisítette. A véglegesített blokkok olyan információt jelentenek, amelyekkel kapcsolatban a blokklánc biztos. Egy blokknak kétlépcsős frissítési eljáráson kell átesnie ahhoz, hogy véglegesítésre kerüljön: + +1. Az összes feltett ether kétharmadának kell megszavaznia, hogy az adott blokk bekerüljön a kanonikus láncba. Ez a feltétel a blokkot „érvényesített” kategóriába emeli. Az érvényesített blokkokat nem valószínű, hogy visszafordítják, de bizonyos feltételek mellett megtörténhet. +2. Ha egy másik blokkot érvényesítenek egy érvényesített blokk tetején, akkor az „véglegesített” állapotba kerül. Egy blokk véglegesítése az adott blokknak a kanonikus láncba való felvételére iránti elköteleződés. Nem lehet visszaállítani, kivéve, ha egy támadó több millió ethert (több milliárd $USD) semmisít meg. + +Ezek a blokkfrissítések nem minden slotban történnek meg. Ehelyett csak a korszakhatárhoz tartozó blokkok érvényesíthetők és véglegesíthetők. Ezeket a blokkokat ellenőrzőpontoknak nevezzük. A frissítés az ellenőrzőpontpárokat veszi figyelembe. Két egymást követő ellenőrzőpont között „szupertöbbségi kapcsolatnak” kell fennállnia (az összes letétbe helyezett ether kétharmada szavaz arra, hogy a B ellenőrzőpont az A ellenőrzőpont helyes leszármazottja) ahhoz, hogy a korábbi ellenőrzőpontot véglegesítettre, a frissebbet pedig érvényesítettre lehessen állítani. + +Mivel a véglegesítéshez kétharmados egyetértés kell a blokk kanonikus voltát illetően, egy támadó nem tud a következők nélkül alternatív véglegesített láncot létrehozni: + +1. A teljes letétbe helyezett ether kétharmadának birtoklása vagy manipulálása nélkül. +2. A letétbe helyezett ether legalább egyharmadának elpusztítása nélkül. + +Az első feltétel azért merül fel, mert egy lánc véglegesítéséhez a letétbe helyezett ether kétharmadára van szükség. A második feltétel azért van, mert ha a teljes letét kétharmada mindkét elágazás mellett szavazott, akkor egyharmadának mindkettőre szavaznia kellett. A kettős szavazás súlyos büntetést és kizárást von maga után, amelyet maximálisan büntetnének, és a teljes letét egyharmada megsemmisülne. 2022 májusától ezért egy támadónek körülbelül 10 milliárd dollár értékű ethert kellene elégetnie. A Gasperben a blokkokat érvényesítő és véglegesítő algoritmus a [Casper-FFG](https://arxiv.org/pdf/1710.09437.pdf) kissé módosított formája. + +### Ösztönzők és súlyos büntetés (slashing) {#incentives-and-slashing} + +A validátorok jutalmat kapnak a blokkok jóhiszemű előterjesztéséért és validálásáért. Ethert kapnak jutalomként, mely hozzáadódik a letétjükhöz. Másrészt, azok a validátorok, akik nem cselekszenek, amikor felszólítják őket, lemaradnak ezekről a jutalmakról, és bizonyos esetekben elveszítik meglévő letétjük egy kis részét. A távolmaradásért járó büntetések csekélyek, és a legtöbb esetben csak a jutalmak elmaradását jelentik. Ugyanakkor vannak olyan validátori műveletek, amelyeket nehéz lenne véletlenül megtenni, ezért valamilyen rosszindulatú szándékot jeleznek, például több blokkot javasolni vagy tanúsítani ugyanarra a slotra, vagy ellentmondani a korábbi ellenőrzési pontra vonatkozó szavazásnak. Ezek a viselkedésmódok súlyos büntetést vonnak maguk után komoly következményekkel: a slashing eredményeként a validátor letétjének egy része megsemmisül, a validátort pedig eltávolítják a hálózatból. Ez a folyamat 36 napig tart. Az 1. napon legfeljebb 1 ETH összegű kezdeti büntetés jár. A súlyos büntetést kapott validátor ether egyenlege lassan fogy a kilépési időszak alatt, de a 18. napon „korrelációs büntetést” kap, amely nagyobb, ha több validátor egy időben kerül kizárásra. A maximális büntetés a teljes letét. Ezek a jutalmak és büntetések arra szolgálnak, hogy ösztönözzék a becsületes validátorokat, és visszatartsák a hálózat elleni támadásokat. + +### Inaktivitási elszivárgás {#inactivity-leak} + +A biztonság mellett a Gasper „elfogadható elérhetőséget” is biztosít. Ez az a feltétel, hogy amíg az összes letétbe helyezett ether kétharmada becsületesen és a protokollt követve szavaz, a lánc képes lesz a véglegesítésre, függetlenül bármilyen más tevékenységtől (például támadások, késleltetés vagy súlyos büntetések). Másképp fogalmazva, a teljes letétbe helyezett ether egyharmadának veszélyeztetettnek kell lennie ahhoz, hogy a lánc ne tudjon véglegesedni. A Gasperben van egy további védelmi vonal az elérhetőség sérülése ellen, amelyet „inaktivitási elszivárgásként” ismerünk. Ez a mechanizmus akkor aktiválódik, amikor a blokklánc véglegesítése több mint négy korszakon keresztül meghiúsul. Azoknak a validátoroknak, akik nem tanúsítják aktívan a többségi láncot, a letétjük fokozatosan elszivárog, amíg a többség vissza nem nyeri a teljes letét kétharmadát, így az elérhetőség sérülése csak átmeneti. + +### Elágazásválasztás {#fork-choice} + +A Casper-FFG eredeti definíciója tartalmazott egy elágazásválasztó algoritmust a szabállyal: `kövesse azt a láncot, amely a legnagyobb magasságú érvényesített ellenőrzőpontot tartalmazza`, ahol a magasságot a genezisblokktól való távolságként határozzuk meg. A Gasperben az eredeti elágazásválasztási szabályt lecserélték egy kifinomultabb, LMD-GHOST nevű algoritmusra. Fontos megérteni, hogy normális körülmények között az elágazásválasztási szabály szükségtelen, mert minden slothoz egyetlen blokkajánló tartozik, és ezt a jóhiszemű validátorok tanúsítják. Csak nagy hálózati aszinkronitás esetén, vagy ha egy rosszhiszemű blokkajánló kétértelműen nyilatkozott, van szükség elágazásválasztó algoritmusra. Ha azonban ezek az esetek mégis bekövetkeznek, ez az algoritmus kritikus védelmet jelent, s biztosítja a helyes láncot. + +Az LMD-GHOST a következő kifejezés rövidítése: latest message-driven greedy greedy heaviest observed sub-tree (a legutolsó üzenet által vezérelt, mohó, legsúlyosabb részfa). Ez egy nehézkes meghatározása annak, hogy a tanúsítások legnagyobb összesített súlyával rendelkező elágazást választja ki kanonikusnak (mohó legsúlyosabb részfa), és ha több üzenet érkezik egy validátortól, csak a legutolsót veszi figyelembe (legutolsó üzenet által vezérelt). Mielőtt a legnehezebb blokkot hozzáadná a kanonikus láncához, minden validátor minden blokkot e szabály alapján értékel. + +## További olvasnivaló {#further-reading} + +- [Gasper: A GHOST és a Casper kombinációja](https://arxiv.org/pdf/2003.03052.pdf) +- [Casper, a baráti véglegességi eszköz (Friendly Finality Gadget)](https://arxiv.org/pdf/1710.09437.pdf) diff --git a/public/content/translations/hu/developers/docs/consensus-mechanisms/pos/index.md b/public/content/translations/hu/developers/docs/consensus-mechanisms/pos/index.md index a72ec0f7e8d..65aae7e61bd 100644 --- a/public/content/translations/hu/developers/docs/consensus-mechanisms/pos/index.md +++ b/public/content/translations/hu/developers/docs/consensus-mechanisms/pos/index.md @@ -1,91 +1,92 @@ --- title: Proof-of-stake (PoS) -description: Egy magyarázat a proof-of-stake konszenzus protokollról és az Ethereumban betöltött szerepéről. +description: A proof-of-stake konszenzusprotokoll és az Ethereumban betöltött szerepének bemutatása. lang: hu -incomplete: true --- -Az Ethereum átmegy a [proof-of-work-ről (PoW)](/developers/docs/consensus-mechanisms/pow/) egy másik konszenzus mechanizmusba, melyet proof-of-stake-nek hívunk. Mindig is ez volt a terv, mivel ez egy kulcs eleme a közösség stratégiájának az Ethereum skálázására vonatkozóan [az Eth2 fejlesztések](/roadmap/) által. Azonban a PoS megfelelő bevezetése egy nagy technikai kihívás és nem annyira egyértelmű, mint a PoW használata, hogy elérjük a konszenzust a teljes hálózaton. +Az Ethereum [konszenzusmechanizmusa](/developers/docs/consensus-mechanisms/) a proof-of-stake (PoS) koncepción alapul. Az Ethereum 2022-ben váltott a proof-of-stake mechanizmusra, mivel biztonságosabb, kevésbé energiaintenzív és jobban megfelel az új méretezési megoldások bevezetéséhez, mint a korábbi [proof-of-work](/developers/docs/consensus-mechanisms/pow) architektúra. ## Előfeltételek {#prerequisites} -Hogy jobban megértsd az oldal anyagát, javasoljuk, hogy előbb olvasd el a [konszenzus mechanizmusok](/developers/docs/consensus-mechanisms/) cikket. +Az oldal könnyebben megértéséhez javasoljuk, hogy tekintse meg a [konszenzusmechanizmusok](/developers/docs/consensus-mechanisms/) cikket. -## Mi az a proof-of-stake (Pos)? {#what-is-pos} +## Mi az a proof-of-stake (PoS)? {#what-is-pos} -A proof-of-stake a [konszenzus mechanizmusok](/developers/docs/consensus-mechanisms/) egy típusa, melyet arra használunk, hogy elérjük az megosztott konszenzust egy blokklánc hálózaton. +A proof-of-stake (letéti igazolás) egy módja annak bizonyítására, hogy a validátorok valamilyen értéket helyeztek a hálózatba, amely tisztességtelen cselekedet esetén megsemmisíthető. Az Ethereum proof-of-stake mechanizmusánál a validátorok ETH formájában zárolják tőkéjüket az Ethereumon található okosszerződésben. A validátor feladata annak ellenőrzése, hogy a hálózaton keresztül terjesztett új blokkok érvényesek, és adott esetben ő maga is új blokkokat hoz létre és terjeszt elő. Ha megpróbálják meghamisítani a hálózatot (például egy helyett több blokkot javasolnak, vagy egymásnak ellentmondó tanúsításokat küldenek), a letétbe helyezett ETH egy része vagy egésze megsemmisülhet. -Az ETH letétbe helyezését igényli a felhasználók részéről, akik validátorrá válnak a hálózaton. A validátorok ugyanazért felelősek, mint a bányászok a [proof-of-work-ben](/developers/docs/consensus-mechanisms/pow/): tranzakciókat rendeznek és új blokkokat hoznak létre, így az összes csomópont egyetérthet a hálózat állapota felett. +## Validátorok {#validators} -A proof-of-stake rendszer számos javulást kínál a proof-of-work rendszerrel szemben: +A validátorként való részvételhez a felhasználónak 32 ETH-t kell egy letéti szerződésben zárolnia, és három különböző szoftvert kell futtatnia: egy végrehajtási klienst, egy konszenzusklienst és egy validátorklienst. Az ETH letétbe helyezésével a felhasználó beáll egy aktiválási sorba, amely korlátozza az új validátorok hálózathoz való csatlakozásának ütemét. Az aktiválást követően a validátorok új blokkokat kapnak a társaiktól az Ethereum-hálózaton. A blokkban szállított tranzakciókat újra végrehajtják, hogy ellenőrizzék, hogy az Ethereum státuszában javasolt változások érvényesek-e, és ellenőrzik a blokk aláírását. A validátor ezután szavazatot (ún. tanúsítást) ad le az adott blokkra a hálózaton keresztül. -- nagyobb energia hatékonyság – nem kell sok energiát blokkok bányászatára áldozni -- alacsonyabb belépési korlátok, csökkentett hardver követelmények – nem kell elit hardverrel rendelkezned, hogy esélyed legyen új blokkok létrehozására -- erősebb ellenálló képesség a centralizáltság ellen – a proof-of-stake több csomópont létrejöttéhez vezethet a hálózatban -- a shard láncok nagyobb fokú támogatása – egy fontos fejlesztés az Ethereum hálózat skálázásában +Amíg a proof-of-work esetében a blokkidőt a bányászati nehézség határozza meg, addig a proof-of-stake esetén a tempó rögzített. A proof-of-stake Ethereum esetén az idő (12 másodperces) slotokra és korszakokra (1 korszak = 32 slot) oszlik. A rendszer minden slotban véletlenszerűen kiválaszt egy validátort a blokk előterjesztésére. Ez a validátor felel az új blokk létrehozásáért és elküldéséért a hálózat többi csomópontja felé. Emellett a rendszer minden slotban véletlenszerűen megválaszt egy validátorbizottságot, amelynek a szavazatai döntenek az előterjesztett blokk érvényességéről. A validátorok bizottságokra való felosztása fontos a hálózati terhelés kezelhetősége szempontjából. A bizottságok úgy osztják fel a validátorhalmazt, hogy minden aktív validátor minden korszakban tanúsít, de nem minden slotban. -## Proof-of-stake, letétbe helyezés, és a validátorok {#pos-staking-validators} +## Hogyan kerülnek végrehajtásra a tranzakciók az Ethereum proof-of-stake mechanizmusban {#transaction-execution-ethereum-pos} -Proof-of-stake a mögöttes mechanizmus, mely aktiválja a validátorokat, amint megfelelő mennyiségű tőke került letétbe. Az Ethereum felhasználóknak 32 ETH-et kell letenni, hogy validátorok lehessenek. A validátorok véletlenszerűen kerülnek kiválasztásra, hogy blokkokat hozzanak létre, továbbá felelősek azon blokkok ellenőrzéséért és megerősítéséért, melyeket nem ők hoznak létre. A felhasználó letéte oly módon kerül felhasználásra, hogy ösztönözze a jó viselkedést. Például egy felhasználó elveszítheti a letéte egy részét az olyan dolgokért, ha például offline állapotba (nem validál) kerül, vagy a teljes letétet szándékos összejátszásért. +Az alábbiakban egy teljes magyarázatot adunk arról, hogyan hajtanak végre egy tranzakciót az Ethereum proof-of-stake-ben. -## Hogyan működik az Ethereum proof-of-stake? {#how-does-pos-work} +1. A felhasználó létrehoz és aláír egy [tranzakciót](/developers/docs/transactions/) a privát kulcsával. Ezt általában egy tárca vagy egy könyvtár, például [ether.js](https://docs.ethers.io/v5/), [web3js](https://docs.web3js.org/), [web3py](https://web3py.readthedocs.io/en/v5/) stb. kezeli, eközben a háttérben a felhasználó az Ethereum [JSON-RPC API](/developers/docs/apis/json-rpc/) segítségével kérést intéz egy csomóponthoz. A felhasználó meghatározza, hogymennyi gázt fizet borravalóként a validátornak, hogy az felkapja az adott tranzakciót és betegye egy blokkba. A [borravalót](/developers/docs/gas/#priority-fee) megkapja a validátor, az [alapdíjat](/developers/docs/gas/#base-fee) pedig elégeti a rendszer. +2. A tranzakciót beküldik az Ethereum [végrehajtási klienshez](/developers/docs/nodes-and-clients/#execution-client), hogy ellenőrizze az érvényességét. Ennek része, hogy a küldőnek van elég ETH összege, hogy végre legyen hajtva a tranzakció és a megfelelő kulccsal írta azt alá. +3. Ha a tranzakció érvényes, a végrehajtási kliens a helyi tranzakciógyűjtőjéhez (mempool, a függő tranzakciók listája) adja és elterjeszti a többi csomópontnak a végrehajtási réteg pletykahálózatán. Amikor a többi csomópont hall a tranzakcióról, akkor azok is beteszik a helyi tranzakciógyűjtőjükbe. A haladó felhasználók úgy is dönthetnek, hogy nem a hálózaton terjesztik el a tranzakciójukat, hanem továbbíthatják azt speciális blokképítőknek, mint a [Flashbots aukció](https://docs.flashbots.net/flashbots-auction/overview). Ez lehetővé teszi számukra, hogy a tranzakciókat a következő blokkokba szervezzék a maximális profit érdekében ([MEV](/developers/docs/mev/#mev-extraction)). +4. A hálózat egyik csomópontja az aktuális slot blokkelőterjesztője, amelyet előzőleg a RANDAO segítségével álvéletlenszerűen kiválasztottak. Ez a csomópont felelős az Ethereum blokklánchoz hozzáadandó következő blokk létrehozásáért és továbbításáért, valamint a globális státusz frissítéséért. A csomópont három részből áll: végrehajtási kliens, konszenzuskliens és validátorkliens. A végrehajtási kliens a tranzakciókat a helyi mempoolból egy végrehajtási csomagba rendezi, és helyben végrehajtja őket, hogy státusztváltozást generáljon. Ezt az információt továbbítják a konszenzuskliensnek, ahol a végrehajtási csomagot egy Beacon-blokk részeként csomagolják be, amely a jutalmakra, büntetésekre, súlyos büntetésekre, tanúsításokra stb. vonatkozó információkat is tartalmaz, amelyek lehetővé teszik a hálózat számára, hogy megállapodjon a lánc élén álló blokkok sorrendjében. A végrehajtási és a konszenzuskliensek közötti kommunikáció részletesebb leírása a [A konszenzus és a végrehajtási kliensek összekapcsolása](/developers/docs/networking-layer/#connecting-clients) című cikkben található. +5. A többi csomópont az új Beacon-blokkot a konszenzusréteg pletykahálózatán keresztül kapja meg. Átadják azt a saját végrehajtási kliensüknek, ami a tranzakciókat helyben újra végrehajtja, így megbizonyosodnak arról, hogy érvényes a javasolt státuszváltozás. A validátorkliens ezután tanúsítja, hogy a blokk érvényes, és logikailag ez a következő blokk a láncban (vagyis az [elágazásválasztási szabályok](/developers/docs/consensus-mechanisms/pos/#fork-choice) szerint a legnagyobb tanúsítási súllyal bíró láncra épül). A blokk hozzáadódik a helyi adatbázishoz minden olyan csomópontban, amely tanúsítja azt. +6. A tranzakció akkor tekinthető „véglegesítettnek”, ha egy olyan lánc részévé vált, amelyben két ellenőrzőpont között „szupertöbbségi kapcsolat” van. Az ellenőrzési pontok minden korszak kezdetén fordulnak elő, és azért vannak, mert az aktív tanúsítóknak csak egy részhalmaza tanúsít minden slotban, de az összes aktív tanúsító minden korszakban tanúsít. Ezért csak a korszakok között lehet „szupertöbbségi kapcsolat” (mikor a hálózaton lévő összes letétbe helyezett ETH 66%-a egyetért két ellenőrzőponton). -Ellentétben a proof-of-work-kel, a validátoroknak nem kell jelentős mennyiségű számítási erőt felhasználniuk, mivel véletlenszerűen kerülnek kiválasztásra és nem kell versenyezniük. Nem kell blokkokat bányászniuk, csak blokkokat kell létrehozniuk, amikor kiválasztásra kerülnek, és validálni a javasolt blokkokat, amikor nem. Ezt a validálást tanúsításnak hívjuk. Gondolj a tanúsításra úgy, mintha azt mondanánk "ez a blokk nekem jónak tűnik". A validátorok jutalmat kapnak új blokkok felterjesztéséért és azon blokkok tanúsításáért, amiket láttak. +A véglegesedésről a következő szekcióban bővebb információkat találhat. -Ha tanúsítasz egy rosszindulatú blokkot, akkor elveszted a letéted. +## Véglegesség {#finality} -### A Beacon Chain {#the-beacon-chain} +Az elosztott hálózatokban egy tranzakció „véglegessé” válik, amikor egy olyan blokk része lesz, amelyet csak jelentős mennyiségű ETH elégetésével lehet megváltoztatni. A proof-of-stake Ethereum-hálózata ezt az úgynevezett „ellenőrző pont” blokkokkal éri el. Minden korszak első blokkja egy ellenőrzőpont. A validátorok szavaznak az általuk érvényesek tartott ellenőrzőpontpárokra. Ha egy ellenőrzőpontpár megkapja legalább az összes letétbe helyezett ETH kétharmadát képviselő szavazatmennyiséget, akkor a ellenőrzőpontok frissülnek. A kettő közül a későbbi (célblokk) „igazolt” állapotba kerül. A kettő közül a korábbi már igazolt állapotú, mivel az előző korszak „célblokkja” volt. Ez a blokk „véglegesített” állapotba kerül. -Amikor az Ethereum leváltja a proof-of-work-öt a proof-of-stake-kel, hozzáadott komplexitás fog életbe lépni a [shard láncok](/roadmap/danksharding/) által. Ezek különálló blokkláncok, melynek szükségük van validátorokra, hogy tranzakciókat dolgozzanak fel és új blokkokat hozzanak létre. A terv az, hogy 64 shard láncot fogunk létrehozni, melyeknek megosztottan egyet kell érteniük a hálózat állapotára vonatkozóan. Így további koordináció szükségeltetik, ezt pedig [a beacon chain](/roadmap/beacon-chain/) fogja biztosítani. +Egy véglegesített blokk visszaalakításához egy támadónak legalább a letétbe helyezett összes ETH egyharmadát fel kellene áldoznia. Ennek pontos okát az [Ethereum Alapítvány blogposztja](https://blog.ethereum.org/2016/05/09/on-settlement-finality/) részletesen ismerteti. Mivel a véglegességhez kétharmados többség szükséges, egy támadó a teljes ETH-letét egyharmadával szavazva akadályozhatja meg, hogy a hálózat véglegesítse a blokkot. Létezik egy mechanizmus, amellyel védekezni lehet ez ellen: ez az [inaktivitási elszivárgás](https://eth2book.info/bellatrix/part2/incentives/inactivity). Akkor aktiválódik, amikor a blokklánc véglegesítése több mint négy korszakon keresztül meghiúsul. Az inaktivitási elszivárgás elfolyatja a többség ellen szavazó validátorok ETH-letétjét, ezzel lehetővé teszi, hogy a többség visszaszerezze a kétharmados többséget és véglegesítse a láncot. -A Beacon Chain állapot információkat kap a shardoktól, melyet elérhetővé tesz a többi shard számára, hogy azok szinkronban tudjanak maradni. A Beacon Chain fogja kezelni a validátorokat is a letétbetételtől egészen a jutalmak és büntetések kiosztásáig. +## Kriptogazdasági védelem {#crypto-economic-security} -Így működik ez a folyamat. +Egy validátor futtatása elkötelezettséget jelent. A validátortól elvárják, hogy megfelelő hardvert és internetkapcsolatot tartson fenn a blokkvalidálásban és előterjesztésben való részvételhez. Cserébe a validátor ETH-kifizetést kap (növekszik a letéti egyenlege). Ugyanakkor a validátorként való részvétel új lehetőségeket kínál a felhasználóknak, hogy megtámadják a hálózatot személyes haszon vagy szabotázs céljából. Ez ellen hat, hogy a validátorok elveszítik az ETH-jutalmakat, ha nem vesznek részt a folyamatban, és a meglévő letétjük is megsemmisülhet, ha rosszhiszeműen viselkednek. Két fő rosszhiszemű viselkedési mód van: egy sloton belül több blokk előterjesztése (kétértelműsítés), valamint az ellentmondásos tanúsítások elküldése. -### Hogyan működik a validálás {#how-does-validation-work} +A megvágott ETH-mennyiség azon múlik, hogy ugyanabban az időben hány másik validátor ETH-letétjét vágja még meg a rendszer. Ez az úgynevezett [„korrelációs bírság”](https://eth2book.info/bellatrix/part2/incentives/slashing#the-correlation-penalty), amelynek mértéke lehet csekély (a letét ~1%-a az egyedülálló validátornál), de eredményezheti akár a validátori letét 100%-ának elvesztését (tömeges megvágási esemény). Egy kényszerített kilépési periódus felénél szabja ki a rendszer, amely egy azonnali bírsággal (legfeljebb 1 ETH) kezdődik az 1. napon, majd korrelációs bírsággal folytatódik a 18. napon, végül a hálózatból való kivetéssel fejeződik be a 36. napon. Kis összegű tanúsítási bírságot kapnak minden nap, mert jelen vannak a hálózaton, de nem adnak le szavazatot. Ez mind azt jelenti, hogy egy koordinált támadás nagyon költséges lenne a támadó számára. -Amikor elindítasz egy tranzakciót egy shardon, egy validátornak lesz a felelősége, hogy a tranzakciót egy shard blokkba foglalja. A validátorokat algoritmikusan választja a ki a beacon chain új blokkok javaslatára. +## Elágazásválasztás {#fork-choice} -#### Tanúsítás {#attestation} +Amikor a hálózat optimálisan és becsületesen működik, akkor mindig csak egy blokk van a lánc elején, és minden validátor tanúsítja azt. Mindazonáltal lehetséges, hogy hálózati látencia vagy a blokkelőterjesztő kétértelmű javaslata miatt a validátorok eltérően látják a lánc elejét. Ezért a konszenzusklienseknek egy algoritmusra van szükségük, hogy eldöntsék, melyiket részesítsék előnyben. A proof-of-stake Ethereum által használt algoritmus az [LMD-GHOST](https://arxiv.org/pdf/2003.03052.pdf), és úgy működik, hogy azonosítja az előzmények szerint a tanúsítások legnagyobb többségét magáénak tudó elágazást (fork). -Ha a validátort nem választják ki, hogy új shard blokkot javasoljon, akkor tanúsítania kell egy másik validátor által javasolt blokkot, és meg kell erősítenie, hogy minden úgy van, ahogy lennie kell. A tanúsítás az, ami feljegyzésre kerül a beacon chainen, nem pedig maga a tranzakció. +## Proof-of-stake és biztonság {#pos-and-security} -Legalább 128 validátorra van szükség minden egyes shard blokk tanúsítására – ezt úgy hívjuk, hogy "bizottság". +Egy [51%-os támadás](https://www.investopedia.com/terms/1/51-attack.asp) veszélye a proof-of-work architektúrához hasonlóan a proof-of-stake konszenzusnál is fennáll, ám itt még kockázatosabb a támadók számára. A támadónak a letétbe helyezett ETH-mennyiség 51%-ára volna szüksége. Így a saját tanúsításai segítségével biztosíthatná, hogy az általa előnyben részesített elágazás (fork) szerezze meg a legtöbb tanúsítást. A felhalmozott tanúsítások „súlya” az, amit a konszenzuskliensek a helyes lánc meghatározásához használnak, tehát ez a támadó képes volna általánosan elfogadottá tenni a saját elágazását. Ugyanakkor a proof-of-work konszenzussal szemben a proof-of-stake erőssége az ellentámadás rugalmas bevezetésében rejlik. Például a becsületes validátorok dönthetnek úgy, hogy tovább építik a kisebbségi láncot, és figyelmen kívül hagyják a támadó elágazását, és ugyanerre biztatják az alkalmazásokat, a tőzsdéket és az alapokat is. Úgy is határozhatnak, hogy erőszakkal eltávolítják a támadót a hálózatról, és megsemmisítik az ETH-letétjét. Ezek erős gazdaságvédelmet jelentenek az 51%-os támadások ellen. -A bizottság számára rendelkezésre áll egy időkeret, melyben javasolnak és validálnak egy shard blokkot. Ezt úgy hívjuk, hogy "slot". Csak egy érvényes blokk jön létre egy slotban. 32 slot van egy "korszakban (epoch)". Minden egyes korszak után a bizottság feloszlik és újra alakul más, random résztvevőkkel. Ez megóvja a shardokat az ártalmas bizottságoktól. +Az 51%-os támadás csak egyetlen típusa a rosszindulatú tevékenységeknek. A rosszindulatú szereplők próbálkozhatnak nagy hatóidejű támadással (habár ezt a véglegesítési procedúra kiküszöböli), rövid hatóidejű átszervezésekkel (az előterjesztő megerősítése és a tanúsítási határidők semlegesítik ezt a kockázatot), bouncing (pattogó) és balancing (egyensúlyozó) támadásokkal (az előterjesztő megerősítése ezeket is kezeli, és ilyet eddig csak ideális hálózati feltételek mellett indítottak), illetve lavina támadásokkal (amelyeket az elágazásválasztó algoritmusok azon szabálya semlegesít, hogy kizárólag a legutolsó üzenetet veszik figyelembe). -#### Kereszt kapcsolatok (crosslinks) {#rewards-and-penalties} +Összességében a proof-of-stake – ahogy azt az Ethereum megvalósította – gazdasági szempontból bizonyítottan védettebb, mint proof-of-work. -Ha egy shard blokk javaslatnak elég tanúsítása van, egy "kereszt kapcsolat" jön létre, mely megerősíti a blokk befoglaltságát és a tranzakciódat a beacon chainen. - -Amint létrejön a kereszt kapcsolat, a validátor aki a blokkot javasolta megkapja a jutalmát. - -#### Véglegesség {#finality} - -Az elosztott hálózatoknál egy tranzakciónak "véglegessége" van, amikor egy olyan blokkban van, ami nem tud megváltozni. - -Hogy ez működjön a proof-of-stake-ben, Casper, egy véglegesítő protokoll ráveszi a validátorokat, hogy értsenek egyet egy adott blokk állapota felett bizonyos ellenőrzési pontokon. Amint a validátorok 2/3-a egyetért, a blokk véglegesítődik. A validátorok elvesztik a teljes letétüket, ha megpróbálják ezt visszaállítani egy 51%-os támadás keretében. - -Ahogy Vlad Zamfir fogalmaz: ez olyan, mintha egy bányász részt venne egy 51%-os támadásban, ami miatt a bányászati hardvere azonnal megsemmisülne. - -## Proof-of-stake és biztonság +## Előnyök és hátrányok {#pros-and-cons} -Egy [51%-os támadás](https://www.investopedia.com/terms/1/51-attack.asp) veszélye még így is fennáll a proof-of-stake-ben, de még kockázatosabb a támadók számára. A támadáshoz irányítanod kell a letétbe helyezett ETH 51%-át. Ez nem csak hogy rengeteg pénz, de valószínűleg az ETH árfolyam esését váltaná ki. Nagyon kicsi ösztönző van arra, hogy elpusztítsd a valuta értékét, melyben többségi tulajdonrészed van. Vannak erősebb ösztönzők arra, hogy a hálózatot biztonságban és egészségben tartsuk. +| Előnyök | Hátrányok | +| --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------- | +| A letétbe helyezés az egyének számára megkönnyíti a részvételt a hálózat biztosításában, ezzel elősegíti a decentralizációt. Validátor-csomópont egy átlagos laptopon is futtatható. A letéti alapok lehetővé teszik, hogy a felhasználók akkor is részt vegyenek, ha nincs 32 ETH-jük. | A proof-of-stake fiatalabb és még kevésbé tesztelt, mint a proof-of-work. | +| A letétbe helyezés decentralizáltabb. A méretgazdaságosság nem úgy érvényesül, mint a PoW-bányászat esetén. | A proof-of-stake esetén a megvalósítás bonyolultabb, mint a proof-of-work konszenzusnál. | +| A proof-of-stake erősebb kriptogazdasági védelmet kínál, mint a proof-of-work. | A felhasználóknak három szoftvert kell futtatniuk, hogy részt vehessenek az Ethereum proof-of-stake konszenzusában. | +| Kevesebb új ETH-t kell kibocsátani a hálózati résztvevők ösztönzéséhez. | | -Letét megvágások, kidobások és több más büntetés, melyet a beacon chain koordinál, fogja megakadályozni az ártalmas cselekedeteket. A validátorok felelőssége lesz ezen incidensek megjelölése is. +### Összehasonlítása a proof-of-work mechanizmussal {#comparison-to-proof-of-work} -## Előnyök és hátrányok {#pros-and-cons} +Az Ethereum korábban nem proof-of-stake alapú hálózat volt. Kezdetben proof-of-work mechanizmust használt. A váltás 2022 szeptemberében történt. A proof-of-stake a következő előnyöket hozta a korábbihoz képest: -| Előnyök | Hátrányok | -| ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------- | -| A staking egyszerűbbé teszi, hogy egy csomópontot működtess. Nem igényel nagy hardver vagy energia befektetést. És ha nincs elég ETH-ed, amit letétbe tudnál helyezni, akkor csatlakozhatsz letéti alapokhoz. | A proof-of-stake még mindig korai fázisában van és kevésbé van kipróbálva összehasonlítva a proof-of-work-kel | -| A staking decentralizáltabb. Nagyobb részvételi arányt tesz lehetővé, és a nagyobb csomópont mennyiség nem jelent megnövekedett százalékos hozamot, mint a bányászatnál. | | -| A staking lehetővé teszi a biztonságos shardingot. A shard láncok lehetővé teszik az Ethereum számára, hogy egyszerre több blokk jöjjön létre, mely megnöveli a tranzakciók mennyiségét. Ha egy proof-of-work rendszerbe szeretnénk shardingot bevezetni az azt jelentené, hogy lecsökkentjük a hálózat egy részének szétbomlasztásához szükséges energiát. | | +- nagyobb energiahatékonyság – nincs szükség sok energia felhasználására a proof-of-work számításokhoz; +- alacsonyabb belépési korlát, csökkentett hardverkövetelmények – nincs szükség csúcstechnológiás hardverre ahhoz, hogy esélyünk legyen új blokkot létrehozni; +- kisebb centralizációs kockázat – a proof-of-stake architektúra több csomópont részvételét eredményezi a hálózat biztosításában; +- az alacsony energiaszükséglet miatt kevesebb ETH-t kell kibocsátani a részvételre ösztönzéshez; +- a szabálytalan viselkedés gazdasági büntetése miatt a proof-of-work architektúrához képest magasabb költséggel jár az 51%-os típusú támadás a támadó számára; +- ha egy 51%-os támadás legyűri a kriptogazdasági védelmi rendszert, a közösség dönthet egy becsületes blokklánc közösségi visszaállítása mellett. ## További olvasnivaló {#further-reading} -- [What is Proof of Stake](https://consensys.net/blog/blockchain-explained/what-is-proof-of-stake/) _ConsenSys_ -- [The Beacon Chain Ethereum 2.0 explainer you need to read first](https://ethos.dev/beacon-chain/) _Ethos.dev_ +- [Proof-of-Stake GYIK](https://vitalik.ca/general/2017/12/31/pos_faq.html) _Vitalik Buterin_ +- [Mi az a Proof-of-Stake?](https://consensys.net/blog/blockchain-explained/what-is-proof-of-stake/) _ConsenSys_ +- [Mi az a Proof-of-Stake és miért fontos?](https://bitcoinmagazine.com/culture/what-proof-of-stake-is-and-why-it-matters-1377531463) _Vitalik Buterin_ +- [Miért a Proof-of-Stake? (2020. november)](https://vitalik.ca/general/2020/11/06/pos2020.html) _Vitalik Buterin_ +- [Proof-of-Stake: Hogyan tanultam meg szeretni a gyenge szubjektivitást](https://blog.ethereum.org/2014/11/25/proof-stake-learned-love-weak-subjectivity/) _Vitalik Buterin_ +- [Proof-of-stake Ethereum – támadás és védekezés](https://mirror.xyz/jmcook.eth/YqHargbVWVNRQqQpVpzrqEQ8IqwNUJDIpwRP7SS5FXs) +- [A proof-of-stake tervezési filozófiája](https://medium.com/@VitalikButerin/a-proof-of-stake-design-philosophy-506585978d51) _Vitalik Buterin_ +- [Videó: Vitalik Buterin elmagyarázza a proof-of-stake mechanizmust Lex Fridmannak](https://www.youtube.com/watch?v=3yrqBG-7EVE) ## Kapcsolódó témák {#related-topics} diff --git a/public/content/translations/hu/developers/docs/consensus-mechanisms/pos/keys/index.md b/public/content/translations/hu/developers/docs/consensus-mechanisms/pos/keys/index.md new file mode 100644 index 00000000000..546cc91ff69 --- /dev/null +++ b/public/content/translations/hu/developers/docs/consensus-mechanisms/pos/keys/index.md @@ -0,0 +1,96 @@ +--- +title: A kulcsok a proof-of-stake Ethereumban +description: Magyarázat az Ethereum proof-of-stake konszenzusmechanizmusában használt kulcsokról +lang: hu +--- + +Az Ethereum a publikus-privát kulcspáron alapuló kriptográfia segítségével biztosítja a felhasználói eszközöket. A publikus kulcs az Ethereum-cím alapjául szolgál, tehát látható, és egyedi azonosítóként használják. A privát (vagy titkos) kulcshoz mindig csak a számla tulajdonosa férhet hozzá. A privát kulcsot tranzakciók és adatok aláírására használják, hogy a kriptográfia bizonyítani tudja, hogy a tulajdonos jóváhagyja az adott privát kulcs műveletét. + +Az Ethereum kulcsait [elliptikus görbe kriptográfiával](https://en.wikipedia.org/wiki/Elliptic-curve_cryptography) generálják. + +Amikor azonban az Ethereum [proof-of-work](/developers/docs/consensus-mechanisms/pow) mechanizmusról [proof-of-stake-re](/developers/docs/consensus-mechanisms/pos) váltott, egy új típusú kulcs került az Ethereumba. Az eredeti kulcsok továbbra is pontosan ugyanúgy működnek, mint korábban – a számlákat biztosító elliptikus görbén alapuló kulcsok nem változtak. A felhasználóknak azonban új típusú kulcsra volt szükségük ahhoz, hogy részt vehessenek a proof-of-stake-ben az ETH letétbe helyezésével és a validátorok futtatásával. Ez az igény a skálázhatóság miatt érdekes, hogy a nagyszámú validátorok közötti üzenetekhez olyan kriptográfiai módszer legyen, amely könnyen aggregálható, így csökkenti a hálózati konszenzus kommunikációs igényét. + +Ez az új típusú kulcs a [**Boneh-Lyn-Shacham (BLS)** aláírási sémát használja](https://wikipedia.org/wiki/BLS_digital_signature). A BLS lehetővé teszi az aláírások nagyon hatékony aggregálását, ugyanakkor az aggregált egyedi validátorkulcsok visszafejtését is, és ideális a validátorok közötti műveletek kezelésére. + +## A validátorkulcsok két típusa {#two-types-of-keys} + +A proof-of-stake-re való átállás előtt az Ethereum-felhasználóknak csak egyetlen elliptikus görbén alapuló privát kulccsal volt hozzáférésük a pénzükhöz. A proof-of-stake bevezetésével az önálló letétbe helyezőknek szükségük volt egy **validátorkulcsra** és egy **kivételi kulcsra** is. + +### A validátorkulcs {#validator-key} + +A validátor aláírókulcs két elemből áll: + +- Validátor **privát** kulcs +- Validátor **publikus** kulcs + +A validátor privát kulcsának célja a láncban végrehajtott műveletek, például a blokkjavaslatok és a tanúsítások aláírása. Emiatt ezeket a kulcsokat egy „forró” tárcában kell tartani (mindig online elérhető legyen). + +Ennek a rugalmasságnak az az előnye, hogy a validátor aláírókulcsok gyorsan mozgathatók egyik eszközről a másikra, azonban ha elvesznek vagy ellopják azokat, a tolvaj többféleképpen is képes lehet **visszaélni** azokkal: + +- A validátort súlyos és kizárással járó büntetés éri: + - Amikor blokkelőterjesztő, akkor két különböző Beacon blokkot jvasol és ír alá ugyanarra a slotra + - Tanúsítóként olyan tanúsítást hagy jóvá, ami „körbeölel” egy másikat + - Tanúsítóként két eltérő tanúsítást ír alá ugyanarra a dologra +- Önkéntes kilépésre kényszeríti, amely a validáló letétjét feloldja és a kivételi kulcs tulajdonosa hozzáfér az ETH egyenleghez + +A **validátor publikus kulcsa** szerepel a tranzakció adataiban, amikor egy felhasználó ETH-t fizet be a letéti szerződésbe. Ez az úgynevezett _letéti adat_, amely lehetővé teszi az Ethereum számára a validátor azonosítását. + +### Kivételi hitelesítő adatok {#withdrawal-credentials} + +Minden validátor rendelkezik egy tulajdonsággal, amelyet _visszavonási hitelesítő adatoknak_ neveznek. Ez a 32 bájtos mező vagy `0x00`-val kezdődik, ami a BLS kivonási hitelesítő adatokat jelenti, vagy` 0x01`-gyel, ami a végrehajtási címre mutató hitelesítő adatokat jelenti. + +A `0x00` BLS kulcsokkal rendelkező validátoroknak frissíteniük kell ezeket a hitelesítő adatokat, hogy azok egy végrehajtási címre mutassanak a többletegyenleg kifizetéséhez vagy a letétkivonáshoz. Ezt úgy lehet megtenni, hogy a kezdeti kulcsgenerálás során a letétbe helyezési adatokban megadunk egy végrehajtási címet, _VAGY_ úgy, hogy a kivételi kulcsot egy későbbi időpontban felhasználjuk egy `BLSToExecutionChange` üzenet aláírására és továbbítására. + +### A kivételi kulcs {#withdrawal-key} + +A kivételi kulcsra a kivételi hitelesítő adatok frissítéséhez van szükség, hogy azok egy végrehajtási címre mutassanak, ha a kezdeti befizetés során ezt nem állították be. Ez lehetővé teszi a felhasználók számára a többletegyenleg kifizetését, és a letétbe helyezett ETH teljes kivételét is. + +Ahogy a validátorkulcsok, a kivételi kulcsok is két elemből állnak: + +- Kivételi **privát** kulcs +- Kivételi **publikus** kulcs + +Ennek a kulcsnak az elvesztése a kivételi hitelesítő adatok `0x01` típusra történő frissítése előtt a validátoregyenleghez való hozzáférés elvesztését jelenti. A validátor továbbra is aláírhatja a tanúsításokat és a blokkokat, mivel ezekhez a műveletekhez a validátor privát kulcsa szükséges, azonban a kivételi kulcsok elvesztése miatt erre igen kevés a motivációja. + +A validátorkulcsok és az Ethereum számlakulcsok szétválasztása lehetővé teszi, hogy egyetlen felhasználó több validátort is futtasson. + +![validátorkulcs ábra](validator-key-schematic.png) + +## Kulcsok származtatása egy kulcsmondatból {#deriving-keys-from-seed} + +Ha minden 32 ETH feltöltéséhez 2 független kulcsból álló új készletre lenne szükség, a kulcskezelés nehézkessé válna, különösen a több validátort futtató felhasználók számára. Ehelyett több validátorkulcsot lehet egyetlen titokból levezetni, és ennek a titoknak a tárolása lehetővé teszi a hozzáférést több validátorkulcshoz. + +[A mnemotechnika](https://en.bitcoinwiki.org/wiki/Mnemonic_phrase) és az útvonalak olyan kiemelkedő jellemzők, amelyekkel a felhasználók gyakran találkoznak, amikor [hozzáférnek](https://ethereum.stackexchange.com/questions/19055/what-is-the-difference-between-m-44-60-0-0-and-m-44-60-0) a tárcájukhoz. A mnemonika egy szavakból álló sorozat, amely a privát kulcs kezdeti magjaként szolgál. További adatokkal kombinálva a mnemonika egy „mesterkulcs” néven ismert hash-t generál. Ezt úgy lehet elképzelni, mint egy fa gyökerét. Ebből a gyökérből hierarchikus útvonal segítségével elágazások vezethetők le, így a gyermek csomópontok a szülői csomópont hash-jének és a fán belüli indexének kombinációjaként létezhetnek. Tekintse meg a [BIP-32](https://github.com/bitcoin/bips/blob/master/bip-0032.mediawiki) és [BIP-19](https://github.com/bitcoin/bips/blob/master/bip-0039.mediawiki) szabványokat a mnemonikus alapú kulcsgeneráláshoz. + +Ezek az útvonalak a következőképpen néznek ki, ami ismerős lehet azoknak, akik már dolgoztak hardvertárcákkal: + +``` +m/44'/60'/0'/0` +``` + +Az ebben az elérési útvonalban lévő perjelek a következőképpen választják el a privát kulcs összetevőit: + +``` +master_key / purpose / coin_type / account / change / address_index +``` + +Ez a logika lehetővé teszi a felhasználók számára, hogy egyetlen **mnemonikus kifejezéshez** a lehető legtöbb validátort csatolják, mivel a fa gyökere közös lehet, és a differenciálás az elágazásokban történhet. A felhasználó **a mnemonikus kifejezésből tetszőleges számú kulcsot** származtathat. + +``` + [m / 0] + / + / +[m] - [m / 1] + \ + \ + [m / 2] +``` + +Az egyes ágakat `/` választja el egymástól, így `m/2` azt jelenti, hogy a mesterkulccsal kezdjük, és a 2. ágat követjük. Az alábbi ábrán egyetlen mnemonikus kifejezést használunk három kivételi kulcs tárolására, mindegyikhez két validátor tartozik. + +![validátorkulcs logika](multiple-keys.png) + +## További olvasnivaló {#further-reading} + +- [Ethereum Alapítvány blogbejegyzés Carl Beekhuizentől](https://blog.ethereum.org/2020/05/21/keys/) +- [EIP-2333 BLS12-381 kulcsgenerálás](https://eips.ethereum.org/EIPS/eip-2333) diff --git a/public/content/translations/hu/developers/docs/consensus-mechanisms/pos/pos-vs-pow/index.md b/public/content/translations/hu/developers/docs/consensus-mechanisms/pos/pos-vs-pow/index.md new file mode 100644 index 00000000000..8c4d3bc89bc --- /dev/null +++ b/public/content/translations/hu/developers/docs/consensus-mechanisms/pos/pos-vs-pow/index.md @@ -0,0 +1,69 @@ +--- +title: A proof-of-stake és a proof-of-work összehasonlítása +description: Az Ethereum proof-of-stake és proof-of-work alapú konszenzusmechanizmusának összehasonlítása +lang: hu +--- + +Amikor az Ethereumot bevezették, a proof-of-stake (letéti igazolás) még sok kutatást és fejlesztést igényelt, mielőtt erre alapozhatták volna az Ethereum biztosítását. A proof-of-work (munkaigazolás) egy egyszerűbb mechanizmus volt, ami már működött a Bitcoinnál, így a központi fejlesztők egyszerűen implementálni tudták, hogy elindulhasson az Ethereum. Ezután a proof-of-stake mechanizmusát még nyolc évig fejlesztették, mielőtt áttérek volna rá. + +Ez az oldal elmagyarázza az Ethereum proof-of-work-ről proof-of-stake-ra való áttérésének okait és a szükséges kompromisszumokat. + +## Biztonság {#security} + +Az Ethereum kutatói biztonságosabbnak tartják a proof-of-stake-et, mint a proof-of-work-öt. Ez nemrég került bevezetésre a valódi Ethereum főhálózatra, és kevésbé bizonyított, mint a proof-of-work. A következő részben a proof-of-stake biztonsági modelljének előnyeit és hátrányait tárgyaljuk a proof-of-work-höz képest. + +### A támadás költsége {#cost-to-attack} + +A proof-of-stake-ben a validátoroknak letétbe kell helyezniük 32 ETH-t egy okosszerződésben. Az Ethereum a rosszhiszemű validátorokat büntetheti azzal, hogy megsemmisíti a letétbe helyezett ethert. A konszenzushoz a teljes letétbe helyezett ether legalább 66%-a kell szavazzon a blokkok egy bizonyos halmazára. A letét >=66%-a által megszavazott blokkok „véglegesítetté” válnak, ami azt jelenti, hogy nem lehet őket eltávolítani vagy átszervezni. + +A hálózat elleni támadása lehet az, hogy megakadályozzák a lánc véglegesítését, vagy a blokkokat a támadó számára előnyös sorrendbe teszik a kanonikus láncban. Ehhez a támadónak el kell térítenie a helyes konszenzus útját azzal, hogy nagy mennyiségű ethert halmoz fel, és közvetlenül azzal szavaz, vagy úgy, hogy becsapja az őszinte validálókat, hogy egy bizonyos módon szavazzanak. A kifinomult, kis valószínűséggel bíró támadások során a jóhiszemű validátorokat eltérítik, ekkor az Ethereum megtámadásának költsége azonos a letéttel, amelyet a támadónak fel kell halmoznia ahhoz, hogy a konszenzust a maga javára befolyásolja. + +A legalacsonyabb támadási költség a teljes letét >33%-a. A teljes letét >33%-át birtokló támadó egyszerűen offline állapotba kerülve késleltetheti a véglegesítést. Ez viszonylag kisebb probléma a hálózat számára, mivel létezik egy „inaktivitási elszivárgás” mechanizmus, amely addig redukálja a letéteket az offline validátoroktól, amíg az online többség a letét 66%-át képviseli, és újra véglegesíteni tudja a láncot. Elméletileg az is lehetséges, hogy egy támadó a teljes letét valamivel több mint 33%-ával kettős véglegesítést idézzen elő azáltal, hogy egy helyett két blokkot hoz létre, amikor felkérik, hogy legyen blokkelőterjesztő, majd az összes validátorral együtt kétszeresen szavazzon. Mindkét elágazáshoz csak a megmaradt becsületes validátorok 50%-ának kell először látni az egyes blokkokat, így ha sikerül pontosan időzíteniük az üzeneteiket, akkor képesek lehetnek mindkét elágazást véglegesíteni. Ennek kicsi a valószínűsége, de ha egy támadó képes lenne kettős véglegesítést előidézni, akkor az Ethereum közösségnek úgy kellene döntenie, hogy az egyik elágazást követi, és ebben az esetben a támadó validátorait a másik elágazáson súlyosan megbüntetnék és kizárnák. + +A teljes letét >33%-ával egy támadónak esélye van arra, hogy kisebb (véglegesítés késleltetése) vagy komolyabb (dupla véglegesítés) hatást gyakoroljon az Ethereum-hálózatra. Több mint 14.000.000 ETH lttétje van a hálózaton és egy reprezentatív 1000 dollár/ETH árral, az ilyen támadások minimális költsége `1000 x 14.000.000 x 0,33 = 4.620.000.000 dollár`. A támadó ezt a pénzt elveszítené a súlyos büntetés következtében, és kiesne a hálózatból. Az újbóli támadáshoz a letét >33%-át kellene (újra) felhalmozniuk és (újra) elégetniük. Minden egyes támadási kísérlet a hálózat megtámadására >4,6 milliárd dollárba kerülne (1000 dollár/ETH és 14 millió ETH letét mellett). A támadót kidobják a hálózatból a súlyos büntetés következtében, és egy aktiválási sorba kell beállnia, hogy újra csatlakozhasson. Ez azt jelenti, hogy az ismételt támadás mértéke nemcsak arra az arányra korlátozódik, amivel a támadó a teljes letét >33%-át fel tudja halmozni, hanem arra az időre is, amíg az összes validátorát fel tudja venni a hálózatra. Minden egyes támadással a támadó sokkal szegényebbé válik, a közösség többi tagja pedig gazdagabb lesz az ebből eredő drasztikus kínálati változásnak köszönhetően. + +Más támadások, mint például az 51%-os támadás vagy a teljes letét 66%-ával történő véglegesség visszafordítása, lényegesen több ETH-t igényelnek, és sokkal költségesebbek a támadó számára. + +Összehasonlítjuk a proof-of-work mechanizmussal. A proof-of-work Ethereum elleni támadás indításának költsége az volt, hogy a teljes hálózati hash-ráta >50%-át folyamatosan birtokolni kellett. Ez az elegendő számítási teljesítmény hardver- és üzemeltetési költségét jelentette ahhoz, hogy a proof-of-work megoldások kiszámításában lehagyja a többi bányászt. Az Ethereumon többnyire GPU-t használtak a bányászathoz, nem ASIC-et, ami alacsonyan tartotta a költségeket (ha a proof-of-work rendszer fennmaradt volna, az ASIC-alapú bányászat népszerűbb lehetett volna). Egy támadónak sok hardverre lett volna szüksége, illetve fizethette volna a működtetés költségeit, hogy megtámadhasson egy proof-of-work Ethereum-hálózatot, de ez kevesebb, mint a támadáshoz szükséges ETH felhalmozása. Egy 51%-os támadás a proof-of-work esetében [kb. 20x olcsóbb](https://youtu.be/1m12zgJ42dI?t=1562), mint a proof-of-stake esetében. Ha a támadást észlelték, és a lánc elágazott (hard fork), hogy eltávolítsák a támadó hatását, a támadó ismételten ugyanazt a hardvert használhatná az új elágazás megtámadásához. + +### Bonyolultság {#complexity} + +A proof-of-stake kivitelezése a proof-of-workhöz képest sokkal bonyolultabb. Ez a proof-of-work mellett szólhat, mivel az egyszerűbb protokollokba sokkal nehezebb véletlen hibákat vagy nem kívánt hatásokat bevinni. Habár a komplexitást sikerült megszelídíteni több éves kutatás/fejlesztés, szimulációk és teszthálózati megvalósítások révén. A proof-of-stake protokollt öt független csapat (a végrehajtási és konszenzusrétegen is), öt programozási nyelven valósította meg, ami ellenállást biztosít a klienshibákkal szemben. + +A proof-of-stake konszenzus logikájának biztonságos fejlesztése és tesztelése érdekében a Beacon lánc két évvel azelőtt indult el, hogy a proof-of-stake-et az Ethereum főhálózatra bevezették volna. A Beacon lánc a proof-of-stake tesztelési helyeként működött, mivel élő blokklánc volt proof-of-stake konszenzuslogikával, de nem kezelt valódi Ethereum tranzakciókat, gyakorlatilag csak önmagában jutott konszenzusra. Amint ez kellő ideig stabil és hibamentes volt, a Beacon láncot „beolvasztották” az Ethereum főhálózatba. Mindez hozzájárult ahhoz, hogy a proof-of-stake összetettsége kezelhetővé váljon, s a nem kívánt következmények vagy a klienshibák kockázata alacsony legyen. + +### Támadási felület {#attack-surface} + +A proof-of-stake összetettebb, mint a proof-of-work, ami azt jelenti, hogy több potenciális támadási vektorral kell megbirkózni. A klienseket összekötő peer-to-peer hálózatból kettő van, külön protokollal. Mivel előre kiválasztanak egy validátort, hogy egy adott slotban blokkot javasoljon, így lehetőség nyílik a szolgáltatásmegtagadásra, amikor az adott validátort annyi feladattal árasztják el, hogy nem tudja végrehajtani a fő funkcióját. + +Vannak olyan módszerek is, amelyekkel a támadók gondosan időzíthetik blokkjaik vagy tanúsításaik közzétételét, hogy azokat a becsületes hálózat egy bizonyos hányada megkapja, és így bizonyos módon szavaznak. Végül egy támadó egyszerűen elegendő ETH letétet képezhet ahhoz, hogy uralja a konszenzusmechanizmust. E [támadási vektorok mindegyikének vannak kapcsolódó védekezési lehetőségei](/developers/docs/consensus-mechanisms/pos/attack-and-defense), ugyanakkor ezek nem léteznek a proof-of-work mechanizmusban. + +## Decentralizáció {#decentralization} + +A proof-of-stake decentralizáltabb, mint a proof-of-work, mivel a bányászhardverek versenyében a magánszemélyek és a kis szervezetek kiszorulnak a versenyből. Bár technikailag bárki elkezdheti a bányászatot szerény hardverrel, annak a valószínűsége, hogy jutalmat kap, elenyészően kicsi az intézményes bányászathoz képest. A proof-of-stake esetében a letét költsége és százalékos megtérülése mindenki számára azonos. Jelenleg 32 ETH-be kerül egy validátor működtetése. + +Másrészt a likvid letéti derivatívák centralizációs aggályokhoz vezettek, mivel néhány nagy szolgáltató nagy mennyiségű letétbe helyezett ETH-t kezel. Ez problémás, és minél előbb korrigálni kell, de árnyaltabb is, mint amilyennek látszik. A központosított letéti alapok nem feltétlenül központosítják a validátorok irányítását – gyakran ez egy módja annak, hogy egy központi ETH-állományt sok független csomópont-üzemeltető adjon összei anélkül, hogy minden résztvevőnek 32 saját ETH-re lenne szüksége. + +Az Ethereum számára a legjobb megoldás az, ha a validátorokat helyben, otthoni számítógépeken futtatják, maximalizálva a decentralizációt. Ezért ellenzi az Ethereum azokat a változtatásokat, amelyek növelik a csomópont és a validátor futtatásának hardverigényét. + +## Fenntarthatóság {#sustainability} + +A proof-of-stake energiafogyasztása miatt ez gazdaságos módja a blokklánc biztosításának. A proof-of-work rendszerben a bányászok versenyeznek a blokkbányászat jogáért. A bányászok sikeresebbek, ha gyorsabban tudják elvégezni a számításokat, ami miatt többet fektetnek hardverbe és nagyobb az energiafogyasztás. Ez jellemezte az Ethereumot, mielőtt átállt volna a proof-of-stake-re. Nem sokkal a proof-of-stake-re való áttérés előtt az Ethereum körülbelül 78 TWh/év mennyiséget fogyasztott, akár egy kisebb ország. A proof-of-stake-re való áttérés azonban kb. 99,98%-kal csökkentette ezt az energiafelhasználást. Ez tehát az Ethereumot egy energiahatékony, alacsony szén-dioxid-kibocsátású platformmá tette. + +[Bővebben az Ethereum energiafogyasztásáról](/energy-consumption) + +## Kibocsátás {#issuance} + +A proof-of-stake Ethereum kevesebb érmekibocsátással tudja fenntartani a biztonságát, mint a proof-of-work rendszerben, mivel a validátoroknak nem kell magas áramköltséget fizetniük. Ennek eredményeképpen az ETH inflációja csökkenhet, vagy akár meg is fordult és deflálttá válhat, ha nagy mennyiségű ETH-t égetnek el. Az alacsonyabb inflációs szintek azt jelentik, hogy az Ethereum biztonsága olcsóbb, mint a proof-of-work esetében. + +## Ön inkább vizuális típus? {#visual-learner} + +Tekintse meg Justin Drake magyarázatát a proof-of-stake előnyeiről a proof-of-work-höz képest: + + + +## További olvasnivaló {#further-reading} + +- [Vitalik proof-of-stake tervezési filozófiája](https://medium.com/@VitalikButerin/a-proof-of-stake-design-philosophy-506585978d51) +- [Vitalik proof-of-stake GYIK](https://vitalik.ca/general/2017/12/31/pos_faq.html#what-is-proof-of-stake) +- [„Simply Explained” (egyszerű magyarázat) videó a proof-of-stake és a proof-of-woork mechanizmusokról](https://www.youtube.com/watch?v=M3EFi_POhps) diff --git a/public/content/translations/hu/developers/docs/consensus-mechanisms/pos/rewards-and-penalties/index.md b/public/content/translations/hu/developers/docs/consensus-mechanisms/pos/rewards-and-penalties/index.md new file mode 100644 index 00000000000..e967b0b5674 --- /dev/null +++ b/public/content/translations/hu/developers/docs/consensus-mechanisms/pos/rewards-and-penalties/index.md @@ -0,0 +1,90 @@ +--- +title: Proof-of-stake jutalmak és büntetések +description: Ismerje meg a protokollon belüli ösztönzőket a proof-of-stake Ethereumban. +lang: hu +--- + +Az Ethereumot a natív kriptovaluta, az ether (ETH) biztosítja. Azok a csomópont-üzemeltetők, akik részt kívánnak venni a blokkok validálásában és a lánc fejének azonosításában, ethert helyeznek el az Ethereumon egy okosszerződésben. Ezután etherben fizetnek nekik a validátorszoftver futtatásáért, amely ellenőrzi a peer-to-peer hálózaton keresztül érkező új blokkok érvényességét, és a lánc fejének azonosítására az elágazásválasztó-algoritmust alkalmazza. + +A validátornak két fő szerepe van: 1) az új blokkok ellenőrzése és „tanúsítása”, hogy érvényesek-e, 2) új blokk előterjesztése, amikor véletlenszerűen kiválasztják a validátorállományból. Ha a validátor nem végzi el e feladatok egyikét sem, amikor erre felkérik, akkor lemarad az ether kifizetéséről. A validátorokat felkérhetik az aláírások összesítésére és a szinkronizáló bizottságokban való részvételre is. + +Vannak olyan műveletek, amelyeket nehéz lenne véletlenül megtenni, ezért valamilyen rosszindulatú szándékot jeleznek, például több blokkot javasolni vagy tanúsítani ugyanarra a slotra. Ezek súlyos büntetést vonnak maguk után, amelyek azt eredményezik, hogy a validátor egyenlegéből bizonyos mennyiségű ethert (legfeljebb 1 ETH-t) elégetnek, mielőtt eltávolításra kerül a hálózatból, ami 36 napot vesz igénybe. A súlyos büntetést kapott validátor ether egyenlege lassan fogy a kilépési időszak alatt, de a 18. napon „korrelációs büntetést” kap, amely nagyobb, ha több validátor egy időben kerül kizárásra. A konszenzusmechanizmus ösztönző struktúrája tehát a helyes viselkedésért jutalmat fizet, a rossz szereplőket pedig bünteti. + +Minden jutalom és büntetés korszakonként egyszer kerül alkalmazásra. + +Tekintse meg a további részleteket + +## Jutalmak és büntetések {#rewards} + +### Jutalmak {#rewards} + +A validátorok jutalomban részesülnek, ha a többi validátorral összhangban adnak szavazatokat, ha blokkokat javasolnak, és ha részt vesznek a szinkronizáló bizottságokban. A jutalmak értékét minden egyes korszakban egy `base_reward` (alapjutalom) alapján számítják ki. Ez az alapegység, amelyből a többi jutalmat számolják. A `base_reward` az egy validátor által optimális körülmények között kapott átlagos jutalom korszakonként. Ezt a validátor tényleges egyenlegéből és az aktív validátorok teljes számából számítják ki: + +``` +base_reward = effective_balance * (base_reward_factor / (base_rewards_per_epoch * sqrt(sum(active_balance)))) +``` + +ahol `base_reward_factor` 64, `base_rewards_per_epoch` 4 és `sum(active balance)` az összes aktív validátor letétbe helyezett ether egyenlege. + +Ez azt jelenti, hogy az alapjutalom arányos a validátor tényleges egyenlegével és fordítottan arányos a hálózaton lévő validátorok számával. Minél több validátor van, annál nagyobb a teljes kibocsátás (mint `sqrt(N)`, de annál kisebb az egy validátorra jutó `base_reward` alapjutalom (mint `1/sqrt(N)`). Ezek a tényezők befolyásolják a letétbe helyező csomópontra vonatkozó APR-t (éves ráta). Tekintse meg ennek indoklását [Vitalik jegyzeteiben](https://notes.ethereum.org/@vbuterin/rkhCgQteN?type=view#Base-rewards). + +A teljes jutalmat ezután öt összetevő összegeként számítják ki, amelyek mindegyike súlyozással rendelkezik, amely meghatározza, hogy az egyes összetevők mennyivel járulnak hozzá a teljes jutalomhoz. Az összetevők a következők: + +``` +1. source vote: the validator has made a timely vote for the correct source checkpoint +2. target vote: the validator has made a timely vote for the correct target checkpoint +3. head vote: the validator has made a timely vote for the correct head block +4. sync committee reward: the validator has participated in a sync committee +5. proposer reward: the validator has proposed a block in the correct slot +``` + +A komponensek súlyozása a következő: + +``` +TIMELY_SOURCE_WEIGHT uint64(14) +TIMELY_TARGET_WEIGHT uint64(26) +TIMELY_HEAD_WEIGHT uint64(14) +SYNC_REWARD_WEIGHT uint64(2) +PROPOSER_WEIGHT uint64(8) +``` + +A súlyok összege 64. A jutalom kiszámítása az alkalmazandó súlyok összege osztva 64-gyel. Az a validátor, aki időben leadta a forrás-, cél- és fejszavazatokat, blokkot javasolt és részt vett a szinkronizáló bizottságban az a következőt kaphatja: `64/64 * base_reward == base_reward`. Egy validátor azonban általában nem szokott blokkot javasolni, így a maximális jutalma: `64-8 /64 * base_reward == 7/8 * base_reward`. Azok a validátorok, akik nem blokkelőterjesztők és nem is tagjai szinkronizáló bizottságnak, a következőképpen kaphatnak: ` 64-8-2 / 64 * base_reward == 6,75/8 * base_reward`. + +A gyors tanúsítások ösztönzésére további jutalom jár. Ez az `inclusion_delay_reward`. Ennek értéke megegyezik a `base_reward` és `1/delay` szorzatával, ahol a `delay` a blokkjavaslat és a tanúsítás között eltelt slotok száma. Például, ha a tanúsítás a blokkjavaslat slotján belül kerül benyújtásra, a tanúsító `base_reward * 1/1 == base_reward` jutalmat kap. Ha a tanúsítás a következő slotban érkezik, akkor az igazoló `base_reward * 1/2` és így tovább. + +A blokkot javaslók `8 / 64 * base_reward` jutalmat kapnak **minden egyes, a blokkban szereplő érvényes tanúsításért **, így a jutalom tényleges értéke a tanúsító validátorok számával növekszik. A blokkot javaslók növelhetik jutalmukat azáltal is, hogy a javasolt blokkjukba más validátorok helytelen viselkedésére vonatkozó bizonyítékokat is beillesztenek. Ezek azok az ösztönzők, amelyek a validátorokat őszinteségre motiválják. A súlyos büntetést tartalmazó blokkelőterjesztő a `slashed_validators_effective_balance / 512` értékkel jutalmazzák. + +### Büntetések {#penalties} + +Eddig a jól viselkedő validátorokat vettük figyelembe, de mi a helyzet azokkal, akik nem vagy csak lassan teszik meg a fej-, forrás- és célszavazatokat? + +A cél- és forrásszavazatok elmaradásáért járó büntetés megegyezik azzal a jutalommal, amelyet az igazoló kapott volna, ha leadja azokat. Ez azt jelenti, hogy ahelyett, hogy a jutalom hozzáadódna az egyenlegükhöz, ugyanekkora értéket vonnak el abból. A fejszavazás elmulasztásáért nincs büntetés (azt csak jutalmazzák, nem büntetik). Az `inclusion_delay` kapcsán nincs büntetés, a jutalom egyszerűen nem kerül hozzá a validátor egyenlegéhez. Nincs büntetés azért sem, ha valaki nem javasol blokkot. + +Tudjon meg többet a jutalmakról és büntetésekről a [konszenzusspecifikációból](https://github.com/ethereum/consensus-specs/blob/dev/specs/altair/beacon-chain.md). A jutalmakat és büntetéseket a Bellatrix frissítéssel módosították – nézze meg Danny Ryan és Vitalik beszélgetését erről ebben a [Peep an EIP videóban](https://www.youtube.com/watch?v=iaAEGs1DMgQ). + +## Súlyos büntetés (slashing) {#slashing} + +A súlyos büntetés (slash) egy komoly akció, amely eltávolítja a validátort a hálózatból, s a letétbe helyezett ethert is elveszti. Három oka lehet egy validátor súlyos megbüntetésének, amelyek mindegyike a blokkok rosszhiszemű felajánlását vagy tanúsítását jelenti: + +- Két különböző blokk előterjesztése és aláírása ugyanarra a slotra +- Egy olyan blokk tanúsítása, amely „magába foglal” egy másikat (gyakorlatilag megváltoztatva a historikus adatokat) +- „Kettős szavazással”, amikor két jelöltet tanúsítanak ugyanarra a blokkra + +Ha ezeket a műveleteket észlelik, a validátort súlyosan megbüntetik. Ez azt jelenti, hogy a letétbe helyezett etherük 1/32-ét (maximum 1 etherig) azonnal elégetik, majd egy 36 napos eltávolítási időszak kezdődik. Ezen eltávolítási időszak alatt a validátor letétje fokozatosan elszivárog. Félidőben (18. nap) további büntetést kap, amelynek nagysága a büntetés előtti 36 napban az összes megbüntetett (slashed) validátor összes letétbe helyezett etherének nagyságával arányos. Ez azt jelenti, hogy ha több validátor kap súlyos büntetést és kizárást, akkor a büntetés mértéke növekszik. A maximális büntetés az összes megbüntetett validátor teljes tényleges egyenlege (ha sok validátor kap súlyos büntetést, akkor elveszíthetik a teljes letétjüket). Másrészt egyetlen, elszigetelt súlyos büntetés a validátor letétjének csak kis részét égeti el. Ezt a középtájt kiszabott extra büntetést, amely a megbüntetett validátorok számával skálázódik, korrelációs büntetésnek nevezzük. + +## Inaktivitási elszivárgás {#inactivity-leak} + +Ha a konszenzusréteg több mint négy korszakot tölt el véglegesítés nélkül, akkor egy „inaktivitási szivárgás” vészhelyzeti protokoll aktiválódik. Az inaktivitási elszivárgás célja, hogy megteremtse a lánc véglegessé válásához szükséges feltételeket. A véglegességhez a teljes feltett ether 2/3-os többsége szükséges ahhoz, hogy a forrás- és célellenőrzési pontok megegyezzenek. Ha a validátorok több mint 1/3-a offline állapotba kerül, vagy nem küld helyes tanúsításokat, akkor nem lehetséges, hogy a 2/3-os szupertöbbség véglegesítse az ellenőrzési pontokat. Az inaktivitási kiszivárgás lehetővé teszi, hogy az inaktív validátorok letétje fokozatosan elszivárogjon addig, amíg a hozzájuk tartozó letét 1/3 alá csökkent, így a megmaradt aktív validátorok véglegesíthetik a láncot. Bármilyen nagy legyen inaktív validátorok csoportja, a megmaradó aktív validátorok végül a letét >2/3-át birtokolják. A letét elvesztése erősen ösztönzi az inaktív érvényesítőket arra, hogy minél hamarabb újra aktiválódjanak. A Medalla teszthálózaton életbe lépett már az inaktivitási elszivárgás, amikor is az aktív validátorok < 66%-a képes volt konszenzusra jutni a blokklánc aktuális fejével kapcsolatban. Az inaktivitási elszivárgás aktiválódott, és a véglegesség végül helyreállt. + +A konszenzusmechanizmus jutalom-, büntetés- és súlyos büntetési konstrukciója arra ösztönzi a validálókat, hogy jóhiszeműen viselkedjenek. Ezekből a tervezési döntésekből következik, hogy a rendszer érdekében a validátoroknak egyenlően kell eloszlaniuk a kliens között, és fel kell oldani az egyetlen kliens dominanciáját. + +## További olvasnivaló {#further-reading} + +- [Ethereum frissítés: Az ösztönzési réteg](https://eth2book.info/altair/part2/incentives) +- [Ösztönzők az Ethereum hibrid Casper-protokolljában](https://arxiv.org/pdf/1903.04205.pdf) +- [Vitalik jegyzetekkel ellátott specifikációja](https://github.com/ethereum/annotated-spec/blob/master/phase0/beacon-chain.md#rewards-and-penalties-1) +- [Eth2 súlyos büntetés elkerülésének módjai](https://medium.com/prysmatic-labs/eth2-slashing-prevention-tips-f6faa5025f50) + +_Források_ + +- _[https://benjaminion.xyz/eth2-annotated-spec/phase0/beacon-chain/](https://benjaminion.xyz/eth2-annotated-spec/phase0/beacon-chain/)_ diff --git a/public/content/translations/hu/developers/docs/consensus-mechanisms/pos/weak-subjectivity/index.md b/public/content/translations/hu/developers/docs/consensus-mechanisms/pos/weak-subjectivity/index.md new file mode 100644 index 00000000000..9d5ac720e72 --- /dev/null +++ b/public/content/translations/hu/developers/docs/consensus-mechanisms/pos/weak-subjectivity/index.md @@ -0,0 +1,39 @@ +--- +title: Gyenge szubjektivitás +description: A gyenge szubjektivitásnak és a proof-of-stake Ethereumban elfoglalt szerepének bemutatása. +lang: hu +--- + +A szubjektivitás a blokkláncban arra utal, hogy a jelenlegi státuszról való megegyezés közösségi információkon alapszik. Több érvényes elágazás is létezhet, amelyek közül a hálózati társaktól gyűjtött információk alapján választanak. Ennek ellentéte az objektivitás, amely olyan láncokra vonatkozik, ahol csak egy lehetséges érvényes lánc van, amelyben minden csomópont egyetért a kódolt szabályok alkalmazásával. A harmadik helyzet a gyenge szubjektivitás. Ez egy olyan lánc, amely objektíven haladhat előre, miután bizonyos kezdeti információt közösségileg megszerzett. + +## Előfeltételek {#prerequisites} + +A jelen téma könnyebb megértéséhez tekintse meg a [proof-of-stake](/developers/docs/consensus-mechanisms/pos/) alapjairól szóló oldalt. + +## Milyen problémákat old meg a gyenge szubjektivitás? {#problems-ws-solves} + +A szubjektivitás a proof-of-stake blokkláncok velejárója, mivel a helyes lánc kiválasztása több elágazás közül a korábbi szavazatok számolásával történik. Ez számos támadási vektornak teszi ki a blokkláncot, beleértve a hosszú távú támadásokat, amelyek során a láncban nagyon korán részt vevő csomópontok fenntartanak egy alternatív elágazást, amelyet később saját érdekükből kifolyólag kiadnak. Alternatív megoldásként, ha a validátorok 33%-a visszavonja a letétjét, de továbbra is tanúsít és blokkokat állít elő, akkor létrehozhatnak egy alternatív elágazást, amely ütközik a kanonikus lánccal. Az új vagy a hosszú ideje offline csomópontok nem biztos, hogy tudják, hogy ezek a támadó validátorok visszavonták a letétüket, így rávehetik őket, hogy egy helytelen láncot kövessenek. Az Ethereum olyan korlátozásokkal tudja megoldani a támadási vektorokat, amelyek a mechanizmus szubjektív aspektusait, beleértve a bizalmi feltételezéseket is, a minimálisra csökkenti. + +## A gyenge szubjektivitás ellenőrzőpontjai {#ws-checkpoints} + +A gyenge szubjektivitás a proof-of-stake Ethereumban az erre vonatkozó ellenőrzőpontokkal valósul meg. Ezek olyan státuszgyökerek, amelyek a hálózat összes csomópontja szerint a kanonikus láncba tartoznak. Ezek is az „egyetemes igazság” célját szolgálják, mint a genezis blokkok, azzal a különbséggel, hogy nem a genezis pozícióban helyezkednek el a blokkláncban. Az elágazásválasztó-algoritmus bízik abban, hogy az adott ellenőrzőpontban meghatározott blokkláncstátusz helyes, és hogy ettől a ponttól kezdve függetlenül és objektíven ellenőrzi a láncot. Az ellenőrzési pontok adják az adott blokk visszafordíthatóságának korlátját, mivel a gyenge szubjektivitás ellenőrzési pontjai előtti blokkok nem módosíthatók. Ez aláássa a nagy hatótávolságú támadásokat azzal, hogy a mechanizmus érvénytelennek minősíti a nagy hatótávolságú elágazásokat. Azzal, hogy a gyenge szubjektivitás ellenőrzési pontjai közelebb vannak, mint a validátor letétkivételi ideje, az elágazást készítő validátort meg tudja bünteti valamekkora összegig, mielőtt kivehetné a letétet, és így az új belépőket nem tudja eltéríteni a téves elágazásokra. + +## A gyenge szubjektivitás ellenőrzési pontjai és a véglegesített blokkok közötti különbség {#difference-between-ws-and-finalized-blocks} + +Az Ethereum-csomópontok másképp kezelik a véglegesített blokkokat és a gyenge szubjektivitás ellenőrzési pontjait. Ha egy csomópont két egymással versengő véglegesített blokkról szerez tudomást, akkor a kettő között vacilál – nem tudja automatikusan azonosítani, hogy melyik a kanonikus elágazás. Ez a konszenzuskudarc tünete. Ezzel szemben egy csomópont egyszerűen elutasít minden olyan blokkot, amely ütközik a gyenge szubjektivitás ellenőrzési pontjával. A csomópont szempontjából a gyenge szubjektivitás ellenőrzési pontja olyan abszolút igazságot képvisel, amelyet nem lehet aláásni a társaktól jövő információkkal. + +## Mennyire gyenge a gyenge? {#how-weak-is-weak} + +Az Ethereum proof-of-stake szubjektív aspektusa az, hogy a szinkronizáláshoz egy megbízható forrásból származó friss státuszra van szükség (ez a gyenge szubjektivitás ellenőrzési pontja). Annak kockázata, hogy a gyenge szubjektivitás ellenőrzési pontja rossz, nagyon alacsony, mivel több független nyilvános forrással is ellenőrizhetők, mint amilyenek a blokkfelfedezők vagy más csomópontok. Egy szoftver futtatásához azonban szükség van bizonyos fokú bizalomra, például bíznunk kell abban, hogy a fejlesztők tisztességes szoftvert készítettek. + +A gyenge szubjektivitás ellenőrzési pontja az kliensszoftver részeként is megjelenhet. Vitatható, hogy egy támadó megrongálhatja a szoftverben lévő ellenőrzőpontot, és ugyanilyen könnyen magát a szoftvert is. Nincs kriptogazdasági megoldás ennek a problémának a megkerülésére, de a megbízhatatlan fejlesztők hatása az Ethereumban minimálisra csökkenthető azáltal, hogy több független klienscsapat van, amelyek különböző nyelveken készítenek egyenértékű szoftvert, és érdekeltek a tisztességes lánc fenntartásában. A blokkfelfedezők gyenge szubjektivitás ellenőrzési pontokat is biztosíthatnak, vagy a kapott ellenőrzési pontokat további forrással is össze lehet vetni. + +Végül, ellenőrzőpontokat lehet kérni más csomópontoktól; másik Ethereum-felhasználó, aki teljes csomópontot futtat, adhat egy ellenőrzőpontot, amelyet a validátorok ellenőrizhetnek a blokkfelfedezőből származó adatokkal. Összességében a gyenge szubjektivitás ellenőrzési pontjának szolgáltatójában való bizalom csak annyira problémás, mint megbízni a kliensfejlesztőkben. A szükséges bizalom alacsony szintű. Fontos megjegyezni, hogy ezek a megfontolások abban a valószínűtlen esetben válnak fontossá, ha a validálók többsége összeesküvést sző, hogy létrehozza a blokkláncnak egy alternatív elágazását. Bármilyen más körülmények között nem létezik több Ethereum-lánc, amelyek közül választani kellene. + +## További olvasnivaló {#further-reading} + +- [Gyenge szubjektivitás az Eth2-ben](https://notes.ethereum.org/@adiasg/weak-subjectvity-eth2) +- [Vitalik: Hogyan tanultam meg szeretni a gyenge szubjektivitást](https://blog.ethereum.org/2014/11/25/proof-stake-learned-love-weak-subjectivity/) +- [Gyenge szubjektivitás (Teku dokumentációk)](https://docs.teku.consensys.net/en/latest/Concepts/Weak-Subjectivity/) +- [Nulladik fázisú gyenge szubjektivitási útmutató](https://github.com/ethereum/consensus-specs/blob/dev/specs/phase0/weak-subjectivity.md) +- [A gyenge szubjektivitás elemzése az Ethereum 2.0-n](https://github.com/runtimeverification/beacon-chain-verification/blob/master/weak-subjectivity/weak-subjectivity-analysis.pdf) diff --git a/public/content/translations/hu/developers/docs/consensus-mechanisms/pow/index.md b/public/content/translations/hu/developers/docs/consensus-mechanisms/pow/index.md index 8f23ddd8ef4..41a95845e77 100644 --- a/public/content/translations/hu/developers/docs/consensus-mechanisms/pow/index.md +++ b/public/content/translations/hu/developers/docs/consensus-mechanisms/pow/index.md @@ -1,96 +1,107 @@ --- title: Proof-of-work (PoW) -description: Egy magyarázat a proof-of-work konszenzus protokollról és az Ethereumban betöltött szerepéről. +description: A proof-of-work (munkaigazolás) konszenzusprotokoll bemutatása és az Ethereumban betöltött szerepe. lang: hu -incomplete: true --- -Az Ethereum a Bitcoinhoz hasonlóan egy konszenzus protokollt használ, melyet úgy hívnak, hogy [proof-of-work (PoW)](https://wikipedia.org/wiki/Proof_of_work). Ez lehetővé teszi, hogy az Ethereum hálózat csomópontjainak, hogy az összes Ethereum blokkláncra feljegyzett információ állapotáról egyet tudjanak érteni és bizonyos gazdasági támadásokat meg tudjanak akadályozni. +Az Ethereum-hálózat kezdetben egy olyan konszenzusmechanizmust használt, amely a **[proof-of-work (PoW)](/developers/docs/consensus-mechanisms/pow)** koncepciót használta. Ez lehetővé tette az Ethereum-hálózat csomópontjai számára, hogy az összes Ethereum-blokkláncra feljegyzett információ állapotáról megegyezzenek és kivédjenek bizonyos gazdasági támadásokat. Ugyanakkor az Ethereum 2022-ben leváltotta a proof-of-work mechanizmust, és helyette a [proof-of-stake (letéti igazolás)](/developers/docs/consensus-mechanisms/pos) koncepcióját vezette be. + + + A proof-of-work ezzel kivezetésre került. A konszenzusmechanizmusnak többé nem része a proof-of-work az Ethereumon. Ehelyett a proof-of-stake mechanizmus működik. Tudjon meg többet a proof-of-stake-ről és a letétbe helyezésről. + ## Előfeltételek {#prerequisites} -Hogy jobban megértsd ezt az oldalt, javasoljuk, hogy előbb olvasd el a [tranzakciókról](/developers/docs/transactions/) és a [blokkokról](/developers/docs/blocks/) szóló oldalakat. +A jelen téma könnyebb megértéséhez érdemes áttekinteni a [tranzakciók](/developers/docs/transactions/), [blokkok](/developers/docs/blocks/) és a [konszenzusmechanizmus](/developers/docs/consensus-mechanisms/) oldalakat. ## Mi az a proof-of-work (PoW)? {#what-is-pow} -A proof-of-work (PoW) egy olyam mechanizmus, mely lehetővé teszi a decentralizált Ethereum hálózat számára, hogy konszenzusra jusson, vagy egyet értsen olyanok felett, mint a számla egyenlegek vagy a tranzakciók rendje. Ez megakadályozza, hogy a felhasználók "duplán elköltsék" az érméiket és biztosítja azt, hogy az Ethereum láncot hihetetlenül nehéz megtámadni vagy átírni. +A Nakamoto konszenzus, amely a proof-of-work (PoW) mechanizmust használja, egykor lehetővé tette a decentralizált Ethereum-hálózat számára, hogy konszenzusra jusson (tehát minden csomópont egyetértsen) olyanok felett, mint a számlaegyenlegek vagy a tranzakciók sorrendje. Ez megakadályozta, hogy a felhasználók „duplán elköltsék” a coinokat és biztosította azt, hogy az Ethereum-láncot hihetetlenül nehéz volt megtámadni vagy átírni. Ezek a biztonsági jellemzők most a proof-of-stake mechanizmusból erednek, amely a [Gasper](/developers/docs/consensus-mechanisms/pos/gasper/) nevű konszenzust használja. ## Proof-of-work és bányászat {#pow-and-mining} -Proof-of-work a mögöttes algoritmus, mely beállítja a nehézséget és szabályokat a munkához, melyet a bányászok végeznek. A bányászat maga a "munka". Érvényes blokkok hozzáadását jelenti a lánchoz. Ez fontos, mivel a lánc hossza segít a hálózatnak, hogy meglássa a valós láncot és megértse az Ethereum jelenlegi állapotát. Minél több "munka" van elvégezve, annál hosszabb a lánc és minél magasabb a blokkszám, annál inkább biztosabb lehet a hálózat a dolgok jelenlegi állapotában. +A proof-of-work a mögöttes algoritmus, amely a nehézséget és a szabályokat határozza meg a munkához, amelyet a bányászok végeznek proof-of-work blokkláncokon. A bányászat maga a „munka”. Érvényes blokkok hozzáadását jelenti a lánchoz. Ez azért fontos, mert a lánc hossza segíti a hálózatot abban, hogy kövesse a blokklánc megfelelő elágazását. Minél több „munka” van elvégezve, annál hosszabb a lánc, és minél magasabb a blokkszám, annál inkább biztosabb lehet a hálózat a dolgok jelenlegi állapotában. [Többet a bányászatról](/developers/docs/consensus-mechanisms/pow/mining/) -## Hogyan működik az Ethereum proof-of-work? {#how-it-works} +## Hogyan működött az Ethereum proof-of-work mechanizmusa? {#how-it-works} -Az Ethereum tranzakciókat blokkokba dolgozzák fel. Minden egyes blokknak van: +Az Ethereum-tranzakciókat blokkokba dolgozzák fel. A már kivezetett proof-of-work-alapú Ethereumon minden blokkban volt: - blokk nehézsége – például: 3,324,092,183,262,715 - mixHash-e – például: `0x44bca881b07a6a09f83b130798072441705d9a665c5ac8bdf2f39a3cdf3bee29` - nonce-a – például: `0xd3ee432b4fb3d26b` -Ez a blokk adat közvetlen kapcsolatban áll a PoW-kel. +Ezek a blokkadatok közvetlen kapcsolatban álltak a proof-of-work mechanizmussal. ### A munka a proof-of-work-ben {#the-work} -A proof-of-work protokoll, melyet Ethhash-nek hívnak, arra ösztönzi a bányászokat, hogy egy intenzív verseny keretében próba szerencse alapon megtalálják a nonce-ot egy blokkra. Csak érvényes nonce-szal rendelkező blokkok adhatók hozzá a lánchoz. +A proof-of-work protokoll, melyet Ethashnek hívnak, arra ösztönözte a bányászokat, hogy egy intenzív verseny keretében próba szerencse alapon megtalálják a nonce-t egy blokkhoz. Csak érvényes nonce-szal rendelkező blokkokat lehetett hozzáadni a lánchoz. -Amikor a blokk létrehozásáért versenyeznek, egy adott bányász több alkalommal is betesz egy adathalmazt egy matematikai függvénybe, melyet csak a teljes lánc letöltésével és futtatásával (ahogy a bányászok csinálják) lehet megszerezni. Így generálódik a mixHash, mely a cél nonce alatt van, ahogy a blokk nehézség előírja. Ezt a legjobb próba és hiba módszerrel kiszámítani. +Amikor a blokk létrehozásáért versenyeztek, egy adott bányász ismételten betett egy adathalmazt, melyet csak a teljes lánc letöltésével és futtatásával (ahogy a bányászok csinálják) lehetett megszerezni, egy matematikai függvényen keresztül. Az adathalmazt arra használták, hogy készítsenek egy mixHasht, ami a blokk nehézsége által megadott tartományon belül marad. Ezt a legjobban a próba és hiba módszerrel kiszámítani. -A nehézség meghatározza a hash célját. Minél alacsonyabb a cél, annál kisebb az érvényes hash-ek halmaza. Amint legenerálja valaki, onnantól már rendkívül egyszerű a többi bányász és kliens számára hitelesíteni. Ha akár egy tranzakció is megváltozna, akkor a hash teljesen más lenne, mely csalást jelentene. +A nehézség határozta meg a hash célját. Minél alacsonyabb a cél, annál kisebb az érvényes hashek halmaza. Amint legenerálta valaki, onnantól már rendkívül egyszerű a többi bányász és kliens számára hitelesíteni. Ha akár egy tranzakciót is megváltoztattak volna, akkor a hash teljesen más lett volna, ami egyértelműen jelzi a csalást. -A hashing egyszerűvé teszi, hogy észrevegyük a csalásokat. De a PoW, mint folyamat elrettentő erővel bír a lánc megtámadásával szemben. +A hashing egyszerűvé teszi, hogy észrevegyük a csalásokat. Emellett a proof-of-work folyamata elrettentő erővel bírt a lánc megtámadásával szemben. ### Proof-of-work és biztonság {#security} -A bányászok ösztönözve vannak, hogy elvégezzék ezt a munkát az Ethereum láncon. A bányászok egy részhalmaza számára kicsi az ösztönző, hogy elindítsák a saját láncukat - ez aláássa a rendszert. A blokkláncok egy állapotra hagyatkoznak, mint az igazság forrása. A felhasználók pedig mindig a hosszabb vagy "nehezebb" láncokat fogják választani. +A bányászokat ösztönözték, hogy elvégezzék ezt a munkát az Ethereum láncon. A bányászok számára nem volt mérvadó az a motiváció, hogy saját láncot indítsanak, és ezzel aláássák a rendszert. A blokkláncok egy állapotra hagyatkoznak az igazság forrásaként. -A PoW célkitűzése a lánc kiterjesztése. A leghosszabb lánc a leghihetőbb érvényes lánc, mivel itt végezték el a legtöbb számítási munkát. Az Ethereum PoW rendszerén belül szinte lehetetlen olyan új blokkokat létrehozni, melyek korábbi tranzakciókat törölnének ki vagy hamis tranzakciókat tartalmaznának, vagy egy másik láncok építenének. Ennek az az oka, hogy egy rosszindulatú bányásznak mindig gyorsabban kéne megoldania a blokk nonce-ot, mint bárki másnak. +A proof-of-work célkitűzése a lánc kiterjesztése volt. A leghosszabb lánc a leghihetőbb érvényes lánc volt, mivel itt végezték el a legtöbb számítási munkát ahhoz, hogy létrehozzák. Az Ethereum proof-of-work rendszerén belül szinte lehetetlen volt olyan új blokkokat létrehozni, melyek korábbi tranzakciókat törölnének ki vagy hamis tranzakciókat tartalmaznának, vagy egy másik láncok építenének. Ennek az az oka, hogy egy rosszindulatú bányásznak mindig gyorsabban kéne megoldania a blokk nonce-ot, mint bárki másnak. -Ahhoz, hogy konzisztensen rosszindulatú, de mégis érvényes blokkokat hozhass létre, a hálózat bányászati erejének több mint az 51%-val rendelkezned kell. Rengeteg számítógépre lenne szükséged, hogy elvégezhesd ezt a mennyiségű "munkát". És az is lehet, hogy a ráfordított energia meghaladja a támadás során szerzett hozamot. +Ahhoz, hogy valaki konzisztensen rosszindulatú, de mégis érvényes blokkokat hozhasson létre, a hálózat bányászati erejének több mint az 51%-ával rendelkeznie kellett volna. Ez a mennyiségű „munka” rengeteg, drága számítási kapacitást igényel, és az erre költött ráfordítás talán meg is haladja a támadással járó előnyöket. -### Proof-of-work közgazdaságtan {#economics} +### A proof-of-work gazdaságtana {#economics} -A PoW másik feladata, hogy új érméket bocsájtson ki a rendszerbe és ezzel ösztönözze a bányászokat a munka elvégzésére. +A proof-of-work másik feladata az volt, hogy új coinokat bocsásson ki a rendszerbe és ezzel ösztönözze a bányászokat a munka elvégzésére. -Azok a bányászok, akik sikeresen létrehoznak egy blokkok 2 újonnan létrehozott ETH kapnak jutalmul, valamint a blokkban lévő összes tranzakciónak a díját. A bányász ugyanakkor 1,75 ETH jutalmat kaphat az uncle blokkokért. Ez egy érvényes blokk, melyet egy időben készítettek egy másik bányász által létrehozott sikeres blokkal. Ez általában hálózati késeltetéskor fordul elő. +A [Constantinople-frissítés](/history/#constantinople) után a bányászok, akik sikeresen létrehoztak egy blokkot, két frissen kibocsátott ETH-t kaptak, valamint a tranzakciós díjak egy része is az övék lett. Az ommer blokkokért is járt 1,75 ETH. Az ommerek olyan érvényes blokkok, melyeket ugyanabban az időben készítenek, mint a kanonikus blokkot, ami végül a lánc folytatása lesz. Ezek általában hálózati késedelemkor fordultak elő. ## Véglegesség {#finality} -Az elosztott hálózatoknál egy tranzakciónak "véglegessége" van, amikor egy olyan blokkban van, ami nem tud megváltozni. +A tranzakció végleges az Ethereumon, amikor egy olyan blokk része, amit már nem lehet megváltoztatni. -Mivel a bányászok decentralizáltan dolgoznak, lehetséges, hogy egyszerre két érvényes blokk jön létre. Ez egy átmeneti elágazást (forkot) eredményez. Végül az egyik lánc lesz az elfogadott lánc, amint egy későbbi blokkot kibányásznak és hozzáfűznek, ami miatt hosszabbá válik. +Mivel a bányászok decentralizáltan dolgoztak, lehetséges volt, hogy egyszerre két érvényes blokk jöjjön létre. Ez egy átmeneti elágazást (fork) eredményez. Végül az egyik lánc lett az elfogadott, amint egy későbbi blokkot kibányásztak és hozzáfűztek, ami miatt hosszabbá vált. -De hogy tovább bonyolítsuk a dolgokat, a tranzakciók, melyek el lettek utasítva az átmeneti elágazásban, belekerülhettek az elfogadott láncba. Ez azt jelenti, hogy vissza lehet őket állítani. A véglegesség tehát arra az időre utal, amennyit várnod kellene, hogy a tranzakciót visszafordíthatatlannak tekintsük. Az Ethereum esetében az ajánlott idő 6 blokk vagy éppen több mint 1 perc. Ezután relatív konfidenciával azt mondhatod, hogy a tranzakció sikeres volt. Természetesen több ideig is várhatsz a nagyobb bizonyosság érdekében. +Tovább bonyolította, hogy a tranzakciók, melyek el lettek utasítva az átmeneti elágazásban, nem feltétlenül kerültek be az elfogadott láncba. Ez azt jelentette, hogy vissza lehetett azokat fordítani. A véglegesség tehát arra az időre utal, amennyit a felhasználónak várnia kell, hogy a tranzakciót visszafordíthatatlannak tekintsük. A korábbi proof-of-work-alapú Ethereumon minél több blokkot bányásztak egy adott `N` blokk tetejére, annál inkább meg lehetett bízni abban, hogy az `N` blokk tranzakciói sikeresek és nem lehet azokat visszafordítani. A jelenlegi proof-of-stake rendszerben a véglegesség a blokk kifejezett jellemzője, nem annyira valószínűségi. -Ezt figyelembe kell venni a dappok tervezésénél, mivel silány felhasználói élményt eredményezhet, ha félretájékoztatjuk a felhasználókat a tranzakciós információkról. Különösen ha a tranzakciónak nagy az értéke. +## A proof-of-work energiafelhasználása {#energy} -Ne feledd, hogy ebbe az időbe nem számítjuk bele a várakozási időt, mialatt egy bányász felveszi a tranzakciót. +A proof-of-work egyik legnagyobb hibája az energiamennyiség volt, melyet a hálózat biztonságosságáért el kellett fogyasztani. Az Ethereum proof-of-work rendszere sok energiát igényelt ahhoz, hogy biztonságos és decentralizált legyen. Röviddel a proof-of-stake-re való áttérés előtt az Ethereum-bányászok együttesen kb. 70 TWh/év energiát fogyasztottak (akár a Cseh Köztársaság a [digiconomist](https://digiconomist.net/) szerint, melyet 2022. július 18-án publikáltak). ## Előnyök és hátrányok {#pros-and-cons} -| Előnyök | Hátrányok | -| --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| A PoW neutrális. Nincs szükséged ETH-re, hogy elkezd, és a blokk jutalmaknak köszönhetően 0 ETH-ről pozitívba mehet át az egyenleged. A [proof-of-stake](/developers/docs/consensus-mechanisms/pos/) esetében ETH-re van szükséged, hogy belekezdj. | A PoW olyan sok energiát használ fel, ami káros a környezetnek. | -| A PoW egy kipróbált és letesztelt konszenzus mechanizmus, mely éveken keresztül biztonságban tartotta a Bitcoint és az Ethereumot. | Ha bányászni szeretnél, akkor speciális felszerelésre lesz szükséged, mely kezdetnek nagy befektetés. | -| A proof-of-stake-kel szemben viszonylag egyszerűbb implementálni. | A folyamatosan növekvő számítási igény miatt, a bányász poolok potenciálisan dominálhatják a bányász világot, mely centralizációhoz és biztonsági kockázatokhoz vezet. | +| Előnyök | Hátrányok | +| -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | +| A proof-of-work egy semleges rendszer. Nincs szükség ETH-re, hogy valaki elkezdje, és a blokk jutalmaknak köszönhetően 0 ETH-ről pozitívba mehet át az egyenlege. A [proof-of-stake](/developers/docs/consensus-mechanisms/pos/) esetében ETH-re van szükség, hogy valaki belekezdjen. | A proof-of-work sok energiát használ fel, ami káros a környezetnek. | +| A proof-of-work egy kipróbált és letesztelt konszenzusos mechanizmus, amely éveken keresztül biztonságban és decentralizáltan tartotta a Bitcoint és az Ethereumot. | Ha valaki bányászni szeretne, akkor speciális felszerelésre van szüksége, mely kezdetnek nagy befektetés. | +| A proof-of-stake-kel szemben viszonylag egyszerűbb implementálni. | A folyamatosan növekvő számítási igény miatt, a bányászati alapok potenciálisan dominálhatják a bányászvilágot, mely centralizációhoz és biztonsági kockázatokhoz vezet. | -## A proof-of-stake-kel összehasonlítva {#compared-to-pos} +## Összehasonlítás a proof-of-stake megoldással {#compared-to-pos} -Fölülről nézve a proof-of-stakenek ugyanaz a végcélja, mint a proof-of-worknek: hogy biztonságosan segítse elérni a konszenzust a decentralizált hálózaton. De van egy pár különbség a folyamatban és a személyekben: +Nagy vonalakban a proof-of-stake-nek ugyanaz a végcélja, mint a proof-of-work-nek: biztonságosan segítse elérni a konszenzust a decentralizált hálózaton. De van egy pár különbség a folyamatban és a személyekben: -- A PoS leváltja a számítási erő fontosságát a letétbe helyezett ETH-re -- A PoS lecseréli a bányászokat validátorokra. A validátorok letétbe helyezik az ETH-jüket, hogy aktiválják a képességüket új blokkok létrehozására. +- A proof-of-stake leváltja a számítási kapacitás fontosságát a letétbe helyezett ETH-re. +- A proof-of-stake lecseréli a bányászokat validátorokra. A validátorok letétbe helyezik az ETH-jüket, hogy aktiválják a képességüket új blokkok létrehozására. - A validátorok nem versenyeznek a blokk létrehozásért, ehelyett egy algoritmus választja ki őket véletlenszerűen. -- A véglegesség tisztább: bizonyos ellenőrzési pontokon, ha a validátorok 2/3 része egyetért a blokk állapotán, akkor a blokkot véglegesnek tekintjük. A validátorok a tejles letétüket felteszik erre, így ha megpróbálnak összejátszani, akkor a teljes letétüket elveszítik. +- A véglegesség tisztább: ha bizonyos ellenőrzési pontokon a validátorok 2/3 része egyetért a blokk állapotát illetően, akkor a blokkot véglegesnek tekintjük. A validátorok a tejles letétüket felteszik erre, így ha megpróbálnak összejátszani, akkor a teljes letétüket elveszítik. + +[A proof-of-stake-ről bővebben](/developers/docs/consensus-mechanisms/pos/) + +## Ön inkább vizuális típus? {#visual-learner} -[Többet a proof-of-stake-ről](/developers/docs/consensus-mechanisms/pos/) + ## További olvasnivaló {#further-reading} - [Többségi támadás](https://en.bitcoin.it/wiki/Majority_attack) - [Az elszámolási véglegességről](https://blog.ethereum.org/2016/05/09/on-settlement-finality/) +### Videók {#videos} + +- [A proof-of-work protokollok technikai magyarázata](https://youtu.be/9V1bipPkCTU) + ## Kapcsolódó témák {#related-topics} - [Bányászat](/developers/docs/consensus-mechanisms/pow/mining/) diff --git a/public/content/translations/hu/developers/docs/consensus-mechanisms/pow/mining/index.md b/public/content/translations/hu/developers/docs/consensus-mechanisms/pow/mining/index.md index 75613329b12..a99e02880f4 100644 --- a/public/content/translations/hu/developers/docs/consensus-mechanisms/pow/mining/index.md +++ b/public/content/translations/hu/developers/docs/consensus-mechanisms/pow/mining/index.md @@ -1,53 +1,78 @@ --- title: Bányászat -description: Egy magyarázat arról, hogyan működik a bányászat az Ethereumon és hogyan segíti az Ethereum biztonságát és decentralizáltságát. +description: Áttekintés – hogyan működött a bányászat az Ethereumon. lang: hu -incomplete: true --- + +A proof-of-work (munkaigazolás) már nem az Ethereum konszenzusmechanizmus alapja, tehát a bányászatot kikapcsolták. Ehelyett az Ethereumot úgy biztosítják a validátorok, hogy letétbe helyeznek ETH-t. Ön is letétbe helyezheti a rendelkezésére álló ETH-t. Tudjon meg többet a egyesítés (Merge), proof-of-stake (letéti igazolás) és letétbe helyezés témákról. Ez az oldal csak elavult témákat tartalmaz. + + ## Előfeltételek {#prerequisites} -Hogy jobban megértsd ezt az oldalt, javasoljuk, hogy előbb olvasd el a [tranzakciók](/developers/docs/transactions/), [blokkok](/developers/docs/blocks/) és a [proof-of-work](/developers/docs/consensus-mechanisms/pow/) oldalakat. +Javasoljuk, hogy olvassa el a [tranzakciók](/developers/docs/transactions/), [blokkok](/developers/docs/blocks/) és a [proof-of-work](/developers/docs/consensus-mechanisms/pow/) oldalakat is. ## Mi az az Ethereum bányászat? {#what-is-ethereum-mining} -A bányászat az a folyamat, melynek során új, tranzakciókból álló blokkok jönnek létre és adódnak hozzá az Ethereum blokklánchoz. +A bányászat az a tevékenység, amikor tranzakciókból álló blokkokat hoznak létre, hogy azokat hozzáadják az Ethereum-blokklánchoz abban a proof-of-work architektúrában, melyet már kivezettek az Ethereumból. + +A bányászat kifejezés a kriptovaluták aranyhoz hasonló kinyerésére vonatkozott. Az arany vagy más nemesfémek ritkák, ahogy a digitális tokenek is, ezért a mennyiséget egy proof-of-work-alapú rendszerben a bányászattal lehetett növelni. A proof-of-work-alapú Ethereumban a kibocsátás egyetlen módja a bányászat volt. Az arany és más bányászatához képest ugyanakkor az Ethereumban ez volt a hálózat biztosításának módja a blokkláncba létrehozott, ellenőrzött, publikált és elterjesztett blokkok révén. + +Ether bányászata = A hálózat biztosítása -Az Ethereum, a Bitcoinhoz hasonlóan, a [proof-of-work (PoW)](/developers/docs/consensus-mechanisms/pow/) konszenzus algoritmust használja. A bányászat a proof-of-work lényege. Az Ethereum bányászok - szoftvert futtató számítógépek - az idejüket és számítási kapacitásukat fordítják tranzakciók feldolgozására és blokkok létrehozására. +A bányászat a proof-of-work blokkláncok lényege. Az Ethereum-bányászok – szoftvert futtató számítógépek – az idejüket és számítási kapacitásukat fordították a tranzakciók feldolgozására és blokkok létrehozására a proof-of-stake mechanizmus bevezetése előtt. ## Miért léteznek a bányászok? {#why-do-miners-exist} -Az Ethereumhoz hasonló decentralizált rendszerek esetében biztosítanunk kell, hogy mindenki megegyezik a tranzakciók rendjében. A bányászok segítenek, hogy ez megtörténjen úgy, hogy számítás szempontjából nehéz rejtvényeket oldanak meg azért, hogy blokkokat hozhassanak létre, mely így a megvédi a hálózatot a támadásoktól. +Az Ethereumhoz hasonló decentralizált rendszerek esetében biztosítanunk kell, hogy mindenki egyetért a tranzakciók sorrendjében. A bányászok segítettek, hogy ez megtörténjen úgy, hogy számítás szempontjából nehéz rejtvényeket oldottak meg azért, hogy blokkokat hozhassanak létre, amely így megvédte a hálózatot a támadásoktól. + +[Bővebben a proof-of-work mechanizmusról](/developers/docs/consensus-mechanisms/pow/) + +Korábban bárki bányászhatott az Ethereum hálózaton a számítógépét használva. Ugyanakkor nem mindenkit tudott nyereségesen bányászni ethert (ETH). A legtöbb esetben a bányászoknak dedikált számítógépes hardvereket kellett szerezniük, és hozzá kellett férniük az energiaforrásokhoz. Egy átlagos számítógép nem valószínű, hogy elég blokkjutalmat tudott szerezni, hogy fedezze a bányászat költségeit. + +### A bányászat költsége {#cost-of-mining} -[Többet a proof-of-work-ről](/developers/docs/consensus-mechanisms/pow/) +- Annak a hardvernek a valószínű költsége, mely a bányászati eszköz felépítéséhez és fenntartásához szükséges +- A bányászati eszközt működtető elektromosság költsége +- Ha egy bányászati alapban vett részt valaki, akkor az alap általában egy %-os általánydíjat számolt fel minden létrehozott blokk után +- A bányászati eszköz támogatásához szükséges dolgok költségei (szellőztető, energiamonitorozás, elektromos vezetékek stb.) -## Hogyan bányásszák ki az Ethereum tranzakciókat {#how-ethereum-transactions-are-mined} +A bányászat nyereségességét olyan bányászati kalkulátor segítségével ellenőrizheti, mint amilyen az [Etherscan](https://etherscan.io/ether-mining-calculator) oldalon is található. -1. A felhasználó létrehoz és aláír egy [tranzakció](/developers/docs/transactions/) kérvényt valamely [számla](/developers/docs/accounts/) privát kulcsával. +## Hogyan bányászták ki az Ethereum-tranzakciókat {#how-ethereum-transactions-were-mined} + +A következőkben a tranzakciók bányászatáról olvashat egy áttekintés az Ethereum proof-of-work mechanizmusa idejéből. Az Ethereum proof-of-stake mechanizmusára vonatkozó leírást [itt](/developers/docs/consensus-mechanisms/pos/#transaction-execution-ethereum-pos) találja. + +1. A felhasználó létrehoz és aláír egy [tranzakciós](/developers/docs/transactions/) kérvényt valamely [számla](/developers/docs/accounts/) privát kulcsával. 2. A felhasználó közvetíti a tranzakciós kérelmet a teljes hálózat számára valamilyen [csomópontról](/developers/docs/nodes-and-clients/). 3. Amint tudomást szereznek a tranzakció kérvényről, az Ethereum hálózat valamennyi csomópontja hozzáadja a kérvényt a lokális mempooljához, ami azokat a tranzakciós kérvényeket tartalmazza, amikről már tudomást szereztek, de még nem adták hozzá a blokklánchoz egy blokkban. -4. Egy bizonyos ponton egy bányász csomópont több tucat vagy több száz tranzakció kérvényt összesít egy potenciális [blokkba](/developers/docs/blocks/) úgy, hogy a begyűjtött [tranzakciós díj](/developers/docs/gas/) maximális legyen, de ne lépje túl a blokk gáz limitet. Ezután a bányász csomópont: - 1. Ellenőrzi az egyes tranzakciós kérelmek érvényességét (azaz senki nem próbál ethert átutalni olyan számláról, amelyhez nem készített aláírást, a kérés nem hibás, stb.), majd végrehajtja a kérés kódját, megváltoztatva az EVM helyi másolatának állapotát. A bányász jutalmul megkapja a tranzakciós díjat minden ilyen tranzakciós kérvényért a saját számlájára. +4. Egy bizonyos ponton egy bányászcsomópont több tucat vagy több száz tranzakciós kérvényt összesít egy potenciális [blokkba](/developers/docs/blocks/) úgy, hogy a begyűjtött [tranzakciós díj](/developers/docs/gas/) maximális legyen, de ne lépje túl a blokk gázkorlátozását. Ezután a bányász csomópont: + 1. Ellenőrzi az egyes tranzakciós kérelmek érvényességét (azaz senki nem próbál ethert átutalni olyan számláról, amelyhez nem készített aláírást, a kérés nem hibás, stb.), majd végrehajtja a kérés kódját, megváltoztatva az EVM helyi másolatának állapotát. A bányász a tranzakciós díjat minden ilyen tranzakciós kérvényért a saját számlájára teszi. 2. Elindítja a proof-of-work “megbízhatósági bizonyítvány” előállításának folyamatát a potenciális blokkra, amint az összes tranzakciós kérelmet érvényesítette és végrehajtotta a helyi EVM másolaton. -5. Végül egy bányász befejezi a bizonyítvány elkészítését egy blokkra, mely tartalmazza a mi specifikus tranzakciós kérelmünket. A bányász ezután közvetíti a kész blokkot, mely tartalmazza a bizonyítványt és egy checksumot az új, kiállított EVM állapotról. -6. A többi csomópont is tudomást szerez a blokkról. Érvényesítik a bizonyítványt, saját maguk is végrehajtják a blokk összes tranzakcióját (beleértve azt is amit eredetileg a felhasználónk közvetített), és megbizonyosodnak arról, hogy az új tranzakciók végrehajtása utáni EVM állapotuk checksumja megegyezik a bányász által kiállított blokk állapotának checksumjával. Csak ezután fűzik hozzá ezek a csomópontok ezt a blokkok a blokkláncuk végére és fogadják el az új EVM állapotot, mint kanonikus új állapot. +5. Végül egy bányász befejezi a bizonyítvány elkészítését egy blokkra, mely tartalmazza a mi specifikus tranzakciós kérelmünket. A bányász ezután közvetíti a kész blokkot, mely tartalmazza a bizonyítványt és az ellenőrző összeget az új, kiállított EVM állapotról. +6. A többi csomópont is tudomást szerez a blokkról. Érvényesítik a bizonyítványt, saját maguk is végrehajtják a blokk összes tranzakcióját (beleértve azt is, amit eredetileg a felhasználónk közvetített), és megbizonyosodnak arról, hogy az új tranzakciók végrehajtása utáni EVM állapotuk ellenőrző összege megegyezik a bányász által kiállított blokk állapotának összegével. Csak ezután fűzik hozzá ezek a csomópontok ezt a blokkot a blokkláncuk végére, és fogadják el az új EVM állapotot, mint kanonikus új állapot. 7. Minden csomópont eltávolítja az új blokkban lévő összes tranzakciót a teljesítetlen tranzakciós kérvényeket tartalmazó helyi mempooljából. -8. A hálózatba újonnan becsatlakozó csomópontok letöltik az összes blokkot a sorrendet betartva beleértve azt a blokkot is, mely a szóban forgó tranzakciónkat tartalmazza. Inicializálnak egy helyi EVM másolatot (mely egy üres állapotú EVM-ként indul), ezután végig mennek az összes blokkban található összes tranzakció végrehajtásának folyamatán a helyi EVM másolatukon miközben érvényesítik a blokkok állapot checksumjait. +8. A hálózatba újonnan becsatlakozó csomópontok letöltik az összes blokkot a sorrendet betartva, beleértve azt a blokkot is, mely a szóban forgó tranzakciónkat tartalmazza. Inicializálnak egy helyi EVM másolatot (mely egy üres állapotú EVM-ként indul), ezután végig mennek az összes blokkban található összes tranzakció végrehajtásának folyamatán a helyi EVM másolatukon, miközben érvényesítik a blokkok állapotainak ellenőrző összegeit. + +Minden tranzakciót egyszer bányásznak ki (blokkba foglalják és első alkalommal közvetítik), de minden résztvevő végrehajtja és érvényesíti azokat a kanonikus EVM-állapot előrevitelének folyamatában. Ez kiemeli a blokklánc egyik központi mantráját: **Nem kell megbíznia senkiben. Csak ellenőrizni.**. + +## Ommer (nagybácsi) blokkok {#ommer-blocks} + +A proof-of-work mechanizmusban végzett blokkbányászat valószínűségen alapult, tehát néha a hálózati késedelem miatt két érvényes blokkot is publikáltak egyszerre. Ebben az esetben a protokoll kiválasztotta a leghosszabb láncot (amelyik érvényesebb volt), miközben díjazta azt a bányászt is egy részleges jutalommal, akinek nem került be a javasolt blokkja. Ez bátorította a hálózat decentralizációját, mert a kisebb bányászok, akiknél nagyobb volt a csúszás, még mindig tudtak nyereséget szerezni az [ommer](/glossary/#ommer) blokkok jutalmából. -Minden tranzakciót egyszer bányásznak ki (blokkba foglalják és első alkalommal közvetítik), de minden résztvevő végrehajtja és érvényesíti őket a kanonikus EVM állapot előre vitelének folyamatában. Ez kiemeli a blokklánc egyik központi mantráját: **Ne bízz meg benne, hanem ellenőrizd.**. +Az „ommer” kifejezés a szülőblokk testvérblokkjának semleges formája, de néha nagybácsi/uncle formában is hivatkoznak rá. **Mióta az Ethereum átállt a proof-of-stake mechanizmusra, többé nincsenek ommer blokkok**, mivel csak egy előterjesztő van minden slotban. Ezt a változást megtekintheti a kibányászott ommer blokkok [előzményábráján](https://ycharts.com/indicators/ethereum_uncle_rate) is. ## Egy vizuális bemutató {#a-visual-demo} -Nézd meg ahogy Austin végig kísér a bányászaton és a proof-of-work blokkláncon. +Tekintse meg, ahogy Austin elmagyarázza a bányászatot és a proof-of-work blokkláncot. -## További olvasnivaló {#further-reading} +## A bányászati algoritmus {#mining-algorithm} -## Kapcsolódó eszközök {#related-tools} +Az Ethereum főhálózat csak egy bányászati algoritmust használt: [Ethash](/developers/docs/consensus-mechanisms/pow/mining-algorithms/ethash/). Az Ethash volt az utódja az eredeti kutatási-fejlesztési algoritmusnak, melyet [Dagger-Hashimoto-nak](/developers/docs/consensus-mechanisms/pow/mining-algorithms/dagger-hashimoto/) neveztek. -- [Legnagyobb Ethereum bányászok](https://etherscan.io/stat/miner?range=7&blocktype=blocks) -- [Ethereum bányászat kalkulátor](https://minerstat.com/coin/ETH) +[Bővebben a bányászati algoritmusokról](/developers/docs/consensus-mechanisms/pow/mining-algorithms/). ## Kapcsolódó témák {#related-topics} diff --git a/public/content/translations/hu/developers/docs/consensus-mechanisms/pow/mining/mining-algorithms/dagger-hashimoto/index.md b/public/content/translations/hu/developers/docs/consensus-mechanisms/pow/mining/mining-algorithms/dagger-hashimoto/index.md new file mode 100644 index 00000000000..90bd1a8137d --- /dev/null +++ b/public/content/translations/hu/developers/docs/consensus-mechanisms/pow/mining/mining-algorithms/dagger-hashimoto/index.md @@ -0,0 +1,334 @@ +--- +title: Dagger-Hashimoto +description: A Dagger-Hashimoto algoritmus részletes áttekintése. +lang: hu +--- + +A Dagger-Hashimoto volt az Ethereum bányászati algoritmusának eredeti fejlesztési implementációja és specifikációja. A Dagger-Hashimoto algoritmust az [Ethash](#ethash) váltotta le. A bányászatot teljesen kikapcsolták az [egyesítés (Merge)](/updates/merge) frissítés életbe lépésekor, 2022. szeptember 15-én. Azóta az Ethereumot a [proof-of-stake (letéti igazolás)](/developers/docs/consensus-mechanisms/pos) mechanizmusa biztosítja. Ez az oldal elavult témákat tartalmaz, amelyek többé már nem relevánsak az egyesítés (Merge) utáni Ethereummal kapcsolatban. + +## Előfeltételek {#prerequisites} + +A jelen téma könnyebb megértéséhez javasoljuk, hogy tekintse meg a [proof-of-work konszenzus](/developers/docs/consensus-mechanisms/pow), a [bányászat](/developers/docs/consensus-mechanisms/pow/mining), és a [bányászati algoritmusok](/developers/docs/consensus-mechanisms/pow/mining/mining-algorithms) témáit. + +## Dagger-Hashimoto {#dagger-hashimoto} + +A Dagger-Hashimoto két célt szolgál: + +1. **ASIC-ellenálló**: az algoritmus futtatásához a specializált hardver kialakításából adódó előny a lehető legkisebb legyen +2. **Könnyű kliens általi ellenőrizhetőség**: a blokkot egy könnyű kliens is le tudja ellenőrizni hatékonyan. + +Egy újabb módosítással meghatározhatjuk, hogyan tud egy harmadik célt is kielégíteni, de ez a komplexitás növekedésével jár: + +**A teljes lánc tárolása**: a bányászathoz a teljes blokklánc státuszát le kell tárolni (az Ethereum státuszfa szabálytalan struktúrája miatt talán lehetséges ennek megrövidítése, főleg a gyakori szerződéseknél, de ezt minimalizálni szeretnénk). + +## DAG létrehozása {#dag-generation} + +Az algoritmus kódját pythonban alább találja. Először az `encode_int` kódot adjuk meg, hogy a megadott pontosságú nem aláírt egész számokat sztringekké alakítsa. Ennek fordítottja is megadásra kerül: + +```python +NUM_BITS = 512 + +def encode_int(x): + "Encode an integer x as a string of 64 characters using a big-endian scheme" + o = '' + for _ in range(NUM_BITS / 8): + o = chr(x % 256) + o + x //= 256 + return o + +def decode_int(s): + "Unencode an integer x from a string using a big-endian scheme" + x = 0 + for c in s: + x *= 256 + x += ord(c) + return x +``` + +Ezután, feltételezve, hogy az `sha3` egy olyan függvény, ami egész számot kap és azt is ad ki eredményként, továbbá a `dbl_sha3` egy dupla sha3 függvény; ha ezt a referenciakódot implementációvá alakítjuk: + +```python +from pyethereum import utils +def sha3(x): + if isinstance(x, (int, long)): + x = encode_int(x) + return decode_int(utils.sha3(x)) + +def dbl_sha3(x): + if isinstance(x, (int, long)): + x = encode_int(x) + return decode_int(utils.sha3(utils.sha3(x))) +``` + +### Parameters {#parameters} + +Az algoritmushoz a következő paramétereket használjuk: + +```python +SAFE_PRIME_512 = 2**512 - 38117 # Largest Safe Prime less than 2**512 + +params = { + "n": 4000055296 * 8 // NUM_BITS, # Size of the dataset (4 Gigabytes); MUST BE MULTIPLE OF 65536 + "n_inc": 65536, # Increment in value of n per period; MUST BE MULTIPLE OF 65536 + # with epochtime=20000 gives 882 MB growth per year + "cache_size": 2500, # Size of the light client's cache (can be chosen by light + # client; not part of the algo spec) + "diff": 2**14, # Difficulty (adjusted during block evaluation) + "epochtime": 100000, # Length of an epoch in blocks (how often the dataset is updated) + "k": 1, # Number of parents of a node + "w": w, # Used for modular exponentiation hashing + "accesses": 200, # Number of dataset accesses during hashimoto + "P": SAFE_PRIME_512 # Safe Prime for hashing and random number generation +} +``` + +A `P` ebben az esetben egy olyan prímszám, hogy a `log₂(P)` éppen csak kisebb legyen, mint 512, ami az 512 bithez kapcsolódik, amit a számok reprezentálására használunk. Érdemes megjegyezni, hogy a DAG-nek csak a második felét kell eltárolni, így a RAM-igény 1 GB-tól indul és 441 MB-tal növekszik évente. + +### Dagger-gráfépítés {#dagger-graph-building} + +A dagger-gráfépítési függvényt a következőképpen definiáljuk: + +```python +def produce_dag(params, seed, length): + P = params["P"] + picker = init = pow(sha3(seed), params["w"], P) + o = [init] + for i in range(1, length): + x = picker = (picker * init) % P + for _ in range(params["k"]): + x ^= o[x % i] + o.append(pow(x, params["w"], P)) + return o +``` + +Lényegében a gráfot egy egyszerű csomópontként kezdi (`sha3(seed)`), és innen ad hozzá szekvenciálisan újabb csomópontokat a véletlenszerű előzők csomópontok alapján. Egy új csomópont létrehozásakor a mag moduláris hatványát kiszámítjuk, hogy véletlenszerűen kiválasszunk néhány `i`-nél kisebb indexet (a fenti `x % i` használatával), és az ezeknél az indexeknél lévő csomópontok értékeit egy számításban felhasználjuk az `x` új értékének létrehozásához, amelyet aztán egy kis (XOR-alapú) proof-of-work függvénybe táplálunk, hogy végül az `i` indexnél lévő gráf értékét generáljuk. E sajátos kialakítás értelme az, hogy a DAG-hoz szekvenciális hozzáférést biztosítson; a DAG következő értékét nem lehet meghatározni addig, amíg a jelenlegi nem ismert. Végül a moduláris exponenciálás hasheli tovább az eredményt. + +Ez az algoritmus a számelmélet számos eredményén alapszik. Az alábbi függelékben megtalálhatja az erről szóló beszélgetést. + +## Könnyű kliens általi értékelés {#light-client-evaluation} + +Ez a gráfkonstrukció arra való, hogy a gráf minden csomópontja újraépíthető legyen egy kis számú csomópontból álló alfa segítségével, és csak kevés kiegészítő memória kelljen hozzá. Vegye figyelembe, hogy ha k=1, akkor az alfastruktúra csak az értékek egy olyan lánca, ami a DAG első eleméig tart. + +A DAG-re a következőképpen működik a könnyű kliens számítási függvénye: + +```python +def quick_calc(params, seed, p): + w, P = params["w"], params["P"] + cache = {} + + def quick_calc_cached(p): + if p in cache: + pass + elif p == 0: + cache[p] = pow(sha3(seed), w, P) + else: + x = pow(sha3(seed), (p + 1) * w, P) + for _ in range(params["k"]): + x ^= quick_calc_cached(x % p) + cache[p] = pow(x, w, P) + return cache[p] + + return quick_calc_cached(p) +``` + +Lényegében ez a fenti algoritmus átirata, ami kiveszi a teljes DAG számítási ciklusát, és a korábbi csomópontkereső függvényt cseréli le egy rekurzív hívásra vagy egy cache-keresőre. Érdemes megjegyezni, hogy `k=1` esetén a cache szükségtelen, bár egy további optimalizálással a DAG első néhány ezer értékét előre kiszámítja, és statikus cache-ként tárolja a számításokhoz; ennek kódmegvalósítását tekintse meg a függelékben. + +## A DAG-ek dupla puffere {#double-buffer} + +Egy teljes kliensben 2 DAG [_dupla pufferét_](https://wikipedia.org/wiki/Multiple_buffering) használják, melyet a fenti képlet ad meg. Az elképzelés szerint a DAG-eket minden `epochtime` (korszakban) blokkszámonként készítik a fenti paramétereknek megfelelően. Ahelyett, hogy a kliens a legutóbbi DAG-et használná, az eggyel korábbit veszi figyelembe. Ennek előnye az, hogy a DAG-eket le lehet cserélni idővel anélkül, hogy a bányászoknak hirtelen az összes adatot újra kellene számolniuk. Máskülönben felmerül egy hirtelen, átmeneti lelassulás esélye a láncfeldolgozásnak, ami drasztikusan növeli a centralizációt. Így megnő az 51%-os támadás kockázata is az adat újraszámítása előtti percekben. + +A blokkhoz szükséges munka kiszámításához használt DAG-ek halmazának létrehozására használt algoritmus a következő: + +```python +def get_prevhash(n): + from pyethereum.blocks import GENESIS_PREVHASH + from pyethereum import chain_manager + if num <= 0: + return hash_to_int(GENESIS_PREVHASH) + else: + prevhash = chain_manager.index.get_block_by_number(n - 1) + return decode_int(prevhash) + +def get_seedset(params, block): + seedset = {} + seedset["back_number"] = block.number - (block.number % params["epochtime"]) + seedset["back_hash"] = get_prevhash(seedset["back_number"]) + seedset["front_number"] = max(seedset["back_number"] - params["epochtime"], 0) + seedset["front_hash"] = get_prevhash(seedset["front_number"]) + return seedset + +def get_dagsize(params, block): + return params["n"] + (block.number // params["epochtime"]) * params["n_inc"] + +def get_daggerset(params, block): + dagsz = get_dagsize(params, block) + seedset = get_seedset(params, block) + if seedset["front_hash"] <= 0: + # No back buffer is possible, just make front buffer + return {"front": {"dag": produce_dag(params, seedset["front_hash"], dagsz), + "block_number": 0}} + else: + return {"front": {"dag": produce_dag(params, seedset["front_hash"], dagsz), + "block_number": seedset["front_number"]}, + "back": {"dag": produce_dag(params, seedset["back_hash"], dagsz), + "block_number": seedset["back_number"]}} +``` + +## Hashimoto {#hashimoto} + +Az eredeti Hashimoto lényege, hogy a blokkláncot adathalmazként használja, és olyan számítást végez, amely kiválaszt N indexet a blokkláncból, összegyűjti a tranzakciókat ezeken az indexeken, elvégzi a XOR-t ezekre az adatokra, és visszaadja az eredmény hashét. Thaddeus Dryja eredeti algoritmusa, Pythonra átfordítva a konzisztencia érdekében, így néz ki: + +```python +def orig_hashimoto(prev_hash, merkle_root, list_of_transactions, nonce): + hash_output_A = sha256(prev_hash + merkle_root + nonce) + txid_mix = 0 + for i in range(64): + shifted_A = hash_output_A >> i + transaction = shifted_A % len(list_of_transactions) + txid_mix ^= list_of_transactions[transaction] << i + return txid_max ^ (nonce << 192) +``` + +Sajnálatos módon, miközben a Hashimoto nagy RAM-igényű, 256 bites aritmetikán alapszik, ami jelentős számítási többletköltséggel jár. Ugyanakkor a Dagger-Hashimoto csak a legkevésbé szignifikáns 64 bitet használja az adathalmaz indexálására, hogy ezt a problémát kezelje. + +```python +def hashimoto(dag, dagsize, params, header, nonce): + m = dagsize / 2 + mix = sha3(encode_int(nonce) + header) + for _ in range(params["accesses"]): + mix ^= dag[m + (mix % 2**64) % m] + return dbl_sha3(mix) +``` + +A dupla SHA3 használata lehetővé teszi a nulla adatot tartalmazó, szinte azonnali előzetes ellenőrzést, amely csak azt ellenőrzi, hogy a helyes közbenső értéket adták meg. A proof-of-worknek ez a külső rétege rendkívül ASIC-barát és meglehetősen gyenge, de azért létezik, hogy még nehezebbé tegye a DDoS-t, mivel ezt a kis mennyiségű munkát kell elvégezni ahhoz, hogy egy olyan blokkot hozzanak létre, amelyet nem utasítanak el azonnal. Ez a könnyű kliens verziója: + +```python +def quick_hashimoto(seed, dagsize, params, header, nonce): + m = dagsize // 2 + mix = sha3(nonce + header) + for _ in range(params["accesses"]): + mix ^= quick_calc(params, seed, m + (mix % 2**64) % m) + return dbl_sha3(mix) +``` + +## Bányászat és ellenőrzés {#mining-and-verifying} + +Most vezessük be mindezt a bányászati algoritmusba: + +```python +def mine(daggerset, params, block): + from random import randint + nonce = randint(0, 2**64) + while 1: + result = hashimoto(daggerset, get_dagsize(params, block), + params, decode_int(block.prevhash), nonce) + if result * params["diff"] < 2**256: + break + nonce += 1 + if nonce >= 2**64: + nonce = 0 + return nonce +``` + +Ez az ellenőrzési algoritmus: + +```python +def verify(daggerset, params, block, nonce): + result = hashimoto(daggerset, get_dagsize(params, block), + params, decode_int(block.prevhash), nonce) + return result * params["diff"] < 2**256 +``` + +Ez a könnyű kliens általi barátságos ellenőrzés: + +```python +def light_verify(params, header, nonce): + seedset = get_seedset(params, block) + result = quick_hashimoto(seedset["front_hash"], get_dagsize(params, block), + params, decode_int(block.prevhash), nonce) + return result * params["diff"] < 2**256 +``` + +Emellett érdemes megjegyezni, hogy a Dagger-Hashimoto a blokkfejlécre egyéb követelményeket is megfogalmazott: + +- A kétszintű ellenőrzéshez a blokkfejlécnek tartalmaznia kell a nonce-t és az sha3 előtti köztes értéket +- Valahol a blokkfejlécnek tárolnia kell a jelenlegi seed-halmaz sha3-ját + +## További olvasnivaló {#further-reading} + +_Ismersz olyan közösségi anyagot, mely segített neked? Módosítsd az oldalt és add hozzá!_ + +## Függelék {#appendix} + +Mint fentebb említettük, a DAG generálásához használt RNG a számelmélet néhány eredményére támaszkodik. Először is biztosítjuk, hogy a `picker` változó alapjául szolgáló Lehmer RNG széles periódussal rendelkezik. Másodszor, megmutatjuk, hogy a `pow(x,3,P)` nem fogja `x` kódot `1` vagy `P-1` értékre leképezni, feltéve, hogy `x ∈ [2,P-2]`. Végül megmutatjuk, hogy a `pow(x,3,P)` alacsony ütközési rátával rendelkezik, ha hash függvényként kezeljük. + +### Lehmer véletlenszám-generátor {#lehmer-random-number} + +Bár a `produce_dag` függvénynek nem kell torzítatlan véletlen számokat produkálnia, és potenciális veszélyt jelent, hogy a `seed**i % P` csak néhány értéket vesz fel. Ez előnyt jelenthet azoknak a bányászoknak, akik felismerik a mintát, miközben mások nem. + +Ennek elkerülése érdekében egy számelméleti eredményre hivatkozunk. A [_biztonságos prímszám_](https://en.wikipedia.org/wiki/Safe_prime) egy olyan prím `P`, amelynél a `(P-1)/2` szintén prímszám. A [multiplikatív csoport](https://en.wikipedia.org/wiki/Multiplicative_group_of_integers_modulo_n) egy `x` tagjának _rendje_ a `ℤ/nℤ` meghatározása szerint a minimális `m` úgy, hogy
xᵐ mod P ≡ 1
+Ezen definíciók szerint: + +> 1. megfigyelés. Legyen `x` a `ℤ/Pℤ` multiplikatív csoport tagja egy biztonságos `P` prímszámhoz. Ha `x mod P ≠ 1 mod P` és `x mod P ≠ P-1 mod P`, akkor `x` rendje vagy `P-1` vagy `(P-1)/2`. + +_Bizonyítás_. Mivel `P` egy biztonságos prímszám, akkor a \[Lagrange-tétel\]\[lagrange\] alapján azt kell mondanunk, hogy `x` rendje vagy `1`, `2`, `(P-1)/2` vagy `P-1`. + +A `x` sorrendje nem lehet `1` Fermat kis tételéből következően: + +
xP-1 mod P ≡ 1
+ +Ezért `x` a `ℤ/nℤ` multiplikatív azonosságának kell lennie, ami egyedi. Mivel feltételezésünk szerint `x ≠ 1`, ez nem lehetséges. + +Az `x` sorrendje nem lehet `2`, kivéve, ha `x = P-1`, mivel ez sértené, hogy `P` prímszám. + +A fenti tételből felismerhetjük, hogy a `(picker * init) % P` ismétlése legalább `(P-1)/2` ciklushosszúságú lesz. Ennek az az oka, hogy a `P` értékének egy biztonságos prímszámot választottunk, amely megközelítőleg egyenlő a kettő nagyobb hatványával, és `init` a `[2,2**256+1]` intervallumban van. A `P` nagyságát tekintve a moduláris exponenciálástól nem várhatunk ciklust. + +A DAG első cellájának (az `init` feliratú változó) hozzárendelésekor kiszámítjuk a `pow(sha3(seed) + 2, 3, P)` értékét. Első pillantásra ez nem garantálja, hogy az eredmény nem `1` és nem `P-1`. Mivel azonban `P-1` egy biztonságos prímszám, a következő további bizonyosságunk van, amely az 1. megfigyelés következménye: + +> 2. megfigyelés. Legyen `x` a `ℤ/Pℤ` multiplikatív csoport tagja egy biztonságos `P` prímszámhoz, és legyen `w` egy természetes szám. Ha `x mod P ≠ 1 mod P` és `x mod P ≠ P-1 mod P`, valamint `w mod P ≠ P-1 mod P` és `w mod P ≠ 0 mod P`, akkor `xʷ mod P ≠ 1 mod P` és `xʷ mod P ≠ P-1 mod P` + +### Moduláris exponenciálás hashfüggvényként {#modular-exponentiation} + +A `P` és `w` bizonyos értékei esetén a `pow(x, w, P)` függvénynek sok ütközése lehet. Például a `pow(x,9,19)` csak `{1,18}` értékeket vesz fel. + +Adott, hogy `P` prímszám, akkor egy megfelelő `w` moduláris exponenciálási hashfüggvényhez a következő eredmény segítségével választható ki: + +> 3. megfigyelés. Legyen `P` egy prímszám; `w` és `P-1` akkor, és csak akkor relatív prímszámok, ha minden `a` és `b` esetén `ℤ/Pℤ`: +> +>
+> `aʷ mod P ≡ bʷ mod P`, ha és csak ha `a mod P ≡ b mod P` +>
+ +Így, feltéve, hogy `P` prím és `w` relatíve prím `P-1`-hez, akkor `|{pow(x, w, P) : x ∈ ℤ}| = P`, ami azt jelenti, hogy a hashfüggvény a lehető legkisebb ütközési rátával rendelkezik. + +Abban a speciális esetben, ha `P` egy biztonságos prímszám, ahogyan azt választottuk, akkor `P-1` csak 1, 2, `(P-1)/2` és `P-1` faktorokkal rendelkezik. Mivel `P` > 7, tudjuk, hogy 3 relatív prím a `P-1`-hez, ezért `w=3` kielégíti a fenti tételt. + +## Hatékonyabb cache-alapú kiértékelő algoritmus {#cache-based-evaluation} + +```python +def quick_calc(params, seed, p): + cache = produce_dag(params, seed, params["cache_size"]) + return quick_calc_cached(cache, params, p) + +def quick_calc_cached(cache, params, p): + P = params["P"] + if p < len(cache): + return cache[p] + else: + x = pow(cache[0], p + 1, P) + for _ in range(params["k"]): + x ^= quick_calc_cached(cache, params, x % p) + return pow(x, params["w"], P) + +def quick_hashimoto(seed, dagsize, params, header, nonce): + cache = produce_dag(params, seed, params["cache_size"]) + return quick_hashimoto_cached(cache, dagsize, params, header, nonce) + +def quick_hashimoto_cached(cache, dagsize, params, header, nonce): + m = dagsize // 2 + mask = 2**64 - 1 + mix = sha3(encode_int(nonce) + header) + for _ in range(params["accesses"]): + mix ^= quick_calc_cached(cache, params, m + (mix & mask) % m) + return dbl_sha3(mix) +``` diff --git a/public/content/translations/hu/developers/docs/consensus-mechanisms/pow/mining/mining-algorithms/ethash/index.md b/public/content/translations/hu/developers/docs/consensus-mechanisms/pow/mining/mining-algorithms/ethash/index.md new file mode 100644 index 00000000000..b14af01c475 --- /dev/null +++ b/public/content/translations/hu/developers/docs/consensus-mechanisms/pow/mining/mining-algorithms/ethash/index.md @@ -0,0 +1,1014 @@ +--- +title: Ethash +description: Az Ethash algoritmus részletes bemutatása. +lang: hu +--- + + + Az Ethash volt az Ethereum proof-of-work (munkaigazolás) bányászati algoritmusa. A proof-of-work jelenleg **teljesen ki van kapcsolva**, az Ethereumot pedig a proof-of-stake mechanizmus biztosítja. Tudjon meg többet az egyesítés (Merge), proof-of-stake (letéti igazolás) és letétbe helyezés témákról. Ez az oldal elavult témákat tartalmaz! + + +Az [Ethash](https://github.com/ethereum/wiki/wiki/Ethash) a [Dagger-Hashimoto](/developers/docs/consensus-mechanisms/pow/mining-algorithms/dagger-hashimoto) algoritmus egy módosított változata. Az Ethash proof-of-work egy [ memóriaigényes (memory hard)](https://wikipedia.org/wiki/Memory-hard_function) működés, ami miatt ez az algoritmus ASIC-ellenálló. Az Ethash ASIC-t végül kifejlesztették, de a GPU-bányászat még mindig működő opció volt addig, amíg a proof-of-work metódust ki nem kapcsolták. Az Ethasht még használják más érmék bányászatánál, nem Ethereumon és nem proof-of-work hálózatokon. + +## Hogyan működik az Ethash? {#how-does-ethash-work} + +A memóriaigényt (memory hardness) egy proof-of-work algoritmussal lehet elérni, amelynek egy rögzített erőforrás részhalmazait kell kiválasztania a nonce és a blokkfejléc alapján. Ezt az erőforrást (ami néhány gigabájt nagyságú) DAG-nek (irányított aciklikus gráf/Directed Acyclic Graph) nevezik. A DAG minden 30 000. blokknál megváltozik, ami nagyjából 125 órás időtartamnak felel meg – ezt korszaknak nevezik (kb. 5,2 nap) és időbe telik, amíg létrejön. Mivel a DAG csak a blokk magasságán múlik, ezért előre el lehet készíteni, de ha nincs, akkor a kliensnek meg kell várnia a folyamat végét ahhoz, hogy blokkot készítsen. Ha a kliensek nem hozzák létre és cache-elik a DAG-eket korábban, akkor a hálózat komoly blokk-késedelmet szenved el minden korszakváltásnál (epoch). Fontos megjegyezni, hogy a DAG nem szükséges a proof-of-work ellenőrzéséhez, így ezt a folyamatot alacsony CPU-val és kevés memóriával is lehet végezni. + +Az algoritmus a következő általános utat teszi meg: + +1. Létezik egy **mag (seed)**, amelyet ki lehet számolni minden blokkra úgy, hogy a blokkfejléceket addig a pontig végigszkennelik. +2. Ebből a magból ki lehet számolni egy **16 MB álvéletlenszerű cache-t**. A könnyű kliensek tárolják a cache-t. +3. A gyorsítótárból egy **1 GB adathalmazt** lehet létrehozni, amelyben minden elem csak kevés gyorsítótár elemtől függ. A teljes kliensek és bányászok tárolják az adathalmazt. Az adathalmaz az idővel egyre növekszik. +4. A bányászat során az adathalmaz véletlenszerű szeleteit felkapják és összehashelik. Az ellenőrzést alacsony memóriával is lehet végezni, a cache-t használva arra, hogy újragenerálja az adathalmaz szükséges részeit, ezért csak a cache-t kell tárolni. + +A nagy adathalmaz minden 30 000. blokk után frissül, ezért a bányászok erőfeszítéseinek legjava az adatkészlet olvasására összpontosít, nem pedig a változtatására. + +## Definíciók {#definitions} + +A következő definíciókat használjuk: + +``` +WORD_BYTES = 4 # bytes in word +DATASET_BYTES_INIT = 2**30 # bytes in dataset at genesis +DATASET_BYTES_GROWTH = 2**23 # dataset growth per epoch +CACHE_BYTES_INIT = 2**24 # bytes in cache at genesis +CACHE_BYTES_GROWTH = 2**17 # cache growth per epoch +CACHE_MULTIPLIER=1024 # Size of the DAG relative to the cache +EPOCH_LENGTH = 30000 # blocks per epoch +MIX_BYTES = 128 # width of mix +HASH_BYTES = 64 # hash length in bytes +DATASET_PARENTS = 256 # number of parents of each dataset element +CACHE_ROUNDS = 3 # number of rounds in cache production +ACCESSES = 64 # number of accesses in hashimoto loop +``` + +### Az SHA3 használata {#sha3} + +Az Ethereum fejlesztése egybe esett az SHA3 szabvány kifejlesztésével, és a standard folyamat egy változtatást vitt véghez a végső hashalgoritmussal kapcsolatban, így az Ethereum „sha3_256” és „sha3_512” hashek nem szabványos sha3 hashek, hanem variánsok, melyre gyakran „Keccak-256” és „Keccak-512” néven hivatkoznak más kontextusban. A kapcsolódó beszélgetéseket [itt](https://eips.ethereum.org/EIPS-1803), [itt](http://ethereum.stackexchange.com/questions/550/which-cryptographic-hash-function-does-ethereum-use) vagy [itt](http://bitcoin.stackexchange.com/questions/42055/what-is-the-approach-to-calculate-an-ethereum-address-from-a-256-bit-private-key/42057#42057) találja. + +Vegye figyelembe, hogy az alábbi leírás SHA3-hashekre hivatkozik az algoritmus tekintetében. + +## Parameters {#parameters} + +Az Ethash-cache és adathalmaz paraméterei a blokkszámtól függenek. A cache és az adathalmaz mérete egyenes arányosságban növekszik; ugyanakkor mindig a legnagyobb prímszámot választjuk a lineárisan növekvő határ alatt, hogy kevesebb kockázata legyen valamilyen szokatlan dolognak, ami ciklikus viselkedéshez vezet. + +```python +def get_cache_size(block_number): + sz = CACHE_BYTES_INIT + CACHE_BYTES_GROWTH * (block_number // EPOCH_LENGTH) + sz -= HASH_BYTES + while not isprime(sz / HASH_BYTES): + sz -= 2 * HASH_BYTES + return sz + +def get_full_size(block_number): + sz = DATASET_BYTES_INIT + DATASET_BYTES_GROWTH * (block_number // EPOCH_LENGTH) + sz -= MIX_BYTES + while not isprime(sz / MIX_BYTES): + sz -= 2 * MIX_BYTES + return sz +``` + +Az adathalmaznak és a cache-méret értékeinek táblázatát a függelékben találja. + +## Cache létrehozása {#cache-generation} + +Most meghatározzuk a cache létrehozásának függvényét: + +```python +def mkcache(cache_size, seed): + n = cache_size // HASH_BYTES + + # Sequentially produce the initial dataset + o = [sha3_512(seed)] + for i in range(1, n): + o.append(sha3_512(o[-1])) + + # Use a low-round version of randmemohash + for _ in range(CACHE_ROUNDS): + for i in range(n): + v = o[i][0] % n + o[i] = sha3_512(map(xor, o[(i-1+n) % n], o[v])) + + return o +``` + +A cache létrehozása először 32 MB-nyi memória szekvenciális feltöltését igényli, majd Sergio Demian Lerner _RandMemoHash_ algoritmusának két végrehajtását a [_Strict Memory Hard Hashing Functions-ből_ (2014)](http://www.hashcash.org/papers/memohash.pdf). Az eredmény egy 524 288 db 64-bájtos elemből álló készlet. + +## Adataggregálási függvény {#date-aggregation-function} + +Olyan algoritmust használunk, amit az [FNV hash](https://en.wikipedia.org/wiki/Fowler%E2%80%93Noll%E2%80%93Vo_hash_function) inspirált néhány esetben, mint a XOR nem-asszociatív helyettesítője. Vegye figyelembe, hogy a prímszámot a teljes 32 bites bemeneti adattal megszorozzuk, ellentétben az FNV-1 specifikációval, ami a prímszámot egy bájttal (octet) szorozza. + +```python +FNV_PRIME = 0x01000193 + +def fnv(v1, v2): + return ((v1 * FNV_PRIME) ^ v2) % 2**32 +``` + +Vegye figyelembe, hogy még a Sárgakönyv is úgy határozza meg az fnv-t, mint v1\*(FNV_PRIME ^ v2), és minden jelenlegi implementáció konzisztensen ezt használja. + +## Teljes adathalmaz kiszámítása {#full-dataset-calculation} + +Minden 64 bájtos elem a teljes 1 GB-nyi adathalmazban a következőképpen kerül kiszámolásra: + +```python +def calc_dataset_item(cache, i): + n = len(cache) + r = HASH_BYTES // WORD_BYTES + # initialize the mix + mix = copy.copy(cache[i % n]) + mix[0] ^= i + mix = sha3_512(mix) + # fnv it with a lot of random cache nodes based on i + for j in range(DATASET_PARENTS): + cache_index = fnv(i ^ j, mix[j % r]) + mix = map(fnv, mix, cache[cache_index % n]) + return sha3_512(mix) +``` + +Lényegében a 256 álvéletlenszerűen kiválasztott cache-csomópontokból származó adatot kombináljuk, és ezeket hasheljük, hogy kiszámoljuk az adathalmaz csomópontját. Ezután a teljes adathalmazt létrehozzuk: + +```python +def calc_dataset(full_size, cache): + return [calc_dataset_item(cache, i) for i in range(full_size // HASH_BYTES)] +``` + +## Fő ciklus {#main-loop} + +Most meghatározzuk a fő „hashimoto”-szerű ciklust, ahol aggregáljuk a teljes adathalmazból vett adatokat azért, hogy egy bizonyos fejléchez és nonce-hoz végső értéket rendeljünk. A lenti kódban a `header` (fejléc) az SHA3-256 _hasht_ képviseli, ami az RLP reprezentációja egy _csonka_ blokkfejlécnek, tehát olyan fejléc, amiben nincs benne a **mixHash** és a **nonce**. A `nonce` egy 64 bites, nem aláírt egész szám nyolc bájtja big-endian sorban. Tehát a `nonce[::-1]` a nyolc bájtos kis-endian reprezentációja ennek az értéknek: + +```python +def hashimoto(header, nonce, full_size, dataset_lookup): + n = full_size / HASH_BYTES + w = MIX_BYTES // WORD_BYTES + mixhashes = MIX_BYTES / HASH_BYTES + # combine header+nonce into a 64 byte seed + s = sha3_512(header + nonce[::-1]) + # start the mix with replicated s + mix = [] + for _ in range(MIX_BYTES / HASH_BYTES): + mix.extend(s) + # mix in random dataset nodes + for i in range(ACCESSES): + p = fnv(i ^ s[0], mix[i % w]) % (n // mixhashes) * mixhashes + newdata = [] + for j in range(MIX_BYTES / HASH_BYTES): + newdata.extend(dataset_lookup(p + j)) + mix = map(fnv, mix, newdata) + # compress mix + cmix = [] + for i in range(0, len(mix), 4): + cmix.append(fnv(fnv(fnv(mix[i], mix[i+1]), mix[i+2]), mix[i+3])) + return { + "mix digest": serialize_hash(cmix), + "result": serialize_hash(sha3_256(s+cmix)) + } + +def hashimoto_light(full_size, cache, header, nonce): + return hashimoto(header, nonce, full_size, lambda x: calc_dataset_item(cache, x)) + +def hashimoto_full(full_size, dataset, header, nonce): + return hashimoto(header, nonce, full_size, lambda x: dataset[x]) +``` + +Lényegében egy 128 bájt széles „mixet” készítünk, és ismétlődő módon, szekvenciálisan felkapunk 128 bájtot a teljes adathalmazból, és az `fnv` függvénnyel összekombináljuk a mix-szel. Azért 128 bájtnyi szekvenciális bemenetet használunk, hogy az algoritmus minden egyes köre a RAM egy teljes oldalát felkapja, így minimalizálva az átfordítás hibáit, melyeket az ASIC elméletileg el tudna kerülni. + +Ha az algoritmus kimenete a várt eredményt adja, akkor a nonce érvényes. Fontos megjegyezni, hogy az `sha3_256` extra alkalmazása a végén azt biztosítja, hogy létezik egy köztes nonce, ami bizonyítja, hogy legalább egy kis munkavégzés történt; ezt a gyors, külső proof-of-work-ellenőrzést DDoS elleni célokra lehet használni. Emellett statisztikai biztosítást is ad, hogy az eredmény egy helyes 256 bites szám. + +## Bányászat {#mining} + +A bányászati algoritmust a következőképpen definiáljuk: + +```python +def mine(full_size, dataset, header, difficulty): + # zero-pad target to compare with hash on the same digit + target = zpad(encode_int(2**256 // difficulty), 64)[::-1] + from random import randint + nonce = randint(0, 2**64) + while hashimoto_full(full_size, dataset, header, nonce) > target: + nonce = (nonce + 1) % 2**64 + return nonce +``` + +## A seed hash meghatározása {#seed-hash} + +A seed hash kiszámolásához, amellyel egy adott blokk tetején lehet bányászni, a következő algoritmust használjuk: + +```python + def get_seedhash(block): + s = '\x00' * 32 + for i in range(block.number // EPOCH_LENGTH): + s = serialize_hash(sha3_256(s)) + return s +``` + +Vegye figyelembe, hogy a zavartalan bányászat és ellenőrzés érdekében érdemes előre kiszámolni a jövőbeli seed hasheket és adathalmazokat egy másik helyen. + +## További olvasnivaló {#further-reading} + +_Ismersz olyan közösségi anyagot, amely segített neked? Módosítsd az oldalt és add hozzá!_ + +## Függelék {#appendix} + +A következő kódot kell beilleszteni, ha Ön a fenti python-specifikációt akarja futtatni kódként. + +```python +import sha3, copy + +# Assumes little endian bit ordering (same as Intel architectures) +def decode_int(s): + return int(s[::-1].encode('hex'), 16) if s else 0 + +def encode_int(s): + a = "%x" % s + return '' if s == 0 else ('0' * (len(a) % 2) + a).decode('hex')[::-1] + +def zpad(s, length): + return s + '\x00' * max(0, length - len(s)) + +def serialize_hash(h): + return ''.join([zpad(encode_int(x), 4) for x in h]) + +def deserialize_hash(h): + return [decode_int(h[i:i+WORD_BYTES]) for i in range(0, len(h), WORD_BYTES)] + +def hash_words(h, sz, x): + if isinstance(x, list): + x = serialize_hash(x) + y = h(x) + return deserialize_hash(y) + +def serialize_cache(ds): + return ''.join([serialize_hash(h) for h in ds]) + +serialize_dataset = serialize_cache + +# sha3 hash function, outputs 64 bytes +def sha3_512(x): + return hash_words(lambda v: sha3.sha3_512(v).digest(), 64, x) + +def sha3_256(x): + return hash_words(lambda v: sha3.sha3_256(v).digest(), 32, x) + +def xor(a, b): + return a ^ b + +def isprime(x): + for i in range(2, int(x**0.5)): + if x % i == 0: + return False + return True +``` + +### Adatméretek {#data-sizes} + +A következő tábla kb. 2048 korszak adat- és cache-méreteit mutatja meg. + +```python +def get_datasize(block_number): + return data_sizes[block_number // EPOCH_LENGTH] + +def get_cachesize(block_number): + return cache_sizes[block_number // EPOCH_LENGTH] + +data_sizes = [ +1073739904, 1082130304, 1090514816, 1098906752, 1107293056, +1115684224, 1124070016, 1132461952, 1140849536, 1149232768, +1157627776, 1166013824, 1174404736, 1182786944, 1191180416, +1199568512, 1207958912, 1216345216, 1224732032, 1233124736, +1241513344, 1249902464, 1258290304, 1266673792, 1275067264, +1283453312, 1291844992, 1300234112, 1308619904, 1317010048, +1325397376, 1333787776, 1342176128, 1350561664, 1358954368, +1367339392, 1375731584, 1384118144, 1392507008, 1400897408, +1409284736, 1417673344, 1426062464, 1434451072, 1442839168, +1451229056, 1459615616, 1468006016, 1476394112, 1484782976, +1493171584, 1501559168, 1509948032, 1518337664, 1526726528, +1535114624, 1543503488, 1551892096, 1560278656, 1568669056, +1577056384, 1585446272, 1593831296, 1602219392, 1610610304, +1619000192, 1627386752, 1635773824, 1644164224, 1652555648, +1660943488, 1669332608, 1677721216, 1686109312, 1694497664, +1702886272, 1711274624, 1719661184, 1728047744, 1736434816, +1744829056, 1753218944, 1761606272, 1769995904, 1778382464, +1786772864, 1795157888, 1803550592, 1811937664, 1820327552, +1828711552, 1837102976, 1845488768, 1853879936, 1862269312, +1870656896, 1879048064, 1887431552, 1895825024, 1904212096, +1912601216, 1920988544, 1929379456, 1937765504, 1946156672, +1954543232, 1962932096, 1971321728, 1979707264, 1988093056, +1996487552, 2004874624, 2013262208, 2021653888, 2030039936, +2038430848, 2046819968, 2055208576, 2063596672, 2071981952, +2080373632, 2088762752, 2097149056, 2105539712, 2113928576, +2122315136, 2130700672, 2139092608, 2147483264, 2155872128, +2164257664, 2172642176, 2181035392, 2189426048, 2197814912, +2206203008, 2214587264, 2222979712, 2231367808, 2239758208, +2248145024, 2256527744, 2264922752, 2273312128, 2281701248, +2290086272, 2298476672, 2306867072, 2315251072, 2323639168, +2332032128, 2340420224, 2348808064, 2357196416, 2365580416, +2373966976, 2382363008, 2390748544, 2399139968, 2407530368, +2415918976, 2424307328, 2432695424, 2441084288, 2449472384, +2457861248, 2466247808, 2474637184, 2483026816, 2491414144, +2499803776, 2508191872, 2516582272, 2524970368, 2533359232, +2541743488, 2550134144, 2558525056, 2566913408, 2575301504, +2583686528, 2592073856, 2600467328, 2608856192, 2617240448, +2625631616, 2634022016, 2642407552, 2650796416, 2659188352, +2667574912, 2675965312, 2684352896, 2692738688, 2701130624, +2709518464, 2717907328, 2726293376, 2734685056, 2743073152, +2751462016, 2759851648, 2768232832, 2776625536, 2785017728, +2793401984, 2801794432, 2810182016, 2818571648, 2826959488, +2835349376, 2843734144, 2852121472, 2860514432, 2868900992, +2877286784, 2885676928, 2894069632, 2902451584, 2910843008, +2919234688, 2927622784, 2936011648, 2944400768, 2952789376, +2961177728, 2969565568, 2977951616, 2986338944, 2994731392, +3003120256, 3011508352, 3019895936, 3028287104, 3036675968, +3045063808, 3053452928, 3061837696, 3070228352, 3078615424, +3087003776, 3095394944, 3103782272, 3112173184, 3120562048, +3128944768, 3137339264, 3145725056, 3154109312, 3162505088, +3170893184, 3179280256, 3187669376, 3196056704, 3204445568, +3212836736, 3221224064, 3229612928, 3238002304, 3246391168, +3254778496, 3263165824, 3271556224, 3279944576, 3288332416, +3296719232, 3305110912, 3313500032, 3321887104, 3330273152, +3338658944, 3347053184, 3355440512, 3363827072, 3372220288, +3380608384, 3388997504, 3397384576, 3405774208, 3414163072, +3422551936, 3430937984, 3439328384, 3447714176, 3456104576, +3464493952, 3472883584, 3481268864, 3489655168, 3498048896, +3506434432, 3514826368, 3523213952, 3531603584, 3539987072, +3548380288, 3556763264, 3565157248, 3573545344, 3581934464, +3590324096, 3598712704, 3607098752, 3615488384, 3623877248, +3632265856, 3640646528, 3649043584, 3657430144, 3665821568, +3674207872, 3682597504, 3690984832, 3699367808, 3707764352, +3716152448, 3724541056, 3732925568, 3741318016, 3749706368, +3758091136, 3766481536, 3774872704, 3783260032, 3791650432, +3800036224, 3808427648, 3816815488, 3825204608, 3833592704, +3841981568, 3850370432, 3858755968, 3867147904, 3875536256, +3883920512, 3892313728, 3900702592, 3909087872, 3917478784, +3925868416, 3934256512, 3942645376, 3951032192, 3959422336, +3967809152, 3976200064, 3984588416, 3992974976, 4001363584, +4009751168, 4018141312, 4026530432, 4034911616, 4043308928, +4051695488, 4060084352, 4068472448, 4076862848, 4085249408, +4093640576, 4102028416, 4110413696, 4118805632, 4127194496, +4135583104, 4143971968, 4152360832, 4160746112, 4169135744, +4177525888, 4185912704, 4194303616, 4202691968, 4211076736, +4219463552, 4227855488, 4236246656, 4244633728, 4253022848, +4261412224, 4269799808, 4278184832, 4286578048, 4294962304, +4303349632, 4311743104, 4320130432, 4328521088, 4336909184, +4345295488, 4353687424, 4362073472, 4370458496, 4378852736, +4387238528, 4395630208, 4404019072, 4412407424, 4420790656, +4429182848, 4437571456, 4445962112, 4454344064, 4462738048, +4471119232, 4479516544, 4487904128, 4496289664, 4504682368, +4513068416, 4521459584, 4529846144, 4538232704, 4546619776, +4555010176, 4563402112, 4571790208, 4580174464, 4588567936, +4596957056, 4605344896, 4613734016, 4622119808, 4630511488, +4638898816, 4647287936, 4655675264, 4664065664, 4672451968, +4680842624, 4689231488, 4697620352, 4706007424, 4714397056, +4722786176, 4731173248, 4739562368, 4747951744, 4756340608, +4764727936, 4773114496, 4781504384, 4789894784, 4798283648, +4806667648, 4815059584, 4823449472, 4831835776, 4840226176, +4848612224, 4857003392, 4865391488, 4873780096, 4882169728, +4890557312, 4898946944, 4907333248, 4915722368, 4924110976, +4932499328, 4940889728, 4949276032, 4957666432, 4966054784, +4974438016, 4982831488, 4991221376, 4999607168, 5007998848, +5016386432, 5024763776, 5033164672, 5041544576, 5049941888, +5058329728, 5066717056, 5075107456, 5083494272, 5091883904, +5100273536, 5108662144, 5117048192, 5125436032, 5133827456, +5142215296, 5150605184, 5158993024, 5167382144, 5175769472, +5184157568, 5192543872, 5200936064, 5209324928, 5217711232, +5226102656, 5234490496, 5242877312, 5251263872, 5259654016, +5268040832, 5276434304, 5284819328, 5293209728, 5301598592, +5309986688, 5318374784, 5326764416, 5335151488, 5343542144, +5351929472, 5360319872, 5368706944, 5377096576, 5385484928, +5393871232, 5402263424, 5410650496, 5419040384, 5427426944, +5435816576, 5444205952, 5452594816, 5460981376, 5469367936, +5477760896, 5486148736, 5494536832, 5502925952, 5511315328, +5519703424, 5528089984, 5536481152, 5544869504, 5553256064, +5561645696, 5570032768, 5578423936, 5586811264, 5595193216, +5603585408, 5611972736, 5620366208, 5628750464, 5637143936, +5645528192, 5653921408, 5662310272, 5670694784, 5679082624, +5687474048, 5695864448, 5704251008, 5712641408, 5721030272, +5729416832, 5737806208, 5746194304, 5754583936, 5762969984, +5771358592, 5779748224, 5788137856, 5796527488, 5804911232, +5813300608, 5821692544, 5830082176, 5838468992, 5846855552, +5855247488, 5863636096, 5872024448, 5880411008, 5888799872, +5897186432, 5905576832, 5913966976, 5922352768, 5930744704, +5939132288, 5947522432, 5955911296, 5964299392, 5972688256, +5981074304, 5989465472, 5997851008, 6006241408, 6014627968, +6023015552, 6031408256, 6039796096, 6048185216, 6056574848, +6064963456, 6073351808, 6081736064, 6090128768, 6098517632, +6106906496, 6115289216, 6123680896, 6132070016, 6140459648, +6148849024, 6157237376, 6165624704, 6174009728, 6182403712, +6190792064, 6199176064, 6207569792, 6215952256, 6224345216, +6232732544, 6241124224, 6249510272, 6257899136, 6266287744, +6274676864, 6283065728, 6291454336, 6299843456, 6308232064, +6316620928, 6325006208, 6333395584, 6341784704, 6350174848, +6358562176, 6366951296, 6375337856, 6383729536, 6392119168, +6400504192, 6408895616, 6417283456, 6425673344, 6434059136, +6442444672, 6450837376, 6459223424, 6467613056, 6476004224, +6484393088, 6492781952, 6501170048, 6509555072, 6517947008, +6526336384, 6534725504, 6543112832, 6551500672, 6559888768, +6568278656, 6576662912, 6585055616, 6593443456, 6601834112, +6610219648, 6618610304, 6626999168, 6635385472, 6643777408, +6652164224, 6660552832, 6668941952, 6677330048, 6685719424, +6694107776, 6702493568, 6710882176, 6719274112, 6727662976, +6736052096, 6744437632, 6752825984, 6761213824, 6769604224, +6777993856, 6786383488, 6794770816, 6803158144, 6811549312, +6819937664, 6828326528, 6836706176, 6845101696, 6853491328, +6861880448, 6870269312, 6878655104, 6887046272, 6895433344, +6903822208, 6912212864, 6920596864, 6928988288, 6937377152, +6945764992, 6954149248, 6962544256, 6970928768, 6979317376, +6987709312, 6996093824, 7004487296, 7012875392, 7021258624, +7029652352, 7038038912, 7046427776, 7054818944, 7063207808, +7071595136, 7079980928, 7088372608, 7096759424, 7105149824, +7113536896, 7121928064, 7130315392, 7138699648, 7147092352, +7155479168, 7163865728, 7172249984, 7180648064, 7189036672, +7197424768, 7205810816, 7214196608, 7222589824, 7230975104, +7239367552, 7247755904, 7256145536, 7264533376, 7272921472, +7281308032, 7289694848, 7298088832, 7306471808, 7314864512, +7323253888, 7331643008, 7340029568, 7348419712, 7356808832, +7365196672, 7373585792, 7381973888, 7390362752, 7398750592, +7407138944, 7415528576, 7423915648, 7432302208, 7440690304, +7449080192, 7457472128, 7465860992, 7474249088, 7482635648, +7491023744, 7499412608, 7507803008, 7516192384, 7524579968, +7532967296, 7541358464, 7549745792, 7558134656, 7566524032, +7574912896, 7583300992, 7591690112, 7600075136, 7608466816, +7616854912, 7625244544, 7633629824, 7642020992, 7650410368, +7658794112, 7667187328, 7675574912, 7683961984, 7692349568, +7700739712, 7709130368, 7717519232, 7725905536, 7734295424, +7742683264, 7751069056, 7759457408, 7767849088, 7776238208, +7784626816, 7793014912, 7801405312, 7809792128, 7818179968, +7826571136, 7834957184, 7843347328, 7851732352, 7860124544, +7868512384, 7876902016, 7885287808, 7893679744, 7902067072, +7910455936, 7918844288, 7927230848, 7935622784, 7944009344, +7952400256, 7960786048, 7969176704, 7977565312, 7985953408, +7994339968, 8002730368, 8011119488, 8019508096, 8027896192, +8036285056, 8044674688, 8053062272, 8061448832, 8069838464, +8078227328, 8086616704, 8095006592, 8103393664, 8111783552, +8120171392, 8128560256, 8136949376, 8145336704, 8153726848, +8162114944, 8170503296, 8178891904, 8187280768, 8195669632, +8204058496, 8212444544, 8220834176, 8229222272, 8237612672, +8246000768, 8254389376, 8262775168, 8271167104, 8279553664, +8287944064, 8296333184, 8304715136, 8313108352, 8321497984, +8329885568, 8338274432, 8346663296, 8355052928, 8363441536, +8371828352, 8380217984, 8388606592, 8396996224, 8405384576, +8413772672, 8422161536, 8430549376, 8438939008, 8447326592, +8455715456, 8464104832, 8472492928, 8480882048, 8489270656, +8497659776, 8506045312, 8514434944, 8522823808, 8531208832, +8539602304, 8547990656, 8556378752, 8564768384, 8573154176, +8581542784, 8589933952, 8598322816, 8606705024, 8615099264, +8623487872, 8631876992, 8640264064, 8648653952, 8657040256, +8665430656, 8673820544, 8682209152, 8690592128, 8698977152, +8707374464, 8715763328, 8724151424, 8732540032, 8740928384, +8749315712, 8757704576, 8766089344, 8774480768, 8782871936, +8791260032, 8799645824, 8808034432, 8816426368, 8824812928, +8833199488, 8841591424, 8849976448, 8858366336, 8866757248, +8875147136, 8883532928, 8891923328, 8900306816, 8908700288, +8917088384, 8925478784, 8933867392, 8942250368, 8950644608, +8959032704, 8967420544, 8975809664, 8984197504, 8992584064, +9000976256, 9009362048, 9017752448, 9026141312, 9034530688, +9042917504, 9051307904, 9059694208, 9068084864, 9076471424, +9084861824, 9093250688, 9101638528, 9110027648, 9118416512, +9126803584, 9135188096, 9143581312, 9151969664, 9160356224, +9168747136, 9177134464, 9185525632, 9193910144, 9202302848, +9210690688, 9219079552, 9227465344, 9235854464, 9244244864, +9252633472, 9261021824, 9269411456, 9277799296, 9286188928, +9294574208, 9302965888, 9311351936, 9319740032, 9328131968, +9336516736, 9344907392, 9353296768, 9361685888, 9370074752, +9378463616, 9386849408, 9395239808, 9403629184, 9412016512, +9420405376, 9428795008, 9437181568, 9445570688, 9453960832, +9462346624, 9470738048, 9479121536, 9487515008, 9495903616, +9504289664, 9512678528, 9521067904, 9529456256, 9537843584, +9546233728, 9554621312, 9563011456, 9571398784, 9579788672, +9588178304, 9596567168, 9604954496, 9613343104, 9621732992, +9630121856, 9638508416, 9646898816, 9655283584, 9663675776, +9672061312, 9680449664, 9688840064, 9697230464, 9705617536, +9714003584, 9722393984, 9730772608, 9739172224, 9747561088, +9755945344, 9764338816, 9772726144, 9781116544, 9789503872, +9797892992, 9806282624, 9814670464, 9823056512, 9831439232, +9839833984, 9848224384, 9856613504, 9865000576, 9873391232, +9881772416, 9890162816, 9898556288, 9906940544, 9915333248, +9923721088, 9932108672, 9940496512, 9948888448, 9957276544, +9965666176, 9974048384, 9982441088, 9990830464, 9999219584, +10007602816, 10015996544, 10024385152, 10032774016, 10041163648, +10049548928, 10057940096, 10066329472, 10074717824, 10083105152, +10091495296, 10099878784, 10108272256, 10116660608, 10125049216, +10133437312, 10141825664, 10150213504, 10158601088, 10166991232, +10175378816, 10183766144, 10192157312, 10200545408, 10208935552, +10217322112, 10225712768, 10234099328, 10242489472, 10250876032, +10259264896, 10267656064, 10276042624, 10284429184, 10292820352, +10301209472, 10309598848, 10317987712, 10326375296, 10334763392, +10343153536, 10351541632, 10359930752, 10368318592, 10376707456, +10385096576, 10393484672, 10401867136, 10410262144, 10418647424, +10427039104, 10435425664, 10443810176, 10452203648, 10460589952, +10468982144, 10477369472, 10485759104, 10494147712, 10502533504, +10510923392, 10519313536, 10527702656, 10536091264, 10544478592, +10552867712, 10561255808, 10569642368, 10578032768, 10586423168, +10594805632, 10603200128, 10611588992, 10619976064, 10628361344, +10636754048, 10645143424, 10653531776, 10661920384, 10670307968, +10678696832, 10687086464, 10695475072, 10703863168, 10712246144, +10720639616, 10729026688, 10737414784, 10745806208, 10754190976, +10762581376, 10770971264, 10779356288, 10787747456, 10796135552, +10804525184, 10812915584, 10821301888, 10829692288, 10838078336, +10846469248, 10854858368, 10863247232, 10871631488, 10880023424, +10888412032, 10896799616, 10905188992, 10913574016, 10921964672, +10930352768, 10938742912, 10947132544, 10955518592, 10963909504, +10972298368, 10980687488, 10989074816, 10997462912, 11005851776, +11014241152, 11022627712, 11031017344, 11039403904, 11047793024, +11056184704, 11064570752, 11072960896, 11081343872, 11089737856, +11098128256, 11106514816, 11114904448, 11123293568, 11131680128, +11140065152, 11148458368, 11156845696, 11165236864, 11173624192, +11182013824, 11190402688, 11198790784, 11207179136, 11215568768, +11223957376, 11232345728, 11240734592, 11249122688, 11257511296, +11265899648, 11274285952, 11282675584, 11291065472, 11299452544, +11307842432, 11316231296, 11324616832, 11333009024, 11341395584, +11349782656, 11358172288, 11366560384, 11374950016, 11383339648, +11391721856, 11400117376, 11408504192, 11416893568, 11425283456, +11433671552, 11442061184, 11450444672, 11458837888, 11467226752, +11475611776, 11484003968, 11492392064, 11500780672, 11509169024, +11517550976, 11525944448, 11534335616, 11542724224, 11551111808, +11559500672, 11567890304, 11576277376, 11584667008, 11593056128, +11601443456, 11609830016, 11618221952, 11626607488, 11634995072, +11643387776, 11651775104, 11660161664, 11668552576, 11676940928, +11685330304, 11693718656, 11702106496, 11710496128, 11718882688, +11727273088, 11735660416, 11744050048, 11752437376, 11760824704, +11769216128, 11777604736, 11785991296, 11794381952, 11802770048, +11811157888, 11819548544, 11827932544, 11836324736, 11844713344, +11853100928, 11861486464, 11869879936, 11878268032, 11886656896, +11895044992, 11903433088, 11911822976, 11920210816, 11928600448, +11936987264, 11945375872, 11953761152, 11962151296, 11970543488, +11978928512, 11987320448, 11995708288, 12004095104, 12012486272, +12020875136, 12029255552, 12037652096, 12046039168, 12054429568, +12062813824, 12071206528, 12079594624, 12087983744, 12096371072, +12104759936, 12113147264, 12121534592, 12129924992, 12138314624, +12146703232, 12155091584, 12163481216, 12171864704, 12180255872, +12188643968, 12197034112, 12205424512, 12213811328, 12222199424, +12230590336, 12238977664, 12247365248, 12255755392, 12264143488, +12272531584, 12280920448, 12289309568, 12297694592, 12306086528, +12314475392, 12322865024, 12331253632, 12339640448, 12348029312, +12356418944, 12364805248, 12373196672, 12381580928, 12389969024, +12398357632, 12406750592, 12415138432, 12423527552, 12431916416, +12440304512, 12448692352, 12457081216, 12465467776, 12473859968, +12482245504, 12490636672, 12499025536, 12507411584, 12515801728, +12524190592, 12532577152, 12540966272, 12549354368, 12557743232, +12566129536, 12574523264, 12582911872, 12591299456, 12599688064, +12608074624, 12616463488, 12624845696, 12633239936, 12641631616, +12650019968, 12658407296, 12666795136, 12675183232, 12683574656, +12691960192, 12700350592, 12708740224, 12717128576, 12725515904, +12733906816, 12742295168, 12750680192, 12759071872, 12767460736, +12775848832, 12784236928, 12792626816, 12801014656, 12809404288, +12817789312, 12826181504, 12834568832, 12842954624, 12851345792, +12859732352, 12868122496, 12876512128, 12884901248, 12893289088, +12901672832, 12910067584, 12918455168, 12926842496, 12935232896, +12943620736, 12952009856, 12960396928, 12968786816, 12977176192, +12985563776, 12993951104, 13002341504, 13010730368, 13019115392, +13027506304, 13035895168, 13044272512, 13052673152, 13061062528, +13069446272, 13077838976, 13086227072, 13094613632, 13103000192, +13111393664, 13119782528, 13128157568, 13136559232, 13144945024, +13153329536, 13161724288, 13170111872, 13178502784, 13186884736, +13195279744, 13203667072, 13212057472, 13220445824, 13228832128, +13237221248, 13245610624, 13254000512, 13262388352, 13270777472, +13279166336, 13287553408, 13295943296, 13304331904, 13312719488, +13321108096, 13329494656, 13337885824, 13346274944, 13354663808, +13363051136, 13371439232, 13379825024, 13388210816, 13396605056, +13404995456, 13413380224, 13421771392, 13430159744, 13438546048, +13446937216, 13455326848, 13463708288, 13472103808, 13480492672, +13488875648, 13497269888, 13505657728, 13514045312, 13522435712, +13530824576, 13539210112, 13547599232, 13555989376, 13564379008, +13572766336, 13581154432, 13589544832, 13597932928, 13606320512, +13614710656, 13623097472, 13631477632, 13639874944, 13648264064, +13656652928, 13665041792, 13673430656, 13681818496, 13690207616, +13698595712, 13706982272, 13715373184, 13723762048, 13732150144, +13740536704, 13748926592, 13757316224, 13765700992, 13774090112, +13782477952, 13790869376, 13799259008, 13807647872, 13816036736, +13824425344, 13832814208, 13841202304, 13849591424, 13857978752, +13866368896, 13874754688, 13883145344, 13891533184, 13899919232, +13908311168, 13916692096, 13925085056, 13933473152, 13941866368, +13950253696, 13958643584, 13967032192, 13975417216, 13983807616, +13992197504, 14000582272, 14008973696, 14017363072, 14025752192, +14034137984, 14042528384, 14050918016, 14059301504, 14067691648, +14076083584, 14084470144, 14092852352, 14101249664, 14109635968, +14118024832, 14126407552, 14134804352, 14143188608, 14151577984, +14159968384, 14168357248, 14176741504, 14185127296, 14193521024, +14201911424, 14210301824, 14218685056, 14227067264, 14235467392, +14243855488, 14252243072, 14260630144, 14269021568, 14277409408, +14285799296, 14294187904, 14302571392, 14310961792, 14319353728, +14327738752, 14336130944, 14344518784, 14352906368, 14361296512, +14369685376, 14378071424, 14386462592, 14394848128, 14403230848, +14411627392, 14420013952, 14428402304, 14436793472, 14445181568, +14453569664, 14461959808, 14470347904, 14478737024, 14487122816, +14495511424, 14503901824, 14512291712, 14520677504, 14529064832, +14537456768, 14545845632, 14554234496, 14562618496, 14571011456, +14579398784, 14587789184, 14596172672, 14604564608, 14612953984, +14621341312, 14629724288, 14638120832, 14646503296, 14654897536, +14663284864, 14671675264, 14680061056, 14688447616, 14696835968, +14705228416, 14713616768, 14722003328, 14730392192, 14738784128, +14747172736, 14755561088, 14763947648, 14772336512, 14780725376, +14789110144, 14797499776, 14805892736, 14814276992, 14822670208, +14831056256, 14839444352, 14847836032, 14856222848, 14864612992, +14872997504, 14881388672, 14889775744, 14898165376, 14906553472, +14914944896, 14923329664, 14931721856, 14940109696, 14948497024, +14956887424, 14965276544, 14973663616, 14982053248, 14990439808, +14998830976, 15007216768, 15015605888, 15023995264, 15032385152, +15040768384, 15049154944, 15057549184, 15065939072, 15074328448, +15082715008, 15091104128, 15099493504, 15107879296, 15116269184, +15124659584, 15133042304, 15141431936, 15149824384, 15158214272, +15166602368, 15174991232, 15183378304, 15191760512, 15200154496, +15208542592, 15216931712, 15225323392, 15233708416, 15242098048, +15250489216, 15258875264, 15267265408, 15275654528, 15284043136, +15292431488, 15300819584, 15309208192, 15317596544, 15325986176, +15334374784, 15342763648, 15351151744, 15359540608, 15367929728, +15376318336, 15384706432, 15393092992, 15401481856, 15409869952, +15418258816, 15426649984, 15435037568, 15443425664, 15451815296, +15460203392, 15468589184, 15476979328, 15485369216, 15493755776, +15502146944, 15510534272, 15518924416, 15527311232, 15535699072, +15544089472, 15552478336, 15560866688, 15569254528, 15577642624, +15586031488, 15594419072, 15602809472, 15611199104, 15619586432, +15627975296, 15636364928, 15644753792, 15653141888, 15661529216, +15669918848, 15678305152, 15686696576, 15695083136, 15703474048, +15711861632, 15720251264, 15728636288, 15737027456, 15745417088, +15753804928, 15762194048, 15770582656, 15778971008, 15787358336, +15795747712, 15804132224, 15812523392, 15820909696, 15829300096, +15837691264, 15846071936, 15854466944, 15862855808, 15871244672, +15879634816, 15888020608, 15896409728, 15904799104, 15913185152, +15921577088, 15929966464, 15938354816, 15946743424, 15955129472, +15963519872, 15971907968, 15980296064, 15988684928, 15997073024, +16005460864, 16013851264, 16022241152, 16030629248, 16039012736, +16047406976, 16055794816, 16064181376, 16072571264, 16080957824, +16089346688, 16097737856, 16106125184, 16114514816, 16122904192, +16131292544, 16139678848, 16148066944, 16156453504, 16164839552, +16173236096, 16181623424, 16190012032, 16198401152, 16206790528, +16215177344, 16223567744, 16231956352, 16240344704, 16248731008, +16257117824, 16265504384, 16273898624, 16282281856, 16290668672, +16299064192, 16307449216, 16315842176, 16324230016, 16332613504, +16341006464, 16349394304, 16357783168, 16366172288, 16374561664, +16382951296, 16391337856, 16399726208, 16408116352, 16416505472, +16424892032, 16433282176, 16441668224, 16450058624, 16458448768, +16466836864, 16475224448, 16483613056, 16492001408, 16500391808, +16508779648, 16517166976, 16525555328, 16533944192, 16542330752, +16550719616, 16559110528, 16567497088, 16575888512, 16584274816, +16592665472, 16601051008, 16609442944, 16617832064, 16626218624, +16634607488, 16642996096, 16651385728, 16659773824, 16668163712, +16676552576, 16684938112, 16693328768, 16701718144, 16710095488, +16718492288, 16726883968, 16735272832, 16743661184, 16752049792, +16760436608, 16768827008, 16777214336, 16785599104, 16793992832, +16802381696, 16810768768, 16819151744, 16827542656, 16835934848, +16844323712, 16852711552, 16861101952, 16869489536, 16877876864, +16886265728, 16894653056, 16903044736, 16911431296, 16919821696, +16928207488, 16936592768, 16944987776, 16953375616, 16961763968, +16970152832, 16978540928, 16986929536, 16995319168, 17003704448, +17012096896, 17020481152, 17028870784, 17037262208, 17045649536, +17054039936, 17062426496, 17070814336, 17079205504, 17087592064, +17095978112, 17104369024, 17112759424, 17121147776, 17129536384, +17137926016, 17146314368, 17154700928, 17163089792, 17171480192, +17179864192, 17188256896, 17196644992, 17205033856, 17213423488, +17221811072, 17230198912, 17238588032, 17246976896, 17255360384, +17263754624, 17272143232, 17280530048, 17288918912, 17297309312, +17305696384, 17314085504, 17322475136, 17330863744, 17339252096, +17347640192, 17356026496, 17364413824, 17372796544, 17381190016, +17389583488, 17397972608, 17406360704, 17414748544, 17423135872, +17431527296, 17439915904, 17448303232, 17456691584, 17465081728, +17473468288, 17481857408, 17490247552, 17498635904, 17507022464, +17515409024, 17523801728, 17532189824, 17540577664, 17548966016, +17557353344, 17565741184, 17574131584, 17582519168, 17590907008, +17599296128, 17607687808, 17616076672, 17624455808, 17632852352, +17641238656, 17649630848, 17658018944, 17666403968, 17674794112, +17683178368, 17691573376, 17699962496, 17708350592, 17716739968, +17725126528, 17733517184, 17741898112, 17750293888, 17758673024, +17767070336, 17775458432, 17783848832, 17792236928, 17800625536, +17809012352, 17817402752, 17825785984, 17834178944, 17842563968, +17850955648, 17859344512, 17867732864, 17876119424, 17884511872, +17892900224, 17901287296, 17909677696, 17918058112, 17926451072, +17934843776, 17943230848, 17951609216, 17960008576, 17968397696, +17976784256, 17985175424, 17993564032, 18001952128, 18010339712, +18018728576, 18027116672, 18035503232, 18043894144, 18052283264, +18060672128, 18069056384, 18077449856, 18085837184, 18094225792, +18102613376, 18111004544, 18119388544, 18127781248, 18136170368, +18144558976, 18152947328, 18161336192, 18169724288, 18178108544, +18186498944, 18194886784, 18203275648, 18211666048, 18220048768, +18228444544, 18236833408, 18245220736] + +cache_sizes = [ +16776896, 16907456, 17039296, 17170112, 17301056, 17432512, 17563072, +17693888, 17824192, 17955904, 18087488, 18218176, 18349504, 18481088, +18611392, 18742336, 18874304, 19004224, 19135936, 19267264, 19398208, +19529408, 19660096, 19791424, 19922752, 20053952, 20184896, 20315968, +20446912, 20576576, 20709184, 20840384, 20971072, 21102272, 21233216, +21364544, 21494848, 21626816, 21757376, 21887552, 22019392, 22151104, +22281536, 22412224, 22543936, 22675264, 22806464, 22935872, 23068096, +23198272, 23330752, 23459008, 23592512, 23723968, 23854912, 23986112, +24116672, 24247616, 24378688, 24509504, 24640832, 24772544, 24903488, +25034432, 25165376, 25296704, 25427392, 25558592, 25690048, 25820096, +25951936, 26081728, 26214208, 26345024, 26476096, 26606656, 26737472, +26869184, 26998208, 27131584, 27262528, 27393728, 27523904, 27655744, +27786688, 27917888, 28049344, 28179904, 28311488, 28441792, 28573504, +28700864, 28835648, 28966208, 29096768, 29228608, 29359808, 29490752, +29621824, 29752256, 29882816, 30014912, 30144448, 30273728, 30406976, +30538432, 30670784, 30799936, 30932672, 31063744, 31195072, 31325248, +31456192, 31588288, 31719232, 31850432, 31981504, 32110784, 32243392, +32372672, 32505664, 32636608, 32767808, 32897344, 33029824, 33160768, +33289664, 33423296, 33554368, 33683648, 33816512, 33947456, 34076992, +34208704, 34340032, 34471744, 34600256, 34734016, 34864576, 34993984, +35127104, 35258176, 35386688, 35518528, 35650624, 35782336, 35910976, +36044608, 36175808, 36305728, 36436672, 36568384, 36699968, 36830656, +36961984, 37093312, 37223488, 37355072, 37486528, 37617472, 37747904, +37879232, 38009792, 38141888, 38272448, 38403392, 38535104, 38660672, +38795584, 38925632, 39059264, 39190336, 39320768, 39452096, 39581632, +39713984, 39844928, 39974848, 40107968, 40238144, 40367168, 40500032, +40631744, 40762816, 40894144, 41023552, 41155904, 41286208, 41418304, +41547712, 41680448, 41811904, 41942848, 42073792, 42204992, 42334912, +42467008, 42597824, 42729152, 42860096, 42991552, 43122368, 43253696, +43382848, 43515712, 43646912, 43777088, 43907648, 44039104, 44170432, +44302144, 44433344, 44564288, 44694976, 44825152, 44956864, 45088448, +45219008, 45350464, 45481024, 45612608, 45744064, 45874496, 46006208, +46136768, 46267712, 46399424, 46529344, 46660672, 46791488, 46923328, +47053504, 47185856, 47316928, 47447872, 47579072, 47710144, 47839936, +47971648, 48103232, 48234176, 48365248, 48496192, 48627136, 48757312, +48889664, 49020736, 49149248, 49283008, 49413824, 49545152, 49675712, +49807168, 49938368, 50069056, 50200256, 50331584, 50462656, 50593472, +50724032, 50853952, 50986048, 51117632, 51248576, 51379904, 51510848, +51641792, 51773248, 51903296, 52035136, 52164032, 52297664, 52427968, +52557376, 52690112, 52821952, 52952896, 53081536, 53213504, 53344576, +53475776, 53608384, 53738816, 53870528, 54000832, 54131776, 54263744, +54394688, 54525248, 54655936, 54787904, 54918592, 55049152, 55181248, +55312064, 55442752, 55574336, 55705024, 55836224, 55967168, 56097856, +56228672, 56358592, 56490176, 56621888, 56753728, 56884928, 57015488, +57146816, 57278272, 57409216, 57540416, 57671104, 57802432, 57933632, +58064576, 58195264, 58326976, 58457408, 58588864, 58720192, 58849984, +58981696, 59113024, 59243456, 59375552, 59506624, 59637568, 59768512, +59897792, 60030016, 60161984, 60293056, 60423872, 60554432, 60683968, +60817216, 60948032, 61079488, 61209664, 61341376, 61471936, 61602752, +61733696, 61865792, 61996736, 62127808, 62259136, 62389568, 62520512, +62651584, 62781632, 62910784, 63045056, 63176128, 63307072, 63438656, +63569216, 63700928, 63831616, 63960896, 64093888, 64225088, 64355392, +64486976, 64617664, 64748608, 64879424, 65009216, 65142464, 65273792, +65402816, 65535424, 65666752, 65797696, 65927744, 66060224, 66191296, +66321344, 66453056, 66584384, 66715328, 66846656, 66977728, 67108672, +67239104, 67370432, 67501888, 67631296, 67763776, 67895104, 68026304, +68157248, 68287936, 68419264, 68548288, 68681408, 68811968, 68942912, +69074624, 69205568, 69337024, 69467584, 69599168, 69729472, 69861184, +69989824, 70122944, 70253888, 70385344, 70515904, 70647232, 70778816, +70907968, 71040832, 71171648, 71303104, 71432512, 71564992, 71695168, +71826368, 71958464, 72089536, 72219712, 72350144, 72482624, 72613568, +72744512, 72875584, 73006144, 73138112, 73268672, 73400128, 73530944, +73662272, 73793344, 73924544, 74055104, 74185792, 74316992, 74448832, +74579392, 74710976, 74841664, 74972864, 75102784, 75233344, 75364544, +75497024, 75627584, 75759296, 75890624, 76021696, 76152256, 76283072, +76414144, 76545856, 76676672, 76806976, 76937792, 77070016, 77200832, +77331392, 77462464, 77593664, 77725376, 77856448, 77987776, 78118336, +78249664, 78380992, 78511424, 78642496, 78773056, 78905152, 79033664, +79166656, 79297472, 79429568, 79560512, 79690816, 79822784, 79953472, +80084672, 80214208, 80346944, 80477632, 80608576, 80740288, 80870848, +81002048, 81133504, 81264448, 81395648, 81525952, 81657536, 81786304, +81919808, 82050112, 82181312, 82311616, 82443968, 82573376, 82705984, +82835776, 82967744, 83096768, 83230528, 83359552, 83491264, 83622464, +83753536, 83886016, 84015296, 84147776, 84277184, 84409792, 84540608, +84672064, 84803008, 84934336, 85065152, 85193792, 85326784, 85458496, +85589312, 85721024, 85851968, 85982656, 86112448, 86244416, 86370112, +86506688, 86637632, 86769344, 86900672, 87031744, 87162304, 87293632, +87424576, 87555392, 87687104, 87816896, 87947968, 88079168, 88211264, +88341824, 88473152, 88603712, 88735424, 88862912, 88996672, 89128384, +89259712, 89390272, 89521984, 89652544, 89783872, 89914816, 90045376, +90177088, 90307904, 90438848, 90569152, 90700096, 90832832, 90963776, +91093696, 91223744, 91356992, 91486784, 91618496, 91749824, 91880384, +92012224, 92143552, 92273344, 92405696, 92536768, 92666432, 92798912, +92926016, 93060544, 93192128, 93322816, 93453632, 93583936, 93715136, +93845056, 93977792, 94109504, 94240448, 94371776, 94501184, 94632896, +94764224, 94895552, 95023424, 95158208, 95287744, 95420224, 95550016, +95681216, 95811904, 95943872, 96075328, 96203584, 96337856, 96468544, +96599744, 96731072, 96860992, 96992576, 97124288, 97254848, 97385536, +97517248, 97647808, 97779392, 97910464, 98041408, 98172608, 98303168, +98434496, 98565568, 98696768, 98827328, 98958784, 99089728, 99220928, +99352384, 99482816, 99614272, 99745472, 99876416, 100007104, +100138048, 100267072, 100401088, 100529984, 100662592, 100791872, +100925248, 101056064, 101187392, 101317952, 101449408, 101580608, +101711296, 101841728, 101973824, 102104896, 102235712, 102366016, +102498112, 102628672, 102760384, 102890432, 103021888, 103153472, +103284032, 103415744, 103545152, 103677248, 103808576, 103939648, +104070976, 104201792, 104332736, 104462528, 104594752, 104725952, +104854592, 104988608, 105118912, 105247808, 105381184, 105511232, +105643072, 105774784, 105903296, 106037056, 106167872, 106298944, +106429504, 106561472, 106691392, 106822592, 106954304, 107085376, +107216576, 107346368, 107478464, 107609792, 107739712, 107872192, +108003136, 108131392, 108265408, 108396224, 108527168, 108657344, +108789568, 108920384, 109049792, 109182272, 109312576, 109444928, +109572928, 109706944, 109837888, 109969088, 110099648, 110230976, +110362432, 110492992, 110624704, 110755264, 110886208, 111017408, +111148864, 111279296, 111410752, 111541952, 111673024, 111803456, +111933632, 112066496, 112196416, 112328512, 112457792, 112590784, +112715968, 112852672, 112983616, 113114944, 113244224, 113376448, +113505472, 113639104, 113770304, 113901376, 114031552, 114163264, +114294592, 114425536, 114556864, 114687424, 114818624, 114948544, +115080512, 115212224, 115343296, 115473472, 115605184, 115736128, +115867072, 115997248, 116128576, 116260288, 116391488, 116522944, +116652992, 116784704, 116915648, 117046208, 117178304, 117308608, +117440192, 117569728, 117701824, 117833024, 117964096, 118094656, +118225984, 118357312, 118489024, 118617536, 118749632, 118882112, +119012416, 119144384, 119275328, 119406016, 119537344, 119668672, +119798464, 119928896, 120061376, 120192832, 120321728, 120454336, +120584512, 120716608, 120848192, 120979136, 121109056, 121241408, +121372352, 121502912, 121634752, 121764416, 121895744, 122027072, +122157632, 122289088, 122421184, 122550592, 122682944, 122813888, +122945344, 123075776, 123207488, 123338048, 123468736, 123600704, +123731264, 123861952, 123993664, 124124608, 124256192, 124386368, +124518208, 124649024, 124778048, 124911296, 125041088, 125173696, +125303744, 125432896, 125566912, 125696576, 125829056, 125958592, +126090304, 126221248, 126352832, 126483776, 126615232, 126746432, +126876608, 127008704, 127139392, 127270336, 127401152, 127532224, +127663552, 127794752, 127925696, 128055232, 128188096, 128319424, +128449856, 128581312, 128712256, 128843584, 128973632, 129103808, +129236288, 129365696, 129498944, 129629888, 129760832, 129892288, +130023104, 130154048, 130283968, 130416448, 130547008, 130678336, +130807616, 130939456, 131071552, 131202112, 131331776, 131464384, +131594048, 131727296, 131858368, 131987392, 132120256, 132250816, +132382528, 132513728, 132644672, 132774976, 132905792, 133038016, +133168832, 133299392, 133429312, 133562048, 133692992, 133823296, +133954624, 134086336, 134217152, 134348608, 134479808, 134607296, +134741056, 134872384, 135002944, 135134144, 135265472, 135396544, +135527872, 135659072, 135787712, 135921472, 136052416, 136182848, +136313792, 136444864, 136576448, 136707904, 136837952, 136970048, +137099584, 137232064, 137363392, 137494208, 137625536, 137755712, +137887424, 138018368, 138149824, 138280256, 138411584, 138539584, +138672832, 138804928, 138936128, 139066688, 139196864, 139328704, +139460032, 139590208, 139721024, 139852864, 139984576, 140115776, +140245696, 140376512, 140508352, 140640064, 140769856, 140902336, +141032768, 141162688, 141294016, 141426496, 141556544, 141687488, +141819584, 141949888, 142080448, 142212544, 142342336, 142474432, +142606144, 142736192, 142868288, 142997824, 143129408, 143258944, +143392448, 143523136, 143653696, 143785024, 143916992, 144045632, +144177856, 144309184, 144440768, 144570688, 144701888, 144832448, +144965056, 145096384, 145227584, 145358656, 145489856, 145620928, +145751488, 145883072, 146011456, 146144704, 146275264, 146407232, +146538176, 146668736, 146800448, 146931392, 147062336, 147193664, +147324224, 147455936, 147586624, 147717056, 147848768, 147979456, +148110784, 148242368, 148373312, 148503232, 148635584, 148766144, +148897088, 149028416, 149159488, 149290688, 149420224, 149551552, +149683136, 149814976, 149943616, 150076352, 150208064, 150338624, +150470464, 150600256, 150732224, 150862784, 150993088, 151125952, +151254976, 151388096, 151519168, 151649728, 151778752, 151911104, +152042944, 152174144, 152304704, 152435648, 152567488, 152698816, +152828992, 152960576, 153091648, 153222976, 153353792, 153484096, +153616192, 153747008, 153878336, 154008256, 154139968, 154270912, +154402624, 154533824, 154663616, 154795712, 154926272, 155057984, +155188928, 155319872, 155450816, 155580608, 155712064, 155843392, +155971136, 156106688, 156237376, 156367424, 156499264, 156630976, +156761536, 156892352, 157024064, 157155008, 157284416, 157415872, +157545536, 157677248, 157810496, 157938112, 158071744, 158203328, +158334656, 158464832, 158596288, 158727616, 158858048, 158988992, +159121216, 159252416, 159381568, 159513152, 159645632, 159776192, +159906496, 160038464, 160169536, 160300352, 160430656, 160563008, +160693952, 160822208, 160956352, 161086784, 161217344, 161349184, +161480512, 161611456, 161742272, 161873216, 162002752, 162135872, +162266432, 162397888, 162529216, 162660032, 162790976, 162922048, +163052096, 163184576, 163314752, 163446592, 163577408, 163707968, +163839296, 163969984, 164100928, 164233024, 164364224, 164494912, +164625856, 164756672, 164887616, 165019072, 165150016, 165280064, +165412672, 165543104, 165674944, 165805888, 165936832, 166067648, +166198336, 166330048, 166461248, 166591552, 166722496, 166854208, +166985408, 167116736, 167246656, 167378368, 167508416, 167641024, +167771584, 167903168, 168034112, 168164032, 168295744, 168427456, +168557632, 168688448, 168819136, 168951616, 169082176, 169213504, +169344832, 169475648, 169605952, 169738048, 169866304, 169999552, +170131264, 170262464, 170393536, 170524352, 170655424, 170782016, +170917696, 171048896, 171179072, 171310784, 171439936, 171573184, +171702976, 171835072, 171966272, 172097216, 172228288, 172359232, +172489664, 172621376, 172747712, 172883264, 173014208, 173144512, +173275072, 173407424, 173539136, 173669696, 173800768, 173931712, +174063424, 174193472, 174325696, 174455744, 174586816, 174718912, +174849728, 174977728, 175109696, 175242688, 175374272, 175504832, +175636288, 175765696, 175898432, 176028992, 176159936, 176291264, +176422592, 176552512, 176684864, 176815424, 176946496, 177076544, +177209152, 177340096, 177470528, 177600704, 177731648, 177864256, +177994816, 178126528, 178257472, 178387648, 178518464, 178650176, +178781888, 178912064, 179044288, 179174848, 179305024, 179436736, +179568448, 179698496, 179830208, 179960512, 180092608, 180223808, +180354752, 180485696, 180617152, 180748096, 180877504, 181009984, +181139264, 181272512, 181402688, 181532608, 181663168, 181795136, +181926592, 182057536, 182190016, 182320192, 182451904, 182582336, +182713792, 182843072, 182976064, 183107264, 183237056, 183368384, +183494848, 183631424, 183762752, 183893824, 184024768, 184154816, +184286656, 184417984, 184548928, 184680128, 184810816, 184941248, +185072704, 185203904, 185335616, 185465408, 185596352, 185727296, +185859904, 185989696, 186121664, 186252992, 186383552, 186514112, +186645952, 186777152, 186907328, 187037504, 187170112, 187301824, +187429184, 187562048, 187693504, 187825472, 187957184, 188087104, +188218304, 188349376, 188481344, 188609728, 188743616, 188874304, +189005248, 189136448, 189265088, 189396544, 189528128, 189660992, +189791936, 189923264, 190054208, 190182848, 190315072, 190447424, +190577984, 190709312, 190840768, 190971328, 191102656, 191233472, +191364032, 191495872, 191626816, 191758016, 191888192, 192020288, +192148928, 192282176, 192413504, 192542528, 192674752, 192805952, +192937792, 193068608, 193198912, 193330496, 193462208, 193592384, +193723456, 193854272, 193985984, 194116672, 194247232, 194379712, +194508352, 194641856, 194772544, 194900672, 195035072, 195166016, +195296704, 195428032, 195558592, 195690304, 195818176, 195952576, +196083392, 196214336, 196345792, 196476736, 196607552, 196739008, +196869952, 197000768, 197130688, 197262784, 197394368, 197523904, +197656384, 197787584, 197916608, 198049472, 198180544, 198310208, +198442432, 198573632, 198705088, 198834368, 198967232, 199097792, +199228352, 199360192, 199491392, 199621696, 199751744, 199883968, +200014016, 200146624, 200276672, 200408128, 200540096, 200671168, +200801984, 200933312, 201062464, 201194944, 201326144, 201457472, +201588544, 201719744, 201850816, 201981632, 202111552, 202244032, +202374464, 202505152, 202636352, 202767808, 202898368, 203030336, +203159872, 203292608, 203423296, 203553472, 203685824, 203816896, +203947712, 204078272, 204208192, 204341056, 204472256, 204603328, +204733888, 204864448, 204996544, 205125568, 205258304, 205388864, +205517632, 205650112, 205782208, 205913536, 206044736, 206176192, +206307008, 206434496, 206569024, 206700224, 206831168, 206961856, +207093056, 207223616, 207355328, 207486784, 207616832, 207749056, +207879104, 208010048, 208141888, 208273216, 208404032, 208534336, +208666048, 208796864, 208927424, 209059264, 209189824, 209321792, +209451584, 209582656, 209715136, 209845568, 209976896, 210106432, +210239296, 210370112, 210501568, 210630976, 210763712, 210894272, +211024832, 211156672, 211287616, 211418176, 211549376, 211679296, +211812032, 211942592, 212074432, 212204864, 212334016, 212467648, +212597824, 212727616, 212860352, 212991424, 213120832, 213253952, +213385024, 213515584, 213645632, 213777728, 213909184, 214040128, +214170688, 214302656, 214433728, 214564544, 214695232, 214826048, +214956992, 215089088, 215219776, 215350592, 215482304, 215613248, +215743552, 215874752, 216005312, 216137024, 216267328, 216399296, +216530752, 216661696, 216790592, 216923968, 217054528, 217183168, +217316672, 217448128, 217579072, 217709504, 217838912, 217972672, +218102848, 218233024, 218364736, 218496832, 218627776, 218759104, +218888896, 219021248, 219151936, 219281728, 219413056, 219545024, +219675968, 219807296, 219938624, 220069312, 220200128, 220331456, +220461632, 220592704, 220725184, 220855744, 220987072, 221117888, +221249216, 221378368, 221510336, 221642048, 221772736, 221904832, +222031808, 222166976, 222297536, 222428992, 222559936, 222690368, +222820672, 222953152, 223083968, 223213376, 223345984, 223476928, +223608512, 223738688, 223869376, 224001472, 224132672, 224262848, +224394944, 224524864, 224657344, 224788288, 224919488, 225050432, +225181504, 225312704, 225443776, 225574592, 225704768, 225834176, +225966784, 226097216, 226229824, 226360384, 226491712, 226623424, +226754368, 226885312, 227015104, 227147456, 227278528, 227409472, +227539904, 227669696, 227802944, 227932352, 228065216, 228196288, +228326464, 228457792, 228588736, 228720064, 228850112, 228981056, +229113152, 229243328, 229375936, 229505344, 229636928, 229769152, +229894976, 230030272, 230162368, 230292416, 230424512, 230553152, +230684864, 230816704, 230948416, 231079616, 231210944, 231342016, +231472448, 231603776, 231733952, 231866176, 231996736, 232127296, +232259392, 232388672, 232521664, 232652608, 232782272, 232914496, +233043904, 233175616, 233306816, 233438528, 233569984, 233699776, +233830592, 233962688, 234092224, 234221888, 234353984, 234485312, +234618304, 234749888, 234880832, 235011776, 235142464, 235274048, +235403456, 235535936, 235667392, 235797568, 235928768, 236057152, +236190272, 236322752, 236453312, 236583616, 236715712, 236846528, +236976448, 237108544, 237239104, 237371072, 237501632, 237630784, +237764416, 237895232, 238026688, 238157632, 238286912, 238419392, +238548032, 238681024, 238812608, 238941632, 239075008, 239206336, +239335232, 239466944, 239599168, 239730496, 239861312, 239992384, +240122816, 240254656, 240385856, 240516928, 240647872, 240779072, +240909632, 241040704, 241171904, 241302848, 241433408, 241565248, +241696192, 241825984, 241958848, 242088256, 242220224, 242352064, +242481856, 242611648, 242744896, 242876224, 243005632, 243138496, +243268672, 243400384, 243531712, 243662656, 243793856, 243924544, +244054592, 244187072, 244316608, 244448704, 244580032, 244710976, +244841536, 244972864, 245104448, 245233984, 245365312, 245497792, +245628736, 245759936, 245889856, 246021056, 246152512, 246284224, +246415168, 246545344, 246675904, 246808384, 246939584, 247070144, +247199552, 247331648, 247463872, 247593536, 247726016, 247857088, +247987648, 248116928, 248249536, 248380736, 248512064, 248643008, +248773312, 248901056, 249036608, 249167552, 249298624, 249429184, +249560512, 249692096, 249822784, 249954112, 250085312, 250215488, +250345792, 250478528, 250608704, 250739264, 250870976, 251002816, +251133632, 251263552, 251395136, 251523904, 251657792, 251789248, +251919424, 252051392, 252182464, 252313408, 252444224, 252575552, +252706624, 252836032, 252968512, 253099712, 253227584, 253361728, +253493056, 253623488, 253754432, 253885504, 254017216, 254148032, +254279488, 254410432, 254541376, 254672576, 254803264, 254933824, +255065792, 255196736, 255326528, 255458752, 255589952, 255721408, +255851072, 255983296, 256114624, 256244416, 256374208, 256507712, +256636096, 256768832, 256900544, 257031616, 257162176, 257294272, +257424448, 257555776, 257686976, 257818432, 257949632, 258079552, +258211136, 258342464, 258473408, 258603712, 258734656, 258867008, +258996544, 259127744, 259260224, 259391296, 259522112, 259651904, +259784384, 259915328, 260045888, 260175424, 260308544, 260438336, +260570944, 260700992, 260832448, 260963776, 261092672, 261226304, +261356864, 261487936, 261619648, 261750592, 261879872, 262011968, +262143424, 262274752, 262404416, 262537024, 262667968, 262799296, +262928704, 263061184, 263191744, 263322944, 263454656, 263585216, +263716672, 263847872, 263978944, 264108608, 264241088, 264371648, +264501184, 264632768, 264764096, 264895936, 265024576, 265158464, +265287488, 265418432, 265550528, 265681216, 265813312, 265943488, +266075968, 266206144, 266337728, 266468032, 266600384, 266731072, +266862272, 266993344, 267124288, 267255616, 267386432, 267516992, +267648704, 267777728, 267910592, 268040512, 268172096, 268302784, +268435264, 268566208, 268696256, 268828096, 268959296, 269090368, +269221312, 269352256, 269482688, 269614784, 269745856, 269876416, +270007616, 270139328, 270270272, 270401216, 270531904, 270663616, +270791744, 270924736, 271056832, 271186112, 271317184, 271449536, +271580992, 271711936, 271843136, 271973056, 272105408, 272236352, +272367296, 272498368, 272629568, 272759488, 272891456, 273022784, +273153856, 273284672, 273415616, 273547072, 273677632, 273808448, +273937088, 274071488, 274200896, 274332992, 274463296, 274595392, +274726208, 274857536, 274988992, 275118656, 275250496, 275382208, +275513024, 275643968, 275775296, 275906368, 276037184, 276167872, +276297664, 276429376, 276560576, 276692672, 276822976, 276955072, +277085632, 277216832, 277347008, 277478848, 277609664, 277740992, +277868608, 278002624, 278134336, 278265536, 278395328, 278526784, +278657728, 278789824, 278921152, 279052096, 279182912, 279313088, +279443776, 279576256, 279706048, 279838528, 279969728, 280099648, +280230976, 280361408, 280493632, 280622528, 280755392, 280887104, +281018176, 281147968, 281278912, 281411392, 281542592, 281673152, +281803712, 281935552, 282066496, 282197312, 282329024, 282458816, +282590272, 282720832, 282853184, 282983744, 283115072, 283246144, +283377344, 283508416, 283639744, 283770304, 283901504, 284032576, +284163136, 284294848, 284426176, 284556992, 284687296, 284819264, +284950208, 285081536] +``` diff --git a/public/content/translations/hu/developers/docs/consensus-mechanisms/pow/mining/mining-algorithms/index.md b/public/content/translations/hu/developers/docs/consensus-mechanisms/pow/mining/mining-algorithms/index.md new file mode 100644 index 00000000000..bcba3173e15 --- /dev/null +++ b/public/content/translations/hu/developers/docs/consensus-mechanisms/pow/mining/mining-algorithms/index.md @@ -0,0 +1,37 @@ +--- +title: Bányászati algoritmusok +description: Az Ethereum-bányászat algoritmusainak bemutatása. +lang: hu +--- + + +A proof-of-work (munkaigazolás) már nem az Ethereum konszenzusmechanizmus alapja, tehát a bányászatot kikapcsolták. Ehelyett az Ethereumot úgy biztosítják a validátorok, hogy letétbe helyeznek ETH-t. Ön is letétbe helyezheti a rendelkezésére álló ETH-t. Tudjon meg többet a egyesítés (Merge), proof-of-stake (letéti igazolás) és letétbe helyezés témákról. Ez az oldal csak elavult témákat tartalmaz. + + +Az Ethereum-bányászat egy Ethash nevű algoritmust használt. k az algoritmusnak az a lényege, hogy a bányász megpróbál egy nonce értéket találni nagy számítási kapacitás révén, hogy a létrejövő hash kisebb legyen, mint a kiszámolt nehézség határértéke. Ez a nehézségi szint dinamikusan változtatható, így a blokkok létrehozása rendszeresen meg tud történni. + +## Előfeltételek {#prerequisites} + +A jelen téma könnyebb megértéséhez javasoljuk, hogy előbb tekintse meg a [proof-of-work konszenzusról](/developers/docs/consensus-mechanisms/pow) és a [bányászatról](/developers/docs/consensus-mechanisms/pow/mining) szóló oldalakat. + +## Dagger Hashimoto {#dagger-hashimoto} + +A Dagger Hashimoto az Ethereum-bányászat korábbi algoritmusa volt a fejlesztés idején, melyet az Ethash váltott le. Ez két különböző algoritmus, a Dagger és a Hashimoto, összeolvadása volt. Ezt a fejlesztés idején használták, és az Ethereum főhálózat bevezetésekor már az Ethash működött. + +A [Dagger](http://www.hashcash.org/papers/dagger.html) bevezette az [irányított aciklikus gráf (Directed Acyclic Graph)](https://en.wikipedia.org/wiki/Directed_acyclic_graph) generációját, melyeknek véletlenszerű szeleteit hashelik össze. A lényegi elve az, hogy a nonce a nagy adatfából csak egy kis részt igényel. A bányászatnál nem lehet újrakalkulálni a nonce-hoz az alfát – tehát tárolni kell a fát –, de az egy nonce értékű ellenőrzésnél ez rendben van. A Dagger a létező algoritmusok, mint a Scrypt, alternatívája volt, ami sok memóriát igényelt (memory hard), de nehéz volt ellenőrizni, hogy a memóriahasználat mikor éri el a valóban biztonságos szintet. A Dagger ugyanakkor sebezhető volt a megosztott memóriaalapú hardver-gyorsítás esetén, ezért a kutatás során elvetették. + +A [Hashimoto](http://diyhpl.us/%7Ebryan/papers2/bitcoin/meh/hashimoto.pdf) egy olyan algoritmus, amely ASIC-ellenállást biztosít az I/O bound révén (mivel a memóriaolvasások a bányászat behatároló tényezői). A lényeg az, hogy a RAM elérhetőbb, mint a számítási kapacitás; sok milliárd dollárnyi kutatás már optimalizálta a RAM használatot különféle esetekre, ami gyakran szinte véletlenszerű elérési mintákat (tehát a véletlenszerű memóriaelérést is) foglal magában. Ennek eredményeként a meglévő RAM elég közel van az optimálishoz, hogy értékelje az algoritmust. A Hashimoto a blokkláncot adatforrásnak használta, így megfelelt a fenti (1) és (3) pontoknak. + +A Dagger-Hashimoto a Dagger és a Hashimoto algoritmusok módosított változatát használta. A Dagger-Hashimoto és a Hashimoto között az a különbség, hogy nem blokkláncot használ adatforrásként, hanem egy személyre szabott adathalmazt, amely a blokkadatokból frissül minden N-edik blokknál. Az adathalmaz a Dagger-algoritmussal készült, amellyel hatékonyan lehetett minden nonce-ra egy alhalmazt kikalkulálni a könnyű kliens ellenőrzéshez. A Dagger-Hashimoto és a Dagger közötti különbség az, hogy a blokklekérdezéshez használt adathalmaz félig állandó, és esetileg frissítik (például hetente). Így az adathalmaz létrehozásának erőfeszítése nullához közelít, így a megosztott memória felgyorsításával kapcsolatos problémák (lásd Sergio Lerner) elhanyagolhatóvá váltak. + +Bővebben a [Dagger-Hashimoto-ról](/developers/docs/consensus-mechanisms/pow/mining-algorithms/dagger-hashimoto). + +## Ethash {#ethash} + +Az Ethash az a bányászati algoritmus, melyet az Ethereum főhálózaton használtak a ma már kivezetett proof-of-work architektúrában. Az Ethash az új neve a Dagger-Hashimoto egy specifikus verziójának, mivel azt jelentősen megváltoztatták, de mégis megmaradtak az alapvető elvei az elődjének. Az Ethereum-főhálózat csak az Ethasht használta, mivel Dagger-Hashimoto a kutatás-fejlesztés idején működött, és még a bányászat megkezdése előtt lecserélték. + +[Bővebben az Ethashről](/developers/docs/consensus-mechanisms/pow/mining-algorithms/ethash). + +## További olvasnivaló {#further-reading} + +_Ismersz olyan közösségi anyagot, mely segített neked? Módosítsd az oldalt és add hozzá!_ diff --git a/public/content/translations/hu/developers/docs/dapps/index.md b/public/content/translations/hu/developers/docs/dapps/index.md index e6f46467295..6a41dc7aae7 100644 --- a/public/content/translations/hu/developers/docs/dapps/index.md +++ b/public/content/translations/hu/developers/docs/dapps/index.md @@ -4,7 +4,7 @@ description: lang: hu --- -Egy decentralizált applikáció (dapp) olyan applikáció, mely egy olyan decentralizált hálózatra épült, ami egyesít egy [okosszerződést](/developers/docs/smart-contracts/) és egy frontend felhasználói felületet. Megjegyzésül: az Ethereum okosszerződések elérhetőek és transzparensek - mint a nyílt API-ok - így a dappod tartalmazhat olyan okosszerződést, melyet másvalaki írt. +A decentralizált alkalmazás (dapp) egy olyan applikáció, amely olyan decentralizált hálózatra épült, ami egy [okosszerződést](/developers/docs/smart-contracts/) és egy frontend felhasználói felületet egyesít magában. Megjegyzésül: az Ethereum okosszerződések elérhetőek és transzparensek - mint a nyílt API-ok - így a dappod tartalmazhat olyan okosszerződést, melyet másvalaki írt. ## Előfeltételek {#prerequisites} @@ -16,48 +16,73 @@ A dapp egy olyan backend kód, mely egy decentralizált peer-to-peer hálózaton Egy dappnak bármely nyelven íródott frontend kódja vagy felhasználói felülete lehet (akárcsak az appoknak), mely hívásokat indíthat a backend felé. Továbbá a frontendje olyan decentralizált tárhelyeken lehet, mint az [IPFS](https://ipfs.io/). -- **Decentalizáltak**, mely függetlenné teszi őket, és senki sem irányítja őket. +- **Decentralizált** – a dapp-ok az Ethereumon működnek, azaz egy nyitott, nyilvános, decentralizált platformon, ahol egyetlen személy vagy csoportnak sem irányít - **Determinisztikusak** vagyis ugyanazt a függvényt hajtják végre a végrehajtási környezettől függetlenül. -- **Turing kompatibilisek**, ami azt jelenti, hogy ha adottak az erőforrások, akkor a dapp bármilyen parancsot végre tud hajtani. -- **Izoláltak**, ami azt jelenti, hogy egy virtuális környezetben futnak le, melyek Ethereum Virtuális Gépként (EVM) ismerünk, így ha az okosszerződésnek van egy bugja, nem fogja az akadályozni a blokklánc hálózat működését. +- **Turing-teljes** – a dappok képesek végrehajtani bármilyen akciót, ha a megfelelő erőforrások rendelkezésre állnak +- **Izolált** – a dappok egy virtuális környezetben, az Ethereum Virtuális Gépen futnak, így ha az okosszerződésben hiba van, az nem érinti a blokklánchálózat normál működését ### Az okosszerződésekről {#on-smart-contracts} -Hogy bevezessük a dappokat, először be kell vezetnünk az okosszerződéseket – a dapp backendjét jobb kifejezés híján. Részletes áttekintésért keresd fel az [okosszerződések](/developers/docs/smart-contracts/) oldalt. +Hogy bevezessük a dappokat, először be kell vezetnünk az okosszerződéseket – a dapp backendjét jobb kifejezés híján. A részletes áttekintéshez keresse fel az [okosszerződések](/developers/docs/smart-contracts/) oldalt. -Az okosszerződés olyan kód, mely az Ethereum blokkláncon fut és pontosan úgy, ahogyan programozták. Amint feltelepíted őket a hálózatra, nem tudod megváltoztatni őket. A dappok decentralizáltak lehetnek, mivel a szerződésbe írt logika irányítja őket, nem pedig egy egyén vagy egy vállalat. Ez azt is jelenti, hogy nagyon óvatosan kell megtervezned a szerződéseidet és alaposan le kell tesztelned őket. +Az okosszerződés olyan kód, mely az Ethereum blokkláncon fut és pontosan úgy, ahogyan programozták. Amint az okosszerződések feltelepültek a hálózatra, azok többé nem módosíthatók. A dappok decentralizáltak lehetnek, mivel a szerződésbe írt logika irányítja őket, nem pedig egy egyén vagy egy vállalat. Ez azt is jelenti, hogy nagyon óvatosan kell megtervezned a szerződéseidet és alaposan le kell tesztelned őket. ## A dapp fejlesztés előnyei {#benefits-of-dapp-development} -- **Nulla állásidő** – amint az alkalmazás alapjául szolgáló okosszerződés telepítésre és a blokkláncra kerül, a hálózat egésze mindig képes lesz kiszolgálni a szerződéssel interakcióba lépő klienseket. Rosszindulatú szereplők emiatt nem tudnak szolgáltatásmegtagadási támadásokat indítani az egyes dappok ellen. +- **Nulla állásidő** – amint az alkalmazás alapjául szolgáló okosszerződés telepítésre kerül a blokkláncon, a hálózat állandóan készen áll kiszolgálni a szerződéssel interakcióba lépő klienseket. Rosszindulatú szereplők emiatt nem tudnak szolgáltatásmegtagadási támadásokat indítani az egyes dappok ellen. - **Adatvédelem** – nem kell igazolnod a valódi személyazonosságodat, hogy interakcióba lépj egy dappal. - **Cenzúra rezisztancia** – nincs olyan egyedüli entitás a hálózaton, mely megakadályozhatná a felhasználókat abban, hogy tranzakciókat indítsanak, dappokat telepítsenek vagy adatot olvassanak a blokkláncról. - **Teljes adat integritás** – a blokkláncon tárolt adatot nem megváltoztatható és nem megkérdőjelezhető a kriptográfiai primitíveknek köszönhetően. Rosszindulatú szereplők nem tudnak tranzakciókat vagy egyéb más adatot hamaisítni, amelyet publikáltak. -- **Bizalommentes számítás/hitelesíthető viselkedés** – az okosszerződéseket lehet analizálni és garantált, hogy megjósolható módon fognak végbe menni anélkül, hogy meg kellene bízni egy központi hatóságban. Ez nem igaz a hagyományos modellek esetében; ha például online bankolást használunk, meg kell bíznunk a pénzintézetekben, hogy nem fognak visszaélni a pénzügyi adatainkkal, megmásítani a feljegyzéseket vagy hacker támadást elszenvedni. +- **Bizalommentes számítás/hitelesíthető viselkedés** – az okosszerződéseket lehet elemezni és garantált, hogy megjósolható módon fognak végbe menni anélkül, hogy meg kellene bízni egy központi hatóságban. Ez nem igaz a hagyományos modellek esetében; ha például online bankolást használunk, meg kell bíznunk a pénzintézetekben, hogy nem fognak visszaélni a pénzügyi adatainkkal, megmásítani a feljegyzéseket vagy hacker támadást elszenvedni. -## A dapp fejlesztés visszáságai {#implications-of-dapp-development} +## A dapp-fejlesztés hátrányai {#drawbacks-of-dapp-development} -- **Karbantartás** – a dappokat nehezebb karbantartani, mivel a blokkláncra publikált kódot és az adatot nehezebb módosítani. A fejlesztők számára nehézkes frissíteni a dappjukat (vagy a dapp által tárolt mögöttes adatot), amint felkerültek a blokkláncra - még akkor is ha bugokat vagy biztonsági kockázatokat fedeztek fel a régi verzióban. -- **Teljesítmény költség** – nagy a teljesítmény költség és a skálázás nagyon nehéz. Ahhoz, hogy azt a biztonsági, integritási, átláthatósági és megbízhatósági szintet elérjük, melyre az Ethereum törekszik, minden egyes csomópont lefuttatja és eltárolja az összes tranzakciót. Ezen felül a proof-of-work is időbe telik. Egy egyszerű számolgatás ezt a költséget körülbelül az 1,000,000 szorosára becsüli, mintha az egy általános számítás lett volna. -- **Hálózati torlódás** – legalábbis a jelenlegi modell szerint, ha egy dapp túl sok számítási kapacitást használ fel, akkor a teljes hálózat feltorlódik. Jelenleg a hálózat körülbelül 10 tranzakciót tud feldolgozni egy másodperc alatt; ha ennél gyorsabban küldenek be tranzakciókat, akkor a feldolgozatlan tranzakciók száma gyorsan felfújódhat. -- **Felhasználói élmény** – nehezebb felhasználóbarát élményeket megalkotni: Az átlag végfelhasználó túl nehéznek találhatja az eszközkészlet felállítását ahhoz, hogy a blokklánccal valóban biztonságos módon interakcióba léphessen. -- **Centralizáció** – Felhasználóbarát és fejlesztőbarát megoldások, melyek az Ethereum alaprétegére épültek, végül mégis úgy nézhetnek ki, mint a centralizált szolgáltatások: például az ilyen szolgáltatások a kulcsokat és más érzékeny információkat a szerver oldalon tárolhatják, a frontendnek egy centralizált szerver szolgálhatja ki, vagy a fontos üzleti logikát egy centralizált szerver végzi, mielőtt felkerült volna a blokkláncra. Ez kizárja rengeteg (ha nem az összes) előnyét a blokkláncnak a hagyományos modellel szemben. +- **Karbantartás** – a dappokat nehezebb karbantartani, mivel a blokkláncra publikált kódot és az adatot nehezebb módosítani. A fejlesztők számára nehézkes frissíteni a dappjukat (vagy a dapp által tárolt mögöttes adatot), amint felkerültek a blokkláncra – még akkor is ha hibákat vagy biztonsági kockázatokat fedeztek fel a régi verzióban. +- **Végrehajtási költség** – magas a végrehajtási költség, a skálázás pedig nagyon nehéz. Ahhoz, hogy azt a biztonsági, integritási, átláthatósági és megbízhatósági szintet elérjük, melyre az Ethereum törekszik, minden egyes csomópont lefuttatja és eltárolja az összes tranzakciót. Ezen felül a proof-of-work konszenzus is időbe telik. +- **Hálózati torlódás** – ha egy dapp túl sok számítási kapacitást használ fel, akkor a teljes hálózat feltorlódik. Jelenleg a hálózat körülbelül 10 tranzakciót tud feldolgozni egy másodperc alatt; ha ennél gyorsabban küldenek be tranzakciókat, akkor a feldolgozatlan tranzakciók száma gyorsan felfújódhat. +- **Felhasználói élmény** – nehezebb felhasználóbarát élményeket adni, mivel az átlagos felhasználók túl nehéznek találhatják az eszközkészlet felállítását ahhoz, hogy a blokklánccal valóban biztonságos módon interakcióba léphessenek. +- **Centralizálás** – előfordulhat, hogy a felhasználó- és fejlesztőbarát megoldások, amelyek az Ethereum alaprétegére épülnek, végül centralizált szolgáltatásként fognak működni. Például az ilyen szolgáltatások kulcsokat vagy más bizalmas információkat tárolnak a szerveroldalon, centralizált szervert használnak a frontend kiszolgálására, vagy fontos üzleti logikákat futtatnak egy centralizált szerveren, mielőtt a blokkláncra írnának. Ez kizárja rengeteg (ha nem az összes) előnyét a blokkláncnak a hagyományos modellel szemben. -## Dapp eszközök {#dapp-tools} +## Ön inkább vizuális típus? {#visual-learner} -**One Click Dapp** **_- FOSS eszköz, mely egy dapp frontendet generál egy ABI-ból._** + + +## Eszközök a dappok létrehozásához {#dapp-tools} + +**Scaffold-ETH _– Próbálja ki a Solidity megoldást olyan frontenddel, amely illeszkedik az Ön okosszerződéséhez._** + +- [GitHub](https://github.com/austintgriffith/scaffold-eth) +- [Példa egy dappra](https://punkwallet.io/) + +**Create Eth App _– Hozzon létre Ethereum-alapú alkalmazásokat egy paranccsal._** + +- [GitHub](https://github.com/paulrberg/create-eth-app) + +**One Click Dapp _- FOSS-eszköz dapp-frontendek készítéshez egy [ABI-ból](/glossary/#abi)._** - [oneclickdapp.com](https://oneclickdapp.com) - [GitHub](https://github.com/oneclickdapp/oneclickdapp-v1) -**Etherflow** **_- FOSS leteszteljék a csomópontjukat & összeálítsanak valamint debugoljanak RPC hívásokat a böngészőből._** +**Etherflow _– FOSS-eszköz az Ethereum fejlesztők számára, amellyel tesztelheti csomópontjukat, illetve RPC-hívásokat állíthatnak össze és debuggolhatnak a böngészőből._** - [etherflow.quiknode.io](https://etherflow.quiknode.io/) - [GitHub](https://github.com/abunsen/etherflow) +**thirdweb _– SDK-k minden nyelven, okosszerződések, eszközök és infrastruktúra a web3 fejlesztéshez._** + +- [Honlap](https://thirdweb.com/) +- [Dokumentáció](https://portal.thirdweb.com/) +- [GitHub](https://github.com/thirdweb-dev/) + ## További olvasnivaló {#further-reading} -_Ismersz olyan közösségi anyagot, amely segített neked? Módosítsd az oldalt és add hozzá!_ +- [Fedezze fel a dappokat](/dapps) +- [A web 3.0 alkalmazások architektúrája](https://www.preethikasireddy.com/post/the-architecture-of-a-web-3-0-application) – _Preethi Kasireddy_ +- [Egy 2021-es útmutató a decentralizált alkalmazásokról](https://limechain.tech/blog/what-are-dapps-the-2021-guide/) – _LimeChain_ +- [Mik azok decentralizált alkalmazások?](https://www.gemini.com/cryptopedia/decentralized-applications-defi-dapps) – _Gemini_ +- [Népszerű dapp-ok](https://www.alchemy.com/dapps) - _Alchemy_ + +_Van olyan közösségi erőforrása, amely segített Önnek? Szerkessze ezt az oldalt, és adja hozzá!_ ## Kapcsolódó témák {#related-topics} diff --git a/public/content/translations/hu/developers/docs/data-and-analytics/block-explorers/index.md b/public/content/translations/hu/developers/docs/data-and-analytics/block-explorers/index.md index f18d85f9543..d6fa4c2cb17 100644 --- a/public/content/translations/hu/developers/docs/data-and-analytics/block-explorers/index.md +++ b/public/content/translations/hu/developers/docs/data-and-analytics/block-explorers/index.md @@ -9,265 +9,241 @@ A blokkfelfedezők a portálod az Ethereum adataihoz. Használatukkal valós ide ## Előfeltételek {#prerequisites} -Először meg kellene értened az Ethereum alapvető fogalmait ahhoz, hogy értelmezni tudd az adatokat, melyet egy blokkfelfedező biztosít neked. Kezdj itt: [bevezetés az Ethereumba](/developers/docs/intro-to-ethereum/). +Először meg kellene értened az Ethereum alapvető fogalmait ahhoz, hogy értelmezni tudd az adatokat, melyet egy blokkfelfedező biztosít neked. Kezdjen itt: [bevezetés az Ethereumba](/developers/docs/intro-to-ethereum/). ## Szolgáltatások {#services} -- [Etherscan](https://etherscan.io/) –_Elérhető kínaiul, koreaiul, oroszul és japánul_ -- [Etherchain](https://www.etherchain.org/) -- [Ethplorer](https://ethplorer.io/) -- [Blockchair](https://blockchair.com/ethereum) –_Elérhető spanyolul, franciául, olaszul, hollandul, portugálul, oroszul, kínaiul és újperzsa nyelven_ +- [Etherscan](https://etherscan.io/) –_ elérhető kínai, koreai, orosz és japán nyelven is_ +- [Beaconcha.in](https://beaconcha.in/) +- [Blockchair](https://blockchair.com/ethereum) –_ Spanyol, francia, olasz, holland, portugál, orosz, kínai és fárszi nyelven is elérhető_ - [Blockscout](https://blockscout.com/) +- [Etherchain](https://www.etherchain.org/) +- [Ethplorer](https://ethplorer.io/) –_Kínai, spanyol, francia, török, orosz, koreai és vietnámi nyelven is elérhető_ - [OKLink](https://www.oklink.com/eth) +- [Otterscan](https://otterscan.io/) +- [Rantom](https://rantom.app/) +- [Sirato](https://www.web3labs.com/sirato) +- [EthVM](https://www.ethvm.com/) +- [DexGuru Block Explorer](https://ethereum.dex.guru/) ## Adat {#data} -Az Ethereum tervezése folytán transzparens, így minden ellenőrizhető. A blokkfelfedezők egy felületet biztosítanak, hogy ez az információ elérhető legyen. És ez igaz az Ethereum főhálózatára és a teszt hálózatokra, ha szükséged van az adatokra. +Az Ethereum tervezése folytán transzparens, így minden ellenőrizhető. A blokkfelfedezők egy felületet biztosítanak, hogy ez az információ elérhető legyen. És ez igaz az Ethereum főhálózatára és a teszt hálózatokra, ha szükséged van az adatokra. Az adatok végrehajtási adatokra és konszenzusadatokra oszthatók. A „végrehajtási adatok” megnevezés egy konkrét blokkban végrehajtott tranzakciókra vonatkoznak. A „konszenzusadatok” megnevezés magukra a blokkokra és a blokkokat előterjesztő validátorokra vonatkozik. Itt egy összefoglaló azokról az adatokról, melyet egy blokkfelfedezőről megszerezhetsz. -### Blokkok {#blocks} +### Végrehajtási adatok {#execution-data} -Új blokkok adódnak hozzá az Ethereumhoz minden ~12 másodpercben (ez változhat) így van egy közel állandó adatfolyam, mely hozzáadódik a blokkfelfedezőkhöz. A blokkok sok fontos adatot tartalmaznak, melyeket hasznosnak találhatsz: +Az Ethereum hálózata minden 12 másodpercben új blokkal bővül (kivéve, ha a blokkelőterjesztő elszalasztja a lehetőségét), így van egy közel állandó adatfolyam, amely hozzáadódik a blokkfelfedezőkhöz. A blokkok sok fontos adatot tartalmaznak, melyeket hasznosnak találhatsz: **Standard adat** -- Blokk magasság - A blokk szám és a blokklánc hossza (blokkokban) a jelenlegi blokk létrehozásánál. -- Időbélyeg – Az időpont, amikor egy bányász kibányászta a blokkot. -- Tranzakciók – a blokkban lévő tranzakciók száma. -- Bányász – A bányász címe, aki kibányászta a blokkot. -- Jutalom – Az ETH mennyiség, melyet a bányász kap jutalmul, hogy hozzáadta a blokkot (alap 2ETH díj + minden tranzakció díja, mely a blokkban szerepelt). -- Nehézség – A blokk kibányászásához rendelt nehézség. -- Méret – A blokkban lévő adat mérete (bájtban mérve). -- Felhasznált gáz – A teljes gáz egység, melyet a tranzakciók felhasználtak a blokkban. -- Gáz limit – A teljes gáz limit, melyet a tranzakciók beállítottak a blokkban. -- Extra adat – Bármely extra adat, melyet a bányász belefoglalt a blokkba. +- Blokkmagasság – a blokklánc hossza és a benne foglalt blokkok száma (blokkokban kifejezve) az aktuális blokk létrehozásakor. +- Időbélyegző – a blokkjavaslat megjelenésének időpontja. +- Tranzakciók – a blokkban foglalt tranzakciók száma. +- Díj címzettje – az a cím, amely a tranzakciókból származó gasdíjtételeket megkapta. +- Blokkjutalom – a blokkot előterjesztő validátornak megítélt ETH-összeg. +- Méret – a blokkban foglalt adat mérete (bájtban kifejezve). +- Felhasznált gas – a teljes gasmennyiség, amelyet a blokkban foglalt tranzakciók felhasználtak. +- Gaskorlátozás – a blokkban foglalt tranzakciók által beállított teljes gaskorlátozás. +- Alapdíj/gas – az a minimumszorzó, amely egy tranzakció felvételéhez szükséges az adott blokkba. +- Elégetett díjak – a blokkban elégetett ETH mennyisége. +- Extra adat – Bármely extra adat, amelyet a bányász belefoglalt a blokkba. **Haladó adat** -- Hash – A kriptográfiai hash, mely a blokk fejlécét reprezentálja (a blokk egyedi azonosítója). -- Szülő hash – Annak a blokknak a hash-e, mely a jelenlegi blokk előtt jött. -- Sha3Uncles – Az adott szülőhöz tartozó összes uncle kombinált hash-e. -- StateRoot – A Merkle fa gyökér hash-e, mely a rendszer teljes állapotát tárolja. -- Nonce – Egy érték, mely demonstrálja a proof-of-work-öt egy blokkra a bányász által. - -**Uncle blokkok** - -Az uncle blokkok akkor jönnek létre, amikor két bányász közel azonos időben hoz létre két blokkot - csak egy blokkot lehet érvényesíteni a csomópontokon keresztül. Nem tartoznak a lánchoz, de így is jutalom jár értük a munkáért. - -A blokkfelfedezők információkat szolgáltatnak az uncle blokkokról úgy, mint: - -- Az uncle blokk száma. -- Az előfordulás időpontja. -- A blokk magasság, ahol létrejött. -- Ki bányászta ki. -- Az ETH jutalom. +- Hash – a kriptográfiai hash, amely a blokkfejlécét adja (a blokk egyedi azonosítója). +- Anyahash – az aktuális blokk előtt kiadott blokk hashértéke. +- StateRoot – A Merkle-fa gyökérhash-értéke, amely a rendszer teljes állapotát tárolja. ### Üzemanyag {#gas} -A blokkfelfedezők nem csak a tranzakciók és blokkok gáz felhasználásáról adnak információt, hanem némelyik a hálózat aktuális gázárairól is tájékoztat. Ez segít megérteni a hálózati kihasználtságot, biztonságos tranzakciókat indítani, és nem túlköltekezni az gázból. Keress olyan API-okat, melyek segítenek megadni ezt az információt a terméket felületére. A gáz-specifikus adat a következőket fedi le: +A blokkfelfedezők nemcsak a tranzakciók és blokkok gasfelhasználásáról adnak információt, hanem némelyik a hálózat aktuális gasárairól is tájékoztat. Ez segít megérteni a hálózathasználatot, biztonságos tranzakciókat indítani, és nem túlkölteni a gast. Keressen olyan API-kat, amelyek segítenek felvinni ezt az információt a terméke felületére. A gasspecifikus adat a következőket fedi le: -- A biztonságos, de lassú tranzakcióhoz szükséges gázegység becslése (+ becsült ár és idő). -- Az átlagos idejű tranzakcióhoz szükséges gázegység becslése (+ becsült ár és idő). -- Az gyors tranzakcióhoz szükséges gázegység becslése (+ becsült ár és idő). -- Az átlagos megerősítési idő a gáz ár alapján. -- Gázt fogyasztó szerződések – máshogy megfogalmazva, olyan népszerű termékek, melyeknek használata számottevő a hálózaton. -- Gázt költő számlák – vagyis, gyakori hálózati felhasználók. +- A biztonságos, de lassú tranzakcióhoz szükséges gasmennyiség becslése (+ becsült ár és idő) +- Az átlagos tranzakcióhoz szükséges gasmennyiség becslése (+ becsült ár és idő) +- A gyors tranzakcióhoz szükséges gasmennyiség becslése (+ becsült ár és idő) +- Átlagos megerősítési idő a gasár alapján +- gasfogyasztó szerződések – más szóval olyan népszerű termékek, amelyeket sokat használnak a hálózaton. +- gasköltő számlák – más szóval a rendszeres hálózathasználók. ### Tranzakciók {#transactions} -A blokkfelfedezők lettek a leggyakoribb hely az emberek számára, hogy nyomon kövessék a tranzakcióik folyamatát. Ennek az az oka, hogy a részletesség, amiben részesülhetsz, extra bizonyossággal bír. A tranzakció adat a következőket tartalmazza: +A blokkfelfedezők bevett eszközzé váltak az emberek kezében, hogy nyomon kövessék a tranzakcióik alakulását. Ennek az az oka, hogy az elérhető részletesség extra bizonyosságot nyújt. A tranzakcióadatok a következőket tartalmazzák: -**Standard adat** +**Standard adatok** -- Tranzakció hash – A tranzakció elküldésekor egy hash generálódik. -- Státusz – Egy jelzés arról, hogy a tranzakció függőben van-e, meghiúsult vagy sikeres volt-e. -- Blokk – A blokk, mely a tranzakciót tartalmazza. -- Időbélyeg – Az időpont, amikor egy bányász kibányászta a tranzakciót. -- Kitől (from) – A számla címe, amelyik elküldte a tranzakciót. -- Kinek (To)– A címzett vagy az okosszerződés címe, amivel a tranzakció interakcióba lép. -- Átutalt tokenek – Egy tokenekből álló lista, melyek át lettek utalva a tranzakcióban. +- Tranzakcióhash – a tranzakció elküldésekor a rendszer által generált hashérték. +- Állapot – jelzés arról, hogy a tranzakció függőben van, meghiúsult vagy sikeres volt. +- Blokk – a blokk, amely a tranzakciót tartalmazza. +- Időbélyegző – az időpont, amikor egy bányász kibányászta a tranzakciót. +- Feladó (From) – a tranzakciót elküldő számla címe. +- Címzett (To) – a fogadó fél vagy az okosszerződés címe, amellyel a tranzakció interakcióba lép. +- Átutalt tokenek – olyan tokenekből álló lista, amelyek át lettek utalva a tranzakcióban. - Érték – Az átutalt ETH összértéke. -- Tranzakciós díj – A bányásznak fizetett összeg, hogy feldolgozza a tranzakciót (a gáz ár\* felhasznált gázból számolva). +- Tranzakciós illeték – A bányásznak fizetett összeg, hogy feldolgozza a tranzakciót (számítása: gasár × felhasznált gas). -**Haladó adat** +**Részletes adatok** -- Gáz limit – A maximális gáz egység, melyet ez a tranzakció elfogyaszthat. -- Felhasznált gáz – A tényleges mennyiség, melyet ez a tranzakció elfogyasztott. -- Gáz ár – Egy gáz egységre beállított ár. -- Nonce – A `from` cím tranzakciós száma (ne feledd, hogy nullával kezdődik, így `100`-as nonce valójában a 101.-edik tranzakciót jelenteni, melyet a erről a számláról küldtek.) -- Input adat– Bármely extra információ a tranzakcióban. +- Gaskorlátozás – a gasegységek maximális száma, amelyet ez a tranzakció elfogyaszthat. +- Felhasznált gas – a tényleges gasmennyiség, amelyet ez a tranzakció elfogyasztott. +- Gasár – egy gasegységre beállított ár. +- Nonce – a `from` cím tranzakciószáma (ne feledje, hogy a számozás nullánál kezdődik, így a `100`-as nonce valójában az adott számláról küldött 101. tranzakciót jelenteni). +- Bemeneti adat – a tranzakció által megkövetelt bármely extra adat. ### Számlák {#accounts} -Rengeteg adatot tudsz egy számláról elérni. Ezért ajánlott, hogy több számlát használj, így a vagyonod és az értéke nehezebben lekövethető. Vannak azonban fejlesztés alatt álló megoldások, melyek a tranzakciókat és a számlákat privátabbá teszik. De itt van az adat, melyet elérhetsz a számlákról: +Egy adott számláról rengeteg adat elérhető. Ezért gyakran javasoljuk több számla használatát, hogy az eszközök és az érték ne legyen könnyen követhető. Vannak azonban fejlesztés alatt álló megoldások, amelyek nagyobb védelmet nyújtanak a tranzakció- és számlaadatoknak. De most nézzük meg a számlákról elérhető adatokat: **Felhasználói számlák** -- Számla cím – A nyilvános cím, melyre pénzt küldhetsz. -- ETH egyenleg – A számlához tartozó ETH mennyisége. -- Teljes ETH érték – Az ETH értéke. -- Tokenek – A számlához tartozó tokenek és az értékeik. -- Tranzakció történet – Az összes tranzakciót tartalmazó lista, ahol a számla vagy a küldő volt vagy a címzett. +- Számlacím – a nyilvános cím, amelyre pénzt küldhet. +- ETH egyenleg – a számlához tartozó ETH mennyisége. +- Teljes ETH érték – az ETH értéke. +- Tokenek – a számlához tartozó tokenek és értékeik. +- Tranzakciótörténet – az összes tranzakciót tartalmazó lista, ahol a számla volt a küldő vagy a címzett. **Okosszerződések** -Az okosszerződés számlák rendelkeznek az összes adattal, amivel a felhasználói számlák is, de némelyik blokkfelfedező valamennyi kód információt is szolgáltat. Úgy, mint: +Az okosszerződés-számlák rendelkeznek az összes adattal, amivel a felhasználói számlák is, de némelyik blokkfelfedező némi kódinformációt is szolgáltat. Többek között például: -- Szerződés létrehozó – A cím, amelyik feltöltötte a szerződést a főhálózatra. -- Létrehozó tranzakció – A tranzakció, mely tartalmazta a telepítést a főhálózatra. -- Forráskód – Az okosszerződés solidity vagy vyper kódja. -- Szerződés ABI – A szerződés Application Binary Interface – a szerződés általi hívásokat tartalmazza és a kapott adatokat. -- Szerződés létrehozás kód – Az okosszerződés lefordított bájtkódja – akkor jön létre, amikor Solidity-ben vagy Vyper-ben írt okosszerződést fordítasz. -- Szerződés események – Az okosszerződés által meghívott metódusok története. Lényegében egy mód arra, hogy lássuk hogyan használják a szerződést és milyen gyakran. +- Szerződés létrehozója – a cím, amelyik feltöltötte a szerződést a fő hálózatra. +- Létrehozó tranzakció – a tranzakció, amely tartalmazta a telepítést a fő hálózatra. +- Forráskód – az okosszerződés solidity vagy vyper kódja. +- Szerződés ABI – a szerződés Application Binary Interface-e (alkalmazásprogramozói interfésze) – a szerződés általi hívásokat és a kapott adatokat tartalmazza. +- Szerződés létrehozási kódja – az okosszerződés lefordított bájtkódja – akkor jön létre, amikor Ön Solidityben vagy Vyperben stb. írt okosszerződést fordít. +- Szerződésesemények – az okosszerződésben lehívott módszerek előzményei. Alapvetően azt mutatja meg, hogyan és milyen gyakran használják a szerződést. ### Tokenek {#tokens} -A token egy szerződés típus, így az okosszerződésekhez hasonló adatokkal rendelkezik. De mivel van értéke és lehet vele kereskedni, ezért további adatpontjai is vannak: +A token egy szerződéstípus, így az okosszerződésekhez hasonló adatokkal rendelkezik. De mivel van értéke és lehet vele kereskedni, ezért további adatpontjai is vannak: -- Típus – Lehet ERC-20, ERC-721 vagy más tokenszabvány. -- Árfolyam – Ha egy ERC-20, akkor van jelenlegi piaci értéke. -- Piaci kapitalizáció – Ha ERC-20, akkor van egy piaci kapitalizációja (az árfolyam \* teljes készletből számolva). -- Teljes készlet– A forgalomban lévő tokenek száma. -- Tartók – A tokent tartó címek száma. -- Átutalások – A számlák közötti átutalások száma. -- Tranzakciós történet – Az összes tokent tartalmazó tranzakció előzménye. -- Szerződés cím – A token címe, melyet feltelepítettek a főhálózatra. -- Tizedesjegyek – Az ERC-20 tokenek oszthatóak és vannak tizedes helyeik. +- Típus – lehet ERC-20, ERC-721 vagy más tokenszabvány. +- Árfolyam – ha egy ERC-20, akkor van aktuális piaci értéke. +- Piaci kapitalizáció – ha ERC-20, akkor van piaci kapitalizációja (számítása: árfolyam × teljes kínálat). +- Teljes kínálat – a forgalomban lévő tokenek száma. +- Tulajdonosok – a tokent birtokló címek száma. +- Átutalások – a számlák közötti tokenátutalások esetszáma. +- Tranzakciótörténet – az adott tokent tartalmazó összes korábbi tranzakció. +- Szerződéscím – a fő hálózatra feltelepített token címe. +- Tizedesjegyek – az ERC-20 tokenek oszthatók és vannak tizedes helyeik. ### Hálózat {#network} -Természetesen olyan adat is rendelkezésünkre áll, mely a hálózat egészségéről árulkodik. Ezek elég specifikusak az Ethereum proof-of-work konszenzus mechanizmusára nézve. Amikor az Ethereum áttér az Eth2-re néhány adat redundánssá válik majd - -- Nehézség – A jelenlegi bányászati nehézség. -- Hash ráta – Egy becslés arról, hogy mennyi hash-t generálnak az Ethereum bányászok, akik a jelenlegi Ethereum blokkot vagy bármely adott blokkot próbálják megoldani. -- Összes tranzakció – Az Ethereum létrehozása óta történt összes tranzakciók száma. -- Tranzakció per másodperc – Egy másodperc alatt feldolgozható tranzakciók száma. -- ETH árfolyam – 1 ETH jelenlegi értéke. -- Teljes ETH készlet – Forgalomban lévő ETH mennyiség – ne feledd, hogy új ETH jön létre minden egyes blokk létrejötte után blokkjutalom formájában. -- Piaci kapitalizáció – Az árfolyam \* készletből számolva. +Egyes blokkadatok holisztikusabb módon foglalkoznak az Ethereum-hálózat egészségével. -## Eth2 adat {#consensus-layer-data} +- Összes tranzakció – az Ethereum létrehozása óta végbement összes tranzakció száma. +- Tranzakció/másodperc – az egy másodperc alatt feldolgozható tranzakciók száma. +- ETH-árfolyam – 1 ETH aktuális értéke. +- Teljes ETH-kínálat – a forgalomban lévő ETH-mennyiség – ne feledje, hogy minden egyes blokk létrejöttével új ETH jön létre blokkjutalom formájában. +- Piaci kapitalizáció – számítása: árfolyam × kínálat. -Az Eth2 frissítések még fejlesztés alatt állnak, de érdemes megemlíteni az adatokat, melyet a felfedezők biztosítanak majd számodra. Valójában az összes adat elérhető a tesztneteken jelenleg. - -Ha nem ismered az Eth2-t, akkor tekintsd meg az [összefoglalónkat az Eth2 fejlesztésekről](/roadmap/). +## Konszenzusréteg-adatok {#consensus-layer-data} ### Korszak {#epoch} -Az első Eth2 fejlesztés, a beacon chain, fogja létrehozni a validátorokból álló bizottságokat, melyek biztonsági okokból véletlenszerűen állnak össze minden korszak (epoch) végén (minden 6.4 percben). A korszak adat a következőket tartalmazza: +Biztonsági okokból minden korszak végén (vagyis 6,4 percenként) véletlenszerűen összeállított validátorbizottságok jönnek létre. A korszakadatok a következőket tartalmazzák: -- Korszak szám. -- Véglegesített státusz – Véglegesült-e egy korszak (Igen/Nem). -- Idő – Az idő, amikor véget ért egy korszak. -- Tanúsítások – A korszakon belüli tanúsítások száma (blokkokra történő szavazás a slotokon belül). -- Letétek – A korszakban lévő ETH letétek száma (a validátoroknak ETH-et kell letenniük, hogy validátorok legyenek). -- Megvágás – A blokk javaslattevők és tanúsítók számára kirótt büntetések száma. -- Szavazati részvétel – A letétbe helyezett ETH mennyisége, melyet blokk tanúsításra használtak. -- Validátorok – A korszakban lévő aktív validátorok száma. -- Átlagos validátor egyenleg – Aktív validátorok átlagos egyenlege. -- Slotok – A korszakban lévő szlotok száma (egy slot egy érvényes blokkot tartalmaz). +- Korszak száma +- Véglegesített állapot – véglegessé vált-e a korszak (Igen/Nem). +- Idő – az idő, amikor véget ért a korszak. +- Tanúsítások – a korszakon belüli tanúsítások száma (szavazás blokkokra a slotokon belül). +- Letétek – a korszakban foglalt ETH-letétek száma (a validátoroknak ETH-t kell letenniük, hogy validátorok lehessenek). +- Megvágások – a blokkelőterjesztőknek és tanúsítóknak kirótt büntetések száma. +- Szavazási részvétel – a letétbe helyezett ETH-mennyiség, amelyet blokktanúsításra használtak. +- Validátorok – a korszakban aktív validátorok száma. +- Átlagos validátoregyenleg – az aktív validátorok átlagos egyenlege. +- Slotok – a korszakban lévő slotok száma (a slotok egy érvényes blokkot tartalmaznak). ### Slot {#slot} -A slotok blokk létrehozási lehetőségek, az egyes slotokra elérhető adat a következőket tartalmazza: - -- Korszak – A korszak, amiben érvényes a slot. -- Slot szám. -- Státusz – A slot státusza (Javasolt/Kihagyott). -- Idő – A slot időbélyege. -- Javaslattevő– A validátor, aki javasolta a blokkot a slotba. -- Blokk gyökér – A BeaconBlock hash-fa-gyökere. -- Szülő gyökér – Az előző blokk hash-e. -- Állapot gyökér – A BeaconState hash-fa-gyökere. -- Aláírás. -- Randao megjelenítés. -- Graffiti – A blokk javaslattevő bele tehet egy 32 bájt hosszú üzenetet a blokk javaslatába. -- ETH1 adat. - - Blokk hash. - - Letét méret. - - Letét gyökér. -- Tanúsítások – A tanúsítások száma ebben a slotban erre a blokkra. -- Letétek – A letétek száma a slot alatt. -- Önkéntes kilépők – A kilépő validátorok száma slot alatt. -- Megvágás – A blokk javaslattevők és tanúsítók számára kirótt büntetések száma. -- Szavazatok – A validátorok, akik a blokkra szavaztak ebben a slotban. +A slotok blokklétrehozási lehetőségek. Az egyes slotokra elérhető adat a következőket tartalmazza: + +- Korszak – a korszak, amelyben érvényes a slot. +- Slot száma +- Állapot – a slot állapota (javasolt/kihagyott). +- Idő – a slot időbélyegzője. +- Előterjesztő – a validátor, aki javasolta a blokkot a slotba. +- Blokkgyökér – a BeaconBlock hash-fa-gyökere. +- Anyagyökér – a megelőző blokk hashértéke. +- Állapotgyökér – a BeaconState hash-fa-gyökere. +- Aláírás +- Randao megjelenítés +- Graffiti – a blokkelőterjesztő belefoglalhat egy 32 bájt hosszú üzenetet a blokkjavaslatába. +- Végrehajtási adatok + - Blokkhash + - Letétszám + - Letétgyökér +- Tanúsítások – a tanúsítások száma a slotban erre a blokkra. +- Letétek – a letétek száma a slot alatt. +- Önkéntes kilépők – a kilépő validátorok száma a slot alatt. +- Megvágások – a blokkelőterjesztőknek és tanúsítóknak kirótt büntetések száma. +- Szavazatok – a validátorok, akik a blokkra szavaztak ebben a slotban. ### Blokkok {#blocks-1} -Az Eth2-ben a blokkok máshogy működnek, mivel a bányászokat felváltják a validátorok, valamint a beacon chain bevezeti a slotokat és a korszakokat az Ethereumba. Ez több adatot jelent! +A proof-of-stake mechanizmus az időt slotokra és korszakokra osztja. Tehát ez új adatokat jelent! -- Javaslattevő – A validátor, akit véletlenszerűen választottak ki, hogy javasoljon egy új blokkot. -- Korszak– A korszak, amiben a blokkot javasolták. -- Slot– A slot, amiben a blokkot javasolták. -- Tanúsítások – A slotban lévő tanúsítások száma. A tanúsítások olyanok, mint a szavazatok, melyek azt jelzik, hogy a blokk készen áll, hogy beacon chainhez adódjon. +- Előterjesztő – az a validátor, akit algoritmussal választott ki a rendszer, hogy új blokkra tegyen javaslatot. +- Korszak – a korszak, amelyben a blokkot előterjesztették. +- Slot – a slot, amelyben a blokkot előterjesztették. +- Tanúsítások – a slotban foglalt tanúsítások száma. A tanúsítások olyanok, mint a szavazatok, amelyek azt jelzik, hogy a blokk már továbbítható a Beacon láncra. ### Validátorok {#validators} -A validátorok felelősek új blokkok felterjesztéséért és tanúsításáért a slotokon belül. +A validátorok felelnek a blokkok előterjesztéséért és tanúsításáért a slotokon belül. -- Validátor szám– Egyedi szám, mely a validátort reprezentálja. -- Jelenlegi egyenleg – A validátor egyenlege a jutalmakkal együtt. -- Effektív egyenleg – A validátor egyenlege, mely letétbe helyezéshez van felhasználva. -- Bevétel – A jutalmak vagy büntetések, melyet a validátor kapott. -- Státusz – Aktív-e a validátor jelenleg vagy nem. -- Tanúsítási hatékonyság – Az átlagos idő, mely a validátor tanúsításának a lánchoz történő hozzáadásához szükséges. -- Aktiválási jogosultság – Dátum (és korszak), amikor a validátor elérhetővé vált a validálásra. -- Aktív ettől – Dátum (és korszak), amikor a validátor aktívvá vált. -- Javasolt blokkok – A blokk, melyet a validátor javasolt. -- Tanúsítások – A validátor által biztosított tanúsítások. -- Letétek – A küldő címe, tranzakció hash-e, blokk száma, időbélyege, mennyisége és a státusza a validátor által elhelyezett letétnek. +- Validátorszám – egyedi szám, amely a validátort jelöli. +- Aktuális egyenleg – a validátor egyenlege a jutalmakkal együtt. +- Tényleges egyenleg – a validátor letéthez használt egyenlege. +- Bevétel – a validátor által kapott jutalmak vagy büntetések. +- Állapot – éppen online és aktív a validátor, vagy sem. +- Tanúsítási hatékonyság – az átlagos idő, amely a validátor tanúsításának lánchoz adásához szükséges. +- Aktiválási jogosultság – dátum (és korszak), amikor a validátor számára elérhetővé vált a validálás. +- Aktív ettől – dátum (és korszak), amikor a validátor aktívvá vált. +- Javasolt blokkok – a validátor által előterjesztett blokkok. +- Tanúsítások – a validátor által biztosított tanúsítások. +- Letétek – a küldő címe, a tranzakció hashértéke, a blokk száma, időbélyegzője, a validátori letét összege és állapota. ### Tanúsítások {#attestations} -A tanúsítások "igen" szavazatok arra, hogy a blokkot a lánchoz adják. Az adataik kapcsolódnak a tanúsítások bejegyzéseihez és a tanúsító validátorokhoz +A tanúsítások „igen” szavazatok arra, hogy a blokkot a lánchoz adják. Az adataik kapcsolódnak a tanúsítások nyilvántartásához és a tanúsító validátorokhoz. -- Slot – A slot, ahol a tanúsítás megtörtént. -- Bizottság index – A bizottság indexe az adott slotban. -- Összesítő bitek – Az aggregált tanúsítást reprezentálja minden résztvevő validátorra a tanúsításban. -- Validátorok– A validátorok, akik tanúsításokat szolgáltattak. -- Beacon blokk gyökér – Arra a blokkra mutat, amelyet a validátorok tanúsítanak. -- Forrás – A legutolsó igazolt korszakra mutat. -- Cél – A legutolsó korszak határra mutat. -- Aláírás. +- Slot – a slot, amelyben a tanúsítás történt. +- Bizottságindex – a bizottság indexe az adott slotban. +- Összesítő bitek – az aggregált tanúsítást mutatja a tanúsításban részt vevő minden validátorra. +- Validátorok – a tanúsításokat szolgáltató validátorok. +- Beacon-blokkgyökér – arra a blokkra mutat, amelyet a validátorok tanúsítanak. +- Forrás – a legutolsó igazolt korszakra mutat. +- Cél – a legutolsó korszakhatárra mutat. +- Aláírás ### Hálózat {#network-1} -Az Eth2 felső szintű adat a következőket tartalmazza: +A konszenzusréteg felső szintű adatai a következők: -- Jelenlegi korszak. -- Jelenlegi slot. -- Aktív validátorok – Aktív validátorok száma. -- Függőben lévő validátorok – A validátorok száma, akik az aktiválásra várnak. -- Letett ETH – A hálózatba letétbe helyezett ETH mennyisége. -- Átlag egyenleg – A validátorok átlagos ETH egyenlege. +- Aktuális korszak +- Aktuális slot +- Aktív validátorok – aktív validátorok száma. +- Függőben lévő validátorok – az aktiválásra váró validátorok száma. +- Letétbe helyezett ETH – a hálózaton letétbe helyezett ETH-mennyiség. +- Átlagos egyenleg – a validátorok átlagos ETH-egyenlege. ## Blokk felfedezők {#block-explorers} -- [Etherscan](https://etherscan.io/) – egy blokkfelfedező, ahol adatokat kérhetsz le az Ethereum főhálózatról, Ropsten tesztnetről, Kovan tesztnetről, Rinkeby tesztnetről, és a Goerli tesztnetről. -- [Blockscout](https://blockscout.com/) – a következő hálózatokra fókuszál: - - xDai – a MakerDAO DAI stablecoinja és a POA mellékláncánal okos kombinációja, valamint tokenbridge technológia. - - POA – Egy melléklánc és autonóm hálózat, melyet egy megbízható validátorokból álló csoport tart biztonságban. A hálózat összes validátora az Egyesült Államokban van bejegyezve és a információik nyilvánosan elérhetőek. - - POA Sokol Tesztnet. - - ARTIS – egy Ethereum kompatibilis blokklánc. - - [LUKSO L14](https://blockscout.com/lukso/l14) – az L14 az első teszt hálózatként működik, hogy a LUKSO közösség egy közös infrastruktúrán építhessen és tesztelhessen. - - qDai. -- [Etherchain](https://www.etherchain.org/) – egy Ethereum főhálózati blokkfelfedező. -- [Ethplorer](https://ethplorer.io/) – egy blokkfelfedező, mely az Ethereumon és a Kovan tesztneten található tokenekre fókuszál. -- [Blockchair](https://blockchair.com/ethereum) - a legprivátabb Ethereum felfedező. Alkalmas (mempool) adatok szűrésére és válogatására is. - -## Eth2 blokk felfedezők {#beacon-chain-block-explorers} - -- [https://beaconcha.in/](https://beaconcha.in/) -- [https://beaconscan.com/](https://beaconscan.com/) +- [Etherscan](https://etherscan.io/) – egy blokkfelfedező, amelyben adatokat kérhet le az Ethereum-főhálózatról és a Goerli tesztelőhálózatról. +- [Beaconcha.in](https://beaconcha.in/) – egy nyílt forráskódú blokkfelfedező az Ethereum főhálózatra és a Goerli teszthálózatra +- [Blockchair](https://blockchair.com/ethereum) – a legdiszkrétebb Ethereum-felfedező. Alkalmas (memóriakészlet) adatok szűrésére és válogatására is +- [Etherchain](https://www.etherchain.org/) – egy Ethereum-főhálózati blokkfelfedező +- [Ethplorer](https://ethplorer.io/) – egy blokkfelfedező, amely az Ethereum-főhálózaton és a Kovan tesztelőhálózaton található tokenekre fókuszál +- [Rantom](https://rantom.app/) – egy felhasználóbarát, nyílt forráskódú DeFi- és NFT-tranzakciómegtekintő a részletesebb betekintéshez ## További olvasnivaló {#further-reading} -_Ismersz olyan közösségi anyagot, amely segített neked? Módosítsd az oldalt és add hozzá!_ +_Ismer olyan közösségi információforrást, amely a hasznára vált? Módosítsa az oldalt, és adja hozzá!_ ## Kapcsolódó témák {#related-topics} -- [Bányászat](/developers/docs/consensus-mechanisms/pow/mining/) - [Tranzakciók](/developers/docs/transactions/) -- [Számlák](/developers/docs/accounts/) +- [Fiókok](/developers/docs/accounts/) - [Hálózatok](/developers/docs/networks/) diff --git a/public/content/translations/hu/developers/docs/data-and-analytics/index.md b/public/content/translations/hu/developers/docs/data-and-analytics/index.md new file mode 100644 index 00000000000..5620c2063fc --- /dev/null +++ b/public/content/translations/hu/developers/docs/data-and-analytics/index.md @@ -0,0 +1,45 @@ +--- +title: Adat és elemzések +description: Hogyan használjon on-chain elemzéseket és adatokat a dappjában +lang: hu +--- + +## Bevezetés {#Introduction} + +Ahogy a hálózat használata tovább fejlődik, a láncon belüli adatokban egyre növekszik az értékes információk mennyisége. Az adatok mennyiségének gyors növekedésével sok idő és kapacitás kell ahhoz, hogy ezeket az információkat kalkulálni és aggregálni tudjuk, hogy riportálható legyen vagy egy alkalmazást vezéreljen. + +A jelenlegi adatszolgáltatók használata előmozdíthatja a fejlesztést, sokkal pontosabb eredményeket adhat és csökkentheti a fenntartáshoz szükséges erőfeszítéseket. Ezáltal a fejlesztők koncentrálhatnak a projektjük fő funkcionalitására, melyet elérhetővé szeretnének tenni. + +## Előfeltételek {#prerequisites} + +Érdemes áttekinteni a [blokkfelfedezők](/developers/docs/data-and-analytics/block-explorers/) alapkoncepcióját, hogy hogyan használhatók adatelemzési területen. Emellett az [index](/glossary/#index) koncepciójának megértése is fontos, hogy egyértelművé váljon, a rendszerterv részeként milyen előnyöket hozhat. + +Az architektúra alapjaiból fontos ismerni, mi az az [API](https://www.wikipedia.org/wiki/API) és a [REST](https://www.wikipedia.org/wiki/Representational_state_transfer), akár csak elméletben. + +## Blokk felfedezők {#block-explorers} + +Néhány [blokkfelfedező](/developers/docs/data-and-analytics/block-explorers/) [RESTful](https://www.wikipedia.org/wiki/Representational_state_transfer) [API](https://www.wikipedia.org/wiki/API) kapcsolatokat ajánl, hogy a fejlesztőknek rálátásuk legyen az aktuális adatokról a blokkok, tranzakciók, bányászok, számlák és más láncon folyó tevékenységek tekintetében. + +A fejlesztők ezáltal ezeket az adatokat feldolgozzák és átalakítják, hogy a felhasználóiknak egyedi rálátásuk legyen a [blokkláncra](/glossary/#blockchain) és interakcióba léphessenek vele. Például az [Etherscan](https://etherscan.io) végrehajtási és konszenzusok adatokat biztosít minden 12 másodperces slotról. + +## The Graph {#the-graph} + +A [Graph Network](https://thegraph.com/) egy decentralizált indexáló protokoll a blokkláncadatok összerendezésére. Ahelyett, hogy láncon kívüli és centralizált adattárházakat építenének és menedzselnének a láncon belüli adatok aggregálására, a The Graph révén a fejlesztők szerver nélküli alkalmazásokat építhetnek, melyek teljes mértékben nyilvános infrastruktúrán működnek. + +A [GraphQL](https://graphql.org/) lekérdezési nyelv használatával a fejlesztők lekérdezhetik bármelyik gondozott, nyílt API-t, más néven algráfot (subgraph), hogy megszerezzék az alkalmazás működéséhez szükséges információkat. Az indexált algráfok lekérdezésével a riportok és alkalmazások nemcsak teljesítmény- és skálázási előnyhöz jutnak, hanem a hálózati konszenzus által biztosított adathelyességet is élvezhetik. A hálózatba kerülő új fejlesztésekkel és algráfokkal az Ön projektje is gyorsan előnyt kovácsolhat ezekből az újdonságokból. + +## Kliensdiverzitás + +A [kliensdiverzitás](/developers/docs/nodes-and-clients/client-diversity/) rendkívül fontos az egész Ethereum-hálózat átfogó egészsége szempontjából, mivel védelmet biztosít a hibák és támadások ellen. Számos kliensdiverzitásról szóló kimutatás elérhető, mint a [clientdiversity.org](https://clientdiversity.org/), [rated.network](https://www.rated.network), [execution-diversity.info](https://execution-diversity.info/) és az [Ethernodes](https://ethernodes.org/). + +## Dune Analytics {#dune-analytics} + +A [Dune-elemzések](https://dune.com/) előre feldolgozzák a blokkláncadatokat relációs adatbázistáblákba (PostgreSQL és DatabricksSQL), hogy a felhasználók lekérdezhessék a blokklánc adatait SQL segítségével és ennek eredményéből további kimutatásokat építhessenek. A láncon lévő adatok 4 nyerstáblába rendeződnek: `blocks` (blokkok), `transactions` (tranzakciók), `logs` (eseménynaplózás) és `traces` (meghívások nyomai). A népszerű szerződéseket és protokollokat dekódolják, és mindegyik rendelkezik a maga eseményeket és meghívásokat tartalmazó tábláival. Ezeket az esemény- és hívástáblákat tovább dolgozzák és absztrakciós táblákba szervezik a protokollok típusa szerint, mint amilyen a DEX, kölcsönzés, stabilérmék stb. + +## További olvasnivaló {#further-reading} + +- [A gráfhálózat áttekintése](https://thegraph.com/docs/en/about/network/) +- [Gráflekérdezési próbafelület (playground)](https://thegraph.com/explorer/subgraph/graphprotocol/graph-network-mainnet?version=current) +- [API-kódpéldák az EtherScan oldalon](https://etherscan.io/apis#contracts) +- [Beaconcha.in – Beaconlánc-felfedező](https://beaconcha.in) +- [A Dune alapjai](https://docs.dune.com/#dune-basics) diff --git a/public/content/translations/hu/developers/docs/development-networks/index.md b/public/content/translations/hu/developers/docs/development-networks/index.md index 17f26b92928..86c68433404 100644 --- a/public/content/translations/hu/developers/docs/development-networks/index.md +++ b/public/content/translations/hu/developers/docs/development-networks/index.md @@ -4,13 +4,13 @@ description: Áttekintés az fejlesztői hálózatokról és az eszközökről, lang: hu --- -Az okosszerződésekkel történő Ethereum alkalmazások fejlesztésekor fontos, hogy egy lokális hálózaton futtasd, hogy megnézd hogyan működik telepítés előtt. +Amikor okosszerződéseket tartalmazó Ethereum alkalmazást épít, fontos, hogy egy lokális hálózaton lefuttassa azt, hogy megnézze hogyan működik telepítés előtt. -Hasonlóan ahhoz, amikor egy lokális szervert futtatsz a számítógépeden webfejlesztés céljából, használhatsz fejlesztői hálózatokat egy lokális blokklánc példány létrehozásához, ahol tesztelheted a dappodat. Ezek az Ethereum fejlesztői hálózatok olyan tulajdonságokkal rendelkeznek, melyek lehetővé teszik a gyorsabb iterációt, mint egy nyilvános tesztnet (például nem kell azzal bajlódnod, hogy ETH-et szerezz egy tesztnet csapból). +Hasonlóan ahhoz, amikor egy lokális szervert futtat a számítógépén webfejlesztés céljából, használhat fejlesztői hálózatokat egy lokális blokkláncpéldány létrehozásához, ahol tesztelheti a dappot. Ezek az Ethereum fejlesztői hálózatok olyan tulajdonságokkal rendelkeznek, melyek lehetővé teszik a gyorsabb iterációt, mint egy nyilvános teszthálózat (például nem kell azzal bajlódnia, hogy ETH-t szerezz egy teszthálózati csapból). ## Előfeltételek {#prerequisites} -Először meg kell értened az [Ethereum stack alapjait](/developers/docs/ethereum-stack/) és az [Ethereum hálózatokat](/developers/docs/networks/) mielőtt belevágnál a fejlesztői hálózatokba. +Először meg kell értenie az [Ethereum stack alapjait](/developers/docs/ethereum-stack/) és az [Ethereum hálózatokat](/developers/docs/networks/) mielőtt elmélyedne a fejlesztői hálózatokban. ## Mi a fejlesztői hálózat? {#what-is-a-development-network} @@ -18,19 +18,19 @@ A fejlesztői hálózatok lényegében olyan Ethereum kliensek (Ethereum impleme **Miért ne futtassunk standard Ethereum csomópontot lokálisan?** -_Akár _ [futtathatsz saját csomópontot](/developers/docs/nodes-and-clients/#running-your-own-node) (mint a Geth, OpenEthereum vagy a Nethermind), de mivel a fejlesztői hálózatok célzottan a fejlesztésre vannak létrehozva, olyan kényelmi funkciók is be vannak építve, mint például: +_Akár _ [saját csomópontot is futtathat](/developers/docs/nodes-and-clients/#running-your-own-node), de mivel a fejlesztői hálózatok célzottan a fejlesztésre vannak létrehozva, olyan kényelmi funkciók is be vannak építve, mint például: -- A lokális blokklánc feltöltése adatokkal determinisztikusan (pl. pénztárcák ETH tartalommal) -- Azonnali blokk bányászat minden egyes megkapott tranzakciónál, sorrendben és késés nélkül -- Fejlett debuggolás és loggolási funkciók +- A lokális blokklánc determinisztikus feltöltése adatokkal (például számlák ETH egyenleggel) +- Azonnali blokklétrehozás minden egyes megkapott tranzakciónál, sorrendben és késés nélkül +- Fejlett hibakeresés és naplózási funkciók ## Elérhető eszközök {#available-projects} -**Megjegyzés**: A legtöbb [fejlesztői keretrendszer](/developers/docs/frameworks/) egy beépített fejlesztői hálózatot tartalmaz. Ajánljuk, hogy egy keretrendszer segítségével [állítsd be a helyi fejlesztési környezetedet](/developers/local-environment/). +**Megjegyzés**: A legtöbb [fejlesztői keretrendszer](/developers/docs/frameworks/) egy beépített fejlesztői hálózatot tartalmaz. Ajánljuk, hogy egy keretrendszer segítségével [állítsa be a helyi fejlesztési környezetét](/developers/local-environment/). ### Ganache {#ganache} -Indítsd be gyorsan egy személyes Ethereum blokkláncot, melyet tesztek futtatására, parancsok végrehajtására és az állapot megtekintésére használhatsz, mialatt a lánc működését irányítod. +Indítson be gyorsan egy személyes Ethereum blokkláncot, melyet tesztek futtatására, parancsok végrehajtására és az állapot megtekintésére használhat, mialatt a lánc működését irányítja. A Ganache-nak van asztali alkalmazása (Ganache UI) és parancssori alkalmazása is (`ganache-cli`). A Truffle eszközsorozat része. @@ -40,18 +40,44 @@ A Ganache-nak van asztali alkalmazása (Ganache UI) és parancssori alkalmazása ### Hardhat Network {#hardhat-network} -Egy helyi Ethereum hálózat fejlesztésre tervezve. Szerződéseket telepíthetsz, teszteket futtathatsz és debuggolhatod a kódodat +Egy helyi Ethereum hálózat fejlesztésre tervezve. Szerződéseket telepíthet, teszteket futtathat, hibakeresést és javítást végezhet a kódján. A Hardhat Network a beépített Hardhat-tel jön, ami egy Ethereum fejlesztői környezet szakembereknek. - [Honlap](https://hardhat.org/) - [GitHub](https://github.com/nomiclabs/hardhat) +### Helyi Beacon láncok {#local-beacon-chains} + +Néhány konszenzusos kliens rendelkezik olyan beépített eszközökkel, amellyel fel lehet állítani helyi Beacon láncokat a teszteléshez. Elérhető instrukciók a Lighthouse, Nimbus és Lodestar kliensekhez: + +- [Helyi teszthálózat a Lodestarhoz](https://chainsafe.github.io/lodestar/usage/local/) +- [Helyi teszthálózat a Lighthouse-hoz](https://lighthouse-book.sigmaprime.io/setup.html#local-testnets) +- [Helyi teszthálózat a Nimbushoz](https://github.com/status-im/nimbus-eth1/blob/master/fluffy/docs/local_testnet.md) + +### Nyilvános Ethereum-tesztláncok {#public-beacon-testchains} + +Az Ethereum két karbantartott, nyilvános tesztimplementációval is rendelkezik: Goerli és Sepolia. A Goerli a javasolt teszthálózat, mely hosszú távú támogatással bír, és mindenkinek ingyenesen használható validálásra. A Sepolia egy újabb, kisebb lánc, melyet szintén fenn akarnak tartani a jövőben, és amelynek része egy engedélyhez kötött validátorszett (nem működhet bárki validátorként). A Ropsten lánc 2022. 4. negyedévében, a Rinkeby lánc pedig 2023. 2./3. negyedévében kerül lezárásra. + +- [Goerli letétbe helyezési indítópult](https://goerli.launchpad.ethereum.org/) +- [Ropsten, Rinkeby és Kiln kivezetési bejelentés](https://blog.ethereum.org/2022/06/21/testnet-deprecation) + +### Kurtosis Ethereum csomag {#kurtosis} + +A Kurtosis egy felépített rendszer a több konténeres tesztkörnyezetekhez, amellyel a fejlesztők lokálisan felállíthatják a reprodukálható példányait a blokklánchálózatoknak. + +Az Ethereum Kurtosis csomag lokálisan példányosítja a konténerezett és paraméterezett Ethereum-teszthálózatot, amely több különböző végrehajtásiréteg- (EL) és konszenzusréteg- (CL) klienst és n-számú csomópontot támogat. A Kurtosis kezeli az összes lokális portbeállítást és szolgáltatási kapcsolatokat, hogy könnyebb legyen prototípusokat készíteni az alkalmazásokhoz és okosszerződésekhez, valamint tesztelni azokat. + +- [Ethereum hálózati csomag](https://github.com/kurtosis-tech/eth-network-package) +- [Honlap](https://www.kurtosis.com/) +- [GitHub](https://github.com/kurtosis-tech/kurtosis) +- [Dokumentáció](https://docs.kurtosis.com/) + ## További olvasnivaló {#further-reading} -_Ismersz olyan közösségi anyagot, amely segített neked? Módosítsd az oldalt és add hozzá!_ +_Van olyan közösségi erőforrása, amely segített Önnek? Szerkessze ezt az oldalt, és adja hozzá!_ ## Kapcsolódó témák {#related-topics} - [Fejlesztői keretrendszerek](/developers/docs/frameworks/) -- [Állítsd fel a helyi fejlesztői környezetedet](/developers/local-environment/) +- [Helyi fejlesztői környezet felállítása](/developers/local-environment/) diff --git a/public/content/translations/hu/developers/docs/ethereum-stack/index.md b/public/content/translations/hu/developers/docs/ethereum-stack/index.md index 6167ba13297..443d3a61849 100644 --- a/public/content/translations/hu/developers/docs/ethereum-stack/index.md +++ b/public/content/translations/hu/developers/docs/ethereum-stack/index.md @@ -4,17 +4,17 @@ description: Egy áttekintő az Ethereum stack különböző rétegeiről és ar lang: hu --- -Mint bármely szoftver stack az "Ethereum stack" változni fog projektről projektre az üzleti céljaidtól függően. +Mint bármely szoftverstack, az „Ethereum-stack” is változni fog projektről projektre az Ön céljaitól függően. Vannak azonban alap Ethereum technológiák, melyek segítenek egy mentális modellt szolgáltatni arról, hogy a szoftver alkalmazások hogyan lépnek interakcióba az Ethereum blokklánccal. A stack rétegeinek megértése segíteni fog megérteni az Ethereum szoftver projektekbe történő integrálásának különböző módjait. ## Első szint: Ethereum Virtuális Gép {#ethereum-virtual-machine} -Az [Ethereum Virtuális Gép (EVM)](/developers/docs/evm/) egy futtatókörnyezet az Ethereumon okosszerződések számára. Az Ethereum blokkláncon minden okosszerződést és állapot változást [tranzakciók](/developers/docs/transactions/) hajtanak végre. Az EVM kezeli az összes tranzakció feldolgozását az Ethereum hálózaton. +Az [Ethereum virtuális gép (EVM)](/developers/docs/evm/) egy futtatókörnyezet az Ethereumon az okosszerződések számára. Az Ethereum blokkláncon minden okosszerződést és állapot változást [tranzakciók](/developers/docs/transactions/) hajtanak végre. Az EVM kezeli az összes tranzakció feldolgozását az Ethereum hálózaton. Mint bármilyen virtuális gép esetében, az EVM egy absztrakciós szintet hoz létre a kód végrehajtás és a végrehajtó gép (egy Ethereum csomópont) között. Az EVM jelenleg több ezer csomóponton fut szerte a világban. -A háttérben az EVM opcode utasítások sorozatát használja meghatározott feladatok végrehajtásához. Ez a (140 egyedi) opcode teszi Turing-teljessé az EVM-et, mely azt jelenti, hogy az EVM szinte bármit ki tud számítani, ha elegendő erőforrással rendelkezik. +A háttérben az EVM opcode utasítások sorozatát használja meghatározott feladatok végrehajtásához. Ez a (140 egyedi) operációs kód lehetővé teszi az EVM számára, hogy [Turing-teljes](https://en.wikipedia.org/wiki/Turing_completeness) legyen, tehát az EVM bármit ki tud számolni, ha elég erőforrás áll rendelkezésre. Dapp fejlesztőként nem kell sokat tudnod az EVM-ről azon kívül, hogy létezik és megbízhatóan működteti az összes Ethereum alkalmazást állásidő nélkül. @@ -24,17 +24,17 @@ Az [okosszerződések](/developers/docs/smart-contracts/) olyan futtatható prog Az okosszerződéseket specifikus [programozási nyelveken](/developers/docs/smart-contracts/languages/) írják, melyek EVM bájtkódra fordítódnak (alacsony szintű gépi instrukciók, melyeket opcode-nak nevezünk). -Az okosszerződések nem csak nyílt forráskódú könyvtáraknak felelnek meg, hanem lényegében nyílt API szolgáltatásokként működnek, melyek 24/7-ben futnak és nem lehet őket leállítani. Az okosszerződések nyilvános függvényeket szolgáltatnak, melyeket az alkalmazások ([dappok](/developers/docs/dapps/)) engedély nélkül meghívhatnak. Bármely alkalmazás integrálhatja a telepített okosszerződéseket, hogy funkciókat illesszen össze (mint például adat feedek vagy decentralizált tőzsdék). Bárki telepíthet új okosszerződéseket az Ethereumra, hogy tetszőleges funkcionalitást adjon, mely egyezik az alkalmazás szükségleteivel. +Az okosszerződések nem csak nyílt forráskódú könyvtáraknak felelnek meg, hanem lényegében nyílt API szolgáltatásokként működnek, melyek 24/7-ben futnak és nem lehet őket leállítani. Az okosszerződések nyilvános függvényeket szolgáltatnak, amelyeket a felhasználók és az alkalmazások ([dappok](/developers/docs/dapps/)) engedély nélkül meghívhatnak. Bármelyik alkalmazás összekapcsolható a működő okosszerződésekkel, hogy valamilyen funkcionalitást alkosson, mint például [adatok használata](/developers/docs/oracles/), illetve támogassa a tokenek átváltását. Bárki telepíthet új okosszerződéseket az Ethereumra, hogy tetszőleges funkcionalitást adjon, mely egyezik az alkalmazás szükségleteivel. Dapp fejlesztőként csak akkor kell okosszerződéseket írnod, ha szeretnél egyedi funkciókat hozzáadni az Ethereum blokklánchoz. Hamar rájöhetsz, hogy a projekted legtöbb célját elérheted csupán a létező okosszerződések integrálásával, például ha szeretnéd használni a stablecoin fizetéseket vagy lehetővé tenni a tokenek decentralizált cseréjét. ## Harmadik szint: Ethereum csomópontok {#ethereum-nodes} -Ahhoz, hogy egy alkalmazás interakcióba lépjen az Ethereum blokklánccal (vagyis képes legyen blokklánc adatok olvasására és/vagy tranzakció küldésre a hálózatra), rá kell csatlakoznia egy [Ethereum csomópontra](/developers/docs/nodes-and-clients/). +Ahhoz, hogy az alkalmazás az Ethereum-blokklánccal működni tudjon, egy [Ethereum-csomóponthoz](/developers/docs/nodes-and-clients/) kell kapcsolódnia. Egy ilyen csomópont lehetővé teszi, hogy elérje a blokkláncon lévő adatokat és/vagy tranzakciókat küldjön a hálózatnak. -Az Ethereum csomópontok egy szoftvert - Ethereum klienst - futtató számítógépek. Egy kliens egy Ethereum implementáció, mely hitelesíti az összes tranzakciót az egyes blokkokban, így a hálózat biztonságos marad az adatok pedig pontosak. Az Ethereum csomópontok MAGUK az Ethereum blokklánc. Kollektívan tárolják az Ethereum blokklánc állapotát és konszenzust érnek el a tranzakciókon, melyek a blokklánc állapotot megváltoztatják. +Az Ethereum csomópontok egy szoftvert - Ethereum klienst - futtató számítógépek. Egy kliens egy Ethereum implementáció, mely hitelesíti az összes tranzakciót az egyes blokkokban, így a hálózat biztonságos marad az adatok pedig pontosak. **Az Ethereum-csomópontok összessége az Ethereum-blokklánc**. Kollektívan tárolják az Ethereum blokklánc állapotát és konszenzust érnek el a tranzakciókon, melyek a blokklánc állapotot megváltoztatják. -Hogyha összekapcsolod az alkalmazásodat egy Ethereum csomóponttal (JSON RPC-n keresztül), akkor az alkalmazásod képes lesz adatokat leolvasni a blokkláncról (például felhasználói számla egyenlegek), illetve új tranzakciókat közvetíteni a hálózatra (például ETH átutalás felhasználói számlák között vagy okosszerződés függvények futtatása). +Hogyha összekapcsolja az alkalmazást egy Ethereum-csomóponttal ([JSON RPC-n](/developers/docs/apis/json-rpc/) keresztül), akkor az alkalmazás képes lesz adatokat leolvasni a blokkláncról (például felhasználóiszámla-egyenlegek), illetve új tranzakciókat közvetíteni a hálózatra (például ETH-átutalás felhasználói számlák között, illetve okosszerződés-függvények futtatása). ## Négyes szint: Ethereum kliens API-ok {#ethereum-client-apis} @@ -56,4 +56,6 @@ Nézd meg az útmutatónkat, hogy[felállítsd egy helyi fejlesztői környezete ## További olvasnivaló {#further-reading} +- [A web 3.0 alkalmazások architektúrája](https://www.preethikasireddy.com/post/the-architecture-of-a-web-3-0-application) – _Preethi Kasireddy_ + _Ismersz olyan közösségi anyagot, amely segített neked? Módosítsd az oldalt és add hozzá!_ diff --git a/public/content/translations/hu/developers/docs/evm/index.md b/public/content/translations/hu/developers/docs/evm/index.md index 34c0fb98160..0c47bfc0de2 100644 --- a/public/content/translations/hu/developers/docs/evm/index.md +++ b/public/content/translations/hu/developers/docs/evm/index.md @@ -6,17 +6,17 @@ lang: hu Az EVM fizikai megtestesülését nem lehet úgy leírni, mint ahogy azt egy felhő vagy egy óceáni hullám esetében tennénk, de attól még _létezik_ egy egyedüli entitásként több ezer összekapcsolt számítógép által, melyek egy Ethereum klienst futtatnak. -Az Ethereum protokoll létezésének kizárólagos célja, hogy ennek a speciális állapot gépnek biztosítsa a folyamatos, megszakítások nélküli és megváltoztathatatlan működését; ez az a környezet, amiben az össze Ethereum számla és okosszerződés él. A lánc bármely adott blokkján az Ethereumnak egy és csak egy 'kanonikus' állapota van, és az EVM határozza meg a szabályokat egy új érvényes állapot létrehozására blokkról blokkra. +Az Ethereum protokoll maga egyedül azért létezik, hogy fenntartsa a folyamatos, zavartalan és változatlan működését ennek a speciális státuszú gépnek. Ez egy olyan környezet, amelyben az összes Ethereum számla és okosszerződés él. A lánc bármely adott blokkján az Ethereumnak egy és csak egy „kanonikus” állapota van, és az EVM határozza meg a szabályokat egy új érvényes állapot létrehozására blokkról blokkra. ## Előfeltételek {#prerequisites} -Alapvető számítástudományi fogalmak ismerete, mint például a [bájtok](https://wikipedia.org/wiki/Byte), [memória](https://wikipedia.org/wiki/Computer_memory), és a [stack]() szükségesek, hogy megértsd az EVM-et. Érdemes tisztában lenni egy pár kriptográfiai/blokklánc fogalommal úgy, mint a [hash függvények](https://wikipedia.org/wiki/Cryptographic_hash_function), [Proof-of-Work](https://wikipedia.org/wiki/Proof_of_work) és a [Merkle Fa](https://wikipedia.org/wiki/Merkle_tree). +Alapvető számítástudományi fogalmak ismerete, mint például a [bájtok](https://wikipedia.org/wiki/Byte), [memória](https://wikipedia.org/wiki/Computer_memory), és a [stack](https://wikipedia.org/wiki/Stack_(abstract_data_type)) szükségesek ahhoz, hogy megértse az EVM-et. Érdemes tisztában lenni egy pár kriptográfiai/blokklánc fogalommal úgy, mint a [hash függvények](https://wikipedia.org/wiki/Cryptographic_hash_function) és a [Merkle-fa](https://wikipedia.org/wiki/Merkle_tree). ## Főkönyvtől az állapot gépig {#from-ledger-to-state-machine} -Az 'elosztott főkönyv' analógiáját gyakran használjuk olyan blokkláncok jellemzésére, mint a Bitcoin, mely lehetővé egy decentralizált valuta létrehozását alapvető kriptográfiai eszközök használatával. Egy kriptovaluta úgy viselkedik, mint egy 'normál' valuta a szabályok miatt, melyek meghatározzák, hogy az adott illető mit vagy mit nem tehet, hogy megváltoztassa a főkönyvet. Például egy Bitcoin cím nem költhet el több bitcoint, mint amennyit előzőleg megkapott. Ezek a szabályok támasztják alá az összes Bitcoin tranzakciót és sok más blokkláncot is. +Az 'elosztott főkönyv' analógiáját gyakran használjuk olyan blokkláncok jellemzésére, mint a Bitcoin, mely lehetővé egy decentralizált valuta létrehozását alapvető kriptográfiai eszközök használatával. A főkönyv tartalmazza a történések rekordjait, amelynek meg kell felelnie bizonyos szabályoknak, ami azt irányítja, hogy mit tehet meg és mit nem tehet meg valaki a főkönyv módosításához. Például egy Bitcoin cím nem költhet el több bitcoint, mint amennyit előzőleg megkapott. Ezek a szabályok támasztják alá az összes Bitcoin tranzakciót és sok más blokkláncot is. -Amíg az Ethereumnak megvan a saját natív kriptovalutája (Ether), mely ugyanazokat az intuitív szabályokat követi, emellett lehetőséget ad egy másik hathatós funkciónak: [az okosszerződéseknek](/developers/docs/smart-contracts/). Ehhez a bonyolultabb funkcióhoz egy szofisztikáltabb analógia szükségeltetik. Egy elosztott főkönyv helyett az Ethereum egy elosztott [állapot gép](https://wikipedia.org/wiki/Finite-state_machine). Az Ethereum állapota egy nagy adatstruktúra, mely nem csak a számlákat és az egyenlegeket tárolja, de egy _állapot gépet_ is, mely blokkról blokkra változhat egy előre meghatározott szabályrendszer szerint és tetszőleges gépi kódot tud végrehajtani. Az állatot blokkról blokkra történő megváltozásának specifikus szabályait az EVM rögzíti. +Míg az Ethereumnak megvan a saját natív kriptovalutája (Ether), amely ugyanazokat az intuitív szabályokat követi, emellett lehetőséget ad egy másik hathatós funkciónak is: [az okosszerződéseknek](/developers/docs/smart-contracts/). Ehhez a bonyolultabb funkcióhoz egy szofisztikáltabb analógia szükségeltetik. Egy elosztott főkönyv helyett az Ethereum egy elosztott [állapot gép](https://wikipedia.org/wiki/Finite-state_machine). Az Ethereum állapota egy nagy adatstruktúra, mely nem csak a számlákat és az egyenlegeket tárolja, de egy _állapot gépet_ is, mely blokkról blokkra változhat egy előre meghatározott szabályrendszer szerint és tetszőleges gépi kódot tud végrehajtani. Az állatot blokkról blokkra történő megváltozásának specifikus szabályait az EVM rögzíti. ![Egy diagram mely az EVM felépítését mutatja be](./evm.png) _Diagram átvéve az [Ethereum EVM illusztrálva](https://takenobu-hs.github.io/downloads/ethereum_evm_illustrated.pdf)_ anyagból @@ -32,7 +32,7 @@ Adott egy régebbi érvényes állapot `(S)` és egy új érvényes tranzakciók ### Állapot {#state} -Az Ethereum kontextusában az állapot egy hatalmas adatstruktúra, melyet úgy hívnak, hogy [módosított Merkle Patricia-fa](https://eth.wiki/en/fundamentals/patricia-tree), mely az összes [számlát](/developers/docs/accounts/) hashekkel köti össze és redukálja egy gyökér hash-é, melyet a blokklánc tárol. +Az Ethereum kontextusában az állapot egy hatalmas adatstruktúra, amelyet úgy hívnak, hogy [módosított Merkle Patricia-fa](/developers/docs/data-structures-and-encoding/patricia-merkle-trie/), amely az összes [számlát](/developers/docs/accounts/) hashekkel köti össze és redukálja egy gyökér hash-é, amelyet a blokklánc tárol. ### Tranzakciók {#transactions} @@ -42,34 +42,38 @@ A szerződés létrehozás egy új szerződéses számla létrehozásával jár, ## EVM Utasítások {#evm-instructions} -Az EVM egy [verem gépként](https://wikipedia.org/wiki/Stack_machine) fut 1024 elemes mélységgel. Minden egyes elem egy 256 bites szó, melyek a maximális kompatibilitásért lettek kiválasztva az SHA-3-256 hash rendszerrel. +Az EVM egy [veremgépként](https://wikipedia.org/wiki/Stack_machine) fut 1024 elemes mélységgel. Mindegyik tétel egy 256 bites szó, amelyet a 256 bitet kriptográfia használata miatt választottak (mint amilyen a Keccak-256 hash-e vagy secp256k1 aláírások). -A végrehajtás alatt az EVM egy tranziens _memóriát_ tart fenn (mint egy szócímzett bájttömböt), mely nem folytatólagos a tranzakciók között. +A végrehajtás alatt az EVM egy tranziens _memóriát_ tart fenn (mint egy szócímzett bájttömböt), amely nem folytatólagos a tranzakciók között. -A szerződések azonban tartalmaznak egy Merkle Patricia _tárhely_ fát (mint egy szócímezhető szó tömböt), mely hozzá van rendelve a kérdéses számlához és része a globális állapotnak. +A szerződések azonban tartalmaznak egy Merkle Patricia _tároló_ fát (mint egy szócímezhető szótömböt), amely hozzá van rendelve a kérdéses számlához és része a globális státusznak. -A befordított okosszerződés bájtkód EVM [opcode-ként](https://www.ethervm.io/) fut le, melyek standard stack műveletek, mint a `XOR`, `AND`, `ADD`, `SUB`, stb. Az EVM egy pár blokklánc specifikus stack műveletet is implementál, mint az `ADDRESS`, `BALANCE`, `SHA3`, `BLOCKHASH`, stb. +A befordított okosszerződés bájtkódja EVM-[opcode-ként](/developers/docs/evm/opcodes) fut le, amely standard stack művelet, mint a `XOR`, `AND`, `ADD`, `SUB` stb. Az EVM egy pár blokklánc-specifikus stack-műveletet is implementál, mint az `ADDRESS`, `BALANCE`, `BLOCKHASH` stb. -![Egy diagram, mely azt mutatja, hogy hol van szükség gázra az EVM műveleteknél](../gas/gas.png) _Diagramok átvéve az [Ethereum EVM illusztrálva](https://takenobu-hs.github.io/downloads/ethereum_evm_illustrated.pdf)_ anyagból +![Egy diagram, amely azt mutatja, hogy hol van szükség gázra az EVM-műveleteknél](../gas/gas.png) _Diagramok átvéve az [Illusztrált Ethereum EVM](https://takenobu-hs.github.io/downloads/ethereum_evm_illustrated.pdf)_ anyagból ## EVM Implementációk {#evm-implementations} -Az összes EVM implementációnak meg kell felelnie az Ethereum sárgakönyvben megfogalmazott specifikációnak. +Az összes EVM-implementációnak meg kell felelnie az Ethereum sárgakönyvben megfogalmazott specifikációnak. -Az Ethereum 5 éves története alatt az EVM több revízió alatt átesett és számos EVM implementáció létezik különböző programozási nyelveken. +Az Ethereum kilenc éves története alatt az EVM több revízión átesett és számos EVM-implementáció létezik különböző programozási nyelveken. -Az összes [Ethereum kliens](/developers/docs/nodes-and-clients/#execution-clients) tartalmaz egy EVM implementációt. Továbbá több önálló implementáció létezik, többek között: +Az [Ethereum végrehajtási kliensek](/developers/docs/nodes-and-clients/#execution-clients) tartalmaznak egy EVM-implementációt. Továbbá több önálló implementáció létezik, ilyen például: - [Py-EVM](https://github.com/ethereum/py-evm) - _Python_ - [evmone](https://github.com/ethereum/evmone) - _C++_ - [ethereumjs-vm](https://github.com/ethereumjs/ethereumjs-vm) - _JavaScript_ - [eEVM](https://github.com/microsoft/eevm) - _C++_ +- [revm](https://github.com/bluealloy/revm) - _Rust_ ## További olvasnivaló {#further-reading} -- [Ethereum Sárgakönyv](https://ethereum.github.io/yellowpaper/paper.pdf). +- [Ethereum sárga könyv](https://ethereum.github.io/yellowpaper/paper.pdf) +- [Jello könyv, vagyis a KEVM: az EVM szemantikái K-ban](https://jellopaper.org/) - [The Beigepaper](https://github.com/chronaeon/beigepaper) - [Ethereum Virtuális Gép Opcode-ok](https://www.ethervm.io/) +- [Ethereum Virtuális Gép operációskódjainak interaktív referenciája](https://www.evm.codes/) +- [Rövid bevezetés a Solidity dokumentációjába](https://docs.soliditylang.org/en/latest/introduction-to-smart-contracts.html#index-6) ## Kapcsolódó témák {#related-topics} diff --git a/public/content/translations/hu/developers/docs/evm/opcodes/index.md b/public/content/translations/hu/developers/docs/evm/opcodes/index.md new file mode 100644 index 00000000000..ab216ed7234 --- /dev/null +++ b/public/content/translations/hu/developers/docs/evm/opcodes/index.md @@ -0,0 +1,170 @@ +--- +title: Az EVM operációs kódjai +description: Az Ethereum Virtuális Gép összes elérhető operációs kódja. +lang: hu +--- + +## Áttekintés {#overview} + +Ez az EVM referenciaoldalának [wolflo/evm-opcodes](https://github.com/wolflo/evm-opcodes) frissített változata. A [Sárga könyvből](https://ethereum.github.io/yellowpaper/paper.pdf), a [Jello könyvből](https://jellopaper.org/evm/) és a [geth](https://github.com/ethereum/go-ethereum) implementációból származik. Ez egy mindenki számára elérhető referencia, de nem feltétlen szigorú. Ha biztosra szeretne menni, akkor használja a Jello könyvet vagy egy kliens implementációját. + +Interaktív referenciát keres? Tekintse meg az [evm.codes](https://www.evm.codes/) oldalt. + +A dinamikus gázköltséggel működő műveletekhez nézze meg a következőt: [gas.md](https://github.com/wolflo/evm-opcodes/blob/main/gas.md). + +Tipp: a teljes sorokhoz használja a `[shift] + scroll` funkciót, hogy vízszintesen tudjon mozogni. + +| Stack | Név | Gáz | Kezdő stack | Eredmény stack | Memória / Tárhely | Megjegyzések | +|:-----:|:-------------- |:-----------------------------------------------------------------------------------------------:|:------------------------------------------------ |:-------------------------------------------- |:----------------------------------------------------------------------------- |:--------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| 00 | STOP | 0 | | | | halt execution | +| 01 | ADD | 3 | `a, b` | `a + b` | | (u)int256 addition modulo 2\*\*256 | +| 02 | MUL | 5 | `a, b` | `a * b` | | (u)int256 multiplication modulo 2\*\*256 | +| 03 | SUB | 3 | `a, b` | `a - b` | | (u)int256 addition modulo 2\*\*256 | +| 04 | DIV | 5 | `a, b` | `a // b` | | uint256 division | +| 05 | SDIV | 5 | `a, b` | `a // b` | | int256 division | +| 06 | MOD | 5 | `a, b` | `a % b` | | uint256 modulus | +| 07 | SMOD | 5 | `a, b` | `a % b` | | int256 modulus | +| 08 | ADDMOD | 8 | `a, b, N` | `(a + b) % N` | | (u)int256 addition modulo N | +| 09 | MULMOD | 8 | `a, b, N` | `(a * b) % N` | | (u)int256 multiplication modulo N | +| 0A | EXP | [A1](https://github.com/wolflo/evm-opcodes/blob/main/gas.md#a1-exp) | `a, b` | `a ** b` | | uint256 exponentiation modulo 2\*\*256 | +| 0B | SIGNEXTEND | 5 | `b, x` | `SIGNEXTEND(x, b)` | | [sign extend](https://wikipedia.org/wiki/Sign_extension) `x` from `(b+1)` bytes to 32 bytes | +| 0C-0F | _invalid_ | | | | | | +| 10 | LT | 3 | `a, b` | `a < b` | | uint256 less-than | +| 11 | GT | 3 | `a, b` | `a > b` | | uint256 greater-than | +| 12 | SLT | 3 | `a, b` | `a < b` | | int256 less-than | +| 13 | SGT | 3 | `a, b` | `a > b` | | int256 greater-than | +| 14 | EQ | 3 | `a, b` | `a == b` | | (u)int256 equality | +| 15 | ISZERO | 3 | `a` | `a == 0` | | (u)int256 iszero | +| 16 | AND | 3 | `a, b` | `a && b` | | bitwise AND | +| 17 | OR | 3 | `a, b` | `a \|\| b` | | bitwise OR | +| 18 | XOR | 3 | `a, b` | `a ^ b` | | bitwise XOR | +| 19 | NOT | 3 | `a` | `~a` | | bitwise NOT | +| 1A | BYTE | 3 | `i, x` | `(x >> (248 - i * 8)) && 0xFF` | | `i`th byte of (u)int256 `x`, from the left | +| 1B | SHL | 3 | `shift, val` | `val << shift` | | shift left | +| 1C | SHR | 3 | `shift, val` | `val >> shift` | | logical shift right | +| 1D | SAR | 3 | `shift, val` | `val >> shift` | | arithmetic shift right | +| 1E-1F | _invalid_ | | | | | | +| 20 | KECCAK256 | [A2](https://github.com/wolflo/evm-opcodes/blob/main/gas.md#a2-sha3) | `ost, len` | `keccak256(mem[ost:ost+len-1])` | | keccak256 | +| 21-2F | _invalid_ | | | | | | +| 30 | ADDRESS | 2 | `.` | `address(this)` | | address of executing contract | +| 31 | BALANCE | [A5](https://github.com/wolflo/evm-opcodes/blob/main/gas.md#a5-balance-extcodesize-extcodehash) | `addr` | `addr.balance` | | balance, in wei | +| 32 | ORIGIN | 2 | `.` | `tx.origin` | | address that originated the tx | +| 33 | CALLER | 2 | `.` | `msg.sender` | | address of msg sender | +| 34 | CALLVALUE | 2 | `.` | `msg.value` | | msg value, in wei | +| 35 | CALLDATALOAD | 3 | `idx` | `msg.data[idx:idx+32]` | | read word from msg data at index `idx` | +| 36 | CALLDATASIZE | 2 | `.` | `len(msg.data)` | | length of msg data, in bytes | +| 37 | CALLDATACOPY | [A3](https://github.com/wolflo/evm-opcodes/blob/main/gas.md#a3-copy-operations) | `dstOst, ost, len` | `.` | mem[dstOst:dstOst+len-1] := msg.data[ost:ost+len-1] | copy msg data | +| 38 | CODESIZE | 2 | `.` | `len(this.code)` | | length of executing contract's code, in bytes | +| 39 | CODECOPY | [A3](https://github.com/wolflo/evm-opcodes/blob/main/gas.md#a3-copy-operations) | `dstOst, ost, len` | `.` | | mem[dstOst:dstOst+len-1] := this.code[ost:ost+len-1] | copy executing contract's bytecode | +| 3A | GASPRICE | 2 | `.` | `tx.gasprice` | | gas price of tx, in wei per unit gas [\*\*](https://eips.ethereum.org/EIPS/eip-1559#gasprice) | +| 3B | EXTCODESIZE | [A5](https://github.com/wolflo/evm-opcodes/blob/main/gas.md#a5-balance-extcodesize-extcodehash) | `addr` | `len(addr.code)` | | size of code at addr, in bytes | +| 3C | EXTCODECOPY | [A4](https://github.com/wolflo/evm-opcodes/blob/main/gas.md#a4-extcodecopy) | `addr, dstOst, ost, len` | `.` | mem[dstOst:dstOst+len-1] := addr.code[ost:ost+len-1] | copy code from `addr` | +| 3D | RETURNDATASIZE | 2 | `.` | `size` | | size of returned data from last external call, in bytes | +| 3E | RETURNDATACOPY | [A3](https://github.com/wolflo/evm-opcodes/blob/main/gas.md#a3-copy-operations) | `dstOst, ost, len` | `.` | mem[dstOst:dstOst+len-1] := returndata[ost:ost+len-1] | copy returned data from last external call | +| 3F | EXTCODEHASH | [A5](https://github.com/wolflo/evm-opcodes/blob/main/gas.md#a5-balance-extcodesize-extcodehash) | `addr` | `hash` | | hash = addr.exists ? keccak256(addr.code) : 0 | +| 40 | BLOCKHASH | 20 | `blockNum` | `blockHash(blockNum)` | | | +| 41 | COINBASE | 2 | `.` | `block.coinbase` | | address of miner of current block | +| 42 | TIMESTAMP | 2 | `.` | `block.timestamp` | | timestamp of current block | +| 43 | NUMBER | 2 | `.` | `block.number` | | number of current block | +| 44 | PREVRANDAO | 2 | `.` | `randomness beacon` | | randomness beacon | +| 45 | GASLIMIT | 2 | `.` | `block.gaslimit` | | gas limit of current block | +| 46 | CHAINID | 2 | `.` | `chain_id` | | push current [chain id](https://eips.ethereum.org/EIPS/eip-155) onto stack | +| 47 | SELFBALANCE | 5 | `.` | `address(this).balance` | | balance of executing contract, in wei | +| 48 | BASEFEE | 2 | `.` | `block.basefee` | | base fee of current block | +| 49-4F | _invalid_ | | | | | | +| 50 | POP | 2 | `_anon` | `.` | | remove item from top of stack and discard it | +| 51 | MLOAD | 3[\*](https://github.com/wolflo/evm-opcodes/blob/main/gas.md#a0-1-memory-expansion) | `ost` | `mem[ost:ost+32]` | | read word from memory at offset `ost` | +| 52 | MSTORE | 3[\*](https://github.com/wolflo/evm-opcodes/blob/main/gas.md#a0-1-memory-expansion) | `ost, val` | `.` | mem[ost:ost+32] := val | write a word to memory | +| 53 | MSTORE8 | 3[\*](https://github.com/wolflo/evm-opcodes/blob/main/gas.md#a0-1-memory-expansion) | `ost, val` | `.` | mem[ost] := val && 0xFF | write a single byte to memory | +| 54 | SLOAD | [A6](https://github.com/wolflo/evm-opcodes/blob/main/gas.md#a6-sload) | `key` | `storage[key]` | | read word from storage | +| 55 | SSTORE | [A7](https://github.com/wolflo/evm-opcodes/blob/main/gas.md#a7-sstore) | `key, val` | `.` | storage[key] := val | write word to storage | +| 56 | JUMP | 8 | `dst` | `.` | | `$pc := dst` mark that `pc` is only assigned if `dst` is a valid jumpdest | +| 57 | JUMPI | 10 | `dst, condition` | `.` | | `$pc := condition ? dst : $pc + 1` | +| 58 | PC | 2 | `.` | `$pc` | | program counter | +| 59 | MSIZE | 2 | `.` | `len(mem)` | | size of memory in current execution context, in bytes | +| 5A | GAS | 2 | `.` | `gasRemaining` | | | +| 5B | JUMPDEST | 1 | | | mark valid jump destination | a valid jump destination for example a jump destination not inside the push data | +| 5C-5E | _invalid_ | | | | | | +| 5F | PUSH0 | 2 | `.` | `uint8` | | az állandó 0 érték áttolása a stackre | +| 60 | PUSH1 | 3 | `.` | `uint8` | | push 1-byte value onto stack | +| 61 | PUSH2 | 3 | `.` | `uint16` | | push 2-byte value onto stack | +| 62 | PUSH3 | 3 | `.` | `uint24` | | push 3-byte value onto stack | +| 63 | PUSH4 | 3 | `.` | `uint32` | | push 4-byte value onto stack | +| 64 | PUSH5 | 3 | `.` | `uint40` | | push 5-byte value onto stack | +| 65 | PUSH6 | 3 | `.` | `uint48` | | push 6-byte value onto stack | +| 66 | PUSH7 | 3 | `.` | `uint56` | | push 7-byte value onto stack | +| 67 | PUSH8 | 3 | `.` | `uint64` | | push 8-byte value onto stack | +| 68 | PUSH9 | 3 | `.` | `uint72` | | push 9-byte value onto stack | +| 69 | PUSH10 | 3 | `.` | `uint80` | | push 10-byte value onto stack | +| 6A | PUSH11 | 3 | `.` | `uint88` | | push 11-byte value onto stack | +| 6B | PUSH12 | 3 | `.` | `uint96` | | push 12-byte value onto stack | +| 6C | PUSH13 | 3 | `.` | `uint104` | | push 13-byte value onto stack | +| 6D | PUSH14 | 3 | `.` | `uint112` | | push 14-byte value onto stack | +| 6E | PUSH15 | 3 | `.` | `uint120` | | push 15-byte value onto stack | +| 6F | PUSH16 | 3 | `.` | `uint128` | | push 16-byte value onto stack | +| 70 | PUSH17 | 3 | `.` | `uint136` | | push 17-byte value onto stack | +| 71 | PUSH18 | 3 | `.` | `uint144` | | push 18-byte value onto stack | +| 72 | PUSH19 | 3 | `.` | `uint152` | | push 19-byte value onto stack | +| 73 | PUSH20 | 3 | `.` | `uint160` | | push 20-byte value onto stack | +| 74 | PUSH21 | 3 | `.` | `uint168` | | push 21-byte value onto stack | +| 75 | PUSH22 | 3 | `.` | `uint176` | | push 22-byte value onto stack | +| 76 | PUSH23 | 3 | `.` | `uint184` | | push 23-byte value onto stack | +| 77 | PUSH24 | 3 | `.` | `uint192` | | push 24-byte value onto stack | +| 78 | PUSH25 | 3 | `.` | `uint200` | | push 25-byte value onto stack | +| 79 | PUSH26 | 3 | `.` | `uint208` | | push 26-byte value onto stack | +| 7A | PUSH27 | 3 | `.` | `uint216` | | push 27-byte value onto stack | +| 7B | PUSH28 | 3 | `.` | `uint224` | | push 28-byte value onto stack | +| 7C | PUSH29 | 3 | `.` | `uint232` | | push 29-byte value onto stack | +| 7D | PUSH30 | 3 | `.` | `uint240` | | push 30-byte value onto stack | +| 7E | PUSH31 | 3 | `.` | `uint248` | | push 31-byte value onto stack | +| 7F | PUSH32 | 3 | `.` | `uint256` | | push 32-byte value onto stack | +| 80 | DUP1 | 3 | `a` | `a, a` | | clone 1st value on stack | +| 81 | DUP2 | 3 | `_, a` | `a, _, a` | | clone 2nd value on stack | +| 82 | DUP3 | 3 | `_, _, a` | `a, _, _, a` | | clone 3rd value on stack | +| 83 | DUP4 | 3 | `_, _, _, a` | `a, _, _, _, a` | | clone 4th value on stack | +| 84 | DUP5 | 3 | `..., a` | `a, ..., a` | | clone 5th value on stack | +| 85 | DUP6 | 3 | `..., a` | `a, ..., a` | | clone 6th value on stack | +| 86 | DUP7 | 3 | `..., a` | `a, ..., a` | | clone 7th value on stack | +| 87 | DUP8 | 3 | `..., a` | `a, ..., a` | | clone 8th value on stack | +| 88 | DUP9 | 3 | `..., a` | `a, ..., a` | | clone 9th value on stack | +| 89 | DUP10 | 3 | `..., a` | `a, ..., a` | | clone 10th value on stack | +| 8A | DUP11 | 3 | `..., a` | `a, ..., a` | | clone 11th value on stack | +| 8B | DUP12 | 3 | `..., a` | `a, ..., a` | | clone 12th value on stack | +| 8C | DUP13 | 3 | `..., a` | `a, ..., a` | | clone 13th value on stack | +| 8D | DUP14 | 3 | `..., a` | `a, ..., a` | | clone 14th value on stack | +| 8E | DUP15 | 3 | `..., a` | `a, ..., a` | | clone 15th value on stack | +| 8F | DUP16 | 3 | `..., a` | `a, ..., a` | | clone 16th value on stack | +| 90 | SWAP1 | 3 | `a, b` | `b, a` | | | +| 91 | SWAP2 | 3 | `a, _, b` | `b, _, a` | | | +| 92 | SWAP3 | 3 | `a, _, _, b` | `b, _, _, a` | | | +| 93 | SWAP4 | 3 | `a, _, _, _, b` | `b, _, _, _, a` | | | +| 94 | SWAP5 | 3 | `a, ..., b` | `b, ..., a` | | | +| 95 | SWAP6 | 3 | `a, ..., b` | `b, ..., a` | | | +| 96 | SWAP7 | 3 | `a, ..., b` | `b, ..., a` | | | +| 97 | SWAP8 | 3 | `a, ..., b` | `b, ..., a` | | | +| 98 | SWAP9 | 3 | `a, ..., b` | `b, ..., a` | | | +| 99 | SWAP10 | 3 | `a, ..., b` | `b, ..., a` | | | +| 9A | SWAP11 | 3 | `a, ..., b` | `b, ..., a` | | | +| 9B | SWAP12 | 3 | `a, ..., b` | `b, ..., a` | | | +| 9C | SWAP13 | 3 | `a, ..., b` | `b, ..., a` | | | +| 9D | SWAP14 | 3 | `a, ..., b` | `b, ..., a` | | | +| 9E | SWAP15 | 3 | `a, ..., b` | `b, ..., a` | | | +| 9F | SWAP16 | 3 | `a, ..., b` | `b, ..., a` | | | +| A0 | LOG0 | [A8](https://github.com/wolflo/evm-opcodes/blob/main/gas.md#a8-log-operations) | `ost, len` | `.` | | LOG0(memory[ost:ost+len-1]) | +| A1 | LOG1 | [A8](https://github.com/wolflo/evm-opcodes/blob/main/gas.md#a8-log-operations) | `ost, len, topic0` | `.` | | LOG1(memory[ost:ost+len-1], topic0) | +| A2 | LOG2 | [A8](https://github.com/wolflo/evm-opcodes/blob/main/gas.md#a8-log-operations) | `ost, len, topic0, topic1` | `.` | | LOG1(memory[ost:ost+len-1], topic0, topic1) | +| A3 | LOG3 | [A8](https://github.com/wolflo/evm-opcodes/blob/main/gas.md#a8-log-operations) | `ost, len, topic0, topic1, topic2` | `.` | | LOG1(memory[ost:ost+len-1], topic0, topic1, topic2) | +| A4 | LOG4 | [A8](https://github.com/wolflo/evm-opcodes/blob/main/gas.md#a8-log-operations) | `ost, len, topic0, topic1, topic2, topic3` | `.` | | LOG1(memory[ost:ost+len-1], topic0, topic1, topic2, topic3) | +| A5-EF | _invalid_ | | | | | | +| F0 | CREATE | [A9](https://github.com/wolflo/evm-opcodes/blob/main/gas.md#a9-create-operations) | `val, ost, len` | `addr` | | addr = keccak256(rlp([address(this), this.nonce])) | +| F1 | CALL | [AA](https://github.com/wolflo/evm-opcodes/blob/main/gas.md#aa-call-operations) | gas, addr, val, argOst, argLen, retOst, retLen | `success` | mem[retOst:retOst+retLen-1] := returndata | | +| F2 | CALLCODE | [AA](https://github.com/wolflo/evm-opcodes/blob/main/gas.md#aa-call-operations) | `gas, addr, val, argOst, argLen, retOst, retLen` | `success` | mem[retOst:retOst+retLen-1] = returndata | same as DELEGATECALL, but does not propagate original msg.sender and msg.value | +| F3 | RETURN | 0[\*](https://github.com/wolflo/evm-opcodes/blob/main/gas.md#a0-1-memory-expansion) | `ost, len` | `.` | | return mem[ost:ost+len-1] | +| F4 | DELEGATECALL | [AA](https://github.com/wolflo/evm-opcodes/blob/main/gas.md#aa-call-operations) | `gas, addr, argOst, argLen, retOst, retLen` | `success` | mem[retOst:retOst+retLen-1] := returndata | | +| F5 | CREATE2 | [A9](https://github.com/wolflo/evm-opcodes/blob/main/gas.md#a9-create-operations) | `val, ost, len, salt` | `addr` | | addr = keccak256(0xff ++ address(this) ++ salt ++ keccak256(mem[ost:ost+len-1]))[12:] | +| F6-F9 | _invalid_ | | | | | | +| FA | STATICCALL | [AA](https://github.com/wolflo/evm-opcodes/blob/main/gas.md#aa-call-operations) | `gas, addr, argOst, argLen, retOst, retLen` | `success` | mem[retOst:retOst+retLen-1] := returndata | | +| FB-FC | _invalid_ | | | | | | +| FD | REVERT | 0[\*](https://github.com/wolflo/evm-opcodes/blob/main/gas.md#a0-1-memory-expansion) | `ost, len` | `.` | | revert(mem[ost:ost+len-1]) | +| FE | INVALID | [AF](https://github.com/wolflo/evm-opcodes/blob/main/gas.md#af-invalid) | | | designated invalid opcode - [EIP-141](https://eips.ethereum.org/EIPS/eip-141) | | +| FF | SELFDESTRUCT | [AB](https://github.com/wolflo/evm-opcodes/blob/main/gas.md#ab-selfdestruct) | `addr` | `.` | | | destroy contract and sends all funds to `addr` | diff --git a/public/content/translations/hu/developers/docs/frameworks/index.md b/public/content/translations/hu/developers/docs/frameworks/index.md index 53532d0dc26..d5d41424dfd 100644 --- a/public/content/translations/hu/developers/docs/frameworks/index.md +++ b/public/content/translations/hu/developers/docs/frameworks/index.md @@ -18,61 +18,98 @@ A keretrendszerek olyan dobozon-kívüli funkciókat kínálnak, melyekkel: ## Előfeltételek {#prerequisites} -Mielőtt elmerülnél a keretrendszerekben, javasoljuk, hogy olvasd át a bevezetés a [dappokba](/developers/docs/dapps/) és a [Ethereum stack](/developers/docs/ethereum-stack/) cikkeket. +Mielőtt elmerülne a keretrendszerekben, javasoljuk, hogy olvassa át a bevezetés a [dappokba](/developers/docs/dapps/) és a [Ethereum stack](/developers/docs/ethereum-stack/) cikkeket. ## Elérhető keretrendszerek {#available-frameworks} -**Truffle -** **_Egy fejlesztői környezet, testing keretrendszer, build pipeline, és további eszközök tartoznak bele._** +**Foundry** – **_A Foundry egy gyors, hordozható és moduláris eszközrendszer az Ethereum alkalmazásfejlesztésre._** -- [trufflesuite.com](https://www.trufflesuite.com/) -- [GitHub](https://github.com/trufflesuite/truffle) - -**Epirus -** **_Egy platform blokklánc alkalmazások fejlesztésére, telepítésére és monitorozására a JVM-en_** - -- [Honlap](https://www.web3labs.com/epirus) -- [Dokumentáció](https://docs.epirus.io) -- [GitHub](https://github.com/epirus-io/epirus-cli) +- [Foundry telepítése](https://book.getfoundry.sh/) +- [Foundry könyv](https://book.getfoundry.sh/) +- [Foundry közösségi csevegés Telegramon](https://t.me/foundry_support) +- [Lenyűgöző Foundry](https://github.com/crisgarner/awesome-foundry) -**Hardhat -** **_Ethereum fejlesztői környezet profiknak_** +**Hardhat -** **_Ethereum fejlesztői környezet profiknak._** - [hardhat.org](https://hardhat.org) - [GitHub](https://github.com/nomiclabs/hardhat) -**OpenZeppelin SDK -** **_The Ultimate Smart Contract Toolkit: Egy eszköztár okosszerződések fejlesztéséhez, összeállításához, továbbfejlesztéséhez, telepítéséhez és az okosszerződésekkel való interakciókhoz._** +**Ape -** **_Az okosszerződés-fejlesztői eszköz a pythonisták, adattudósok és biztonsági szakértők számára._** -- [OpenZeppelin SDK](https://openzeppelin.com/sdk/) -- [GitHub](https://github.com/OpenZeppelin/openzeppelin-sdk) -- [Közösségi Fórum](https://forum.openzeppelin.com/c/support/17) +- [Dokumentáció](https://docs.apeworx.io/ape/stable/) +- [GitHub](https://github.com/ApeWorX/ape) -**Brownie -** **_Python alapú fejlesztői környezet és testing keretrendszer._** +**Web3j -** **_Platform a blokklánc alkalmazások fejlesztésére a JVM-n._** -- [Dokumentáció](https://eth-brownie.readthedocs.io/en/latest/) -- [GitHub](https://github.com/eth-brownie/brownie) +- [Honlap](https://www.web3labs.com/web3j-sdk) +- [Dokumentáció](https://docs.web3j.io) +- [GitHub](https://github.com/web3j/web3j) -**Create Eth App -** **_Készíts Ethereum alapú appokat egy paranccsal. UI keretek és DeFi sablonok széles választékával rendelkezik, amelyek közül választhatsz._** +**Create Eth App -** **_Készítsen Ethereum-alapú appokat egy paranccsal. UI-keretrendszerek és DeFi-sablonok széles választék._** - [GitHub](https://github.com/paulrberg/create-eth-app) - [Sablonok](https://github.com/PaulRBerg/create-eth-app/tree/develop/templates) -**scaffold-eth -** **_Hardhat + Create Eth App: minden, amire szükséged van, hogy elkezdj okosszerződések által működtetett decentralizált alkalmazásokat fejleszteni._** +**Scaffold-Eth -** **_Ethers.js + Hardhat + React komponensek és hook-ok web3-hoz: minden, amire szükség van, hogy el tudjon kezdeni okosszerződések által működtetett decentralizált alkalmazásokat fejleszteni._** - [GitHub](https://github.com/austintgriffith/scaffold-eth) -**The Graph -** **_Blokklánc adatok hatékony lekérdezése a The Graph-fal_** +**Tenderly -** **_Web3 fejlesztői platform, amely lehetővé teszi a blokklánc-fejlesztőknek, hogy okosszerződéseket építsenek, teszteljenek, debuggoljanak, felügyeljenek és üzemeltessenek, illetve fejlesszék a dapp UX-t._** + +- [Honlap](https://tenderly.co/) +- [Dokumentáció](https://docs.tenderly.co/ethereum-development-practices) + +**The Graph -** **_Blokkláncadatok hatékony lekérdezése a The Graph segítségével._** - [Honlap](https://thegraph.com/) - [Útmutató](/developers/tutorials/the-graph-fixing-web3-data-querying/) **Alchemy -** **_Ethereum Fejlesztési Platform._** -- [alchemyapi.io](https://alchemyapi.io/) +- [alchemy.com](https://www.alchemy.com/) - [GitHub](https://github.com/alchemyplatform) -- [Discord](https://discord.gg/kwqVnrA) +- [Discord](https://discord.com/invite/A39JVCM) + +**NodeReal -** **_Ethereum fejlesztői platform._** + +- [Nodereal.io](https://nodereal.io/) +- [GitHub](https://github.com/node-real) +- [Discord](https://discord.gg/V5k5gsuE) + +**thirdweb SDK -** **_Építsen web3 alkalmazásokat, amelyek interakcióba lépnek az okosszerződésével az erőteljes SDK-kat és CLI-t használva._** + +- [Dokumentáció](https://portal.thirdweb.com/sdk/) +- [GitHub](https://github.com/thirdweb-dev/) + +**Chainstack -** **_Web3 (Ethereum és egyéb) fejlesztői platform._** + +- [chainstack.com](https://www.chainstack.com/) +- [GitHub](https://github.com/chainstack) +- [Discord](https://discord.gg/BSb5zfp9AT) + +**Brownie -** **_Python-alapú fejlesztői környezet és tesztelési keretrendszer._** + +- [Dokumentáció](https://eth-brownie.readthedocs.io/en/latest/) +- [GitHub](https://github.com/eth-brownie/brownie) +- **A Brownie karbantartása jelenleg szünetel** + +**Truffle -** **_Fejlesztői környezet, tesztelési keretrendszer, folyamatépítő és további eszközök._** + +- [trufflesuite.com](https://www.trufflesuite.com/) +- [GitHub](https://github.com/trufflesuite/truffle) +- **A Truffle fejlesztése befejeződött** – [további információk](https://twitter.com/trufflesuite/status/1704946902393860589?t=NlIWeLTbBSAaJmS5uUAhSA&s=19) + +**OpenZeppelin SDK -** **_The Ultimate Smart Contract Toolkit: egy eszköztár okosszerződések fejlesztéséhez, összeállításához, továbbfejlesztéséhez, telepítéséhez és az okosszerződésekkel való interakciókhoz._** + +- [OpenZeppelin SDK](https://openzeppelin.com/sdk/) +- [GitHub](https://github.com/OpenZeppelin/openzeppelin-sdk) +- [Közösségi Fórum](https://forum.openzeppelin.com/c/support/17) +- **Az OpenZeppelin SDK fejlesztése befejeződött** ## További olvasnivaló {#further-reading} -_Ismersz olyan közösségi anyagot, amely segített neked? Módosítsd az oldalt és add hozzá!_ +_Van olyan közösségi erőforrása, amely segített Önnek? Szerkessze ezt az oldalt, és adja hozzá!_ ## Kapcsolódó témák {#related-topics} -- [Állíts fel egy helyi fejlesztői környezetet](/developers/local-environment/) +- [Helyi fejlesztői környezet felállítása](/developers/local-environment/) diff --git a/public/content/translations/hu/developers/docs/gas/index.md b/public/content/translations/hu/developers/docs/gas/index.md index 5aef192db85..e498b023069 100644 --- a/public/content/translations/hu/developers/docs/gas/index.md +++ b/public/content/translations/hu/developers/docs/gas/index.md @@ -2,49 +2,154 @@ title: Gáz és tranzakciós díjak description: lang: hu -incomplete: true -isOutdated: true --- Az gáz (Gas) nélkülözhetetlen az Ethereum hálózaton. Ez az üzemanyag, amitől működik, ahogyan az autóknak is szükségük van benzinre, hogy menjenek. ## Előfeltételek {#prerequisites} -Hogy jobban megértsd ezt az oldalt, javasoljuk, hogy előbb olvasd el a [tranzakciókról](/developers/docs/transactions/) és az [EVM-ről](/developers/docs/evm/) szóló oldalakat. +Hogy jobban megértse ezt az oldalt, javasoljuk, hogy olvassa el a [tranzakciókról](/developers/docs/transactions/) és az [EVM-ről](/developers/docs/evm/) szóló oldalakat. ## Mi az a gáz? {#what-is-gas} A gáz a számítási erőfeszítés mértékegységét jelenti, mely bizonyos műveletek végrehajtásához szükséges az Ethereum hálózaton. -Mivel minden egyes utalás az Ethereum hálózaton számítási erőforrást igényel, minden tranzakciónak van egy díja. A gáz a tranzakciós díj, ami szükséges a tranzakció sikeres lebonyolításához. +Mivel az Ethereum-tranzakciók számítási kapacitást igényelnek a végrehajtáshoz, ezeket ki kell fizetni, hogy a hálózat ne legyen sebezhető a szemeteléssel vagy a végtelen ciklusokat indító logikákkal szemben. A számításokért gázdíj formájában kell fizetni. -![Egy diagram, mely azt mutatja, hogy hol van szükség gázra az EVM műveleteknél](./gas.png) _Diagram átvéve az [Ethereum EVM illusztrálva](https://takenobu-hs.github.io/downloads/ethereum_evm_illustrated.pdf)_ anyagból +A gázdíj **a művelet végrehajtásához szükséges gáz mennyisége, szorozva a gázegység költségével**. A díjat a tranzakció sikerességétől függetlenül is ki kell fizetni. -Lényegében a gáz díjakat az Ethereum natív valutájában, Etherben (ETH) lehet kifizetni. A gáz árak Gwei-ben vannak feltüntetve, mely az ETH-nek egy egysége - minden Gwei 0.000000001 ETH-tel egyenlő (10-9 ETH). Például ahelyett, hogy azt mondanánk, hogy a gáz 0.000000001 Ether-be kerül, azt mondjuk, hogy a gáz ára 1 Gwei. +![Egy diagram, amely azt mutatja, hogy hol van szükség gázra az EVM-műveleteknél](./gas.png) _Diagram átvéve az [Ethereum EVM illusztrálva](https://takenobu-hs.github.io/downloads/ethereum_evm_illustrated.pdf)_ anyagból -Az alábbi videó jó áttekintés ad, hogy miért van szükségünk a gázra: +A gázdíjakat az Ethereum saját valutájában, etherben (ETH) kell kifizetni. A gázdíjakat általában gwei-ben adják meg, ami az ETH címlete. Egy gwei az ETH egymilliárdnyi részével (0,000000001 ETH vagy 10-9 ETH) egyenlő. - +Például ahelyett, hogy azt mondanánk, hogy a gáz 0,000000001 ether-be kerül, azt mondjuk, hogy a gáz ára 1 gwei. -## Miért létezik az gáz? {#why-do-gas-fees-exist} +A gwei a giga-wei-ből ered, ami milliárd weit jelent. Egy gwei az egy milliárd wei. A wei (amit [Wei Dai](https://wikipedia.org/wiki/Wei_Dai) után neveztek el, aki a [b-pénz feltalálója](https://www.investopedia.com/terms/b/bmoney.asp)) az ETH legkisebb egysége. -Röviden, a gáz tartja biztonságban az Ethereum hálózatot. Azzal, hogy minden hálózaton végrehajtott számítás egy díjat von maga után, megelőzzük, hogy ártó személyek túlterheljék a hálózatot. Azért, hogy megelőzzük a véletlen vagy ártó szándékú végtelen ciklusokat vagy más számítási pazarlással járó kódot, minden egyes tranzakciónak be kell állítani egy határt, hogy mennyi számítási lépést hajthat végre a kódlefutás. A számítás alap mértékegysége a "gáz". +## Hogyan kerül kiszámításra a gázdíj? {#how-are-gas-fees-calculated} -Annak ellenére, hogy a tranzakciós díjak limitálva vannak, a nem felhasznált üzemanyag visszajut az utaló félhez. +Amikor a felhasználó egy tranzakciót indít, akkor ki tudja választani, hogy mennyi gázdíjat hajlandó fizetni a végrehajtásért. Bizonyos gázmennyiség felajánlásával ajánlatot tesz, hogy az adott tranzakció bekerüljön a következő blokkba. Ha túl kicsi az összeg, akkor a validátorok kisebb valószínűséggel kapják fel a tranzakciót, így az később vagy esetleg egyáltalán nem kerül feldolgozásra. Ha túl sokat ajánl valaki, akkor talán elveszíti az ETH-összeg egy részét. Hogyan érdemes meghatározni a fizetendő díjat? -![Egy diagram, mely a fel nem használt gáz visszatérítését ábrázolja](../transactions/gas-tx.png) _Diagram átvéve az [Ethereum EVM illusztrálva](https://takenobu-hs.github.io/downloads/ethereum_evm_illustrated.pdf)_ anyagból +A teljes gázdíj két komponensből áll: az `alapdíj` és az `elsőbbségi díj` (borravaló). -## További olvasnivaló {#further-reading} +Az `alapdíjat` a protokoll állapítja meg – ahhoz, hogy a tranzakció érvényes legyen, legalább ennyit ki kell érte fizetni. Az `elsőbbségi díj` egy borravaló az alapdíjon felül, amely miatt a tranzakció vonzóvá válhat a validátorok szemében, ezért felveszik azt a következő blokkba. + +Az a tranzakció, amely csak az `alapdíjat` fizeti meg, technikailag érvényes, de kevéssé valószínű, hogy bekerül, mert nem jelent motivációt a validátoroknak, hogy egy másik tranzakció helyett ezt válasszák. A „megfelelő” `elsőbbségi díjat` a hálózat használata határozza meg abban az időpontban, amikor a felhasználó a tranzakciót elküldi – ha nagy a kereslet, akkor magasabb `elsőbbségi díjat` kell fizetni, kisebb keresletnél pedig kevesebb is elég lehet. + +Például Jordannek ki kell fizetnie 1 ETH-t Taylornak. Az ETH transzferhez 21 000 egységnyi gázra van szükség, az alapdíj pedig 10 gwei. Jordan 2 gwei borravalót ad hozzá. + +A teljes díj így néz ki: + +`a felhasznált gáz mennyisége * (alapdíj + elsőbbségi díj)` + +ahol az `alapdíjat` a protokoll határozza meg, az `elsőbbségi díjat` pedig a felhasználó adja, hogy a validátort díjazza. + +pl. `21 000 * (10 + 2) = 252 000 gwei` (0,000252 ETH). + +Amikor Jordan elküldi a pénzt, akkor a számlájáról 1,000252 ETH-t fognak levonni. Taylornak pedig jóváírnak 1,0000 ETH-t. A validátor megkapja 0,000042 ETH borravalót. A 0,00021 ETH `alapdíjat` elégetik. + +### Alapdíj {#base-fee} + +Minden blokk rendelkezik alapdíjjal, ami egyfajta foglalási díjként működik. A blokkba csak úgy lehet bekerülni, hogy a gázért felajánlott ár eléri az alapdíjat. Az alapdíj az aktuális blokktól függetlenül kerül kiszámításra, inkább az előző blokk határozza meg, hogy a tranzakciós illeték kiszámíthatóbb legyen a felhasználók számára. Amikor a blokk létrejön, akkor ez az **alapdíj „elég”**, vagyis kivonják a körforgásból. + +Az alapdíj egy olyan képlettel kerül kiszámításra, amely összeveti az előző blokk méretét (a benne lévő tranzakciók által felhasznált gáz mennyisége) a célmérettel. Ha a blokk meghaladja a célméretet, akkor az alapdíj legfeljebb 12,5%-kal emelkedik blokkonként. Ez az exponenciális növekedés gazdasági szempontból eléri, hogy a blokkméret ne maradhasson ilyen nagy a végtelenségig. + +| Blokkszám | Benne lévő gáz | Díjnövekedés | Jelenlegi alapdíj | +| --------- | --------------:| ------------:| -----------------:| +| 1 | 15M | 0% | 100 gwei | +| 2 | 30M | 0% | 100 gwei | +| 3 | 30M | 12,5% | 112,5 gwei | +| 4 | 30M | 12,5% | 126,6 gwei | +| 5 | 30M | 12,5% | 142,4 gwei | +| 6 | 30M | 12,5% | 160,2 gwei | +| 7 | 30M | 12,5% | 180,2 gwei | +| 8 | 30M | 12,5% | 202,7 gwei | + +A táblázatot folytatva a 9. blokkba kerülő tranzakcióra a tárca megadja a felhasználónak, hogy a **maximális alapdíj**, amivel bekerülhet a következő blokkba, az `a jelenlegi alapdíj * 112,5%` vagy `202,7 gwei * 112,5% = 228,1 gwei`. + +Fontos megjegyezni, hogy nem valószínű, hogy egymás után sok teljes blokk készül, mert az alapdíj gyorsan növekszik a teljes blokk előtt. + +| Blokkszám | Benne lévő gáz | Díjnövekedés | Jelenlegi alapdíj | +| --------- | --------------:| ------------:| -----------------:| +| 30 | 30M | 12,5% | 2705,6 gwei | +| ... | ... | 12,5% | ... | +| 50 | 30M | 12,5% | 28 531,3 gwei | +| ... | ... | 12,5% | ... | +| 100 | 30M | 12,5% | 10 302 608,6 gwei | + +### Elsőbbségi díj (borravaló) {#priority-fee} + +Az elsőbbségi díj (borravaló) motiválja a validátorokat, hogy bevegyék a tranzakciót a blokkba. A borravaló nélkül a validátoroknak gazdaságilag ugyanolyan értékű, ha üresen marad a blokk, mint ha felvesznek bele tranzakciókat, mert a blokkért megkapják a díjazásukat. A kis értékű borravaló egy minimális ösztönzést ad a validátoroknak, hogy felvegyenek egy tranzakciót. Azokért a tételekért, amelyeket ugyanabban a blokkban, de a többi tétel előtt szeretnénk végrehajtatni, magasabb borravalót érdemes fizetni, hogy lekörözze a többi tranzakció ajánlatát. + +### Maximális díj {#maxfee} + +Ahhoz, hogy a hálózaton végre legyen hajtva egy tranzakció, a felhasználók meghatározhatnak egy maximális határt, amit még hajlandók kifizetni érte. Ennek az opcionális paraméternek a neve `maxFeePerGas`. A tranzakció végrehajtásához a maximális díjnak meg kell haladnia az alapdíj és a borravaló összegét. A tranzakció küldője visszakapja azt a különbözetet, ami a maximális díj, valamint az alapdíj és a borravaló összege között van. + +### Blokkméret {#block-size} + +Minden blokk 15 millió gáz célmérettel rendelkezik, de a blokk mérete a hálózati kereslet függvényében, egészen a 30 millió gáz határig (amely a célméret kétszerese) változik. A protokoll úgy éri el az egyensúlyi, átlagos 15 milliós blokkméretet, hogy a _tâtonnement_, vagyis a közelítés módszerét alkalmazza. Tehát, ha a blokkméret meghaladja a célértéket, akkor a protokoll megnöveli az alapdíjat a következő blokknál. Ugyanígy csökkenti az alapdíjat, ha a blokkméret kisebb, mint a célérték. Az alapdíj mértéke arányosan változik annak függvényében, hogy a jelenlegi blokkméret hogyan viszonyul a célmérethez. [Bővebben a blokkokról](/developers/docs/blocks/). + +### A gázdíjak kiszámítása a gyakorlatban {#calculating-fees-in-practice} + +A felhasználó egyértelműen kijelentheti, hogy mennyit hajlandó fizetni azért, hogy a tranzakciót végrehajtsák. Emellett a legtöbb tárcaszolgáltató automatikusan beállít egy javasolt tranzakciós illetéket (alapdíj + a javasolt elsőbbségi díj), hogy csökkentse a használat komplexitását. -- [Ethereum gáz, blokkok és a tranzakciós díjpiac megértése](https://medium.com/@eric.conner/understanding-ethereum-gas-blocks-and-the-fee-market-d5e268bf0a0e) -- [Ethereum gáz oktató anyag](https://defiprime.com/gas) +## Miért léteznek a gázdíjak? {#why-do-gas-fees-exist} + +Röviden, a gázdíjak tartják fenn a Ethereum hálózat biztonságát. Azzal, hogy a hálózaton végrehajtott minden számítás egy díjat von maga után, megelőzzük, hogy rosszhiszemű személyek túlterheljék a hálózatot. Azért, hogy megelőzzük a véletlen vagy ártó szándékú végtelen ciklusokat vagy más számítási pazarlással járó kódot, minden egyes tranzakciónak be kell állítani egy határt, hogy mennyi számítási lépést hajthat végre a kód futtatása. A számítás alapmértékegysége a „gáz”. + +Habár a tranzakció tartalmaz egy határt, a fel nem használt gázdíj visszakerül a felhasználóhoz. Például a `maximális díj – (alapdíj + borravaló)` visszatérítésre kerül. + +![Egy diagram, amely a fel nem használt gáz visszatérítését ábrázolja](../transactions/gas-tx.png) _Diagram átvéve az [Ethereum EVM illusztrálva](https://takenobu-hs.github.io/downloads/ethereum_evm_illustrated.pdf)_ anyagból + +## Mit jelent a gázkorlátozás? {#what-is-gas-limit} + +A gázkorlátozás arra utal, hogy egy tranzakció során legfeljebb mennyi gázra lesz szükség. A bonyolultabb tranzakciók, mint az [okosszerződések](/developers/docs/smart-contracts/), több számítási kapacitást igényelnek, ezért magasabb gázkorlátozásra van szükségük, mint egy egyszerű átutalásnál. Egy általános ETH-transzfer 21 000 egységi gázkorlátozást igényel. + +Például, ha egy egyszerű ETH transzferre azt állítjuk be, hogy a gázkorlátozás 50 000 legyen, az EVM felhasznál 21 000-et, a felhasználó pedig visszakapja a maradék 29 000-et. Ha viszont túl kevés gázt határozunk meg, például a gázkorlátozás 20 000 lesz egy egyszerű ETH transzferhez, akkor az EVM elfogyasztja a 20 000 egységet, és megpróbálja végrehajtani a tranzakciót, de nem tudja azt teljesíteni. Ekkor az EVM visszaforgatja a változtatásokat, de mivel a validátor már elvégzett 20 000 gáz mennyiségű munkát, ezért ez el lett fogyasztva. + +## Miért lehetnek olyan magasak a gázdíjak? {#why-can-gas-fees-get-so-high} + +A magas gázdíjak oka az Ethereum népszerűsége. Amikor nagy a kereslet, akkor a felhasználóknak magasabb borravalót kell ajánlaniuk, hogy lekörözzék a többi tranzakciót. A magasabb borravaló miatt az adott tranzakció valószínűleg bekerül a következő blokkba. Emellett a sokkal összetettebb okosszerződéses alkalmazások sok műveletet végezhetnek funkcióik támogatása érdekében, amivel sok gázt fogyasztanak el. + +## Kezdeményezések a gázköltségek csökkentésére {#initiatives-to-reduce-gas-costs} + +Az Ethereum [skálázhatósági fejlesztései](/roadmap/) meg fogják oldani a gázdíjak körüli problémák egy részét, így lehetővé teszik, hogy a platform ezernyi tranzakciót dolgozzon fel másodpercenként és globálisan skálázható legyen. + +A második blokkláncréteggel (L2) kialakított skálázás a fő kezdeményezés arra, hogy nagy mértékben javuljanak a gázköltségek, a felhasználói élmény és a skálázhatóság. [Bővebben az L2 skálázásról](/developers/docs/scaling/#layer-2-scaling). + +## Mi volt a London-frissítés (EIP-1559) lényege? {#what-was-the-london-upgrade-eip-1559} + +A London-frissítés előtt az Ethereum fix méretű blokkokkal működött. A magas hálózati kereslet idején ezek a blokkok teljes kapacitással működtek. Ennek eredményeképp a felhasználóknak sokszor várni kellett a kereslet csökkenésére, hogy bekerülhessenek egy blokkba, ami rontott a felhasználói élményen. A London-frissítés bevezette a változó méretű blokkokat az Ethereumon. + +A tranzakciós díjak számításának módja 2021. augusztusában megváltozott [a London-frissítéssel](/history/#london) az Ethereum hálózatán. A London Upgrade előtt a díjakat úgy kalkulálták, hogy elkülönítették az `alapdíjat` és az `elsőbbségi díjat`: + +Tegyük fel, hogy Alice-nek fizetnie kell Bobnak 1 ETH-t. A tranzakcióban a gázkorlátozás 21 000 egység, a gázdíj pedig 200 gwei. + +A teljes díj: `gáz mennyisége (határ) * egységenkénti gázdíj `, vagyis `21 000 * 200 = 4 200 000 gwei` vagy 0,0042 ETH + +Az [EIP-1559](https://eips.ethereum.org/EIPS/eip-1559) bevezetése a London-frissítés során bonyolultabbá tette a tranzakciós illetékek működését, de megjósolhatóbb lett a gázdíj, ami egy sokkal hatékonyabb tranzakciósilleték-piacot eredményezett. A felhasználók megadhatják a `maxFeePerGas` értékét, vagyis azt, hogy legfeljebb mennyit hajlandók fizetni a tranzakció végrehajtásáért, annak tudatában, hogy nem fognak többet fizetni érte, mint a gáz piaci ára (`baseFeePerGas`), és a borravalót leszámítva visszakapják a különbözetet. + +Az alábbi videó elmagyarázza az EIP-1559 lényegét és előnyeit: + + + +## A gázdíjak felügyelete {#moitoring-gas-fees} + +Ha Ön szeretné felügyelni a gázdíjakat azért, hogy kevesebbet kelljen fizetnie az ETH-tranzakciókért, akkor számos eszköz áll rendelkezésre: + +- [Etherscan](https://etherscan.io/gastracker) _ Tranzakció gázdíjának becslése_ +- [Blocknative ETH gázbecslés](https://chrome.google.com/webstore/detail/blocknative-eth-gas-estim/ablbagjepecncofimgjmdpnhnfjiecfm) _Gázbecslő Chrome-kiterjesztés, amely támogatja az eredeti (0. típusú) és az EIP-1559 (2. típusú) tranzakciókat._ +- [Cryptoneur gázdíjkalkulátor](https://www.cryptoneur.xyz/gas-fees-calculator) _Számolja ki a gázdíjat a saját pénznemében a különféle tranzakciókra az Ethereum főhálózatán, az Arbitrumon és a Polygonon._ ## Kapcsolódó eszközök {#related-tools} -- [ETH üzemanyag állomás](https://ethgasstation.info/) _Vevő orientált metrikák az Ethereum gáz piacáról_ -- [Etherscan gáz követő felület](https://etherscan.io/gastracker) _Tranzakciós díj becslés_ -- [Bloxy gáz analitikája](https://stat.bloxy.info/superset/dashboard/gas/?standalone=true) _Ethereum gáz statisztikák_ +- [Blocknative gázplatform](https://www.blocknative.com/gas) _Gázbecslő API, amelyet a Blocknative globális memóriakészlet adatplatformja támogat_ -## Kapcsolódó témák {#related-topics} +## További olvasnivaló {#further-reading} -- [Bányászat](/developers/docs/consensus-mechanisms/pow/mining/) +- [Az Ethereum gázdíjról részletesen](https://defiprime.com/gas) +- [Csökkentse az okosszerződésének gázfogyasztását](https://medium.com/coinmonks/8-ways-of-reducing-the-gas-consumption-of-your-smart-contracts-9a506b339c0a) +- [A proof-of-stake és a proof-of-work összehasonlítása](https://blockgeeks.com/guides/proof-of-work-vs-proof-of-stake/) +- [Gázoptimalizáló stratégiák fejlesztők számára](https://www.alchemy.com/overviews/solidity-gas-optimization) +- [EIP-1559-dokumentumok](https://eips.ethereum.org/EIPS/eip-1559). +- [Tim Beiko EIP-1559 anyagai](https://hackmd.io/@timbeiko/1559-resources). diff --git a/public/content/translations/hu/developers/docs/ides/index.md b/public/content/translations/hu/developers/docs/ides/index.md index 036d9735fa8..c9cef844805 100644 --- a/public/content/translations/hu/developers/docs/ides/index.md +++ b/public/content/translations/hu/developers/docs/ides/index.md @@ -4,38 +4,68 @@ description: lang: hu --- -Amikor egy [integrált fejlesztői környezet (IDE)](https://wikipedia.org/wiki/Integrated_development_environment) felállításáról van szó, az Ethereumon történő fejlesztés hasonló bármely más szoftver projekthez. Sok lehetőség közül lehet választani, így végül válaszd azt, mely a legjobban megfelel a preferenciáidnak. +Amikor egy [integrált fejlesztői környezet (IDE)](https://wikipedia.org/wiki/Integrated_development_environment) felállításáról van szó, az Ethereumon történő fejlesztés hasonló bármely más szoftveres projekthez. Sok lehetőség közül lehet választani, ezért azt az IDE-t vagy kódszerkesztőt válassza, amely a legjobban megfelel a preferenciáinak. Nagy valószínűséggel a legjobb IDE az Ethereum fejlesztéséhez éppen az, amit a hagyományos szoftverfejlesztéshez is használ. ## Web alapú IDE-k {#web-based-ides} Ha szeretnél eljátszadozni a kóddal, mielőtt [felállítanál egy helyi fejlesztői környezetet](/developers/local-environment/), ezek a webes alkalmazások egyénre szabottak az Ethereum okosszerződések fejlesztésére. -**Remix -** **_Web alapú IDE beépített statikus analízissel, és egy teszt blokklánc virtuális géppel._** +**[Remix](https://remix.ethereum.org/)** – **_Webalapú IDE beépített statikus analízissel, és egy teszt blokklánc virtuális géppel._** -- [remix.ethereum.org](https://remix.ethereum.org/) +- [Dokumentáció](https://remix-ide.readthedocs.io/en/latest/#) +- [Gitter](https://gitter.im/ethereum/remix) -**EthFiddle -** **_Web alapú IDE, amivel megírhatod, összeállíthatod és debuggolhatod az okosszerződéseidet._** +**[ChainIDE](https://chainide.com/)** – **_Egy felhőalapú, többláncos IDE_** + +- [Dokumentáció](https://chainide.gitbook.io/chainide-english-1/) +- [Súgófórum](https://forum.chainide.com/) + +**[Replit (Solidity Starter – Beta)](https://replit.com/@replit/Solidity-starter-beta)** – **_Testre szabható fejlesztői környezet az Ethereum számára, gyors újratöltéssel, hibaellenőrzéssel és első osztályú testnet-támogatással_** + +- [Dokumentáció](https://docs.replit.com/) + +**[Tenderly Sandbox](https://sandbox.tenderly.co/)** – **_Gyors prototípus-készítő környezet, ahol okosszerződéseket tud írni, elindítani és debuggolni a böngészőben Solidity-t és JavaScriptet használva_** + +**[EthFiddle](https://ethfiddle.com/)** – **_Webalapú IDE, amivel megírhatja, összeállíthatja és debuggolhatja okosszerződéseit_** -- [ethfiddle.com](https://ethfiddle.com/) - [Gitter](https://gitter.im/loomnetwork/ethfiddle) ## Asztali IDE-k {#desktop-ides} -A legtöbb megalapozott IDE-nek vannak beépített pluginjai, melyek elősegítik az Ethereum fejlesztői élményt. Legalább egy syntax kijelölést biztosítanak az [okosszerződés nyelveknek](/developers/docs/smart-contracts/languages/). +A legtöbb megalapozott IDE-nek vannak beépített pluginjai, amelyek tovább fokozzák az Ethereum fejlesztői élményt. Legalább egy syntax kijelölést biztosítanak az [okosszerződés nyelveknek](/developers/docs/smart-contracts/languages/). -**Visual Studio Code -** **_Professzionális cross-platform IDE hivatalos Ethereum támogatással._** +**Visual Studio Code -** **_Professzionális keresztplatformos IDE hivatalos Ethereum-támogatással_** - [Visual Studio Code](https://code.visualstudio.com/) - [Azure Blockchain Workbench](https://azuremarketplace.microsoft.com/en-us/marketplace/apps/microsoft-azure-blockchain.azure-blockchain-workbench?tab=Overview) -- [Kód minták](https://github.com/Azure-Samples/blockchain/blob/master/blockchain-workbench/application-and-smart-contract-samples/readme.md) +- [Kódminták](https://github.com/Azure-Samples/blockchain/blob/master/blockchain-workbench/application-and-smart-contract-samples/readme.md) - [GitHub](https://github.com/microsoft/vscode) -**Atom -** **_Egy hackelhető szövegszerkesztő a 21.-dik századra_** +**Atom -** **_Egy hackelhető szövegszerkesztő a 21. századra_** - [Atom](https://atom.io/) - [GitHub](https://github.com/atom) -- [Ethereum csomagok](https://atom.io/packages/search?utf8=%E2%9C%93&q=keyword%3Aethereum&commit=Search) +- [Ethereum-csomagok](https://atom.io/packages/search?utf8=%E2%9C%93&q=keyword%3Aethereum&commit=Search) + +**JetBrains IDE-k (IntelliJ IDEA, etc.) –** **_Elengedhetetlen eszközök szoftverfejlesztőknek és csapatoknak_** + +- [JetBrains](https://www.jetbrains.com/) +- [GitHub](https://github.com/JetBrains) +- [IntelliJ Solidity](https://github.com/intellij-solidity/intellij-solidity/) + +**Remix Desktop – ** **_Próbálja ki a Remix IDE-t a saját gépén_** + +- [Letöltés](https://github.com/ethereum/remix-desktop/releases) +- [GitHub](https://github.com/ethereum/remix-desktop) + +## Plugin-ok és kiterjesztések {#plugins-extensions} + +- [solidity](https://marketplace.visualstudio.com/items?itemName=JuanBlanco.solidity) – Ethereum Solidity nyelv a Visual Studio-kódhoz +- [Solidity + Hardhat for VS Code](https://marketplace.visualstudio.com/items?itemName=NomicFoundation.hardhat-solidity) – Solidity és Hardhat a Hardhat csapat által támogatva +- [Prettier Solidity](https://github.com/prettier-solidity/prettier-plugin-solidity) – Kódformázó használata ## További olvasnivaló {#further-reading} +- [Ethereum IDEs](https://www.alchemy.com/list-of/web3-ides-on-ethereum) _ – Alchemy listája az Ethereum IDE-okról_ + _Ismersz olyan közösségi anyagot, amely segített neked? Módosítsd az oldalt és add hozzá!_ diff --git a/public/content/translations/hu/developers/docs/index.md b/public/content/translations/hu/developers/docs/index.md index bf0fe146be2..5b5b808dd9e 100644 --- a/public/content/translations/hu/developers/docs/index.md +++ b/public/content/translations/hu/developers/docs/index.md @@ -1,45 +1,25 @@ --- -title: Ethereum fejlesztési dokumentáció -description: Bevezetés az Ethereum fejlesztési hálózat dokumentációba. +title: Ethereum-fejlesztési dokumentáció +description: Bevezetés az ethereum.org fejlesztői dokumentációjába. lang: hu --- -Ezt a dokumentációt arra tervezték, hogy segítsen az Ethereumon való fejlesztésben. Lefedi az Ethereumot, mint koncepciót, elmagyarázza az Ethereum tech stack-et, és dokumentálja a haladó témákat és a komplexebb alkalmazásokat és használati eseteket. +Ezt a dokumentációt arra tervezték, hogy segítsen az Ethereumon való fejlesztésben. Bemutatja az Ethereumot, mint koncepciót, elmagyarázza az Ethereum tech stacket, és áttekintést nyújt a haladó témákról és a komplexebb alkalmazásokról használati esetek segítségével. -Ez egy nyílt forráskódú közösségi kezdeményezés, vagy nyugodtan javasolhatsz új témákat, hozzáadhatsz új tartalmat és példákat adhatsz meg, ahol úgy érzed, hogy hasznos lehet. Az összes dokumentáció módosítható GitHubon keresztül – ha nem vagy biztos a dolgodban, akkor [kövesd ezeket az instrukciókat](https://github.com/ethereum/ethereum-org-website/blob/dev/README.md). +Ez egy nyílt forráskódú közösségi kezdeményezés, így nyugodtan javasolhat új témákat, hozzáadhat új tartalmat és példákat adhat meg, ahol úgy érzi, hogy hasznos lehet. Az összes dokumentáció szerkeszthető a GitHub-on – csak [kövesse az instrukciókat](https://github.com/ethereum/ethereum-org-website/blob/dev/docs/editing-markdown.md). ## Fejlesztési modulok {#development-modules} -Ha ez az első próbálkozásod az Ethereum fejlesztéssel kapcsolatban, akkor azt javasoljuk, hogy kezdd el az elején, és olvasd végig, mint egy könyvet. - -### Alapvető témák {#fundamental-topics} - -- [Bevezetés az Ethereumba](/developers/docs/intro-to-ethereum/) _– Egy gyors áttekintő az Ethereumról_ -- [Web2 vs Web3](/developers/docs/web2-vs-web3/) _– Az alapvető különbségek, melyeket a blokklánc-alapú alkalmazások nyújtanak_ -- [Bevezetés a dappokba](/developers/docs/dapps/) _– Bevezetés a decentralizált alkalmazásokba_ -- [Az Ethereum Virtuális Gép (EVM)](/developers/docs/evm/) _– Az EVM kezeli az összes számítást az Ethereum hálózaton_ -- [Blokkok](/developers/docs/blocks/) _– A tranzakciók csoportosításának módja, hogy biztosítsuk az állapot szinkronizáltságát az összes szereplő között_ -- [Számlák](/developers/docs/accounts/) _– A hálózati entitások, melyeknek van egy egyenlegük és tranzakciókat tudnak küldeni_ -- [Tranzakciók](/developers/docs/transactions/) _– Átutalások és más akciók, melyek az Ethereum állapotváltozását okozzák_ -- [Blokk felfedezők](/developers/docs/data-and-analytics/block-explorers/) _–Tranzakciókról, blokkokról, számlákról és a hálózatról szóló adatok olvasásának módja_ -- [Gáz](/developers/docs/gas/) _– Számítási kapacitást igényel a tranzakciók feldolgozása, melyet a küldők fizetnek ki ETH-ben_ -- [Bányászat](/developers/docs/consensus-mechanisms/pow/mining/) _– A tranzakciók feldolgozásának és a blokkok létrehozásának módja_ -- [Hálózatok](/developers/docs/networks/) _– Ethereum implementációk beleértve a teszt hálózatokat is_ -- [Csomópontok és kliensek](/developers/docs/nodes-and-clients/) _– A hálózatban résztvevő egyének és a szofvter, melyet a tranzakciók hitelesítéséhez futtatnak_ - -### Az Ethereum stack {#the-ethereum-stack} - -- [Bevezetés a stack-be](/developers/docs/ethereum-stack/) _– Áttekintő az Ethereum/web3 stack-ről_ -- [Okosszerződések](/developers/docs/smart-contracts/) _– Programok, melyek egy Ethereum címen élnek és funkciókat futtatnak, melyeket tranzakciók váltanak ki_ -- [Programozási nyelvek](/developers/docs/programming-languages/) _– Hogyan kezdj az Ethereum fejlesztéshez olyan nyelvekkel, melyeket már ismerhetsz_ -- [JavaScript kliens könyvtárak](/developers/docs/apis/javascript/) _– Kényelmi könyvtárak, melyek lehetővé teszik, hogy a web alkalmazásod interakcióba lépjen az Ethereummal és az okosszerződésekkel_ -- [Biztonság](/developers/docs/smart-contracts/security/) -- [Tárhely](/developers/docs/storage/) -- [Fejlesztői keretrendszerek](/developers/docs/frameworks/) _– Eszközök, melyek egyszerűbbé teszik az Ethereum fejlesztést_ -- [Fejlesztői környezetek](/developers/docs/ides/) _– A legjobb környezetek ahol dapp kódot lehet írni_ +Ha most először fejleszt az Ethereumon, akkor azt javasoljuk, hogy kezdje a legelején, és olvassa végig, mint egy könyvet. + +### Alapvető témák {#foundational-topics} + + + +### Ethereum stack {#ethereum-stack} + + ### Speciális {#advanced} -- [Token szabványok](/developers/docs/standards/tokens/) -- [Orákulumok](/developers/docs/oracles/) -- [Méretezés](/developers/docs/layer-2-scaling/) + diff --git a/public/content/translations/hu/developers/docs/intro-to-ether/index.md b/public/content/translations/hu/developers/docs/intro-to-ether/index.md new file mode 100644 index 00000000000..2d9e3eaf271 --- /dev/null +++ b/public/content/translations/hu/developers/docs/intro-to-ether/index.md @@ -0,0 +1,78 @@ +--- +title: Bevezetés az ether világába +description: Bevezetés fejlesztőknek az ether kriptovalutába. +lang: hu +--- + +## Előfeltételek {#prerequisites} + +Ennek az oldalnak a jobb megértése érdekében javasoljuk, hogy először olvassa el a [bevezetés az Ethereumba](/developers/docs/intro-to-ethereum/) oldalunkat. + +## Mi az a kriptovaluta? {#what-is-a-cryptocurrency} + +A kriptovaluta a csere eszköze, amelyet egy blokkláncalapú főkönyv biztosít. + +A csere eszköze bármi lehet, amit széles körben elfogadnak az áruk és szolgáltatások kifizetésére, a főkönyv pedig egy adattároló, ahol a tranzakciókat követik. A blokklánc-technológia lehetővé teszi a felhasználóknak, hogy tranzakciókat végezzenek a főkönyvön, anélkül hogy egy harmadik félben kellene megbízniuk, aki a főkönyvet kezeli. + +Az első kriptovaluta a Bitcoin volt, amelyet Satoshi Nakamoto hozott létre. A Bitcoin 2009-es elindulása óta az emberek ezernyi kriptovalutát hoztak létre számos különféle blokkláncon. + +## Mi az ether? {#what-is-ether} + +**Ether (ETH)** a kriptovaluta, amelyet számtalan dologra használnak az Ethereum hálózaton. Alapvetően ez az egyetlen elfogadott fizetési eszköz a tranzakciódíjakhoz, és a [Beolvadás](/roadmap/merge) után ether kell ahhoz, hogy blokkot javasoljanak és validáljanak a főhálózaton. Az ether emellett az elsődleges fedezet a [decentralizált pénzügyek (DeFi)](/defi) kölcsönzési piacain, az NFT (nem helyettesíthető token) piactereken könyvelési egység, fizetség a szolgáltatások nyújtásakor vagy termékeladáskor és még sok más esetben. + +Az Ethereum lehetővé teszi a fejlesztők számára, hogy [**decentralizált alkalmazásokat (dapp)**](/developers/docs/dapps) hozzanak létre, amely ugyanazt a számítási kapacitást használja. Ez egy véges kapacitás, ezért az Ethereumnak szüksége van egy olyan mechanizmusra, amellyel megállapítható, hogy ki használja fel azt. Máskülönben egy alkalmazás véletlenül vagy rosszhiszeműen fel tudná használni a hálózat összes erőforrását, így mások nem férnének ahhoz hozzá. + +Az ether kriptovaluta segíti az árazási mechanizmust az Ethereum számítógépes kapacitására vonatkozóan. Amikor a felhasználó tranzakciót akar indítani, ethert kell fizetnie, hogy ez a tranzakció bekerülhessen a blokkláncra. Ezt a felhasználói költséget [gázdíjnak (tranzakciós díj)](/developers/docs/gas/) nevezik, ami pedig attól függ, hogy az adott tranzakció végrehajtásához mennyi kapacitásra van szükség, illetve ugyanabban az időben mennyire van kereslet. + +Ezért még ha egy rosszindulatú dapp egy végtelen körforgást indítana is el, a tranzakció végül kifogyna az etherből és leállna, így a hálózat visszatér a normális állapotba. + +[Gyakori](https://www.reuters.com/article/us-crypto-currencies-lending-insight-idUSKBN25M0GP#:~:text=price%20of%20ethereum) [az, hogy](https://abcnews.go.com/Business/bitcoin-slumps-week-low-amid-renewed-worries-chinese/story?id=78399845#:~:text=cryptocurrencies%20including%20ethereum) [összekapcsolják](https://www.cnn.com/2021/03/14/tech/nft-art-buying/index.html#:~:text=price%20of%20ethereum) az Ethereumot és az ethert – amikor az emberek az Ethereum árára gondolnak, akkor az ethernek az árát értik rajta. + +## Az ether létrehozása (minting) {#minting-ether} + +A minting az a folyamat, amikor új ethert hoznak létre az Ethereum főkönyvön. A mögöttes Ethereum protokoll kreálja az új ethert, a felhasználók nem tudnak ilyet tenni. + +Az ether minden javasolt blokk jutalmaként keletkezik, illetve minden korszakban azért a validátori tevékenységért jár, ami a konszenzus létrehozását adja. A teljes kiadott összeg függ a validátorok számától, és hogy ők mennyi ethert helyeztek letétbe. Ez a teljes kiadás ideális esetben egyenlően oszlik el a validátorok között az, mivel minden validátor jóhiszemű és online van, de a valóságban változik a validátor teljesítménye alapján. A blokkjavasló a kiadott összeg 1/8-át kapja meg, a többi eloszlik a többi validátor között. A blokkjavasló emellett még borravalót kap a tranzakciós díjból és MEV-hez (maximálisan kinyerhető érték) kapcsolódó bevételt, ez azonban az újrahasznált etherből ered, nem az újból. + +## Az ether elégetése {#burning-ether} + +Ahogy új ether keletkezik a blokkhoz kapcsolódó jutalmak következtében, úgy meg is szűnik, amit elégetésnek nevezünk. Amikor az ethert elégetik, az örökre kivonódik a körforgásból. + +Ez minden tranzakciónál megtörténik az Ethereumon. Amikor a felhasználó fizet a tranzakcióért, akkor az alap gázdíj, amit a kereslet alapján állapít meg a rendszer, megsemmisül. Ez megkönnyíti a tranzakciós illeték becslését az Ethereumon, tekintve, hogy a blokkméretek változóak és van egy maximális gázdíj. Amikor nagy a kereslet a hálózaton, akkor a [blokkok](https://etherscan.io/block/12965263) több ethert égetnek el, mint amennyit létrehoznak, tehát ellentételezik a kibocsátást. + +Az alapdíj elégetése megakadályozza, hogy a blokk-készítők manipulálják a tranzakciókat. Például, ha egy blokk-készítő megkapná az alapdíjat, akkor a saját tranzakcióit ingyen tehetné be, míg a többiek díját megemelné. Alternatívaként vissza lehetne adni az alapdíjat a felhasználóknak láncon kívül, ami egy homályosabb és komplexebb tranzakciósilleték-piachoz vezetne. + +## Az ether címletei {#denominations} + +Mivel számos tranzakció értéke az Ethereumon viszonylag kicsi, ezért az ether számos címlettel bír, amelyek kisebb egységek. Ezekből a wei és a gwei a legfontosabbak. + +Wei a legkisebb címlet, ezért sok technikai bevezetés, mint az [Ethereum Sárga könyv](https://ethereum.github.io/yellowpaper/paper.pdf) minden kalkulációt ebben végez. + +Gwei vagyis giga wei általában a gázdíj meghatározásában jelenik meg az Ethereumon. + +| Címlet | Érték etherben | Gyakori használat | +| ------ | ---------------- | ---------------------------------- | +| Wei | 10-18 | Technikai implementáció | +| Gwei | 10-9 | A felhasználóknak érthető gázdíjak | + +## Az ether küldése {#transferring-ether} + +Az Ethereumon minden tranzakció tartalmaz egy `value` (érték) mezőt, ami az elküldendő ether összegét mutatja wei címletben, hogy a küldő címéről a fogadó címére érkezzen. + +Amikor a fogadó címe egy [okosszerződés](/developers/docs/smart-contracts/), akkor ezt az elküldött ethert a gázdíjak fizetésére is használhatják, amikor az okosszerződés végrehajtja a programkódját. + +[Bővebben a tranzakciókról](/developers/docs/transactions/) + +## Az ether-egyenleg lekérdezése {#querying-ether} + +A felhasználók bármelyik [számla](/developers/docs/accounts/) egyenlegét meg tudják nézni az adott számla `balance` (egyenleg) mezőjében, ami az ott lévő ethert weiben mutatja. + +Az [Etherscan](https://etherscan.io) egy népszerű eszköz arra, hogy egy webalapú alkalmazásban megnézhessék egy adott cím egyenlegét. Például [ez az Etherscan oldal](https://etherscan.io/address/0xde0b295669a9fd93d5f28d9ec85e40f4cb697bae) megmutatja az Ethereum Alapítvány egyenlegét. A számlaegyenlegeket a tárcák lekérdezésével vagy a csomópontokon közvetlenül is meg lehet nézni. + +## További olvasnivaló {#further-reading} + +- [Az Ether és az Ethereum meghatározása](https://www.cmegroup.com/education/courses/introduction-to-ether/defining-ether-and-ethereum.html) – _CME Group_ +- [Ethereum fehérkönyv](/whitepaper/): Az eredeti javaslat az Ethereum megalkotására. A jelen dokumentum az ether lényegét és a kialakításának célját írja le. +- [Gwei-kalkulátor](https://www.alchemy.com/gwei-calculator): Használja ezt a gwei-kalkulátort, hogy könnyedén váltson wei, gwei és ether címleteket. Egyszerűen adja meg az összeget weiben, gweiben vagy ETH-ban, és automatikusan kiszámolja az átváltást. + +_Ismersz olyan közösségi anyagot, mely segített neked? Módosítsd az oldalt és add hozzá!_ diff --git a/public/content/translations/hu/developers/docs/intro-to-ethereum/index.md b/public/content/translations/hu/developers/docs/intro-to-ethereum/index.md index 475e6e49c59..b15bfe2c3ee 100644 --- a/public/content/translations/hu/developers/docs/intro-to-ethereum/index.md +++ b/public/content/translations/hu/developers/docs/intro-to-ethereum/index.md @@ -10,100 +10,107 @@ A blokkláncot legjobban úgy lehet leírni, mint egy nyilvános adatbázist, me A "blokk" arra utal, hogy az adat és az állapot szekvenciális adagokban vagy "blokkokban" van tárolva. Ha ETH-et küldesz valaki másnak, akkor a tranzakciós adatot hozzá kell adni egy blokkhoz, hogy sikeres legyen. -A "lánc" arra a tényre utal, hogy minden egyes blokk kriptográfiailag hozzá van rendelve a szülő blokkjához. Egy blokk adatát nem lehet megváltoztatni anélkül, hogy megváltoztatnánk az összes későbbi blokkot, mely a teljes hálózat konszenzusát igényelné. +A "lánc" arra a tényre utal, hogy minden egyes blokk kriptográfiailag hozzá van rendelve a szülő blokkjához. Tehát a blokkok össze vannak kötve. Egy blokk adatát nem lehet megváltoztatni anélkül, hogy megváltoztatnánk az összes későbbi blokkot, amely a teljes hálózat konszenzusát igényelné. -Minden új blokk és a teljes lánc felett egyet kell érteniük a hálózat összes csomópontjának. Így mindenki ugyanazzal az adattal rendelkezik. Ahhoz, hogy ez működjön, a blokkláncoknak kell egy konszenzus mechanizmus. +A hálózat minden számítógépének meg kell egyeznie minden új blokkon és az egész láncon. Ezeket a számítógépeket úgy ismerjük, mint csomópontok. A csomópontok biztosítják, hogy mindenki számára ugyanaz az adat. Ahhoz, hogy ezt az elosztott megegyezést teljesítse, a blokkláncoknak szükségük van konszenzusmechanizmusra. -Az Ethereum jelenleg a proof-of-work konszenzus mechanizmust használja. Ez azt jelenti, hogyha bárki új blokkokat szeretne hozzáadni a lánchoz, először egy nehéz puzzle-t kell megoldania, melyhez rengeteg számítási erő kell. Ennek a puzzle-nek a megoldása "bizonyítja", hogy elköltötted a számítási erőforrásaidat. Ezt a tevékenységet [bányászatnak](/developers/docs/consensus-mechanisms/pow/mining/) hívjuk. A bányászat próba szerencse alapon történik, de egy sikeres blokk hozzáadásért ETH jár jutalmul. Mindazonáltal csaló blokkok hozzáadása nem egy vonzó lehetőség figyelembe véve az erőforrásokat, melyek elköltöttél, hogy létrehozd a blokkot. +Az Ethereum [proof-of-stake alapú konszenzusmechanizmust](/developers/docs/consensus-mechanisms/pos/) használ. Aki új blokkot akar adni a lánchoz, annak le kell kötnie ETH-t – az Ethereum saját valutáját – fedezetként, és futtatniuk kell a validátor szoftvert. Ezen validátorok közül véletlenszerűen választják ki a blokkot javaslót, amelyet a többi validátor ellenőriz és hozzáad a lánchoz. Jutalmak és büntetések rendszere ösztönzi a résztvevőket a jóhiszemű viselkedésre és arra, hogy online legyenek. -Az új blokkokat közvetítik a hálózat csomópontjainak, melyek leellenőrzik és hitelesítik, majd frissítik az állapotot mindenki számára. +Ha szeretné látni, hogy a blokklánc adat hogyan hashelődik és azután hogyan adódik hozzá a blokkreferenciák történetéhez, akkor nézze meg [ezt a bemutatót](https://andersbrownworth.com/blockchain/blockchain) Anders Brownworth narrálásával, illetve az alábbi videót. -Összefoglalásként, amikor ETH-et küldesz valakinek, a tranzakciót ki kell bányászni és belefoglalni egy új blokkba. A frissített állapot ezután megosztásra kerül a teljes hálózattal. Lent több részletet találsz. +Nézze meg, ahogy Anders elmagyarázza a hasheket a blokkláncban: -Nézd meg ahogy Austin végig vezet a blokkláncokon: - - + ## Mi az Ethereum? {#what-is-ethereum} -Az Ethereum univerzumban van egy kanonikus számítógép (melyet Ethereum Virtuális Gépnek vagy EVM-nek hívnak), melynek állapota felett mindenki egyetért a hálózaton. Mindenki, aki részt vesz az Ethereum hálózatban (minden Ethereum csomópont) egy másolattal rendelkezik ennek a számítógépnek az állapotáról. Ezen kívül bármely résztvevő közvetíthet kéréseket ehhez a számítógéphez, hogy tetszőleges számításokat hajtsanak végre. Amikor egy ilyen kérést közvetítenek, a többi résztvevő a hálózaton hitelesíti, validálja és véghez viszi ("lefuttatja") a számítást. Ez állapotváltozást okoz az EVM-ben, amelyet a teljes hálózatban elköteleznek és tovább terjesztenek. +Az Ethereum egy blokklánc egy beágyazott számítógéppel. Alapot szolgáltat alkalmazások és szervezetek számára egy decentralizált, engedélymentes és cenzúrának ellenálló módon. + +Az Ethereum univerzumban van egy kanonikus számítógép (melyet Ethereum Virtuális Gépnek vagy EVM-nek hívnak), amelynek állapota felett mindenki egyetért a hálózaton. Mindenki, aki részt vesz az Ethereum hálózatban (minden Ethereum-csomópont) egy másolattal rendelkezik ennek a számítógépnek az állapotáról. Ezen kívül bármely résztvevő közvetíthet kéréseket ehhez a számítógéphez, hogy tetszőleges számításokat hajtsanak végre. Amikor egy ilyen kérést közvetítenek, a többi résztvevő a hálózaton hitelesíti, validálja és véghez viszi (lefuttatja) a számítást. Ez állapotváltozást okoz az EVM-ben, amelyet a teljes hálózatban elköteleznek és tovább terjesztenek. A számítási kérelmeket tranzakciós kérelmeknek nevezzük; az összes tranzakció bejegyzését, valamint az EVM jelenlegi állapotát a blokklánc tárolja, amelyet viszont minden csomópont tárol és elfogad. -A kriptográfiai mechanizmusok biztosítják, hogy amint a tranzakciókat érvényesnek igazolják és hozzáadják a blokklánchoz, később nem lehet őket megváltoztatni; ugyanazok a mechanizmusok biztosítják azt is, hogy az összes tranzakciót megfelelő „engedélyekkel” írják alá és hajtják végre (senki ne legyen képes digitális eszközök küldésére Alice számlájáról, kivéve magát Alice-t). +A kriptográfiai mechanizmusok biztosítják, hogy az ellenőrzött és a blokklánchoz hozzáadott tranzakciók később nem változtathatók meg. Ugyanazok a mechanizmusok biztosítják azt is, hogy az összes tranzakciót megfelelő engedélyekkel írják alá és hajtják végre (senki ne legyen képes digitális eszközök küldésére Alice számlájáról, kivéve magát Alice-t). ## Mi az ether? {#what-is-ether} -Az Ether kriptovaluta célja, hogy lehetővé tegye egy piac létezését a számításnak. Egy ilyen piac gazdasági ösztönzőt biztosít a résztvevőknek, hogy hitelesítsék/végrehajtsák a tranzakciós kérelmeket és, hogy számítási kapacitást szolgáltassanak a hálózatnak. +**Ether (ETH)** az Ethereum saját kriptovalutája. Az ETH célja, hogy a számítási kapacitásért fizetni lehessen. Egy ilyen piac gazdasági ösztönzőt biztosít a résztvevőknek, hogy hitelesítsék/végrehajtsák a tranzakciós kérelmeket és, hogy számítási kapacitást szolgáltassanak a hálózatnak. + +A résztvevők a tranzakcióért jutalomként felajánlanak ETH-t a hálózatnak. A hálózat jutalmat ad annak, aki végül elvégzi a tranzakció ellenőrzését, végrehajtását, a blokkláncba való bekerülését és a hálózatba történő közvetítését. -Bármely résztvevőnek, aki tranzakciós kérelmet közvetít, bizonyos mennyiségű ethert is fel kell ajánlania a hálózatnak, mivel jutalmat kell odaítélni annak, aki végül elvégzi a tranzakció ellenőrzésének, végrehajtásának, a blokklánc felé történő elkötelezettségének és a hálózatba történő közvetítésének a munkáját. +Az ETH összege a számítási kapacitáshoz kapcsolódik. Ezek a jutalmak megakadályozzák a rosszindulatú résztvevőket is abban, hogy szándékosan eltömítsék a hálózatot azzal, hogy végtelen ciklusokat vagy erőforrásigényes szkriptek végrehajtását kérik, mivel ezeknek a szereplőknek fizetni kell a kalkulációért. -A fizetett ether mennyiség a számítási hossz függvénye. Ez megakadályozza a rosszindulatú résztvevőket is abban, hogy szándékosan eltömítsék a hálózatot azzal, hogy végtelen ciklusokat vagy erőforrás-igényes szkriptek végrehajtását kérik, mivel ezeket a szereplőket folyamatosan terhelni fogják. +Az ETH-t arra is használják, hogy kriptogazdasági biztonságot adjon a hálózatnak három módon: 1) a validátorok jutalmat kapnak, hogy blokkot javasolnak vagy kiszűrik a rosszhiszemű viselkedést; 2) a validátorok letétbe helyezik fedezetként a rosszhiszemű viselkedés elkerülése érdekében (csalás esetén az ETH megsemmisül); 3) a szavazatok súlyozására használják az újonnan javasolt blokkoknál, a konszenzusmechanizmus elágazási pontjához kapcsolódóan. -## Mik azok a dappok? {#what-are-dapps} +## Mi az az okosszerződés? {#what-are-smart-contracts} -A gyakorlatban a résztvevők nem írnak minden alkalommal új kódot, amikor számítást kérelmeznek az EVM-től. Ehelyett az alkalmazásfejlesztők programokat (újra felhasználható kódrészleteket) töltenek fel az EVM tárhelyére, majd a felhasználók kéréseket tesznek ezeknek a kódrészleteknek a végrehajtására változó paraméterekkel. A feltöltött és a hálózat által végrehajtott programokat okosszerződéseknek hívjuk. +A gyakorlatban a résztvevők nem írnak minden alkalommal új kódot, amikor számítást kérelmeznek az EVM-től. Ehelyett az alkalmazásfejlesztők programokat (újrafelhasználható kódrészleteket) töltenek fel az EVM tárhelyére, majd a felhasználók kérik, hogy ezeket a kódrészleteket lefuttassák változó paraméterekkel. A feltöltött és a hálózat által végrehajtott programokat okosszerződéseknek hívjuk. -Egy nagyon alap szinten úgy gondolhatsz az okosszerződésekre, mint egyfajta kajaautomatára: egy szkript, melyet ha meghívnak bizonyos paraméterekkel, végrehajt valamilyen akciót vagy számítást, ha bizonyos feltételek teljesülnek. Például egy egyszerű árusító okosszerződés létrehozhatná és átruházhatná egy digitális eszköz tulajdonjogát, ha a hívó fél ether-t küld egy bizonyos címzettnek. +Úgy is elképzelheti ezeket az okosszerződéseket, mint egyfajta ételautomata: egy szkript, amelyet ha meghívnak bizonyos paraméterekkel, végrehajt valamilyen akciót vagy számítást, ha bizonyos feltételek teljesülnek. Például egy egyszerű árusító okosszerződés létrehozhatná és átruházhatná egy digitális eszköz tulajdonjogát, ha a hívó fél ETH-t küld egy bizonyos címzettnek. Bármely fejlesztő írhat egy okosszerződést és teheti nyilvánossá a hálózat számára úgy, hogy a blokkláncot egy adat rétegként használja a hálózatnak fizetett díj ellenében. Bármely felhasználó meghívhatja az okosszerződést és végrehajthatja a kódját szintén valamekkora díj ellenében. -Ezáltal az okosszerződésekkel a fejlesztők tetszőlegesen bonyolult felhasználó oldali appokat és szolgáltatásokat fejleszthetnek és telepíthetnek: piactereket, pénzügyi eszközöket, játékokat stb. +Ezáltal az okosszerződésekkel a fejlesztők tetszőlegesen bonyolult felhasználó oldali alkalmazásokat és szolgáltatásokat fejleszthetnek és telepíthetnek: piactereket, pénzügyi eszközöket, játékokat stb. ## Terminológia {#terminology} ### Blokklánc {#blockchain} -Az össze blokk sorozata, mely elköteleződött az Ethereum hálózaton a hálózati történetben. A név onnan származik, hogy minden egyes blokk tartalmaz egy referenciát az előző blokkra, mely segít fenntartani egy sorrendet a összes blokk között (így egy pontos történetet is). +Az összes blokk sorozata, amely elköteleződött az Ethereum hálózaton a hálózati történetben. A név onnan származik, hogy minden egyes blokk tartalmaz egy referenciát az előző blokkra, amely segít fenntartani egy sorrendet a összes blokk között (így egy pontos történetet is). ### ETH {#eth} -Az Ethereum natív kriptovalutája. A felhasználók más felhasználóknak fizetnek, hogy teljesítsék a kód végrehajtási kérelmeiket. +**Ether (ETH)** az Ethereum saját kriptovalutája. A felhasználók más felhasználóknak ETH-t fizetnek, hogy teljesítsék a kód végrehajtási kérelmeiket. + +[Többet az ETH-ről](/developers/docs/intro-to-ether/) ### EVM {#evm} -Az Ethereum Virtuális Gép egy globális számítógép, melynek állapota felett az Ethereum hálózat minden résztvevője egyet ért. Bármely résztvevő kérelmezheti valamilyen tetszőleges kód végrehajtását az EVM-en; a kód végrehajtás megváltoztatja az EVM állapotát. +Az Ethereum Virtuális Gép egy globális számítógép, amelynek állapota felett az Ethereum-hálózat minden résztvevője tárol és egyet ért. Bármely résztvevő kérelmezheti valamilyen tetszőleges kód végrehajtását az EVM-en; a kód végrehajtás megváltoztatja az EVM állapotát. -[Többet az EVM-ről](/developers/docs/evm/) +[További tudnivalók az EVM-ről](/developers/docs/evm/) ### Csomópontok {#nodes} -A valódi gépek, melyek az EVM állapotot tárolják. A csomópontok kommunikálnak egymással, hogy információkat terjesszenek az EVM állapotáról és az új állapotváltozásokról. Bármely felhasználó kérheti a kód végrehajtását azáltal is, hogy kód végrehajtási kérelmet közvetít egy csomópontból. Az Ethereum hálózat az összes Ethereum csomópont és a kommunikációjuk összessége. +A valódi gépek, amelyek az EVM állapotot tárolják. A csomópontok kommunikálnak egymással, hogy információkat terjesszenek az EVM állapotáról és az új állapotváltozásokról. Bármely felhasználó kérheti a kód végrehajtását azáltal is, hogy kód végrehajtási kérelmet közvetít egy csomópontból. Az Ethereum hálózat az összes Ethereum csomópont és a kommunikációjuk összessége. [Többet a csomópontokról](/developers/docs/nodes-and-clients/) ### Számlák {#accounts} -Ahol az ether tárolódik. A felhasználók indíthatnak számlákat, ethert helyezhetnek el a számlákon, és ethert utalhatnak át a számlájukról más felhasználóknak. A számlák és a számla egyenlegek egy nagy táblában vannak eltárolva az EVM-ben; a teljes EVM állapot részei. +Ahol az ETH tárolódik. A felhasználók indíthatnak számlákat, ETH-t helyezhetnek el a számlákon, és utalhatnak át a számlájukról más felhasználóknak. A számlák és a számla egyenlegek egy nagy táblában vannak eltárolva az EVM-ben; a teljes EVM állapot részei. -[Többet a számlákról](/developers/docs/accounts/) +[További tudnivalók a számlákról](/developers/docs/accounts/) ### Tranzakciók {#transactions} -A "tranzakciós kérelem" egy formális kifejezés a kód végrehajtási kérelemre az EVM-en és a "tranzakció" egy teljesített tranzakciós kérelem és a hozzárendelt változás az EVM állapotában. Bármely felhasználó közvetíthet tranzakciós kérelmet a hálózatra egy csomópontból. Ahhoz, hogy a tranzakció kérelemnek valóban legyen hatása az elfogadott EVM állapot felett, először validálni, végrehajtani és "elkötelezni kell a hálózatra" más csomópontok által. Bármely kód végrehajtása állapotváltozást okoz az EVM-ben; elkötelezettséggel ez az állapotváltozás a hálózat minden csomópontjához eljut. Néhány tranzakció példa: +A tranzakciós kérelem egy formális kifejezés a kód végrehajtási kérelemre az EVM-en, a tranzakció pedig egy teljesített tranzakciós kérelem és a hozzárendelt változás az EVM állapotában. Bármely felhasználó közvetíthet tranzakciós kérelmet a hálózatra egy csomópontból. Ahhoz, hogy a tranzakciókérelemnek valóban legyen hatása az elfogadott EVM-állapot felett, először validálni kell, végre kell hajtani és komittálni kell a hálózatra egy másik csomópont által. Bármely kód végrehajtása állapotváltozást okoz az EVM-ben; elkötelezettséggel ez az állapotváltozás a hálózat minden csomópontjához eljut. Néhány tranzakció példa: -- Küldj X ethert a számlámról Alice számlájára. -- Publikálj valamilyen okosszerződés kódot az EVM memóriába. +- Küldjön X ETH-t a számlámról Alice számlájára. +- Publikáljon egy okosszerződéses kódot az EVM státuszba. - Hajtsd végre az okosszerződés kódot az X címen az EVM-ben Y paraméterekkel. [Többet a tranzakciókról](/developers/docs/transactions/) ### Blokkok {#blocks} -A tranzakciók mennyisége nagyon magas, így a tranzakciókat adagokban vagy blokkokban "kötelezzük el". A blokkok általában több tucat vagy több száz tranzakciót tartalmaznak. +A tranzakciók száma nagyon magas, így a tranzakciókat adagokban vagy blokkokban „kötelezzük el”. A blokkok általában több tucat vagy több száz tranzakciót tartalmaznak. -[Többet a blokkokról](/developers/docs/blocks/) +[További tudnivalók a blokkokról](/developers/docs/blocks/) ### Okosszerződések {#smart-contracts} -Egy újra felhasználható kódrészlet (egy program), melyet egy fejlesztő publikál az EVM memóriába. Bárki kérheti az okosszerződés kód végrehajtását egy tranzakciós kérelemmel. Mivel a fejlesztők tetszőlegesen végrehajtható alkalmazásokat írhatnak az EVM-be (játékokat, piactereket, pénzügyi eszközöket stb.) okosszerződések publikálásával, ezért gyakran hívjuk ezeket [dappoknak, vagy decentralizált alkalmazásoknak](/developers/docs/dapps/). +Egy újra felhasználható kódrészlet (egy program), amelyet egy fejlesztő publikál az EVM státuszba. Bárki kérheti az okosszerződéses kód végrehajtását egy tranzakciós kérelemmel. Mivel a fejlesztők tetszőlegesen végrehajtható alkalmazásokat írhatnak az EVM-be (játékokat, piactereket, pénzügyi eszközöket stb.) okosszerződések publikálásával, ezért gyakran hívjuk ezeket [dappoknak, vagy decentralizált alkalmazásoknak](/developers/docs/dapps/). [Többet az okos szerződésekről](/developers/docs/smart-contracts/) ## További olvasnivaló {#further-reading} - [Ethereum fehérkönyv](/whitepaper/) +- [Amúgy hogyan működik az Ethereum?](https://www.preethikasireddy.com/post/how-does-ethereum-work-anyway) - _Preethi Kasireddy_ (**Megjegyzés:** bár ez a forrás még mindig értékes, de a [Beolvadás](/roadmap/merge) előtti, és ezért az említett proof-of-work mechanizmus helyett az Ethereum már [proof-of-stake](/developers/docs/consensus-mechanisms/pos)-et használ) + +_Ismersz olyan közösségi anyagot, amely segített neked? Módosítsd az oldalt és add hozzá!_ ## Kapcsolódó útmutatók {#related-tutorials} -- [Egy fejlesztő útmutatása az Ethereumba, első rész](/developers/tutorials/a-developers-guide-to-ethereum-part-one/) _– Az Ethereum nagyon kezdőbarát felfedezése Python és web3.py használatával_ +- [Egy fejlesztő útmutatása az Ethereumba 1. rész](/developers/tutorials/a-developers-guide-to-ethereum-part-one/) _– Az Ethereum nagyon kezdőbarát felfedezése Python és web3.py használatával_ diff --git a/public/content/translations/hu/developers/docs/networks/index.md b/public/content/translations/hu/developers/docs/networks/index.md index ba0ebd69c27..c2d3a960b3c 100644 --- a/public/content/translations/hu/developers/docs/networks/index.md +++ b/public/content/translations/hu/developers/docs/networks/index.md @@ -4,72 +4,144 @@ description: Egy áttekintő az Ethereum hálózatairól és hogy hol lehet tesz lang: hu --- -Mivel az Ethereum egy protokoll, ami azt jelenti, hogy több, a protokollnak megfelelő "hálózat" létezhet, amelyek nem lépnek kölcsönhatásba egymással. +Az Ethereum-hálózatok olyan összekapcsolt számítógépek csoportjai, amelyek az Ethereum-protokoll segítségével kommunikálnak. Egyetlen Ethereum főhálózat létezik, de ugyanazt a protokollt használó, független hálózatokat is létre lehet hozni tesztelési és fejlesztési célból. Számos ilyen független hálózat létezik, amelyek a protokollt követik, de nem kommunikálnak egymással. Akár a saját számítógépén is létrehozhat egyet, hogy egy okosszerződést vagy egy web3 alkalmazást teszteljen. -A hálózatok különböző Ethereum környezetek, amelyekhez hozzáférhetsz fejlesztési, tesztelési vagy gyártási felhasználási esetek céljából. Ethereum számlád fog működni a különböző hálózatokon, de a számlaegyenleged és a tranzakcióid előzményei nem kerülnek át az Ethereum fő hálózatából. Tesztelési célból hasznos tudni, hogy mely hálózatok állnak rendelkezésre, és hogy hogyan szerezhetsz tesztnet ETH-t, amivel játszhatsz. +Ethereum-számlája működni fog a különböző hálózatokon, de a számlaegyenlege és a tranzakciós előzmények nem kerülnek át az Ethereum fő hálózatából. Tesztelési célból hasznos tudni, hogy amely hálózatok állnak rendelkezésre, és hogy hogyan szerezhet egy teszthálózat ETH-t, amivel kipróbálhat dolgokat. Biztonsági okokból nem javasolt olyan számla használata a teszthálózaton, amely a főhálózathoz tartozik és fordítva. ## Előfeltételek {#prerequisites} -Érdemes tisztában lenned az Ethereum alapjaival, mielőtt a különböző hálózatokról olvasol, mivel ezek a hálózatok az Ethereum olcsó és biztonságos verziói, amivel el játszogathatsz. Nézd meg ezt: [bevezetés az Ethereumba](/developers/docs/intro-to-ethereum/). +Érdemes tisztában lennie az [Ethereum alapjaival](/developers/docs/intro-to-ethereum/), mielőtt a különböző hálózatokról olvas, mivel ezek a teszthálózatok az Ethereum olcsó és biztonságos verziói, amelyekkel ki lehet próbálni dolgokat. ## Nyilvános hálózatok {#public-networks} -A nyilvános hálózatokat bárki elérheti szerte a világban egy internetkapcsolattal. Bárki olvashat és indíthat tranzakciókat egy nyilvános blokkláncon és hitelesítheti a tranzakciók végrehajtását. A tranzakciókról és a hálózat állapotáról való megállapodást a peerek konszenzusa hozza meg. +A nyilvános hálózatokat bárki elérheti szerte a világban egy internetkapcsolattal. Bárki olvashat és indíthat tranzakciókat egy nyilvános blokkláncon és hitelesítheti a tranzakciók végrehajtását. A tagok közötti konszenzus dönti el az új tranzakciók bedolgozását és a hálózat státuszát. -### Főhálózat {#mainnet} +### Ethereum-főhálózat {#ethereum-mainnet} A főhálózat az elsődleges nyilvános Ethereum produkciós blokklánc, ahol valós értékű tranzakciók történnek az elosztott főkönyvön. Amikor az emberek és tőzsdék az ETH árfolyamon vitatkoznak, akkor a főhálózati ETH-ről beszélnek. -### Tesztnetek {#testnets} +### Ethereum-teszthálózatok {#ethereum-testnets} A főhálózat mellett vannak nyilvános tesztnetek. Ezeket a hálózatokat a protokoll fejlesztők vagy az okosszerződések fejlesztői használják, hogy teszteljék mind a protokoll frissítéseket, és a lehetséges okosszerződéseket egy produkciószerű környezetben a főhálózatba történő telepítés előtt. Úgy is gondolhatsz rá, mint a produkciós és a staging szerver analógiájára. -Általában fontos, hogy le legyen tesztelve egy tesztnetre írt szerződéses kód, mielőtt a főhálózatra telepítenénk. Ha egy dappot fejlesztesz, mely meglévő okosszerződéseket integrál, akkor a legtöbb projekt másolatát megtalálhatod a tesztneteken, amikkel interakcióba léphetsz. +Általában fontos, hogy le legyen tesztelve egy teszthálózatra írt szerződéses kód, mielőtt a főhálózatra telepítenénk. Azoknál az alkalmazásoknál, ahol már meglévő okosszerződéssel kell kapcsolódni, a legtöbb projekt ezeknek a másolatát átteszi a teszthálózatra. -A legtöbb tesztnet egy proof-of-authority konszenzus mechanizmust használ. Ez azt jelenti, hogy a csomópontok egy kis csoportja van kiválasztva a tranzakciók validálására és új blokkok létrehozására - az identitásukat helyezik letétbe a folyamat alatt. Nehéz ösztönözni a bányászatot egy proof-of-work tesztneten, mely így sérülékeny maradhat. +A legtöbb teszthálózat úgy indul, hogy egy engedélyezett proof-of-authority konszenzusmechanizmust használ. Ez azt jelenti, hogy a csomópontok egy kis csoportja van kiválasztva a tranzakciók validálására és új blokkok létrehozására - az identitásukat helyezik letétbe a folyamat alatt. Alternatívaként néhány teszthálózat egy nyitott proof-of-stake konszenzusmechanizmust vezet be, ahol mindenki futtathat validátort, ahogy az Ethereum főhálózaton is működik. -#### Görli {#goerli} +A teszthálózathoz tartozó ETH-nak elvileg nincs valós értéke. Ugyanakkor a ritka vagy nehezen megszerezhető teszthálózati ETH-nek mégis kialakulhat valamilyen piaca. Mivel ETH-re van szükség, hogy ténylegesen interakcióba lépjen az Ethereummal (még a teszthálózaton is), a legtöbb ember csapokból szerzi a teszthálózati ETH-t. A legtöbb csap egy web app, ahol beírhatja a címét, amire ETH-et szeretne kapni. -Egy proof-of-authority tesztnet, mely a több klienssel is működik. +#### Melyik teszthálózatot használja? -#### Kovan {#kovan} +A két nyilvános teszthálózat, amelyet a kliens fejlesztők jelenleg fenntartanak a Sepolia és a Goerli. Sepolia egy hálózat a szerződés- és alkalmazásfejlesztők számára, ahol az alkalmazásaikat tesztelhetik. A Goerli-hálózat a protokollfejlesztőknek biztosít teret frissítéseik teszteléséhez, illetve a letétbe helyezőknek a validátorok futtatásához. -Egy proof-of-authority tesztnet az OpenEthereum kliensek számára. +#### Sepolia {#sepolia} -#### Rinkeby {#rinkeby} +**a Sepolia az ajánlott teszthálózat az alkalmazásfejlesztők számára.**. A Sepolia-hálózat egy engedélyezett validátorszettet használ. Viszonylag új, tehát kevés státusz és előzmény található rajta. Ezért gyorsan tud szinkronizálni, a csomópont futtatása pedig kevesebb tárhelyet igényel. Ez hasznos azoknak, akik gyorsan fel akarnak állítani egy csomópontot és közvetlenül kapcsolódni a hálózattal. -Egy proof-of-authority tesztnet a Geth kliensek számára. +- Zárt validátorszett, amelyet a kliensek és a tesztelő csapatok irányítanak +- Új teszthálózat, amelyre kevesebb alkalmazás van telepítve +- Gyorsan szinkronizál és kevesebb tárhely kell a csomópont futtatáshoz -#### Ropsten {#ropsten} +##### Források -Egy proof-of-work tesztnet. Ez azt jelenti, hogy ez reprezentálja leginkább az Ethereumot. +- [Honlap](https://sepolia.dev/) +- [GitHub](https://github.com/eth-clients/sepolia) +- [Otterscan](https://sepolia.otterscan.io/) +- [Etherscan](https://sepolia.etherscan.io) -### Tesztnet csapok {#testnet-faucets} +##### Csapok -Az ETH-nek a tesztneteken nincs valós értéke; így nincsen piaca sem a tesztnet ETH-nek. Mivel ETH-re van szükséged, hogy ténylegesen interakcióba lépj az Ethereummal, a legtöbb ember csapokból szerzi a tesztnet ETH-et. A legtöbb csap egy web app, ahol beírhatod a címedet, amire ETH-et szeretnél kapni. +- [QuickNode Sepolia csap](https://faucet.quicknode.com/drip) +- [Grabteeth](https://grabteeth.xyz/) +- [PoW csap](https://sepolia-faucet.pk910.de/) +- [Coinbase Wallet csap | Sepolia](https://coinbase.com/faucets/ethereum-sepolia-faucet) +- [Alchemy Sepolia csap](https://sepoliafaucet.com/) +- [Infura Sepolia csap](https://www.infura.io/faucet) +- [Chainstack Sepolia csap](https://faucet.chainstack.com/sepolia-faucet) +- [Testnet csap | Sepolia](https://testnet-faucet.com/sepolia/) -- [Görli csap](https://faucet.goerli.mudit.blog/) -- [Kovan csap](https://faucet.kovan.network/) -- [Rinkeby csap](https://faucet.rinkeby.io/) +#### Goerli _(hosszútávú támogatás)_ {#goerli} + +_Megjegyzés: [a Goerli teszthálózat lezárásra kerül](https://ethereum-magicians.org/t/proposal-predictable-ethereum-testnet-lifecycle/11575/17) és a [Holesovice](https://github.com/eth-clients/holesovice) veszi át a helyét 2023-ban. Kérjük, hogy vigye át az alkalmazásait a Sepolia hálózatra._ + +A Goerli egy olyan teszthálózat, ahol a validálást és a letétbe helyezést lehet tesztelni. A Goerli hálózat minden olyan felhasználók számára elérhető, aki teszthálózati validátort szeretne futtatni. Ezt használhatják azok a letétesek is, akik tesztelni akarják a protokollfrissítéseket, mielőtt azok a főhálózatra kerülnének. + +- Nyitott validátorszett, a letétesek tesztelhetik a hálózati frissítéseket +- Sok státusz elérhető, ezért alkalmas az okosszerződések komplex interakcióit letesztelni +- Hosszabb ideig tart a szinkronizálás és több tárhely kell a csomópont futtatáshoz + +##### Erőforrások + +- [Honlap](https://goerli.net/) +- [GitHub](https://github.com/eth-clients/goerli) +- [Etherscan](https://goerli.etherscan.io) + +##### Csapok + +- [QuickNode Goerli csap](https://faucet.quicknode.com/drip) +- [Grabteeth](https://grabteeth.xyz/) +- [PoW csap](https://goerli-faucet.pk910.de/) +- [Paradigm csap](https://faucet.paradigm.xyz/) +- [Alchemy Goerli csap](https://goerlifaucet.com/) +- [All That Node Goerli csap](https://www.allthatnode.com/faucet/ethereum.dsrv) +- [Coinbase Wallet csap | Goerli](https://coinbase.com/faucets/ethereum-goerli-faucet) +- [Chainstack Goerli csap](https://faucet.chainstack.com/goerli-faucet) + +Ha szeretne egy validátort indítani a Goerli teszthálózaton, akkor használja az ethstaker [olcsó goerli validátor launchpad-et](https://goerli.launchpad.ethstaker.cc/en/). + +### Második blokkláncréteg (L2) teszthálózatok {#layer-2-testnets} + +[A második blokkláncréteg (L2)](/layer-2/) az Ethereum skálázási megoldásait takarja. Az L2 egy elkülönült blokklánc, ami kiterjeszti az Ethereumot, örökölve annak biztonsági garanciáit. Az L2 teszthálózatok szorosan kapcsolódnak a nyilvános Ethereum teszthálózatokhoz. + +#### Arbitrum Goerli {#arbitrum-goerli} + +Teszthálózat az [Arbitrum-hoz](https://arbitrum.io/). + +##### Csapok + +- [Chainlink csap](https://faucets.chain.link/) + +#### Optimistic Goerli {#optimistic-goerli} + +Teszthálózat az [Optimism-hoz](https://www.optimism.io/). + +##### Csapok + +- [Paradigm csap](https://faucet.paradigm.xyz/) +- [Coinbase Wallet csap | Optimism Goerli](https://coinbase.com/faucets/optimism-goerli-faucet) + +#### Starknet Goerli {#starknet-goerli} + +Teszthálózat a [Starknethez](https://www.starknet.io). + +##### Csapok + +- [Starknet csap](https://faucet.goerli.starknet.io) ## Privát hálózatok {#private-networks} -Egy Ethereum hálózat privát hálózat, ha a csomópontok nem kapcsolódnak egy nyilvános hálózathoz (vagyis a főhálózathoz vagy egy tesztnethez). Ebben a kontextusban a privát azt jelenti, hogy elszigetelt és fenntartott, nem pedig azt, hogy védett vagy biztonságos. +Egy Ethereum hálózat privát, ha a csomópontok nem kapcsolódnak egy nyilvános hálózathoz (vagyis a főhálózathoz vagy egy teszthálózathoz). Ebben a kontextusban a privát azt jelenti, hogy elszigetelt és fenntartott, nem pedig azt, hogy védett vagy biztonságos. ### Fejlesztői hálózatok {#development-networks} -Egy Ethereum alkalmazás fejlesztésekor fontos, hogy egy privát hálózaton futtasd, hogy megnézd hogyan működik telepítés előtt. Hasonlóan ahhoz, amikor egy lokális szervert futtatsz a számítógépeden webfejlesztés céljából, futtathatsz egy lokális blokklánc példányt, ahol tesztelheted a dappodat. Ez gyorsabb iterációt tesz lehetővé, mint egy nyilvános tesztnet. +Egy Ethereum alkalmazás fejlesztésekor fontos, hogy egy privát hálózaton futtassa, hogy megnézze, hogyan működik telepítés előtt. Hasonlóan ahhoz, amikor egy lokális szervert futtat a számítógépén webfejlesztés céljából, egy lokális blokklánc-példányt is futtathat, ahol tesztelheti a dappot. Ez gyorsabb iterációt tesz lehetővé, mint egy nyilvános tesztnet. -Vannak olyan projektek és eszközök, melyek ebben segítenek. Tudj meg többet a [fejlesztői hálózatokról](/developers/docs/development-networks/). +Vannak olyan projektek és eszközök, amelyek ebben segítenek. Tudjon meg többet a [fejlesztői hálózatokról](/developers/docs/development-networks/). -### Konzorcium hálózatok {#consortium-networks} +### Konzorciumhálózatok {#consortium-networks} Egy konszenzus folyamatot néhány előre meghatározott megbízható csomópont végzi. Például egy ismert tudományos intézmények magánhálózata, amelyek mindegyike egyetlen csomópontot irányít, és a blokkokat az aláírók küszöbértéke érvényesíti a hálózaton belül. -Ha egy nyilvános Ethereum hálózat olyan, mint a nyilvános internet, akkor úgy gondolhatsz a konzorcium hálózatra, mint egy privát intranetre. +Ha egy nyilvános Ethereum hálózat olyan, mint a nyilvános internet, akkor úgy gondoljon a konzorcium hálózatra, mint egy privát intranetre. + +## Kapcsolódó eszközök {#related-tools} + +- [Chainlist](https://chainlist.org/) _– az EVM-hálózatok listája, hogy a tárcákat és a szolgáltatókat a megfelelő Chain ID és Network ID segítségével kapcsolják be_ +- [EVM-alapú láncok](https://github.com/ethereum-lists/chains) _– GitHub könyvtár a lánc metaadatokból, amelyek a Chainlisten megjelennek_ ## További olvasnivaló {#further-reading} -_Ismersz olyan közösségi anyagot, amely segített neked? Módosítsd az oldalt és add hozzá!_ +- [Javaslat: kiszámítható Ethereum teszthálózati életciklus](https://ethereum-magicians.org/t/proposal-predictable-ethereum-testnet-lifecycle/11575/17) +- [Az Ethereum teszthálózatok evolúciója](https://etherworld.co/2022/08/19/the-evolution-of-ethereum-testnet/) diff --git a/public/content/translations/hu/developers/docs/programming-languages/dart/index.md b/public/content/translations/hu/developers/docs/programming-languages/dart/index.md new file mode 100644 index 00000000000..6bcfa5e2dc4 --- /dev/null +++ b/public/content/translations/hu/developers/docs/programming-languages/dart/index.md @@ -0,0 +1,28 @@ +--- +title: Ethereum Dart-fejlesztők számára +description: Sajátítsa el az Ethereum-fejlesztést a Dart programozási nyelv használatával +lang: hu +incomplete: true +--- + +## Kezdő lépések az okosszerződésekkel és a Solidity nyelvvel {#getting-started-with-smart-contracts-and-solidity} + +## Oktatóanyagok {#tutorials} + +- [Flutter és blokklánc – Hello World Dapp](https://www.geeksforgeeks.org/flutter-and-blockchain-hello-world-dapp/) átvezeti Önt a kezdeti lépéseken: + 1. A [Truffle fejlesztői környezet](https://www.trufflesuite.com/) telepítése + 2. Okosszerződés megírása [Solidity](https://soliditylang.org/) nyelven + 3. Felhasználói felület megírása Dart nyelven +- A [mobilalkalmazások építése a Flutterrel](https://medium.com/dash-community/building-a-mobile-dapp-with-flutter-be945c80315a) sokkal rövidebb, amely jobb lehet, ha már ismeri az alapokat +- Ha videók segítségével jobban szeret tanulni, akkor nézze meg az [Építse meg első blokkláncos Flutter alkalmazását](https://www.youtube.com/watch?v=3Eeh3pJ6PeA) videót, amely nagyjából egy óra hosszú +- Ha ennél kevesebb ideje van, akkor talán tetszeni fog az [Egy blokklánc decentralizált alkalmazás építése a Flutterrel és a Darttal az Ethereumon](https://www.youtube.com/watch?v=jaMFEOCq_1s) videó, amely csak húsz percet veszi igénybe +- [A MetaMask integrációja a Flutter alkalmazásban](https://youtu.be/8qzVDje3IWk) – ez a rövid videó bemutatja, hogyan kell a MetaMaskot beintegrálni a Flutter alkalmazásokba + +## Munka Ethereum kliensekkel {#working-with-ethereum-clients} + +Az Ethereumot decentralizált alkalmazások (dappok) fejlesztésére használhatja, amelyek a kriptovaluták és a blokklánc-technológia nyújtotta összes előnyét kiélvezhetik. A Darthoz legalább két könyvtárat tartanak karban, hogy a [JSON RPC API-t](/developers/docs/apis/json-rpc/) használja az Ethereumra. + +1. [Web3dart a simonbutler.eu forrásból](https://pub.dev/packages/web3dart) +1. [Ethereum 5.0.0 a darticulate.com forrásból](https://pub.dev/packages/ethereum) + +Vannak még emellett olyan könyvtárak is, amelyekkel bizonyos Ethereum címeket lehet kezelni, vagy különféle kriptovaluták árait lehet lekérdezni. [Ezek teljes listája itt látható](https://pub.dev/dart/packages?q=ethereum). diff --git a/public/content/translations/hu/developers/docs/programming-languages/delphi/index.md b/public/content/translations/hu/developers/docs/programming-languages/delphi/index.md index c51011ced01..af6c2bfe535 100644 --- a/public/content/translations/hu/developers/docs/programming-languages/delphi/index.md +++ b/public/content/translations/hu/developers/docs/programming-languages/delphi/index.md @@ -1,32 +1,32 @@ --- -title: Ethereum Delphi fejlesztőknek -description: Tanuld meg az Ethereum fejlesztést a Delphi programozási nyelv használatával +title: Ethereum Delphi-fejlesztők számára +description: Tanulja meg az Ethereum fejlesztést a Delphi programozási nyelv használatával lang: hu incomplete: true --- - + Használj Ethereumot decentralizált alkalmazások (avagy "dappok") fejlesztésére, melyek kihasználják a kriptovaluta és a blokklánc technológia nyújtotta előnyöket. Ezek a dappok megbízhatóak, ami azt jelenti, hogyha egyszer telepítették az Ethereumba, akkor mindig úgy fognak futni, ahogy programozták őket. Digitális vagyontárgyakat irányíthatnak, lehetőséget teremtve ezzel újfajta pénzügyi alkalmazások létrejöveteléhez. Decentralizáltak lehetnek, mely azt jelenti, hogy semmilyen entitás vagy személy nem irányítja őket és közel lehetetlen őket cenzúrázni. -Fejlessz decentralizált alkalmazásokat Ethereumra, és lépj interakcióba okosszerződésekkel a Delphi programozási nyelv használatával! +Fejlesszen decentralizált alkalmazásokat Ethereumra, és lépjen interakcióba okosszerződésekkel a Delphi programozási nyelv használatával! -## Első lépések az Okosszerződésekkel és a Solidity nyelvvel {#getting-started-with-smart-contracts-and-the-solidity-language} +## Kezdő lépések az okosszerződésekkel és a Solidity nyelvvel {#getting-started-with-smart-contracts-and-the-solidity-language} -**Tedd meg az első lépést, hogy integráld a Delphi-t Ethereummal** +**Tegye meg az első lépést, hogy integrálja a Delphi-t az Ethereummal** -Szükséged van egy még kezdetlegesebb alapozóra? Tekintsd meg a [ethereum.org/learn](/learn/) oldalt vagy a [ethereum.org/developers](/developers/) oldalt. +Szükséged van egy még kezdetlegesebb alapozóra? Tekintsd meg az [ethereum.org/learn](/learn/) oldalt vagy az [ethereum.org/developers](/developers/) oldalt. - [Blokklánc ismertetése](https://kauri.io/article/d55684513211466da7f8cc03987607d5/blockchain-explained) - [Okosszerződések értelmezése](https://kauri.io/article/e4f66c6079e74a4a9b532148d3158188/ethereum-101-part-5-the-smart-contract) - [Írd meg az első Okosszerződésed](https://kauri.io/article/124b7db1d0cf4f47b414f8b13c9d66e2/remix-ide-your-first-smart-contract) - [Tanuld meg a Solidity fordítását és telepítését](https://kauri.io/article/973c5f54c4434bb1b0160cff8c695369/understanding-smart-contract-compilation-and-deployment) -## Linkek és referenciák kezdőknek {#beginner-references-and-links} +## Referenciák és hivatkozások kezdők számára {#beginner-references-and-links} **Bevezetés a Delphereum könyvtárba** @@ -35,20 +35,22 @@ Szükséged van egy még kezdetlegesebb alapozóra? Tekintsd meg a [ethereum.org - [Delphi összekapcsolása az Ethereum főhálózattal](https://medium.com/@svanas/connecting-delphi-to-the-ethereum-main-net-5faf1feffd83) - [Delphi összekapcsolása okosszerződésekkel](https://medium.com/@svanas/connecting-delphi-to-smart-contracts-3146b12803a1) -**Szeretnéd kihagyni a telepítést, és egyenesen a mintákra ugrani?** +**Szeretné kihagyni a telepítést, és egyenesen a mintákra ugrani?** - [3 perces okosszerződés és Delphi - Első rész](https://medium.com/@svanas/a-3-minute-smart-contract-and-delphi-61d998571d) - [3 perces okosszerződés és Delphi - Második rész](https://medium.com/@svanas/a-3-minute-smart-contract-and-delphi-part-2-446925faa47b) -## Középhaladó cikkek {#intermediate-articles} +## Köztes cikkek {#intermediate-articles} - [Egy Ethereumon aláírt üzenetaláírás generálása Delphi-ben](https://medium.com/@svanas/generating-an-ethereum-signed-message-signature-in-delphi-75661ce5031b) - [Ether átutalás Delphi-vel](https://medium.com/@svanas/transferring-ether-with-delphi-b5f24b1a98a4) - [ERC-20 token átutalás Delphi-vel](https://medium.com/@svanas/transferring-erc-20-tokens-with-delphi-bb44c05b295d) -## Fejlett használati minták {#advanced-use-patterns} +## Speciális használati minták {#advanced-use-patterns} - [Delphi és az Ethereum Name Service (ENS)](https://medium.com/@svanas/delphi-and-ethereum-name-service-ens-4443cd278af7) - [QuikNode, Ethereum és Delphi](https://medium.com/@svanas/quiknode-ethereum-and-delphi-f7bfc9671c23) +- [Delphi és az Ethereumi sötét erdő](https://svanas.medium.com/delphi-and-the-ethereum-dark-forest-5b430da3ad93) +- [Tokenátváltás a Delphiben](https://svanas.medium.com/swap-one-token-for-another-in-delphi-bcb999c47f7) Még több anyagot keresel? Tekintsd meg az [ethereum.org/developers](/developers/) oldalt. diff --git a/public/content/translations/hu/developers/docs/programming-languages/dot-net/index.md b/public/content/translations/hu/developers/docs/programming-languages/dot-net/index.md index dc5cb5d250e..91a366b6cdf 100644 --- a/public/content/translations/hu/developers/docs/programming-languages/dot-net/index.md +++ b/public/content/translations/hu/developers/docs/programming-languages/dot-net/index.md @@ -1,86 +1,86 @@ --- -title: Ethereum .NET fejlesztőknek -description: Tanulj meg Ethereumon fejleszteni .NET-alapú projektek és eszközök használatával +title: Ethereum .NET-fejlesztők számára +description: Tanuljon meg Ethereumon fejleszteni .NET-alapú projektek és eszközök használatával lang: hu incomplete: true --- -Tanulj meg Ethereumon fejleszteni .NET-alapú projektek és eszközök használatával + Használj Ethereumot decentralizált alkalmazások (avagy "dappok") fejlesztésére, melyek kihasználják a kriptovaluta és a blokklánc technológia nyújtotta előnyöket. Ezek a dappok megbízhatóak, ami azt jelenti, hogyha egyszer telepítették az Ethereumba, akkor mindig úgy fognak futni, ahogy programozták őket. Digitális vagyontárgyakat irányíthatnak, lehetőséget teremtve ezzel újfajta pénzügyi alkalmazások létrejöveteléhez. Decentralizáltak lehetnek, mely azt jelenti, hogy semmilyen entitás vagy személy nem irányítja őket és közel lehetetlen őket cenzúrázni. -Építs decentralizált alkalmazásokat Ethereumra és lépj kapcsolatba okosszerződésekkel a Microsoft tech stack használatával, mely támogatja a C#, # Visual Basic .NET, F# nyelveket VSCode és Visual Studio eszközökkel a .NET Framework/.NET Core/.NET Standard-on keresztül. Telepíts percek alatt egy Ethereum blokkláncot Azure-ra a Microsoft Azure Blockchain használatával. Hozd el a .NET szeretetét Ethereumra! +Építsen decentralizált alkalmazásokat Ethereumra és lépjen kapcsolatba okosszerződésekkel a Microsoft tech stack használatával, mely támogatja a C#, # Visual Basic .NET, F# nyelveket VSCode és Visual Studio eszközökkel a .NET Framework/.NET Core/.NET Standard-on keresztül. Telepítsen percek alatt egy Ethereum blokkláncot Azure-ra a Microsoft Azure Blockchain használatával. Hozza el a .NET szeretetét az Ethereumra! -## Első lépések az Okosszerződésekkel és a Solidity nyelvvel {#getting-started-with-smart-contracts-and-the-solidity-language} +## Kezdő lépések az okosszerződésekkel és a Solidity nyelvvel {#getting-started-with-smart-contracts-and-the-solidity-language} -**Tedd meg az első lépést, hogy integráld a .NET-et Ethereummal** +**Tegye meg az első lépést, hogy integrálja a .NET-et az Ethereummal** -Szükséged van egy még kezdetlegesebb alapozóra? Tekintsd meg az [ethereum.org/learn](/learn/) oldalt vagy a [ethereum.org/developers](/developers/) oldalt. +Szükséged van egy még kezdetlegesebb alapozóra? Tekintsd meg az [ethereum.org/learn](/learn/) oldalt vagy az [ethereum.org/developers](/developers/) oldalt. - [Blokklánc ismertetése](https://kauri.io/article/d55684513211466da7f8cc03987607d5/blockchain-explained) - [Okosszerződések értelmezése](https://kauri.io/article/e4f66c6079e74a4a9b532148d3158188/ethereum-101-part-5-the-smart-contract) - [Írd meg az első Okosszerződésed](https://kauri.io/article/124b7db1d0cf4f47b414f8b13c9d66e2/remix-ide-your-first-smart-contract) - [Tanuld meg a Solidity fordítását és telepítését](https://kauri.io/article/973c5f54c4434bb1b0160cff8c695369/understanding-smart-contract-compilation-and-deployment) -## Linkek és referenciák kezdőknek {#beginner-references-and-links} +## Referenciák és hivatkozások kezdők számára {#beginner-references-and-links} -**Bemutatjuk a Nethereum library-t és a VS Code Solidity-t** +**Bemutatjuk a Nethereum könyvtárat és a VS Code Solidity-t** - [Nethereum, Első Lépések](https://docs.nethereum.com/en/latest/getting-started/) - [VS Code Solidity Telepítése](https://marketplace.visualstudio.com/items?itemName=JuanBlanco.solidity) - [Egy .NET fejlesztő workflow-ja Ethereum Okosszerződések írására és hívására](https://medium.com/coinmonks/a-net-developers-workflow-for-creating-and-calling-ethereum-smart-contracts-44714f191db2) -- [Okosszerződés integráció Nethereummal](https://kauri.io/#collections/getting%20started/smart-contracts-integration-with-nethereum/#smart-contracts-integration-with-nethereum) -- [Interfacing .NET and Ethereum Blockchain Smart Contracts with Nethereum](https://medium.com/my-blockchain-development-daily-journey/interfacing-net-and-ethereum-blockchain-smart-contracts-with-nethereum-2fa3729ac933), also in [中文版](https://medium.com/my-blockchain-development-daily-journey/%E4%BD%BF%E7%94%A8nethereum%E9%80%A3%E6%8E%A5-net%E5%92%8C%E4%BB%A5%E5%A4%AA%E7%B6%B2%E5%8D%80%E5%A1%8A%E9%8F%88%E6%99%BA%E8%83%BD%E5%90%88%E7%B4%84-4a96d35ad1e1) -- [Nethereum - Egy nyílt forráskódú .NET integráció library blokkláncra](https://kauri.io/#collections/a%20hackathon%20survival%20guide/nethereum-an-open-source-.net-integration-library/) +- [Okosszerződés integráció Nethereummal](https://kauri.io/#collections/Getting%20Started/smart-contracts-integration-with-nethereum/#smart-contracts-integration-with-nethereumm) +- [A .NET és az Ethereum blokklánc okosszerződések interfészelése a Nethereummal](https://medium.com/my-blockchain-development-daily-journey/interfacing-net-and-ethereum-blockchain-smart-contracts-with-nethereum-2fa3729ac933), elérhető kínai verzió: [中文版](https://medium.com/my-blockchain-development-daily-journey/%E4%BD%BF%E7%94%A8nethereum%E9%80%A3%E6%8E%A5-net%E5%92%8C%E4%BB%A5%E5%A4%AA%E7%B6%B2%E5%8D%80%E5%A1%8A%E9%8F%88%E6%99%BA%E8%83%BD%E5%90%88%E7%B4%84-4a96d35ad1e1) +- [Nethereum – Egy nyílt forráskódú .NET integrációs könyvtár blokkláncra](https://kauri.io/#collections/a%20hackathon%20survival%20guide/nethereum-an-open-source-.net-integration-library/) - [Ethereum tranzakciók írása SQL adatbázisba Nethereum használatával](https://medium.com/coinmonks/writing-ethereum-transactions-to-sql-database-using-nethereum-fd94e0e4fa36) -- [Nézd meg, hogy lehet egyszerűen Ethereum okosszerződéseket telepíteni C# és VisualStudio használatával](https://koukia.ca/deploy-ethereum-smart-contracts-using-c-and-visualstudio-5be188ae928c) +- [Nézze meg, hogy lehet egyszerűen Ethereum okosszerződéseket telepíteni C# és VisualStudio használatával](https://koukia.ca/deploy-ethereum-smart-contracts-using-c-and-visualstudio-5be188ae928c) **Szeretnéd kihagyni a telepítést és egyenesen a mintákra ugrani?** -- [Playground](http://playground.nethereum.com/) - Lépj kapcsolatba az Ethereummal, és tanuld meg a Nethereum használatát a böngészőn keresztül. +- [Playground](http://playground.nethereum.com/) - Lépjen kapcsolatba az Ethereummal, és tanulja meg a Nethereum használatát a böngészőn keresztül. - Számlaegyenleg Lekérdezés [C#](http://playground.nethereum.com/csharp/id/1001) [VB.NET](http://playground.nethereum.com/vb/id/2001) - ERC20 Okosszerződés Egyenleglekérdezés [C#](http://playground.nethereum.com/csharp/id/1005) [VB.NET](http://playground.nethereum.com/vb/id/2004) - Ether utalása egy számlára [C#](http://playground.nethereum.com/csharp/id/1003) [VB.NET](http://playground.nethereum.com/vb/id/2003) - ... És még sok más! -## Középhaladó cikkek {#intermediate-articles} +## Köztes cikkek {#intermediate-articles} - [Nethereum Munkafüzet/Minta Lista](http://docs.nethereum.com/en/latest/Nethereum.Workbooks/docs/) -- [Telepítsd le a saját fejlesztői tesztláncaidat](https://github.com/Nethereum/Testchains) +- [Telepítse saját fejlesztői tesztláncait](https://github.com/Nethereum/Testchains) - [VSCode Codegen Plugin Solidity-re](https://docs.nethereum.com/en/latest/nethereum-codegen-vscodesolidity/) - [Unity és Ethereum: Miért és hogyan](https://www.raywenderlich.com/5509-unity-and-ethereum-why-and-how) -- [Készíts ASP.NET Core Web API-t Ethereum dappokra](https://tech-mint.com/blockchain/create-asp-net-core-web-api-for-ethereum-dapps/) +- [Készítsen ASP.NET Core Web API-t Ethereum dappokra](https://tech-mint.com/blockchain/create-asp-net-core-web-api-for-ethereum-dapps/) - [A Nethereum Web3 használata egy ellátási lánc nyomon követési rendszer implementálására](http://blog.pomiager.com/post/using-nethereum-web3-to-implement-a-supply-chain-traking-system4) -- [Nethereum blokk feldolgozás](https://nethereum.readthedocs.io/en/latest/nethereum-block-processing-detail/), egy [C# Playground mintával](http://playground.nethereum.com/csharp/id/1025) +- [Nethereum blokk feldolgozás](https://nethereum.readthedocs.io/en/latest/nethereum-block-processing-detail/), egy[ C# Playground mintával](http://playground.nethereum.com/csharp/id/1025) - [Nethereum Websocket Streaming](https://nethereum.readthedocs.io/en/latest/nethereum-subscriptions-streaming/) - [Kaleido és Nethereum](https://kaleido.io/kaleido-and-nethereum/) - [Quorum és Nethereum](https://github.com/Nethereum/Nethereum/blob/master/src/Nethereum.Quorum/README.md) -## Fejlett használati minták {#advanced-use-patterns} +## Speciális használati minták {#advanced-use-patterns} - [Azure Key Vault és Nethereum](https://github.com/Azure-Samples/bc-community-samples/tree/master/akv-nethereum) - [Nethereum.DappHybrid](https://github.com/Nethereum/Nethereum.DappHybrid) - [Ujo Nethereum backend referencia architektúra](https://docs.nethereum.com/en/latest/nethereum-ujo-backend-sample/) -## .NET Projektek, eszközök és más mókás dolog {#dot-net-projects-tools-and-other-fun-stuff} +## .NET projektek, eszközök és más érdekes dolgok {#dot-net-projects-tools-and-other-fun-stuff} -- [Nethereum Playground](http://playground.nethereum.com/) - _Fordíts, készíts és futtass Nethereum kódrészleteket böngészőben_ +- [Nethereum Playground](http://playground.nethereum.com/) - _Fordítson, készítsen és futtasson Nethereum kódrészleteket böngészőben_ - [Nethereum Codegen Blazor](https://github.com/Nethereum/Nethereum.CodeGen.Blazor) - _Nethereum kódgenerátor UI-jal Blazor-ben_ - [Nethereum Blazor](https://github.com/Nethereum/NethereumBlazor) - _A .NET Wasm SPA könnyű blokklánc felfedező és egyszerű tárca_ -- [Wonka Business Rules Engine](https://docs.nethereum.com/en/latest/wonka/) - _Egy business-rule-engine (a .NET és az Ethereum plaforma is), mely örökletesen meta-adat vezérelt._ -- [Nethermind](https://github.com/NethermindEth/nethermind) - _A .NET Core Ethereum kliens Linux-ra, Windows-ra, MacOs-re_ +- [Wonka Business Rules Engine](https://docs.nethereum.com/en/latest/wonka/) - _Egy üzleti szabályokat alkalmazó program (a .NET és az Ethereum platformra is), mely örökletesen metaadat vezérelt._ +- [Nethermind](https://github.com/NethermindEth/nethermind) – _A .NET Core Ethereum-kliens Linux, Windows, macOS rendszerhez_ - [eth-utils](https://github.com/ethereum/eth-utils/) - _használati funkciók Ethereumhoz kapcsolódó kódbázisokkal való munkához_ - [TestChains](https://github.com/Nethereum/TestChains) - _Előre konfigurált .NET fejlesztői láncok gyors válaszra (PoA)_ Még több anyagot keresel? Tekintsd meg az [ethereum.org/developers](/developers/) oldalt. -## .NET közösségi hozzájárulók {#dot-net-community-contributors} +## .NET közösségi közreműködők {#dot-net-community-contributors} -Mi a Nethereumon főleg a [Gitteren](https://gitter.im/Nethereum/Nethereum) lógunk, ahol bárki nyugodtan kérdezhet/válaszolhat, segítséget kaphat vagy csak pihenhet. Nyugodtan csinálj egy PR-et vagy nyiss egy ticketet a [Nethereum GitHub repository-ban](https://github.com/Nethereum), vagy csak böngéssz a rengeteg mellék/minta projektjeink között. Megtalálsz minket [Discord-on](https://discord.gg/jQPrR58FxX) is! +Mi a Nethereumon főleg a [Gitteren](https://gitter.im/Nethereum/Nethereum) kommunikálunk, ahol bárki nyugodtan kérdezhet/válaszolhat, segítséget kaphat vagy csak velünk lehet. Bátran készítsen egy PR-t vagy nyisson egy „problémát” (issue) a [Nethereum Github mappában](https://github.com/Nethereum), vagy csak böngésszen a rengeteg mellék-/mintaprojektjeink között. Megtalál minket [Discord-on](https://discord.gg/jQPrR58FxX) is! -Mi a Nethermind-nál a [Gittert](https://gitter.im/nethermindeth/nethermind) használjuk kapcsolattartásra. PR-ekért vagy ticketekért, tekintsd meg a [Nethermind GitHub repository-t](https://github.com/NethermindEth/nethermind). +Ha Önnek új a Nethermind és segítségre van szüksége a kezdéshez, akkor csatlakozzon a [Discord](http://discord.gg/PaCMRFdvWT) csatornánkhoz. Fejlesztőink készséggel válaszolnak a kérdéseire. PR-okért vagy issue-kért tekintse meg a [Nethermind Github mappát](https://github.com/NethermindEth/nethermind). -## Egyéb összesített lista {#other-aggregated-lists} +## Egyéb összesített listák {#other-aggregated-lists} [Hivatalos Nethereum Oldal](https://nethereum.com/) [Hivatalos Nethermind Oldal](https://nethermind.io/) diff --git a/public/content/translations/hu/developers/docs/programming-languages/golang/index.md b/public/content/translations/hu/developers/docs/programming-languages/golang/index.md index 957dd03443d..0fed22c90be 100644 --- a/public/content/translations/hu/developers/docs/programming-languages/golang/index.md +++ b/public/content/translations/hu/developers/docs/programming-languages/golang/index.md @@ -1,25 +1,25 @@ --- title: Ethereum Go fejlesztőknek -description: Tanulj meg Ethereumra fejleszteni Go-alapú projektek és eszközök használatával +description: Tanuljon meg Ethereumra fejleszteni Go-alapú projektek és eszközök használatával lang: hu incomplete: true --- -Tanulj meg Ethereumra fejleszteni Go-alapú projektek és eszközök használatával + -Használd az Ethereumot decentraizált alkalmazások (avagy "dappok") fejlesztésére. Ezek a dappok megbízhatóak, ami azt jelenti, hogyha egyszer telepítették az Ethereumba, akkor mindig úgy fognak futni, ahogy programozták őket. Decentralizáltak, ami azt jelenti, hogy egy peer-to-peer hálózaton futnak és nincs lehetőség egyetlen hiba miatti leállásra (single point of failure). Nincs olyan entitás vagy személy, ami irányítaná őket és szinte lehetetlen őket cenzúrázni. Digitális eszközöket irányíthatnak, lehetőséget teremtve ezzel újfajta alkalmazások létrejöveteléhez. +Használja az Ethereumot decentralizált alkalmazások (dappok) fejlesztésére. Ezek a dappok megbízhatóak, ami azt jelenti, hogyha egyszer telepítették az Ethereumba, akkor mindig úgy fognak futni, ahogy programozták őket. Decentralizáltak, ami azt jelenti, hogy egy peer-to-peer hálózaton futnak és nincs lehetőség egyetlen hiba miatti leállásra (single point of failure). Nincs olyan entitás vagy személy, ami irányítaná őket és szinte lehetetlen őket cenzúrázni. Digitális eszközöket irányíthatnak, lehetőséget teremtve ezzel újfajta alkalmazások létrejöveteléhez. -## Első lépések az Okosszerződésekkel és a Solidity nyelvvel {#getting-started-with-smart-contracts-and-solidity} +## Kezdő lépések az okosszerződésekkel és a Solidity nyelvvel {#getting-started-with-smart-contracts-and-solidity} -**Tedd meg az első lépést, hogy integráld a Go-t Ethereummal** +**Tegye meg az első lépést, hogy integrálja a Go-t az Ethereummal** -Szükséged van egy méginkább kezdőknek szóló alapozóra? Tekintsd meg az [ethereum.org/learn](/learn/) oldalt vagy a [ethereum.org/developers](/developers/) oldalt. +Szükséged van egy méginkább kezdőknek szóló alapozóra? Tekintsd meg az [ethereum.org/learn](/learn/) oldalt vagy az [ethereum.org/developers](/developers/) oldalt. - [Blokklánc ismertetése](https://kauri.io/article/d55684513211466da7f8cc03987607d5/blockchain-explained) - [Okosszerződések értelmezése](https://kauri.io/article/e4f66c6079e74a4a9b532148d3158188/ethereum-101-part-5-the-smart-contract) - [Írd meg az első Okosszerződésed](https://kauri.io/article/124b7db1d0cf4f47b414f8b13c9d66e2/remix-ide-your-first-smart-contract) - [Tanuld meg a Solidity fordítását és telepítését](https://kauri.io/article/973c5f54c4434bb1b0160cff8c695369/understanding-smart-contract-compilation-and-deployment) -- [Szerződés útmutató](https://github.com/ethereum/go-ethereum/wiki/Contract-Tutorial) +- [Szerződésútmutató](https://github.com/ethereum/go-ethereum/wiki/Contract-Tutorial) ## Cikkek és könyvek kezdőknek {#beginner-articles-and-books} @@ -28,44 +28,45 @@ Szükséged van egy méginkább kezdőknek szóló alapozóra? Tekintsd meg az [ - [Golang használata Ethereumra való kapcsolódásra](https://www.youtube.com/watch?v=-7uChuO_VzM) - [Ethereum okosszerződések telepítése Golang használatával](https://www.youtube.com/watch?v=pytGqQmDslE) - [Egy útmutató, arról, hogy hogyan kell Ethereum okosszerződéseket tesztelni és telepíteni lépésről lépésre](https://hackernoon.com/a-step-by-step-guide-to-testing-and-deploying-ethereum-smart-contracts-in-go-9fc34b178d78) -- [eBook: Ethereum Development with Go](https://goethereumbook.org/) - _Ethereum alkalmazások fejlesztése Go-val_ +- [eBook: Ethereum fejlesztése a Go-val](https://goethereumbook.org/) – _Ethereum alkalmazások fejlesztése Go-val_ -## Haladó cikkek és dokumentációk {#intermediate-articles-and-docs} +## Cikkek és dokumentációk haladóknak {#intermediate-articles-and-docs} -- [Go Ethereum Documentation](https://geth.ethereum.org/docs/) - _A hivatalos Ethereum Golang dokumentáció_ -- [Erigon Programmer's Guide](https://github.com/ledgerwatch/erigon/blob/devel/docs/programmers_guide/guide.md) - _Illusztrált útmutató, mely bemutatja az állapot fát, többszöri bizonyítékokat és a tranzakció feldolgozást_ -- [Erigon és az állapot nélküli Ethereum](https://youtu.be/3-Mn7OckSus?t=394) - _2020 Ethereum Közösségi Konferenica (EthCC 3)_ -- [Erigon: Ethereum kliensek optimalizálása](https://www.youtube.com/watch?v=CSpc1vZQW2Q) - _2018 Devcon 4_ +- [Go Ethereum dokumentácó](https://geth.ethereum.org/docs/) – _A hivatalos Ethereum Golang dokumentáció_ +- [Erigon útmutató programozóknak](https://github.com/ledgerwatch/erigon/blob/devel/docs/programmers_guide/guide.md) – _Illusztrált útmutató, amely bemutatja az állapotfát, többszöri bizonyítékokat és a tranzakciófeldolgozást_ +- [Erigon és a státuszmentes Ethereum](https://youtu.be/3-Mn7OckSus?t=394) – _2020-as Ethereum Közösségi Konferencia (EthCC 3)_ +- [Erigon: Ethereum-kliensek optimalizálása](https://www.youtube.com/watch?v=CSpc1vZQW2Q) – _2018. Devcon 4_ - [Go Ethereum GoDoc](https://godoc.org/github.com/ethereum/go-ethereum) -- [Egy dapp készítése Go-ban Geth-tel](https://kauri.io/#collections/A%20Hackathon%20Survival%20Guide/creating-a-dapp-in-go-with-geth/) -- [Munka Ethereum Privát Hálózaton Golang-gel és Geth-tel](https://myhsts.org/tutorial-learn-how-to-work-with-ethereum-private-network-with-golang-with-geth.php) -- [Solidity szerződések unit test-je Ethereumon Go-val](https://medium.com/coinmonks/unit-testing-solidity-contracts-on-ethereum-with-go-3cc924091281) -- [Gyors referencia a Geth könyvtárként való használatára](https://medium.com/coinmonks/web3-go-part-1-31c68c68e20e) +- [Egy dapp készítése Go-ban a Geth segítségével](https://kauri.io/#collections/A%20Hackathon%20Survival%20Guide/creating-a-dapp-in-go-with-geth/) +- [Dolgozzon az Ethereum privát hálózaton a Golanggal és Geth-tel](https://myhsts.org/tutorial-learn-how-to-work-with-ethereum-private-network-with-golang-with-geth.php) +- [Solidity szerződések egységtesztje az Ethereumon a Go-val](https://medium.com/coinmonks/unit-testing-solidity-contracts-on-ethereum-with-go-3cc924091281) +- [Gyors hivatkozás, hogyan használja a Geth-t könyvtárként](https://medium.com/coinmonks/web3-go-part-1-31c68c68e20e) -## Fejlett használati minták {#advanced-use-patterns} +## Speciális használati minták {#advanced-use-patterns} - [A GETH szimulált Backend](https://kauri.io/#collections/An%20ethereum%20test%20toolkit%20in%20Go/the-geth-simulated-backend/#_top) -- [Blockchain-as-a-Service appok Ethereum és Quorum használatával](https://blockchain.dcwebmakers.com/blockchain-as-a-service-apps-using-ethereum-and-quorum.html) -- [Elosztott tárhely IPDS és Swarm Ethereum blokklánc alkalmazásokban](https://blockchain.dcwebmakers.com/work-with-distributed-storage-ipfs-and-swarm-in-ethereum.html) -- [Mobile Clients: Library-k és Inproc Ethereum csomópontok](https://github.com/ethereum/go-ethereum/wiki/Mobile-Clients:-Libraries-and-Inproc-Ethereum-Nodes) -- [Native DApps: Go megkötések Ethereum szerződésekre](https://github.com/ethereum/go-ethereum/wiki/Native-DApps:-Go-bindings-to-Ethereum-contracts) +- [A blokklánc mint szolgáltatás alkalmazások az Ethereum és a Quorum használatával](https://blockchain.dcwebmakers.com/blockchain-as-a-service-apps-using-ethereum-and-quorum.html) +- [Elosztott tárhely IPFS és Swarm az Ethereum blokklánc alkalmazásokban](https://blockchain.dcwebmakers.com/work-with-distributed-storage-ipfs-and-swarm-in-ethereum.html) +- [Mobilkliensek: könyvtárak és inproc Ethereum csomópontok](https://github.com/ethereum/go-ethereum/wiki/Mobile-Clients:-Libraries-and-Inproc-Ethereum-Nodes) +- [Natív dappok: Go-megkötések az Ethereum szerződésekre](https://github.com/ethereum/go-ethereum/wiki/Native-DApps:-Go-bindings-to-Ethereum-contracts) -## Go projektek és eszközök {#go-projects-and-tools} +## Go-projektek és -eszközök {#go-projects-and-tools} - [Geth / Go Ethereum](https://github.com/ethereum/go-ethereum) - _Az Ethereum protokoll hivatalos Go implementációja_ - [Go Ethereum Code Analysis](https://github.com/ZtesoftCS/go-ethereum-code-analysis) - _Go Ethereum forráskód áttekintése és elemzése_ -- [Erigon](https://github.com/ledgerwatch/erigon) - _A Go Ethereum gyorsabb származéka_ +- [Erigon](https://github.com/ledgerwatch/erigon) – _A Go Ethereum gyorsabb változata, mely az archív csomópontokra fókuszál_ - [Golem](https://github.com/golemfactory/golem) - _A Golem egy globális piacot teremt a számítási teljesítmény számára_ - [Quorum](https://github.com/jpmorganchase/quorum) - _Egy engedélyköteles Ethereum implementáció, mely támogatja az adatvédelmet_ - [Prysm](https://github.com/prysmaticlabs/prysm) - _Ethereum 'Serenity' 2.0 Go implementáció_ -- [Eth Tweet](https://github.com/yep/eth-tweet) - _Decentralizált Twitter: Egy microblogging szolgáltatás, mely az Ethereum blokkláncon fut_ +- [Eth Tweet](https://github.com/yep/eth-tweet) - _Decentralizált Twitter: Egy mikroblogolási szolgáltatás, mely az Ethereum blokkláncon fut_ - [Plasma MVP Golang](https://github.com/kyokan/plasma) — _A Minimum Viable Plasma specifikációjának Golang implementációja és kiterjesztése_ -- [Open Ethereum Mining Pool](https://github.com/sammy007/open-ethereum-pool) - _Egy nyílt forráskódú Ethereum bányász pool_ +- [Open Ethereum Mining Pool](https://github.com/sammy007/open-ethereum-pool) - _Egy nyílt forráskódú Ethereum bányászalap_ - [Ethereum HD Wallet](https://github.com/miguelmota/go-ethereum-hdwallet) - _Ethereum HD Wallet levezetések Go-ban_ - [Multi Geth](https://github.com/multi-geth/multi-geth) - _Az Ethereum hálózatok több fajtáját támogatja_ - [Geth Light Client](https://github.com/zsfelfoldi/go-ethereum/wiki/Geth-Light-Client) - _Light Ethereum Subprotocol Geth implementációja_ +- [Ethereum Golang SDK](https://github.com/everFinance/goether) – _Egy egyszerű Ethereum-tárcaimplementáció és eszközök Golangban_ -Még több anyagot keresel? Tekintsd meg az [ethereum.org/developers](/developers/) oldalt +Még több anyagot keresel? Tekintse meg az [ethereum.org/developers](/developers/) oldalt ## Go közösségi hozzájárulók {#go-community-contributors} @@ -77,7 +78,7 @@ Még több anyagot keresel? Tekintsd meg az [ethereum.org/developers](/developer - [Ethereum Gitter](https://gitter.im/ethereum/home) - [Geth light Client Gitter](https://gitter.im/ethereum/light-client) -## Egyéb összesített lista {#other-aggregated-lists} +## Egyéb összesített listák {#other-aggregated-lists} - [Awesome Ethereum](https://github.com/btomashvili/awesome-ethereum) -- [Consensys: A Definitive List of Ethereum Developer Tools](https://media.consensys.net/an-definitive-list-of-ethereum-developer-tools-2159ce865974) | [GitHub source](https://github.com/ConsenSys/ethereum-developer-tools-list) +- [Consensys: Az Ethereum fejlesztői eszközök döntő listája](https://media.consensys.net/an-definitive-list-of-ethereum-developer-tools-2159ce865974) | [GitHub forrás](https://github.com/ConsenSys/ethereum-developer-tools-list) diff --git a/public/content/translations/hu/developers/docs/programming-languages/index.md b/public/content/translations/hu/developers/docs/programming-languages/index.md index ba97daa8076..fc87e678fdc 100644 --- a/public/content/translations/hu/developers/docs/programming-languages/index.md +++ b/public/content/translations/hu/developers/docs/programming-languages/index.md @@ -4,20 +4,26 @@ description: lang: hu --- -Általános tévhit, hogy a fejlesztőknek okosszerződéseket kell írniuk az Ethereumra történő fejlesztéshez. Ez nem igaz. Az Ethereum hálózat és közösség egyik szépsége, hogy szinte bármiyen programozási nyelvvel [részt tudsz venni](/community/). +Egy általános félreértés az, hogy a fejlesztőknek [okosszerződéseket](/developers/docs/smart-contracts/) kell írniuk ahhoz, hogy az Ethereumra építhessenek. Ez nem igaz. Az Ethereum hálózat és közösség egyik szépsége, hogy szinte bármiyen programozási nyelvvel [részt lehet venni](/community/). -Az Ethereum és a közössége befogadja az nyílt forráskódot. Közösségi projekteket - kliens implementációkat, API-okat, fejlesztési keretrendszereket, tesztelő eszközöket - sokféle különböző nyelven is megtalálhatsz. +Az Ethereum és a közössége befogadja az nyílt forráskódot. Közösségi projekteket – kliens implementációkat, API-okat, fejlesztési keretrendszereket, tesztelő eszközöket – sokféle különböző nyelven is megtalálhat. -## Válaszd ki a nyelvedet {#data} +## Válasszon nyelvet {#data} -Válaszd ki a nyelvedet, hogy megtaláld a projekteket, anyagokat és a virtuális közösségeket: +Válasszon nyelvet, hogy megtalálja a kapcsolódó projekteket, anyagokat és a virtuális közösségeket: +- [Ethereum Dart-fejlesztők számára](/developers/docs/programming-languages/dart/) +- [Ethereum Delphi fejlesztőknek](/developers/docs/programming-languages/delphi/) +- [Ethereum .NET fejlesztőknek](/developers/docs/programming-languages/dot-net/) +- [Ethereum Go fejlesztőknek](/developers/docs/programming-languages/golang/) - [Ethereum Java fejlesztőknek](/developers/docs/programming-languages/java/) -- [Ethereum Python fejlesztőknek](/developers/docs/programming-languages/python/) - [Ethereum JavaScript fejlesztőknek](/developers/docs/programming-languages/javascript/) -- [Ethereum Go fejlesztőknek](/developers/docs/programming-languages/golang/) +- [Ethereum Python-fejlesztők számára](/developers/docs/programming-languages/python/) +- [Ethereum Ruby-fejlesztők számára](/developers/docs/programming-languages/ruby/) - [Ethereum Rust fejlesztőknek](/developers/docs/programming-languages/rust/) -- [Ethereum .NET fejlesztőknek](/developers/docs/programming-languages/dot-net/) -- [Ethereum Delphi fejlesztőknek](/developers/docs/programming-languages/delphi/) -Nem látod itt a nyelvedet? Kérvényezz egy új oldalt [egy ticket feladásával](https://github.com/ethereum/ethereum-org-website/issues/new/choose) +### Mi a helyzet, ha az én nyelvem nem támogatott {#other-lang} + +Ha egy másik programozói nyelvhez szeretne forrásokat megjeleníteni vagy egy virtuális közösséget feltüntetni, akkor úgy kérhet új oldalt, hogy [egy „problémát” (issue) nyit](https://github.com/ethereum/ethereum-org-website/issues/new/choose). + +Ha csak kódot szeretne írni, hogy a blokklánccal kapcsolatba lépjen, és egy jelenleg nem támogatott nyelvet használ erre, akkor a [JSON-RPC interfésszel](/developers/docs/apis/json-rpc/) tud az Ethereum hálózatához kapcsolódni. Minden olyan nyelv alkalmas erre, amelyik képes TCP/IP használatra. diff --git a/public/content/translations/hu/developers/docs/programming-languages/java/index.md b/public/content/translations/hu/developers/docs/programming-languages/java/index.md index 0d84d710d7e..19557480536 100644 --- a/public/content/translations/hu/developers/docs/programming-languages/java/index.md +++ b/public/content/translations/hu/developers/docs/programming-languages/java/index.md @@ -1,56 +1,56 @@ --- -title: Ethereum Java fejlesztőknek -description: Tanulj meg Ethereumon fejleszteni Java alapú projektek és eszközök használatával +title: Ethereum Java-fejlesztők számára +description: Tanuljon meg Ethereumon fejleszteni Java alapú projektek és eszközök használatával lang: hu incomplete: true --- -Tanulj meg Ethereumon fejleszteni Java alapú projektek és eszközök használatával + -Használj Ethereumot decentralizált alkalmazások (avagy "dappok") fejlesztésére, melyek kihasználják a kriptovaluta és a blokklánc technológia nyújtotta előnyöket. Ezek a dappok megbízhatóak, ami azt jelenti, hogyha egyszer telepítették az Ethereumba, akkor mindig úgy fognak futni, ahogy programozták őket. Digitális vagyontárgyakat irányíthatnak, lehetőséget teremtve ezzel újfajta pénzügyi alkalmazások létrejöveteléhez. Decentralizáltak lehetnek, mely azt jelenti, hogy semmilyen entitás vagy személy nem irányítja őket és közel lehetetlen őket cenzúrázni. +Használjon Ethereumot decentralizált alkalmazások (dappok) fejlesztésére, melyek kihasználják a kriptovaluta és a blokklánc technológia nyújtotta előnyöket. Ezek a dappok megbízhatóak, ami azt jelenti, hogyha egyszer telepítették az Ethereumba, akkor mindig úgy fognak futni, ahogy programozták őket. Digitális vagyontárgyakat irányíthatnak, lehetőséget teremtve ezzel újfajta pénzügyi alkalmazások létrejöveteléhez. Decentralizáltak lehetnek, mely azt jelenti, hogy semmilyen entitás vagy személy nem irányítja őket és közel lehetetlen őket cenzúrázni. -## Első lépések az Okosszerződésekkel és a Solidity nyelvvel {#getting-started-with-smart-contracts-and-solidity} +## Kezdő lépések az okosszerződésekkel és a Solidity nyelvvel {#getting-started-with-smart-contracts-and-solidity} -**Tedd meg az első lépést a Java - Ethereum integrálás útján** +**Tegye meg az első lépést, hogy a Java-t integrálja az Ethereummal** -Szükséged van egy méginkább kezdőknek szóló alapozóra? Tekintsd meg a [ethereum.org/learn](/learn/) oldalt vagy a [ethereum.org/developers](/developers/) oldalt +Szüksége van egy kezdőknek szóló bevezetőre? Tekintse meg az [ethereum.org/learn](/learn/) vagy az [ethereum.org/developers](/developers/) oldalt. - [Blokklánc ismertetése](https://kauri.io/article/d55684513211466da7f8cc03987607d5/blockchain-explained) - [Okosszerződések értelmezése](https://kauri.io/article/e4f66c6079e74a4a9b532148d3158188/ethereum-101-part-5-the-smart-contract) -- [Írd meg az első Okosszerződésed](https://kauri.io/article/124b7db1d0cf4f47b414f8b13c9d66e2/remix-ide-your-first-smart-contract) -- [Tanuld meg a Solidity fordítását és telepítését](https://kauri.io/article/973c5f54c4434bb1b0160cff8c695369/understanding-smart-contract-compilation-and-deployment) +- [Írja meg az első okosszerződését](https://kauri.io/article/124b7db1d0cf4f47b414f8b13c9d66e2/remix-ide-your-first-smart-contract) +- [Tanulja meg a Solidity fordítását és telepítését](https://kauri.io/article/973c5f54c4434bb1b0160cff8c695369/understanding-smart-contract-compilation-and-deployment) -## Munka Ethereum kliensekkel +## Az Ethereum-kliensek használata {#working-with-ethereum-clients} -Tanuld meg a [Web3J](https://github.com/web3j/web3j) és a Hyperledger Besu, a két vezető Java Ethereum kliens használatát +Tanulja meg a [Web3J](https://github.com/web3j/web3j) és a Hyperledger Besu, a két vezető Java Ethereum kliens használatát - [Csatlakozás Ethereum klienshez Java-val, Eclipse-szel és Web3J-vel](https://kauri.io/article/b9eb647c47a546bc95693acc0be72546/connecting-to-an-ethereum-client-with-java-eclipse-and-web3j) - [Egy Ethereum számla kezelése Java-val és Web3J-vel](https://kauri.io/article/925d923e12c543da9a0a3e617be963b4/manage-an-ethereum-account-with-java-and-web3j) -- [Generálj egy Java Wrappert az okosszerződésedből](https://kauri.io/article/84475132317d4d6a84a2c42eb9348e4b/generate-a-java-wrapper-from-your-smart-contract) +- [Generáljon egy Java Wrappert az okosszerződéséből](https://kauri.io/article/84475132317d4d6a84a2c42eb9348e4b/generate-a-java-wrapper-from-your-smart-contract) - [Kapcsolódás egy Ethereum okosszerződéshez](https://kauri.io/article/14dc434d11ef4ee18bf7d57f079e246e/interacting-with-an-ethereum-smart-contract-in-java) -- [Ethereum okosszerződés esemyények hallgatása](https://kauri.io/article/760f495423db42f988d17b8c145b0874/listening-for-ethereum-smart-contract-events-in-java) -- [Besu (Pantheon) használata, a Java Ethereum kliens Linux-szal](https://kauri.io/article/276dd27f1458443295eea58403fd6965/using-pantheon-the-java-ethereum-client-with-linux) +- [Ethereum okosszerződés események hallgatása](https://kauri.io/article/760f495423db42f988d17b8c145b0874/listening-for-ethereum-smart-contract-events-in-java) +- [Besu (Pantheon), a Java Ethereum kliens használata Linux-szal](https://kauri.io/article/276dd27f1458443295eea58403fd6965/using-pantheon-the-java-ethereum-client-with-linux) - [Egy Hyperledger Besu (Pantheon) csomópont futtatása Java integrációs teszteken](https://kauri.io/article/7dc3ecc391e54f7b8cbf4e5fa0caf780/running-a-pantheon-node-in-java-integration-tests) -- [Web3j Puska]() +- [Web3j Puska](https://kauri.io/web3j-cheat-sheet-(java-ethereum)/5dfa1ea941ac3d0001ce1d90/c) -## Középhaladó cikkek {#intermediate-articles} +## Köztes cikkek {#intermediate-articles} -- [Tárhely kezelés Java alkalmazásokban IPFS-szel](https://kauri.io/article/3e8494f4f56f48c4bb77f1f925c6d926/managing-storage-in-a-java-application-with-ipfs) +- [Tárhelykezelés Java alkalmazásokban IPFS-szel](https://kauri.io/article/3e8494f4f56f48c4bb77f1f925c6d926/managing-storage-in-a-java-application-with-ipfs) - [ERC20 tokenek kezelése Java-ban Web3j-vel](https://kauri.io/article/d13e911bbf624108b1d5718175a5e0a0/manage-erc20-tokens-in-java-with-web3j) -- [Web3j tranzakció kezelők](https://kauri.io/article/4cb780bb4d0846438d11885a25b6d7e7/web3j-transaction-managers) +- [Web3j tranzakciókezelők](https://kauri.io/article/4cb780bb4d0846438d11885a25b6d7e7/web3j-transaction-managers) -## Fejlett használati minták {#advanced-use-patterns} +## Speciális használati minták {#advanced-use-patterns} - [Ethereum használata Java okosszerződés adat cache építésére](https://kauri.io/article/fe81ee9612eb4e5a9ab72790ef24283d/using-eventeum-to-build-a-java-smart-contract-data-cache) -## Java projektek és eszközök {#java-projects-and-tools} +## Java-projektek és -eszközök {#java-projects-and-tools} - [Hyperledger Besu (Pantheon) (Ethereum kliens)](https://docs.pantheon.pegasys.tech/en/stable/) -- [Web3J (Library Ethereum kliensekkel való interakcióhoz)](https://github.com/web3j/web3j) +- [Web3J (könyvtár az Ethereum kliensekkel való interakcióhoz)](https://github.com/web3j/web3j) - [Eventeum (Event Listener)](https://github.com/ConsenSys/eventeum) - [Mahuta (IPFS Fejlesztői Eszközök)](https://github.com/ConsenSys/mahuta) -Még több anyagot keresel? Tekintsd meg az [ethereum.org/developers](/developers/) oldalt +Több anyagra lenne szüksége? Tekintsd meg az [ethereum.org/developers](/developers/) oldalt ## Java közösségi hozzájárulók {#java-community-contributors} diff --git a/public/content/translations/hu/developers/docs/programming-languages/javascript/index.md b/public/content/translations/hu/developers/docs/programming-languages/javascript/index.md index 9b91fe01beb..bca0b0fc20e 100644 --- a/public/content/translations/hu/developers/docs/programming-languages/javascript/index.md +++ b/public/content/translations/hu/developers/docs/programming-languages/javascript/index.md @@ -1,10 +1,10 @@ --- title: Ethereum JavaScript fejlesztőknek -description: Tanulj meg Ethereumon fejleszteni JavaScript alapú projektek és eszközök használatával. +description: Tanuljon meg Ethereumon fejleszteni JavaScript alapú projektek és eszközök használatával. lang: hu --- -A JavaScript a legnépszerűbb nyelvek között van az Ethereum ökoszisztémában. Valójában van egy [csapat](https://github.com/ethereumjs), mely célul tűzte ki, hogy a lehető legtöbb Ethereumot vigye be a JavaScriptbe. +A Javascript a legnépszerűbb nyelvek között van az Ethereum ökoszisztémában. Valójában van egy [csapat](https://github.com/ethereumjs), mely célul tűzte ki, hogy a lehető legtöbb Ethereumot vigye be a JavaScriptbe. Lehetőség van JavaScriptet írni (vagy valami hasonlót) a [stack összes szintjén](/developers/docs/ethereum-stack/). @@ -12,28 +12,29 @@ Lehetőség van JavaScriptet írni (vagy valami hasonlót) a [stack összes szin ### JavaScript API könyvtárak {#javascript-api-libraries} -Ha JavaScriptet szeretnél írni a blokklánc lekérdezéséhez, tranzakció küldéshez vagy más egyébhez, akkor ennek a legkézenfekvőbb módja egy [JavaScript API könyvtár](/developers/docs/apis/javascript/) használata. Ezek az API-ok lehetővé teszik a fejlesztőknek, hogy interakcióba lépjenek az [Ethereum hálózat csomópontjaival](/developers/docs/nodes-and-clients/). +Ha JavaScriptet szeretne írni a blokklánc lekérdezéséhez, tranzakció küldéséhez vagy máshoz, akkor ennek a legkézenfekvőbb módja egy [JavaScript API könyvtár](/developers/docs/apis/javascript/) használata. Ezek az API-k lehetővé teszik a fejlesztőknek, hogy interakcióba lépjenek az [Ethereum-hálózat csomópontjaival](/developers/docs/nodes-and-clients/). -Ezekkel a könyvtárakkal okosszerződésekkel léphetsz kapcsolatba az Ethereumon, így létre lehet hozni egy dappot, ahol elég csak a JavaScriptet használni már létező okosszerződésekkel történő interakcióhoz. +Ezekkel a könyvtárakkal okosszerződésekkel léphet kapcsolatba az Ethereumon, így létre lehet hozni egy dappot, ahol elég csak a JavaScriptet használni már létező okosszerződésekkel történő interakcióhoz. -**Nézd meg** +**Nézze meg** - [Web3.js](https://web3js.readthedocs.io/) - [Ethers.js](https://docs.ethers.io/) _– tartalmaz egy Ethereum tárca implementációt és más segédprogramokat JavaScriptben és TypeScriptben._ +- [viem](https://viem.sh) – egy TypeScript interfész az Ethereumhoz, amely alacsony szintű, státuszmentes alapokat biztosít az Ethereummal való interakcióhoz. ### Okosszerződések {#smart-contracts} -Ha egy JavaScript fejlesztő vagy és szeretnéd megírni a saját okosszerződéseidet, akkor érdemes megismerkedned a [Solidity-vel](https://solidity.readthedocs.io). Ez a legnépszerűbb okosszerződés nyelv és nagyrészt a JavaScript inspirálta. +Ha Ön Javascript-fejlesztő, és szeretné megírni saját okosszerződését, akkor érdemes megismerkednie a [Solidity-vel](https://solidity.readthedocs.io). Ez a legnépszerűbb okosszerződésnyelv, és szintaktikailag hasonló a JavaScript-hez, ami miatt könnyebb lehet elsajátítani azt. Többet az [okosszerződésekről](/developers/docs/smart-contracts/). -## Értsd meg a protokollt {#understand-the-protocol} +## Értse meg a protokollt {#understand-the-protocol} ### Az Ethereum virtuális gép (EVM) {#the-ethereum-virtual-machine} -Van az [Ethereum virtuális gépnek](/developers/docs/evm/) egy JavaScript implementációja. Támogatja a legfrissebb elágazási (fork) szabályokat. Az elágazási szabályok az EVM-en végzett tervezett frissítésekből adódó szabályok. +Az [Ethereum virtuális géphez](/developers/docs/evm/) létezik egy JavaScript-implementáció is. Támogatja a legfrissebb elágazási (fork) szabályokat. Az elágazási szabályok az EVM-en végzett tervezett frissítésekből adódó szabályok. -Különböző JavaScript csomagokra oszlik, amelyeket áttekinthetsz a jobb megértés érdekében: +Különböző JavaScript csomagokra oszlik, amelyeket áttekinthet a jobb megértés érdekében: - Számlák - Blokkok @@ -41,30 +42,32 @@ Különböző JavaScript csomagokra oszlik, amelyeket áttekinthetsz a jobb meg - Tranzakciók - És még sok más... -Ez segíteni fog megérteni olyan dolgokat, mint "mi a számlának az adatstruktúrája?". +Ez segít megérteni olyan dolgokat, mint például, „mi a számla adatstruktúrája”. -Ha inkább el szeretnéd olvasni a kódot, ez a JavaScript nagyszerű alternatíva lehet a dokumentumaink átolvasásához. +Ha inkább el szeretné olvasni a kódot, ez a JavaScript nagyszerű alternatíva lehet a dokumentumaink áttekintéséhez. -**Nézd meg a monorepot** +**Nézze meg a kapcsolódó mappát** [`ethereumjs`](https://github.com/ethereumjs/ethereumjs-vm) ### Csomópontok és kliensek {#nodes-and-clients} -Van egy fejlesztés alatt álló Ethereumjs kliens. Ez lehetővé teszi, hogy a mélyére áss, hogyan működnek az Ethereum kliensei egy általad ismert nyelven. +Az Ethereumjs kliens aktív fejlesztés alatt áll, így Önnek lehetősége van elmélyedni abban, hogyan működnek az Ethereum-kliensek az Ön által ismert nyelven: JavaScript-ben! -**Nézd meg a klienst** -[`ethereumjs-client`](https://github.com/ethereumjs/ethereumjs-client) +Korábban egy különálló [`mappában`](https://github.com/ethereumjs/ethereumjs-client) tárolták, de azután beolvadt az EthereumVM monorepóba egy csomagként. + +**Nézze meg a klienst** +[`ethereumjs-client`](https://github.com/ethereumjs/ethereumjs-monorepo/tree/master/packages/client) ## Egyéb projektek {#other-projects} -Rengeteg más dolog is zajlik az Ethereum JavaScript világában, beleértve: +Rengeteg más dolog is zajlik az Ethereum JavaScript világában, mint például: -- könyvtárak és tárca eszközök. +- könyvtárak és tárcaeszközök. - eszközök Ethereum kulcsok generálására, importálására és exportálására. -- a `merkle-patricia-fa` implementációja – egy adatstruktúra, melyet az Ethereum sárga könyv részletez. +- a `merkle-patricia-tree` (Merkle Patricia-fa) implementációja – egy adatstruktúra, melyet az Ethereum Sárgakönyv részletez. -Mélyedj bele abba, ami érdekel a [EthereumJS repoban](https://github.com/ethereumjs) +Mélyedjen bele abba, ami a leginkább érdekli a [EthereumJS mappában](https://github.com/ethereumjs) ## További olvasnivaló {#further-reading} -_Ismersz olyan közösségi anyagot, mely segített neked? Módosítsd az oldalt és add hozzá!_ +_Van olyan közösségi erőforrása, amely segített Önnek? Szerkessze ezt az oldalt, és adja hozzá!_ diff --git a/public/content/translations/hu/developers/docs/programming-languages/python/index.md b/public/content/translations/hu/developers/docs/programming-languages/python/index.md index b403da1bb33..07472b1836b 100644 --- a/public/content/translations/hu/developers/docs/programming-languages/python/index.md +++ b/public/content/translations/hu/developers/docs/programming-languages/python/index.md @@ -1,19 +1,19 @@ --- title: Ethereum Python fejlesztőknek -description: Tanulj meg Ethereumra fejleszteni Python alapú projektek és eszközök használatával +description: Tanuljon meg Ethereumra fejleszteni Python alapú projektek és eszközök használatával lang: hu incomplete: true --- -Tanulj meg Ethereumra fejleszteni Python alapú projektek és eszközök használatával + Használj Ethereumot decentralizált alkalmazások (avagy "dappok") fejlesztésére, melyek kihasználják a kriptovaluta és a blokklánc technológia nyújtotta előnyöket. Ezek a dappok megbízhatóak, ami azt jelenti, hogyha egyszer telepítették az Ethereumba, akkor mindig úgy fognak futni, ahogy programozták őket. Digitális vagyontárgyakat irányíthatnak, lehetőséget teremtve ezzel újfajta pénzügyi alkalmazások létrejöveteléhez. Decentralizáltak lehetnek, mely azt jelenti, hogy semmilyen entitás vagy személy nem irányítja őket és közel lehetetlen őket cenzúrázni. -## Első lépések az Okosszerződésekkel és a Solidity nyelvvel {#getting-started-with-smart-contracts-and-solidity} +## Kezdő lépések az okosszerződésekkel és a Solidity nyelvvel {#getting-started-with-smart-contracts-and-solidity} -**Tedd meg az első lépést, hogy integráld a Python-t Ethereummal** +**Tegye meg az első lépést, hogy integrálja a Pythont az Ethereummal** -Szükséged van egy méginkább kezdőknek szóló alapozóra? Tekintsd meg az [ethereum.org/learn](/learn/) oldalt vagy a [ethereum.org/developers](/developers/) oldalt. +Szükséged van egy méginkább kezdőknek szóló alapozóra? Tekintsd meg az [ethereum.org/learn](/learn/) oldalt vagy az [ethereum.org/developers](/developers/) oldalt. - [Blokklánc ismertetése](https://kauri.io/article/d55684513211466da7f8cc03987607d5/blockchain-explained) - [Okosszerződések értelmezése](https://kauri.io/article/e4f66c6079e74a4a9b532148d3158188/ethereum-101-part-5-the-smart-contract) @@ -22,47 +22,68 @@ Szükséged van egy méginkább kezdőknek szóló alapozóra? Tekintsd meg az [ ## Cikkek kezdőknek {#beginner-articles} +- [Egy (Python) fejlesztői útmutató az Ethereumra](https://snakecharmers.ethereum.org/a-developers-guide-to-ethereum-pt-1/) +- [A Python helyzete a 2023-as blokklánc riportban](https://tradingstrategy.ai/blog/the-state-of-python-in-blockchain-in-2023) - [Bevezetés az okosszerződésekbe Vyper-rel](https://kauri.io/#collections/Getting%20Started/an-introduction-to-smart-contracts-with-vyper/) +- [Telepítse a saját ERC20-as tokenjét Pythonnal és Brownie-val](https://betterprogramming.pub/python-blockchain-token-deployment-tutorial-create-an-erc20-77a5fd2e1a58) - [Hogyan kell Ethereum szerződést fejleszteni Python Flask használatával?](https://medium.com/coinmonks/how-to-develop-ethereum-contract-using-python-flask-9758fe65976e) - [Bevezetés Web3.py-ba · Ethereum Python fejlesztőknek](https://www.dappuniversity.com/articles/web3-py-intro) - [Hogyan kell egy okosszerződés függvényt meghívni Python és web3.py használatával](https://stackoverflow.com/questions/57580702/how-to-call-a-smart-contract-function-using-python-and-web3-py) -## Középhaladó cikkek {#intermediate-articles} +## Köztes cikkek {#intermediate-articles} - [Dapp fejlesztés Python programozóknak](https://levelup.gitconnected.com/dapps-development-for-python-developers-f52b32b54f28) - [Python Ethereum felület létrehozása: Első rész](https://hackernoon.com/creating-a-python-ethereum-interface-part-1-4d2e47ea0f4d) -- [Ethereum okosszerződések Python-ban: egy átfogó útmutató](https://hackernoon.com/ethereum-smart-contracts-in-python-a-comprehensive-ish-guide-771b03990988) -- [Minden, amit a Trinity Ethereum kliensről tudnod kell](https://medium.com/@pipermerriam/everything-you-need-to-know-about-the-trinity-ethereum-client-b093c756d1de) +- [Ethereum okosszerződések Pythonban: egy átfogó útmutató](https://hackernoon.com/ethereum-smart-contracts-in-python-a-comprehensive-ish-guide-771b03990988) +- [Okosszerződések telepítése Brownie-val és Pythonnal](https://dev.to/patrickalphac/using-brownie-for-to-deploy-smart-contracts-1kkp) +- [NFT-k létrehozása az OpenSea piactérre a Brownie-val](https://www.freecodecamp.org/news/how-to-make-an-nft-and-render-on-opensea-marketplace/) -## Fejlett használati minták {#advanced-use-patterns} +## Speciális használati minták {#advanced-use-patterns} -- [Ethereum okosszerződések fordítása, telepítése és hívása Python használatával](https://yohanes.gultom.me/2018/11/28/compiling-deploying-and-calling-ethereum-smartcontract-using-python/) -- [Solidity okosszerződések elemzése Slitherrel](https://kauri.io/#collections/DevOps/analyze-solidity-smart-contracts-with-slither/) +- [Ethereum okosszerződések fordítása, telepítése és hívása Python használatával](https://yohanes.gultom.id/2018/11/28/compiling-deploying-and-calling-ethereum-smartcontract-using-python/) +- [Solidity okosszerződések elemzése Slitherrel](https://kauri.io/#collections/DevOps/analyze-solidity-smart-contracts-with-slither/#analyze-solidity-smart-contracts-with-slither) +- [Blokklánc pénzügyi technológiai (fintech) útmutató: kölcsönadás és kölcsönvétel Pythonnal](https://blog.chain.link/blockchain-fintech-defi-tutorial-lending-borrowing-python/) ## Python projektek és eszközök {#python-projects-and-tools} -- [Brownie](https://github.com/eth-brownie/brownie) - _Python keretrendszer Ethereum okosszerződések telepítésére, tesztelésére és alkalmazására_ +### Aktív: {#active} + +- [Web3.py](https://github.com/ethereum/web3.py) – _Python könyvtár az Ethereummal történő interakciókra_ +- [Vyper](https://github.com/ethereum/vyper/) – _Pythonikus okosszerződés nyelv az EVM-re_ +- [Ape](https://github.com/ApeWorX/ape) – _ Az okosszerződés fejlesztői eszköz a pythonisták, adatkutatók és biztonsági szakértők számára._ +- [Brownie](https://github.com/eth-brownie/brownie) – _Python keretrendszer Ethereum okosszerződések telepítésére, tesztelésére és alkalmazására_ +- [py-evm](https://github.com/ethereum/py-evm) – _Az Ethereum virtuális gép implementációja_ +- [eth-tester](https://github.com/ethereum/eth-tester) – _Eszközök az Ethereum-alapú alkalmazások teszteléséhez_ - [eth-utils](https://github.com/ethereum/eth-utils/) - _használati funkciók Ethereumhoz kapcsolódó kódbázisokkal való munkához_ -- [py-evm](https://github.com/ethereum/py-evm) - _az Ethereum virtuális gép implementációja_ -- [py-solc-x](https://pypi.org/project/py-solc-x/) - _Python wrapper a solc solidity fordító köré 0.5.x támogatással_ -- [py-wasm](https://github.com/ethereum/py-wasm) - _a web assembly interpreter Python implementációja_ -- [pydevp2p](https://github.com/ethereum/pydevp2p) - _Az Ethereum P2P stack implementációjak_ -- [pymaker](https://github.com/makerdao/pymaker) - _Python API Maker szerződésekre_ -- [Mamba](https://github.com/arjunaskykok/mamba) - _keretrendszer Vyper nyelven írt okos szerződések írására, fordítására és telepítésére_ -- [Trinity](https://github.com/ethereum/trinity) - _Ethereum Python kliens_ -- [Vyper](https://github.com/ethereum/vyper/) - _Pythonikus okosszerződés nyelv az EVM-re_ -- [Web3.py](https://github.com/ethereum/web3.py) - _Python library Ethereummal történő interakciókra_ +- [py-solc-x](https://pypi.org/project/py-solc-x/) – _Python wrapper a solc solidity fordító köré 0.5.x támogatással_ +- [py-wasm](https://github.com/ethereum/py-wasm) – _A web assembly interpreter Python-implementációja_ +- [pydevp2p](https://github.com/ethereum/pydevp2p) – _Az Ethereum P2P stack implementációja_ +- [pymaker](https://github.com/makerdao/pymaker) – _Python API Maker szerződésekre_ +- [siwe](https://github.com/spruceid/siwe-py) – _Bejelentkezés az Ethereummal (siwe) Pythonra_ +- [Web3 decentralizált pénzügyek (DeFi) Ethereum integrációhoz](https://github.com/tradingstrategy-ai/web3-ethereum-defi) – _Egy Python csomag, mely készen áll az ERC-20, Uniswap és más népszerű projektekkel való integrációra_ + +### Archivált / a karbantartás megszűnt: {#archived--no-longer-maintained} + +- [Trinity](https://github.com/ethereum/trinity) – _Ethereum Python-kliens_ +- [Mamba](https://github.com/arjunaskykok/mamba) – _Keretrendszer Vyper nyelven írt okosszerződések írására, fordítására és telepítésére_ + +Még több anyagot keresel? Tekintse meg az [ethereum.org/developers](/developers/) oldalt. + +## Python-eszközöket használó projektek {#projects-using-python-tooling} + +A következő Ethereum-alapú projektek a fent említett eszközöket használják. A kapcsolódó mappák jó referenciaként szolgálnak például a kódok és a bevált gyakorlatok tekintetében. -Még több anyagot keresel? Tekintsd meg az [ethereum.org/developers](/developers/) oldalt +- [Yearn Finance](https://yearn.finance/) és [Yearn Vault Contracts mappa](https://github.com/yearn/yearn-vaults) +- [Curve](https://curve.fi/) és [Curve okosszerződések mappa](https://github.com/curvefi/curve-contract) +- [BadgerDAO](https://badger.com/) és [Brownie eszközkészletet használó okosszerződések](https://github.com/Badger-Finance/badger-system) +- [Sushi](https://sushi.com/) [Pythont használ arra, hogy a megbízási szerződéseket kezelje és telepítse](https://github.com/sushiswap/sushi-vesting-protocols) +- [Alpha Finance](https://alphafinance.io/), amelyet az Alpha Homora révén ismerünk, [Brownie-t használ, hogy az okosszerződéseket tesztelje és telepítse](https://github.com/AlphaFinanceLab/alpha-staking-contract) -## Python közösségi hozzájárulók {#python-community-contributors} +## Python közösségi egyeztetések {#python-community-contributors} -- [Py-EVM Gitter](https://gitter.im/ethereum/py-evm) -- [Trinity Gitter](https://gitter.im/ethereum/trinity) -- [Vyper Gitter](https://gitter.im/ethereum/vyper) -- [Webpy Gitter](https://gitter.im/ethereum/web3.py) +- [Ethereum Python közösségi Discord csatorna](https://discord.gg/9zk7snTfWe) a Web3.py és más Python keretrendszerhez kapcsolódó beszélgetésekhez +- [Vyper Discord csatorna](https://discord.gg/SdvKC79cJk) a Vyper okosszerződések programozásáról szóló beszélgetésekhez -## Egyéb összesített lista {#other-aggregated-lists} +## Egyéb összesített listák {#other-aggregated-lists} -A Vyper wikinek [elképesztő anyaglistája van Vyper-re.](https://github.com/ethereum/vyper/wiki/Vyper-tools-and-resources) -Python eszközökkel kapcsolatos összesített tartalomért látogasd meg a [py-eth.com](http://py-eth.com/) oldalt. +A Vyper wikinek [elképesztő anyaglistája van Vyperrel kapcsolatban.](https://github.com/ethereum/vyper/wiki/Vyper-tools-and-resources) diff --git a/public/content/translations/hu/developers/docs/programming-languages/ruby/index.md b/public/content/translations/hu/developers/docs/programming-languages/ruby/index.md new file mode 100644 index 00000000000..ef6bbb4fcb6 --- /dev/null +++ b/public/content/translations/hu/developers/docs/programming-languages/ruby/index.md @@ -0,0 +1,61 @@ +--- +title: Ethereum Ruby-fejlesztők számára +description: Tanuljon meg Ethereumra fejleszteni Ruby-alapú projektek és eszközök használatával. +lang: hu +incomplete: false +--- + + + +Használj Ethereumot decentralizált alkalmazások (avagy "dappok") fejlesztésére, melyek kihasználják a kriptovaluta és a blokklánc technológia nyújtotta előnyöket. Ezek a dappok nem igényelnek bizalmat a felhasználó oldaláról, ami azt jelenti, hogyha egyszer telepítették az Ethereumba, akkor mindig úgy fognak futni, ahogy programozták őket. Digitális vagyontárgyakat irányíthatnak, lehetőséget teremtve ezzel az újfajta pénzügyi alkalmazások számra. Decentralizáltak lehetnek, mely azt jelenti, hogy semmilyen entitás vagy személy nem irányítja őket és közel lehetetlen őket cenzúrázni. + +## Kezdő lépések az okosszerződésekkel és a Solidity nyelvvel {#getting-started-with-smart-contracts-and-solidity} + +**Tegye meg az első lépést a Ruby Ethereumra való integrálásához** + +Szükséged van egy méginkább kezdőknek szóló alapozóra? Tekintsd meg az [ethereum.org/learn](/learn/) oldalt vagy az [ethereum.org/developers](/developers/) oldalt. + +- [Blokklánc ismertetése](https://kauri.io/article/d55684513211466da7f8cc03987607d5/blockchain-explained) +- [Okos Szerződések értelmezése](https://kauri.io/article/e4f66c6079e74a4a9b532148d3158188/ethereum-101-part-5-the-smart-contract) +- [Írd meg az első Okosszerződésed](https://kauri.io/article/124b7db1d0cf4f47b414f8b13c9d66e2/remix-ide-your-first-smart-contract) +- [Tanuld meg a Solidity fordítását és telepítését](https://kauri.io/article/973c5f54c4434bb1b0160cff8c695369/understanding-smart-contract-compilation-and-deployment) + +## Cikkek kezdőknek {#beginner-articles} + +- [Az Ethereum-számlák megértése](https://dev.to/q9/finally-understanding-ethereum-accounts-1kpe) +- [Rails-felhasználók hitelesítése a MetaMask használatával](https://dev.to/q9/finally-authenticating-rails-users-with-metamask-3fj) +- [Bejelentkezés az Ethereummal – Ruby-könyvtár és Rails-példák kiadása](https://blog.spruceid.com/sign-in-with-ethereum-ruby-library-release-and-rails-examples/) +- [Hogyan lehet az Ethereum-hálózathoz kapcsolódni a Ruby-val](https://www.quicknode.com/guides/web3-sdks/how-to-connect-to-the-ethereum-network-using-ruby) +- [Hogyan lehet új Ethereum-címet létrehozni a Ruby-val](https://www.quicknode.com/guides/web3-sdks/how-to-generate-a-new-ethereum-address-in-ruby) + +## Köztes cikkek {#intermediate-articles} + +- [Blokkláncalkalmazás a Ruby-val](https://www.nopio.com/blog/blockchain-app-ruby/) +- [A Ruby használata az Ethereumon az okosszerződés végrehajtására](https://titanwolf.org/Network/Articles/Article?AID=87285822-9b25-49d5-ba2a-7ad95fff7ef9) + +## Ruby-projektek és -eszközök {#ruby-projects-and-tools} + +### Aktív {#active} + +- [eth.rb](https://github.com/q9f/eth.rb) – _Ruby könyvtár és RPC-kliens az Ethereum-számlák, üzenetek és tranzakciók kezelésére_ +- [keccak.rb](https://github.com/q9f/keccak.rb) – _Az Ethereum által használt keccak (SHA3) hash_ +- [siwe-ruby](https://github.com/spruceid/siwe-ruby) – _Ruby általi implementáció az Ethereummal való bejelentkezéshez_ +- [siwe_rails](https://github.com/spruceid/siwe_rails) – _SIWE lokális bejelentkezési utakat adó Rails gem_ +- [siwe-rails-examples](https://github.com/spruceid/siwe-rails-examples) – _SIWE-példa Ruby használatával a Railsen személyre szabott irányítóval_ +- [omniauth-siwe](https://github.com/spruceid/omniauth-siwe) – _OmniAuth-stratégia az Ethereummal (SIWE) való bejelentkezéshez_ +- [omniauth-nft](https://github.com/valthon/omniauth-nft) – _OmniAuth stratégia az NFT tulajdonjogon keresztüli hitelesítésre_ +- [ethereum-on-rails](https://github.com/q9f/ethereum-on-rails) – _Ethereum a Rails-en sablon, mellyel a MetaMaskot a Ruby-hoz lehet kapcsolni a Rails-en_ + +### Archivált / a karbantartás megszűnt {#archived--no-longer-maintained} + +- [web3-eth](https://github.com/spikewilliams/vtada-ethereum) – _Az Ethereum-csomópontok RPC metódusainak meghívása Ruby-val_ +- [ethereum_tree](https://github.com/longhoangwkm/ethereum_tree) – _Ruby könyvtár az ETH-címek létrehozására egy hierarchikusan determinált tárcából a BIP32 szabvány szerint_ +- [etherlite](https://github.com/budacom/etherlite) – _Ethereum integráció Ruby-ra a Rails-en_ +- [ethereum.rb](https://github.com/EthWorks/ethereum.rb) – _Ruby Ethereum-kliens, amely JSON-RPC interfészt használ a tranzakciók küldésére, a szerződések létrehozására és az azokkal való interakcióra, valamint hasznos eszközkészlet az Ethereum-csomópontokkal való együttműködéshez_ +- [omniauth-ethereum.rb](https://github.com/q9f/omniauth-ethereum.rb) – _Az Ethereum-szolgáltatóstratégia bevezetése az OmniAuth-ra_ + +Még több anyagot keresel? Tekintse meg [Fejlesztőink](/developers/) oldalait. + +## Ruby közösségi hozzájárulók {#ruby-community-contributors} + +Az [Ethereum Ruby Telegram csoport](https://t.me/ruby_eth) egy gyorsan növekvő közösség szervezője, egy dedikált erőforrás a fenti projektek és kapcsolódó témák megvitatására. diff --git a/public/content/translations/hu/developers/docs/programming-languages/rust/index.md b/public/content/translations/hu/developers/docs/programming-languages/rust/index.md index a95f56512c4..8f2c23e0f7b 100644 --- a/public/content/translations/hu/developers/docs/programming-languages/rust/index.md +++ b/public/content/translations/hu/developers/docs/programming-languages/rust/index.md @@ -1,19 +1,19 @@ --- -title: Ethereum Rust fejlesztőknek -description: Tanulj meg Ethereumra fejleszteni Rust alapú projektek és eszközök használatával +title: Ethereum Rust-fejlesztők számára +description: Tanuljon meg Ethereumra fejleszteni Rust alapú projektek és eszközök használatával lang: hu incomplete: true --- -Tanulj meg Ethereumra fejleszteni Rust alapú projektek és eszközök használatával + Használj Ethereumot decentralizált alkalmazások (avagy "dappok") fejlesztésére, melyek kihasználják a kriptovaluta és a blokklánc technológia nyújtotta előnyöket. Ezek a dappok megbízhatóak, ami azt jelenti, hogyha egyszer telepítették az Ethereumba, akkor mindig úgy fognak futni, ahogy programozták őket. Digitális vagyontárgyakat irányíthatnak, lehetőséget teremtve ezzel újfajta pénzügyi alkalmazások létrejöveteléhez. Decentralizáltak lehetnek, mely azt jelenti, hogy semmilyen entitás vagy személy nem irányítja őket és közel lehetetlen őket cenzúrázni. -## Első lépések az Okosszerződésekkel és a Solidity nyelvvel {#getting-started-with-smart-contracts-and-solidity} +## Kezdő lépések az okosszerződésekkel és a Solidity nyelvvel {#getting-started-with-smart-contracts-and-solidity} -**Tedd meg az első lépést, hogy integráld a Rust-ot Ethereummal** +**Tegye meg az első lépést, hogy integrálja a Rust-ot az Ethereummal** -Szükséged van egy méginkább kezdőknek szóló alapozóra? Tekintsd meg az [ethereum.org/learn](/learn/) oldalt vagy a [ethereum.org/developers](/developers/) oldalt. +Szükséged van egy méginkább kezdőknek szóló alapozóra? Tekintse meg az [ethereum.org/learn](/learn/) vagy az [ethereum.org/developers](/developers/) oldalt. - [Blokklánc ismertetése](https://kauri.io/article/d55684513211466da7f8cc03987607d5/blockchain-explained) - [Okosszerződések értelmezése](https://kauri.io/article/e4f66c6079e74a4a9b532148d3158188/ethereum-101-part-5-the-smart-contract) @@ -23,32 +23,36 @@ Szükséged van egy méginkább kezdőknek szóló alapozóra? Tekintsd meg az [ ## Cikkek kezdőknek {#beginner-articles} - [Ethereum kliens kiválasztása](https://www.trufflesuite.com/docs/truffle/reference/choosing-an-ethereum-client) -- [A Rust Ethereum kliens](https://wiki.parity.io/Setup) +- [A Rust Ethereum-kliens](https://openethereum.github.io/) \* **Felhívjuk figyelmét, hogy az OpenEthereum [támogatása megszűnt](https://medium.com/openethereum/gnosis-joins-erigon-formerly-turbo-geth-to-release-next-gen-ethereum-client-c6708dd06dd), karbantartása nem biztosított.** Használja körültekintően, és inkább térjen át másik kliensimplementációra. - [Tranzakció küldése Ethereumra Rust használatával](https://kauri.io/#collections/A%20Hackathon%20Survival%20Guide/sending-ethereum-transactions-with-rust/) -- [Bevezetés az okosszerződésekbe a Parity Ethereum klienssel](https://wiki.parity.io/Smart-Contracts) -- [Útmutató arról, hogyan lehet szerződéseket írni Rust Wasm-ben Kovanra, lépésről lépésre](https://github.com/paritytech/pwasm-tutorial) +- [Részletes útmutató arról, hogyan lehet szerződéseket írni Rust Wasm nyelven Kovanra](https://github.com/paritytech/pwasm-tutorial) -## Középhaladó cikkek {#intermediate-articles} +## Köztes cikkek {#intermediate-articles} -## Fejlett használati minták {#advanced-use-patterns} +## Speciális használati minták {#advanced-use-patterns} -- [pwasm_ethereum externs library Ethereum-szerű hálózatokkal való interakciókhoz](https://github.com/openethereum/pwasm-ethereum) -- [Építs egy decentralizált chat-et JavaScript és Rust használatával](https://medium.com/perlin-network/build-a-decentralized-chat-using-javascript-rust-webassembly-c775f8484b52) -- [Építs egy decentralizált To-Do alkalmazást Vue.js-szel & Rust-tal](https://medium.com/@jjmace01/build-a-decentralized-todo-app-using-vue-js-rust-webassembly-5381a1895beb) -- [Enigma első lépések - Rust programozási nyelven](https://blog.enigma.co/getting-started-with-discovery-the-rust-programming-language-4d1e0b06de15) -- [Bevezetés a titkos szerződésekbe](https://blog.enigma.co/getting-started-with-enigma-an-intro-to-secret-contracts-cdba4fe501c2) +- [pwasm_ethereum externs könyvtár Ethereum-szerű hálózatokkal való interakciókhoz](https://github.com/openethereum/pwasm-ethereum) +- [Építsen egy decentralizált csevegőprogramot JavaScript és Rust használatával](https://medium.com/perlin-network/build-a-decentralized-chat-using-javascript-rust-webassembly-c775f8484b52) +- [Építsen egy decentralizált teendők listája alkalmazást Vue.js-szel & Rust-tal](https://medium.com/@jjmace01/build-a-decentralized-todo-app-using-vue-js-rust-webassembly-5381a1895beb) -## Rust projektek és eszközök {#rust-projects-and-tools} +- [Blokklánc építése Rust nyelven](https://blog.logrocket.com/how-to-build-a-blockchain-in-rust/) -- [pwasm-ethereum](https://github.com/paritytech/pwasm-ethereum) - _Külső elemek gyűjteménye az ethereum-szerű hálózattal való interakcióhoz._ -- [Ethereum WebAssembly](https://ewasm.readthedocs.io/en/mkdocs/) -- [oasis_std](https://docs.rs/oasis-std/0.2.7/oasis_std/) - _OASIS API hivatkozás_ -- [Solaris](https://github.com/paritytech/sol-rs) -- [SputnikVM](https://github.com/sorpaas/rust-evm) - _Rust Ethereum virtuális gép implementáció_ -- [Parity](https://github.com/paritytech/parity-ethereum) - _Ethereum Rust kliens_ -- [Wavelet](https://wavelet.perlin.net/docs/smart-contracts) - _Wavelet okos szerződés Rust-ban_ +## Rust-projektek és -eszközök {#rust-projects-and-tools} -Még több anyagot keresel? Tekintsd meg az [ethereum.org/developers](/developers/) oldalt +- [pwasm-ethereum](https://github.com/paritytech/pwasm-ethereum) – _Külső elemek gyűjteménye az Ethereum-szerű hálózattal való interakcióhoz_ +- [Lighthouse](https://github.com/sigp/lighthouse) – _Gyors Ethereum-konszenzusrétegkliens_ +- [Ethereum WebAssembly](https://ewasm.readthedocs.io/en/mkdocs/) – _Az Ethereum okosszerződés végrehajtási rétegének javasolt újratervezése a WebAssembly egy determinisztikus részét használva_ +- [oasis_std](https://docs.rs/oasis-std/0.2.7/oasis_std/) - _OASIS API hivatkozás_ +- [Solaris](https://github.com/paritytech/sol-rs) – _Solidity okosszerződések egységtesztelésének irányítása a natív Parity kliens EVM használatával._ +- [SputnikVM](https://github.com/rust-blockchain/evm) – _Rust Ethereum virtuálisgép-implementáció_ +- [Wavelet](https://wavelet.perlin.net/docs/smart-contracts) – _Wavelet okosszerződés Rust-ban_ +- [Foundry](https://github.com/gakonst/foundry) – _Eszközkészlet az Ethereum alkalmazások fejlesztéséhez_ +- [Ethers_rs](https://github.com/gakonst/ethers-rs) – _Ethereum könyvtár- és tárcaimplementáció_ +- [SewUp](https://github.com/second-state/SewUp) – _Egy könyvtár, amely segít az Ethereum webassembly szerződés Rust-ban való megépítésében, mintha egy általános backend lenne_ +- [Substreams](https://github.com/streamingfast/substreams) – _Párhuzamos blokkláncadat-indexálási technológia_ +- [Reth](https://github.com/paradigmxyz/reth) A Rust Ethereum rövidítése, ami egy új teljescsomópont-implementáció az Ethereumon + +Még több anyagot keresel? Tekintse meg az [ethereum.org/developers](/developers/) oldalt. ## Rust közösségi hozzájárulók {#rust-community-contributors} diff --git a/public/content/translations/hu/developers/docs/smart-contracts/anatomy/index.md b/public/content/translations/hu/developers/docs/smart-contracts/anatomy/index.md new file mode 100644 index 00000000000..af67522fb14 --- /dev/null +++ b/public/content/translations/hu/developers/docs/smart-contracts/anatomy/index.md @@ -0,0 +1,658 @@ +--- +title: A okosszerződések anatómiája +description: Egy részletes betekintés az okosszerződések felépítésébe, beleértve a függvényeket, adatokat és változókat. +lang: hu +--- + +Az okosszerződés egy olyan program, mely egy cím alatt fut az Ethereumon. Adatokból és függvényekből állnak, melyeket végre lehet hajtani bemenő tranzakciók által. Ez az áttekintés az okosszerződések felépítéséről szól. + +## Előfeltételek {#prerequisites} + +Először tekintse meg az [okosszerződésekről](/developers/docs/smart-contracts/) szóló cikket. Ez a dokumentum feltételezi, hogy már jártas a programozási nyelvekben, mint a JavaScript vagy a Python. + +## Adat {#data} + +Minden szerződésadatot hozzá kell rendelni egy lokációhoz, mely lehet a `storage` vagy a `memory`. Költséges a tárhelyet módosítani egy okosszerződésben, tehát érdemes fontolóra venni, hogy hol legyen az adat. + +### Tárhely {#storage} + +Az állandó adatokat tárolásnak nevezzük, és állapotváltozók reprezentálják őket. Ezeket az értékeket permanensen a blokkláncon tároljuk. Deklarálnia kell a típust, hogy a szerződés számon tudja tartani, hogy mekkora tárhelyre lesz szüksége a blokkláncon az átfordításkor. + +```solidity +// Solidity példa +contract SimpleStorage { + uint storedData; // Állapotváltozó + // ... +} +``` + +```python +# Vyper példa +storedData: int128 +``` + +Ha Ön programozott már objektumorientált nyelven, akkor a legtöbb típus valószínűleg ismerős lesz. Ugyanakkor az `address` típus új lesz, ha még csak most ismerkedik az Ethereum fejlesztéssel. + +Az `address` típus egy Ethereum címet tud tárolni, mely 20 bájttal vagy 160 bittel egyenlő. Hexadecimális értéket ad vissza vezető 0x-szel. + +A többi típus: + +- boolean +- egész (integer) +- fixpontos szám +- fix méretű bájttömb +- dinamikus méretű bájttömb +- Racionális és egész szám literálok +- String literálok +- Hexadecimális literálok +- Enum + +További magyarázatért tekintse meg az alábbi dokumentumokat: + +- [Vyper típusok megtekintése](https://vyper.readthedocs.io/en/v0.1.0-beta.6/types.html#value-types) +- [Solidity típusok megtekintése](https://solidity.readthedocs.io/en/latest/types.html#value-types) + +### Memória {#memory} + +Memóriaváltozóknak nevezzük azokat az értékeket, melyek csak a szerződésfunkció végrehajtása alatt tárolódnak. Mivel nem kell őket permanensen a blokkláncon tárolni, így sokkal olcsóbb a használatuk. + +Tudjon meg többet az EVM adattárolási módszeréről a [Solidity dokumentációból](https://solidity.readthedocs.io/en/latest/introduction-to-smart-contracts.html?highlight=memory#storage-memory-and-the-stack) (a „Storage, Memory and the Stack” szekcióból). + +### Környezeti változók {#environment-variables} + +A szerződésben meghatározott változók mellett van néhány speciális globális változó is. Elsősorban a blokklánccal vagy az aktuális tranzakcióval kapcsolatos információk nyújtására szolgálnak. + +Példák: + +| **Tul.** | **Állapotváltozó** | **Leírás** | +| ----------------- | ------------------ | ----------------------------------- | +| `block.timestamp` | uint256 | Jelenlegi blokk korszak időbélyege | +| `msg.sender` | address | Az üzenet küldője (jelenlegi hívás) | + +## Függvények {#functions} + +A legegyszerűbben megfogalmazva, a függvények információkat kaphatnak vagy információkat állíthatnak be válaszul a bejövő tranzakciókra. + +Kétfajta függvényhívás létezik: + +- `internal` – ezek nem okoznak EVM hívást + - A belső (internal) függvényeket és állapotváltozókat csak belülről lehet elérni (vagyis a jelenlegi szerződésből vagy a származtatott szerződésekből) +- `external` – ezek EVM hívást okoznak + - A külső (external) függvények a szerződés felületének részei, mely azt jelenti, hogy meg lehet őket hívni más szerződésekből vagy tranzakciókon keresztül. Egy külső függvény `f` kódját nem lehet belülről meghívni (vagyis az `f()` nem működik, de a `this.f()` igen). + +Ezenkívül lehetnek `public` vagy `private` típusúak is + +- a `public` függvényeket belülről lehet meghívni vagy kívülről üzenetek által +- a `private` függvények csak abban a szerződésben láthatóak, amiben definiálták őket, a származtatott szerződésekben nem + +A függvények és az állapotváltozók is lehetnek publikusak vagy privátak + +Íme egy függvény, mely egy állapotváltozó értékét állítja be egy szerződésben: + +```solidity +// Solidity példa +function update_name(string value) public { + dapp_name = value; +} +``` + +- A `string` típusú `value` paraméter kerül be a függvénybe: `update_name` +- Ez `public` módon lett deklarálva, így mindenki hozzáfér +- Nem `view` módon lett deklarálva, így módosíthatja a szerződésállapotot + +### Nézet (view) függvények {#view-functions} + +Ezek a függvények azt ígérik, hogy nem módosítják a szerződés adatainak állapotát. Általános példák a „getter” függvények – ezeket használhatja például egy felhasználó egyenlegének lekérdezésére. + +```solidity +// Solidity példa +function balanceOf(address _owner) public view returns (uint256 _balance) { + return ownerPizzaCount[_owner]; +} +``` + +```python +dappName: public(string) + +@view +@public +def readName() -> string: + return dappName +``` + +Mi számít állapotmódosításnak: + +1. Állapotváltozókba írás. +2. [Események kibocsátása](https://solidity.readthedocs.io/en/v0.7.0/contracts.html#events). +3. [Másik szerződés létrehozás](https://solidity.readthedocs.io/en/v0.7.0/control-structures.html#creating-contracts). +4. A `selfdestruct` használata. +5. Ether küldése hívásokkal. +6. Bármely függvény meghívása, mely nincs `view` vagy `pure` jelöléssel ellátva. +7. Alacsony szintű hívások. +8. Egysoros assembly használata, mely bizonyos opkódot tartalmaz. + +### Konstruktor függvények {#constructor-functions} + +A `constructor` csak egyszer fut le, amikor a szerződést először telepítik. Mint a `constructor` számos osztályalapú programozási nyelv esetében, ezek a függvények gyakran inicializálják az állapotváltozókat a meghatározott értékeikre. + +```solidity +// Solidity példa +// Inicializálja a szerződés adatait, beállítja az 'owner-t' +// a szerződés létrehozó címére. +constructor() public { + // Minden okosszerződés külső tranzakciókra hagyatkozik a függvényeik végrehajtására. + // az `msg` globális változó, mely az adott tranzakcióhoz tartozó adatot tartalmaz, + // mint a küldő címe és az ETH mennyisége a tranzakcióban. + // Több infó: https://solidity.readthedocs.io/en/v0.5.10/units-and-global-variables.html#block-and-transaction-properties + owner = msg.sender; +} +``` + +```python +# Vyper példa + +@external +def __init__(_beneficiary: address, _bidding_time: uint256): + self.beneficiary = _beneficiary + self.auctionStart = block.timestamp + self.auctionEnd = self.auctionStart + _bidding_time +``` + +### Beépített függvények {#built-in-functions} + +A szerződésben meghatározott függvények és változók mellett van néhány speciális beépített függvény is. A legnyilvánvalóbb példák: + +- `address.send()` – Solidity +- `send(address)` – Vyper + +Ez lehetőséget ad a szerződéseknek, hogy ETH-t küldjenek más számláknak. + +## Függvények írása {#writing-functions} + +A függvénynek szüksége van: + +- egy paraméterváltozóra és egy típusra (ha elfogad paramétereket) +- a belső/külső deklarációra +- a pure/view/payable deklarációra +- a visszatérítési érték típusára (ha van visszatérítési értéke) + +```solidity +pragma solidity >=0.4.0 <=0.6.0; + +contract ExampleDapp { + string dapp_name; // state variable + + // Called when the contract is deployed and initializes the value + constructor() public { + dapp_name = "My Example dapp"; + } + + // Get Function + function read_name() public view returns(string) { + return dapp_name; + } + + // Set Function + function update_name(string value) public { + dapp_name = value; + } +} +``` + +Egy kész szerződés nagyjából így nézne ki. Itt a `constructor` függvény biztosítja a `dapp_name` változó kezdeti értékét. + +## Események és naplózások {#events-and-logs} + +Az eseményeken keresztül tud kommunikálni az okosszerződés és a frontend vagy más feliratkozó alkalmazás. Amikor egy tranzakciót kibányásztak, az okosszerződések eseményeket bocsáthatnak ki és naplófájlokat írhatnak a blokkláncra, melyet a frontend fel tud dolgozni. + +## Jegyzetekkel ellátott példák {#annotated-examples} + +Íme néhány példa, amelyet Solidity-ben írtak. Ha szeretne megismerkedni a kóddal, akkor kipróbálhatja a [Remixben](http://remix.ethereum.org). + +### Hello world {#hello-world} + +```solidity +// A Solidity verziószámát írja elő szemantikailag. +// Több információ: https://solidity.readthedocs.io/en/v0.5.10/layout-of-source-files.html#pragma +pragma solidity ^0.5.10; + +// Egy `HelloWorld` nevű szerződés definiálása. +// A szerződés egy függvények és adatok (az állapota) gyűjteménye. +// Telepítés után a szerződés egy bizonyos címen él az Ethereum blokkláncon. +//További információ: https://solidity.readthedocs.io/en/v0.5.10/structure-of-a-contract.html +contract HelloWorld { + + // Deklarálja a `string` típusú `message` állapotváltozót. + // Az állapotváltozók olyan változók, melyeknek értékei permanensen tárolódnak a szerződés tárhelyén. + // A `public` kulcsszó lehetővé teszi a változó szerződésen kívüli elérését + // és függvényt hoz létre, mellyel más szerződések vagy kliensek le tudják kérdezni az értéket. + string public message; + + // Más osztály alapú nyelvhez hasonlóan a konstruktor egy + // speciális függvény, mely csak egyszer fut le a szerződés létrehozáskor. + // A konstruktorokat az szerződés adatainak inicializálásra lehet használni. + // További információ: https://solidity.readthedocs.io/en/v0.5.10/contracts.html#constructors + constructor(string memory initMessage) public { + // Az `initMessage` string paramétert fogadja el és beállítja + // a szerződés `message` tárhely változójába). + message = initMessage; + } + + // Egy publikus függvény, mely egy string paramétert fogad el + // és frissíti a `message` tárhely változót. + function update(string memory newMessage) public { + message = newMessage; + } +} +``` + +### Token {#token} + +```solidity +pragma solidity ^0.5.10; + +contract Token { + // Egy `address` olyan, mint egy email cím - az Ethereum számlák beazonosítására szolgál. + // A címek okosszerződéseket vagy külső (felhasználói) számlákat jelölnek. + // Learn more: https://solidity.readthedocs.io/en/v0.5.10/types.html#address + address public owner; + + // A `mapping` lényegében egy hash tábla adatszerkezet. + // Ez a `mapping` egy unsigned integert (a token egyenleget) rendel hozzá egy címhez (a token tartóhoz). + // További információ: https://solidity.readthedocs.io/en/v0.5.10/types.html#mapping-types + mapping (address => uint) public balances; + + // Az eseményekkel lehet tevékenységet logolni a blokkláncon. + // Az Ethereum kliensek figyelhetik az eseményeket, hogy reagáljanak az szerződés állapotváltozásokra. + // További információ: https://solidity.readthedocs.io/en/v0.5.10/contracts.html#events + event Transfer(address from, address to, uint amount); + + // Inicializálja a szerződés adatot, beállítja az `owner` + // változót a szerződés létrehozó címére. + constructor() public { + // Minden okosszerződés külső tranzakciókra hagyatkozik a függvényeik végrehajtására. + // az `msg` globális változó, mely az adott tranzakcióhoz tartozó adatot tartalmaz, + // mint a küldő címe és az ETH mennyisége a tranzakcióban. + //További információ: https://solidity.readthedocs.io/en/v0.5.10/units-and-global-variables.html#block-and-transaction-properties + owner = msg.sender; + } + + // Új tokeneket hoz létre és elküldi egy címre. + function mint(address receiver, uint amount) public { + // A `require` egy kontrol struktúra, mely bizonyos feltételek betartatására szolgál. + // Ha a `require` állítás `false` értéket ad, egy kivétel triggerelődik, + // mely visszaállít minden állapotváltozást a jelenlegi hívás alatt. + // Learn more: https://solidity.readthedocs.io/en/v0.5.10/control-structures.html#error-handling-assert-require-revert-and-exceptions + + // Only the contract owner can call this function + require(msg.sender == owner, "You are not the owner."); + + // Enforces a maximum amount of tokens + require(amount < 1e60, "Maximum issuance exceeded"); + + // Increases the balance of `receiver` by `amount` + balances[receiver] += amount; + } + + // Sends an amount of existing tokens from any caller to an address. + function transfer(address receiver, uint amount) public { + // A küldőnek elég tokennel kell rendelkeznie + require(amount <= balances[msg.sender], "Insufficient balance."); + + // Beállítja a token a két cím token mennyiségét + balances[msg.sender] -= amount; + balances[receiver] += amount; + + // Kibocsájtja a korábban definiált eseményt + emit Transfer(msg.sender, receiver, amount); + } +} +``` + +### Egyedi digitális eszköz {#unique-digital-asset} + +```solidity +pragma solidity ^0.5.10; + +// Szimbólumokat importál be más fájlokból a jelenlegi szerződésbe. +// Ebben az esetben egy pár segítő szerződést az OpenZeppelinről. +// További információ: https://solidity.readthedocs.io/en/v0.5.10/layout-of-source-files.html#importing-other-source-files + +import "../node_modules/@openzeppelin/contracts/token/ERC721/IERC721.sol"; +import "../node_modules/@openzeppelin/contracts/token/ERC721/IERC721Receiver.sol"; +import "../node_modules/@openzeppelin/contracts/introspection/ERC165.sol"; +import "../node_modules/@openzeppelin/contracts/math/SafeMath.sol"; + +// Az `is` kulcsszót használjuk, hogy külső szerződések függvényeit és kulcsszavait örököltessük. +// Ebben az esetben, `CryptoPizza` örököl az `IERC721` és az `ERC165` szerződésekből. +// További információ: https://solidity.readthedocs.io/en/v0.5.10/contracts.html#inheritance +contract CryptoPizza is IERC721, ERC165 { + // Az OpenZeppelin SafeMath könyvtárát használja aritmetikai számítások biztonságos elvégzésére. + // További információ: https://docs.openzeppelin.com/contracts/2.x/api/math#SafeMath + using SafeMath for uint256; + + // A konstans állapotváltozók a Solidity-ben hasonlóak más nyelvekhez + // de a fordítás ideje alatt konstans kifejezésből kell hozzárendelni. + // Learn more: https://solidity.readthedocs.io/en/v0.5.10/contracts.html#constant-state-variables + uint256 constant dnaDigits = 10; + uint256 constant dnaModulus = 10 ** dnaDigits; + bytes4 private constant _ERC721_RECEIVED = 0x150b7a02; + + // Struct types let you define your own type + // Learn more: https://solidity.readthedocs.io/en/v0.5.10/types.html#structs + struct Pizza { + string name; + uint256 dna; + } + + // Creates an empty array of Pizza structs + Pizza[] public pizzas; + + // Mapping from pizza ID to its owner's address + mapping(uint256 => address) public pizzaToOwner; + + // Mapping from owner's address to number of owned token + mapping(address => uint256) public ownerPizzaCount; + + // Mapping from token ID to approved address + mapping(uint256 => address) pizzaApprovals; + + // You can nest mappings, this example maps owner to operator approvals + mapping(address => mapping(address => bool)) private operatorApprovals; + + // Internal function to create a random Pizza from string (name) and DNA + function _createPizza(string memory _name, uint256 _dna) + // The `internal` keyword means this function is only visible + // within this contract and contracts that derive this contract + // Learn more: https://solidity.readthedocs.io/en/v0.5.10/contracts.html#visibility-and-getters + internal + // `isUnique` is a function modifier that checks if the pizza already exists + // Learn more: https://solidity.readthedocs.io/en/v0.5.10/structure-of-a-contract.html#function-modifiers + isUnique(_name, _dna) + { + // Adds Pizza to array of Pizzas and get id + uint256 id = SafeMath.sub(pizzas.push(Pizza(_name, _dna)), 1); + + // Checks that Pizza owner is the same as current user + // Learn more: https://solidity.readthedocs.io/en/v0.5.10/control-structures.html#error-handling-assert-require-revert-and-exceptions + + // note that address(0) is the zero address, + // indicating that pizza[id] is not yet allocated to a particular user. + + assert(pizzaToOwner[id] == address(0)); + + // Maps the Pizza to the owner + pizzaToOwner[id] = msg.sender; + ownerPizzaCount[msg.sender] = SafeMath.add( + ownerPizzaCount[msg.sender], + 1 + ); + } + + // Creates a random Pizza from string (name) + function createRandomPizza(string memory _name) public { + uint256 randDna = generateRandomDna(_name, msg.sender); + _createPizza(_name, randDna); + } + + // Generates random DNA from string (name) and address of the owner (creator) + function generateRandomDna(string memory _str, address _owner) + public + // Functions marked as `pure` promise not to read from or modify the state + // Learn more: https://solidity.readthedocs.io/en/v0.5.10/contracts.html#pure-functions + pure + returns (uint256) + { + // Generates random uint from string (name) + address (owner) + uint256 rand = uint256(keccak256(abi.encodePacked(_str))) + + uint256(_owner); + rand = rand % dnaModulus; + return rand; + } + + // Returns array of Pizzas found by owner + function getPizzasByOwner(address _owner) + public + // Functions marked as `view` promise not to modify state + // Learn more: https://solidity.readthedocs.io/en/v0.5.10/contracts.html#view-functions + view + returns (uint256[] memory) + { + // Uses the `memory` storage location to store values only for the + // lifecycle of this function call. + // További info: https://solidity.readthedocs.io/en/v0.5.10/introduction-to-smart-contracts.html#storage-memory-and-the-stack + uint256[] memory result = new uint256[](ownerPizzaCount[_owner]); + uint256 counter = 0; + for (uint256 i = 0; i < pizzas.length; i++) { + if (pizzaToOwner[i] == _owner) { + result[counter] = i; + counter++; + } + } + return result; + } + + // Átadja a Pizza tulajdonjogot és másik címnek + function transferFrom(address _from, address _to, uint256 _pizzaId) public { + require(_from != address(0) && _to != address(0), "Invalid address."); + require(_exists(_pizzaId), "Pizza does not exist."); + require(_from != _to, "Cannot transfer to the same address."); + require(_isApprovedOrOwner(msg.sender, _pizzaId), "Address is not approved."); + + ownerPizzaCount[_to] = SafeMath.add(ownerPizzaCount[_to], 1); + ownerPizzaCount[_from] = SafeMath.sub(ownerPizzaCount[_from], 1); + pizzaToOwner[_pizzaId] = _to; + + // Kibocsájt egy eseményt, mely az importált IERC721 szerződésben van definiálva + emit Transfer(_from, _to, _pizzaId); + _clearApproval(_to, _pizzaId); + } + + /** + * Biztonságosan átadja a egy adott token ID tulajdonjogát egy másik címnek + * Ha a cél cím egy szerződés, akkor az `onERC721Received`-nek implementálva kell lennie, + * mely egy biztonságos átadáskor meghívódik és visszaadja a bűvös értéket + * `bytes4(keccak256("onERC721Received(address,address,uint256,bytes)"))`; + * ellenkező esetben a transfer visszafordul. + */ + function safeTransferFrom(address from, address to, uint256 pizzaId) + public + { + // solium-disable-next-line arg-overflow + this.safeTransferFrom(from, to, pizzaId, ""); + } + + /** + * Biztonságosan átadja a egy adott token ID tulajdonjogát egy másik címnek + * Ha a cél cím egy szerződés, akkor az `onERC721Received`-nek implementálva kell lennie, + * mely egy biztonságos átadáskor meghívódik és visszaadja a bűvös értéket + * `bytes4(keccak256("onERC721Received(address,address,uint256,bytes)"))`; + * ellenkező esetben a transfer visszafordul. + */ + function safeTransferFrom( + address from, + address to, + uint256 pizzaId, + bytes memory _data + ) public { + this.transferFrom(from, to, pizzaId); + require(_checkOnERC721Received(from, to, pizzaId, _data), "Must implement onERC721Received."); + } + + /** + * Internal function to invoke `onERC721Received` on a target address + * The call is not executed if the target address is not a contract + */ + function _checkOnERC721Received( + address from, + address to, + uint256 pizzaId, + bytes memory _data + ) internal returns (bool) { + if (!isContract(to)) { + return true; + } + + bytes4 retval = IERC721Receiver(to).onERC721Received( + msg.sender, + from, + pizzaId, + _data + ); + return (retval == _ERC721_RECEIVED); + } + + // Burns a Pizza - destroys Token completely + // The `external` function modifier means this function is + // part of the contract interface and other contracts can call it + function burn(uint256 _pizzaId) external { + require(msg.sender != address(0), "Invalid address."); + require(_exists(_pizzaId), "Pizza does not exist."); + require(_isApprovedOrOwner(msg.sender, _pizzaId), "Address is not approved."); + + ownerPizzaCount[msg.sender] = SafeMath.sub( + ownerPizzaCount[msg.sender], + 1 + ); + pizzaToOwner[_pizzaId] = address(0); + } + + // Returns count of Pizzas by address + function balanceOf(address _owner) public view returns (uint256 _balance) { + return ownerPizzaCount[_owner]; + } + + // Returns owner of the Pizza found by id + function ownerOf(uint256 _pizzaId) public view returns (address _owner) { + address owner = pizzaToOwner[_pizzaId]; + require(owner != address(0), "Invalid Pizza ID."); + return owner; + } + + // Approves other address to transfer ownership of Pizza + function approve(address _to, uint256 _pizzaId) public { + require(msg.sender == pizzaToOwner[_pizzaId], "Must be the Pizza owner."); + pizzaApprovals[_pizzaId] = _to; + emit Approval(msg.sender, _to, _pizzaId); + } + + // Returns approved address for specific Pizza + function getApproved(uint256 _pizzaId) + public + view + returns (address operator) + { + require(_exists(_pizzaId), "Pizza does not exist."); + return pizzaApprovals[_pizzaId]; + } + + /** + * Private function to clear current approval of a given token ID + * Reverts if the given address is not indeed the owner of the token + */ + function _clearApproval(address owner, uint256 _pizzaId) private { + require(pizzaToOwner[_pizzaId] == owner, "Must be pizza owner."); + require(_exists(_pizzaId), "Pizza does not exist."); + if (pizzaApprovals[_pizzaId] != address(0)) { + pizzaApprovals[_pizzaId] = address(0); + } + } + + /* + * Sets or unsets the approval of a given operator + * An operator is allowed to transfer all tokens of the sender on their behalf + */ + function setApprovalForAll(address to, bool approved) public { + require(to != msg.sender, "Cannot approve own address"); + operatorApprovals[msg.sender][to] = approved; + emit ApprovalForAll(msg.sender, to, approved); + } + + // Tells whether an operator is approved by a given owner + function isApprovedForAll(address owner, address operator) + public + view + returns (bool) + { + return operatorApprovals[owner][operator]; + } + + // Takes ownership of Pizza - only for approved users + function takeOwnership(uint256 _pizzaId) public { + require(_isApprovedOrOwner(msg.sender, _pizzaId), "Address is not approved."); + address owner = this.ownerOf(_pizzaId); + this.transferFrom(owner, msg.sender, _pizzaId); + } + + // Checks if Pizza exists + function _exists(uint256 pizzaId) internal view returns (bool) { + address owner = pizzaToOwner[pizzaId]; + return owner != address(0); + } + + // Checks if address is owner or is approved to transfer Pizza + function _isApprovedOrOwner(address spender, uint256 pizzaId) + internal + view + returns (bool) + { + address owner = pizzaToOwner[pizzaId]; + // Disable solium check because of + // https://github.com/duaraghav8/Solium/issues/175 + // solium-disable-next-line operator-whitespace + return (spender == owner || + this.getApproved(pizzaId) == spender || + this.isApprovedForAll(owner, spender)); + } + + // Check if Pizza is unique and doesn't exist yet + modifier isUnique(string memory _name, uint256 _dna) { + bool result = true; + for (uint256 i = 0; i < pizzas.length; i++) { + if ( + keccak256(abi.encodePacked(pizzas[i].name)) == + keccak256(abi.encodePacked(_name)) && + pizzas[i].dna == _dna + ) { + result = false; + } + } + require(result, "Pizza with such name already exists."); + _; + } + + // Returns whether the target address is a contract + function isContract(address account) internal view returns (bool) { + uint256 size; + // Currently there is no better way to check if there is a contract in an address + // than to check the size of the code at that address. + // Lásd https://ethereum.stackexchange.com/a/14016/36603 + // hogy hogyan működik ez. + // TODO A Serenity release előtt ellenőrizni, mivel azután minden cím + // szerződés lesz. + // solium-disable-next-line security/no-inline-assembly + assembly { + size := extcodesize(account) + } + return size > 0; + } +} +``` + +## További olvasnivaló {#further-reading} + +Tekintse meg a Solidity és a Vyper dokumentációit az okosszerződések teljesebb áttekintésért: + +- [Solidity](https://solidity.readthedocs.io/) +- [Vyper](https://vyper.readthedocs.io/) + +## Kapcsolódó témák {#related-topics} + +- [Okosszerződések](/developers/docs/smart-contracts/) +- [Ethereum virtuális gép](/developers/docs/evm/) + +## Kapcsolódó útmutatók {#related-tutorials} + +- [A szerződések méretének csökkentése, hogy ne okozzon gondot a méretkorlát](/developers/tutorials/downsizing-contracts-to-fight-the-contract-size-limit/) _– Gyakorlati tanácsok az okosszerződés méretének redukálására._ +- [Okosszerződések adatnaplózása az események mentén](/developers/tutorials/logging-events-smart-contracts/) _– Bevezetés az okossszerződések eseményeibe, s azok használata az adatnaplózáshoz._ +- [Más szerződésekkel való interakció a Solidity által](/developers/tutorials/interact-with-other-contracts-from-solidity/) _– Hogyan telepítsen okosszerződést egy létező szerződésből és kapcsolódjon azzal._ diff --git a/public/content/translations/hu/developers/docs/smart-contracts/compiling/index.md b/public/content/translations/hu/developers/docs/smart-contracts/compiling/index.md index 35a99a28d5c..f901768fe02 100644 --- a/public/content/translations/hu/developers/docs/smart-contracts/compiling/index.md +++ b/public/content/translations/hu/developers/docs/smart-contracts/compiling/index.md @@ -1,19 +1,19 @@ --- title: Okos szerződések fordítása -description: Egy magyarázat arról, hogy miért kell az okosszerződéseket fordítani és hogy pontosan mit csinál a fordítás. +description: Magyarázat arról, hogy miért kell az okosszerződéseket átfordítani, és hogy pontosan mit csinál az átfordítás. lang: hu incomplete: true --- -Be kell fordítanod a szerződéseidet, hogy a web alkalmazásod és az Ethereum virtuális gép (EVM) meg tudja érteni őket. +Át kell fordítani a szerződéseket, hogy a webalkalmazás és az Ethereum virtuális gép (EVM) meg tudja érteni azokat. ## Előfeltételek {#prerequisites} -Segítségedre lehet, ha átolvasod az [okosszerződések](/developers/docs/smart-contracts/) és az [Ethereum virtuális gép](/developers/docs/evm/) cikkeket, mielőtt belekezdesz a fordításba. +Segítségére lehetnek az [okosszerződésekről](/developers/docs/smart-contracts/) és az [Ethereum virtuális gépről](/developers/docs/evm/) szóló cikkek, mielőtt belekezdene az átfordításba. ## Az EVM {#the-evm} -Ahhoz, hogy az [EVM](/developers/docs/evm/) le tudja futtatni a szerződésedet, **bytecode-ban** kell lennie. A fordítás ezt: +Ahhoz, hogy az [EVM](/developers/docs/evm/) le tudja futtatni a szerződésedet, **bytecode-ban** kell lennie. Az átfordítás során ebből: ```solidity pragma solidity 0.4.24; @@ -27,21 +27,21 @@ contract Greeter { } ``` -**ezzé alakítja:** +**ez lesz:** ``` PUSH1 0x80 PUSH1 0x40 MSTORE PUSH1 0x4 CALLDATASIZE LT PUSH2 0x41 JUMPI PUSH1 0x0 CALLDATALOAD PUSH29 0x100000000000000000000000000000000000000000000000000000000 SWAP1 DIV PUSH4 0xFFFFFFFF AND DUP1 PUSH4 0xCFAE3217 EQ PUSH2 0x46 JUMPI JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x52 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x5B PUSH2 0xD6 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 DUP1 PUSH1 0x20 ADD DUP3 DUP2 SUB DUP3 MSTORE DUP4 DUP2 DUP2 MLOAD DUP2 MSTORE PUSH1 0x20 ADD SWAP2 POP DUP1 MLOAD SWAP1 PUSH1 0x20 ADD SWAP1 DUP1 DUP4 DUP4 PUSH1 0x0 JUMPDEST DUP4 DUP2 LT ISZERO PUSH2 0x9B JUMPI DUP1 DUP3 ADD MLOAD DUP2 DUP5 ADD MSTORE PUSH1 0x20 DUP2 ADD SWAP1 POP PUSH2 0x80 JUMP JUMPDEST POP POP POP POP SWAP1 POP SWAP1 DUP2 ADD SWAP1 PUSH1 0x1F AND DUP1 ISZERO PUSH2 0xC8 JUMPI DUP1 DUP3 SUB DUP1 MLOAD PUSH1 0x1 DUP4 PUSH1 0x20 SUB PUSH2 0x100 EXP SUB NOT AND DUP2 MSTORE PUSH1 0x20 ADD SWAP2 POP JUMPDEST POP SWAP3 POP POP POP PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH1 0x60 PUSH1 0x40 DUP1 MLOAD SWAP1 DUP2 ADD PUSH1 0x40 MSTORE DUP1 PUSH1 0x5 DUP2 MSTORE PUSH1 0x20 ADD PUSH32 0x48656C6C6F000000000000000000000000000000000000000000000000000000 DUP2 MSTORE POP SWAP1 POP SWAP1 JUMP STOP LOG1 PUSH6 0x627A7A723058 KECCAK256 SLT 0xec 0xe 0xf5 0xf8 SLT 0xc7 0x2d STATICCALL ADDRESS SHR 0xdb COINBASE 0xb1 BALANCE 0xe8 0xf8 DUP14 0xda 0xad DUP13 LOG1 0x4c 0xb4 0x26 0xc2 DELEGATECALL PUSH7 0x8994D3E002900 ``` -## Web alkalmazások {#web-applications} +## Webalkalmazások {#web-applications} -A fordító ezenkívül létrehozza az **Application Binary Interface-t (ABI)**, amire szükséged lesz, hogy az alkalmazásod megértse a szerződést és meg tudja hívni a szerződés függvényeit. +Az átfordító ezenkívül létrehozza az **Application Binary Interface-t (ABI)**, amire szüksége lesz, hogy az Ön alkalmazása megértse a szerződést, és meg tudja hívni a szerződés függvényeit. -Az ABI egy JSON fáj, mely leírja a telepített szerződést és az okosszerződés függvényeit. Ez segít áthidalni a szakadékot a web2 és a web3 között +Az ABI egy JSON fáj, mely leírja a telepített szerződést és az okosszerződés függvényeit. Ez segít áthidalni a szakadékot a web2 és a web3 között. -Egy [JavaScript kliens könyvtár](/developers/docs/apis/javascript/) fogja az **ABI-t** olvasni, hogy meghívhasd az okosszerződésedet a web alkalmazásod felületén. +Egy [Javascript klienskönyvtár](/developers/docs/apis/javascript/) fogja az **ABI-t** olvasni, hogy Ön meghívhassa az okosszerződését a webalkalmazás felületén. -Lentebb van az ERC-20 token szerződés ABI-ja. Az ERC-20 egy token, mellyel az Ethereumon kereskedhetsz. +Alább látható az ERC-20 tokenszerződés ABI-ja. Az ERC-20 egy token, mellyel az Ethereumon kereskedhetsz. ```json [ @@ -270,9 +270,9 @@ Lentebb van az ERC-20 token szerződés ABI-ja. Az ERC-20 egy token, mellyel az ## További olvasnivaló {#further-reading} -- [ABI spec](https://solidity.readthedocs.io/en/v0.7.0/abi-spec.html) _– Solidity_ +- [ABI specifikáció](https://solidity.readthedocs.io/en/v0.7.0/abi-spec.html) _– Solidity_ ## Kapcsolódó témák {#related-topics} -- [JavaScript kliens könyvtárak](/developers/docs/apis/javascript/) +- [Javascript klienskönyvtárak](/developers/docs/apis/javascript/) - [Ethereum virtuális gép](/developers/docs/evm/) diff --git a/public/content/translations/hu/developers/docs/smart-contracts/deploying/index.md b/public/content/translations/hu/developers/docs/smart-contracts/deploying/index.md index 166ecb99b70..fa3dffa7e47 100644 --- a/public/content/translations/hu/developers/docs/smart-contracts/deploying/index.md +++ b/public/content/translations/hu/developers/docs/smart-contracts/deploying/index.md @@ -2,56 +2,73 @@ title: Okos szerződések telepítése description: lang: hu -incomplete: true --- -Telepítened kell az okosszerződésedet azért, hogy az Ethereum hálózat felhasználói számára elérhető legyen. +Telepítenie kell az okosszerződését azért, hogy az Ethereum hálózat felhasználói számára elérhető legyen. -Egy okosszerződés telepítéséhez, csak el kell küldened egy Ethereum tranzakciót, mely tartalmazza a befordított kódot címzett megadása nélkül. +Egy okosszerződés telepítéséhez csak el kell küldenie egy Ethereum-tranzakciót, mely tartalmazza az átfordított kódot címzett megadása nélkül. ## Előfeltételek {#prerequisites} -Érdemes tisztában lenned az [Ethereum hálózatokkal](/developers/docs/networks/), [tranzakciókkal](/developers/docs/transactions/) és az [okosszerződések anatómiájával](/developers/docs/smart-contracts/anatomy/) mielőtt belefogsz az okosszerződés telepítésbe. +Érdemes tisztában lennie az [Ethereum hálózatokkal](/developers/docs/networks/), a [tranzakciókkal](/developers/docs/transactions/) és az [okosszerződések anatómiájával](/developers/docs/smart-contracts/anatomy/) mielőtt belefog az okosszerződéstelepítésbe. -Egy szerződés telepítéséért ETH-et kell fizetni, így érdemes ismerned a [gázt és a díjakat](/developers/docs/gas/) az Ethereumon. +A szerződés telepítéséért ETH-t kell fizetni, így érdemes ismernie a [gázt és a díjakat](/developers/docs/gas/) az Ethereumon. -Végül be kell fordítanod a szerződésedet telepítés előtt, ezért olvasd el előtte a [okosszerződések telepítése](/developers/docs/smart-contracts/compiling/) cikket. +Végül át kell fordítani a szerződést telepítés előtt, ezért előtte tekintse meg az [okosszerződések telepítése](/developers/docs/smart-contracts/compiling/) című cikket. -## Hogyan lehet okosszerződést telepíteni - -Ez azt jelenti, hogy egy tranzakciós díjat kell fizetned, így biztosítsd számodra valamennyi ETH-et. +## Hogyan telepítse az okosszerződését {#how-to-deploy-a-smart-contract} ### Mire lesz szükséged {#what-youll-need} -- a szerződésed bájtkódjára – ez a [fordítás](/developers/docs/smart-contracts/compiling/) alatt generálódik. -- Ether a gázra – be kell majd állítanod a gáz limitet, mint bármely más tranzakciónál, de figyelj arra, hogy a szerződés telepítés sokkal több gázt igényel, mint egy egyszerű ETH átutalás. -- egy telepítő szkript vagy plugin. -- hozzáférés egy [Ethereum csomóponthoz](/developers/docs/nodes-and-clients/), vagy a sajátod futtatásával, egy nyilvános csomóponthoz történő csatlakozással vagy egy API kulcson keresztül egy szolgáltatás használatával, mint az Infura vagy az Alchemy +- A szerződés bájtkódjára – ez az [átfordítás](/developers/docs/smart-contracts/compiling/) alatt generálódik +- ETH a gázra – meg kell adni a gázlimitet, mint bármely más tranzakciónál, de fontos tudni, hogy a szerződéstelepítés sokkal több gázt igényel, mint egy egyszerű ETH átutalás +- egy telepítőszkript vagy plugin +- hozzáférés egy [Ethereum-csomóponthoz](/developers/docs/nodes-and-clients/) a sajátja futtatásával, egy nyilvános csomóponthoz történő csatlakozással vagy egy API-kulcson keresztül egy [csomópontszolgáltatás](/developers/docs/nodes-and-clients/nodes-as-a-service/) használatával + +### Az okosszerződés telepítésének lépései {#steps-to-deploy} -A telepítés befejeztével a szerződésednek lesz egy Ethereum címe, mint bármely más [számlának](/developers/docs/accounts/). +A konkrét lépések az adott fejlesztői keretrendszertől függenek. Például megtekintheti a [Hardhat dokumentációt a szerződéstelepítésről](https://hardhat.org/guides/deploying.html) vagy a [Foundry dokumentációt az okosszerződések telepítéséről és ellenőrzéséről](https://book.getfoundry.sh/forge/deploying). A telepítés után a szerződésének lesz egy Ethereum-címe, ahogy a többi [számlának](/developers/docs/accounts/) is, és ez a [forráskód-ellenőrző eszközök](/developers/docs/smart-contracts/verifying/#source-code-verification-tools) segítségével lesz ellenőrizhető. ## Kapcsolódó eszközök {#related-tools} -**Remix -** **_A Remix IDE lehetővé teszi az okosszerződések fejlesztését, telepítését és kezelését az Ethereumhoz hasonló blokkláncokon._** +**Remix – _A Remix IDE lehetővé teszi az okosszerződések fejlesztését, telepítését és kezelését az Ethereumhoz hasonló blokkláncokon_** - [Remix](https://remix.ethereum.org) -**Tenderly -** **_Egy platform, ahol könnyen monitorozhatod az okosszerződéseidet hiba nyomon követéssel, riasztással, teljesítmény mutatókkal és részletes szerződés analízissel_** +**Tenderly – _Web3-fejlesztői platform, amely okosszerződés fejlesztéséhez, teszteléséhez, felügyeletéhez és működtetéséhez biztosít hibakeresési, megfigyelési és infrastruktúrához kapcsolódó építőelemeket_** - [tenderly.co](https://tenderly.co/) +- [Dokumentáció](https://docs.tenderly.co/) - [GitHub](https://github.com/Tenderly) - [Discord](https://discord.gg/eCWjuvt) +**Hardhat – _Fejlesztői környezet Ethereum-szoftverek átfordításához, telepítéséhez, teszteléséhez és a hibakereséshez_** + +- [hardhat.org](https://hardhat.org/getting-started/) +- [Dokumentáció a szerződéstelepítésről](https://hardhat.org/guides/deploying.html) +- [GitHub](https://github.com/nomiclabs/hardhat) +- [Discord](https://discord.com/invite/TETZs2KK4k) + +**thirdweb – _Könnyű telepítés bármely szerződés esetében bármelyik EVM-kompatibilis láncra egyetlen parancssorral_** + +- [Dokumentáció](https://portal.thirdweb.com/deploy/) + ## Kapcsolódó útmutatók {#related-tutorials} -- [Az első okosszerződésed telepítése](/developers/tutorials/deploying-your-first-smart-contract/) _– Bevezetés az első okosszerződésed telepítésébe egy Ethereum teszt hálózaton._ -- [Interakció más okosszerződésekkel Solidity-ben](/developers/tutorials/interact-with-other-contracts-from-solidity/) _– Hogyan telepítsünk egy okosszerződést egy meglévő szerződésből és lépjünk vele interakcióba_ -- [Hogyan csökkentsük a szerződés méretét](/developers/tutorials/downsizing-contracts-to-fight-the-contract-size-limit/) _- Hogyan csökkentsd a szerződésed méretét, hogy a határ alatt legyen és gázt spórolj meg_ +- [Az első okosszerződés telepítése](/developers/tutorials/deploying-your-first-smart-contract/) _– Bevezetés az első okosszerződés telepítésébe egy Ethereum-teszthálózaton._ +- [Hello World | okosszerződés-útmutató](/developers/tutorials/hello-world-smart-contract/) _– Egyszerűen követhető útmutató egy alap okosszerződés létrehozásához és telepítéséhez az Ethereumon._ +- [Más szerződésekkel való interakció a Solidity által](/developers/tutorials/interact-with-other-contracts-from-solidity/) _– Hogyan telepítsen okosszerződést egy létező szerződésből és kapcsolódjon azzal._ +- [Hogyan csökkenthető a szerződés mérete](/developers/tutorials/downsizing-contracts-to-fight-the-contract-size-limit/) _– Hogyan csökkentheti a szerződés méretét, hogy a határ alatt legyen és gázt takarítson meg_ ## További olvasnivaló {#further-reading} -_Ismersz olyan közösségi anyagot, amely segített neked? Módosítsd az oldalt és add hozzá!_ +- [https://docs.openzeppelin.com/learn/deploying-and-interacting](https://docs.openzeppelin.com/learn/deploying-and-interacting) – _OpenZeppelin_ +- [Telepítse szerződéseit a Hardhat segítségével](https://hardhat.org/guides/deploying.html) – _Nomic Labs_ + +_Van olyan közösségi erőforrása, amely segített Önnek? Szerkessze ezt az oldalt, és adja hozzá!_ -## Kapcsolódó témák +## Kapcsolódó témák {#related-topics} - [Fejlesztői keretrendszerek](/developers/docs/frameworks/) +- [Ethereum-csomópont futtatása](/developers/docs/nodes-and-clients/run-a-node/) +- [Csomópont, mint szolgáltatás](/developers/docs/nodes-and-clients/nodes-as-a-service) diff --git a/public/content/translations/hu/developers/docs/smart-contracts/index.md b/public/content/translations/hu/developers/docs/smart-contracts/index.md index 072cbad68f3..c65a7e409b7 100644 --- a/public/content/translations/hu/developers/docs/smart-contracts/index.md +++ b/public/content/translations/hu/developers/docs/smart-contracts/index.md @@ -1,24 +1,26 @@ --- title: Bevezetés az okosszerződésekbe -description: Egy áttekintő az okosszerződésekről kiemelve az egyedi karakterisztikájukat és a határaikat. +description: Áttekintés az okosszerződésekről, kiemelve az egyedi jellemzőiket és korlátaikat. lang: hu --- -## Mi az az okosszerződés? +## Mi az az okosszerződés? {#what-is-a-smart-contract} -Az "okosszerződés" egy program, mely az Ethereum blokkláncon fut. Kód (a függvényei) és adat (az állapota) gyűjteménye, mely egy bizonyos címen létezik az Ethereum blokkláncon. +Az „okosszerződés” egy program, mely az Ethereum blokkláncon fut. Kód (a függvényei) és adat (az állapota/státusza) gyűjteménye, mely egy bizonyos címen létezik az Ethereum blokkláncon. -Az okosszerződés egy [Ethereum számla](/developers/docs/accounts/) típus. Ez azt jelenti, hogy van egy egyenlegük és tranzakciókat tudnak indítani a hálózaton. Azonban nem egy felhasználó kezeli őket, ehelyett telepítve vannak a hálózatra és úgy futnak, ahogy programozták őket. A felhasználói számlák interakcióba léphetnek az okosszerződésekkel tranzakciók indításával, melyek egy függvényt hajtanak végre az okosszerződésen. Az okosszerződések szabályokat fektethetnek le, mint egy rendes szerződés, és automatikusan betartatják azokat a kód által. +Az okosszerződés egyfajta [Ethereum-számla](/developers/docs/accounts/). Ennélfogva egyenlegük van és tranzakciók irányulhatnak feléjük. Azonban nem egy felhasználó kezeli őket, ehelyett telepítve vannak a hálózatra, és a programjuk szerint futnak. A felhasználói számlák interakcióba léphetnek az okosszerződésekkel tranzakciók indításával, melyek egy függvényt hajtanak végre az okosszerződésen. Az okosszerződések szabályokat fektethetnek le, mint egy rendes szerződés, és automatikusan betartatják azokat a kód által. Az okosszerződéseket nem lehet törölni, és a velük való interakció visszafordíthatatlan. ## Előfeltételek {#prerequisites} -Olvasd el a [számlákról](/developers/docs/accounts/), [tranzakciókról](/developers/docs/transactions/) és az [Ethereum virtuális gépről szóló cikkeket](/developers/docs/evm/), mielőtt beleugranál az okosszerződések világába. +Ha Ön most ismerkedik a témával vagy egy kevésbé technikai bevezetést keres, akkor tekintse meg a [bevezetés az okosszerződésekbe](/smart-contracts/) című cikket. + +Olvassa el a [számlákról](/developers/docs/accounts/), [tranzakciókról](/developers/docs/transactions/) és az [Ethereum virtuális gépről szóló cikkeket](/developers/docs/evm/) mielőtt belevetné magát az okosszerződések világába. ## Egy digitális ételautomata {#a-digital-vending-machine} -Talán a legjobb okosszerződés metafora az ételautomata, ahogy Nick Szabo fogalmazta meg. A megfelelő bemenetekkel, egy bizonyos kimenet jön létre. +Talán a legjobb metafora az okosszerződésre egy ételautomata, ahogy azt [Nick Szabo](https://unenumerated.blogspot.com/) bemutatta. A megfelelő bemenetekkel egy bizonyos kimenet jön létre. -Hogy megkapd a nasit az ételautomatából: +Ahhoz, hogy megkapja az ételt az automatából: ``` pénz + nasi választás = kiadott nasi @@ -26,10 +28,10 @@ pénz + nasi választás = kiadott nasi Ez a logika be van programozva az ételautomatába. -Az okosszerződésbe logika van beprogramozva, mint egy ételautomatába. Az alábbi példában bemutatjuk, hogy hogy nézne ki ez az ételautomata egy okosszerződés formájában: +Az okosszerződésbe logika van programozva, akár egy ételautomatába. Egy egyszerű példa, hogyan nézne ki ez az ételautomata, ha egy okosszerződés lenne Solidity nyelven: ```solidity -pragma solidity 0.6.11; +pragma solidity 0.8.7; contract VendingMachine { @@ -39,19 +41,19 @@ contract VendingMachine { // Amikor a 'VendingMachine' szerződést telepítik: // 1. beállítja a telepítő címet a szerződés tulajdonosaként - // 2. beállítja a telepített okosszerződés egyenlegét 100 muffinra - constructor() public { + // 2. set the deployed smart contract's cupcake balance to 100 + constructor() { owner = msg.sender; cupcakeBalances[address(this)] = 100; } - // A tulajdonos növelheti az okosszerződés muffin egyenlegét + // Allow the owner to increase the smart contract's cupcake balance function refill(uint amount) public { require(msg.sender == owner, "Only the owner can refill."); cupcakeBalances[address(this)] += amount; } - // Bárki vásárolhat muffint + // Allow anyone to purchase cupcakes function purchase(uint amount) public payable { require(msg.value >= amount * 1 ether, "You must pay at least 1 ETH per cupcake"); require(cupcakeBalances[address(this)] >= amount, "Not enough cupcakes in stock to complete this purchase"); @@ -65,43 +67,45 @@ Mint ahogy az ételautomaták szükségtelenné teszik az árusító alkalmazott ## Nem engedélyköteles {#permissionless} -Bárki írhat okosszerződést és telepítheti a hálózatra. Csak meg kell tanulnod egy [okosszerződés nyelven](/developers/docs/smart-contracts/languages/) programoznod és elegendő ETH-tel rendelkezned, hogy telepítsd a szerződést. Egy okosszerződés telepítés lényegében egy tranzakció, így ki kell fizetned a [gázt](/developers/docs/gas/), ahogy kifizetnéd egy egyszerű ETH átutalás esetében is. A gáz költségek azonban sokkal magasabbak a szerződés telepítés esetében. +Bárki írhat okosszerződést és telepítheti azt a hálózatra. A szerződés telepítéséhez elég csak megtanulnia egy [okosszerződésnyelven](/developers/docs/smart-contracts/languages/) programozni, illetve a szükséges ETH-val kell rendelkeznie. Az okosszerződés telepítése lényegében egy tranzakció, így ugyanúgy ki kell fizetnie a [gázt](/developers/docs/gas/), mint egy egyszerű ETH-átutalás esetében. Ugyanakkor a szerződéstelepítés gázköltsége magasabb. -Az Ethereum fejlesztőbarát okosszerződés nyelvekkel rendelkezik: +Az Ethereum fejlesztőbarát okosszerződésnyelvekkel rendelkezik: - Solidity - Vyper [Többet a nyelvekről](/developers/docs/smart-contracts/languages/) -Azonban be kell őket fordítani telepítés előtt, hogy az Ethereum virtuális gép értelmezni és tárolni tudja majd a szerződést. [Többet a fordításról](/developers/docs/smart-contracts/compiling/) +Azonban be kell őket fordítani telepítés előtt, hogy az Ethereum virtuális gép értelmezni és tárolni tudja majd a szerződést. [Többet a befordításról](/developers/docs/smart-contracts/compiling/) ## Összeilleszthetőség {#composability} -Az okosszerződések nyilvánosak az Ethereumon, így nyílt API-ként is tekinthetünk rájuk. Ez azt jelenti, hogy meghívhatsz más okosszerződéseket a te szerződésedben, hogy nagymértékben kiterjeszthesd a lehetőségeket. A szerződések még más szerződéseket is telepíteni tudnak. +Az okosszerződések nyilvánosak az Ethereumon, így nyílt API-ként is tekinthetünk rájuk. Ez azt jelenti, hogy meghívhat más okosszerződéseket az Ön szerződésében, hogy nagymértékben kiterjeszthesse a lehetőségeket. A szerződések még más szerződéseket is tudnak telepíteni. -Tudj meg többet az [okosszerződés összeilleszthetőségről](/developers/docs/smart-contracts/composability/). +Tudjon meg többet az [okosszerződések összeilleszthetőségről](/developers/docs/smart-contracts/composability/). ## Korlátok {#limitations} -Az okosszerződések önmagukban nem képesek információt lekérni a "külvilági" eseményekről, mivel nem tudnak HTTP kérvényeket küldeni. Ez a design szerinti külső információkra való támaszkodás veszélyeztetheti a biztonság és a decentralizáció szempontjából fontos konszenzust. +Az okosszerződések önmagukban nem képesek információt lekérni a „külvilági” eseményekről, mivel nem tudnak adatot szerezni a láncon kívüli forrásokból. Tehát nem tudnak válaszolni a világ történéseire. Ez a tervezett logikájuk. A külső információkra való támaszkodás veszélyeztetheti a biztonság és a decentralizáció szempontjából fontos konszenzust. + +Ugyanakkor fontos a blokklánchoz tartozó alkalmazásoknak, hogy láncon kívüli adatokat használhassanak. A megoldás az [orákulum](/developers/docs/oracles/), amely egy olyan eszköz, ami láncon kívüli adatokat kap fel és tesz elérhetővé az okosszerződések számára. + +Az okosszerződések másik korlátja a maximális méret. Legfeljebb 24 KB méretű lehet egy okosszerződés, különben nem lesz elegendő gáz a működéséhez. Ezt meg lehet kerülni a [gyémántminta](https://eips.ethereum.org/EIPS/eip-2535) használatával. -Az [orákulumok](/developers/docs/oracles/) használata megoldást nyújt ezen probléma megoldására. +## Több aláírásos szerződések {#multisig} -## Okosszerződés anyagok {#smart-contract-resources} +A több aláírásos szerződések olyan okosszerződésszámlák, amelyeknek több érvényes aláírás kell, hogy egy tranzakciót végrehajtsanak. Ez nagyon hasznos az egyetlen meghibásodási pont elkerülésére az olyan szerződéseknél, amelyek jelentős mennyiségű ethert vagy más tokent tartanak. A több aláírásos szerződések megosztják a szerződés­-végrehajtási és kulcskezelési felelősséget több fél között, és így nem kell attól tartani, hogy az egyetlen privát kulcs elveszik, és így a pénzeszközök elérhetetlenné válnak. Ebből az okból kifolyólag a több aláírásos szerződéseket egyszerű DAO irányításra is lehet használni. A több aláírásos szerződés N aláírást igényel M lehetséges elfogadható aláírásból (ahol N ≤ M, és M > 1) ahhoz, hogy végrehajtsa a tranzakciót. Gyakran használják a következő kombinációkat: `N = 3, M = 5` és `N = 4, M = 7`. A 4/7 több aláírásos szerződés négyet igényel a hét lehetséges érvényes aláírásból. Tehát a pénzeszközökhöz akkor is hozzáférnek, ha három aláírás elveszik. Ebben az esetben a kulcsokbirtokosok többségének egyet kell értenie és alá kell írnia ahhoz, hogy a szerződés végrehajtható legyen. -**OpenZeppelin Contracts -** **_Library biztonságos okosszerződés fejlesztéshez._** +## Okosszerződés-erőforrások {#smart-contract-resources} + +**OpenZeppelin Contracts –** **_Könyvtár a biztonságos okosszerződésfejlesztéshez._** - [openzeppelin.com/contracts/](https://openzeppelin.com/contracts/) - [GitHub](https://github.com/OpenZeppelin/openzeppelin-contracts) - [Közösségi Fórum](https://forum.openzeppelin.com/c/general/16) -**DappSys -** **_Biztonságos, egyszerű, flexibilis okosszerződés építőelemek._** - -- [Dappsys](https://dappsys.readthedocs.io/) -- [GitHub](https://github.com/dapphub/dappsys) - ## További olvasnivaló {#further-reading} -- [Okosszerződések: A blokklánc technológia, mely leváltja az ügyvédeket](https://blockgeeks.com/guides/smart-contracts/) _– Blockgeeks_ -- [Okosszerződés fejlesztés bevált gyakorlatai](https://yos.io/2019/11/10/smart-contract-development-best-practices/) _– Nov 10, 2019 - Yos Riady_ +- [Coinbase: Mi az az okosszerződés?](https://www.coinbase.com/learn/crypto-basics/what-is-a-smart-contract) +- [Chainlink: Mi az az okosszerződés?](https://chain.link/education/smart-contracts) +- [Video: Egyszerű magyarázat: Okosszerződések](https://youtu.be/ZE2HxTmxfrI) diff --git a/public/content/translations/hu/developers/docs/smart-contracts/languages/index.md b/public/content/translations/hu/developers/docs/smart-contracts/languages/index.md index a6614fba75f..7b1f8344dbf 100644 --- a/public/content/translations/hu/developers/docs/smart-contracts/languages/index.md +++ b/public/content/translations/hu/developers/docs/smart-contracts/languages/index.md @@ -1,42 +1,46 @@ --- -title: Okos szerződés nyelvek -description: Egy áttekintő és összehasonlítás a két fő okosszerződés nyelvről - Solidity és Vyper. +title: Okosszerződés nyelvek +description: Áttekintjük és összehasonlítjuk a két fő nyelvet, a Solidity-t és a Vypert, melyen az okosszerződések készülnek. lang: hu --- -Az Ethereum egyik nagyszerű szempontja, hogy az okosszerződéseket viszonylag fejlesztőbarát nyelveken lehet programozni. Ha már jártas vagy a Python vagy a JavaScript használatában, akkor találhatsz hasonló szintaxisú nyelvet. +Az Ethereum egyik kiváló jellemzője, hogy az okosszerződéseket viszonylag fejlesztőbarát nyelveken lehet programozni. Ha Ön járatos a Pythonban vagy bármilyen [kerek zárójeles nyelvben](https://wikipedia.org/wiki/List_of_programming_languages_by_type#Curly-bracket_languages), akkor találhat olyan nyelvet, melynek a szintaxisa ismerős lesz. A két legaktívabb és leginkább karbantartott nyelv: - Solidity - Vyper -A tapasztaltabb fejlesztők kipróbálhatják a Yul nyelvet, mely egy haladó nyelv az [Ethereum Virtuális Gépre](/developers/docs/evm/), vagy a Yul+-t, mely a Yul kiterjesztése. +A tapasztaltabb fejlesztők kipróbálhatják a Yul nyelvet, mely egy haladó nyelv az [Ethereum virtuális gépre](/developers/docs/evm/), vagy ennek kiterjesztését, melynek neve Yul+. + +Amennyiben Ön kíváncsi típus, és szeret olyan új nyelvek tesztelésében segíteni, amelyek még komoly fejlesztés előtt állnak, akkor fedezze fel a Fe-t, egy kialakulóban lévő okosszerződésnyelvet, amely még gyerekcipőben jár. ## Előfeltételek {#prerequisites} -A programozási nyelvek, különösen a JavaScript vagy a Python korábbi ismerete segíthet az okosszerződés nyelvekben mutatkozó különbségek értelmezésében. Azt is javasoljuk, hogy értsd meg az okosszerződést, mint fogalmat, mielőtt túl mélyre ásnál a nyelvi összehasonlításokban. [Bevezetés az okosszerződésekbe](/developers/docs/smart-contracts/). +A programozási nyelvek, különösen a JavaScript vagy a Python korábbi ismerete segíthet az okosszerződés nyelvekben mutatkozó különbségek értelmezésében. Javasoljuk, hogy először értse meg az okosszerződést, mint koncepciót, mielőtt túl mélyre ásna a nyelvi összehasonlításokban. [Bevezetés az okosszerződésekbe](/developers/docs/smart-contracts/). ## Solidity {#solidity} -- A C++, Python és a JavaScript gyakorolt rá hatást. -- Statikusan típusos (a változó típusa ismert a fordítási időben). -- Támogatja: - - Öröklődés (kiterjeszthetsz más szerződéseket). - - Könyvtárak (újrafelhasználható kódot írhatsz, melyet meghívhatsz különböző szerződésekből – mint a statikus függvényeket statikus osztályokban más objektumorientált programozási nyelveken). - - Komplex felhasználó által definiált típusok. +- Objektumorientált, magas szintű nyelv az okosszerződések telepítésére. +- Kerek zárójeles nyelv, amelyet a leginkább a C++ befolyásolt. +- Statikusan típusos (a változó típusa ismert az átfordítási időben). +- A következőket támogatja: + - Öröklődés (kiterjeszthet más szerződéseket). + - Könyvtárak (újrafelhasználható kódot írhat, melyet meghívhat különböző szerződésekből – mint a statikus függvényeket statikus osztályokban más objektumorientált programozási nyelveken). + - Komplex, felhasználó által definiált típusok. ### Fontos linkek {#important-links} - [Dokumentáció](https://docs.soliditylang.org/en/latest/) -- [Solidity Nyelv Portál](https://soliditylang.org/) -- [Solidity egy példa alapján](https://docs.soliditylang.org/en/latest/solidity-by-example.html) +- [Solidity Nyelvportál](https://soliditylang.org/) +- [Solidity példák alapján](https://docs.soliditylang.org/en/latest/solidity-by-example.html) - [GitHub](https://github.com/ethereum/solidity/) -- [Solidity Gitter Chatszoba](https://gitter.im/ethereum/solidity) -- [Cheat Sheet](https://reference.auditless.com/cheatsheet) +- [Solidity Gitter csevegőszoba](https://gitter.im/ethereum/solidity/), amely átirányít a [Solidity Matrix csevegőszobába](https://matrix.to/#/#ethereum_solidity:gitter.im) +- [Puska](https://reference.auditless.com/cheatsheet) - [Solidity Blog](https://blog.soliditylang.org/) +- [Solidity Twitter](https://twitter.com/solidity_lang) -### Példa szerződés {#example-contract} +### Példaszerződés {#example-contract} ```solidity // SPDX-License-Identifier: GPL-3.0 @@ -77,33 +81,40 @@ contract Coin { } ``` -Ez a példa adhat egy benyomást arról, hogyan néz ki a Solidity szerződés szintaxis. A függvények és a változók részletesebb leírásáért, [nézd meg a dokumentációt](https://docs.soliditylang.org/en/latest/contracts.html). +Ez a példa azt mutathatja meg Önnek, hogyan néz ki a Solidity szerződés szintaxisa. A függvények és a változók részletesebb leírásáért [tekintse meg a dokumentációt](https://docs.soliditylang.org/en/latest/contracts.html). ## Vyper {#vyper} - Pythonikus programozási nyelv - Erősen típusos - Kicsi és érthető fordító kód -- Szándékosan kevesebb elemmel rendelkezik, mint a Solidity azzal a céllal, hogy a szerződések biztonságosabbak és könnyebben auditálhatóak legyenek. A Vyper nem támogatja a: +- Hatékony bájtkód-generálás +- Szándékosan kevesebb elemmel rendelkezik, mint a Solidity, azzal a céllal, hogy a szerződések biztonságosabbak és könnyebben auditálhatóak legyenek. A Vyper nem támogatja a következőket: - Módosítókat (modifier) - Öröklést - - Soron belüli assembly-t - - Függvény overloading-ot - - Operátor overloading-ot - - Rekurzív hívást - - Végtelen hosszú ciklusokat - - Bináris fix pontokat + - Soron belüli assembly + - Függvénytúlterhelés + - Operátortúlterhelés + - Rekurzív hívás + - Végtelen hosszú ciklusok + - Bináris fix pontok -További információért, [olvasd el a Vyper indoklást](https://vyper.readthedocs.io/en/latest/index.html). +További információkért [tekintse meg a Vyper magyarázatát](https://vyper.readthedocs.io/en/latest/index.html). ### Fontos linkek {#important-links-1} - [Dokumentáció](https://vyper.readthedocs.io) -- [Vyper egy példa alapján](https://vyper.readthedocs.io/en/latest/vyper-by-example.html) +- [Vyper példa alapján](https://vyper.readthedocs.io/en/latest/vyper-by-example.html) +- [Még több Vyper példák alapján](https://vyper-by-example.org/) - [GitHub](https://github.com/vyperlang/vyper) -- [Vyper Gitter Chatszoba](https://gitter.im/vyperlang/community) +- [A Vyper-közösség Discord-csevegése](https://discord.gg/SdvKC79cJk) - [Cheat Sheet](https://reference.auditless.com/cheatsheet) -- [2020. Január 8. frissítés](https://blog.ethereum.org/2020/01/08/update-on-the-vyper-compiler) +- [Okosszerződés-fejlesztési keretrendszerek és eszközök Vyperre](/developers/docs/programming-languages/python/) +- [VyperPunk – tanulja meg a Vyper okosszerződéseket biztosítását és meghackelését](https://github.com/SupremacyTeam/VyperPunk) +- [VyperExamples – Példák a Vyper sebezhetőségére](https://www.vyperexamples.com/reentrancy) +- [Vyper Hub fejlesztéshez](https://github.com/zcor/vyper-dev) +- [Példák a Vyper legjobb okosszerződéseire](https://github.com/pynchmeister/vyper-greatest-hits/tree/main/contracts) +- [A Vyper által gondozott kiváló források](https://github.com/spadebuilders/awesome-vyper) ### Példa {#example} @@ -166,9 +177,9 @@ def withdraw(): # a kedvezményezettnek. @external def endAuction(): - # Jó gyakorlat a szerződéssel interakcióba lépő függvényeket - # (vagyis függvény hívásokat, vagy küldést végző függvények) - # három fázisra osztani: + # It is a good guideline to structure functions that interact + # with other contracts (i.e. they call functions or send ether) + # into three phases: # 1. feltételek ellenőrzése # 2. akció végrehajtás (potenciálisan megváltoztatja a feltételeket) # 3. interakció más szerződésekkel @@ -192,23 +203,23 @@ def endAuction(): send(self.beneficiary, self.highestBid) ``` -Ez a példa adhat egy benyomást arról, hogyan néz ki a Vyper szerződés szintaxis. A függvények és a változók részletesebb leírásáért, [nézd meg a dokumentációt](https://vyper.readthedocs.io/en/latest/vyper-by-example.html#simple-open-auction). +Ez a példa megmutathatja Önnek, hogyan néz ki a Vyper szerződés szintaxisa. A függvények és a változók részletesebb leírásáért [tekintse meg a dokumentációt](https://vyper.readthedocs.io/en/latest/vyper-by-example.html#simple-open-auction). ## Yul és Yul+ {#yul} -Ha neked még új az Ethereum és nem programoztál okosszerződés nyelveken, akkor azt javasoljuk, hogy kezdj először a Solidity-vel és a Vyper-rel. Csak akkor kezdj bele a Yul-ba vagy a Yul+-ba, ha már ismered az okosszerződés biztonsági praktikákat és az EVM-mel kapcsolatos munka részleteit. +Ha Önnek új az Ethereum és nem programozott okosszerződésnyelveken, akkor azt javasoljuk, hogy kezdjen először a Solidity-vel és a Vyperrel. Csak akkor kezdjen bele a Yul vagy Yul+ nyelvekbe, ha már ismeri az okosszerződésre vonatkozó biztonsági gyakorlatokat és az EVM-mel kapcsolatos munka részleteit. **Yul** - Haladó nyelv Ethereumra. -- Támogatja az [EVM-et](/developers/docs/evm) és az [eWASM-t](https://github.com/ewasm), ami egy Ethereummal fűszerezett WebAssembly, amit a két platform közös nevezőjének terveztek. -- Jó cél a magas szintű optimizációs szinteknek, melyek az EVM-ből és az eWASM-ból is tudnak profitálni. +- Támogatja az [EVM-et](/developers/docs/evm) és az [Ewasm-ot](https://github.com/ewasm), amely egy Ethereummal fűszerezett WebAssembly, és amelyet a két platform közös nevezőjének terveztek. +- Jó cél a magas szintű optimizációs szinteknek, melyek az EVM és Ewasm platformokból egyaránt tudnak profitálni. **Yul+** -- A Yul egy alacsony szintű, nagy hatékonyságú kiterjesztése. -- Eredetileg az [optimista összegző](/developers/docs/layer-2-scaling/#rollups-and-sidechains) szerződésre lett kifejlesztve. -- A Yul+-ra úgy is tekinthetünk, mint a Yul-nak egy kísérleti fejlesztési javaslatára, melyhez új funkciók tartoznak. +- A Yul alacsony szintű, nagy hatékonyságú kiterjesztése. +- Eredetileg az [optimista összesítéses](/developers/docs/scaling/optimistic-rollups/) szerződésként fejlesztették ki. +- A Yul+ egy kísérleti fejlesztési javaslatként is tekinthető, melyhez új funkciók tartoznak. ### Fontos linkek {#important-links-2} @@ -219,7 +230,7 @@ Ha neked még új az Ethereum és nem programoztál okosszerződés nyelveken, a ### Példa szerződés {#example-contract-2} -Az alábbi egyszerű példa egy hatvány függvényt implementál. A `solc --strict-assembly --bin input.yul` használatával lehet befordítani. Ezt a példát az input.yul fájlnak kell tartalmaznia. +Az alábbi egyszerű példa egy hatványfüggvényt implementál. A `solc --strict-assembly --bin input.yul` használatával lehet befordítani. Ezt a példát az input.yul fájlnak kell tartalmaznia. ``` { @@ -240,36 +251,74 @@ Az alábbi egyszerű példa egy hatvány függvényt implementál. A `solc --str } ``` -Ha már sok tapasztalatod van az okosszerződésekkel, akkor a teljes ERC20 implementáció a Yul-ban [itt érhető el](https://solidity.readthedocs.io/en/latest/yul.html#complete-erc20-example). +Ha már nagy tapasztalatra tett szert az okosszerződésekkel kapcsolatban, akkor a teljes ERC20 implementáció Yul-ban [itt érhető el](https://solidity.readthedocs.io/en/latest/yul.html#complete-erc20-example). + +## Fe {#fe} + +- Statikusan típusos nyelv az Ethereum virtuális géphez (EVM). +- A Python és a Rust inspirálta. +- Lényege, hogy könnyen tanulható, még azoknak a fejlesztőknek is, akiknek új az Ethereum ökoszisztémája. +- A Fe fejlesztése még nagyon korai szakaszban tart, az alfa kiadása 2021. januárban történt. + +### Fontos linkek {#important-links-3} + +- [GitHub](https://github.com/ethereum/fe) +- [Fe bejelentés](https://snakecharmers.ethereum.org/fe-a-new-language-for-the-ethereum-ecosystem/) +- [Fe 2021-es útiterv](https://notes.ethereum.org/LVhaTF30SJOpkbG1iVw1jg) +- [Fe Discord-csevegés](https://discord.com/invite/ywpkAXFjZH) +- [Fe Twitter](https://twitter.com/official_fe) + +### Példa szerződés {#example-contract-3} + +Ez a példa egy egyszerű szerződés Fe nyelven telepítve. + +``` +type BookMsg = bytes[100] + +contract GuestBook: + pub guest_book: map + + event Signed: + book_msg: BookMsg + + pub def sign(book_msg: BookMsg): + self.guest_book[msg.sender] = book_msg + + emit Signed(book_msg=book_msg) + + pub def get_msg(addr: address) -> BookMsg: + return self.guest_book[addr].to_mem() + +``` ## Hogyan válasszunk {#how-to-choose} Mint minden más programozási nyelvnél, itt is leginkább a megfelelő eszköz kiválasztása a megfelelő munkához, valamint a személyes preferenciák döntenek. -Íme néhány szempont, amelyet érdemes figyelembe venni, ha még nem próbáltad meg egyik nyelvet sem: +Íme néhány szempont, amelyet érdemes figyelembe venni, ha még nem próbálta egyik nyelvet sem: ### Mi a jó a Solidity-ben? {#solidity-advantages} -- Ha kezdő vagy, akkor sok útmutató és tanulási anyag áll rendelkezésedre. További anyagért látogasd meg [Tanulás kódolással](/developers/learning-tools/) szekciót. -- Jó fejlesztői eszközök érhetők el. -- A Solidity-nek nagy a fejlesztői közössége, ami azt jelenti, hogy nagy valószínűséggel gyorsan választ kapsz majd a kérdéseidre. +- A kezdőknek sok útmutató és tanulási anyag áll rendelkezésükre. További anyagért látogasson el a [Tanulás kódolással](/developers/learning-tools/) című részhez. +- Remek fejlesztői eszközök érhetők el. +- A Solidity-nek kiterjedt a fejlesztői közössége, ami azt jelenti, hogy nagy valószínűséggel gyorsan választ kap a kérdéseire. -### Mi a jó a Vyper-ben? {#vyper-advatages} +### Mi a jó a Vyperben? {#vyper-advatages} -- Nagyszerű módszer az okosszerződéseket írni kívánó Python fejlesztők számára. -- A Vyper kevesebb funkcióval rendelkezik, így nagyszerűen lehet az ötleteidből gyorsan prototípust készíteni. -- A Vyper célja, hogy könnyen auditálható és emberek számára olvasható legyen. +- Nagyszerű módszer a Python fejlesztők számára az első okosszerződések megírására. +- A Vyper kevesebb funkcióval rendelkezik, így kiválóan alkalmas arra, hogy az ötleteiből gyorsan prototípust készítsen. +- A Vyper célja, hogy könnyen auditálható és az emberek számára olvasható legyen. -### Mi a jó a Yul-ban és a Yul+-ban? {#yul-advantages} +### Mi a jó a Yul és a Yul+ nyelvekben? {#yul-advantages} - Egyszerűsített és funkcionális alacsony szintű nyelv. -- Közelebb enged a nyers EVM-hez, így könnyebben tudod a szerződéseid gáz felhasználását optimálni. +- Közelebb enged a nyers EVM-hez, így Ön könnyebben tudja a szerződések gázfelhasználását optimalizálni. -## Nyelv összehasonlítások {#language-comparisons} +## Nyelv-összehasonlítások {#language-comparisons} -Az alapvető szintaxis, szerződés életciklus, interfészek, operátorok, adatszerkezetek, függvények, control flow és további szempontok alapján történő összehasonlításért olvasd el a [cheatsheet by Auditless](https://reference.auditless.com/cheatsheet/) cikket +Az alapvető szintaxis, szerződés-életciklus, interfészek, operátorok, adatszerkezetek, függvények, control flow és további szempontok alapján történő összehasonlításért olvassa el a [Puska az Auditless-től](https://reference.auditless.com/cheatsheet/) című cikket ## További olvasnivaló {#further-reading} -- [Solidity szerződés könyvtár az OpenZeppelintől](https://docs.openzeppelin.com/contracts) +- [Solidity szerződéskönyvtár az OpenZeppelintől](https://docs.openzeppelin.com/contracts) - [Solidity egy példa alapján](https://solidity-by-example.org) diff --git a/public/content/translations/hu/developers/docs/smart-contracts/libraries/index.md b/public/content/translations/hu/developers/docs/smart-contracts/libraries/index.md index 74de0385114..6fb27ebd36b 100644 --- a/public/content/translations/hu/developers/docs/smart-contracts/libraries/index.md +++ b/public/content/translations/hu/developers/docs/smart-contracts/libraries/index.md @@ -56,7 +56,7 @@ Egy másik népszerű példa a [SafeMath](https://docs.openzeppelin.com/contract Hogy elősegítsük az [összeilleszthetőséget és az interoperabilitást](/developers/docs/smart-contracts/composability/), az Ethereum közösség számos szabványt vezetett be **ERC-k** formájában. Többet olvashatsz róluk a [szabványok](/developers/docs/standards/) részben. -Amikor egy ERC-t szeretnél betenni a szerződésedbe, célszerű a standard megvalósításokat keresni, ahelyett, hogy megpróbálnád a sajátodat bevezetni. Számos okosszerződés könyvtár tartalmazza a legnépszerűbb ERC-k megvalósításait. Például a mindenütt jelen levő [ERC20 felcserélhető token szabvány](/developers/tutorials/understand-the-erc-20-token-smart-contract/) megtalálható a [HQ20-ben](https://github.com/HQ20/contracts/blob/master/contracts/token/README.md), [DappSys-ben](https://github.com/dapphub/ds-token/) és az [OpenZeppelinen](https://docs.openzeppelin.com/contracts/3.x/erc20). Ezenkívül, egyes ERC-k kanonikus megvalósításokat is biztosítanak az ERC részeként. +Amikor egy ERC-t szeretnél betenni a szerződésedbe, célszerű a standard megvalósításokat keresni, ahelyett, hogy megpróbálnád a sajátodat bevezetni. Számos okosszerződés könyvtár tartalmazza a legnépszerűbb ERC-k megvalósításait. Például a mindenütt jelen levő [ERC20 felcserélhető tokenszabvány](/developers/tutorials/understand-the-erc-20-token-smart-contract/) megtalálható a [HQ20](https://github.com/HQ20/contracts/blob/master/contracts/token/README.md), [DappSys](https://github.com/dapphub/ds-token/) és [OpenZeppelin](https://docs.openzeppelin.com/contracts/3.x/erc20) platformon. Ezenkívül, egyes ERC-k kanonikus megvalósításokat is biztosítanak az ERC részeként. Érdemes megemlíteni, hogy egyes ERC-k nem önállóak, hanem kiegészítenek más ERC-ket. Például az [ERC2612](https://eips.ethereum.org/EIPS/eip-2612) kiterjeszti az ERC20-as szabványt a használhatóság javítása érdekében. @@ -102,11 +102,16 @@ Végül, amikor eldöntöd, hogy felveszel-e egy könyvtárat, vedd figyelembe a - [GitHub](https://github.com/HQ20/contracts) +**thirdweb Solidity SDK –** **_Olyan eszközöket biztosít, melyekkel hatékonyan lehet személyre szabott okosszerződéseket létrehozni_** + +- [Dokumentáció](https://portal.thirdweb.com/solidity/) +- [GitHub](https://github.com/thirdweb-dev/contracts) + ## Kapcsolódó útmutatók {#related-tutorials} -- [Biztonsági megfontolások Ethereum fejlesztőknek](/developers/docs/smart-contracts/security/) _– Egy biztonsági megfontolásokról szóló útmutató okosszerződés fejlesztéshez könyvtár használattal._ -- [Az ERC-20 token okosszerződés megértése](/developers/tutorials/understand-the-erc-20-token-smart-contract/) _-Útmutató az ERC20 szabványról több könyvtáron keresztül._ +- [Security considerations for Ethereum developers](/developers/docs/smart-contracts/security/) _– Egy biztonsági megfontolásokról szóló útmutató okosszerződés-fejlesztéshez könyvtárhasználattal._ +- [Az ERC-20 tokenes okosszerződés megértése](/developers/tutorials/understand-the-erc-20-token-smart-contract/) _-Útmutató az ERC20 szabványról több könyvtáron keresztül._ ## További olvasnivaló {#further-reading} -_Ismersz olyan közösségi anyagot, amely segített neked? Módosítsd az oldalt és add hozzá!_ +_Van olyan közösségi erőforrása, amely segített Önnek? Szerkessze ezt az oldalt, és adja hozzá!_ diff --git a/public/content/translations/hu/developers/docs/smart-contracts/security/index.md b/public/content/translations/hu/developers/docs/smart-contracts/security/index.md new file mode 100644 index 00000000000..37c84656cdb --- /dev/null +++ b/public/content/translations/hu/developers/docs/smart-contracts/security/index.md @@ -0,0 +1,555 @@ +--- +title: Okosszerződés biztonság +description: Útmutató a biztonságos Ethereum-okosszerződések építéséhez +lang: hu +--- + +Az okosszerződések rendkívüli módon rugalmasak és képesek nagy mennyiségű értéket és adatot irányítani, miközben egy megváltoztathatatlan logika alapján, a blokkláncra telepített kód szerint futnak. Ezáltal létrejött a bizalmat nem igénylő és decentralizált alkalmazások élénk ökoszisztémája, mely számos előnyt kínál a hagyományos rendszerekkel szemben. Emellett lehetőséget is jelentenek a támadók számára, akik abból akarnak nyereséget szerezni, hogy kihasználják az okosszerződések gyenge pontjait. + +A nyilvános blokkláncok, mint az Ethereum, tovább bonyolítják az okosszerződések biztosításának problémáját. A telepített szerződéskód _általában_ nem módosítható, hogy ezzel a biztonsági kockázatokat elkerüljék, eközben az okosszerződésekből ellopott eszközöket rendkívül nehéz lekövetni és a legtöbb esetben visszaszerezhetetlenek a megváltoztathatatlanság miatt. + +Bár a számok változnak, de úgy becsülik, hogy a biztonsági hibák miatt az okosszerződésből ellopott vagy onnan elvesztett értékek teljes összege könnyen meghaladhatja az 1 milliárd dollárt is. Ez magába foglal olyan nagy horderejű incidenseket is, mint amilyen a [DAO-hackelés volt](https://hackingdistributed.com/2016/06/18/analysis-of-the-dao-exploit/) (3,6 millió ETH-t loptak, ami meghaladja az 1 milliárd dollárt mai áron), [Parity több aláírásos tárca hackelését](https://www.coindesk.com/30-million-ether-reported-stolen-parity-wallet-breach) (30 millió USD-t veszett el), és a [Parity befagyasztott tárcaproblémát](https://www.theguardian.com/technology/2017/nov/08/cryptocurrency-300m-dollars-stolen-bug-ether) (300 millió USD-nyi ETH örökre elérhetetlenné vált). + +Ezek az esetek kötelezővé teszik a fejlesztők számára, hogy folyamatosan azon dolgozzanak, hogy az okosszerződések biztonságosak, robusztusak és ellenállók legyenek. Az okosszerződésbiztonság komoly téma, melyet minden fejlesztőnek a maga érdekében meg kell ismerni. Ez az útmutató lefedi azokat a biztonsági megfontolásokat, amelyek az Ethereum-fejlesztőknek fontosak, és forrásokat tár fel az okosszerződésbiztonság továbbfejlesztésére. + +## Előfeltételek {#prerequisites} + +Tisztában kell lennie az [okosszerződés-fejlesztés alapjaival](/developers/docs/smart-contracts/), mielőtt a biztonsági kérdésekkel foglalkozna. + +## Iránymutatások a biztonságos Ethereum-okosszerződések építéséhez {#smart-contract-security-guidelines} + +### 1. Tervezzen megfelelő hozzáférés-szabályozást {#design-proper-access-controls} + +Az okosszerződésekben a `public` (publikus) vagy `external` (külső) jelölésű függvényeket bármelyik külső tulajdonú számla (EOA) vagy szerződésszámla meghívhatja. A függvényeket szükséges nyilvánossá tenni, ha Ön azt akarja, hogy mások interakcióba lépjenek a szerződésével. A `private` (privát) jelölésű függvényeket csak az okosszerződésen belüli függvények hívhatják meg, külső számlák nem. Problémás lehet az összes hálózati résztvevőnek hozzáférést adni bizonyos szerződésfüggvényekhez, főleg ha így bárki végrehajthat fontos műveleteket (pl. új tokenek kibocsátása). + +Ahhoz, hogy megakadályozzuk az okosszerződés függvényeinek nem hitelesített használatát, biztonságos hozzáférés-szabályozásra van szükség. A hozzáférés-szabályozás mechanizmusai az okosszerződés bizonyos függvényeinek használatát a jóváhagyott entitások csoportjára, például a szerződés kezeléséért felelős számlákra korlátozzák. A **tulajdonosi minta** és a **szerepalapú irányítás** két hasznos minta az okosszerződésben beállítható hozzáférés-szabályozásra: + +#### Tulajdonosi minta (ownable pattern) {#ownable-pattern} + +A tulajdonosi mintában beállítható egy cím, mint a szerződés „tulajdonosa” a szerződés létrehozása folyamán. A védett függvényekhez hozzárendelnek egy `OnlyOwner`-módosítót, így a szerződés azonosítani fogja az identitását a hívást végző címnek, mielőtt végrehajtaná a függvényt. A védett függvények meghívását csak akkor engedi, ha az a szerződés tulajdonosának címéről érkezik, különben elveti azt, megakadályozva az akaratlan hozzáférést. + +#### Szerepalapú hozzáférés-szabályozás {#role-based-access-control} + +Ha az okosszerződésben egyetlen címet regisztrálnak, mint `Owner` (tulajdonos), az a centralizáció kockázatát hordozza és felmerül az egyetlen meghibásodási pont lehetősége. Ha a tulajdonos számlakulcsa nyilvánossá válik, akkor a támadók hozzáférhetnek ehhez a tulajdonolt szerződéshez. Emiatt jobb opció lehet a szerepalapú hozzáférés-szabályozás mintája, ahol több adminisztratív számla van. + +A szerepalapú hozzáférés-szabályozásban a fontos függvényekhez való hozzáférést elosztják a megbízott résztvevők között. Például az egyik számla felel a tokenek kibocsátásáért, miközben egy másik számla frissítéseket végez vagy megállítja a szerződést. A decentralizált hozzáférés-szabályozás ily módon kivédi az egyetlen meghibásodási pont lehetőségét és csökkenti a felhasználók részéről igényelt bizalmat. + +##### Több aláírásos tárca használata + +A biztonságos hozzáférés-szabályozásra egy másik megközelítés a [több aláírásos számla](/developers/docs/smart-contracts/#multisig) használata, ami a szerződést kezeli. Az általános külső tulajdonú számlához (EOA) képest a több aláírásos számlákat több entitás birtokolja, és a tranzakciók végrehajtásához egy adott számú aláírásra van szükség, például 5-ből 3-ra. + +Ennek használata egy újabb biztonsági réteget vezet be, mivel a szerződésen végrehajtandó akciókba több félnek is bele kell egyeznie. Ez különösen hasznos, ha a tulajdonosi mintát (ownable pattern) kell használni, mert még nehezebb a támadó vagy egy rosszhiszemű belső fél számára, hogy rossz célokra használja fel a fontos szerződésfüggvényeket. + +### 2. Használja a require(), assert() és revert() parancsokat, hogy óvja a szerződés működését {#use-require-assert-revert} + +Amint az okosszerződés telepítésre kerül a blokkláncon, bárki meg tudja hívni a benne lévő publikus függvényeket. Mivel nem lehet tudni előre, hogy a külső tulajdonú számlák hogyan fognak interakciókat folytatni a szerződéssel, ezért ideális esetben belső óvintézkedéseket kell tenni a problémás működésekkel kapcsolatban a telepítés előtt. Az okosszerződésben elő lehet írni a megfelelő viselkedést a `require()`, `assert()` és `revert()` parancsokkal, hogy ha bizonyos feltételek nem teljesülnek, akkor leálljon és visszaforgassa a változásokat. + +**`require()`**: a `require` (szükséges) parancsot a függvények elején kell meghatározni, és biztosítja, hogy a megadott feltételek teljesülnek, mielőtt a függvény végrehajtásra kerül. A `require` parancs révén validálni lehet a felhasználó által adott adatokat, ellenőrizhetők az állapotváltozók, vagy hitelesíteni lehet a meghívó számla identitását, mielőtt a függvény elindulna. + +**`assert()`**: az `assert()` (állítás) parancsot a belső hibák felderítésére használják, illetve a kódban lévő „konstansok” megsértését ellenőrzik ezáltal. A konstans egy logikai állítás a szerződés státuszáról, amelynek teljesülnie kell minden függvénymeghívás esetén. Például egy tokenszerződés maximális teljes kínálata vagy egyenlege. Az `assert()` használata biztosítja, hogy a szerződés nem kerül sebezhető státuszba, és ha mégis, akkor az állapotváltozók visszaállnak a korábbi értékekre. + +**`revert()`**: a `revert()` (visszatér) kódot egy if-else parancsban használhatjuk, ami egy kivételt ad, ha a szükséges feltételek nem teljesülnek. Az alábbi példaszerződés a `revert()` kódot arra használja, hogy védje a függvények végrehajtását: + +``` +pragma solidity ^0.8.4; + +contract VendingMachine { + address owner; + error Unauthorized(); + function buy(uint amount) public payable { + if (amount > msg.value / 2 ether) + revert("Not enough Ether provided."); + // Perform the purchase. + } + function withdraw() public { + if (msg.sender != owner) + revert Unauthorized(); + + payable(msg.sender).transfer(address(this).balance); + } +} +``` + +### 3. Tesztelje az okosszerződéseket és ellenőrizze a kód helyességét {#test-smart-contracts-and-verify-code-correctness} + +Az [Ethereum virtuális gépen](/developers/docs/evm/) érvényes kódváltoztathatatlanság miatt az okosszerződéseknél jelentős minőség-ellenőrzésre van szükség a fejlesztési időszakban. Tesztelje szerződését kiterjedt módon, és figyelje meg, hogy kap-e váratlan eredményeket, így fejlesztheti a biztonságot és megvédheti a felhasználókat hosszú távon is. + +Ennek megszokott módja, hogy kicsi egységteszteket ír tesztadattal, melyet a szerződés a felhasználóktól kapna. Az [egységtesztelés](/developers/docs/smart-contracts/testing/#unit-testing) arra jó, hogy bizonyos függvények működését kipróbálja, és így biztosítja, hogy az okosszerződés az elvárt módon működik. + +Sajnos az egységtesztelés minimálisan növeli az okosszerződés biztonságát, ha azt izolációban használják. Az egységteszt megmutathatja, hogy egy függvény megfelelően működik-e a tesztadatokra, de csak annyira hatásos, amennyire jó tesztet írnak hozzá. Nehéz beazonosítani a kimaradt eseteket és sebezhetőségeket, amelyek kompromittálhatják az okosszerződés biztonságát. + +Jobb megközelítés az egységtesztelés tulajdonságalapú teszteléssel (property-based testing) való kombinálása, amely [statikus és dinamikus elemzést](/developers/docs/smart-contracts/testing/#static-dynamic-analysis) használ. A statikus elemzés olyan alacsony szintű reprezentációkon alapul, mint amilyen a [kontrollfolyamat-grafikon](https://en.wikipedia.org/wiki/Control-flow_graph) és az [absztrakt szintaxisfák](https://deepsource.io/glossary/ast/), hogy elemezze az elérhető programstátuszokat és végrehajtási utakat. A dinamikus elemzési technikák, mint a fuzzing, a szerződéskódot véletlenszerű értékekkel hajtják végre, hogy feltárják azokat a működéseket, amelyek nem felelnek meg a biztonsági tulajdonságoknak. + +A [formális ellenőrzés (formal verification)](/developers/docs/smart-contracts/formal-verification) egy másik technika az okosszerződések biztonsági tulajdonságainak igazolására. A megszokott teszteléshez képest a formális ellenőrzés képes egyértelműen bizonyítani, hogy nincsenek hibák az okosszerződésben. Ezt úgy éri el, hogy egy formális specifikációt hoz létre, amely a kívánt biztonsági tulajdonságokat rögzíti, majd bizonyítja, hogy a szerződések formális modellje megfelel ennek a specifikációnak. + +### 4. Kérjen egy független átvizsgálást a kódjára {#get-independent-code-reviews} + +Miután tesztelte a szerződését, kérjen meg másokat is, hogy ellenőrizzék le a kódot a lehetséges biztonsági problémák szempontjából. A tesztelés nem tárja fel az okosszerződés minden hibáját, de egy független vizsgálat megnöveli annak valószínűségét, hogy kiderülnek a sebezhető pontok. + +#### Auditok {#audits} + +Az okosszerződés auditálása az egyik módja a független kódvizsgálatnak. Az auditorok fontos szerepet játszanak abban, hogy az okosszerződések biztonságosak legyenek és ne legyenek bennük minőségi és tervezési hibák. + +Mindazonáltal fontos megjegyezni, hogy az audit nem old meg minden problémát. Az okosszerződés-auditok nem tárnak fel minden egyes hibát, és a terv általában egy második körös ellenőrzés, hogy azokat a problémákat kiszúrja, ami a fejlesztőknek nem vált világossá a fejlesztés és tesztelés során. Kövesse a [bevált gyakorlatokat az auditorokkal való munka kapcsán](https://twitter.com/tinchoabbate/status/1400170232904400897), mint amilyen a kód megfelelő dokumentálása és a sorokhoz kapcsolt kommentek, amelyek révén az okosszerződés-auditból a lehető legtöbb előnyt ki lehet hozni. + +#### Hibavadászatok {#bug-bounties} + +Egy másik megoldás lehet a hibavadászat-program felállítása, amellyel külsődleges kódvizsgálatot lehet végezni. A hibavadászat pénzügyi jutalommal jár olyan egyéneknek (általában fehérkalapos hackereknek), akik sebezhető pontokat fedeznek fel az alkalmazásban. + +Ez a jutalom a hibavadászatért, ha megfelelően használják, kellő motivációt jelenthet a hackerközösség bizonyos tagjai számára, hogy átnézzék az Ön kódját is kritikus hibákat keresve. Valós példa lehet a „végtelen mennyiségű pénz hiba”, ami egy támadónak lehetővé teszi, hogy határtalan mennyiségű ethert hozzon létre az [Optimism-mal](https://www.optimism.io/), egy [második blokkláncréteg (L2)](/layer-2/) protokollal az Ethereumon. Szerencsére egy fehérkalapos hacker [felfedezte a hibát](https://www.saurik.com/optimism.html) és értesítette a csapatot, [amelyet jelentős pénzösszeggel jutalmaztak](https://cryptoslate.com/critical-bug-in-ethereum-l2-optimism-2m-bounty-paid/). + +Hasznos stratégia lehet, ha a kifizetés összegét arányosan kezelik a hiba által veszélybe kerülő pénzeszközök értékével. Ezt „[skálázódó hibavadászatnak](https://medium.com/immunefi/a-defi-security-standard-the-scaling-bug-bounty-9b83dfdc1ba7)” is nevezhetjük, ami pénzügyi motivációt ad az egyéneknek, hogy inkább feltárják a gyenge pontokat és ne kihasználják azokat. + +### 5. Kövesse a bevált gyakorlatokat az okosszerződésfejlesztés során {#follow-smart-contract-development-best-practices} + +Az auditok és hibavadászatok nem csökkentik az Ön felelősségét, hogy jó minőségű kódot írjon. A megfelelő okosszerződés-biztonság azzal kezdődik, hogy megfelelő tervezési és fejlesztési folyamatokat követ: + +- Tárolja az összes kódot egy verziókövető rendszerben, mint amilyen a git + +- Minden kódmódosítást pull requesteken (változtatási kérelem) keresztül végezzen + +- A pull requesteknek legalább egy független ellenőrzője legyen – ha Ön egyedül dolgozik egy projekten, akkor fontolja meg, hogy más fejlesztőkkel összefogva elvégzik egymás számára a kódellenőrzéseket + +- Használjon [fejlesztői környezetet](/developers/docs/frameworks/) az okosszerződések tesztelésére, átfordítására és telepítésére + +- Futtassa le a kódját olyan alapvető kódelemző eszközökön, mint a Mythril és a Slither. Ideális esetben ezt minden egyes pullrequest-beolvasztás előtt meg kell tenni, majd összehasonlítani az eredmények különbségeit + +- Biztosítsa, hogy a kód hibák nélkül kerül átfordításra, és a Solidity átfordító nem ad figyelmeztetéseket + +- Dokumentálja megfelelően a kódot (a [NatSpec](https://solidity.readthedocs.io/en/develop/natspec-format.html) használatában), és magyarázza el a részleteket a szerződés architektúrájáról egyszerű nyelven. Ezáltal könnyebb lesz másoknak auditálni és ellenőrizni a kódot. + +### 6. Vezessen be komoly leállást követő helyreállítási tervet {#implement-disaster-recovery-plans} + +A biztonságos hozzáférés-szabályozási terv, a függvénymódosítók bevezetése és más javaslatok fejlesztik az okosszerződés biztonságát, de nem zárhatják ki a lehetőségét egy ártó szándékú támadásnak. A biztonságos okosszerződés építése megkívánja azt is, hogy „felkészüljön a hibára”, és kidolgozzon egy tervet, amely alapján hatásosan tud reagálni egy támadásra. Egy megfelelő hibát vagy leállást követő helyreállítási terv (disaster recovery plan) a következő komponensek néhány vagy összes elemét tartalmazza: + +#### Szerződésfrissítések {#contract-upgrades} + +Miközben az Ethereum-okosszerződések alapvetően megváltozhatatlanok, mégis el lehet érni egy bizonyos fokú változtathatóságot a frissítési minták alkalmazásával. A szerződések frissítése elkerülhetetlen ha egy kritikus hiba miatt a régi szerződés használhatatlan lesz, és az új logika bevezetése a legjobb megoldás. + +A szerződésfrissítési mechanizmusok másképp működnek, de a „proxyminta” az egyik legnépszerűbb megközelítés az okosszerződések frissítésére. A proxyminta _két_ szerződésre választja szét az alkalmazás státuszát és logikáját. Az első szerződés (a proxyszerződés) tárolja az állapotváltozókat (például a felhasználó egyenlegét), miközben a második szerződés (a logikaszerződés) tartalmazza a szerződés függvényeinek végrehajtási kódját. + +A számlák a proxyszerződéssel kerülnek interakcióba, amely elküldi a függvénymeghívásokat a logikaszerződésbe a [`delegatecall()`](https://docs.soliditylang.org/en/v0.8.16/introduction-to-smart-contracts.html?highlight=delegatecall#delegatecall-callcode-and-libraries) kódot, egy alacsony szintű meghívást használva. A `delegatecall()` a megszokott üzenethíváshoz képest biztosítja, hogy a kód a logikaszerződés címén lefut a meghívó szerződés kontextusában. Tehát a logikaszerződés mindig a proxy tárhelyére ír (nem a sajátjába) és megőrzi a `msg.sender` és `msg.value` eredeti értékeit. + +Ahhoz, hogy hívást lehessen delegálni a logikai szerződésnek, a címét el kell tárolni a proxyszerződés tárhelyén. Tehát a szerződés logikáját úgy lehet frissíteni, hogy egy új logikai szerződést kell telepíteni és eltárolni az új címet a proxyszerződésben. Mivel az ezt követő hívások a proxyszerződés felől automatikusan az új logikaszerződéshez kerülnek átirányításra, a kód változtatása nélkül végülis „frissítésre” kerül a szerződés. + +[Bővebben a szerződések frissítéséről](/developers/docs/smart-contracts/upgrading/). + +#### Vészleállítások {#emergency-stops} + +Ahogy már említettük, sem a kiterjedt audit, sem a tesztelés nem képes felfedezni az okosszerződés összes hibáját. Ha a telepítés után sebezhető pont jelenik meg a kódjában, akkor azt nem lehet kijavítani, mert a szerződés címén futó kód megváltoztathatatlan. Emellett a frissítési mechanizmust (például a proxymintákat) időbe telik bevezetni (gyakran több jóváhagyást is igényelnek), ami csak időt ad a támadóknak, hogy több kárt okozzanak. + +A radikális megoldás egy „vészleállítás” bevezetése, ami blokkolja azokat a hívásokat, melyek a szerződés sérülékeny függvényeire vonatkoznak. A vészleállítás általában a következő komponensekből áll: + +1. Egy globális boolean változó, mely jelzi, ha az okosszerződés leállított állapotban van vagy nem. Ezt a változót `false` értékre állítják a szerződés telepítésekor, de átvált `true` értékre, amint a szerződés leáll. + +2. Függvények, melyek a boolean-változóra hivatkoznak a végrehajtásuk során. Ezek a függvények akkor érhetők el, amikor az okosszerződés nincs leállítva, és elérhetetlenné válnak, amikor a vészleállítás megtörténik. + +3. Egy entitás, amelynek hozzáférése van a vészleállítási funkcióhoz, és a boolean változót `true` értékre állítja. Az esetleges visszaélés miatt ezt a funkciót csak egy megbízott cím hívhatja meg (például a szerződés tulajdonosa). + +Amint a szerződés aktiválja a vészleállást, bizonyos függvényeket nem lehet meghívni. Ezt úgy érik el, hogy a select függvényeket becsomagolják egy módosítóba, amely a globális változóra hivatkozik. Alább [egy példa](https://github.com/fravoll/solidity-patterns/blob/master/EmergencyStop/EmergencyStop.sol) látható, amely ennek a mintának a szerződésbe való bevezetését mutatja be: + +```solidity +// This code has not been professionally audited and makes no promises about safety or correctness. Use at your own risk. + +contract EmergencyStop { + + bool isStopped = false; + + modifier stoppedInEmergency { + require(!isStopped); + _; + } + + modifier onlyWhenStopped { + require(isStopped); + _; + } + + modifier onlyAuthorized { + // Check for authorization of msg.sender here + _; + } + + function stopContract() public onlyAuthorized { + isStopped = true; + } + + function resumeContract() public onlyAuthorized { + isStopped = false; + } + + function deposit() public payable stoppedInEmergency { + // Deposit logic happening here + } + + function emergencyWithdraw() public onlyWhenStopped { + // Emergency withdraw happening here + } +} +``` + +Ez a példa a vészleállás alapvető jellemzőit ismerteti: + +- Az `isStopped` egy boolean, melynek értéke `false` az elején és `true`, amikor a szerződés vészmódba lép. + +- Az `onlyWhenStopped` és `stoppedInEmergency` függvénymódosítók ellenőrzik az `isStopped` változót. A `stoppedInEmergency` azokat a függvényeket kontrollálja, amelyeknek elérhetetlennek kell maradniuk, amikor a szerződés sebezhető (például a `deposit()`). Az ezekre a függvényekre vonatkozó hívások egyszerűen visszafordulnak. + +Az `onlyWhenStopped` azokhoz a függvényekhez használandó, amelyek vészhelyzetben is elérhetők (például az `emergencyWithdraw()`). Ezek a függvények segíthetnek megoldani a helyzetet, ezért nem részei a „korlátozott függvények” listájának. + +A vészleállítási lehetőség egy hatásos hézagpótlás ahhoz, hogy a fejlesztő a komoly sebezhetőségeket kezelni tudja az okosszerződésében. Ugyanakkor a felhasználóktól több bizalmat igényel a fejlesztők felé, hogy nem használják ki ezt a funkciót önös érdekeikre. Erre lehetséges megoldást jelenthet a vészleállítás decentralizált kontrollja, mint például egy láncon belüli szavazás, időzár alkalmazása vagy egy több aláírásos tárca általi jóváhagyás. + +#### Eseményfigyelés {#event-monitoring} + +Az [események](https://docs.soliditylang.org/en/v0.8.15/contracts.html#events) lehetővé teszik az okosszerződéshez érkező hívások trekkelését és az állapotváltozók változásának felügyeletét. Bevált gyakorlatnak számít, ha az okosszerződés mindig kiad eseményt, amikor valaki egy biztonságkritikus tevékenységet végez (például kiveszi a pénzeszközöket). + +Az események naplózása és felügyelete láncon kívül betekintést enged a szerződés működésébe, valamint az ártalmas tetteket hamarabb fel lehet fedezni általuk. Így a csapat gyorsabban tud reagálni a hackelésre, és azonnal cselekedni tud, hogy a felhasználókat ez ne érintse negatívan, például leállíthatják a függvényeket vagy frissítést indíthatnak el. + +Választhat egy előre összeállított felügyeleti eszközt, amely automatikusan figyelmeztetéseket küld, amikor valaki interakcióba lép az Ön szerződéseivel. Ezek az eszközök segítenek személyre szabott figyelmeztetéseket is létrehozni különféle paraméterek alapján, mint amilyen a tranzakciómennyiség, a függvénymeghívások gyakorisága vagy az érintett függvények. Például beállíthat egy figyelmeztetést, ha a kivett pénzmennyiség egy tranzakcióban egy bizonyos határ felett van. + +### 7. Tervezzen biztonságos irányítási rendszert {#design-secure-governance-systems} + +Talán szeretné, hogy az alkalmazása decentralizált legyen, így a központi okosszerződések kontrollját a közösségi tagoknak adná. Ebben az esetben az okosszerződés rendszere felölel egy irányítási modult is – egy olyan mechanizmust, amellyel a közösségi tagok jóváhagyhatnak adminisztratív változásokat egy láncon belüli irányítási rendszer segítségével. Például azt a javaslatot, hogy a proxyszerződést egy új verzióra frissítsék, megszavaztathatja a tokennel rendelkező felhasználókkal. + +A decentralizált irányítás előnyös lehet, főleg mivel összeegyezteti a fejlesztők és a felhasználók érdekeit. Mindazonáltal az okosszerződés irányításimechanizmusa új kockázatokat is jelenthet, ha nem megfelelően vezetik be. Kézenfekvő probléma, ha egy támadó nagyon magas szavazatierőt szerez (amit az általa birtokolt tokenek száma ad) azáltal, hogy [villámhitelt](/defi/#flash-loans) vesz fel, majd egy ártó változásra tesz javaslatot. + +A láncon működő irányítási modell problémáit meg lehet oldani az [időzár használatával](https://blog.openzeppelin.com/protect-your-users-with-smart-contract-timelocks/) is. Az időzár megakadályozza, hogy az okosszerződés végrehajtson bizonyos műveleteket addig, amíg nem telt el egy adott idő. Más stratégia lehet a tokenekhez rendelt „szavazati súly” az alapján, hogy azt mennyi időre kötötték le, vagy egy adott cím szavazati erejét hosszabb periódusra is nézhetik (például 2–3 korábbi blokkra) a jelenlegi blokk helyett. Ezek csökkentik a lehetőségét annak, hogy valaki gyorsan jelentős szavazati erőre tegyen szert, hogy a láncon zajló szavazást eltérítse. + +Bővebben a [biztonságos irányítási rendszerek tervezése](https://blog.openzeppelin.com/smart-contract-security-guidelines-4-strategies-for-safer-governance-systems/) és a [különféle szavazási mechanizmusok a DAO-knál](https://hackernoon.com/governance-is-the-holy-grail-for-daos) témákról. + +### 8. Csökkentse a kód komplexitását a minimumra {#reduce-code-complexity} + +A hagyományos szoftverfejlesztők elve az, hogy a lehető legegyszerűbb legyen a kód (KISS-elv), és így nem vezetnek be fölösleges bonyolításokat a tervben. Ennek alapja az az elgondolás, hogy az „összetett rendszerek összetett módokon vallhatnak kudarcot”, és sokkal hajlamosabbak a költséges hibákra. + +A minél egyszerűbb megközelítés kiemelten fontos az okosszerződések írásánál is, mivel ezek nagy értékeket is kontrollálhatnak. Ennek eléréséhez érdemes létező könyvtárakat használni, mint amilyen az [OpenZeppelin szerződések](https://docs.openzeppelin.com/contracts/4.x/), amikor ez lehetséges. Mivel ezeket a könyvtárakat a fejlesztők már alaposan tesztelték, auditálták, így kisebb a hiba valószínűsége, mintha a nulláról kell megírni egy új funkcionalitást. + +Másik követendő tanács az, hogy rövid függvényeket kell írni és a szerződést modulárisan kell felállítani, az üzleti logikát több szerződés között felosztva. Az egyszerű kódok írása kevesebb teret ad a támadásra, emellett a teljes rendszer helyességét is jobban lehet igazolni, és a lehetséges tervezési hibák is korán kiderülhetnek. + +### 9. Védekezzen az okosszerződés általános sebezhetőségei ellen {#mitigate-common-smart-contract-vulnerabilities} + +#### Újrabelépés {#reentrancy} + +Az EVM nem engedi a párhuzamosságot, tehát két szerződés egy üzenethívásban nem futhat egyszerre. Egy külső hívás megállítja a meghívó szerződés végrehajtását és memóriáját addig, amíg a hívás vissza nem tér, amikor is a végrehajtás normálisan megtörténik. Ezt a folyamatot hivatalosan úgy nevezik, hogy a [kontrollfolyamat](https://www.computerhope.com/jargon/c/contflow.htm) átadása egy másik szerződésnek. + +Habár általában nem jelent problémát, a kontrollfolyamat nem megbízható szerződéseknek való átadása okozhat némi gondot, például az újrabelépés lehetőségét. Újrabelépéses támadás akkor történik, amikor egy ártó szerződés visszahívást csinál egy sebezhető szerződésbe mielőtt az eredeti függvény meghívása lezárulna. Ezt a támadási fajtát a következő példával jobban elmagyarázzuk. + +Vegyünk egy egyszerű okosszerződést („áldozat/victim”), ami megengedi, hogy bárki ethert helyezzen letétbe és vegyen ki: + +```solidity +// This contract is vulnerable. Do not use in production + +contract Victim { + mapping (address => uint256) public balances; + + function deposit() external payable { + balances[msg.sender] += msg.value; + } + + function withdraw() external { + uint256 amount = balances[msg.sender]; + (bool success, ) = msg.sender.call.value(amount)(""); + require(success); + balances[msg.sender] = 0; + } +} +``` + +Ez a szerződés elérhetővé teszi a `withdraw()` (kivétel) függvényt a felhasználóknak, hogy a korábban letétbe helyezett ETH-t ki tudják venni. Amikor egy ilyen kivétel történik, a szerződés a következő műveleteket hajtja végre: + +1. Ellenőrzi a felhasználó ETH-egyenlegét +2. Pénzeszközt küld a meghívó címére +3. Átállítja az egyenleget 0-ra, hogy ne lehessen kivenni innen pénzt + +A `withdraw()` függvény az `victim` (áldozat) szerződésében tehát egy „ellenőrzés-interakciók-eredmény” mintát követ. _Ellenőrzi_, hogy a végrehajtáshoz szükséges feltételek teljesülnek-e (a felhasználónak pozitív ETH-egyenlege van) és elvégzi az _interakciót_ azáltal, hogy ETH-t küld a meghívó címére, majd a tranzakció _eredményeit_ alkalmazza (lecsökkenti a felhasználó egyenlegét). + +Ha a `withdraw()` kódot egy külső tulajdonú számláról (EOA) hívják meg, akkor a vártnak megfelelően megy végbe: `msg.sender.call.value()` ETH-t küld a meghívónak. Azonban, ha a `msg.sender` egy okosszerződéses számla, ami meghívja a `withdraw()` kódot, akkor a `msg.sender.call.value()` révén indított pénzküldés szintén beindítja a címen tárolt programkódot. + +Tegyük fel, hogy a szerződéscímen ez a kód van telepítve: + +```solidity + contract Attacker { + function beginAttack() external payable { + Victim(victim_address).deposit.value(1 ether)(); + Victim(victim_address).withdraw(); + } + + function() external payable { + if (gasleft() > 40000) { + Victim(victim_address).withdraw(); + } + } +} +``` + +Ez a szerződés három dolgot csinál: + +1. Letétet fogad el egy másik számlától (valószínűleg a támadó/attacker EOA-ja) +2. Letétbe helyez 1 ETH-t az áldozat szerződésében +3. Kivesz 1 ETH-t, amelyet az okosszerződés tárol + +Ebben még nincs semmi rossz, viszont a `attacker` (támadó) szerződésben van egy másik függvény is, amely meghívja a `withdraw()` kódot a `victim` (áldozat) esetében újra, ha a maradék gáz a bejövő `msg.sender.call.value` esetén több mint 40 000. Ezáltal a `attacker` újra beléphet az `victim` szerződésbe és kivehet több pénzt _mielőtt_ a `withdraw` (kivétel) első meghívása lezárulna. A ciklus így néz ki: + +```solidity +- Attacker's EOA calls `Attacker.beginAttack()` with 1 ETH +- `Attacker.beginAttack()` deposits 1 ETH into `Victim` +- `Attacker` calls `withdraw() in `Victim` +- `Victim` checks `Attacker`’s balance (1 ETH) +- `Victim` sends 1 ETH to `Attacker` (which triggers the default function) +- `Attacker` calls `Victim.withdraw()` again (note that `Victim` hasn’t reduced `Attacker`’s balance from the first withdrawal) +- `Victim` checks `Attacker`’s balance (which is still 1 ETH because it hasn’t applied the effects of the first call) +- `Victim` sends 1 ETH to `Attacker` (which triggers the default function and allows `Attacker` to reenter the `withdraw` function) +- The process repeats until `Attacker` runs out of gas, at which point `msg.sender.call.value` returns without triggering additional withdrawals +- `Victim` finally applies the results of the first transaction (and subsequent ones) to its state, so `Attacker`’s balance is set to 0 +``` + +Összességében, mivel a meghívó egyenlege nem lesz 0 mindaddig, amíg a függvényvégrehajtás nem zárul le, a rákövetkező meghívások sikeresek lesznek, és megengedik a meghívónak, hogy kivegye az egyenlegét többször is. Ez a támadás alkalmas arra, hogy egy okosszerződés pénzeszközeit kifolyassák, ahogy az a [2016-os DAO hackelésnél](https://www.coindesk.com/learn/2016/06/25/understanding-the-dao-attack/) megtörtént. Az újrabelépéses támadás még mindig kritikus probléma az okosszerződéseknél, ahogy azt az [újrabelépéses támadások nyilvános listája](https://github.com/pcaversaccio/reentrancy-attacks) mutatja. + +##### Hogyan lehet megakadályozni egy újrabelépéses támadást + +Az újrabelépés ellen az [ellenőrzés-eredmények-interakciók mintát](https://docs.soliditylang.org/en/develop/security-considerations.html#use-the-checks-effects-interactions-pattern) lehet alkalmazni. Ez a minta a függvények végrehajtását úgy rendezi, hogy az a kód jön először, amely a szükséges ellenőrzéseket végzi, azután a szerződés státuszát változtatják meg, végül a más szerződésekkel vagy külső tulajdonú számlákkal (EOA) való interakció következik. + +Az ellenőrzés-eredmények-interakciók minta a következőképpen néz ki a `victim` (áldozat) szerződésének új verziójában: + +```solidity +contract NoLongerAVictim { + function withdraw() external { + uint256 amount = balances[msg.sender]; + balances[msg.sender] = 0; + (bool success, ) = msg.sender.call.value(amount)(""); + require(success); + } +} +``` + +Ez a szerződés _ellenőrzi_ a felhasználó egyenlegét, érvényesíti a `withdraw()` függvény _eredményét_ (azáltal, hogy az egyenleget 0-ra állítja), és végül elvégzi az _interakciót_ (ETH-t küld a felhasználó címére). Ezáltal a szerződés először befrissíti a tárolt adatot, és csak utána végzi a külső hívást, így nincs lehetőség az újrabelépésre, mint korábban. Az `attacker` szerződés még mindig vissza tudja hívni a `NoLongerAVictim` (nem áldozat) szerződést, de mivel a `balances[msg.sender]` (egyenlege) már 0, a többi kivétel hibára fut. + +Másik lehetőség egy kölcsönös kizárás (más néven mutex), amely lezárja a szerződés státuszának egy részét addig, amíg a függvénymeghívás teljesül. Ezt egy boolean változóval lehet bevezetni, ami először `true` (igaz) a függvényvégrehajtás előtt, majd `false` (hamis) lesz a meghívás befejeztével. Ahogy az alábbi példából látszik, a mutex használata megvédi a függvényt attól, hogy újra meghívják, miközben az eredeti meghívás még zajlik, így hatásosan kivédi az újrabelépést. + +```solidity +pragma solidity ^0.7.0; + +contract MutexPattern { + bool locked = false; + mapping(address => uint256) public balances; + + modifier noReentrancy() { + require(!locked, "Blocked from reentrancy."); + locked = true; + _; + locked = false; + } + // This function is protected by a mutex, so reentrant calls from within `msg.sender.call` cannot call `withdraw` again. + // The `return` statement evaluates to `true` but still evaluates the `locked = false` statement in the modifier + function withdraw(uint _amount) public payable noReentrancy returns(bool) { + require(balances[msg.sender] >= _amount, "No balance to withdraw."); + + balances[msg.sender] -= _amount; + bool (success, ) = msg.sender.call{value: _amount}(""); + require(success); + + return true; + } +} +``` + +Továbbá a [„fizetéskérés”](https://docs.openzeppelin.com/contracts/4.x/api/security#PullPayment) rendszere is használható, amelynél a felhasználó vesz ki pénzt az okosszerződésből ahelyett, hogy a szerződés „fizetésküldést” végezne a számlák felé. Így nem lehet véletlenül elindítani egy kódot ismeretlen címeken (és bizonyos szolgálatmegtagadási támadásokat is ki tud védeni). + +#### Egész szám túlfolyása lefelé vagy felfelé {#integer-underflows-and-overflows} + +Egy egész szám akkor folyik túl felfelé, amikor egy aritmetikai művelet eredménye kívül esik az elfogadható tartományon, így az „tovább gördül” a legalacsonyabb megjeleníthető értékre. Például egy `uint8` csak 2^8-1=255 értéket tud tárolni. Az aritmetikai művelet, amelynek eredménye nagyobb mint `255`, túlfolyik és visszaállítja az `uint` kódot `0` értékre, ahhoz hasonlóan, ahogy egy autóban a megtett távolságot mérő óra is 0-ra fordul át, ha elérte a maximális értékét (999 999). + +Az egész szám lefelé való túlfolyása hasonló okokból következik be: az aritmetikai művelet eredménye az elfogadható tartomány alá esik. Tegyük fel, Ön szeretné lecsökkenteni a `0` értéket egy `uint8` típusú mezőben, így az egyszerűen átfordul a maximális megjeleníthető értékre (`255`). + +Mindkét irányú túlfolyás a szerződés állapotváltozóiban váratlan változásokat eredményezhet, így nem tervezett végrehajtást okozhat. Az alábbi példa bemutatja, hogyan tudja egy támadó kihasználni az aritmetikai túlfolyást egy okosszerződésben, hogy érvénytelen műveletet hajtson végre: + +``` +pragma solidity ^0.7.6; + +// This contract is designed to act as a time vault. +// User can deposit into this contract but cannot withdraw for at least a week. +// User can also extend the wait time beyond the 1 week waiting period. + +/* +1. Deploy TimeLock +2. Deploy Attack with address of TimeLock +3. Call Attack.attack sending 1 ether. You will immediately be able to + withdraw your ether. + +What happened? +Attack caused the TimeLock.lockTime to overflow and was able to withdraw +before the 1 week waiting period. +*/ + +contract TimeLock { + mapping(address => uint) public balances; + mapping(address => uint) public lockTime; + + function deposit() external payable { + balances[msg.sender] += msg.value; + lockTime[msg.sender] = block.timestamp + 1 weeks; + } + + function increaseLockTime(uint _secondsToIncrease) public { + lockTime[msg.sender] += _secondsToIncrease; + } + + function withdraw() public { + require(balances[msg.sender] > 0, "Insufficient funds"); + require(block.timestamp > lockTime[msg.sender], "Lock time not expired"); + + uint amount = balances[msg.sender]; + balances[msg.sender] = 0; + + (bool sent, ) = msg.sender.call{value: amount}(""); + require(sent, "Failed to send Ether"); + } +} + +contract Attack { + TimeLock timeLock; + + constructor(TimeLock _timeLock) { + timeLock = TimeLock(_timeLock); + } + + fallback() external payable {} + + function attack() public payable { + timeLock.deposit{value: msg.value}(); + /* + if t = current lock time then we need to find x such that + x + t = 2**256 = 0 + so x = -t + 2**256 = type(uint).max + 1 + so x = type(uint).max + 1 - t + */ + timeLock.increaseLockTime( + type(uint).max + 1 - timeLock.lockTime(address(this)) + ); + timeLock.withdraw(); + } +} +``` + +##### Hogyan akadályozható meg egy egész szám túlfolyása lefelé vagy felfelé + +A 0.8.0 verzió szerint a Solidity átfordító elutasítja azokat a kódokat, amelyek az egész szám túlfolyását eredményezik. Ugyanakkor az alacsonyabb verziójú átfordítóval készült szerződések esetén ellenőrizni kell azokat a függvényeket, amelyek aritmetikai műveleteket hajtanak végre, vagy egy olyan könyvtárat lehet használni (például [SafeMath](https://docs.openzeppelin.com/contracts/2.x/api/math)), amely ellenőrzi a túlfolyásokat. + +#### Orákulum manipulációja {#oracle-manipulation} + +Az [orákulumok](/developers/docs/oracles/) láncon kívüli információkat gyűjtenek és beküldik azokat a láncra, hogy az okosszerződések használhassák. Az orákulumok révén Ön olyan okosszerződéseket tervezhet, amelyek együtt tudnak működni láncon kívüli rendszerekkel, mint a tőkepiacok, ezzel nagy mértékben kiterjesztve az alkalmazási körüket. + +Ha viszont az orákulum korrupttá válik és nem helyes információkat küld a láncra, az okosszerződések hibás bejövő adatok alapján fognak működni, ez pedig problémákat okoz. Ez az „orákulumprobléma” alapja, amely miatt biztosítani kell, hogy a blokklánc-orákulum által adott információ pontos, friss és időben elérhető legyen. + +Az ehhez kapcsolódó biztonsági probléma az, amikor például egy decentralizált tőzsde a láncon belüli orákulumot használja arra, hogy megszerezze egy eszköz azonnali (spot) árát. A kölcsönző platformok a [decentralizált pénzügyek (DeFi)](/defi/) iparágában gyakran csinálják ezt, hogy meghatározzák a felhasználó fedezetének értékét, és ezáltal a kölcsön mértékét. + +A DEX árak gyakran igen pontosak, akár nagy mértékben is, mivel az arbitrázst kihasználók helyreállítják a piacokon az egyensúlyt. Ugyanakkor teret adnak a manipulációra, főleg ha a láncon futó orákulum az eszköz árát a korábbi kereskedelmi minták alapján számolja (ami általában igaz). + +Például egy támadó mesterségesen fel tudja pumpálni egy eszköz azonnali árát azáltal, hogy egy villámkölcsönt vesz fel éppen a kölcsönszerződés megkötése előtt. Ekkor a DEX lekérdezés az eszköz áráról egy magasabb értéket fog mutatni (mivel a támadó nagy összegű vételi igénye elmozdította az eszköz keresletét), így magasabb kölcsönt vehetnek fel, mint amit lehetne. Az ilyen „villámkölcsön-támadások” kihasználták azt, hogy a DeFi alkalmazások az orákulumokra támaszkodnak az árakat tekintve, és így sok milliónyi elveszett pénzeszközt eredményeztek a protokolloknak. + +##### Hogyan lehet elkerülni az orákulummanipulációt + +A minimum követelmény az, hogy decentralizált orákulumhálózatokat kell használni, amelyek több forrásból szerzik be az információkat, így elkerülhető az egyetlen meghibásodási pont lehetősége. A legtöbb esetben a decentralizált orákulumoknak beépített kriptogazdasági ösztönzőik vannak, hogy az orákulum-csomópontok a helyes információt jelentsék, így sokkal biztonságosabbak, mint a centralizált társaik. + +Ha Ön azt tervezi, hogy egy láncon lévő orákulumot kérdez le eszközárakért, akkor használjon olyat, amely idővel súlyozott átlagárat (TWAP) számol. A [TWAP-orákulum](https://docs.uniswap.org/contracts/v2/concepts/core-concepts/oracles) egy adott eszköz árát két különböző időpontban (ami módosítható) kérdezi le, és a megszerzett átlaga alapján kalkulálja az azonnali árat. A hosszabb időtartomány használata megvédi a protokollt az ármanipulációtól, mert a közelmúltban végrehajtott nagy rendelések nem befolyásolják az árat. + +## Okosszerződés-biztonsággal kapcsolatos anyagok fejlesztők számára {#smart-contract-security-resources-for-developers} + +### Eszközök az okosszerződések elemzéséhez és a kód helyességének ellenőrzéséhez {#code-analysis-tools} + +- **[Tesztelő eszközök és könyvtárak](/developers/docs/smart-contracts/testing/#testing-tools-and-libraries)** – _Iparági standard eszközök és könyvtárak gyűjteménye az okosszerződések egységteszteléséhez, valamint a statikus és dinamikus elemzéséhez._ + +- **[Formális ellenőrzési (formal verification) eszközök](/developers/docs/smart-contracts/formal-verification/#formal-verification-tools)** – _Eszközök arra, hogy ellenőrizzék az okosszerződések funkcionális helyességét és az állandókat._ + +- **[Okosszerződés auditálásra vonatkozó szolgáltatások](/developers/docs/smart-contracts/testing/#smart-contract-auditing-services)** – _Szervezetek listája, amelyek auditszolgáltatást kínálnak okosszerződésekre az Ethereum fejlesztési projektek számára._ + +- **[Hibavadász platformok](/developers/docs/smart-contracts/testing/#bug-bounty-platforms)** – _Platformok a hibavadászatok és a jutalmak koordinálására, hogy azok feltárják az okosszerződésekben lévő kritikus sebezhetőségeket._ + +- **[Fork Checker](https://forkchecker.hashex.org/)** – _Egy ingyenes online eszköz arra, hogy információt kapjon egy elágaztatott szerződésről._ + +- **[ABI Encoder](https://abi.hashex.org/)** – _Egy ingyenes online szolgáltatás a Solidity szerződés függvényeinek és constructor parancsainak kódolására._ + +### Eszközök az okosszerződések felügyeletére {#smart-contract-monitoring-tools} + +- **[OpenZeppelin Defender Sentinels](https://docs.openzeppelin.com/defender/v1/sentinel)** – _Egy eszköz az okosszerződés automatikus felügyeletére, valamint az eseményekre, függvényekre és tranzakcióparaméterekre való válaszadásra._ + +- **[Tenderly Real-Time Alerting](https://tenderly.co/alerting/)** – _Egy eszköz, amellyel valós idejű értesítést kaphat, amikor az okosszerződésén vagy tárcáján szokatlan vagy váratlan események történnek._ + +### Eszközök az okosszerződések biztonságos adminisztrálásához {#smart-contract-administration-tools} + +- **[OpenZeppelin Defender Admin](https://docs.openzeppelin.com/defender/v1/admin)** – _Interfész az okosszerződések adminisztrációjának kezeléséhez, beleértve a hozzáférés-kezelést, frissítéseket és leállítást is._ + +- **[Safe](https://safe.global/)** – _Egy okosszerződéses tárca az Ethereumon, amelynél adott számú embernek jóvá kell hagynia a tranzakciót, mielőtt az megtörténhetne (N számú tagból M-nek)._ + +- **[OpenZeppelin Contracts](https://docs.openzeppelin.com/contracts/4.x/)** – _Szerződéskönyvtárak az adminisztrációs jellemzők bevezetésére, beleértve a szerződés tulajdonlását, frissítéseket, hozzáférés-kezelést, irányítást, leállíthatóság és még sok mást._ + +### Okosszerződés auditálására kínált szolgáltatások {#smart-contract-auditing-services} + +- **[ConsenSys Diligence](https://consensys.net/diligence/)** – _Okosszerződés auditálására kínált szolgáltatások, amelyek támogatják a blokklánc-ökoszisztéma projektjeit, hogy a protokolljaik készen állnak-e a bevezetésre és úgy épültek-e meg, hogy védik a felhasználókat._ + +- **[CertiK](https://www.certik.com/)** – _Egy blokkláncbiztonsággal foglalkozó cég, amely úttörőként használja az élvonalbeli formális ellenőrzés technológiáját az okosszerződésekre és a blokklánchálózatokra._ + +- **[Trail of Bits](https://www.trailofbits.com/)** – _Kiberbiztonsági cég, amely kombinálja a biztonsági kutatást és a támadói mentalitást, hogy csökkentse a kockázatot és megerősítse a kódot._ + +- **[PeckShield](https://peckshield.com/)** – _Blokkláncbiztonsággal foglalkozó cég, amely a teljes blokklánc-ökoszisztémához kínál termékeket és szolgáltatásokat a biztonság, adatvédelem és használhatóság területein._ + +- **[QuantStamp](https://quantstamp.com/)** – _Auditszolgáltatás, amely elősegíti a blokklánctechnológia kiterjedt használatát a biztonsági és kockázatelemzési szolgáltatásokkal._ + +- **[OpenZeppelin](https://www.openzeppelin.com/security-audits)** – _Okosszerződés-biztonsággal foglalkozó cég, amely a megosztott rendszerek számára biztosít biztonsági auditokat._ + +- **[Runtime Verification](https://runtimeverification.com/)** – _Biztonsági cég, amely az okosszerződések formális modellezésére és ellenőrzésére specializálódott._ + +- **[Hacken](https://hacken.io)** – _Web3 kiberbiztonsági auditor, amely 360 fokos megközelítést alkalmaz a blokkláncbiztonságban._ + +- **[Nethermind](https://nethermind.io/smart-contracts-audits)** – _Solidity és Cairo auditszolgáltatások, amelyekkel az okosszerződések integritása, valamint a felhasználók biztonsága is biztosíthat az Ethereumon és a Starkneten._ + +- **[HashEx](https://hashex.org/)** – _A HashEx a blokkláncok és okosszerződések auditálásra szakosodott a kriptovaluták biztonságának biztosítása céljából, illetve olyan szolgáltatásokat nyújt, mint az okosszerződés-fejlesztés, sérülékenység-vizsgálat, blokklánctanácsadás._ + +- **[Code4rena](https://code4rena.com/)** – _Versenyképes auditplatform, amely arra ösztönzi az okosszerződés-biztonsági szakértőket, hogy sebezhetőséget találjanak és segítsenek a web3-at biztonságosabbá tenni._ + +### Hibavadászplatformok {#bug-bounty-platforms} + +- **[Immunefi](https://immunefi.com/)** – _Hibavadászplatform okosszerződésekhez és DeFi-projektekhez, ahol a biztonsági kutatók átnézik a kódot, kizárják a sebezhetőségeket, ezért jutalmat kapnak, és biztonságosabbá teszik a kripto világát._ + +- **[HackerOne](https://www.hackerone.com/)** – _Sebezhetőségi koordináció és hibavadászplatform, amely összeköti a vállalkozásokat a sebezhetőségi tesztelőkkel és kiberbiztonsági kutatókkal._ + +- **[HackenProof](https://hackenproof.com/)** – _Szakértői hibavadászplatform kriptoprojektek (DeFi, okosszerződések, tárcák, CEX stb.) számára, ahol a biztonsági szakértők prioritási sorrendszolgáltatást nyújtanak, a kutatók pedig jutalmat kapnak a releváns, igazolt hibák jelentéséért._ + +### Publikációk az okosszerződések ismert sebezhetőségeiről és azok kihasználásáról {#common-smart-contract-vulnerabilities-and-exploits} + +- **[Consensys: az okosszerződéseket ért ismert támadások](https://consensys.github.io/smart-contract-best-practices/attacks/)** – _Egyszerűen megfogalmazott magyarázat a legkomolyabb sérülékenységekről a szerződésekben, a legtöbb esetben mintakódokkal együtt._ + +- **[SWC Registry](https://swcregistry.io/)** – _A Közös gyengeségek felsorolásának (CWE) gondozott listája, amelyen az Ethereum okosszerződésekre vonatkozó tételek szerepelnek._ + +- **[Rekt](https://rekt.news/)** – _Rendszeresen frissített publikáció a nagy jelentőségű kriptohackelésekről és támadásokról, az esemény után készült részletes riportokkal._ + +### Kihívások az okosszerződés-biztonság elsajátításában {#challenges-for-learning-smart-contract-security} + +- **[Awesome BlockSec CTF](https://github.com/blockthreat/blocksec-ctfs)** – _Blokkláncbiztonsági háborús játékok, kihívások és [szerezd meg a zászlót (Capture The Flag)](https://www.webopedia.com/definitions/ctf-event/amp/) versenyek és megoldások gondozott listája._ + +- **[Damn Vulnerable DeFi](https://www.damnvulnerabledefi.xyz/)** – _Háborús játék a DeFi okosszerződések támadó biztonságának elsajátításához, valamint készségek fejlesztéséhez a hibavadászatban és a biztonsági auditban._ + +- **[Ethernaut](https://ethernaut.openzeppelin.com/)** – _Web3/Solidity-alapú háborús játék, ahol minden szint egy okosszerződés, amelyet meg kell „hackelni”._ + +### Bevált gyakorlatok az okosszerződések biztonságossá tételére {#smart-contract-security-best-practices} + +- **[ConsenSys: az Ethereum okosszerződés-biztonság bevált gyakorlatai](https://consensys.github.io/smart-contract-best-practices/)** – _Részletes útmutatók az Ethereum-okosszerződések biztonságossá tételére._ + +- **[Nascent: Egyszerű biztonsági eszközrendszer](https://github.com/nascentxyz/simple-security-toolkit)** – _Hasznos biztonságközpontú útmutatók és ellenőrző listák gyűjteménye okosszerződés-fejlesztéshez._ + +- **[Solidity Patterns](https://fravoll.github.io/solidity-patterns/)** – _Biztonsági minták és bevált gyakorlatok hasznos gyűjteménye Solidity programnyelven írt okosszerződésekhez._ + +- **[Solidity Docs: Biztonsági megfontolások](https://docs.soliditylang.org/en/v0.8.16/security-considerations.html)** – _Útmutatók a biztonságos okosszerződések írásához Solidity nyelven._ + +- **[Smart Contract Security Verification Standard](https://github.com/securing/SCSVS)** – _Egy tizennégy részes ellenőrző lista fejlesztők, architektúrával foglalkozók, biztonság-ellenőrzők és beszállítók számára az okosszerződések biztonságának szabványosításához._ + +### Útmutatók az okosszerződés-biztonságról {#tutorials-on-smart-contract-security} + +- [Hogyan lehet biztonságosabb okosszerződéskódot írni](/developers/tutorials/secure-development-workflow/) + +- [A Slither használata okosszerződés bugok felderítésére](/developers/tutorials/how-to-use-slither-to-find-smart-contract-bugs/) + +- [A Manticore használata okosszerződés bugok felderítésére](/developers/tutorials/how-to-use-manticore-to-find-smart-contract-bugs/) + +- [Smart contract security guidelines](/developers/tutorials/smart-contract-security-guidelines/) + +- [Hogyan lehet biztonságosan integrálni a tokenszerződést tetszőleges tokenekkel](/developers/tutorials/token-integration-checklist/) diff --git a/public/content/translations/hu/developers/docs/storage/index.md b/public/content/translations/hu/developers/docs/storage/index.md index 9e292ea2cee..0d1eda27eee 100644 --- a/public/content/translations/hu/developers/docs/storage/index.md +++ b/public/content/translations/hu/developers/docs/storage/index.md @@ -1,34 +1,209 @@ --- -title: Decentralized Tárhely -description: Áttekintő arról, hogy mi is az a decentralizált tárhely és az elérhető eszközökről, amivel integrálhatod a dappodba. +title: Decentralizált tárhely +description: Áttekintés a decentralizált tárhelyről és az elérhető eszközökről, amellyekkel integrálhatóak a dappokba. lang: hu -incomplete: true -isOutdated: true --- -A központilag elhelyezett, egyetlen vállalat vagy szervezet által működtetett szerverrel szemben a decentralizált tárolórendszerek a felhasználói operátorok peer-to-peer hálózatából állnak, akik az összes adat egy részét tárolják, így egy rugalmas fájltárolási és megosztási rendszert hozva létre. +A központilag elhelyezett, egyetlen vállalat vagy szervezet által működtetett szerverrel szemben a decentralizált tárolórendszerek a felhasználói operátorok peer-to-peer hálózatából állnak, akik az összes adat egy részét tárolják egy rugalmas fájltárolási és -megosztási rendszert létrehozva. Ezek lehetnek blokklánc-alapú alkalmazásokban vagy bármilyen, közvetítő nélküli hálózatokban. + +Magát az Ethereumot is lehet decentralizált tárolórendszerként használni, és úgy is működik, amikor az okosszerződések kódjait kell tárolni. Ugyanakkor az Ethereumot nem arra tervezték, hogy nagy adathalmazokat tároljon. A lánc stabilan növekszik, a jelen írás idején az Ethereum lánc kb. 500 GB – 1TB méretű ([a klienstől függően](https://etherscan.io/chartsync/chaindefault)), és a hálózat minden csomópontjának tárolnia kell ezt az adatmennyiséget. Ha a lánc nagy adatmennyiségre növekedne meg (mondjuk 5 TB méretre), akkor már nem minden csomópont tudna működni. Ezen túl ennyi adat bevitele a főhálózatra is ellehetetlenítő módon drága lenne a [gázdíjak](/developers/docs/gas) miatt. + +Ezen megszorítások miatt egy másik láncra vagy módszerre van szükség, hogy az adatok nagy tömegét decentralizált módon tároljuk. + +Amikor decentralizált tárhely (dStorage) opcióról beszélünk, akkor a felhasználónak néhány dolgot fontos figyelembe vennie. + +- Megtartási mechanizmus / ösztönzési struktúra +- Adatmegtartás kényszere +- Decentralitás +- Konszenzus + +## Megtartási mechanizmus / ösztönzési struktúra {#persistence-mechanism} + +### Blokkláncalapú {#blockchain-based} + +Ahhoz, hogy egy adat örökké létezzen, valamilyen megtartási mechanizmusra van szükség. Például az Ethereumon az a megtartási mechanizmus, hogy a csomópont futtatásánál az egész láncra szükség van. Az új adat a lánchoz kerül, és így az folyamatosan növekszik – az összes csomópontnak replikálnia kell az összes beágyazott adatot. + +Ezt úgy nevezik, hogy **blokkláncalapú** megtartás. + +A blokkláncalapú megtartással az a gond, hogy a lánc túl nagyra nőket, hogy fenntartsa és tárolja az összes adatot (például [számos forrás](https://healthit.com.au/how-big-is-the-internet-and-how-do-we-measure-it/) úgy becsli, hogy az Internet több mint 40 zettabájt tárhelyet igényel). + +A blokkláncnak emellett valamilyen ösztönzési struktúrát kell alkalmaznia. A blokkláncalapú megtartáshoz a validátorok fizetséget kapnak. Amikor az adat hozzákerül a lánchoz, a validátorok jutalmat kapnak a bekerülés intézéséért. + +Blokkláncalapú megtartással működő platformok: + +- Ethereum +- [Arweave](https://www.arweave.org/) + +### Szerződésalapú {#contract-based} + +A **szerződésalapú** megtartás úgy véli, hogy az adatot nem replikálhatja és tárolhatja örökké minden csomópont, ehelyett inkább szerződéses megállapodással kell azt fenntartani. Ezeket a megállapodásokat számos csomóponttal kötik, amelyek megígérik, hogy egy adott időszakra megtartják az adatot. Ezt vissza kell fizetni vagy meg kell újítani, amikor már nem tartják meg az adatot. + +A legtöbb esetben nem az adatot tárolják a láncon, hanem azt a hasht, ami az adat tárolási helyét mutatja. Így a teljes láncot nem kell skálázni, hogy minden adat elférjen. + +Szerződésalapú megtartással működő platformok: + +- [Filecoin](https://docs.filecoin.io/about-filecoin/what-is-filecoin/) +- [Skynet](https://siasky.net/) +- [Storj](https://storj.io/) +- [0Chain](https://0chain.net/) +- [Crust Network](https://crust.network) +- [Swarm](https://www.ethswarm.org/) +- [4EVERLAND](https://www.4everland.org/) + +### További megfontolások {#additional-consideration} + +Az IPFS (InterPlanetary File System) egy elosztott rendszer fájlok, honlapok, alkalmazások és adatok tárolására és elérésére. Nincs beépített ösztönzési sémája, de használható bármelyik szerződésalapú ösztönzési megoldással a hosszú távú megtartásért. Egy másik módja annak, hogy az IPFS-en megmaradjon az adat, az az odatűzési (pinning) szolgáltatás, mely rögzíti az Önnek fontos adatokat, hogy Ön elérje azokat. Ön is futtathat saját IPFS csomópontot és hozzájárulhat a hálózathoz, hogy fenntartja a saját és más adatait ingyen! + +- [IPFS](https://docs.ipfs.io/concepts/what-is-ipfs/) +- [Pinata](https://www.pinata.cloud/) _(IPFS pinning service)_ +- [web3.storage](https://web3.storage/) _(IPFS/Filecoin pinning service)_ +- [Infura](https://infura.io/product/ipfs) _(IPFS pinning service)_ +- [IPFS Scan](https://ipfs-scan.io) _(IPFS pinning explorer)_ +- [4EVERLAND](https://www.4everland.org/)_(IPFS pinning service)_ +- [Filebase](https://filebase.com) _(IPFS Pinning Service)_ + +A SWARM egy decentralizáld adattárhely és elosztási technológia, mely tárolási ösztönzőrendszerrel és egy tárhelybérleti-költséges orákulummal működik. + +## Adatmegőrzés {#data-retention} + +Az adat megtartásához a rendszereknek valamilyen mechanizmusra van szükségük, hogy ezt biztosítsák. + +### Kihívásalapú mechanizmus {#challenge-mechanism} + +Az egyik legnépszerűbb módszer az adatmegtartásra, hogy valamilyen kriptográfiai kihívást használnak, amelyet a csomópontokhoz küldenek annak ellenőrzésére, hogy azok tényleg rendelkeznek-e az adattal. Egy egyszerű példa az Arweave hozzáférés-bizonyítása. Egy kihívást küldenek a csomópontoknak, hogy azoknál megvan-e a legutóbbi blokk és egy tetszőleges korábbi blokk. Ha a csomópont nem tud válaszolni, akkor megbüntetik. + +A kihívásmechanizmussal rendelkező decentralizált tárhelyek típusai: + +- 0Chain +- Skynet +- Arweave +- Filecoin +- Crust Network +- 4EVERLAND + +### Decentralitás {#decentrality} + +A platformok decentralitását nem lehet könnyen mérni, de általában olyan eszközt válasszon, amelyik nem valamilyen KYC-féle (ismerje meg ügyfelét) dolgot használ arra, hogy bizonyítékot adjon a decentralitásáról. + +Decentralizált eszközök KYC nélkül: + +- 0Chain (egy KYC nélküli kiadást implementál) +- Skynet +- Arweave +- Filecoin +- IPFS +- Ethereum +- Crust Network +- 4EVERLAND + +### Konszenzus {#consensus} + +A legtöbb eszköz rendelkezik valamilyen [konszenzusmechanizmussal](/developers/docs/consensus-mechanisms/), általában [**proof-of-work (PoW)**](/developers/docs/consensus-mechanisms/pow/) vagy [**proof-of-stake (PoS)** mechanizmust használnak](/developers/docs/consensus-mechanisms/pos/). + +Proof-of-work-alapú: + +- Skynet +- Arweave + +Proof-of-stake-alapú: + +- Ethereum +- Filecoin +- 0Chain +- Crust Network ## Kapcsolódó eszközök {#related-tools} -**IPFS -** **_InterPlanetary File System egy decentralizált tárhely és fájl referencia rendszer Ethereum-ra._** +**IPFS – _InterPlanetary File System egy decentralizált tárhely és fájlreferencia-rendszer Ethereumra._** -- [ipfs.io](https://ipfs.io/) +- [Ipfs.io](https://ipfs.io/) - [Dokumentáció](https://docs.ipfs.io/) - [GitHub](https://github.com/ipfs/ipfs) -**Swarm -** **_Egy elosztott tárhely platform és tartalom elosztó szolgáltatás az Ethereum web3 stack-hez._** +**Storj DCS – _Biztonságos, privát és S3-kompatibilis, decentralizált felhőobjektum-tárhely fejlesztőknek._** + +- [Storj.io](https://storj.io/) +- [Dokumentáció](https://docs.storj.io/) +- [GitHub](https://github.com/storj/storj) + +**Skynet – _A Skynet egy decentralizált PoW lánc, ami a decentralizált web felé elkötelezett._** + +- [Skynet.net](https://siasky.net/) +- [Dokumentáció](https://siasky.net/docs/) +- [GitHub](https://github.com/SkynetLabs/) + +**Filecoin – _Filecoint az IPFS mögötti csapat hozta létre. Ez egy ösztönzőréteg az IPFS ideálok tetején._** + +- [Filecoin.io](https://filecoin.io/) +- [Dokumentáció](https://docs.filecoin.io/) +- [GitHub](https://github.com/filecoin-project/) + +**Arweave – _Az Arweave egy dStorage platform adattárolásra._** + +- [Arweave.org](https://www.arweave.org/) +- [Dokumentáció](https://docs.arweave.org/info/) +- [Arweave](https://github.com/ArweaveTeam/arweave/) + +**0chain – _A 0Chain egy proof-of-stake dStorage platform shardinggal és blobberekkel._** -- [Swarm](https://ethersphere.github.io/swarm-home/) -- [GitHub](https://github.com/ethersphere/swarm) +- [0Chain.net](https://0chain.net/) +- [Dokumentáció](https://docs.0chain.net/0chain/) +- [GitHub](https://github.com/0chain/) -**OrbitDB -** **_Egy decentralizált peer-to-peer adatbázis IPFS-re építve._** +**Crust Network – _Crust egy dStorage platform az IPFS tetején._** -- [Dokumentáció](https://github.com/orbitdb/field-manual) -- [GitHub](https://github.com/orbitdb/orbit-db) +- [Crust.network](https://crust.network) +- [Dokumentáció](https://wiki.crust.network) +- [GitHub](https://github.com/crustio) + +**Swarm – _Egy elosztott tárhely platform és tartalom elosztó szolgáltatás az Ethereum web3-stackhez._** + +- [EthSwarm.org](https://www.ethswarm.org/) +- [Dokumentáció](https://docs.ethswarm.org/docs/) +- [GitHub](https://github.com/ethersphere/) + +**OrbitDB – _Egy decentralizált peer-to-peer adatbázis az IPFS tetején._** + +- [OrbitDB.org](https://orbitdb.org/) +- [Dokumentáció](https://github.com/orbitdb/field-manual/) +- [GitHub](https://github.com/orbitdb/orbit-db/) + +**Aleph.im – _Decentralizált felhőprojekt (adatbázis, fájltárolás, számítás és DID). A láncon kívüli és belüli, közvetítőmentes (peer-to-peer) technológia egyedi keveréke. IPFS-sel és többféle lánccal kompatibilis._** + +- [Aleph.im](https://aleph.im/) +- [Dokumentáció](https://aleph.im/#/developers/) +- [GitHub](https://github.com/aleph-im/) + +**Ceramic – _Felhasználó által kontrollált IPFS-adatbázis az adatgazdag alkalmazásokért._** + +- [Ceramic.network](https://ceramic.network/) +- [Dokumentáció](https://developers.ceramic.network/learn/welcome/) +- [GitHub](https://github.com/ceramicnetwork/js-ceramic/) + +**Filebase – _S3-kompatibilis decentralizált tárhely és georedundáns IPFS pinning szolgáltatás. Az IPFS-re a Filebase-en keresztül feltöltött összes fájlt automatikusan hozzátűzi a Filebase infrastruktúrához 3-szoros replikációval világszerte._** + +- [Filebase.com](https://filebase.com/) +- [Dokumentáció](https://docs.filebase.com/) +- [GitHub](https://github.com/filebase) + +**4EVERLAND – _Egy Web 3.0 felhőszámítási platform, ami integrálja a tárolás, számítás és hálózatépítés lényegi képességeit, S3-kompatibilis és szinkron adattárolást kínál olyan decentralizált tárolóhálózatokon, mint amilyen az IPFS és az Arweave._** + +- [4everland.org](https://www.4everland.org/) +- [Dokumentáció](https://docs.4everland.org/) +- [GitHub](https://github.com/4everland) + +**Kaleido – _Egy blokklánc mint szolgáltatás platform gombnyomásos IPFS csomópontokkal_** + +- [Kaleido](https://kaleido.io/) +- [Dokumentáció](https://docs.kaleido.io/kaleido-services/ipfs/) +- [GitHub](https://github.com/kaleido-io) ## További olvasnivaló {#further-reading} -_Ismersz olyan közösségi anyagot, amely segített neked? Módosítsd az oldalt és add hozzá!_ +- [Mi az a decentralizált tárhely?](https://coinmarketcap.com/alexandria/article/what-is-decentralized-storage-a-deep-dive-by-filecoin) – _CoinMarketCap_ +- [Öt gyakori mítosz lerombolása a decentralizált tárhelyről](https://www.storj.io/blog/busting-five-common-myths-about-decentralized-storage) – _Storj_ + +_Ismer olyan közösségi információforrást, amely a hasznára vált? Módosítsa az oldalt, és adja hozzá!_ ## Kapcsolódó témák {#related-topics} diff --git a/public/content/translations/hu/developers/docs/transactions/index.md b/public/content/translations/hu/developers/docs/transactions/index.md index 3bfaf25fc47..fd1ba639b1b 100644 --- a/public/content/translations/hu/developers/docs/transactions/index.md +++ b/public/content/translations/hu/developers/docs/transactions/index.md @@ -2,54 +2,57 @@ title: Tranzakciók description: Egy áttekintő az Ethereum tranzakciókról – hogyan működnek, az adatszerkezetük és hogyan lehet őket elküldeni egy alkalmazáson keresztül. lang: hu -isOutdated: true --- A tranzakciók számlákból származó kriptográfiailag aláírt instrukciók. Egy számla tranzakciót indíthat, hogy frissítse az Ethereum hálózat állapotát. A legegyszerűbb tranzakció az ETH átutalása egyik számláról a másikra. ## Előfeltételek {#prerequisites} -Ennek az oldalnak a jobb megértése érdekében javasoljuk, hogy először olvasd el a [Számlák](/developers/docs/accounts/) és a [bevezetés az Ethereumba](/developers/docs/intro-to-ethereum/) című cikkeinket. +Ennek az oldalnak a jobb megértése érdekében javasoljuk, hogy először a [Számlák](/developers/docs/accounts/) és a [bevezetés az Ethereumba](/developers/docs/intro-to-ethereum/) című cikkeinket olvassa el. ## Mi az a tranzakció? {#whats-a-transaction} -Az Ethereum tranzakció egy külső tulajdonú számla által kezdeményezett tevékenységre utal, más szóval egy számla, melyet egy ember kezel, nem pedig egy szerződés. Például ha Bob elküld Alice-nek 1 ETH-et, akkor Bob számláját terhelni kell, Alice számlájára pedig jóvá kell írni az összeget. Ez az állapotot megváltoztató művelet egy tranzakción belül történik. +Az Ethereum-tranzakció egy külső tulajdonú számla által kezdeményezett tevékenységre utal, más szóval egy számla, amelyet egy ember, nem pedig egy szerződés kezel. Például, ha Bob elküld Alice-nek 1 ETH-et, akkor Bob számláját terhelni kell, Alice számlájára pedig jóvá kell írni az összeget. Ez az állapotot megváltoztató művelet egy tranzakción belül történik. -![Egy diagram, mely egy tranzakciót ábrázol, ahogy az megváltoztatja az állapotot](./tx.png) _Diagram átvéve az [Ethereum EVM illusztrálva](https://takenobu-hs.github.io/downloads/ethereum_evm_illustrated.pdf)_ anyagból +![Diagram, amely egy állapotot módosító tranzakciót ábrázol](./tx.png) _Diagram átvéve az [Ethereum EVM illusztrálva](https://takenobu-hs.github.io/downloads/ethereum_evm_illustrated.pdf)_ anyagból -A tranzakciókat, melyek megváltoztatják az EVM állapotát, a teljes hálózat számára közvetíteni kell. Bármely csomópont kérvényezheti egy tranzakció végrehajtását az EVM-en; miután ez megtörténik, egy bányász végrehajtja a tranzakciót és továbbterjeszti az eredményül kapott állapotot a hálózat többi része számára. +Az EVM állapotát megváltoztató tranzakciókat a teljes hálózat számára közvetíteni kell. Bármely csomópont kérvényezheti egy tranzakció végrehajtását az EVM-en; miután ez megtörténik, egy validátor végrehajtja a tranzakciót és továbbterjeszti az eredményül kapott állapotot a hálózat többi része számára. -A tranzakcióknak van egy díja, és ki kell bányászni őket, hogy érvényessé váljanak. Hogy egyszerűbb legyen ez az áttekintő, a gáz díjak és a bányászat témaköröket máshol taglaljuk. +A tranzakciókért fizetni kell, és be kell kerüljenek egy validált blokkba. Hogy egyszerűbb legyen ez az áttekintés, a gázdíjak és a validáció témaköröket máshol taglaljuk. Az elküldött tranzakció a következő információkat tartalmazza: -- `recipient` – a fogadó cím (ha egy külső tulajdonú számla, akkor a tranzakció értéket továbbít. Ha egy szerződéses számla, akkor a tranzakció szerződés kódot fog végrehajtani) +- `from` – a küldő címe, aki aláírja a tranzakciót. Ez egy külső tulajdonú számla, mivel a szerződéses számlák nem küldenek tranzakciót. +- `recipient` – a fogadó címe (ha egy külső tulajdonú számla, akkor a tranzakció értéket továbbít. Ha egy szerződéses számla, akkor a tranzakció szerződéskódot fog végrehajtani) - `signature` – a küldő azonosítója. Ez akkor jön létre, amikor a feladó privát kulcsa aláírja a tranzakciót, és megerősíti, hogy a küldő engedélyezte ezt a tranzakciót -- `value` – az átküldendő ETH mennyiség a küldőtől a címzettnek (WEI-ben, az ETH egységében megadva) -- `data` – opcionális mező tetszőleges adat megadására -- `gasLimit` – a maximális gáz egység, melyet a tranzakció elfogyaszthat. A gáz egységek számítási lépéseket reprezentálnak -- `gasPrice` – a díj, melyet a küldő fizet gáz egységenként +- `nonce` – egy növekvő számláló, amely a számláról küldött tranzakciók számát mutatja +- `value` – az átküldendő ETH mennyisége a küldőtől a címzettnek (WEI-ben, ahol 1 ETH 1e+18 wei-nek felel meg) +- `input data` – opcionális mező tetszőleges adatok megadására +- `gasLimit` – a maximális gáz mennyisége, amelyet a tranzakció elfogyaszthat. Az [EVM](/developers/docs/evm/opcodes) határozza meg a számítási lépésekhez szükséges gázmennyiségét +- `maxPriorityFeePerGas` – az elfogyasztott gáz maximális ára, amely a validátor által kapott borravaló részét képezi +- `maxFeePerGas` – a gázegységért fizethető maximális díj, amit a tranzakcióért kifizetnek (beleértve a `baseFeePerGas` és a `maxPriorityFeePerGas` értékét is) -A gáz a bányász által a tranzakció feldolgozásához szükséges számításra utal. A felhasználóknak egy díjat kell fizetniük ezért a számításért. A `gasLimit` és a `gasPrice` meghatározza a bányásznak fizetett maximális tranzakciós díjat. [Többet a gázról](/developers/docs/gas/). +A gáz a tranzakció feldolgozásához szükséges számításért jár, amelyet a validátor feldolgoz. A felhasználóknak díjat kell fizetniük ezért a számításért. A `gasLimit` és a `maxPriorityFeePerGas` meghatározza a validátornak fizetett maximális tranzakciós illetéket. [Bővebben a gázról](/developers/docs/gas/). -A tranzakció objektum nagyjából így néz ki: +A tranzakcióobjektum nagyjából így néz ki: ```js { from: "0xEA674fdDe714fd979de3EdF0F56AA9716B898ec8", to: "0xac03bb73b6a9e108530aff4df5077c2b3d481e5a", gasLimit: "21000", - gasPrice: "200", + maxFeePerGas: "300", + maxPriorityFeePerGas: "10", nonce: "0", - value: "10000000000", + value: "10000000000" } ``` -De a tranzakció objektumot alá kell írni a küldő privát kulcsával. Ez bizonyítja, hogy a tranzakció kizárólag a küldőtől jöhetett és nem történt csalás. +De a tranzakcióobjektumot alá kell írni a küldő privát kulcsával. Ez bizonyítja, hogy a tranzakció kizárólag a küldőtől jöhetett, és nem történt csalás. -Egy Ethereum kliens, mint a Geth, fogja kezelni az aláírási folyamatot. +Egy Ethereum-kliens, mint a Geth, fogja kezelni az aláírási folyamatot. -Példa [JSON-RPC](https://eth.wiki/json-rpc/API) hívás: +Példa egy [JSON-RPC](/developers/docs/apis/json-rpc)-hívásra: ```json { @@ -60,7 +63,8 @@ Példa [JSON-RPC](https://eth.wiki/json-rpc/API) hívás: { "from": "0x1923f626bb8dc025849e00f99c25fe2b2f7fb0db", "gas": "0x55555", - "gasPrice": "0x1234", + "maxFeePerGas": "0x1234", + "maxPriorityFeePerGas": "0x1234", "input": "0xabcd", "nonce": "0x0", "to": "0x07a565b7ed7d7a678680a4c162885bedbb695fe0", @@ -80,7 +84,8 @@ Példa válasz: "raw": "0xf88380018203339407a565b7ed7d7a678680a4c162885bedbb695fe080a44401a6e4000000000000000000000000000000000000000000000000000000000000001226a0223a7c9bcf5531c99be5ea7082183816eb20cfe0bbc322e97cc5c7f71ab8b20ea02aadee6b34b45bb15bc42d9c09de4a6754e7000908da72d48cc7704971491663", "tx": { "nonce": "0x0", - "gasPrice": "0x1234", + "maxFeePerGas": "0x1234", + "maxPriorityFeePerGas": "0x1234", "gas": "0x55555", "to": "0x07a565b7ed7d7a678680a4c162885bedbb695fe0", "value": "0x1234", @@ -94,59 +99,106 @@ Példa válasz: } ``` -- a `raw` az aláírt tranzakció rekurzív hosszúságú prefixumban (RLP) enkódolva +- a `raw` az aláírt tranzakció a [Recursive Length Prefix (RLP)](/developers/docs/data-structures-and-encoding/rlp) által kódolt formában - a `tx` az aláírt tranzakció JSON-ban -A szignatúra hash-sel a tranzakcióról kriptográfiailag be lehet bizonyítani, hogy a küldőtől jött és továbbították a hálózatra. +Az aláírás hash-sel a tranzakcióról kriptográfiailag be lehet bizonyítani, hogy a küldőtől jött és így továbbították a hálózatra. + +### Az adatmező {#the-data-field} + +A tranzakciók többsége egy szerződést ér el egy külső tulajdonú számláról. A legtöbb szerződést Solidity nyelven írják, az adatmezőt az [alkalmazás bináris interfész (ABI)](/glossary/#abi) alapján lehet értelmezni. + +Az első négy bájt adja meg a funkciót a híváshoz, a funkció nevének és argumentumok hash-ét használva. A funkció néha beazonosítható ebből az [adatbázisból](https://www.4byte.directory/signatures/). + +A hívási adat többi része az argumentumok, [az ABI-specifikáció szerint kódolva](https://docs.soliditylang.org/en/latest/abi-spec.html#formal-specification-of-the-encoding). + +Nézzük meg ezt a [tranzakciót](https://etherscan.io/tx/0xd0dcbe007569fcfa1902dae0ab8b4e078efe42e231786312289b1eee5590f6a1). **Kattintson a részletekért** a hívási adatok megtekintéséért. + +A funkcióválasztó a `0xa9059cbb`. Számos [ismert funkció létezik ezzel az aláírással](https://www.4byte.directory/signatures/?bytes4_signature=0xa9059cbb). Ebben az esetben [a szerződés forráskódját](https://etherscan.io/address/0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48#code) feltöltöttük az Etherscan-be, így tudjuk, hogy a funkció a `transfer(address,uint256)`. + +Az adat többi része: + +``` +0000000000000000000000004f6742badb049791cd9a37ea913f2bac38d01279 +000000000000000000000000000000000000000000000000000000003b0559f4 +``` + +Az ABI specifikáció szerint az integer értékek (mint a címek, amelyek 20 bájt hosszú integerek) az ABI-ban 32 bájt hosszan jelennek meg, nullákkal az elején. Így tudjuk, hogy a `to` (fogadó) cím a [`4f6742badb049791cd9a37ea913f2bac38d01279`](https://etherscan.io/address/0x4f6742badb049791cd9a37ea913f2bac38d01279). Az `value` (érték) pedig 0x3b0559f4 = 990206452. + +## Tranzakciótípusok {#types-of-transactions} + +Az Ethereumon található néhány tranzakciótípus: + +- Általános tranzakciók: egyik számláról a másikra. +- Szerződést telepítő tranzakciók: ahol nincs „to” vagyis fogadó cím, és az adatmezőket a szerződéskódra használják. +- A szerződés végrehajtása: olyan tranzakció, amely egy telepített okosszerződéssel kapcsolódik. Ekkor a „to” vagyis fogadó cím az okosszerződés címe. ### A gázról {#on-gas} -Ahogy korábban említettük, a tranzakciók [gáz](/developers/docs/gas/) költséget igényelnek a lefutáshoz. Egy egyszerű átutalás 21000 gáz egységet igényel. +Ahogy korábban említettük, a tranzakciók [gáz](/developers/docs/gas/)költséget igényelnek a lefutáshoz. Egy egyszerű átutalás 21 000 gázegységet igényel. -Így ahhoz, hogy Bob 1 ETH-et küldjön Alice-nek 200 Gwei `gasPrice` értékkel, a következő díjat kell kifizetnie: +Bob 1 ETH-t küld Alice-nek, ahol a `baseFeePerGas` 190 gwei és a `maxPriorityFeePerGas` 10 gwei, így Bobnak a következő díjat kell kifizetnie: ``` -200*21000 = 4,200,000 GWEI ---vagy-- -0.0042 ETH +(190 + 10) * 21 000 = 4 200 000 gwei +--vagyis-- +0,0042 ETH ``` -Bob számláját **-1.0042 ETH** terhelés éri +Bob számlája **-1,0042 ETH-val** csökken (1 ETH Alice-nek + 0,0042 ETH gázdíjakra) + +Alice számlájára **+1,0 ETH** érkezik -Alice számlájára **+1.0 ETH**-et írnak jóvá +Az elégetendő alapdíj **-0,00399 ETH** -A bányász, aki feldolgozta a tranzakciót **+0.0042 ETH**-et fog kapni +A validátor megtartja a borravalót, ami **+0,000210 ETH** -Az okosszerződés interakciók is gázt igényelnek. +Az okosszerződéses interakciók is gázt igényelnek. -![Egy diagram, mely a fel nem használt gáz visszatérítését ábrázolja](./gas-tx.png) _Diagram átvéve az [Ethereum EVM illusztrálva](https://takenobu-hs.github.io/downloads/ethereum_evm_illustrated.pdf)_ anyagból +![Egy diagram, amely a fel nem használt gáz visszatérítését ábrázolja](./gas-tx.png) _Diagram átvéve az [Ethereum EVM illusztrálva](https://takenobu-hs.github.io/downloads/ethereum_evm_illustrated.pdf)_ anyagból -Minden fel nem használt gáz visszakerül a felhasználó számlájára. +A tranzakcióban fel nem használt összes gáz visszakerül a felhasználó számlájára. -## Tranzakció életciklus {#transaction-lifecycle} +## Tranzakció-életciklus {#transaction-lifecycle} -Amikor elküld valaki egy tranzakciót, a következő történik: +Amikor valaki elküld egy tranzakciót, a következő történik: -1. Amikor elküldesz egy tranzakciót, egy kriptográfiai hash jön létre: `0x97d99bc7729211111a21b12c933c949d4f31684f1d6954ff477d0477538ff017` -2. A tranzakciót ezután közvetítik a hálózatra, és sok más tranzakcióval rendelkező készletbe foglalják. -3. Egy bányásznak ki kell választania a tranzakciódat és belefoglalnia egy blokkba, hogy hitelesítse és "sikeresnek" minősítse. - - Lehet, hogy ennél a résznél várnod kell, ha a hálózaton nagy a forgalom és a bányászok nem tudnak lépést tartani. A bányászok, mindig a nagyobb `GASPRICE` értékű tranzakciót veszik előre, mivel megtarthatják a tranzakciós díjakat. -4. A tranzakciód kap egy blokk megerősítési számot is. Ez azoknak a blokkoknak a mennyisége, melyek azután jöttek létre, miután te tranzakciódat blokkba foglalták. Minél nagyobb ez a szám, annál nagyobb bizonyossággal lehet kimondani, hogy a tranzakciót feldolgozták és a hálózat elismeri. Ez azért van, mert néha a blokk, mely befoglalja a tranzakciódat, nem mindig jut el a láncig. - - Minél nagyobb a blokk megerősítési szám, annál nehezebb megváltoztatni a tranzakciót. Így nagyobb értékű tranzakcióknál, nagyobb blokk megerősítési szám az elvárt. +1. A tranzakciós hash kriptográfiailag generálódik: `0x97d99bc7729211111a21b12c933c949d4f31684f1d6954ff477d0477538ff017` +2. A tranzakció ezután elterjed a hálózaton, bekerül a tranzakció gyűjtőmedencébe, ami az összes függő tranzakciót tartalmazza. +3. A validátornak ki kell választania a tranzakciót és bele kell foglalnia egy blokkba, hogy hitelesítse és „sikeresnek” minősítse. +4. Az idő múlásával a tranzakciót tartalmazó adott blokk a hitelesítettből a véglegesített állapotba jut. Ezek a frissítések biztossá teszik, hogy a tranzakció sikeres és többé nem lehet megváltoztatni. Amint a blokk végleges lesz, csak egy hálózatszintű támadás tudja megváltoztatni, ami sok milliárd dollárba kerülne a támadó részéről. -## Egy vizuális bemutató {#a-visual-demo} +## Vizuális bemutató {#a-visual-demo} -Nézd meg, ahogy Austin átvezet a tranzakciókon, a gázon és a bányászaton. +Kövesse végig, ahogy Austin bemutatja a tranzakciókat, a gázt és a bányászatot. +## Beírt tranzakciógöngyöleg {#typed-transaction-envelope} + +Az Ethereum eredetileg egyetlen formátummal rendelkezett a tranzakciókat illetően. Minden tranzakcióban a következő értékek voltak jelen: nonce, gázdíj, gázkorlátozás, a fogadó címe, az érték, adatok, v, r és s. Ezek a mezők [RLP-kódolásúak](/developers/docs/data-structures-and-encoding/rlp/), hogy így nézzenek ki: + +`RLP([nonce, gasPrice, gasLimit, to, value, data, v, r, s])` + +Az Ethereum tovább fejlődött, hogy többféle tranzakciót is támogatni tudjon olyan funkciók lehetővé tételéhez, mint a hozzáférési listák és a [EIP-1559](https://eips.ethereum.org/EIPS/eip-1559), és úgy tudja ezeket bevezetni, hogy ne érintsék az eredeti tranzakció formátumát. + +Az [EIP-2718](https://eips.ethereum.org/EIPS/eip-2718) teszi ezt lehetővé. A tranzakciókat így interpretálják: + +`TransactionType || TransactionPayload` + +Ahol a mezők jelentése: + +- `TransactionType` – egy szám 0 és 0x7f között, összesen 128 lehetséges tranzakciótípusra. +- `TransactionPayload` – tetszőleges bájtsor, amelyet a tranzakció típusa határoz meg. + ## További olvasnivaló {#further-reading} -_Ismersz olyan közösségi anyagot, amely segített neked? Módosítsd az oldalt és add hozzá!_ +- [EIP-2718: Tranzakciógöngyöleg](https://eips.ethereum.org/EIPS/eip-2718) + +_Ismersz olyan közösségi anyagot, mely segített neked? Módosítsd az oldalt és add hozzá!_ ## Kapcsolódó témák {#related-topics} - [Számlák](/developers/docs/accounts/) - [Ethereum virtuális gép (EVM)](/developers/docs/evm/) - [Üzemanyag](/developers/docs/gas/) -- [Bányászat](/developers/docs/consensus-mechanisms/pow/mining/) diff --git a/public/content/translations/hu/developers/docs/web2-vs-web3/index.md b/public/content/translations/hu/developers/docs/web2-vs-web3/index.md index dd367ac3617..0561b0b2d6a 100644 --- a/public/content/translations/hu/developers/docs/web2-vs-web3/index.md +++ b/public/content/translations/hu/developers/docs/web2-vs-web3/index.md @@ -6,14 +6,16 @@ lang: hu A web2 arra az internetre utal, melyet ma legtöbbünk ismer. Egy internet, melyet olyan cégek dominálnak, melyek szolgáltatásokat nyújtanak a személyes adataidért cserébe. A web3 az Ethereum kontextusában decentralizált alkalmazásokra utal, melyek a blokkláncon futnak. Ezek olyan alkalmazások, amelyek lehetővé teszik, hogy bárki részt vegyen anélkül, hogy monetizálná a személyes adatait. +Egy sokkal inkább kezdőknek szóló áttekintést szeretne? Tekintse meg a [bevezetés a web3-ba](/web3/) oldalt. + ## Web3 előnyök {#web3-benefits} -Sok web3 fejlesztő választotta a dappok fejlesztését az Ethereum örökletes decentralizációja miatt: +Sok web3-fejlesztő választotta a dappok fejlesztését az Ethereum örökletes decentralizációja miatt: - A hálózaton mindenkinek hozzáférése van, hogy használja a szolgáltatást - máshogy megfogalmazva, nincs engedélyhez kötve. - Senki sem blokkolhatja és nem tagadhatja meg a szolgáltatáshoz való hozzáférést. - A fizetések be vannak építve a natív tokennel, Etherrel (ETH). -- Az Ethereum Turing-teljes, vagyis lényegében bármit leprogramozhatsz. +- Az Ethereum Turing-kompatibilis, vagyis lényegében bármi leprogramozható a számára. ## Gyakorlati összehasonlítás {#practical-comparisons} @@ -23,15 +25,16 @@ Sok web3 fejlesztő választotta a dappok fejlesztését az Ethereum örökletes | A fizetési szolgáltatás úgy dönthet, hogy bizonyos munkákért nem engedélyezi a kifizetéseket | A web3 fizetési alkalmazások nem igényelnek személyes adatot és nem tudnak fizetéseket megakadályozni | | A maszek gazdaságot kiszolgáló alkalmazások leállhatnak és ez hatással lehet a dolgozó bevételére | A web3 szerverek nem állhatnak le – az Ethereumot használják backendként, mely egy több ezer számítógépből álló decentralizált hálózat | -Ez nem jeleni azt, hogy minden szolgáltatást dappá kell alakítani. Ezek a példák illusztrisak, hogy kiemeljék a legfontosabb különbségeket a web2 és a web3 szolgáltatások között. +Ez nem jeleni azt, hogy minden szolgáltatást dappá kell alakítani. Ezek a példák a web2 és a web3 szolgáltatások közötti fő különbségeket hivatottak bemutatni. ## Web3 korlátok {#web3-limitations} -A web3-nak jelenleg van egy pár korlátja: +A web3-at jelenleg több dolog is korlátozza: -- Méretezhetőség – a tranzakciók lassabbak a web3-on, mivel decentralizált. A fizetéshez hasonló állapotváltozásokat bányászoknak kell feldolgozniuk és közvetíteniük a hálózaton keresztül. +- Méretezhetőség – a tranzakciók lassabbak a web3-on, mivel decentralizált. Az olyan státuszváltozásokat, mint amilyen a fizetés is, egy csomópontnak kell feldolgoznia és közvetíteni azt a hálózaton keresztül. - UX – a web3 alkalmazásokkal történő interakció extra lépéseket, szoftvert és oktatást igényelhet. Ez akadályozza az elterjedését. -- Költség – a legtöbb sikeres dapp csak a kódjuknak egy kis hányadát teszik fel a blokkláncra, mivel ez elég költséges. +- Elérhetőség – a modern webböngészők nem elég integráltak ahhoz, hogy a web3-at a legtöbb felhasználó elérhesse. +- Költség – a legtöbb sikeres dapp csak a kódjának csak egy kis hányadát teszi fel a blokkláncra, mivel ez elég költséges. ## Centralizáció vs decentralizáció {#centralization-vs-decentralization} @@ -47,9 +50,13 @@ Az alábbi táblázatban felsoroljuk a centralizált és decentralizált digitá | A központi hatóság cenzúrázhatja az adatokat, potenciálisan elvágva a hálózat egyes részeit a hálózat többi részével való interakciótól. | A cenzúra sokkal nehezebb, mivel az információ sokféleképpen terjedhet a hálózaton keresztül. | | A hálózatban való részvételt a központi hatóság ellenőrzi. | Bárki részt vehet a hálózatban; nincsenek "kapuőrök." Ideális esetben a részvétel költsége nagyon alacsony. | -Azt meg kell jegyezni, hogy ezek a minták nem biztos, hogy minden hálózatra igazak. Továbbá a valóságban egy hálózat centralizáltsága/decentralizáltsága egy skálán helyezkedik el; nincsen teljesen centralizált vagy teljesen decentralizált hálózat. +Azt meg kell jegyezni, hogy ezek a minták nem biztos, hogy minden hálózatra igazak. Továbbá a valóságban egy hálózat centralizáltsága/decentralizáltsága skálán mérhető; nincsen teljesen centralizált vagy teljesen decentralizált hálózat. ## További olvasnivaló {#further-reading} +- [Mi az a web3?](/web3/) – _ethereum.org_ +- [A web 3.0 alkalmazások architektúrája](https://www.preethikasireddy.com/post/the-architecture-of-a-web-3-0-application) – _Preethi Kasireddy_ - [A decentralizáció jelentése](https://medium.com/@VitalikButerin/the-meaning-of-decentralization-a0c92b76a274) _Feb 6, 2017 - Vitalik Buterin_ - [Why Decentralization Matters](https://medium.com/s/story/why-decentralization-matters-5e3f79f7638e) _Feb 18, 2018 - Chris Dixon_ +- [Mi az a web 3.0 és miért fontos?](https://medium.com/fabric-ventures/what-is-web-3-0-why-it-matters-934eb07f3d2b) _2019. december 31. – Max Mersch and Richard Muirhead_ +- [Miért van szükség a web 3.0-ra?](https://medium.com/@gavofyork/why-we-need-web-3-0-5da4f2bf95ab) _2018. szeptember 12. – Gavin Wood_ diff --git a/public/content/translations/hu/eips/index.md b/public/content/translations/hu/eips/index.md index 823708ef209..032e9567237 100644 --- a/public/content/translations/hu/eips/index.md +++ b/public/content/translations/hu/eips/index.md @@ -1,53 +1,66 @@ --- title: Ethereum Fejlesztési Javaslatok (EIP-k) -description: Az alapvető információk, melyek az Ethereum fejlesztési javaslatok (EIP-k) megértéséhez szükségesek. +description: Az EIP megértéséhez szükséges alapinformációk lang: hu --- -# Bevezetés az Ethereum Fejlesztési Javaslatokba (EIP-k) {#introduction-to-ethereum-improvement-proposals-eips} +# Bevezetés az Ethereum Fejlesztési Javaslatokba (EIP-k) {#introduction-to-ethereum-improvement-proposals} ## Mik azok az EIP-k? {#what-are-eips} [Az Ethereum Fejlesztési Javaslatok (EIP-k)](https://eips.ethereum.org/) olyan sztenderdek, melyek potenciális új funkciókat és folyamatokat specifikálnak az Ethereumra. Az EIP-k tartalmazzák a javasolt változtatások műszaki előírásait, és a közösség „igazságforrásaként” működnek. Az Ethereum hálózati frissítéseit és alkalmazási szabványait az EIP folyamaton keresztül tárgyalják és fejlesztik. -Az Ethereum közösségben bárki létrehozhat egy EIP-t. Az EIP írás irányelveit az [EIP 1](https://eips.ethereum.org/EIPS/eip-1) tartalmazza. Az EIP-nek tömör technikai specifikációt kell tartalmaznia a szolgáltatásról és annak indoklásáról. Az EIP szerzője felelős a közösségen belüli konszenzus kialakításáért és az eltérő vélemények dokumentálásáért. A jól kidolgozott EIP benyújtásának magas technikai elvárásai miatt a legtöbb EIP szerző történelmileg alkalmazás- vagy protokollfejlesztő volt. +Az Ethereum közösségben bárki létrehozhat egy EIP-t. Az EIP-írás irányelveit az [EIP-1](https://eips.ethereum.org/EIPS/eip-1) tartalmazza. Egy EIP elsődleges célja, hogy tömör technikai specifikációt nyújtson némi motivációval együtt. Az EIP szerzője felelős a közösségen belüli konszenzus kialakításáért, valamint az eltérő vélemények dokumentálásáért. A jól kidolgozott EIP benyújtásának magas szakmai követelményei miatt a legtöbb EIP-szerző általában alkalmazás- vagy protokollfejlesztő. ## Miért fontosak az EIP-k? {#why-do-eips-matter} -Az EIP-k központi szerepet játszanak abban, hogy a változások hogyan történnek és dokumentálódnak az Ethereumon. Így lehet az embereknek javaslatot tenni, vitatkozni és elfogadni a változásokat. [Különböző típusú EIP-k](https://github.com/ethereum/EIPs/blob/master/EIPS/eip-1.md#eip-types) léteznek, beleértve az alacsony szintű protokoll-változtatásokhoz szükséges alapvető EIP-ket, amelyek befolyásolják a konszenzust és hálózati frissítést igényelnek, valamint az alkalmazási szabványokhoz szükséges ERC-ket. Például a token létrehozás szabványai, mint az [ERC20](https://eips.ethereum.org/EIPS/eip-20) vagy az [ERC721](https://eips.ethereum.org/EIPS/eip-721) lehetővé teszik ezekkel a tokenekkel interakcióba lépő alkalmazásoknak, hogy az összes tokent ugyanazon szabály szerint kezeljék, mely így könnyebbé teszi az interoperábilis alkalmazások létrehozását. +Az EIP-k központi szerepet játszanak abban, hogy a változások hogyan történnek és dokumentálódnak az Ethereumon. Így lehet az embereknek javaslatot tenni, vitatkozni és elfogadni a változásokat. Különböző [EIP-típusok léteznek](https://eips.ethereum.org/EIPS/eip-1#eip-types), például alapvető (core) EIP-k az alacsony szintű protokollmódosításokhoz, amelyek a konszenzust érintik és hálózatfrissítést igényelnek, mint az [EIP-1559](https://eips.ethereum.org/EIPS/eip-1559), valamint az alkalmazásstandardokat érintő ERC-k, például az [EIP-20](https://eips.ethereum.org/EIPS/eip-20) és az [EIP-721](https://eips.ethereum.org/EIPS/eip-721). -Minden hálózati frissítés EIP-kből áll, melyeket minden [Ethereum kliensnek](/learn/#clients-and-nodes) implementálnia kell a hálózaton. Ez azt jelenti, hogy az Ethereum főhálózat többi kliensével való konszenzus fenntartása érdekében az kliens fejlesztőknek meg kell győződniük arról, hogy mindannyian implementálták a szükséges EIP-ket. +Minden hálózati frissítés EIP-kből áll, melyeket a hálózaton működő összes [Ethereum-kliensnek](/learn/#clients-and-nodes) implementálnia kell. Ez azt jelenti, hogy az Ethereum-főhálózat többi kliensével való konszenzus fenntartása érdekében a kliensfejlesztőknek meg kell győződniük arról, hogy mindannyian implementálták a szükséges EIP-ket. -A változások technikai specifikációjával együtt az EIP-k egy olyan egységet képeznek, amely körül az irányítás történik az Ethereumban: bárki szabadon javasolhat egyet, ezután a közösség különböző érdekeltjei megvitatják, hogy ezt szabványként kell-e elfogadni, vagy egy hálózati frissítés legyen-e belőle. Mivel a nem belső (non-core) EIP-ket nem kell minden alkalmazásnak bevezetnie (például csinálhatsz egy nem-[ERC20 tokent](https://eips.ethereum.org/EIPS/eip-20)), de a belső (core) EIP-ket széleskörűen be kell vezetni (mivel minden csomópontot frissíteni kell, hogy ugyanahhoz a hálózathoz tartozzanak), a belső EIP-k szélesebb konszenzust igényelnek a közösségen belül, mint a nem belső EIP-k. +A változások technikai specifikációjával együtt az EIP-k egy olyan egységet képeznek, amely körül az irányítás történik az Ethereumban: bárki szabadon javasolhat egyet, ezután a közösség különböző érdekeltjei megvitatják, hogy ezt szabványként kell-e elfogadni, vagy egy hálózati frissítés legyen-e belőle. Mivel a nem alapvető (non-core) EIP-ket nem kell minden alkalmazásnak bevezetnie (például készíthető egy helyettesíthető token, amely nem használja az EIP-20 szabványt), de az alapvető (core) EIP-ket széleskörűen be kell vezetni (mivel minden csomópontot frissíteni kell, hogy ugyanahhoz a hálózathoz tartozzanak), az alapvető EIP-k szélesebb konszenzust igényelnek a közösségen belül, mint a nem alapvető EIP-k. ## EIP-k története {#history-of-eips} -Az [Ethereum Improvement Proposals (EIPs) GitHub gyűjteményt](https://github.com/ethereum/EIPs) 2015 októberében hozták létre. Az EIP folyamat a [Bitcoin Improvement Proposals (BIPs)](https://github.com/bitcoin/bips) folyamaton alapul, ami pedig a [Python Enhancement Proposals (PEPs)](https://www.python.org/dev/peps/) folyamaton alapul. +Az [Ethereum Improvement Proposals (EIPs) Github gyűjteményt](https://github.com/ethereum/EIPs) 2015 októberében hozták létre. Az EIP folyamat a [Bitcoin Improvement Proposals (BIPs)](https://github.com/bitcoin/bips) folyamaton alapul, ami pedig a [Python Enhancement Proposals (PEPs)](https://www.python.org/dev/peps/) folyamaton alapul. -Az EIP szerkesztők feladata a technikai hibátlanság, a helyesírás/nyelvtan és a kód stílus ellenőrzése. Többek között Martin Becze, Vitalik Buterin és Gavin Wood voltak az eredeti EIP szerkesztők 2015-től 2016 végéig. A jelenlegi EIP szerkesztők: +Az EIP-szerkesztők feladata a technikai stabilitás és a formázási kérdések vizsgálata, valamint a helyesírás/nyelvtan és a kódstílus ellenőrzése. Többek között Martin Becze, Vitalik Buterin és Gavin Wood voltak az eredeti EIP szerkesztők 2015-től 2016 végéig. -- Alex Beregszaszi (EWASM/Ethereum Foundation) -- Greg Colvin (Community) -- Casey Detrio (EWASM/Ethereum Foundation) -- Hudson James (Ethereum Foundation) -- Nick Johnson (ENS) -- Nick Savers (Community) +Jelenlegi EIP-szerkesztők: -## Bővebben {#learn-more} +- Alex Beregszaszi (@axic) +- Gavin John (@Pandapip1) +- Greg Colvin (@gcolvin) +- Matt Garnett (@lightclient) +- Sam Wilson (@SamWilsn) -Ha szeretnél többet olvasni az EIP-kről, akkor látogasd meg az [EIP-k weboldalát](https://eips.ethereum.org/), ahogy további információkat találhatsz többek között: +Tiszteletbeli EIP-szerkesztők: -- [A különböző EIP típusokról](https://eips.ethereum.org/) -- [Az EIP-ről, melyek elkészültek](https://eips.ethereum.org/all) -- [Az EIP státuszokról és a jelentésükről](https://eips.ethereum.org/) +- Casey Detrio (@cdetrio) +- Hudson Jameson (@Souptacular) +- Martin Becze (@wanderer) +- Micah Zoltu (@MicahZoltu) +- Nick Johnson (@arachnid) +- Nick Savers (@nicksavers) +- Vitalik Buterin (@vbuterin) -## Részvétel {#participate} +Ha ön is szeretne EIP-szerkesztő lenni, akkor tekintse meg az [EIP-5069](https://eips.ethereum.org/EIPS/eip-5069) frissítést. + +Az EIP-szerkesztők döntik el, hogy egy javaslat mikor áll készen arra, hogy EIP váljon belőle, és segítenek az EIP-szerzőknek kidolgozni javaslataikat. Az [Ethereum macskapásztorok (Cat Herder)](https://www.ethereumcatherders.com/) segítenek az EIP-szerkesztők és a közösség találkozóinak szervezésében (lásd még [EIPIP](https://github.com/ethereum-cat-herders/EIPIP)). + +A teljes szabványosítási folyamat diagrammal együtt megtalálható az [EIP-1](https://eips.ethereum.org/EIPS/eip-1) frissítésben. -Ha szeretnéd követni vagy megosztani a véleményedet az EIP-kről, akkor nézd meg az [Ethereum Magicians fórumot](https://ethereum-magicians.org/), ahol megvitatjuk az EIP-eket a közösséggel. +## Bővebben {#learn-more} + +Ha szeretne többet olvasni az EIP-kről, akkor tekintse meg az [EIP-k weboldalát](https://eips.ethereum.org/) és az [EIP-1](https://eips.ethereum.org/EIPS/eip-1) frissítést. További hasznos linkek: -Továbbá: +- [Az összes EIP listája](https://eips.ethereum.org/all) +- [Az összes EIP-típus leírása](https://eips.ethereum.org/EIPS/eip-1#eip-types) +- [Az összes EIP-állapot leírása](https://eips.ethereum.org/EIPS/eip-1#eip-process) + +## Részvétel {#participate} -- [Hogyan kell EIP-t készíteni](https://eips.ethereum.org/EIPS/eip-1) +Bárki létrehozhat EIP-t. A javaslat beküldése előtt el kell olvasni az [EIP-1](https://eips.ethereum.org/EIPS/eip-1) frissítést, amely leírja az EIP-folyamatot és az EIP megírásának módját, továbbá visszajelzést kell kérni az [Ethereum Mágusok](https://ethereum-magicians.org/) weboldalán, ahol a tervezet benyújtása előtt a közösséggel együtt megvitatják a javaslatokat. ## Hivatkozások {#references} diff --git a/public/content/translations/hu/energy-consumption/index.md b/public/content/translations/hu/energy-consumption/index.md index 6732b0b5467..133be2fd013 100644 --- a/public/content/translations/hu/energy-consumption/index.md +++ b/public/content/translations/hu/energy-consumption/index.md @@ -8,54 +8,56 @@ lang: hu Az Ethereum egy környezetbarát blokklánc. Az Ethereum [proof-of-stake](/developers/docs/consensus-mechanisms/pos) konszenzus mechanizmusa ETH-t használ [az energia helyett, hogy biztosítsa a hálózatot](/developers/docs/consensus-mechanisms/pow). Az Ethereum energiafogyasztása [~0,0026 TWh/év](https://carbon-ratings.com/eth-report-2022) a teljes globális hálózaton. -Az Ethereum energiafogyasztásának becsült adata egy [CCRI (Crypto Carbon Ratings Institute)](https://carbon-ratings.com) tanulmányból származik. Ez egy lentről felfelé építkező becslés az Ethereum-hálózat áramfogyasztásáról és karbonlábnyomáról ([nézze meg a reportot](https://carbon-ratings.com/eth-report-2022)). A különféle csomópontok áramfogyasztását mérték, melyek különböző hardverekkel és kliensszoftverekkel működnek. A becsült **2601 MWh** (0,0026 TWh), mint a hálózat teljes éves áramfogyasztása, megfelel **870 tonna CO2e** szén-dioxid kibocsátásnak, regionális tényezőket figyelembe véve. Ez az érték változik, ahogy a csomópontok belépnek a hálózatra és kilépnek a hálózatról – Ön is ellenőrizheti egy gördülő 7 napos átlagbecsléssel: [Cambridge-blokklánchálózat fenntarthatósági index](https://ccaf.io/cbnsi/ethereum) (a módszer kicsit más, nézze meg a részleteket az oldalukon). +Az Ethereum energiafogyasztásának becsült adata egy [CCRI (Crypto Carbon Ratings Institute)](https://carbon-ratings.com) tanulmányból származik. Ez egy lentről felfelé építkező becslés az Ethereum-hálózat áramfogyasztásáról és karbonlábnyomáról ([nézze meg a reportot](https://carbon-ratings.com/eth-report-2022)). A különféle csomópontok áramfogyasztását mérték, melyek különböző hardverekkel és kliensszoftverekkel működnek. A becsült **2601 MWh** (0,0026 TWh), mint a hálózat teljes éves áramfogyasztása, megfelel **870 tonna CO2e** szén-dioxid kibocsátásnak, regionális tényezőket figyelembe véve. Ez az érték változik, ahogy a csomópontok belépnek a hálózatra és kilépnek a hálózatról – Ön is ellenőrizheti egy gördülő 7 napos átlagbecsléssel: [Cambridge-blokklánchálózat fenntarthatósági indexe](https://ccaf.io/cbnsi/ethereum) (a módszer kicsit más, nézze meg a részleteket az oldalukon). -Ethereum energiafogyasztását vesszük össze más iparágak éves becsléseivel, hogy kontextusban lássuk azt. Így jobban megértjük, hogy Ethereum fogyasztása magas vagy alacsony. +Az Ethereum energiafogyasztását összevethetjük más termékek és iparágak éves becsléseivel, hogy kontextusban lássuk azt. Így jobban megértjük, hogy Ethereum fogyasztása magas vagy alacsony. -Az ábra a becsült éves fogyasztást mutatja TWh/év formájában. A becslések nyilvános adatokból származnak 2023. májusában, a forrásokat megtalálja a táblázat alatt: +Az ábra az Ethereum becsült fogyasztását mutatja TWh/év formájában, más termékekkel és iparágakkal összevetve. A becslések nyilvános adatokból származnak 2023. júliusából, a forrásokat megtalálja a táblázat alatt. -| | Éves energiafogyasztás (TWh) | Összevetve a PoS Ethereummal | Forrás | -| :------------------------- | :--------------------------: | :--------------------------: | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| Globális adatközpontok | 200 | 77 000x | [forrás](https://www.iea.org/commentaries/data-centres-and-energy-from-global-headlines-to-local-headaches) | -| Aranybányászat | 131 | 50 000x | [forrás](https://ccaf.io/cbnsi/cbeci/comparisons) | -| Bitcoin | 131 | 50 000x | [forrás](https://ccaf.io/cbnsi/cbeci/comparisons) | -| PoW Ethereum | 78 | 30 000x | [forrás](https://digiconomist.net/ethereum-energy-consumption) | -| Youtube (csak a közvetlen) | 12 | 4600x | [forrás](https://www.gstatic.com/gumdrop/sustainability/google-2020-environmental-report.pdf) | -| Számítógépes játékok (USA) | 34 | 13 000x | [forrás](https://www.researchgate.net/publication/336909520_Toward_Greener_Gaming_Estimating_National_Energy_Use_and_Energy_Efficiency_Potential) | -| Netflix | 0,451 | 173x | [forrás](https://assets.ctfassets.net/4cd45et68cgf/7B2bKCqkXDfHLadrjrNWD8/e44583e5b288bdf61e8bf3d7f8562884/2021_US_EN_Netflix_EnvironmentalSocialGovernanceReport-2021_Final.pdf) | -| PayPal | 0,26 | 100x | [forrás](https://app.impaakt.com/analyses/paypal-consumed-264100-mwh-of-energy-in-2020-24-from-non-renewable-sources-27261) | -| AirBnB | 0,02 | 8x | [forrás]() | -| PoS Ethereum | 0,0026 | 1x | [forrás](https://carbon-ratings.com/eth-report-2022) | +| | Éves energiafogyasztás (TWh) | Összevetve a PoS Ethereummal | Forrás | +|:--------------------------- |:----------------------------:|:----------------------------:|:---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------:| +| Globális adatközpontok | 190 | 73 000x | [forrás](https://www.iea.org/commentaries/data-centres-and-energy-from-global-headlines-to-local-headaches) | +| Bitcoin | 149 | 53 000x | [forrás](https://ccaf.io/cbnsi/cbeci/comparisons) | +| Aranybányászat | 131 | 50 000x | [forrás](https://ccaf.io/cbnsi/cbeci/comparisons) | +| Számítógépes játékok (USA)* | 34 | 13 000x | [forrás](https://www.researchgate.net/publication/336909520_Toward_Greener_Gaming_Estimating_National_Energy_Use_and_Energy_Efficiency_Potential) | +| PoW Ethereum | 21 | 8100x | [forrás](https://ccaf.io/cbnsi/ethereum/1) | +| Google | 19 | 7300x | [forrás](https://www.gstatic.com/gumdrop/sustainability/google-2022-environmental-report.pdf) | +| Netflix | 0,457 | 176x | [forrás](https://assets.ctfassets.net/4cd45et68cgf/7B2bKCqkXDfHLadrjrNWD8/e44583e5b288bdf61e8bf3d7f8562884/2021_US_EN_Netflix_EnvironmentalSocialGovernanceReport-2021_Final.pdf) | +| PayPal | 0,26 | 100x | [forrás](https://s202.q4cdn.com/805890769/files/doc_downloads/global-impact/CDP_Climate_Change_PayPal-(1).pdf) | +| AirBnB | 0,02 | 8x | [forrás](https://s26.q4cdn.com/656283129/files/doc_downloads/governance_doc_updated/Airbnb-ESG-Factsheet-(Final).pdf) | +| **PoS Ethereum** | **0,0026** | **1x** | [forrás](https://carbon-ratings.com/eth-report-2022) | -Bonyolult pontos becsléseket készíteni az energiafogyasztásról, főleg ha a vizsgált entitás összetett ellátási lánccal bír, ami befolyásolja a hatékonyságát. Vegyük a Netflixet vagy Youtube-ot példaként. A fogyasztásuk becslése attól függően változik, hogy a rendszer fenntartását és a tartalomnak a felhasználóhoz való eljutását nézik (_közvetlen fogyasztás_) vagy beleveszik azt is, amit a tartalom előállítása, irodák fenntartása, reklámozás stb. jelent (_közvetett fogyasztás_). A közvetlen fogyasztás azt is felölelheti, hogy mennyi energia kell a felhasználónak, hogy a tartalmat megnézze a tévében, számítógépen és mobilon, ami ezektől az eszközöktől is nagyban függ. +\*Beleértve a felhasználói eszközök fogyasztását, mint asztali számítógépek, laptopok és játékkonzolok. -Egy erről szóló beszélgetés: [Carbon Brief](https://www.carbonbrief.org/factcheck-what-is-the-carbon-footprint-of-streaming-video-on-netflix). A táblázat a Netflix által közölt _közvetlen_ és _közvetett_ használatot mutatja. A Youtube csak a _közvetlen_ fogyasztást adta meg, ami [12 TWh/év](https://www.gstatic.com/gumdrop/sustainability/google-2020-environmental-report.pdf). +Bonyolult pontos becsléseket készíteni az energiafogyasztásról, főleg ha a vizsgált entitás összetett ellátási lánccal bír, ami befolyásolja a hatékonyságát. A Netflix és a Google esetében például a fogyasztás becslése attól függően változik, hogy a rendszer fenntartását és a tartalomnak a felhasználóhoz való eljutását nézik (_közvetlen fogyasztás_), vagy beleveszik azt is, amit a tartalom előállítása, irodák fenntartása, reklámozás stb. jelent (_közvetett fogyasztás_). A közvetett fogyasztásba az is beleszámíthat, hogy mennyi energiát vesz igénybe elfogyasztani a kínált tartalma a felhasználó oldalán, a tévék, számítógépek és mobilok használata során. -Az összehasonlítás a Bitcoint és a proof-of-work Ethereumot feltünteti. Fontos megérteni, hogy a proof-of-work hálózatok fogyasztása nem statikus, napról napra változik. A proof-of-work Ethereumra vonatkozó érték pontosan [az egyesítés (The Merge)](/roadmap/merge/) előtti állapotot mutatja, ami a proof-of-stake mechanizmusra váltotta át a rendszert, és a [Digiconomist](https://digiconomist.net/ethereum-energy-consumption) jelezte. Más források, mint a [Cambridge-blokklánchálózat fenntartási index](https://ccaf.io/cbnsi/ethereum/1) sokkal kevesebbre becsülik (20 TWh/évhez közelebb). A Bitcoin fogyasztása is más a különböző források szerint, ami sok [vitát](https://www.coindesk.com/business/2020/05/19/the-last-word-on-bitcoins-energy-consumption/) generál, nemcsak a felhasznált energia mennyiségéről, hanem annak forrásáról és etikájáról. Az energiafogyasztás nem feltétlenül pontosan kapcsolódik a környezeti hatásokhoz, mert különböző projektek különféle energiaforrásokat használnak, például kisebb vagy nagyobb arányú megújuló forrásokat. Például a [Cambridge Bitcoin elektromosáram-fogyasztási index](https://ccaf.io/cbnsi/cbeci/comparisons) azt mutatja, hogy a Bitcoin hálózati igénye elméletileg kielégíthető lenne abból a gázból vagy áramból, ami a szállítás során amúgy is elveszne. Az Ethereum a fenntarthatóság miatt cserélte le a rendszer energiaéhes részét egy környezetbarát alternatívára. +A fenti becslések nem tökéletes összehasonlítások. A közvetett fogyasztás mennyisége, amivel számolnak, különbözik a források szerint és ritkán tartalmazza a felhasználók eszközeit is. Minden mögöttes információforrás több részletet közöl arról, hogy pontosan mit mérnek. + +Az összehasonlítás a Bitcoint és a proof-of-work Ethereumot feltünteti. Fontos megérteni, hogy a proof-of-work hálózatok fogyasztása nem statikus, és napról napra változik. A becslések nagy mértékben eltérhetnek a források szerint is. A téma árnyalt [vitát](https://www.coindesk.com/business/2020/05/19/the-last-word-on-bitcoins-energy-consumption/) generál, nemcsak a felhasznált energia mennyiségéről, hanem annak forrásáról és etikájáról is. Az energiafogyasztás nem feltétlenül pontosan kapcsolódik a környezeti hatásokhoz, mert különböző projektek különféle energiaforrásokat használnak, beleértve a kisebb vagy nagyobb arányú megújuló forrásokat is. Például a [Cambridge Bitcoin elektromosáram-fogyasztási index](https://ccaf.io/cbnsi/cbeci/comparisons) azt mutatja, hogy a Bitcoin hálózati igénye elméletileg kielégíthető lenne abból a gázból vagy áramból, ami a szállítás során amúgy is elveszne. Az Ethereum a fenntarthatóság miatt cserélte le a rendszer energiaéhes részét egy környezetbarát alternatívára. Számtalan iparág energiafogyasztását és szén-dioxid-kibocsátását megtekintheti a [Cambridge-blokklánchálózat fenntarthatósági index oldalán](https://ccaf.io/cbnsi/ethereum). ## Tranzakciónkénti becslés {#per-transaction-estimates} -Számos cikk tranzakciónkénti becslésről beszél a blokkláncok esetén. Ez félrevezető, mert a blokkjavaslat és validálás független a benne található tranzakciók számától. A tranzakciónkénti felhasználás azt jelentené, hogy kevesebb tranzakció kevesebb energiát fogyaszt és fordítva, de ez nem igaz. Emellett a tranzakciónkénti becslés érzékeny arra, hogy a blokklánc tranzakcióátvitelét hogyan definiálják, melynek megcsavarásával látszólag nagyobb vagy kisebb érték jön ki. +Számos cikk tranzakciónkénti becslésről beszél a blokkláncok esetén. Ez félrevezető, mert a blokkjavaslat és validálás független a benne található tranzakciók számától. A tranzakciónkénti felhasználás azt jelentené, hogy kevesebb tranzakció kevesebb energiát fogyaszt és fordítva, de ez nem igaz. Emellett a tranzakciónkénti becslés érzékeny arra, hogy a blokklánc tranzakcióátvitelét hogyan definiálják, amelynek megcsavarásával látszólag nagyobb vagy kisebb érték jön ki. -Például az Ethereumon a tranzakcióátvitel nemcsak az alapréteget tartalmazza, hanem a [második blokkláncréteg (L2)](/layer-2/) rollupjait is. Az L2 általában nincs benne a kalkulációkban, de ha hozzávennénk a szekvenszer általi fogyasztást (kevés) és a kezelt tranzakciókat (sok), akkor jelentősen lecsökkenne a tranzakciónkénti becslés. Ez az egyik oka annak, hogy a platformok tranzakciónkénti energiafogyasztásának összehasonlítása félrevezető lehet. +Az Ethereumon például a tranzakcióátvitel nemcsak az alapréteget tartalmazza, hanem a [második blokkláncréteg (L2)](/layer-2/) összevont tranzakcióit is. Az L2 általában nincs benne a kalkulációkban, de ha hozzávennénk a szekvenszer általi fogyasztást (kevés) és a kezelt tranzakciókat (sok), akkor jelentősen lecsökkenne a tranzakciónkénti becslés. Ez az egyik oka annak, hogy a platformok tranzakciónkénti energiafogyasztásának összehasonlítása félrevezető lehet. ## Az Ethereum karbonadóssága {#carbon-debt} -Az Ethereum energiafelhasználása igen alacsony, de nem mindig volt így. Eredetileg a proof-of-work mechanizmust használta, ami nagyobb környezeti költségekkel járt, mint a jelenlegi proof-of-stake. +Az Ethereum energiafelhasználása igen alacsony, de nem mindig volt így. Az Ethereum eredetileg a proof-of-work mechanizmust használta, ami nagyobb környezeti költségekkel járt, mint a jelenlegi proof-of-stake. -Az Ethereum eleve a proof-of-stake alapú konszenzusmechanizmust tervezte, anélkül hogy feláldozná a biztonságot vagy a decentralizálást, és ezért többéves fókuszált kutatás és fejlesztés kellett hozzá. Emiatt a hálózat felállításához a proof-of-work mechanizmusra volt szükség. Ennél a bányászok a számítógépeiket használják az érték kiszámolására, energiát fogyasztva eközben. +Az Ethereum eleve a proof-of-stake-alapú konszenzusmechanizmust tervezte, anélkül hogy feláldozná a biztonságot vagy a decentralizáltságot, ezért többéves fókuszált kutatás és fejlesztés kellett hozzá. Emiatt a hálózat felállításához a proof-of-work mechanizmusra volt szükség. Ennél a bányászok a számítógépeiket használják az érték kiszámolására, energiát fogyasztva eközben. -![Az Ethereum energiafogyasztásának összehasonlítása a Merge előtt és után, ahol az Eiffel torony (330 méter magas) a bal oldalon jeleni a korábbi állapotot, egy 4 cm-es LEGO-figura pedig a jelenlegit](energy_consumption_pre_post_merge.png) +![Az Ethereum energiafogyasztásának összehasonlítása a Beolvadás előtt és után, ahol az Eiffel torony (330 méter magas) a bal oldalon jelenti a korábbi állapotot, vagyis a nagy energiafogyasztást, a jelentős csökkenést pedig a 4 cm-es LEGO-figura képviseli](energy_consumption_pre_post_merge.png) -A CCRI becslése szerint a Merge több mint **99,988%-kal** lecsökkentette az éves áramfogyasztást. Ugyanígy a karbonlábnyoma is csökkent **99,992%-kal** (11 016 000 tonna helyett 870 tonna CO2e lett). Ez a változás olyan, mint az Eiffel torony magaságáról egy kis bábu méretére csökkent fogyasztás, ahogy az ábra illusztrálja. Ennek következtében a hálózat biztosításának környezeti költsége drasztikusan lecsökkent. A hálózat biztonsága pedig növekedett. +A CCRI becslése szerint a Beolvadás több mint **99,988%-kal** lecsökkentette az Ethereum éves áramfogyasztását. Ugyanígy az Ethereum karbonlábnyoma is csökkent **99,992%-kal** (11 016 000 tonna helyett 870 tonna CO2e lett). Ez a változás olyan, mint az Eiffel torony magaságáról egy kis bábu méretére csökkent fogyasztás, ahogy az ábra illusztrálja. Ennek következtében a hálózat biztosításának környezeti költsége drasztikusan lecsökkent. A hálózat biztonsága pedig növekedett. ## Környezetbarát alkalmazási réteg {#green-applications} -Miközben az Ethereum energiafogyasztása nagyon alacsony, egy jelentős, fejlődő és igen aktív [**regeneratív pénzügyek (ReFi)**](/refi/) közösség épült a hálózaton. A ReFi alkalmazások a decentralizált pénzügyek (DeFi) komponenseit használják, hogy olyan pénzügyi alkalmazásokat építsenek, melyek pozitív externáliákat teremtenek. A ReFi része egy kiterjedtebb[„solarpunk”](https://en.wikipedia.org/wiki/Solarpunk) mozgalomnak, ami szorosan kötődik az Ethereumhoz, és a technológiai fejlődést a környezetről való gondoskodással párosítja. Az Ethereum decentralizált, engedélymentes és egymásra építhető jellege miatt ideális alap a ReFi és a solarpunk közösségeknek. +Miközben az Ethereum energiafogyasztása nagyon alacsony, egy jelentős, fejlődő és igen aktív [**regeneratív pénzügyi (ReFi)**](/refi/) közösség épült a hálózaton. A ReFi alkalmazások a decentralizált pénzügyek (DeFi) komponenseit használják, hogy olyan pénzügyi alkalmazásokat építsenek, amelyek pozitív externáliákat teremtenek. A ReFi része egy kiterjedtebb[„solarpunk”](https://en.wikipedia.org/wiki/Solarpunk) mozgalomnak, ami szorosan kötődik az Ethereumhoz, és a technológiai fejlődést a környezetről való gondoskodással párosítja. Az Ethereum decentralizált, engedélymentes és egymásra építhető jellege miatt ideális alap a ReFi és a solarpunk közösségeknek. A web3 közjó-finanszírozási platformjai, mint a [Gitcoin](https://gitcoin.co) klímaköröket működtetnek, hogy elősegítsék az Ethereum alkalmazási rétegének környezettudatos építését. Ezen kezdeményezések (és mások, mint a [decentralizált tudomány / DeSci](/desci/)) kialakulása által az Ethereum egy környezeti és közösségi szempontból pozitív technológia. diff --git a/public/content/translations/hu/guides/how-to-create-an-ethereum-account/index.md b/public/content/translations/hu/guides/how-to-create-an-ethereum-account/index.md index 0815a06810e..639df1e616a 100644 --- a/public/content/translations/hu/guides/how-to-create-an-ethereum-account/index.md +++ b/public/content/translations/hu/guides/how-to-create-an-ethereum-account/index.md @@ -20,7 +20,7 @@ A tárca egy olyan alkalmazás, amely segíti az Ethereum-számla kezelését. K Ha Ön most ismerkedik ezzel a területtel, akkor választhatja a „Kezdő a kripto világában” szűrőt a „Tárca keresése” oldalon, hogy olyan termékek közül választhasson, amelyek kifejezetten a kezdők számára fontos funkciókat kínálni. -![szűrés a „Tárca keresése” oldalon](./wallet-box.png) +![Szűrési lehetőségek a „Tárca keresése” oldalon](./wallet-box.png) Egyéb profilszűrők is elérhetők, hogy saját igényeire szabhassa a keresést. Íme néhány példa a leggyakrabban használt tárcák közül – mindig vizsgálja meg Ön is az adott szolgáltatást, mielőtt bármilyen szoftvert kiválaszt. diff --git a/public/content/translations/hu/guides/how-to-swap-tokens/index.md b/public/content/translations/hu/guides/how-to-swap-tokens/index.md index 8f9ff60248d..992d0bf7551 100644 --- a/public/content/translations/hu/guides/how-to-swap-tokens/index.md +++ b/public/content/translations/hu/guides/how-to-swap-tokens/index.md @@ -12,7 +12,7 @@ A tokenváltás két különböző eszköz cseréje, melyek az Ethereum hálóza **Feltételek:** -- rendelkeznie kell egy kriptotárcával – ehhez kövesse a következő útmutatót: [Hogyan lehet létrehozni Ethereum számlát](/guides/how-to-register-an-ethereum-account/) +- rendelkeznie kell egy kriptotárcával – ehhez kövesse a következő útmutatót: [Hogyan lehet létrehozni Ethereum-számlát](/guides/how-to-create-an-ethereum-account/) - lennie kell pénzeszközöknek a tárcájában ## 1. Kapcsolja a tárcáját egy kiválasztott decentralizált tőzsdéhez (DEX) diff --git a/public/content/translations/hu/guides/how-to-use-a-bridge/index.md b/public/content/translations/hu/guides/how-to-use-a-bridge/index.md index 559058bb11c..3443c5f26b6 100644 --- a/public/content/translations/hu/guides/how-to-use-a-bridge/index.md +++ b/public/content/translations/hu/guides/how-to-use-a-bridge/index.md @@ -10,7 +10,7 @@ Ha sok tranzakció fut egyszerre az Ethereumon, akkor drágább a hálózatot ha **Feltételek:** -- rendelkeznie kell egy kriptotárcával – ehhez kövesse a következő útmutatót: [Hogyan lehet létrehozni Ethereum számlát](/guides/how-to-register-an-ethereum-account/) +- rendelkeznie kell egy kriptotárcával – ehhez kövesse a következő útmutatót: [Hogyan lehet létrehozni Ethereum-számlát](/guides/how-to-create-an-ethereum-account/) - lennie kell pénzeszközöknek a tárcájában ## 1. Határozza meg, hogy melyik L2 hálózatot szeretné használni diff --git a/public/content/translations/hu/guides/how-to-use-a-wallet/index.md b/public/content/translations/hu/guides/how-to-use-a-wallet/index.md index 8755ded05da..973544b67b1 100644 --- a/public/content/translations/hu/guides/how-to-use-a-wallet/index.md +++ b/public/content/translations/hu/guides/how-to-use-a-wallet/index.md @@ -6,7 +6,7 @@ lang: hu # Hogyan használja a tárcát -Ismerje meg, hogyan működnek a tárca alapvető funkciói. Ha Ön még nem rendelkezik tárcával, akkor nézze meg a [Hogyan lehet Ethereum számlát létrehozni](/guides/how-to-create-an-ethereum-account/) című útmutatót. +Ismerje meg, hogyan működnek a tárca alapvető funkciói. Ha még nem rendelkezik tárcával, akkor tekintse meg a [Hogyan lehet Ethereum-számlát létrehozni](/guides/how-to-create-an-ethereum-account/) című útmutatót. ## Nyissa ki tárcáját @@ -51,7 +51,7 @@ Az Ön címe minden Ethereum-projekt esetében azonos. Nem kell regisztrálnia k 1. Látogasson el bármelyik projekt oldalára. 2. Ha a projekt oldala csak egy tájékoztató leírás, akkor kattintson az Alkalmazás megnyitása gombra a menüben, ami elvezeti Önt a valódi alkalmazáshoz. -3. Az alkalmazásban kattintson a „Kapcsolódás” gombra +3. Az alkalmazáson belül kattintson a „Kapcsolódás” gombra. ![Gomb a felhasználó számára, melynek segítségével tárcájával a weboldalhoz kapcsolódhat](./connect1.png) diff --git a/public/content/translations/hu/nft/index.md b/public/content/translations/hu/nft/index.md index 7ffb8eaec6d..58efd3b5a50 100644 --- a/public/content/translations/hu/nft/index.md +++ b/public/content/translations/hu/nft/index.md @@ -12,17 +12,17 @@ summaryPoint2: Az NFT-k minden korábbinál nagyobb hatalmat adnak a tartalomgy summaryPoint3: Az Ethereum blokklánc okosszerződései által működtetve. --- -## Mik azok a nem helyettesíthető tőkenek (NFT)? {#what-are-nfts} +## Mik azok a nem helyettesíthető tokenek (NFT)? {#what-are-nfts} -Az NFT-k olyan tokenek, melyek teljesen egyediek. Minden egyes NFT más jellemzőkkel bír (nem helyettesíthető) és bizonyítottan véges. Különbözik más tokenektől, mint amilyen az ERC-20 is, ahol egy adott tokenszett minden eleme azonos és ugyanolyan jellemzőkkel bír (helyettesíthető). Nem számít, hogy az ember pénztárcájában konkrétan melyik bankjegy található, mert mindegyik azonos és ugyanolyan értékű. Az azonban _valóban_ számít, hogy Ön melyik NFT-t birtokolja, mert egyedi jellemzőik megkülönböztetik azokat egymástól (nem helyettesíthető). +Az NFT-k olyan tokenek, melyek teljesen egyediek. Minden egyes NFT más jellemzőkkel bír (nem helyettesíthető) és bizonyítottan véges. Különbözik más tokenektől, mint amilyen az ETH vagy más Ethereum-alapú tokenek, pl. az USDC, ahol minden token azonos és ugyanolyan jellemzőkkel rendelkezik (helyettesíthető). Nem számít, hogy az ember pénztárcájában konkrétan amelyik bankjegy (vagy ETH) található, mert mindegyik azonos és ugyanolyan értékű. Az azonban _valóban_ számít, hogy Ön melyik NFT-t birtokolja, mert egyedi jellemzőik megkülönböztetik azokat egymástól (nem helyettesíthető). -Az NFT-k egyedisége révén akár műtárgyak, gyűjthető tárgyak vagy ingatlanok is tokenné alakíthatók. Ekkor egy adott egyedi NFT egy specifikus, egyedi, valós vagy digitális tárgyat képvisel. Egy eszköz tulajdonjogát az Ethereum-blokklánc biztosítja – senki sem módosíthatja a tulajdonjog igazolását, vagy hozhat létre új NFT-t másolással és beillesztéssel. +Az NFT-k egyedisége révén akár műtárgyak, gyűjthető tárgyak vagy ingatlanok is tokenné alakíthatók. Ekkor egy adott egyedi NFT egy specifikus, egyedi, valós vagy digitális tárgyat képvisel. Az eszköz tulajdonjoga nyilvánosan ellenőrizhető az Ethereum blokkláncon. ## Az eszközök internete {#internet-of-assets} -Az NFT-k és az Ethereum megoldást jelent néhány, napjainkban az interneten jelen lévő problémára. Ahogy minden egyre digitálisabbá válik, egyre inkább szükség van a fizikai tárgyak bizonyos tulajdonságainak replikálására, mint például a ritkaság, az egyediség és a tulajdonjog bizonyítása. oly módon, hogy azt ne egy központi szervezet irányítsa. Például az NFT révén bárki birtokolhat olyan mp3 zenét, mely nem egy cég specifikus zenei alkalmazásához kötődik, illetve egy olyan oldalt a közösségi médiában, melyet eladhat vagy elcserélhet, de azt nem veheti el önkényesen a platform szolgáltatója. +Az NFT-k és az Ethereum megoldást jelent néhány, napjainkban az interneten jelen lévő problémára. Ahogy minden egyre digitálisabbá válik, egyre inkább szükség van a fizikai tárgyak bizonyos tulajdonságainak replikálására, mint például a ritkaság, az egyediség és a tulajdonjog bizonyítása úgy, hogy azt nem egy központi szervezet irányítja. Az NFT-kkel például bárki birtokolhat egy mp3-formátumú zeneszámot egyszerre minden Ethereum-alapú alkalmazásban, és nincs hozzákötve egy adott vállalat zenei alkalmazásához, mint amilyen a Spotify vagy az Apple Music. Birtokában lehet egy közösségi média profil is, amelyet eladhat vagy elcserélhet, de azt önkényesen nem veheti el Öntől a platform szolgáltatója. Így néz ki az NFT-k internete ahhoz az internethez képest, amelyet a többségünk minden nap használ... @@ -30,19 +30,13 @@ Az NFT-k és az Ethereum megoldást jelent néhány, napjainkban az interneten j | Az NFT-k internete | Az internet ma | | -------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| Ön birtokolja az eszközeit! Egyedül Ön adhatja vagy cserélheti el azokat. | Eszközt bérel valamelyik szervezettől. | +| Ön birtokolja az eszközeit! Egyedül Ön adhatja vagy cserélheti el azokat. | Ön kikölcsönöz egy eszközt valamely szervezettől, és azt el is vehetik Öntől. | | Az NFT-k digitálisan egyediek, nincs két azonos NFT. | Egy adott entitás másolatát gyakran nem lehet megkülönböztetni az eredetitől. | | Az NFT tulajdonjogát a blokklánc tárolja, így bárki beazonosíthatja azt. | A digitális javak tulajdonjogi nyilvántartását intézmények által ellenőrzött szervereken tárolják – az ő szavukra kell hagyatkoznunk. | | Az NFT-k okosszerződések az Ethereum hálózatán. Ez azt jelenti, hogy így könnyen fel lehet azokat használni más okosszerződésekben és alkalmazásokban az Ethereumon! | A digitális eszközöket birtokló vállalatoknak általában saját, falakkal védett infrastruktúrát kell kialakítaniuk. | | A tartalomkészítők bárhol eladhatják munkáikat, és hozzáférhetnek a világpiachoz. | Az alkotók csak annak a felületnek a hálózatára és disztribúciójára támaszkodhatnak, amelyet használnak. Ezeknek gyakran felhasználási feltételei és földrajzi korlátai vannak. | | Az NFT létrehozói megtarthatják tulajdonjogaikat saját munkájukat illetően, valamint belefoglalhatják a jogdíjfizetést az NFT szerződésbe. | Az online zeneszolgáltatók és a hasonló platformok megtartják a haszon túlnyomó részét. | -## Hogyan működnek az NFT-k? {#how-nfts-work} - -Ahogy az Ethereumon létrehozott többi tokent, az NFT-ket is okosszerződések kreálják. Az okosszerződés a számos NFT-standard egyikét (általában ERC-721 vagy ERC-1155) alkalmazza, mely meghatározza a szerződés funkcióit. A szerződés létrehozza (minteli) az NFT-t, és egy adott tulajdonoshoz rendeli. A tulajdonjogot úgy határozza meg a szerződés, hogy az adott NFT-t adott címhez köti. Az NFT rendelkezik egy azonosítóval (ID) és jellemzően metaadatok kapcsolódnak hozzá, melyek egyedivé teszik az adott tokent. - -Amikor valaki létrehozza vagy minteli az NFT-t, akkor valójában az okosszerződés egy funkcióját indítja el, mely a címéhez rendeli az adott NFT-t. Ezt az információt a szerződés tárhelye őrzi a blokklánc részeként. A szerződés létrehozója egyéb logikát is belevehet a szerződésbe, mint például a kínálat korlátozása, illetve jogdíjfizetés az alkotónak minden alkalommal, amikor a token tulajdonost vált. - ## Mire használják az NFT-ket? {#nft-use-cases} Az NFT-ket számtalan esetben használják, ilyen például: @@ -58,11 +52,11 @@ Az NFT-ket számtalan esetben használják, ilyen például: - decentralizált internetes domainnevek - fedezet a decentralizált pénzügyekben (DeFi) -Tegyük fel, hogy Ön egy művész, aki szeretné NFT-ként megosztani az alkotását, anélkül hogy elveszítené az ellenőrzést felette és közvetítőkre áldozná a profitját. Létrehozhat egy új szerződést, melyben megadja az NFT-k számát, jellemzőiket, és hozzákapcsolja az adott műalkotást. Beleírhatja az okosszerződésbe az Önnek járó jogdíjakat (pl. az eladási ár 5%-át utalják a szerződés tulajdonosának minden alkalommal, amikor az NFT gazdát cserél). Mindig képes lesz bizonyítani, hogy Ön hozta létre az NFT-ket, mert a birtokában van az a tárca, mely létrehozta a szerződést. A vásárlók is könnyedén bizonyíthatják, hogy eredeti NFT-vel rendelkeznek az Ön kollekciójából, mert a tárcáik címe hozzá van rendelve egy tokenhez az okosszerződésben. Az egész Ethereum-ökoszisztémában használhatják az NFT-t, teljes bizonyossággal az eredetiségét illetően. +Tegyük fel, hogy Ön egy művész, aki szeretné NFT-ként megosztani az alkotását, anélkül hogy elveszítené az ellenőrzést felette és közvetítőkre áldozná a profitját. Létrehozhat egy új szerződést, amelyben megadja az NFT-k számát, jellemzőiket, és hozzákapcsolja az adott műalkotást. Beleírhatja az okosszerződésbe az Önnek járó jogdíjakat (pl. az eladási ár 5%-át utalják a szerződés tulajdonosának minden alkalommal, amikor az NFT gazdát cserél). Mindig képes lesz bizonyítani, hogy Ön hozta létre az NFT-ket, mert a birtokában van az a tárca, amely létrehozta a szerződést. A vásárlók is könnyedén bizonyíthatják, hogy eredeti NFT-vel rendelkeznek az Ön kollekciójából, mert a tárcáik címe hozzá van rendelve egy tokenhez az okosszerződésben. Az egész Ethereum-ökoszisztémában használhatják az NFT-t, teljes bizonyossággal az eredetiségét illetően. -Vagy vegyünk például egy sporteseményre szóló jegyet. Ahogyan egy rendezvény szervezője eldöntheti, hogy hány jegyet ad el, úgy az NFT létrehozója is eldöntheti, hogy hány másolat létezhet. Néha ezek pontos másolatok, mint például 5000 darab nem helyre szóló belépőjegy. Néha több olyan jegyet is kiállítanak, amelyek nagyon hasonlóak, de mindegyik kissé különbözik, mint például kijelölt ülőhelyekre szóló jegyek. Ezeket vehetik és adhatják egymás között (peer-to-peer) anélkül, hogy fizetni kellene a jegyárusoknak, a vevő pedig a szerződés címét ellenőrizve mindig meggyőződhet a jegyek eredetiségéről. +Vagy vegyünk például egy sporteseményre szóló jegyet. Ahogyan egy rendezvény szervezője eldöntheti, hogy hány jegyet ad el, úgy az NFT létrehozója is eldöntheti, hogy hány másolat létezhet. Néha ezek pontos másolatok, mint például 5000 darab nem helyre szóló belépőjegy. Néha több olyan jegyet is kiállítanak, amelyek nagyon hasonlóak, de mindegyik kissé különbözik, mint például kijelölt ülőhelyekre szóló jegyek. Ezeket vehetik és adhatják egymás között (peer-to-peer módon) anélkül, hogy fizetni kellene a jegyárusoknak, a vevő pedig a szerződés címét ellenőrizve mindig meggyőződhet a jegyek eredetiségéről. -Az ethereum.org portálon NFT-t használunk arra, hogy igazoljuk a tagok közreműködését a Github gyűjteményhez (repóhoz) vagy a részvételüket bizonyos konferenciabeszélgetéseken, sőt, saját NFT domainnévvel is rendelkezünk. Ha Ön hozzájárul az ethereum.org felülethez, egy POAP NFT-t igényelhet. Bizonyos kriptotalálkozók POAP-ot (részvételt tanúsító protokollt) használnak jegy gyanánt. [Tudjon meg többet a hozzájárulásról](/contributing/#poap). +Az ethereum.org-on NFT-k bizonyítják azt, hogy valaki hozzájárult a Github könyvtárhoz (programozták a honlapot, cikket írtak vagy módosítottak stb.), más nyelvekre fordított tartalmat, vagy részt vett a közösségi megbeszéléseken, emellett az ethereum.org saját NFT domain névvel is rendelkezik. Ha Ön hozzájárul az ethereum.org felülethez, egy POAP NFT-t igényelhet. Bizonyos kriptotalálkozók POAP-ot (részvételt tanúsító protokollt) használnak jegy gyanánt. [Tudjon meg többet a hozzájárulásról](/contributing/#poap). ![ethereum.org POAP](./poap.png) @@ -72,11 +66,25 @@ Ez a weboldal egy alternatív, NFT-k által működtetett domainnévvel is rende +## Hogyan működnek az NFT-k? {#how-nfts-work} + +Az NFT-k, ahogy az Ethereum blokklánc többi digitális eszköze, egy speciális, Ethereum-alapú számítógépes program révén keletkeznek, amelyet okosszerződésnek neveznek. Ezek a szerződések olyan szabályokat követnek, mint az ERC-721 vagy az ERC-1155 szabványok, amelyek meghatározzák a szerződés működési körét. + +Az NFT-okosszerződésekkel számos fontos dolog végrehajtható: + +- **NFT-k létrehozása:** Új NFT-ket lehet alkotni. +- **Tulajdonjog meghatározása:** Követi, hogy amely NFT-nek ki a birtokosa azáltal, hogy azokat meghatározott Ethereum-címekhez köti. +- **Minden NFT-hez azonosítót rendel:** Az NFT-k egy egyedi számmal is el vannak látva. Emellett általában más információkat (metaadatokat) is hozzákapcsolnak az NFT-khez, amellyel feltárják, hogy mit is képviselnek. + +Amikor valaki létrehoz vagy „mintel” egy NFT-t, akkor gyakorlatilag arra kéri az okosszerződést, hogy adjon neki tulajdonjogot egy bizonyos NFT felett. Ez az információ biztos módon és nyilvánosan van tárolva a blokkláncon. + +Ezenkívül a szerződés létrehozója más szabályokat is megadhat. Meghatározhatja, hogy egy adott NFT-ből mennyit lehet létrehozni vagy megadhatja, hogy amikor az NFT tulajdonost vált, akkor egy kis összegű jogdíj járjon neki. + ### Az NFT-k biztonsága {#nft-security} Az Ethereum biztonságát a letét bizonyítéka (vagyis a proof-of-stake) adja. A rendszert úgy tervezték, hogy gazdaságilag visszatartson a rosszindulatú cselekedetektől, így az Ethereum hamisíthatatlan. Ennek köszönhetően létezhetnek az NFT-k. Ha az NFT-tranzakciót tartalmazó blokk véglegesítetté válik, egy támadónak több millió ETH-ba kerülne megváltoztatni azt. Bárki, aki Ethereum-szoftvert futtat, azonnal képes lenne észlelni az NFT tisztességtelen manipulálását, és a csalárd szereplőt gazdaságilag megbüntetnék és kizárnák. -Az NFT-kel kapcsolatos biztonsági problémák leggyakrabban adathalász csalásokhoz, okosszerződések sebezhetőségéhez vagy felhasználói hibákhoz (például a privát kulcsok véletlen felfedéséhez) kapcsolódnak, így a megfelelő tárcabiztonság kritikus fontosságú az NFT-tulajdonosok számára. +Az NFT-kkel kapcsolatos biztonsági problémák leggyakrabban adathalász csalásokhoz, az okosszerződések sebezhetőségéhez vagy felhasználói hibákhoz (például a privát kulcsok véletlen felfedéséhez) kapcsolódnak, így a megfelelő tárcabiztonság kritikus fontosságú az NFT-tulajdonosok számára. Bővebben a biztonságról diff --git a/public/content/translations/hu/refi/index.md b/public/content/translations/hu/refi/index.md index dce79d906bf..5a4e9d6c8b4 100644 --- a/public/content/translations/hu/refi/index.md +++ b/public/content/translations/hu/refi/index.md @@ -18,7 +18,7 @@ summaryPoint3: Az ökológiailag hasznos eszközök drasztikus skálázási lehe Ehelyett a ReFi arra törekszik, hogy regeneratív ciklusok létrehozásával környezeti, közösségi és szociális problémákat oldjon meg. Ezek a rendszerek egyszerre teremtenek értéket a résztvevőknek, valamint az ökoszisztéma és a közösségek javait szolgálják. -A ReFi egyik alapköve a regeneratív gazdaság koncepciója, melyet John Fullerton fogalmazott meg a [Capital Institute intézettől](https://capitalinstitute.org). Nyolc összefüggő elvet javasolt, melyek megalapozzák a rendszer egészségét: +A ReFi egyik alapköve a regeneratív gazdaság koncepciója, amelyet John Fullerton fogalmazott meg a Capital Institute intézettől. Az ő javaslata [nyolc egymással összefüggő elv,](https://capitalinstitute.org/8-principles-regenerative-economy/) amelyet egy rendszerszintű egészségi állapot támaszt alá: ![A nyolc összefüggő elv](refi-regenerative-economy-diagram.png) diff --git a/public/content/translations/hu/roadmap/account-abstraction/index.md b/public/content/translations/hu/roadmap/account-abstraction/index.md new file mode 100644 index 00000000000..759e590579e --- /dev/null +++ b/public/content/translations/hu/roadmap/account-abstraction/index.md @@ -0,0 +1,126 @@ +--- +title: Számlaabsztrakció +description: Az Ethereum tervek áttekintése azzal kapcsolatban, hogy a felhasználói számlák egyszerűbbek és biztonságosabbak legyenek +lang: hu +summaryPoints: + - A számlaabsztrakció sokkal egyszerűbbé teszi az okosszerződéses tárcák építését + - Az okosszerződéses tárcák egyszerűbbé teszik az Ethereum számlákhoz való hozzáférés menedzselését + - Az elvesztett vagy nyilvánossá vált kulcsokat többféle biztonsági megoldással is vissza lehet nyerni +--- + +# Számlaabsztrakció {#account-abstraction} + +A felhasználók **[külső tulajdonú számlák (EOA)](/glossary/#eoa)** révén kapcsolódnak az Ethereumhoz. Ez az egyetlen módja, hogy egy tranzakciót kezdeményezzenek vagy elindítsanak egy okosszerződést. Ez behatárolja azt, ahogyan a felhasználók az Ethereummal kapcsolatba léphetnek. Nehézkessé teszi például, hogy tranzakciókötegeket hajtsanak végre és a felhasználóknak mindig tartani kell ETH-t, hogy fedezzék a tranzakciók költségeit (gáz). + +A számlaabsztrakció egy olyan mód, amely megoldást ad ezekre a problémákra azáltal, hogy a felhasználók rugalmasabban adhatnak több biztonságot a számláikhoz, illetve jobb felhasználói élményben lehet részük. Ehhez arra van szükség, hogy [EOA-kat fejleszteni kell](https://eips.ethereum.org/EIPS/eip-3074), hogy okosszerződéssel is lehessen azokat irányítani, vagy [az okosszerződéseket kell fejleszteni](https://eips.ethereum.org/EIPS/eip-2938) úgy, hogy tranzakciókat tudjanak kezdeményezni. Mindkét opcióhoz módosítani kell az Ethereum-protokollt. Egy harmadik megoldás is lehetséges, ahol egy [második, elkülönült tranzakciós rendszert](https://eips.ethereum.org/EIPS/eip-4337) hoznak létre, hogy a meglévő protokollal párhuzamosan működjön. A megoldási módtól függetlenül az eredmény az, hogy az Ethereumot okosszerződéses tárcákkal, a meglévő protokoll támogatásával vagy egy hozzáadott tranzakciós hálózattal is el lehet érni. + +Az okosszerződéses tárcák számos előnnyel járnak a felhasználók számára: + +- beállíthatják a saját rugalmas biztonsági szabályaikat +- a számlát vissza lehet állítani akkor is, ha a kulcsok elvesztek +- a számla biztonságát meg lehet osztani megbízható eszközökkel vagy egyénekkel +- lehet gázt fizetni más helyett, illetve helyettünk is fizethet más +- a tranzakciókat össze lehet kötegelni (pl. az átváltásokat egyszerre jóvá lehet hagyni és végrehajtani) +- az alkalmazás- (dapp) és tárcafejlesztőknek több lehetőségük van, hogy javítsák a felhasználói élményeket + +Jelenleg ezek az előnyök nem érhetők el, mert csak a külső tulajdonú számlák ([EOA](/glossary/#eoa)) indíthatnak tranzakciókat. Az EOA-k lényegileg egy nyilvános-privát kulcspárból állnak. Így működnek: + +- aki rendelkezik egy privát kulccsal, az _bármit_ megtehet az Ethereum Virtuális Gép (EVM) szabályain belül +- aki nem rendelkezik a privát kulccsal, az _semmit_ sem tehet. + +Ha a kulcsok elvesznek, akkor nem lehet azokat visszaszerezni, illetve az ellopott kulcsok azonnali hozzáférést adnak a számlán lévő eszközökhöz. + +Az okosszerződéses tárcák megoldást tudnak ezekre adni, de jelenleg nehéz programozni ezeket, mert minden egyes logikát a végén le kell fordítani egy adag EOA-tranzakcióra, hogy azokat végre lehessen hajtani az Ethereumon. A számlaabsztrakció lehetővé teszi az okosszerződések számára, hogy tranzakciókat indítsanak el, ezért a felhasználó bármilyen általa kívánt logikát be tud kódolni az okosszerződéses tárcába és azt végre tudja hajtatni az Ethereumon. + +Végül a számlaabsztrakció fejleszti az okosszerződéses tárcák támogatását, mivel egyszerűbb lesz azokat megépíteni és biztonságosabb lesz használni. A számlaabsztrakció révén a felhasználók az Ethereum összes előnyét kiélvezhetik, és nem kell tudniuk vagy foglalkozniuk a mögöttes technológiával. + +## A kulcsmondatokon túl {#beyond-seed-phrases} + +Jelenleg a számlákat a privát kulcsok használata védi, amelyet kulcsmondatokból állítanak elő. Aki hozzáfér a kulcsmondathoz, az könnyen fel tudja fedezni a számlát védő privát kulcsot, így hozzáférhet a számla eszközeihez. Ha a privát kulcs és a kulcsmondat elvész, akkor azokat már nem lehet visszanyerni és a számlán tárolt eszközök örökre be lesznek fagyasztva. A kulcsmondatok biztonságos tárolása elég kényelmetlen még a szakértő felhasználók számára is, és az ezekre irányuló adathalászat a fő oka annak, hogy a felhasználókat átverik. + +A számlaabsztrakció esetében az okosszerződés tárolja a eszközöket és hagyja jóvá a tranzakciókat. Ezeket az okosszerződéseket személyre szabott logikával lehet működtetni, hogy a lehető legbiztonságosabbak legyenek és a felhasználóra legyenek szabva. A felhasználó még mindig privát kulcsokat használ ahhoz, hogy a számlát irányítsa, de azt biztonsági hálóval együtt teszi, amely könnyebbé és biztonságosabbá teszi a kezelést. + +Például olyan biztonsági kulcsok adhatók a tárcához, hogy ha valaki elveszíti vagy véletlenül feltárja a fő kulcsát más előtt, akkor azt kicserélheti egy új, biztonságos kulcsra, amelyet a biztonsági kulcs engedélyez. A különféle kulcsot más-más módon biztosíthatja a felhasználó, vagy megbízott őrzők között is feloszthatja azt. Ezáltal sokkal nehezebbé válik a csalóknak, hogy teljes kontrollt szerezzenek az eszközök felett. Ehhez hasonlóan szabályokat lehet hozzáadni a tárcához, amelyek csökkentik a hatását annak, ha a fő kulcsot ellopják. Például az alacsony értékű tranzakciókat egyszerű aláírással is lehet igazolni, míg a magasabb értékűek esetén több felhatalmazott aláíró jóváhagyására van szükség. Más módokon is segít az okosszerződéses tárca a tolvajok elrettentésében, például egy lista segítségével minden olyan tranzakciót blokkolni lehet, amely nem egy biztonságos címzettnek megy, vagy amit nem igazol több előre jóváhagyott kulcs. + +### Néhány példa arra, hogy milyen biztonsági logikákat lehet beépíteni az okosszerződéses tárcába: + +- **Többaláírásos jóváhagyás**: A jóváhagyásra való meghatalmazást meg lehet osztani több megbízható ember vagy eszközök között. Ekkor a szerződést úgy lehet beállítani, hogy egy előre meghatározott érték feletti tranzakció jóváhagyást kérjen a megbízott felek egy adott arányától (pl. 5-ből 3-tól). Egy magas értékű tranzakció például jóváhagyást kérhet egy mobileszköztől és egy hardvertárcától egyszerre, vagy a megbízott családtagok között megosztott számláktól igényelhet aláírást. +- **Számlabefagyasztás**: Ha egy eszköz elveszett vagy más kezébe került, akkor a számlát be lehet fagyasztani egy másik jóváhagyott eszközről, ezzel megvédve a felhasználó eszközeit. +- **Számla-visszaállítás**: Elveszett az eszköz vagy elfelejtette a jelszót? A jelenlegi felállásban ez azt jelenti, hogy a számlán tartott eszközök örökre befagyasztva maradnak. Az okosszerződéses tárcával be lehet állítani néhány előre jóváhagyott számlát, amely képes engedélyezni új eszközöket és visszaállítani a hozzáférést. +- **Tranzakciólimitek beállítása**: Napi határértéket lehet megadni arra vonatkozóan, hogy milyen értéket lehet áttranszferálni az adott számláról egy nap/hét/hónap alatt. Tehát ha egy támadó hozzáférést szerez a számlához, akkor nem tudja egyszerre kiüríteni azt, a tulajdonos pedig be tudja azt fagyasztani és visszaállítani a saját hozzáférést. +- **Engedélyezési lista készítése**: Csak olyan tranzakciókat lehet elindítani, amelyek előre megadott, biztonságos címekre adnak át eszközöket. Ekkor, _még ha_ a privát kulcsot el is lopták, a támadó nem tud pénzügyi eszközöket küldeni olyan számlákra, amelyek nem szerepelnek az engedélyezési listán. Ezek a listák többszörös aláírást igényelnek, így a támadó nem tudja egyszerűen hozzáadni a saját címét a listához, hacsak nem fér hozzá több biztonsági kulcshoz is egyszerre. + +## Jobb felhasználói élmény {#better-user-experience} + +A számlaabsztrakció lehetővé teszi a **jobb felhasználói élményt** és **a magasabb fokú biztonságot**, mert támogatást biztosít az okosszerződéses tárcának a protokoll szintjén. Ez a megoldás az okosszerződések, tárcák és alkalmazások fejlesztőinek olyan szintű szabadságot ad az innovációra a felhasználói élményt illetően, olyan módokon, amiket most még elképzelni sem tudunk. Néhány egyértelmű fejlesztés a számlaabsztrakció mellett többek között az, hogy a tranzakciókat kötegelni lehet a gyorsaság és a hatékonyság érdekében. Például egy egyszerű átváltás egy egykattintásos művelet lehet, míg jelenleg az átváltás előtt a különböző tokenekre külön tranzakciót kell aláírni. A számlaabsztrakcióval megszűnik ez a többszörös jóváhagyás, mert a tranzakciókat össze lehet kötegelni. Emellett a kötegelt tranzakciókat úgy hagyja jóvá a felhasználó, hogy a tokeneknek a megfelelő értéke szerepel benne, majd a végrehajtás után visszavonja a jóváhagyást, ezzel fokozva a biztonságot. + +A gáz, vagyis a tranzakciós díjak kezelése is sokkal fejlettebbé válik a számlaabsztrakcióval. Az alkalmazások felajánlhatják, hogy kifizetik a felhasználók gázdíját, továbbá a gázt más tokenben is lehet rendezni, nem csak ETH-ben, így a felhasználóknak nem kötelező ETH-összeget tartani a számlájukon, hogy a tranzakciókat finanszírozni tudják. Ez úgy valósul meg, hogy a szerződésen belül a felhasználó tokenjeit átváltják ETH-re, és ebben fizetik ki a gázt. + + + +A gázdíjak kezelése az egyik fő gond az Ethereum-felhasználók számára, mert csak ETH-ben lehet azt rendezni. Tegyük fel, hogy van egy tárca USDC-egyenleggel, de nincs benne ETH. Akkor az USDC-tokeneket nem tudja a tulajdonos elküldeni vagy átváltani, mert nem tudja kifizetni a gázdíjat. Nem lehet átváltani az USDC-t ETH-re, mert ez önmagában gázdíjat igényel. Ennek megoldásához ETH-t kell beküldeni a számlára egy tőzsdéről vagy egy másik címről. Az okosszerződéses tárcákkal ki lehet fizetni a gázdíjat a számlán tartott USDC-ből, így szabadon használható a számla. Ennek köszönhetően nem kell ETH-egyenleget tartani az összes számlán. + +A számlaabsztrakció lehetővé teszi a dapp fejlesztőknek azt is, hogy a gázdíj kezelésében kreatívak legyenek. Például a kedvenc tőzsdéjének a felhasználó akár fix díjat is fizethetne havonta korlátlan mennyiségű tranzakcióért. A dappok felajánlhatják, hogy kifizetik az összes gázdíjat a felhasználó helyett, ezzel jutalmazva őket, hogy az adott platformot használják, vagy belépési ajánlat gyanánt. A fejlesztőknek könnyebb lesz innovatív módon hozzáállni a gázhoz, amikor az okosszerződéses tárcákat protokollszinten támogatják. + + + +A megbízható periódus használata is jelentős hatással lehet a felhasználói élményekre, főleg olyan alkalmazásoknál, mint a játékok, ahol sok kis értékű tranzakciót kell rövid időn belül jóváhagyni. Ha egyesével kell a tranzakciókat engedélyezni, akkor az megtöri a játék élményét, de az állandó jóváhagyás nem lenne biztonságos. Az okosszerződéses tárca engedélyezni tudna bizonyos tranzakciókat egy fix időre, egy meghatározott értékig vagy csak egy bizonyos címre. + +Érdekes azt is átgondolni, hogyan alakulnak a váráslások a számlaabsztrakcióval. Jelenleg minden tranzakciót jóvá kell hagyni és végre kell hajtani a tárcából úgy, a megfelelő token kellő összege rendelkezésre áll. A számlaabsztrakcióval ez az élmény inkább olyan lehet, mint egy online vásárlás, ahol a felhasználó beleteszi a tételeket a kosarába, egyszerre fizeti ki az összeset, és a szerződés kezeli azokat a logikákat, amelyek ehhez szükségesek. + +Ez csak néhány példa arra, hogy a felhasználói élmény hogyan fejlődhet a számlaabsztrakcióval, ám ennél sokkal több is lehetségessé válik. A számlaabsztrakció felszabadítja a fejlesztőket a jelenlegi EOA-k kötöttségei alól, behozhatják a web2 jó szempontjait a web3-ba anélkül, hogy feláldoznák az eszközök fölötti saját felügyeletet, illetve kreatív módon javíthatják a felhasználói élményeket. + +## Hogyan kerül bevezetésre a számlaabsztrakció? {#how-will-aa-be-implemented} + +Az okosszerződéses tárcák most is léteznek, de kihívásokkal teli a megvalósításuk, mert az EVM nem támogatja azokat. Ehelyett azon alapulnak, hogy elég összetett kódokba burkolják a standard Ethereum-tranzakciókat. Az Ethereum képes ezt megváltoztatni azáltal, hogy megengedi az okosszerződéseknek a tranzakciókezdeményezést, így az Ethereum okosszerződésbe lehet kódolni a szükséges logikákat, nem pedig a láncon kívül kezelni azokat. Az okosszerződésbe írt logikák növelik az Ethereum decentralizációját is, mivel nem lesz szükség a tárcafejlesztők által működtetett közvetítőkre, hogy lefordítsák a felhasználók által aláírt üzeneteket Ethereum-tranzakciókká. + + + +EIP-2771 a metatranzakció koncepcióját vezeti be, amelynek révén egy harmadik személy kifizetheti a felhasználó gázdíját anélkül, hogy ehhez változtatni kellene az Ethereum protokollon. Eszerint a felhasználó által aláírt tranzakciók egy „továbbító” szerződéshez kerülnek. Ez a továbbító egy megbízott entitás, amely ellenőrzi a tranzakciók érvényességét, mielőtt elküldi azokat egy gázközvetítőnek. Ezt a láncon kívül intézik, így nem kell érte gázdíjat fizetni. A gázközvetítő átadja a tranzakciót egy „fogadó” szerződésnek, és kifizeti a szükséges díjat, hogy a tranzakció végrehajtható legyen az Ethereumon. A tranzakciót végre lehet hajtani, ha a „továbbító” ismert és a „fogadó” bízta meg. Ez a modell megkönnyíti a fejlesztők számára, hogy gázdíj nélküli tranzakciókat tegyenek lehetővé a felhasználók számára. + + + + + +Az EIP-4337 az első lépés az okosszerződéses tárca támogatására decentralizált módon anélkül, hogy az Ethereum-protokollt változtatni kellene hozzá. Ahelyett, hogy a konszenzusréteget módosítanák, hogy támogassa az okosszerződéses tárcákat, egy új rendszert adnak a meglévő tranzakciós pletykaprotokollhoz. Ez a magasabb szintű rendszer egy új objektumra épül, amely a UserOperation nevet kapta, és a felhasználótól érkező tevékenységeket csomagolja össze a megfelelő aláírásokkal együtt. Majd ezeket a UserOperation-objektumokat elküldik egy dedikált memóriakészletbe, ahol a validátorok azokat egy tranzakcióköteggé szedhetik össze. A tranzakcióköteg számos egyéni UserOperations-sorozatot képvisel, és ugyanúgy bekerül egy Ethereum-blokkba, mint bármilyen normál tranzakció. Ezután a validátorok felveszik azt egy díjmaximalizáló kiválasztási modell alapján. + +Az EIP-4337 azt is megváltoztatja, ahogy a tárcák működnek. Ahelyett, hogy minden egyes tárca újraimplementálná a közös, de összetett biztonsági logikát, ezek a funkciók kikerülnének egy globális tárcaszerződésbe, amelyet „ belépési pontnak” neveznek. Ez üzemeltetné az olyan funkciókat, mint a díjak fizetése és az EVM-kód végrehajtása, így a tárcafejlesztők fókuszálhatnak a kiváló felhasználói élményre. + +Megjegyzés: az EIP-4337 által tervezett belépésipont-szerződést az Ethereum-főhálózatra 2023. március 1-én üzemelték be. A szerződés az Etherscan oldalon tekinthető meg. + + + + + +Az EIP-2938 az Ethereum-protokollt fejleszti azzal, hogy bevezet egy új, AA_TX_TYPE nevű tranzakciótípust, amely három mezőt tartalmaz: nonce, target és data, ahol a nonce egy tranzakciószámláló, a target a belépésipont-szerződés címe, a data pedig az EVM-bájtkód. Ezen tranzakciók végrehajtásához két új parancsot (operációs kódot) kell hozzáadni az EVM-hez: NONCE és PAYGAS. A NONCE opkód trekkeli a tranzakciósorrendet, a PAYGAS kalkulálja és levonja a végrehajtáshoz szükséges gázdíjat a szerződés egyenlegéből. Ezek az új funkciók lehetővé teszik az Ethereumnak, hogy támogassa az okosszerződéses tárcákat, mivel a szükséges infrastruktúra az Ethereum-protokollba épül be. + +Jelenleg az EIP-2938 változtatás nem aktív. A közösség az EIP-4337 javaslatot támogatja, mert ahhoz nem szükséges megváltoztatni a protokollt. + + + + + +Az EIP-3074 az Ethereumot úgy fejleszti, hogy a külső tulajdonú számlák képesek legyenek delegálni a kontrollt egy okosszerződésnek. Eszerint az okosszerződés logikája jóváhagyhat olyan tranzakciót, amely egy külső tulajdonú számlától (EOA) származik. Ez lehetővé teszi az olyan funkciók bevezetését, mint a gázdíjak szponzor általi kifizetése és a kötegelt tranzakciók. Ennek működéséhez két új operációs kódot kell hozzáadni az EVM-hez: AUTH és AUTHCALL. Az EIP-3074 révén az okosszerződéses tárca előnyei elérhetővé válnak úgy, hogy nem kell hozzá szerződés – ehelyett egy státuszmentes, bizalomigény-mentes, nem változtatható szerződés, a „hívó” kezeli a tranzakciókat. + +Jelenleg az EIP-3074 változtatás nem aktív. A közösség az EIP-4337 javaslatot támogatja, mert ahhoz nem szükséges megváltoztatni a protokollt. + + + +## Jelenlegi helyzet {#current-progress} + +Az okosszerződéses tárcák már elérhetők, de több fejlesztésre van szükség, hogy még decentralizáltabbak és engedélymentesek legyenek. Az EIP-4337 egy kiforrott javaslat, amely nem igényel változtatást az Ethereum-protokollban, ezért ezt gyorsan be lehet vezetni. Azok a fejlesztések, amelyekhez az Ethereum-protokollt módosítani kell, jelenleg nincsenek aktív állapotban, így ezek a változások hosszabb időt vesznek igénybe. Az is lehetséges, hogy a számlaabsztrakciót kellőképpen el lehet érni az EIP-4337 révén, ezért a protokollt nem is kell hozzá megváltoztatni. + +## További olvasnivaló {#further-reading} + +- [erc4337.io](https://www.erc4337.io/) +- [Panelbeszélgetés a számlaabsztrakcióról a Devcontól, Bogotából](https://www.youtube.com/watch?app=desktop&v=WsZBymiyT-8) +- [„A számlaabsztrakció miért hoz jelentős fejlődést a dappok számára?” – Devcon, Bogota](https://www.youtube.com/watch?v=OwppworJGzs) +- [„Számlaabsztrakció ELI5” – Devcon, Bogota](https://www.youtube.com/watch?v=QuYZWJj65AY) +- [Vitalik „Út a számlaabsztrakcióhoz” jegyzetei](https://notes.ethereum.org/@vbuterin/account_abstraction_roadmap#Transaction-inclusion-lists) +- [Vitalik blogbejegyzése a közösségi médiával visszaállítható tárcákról](https://vitalik.ca/general/2021/01/11/recovery.html) +- [EIP-2938 jegyzetek](https://hackmd.io/@SamWilsn/ryhxoGp4D#What-is-EIP-2938) +- [EIP-2938 dokumentáció](https://eips.ethereum.org/EIPS/eip-2938) +- [EIP-4337 jegyzetek](https://medium.com/infinitism/erc-4337-account-abstraction-without-ethereum-protocol-changes-d75c9d94dc4a) +- [EIP-4337 dokumentáció](https://eips.ethereum.org/EIPS/eip-4337) +- [EIP-2771 dokumentáció](https://eips.ethereum.org/EIPS/eip-2771) +- [„A számlaabsztrakció alapjai” – Mi az a számlaabsztrakció, I. rész](https://www.alchemy.com/blog/account-abstraction) diff --git a/public/content/translations/hu/roadmap/beacon-chain/index.md b/public/content/translations/hu/roadmap/beacon-chain/index.md index 30673310789..1624261f221 100644 --- a/public/content/translations/hu/roadmap/beacon-chain/index.md +++ b/public/content/translations/hu/roadmap/beacon-chain/index.md @@ -1,64 +1,74 @@ --- title: A Beacon Chain -description: Tudj meg többet a beacon chainről - az Ethereum első nagy Eth2 fejlesztéséről. +description: Tudjon meg többet Beacon a láncról – arról a frissítésről, amely behozta a proof-of-stake mechanizmust az Ethereum hálózatára. lang: hu template: upgrade image: /upgrades/core.png -alt: -summaryPoint1: A beacon chain nem változtatja meg azt, ahogy az Ethereumot ma használjuk. -summaryPoint2: A hálózatot fogja koordinálni. -summaryPoint3: Bevezeti a proof-of-stake rendszert az Ethereum ökoszisztémába. -summaryPoint4: A technikai ütemtervekben "Fázis 0"-ként is ismerheted. +summaryPoint1: A Beacon lánc vezette be a proof-of-stake konszenzust az Ethereum-ökoszisztémába. +summaryPoint2: Az eredeti proof-of-work Ethereum-lánccal 2022 szeptemberében egyesült. +summaryPoint3: A Beacon lánc vezette be az Ethereumot ma biztosító konszenzuslogikát és block gossip (blokkpletyka) protokollt. --- - - A Beacon Chain december 1.-jén központi idő szerint délben indult el. További információért nézd meg az adatokat. Ha szeretnél segíteni a lánc érvényesítésében, akkor letétbe tudod helyezni az ETH-edet. + + A Beacon lánc 2020. december 1-jén jelent meg, és 2022 szeptember 15-én a beolvadás frissítéssel hivatalosan is az Ethereum konszenzusmechanizmusává tette a proof-of-stake módszert. -## Mit csinál a Beacon Chain? {#what-does-the-beacon-chain-do} +## Mi az a Beacon lánc? {#what-is-the-beacon-chain} -A Beacon Chain fogja koordinálni vagy vezetni a [shardokból](/roadmap/danksharding/) és [stakerekből](/staking/) álló kiterjesztett hálózatot. De nem olyan lesz, mint jelenleg az [Ethereum főhálózat](/glossary/#mainnet). Nem fog tudni számlákat vagy okosszerződéseket kezelni. +A Beacon lánc az eredeti proof-of-stake blokklánc neve, amit 2020-ban vezettek be. Azért hozták létre, hogy meggyőződjenek a proof-of-stake konszenzuslogika stabilitásáról és fenntarthatóságáról, mielőtt az Ethereum fő hálózatára is bevezetnék azt. Éppen ezért az eredeti proof-of-work Ethereum-lánccal párhuzamosan futtatták. A Beacon lánc egy üres blokkokból álló lánc volt, de a proof-of-work leváltásával és a proof-of-stake mechanizmusra való átállásával az Ethereum megkövetelte, hogy a Beacon lánc fogadja a végrehajtói kliensek tranzakcióit, ezután blokkokba, majd egy proof-of-stake alapú konszenzusmechanizmus felhasználásával blokkláncba rendezze azokat. Ugyanebben a pillanatban az eredeti Ethereum-kliensek leállították a bányászatot, a blokk-előterjesztési és konszenzuslogikát, és mindent átadtak a Beacon láncnak. Ez volt az az esemény, amely [A Beolvadás](/roadmap/merge/) nevet kapta. A Beolvadás után nem volt többé két blokklánc. Csak egy proof-of-stake-alapú Ethereum, ami most két különböző klienst igényel minden csomóponthoz. A Beacon lánc most a konszenzusréteg, a konszenzuskliensek peer-to-peer hálózata, amely a blokkpletykát és a konszenzuslogikát kezeli, miközben az eredeti kliensek alkotják a végrehajtási réteget, amely a pletykálásért és a tranzakciók végrehajtásáért felel, illetve az Ethereum státuszát kezeli. A két réteg az Engine API révén kommunikál egymással. -A Beacon Chain szerepe meg fog változni idővel, de egy olyan alapvető összetevője [ a biztonságos, fenntartható és skálázható Ethereumnak, amiért dolgozunk](/roadmap/vision/). +## Mire szolgál a Beacon lánc? {#what-does-the-beacon-chain-do} -## Beacon Chain tulajdonságok {#beacon-chain-features} +Beacon lánc a neve annak a számlafőkönyvek, amely az Ethereum-[letétesek](/staking/) hálózatát működtette és koordinálta, mielőtt ezek a letétesek megkezdték a valódi Ethereum-tranzakciók validálását. Nem kezel tranzakciókat vagy okosszerződés-interakciókat, mert ezt a végrehajtási réteg végzi. A Beacon lánc felel a blokk és tanúsítás kezeléséért, az elágazásválasztás algoritmusát futtatja, valamint a jutalmakat és büntetéseket adja. Bővebben a [csomópont-architektúra oldalon](/developers/docs/nodes-and-clients/node-architecture/#node-comparison). + +## A Beacon lánc hatása {#beacon-chain-features} ### Letétbe helyezés bevezetése {#introducing-staking} -A Beacon Chain bevezeti [proof-of-stake-et](/developers/docs/consensus-mechanisms/pos/) az Ethereum rendszerbe. Ez egy új módja annak, hogy elősegítsd az Ethereum biztonságát. Gondolj rá úgy, mint egy közjóra, ami egészségesebbé teszi az Ethereumot és közben még több ETH-et tudsz szerezni. A gyakorlatban ez úgy néz ki, hogy ETH-ot helyezel letétbe a validátor szoftver aktiválásához. Validátorként tranzakciókat fogsz feldolgozni és új blokkokat hozol létre a láncon. +A Beacon lánc vezette be a [proof-of-stake-et](/developers/docs/consensus-mechanisms/pos/) az Ethereum rendszerébe. Ez tartja fent az Ethereum biztonságát, és a folyamat során a validátorokat több ETH-hoz juttatja. A gyakorlatban a letétbe helyezés úgy néz ki, hogy ETH-t helyez letétbe a validátorszoftver aktiválásához. Letétesként futtatja a szoftvert, amely új blokkokat hoz létre és validál a láncon. + +A letétbe helyezés hasonló célt szolgál, mint korábban a [bányászat](/developers/docs/mining/), de számos tekintetben különbözik attól. A bányászat nagy összegű kezdeti kiadásokkal járt, nagy teljesítményű hardverek beszerzésével és nagy energiafogyasztással, ami a tehetősebbeknek kedvezett, és elősegítette a centralizációt. Emellett a bányászat nem követelte meg a fedezetként szolgáló eszközök zárolását, ezzel korlátozta a protokoll képességét a rosszindulatú szereplők megbüntetésére egy támadás után. + +A proof-of-stake mechanizmusra való áttérés jelentősen fokozta az Ethereum biztonságát és decentralizációját a proof-of-work rendszerhez képest. Minél több ember vesz részt a hálózatban, annál decentralizáltabb és védettebb lesz a támadásokkal szemben. -A letétbe helyezés és a validátorrá válás egyszerűbb, mint a [bányászat](/developers/docs/mining/) (ahogy jelenleg biztosítva van a hálózat). És remélhetőleg hosszútávon még biztonságosabbá teszi majd az Ethereumot. Minél több ember vesz részt a hálózatban, annál inkább decentralizáltabb és biztonságosabb lesz a támadásokkal szemben. +A proof-of-stake használata, mint konszenzusmechanizmus, egy alapvető komponens [a ma használt biztonságos, környezetbarát és skálázható Ethereum számára](/roadmap/vision/). -Ha érdekel a letétbe helyezés és szeretnél segíteni a Beacon Chain biztosításában, akkor tudj meg többet a letétbe helyezésről. + Ha Ön szeretne validátorrá válni és segítene az Ethereum biztosításában, akkor tudjon meg többet a letétbe helyezésről. -Ez a második Eth2 fejlesztésnél is fontos változás: [a shard láncoknál](/roadmap/danksharding/). +### Felkészülés a szilánkolásra {#setting-up-for-sharding} -### Shard láncok előkészítése {#setting-up-for-shard-chains} +Amióta a Beacon lánc egybeolvadt az eredeti Ethereum-főhálózattal, az Ethereum közössége elkezdte keresni a lehetőséget a hálózat méretezésére. -A shard láncok bevezetése lesz a második nagy Eth2 fejlesztés. Növelni fogják a hálózat kapacitását és a tranzakciós sebességet úgy, hogy 64 blokklánccal terjesztik ki a hálózatot. A Beacon Chain egy fontos első lépés a shard láncok bevezetésénél, mivel biztonságos működésükhöz a letétbe helyezés működése szükséges. +A proof-of-stake-nek megvan az az előnye, hogy naprakész nyilvántartása van az összes jóváhagyott blokkelőállítókról, akik mind rendelkeznek ETH-letéttel. Ez a nyilvántartás a konkrét hálózati felelősségi körök megbízható felosztása mellett megalapozza az „oszd meg és uralkodj” ideát. -Végsősoron a Beacon Chain lesz felelős azért, hogy véletlenszerűen kijelöljön letétbe helyezőket (stakereket) a shard láncok validálására. Ez kulcsfontosságú annak érdekében, hogy a letétbe helyezők ne fogjanak össze és ne tudják átvenni a hatalmat egy shard fölött. Nos, ez azt jelenti, hogy [kevesebb, mint 1 a billióhoz az esélye, hogy ez bekövetkezzen](https://medium.com/@chihchengliang/minimum-committee-size-explained-67047111fa20). +Ez a felelősség ellentétben áll a proof-of-work rendszerével, ahol a bányászoknak semmilyen kötelezettségük nem volt a hálózat felé, és bármikor, mindenféle következmény nélkül felhagyhattak a bányászattal, végleg lekapcsolva a csomópontszoftvert. Ebben a rendszerben nyilvántartás sincs az ismert blokkelőterjesztőkről, és nincs megbízható módja a hálózati felelősségi körök biztonságos felosztásának. -## A fejlesztések közötti kapcsolat {#relationship-between-upgrades} +[A szilánkolásról bővebben](/roadmap/danksharding/) -Az Eth2 fejlesztések némileg összefüggnek. Foglaljuk össze tehát, hogy a Beacon Chain hogyan hat a többi fejlesztésre. +## A frissítések közötti kapcsolat {#relationship-between-upgrades} -### Főhálózat és a Beacon Chain {#mainnet-and-beacon-chain} +Az Ethereum-frissítések némileg összefüggnek egymással. Foglaljuk össze, hogyan hat a Beacon lánc a többi frissítésre. -A Beacon Chain eleinte különállóan fog létezni az Ethereum főhálózattól, melyet ma is használunk. De végül össze lesznek kapcsolva. A terv a főhálózat “dokkolása” a proof-of-stake rendszerhez, melyet a Beacon Chain vezérel és koordinál. +### A Beacon lánc és a beolvadás {#merge-and-beacon-chain} -A dokkolás +A Beacon lánc először az Ethereum fő hálózatától különállóan létezett, de 2022-ben egybeolvadtak. -### Shardok és a Beacon Chain {#shards-and-beacon-chain} + + A beolvadás + -A shard láncokat csak a proof-of-stake konszenzus mechnanizmussal lehet biztonságosan bevezetni az Ethereum ökoszisztémába. A Beacon Chain bevezeti a letétbe helyezést (staking) ezzel lekövezve a shard láncok bevezetéséhez szükséges utat. +### Szilánkok és a Beacon lánc {#shards-and-beacon-chain} -Shard láncok +A láncszilánkokat csak működő proof-of-stake konszenzusmechanizmussal lehet biztonságosan bevezetni az Ethereum-ökoszisztémába. A Beacon lánc bevezette a letétbe helyezést, ami „egybeolvadt” a fő hálózattal, egyengetve az utat a szilánkolás előtt, amellyel tovább méretezhető az Ethereum. - + + Láncszilánkok + -## Beacon Chain interakció {#interact-with-beacon-chain} +## További olvasnivaló - +- [Az Ethereum jövőbeni frissítéseiről bővebben](/roadmap/vision) +- [Bővebben a csomópont-architektúráról](/developers/docs/nodes-and-clients/node-architecture) +- [Bővebben a proof-of-stake-ről](/developers/docs/consensus-mechanisms/pos) diff --git a/public/content/translations/hu/roadmap/danksharding/index.md b/public/content/translations/hu/roadmap/danksharding/index.md new file mode 100644 index 00000000000..29d4b2211a9 --- /dev/null +++ b/public/content/translations/hu/roadmap/danksharding/index.md @@ -0,0 +1,91 @@ +--- +title: Dank-féle párhuzamos futtatás (Danksharding) +description: Ismerje meg a Proto-Danksharding és a Danksharding egymást követő fejlesztéseit, amelyek az Ethereum-skálázását teszik lehetővé. +lang: hu +summaryPoints: + - A Danksharding egy többfázisú fejlesztés, amely javítja az Ethereum skálázhatóságát és kapacitását. + - Az első fázisban, ami a Proto-Danksharding, a blokkokhoz hozzáadják a blobokat + - Az adatblobok egy olcsóbb megoldást ajánlanak az összevont tranzakcióknak, hogy betegyék az adatokat az Ethereumra, és ez a felhasználóknál alacsonyabb tranzakciós díjként jelenjen meg. + - Ezután a Danksharding elosztja a felelősséget az adatblobok igazolásához a csomópontok csoportjai mentén, ezzel tovább skálázva az Ethereumot másodpercenként több mint 100 000 tranzakcióra. +--- + +# Dank-féle párhuzamos futtatás (Danksharding) {#danksharding} + +A **Danksharding** az a módszer, amivel az Ethereum egy valóban skálázható blokklánc lesz, ehhez azonban számos protokollfejlesztést kell végrehajtani. A **Proto-Danksharding** egy köztes lépés a megvalósításban. Mindkettő célja az, hogy a második blokkláncrétegen (L2) a tranzakciók a lehető legolcsóbbak legyenek a felhasználók számára, az Ethereum pedig több mint 100 000 tranzakciót tudjon feldolgozni másodpercenként. + +## Mi az a Proto-Danksharding? {#what-is-protodanksharding} + +A Proto-Danksharding, vagy más néven [EIP-4844](https://eips.ethereum.org/EIPS/eip-4844), egy olyan módszer a [összevont tranzakciók](/layer2/#rollups) számára, amellyel olcsón tudnak adatokat hozzáadni a blokkokhoz. A név attól a két kutatótól származik, akik ezt a módszert javasolták: Protolambda és Dankrad Feist. Jelenleg az összevont tranzakciókat a tranzakciók költségének csökkentésében behatárolja az a tény, hogy a tranzakciókat a `CALLDATA` mezőbe posztolják. Ez egy drága megoldás, mert az Ethereum-csomópontok dolgozzák fel és a láncon örökre élő adat marad, miközben az összevont tranzakcióknak csak egy rövid időre lenne szükségük ezekre. A Proto-Danksharding az adatblobokat vezeti be, amelyeket el lehet küldeni és hozzá lehet csatolni a blokkokhoz. Az ezekben a blobokban lévő adatok nem elérhetők az EVM számára, és automatikusan törlődnek egy meghatározott idő (1–3 hónap) után. Így az összevont tranzakciók sokkal olcsóbban be tudják küldeni az adatokat, és ez a felhasználóknak olcsóbb tranzakciókat eredményez. + + + +Az összevont tranzakciók az Ethereum skálázási megoldásai azáltal, hogy a tranzakciókat a láncon kívül kötegelik össze, majd azok eredményét posztolják az Ethereumra. összevont tranzakció lényegében két részből áll: adat és végrehajtás-ellenőrzés. Az adat a tranzakciók teljes sora, amelyet az összevont tranzakció dolgoz fel, hogy az Ethereumra beküldve megváltozzon annak státusza. A végrehajtás-ellenőrzés azt jelenti, hogy néhány jóhiszemű szereplő („bizonyító”) újra végrehajtja a tranzakciókat, hogy biztosan korrekt legyen a javasolt státuszváltozás. A végrehajtás-ellenőrzés miatt a tranzakciós adatoknak elérhetőnek kell lenniük annyi időre, hogy azokat bárki letölthesse és ellenőrizni tudja. Így a bizonyító be tudja azonosítani és meg tudja kérdőjelezni az összevont tranzakció szekvenszerének rosszhiszemű viselkedését. Ugyanakkor az adatoknak nem kell örökre elérhetőnek maradniuk. + + + + + +A összevont tranzakciók elköteleződést posztolnak a tranzakciók adatai alapján a láncon belül, és az aktuális adatokat elérhetővé teszik az adatblobokban. Ezáltal a bizonyítók le tudják ellenőrizni az elköteleződések érvényességét, és meg tudják kérdőjelezni az általuk tévesnek tartott adatokat. A csomópont szintjén az adatblobok a konszenzusos kliensben találhatók. A konszenzus kliens tanúsítja, hogy látta az adatot és a elérhetővé vált a hálózaton. Ha az adatot örökre meg kellene tartani, akkor ezek a kliensek megnövekednek, és a csomópontok üzemeltetéséhez komoly hardverigények merülnének fel. Ehelyett az adatok automatikusan törlődnek a csomópontról 1–3 havonta. A konszenzusos kliens tanúsításai bizonyítják, hogy a bizonyítónak elegendő lehetősége volt az adatok ellenőrzésére. Az aktuális adatokat pedig tárolhatják a láncon kívül az összevont tranzakció üzemeltetői, a felhasználók vagy mások. + + + +### Hogyan ellenőrzik a blobadatokat? {#how-are-blobs-verified} + +A összevont tranzakciók az általuk feldolgozott tranzakciókat adatblobokban posztolják. Emellett posztolnak egy „elköteleződést” is. Tehát az adathoz hozzáillesztenek egy polinomiális funkciót. Ezt a funkciót számos ponton meg lehet vizsgálni. Például, ha egy rendkívül egyszerű függvényt definiálunk, `f(x) = 2x-1`, akkor ezt a funkciót megvizsgálhatjuk arra, hogy `x = 1`, `x = 2`, `x = 3`, amelyből az `1, 3, 5` eredmények származnak. A bizonyító ugyanezt a funkciót alkalmazza az adatra, és megvizsgálja azt ugyanazokon a pontokon. Ha az eredeti adat megváltozott, akkor a függvény sem lesz azonos, és az értékek is különbözni fognak minden ponton. Valójában az elköteleződés és a bizonyíték is elég bonyolult, mert kriptográfiai függvényekbe van csomagolva. + +### Mi az a KZG? {#what-is-kzg} + +A KZG a Kate-Zaverucha-Goldberg rövidítése, akik az [eredeti szerzői](https://link.springer.com/chapter/10.1007/978-3-642-17373-8_11) egy olyan sémának, amely képes az adatblobot egy kis méretű [kriptográfiai „elköteleződéssé”](https://dankradfeist.de/ethereum/2020/06/16/kate-polynomial-commitments.html) redukálni. A összevont tranzakció által beküldött adatblobot ellenőrizni kell, hogy az összevont tranzakció megfelelően működik-e. Ennek lényege, hogy a bizonyító újrafuttatja a blobban lévő tranzakciókat, hogy megvizsgálja az elköteleződés érvényességét. Ez koncepcionálisan ugyanolyan, mint ahogy a végrehajtási kliensek ellenőrizik az Ethereum-tranzakciók érvényességét az első blokkláncrétegen (L1) a Merkle-bizonyítékok alapján. A KZG egy alternatív bizonyíték, ami egy polinomiális egyenletet illeszt az adathoz. Az elköteleződés megvizsgálja a polinomiálist néhány titkos adatponton. A bizonyító ugyanezt a polinomiálist illeszti rá az adatra, megvizsgálja ugyanazon értékeken, és ellenőrzi, hogy az eredmény ugyanaz-e. Ilyen módon lehetséges ellenőrizni az adatot a zero-knowledge technikákkal kompatibilis módon, amelyet néhány összevont tranzakció és az Ethereum-protokoll használ. + +### Mit jelent a KZG-ceremónia? {#what-is-a-kzg-ceremony} + +A KZG-ceremónia egy olyan módszer, mellyel az Ethereum-közösség több tagja együtt létrehozhat egy számokból álló titkos, véletlenszerű sorozatot, amelyet adatvalidálásra tudnak használni. Nagyon fontos, hogy ezt a számsort nem tudja senki és nem is lehessen újraalkotni azt. Ennek biztosításához minden egyes résztvevő az előző tagtól kap egy részletet. Ekkor létrehozhatnak néhány új, véletlenszerű értéket (pl. azzal, hogy a böngésző leköveti az egérmozgást), és ezt összekeverhetik az előző részlettel. Ezután elküldik ezt az értéket a következő tagnak, és megsemmisítik a saját gépükön. Amíg van legalább egy személy, aki jóhiszeműen végzi ezt a folyamatot, addig a támadó számára nem derül ki a végső érték. Az EIP-4844 KZG-ceremónia nyilvános volt és emberek tízezrei vettek benne részt, hogy hozzátegyék a saját entrópiájukat. Ahhoz, hogy a ceremóniát megtámadhassák, ezeknek a résztvevőknek 100%-ban rosszhiszeműnek kell lenniük. A résztvevők szempontjából lényeges, hogy ha ő maguk jóhiszeműen jártak el, akkor nincs szükség arra, hogy megbízzanak másban, mert már maguk is biztosították a ceremóniát (egyénként kielégítették az N-ből 1 résztvevő kritériumot). + + + +Amikor egy összevont tranzakció adatot tesz a blobba, akkor egy „elköteleződést” ad, amit a láncon posztol. Ez az elköteleződés annak a vizsgálatnak az eredménye, ami bizonyos adatpontokon a polinomiális illesztést végzi. Ezeket a pontokat a KZG ceremónia által létrehozott véletlenszerű számok határozzák meg. Ekkor a bizonyítók ellenőrizhetik a polinomiálist ugyanazokon a pontokon, hogy az adat érvényességét igazolják – ha ugyanarra az értékre jutnak, akkor az adat helyes. + + + + + +Ha valaki ismeri az elköteleződéshez használt véletlenszerű helyet, akkor könnyedén kreálhat egy polinomiálist, ami illeszkedik a megadott pontokhoz (pl. egy „ütközés”). Ezt azt jelenti, hogy a blobhoz adhatnak vagy a blobból elvehetnek adatot, és mégis tudnak érvényes bizonyítékot adni róla. Ennek megakadályozására a bizonyítók nem az aktuális, titkos helyet kapják meg, hanem a helyet egy elliptikus görbét használó kriptográfiai „fekete dobozba” csomagolva kapják meg. Ezek gyakorlatilag annyira összetorlasztják az értékeket, hogy az eredetiket nem lehet visszafejteni, miközben néhány okos algebrai bizonyító és igazoló még mindig képes megvizsgálni a polinomiálisokat az általuk képviselt pontokon. + + + + + Se a Danksharding, se a Proto-Danksharding nem követi a hagyományos „sharding” (szilánkosítási) modellt, amelynek célja a blokklánc több részre való felosztása lenne. A shard láncok többé nem szerepelnek az Ethereum útitervében. Ehelyett a Danksharding elosztott adatmintavételt használ a blobokon keresztül, hogy az Ethereumot skálázza. Ezt sokkal egyszerűbb bevezetni. Ezt a modellt néha „adat-shardingnak” is nevezik. + + +## Mi az a Danksharding? {#what-is-danksharding} + +A Danksharding az összevont tranzakciós skálázási megoldás teljes megvalósítása, amely a Proto-Dankshardinggal kezdődik. A Danksharding az Ethereumon hatalmas helyet teremt az összevont tranzakcióknak, hogy az összecsomagolt tranzakciós adataikat beküldjék. Ezzel az Ethereum képes lesz könnyedén támogatni az egyéni összevont tranzakciók százait, és tranzakciók millióit végrehajtani minden másodpercben. + +Ennek az a módja, hogy a blokkokhoz kapcsolt blobokat kiterjeszti a Proto-Danksharding által adott 1-ről 64-re a teljes Danksharding során. A szükséges változások többi része a konszenzus kliensek működését fejleszti, hogy azok képesek legyenek az új, nagy méretű blobokat kezelni. Ezen változások néhány része már benne van az útitervben, függetlenül a Danksharding bevezetéstől. Például a Dankshardinghoz szükséges a javaslattevő-építő szétválasztás (PBS) bevezetése. Ez egy olyan fejlesztés, amely szétválasztja a blokkok építését és azok előterjesztését a különböző validátorok között. Ugyanígy az adatelérhetőség-mintázás szükséges a Dankshardinghoz, de az igazán könnyű kliensek fejlesztéséhez is, amelyek nem tárolnak túl sok előzményadatot („státuszmentes kliensek”). + + + +A javaslattevő-építő szétválasztás (PBS) azért szükséges, hogy az egyéni validátoroknak ne kelljen kiterjedt elköteleződéseket és 32 MB-nyi blobadatra vonatkozó bizonyítékokat generálni. Ez túl nagy terhet jelentene az otthoni letétbe helyezőknek, és erőteljesebb hardvereket kellene beszerezniük a részvételhez, amely sértené a decentralizációt. Ehelyett specializált blokképítők veszik fel a költséges számítási művelet felelősségét. Majd a blokkot elérhetővé teszik a blokk javaslattevőinek, hogy azt elküldhessék. A javaslattevő egyszerűen a legnyereségesebb blokkot választja. Így bárki olcsón és gyorsan tudja ellenőrizni a blobokat, tehát bármelyik validátor megvizsgálhatja, hogy a blokképítők jóhiszeműen viselkednek-e. Így a nagy méretű blobokat úgy lehet feldolgozni, hogy az nem csökkenti a decentralizációt. A rosszhiszemű blokképítőket ki lehet zárni a hálózatból és meg lehet bünteti őket – mások majd a helyükbe lépnek, mert ez egy profitábilis tevékenység. + + + + + +Adatelérhetőség-mintázásra is szükség van, hogy a validátorok gyorsan és hatékonyan tudják ellenőrizni a blobadatokat. Az adatelérhetőség-mintázás segítségével a validátorok meggyőződnek arról, hogy a blobadat elérhető volt és megfelelő elköteleződés történt. Minden validátor véletlenszerűen választhat néhány adatpontot és létrehozhatja a bizonyítékot, így egyik validátornak sem kell az egész blobot ellenőrizni. Ha bármilyen adat hiányzik, azt gyorsan be lehet azonosítani, így a blobot elutasítják. + + + +### Jelenlegi helyzet {#current-progress} + +A teljes Danksharding bevezetéséhez még számos év szükséges. Ugyanakkor a Proto-Danksharding a közeljövőben elérhetővé válhat. A jelen szöveg írásának időpontjában (2023. február) a KZG ceremónia még nyitva volt, és több mint 50 000 résztvevőt számlált. A Proto-Dankshardinghoz tartozó [EIP](https://eips.ethereum.org/EIPS/eip-4844) kellően kidolgozott, a specifikációban megegyeztek, a kliensek továbbfejlesztett prototípusait jelenleg tesztelik és felkészítik az éles működésre. A következő lépésben a változásokat egy nyilvános teszthálózaton teszik elérhetővé. A jelenlegi státuszról az [EIP-4844 készültségének ellenőrzőlistája](https://github.com/ethereum/pm/blob/master/Breakout-Room/4844-readiness-checklist.md#client-implementation-status) nyújt tájékoztatást. + +### További olvasnivaló {#further-reading} + +- [Proto-Danksharding jegyzetek](https://notes.ethereum.org/@vbuterin/proto_danksharding_faq) – _Vitalik Buterin_ +- [Dankrad jegyzetei a Dankshardingról](https://notes.ethereum.org/@dankrad/new_sharding) +- [Dankrad, Proto és Vitalik beszélgetése a Dankshardingról](https://www.youtube.com/watch?v=N5p0TB77flM) +- [A KZG-ceremónia](https://ceremony.ethereum.org/) +- [Carl Beekhuizen beszéde a Devconon a megbízható összeállításról](https://archive.devcon.org/archive/watch/6/the-kzg-ceremony-or-how-i-learnt-to-stop-worrying-and-love-trusted-setups/?tab=YouTube) +- [Bővebben az adatelérhetőség-mintázásról a blobokhoz](https://hackmd.io/@vbuterin/sharding_proposal#ELI5-data-availability-sampling) +- [Dankrad Feist a KZG elköteleződésekről és bizonyítékokról](https://youtu.be/8L2C6RDMV9Q) +- [KZG polinomiális elköteleződések](https://dankradfeist.de/ethereum/2020/06/16/kate-polynomial-commitments.html) diff --git a/public/content/translations/hu/roadmap/future-proofing/index.md b/public/content/translations/hu/roadmap/future-proofing/index.md new file mode 100644 index 00000000000..8a00bcb33fe --- /dev/null +++ b/public/content/translations/hu/roadmap/future-proofing/index.md @@ -0,0 +1,38 @@ +--- +title: Jövőálló Ethereum +description: Ezek a fejlesztések az Ethereumot ellenálló, decentralizált alapréteggé teszik a jövő számára, bármit is hozzon az. +lang: hu +image: /roadmap/roadmap-future.png +alt: "Ethereum-ütemterv" +template: roadmap +--- + +Az útiterv néhány eleme nem feltétlenül a skálázáshoz vagy a biztonsághoz tartozik, hanem stabilizálja és a jövőben is megbízhatóvá teszi az Ethereumot. + +## A kvantumnak való ellenállóság {#quantum-resistance} + +A kriptográfia egy része, amely a jelenlegi Ethereumot biztosítja, veszélybe kerül, ahogy a kvantum számítástechnika valósággá válik. Habár a kvantum számítógépek valószínűleg évtizedekre vannak attól, hogy valódi veszélyt jelentsenek a modern kriptográfiának, az Ethereumot úgy építik, hogy évszázadokig működjön. Tehát az [Ethereumot ellenállóvá kell tenni a kvantummal](https://consensys.net/blog/developers/how-will-quantum-supremacy-affect-blockchain/) szemben, amilyen gyorsan csak lehet. + +Az Ethereum fejlesztői azzal a kihívással néznek szembe, hogy a jelenlegi proof-of-stake protokoll egy nagyon hatékony, BLS-nek nevezett aláírási sémán alapszik, amely aggregálja a szavazatokat a valid blokkokra. Ezt az aláírási sémát a kvantum számítógép fel tudja törni, de a kvantumnak ellenálló verziók nem olyan hatékonyak. + +A [KZG elköteleződési sémák](/roadmap/danksharding/#what-is-kzg) számos helyen megtalálhatók az Ethereumban, hogy kriptográfiai titkokat állítsanak elő, és ezek sebezhetők a kvantummal szemben. Jelenleg ezt úgy kerülik meg, hogy bizalmat igénylő összeállítást használnak, tehát több entitás állítja elő a véletlenszerűséget, amit nem tud a kvantum számítógép visszakövetni. Azonban az ideális megoldás a kvantumbiztos kriptográfia lenne. Két vezető megközelítés létezik, amely képes lenne a BLS-sémát helyettesíteni: a [STARK-alapú](https://hackmd.io/@vbuterin/stark_aggregation) és a [háló alapú](https://medium.com/asecuritysite-when-bob-met-alice/so-what-is-lattice-encryption-326ac66e3175) aláírás. Ezeket még kutatják és prototípusokat készítenek belőlük. + + Tudjon meg többet a KZG-ről és a bizalmat igénylő összeállításról + +## Egyszerűbb és hatékonyabb Ethereum {#simpler-more-efficient-ethereum} + +A komplexitás teret ad a hibáknak vagy a sebezhetőségnek, amit a támadók ki tudnak használni. Ezért a útitervnek része az Ethereum leegyszerűsítése, valamint az olyan kódok eltávolítása, amelyek szükségtelenek vagy amelyeket már most tovább lehet fejleszteni. A jól átlátható, egyszerű kódbázis könnyebb fenntarthatóságot tesz lehetővé a fejlesztők számára. + +Számos fejlesztést fognak eszközölni az [Ethereum Virtuális Géppel (EVM)](/developers/docs/evm) kapcsolatban, hogy egyszerűbb és hatékonyabb legyen. Ezek között megtalálható a [ SELFDESTRUCT operációskód eltávolítása](https://hackmd.io/@vbuterin/selfdestruct) – egy ritkán használt utasítás, amelyre már nincs szükség, és még veszélyes is lehet, főleg más várható fejlesztéseket illetően az Ethereum-tárolási modelljét tekintve. Az Ethereum-kliensek is támogatnak még régi tranzakciótípusokat, amit most már el lehet távolítani. A gázkalkulációt is lehet fejleszteni, hatékonyabb módszerek használhatók a számolásra, így számos kriptográfiai művelet bevonható. + +Hasonlóan, az Ethereum-kliensek más részeit is frissíteni lehet. Például a végrehajtási és konszenzusos kliensek más adattömörítést használnak. Könnyebb és intuitívabb a kliensek közötti adatmegosztás, ha a sémák egységesek az egész hálózaton keresztül. + +## Jelenlegi helyzet {#current-progress} + +Az Ethereum jövőbiztossá tételét szolgáló legtöbb ilyen fejlesztés még kutatási fázisban van, és több év is kellhet a bevezetésükhöz. Az olyan fejlesztések, mint a SELF-DESTRUCT eltávolítása, valamint a végrehajtási és konszenzusos kliensben lévő tömörítési séma egységesítése valószínűleg hamarabb megtörténik, mint a kvantumnak ellenálló kriptográfia megvalósítása. + +**További olvasnivaló** + +- [Üzemanyag](/developers/docs/gas) +- [EVM](/developers/docs/evm) +- [Adatstruktúrák](/developers/docs/data-structures-and-encoding) diff --git a/public/content/translations/hu/roadmap/index.md b/public/content/translations/hu/roadmap/index.md new file mode 100644 index 00000000000..3b8d3d657a2 --- /dev/null +++ b/public/content/translations/hu/roadmap/index.md @@ -0,0 +1,119 @@ +--- +title: Ethereum-ütemterv +description: Az út, amely az Ethereum jobb skálázhatóságához, biztonságához és fenntarthatóságához vezet. +lang: hu +template: roadmap +image: /heroes/roadmap-hub-hero.jpg +alt: "Ethereum-ütemterv" +summaryPoints: +buttons: + - + label: Várható fejlesztések + toId: what-changes-are-coming + - + label: Korábbi fejlesztések + to: /history/ + variant: vázlat +--- + +Az Ethereum jelenleg is a globális koordináció erőteljes platformja, de még mindig szükség van további fejlesztésekre. Az ambiciózus fejlesztéseknek köszönhetően a jelenlegi forma helyett egy teljesen skálázható és maximálisan rugalmas Ethereum-platform fog kibontakozni. Ezeket a fejlesztéseket az Ethereum útiterve ismerteti. + +**A korábbi Ethereum-fejlesztéseket [Az Ethereum története](/history/) oldalon láthatja** + +## Milyen változások várhatók az Ethereumon? {#what-changes-are-coming} + +Az Ethereum útiterve a jövőbeli, protokollt érintő specifikus fejlesztéseket vázolja fel. Összességében ez az útiterv a következő előnyöket hozza el az Ethereum felhasználói számára: + + + + + + + + +## Miért van szüksége az Ethereumnak egy útitervre? {#why-does-ethereum-need-a-roadmap} + +Az Ethereumot folyamatosan fejlesztik, hogy javítsák a skálázhatóságot, a biztonságot vagy a fenntarthatóságot. Az Ethereum egyik fő erőssége az, hogy képes a kutatás és fejlesztés során felmerült új ötleteket bevezetni. Ez az alkalmazkodóképesség adja az Ethereum rugalmasságát, hogy kezelni tudja a felmerülő kihívásokat és lépést tudjon tartani a legfejlettebb technológiai áttörésekkel. + + + +Az útiterv a kutatók és fejlesztők több évnyi munkájának eredménye, mivel a protokoll maga nagyon technikai, de emellett bárki, aki elég elkötelezett, részt vehet benne. Az ötletek általában beszélgetés formájában kezdődnek a fórumokon, mint amilyen az [ethresear.ch](https://ethresear.ch/), [Ethereum varázslói](https://ethereum-magicians.org/) vagy az Eth R&D discord szerver. Ezek lehetnek válaszok az újonnan feltár gyenge pontokra, az alkalmazási rétegen működő szervezetek javaslatai (mint a dappok és tőzsdék), vagy a felhasználók ismert problémái (mint a költségek vagy a tranzakciósebességek). Miután ezeket az ötleteket kellőképpen körüljárták, javaslatot készíthetnek belőlük: [Ethereum-fejlesztési javaslatok (EIP)](https://eips.ethereum.org/). Ez az egész folyamat nyilvános, így a közösség bármelyik tagja mérlegelheti a javaslatokat. + +[Bővebben az Ethereum irányításáról](/governance/) + + + + +

Mi volt az ETH2?

+ +

Az „Eth2” kifejezéssel az Ethereum jövőjére hivatkoztak, mielőtt még áttért volna a proof-of-stake mechanizmusra, de elhagyták ezt a kifejezést, hogy sokkal pontosabb terminológiát használjanak helyette. Eredetileg az átállás előtti és utáni állapot megkülönböztetésére használták, vagy néha a különböző Ethereum-kliensekre (a végrehajtási kliensek néha ETH1-kliensként, a konszenzuskliensek pedig ETH2-kliensként jelentek meg).

+ +
+ +## Fog változni az Ethereum útiterve? {#will-ethereums-roadmap-change-over-time} + +Igen, szinte biztosan. Az útiterv az Ethereum jelenlegi fejlesztési tervezete, amely rövid- és hosszútávú újításokat is magában foglal. Az útiterv várhatóan változni fog, amikor új információk és technológiák válnak elérhetővé. + +Az útiterv olyan, mint a fejlesztési szándékok készlete, vagyis a kutatók és a fejlesztők által feltételezett legoptimálisabb út az Ethereum számára. + +## Mikor vezetik be az útiterv összes fejlesztését? {#when-will-the-roadmap-be-finished} + +Az Ethereum több fejlesztést is eszközöl a közeljövőben (pl. a letétek kivonási lehetőségét is); más tervek kisebb prioritással bírnak, és valószínűleg nem kerülnek bevezetésre a következő 5-10 évben (pl. a kvantumszámítógépnek való ellenállás). A fejlesztésekhez nehéz lenne pontos időpontot hozzárendelni, mivel számos útitervelem fejlesztése párhuzamosan folyik és különböző sebességgel valósulnak meg. Egy adott fejlesztés prioritása külső tényezők miatt (pl. a kvantumszámítógépek teljesítményének és elérhetőségének hirtelen fejlődése fontosabbá teszi az ezeknek ellenálló kriptográfiát) is változhat. + +Az Ethereum fejlesztésre úgy is tekinthetünk, mint a biológiai fejlődésre. Az a hálózat sokkal sikeresebb lehet, amelyik alkalmazkodik az új kihívásokhoz és fenntartja fittségét, mint az, amely ellenáll a változásnak, ugyanakkor a jó teljesítmény, skálázhatóság és biztonság elérése után egyre kevesebb protokollváltoztatásra lesz szükség. + +## Van-e bármi teendője a felhasználóknak a fejlesztések bevezetésekor? {#do-i-have-to-do-anything-when-there-is-an-upgrade} + +A fejlesztések általában nem érintik a felhasználókat, kivéve, hogy jobb felhasználói élményt, biztonságosabb protokollt és több opciót biztosítanak az Ethereummal való kapcsolódásra. A felhasználók nem vesznek aktívan részt a fejlesztések bevezetésében, és semmit se kell tenniük az eszközeik biztosításához. A csomópontok működtetőinek frissíteni kell a klienseiket, hogy felkészüljenek a fejlesztés bevezetésére. Néhány fejlesztés az alkalmazásfejlesztők számára is változást jelent. Például az olyan fejlesztések esetében, amelyek a korábbi adatok elérhetőségét érintik, az alkalmazásfejlesztőknek máshonnan kell beszerezniük az előzményadatokat. + +## Mi a helyzet a Verge, Splurge stb. fejlesztésekkel? {#what-about-the-verge-splurge-etc} + +[Vitalik Buterin az Ethereum útitervének egy olyan vízióját javasolta](https://twitter.com/VitalikButerin/status/1588669782471368704), amelyen a fejlesztések kategóriákba vannak sorolva az alapján, hogy miként hatnak az Ethereum architektúrájára. Ennek részei: + +- A Beolvadás: a proof-of-work mechanizmusról a proof-of-stake mechanizmusra való áttérés fejlesztései +- Surge: az összevont tranzakciók által hozott skálázhatóság és az adatsharding fejlesztései +- Scourge: a cenzúrának való ellenálláshoz, a decentralizációhoz és a MEV-ből eredő protokollkockázatokhoz kapcsolódó fejlesztések +- Verge: a könnyebb blokkellenőrzéshez kapcsolódó fejlesztések +- Purge: a csomópontok számításainak költségcsökkentéséről és a protokollegyszerűsítésről szóló fejlesztések +- Splurge: egyéb fejlesztések, amelyek nem illeszkednek az előző kategóriákba. + +Ezen terminológia helyett inkább egyszerűbb és felhasználóközpontú modellt használunk. Ennek ellenére a vízió ugyanaz, amit Vitalik javasolt, csak egyszerűbb szavakkal hivatkozunk rá. + +## Mi a helyzet a shardinggal? {#what-about-sharding} + +A sharding lényege, hogy az Ethereum blokkláncot felosztanák, hogy a validátorok csoportjai csak a teljes adat egy töredékéért lennének felelősek. Ez volt az eredeti elképzelés az Ethereum skálázhatóságára vonatkozóan. Azonban a második blokkláncréteg (L2) összevont tranzakciói sokkal gyorsabban fejlődtek, és már így is komoly skálázást tettek lehetővé, amely tovább fokozódik a Proto-Danksharding bevezetésével. Tehát a shard-láncokra nincs többé szükség, ez a fejlesztés már nem része az útitervnek. + +## Specifikus technikai fejlesztéseket keres? {#looking-for-specific-technical-upgrades} + +- [Danksharding](/roadmap/danksharding) – A Danksharding lehetővé teszi, hogy az L2 összevont tranzakciói sokkal olcsóbbak legyenek, mivel adatblobokat illeszt az Ethereum-blokkokhoz. +- [Letétek kivonása](/staking/withdrawals) – A Shanghai/Capella-frissítésnél jelent meg az Ethereumon a letétek kivonásának lehetősége, így bárki felszabadíthatja a letétbe helyezett ETH-egyenlegét. +- [Egy sloton belüli véglegesítés](/roadmap/single-slot-finality) – Ahelyett, hogy egy blokk javaslásához tizenöt perc kellene, azt ugyanabban a slotban lehessen javasolni és véglegesíteni. Ez kényelmesebb megoldást jelentene az alkalmazások számára, és nehezebb lenne megtámadni. +- [Javaslattevő-építő szétválasztás (PBS)](/roadmap/pbs) – A blokk építésének és előterjesztésének feladata több validátor között oszlik meg, így az Ethereum konszenzus tisztább, cenzúramentesebb és hatékonyabb lesz. +- [Titkos vezetőválasztás](/roadmap/secret-leader-election) – Okos kriptográfia biztosítaná, hogy az aktuális blokkelőterjesztő személye nem kerül nyilvánosságra, így védve lesznek bizonyos támadásoktól. +- [Számlaabsztrakció](/roadmap/account-abstraction) – A számlaabsztrakció a fejlesztések azon csoportja, amely az Ethereum részeként, nem pedig egy összetett közvetítő használatával támogatja az okosszerződéses tárcákat. +- [Verkle-fák](/roadmap/verkle-trees) – A Verkle-fák olyan adatstruktúrák, amelyek lehetővé teszik a státusztalan kliensek használatát az Ethereumon. Ezek a kliensek csak kis tárhelyet igényelnek, de képesek az új blokkok validálására. +- [Státusztalanság](/roadmap/statelessness) – A státusztalan kliensek képesek validálni az új blokkokat anélkül, hogy nagy adatmennyiségeket kellene tárolniuk. Ezzel a csomópontok a mai költség töredékéért működtethetők, az általuk nyújtott előnyök elvesztése nélkül. diff --git a/public/content/translations/hu/roadmap/merge/index.md b/public/content/translations/hu/roadmap/merge/index.md index 00246164471..15d7f6cda91 100644 --- a/public/content/translations/hu/roadmap/merge/index.md +++ b/public/content/translations/hu/roadmap/merge/index.md @@ -1,48 +1,228 @@ --- -title: Főhálózat dokkolása az Eth2-vel -description: Tudj meg többet a dokkolásról - amikor a főhálózati Ethereum csatlakozik a Beacon Chain által koordinált proof-of-stake rendszerhez. +title: A beolvadás +description: További információ a beolvadásról – amikor az Ethereum fő hálózata áttért a proof-of-stake konszenzusra. lang: hu template: upgrade image: /upgrades/merge.png -alt: -summaryPoint1: Végül a jelenlegi Ethereum főhálózat "dokkolni" fog a többi Eth2 fejlesztéssel együtt. -summaryPoint2: A dokkolás egyesíti az "Eth1" főhálózatot a Beacon Chainnel és a sharding rendszerrel. -summaryPoint3: Ez a proof-of-work végét jeleni majd az Ethereumot tekintve, és a teljes átmenetet a proof-of-stake-be. -summaryPoint4: Úgy is ismerheted, mint a Fázis 1.5 a technikai ütemtervek szerint. +summaryPoint1: Az Ethereum fő hálózata proof-of-stake konszenzust használ, ám ez nem mindig volt így. +summaryPoint2: Az áttérés az eredeti proof-of-work mechanizmusról a proof-of-stake mechanizmusa a beolvadás nevet kapta. +summaryPoint3: A beolvadás az eredeti Ethereum-főhálózat összeolvadását jelenti a Beacon lánc nevű különálló proof-of-stake blokklánccal, amelyek most már egy láncként léteznek. +summaryPoint4: A beolvadás nagyjából 99,95%-kal csökkentette az Ethereum energiafogyasztását. --- - - Ezt a fejlesztést a shard láncok eljövetele fogja követni. De ez lesz az a pillanat, amikor az Eth2 vízió teljesen megvalósul – nagyobb skálázhatóság, biztonság és fenntarthatóság valamint letétbe helyezés, mely a teljes hálózatot biztosítja. + + A beolvadás 2022. szeptember 15-én ment végbe. Ezzel lezárult az Ethereum áttérése a proof-of-stake konszenzusra, így hivatalosan is elhagyta a proof-of-work mechanizmust, és nagyjából 99,95%-kal csökkentette az energiafogyasztását. -## Mi az a dokkolás? {#what-is-the-docking} +## Mi volt a beolvadás? {#what-is-the-merge} -Fontos megjegyezni, hogy eredetileg a többi Eth2 fejlesztés a [főhálózattól](/glossary/#mainnet) - azaz a lánctól, amit ma is használunk - külön kerül bevezetésre. Az Ethereum főhálózat biztonságát továbbra is a [proof-of-work](/developers/docs/consensus-mechanisms/pow/) szolgáltatja majd, még akkor is amikor [a Beacon Chain](/roadmap/beacon-chain/) és a [shard láncok](/roadmap/danksharding/) párhuzamosan futnak majd a [proof-of-stake](/developers/docs/consensus-mechanisms/pos/) használatával. A dokkolás az, amikor ez a két rendszer egybeolvad. +A beolvadás az Ethereum eredeti végrehajtási rétegének (a [genezis](/history/#frontier) óta létező fő hálózatnak) az összeolvadása volt az új proof-of-stake konszenzusréteggel, a Beacon lánccal. Ezzel szükségtelenné vált az energiaintenzív bányászat, és megnyílt a hálózat biztosításának lehetősége letétbe helyezett ETH felhasználásával. Igazán izgalmas lépés volt ez az Ethereum jövőképének – nagyobb méretezhetőség, biztonság és fenntarthatóság – megvalósítása felé vezető úton. -Képzeld el, hogy az Ethereum egy űrhajó, ami még nem teljesen áll készen egy csillagközi utazásra. A Beacon Chainnel és a shard láncokkal a közösség egy új hajtóművet és egy erősebb hajótestet épített. Ha eljön az idő, a meglévő hajó dokkol ezzel az új rendszerrel, eggyé válik vele és készen áll arra, hogy néhány fényév alatt meghódítsa az univerzumot. + -## A főhálózat dokkolása {#docking-mainnet} +A [Beacon lánc](/roadmap/beacon-chain/) és a [fő hálózat](/glossary/#mainnet) eredetileg külön működött. Az Ethereum-főhálózat biztonságát – az összes számlájával, egyenlegével, okosszerződésével és blokkláncállapotával együtt – továbbra is a [proof-of-work](/developers/docs/consensus-mechanisms/pow/) konszenzus szolgáltatta, még akkor is amikor a [proof-of-stake](/developers/docs/consensus-mechanisms/pos/) mechanizmust használó Beacon lánc vele párhuzamosan futott. A beolvadás volt az esemény, amikor ez a két rendszer végre egyesült, és a proof-of-work helyét végleg átvette a proof-of-stake. -Amikor minden készen áll, az Ethereum főhálózat "bedokkol" a Beacon Chainnel, a saját shardjává válik, amely proof-of-stake-et használ [proof-of-work](/developers/docs/consensus-mechanisms/pow/) helyett. +Képzeljük el, hogy az Ethereum egy űrhajó, amely még azelőtt felszállt, hogy igazán készen állt volna a csillagközi utazásra. A Beacon lánccal a közösség egy új hajtóművet és egy erősebb hajótestet épített. Jelentős tesztelést követően eljött az ideje, hogy a régi hajtóművet menet közben kicseréljék az újra. Ezzel az új, hatékonyabb hajtómű beolvadt a már meglévő hajóba, megteremtve a lehetőséget, hogy súlyos fényéveket tegyen meg, és nyakába vegye az univerzumot. -A főhálózat lehetővé teszi majd az okosszerződések futtatását a proof-of-stake rendszeren, valamint magával hozza a jelenlegi Ethereum állapotot és történetet, ezzel biztosítva, hogy az összes ETH tulajdonos és felhasználó számára elakadásmentes legyen az átállás. +## Összeolvadás a fő hálózattal {#merging-with-mainnet} -## A dokkolás után {#after-the-docking} +A proof-of-work mechanizmus biztosította az Ethereum-főhálózatot a születésétől a beolvadásig. Ez tette lehetővé, hogy az általunk jól ismert Ethereum-blokklánc 2015 júliusában az összes ismerős funkciójával együtt (tranzakciók, okosszerződések, számlák stb.) létrejöjjön. -Ez a proof-of-work végét és egy fenntarthatóbb, környezetbarátabb korszak kezdetét fogja jelenteni az Ethereum számára. Ettől a ponttól kezdve az Ethereum skálázható, biztonságos és fenntartható lesz, ahogy az az [Eth2 vízió](/roadmap/vision/) szerint körvonalazódott. +A fejlesztők az Ethereum története során végig készültek arra, hogy egyszer majd áttérnek a proof-of-work konszenzusról a proof-of-stake mechanizmusra. 2020. december 1-jén a fő hálózattól elkülönült, vele párhuzamosan működő blokkláncként létrejött a Beacon lánc. -## A fejlesztések közötti kapcsolat {#relationship-between-upgrades} +A Beacon lánc eredetileg nem kezelte a fő hálózat tranzakcióit. Ehelyett a saját állapotát illetően jutott konszenzusra az aktív validátorok számlaegyenlegekre vonatkozó egyetértésén keresztül. Mélyreható tesztelést követően eljött az ideje, hogy a Beacon lánc való világbeli adatokkal kapcsolatban is konszenzusra jusson. A beolvadás után a Beacon lánc lett az összes hálózati adat konszenzusmotorja, beleértve a végrehajtási réteg tranzakcióit és számlaegyenlegeit is. -Az Eth2 fejlesztések némileg összefüggnek. Foglaljuk össze tehát, hogy a dokkolás hogyan hat a többi fejlesztésre. +A beolvadás jelentette a hivatalos váltást, amely után a Beacon lánc tölti be a blokkelőállítás hajtómotorjának szerepét. Az érvényes blokkok előállításának módja többé már nem a bányászat. Ehelyett a proof-of-stake validátorok vették át ezt a szerepet, és most már ők felelnek a tranzakciók validálásának végrehajtásáért és az új blokkok előterjesztéséért. -### Dokkolás és a Beacon Chain {#docking-and-beacon-chain} +Az előzmények nem vesztek el a beolvadással. Ahogy a fő hálózat egyesült a Beacon lánccal, az Ethereum összes tranzakcióelőzményét is magával vitte. -Amint megtörtént a dokkolás, a letétbe helyezőket kijelölik az Ethereum főhálózat validálására. Csakúgy, mint a shard láncoknál. [A bányászat](/developers/docs/consensus-mechanisms/pow/mining/) így feleslegessé válik, tehát a bányászok az új proof-of-stake rendszerben valószínűleg letétbe helyezésbe fektetik majd, amit kerestek. + +A proof-of-stake mechanizmus átvétele megváltoztatta az Ether kibocsátásának módját. Tudjon meg többet: Ether-kibocsátás a beolvadás előtt és után. + -A Beacon Chain +### Felhasználók és tulajdonosok {#users-holders} -### Dokkolás és shard láncok {#docking-and-shard-chains} +**A beolvadás nem hozott változást a tulajdonosok/felhasználók számára.** -Mivel a főhálózat egy sharddá válik, a shard láncok sikeres implementációja kritikus ezen fejlesztési lépés szempontjából. Valószínű, hogy az átmenet egy fontos szerepet fog játszani, hogy a közösség eldöntse szeretne-e egy második sharding fejlesztést. Ez a fejlesztés a többi shardot is a főhálózathoz hasonlóvá teszi: képesek lesznek tranzakciókat és okosszerződéseket feldolgozni, nem csak több adatot biztosítani. +_Erre ráfér az ismétlés_: az ETH vagy az Ethereum hálózatán található bármely egyéb digitális eszköz felhasználójaként vagy tulajdonosaként, valamint nem csomópont-operátor letétesként **semmit sem kell tennie a pénzeszközeivel vagy a tárcájával a beolvadás kapcsán.** Az ETH egyszerűen csak ETH. Nincs olyan, hogy „régi ETH”/„új ETH” vagy olyan, hogy „ETH1”/„ETH2”, és a tárcák a beolvadás után is pontosan ugyanúgy működnek, mint azelőtt. Akik mást állítanak, valószínűleg csalók. -Shard láncok +Annak ellenére, hogy lecserélte a proof-of-work mechanizmust, az Ethereum összes előzménye – a létrejöttéig visszamenőleg – változatlan formában megmaradt a proof-of-stake-re való áttérés során. A beolvadás előtt az Ön tárcájában lévő eszközök a beolvadást követően is elérhetők. **Az ön részéről semmilyen frissítési intézkedés nem szükséges.** + +[Az Ethereum biztonságáról bővebben](/security/#eth2-token-scam) + +### Csomópont-operátorok és dapp-fejlesztők {#node-operators-dapp-developers} + + + +A fő intézkedési elemekhez tartoznak az alábbiak: + +1. Futtasson _egyidejűleg_ egy konszenzusklienst és egy végrehajtási klienst; a harmadik fél végpontok a beolvadás után már nem tudnak végrehajtási adatokat szerezni. +2. A végrehajtási és a konszenzusklienst is egy megosztott JWT titkos kulccsal hitelesítse, hogy biztonságosan tudjanak kommunikálni. +3. Állítson be egy „díj címzettje” címet a kapott tranzakciós illetéktételek/MEV fogadásához. + +Ha a fenti felsorolás első két elemét nem teljesíti, akkor a csomópontja „offline” állapotot mutat majd, amíg mindkét réteg szinkronizálása és hitelesítése be nem fejeződik. + +Ha nem állít be egy „díj címzettje” címet, attól még a validátor a szokásos módon tud működni, de Ön lemarad az el nem égetett díjtételekről/MEV-ről, amelyeket egyébként megkapott volna a validátora által előterjesztett blokkokkal. + + + + +Egészen a beolvadásig egy végrehajtási kliens (például: Geth, Erigon, Besu vagy Nethermind) elég volt ahhoz, hogy valaki fogadja, megfelelően validálja és propagálja a hálózaton terjedő blokkokat. _A beolvadás óta_ egy végrehajtási csomagban található tranzakciók érvényessége az őket tartalmazó „konszenzusblokk” érvényességétől is függ. + +Ennek eredményeképpen egy teljes Ethereum-csomóponthoz most már végrehajtási kliens és egy konszenzuskliens is szükséges. Ez a két kliens egy új motor-API segítségével működik együtt. A motor-API JWT titkos kulcsot használó hitelesítést igényel. A kulcsot mindkét kliens megkapja, ami biztonságos kommunikációt tesz lehetővé. + +A fő intézkedési elemekhez tartoznak az alábbiak: + +– konszenzuskliens telepítése a végrehajtási kliens mellé +– végrehajtási és konszenzuskliens hitelesítése megosztott JWT titkos kulccsal, hogy biztonságosan kommunikálhassanak egymással. + +Ha a fenti felsorolás elemeit nem teljesíti, akkor a csomópontja „offline” állapotúnak tűnik majd, amíg mindkét réteg szinkronizálása és hitelesítése be nem fejeződik. + + + + + +A Beolvadás megváltoztatta a konszenzust, amely a következőkre is hatott:< + +
    +
  • blokkstruktúra
  • +
  • slot-/blokkidőzítés
  • +
  • operációskód-változások
  • +
  • a láncon belüli véletlenszerűség forrása
  • +
  • a biztonságos fejléc és a véglegesített blokkok koncepciója
  • +
+ +További információért nézze meg Tim Beiko blog postját: Hogyan érinti a Beolvadás az Ethereum alkalmazási rétegét. + +
+ +## A beolvadás és az energiafogyasztás {#merge-and-energy} + +A beolvadás a proof-of-work végét jelentette az Ethereum számára, valamint egy fenntarthatóbb, környezetbarátabb Ethereum kezdetét. Az Ethereum energiafogyasztása nagyjából 99,95%-kal csökkent, ezzel az Ethereum zöld blokklánc lett. Tudjon meg többet az [Ethereum energiafogyasztásáról](/energy-consumption/). + +## A beolvadás és a méretezhetőség {#merge-and-scaling} + +A beolvadás a további méretezhetőségi fejlesztések lehetőségét is megteremtette, amelyek a proof-of-work konszenzus mellett lehetetlenek voltak, egy lépéssel közelebb hozva az Ethereumot az [Ethereum-jövőképben](/roadmap/vision/) felvázolt méretezési, biztonsági és fenntarthatósági célok eléréséhez. + +## Téveszmék a beolvadásról {#misconceptions} + + + +Két típusú Ethereum-csomópont létezik: olyanok, amelyek képesek blokkjavaslatot tenni, és olyanok, amelyek nem. + +A blokkot előterjesztő csomópontok csak kis részét adják az Ethereum hálózatán működő csomópontoknak. Ebbe a kategóriába tartoznak a proof-of-work (PoW) mechanizmus bányászcsomópontjai és a proof-of-stake (PoS) mechanizmus validátor-csomópontjai. Ez a kategória megköveteli a gazdasági erőforrások elkülönítését (például GPU hash-teljesítményt a proof-of-work mechanizmus alatt, illetve ETH-letétbe helyezést a proof-of-stake mechanizmus mellett) cserébe azért, hogy az operátor alkalomadtán javaslatot tehessen a következő blokkra, és megkaphassa a protokolljutalmakat. + +A hálózat többi csomópontja (tehát a csomópontok többsége) nem köteles gazdasági erőforrásokat feláldozni egy átlagos személyi számítógépen, 1-2 TB elérhető tárhelyen és egy internetkapcsolaton túl. Ezek a csomópontok nem terjesztenek elő blokkjavaslatokat, mégis kritikus szerepet játszanak a hálózat biztosításában azzal, hogy a blokkelőterjesztőket szemmel tartva vizsgálják az újonnan érkező blokkokat, és hálózat konszenzusszabályaival összhangban ellenőrzik azok érvényességét. Ha a blokk érvényes, akkor a csomópont propagálja azt a hálózaton keresztül. Ha a blokk bármilyen okból kifolyólag érvénytelen, akkor a csomópont szoftverje figyelmen kívül hagyja azt, és nem folytatja a propagálását. + +Egy nem blokk-készítő csomópontot bárki futtathat, működjön bármilyen konszenzusmechanizmus szerint is (proof-of-work vagy proof-of-stake); de aki megteheti, azt erőteljesen bátorítják. Egy csomópont futtatása hihetetlen értékkel bír az Ethereum számára, és előnyöket biztosít a csomópontot futtató egyén számára is, például nagyobb biztonságot, adatvédelmet és ellenálló képességet a cenzúrával szemben. + +Az Ethereum-hálózat decentralizációjának fenntartásához rendkívül lényeges az a képesség, hogy bárki tudjon saját csomópontot működtetni. + +Bővebben a saját csomópont működtetéséről + + + + + +A gasdíjak a hálózati teljesítmény iránti kereslet és a hálózati kapacitás egymáshoz viszonyított változásának eredményeként alakulnak. A beolvadással megszűnt a proof-of-work mechanizmus használata, és áttértünk a proof-of-stake konszenzusra, ám a hálózati kapacitást vagy feldolgozóképességet közvetlenül érintő paraméterekben jelentős változás nem következett be. + +A összevonttranzakció-centrikus fejlesztési tervvel az erőfeszítések oda irányultak, hogy a felhasználói aktivitást az L2-n tegyék skálázhatóvá, miközben lehetővé teszik, hogy az L1 főhálózat egy biztonságos, decentralizált réteg, ami optimális az összevont tranzakciós adatok tárolására, így azok használata exponenciálisan olcsóbb lehet. Ennek eléréséhez az áttérés a proof-of-stake mechanizmusra létfontosságú előfeltétel volt. Bővebben a gázról és a díjakról. + + + + +A tranzakciók „sebessége” több módon is mérhető, például az egy blokkban foglalt idővel és a véglegesítés időigényével. Ezek mindegyike változik kicsit, de a felhasználók számára ez nem észlelhető. + +Korábban, a proof-of-work konszenzus ideje alatt a cél az volt, hogy körülbelül 13,3 másodpercenként létrejöjjön egy új blokk. A proof-of-stake mechanizmussal a slotok pontosan 12 másodpercenként ismétlődnek, mind egy-egy lehetőség, hogy egy validátor közzétegyen egy blokkot. A legtöbb slothoz tartozik blokk is, de nem feltétlenül mindegyikhez (például ha egy validátor offline állapotban van). A proof-of-stake mechanizmus mellett körülbelül 10%-kal gyakrabban jön létre blokk, mint a proof-of-work mellett. Ez egy viszonylag jelentéktelen változás, amely a felhasználóknak valószínűleg nem tűnik fel. + +A proof-of-stake magával hozta a tranzakció véglegességének koncepcióját, amely korábban nem létezett. A proof-of-work rendszerében egy blokk visszafordításának nehézsége az adott tranzakció után kibányászott minden egyes blokkal exponenciálisan növekszik, de valójában sosem válik lehetetlenné. A proof-of-stake mechanizmusban a blokkok úgynevezett korszakokba (epoch) rendeződnek (6,4 perces időintervallumonként, amelyek 32 blokklehetőséget tartalmaznak), amelyekről a validátorok szavaznak. Amikor egy korszak lezárul, a validátorok szavaznak arról, hogy adott korszakot „igazolt” állapotúnak tekintsék. Ha a validátorok megegyeznek, hogy a korszakot igazolt állapotúnak tekintsék, akkor az a következő korszakban végleges állapotba kerül. A véglegesített tranzakciók visszafordítása gazdaságtalan lenne, mivel ehhez a teljes letétbe helyezett ETH-állomány több mint egyharmadát meg kellene szerezni és el kellene égetni. + + + + + +Kezdetben a Beolvadás után a letétesek csak az extra díjakat és a MEV-et kapták meg, amelyet a blokkjavaslások eredményeként nyertek. Ezek a jutalmak egy nem letéti számlára kerültek, amelyet a validátor kontrollál (aki a díjakat kapja), és azonnal elérhetők. Ezek különböznek a protokolljutalmaktól, amelyeket a validátori kötelezettségeikért kapnak. + +A Shanghai/Capella hálózatfrissítés óta a letétesek egy visszavonási számlát jelölnek ki, hogy automatikusan megkapják a letéti összeg feletti részt (32 ETH felett). Ez a fejlesztés lehetővé tette, hogy a validátor kilépjen a hálózatból, és ezzel felszabadítsa és visszakapja a teljes egyenlegét. + +Bővebben a letétek visszavonásáról + + + + +Mióta a Shanghai/Capella frissítés lehetővé tette a letétek visszavonását, minden validátort arra ösztönöznek, hogy lehívja a 32 ETH feletti letéti egyenlegét, mivel ezek a pénzeszközök nem járnak plusz hozammal, de a rendszer zárolja őket. Az APR-értéktől függően (amelyet a teljes letétbe helyezett ETH-mennyiség határoz meg) ez arra ösztönözheti őket, hogy teljesen feladják a validátori pozíciójukat és visszakérjék a teljes egyenlegüket, vagy éppen arra, hogy a jutalmaik felhasználásával növeljék a letétjüket és nagyobb hozamhoz jussanak. + +Egy fontos kikötés, hogy a validátor kilépése egy rátához van kötve, és csak eszerint léphet ki valaki egy adott korszakban (minden 6,4. percben). Ez a határérték az aktív validátorok számától függően változik, de a teljes letétbe helyezett ETH-nak kb. 0,33%-a lehet egy adott napon. + +Így nem lehet tömegesen letéti összeget kivonni. Emellett azt is megakadályozza, hogy egy potenciális támadó a letétjét felhasználva slashing-sértést kövessen el, és egyazon korszakon belül felszámolja a validátor teljes ETH-letéti egyenlegét, mielőtt a protokoll érvényesíthetné a megsemmisítési szankciót. + +Az APR értéke szándékosan dinamikus, segítségével a letétesek által alkotott piac megállapíthatja azt a kifizetési szintet, amely mellett hajlandók gondoskodni a hálózat biztonságáról. Ha ez a szint túl alacsony, akkor a validátorok a protokoll által korlátozott tempóban kilépnek. Ez fokozatosan megemeli az APR értékét a maradók számára, ami új vagy visszatérő letéteseket eredményez majd. + + +## Mi történt az „Eth2”-vel? {#eth2} + +Az „Eth2” kifejezést elhagytuk. Miután az „Eth1” és az „Eth2” egyetlen láncban egyesült, már nincs szükség arra, hogy különbséget tegyünk két Ethereum-hálózat között. Csak egy Ethereum maradt. + +A zavar elkerülése érdekében a közösség frissítette az alábbi kifejezéseket: + +- Az „Eth1” helyett a „végrehajtási réteg” kifejezést használjuk. Ez a réteg kezeli a tranzakciókat és a végrehajtást. +- Az „Eth2” helyett a „konszenzusréteg” kifejezést használjuk. Ez a réteg kezeli a proof-of-stake konszenzust. + +Ezek a terminológiai módosítások csak az elnevezési szabályokat változtatják meg; ez nem változtat az Ethereum céljain vagy útitervén. + +[Tudjon meg többet az „Eth2” átnevezéséről](https://blog.ethereum.org/2022/01/24/the-great-eth2-renaming/) + +## A frissítések közötti kapcsolat {#relationship-between-upgrades} + +Az Ethereum-frissítések némileg összefüggnek egymással. Foglaljuk össze hát, hogy a beolvadás hogyan viszonyul a többi frissítéshez. + +### A beolvadás és a Beacon lánc {#merge-and-beacon-chain} + +A beolvadás a Beacon lánc hivatalos átvételét jelenti az eredeti fő hálózat végrehajtási rétegéhez tartozó új konszenzusrétegként. A beolvadás óta a validátorok feladata az Ethereum-főhálózat biztosítása, és a [proof-of-work](/developers/docs/consensus-mechanisms/pow/) rendszerű bányászat már nem érvényes módszer a blokkok előállítására. + +Ehelyett a blokkokra azok a validáló csomópontok tesznek javaslatot, amelyek ETH-t helyeztek letétbe a konszenzusban való részvétel jogáért. Ezek a frissítések készítik elő a terepet a jövőbeni méretezhetőségi frissítésekhez, többek között a szilánkoláshoz. + + + A Beacon Chain + + +### A beolvadás és a Shanghai frissítés {#merge-and-shanghai} + +Hogy leegyszerűsítsük az áttérést a proof-of-stake mechanizmusra, és maximalizáljuk az összpontosítást erre a feladatra, a beolvadás nem tartalmazott bizonyos várt funkciókat, mint például a letétbe helyezett ETH lehívásának lehetőségét. Ez a funkció külön vált elérhetővé a Shanghai/Capella frissítéssel. + +A kíváncsibbak többet megtudhatnak arról, hogy [Mi történik A Beolvadás után](https://youtu.be/7ggwLccuN5s?t=101), méghozzá Vitalik 2021. áprilisi ETHGlobal eseményen tartott előadásából. + +### A beolvadás és a szilánkolás {#merge-and-data-sharding} + +Az eredeti terv szerint a beolvadás előtt dolgozták volna ki a láncszilánkolást (sharding) a méretezhetőség megoldására. Azonban a [2. rétegű méretezési megoldások](/layer-2/) elterjedésével a prioritás eltolódott afelé, hogy előbb a proof-of-stake leváltsa a proof-of-work rendszert. + +A szilánkolással kapcsolatos tervek gyorsan fejlődnek, ám a 2. rétegű technológiák felemelkedése és sikere kapcsán – amelyet a tranzakció-végrehajtás méretezése terén elértek – a szilánkolásra vonatkozó elképzelések most már arra irányulnak, hogy megtalálják a legoptimálisabb módot a rollupszerződések tömörített lehívási adatainak tárolásával járó teher elosztására, és így lehetővé tegyék a hálózati kapacitás exponenciális növekedését. Ehhez azonban előbb át kell térni a proof-of-stake mechanizmusra. + + + Szilánkolás (sharding) + + +## További olvasnivaló {#further-reading} + + + + diff --git a/public/content/translations/hu/roadmap/merge/issuance/index.md b/public/content/translations/hu/roadmap/merge/issuance/index.md new file mode 100644 index 00000000000..8589d40858b --- /dev/null +++ b/public/content/translations/hu/roadmap/merge/issuance/index.md @@ -0,0 +1,134 @@ +--- +title: Hogyan hatott az ETH kínálatra a Beolvadás +description: Részletes bemutatása annak, hogy a Beolvadás hogyan hatott az ETH kínálatára +lang: hu +--- + +# Hogyan hatott az ETH kínálatra a Beolvadás {#how-the-merge-impacts-ETH-supply} + +A Beolvadás jelenti az Ethereum hálózatok azon változását, amikor 2022. szeptemberében áttértek a proof-of-work mechanizmusról a proof-of-stake mechanizmusra. Akkor az is megváltozott, ahogy az ETH-t kibocsátják. Korábban az új ETH két forrásból származott: a végrehajtási rétegből. (főhálózat) és a konszenzusrétegből (Beacon lánc). A Beolvadás óta a végrehajtási réteg kibocsátása nulla. Nézzük meg ennek részleteit. + +## Az ETH-kibocsátás komponensei {#components-of-eth-issuance} + +A ETH-kínálatot két elsődleges erő irányítja: a kibocsátás és az elégetés. + +Az ETH **kibocsátása** az a folyamat, amikor olyan ETH-t hoznak létre, amely korábban nem létezett. Az ETH **elégetése** az a folyamat, amikor a létező ETH-t megsemmisítik, ezzel kivonva azt a körforgásból. A kibocsátás és elégetés rátája számos paraméter alapján kerül kiszámításra, és az ezek közötti egyensúly határozza meg az ether inflációs/deflációs rátáját. + + + +– A proof-of-stake mechanizmusra való átállás előtt a bányászok kb. 13 000 ETH-t bocsátottak ki naponta +– A letétbe helyezők kb. 1700 ETH-t adnak ki naponta, amelynek alapja 14 millió letétbe helyezett ETH +– A letétbe helyezési kibocsátás a letétbe helyezett ETH összegétől függ +– **A Beolvadás óta a napi kibocsátás 1700 ETH körüli, amely 88%-os csökkenés a korábbihoz képest** +– Az elégetés: a hálózati kereslettől függően változik. Ha egy adott napra az átlagos gázdíj legalább 16 gwei, akkor ez kiegyenlíti a validátoroknak kibocsátott 1700 ETH-t, és a nettó ETH infláció nulla vagy annál kevesebb. + + + +## A Beolvadás előtt (régi szisztéma) {#pre-merge} + +### A végrehajtási réteg kibocsátása {#el-issuance-pre-merge} + +A proof-of-work mechanizmusban a bányászok csak a végrehajtási réteggel kapcsolódtak, és blokkjutalmat kaptak, ha elsőként oldották meg a következő blokkot. A [Constantinople-frissítés](/history/#constantinople) után, 2019-től ez a jutalom 2 ETH volt blokkonként. A bányászok jutalmat szereztek akkor is, ha nem egy valid blokkot hoztak létre, amely nem került be a leghosszabb/hiteles láncba, hanem annak csak [ommer](/glossary/#ommer) vagy testvérblokkja volt. Ezek a jutalmak maximum 1,75 ETH-t értek ommerenként, és az érvényes blokk nyereségén _felül_ kerültek kibocsátásra. A bányászat egy gazdaságilag intenzív tevékenység volt, amelynek fenntartásához magas szintű ETH kibocsátásra volt szükség. + +### A konszenzusréteg kibocsátása {#cl-issuance-pre-merge} + +A [Beacon lánc](/history/#beacon-chain-genesis) 2020-től működik élesben. A bányászok helyett validátorok biztosították a rendszert a proof-of-stake mechanizmussal. Ezt a láncot úgy állították fel, hogy az Ethereum-felhasználók ETH-t helyeztek letétbe egy okosszerződésbe a főhálózaton (a végrehajtási rétegen), amelyet a Beacon lánc felismert és az új láncon ugyanannyit ETH-t adott a felhasználónak. A Beolvadás bevezetéséig a Beacon lánc validátorai nem kezelték a tranzakciókat és lényegében a validátor gyűjtőjének státuszáról hozták meg a konszenzust. + +A Beacon láncon a validátorok ETH jutalmat kaptak azért, hogy tanúsítják a lánc státuszát és blokkokat javasolnak. A validátor teljesítménye alapján jutalmak és büntetések kerülnek kiszabásra minden korszakban (epoch, minden 6,4 percben). A validátorok jutalma **jelentősen** kevesebb, mint a bányászoké volt a proof-of-work mechanizmusban (2 ETH kb. 13,5 másodpercenként), mivel a validáló csomópont üzemeltetése nem annyira intenzív feladat, és így nem jár olyan magas jutalom érte. + +### A Beolvadás előtti kibocsátás részletei {#pre-merge-issuance-breakdown} + +Teljes ETH-kínálat: **~120 520 000 ETH** (a Beolvadás idején, 2022. szeptemberben) + +**A végrehajtási réteg kibocsátása:** + +- A becslések szerint 2,08 ETH 13,3 másodpercenként \*: **kb. 4 930 000** ETH került kibocsátásra egy évben +- Ennek eredményeként egy **hozzávetőleges 4,09%-os** inflációs ráta keletkezett (évi 4,93 millió osztva a teljes 120,5 millióval) +- \*Beleértve a kanonikus blokkokért adott 2 ETH-t, plusz az ommer blokkokért adott átlagos 0,08 ETH-t. Emellett a 13,3 másodperc az alap blokkidő, eltekintve az esetleges [nehézség bombák](/glossary/#difficulty-bomb) hatásaitól. ([Tekintse meg a forrást](https://bitinfocharts.com/ethereum/)) + +**A konszenzusréteg kibocsátása:** + +- A teljes 14 000 000 letétbe helyezett ETH-t figyelembe véve az ETH kibocsátás kb. 1700 ETH/nap ([Tekintse meg a forrást](https://ultrasound.money/)) +- Ennek eredményeként **kb. 620 500** ETH-t bocsátanak ki évente +- Ennek eredménye a **kb. 0,52%-os** inflációs ráta (évi 620,5 ezer osztva a teljes 119,3 millióval) + + +Teljes éves kibocsátási ráta (a Beolvadás előtt): ~4,61% (4,09% + 0,52%)

+a kibocsátás kb. 88,7%-a ment a bányászoknak a végrehajtási rétegen (4,09 / 4,61 * 100)

+kb. 11,3%-a a letétesekhez került a konszenzusrétegen (0,52 / 4,61 * 100) +
+ +## A Beolvadás után (jelenlegi szisztéma) {#post-merge} + +### A végrehajtási réteg kibocsátása {#el-issuance-post-merge} + +A Beolvadás óta a végrehajtási réteg kibocsátása nulla. A blokkokat többé nem a proof-of-work mechanizmus alapján hozzák létre a konszenzus megújított szabályai szerint. A végrehajtási réteg tevékenységeit „beacon blokkokba” csomagolják, amelyeket a proof-of-stake validátorok publikálnak és tanúsítanak. A beacon blokk tanúsításért és publikálásért járó jutalmakat a konszenzusrétegen külön kezelik. + +### A konszenzusréteg kibocsátása {#cl-issuance-post-merge} + +A konszenzusréteg kibocsátása ma is ugyanúgy folytatódik, mint a Beolvadás előtt, kis összegű jutalmakat ad a validátoroknak a blokkok tanúsításáért és javaslattevésért. A validátori jutalmak továbbra is _validátoregyenlegként_ gyűlnek, amelyet a konszenzusrétegen kezelnek. Ezek nem általános, a főhálózaton használható („végrehajtási”) számlák, hanem elkülönített Ethereum számlák, amelyek nem léphetnek tranzakcióba más számlákkal. Az itt tárolt pénzeszközöket csak ki lehet vonni egy meghatározott végrehajtási címre. + +Ezt a visszavonási lehetőséget a Shanghai/Capella-frissítés tette lehetővé 2023. áprilisban. A letétbe helyezőket arra ösztönzik, hogy vegyék ki a _jutalmakat (a 32 ETH feletti összeget)_, mivel ezek nem járulnak hozzá a letéthez (ami maximum 32 ETH lehet). + +A letétbe helyezők emellett ki is léphetnek és kivonhatják a teljes validátoregyenlegüket. Az Ethereum stabilitása érdekében az egyszerre távozó validátorok száma korlátozott. + +Egy adott napon kb. a teljes validátoroknak a 0,33%-a távozhat. Alapból 4 validátor léphet ki egy korszakon (6,4 perc) belül, vagyis egy nap alatt 900. Plusz 1 validátor kiléphet akkor, ha 65 536 (216) új validátor jön és a teljes számuk több mint 262 144 (218). Például 327 680 validátor felett minden korszakban 5-en léphetnek ki (1125 naponta). Ha az aktív validátorok száma meghaladja a 393 216-t, akkor már 6-an léphetnek ki, és így tovább. + +Ahogy több validátor vonul ki, a meglévő validátorok száma fokozatosan lecsökken a minimum négy validátorra, így megvédi a rendszert attól, hogy az ETH-letétek egyidejű kivonása miatt labilissá váljon. + +### A Beolvadás utáni infláció részletezése {#post-merge-inflation-breakdown} + +- Teljes ETH-kínálat: **~120 520 000 ETH** (a Beolvadás idején, 2022. szeptemberben) +- A végrehajtási réteg kibocsátása: **0** +- A konszenzusréteg kibocsátása: A fentivel megegyezik, **kb. 0,52%** éves kibocsátási ráta (14 millió letétbe helyezett ETH-szel) + + +Teljes éves kibocsátási ráta: kb. 0,52%

+Az éves ETH kibocsátás nettó csökkenése: kb. 88,7% ((4,61% – 0,52%) / 4,61% * 100) +
+ +##  Az elégetés {#the-burn} + +Az ETH kibocsátással ellenkező erő az a ráta, ahogy az ETH-t elégetik. Az Ethereumon végrehajtandó tranzakcióért fizetni kell egy minimális díjat (alapdíj), amely állandóan változik, blokkról blokkra, a hálózati működés függvényében. Ezt a díjat ETH-ben fizetik, és _elengedhetetlen_ ahhoz, hogy egy tranzakció érvényes legyen. Ezt a díjat _elégetik_ a tranzakció végrehajtása során, így kikerül a körforgásból. + + +A díj elégetése a London-frissítés óta (2021. augusztus) működik, és a Beolvadás óta változatlan. + + +A bevezetett díj elégetése mellett a validátorok büntetéseket is kaphatnak azért, ha nincsenek online, vagy ami még rosszabb, ha olyan szabályokat hágnak át, amely a hálózat biztonságát veszélyeztetik, akkor az súlyos büntetéssel és kizárással jár. Ezek a büntetések lecsökkentik az ETH-t a validátor számláján, ami utána nem kerül máshova, tehát lényegében kivonják a forgalomból vagy elégetik. + +### A deflációhoz szükséges átlagos gázdíj kiszámítása {#calculating-average-gas-price-for-deflation} + +Az ETH kibocsátása egy adott napon a teljese letétbe helyezett ETH-től függ. A jelen leírás idején ez kb. 1700 ETH/nap. + +Ahhoz, hogy meghatározzuk azt az átlagos gázdíjat, ami ellensúlyozza ezt az ETH-kibocsátást egy 24 órás periódusban, először kiszámoljuk a blokkok számát az adott napon, tekintve, hogy a blokkidő 12 másodperc: + +- `(1 blokk / 12 másodperc) * (60 másodperc/perc) = 5 blokk/perc` +- `(5 blokk/perc) * (60 perc/óra) = 300 blokk/óra` +- `(300 blokk/óra) * (24 óra/nap) = 7200 blokk/nap` + +Minden blokk a `15x10^6 gáz/blokk` összeget célozza ([Bővebben a gázról](/developers/docs/gas/)). Ez alapján kiszámolhatjuk az átlagos gázdíjat (gwei/gáz), ami kiegyensúlyozza az ETH-kibocsátást, a napi kibocsátást 1700 ETH-nek véve: + +- `7200 blokk/nap * 15x10^6 gáz/blokk *`**`Y gwei/gáz`**`* 1 ETH/ 10^9 gwei = 1700 ETH/nap` + +Megoldva az `Y-ra`: + +- `Y = (1700(10^9))/(7200 * 15(10^6)) = (17x10^3)/(72 * 15) = 16 gwei` (két számjegyre kerekítve) + +Egy másik módon rendezve ezt egy `X` változót tehetünk az `1700` helyére, ami a napi ETH-kibocsátás, a többit pedig leegyszerűsítve: + +- `Y = (X(10^3)/(7200 * 15)) = X/108` + +Leegyszerűsíthetjük úgy, hogy az `X` függvényét írjuk fel: + +- `f(X) = X/108`, ahol `X` a napi ETH-kibocsátás, és az `f(X)` jelenti gwei/gáz árat, amely ellensúlyozni tudja az újonnan kibocsátott ETH-t. + +Tehát ha az `X` (napi ETH kibocsátás) megnövekszik 1800-ra a teljes letétbe helyezett ETH alapján, `f(X)` (gwei, amivel kiegyensúlyozható a kibocsátás) ekkor `17 gwei` lesz (2 számjegyre kerekítve) + +## További olvasnivaló {#further-reading} + +- [A beolvadás](/roadmap/merge/) +- [Ultrasound.money](https://ultrasound.money/) – _Dashboardok az ETH-kibocsátás és -elégetés valós idejű vizualizációjára_ +- [Az Ethereum-kibocsátás grafikonos ábrázolása](https://www.attestant.io/posts/charting-ethereum-issuance/) – _Jim McDonald 2020._ diff --git a/public/content/translations/hu/roadmap/pbs/index.md b/public/content/translations/hu/roadmap/pbs/index.md new file mode 100644 index 00000000000..cc32211809a --- /dev/null +++ b/public/content/translations/hu/roadmap/pbs/index.md @@ -0,0 +1,51 @@ +--- +title: Javaslattevő-építő szétválasztása +description: Ismerje meg, hogy az Ethereum-validátorok hogyan és miért osztják fel a blokképítési és -küldési feladatokat. +lang: hu +--- + +# Javaslattevő-építő szétválasztása {#proposer-builder-separation} + +Jelenleg az Ethereum validátorok blokkokat hoznak létre_és_ küldenek. Összecsomagolnak olyan tranzakciókat, amelyekről tudomást szereztek a pletykahálózaton keresztül, blokkot készítenek azokból és elküldik a társaiknak az Ethereum-hálózaton. A **javaslattevő-építő szétválasztás (PBS)** szétosztja ezeket a feladatokat a validátorok között. A blokk építői minden egyes slotban létrehozzák a blokkokat és felajánlják azokat a javaslattevőnek, aki az adott slotban felel az előterjesztésért. A javaslattevő nem láthatja a blokk tartalmát, egyszerűen a legjövedelmezőbbet választja, és megfizeti a blokképítés díját, mielőtt elküldi a blokkot a társainak. + +Ez több szempontból is egy fontos fejlesztés. Először is lehetővé teszi, hogy a tranzakciók cenzúrázása protokoll szinten ne történhessen meg. Másodsorban az egyszerűbb validátorokat nem tudják kirekeszteni a versenyből az intézményes résztvevők, akik jobban tudják optimalizálni a blokképítési profitjukat. Harmadjára az Ethereum-skálázását is támogatja azáltal, hogy lehetővé teszi a Danksharding fejlesztéseket (párhuzamos futtatás). + +## A PBS és a cenzúrának való ellenállás {#pbs-and-censorship-resistance} + +A blokk építésének és előterjesztésének szétválasztása megnehezíti a blokképítők számára, hogy cenzúrázzák a tranzakciókat. Ennek az az alapja, hogy egy viszonylag összetett kritériumokat lehet megadni arra, hogy minek muszáj benne lennie a blokkban, ezért a javaslattevés előtt nem lehet a tranzakciókat cenzúrázni. Mivel a javaslattevő egy másik entitás az építőhöz képest, ezért védekezhet a cenzúrázó blokképítők ellen. + +Például bekerülési listákat tud adni a javaslattevő, hogy a tudomására jutott tranzakciókat, amelyeket mégsem lát az adott blokkban, a következő építésnél kötelezővé tudja tenni. Ezt a bekerülési listát a javaslattevő a saját memóriakészletéből (tranzakciók, amelyekről tudomása van) készíti és küldi el a társainak még mielőtt a blokkjavaslat megtörténne. Ha a bekerülési listáról bármely tranzakció hiányzik, akkor a javaslattevő elutasíthatja az adott blokkot, hozzáteheti a hiányzó tételeket mielőtt javasolja azt, vagy elküldheti a javaslatot és a többi validátorra bízhatja, hogy azok utasítsák el. Ennek az elképzelésnek létezik egy valószínűleg még hatékonyabb verziója, amikor az építőtől azt várjuk, hogy teljesen kihasználja a blokkhelyet, és ha nem teszi, akkor a bekerülési listáról lehet még hozzáadni tranzakciókat a blokkhoz. Ez jelenleg egy aktív kutatási terület, a bekerülési listák optimális konfigurálása még nem dőlt el. + +[A titkosított memóriakészletek](https://www.youtube.com/watch?v=fHDjgFcha0M&list=PLpktWkixc1gUqkyc1-iE6TT0RWQTBJELe&index=3) nem teszik lehetővé az építő és a javaslattevő számára, hogy tisztában legyenek a blokkba foglalt tételekkel, csak miután az már elküldésre került. + + + +A nagyobb hatalommal bíró szervezetek nyomást gyakorolhatnak a validátorokra, hogy zárjanak ki bizonyos címekre menő vagy onnan jövő tranzakciókat. A validátorok ennek megfelelően beazonosíthatják a feketelistás tételeket a tranzakciógyűjtőben és kihagyhatják azokat a javasolt blokkból. A PBS után ez nem lehetséges, mert a javaslattevő nem fogja tudni, hogy milyen tranzakciók szerepelnek az általa elküldött blokkban. Bizonyos egyéneknek vagy alkalmazásoknak talán fontos lehet bizonyos cenzúraszabályoknak megfelelni, amikor az adott régióban azt törvény szabályozza. Ezekben az esetekben a szabálynak való megfelelés az alkalmazás szintjén történik, így a protokoll továbbra is engedélymentes és cenzúramentes marad. + + + +## A PBS és a MEV {#pbs-and-mev} + +A **maximálisan kinyerhető érték (MEV)** arra utal, amikor a validátorok maximalizálják a nyereségüket azzal, hogy kedvezőségi sorrendbe állítják a tranzakciókat. Általános példa az arbitrázs célú átváltás a decentralizált tőzsdéken (pl. egy nagy értékű eladás vagy vétel elé kerülve), vagy annak észlelése, hogy egy pénzügyi (DeFi) pozíciót érdemes lenne likvidálni. A MEV maximalizálása olyan szofisztikált technikai tudást és személyre szabott szoftverkiegészítéseket igényel a normális validátorhoz képest, hogy sokkal valószínűbb, hogy az intézményes működtetők lehagyják az egyéneket vagy egyszerű validátorokat a MEV kinyerése kapcsán. Emiatt a letétbe helyezés díjai valószínűleg magasabbak lesznek a centralizált működtetőknél, ami olyan központosítő erőt hoz létre, amely nem motiválja az otthoni letétbe helyezést. + +A PBS úgy oldja meg ezt a problémát, hogy újrakonfigurálja a MEV gazdasági helyzetét. Ahelyett, hogy a blokk javaslattevője végezne saját MEV keresést, egyszerűen felvesz egy blokkot a neki felajánlottak közül, amelyet a blokképítők készítettek. A blokk építői végezhetnek szofisztikált MEV-kinyerést, de ennek nyeresége a javaslattevőhöz jut. Tehát még ha a MEV kinyerést dominánsan néhány specializált blokképítő végzi, ennek jutalma a hálózat bármelyik validátorához kerülhet, beleértve az egyéni, otthoni letétbe helyezőket. + + + +Az egyéneket arra motiválhatja, hogy egyéni letétbe helyezés helyett inkább készletekbe tegyék a letétet, mert a szofisztikált MEV-stratégiák miatt az nagyobb nyereséget kínál. A blokk építőjének és javaslattevőjének elkülönítése azt jelenti, hogy a kinyert MEV több validátornál kerül elosztásra, nem pedig a leghatékonyabb MEV-kinyerőnél központosul. Emellett a specializált blokképítők levehetik az egyénekről a blokk készítésének terhét, megakadályozhatják, hogy az egyének saját maguknak vegyenek ki MEV-et a validálás során, miközben maximalizálják az egyéni, független validátorok számát, akik jóhiszemű módon képesek ellenőrizni a blokkokat. A fontos koncepció a „bizonyító-ellenőrző aszimmetria”, amelynek lényege, hogy a centralizált blokklétrehozás rendben van addig, amíg robosztus és maximálisan decentralizált validátorhálózat áll rendelkezésre a blokkok jóhiszemű igazolásához. A decentralizáció egy eszköz, nem pedig végcél – valós blokkokat szeretnénk elérni. + + +## A PBS és a Danksharding {#pbs-and-danksharding} + +A Danksharding az a módszer, amivel az Ethereum skálázza a teljesítményt, hogy másodpercenként több mint 100 000 tranzakciót kezeljen és közben minimalizálja az összevont tranzakcióért fizető felhasználók által fizetett díjakat. A PBS-en alapszik, mert a blokképítőknek extra feladatot ad, akiknek bizonyítékot kell készíteniük 64 MB-nyi összevonttranzakció-adatra kevesebb mint 1 másodperc alatt. Ehhez valószínűleg specializált építőkre van szükség, akik elég komoly hardvert tudnak kijelölni ehhez a feladathoz. A nem PBS szerinti helyzetben a blokképítés egyre inkább centralizálódhat a szofisztikáltabb és erőteljesebb működtetők körül a MEV kinyerése miatt is. A javaslattevő-építő szétválasztás (PBS) egy olyan mód, amely felöleli ezt a valóságot és megakadályozza a blokkvalidálás központosítását (ami nagyon fontos), illetve elősegíti a letéti jutalmak elosztását. Remek lehetőség ez arra is, hogy a specializált blokképítők hajlandók és képesek legyenek kiszámolni a Dankshardinghoz szükséges adatbizonyítékokat. + +## Jelenlegi helyzet {#current-progress} + +A PBS a kutatás előrehaladott fázisában tart, bár akadnak még fontos kérdések, mielőtt az Ethereum klienseknél bevezetésre kerül. Nincs még véglegesített specifikáció. Ebből adódhat, hogy akár egy év is szükséges a bevezetésére. Tekintse meg a [kutatás jelenlegi állapotát](https://notes.ethereum.org/@vbuterin/pbs_censorship_resistance). + +## További olvasnivaló {#further-reading} + +- [Kutatási állapot: cenzúrának való ellenállás a PBS esetén](https://notes.ethereum.org/@vbuterin/pbs_censorship_resistance) +- [PBS-barát díjpiac dizájn](https://ethresear.ch/t/proposer-block-builder-separation-friendly-fee-market-designs/9725) +- [A PBS és a cenzúrának való ellenállás](https://notes.ethereum.org/@fradamt/H1TsYRfJc#Secondary-auctions) +- [Bekerülési listák](https://notes.ethereum.org/@fradamt/H1ZqdtrBF) diff --git a/public/content/translations/hu/roadmap/scaling/index.md b/public/content/translations/hu/roadmap/scaling/index.md new file mode 100644 index 00000000000..222b05a4119 --- /dev/null +++ b/public/content/translations/hu/roadmap/scaling/index.md @@ -0,0 +1,47 @@ +--- +title: Az Ethereum skálázása +description: A összevont tranzakciók összekötegelik a tranzakciókat a láncon kívül, ezzel csökkentve a felhasználó költségét. Ugyanakkor ahogy az összevont tranzakciók jelenleg használják az adatokat, az túl drága, és behatárolják, hogy milyen alacsony is lehet a tranzakciós díj. Erre a Proto-Danksharding nyújt megoldást. +lang: hu +image: /roadmap/roadmap-transactions.png +alt: "Ethereum-ütemterv" +template: roadmap +--- + +Az Ethereum skálázása a [layer 2s](/layer-2/#rollups) második blokkláncréteg (L2), vagy más néven összevont tranzakciók által történik, ami kötegbe rendezi a tranzakciókat és az eredményt beküldi az Ethereumra. Habár az összevont tranzakciók költsége a nyolcada az Ethereum főhálózaténak, még mindig van hova optimalizálni a működésüket és ezzel csökkenteni a felhasználók költségét. A összevont tranzakciók emellett néhány centralizált komponensre támaszkodnak, amelyet a fejlesztők eltávolíthatnak majd, ahogy az összevont tranzakciók fejlődik. + + +
    +
  • Ma az összevont tranzakciók ~3–8× olcsóbbak, mint az Ethereum L1
  • +
  • A ZK összevont tranzakciók esetében hamarosan ~40–100× alacsonyabb lesz a díj
  • +
  • Az eljövendő Ethereum-módosítások további ~100–1000×-szoros skálázást tesznek lehetővé
  • +
  • A felhasználók számára egy tranzakció kevesebb mint 0,001 $-ba fog kerülni
  • +
+
+ +## Az adatok olcsóbbá tétele {#making-data-cheaper} + +A összevont tranzakciók sok tranzakciót gyűjtenek össze, végrehajtják azokat és az eredményt az Ethereumra küldik. Ez rengeteg adatot jelent, amelyet nyíltan elérhetővé kell tenni bárki számára, hogy lefuttathassa a tranzakciókat és ellenőrizze, hogy az összevont tranzakció operátora jóhiszeműen járt el. Ha valaki talál egy eltérést, akkor megkérdőjelezheti azt. + +### Proto-Danksharding {#proto-danksharding} + +A összevont tranzakciós adatok tartósan az Ethereumon maradnak, ami drága. Az összevont tranzakciók tranzakciós költségeinek több mint 90%-át az adattárolás teszi ki. A tranzakciós költségek csökkentéséhez az adatot egy új átmeneti blob tárhelyre mozgathatjuk. A blob olcsóbb, mert nem tartós; törölhetők az Ethereumról, amint már nincs rájuk szükség. A összevont tranzakciós adatok hosszú távon azoknak a felelősségébe tartoznak, akiknek szükségük van azokra, mint az összevont tranzakciós operátorok, tőzsdék, indexáló szolgáltatások stb. Az Ethereum blob-tranzakcióval való kiegészítése a „Proto-Danksharding” néven ismert frissítés része. Viszonylag hamar, 2023 végére várható, hogy a frissítés bevezetésre kerül. + +Miután a blob-tranzakció a protokoll részévé válik a Proto-Dankshardingon keresztül, számos blobot lehet majd hozzáadni az Ethereum-blokkokhoz. Ez egy újabb jelentős (több mint 100×) skálázási lehetőség az Ethereum tranzakcióátvitelét illetően és a költségek csökkentésére. + +### Dank-féle párhuzamos futtatás (Danksharding) {#danksharding} + +A blobadatok kiterjesztésének második szintje bonyolult, mert új módszer kell annak ellenőrzésére, hogy az összevont tranzakcióadatok a hálózaton vannak, és arra támaszkodik, hogy a validátor felelősségi körei szétválnak a blokk építésre és javaslattételre. Kell hozzá egy olyan módszer is, amely kriptográfiailag bizonyítja, hogy a validátor igazolta a blobadat egy kis részét. + +Ez a második lépés a [Danksharding](/roadmap/danksharding/). Valószínűleg néhány évnek el kell telnie, mire teljesen kialakul. A Danksharding más fejlesztéseken is múlik, mint a [PBS](/roadmap/pbs) és új hálózati dizájn, hogy a hálózat hatékonyan tudja konfirmálni, hogy az adatok elérhetők, azáltal hogy véletlenszerűen néhány kilobájtos mintát választ egy adott időben, ezt [adat-elérhetőségi mintavételnek (DAS)](/developers/docs/data-availability) nevezzük. + +Bővebben a Dankshardingról + +## Az összevont tranzakciók decentralizálása {#decentralizing-rollups} + +Az [összevont tranzakciók](/layer-2) már most is gondoskodnak az Ethereum méretezhetőségéről. Az [összevont tranzakciós projektek gazdag ökoszisztémája](https://l2beat.com/scaling/tvl) teszi lehetővé, hogy a felhasználó gyorsabban és olcsóbban indítson tranzakciót, a biztonsági garanciák széles körét kiélvezve. Ugyanakkor az összevont tranzakciók centralizált szekvenszert használnak (ami feldolgozza a tranzakciókat és aggregálja azokat, mielőtt az Ethereumra küldené). Ez lehetővé teszi a cenzúrát, mivel a szekvenszeroperátorokat meg lehet büntetni, vesztegetni vagy máshogy veszélyeztetni. Emellett az [összevont tranzakciók eltérnek abban](https://l2beat.com), hogyan validálják a bejövő adatokat. A legjobb az, ha a bizonyítók csalási bizonyítékot vagy érvényességi bizonyítékot adnak be, de nem minden összevont tranzakció tart még itt. Még ahol léteznek is ilyen érvényesítési/csalásbiztos összevont tranzakciók, ott is csak kevés bizonyítót használnak. Ezért a következő fontos lépés az Ethereum skálázásban, hogy elossza a szekvenszer és a bizonyító felelősségét több emberre. + +Bővebben az összevont tranzakciókról + +## Jelenlegi helyzet {#current-progress} + +A Proto-Danksharding valószínűleg az egyik legkorábbi útiterv lesz, ami megvalósul. A felállításához szükséges decentralizált számítási lépések már úton vannak, és számos kliens épített prototípust a blobadatok kezelésére. A teljes Danksharding valószínűleg több év múlva fog megvalósulni, mivel több más útitervelem kifejlesztése is szükséges hozzá. Az összevont tranzakciók infrastruktúrájának decentralizálása egy fokozatos folyamat lesz – több különböző összevont tranzakció létezik, amelyek kicsit más felállásban működnek, és más rátán fogják tudni elvégezni a decentralizálást. diff --git a/public/content/translations/hu/roadmap/secret-leader-election/index.md b/public/content/translations/hu/roadmap/secret-leader-election/index.md new file mode 100644 index 00000000000..893d104f6bc --- /dev/null +++ b/public/content/translations/hu/roadmap/secret-leader-election/index.md @@ -0,0 +1,44 @@ +--- +title: Titkos vezetőválasztás +description: Annak áttekintése, hogyan segíthet a titkos vezetőválasztás a validátorokat megvédeni a támadóktól +lang: hu +summaryPoints: + - A blokkjavaslók IP-címe előre ismert, így sebezhetővé válnak a támadásokkal szemben + - A titkos vezetőválasztás elrejti a validátorok személyazonosságát, így nem tudni előre, hogy kire esik a választás + - Ezen elképzelés egyik további lépése az, hogy minden slotban legyen véletlenszerű a validátorválasztás. +--- + +# Titkos vezetőválasztás {#single-secret-leader-election} + +A jelenlegi [proof-of-stake](/developers/docs/consensus-mechanisms/pos) alapú konszenzusmechanizmusban a következő blokkjavaslók nyilvánosak, és az IP-címüket hozzájuk lehet kapcsolni. Tehát a támadók be tudják azonosítani, hogy melyik validátor fogja a következő blokkot javasolni, megtámadhatják őt egy szolgáltatásmegtagadásos (denial-of-service/DOS) támadással, így nem tudják időben javasolni a blokkot. + +Ez lehetőséget nyújt a támadó számára, hogy profitra tegyen szert. Például a blokkjavasló, akit a slot `n+1`-ra választottak, megtámadja a blokkjavaslót a slot `n`-ben, így az nem tud blokkot javasolni. Így a támadó két slotra vonatkozó MEV-et (maximálisan kinyerhető értéket) tud kivonni, vagy az összes tranzakciót egyben berakja egy blokkba, hogy az összes díjat megszerezze. Ez nagy valószínűséggel jobban érinti az otthoni validálókat, mint a szofisztikált, szervezeti validátorokat, akik fejlettebb módokon tudják védeni magukat, így ennek az egésznek centralizáló hatása van. + +Számos megoldás létezik erre a problémára. Az egyik az [elosztottvalidátor-technológia](https://github.com/ethereum/distributed-validator-specs), ami elosztja a validátorhoz szükséges feladatokat több számítógépen, némi duplikációval (extra kapacitással), így a támadónak sokkal nehezebb megakadályozni a javaslatot egy adott slotban. A legrobusztusabb megoldás a **Single Secret Leader Election (SSLE)**, vagyis az egyetlen, titkos vezető kiválasztása. + +## Egyetlen, titkos vezető kiválasztása {#secret-leader-election} + +Az SSLE-ben okos kriptográfia biztosítja, hogy csak a kiválasztott validátor tudja, hogy őt választották. Minden validátor elköteleződik egy titok mellett, amelyet mind ismernek. Az elköteleződéseket összekeverik és újrakonfigurálják, hogy senki se tudja összekapcsolni azokat a validátorok elköteleződésével, de minden validátor tudja, hogy melyik tartozik őhozzá. Majd a rendszer véletlenszerűen választ egyet. Ha egy validátor azt észleli, hogy az ő elköteleződésére esett a választás, akkor tudja, hogy neki kell javasolnia a blokkot. + +Ennek az elképzelésnek a vezető implementációja a [Whisk](https://ethresear.ch/t/whisk-a-practical-shuffle-based-ssle-protocol-for-ethereum/11763). Ami a következőképpen működik: + +1. A validátorok elköteleződnek egy közös titok mellett. Az elköteleződési séma úgy van kialakítva, hogy bár köthető a validátor személyazonosságához, de egyúttal véletlenszerű is, így egy harmadik fél nem tudja visszafejteni az adott validátor személyazonosságát. +2. A korszak kezdetén a validátorok véletlenszerű csoportja kerül kiválasztásra, hogy mintát vegyenek a 16 384 validátorból a RANDAO használatával. +3. A következő 8182 slotra (1 nap), a blokkjavaslók összekeverik és véletlenszerűsítik az elköteleződések csoportját a saját privát entrópiájukat (véletlenszerűség) használva. +4. Ezután RANDAO készít egy sorba rendezett listát az elköteleződésekből. Ez a lista az Ethereum slotokhoz kapcsolódik. +5. A validátorok látják, hogy az elköteleződésük egy specifikus slothoz kapcsolódik, és annak bekövetkeztével javasolják a blokkot. +6. Ezeket a lépéseket ismétlik, hogy a hozzárendelés előrébb tartson, mint az aktuális slot. + +Ekkor a támadók nem tudják előre, hogy amelyik validátor jön legközelebb, így nem tudják megtámadni DOS módszerrel. + +## Egynél több titkos vezető kiválasztása (SnSLE) {#secret-non-single-leader-election} + +Van egy másik javaslat is, amelynek lényege, hogy a validátorok mindegyikének véletlenszerű esélye legyen a blokkjavaslásra minden slotban, hasonlóan ahhoz, ahogy a proof-of-work működött, ennek a neve a**egynél több titkos vezető kiválasztása (SnSLE)**. Az adott napi protokollban lévő validátorok véletlenszerű kiválasztásához egyszerű módot kínál a RANDAO-funkció. Ennek lényege, hogy egy kellően véletlenszerű szám keletkezik, amelyet több független validátor adat kevert hashekből. Az SnSLE esetében ezeket a hasheket lehetne használni a következő blokkjavasló kiválasztására, például a legkevesebb értékű hasht választva. Az érvényes hashek tartománya behatárolható, hogy finomhangolják a valószínűségét egy adott validátor kiválasztásának minden slotban. Ha a hashnek kevesebbnek kell lennie, mint `2^256 * 5 / N` ahol `N` az aktív validátorok számát jelenti, akkor annak az esélye, hogy valamelyik egyéni validátort kiválasztják a slotban az `5/N`. Ebben a példában 99,3% az esélye, hogy legalább egy blokkjavasló valid hasht készített minden slotban. + +## Jelenlegi helyzet {#current-progress} + +Az SSLE és az SnSLE még kutatási fázisban van. Nincs véglegesített specifikáció egyik elképzelésre sem. Az SSLE és az SnSLE egymással versengő javaslatok, nem lehet mindkettőt bevezetni. A bevezetéshez több kutatásra és fejlesztésre, prototípus-készítésre és a nyilvános teszthálózatokon való telepítésre van szükség. + +## További olvasnivaló {#further-reading} + +- [SnSLE](https://ethresear.ch/t/secret-non-single-leader-election/11789) diff --git a/public/content/translations/hu/roadmap/security/index.md b/public/content/translations/hu/roadmap/security/index.md new file mode 100644 index 00000000000..0824ee0635e --- /dev/null +++ b/public/content/translations/hu/roadmap/security/index.md @@ -0,0 +1,48 @@ +--- +title: Biztonságosabb Ethereum +description: Az Ethereum a legbiztonságosabb és leginkább decentralizált okosszerződés-platform a világon. Azonban még mindig vannak fejlődési lehetőségek, hogy az Ethereum ellenálló maradjon minden szinten a támadásokkal szemben a jövőben is. +lang: hu +image: /roadmap/roadmap-security.png +alt: "Ethereum-ütemterv" +template: roadmap +--- + +Az Ethereum már most is egy nagyon biztonságos, decentralizált okosszerződés-platform. Azonban még mindig vannak fejlődési lehetőségek, hogy az Ethereum ellenálló maradjon mindenféle támadással szemben a jövőben is. Ez olyan apró változtatásokat is magában foglal, hogy az Ethereum-kliensek kezelik a versenyző blokkokat, valamint a sebességmegnövelését, amennyi idő alatt a hálózat azt mondja egy blokkra, hogy [végleges](/developers/docs/consensus-mechanisms/pos/#finality) (így a támadó nem változtathatja meg, csak nagy gazdasági veszteség árán). + +Olyan fejlesztések is folyamatban vannak, amelyek a tranzakciók cenzúrázását nehezítik meg, azáltal hogy a blokkjavasló nem tudja, mit tartalmaz az adott blokk, és új módokat kínál annak megállapítására, hogy egy kliens cenzúráz-e. Ezek együtt fogják továbbfejleszteni a proof-of-stake protokollt, hogy a felhasználóknak, az egyénektől a vállaltokig, azonnali bizalmuk legyen az alkalmazásokban, adatokban és eszközökben az Ethereumon. + +## A letétbe helyezés visszavonása {#staking-withdrawals} + +A proof-of-work mechanizmusról a proof-of-stake-ra való áttérés azzal kezdődött, hogy az Ethereum-úttörők egy letéti szerződésben letétbe helyezték az rendelkezésre álló ETH-jüket. Ez az ETH arra van, hogy megvédje a hálózatot. Ugyanakkor ezt az ETH-t nem lehetett felszabadítani és visszaadni a felhasználóknak. Az ETH-visszavonás lehetősége egy kritikus része a proof-of-stake frissítésnek. Amellett, hogy a pénzkivonás a teljesen működőképes proof-of-stake protokoll kritikus eleme, a kifizetések engedélyezése az Ethereum biztonságának is jót tesz, mivel lehetővé teszi a letétbe helyezők számára, hogy ETH-jutalmaikat más, nem letéttel kapcsolatos célokra is felhasználják. A likviditást igénylő felhasználóknak nem kell a likvid letéti derivatívákat (LSD) használni, ami egy centralizáló erő az Ethereumon. Ez a frissítés várhatóan 2023. április 12-án fog végbemenni. + +Bővebben a visszahívásokról + +## Támadások elleni védelem {#defending-against-attacks} + +A visszahívásokon kívül további fejlesztések tehetők az Ethereum [proof-of-stake](/developers/docs/consensus-mechanisms/pos/) protokollján. Az egyik ilyen a [nézetegyesítés](https://ethresear.ch/t/view-merge-as-a-replacement-for-proposer-boost/13739), egy biztonságosabb elágazási algoritmus, ami bizonyos szofisztikált támadásokat lehetetlenít el. + +Ha az Ethereum blokkvéglegesítési idejét sikerül csökkenteni, akkor a jobb felhasználói élmény mellett az olyan szofisztikált átrendezési támadásokat is csökkenteni lehet, amikor a támadó extra profitot akar kiszedni vagy cenzúrázza a tranzakciókat. Az [**egy sloton belüli véglegesség (SSF)**](/roadmap/single-slot-finality/) egy remek módszer a véglegesítés késleltetésére. Jelenleg 15 percnyi blokk esetén tudna egy támadó elméletileg meggyőzni egy másik validátort, hogy újrakonfigurálja azokat. Az SSF esetén ez 0 lenne. A felhasználók számára, kezdve az egyénektől egészen az alkalmazásokig és tőzsdékig, mindig hasznos, ha gyorsan lehet biztosítani, hogy a tranzakcióik ne lesznek visszafordítva, a hálózatnak pedig az, hogy a támadások teljes osztályait ki tudja zárni. + +Bővebben az egy sloton belüli véglegességről (SSF) + +## A cenzúra elleni védelem {#defending-against-censorship} + +A decentralizáció megakadályozza, hogy bizonyos egyének vagy validátorok kis csoportja túlzott befolyásra tegyen szert. Az új letéti technológiák segítenek, hogy az Ethereum validátorai decentralizáltak maradjanak, miközben védi őket a hardver-, szoftver- és hálózati hibáktól. Ez olyan szoftvert is felölel, amely megosztja a validátor felelősségét több csomóponton keresztül. Ez az **elosztottvalidátor-technológia (DVT)**. A letéti alapok ez ösztönzi, hogy használják a DVT-t, így több számítógép vehet részt egyszerre a validációban, ezzel redundanciával (extra kapacitás) és hibatoleranciával kiegészítve a működést. A validátorkulcsokat több rendszerre osztja el ahelyett, hogy egy operátor futtatna több validátort. Ezáltal a rosszhiszemű operátoroknak nehezebb támadást indítani az Ethereum ellen. Összességében további biztonsági előnyökkel járhat, ha a validátorok _közösségként_ működnek, nem egyénként. + +Bővebben az elosztottvalidátor-technológiáról (DVT) + +Az **előterjesztő-építő szétválasztás (PBS)** drasztikusan fejleszti az Ethereum beépített, cenzúrának való ellenállást. A PBS lehetővé teszi, hogy egy validátor rakja össze a blokkot, egy másik pedig továbbadja az Ethereum-hálózatnak. Ez biztosítja, hogy a professzionális profitmaximalizáló blokképítő algoritmusokól eredő nyereségek majd egyenletesebben oszoljanak el a hálózaton, **megakadályozva a letétek koncentrációját** a legjobban működő intézményes letéteseknél. A blokk előterjesztője a leginkább profitábilis blokkot választja azok közül, amit a blokképítők piaca ajánl. A cenzúrához a blokk előterjesztőjének gyakran egy kevésbé profitábilis blokkot kellene választania, ami **gazdaságilag irracionális és nyilvánvaló a többi validátor számára is** a hálózaton. + +Olyan potenciális kiegészítések is elérhetők a PBS-hez, mint a titkosított tranzakciók és a bekerülési lista, ami tovább növeli az Ethereum cenzúrának való ellenállást. Ezek következtében a blokk építője és javaslója nem tudja, hogy milyen tranzakciók vannak a blokkban. + +Bővebben a PBS-ről + +## A validátorok védelme {#protecting-validators} + +Lehetséges, hogy egy szofisztikált támadó beazonosítja a következő validátort és megakadályozza őt a javaslattételben; ez a **szolgáltatásmegtagadási, vagy más néven DoS**-támadás. A [**titkos vezetőválasztás (SLE)**](/roadmap/secret-leader-election) bevezetése megvéd ettől a támadási típustól, mivel a blokkjavaslók nem lesznek előre ismertek. Úgy működik, hogy a blokkjavaslókat képviselő kriptográfiai elköteleződéseket állandón keverik, és ezek sorrendje adja meg, hogy amelyik validátor kerül kiválasztásra, amiről csak ő fog tudni. + +Bővebben a titkos vezetőválasztásról + +## Jelenlegi helyzet {#current-progress} + +A tervezett fejlesztések között a biztonsági frissítések igen előrehaladott kutatási állapotban vannak, de még egy ideig nem várható a bevezetésük. A következő lépés a nézetegyesítésre (amelyeket még nem valósítottak meg élesben) a specifikáció véglegesítése és a prototípusok létrehozása. diff --git a/public/content/translations/hu/roadmap/single-slot-finality/index.md b/public/content/translations/hu/roadmap/single-slot-finality/index.md new file mode 100644 index 00000000000..21e774a6bac --- /dev/null +++ b/public/content/translations/hu/roadmap/single-slot-finality/index.md @@ -0,0 +1,66 @@ +--- +title: Egy sloton belüli véglegesség +description: Az egy sloton belüli véglegesség magyarázata +lang: hu +--- + +# Egy sloton belüli véglegesség {#single-slot-finality} + +Jelenleg 15 percet vesz igénybe, hogy egy Ethereum blokk véglegesedjen. Ugyanakkor az Ethereum konszenzusmechanizmusa úgy is fejleszthető, hogy a blokk validálása hatékonyabb legyen, és a véglegességhez szükséges idő drasztikusan csökkenjen. Ahelyett, hogy egy blokk javaslásához tizenöt perc kellene, azt ugyanabban a slotban lehessen javasolni és véglegesíteni. Ezt a koncepciót nevezik **egy sloton belüli véglegességnek (SSF)**. + +## Mi az a véglegesség? {#what-is-finality} + +Az Ethereum proof-of-stake alapú konszenzusmechanizmusában a véglegesítés arra utal, hogy a blokkot nem lehet megváltoztatni vagy eltávolítani a blokkláncból anélkül, hogy legalább 33%-nyi résztvevő vállalná az ezzel járó súlyos büntetést, vagyis az ETH elégetését. Ez egy kriptogazdasági biztonság, mert nagyon nagy költséggel járna, ha valaki meg akarná változtatni a lánc sorrendjét vagy tartalmát, így a racionális gazdasági szereplők nem vállalnák. + +## Miért törekszünk gyorsabb véglegesítésre? {#why-aim-for-quicker-finality} + +A véglegessé válás jelenlegi ideje túl hosszúnak bizonyult. A legtöbb felhasználó nem akar 15 percet várni, hogy végleges legyen a tranzakciója. Továbbá az alkalmazások és tőzsdék számára is kellemetlen, amelyek gyors tranzakcióátvitelt szeretnének, és mégis sokáig kell várniuk, hogy állandónak tekinthessék a változást. A blokk előterjesztése és a véglegesítése közötti idő arra is lehetőséget teremt, hogy egy támadó átrendezze a tartalmat, illetve hogy blokkokat cenzúrázzon vagy MEV-et szerezzen. Az a mechanizmus, amely a várakozó blokkok frissítését intézi, elég összetett és számtalanszor volt már javítva, hogy a gyenge biztonsági pontokat lezárják, így ez az Ethereum kódjának ez az a része, ahol kisebb hibák nagy valószínűséggel fordulnak elő. Ezeket a problémákat mind megoldaná, hogy ha egy slotban véglegessé válna a blokk. + +## A decentralizáció/idő/költség átváltása {#the-decentralization-time-overhead-tradeoff} + +A véglegesség garanciája az új blokknál nem azonnal történik meg; idő kell ahhoz, hogy a blokkot véglegesnek tekintsük. Ennek az az oka, hogy a véglegesítéshez a teljes letétbe helyezett ETH 2/3-át képviselő validátoroknak tanúsítaniuk kell az új blokkot. A hálózat minden validáló csomópontjának a többi csomóponttól érkező tanúsításokat kell feldolgoznia, hogy a blokk elérte a 2/3-os határt vagy nem. + +Minél rövidebb idő alatt kell elérni a véglegesedést, annál komolyabb számítási kapacitásra van szükség a csomópontoknál, mert a tanúsítást gyorsan kell elvégezni. Emellett minél több validáló csomópont van a hálózaton, annál több tanúsításra van szükség blokkonként, ami növeli a feldolgozási kapacitási igényt. Ha nagyobb feldolgozási kapacitás szükséges, akkor kevesebb személy vehet részt benne, mert drága hardvert kell ahhoz használni, hogy a validáló csomópont működjön. Ha a blokkok között több idő telik el, akkor kevesebb számítási kapacitás is elég a csomópontokhoz, de a véglegesedés is később történik meg, mert a tanúsításokat lassan dolgozzák fel. + +Így tehát átváltás van jelen a költség (számítási kapacitás), a decentralizáció (a validációban részt vevő csomópontok száma) és a véglegesítés ideje között. Az ideális rendszer a minimális számítási kapacitás, a maximális decentralizáció és a minimális véglegesítési idő között egyensúlyoz. + +Az Ethereum jelenlegi konszenzusmechanizmusa e három paraméter között a következőképpen egyensúlyoz: + +- **A minimális letétbe helyezést 32 ETH-ben állapítja meg**. Ez meghatároz egy felső határt arra, hogy a validátoroknak mennyi tanúsítást kell végezniük, amelyet az egyéni csomópontok hajtanak végre, és ezáltal egy felső határt határoz meg e csomópontok számítási igényeinek is. +- **A véglegesítés idejét kb. 15 percre teszi**. Ez elegendő időt ad az otthoni számítógépen futó validátoroknak is, hogy biztonsággal elvégezzék minden blokk tanúsítását. + +A jelenlegi mechanizmussal a véglegesítés idejét úgy lehet csökkenteni, ha csökkentjük a validátorok számát a hálózaton vagy növeljük a hardverszükségletet minden csomópont esetében. Ugyanakkor fejleszthető a tanúsítások végzése is, amellyel több tanúsítás lehetséges növekvő költség és az egyes csomópontok túlterhelése nélkül. A hatékonyabb végrehajtás lehetővé teszi, hogy a véglegesítés egy sloton belül, ne két korszak alatt történjen meg. + +## Az egy sloton belüli véglegesítéshez (SSF) vezető út {#routes-to-ssf} + + + +A jelenlegi konszenzusmechanizmus összekombinálja a több validátortól, vagyis a bizottságtól származó tanúsítást, hogy csökkentse az üzenetek számát, amelyet minden validátornak fel kell dolgoznia a validálás során. Minden validátornak lehetősége van tanúsítani egy adott korszakban (32 slot), de egy adott slotban csak a validátorok egy csoportja, a bizottság végzi a tanúsítást. Ehhez alhálózatokra osztódnak, amelyekben néhány validátor aggregátorként működik. Ezek az aggregátorok a saját alhálózatukban lévő validátortól látott összes aláírást összevonják egy aggregált aláírásba. Az aggregátor, aki a legtöbb egyéni hozzájárulást tudta összevonni, átadja az aggregált aláírást a blokk javaslattevőjének, aki azt beleteszi a blokkba a többi bizottságtól kapott aggregált aláírással együtt. + +Ez a folyamat elegendő kapacitást ad minden validátornak, hogy szavazzon minden korszakban, mert ez korszakonként 32 slot × 64 bizottság× 256 validátor bizottságonként = 524 288 validátor. A jelen szöveg írásának időpontjában (2023. február) kb. 513 000 aktív validátor van. + +E séma szerint egy teljes korszak kell ahhoz, hogy minden validátor részt vehessen a tanúsításban egy blokkhoz kapcsolódóan. Ugyanakkor lehetséges ezt a mechanizmust úgy is továbbfejleszteni, hogy minden validátor minden slotban végezhessen tanúsítást. + + +Mióta az Ethereum konszenzusmechanizmusát megtervezték, az aláírásaggregálás sémája (BLS) sokkal skálázhatóbbnak bizonyult, mint azt korábban gondolták, és közben a kliensek is fejlődtek az aláírások feldolgozásában és ellenőrzésében. Kiderült, hogy a nagy számú validátor valójában egyetlen slotban is képes végrehajtani a tanúsításokat. Például egymillió validátorral, akik közül mindenki kétszer szavaz egy slotban, a slot ideje pedig 16 másodperc, a csomópontoknak az aláírások ellenőrzését egy minimális másodpercenként 125 000 aggregációs rátán kellene végrehajtaniuk, hogy egymillió tanúsítást végezzenek a slotban. Valójában egy átlagos számítógépnek 500 nanomásodpercig tart egy aláírás ellenőrzése, tehát 125 000 ellenőrzést nagyjából 62,5 ms alatt végezne el – jóval az egy másodperces határ alatt. + +Még hatékonyabb lenne, ha szuperbizottságokat hoznának létre, pl. 125 000 véletlenszerűen kiválasztott validátort slotonként. Csak ezek a validátorok szavaznának egy adott blokkra, ezért a validátoroknak csak ezen alcsoportja döntene a blokk véglegesítéséről. Hogy vajon ez egy jó ötlet vagy sem, az azon múlik, hogy a közösség számára mennyire drága egy sikeres támadás az Ethereum ellen. Mivel ahelyett, hogy a támadó véglegesíteni tudna egy blokkot, ha a teljes letétbe helyett ethernek a 2/3-t kontrollálja, csak a _szuperbizottságban_ kell a 2/3-nyi lekötött etherrel bírnia egy rosszhiszemű blokk véglegesítéséhez. Ez továbbra is egy aktívan kutatott terület, de valószínű, hogy egy igazán nagy méretű validátorkészlet esetén, amelynél már szuperbizottságokat kell bevezetni, ezen csoportok megtámadásának költsége rendkívül magas lenne (pl. a denominált költség ETH-ben `2/3 × 125 000 × 32 = kb. 2,6 millió ETH`). A támadás költsége igazítható azáltal, hogy a validátorkészlet méretét megnövelik (pl. úgy igazítható a validátorszám, hogy a támadás költsége 1, 4, 10 stb. millió ether legyen). [A kezdeti vélemények](https://youtu.be/ojBgyFl6-v4?t=755) a közösség részéről azt sugallják, hogy az 1-2 millió ether egy elfogadható támadási költség, ami szuperbizottságonként ~65 536–97 152 validátort jelentene. + +Ugyanakkor nem az ellenőrzés a valódi szűk keresztmetszet, hanem az aláírások aggregálása a kihívás a validátor-csomópontok számára. Az aláírásaggregáció skálázásához a validátorok számát valószínűleg meg kell növelni minden alhálózatban, növelni kell az alhálózatok számát, vagy az aggregáció új rétegeit kell bevezetni (pl. a bizottságok bizottságát létrehozni). A megoldás része lehet a specializált aggregátorok létrehozása is, hasonlóan ahhoz, ahogy a javaslattevő-építő szétválasztás (PBS) és a Danksharding bevezetésénél a blokk építését és az összevont tranzakcióhoz tartozó elköteleződés létrehozását kiszervezik specializált építőknek. + +## Mi a szerepe az elágazásválasztásnak az SSF-ben? {#role-of-the-fork-choice-rule} + +A jelenlegi konszenzusmechanizmus a véglegesedési mechanizmus és az elágazásválasztás közötti szoros kapcsolaton alapszik, az első az az algoritmus, amely meghatározza, hogy a validátorok 2/3-a tanúsított-e egy adott láncot, a második pedig az az algoritmus, amelyik eldönti, hogy melyik lánc a megfelelő, amikor több opció is létezik. Az elágazásválasztás algoritmusa csak azokat a blokkokat veszi figyelembe, amelyek az utolsó véglegesített blokk _után_keletkeznek. Az SSF bevezetésével nem lesz olyan blokk, ami az elágazásválaszt határkörébe esik, mert a véglegesítés ugyanabban a slotban történik, mint a blokk előterjesztése. Ennélfogva az SSF bevezetésével _sem_ az elágazásválasztás algoritmusa, _sem_ a véglegességi mechanizmus nem lesz aktív. A véglegességi mechanizmus véglegesítené azokat a blokkokat, ahol a validátorok 2/3-a online volt és jóhiszeműen tanúsított. Ha a blokk nem tudná meghaladni a 2/3-os határt, akkor az elágazásválasztási szabály lépne életbe, hogy meghatározza a követendő láncot. Ez arra is lehetőséget ad, hogy az inaktivitás miatti elszivárgás mechanizmusát fenntartsák, amely visszaállítja a láncot, amikor a validátorok több mint 1/3-a offline, jóllehet némileg továbbfejlesztve azt. + +## Fennálló problémák {#outstanding-issues} + +Ha az aggregáció skálázásához az alhálózatokban megnövelnék a validátorok számát, az azzal a problémával járna, hogy a peer-to-peer hálózatra nagyobb teher nehezedne. Az aggregáció új rétegeinek bevezetése elég összetett programozási feladat és késleltetést okoz (mivel hosszabb időbe telik, mire a blokkot ellenőrző minden alhálózati aggregátortól kap valamit). Az sem egyértelmű, hogyan lehetne kezelni azt, hogy több aktív validátor van a hálózaton, mint amit egy slotban fel lehet dolgozni, még akár BLS aláírásaggregációval is. Mivel minden slotban minden validátor tanúsít és nincsenek bizottságok az SSF koncepcióban, egy lehetséges megoldás lehet az is, hogy az effektív egyenleg maximális 32 ETH határát teljesen eltörölnék, így a több validátort működtetők konszolidálhatnák a letétjeiket és kevesebb validátort futtathatnának, ezzel csökkentve az üzenetek számát, amelyet a validátor-csomópontoknak kell feldolgozniuk a teljes validátorkészletet illetően. A nagyletéteseken múlik, hogy konszolidálják a validátoraikat. Az is lehetséges, hogy bármikor felső határt húznak a validátorok számát vagy a letétbe helyezett ETH összegét illetően. Ugyanakkor ehhez szükséges egy olyan mechanizmus, amely eldönti, hogy melyik validátor vehet részt és amelyik nem, ez pedig nem kívánt másodlagos hatásokat okozhat. + +## Jelenlegi helyzet {#current-progress} + +Az SSF még kutatási fázisban van. Nem várható, hogy a következő években bevezetésre kerül, inkább más lényeges fejlesztések után eszközölése várható, mint például a [Verkle-fák](/roadmap/verkle-trees/) és a [Danksharding](/roadmap/danksharding]). + +## További olvasnivaló {#further-reading} + +- [Vitalik az SSF-ről az EDCON rendezvényen (2022)](https://www.youtube.com/watch?v=nPgUKNPWXNI) +- [Vitalik jegyzetei: az egy sloton belüli véglegességhez vezető út](https://notes.ethereum.org/@vbuterin/single_slot_finality) diff --git a/public/content/translations/hu/roadmap/statelessness/index.md b/public/content/translations/hu/roadmap/statelessness/index.md new file mode 100644 index 00000000000..9f5975cc250 --- /dev/null +++ b/public/content/translations/hu/roadmap/statelessness/index.md @@ -0,0 +1,103 @@ +--- +title: Státuszmentesség, a státusz és az előzményadatok lejárata +description: Az előzményadatok lejáratának és a státuszmentes Ethereumnak a magyarázata +lang: hu +--- + +# Státuszmentesség, a státusz és az előzményadatok lejárata {#statelessness} + +A valódi decentralizácóhoz szükség van arra, hogy az Ethereum-csomópontokat egyszerű hardveren lehessen futtatni. A csomópontok futtatása lehetővé teszi a felhasználónak, hogy független kriptográfiai validálással ellenőrizzék az információkat, és ne kelljen megbízniuk egy harmadik félben, hogy az adatokkal lássa el őket. A csomópont futtatásával a felhasználó közvetlenül küldhet tranzakciót az Ethereum peer-to-peer hálózatára, és nem kell megbíznia egy közvetítőben. A decentralizáció nem lehetséges, ha ezek az előnyök csak a drága hardverrel rendelkező felhasználók számára elérhetők. Ehelyett a csomópontokat rendkívül szerény teljesítményű és memóriaigényű készülékeken is lehessen működtetni, mint amilyenek a mobiltelefonok, a mikroszámítógépek vagy az otthoni számítógépek. + +Jelenleg a nagy tárhelyigény jelenti a legnagyobb akadályt ahhoz, hogy a csomópontokat bárki működtethesse globálisan. Ennek az a fő oka, hogy az Ethereum státuszadatainak nagy halmazait kell eltárolni. Ezek a státuszadatok kritikus információkat tartalmaznak az új blokkok és tranzakciók megfelelő lefuttatásához. A jelen cikk írásának időpontjában egy gyors 2 TB SSD szükséges ahhoz, hogy egy teljes Ethereum csomópontot lehessen futtatni. Ez egy olyan csomópont tárhelyigénye, amely nem törli ki a régebbi adatokat és nagyjából heti 14 GB-tal nő. Az archív csomópontok pedig, amelyek a genezis óta az összes adatot tartalmazzák, már 12 TB-t érnek el (ezen leírás időpontjában, 2023. februárjában). + +A régebbi adatokhoz lehet olcsóbb merevlemezeket használni, de ezek túl lassúak ahhoz, hogy a bejövő blokkokkal lépést tartsanak. Az csak egy átmeneti és részleges megoldás, hogy a kliensek jelenlegi tárolási modelljét megtartva olcsóbbá és könnyebbé tegyük az adattárolást, mivel az Ethereum státusznövekedése határtalan, tehát a tárhelyigény csak növekszik, a technológiai fejlesztéseknek pedig folyamatosan lépést kell tartaniuk ezzel. Ehelyett a klienseknek új módszert kell találni a blokkok és tranzakciók ellenőrzésére, amelyhez az adatokat nem szükséges a lokális adatbázisból kikeresni. + +## A csomópontokhoz szükséges tárhely csökkentése {#reducing-storage-for-nodes} + +Számos módon le lehet csökkenteni a csomópontban tárolt adatmennyiséget, ehhez azonban különféle mértékben, de módosítani kell az Ethereum-protokollon: + +- **Az előzményadatok lejárata**: lehetővé teszi, hogy a csomópont törölje azokat a státuszadatokat, amelyek X blokknál régebbiek, de nem változtatja meg a Ethereum-kliens státuszkezelési módját +- **A státusz lejárata**: lehetővé teszi, hogy inaktívvá válhassanak azok a státuszadatok, amelyeket nem használnak rendszeresen. Az inaktív adatokkal nem kell foglalkoznia a kliensnek mindaddig, amíg az újból be nem hívják őket. +- **Gyenge státusztalanság**: csak a blokk-készítőknek van szükségük a teljes státuszadatra, a többi csomópont a lokális státuszadatbázis nélkül is képes ellenőrizni a blokkokat. +- **Erős státusztalanság**: semelyik csomópontnak nincs szüksége az összes státuszadatra. + +## Az adatok lejárata {#data-expiry} + +### Az előzményadatok lejárata {#history-expiry} + +Az előzményadatok lejárata azt jelenti, hogy a kliensek törlik a régebbi adatokat, amelyekre már valószínűleg nem lesz szükség, így csak kevés előzményadatot tárolnak, és az új adatok felülírják a legrégebbieket. A klienseknek két okból van szükségük előzményadatokra: szinkronizáláshoz és adatlekérdezések teljesítéséhez. Eredetileg a klienseknek a genezisblokkból kellett szinkronizálniuk, ellenőrizve, hogy minden egyes soron következő blokk megfelelő-e egészen a lánc elejéig. Jelenleg a kliensek ezt az utat a lánc elejéig a „gyenge szubjektivitású ellenőrzési pontoktól” kiindulva teszik meg. Ezek az ellenőrzési pontok megbízható kiindulási pontok, vagyis olyan, mintha a genezisblokk közelebb lenne a jelenhez, nem az Ethereum kezdetétől nézné. Tehát a kliensek törölhetnek minden olyan információt, amely a legutóbbi gyenge szubjektivitású ellenőrzési pontnál korábbi, így is képesek szinkronizálni a lánc elejével. A kliensek jelenleg úgy szolgáltatnak előzményadatokat (amelyek JSON-RPC-n keresztül érkeznek), hogy azokat a helyi adatbázisukból kérik le. Ez az előzményadatok lejáratával nem lesz lehetséges, mert az adat egy része nem lesz már elérhető. Az előzményadatok biztosítására egy innovatív megoldásra van szükség. + +Az egyik lehetőség az, hogy a kliensek az előzményadatokat a társaiktól kérik le olyan megoldással, mint amilyen a Portal Network. A Portal Network egy fejlesztés alatt álló peer-to-peer hálózat az előzményadatok biztosítására, ahol minden csomópont az Ethereum előzményadatának egy kis részét tárolja, így a teljes adathalmaz a hálózaton elosztva létezik. Ezek megszerzése úgy működik, hogy megkeresik azokat a peereket, akik tárolja az adott adatokat és lekérik tőlük ezeket. Másik megoldás lehet, hogy mivel általában az alkalmazásoknak van szüksége előzményadatokra, ezért az ő felelősségük lenne ezek tárolása. Talán lenne elég önfeláldozó szereplő az Ethereum világában, akik önkéntesen tárolnának előzményarchívumokat. Lehetne egy decentralizált autonóm szervezet (DAO), ami felvállalja az adattárolást, vagy ideális esetben lehetne ezen opciók kombinációja is. Ezek a szolgáltatók számos módon szolgálhatnának adattal, például torrent, FTP, Filecoin vagy IPFS formájában. + +Az előzményadatok lejárata egy kicsit ellentmondásos téma, mert eddig az Ethereum mindig nyilvánosan vállalta bármilyen adat elérhetőségét. Mindig alapból elérhető volt egy teljes szinkronizáció a genezistől kezdve, még akkor is, ha az újraépítéshez a régi adatok pillanatfelvételét kellett használni. Az előzményadatok lejárata ezt a felelősséget az Ethereum-protokollon kívülre helyezi. Ez akár új cenzúrakockázatot is hordozhat magában, ha végül centralizált szerzetek biztosítják az előzményadatokat. + +Az EIP-4444 még nem áll készen, de aktív egyeztetés folyik róla. Érdekes módon, az EIP-4444-gyel kapcsolatos kihívások jellemzően nem technikaiak, hanem inkább a közösségi kezelésből erednek. A közösségnek bele kell egyeznie az új módszerbe, el kell fogadnia, hogy az előzményadatokat megbízható entitások szolgáltassák. + +Ez a fejlesztés nem változtatja meg alapjaiban az Ethereum-csomópontok státuszadat-kezelését, csak azok elérésére lesz hatással. + +### A státusz lejárata {#state-expiry} + +A státusz lejárata azt jelenti, hogy az egyéni csomópontokból eltávolítják a státuszt, ha azt az utóbbi időben nem használták. Ezt többféle módon is meg lehet valósítani, például: + +- **Lejárat a bérleti díj alapján**: kapcsoljunk a számlákhoz „bérleti díjat”, és amikor ez nullázódik, akkor a számla is lejár +- **Lejárat idő alapján**: a számlák inaktíválódnak, ha egy ideig nem végeznek olvasási/írási műveletet rajtuk + +A bérleti díj alapján vett lejárat lehet egy közvetlen díjkérés a számláktól, hogy azok maradjanak aktív állapotban az adatbázisban. Az idő alapján vett lejárat lehet az utolsó interakció óta eltelt idő, illetve az összes számla periodikus lejárata. Lehetnek olyan mechanizmusok is, amelyek ötvözik az idő- és a bérletidíj-alapú modelleket, például az egyéni számlák aktív státuszban maradnak, ha fizetnek egy kis összeget az időalapú lejárat előtt. Ezzel kapcsolatban fontos megérteni, hogy az inaktív állapot nem jelent **törlést**, csak elkülönítve tárolják a kapcsolódó adatokat az aktív státusztól. Az inaktív státuszt vissza lehet állítani élő állapotra. + +Ez úgy valósulhat meg, hogy például egy státuszfa áll rendelkezésekre bizonyos időperiódusokra (talán 1 évre). Amikor az új periódus elkezdődik, egy teljesen új státuszfa jön létre. Csak a jelenlegi státuszfát lehet módosítani, a többi megváltoztathatatlan. Az Ethereum-csomópontoknak csak a jelenlegi és a legutóbbi státuszfát kellene tárolniuk. Ehhez időbélyeget kell tenni a címekre, hogy melyik periódusban léteznek. [Számos módja van annak](https://ethereum-magicians.org/t/types-of-resurrection-metadata-in-state-expiry/6607), hogy ezt bevezessék, de a legjobb megoldáshoz a [címeket meg kell hosszabbítani](https://ethereum-magicians.org/t/increasing-address-size-from-20-to-32-bytes/5485), hogy elférjen az új információ, illetve a hosszabb címek biztonságosabbak is. Az útitervben ezt a fejlesztés a [címhely kiterjesztése](https://ethereum-magicians.org/t/increasing-address-size-from-20-to-32-bytes/5485) címen szerepel. + +Az előzményadatok lejáratához hasonlóan a státuszlejáratnál is az egyéni felhasználók helyett tárolhatják a régi státuszadatokat más entitások, mint központi szolgáltatók, önfeláldozó közösségi tagok vagy olyan jövőbeli, decentralizált megoldások, mint amilyen a Portal Network. + +A státusz lejárata még kutatási fázisban van, a fejlesztés nem áll készen a bevezetésre. A státuszlejárat talán a státuszmentes kliensek és az előzményadatok lejárata után kerül bevezetésre, mert ezek a fejlesztések a legtöbb validátor számára már kezelhetővé teszik a nagy státuszokat. + +## Hontalanság {#statelessness} + +A státusztalanság nem azt jelenti, hogy a státusz megszűnik, hanem megváltozik az Ethereum-csomópontok státuszkezelési módja. A státusztalanság kétféle jelleget ölthet: gyenge és erős státusztalanság. A gyenge státusztalanság a legtöbb csomópont számára megengedi, hogy státusz nélkül állapotban fussanak, mivel csak néhánynak lesz a feladata a tárolás. Az erős státusztalanság megszűnteti azt, hogy bármelyik csomópontnak tárolnia kelljen az összes státuszadatot. Mindkét fajta a következő előnyökkel jár az átlagos validátorok számára: + +- szinte azonnali szinkronizálás +- képesek a blokkokat soron kívül is validálni +- a csomópontokat egyszerű hardverrel is lehet futtatni (pl. telefonnal) +- a csomópontokhoz olcsó merevlemezt is lehet használni, mert nincs szükség írásra/olvasásra +- kompatibilis az Ethereum elkövetkező kriptográfiai fejlesztéseivel + +### Gyenge státusztalanság {#weak-statelessness} + +A gyenge státusztalanság megváltoztatja azt, ahogy az Ethereum-csomópontok ellenőrzik a státuszváltozásokat, de teljesen nem szüntetik meg azt, hogy a hálózaton néhány csomópontnak ne kelljen státuszt tárolni. Ehelyett a státusz tárolásának felelősségét a blokkelőterjesztőknek adja, a hálózat többi csomópontja, amely a blokkokat ellenőrzi, működhet a teljes státuszadat nélkül. + +**Gyenge státusztalanság esetén a blokkelőterjesztőknek szükségük van a teljes státuszadatra, de az ellenőrzőknek nincs** + +Ehhez előbb [Verkle-fákat](/roadmap/verkle-trees/) kell bevezetni az Ethereum-klienseknél. A Verkle-fák adatstruktúrák az Ethereum státuszainak tárolására, amelyek kicsi, fix méretű „tanúkat” készítenek, amelyet meg lehet osztani a társakkal, és a blokkokat ezekhez lehet validálni a lokális adatbázisok helyett. Egy [ javaslattevő-építő szétválasztás (PBS)](/roadmap/pbs/) is szükséges, mert így a blokképítőknek specializált csomópontjaik lehetnek sokkal erőteljesebb hardverrel, és csak nekik kell hozzáférni a teljes státuszadathoz. + + + +A státusztalanság arra épül, hogy a blokképítők tárolják a teljes státuszadatot, így képesek olyan tanúkat készíteni, amit a blokk validálásához használnak. A többi csomópontnak nincs szüksége a státuszadatokra, minden szükséges információ benne van a tanúban. Ez egy olyan helyzet, amelyben a blokképítés drága, viszont a blokkellenőrzés olcsó tevékenység, így kevesebben fognak blokképítő csomópontokat működtetni. Ugyanakkor a blokképítők decentralizációja nem annyira kritikus téma, hogyha a lehető legtöbb résztvevő képes függetlenül részt venni a blokkok ellenőrzésében. + +Tudjon meg többet a témáról Dankrad jegyzeteiből + + +A blokképítők használják a státuszadatot a tanúk létrehozásához – ez egy minimális adathalmaz, mellyel ellenőrizhető a blokkban lévő tranzakciók által okozott státuszváltozás. A többi validátornak nincs szüksége a státuszra, csak a státuszgyökeret (a teljes státusz hashje) tárolják. Megkapják a blokkot és a tanút, és ezeket felhasználva frissítik a saját státuszgyökerüket. Ezáltal a validáló csomópont rendkívül könnyű lesz. + +A gyenge státusztalanság a kutatás előrehaladott állapotában tart, de a bevezetése a javaslattevő-építő szétválasztáson (PBS) és a Verkle-fák bevezetésén múlik, hogy a kis méretű tanúkat el lehessen küldeni a társaknak. Ez alapján a bevezetése talán néhány év múlva történhet meg az Ethereum főhálózatán. + +### Erős státusztalanság {#strong-statelessness} + +Az erős státusztalanság megszűnteti azt, hogy bármelyik csomópontnak tárolnia kelljen a státuszadatot. Ehelyett a tranzakciókat a tanúkkal együtt küldik, amelyet a blokképítők aggregálnak. Így a blokképítők felelősek azért, hogy a szükséges státuszokat tárolják, hogy abból elkészítsék a tanúkat a releváns számlákra. A státuszhoz kapcsolódó felelősség szinte teljesen a felhasználókhoz kerül, mivel tanúkat és hozzáférési listákat küldenek arról, hogy milyen számlákkal és tárhelykulcsokkal kapcsolódnak. Ennek következtében rendkívül könnyű csomópontok működhetnek, viszont az okosszerződésekkel nehezebb lesz az interakciójuk. + +Az erős státusztalanságot vizsgálják a kutatók, de jelenleg nem valószínű, hogy része lesz az Ethereum útitervének – sokkal valószínűbb, hogy a gyenge státusztalanság elegendő az Ethereum skálázási igényekhez. + +## Jelenlegi helyzet {#current-progress} + +A gyenge státusztalanság, az előzményadatok és a státuszadatok lejárata még kutatási fázisban van, és talán évek múlva kerül bevezetésre. Az sem biztos, hogy a javaslatokból mindegyiket be kell vezetni, mert kiderülhet például, hogy a státusz lejárati ideje után már nincs szükség az előzményadat-lejáratot is megvalósítani. Előbb más útitervelemeknek kell megvalósulniuk, mint például a [Verkle-fák](/roadmap/verkle-trees) és a [javaslattevő-építő szétválasztás (PBS)](/roadmap/pbs). + +## További olvasnivaló {#further-reading} + +- [Vitalik a státusztalanságról (AMA)](https://www.reddit.com/r/ethereum/comments/o9s15i/impromptu_technical_ama_on_statelessness_and/) +- [A státuszméret menedzsmentjének elmélete](https://hackmd.io/@vbuterin/state_size_management) +- [Státusz összekapcsolása az élesedés okozta konfliktus minimalizálására](https://ethresear.ch/t/resurrection-conflict-minimized-state-bounding-take-2/8739) +- [A státusztalansághoz és a státuszlejárathoz vezető út](https://hackmd.io/@vbuterin/state_expiry_paths) +- [Az EIP-4444 specifikációi](https://eips.ethereum.org/EIPS/eip-4444) +- [Alex Stokes az EIP-4444 fejlesztéséről](https://youtu.be/SfDC_qUZaos) +- [Miért olyan fontos a státusztalanság](https://dankradfeist.de/ethereum/2021/02/14/why-stateless.html) +- [Ez eredeti státusztalan kliens koncepciójának leírása](https://ethresear.ch/t/the-stateless-client-concept/172) +- [Bővebben a státuszlejáratról](https://hackmd.io/@vbuterin/state_size_management#A-more-moderate-solution-state-expiry) +- [Még több tudnivaló a státuszlejáratról](https://hackmd.io/@vbuterin/state_expiry_paths#Option-2-per-epoch-state-expiry) diff --git a/public/content/translations/hu/roadmap/user-experience/index.md b/public/content/translations/hu/roadmap/user-experience/index.md new file mode 100644 index 00000000000..99f7cbda6f3 --- /dev/null +++ b/public/content/translations/hu/roadmap/user-experience/index.md @@ -0,0 +1,36 @@ +--- +title: A felhasználói élmény javítása +description: A legtöbb ember számára még mindig túl bonyolult az Ethereum használata. A tömeges használathoz az Ethereumnak drasztikusan csökkentenie kell ezt az akadályt – mindenki számára előnyösnek kell lennie a decentralizált, engedélymentes és cenzúrának ellenálló Ethereum-hozzáférésnek, ugyanakkor olyan könnyednek kell lennie, mint a hagyományos web2 alkalmazás használata. +lang: hu +image: /roadmap/roadmap-ux.png +alt: "Ethereum-ütemterv" +template: roadmap +--- + +Az Ethereum használatát egyszerűsíteni kell – a kulcsok és tárcák kezelésével kezdve a tranzakciók elindításáig. A tömeges használathoz az Ethereumnak könnyebbé kell tennie a használatot, hogy a felhasználók megtapasztalhassák az engedélymentes és cenzúrának ellenálló hozzáférést az Ethereumhoz, a web2 alkalmazások könnyű használatához hasonlóan. + +## A kulcsmondatokon túl {#no-more-seed-phrases} + +Az Ethereum-számlákat egy kulcspár védi, amelyek a számla azonosítását (nyilvános kulcs) és az üzenetek aláírását (privát kulcs) szolgálják. A privát kulcs olyan, akár egy mesterjelszó; teljes hozzáférést biztosít az Ethereum-számlához. Ez egy más megközelítés, mint amelyet a legtöbb felhasználó ismer, akik a bankokra és web2-alkalmazásokra bízzák a számlák kezelését. Az Ethereum tömeges használatának eléréséhez egyértelmű és könnyed utat kell mutatni a felhasználóknak, hogyan anélkül felügyelhessék eszközeiket és adataikat, hogy érteniük kellene a nyilvános-privát kulcsok kriptográfiájához és a kulcskezeléshez. + +Erre remek megoldás, hogy okosszerződéses tárcákat használjanak az Ethereummal való interakciókhoz. Az okosszerződéses tárcák képesek megvédeni a számlát, ha a kulcsok elvesznek vagy ellopják azokat, jobban ellenállnak a csalásnak és támadásnak, és új funkciók használatát is lehetővé teszik a tárcákban. Habár okosszerződéses tárcák már most is léteznek, de nagyon nehézkes megépíteni azokat, mert az Ethereum-protokollnak jobban kellene azokat támogatni. Ezt az extra támogatást nevezzük számlaabsztrakciónak. + +Bővebben a számlaabsztrakcióról + +## Csomópont mindenkinek + +A csomópont működtetésével a felhasználónak nem kell harmadik felekre bíznia, hogy adatokkal lássák el, így gyorsan, privát módon és engedély nélkül tud az Ethereum blokklánccal interakcióba lépni. Azonban a csomópont jelenlegi működtetése technikai tudást és jelentős merevlemez-kapacitást igényel, így a legtöbb felhasználónak másokhoz kell fordulnia. + +Számos fejlesztés meg fogja könnyíteni a csomópontok működtetését és csökkenti erőforrásigényüket. Az adatok tárolásához egy sokkal kevesebb tárhelyet igénylő struktúrát fognak használni, amit **Verkle fának** neveznek. Emellett a [státusztalanság](/roadmap/statelessness) és az [adatok lejárata](/roadmap/statelessness/#data-expiry) miatt a csomópontoknak nem kell majd a teljes Ethereum-státuszadatát tárolniuk, jelentősen lecsökkentve a merevlemezigényeket. A [könnyű kliensek](/developers/docs/nodes-and-clients/light-clients/) is rengeteg előnyt nyújtanak a teljes csomópontok üzemeltetéséhez, mivel ezeket mobileszközökről vagy egyszerű böngészőalkalmazásokból is futtatni lehet majd. + +Bővebben a Verkle-fákról + +Ezekkel az fejlesztésekkel gyakorlatilag nullára csökken a csomópontfuttatás akadálya. A felhasználók biztonságos, engedélymentes hozzáférést nyernek az Ethereumhoz, anélkül hogy komoly lemezterületet vagy CPU-t áldoznának erre, és nem kell harmadik félhez fordulniuk adatért vagy a hálózat eléréséhez, amikor alkalmazásokat használnak. + +## Jelenlegi helyzet {#current-progress} + +Az okosszerződéses tárcák már elérhetők, de több fejlesztésre van szükség, hogy még decentralizáltabbak és engedélymentesek legyenek. Az EIP-4337 egy olyan javaslat, ami már nem igényli az Ethereum-protokoll komoly módosítását. A fő okosszerződés, ami a EIP-4337-hez kellett, 2023. márciusában jelent meg. + +A teljes státusztalanság még a kutatás fázisában van és valószínűleg több év kell a bevezetéséhez. Ehhez még számos mérföldkövet el kell érni, ilyen például az adatok lejárata is, amelyek hamarabb bevezetésre kerülhetnek. A többi tervezett fejlesztésnek, mint a [Verkle-fáknak](/roadmap/verkle-trees/) és a [javaslattevő-építő szétválasztásnak](/roadmap/pbs/) előbb meg kell valósulnia. + +A Verkle-fás teszthálózatok már használhatók, a következő lépés a Verkle-fákkal működő kliensek privát és nyilvános teszthálózaton való futtatása. Ön is segíthet a fejlesztés meggyorsításában, ha szerződéseket hoz létre a teszthálózaton és klienseket működtet a teszthez. diff --git a/public/content/translations/hu/roadmap/verkle-trees/index.md b/public/content/translations/hu/roadmap/verkle-trees/index.md new file mode 100644 index 00000000000..cfd1d798ec8 --- /dev/null +++ b/public/content/translations/hu/roadmap/verkle-trees/index.md @@ -0,0 +1,65 @@ +--- +title: Verkle-fák +description: A Verkle-fák részletes bemutatása, illetve annak leírás, hogy miként használják ezeket az Ethereum fejlesztésére +lang: hu +summaryPoints: + - Fedezze fel, hogy mire valók a Verkle-fák + - Tekintse meg, hogy a Verkle-fák hogyan járulnak hozzá az Ethereum fejlődéséhez +--- + +# Verkle-fák {#verkle-trees} + +A Verkle-fák (a vektor elköteleződés és a „Merkel-fák” összevonásából) olyan adatstruktúrát alkotnak, amely az Ethereum-csomópontokat fejleszti, hogy ne kelljen nagy mennyiségű státuszadat tárolniuk, de mégis validálni tudják a blokkokat. + +## Hontalanság {#statelessness} + +A Verkle-fák kritikus lépést jelentenek a státusztalan Ethereum-kliensekhez vezető úton. A státusztalan kliensek úgy tudják validálni a bejövő blokkokat, hogy ahhoz nem kell tárolniuk a teljes státuszadatbázist. Ahelyett, hogy az Ethereum státuszának saját lokális másolatát használnák, a státusztalan kliensek egy „tanút” használnak a státuszadatokhoz, amely a blokkal együtt érkezik. A tanú a státuszadat egyéni darabjainak halmaza, amely ahhoz szükséges, hogy a tranzakciók egy adott kötegét le lehessen futtatni, illetve egy kriptográfiai bizonyíték arra, hogy a tanú valóban a teljes adat része. Ezt a tanút használják a státuszadatbázis _helyett_. Ehhez arra van szükség, hogy a tanúk nagyon kis méretűek legyenek, így biztosan időben el lehet juttatni őket a hálózaton keresztül a validátorokhoz, hogy azt egy 12 másodperces slotban feldolgozzák. A jelenlegi státuszadatstruktúra nem megfelelő, mert a tanúk túl nagy méretűek. A Verkle-fák megoldják ezt a problémát, mert kis méretű tanúkat tudnak készíteni, így a státusztalan kliensek egyik fő akadályát ki tudják küszöbölni. + + + +Az Ethereum-kliensek jelenleg a Patricia Merkle Trie-adatstruktúrát használják a státuszadatok tárolására. Az egyéni számlákra vonatkozó információk a fa és a digitális fa leveleiként tárolódnak, ahol a levélpárokat addig hashelik, amíg már csak egyetlen hash marad. Ezt a végső hasht hívják gyökérnek. A blokkellenőrzéshez az Ethereum-kliensek végrehajtják az összes tranzakciót a blokkban és frissítik a lokális státuszfájukat. A blokkot akkor tekintik érvényesnek, amikor a lokális fa gyökere azonos lesz azzal, amit a blokkelőterjesztő adott, mivel ha bármilyen különbség lenne az előterjesztő és a validáló csomópont számolása között, akkor a gyökérhash teljesen eltérne. Ezzel az a gond, hogy a blokklánc validálásához minden kliensnek tárolnia kell a vezetőblokk és számos előzményblokk teljes státuszfáját (a Geth-ben alapvető, hogy a vezetőblokk utáni 128 blokkra megtartják a státuszadatokat). Ehhez a klienseknek nagy tárhelyre van szükségük, ami megakadályozza, hogy teljes csomópontokat lehessen olcsón és kisebb kapacitású hardverrel üzemeltetni. Ezt úgy lehet megoldani, hogy a státuszfát egy hatékonyabb struktúrára (Verkle-fa) cserélik, ami képes kis méretű tanúkkal összefoglalni az adatokat, amit a teljes státuszadat helyett meg lehet osztani a validátorokkal. A státuszadat átformázása a Verkle-fa struktúrájába egy mérföldkő a státuszmentes kliensek bevezetéséhez. + + + +## Mi az a tanú és miért van rá szükség? {#what-is-a-witness} + +A blokk ellenőrzése azt jelenti, hogy a benne lévő tranzakciókat újra végrehajtják, megváltoztatják az Ethereum státuszfát, és kiszámolják az új gyökérhasht. Az érvényes blokk az lesz, amelynek a kiszámolt státuszgyökér-hashe ugyanazt, mint amit a blokkal együtt adtak (mert ekkor a blokkot javasló valóban végrehajtotta a számításokat úgy, ahogy mondja). A jelenlegi Ethereum-kliensekben a státusz frissítéséhez hozzá kell férni a teljes státuszfához, ami egy nagyméretű adatstruktúra, és lokálisan kell azt tárolni. A tanú a státuszadatnak csak töredékeit tartalmazza, ami a blokkban lévő tranzakciók lefuttatásához szükségesek. A validátornak tehát csak ezeket a töredékeket kell használnia arra, hogy leellenőrizze, a javaslattevő végrehajtotta-e a blokk tranzakcióit és megfelelő módon frissítette-e a státuszt. Ugyanakkor ez azt is jelenti, hogy a tanút az Ethereum hálózatán olyan gyorsan kell eljuttatni a peereknek, hogy azt biztosan megkapja és feldolgozza minden egyes csomópont a 12 másodperces slotban. Ha a tanú túl nagy méretű, akkor néhány csomópont számára sokáig tart a letöltése, így nehéz lépést tartani a lánccal. Ez egy centralizáló erő, mert csak gyors internetkapcsolattal bíró csomópontok vehetnek részt a blokkvalidálásban. A Verkle-fák révén nem kell a státuszt a merevlemezen tárolni; a blokk validálásához _mindent_ maga a blokk tartalmaz. Sajnos a Merkle-fákból előállítható tanúk túl nagy méretűek ahhoz, hogy lehetővé tegyék a státusztalan klienseket. + +## Hogyan állítható elő a Verkle-fákkal kisebb méretű tanúk? {#why-do-verkle-trees-enable-smaller-witnesses} + +A Merkle-fa struktúrája nagy méretű tanúkat ad – ezeket nem lehet biztonsággal szétküldeni a peerek között a 12 másodperces slotban. Ennek az az oka, hogy a tanú egy olyan útvonal, amely összeköti az adatokat (amelyeket a levelek tartalmaznak) a gyökérhash-sel. Az adatok ellenőrzéséhez nem elég az összes köztes hash, ami összeköti a leveleket és a gyökeret, hanem szükség van testvérpontokra is. A bizonyítékban minden csomópontnak van egy testvére, amivel hashelődik, hogy létrehozza a fa következő hashét. Ez rengeteg adat. A Verkle-fák úgy csökkentik a tanú méretét, hogy megrövidítik a falevelek és a gyökér közötti távolságot, és nem kell a testvérpontokat is megadni ahhoz, hogy a gyökér-hash validálható legyen. Még ennél is több hely nyerhető azzal, hogy egy erőteljes polinomiális elköteleződési sémát használnak a hash-stílusú vektorelköteleződés helyett. A polinomiális elköteleződés lehetővé teszi, hogy a tanú adott méretű legyen, függetlenül az általa bizonyított levelek számától. + +A polinomiális elköteleződési séma alapján a tanú kezelhető méretű lesz, és könnyedén átadható a peer-to-peer hálózaton keresztül. Ez alapján a kliensek minimális adatmennyiséggel képesek minden blokkban ellenőrizni a státuszváltozást. + + + +A tanú mérete a benne lévő levelek száma alapján változik. Feltéve, hogy a tanú 1000 levelet fed le, akkor a Merkle-fához tartozó tanú 3,5 MB lenne (egy 7 szintű fa esetében). Ugyanezen adatok esetében a Verkle-fa tanúja (4 szintű fát feltételezve) 150 kB – **ez nagyjából 23-szor kisebb**. A tanú ilyen szintű méretcsökkenése megengedi, hogy a státusztalan kliensek tanúi elfogadhatóan kicsik maradjanak. A polinomiális tanúk 0,128–1 kB méretűek, attól függően, hogy amelyik polinomiális elköteleződést használják. + + + +## Mi a Verkle-fák struktúrája? {#what-is-the-structure-of-a-verkle-tree} + +A Verkle-fák `key, value` (kulcs, érték) párokból állnak, ahol a kulcsok 32 bájtos elemek, amelyek egy 31 bájtos _tőből_ és egy egyetlen bájtos _toldalékból_ tevődnek össze. Ezek a kulcsok _kiterjesztő_ pontokba és _belső_ pontokba rendeződnek. A kiterjesztőpontok egyetlen tövet képviselnek 256 gyermek számára különböző toldalékokkal. A belső pontoknak is 256 gyermekük van, de ezek lehetnek más kiterjesztőpontok is. A Verkle- és a Merkle-fastruktúra közötti fő különbség az, hogy a Verkle-fa sokkal laposabb, kevesebb köztes pont kapcsolja a levelet a gyökérhez, ezért kevesebb adat kell a bizonyíték legyártásához. + +![](./verkle.png) + +[Tudjon meg többet a Verkle-fák struktúrájáról](https://blog.ethereum.org/2021/12/02/verkle-tree-structure) + +## Jelenlegi helyzet {#current-progress} + +A Verkle-fa teszthálózatai már működnek, de jelentős mértékű kliensfrissítésre van még szükség ahhoz, hogy támogatni tudják ezt az adatstruktúrát. Ön is segíthet a fejlesztés meggyorsításában, ha szerződéseket hoz létre a teszthálózaton és klienseket működtet a teszthez. + +[Fedezze fel a Beverly Hills Verkle-teszthálózatot](https://beverlyhills.ethpandaops.io) + +[Tekintse meg, ahogy Guillaume Ballet bemutatja a Condrieu Verkle-teszthálózatot](https://www.youtube.com/watch?v=cPLHFBeC0Vg) (a Condrieu teszthálózat még a proof-of-work mechanizmus szerint működött, és mára már a [Kaustinen teszthálózat](https://kaustinen.ethdevops.io) váltotta fel). + +## További olvasnivaló {#further-reading} + +- [Dankrad Feist magyarázata a Verkle-fákról a PEEPanEIP csatornán](https://www.youtube.com/watch?v=RGJOQHzg3UQ) +- [Guillaume Ballet magyarázata a Verkle-fákról az ETHGlobal rendezvényen](https://www.youtube.com/watch?v=f7bEtX3Z57o) +- [„Hogyan segítenek a Verkle-fák abban, hogy az Ethereum áttekinthető és egyszerű legyen?” – Guillaume Ballet előadása a Devcon 6 rendezvényen](https://www.youtube.com/watch?v=Q7rStTKwuYs) +- [Piper Merriam előadása a státusztalan kliensekről az ETHDenver 2020-as rendezvényén](https://www.youtube.com/watch?v=0yiZJNciIJ4) +- [Dankrad Fiest Verkle-fákról és státuszmentességről szóló podcastje a Zero Knowledge csatornán](https://zeroknowledge.fm/episode-202-stateless-ethereum-verkle-tries-with-dankrad-feist/) +- [Vitalik Buterin magyarázata a Verkle-fákról](https://vitalik.ca/general/2021/06/18/verkle.html) +- [Dankrad Feist magyarázata a Verkle-fákról](https://dankradfeist.de/ethereum/2021/06/18/verkle-trie-for-eth1.html) +- [A Verkle-fák EIP-dokumentációja](https://notes.ethereum.org/@vbuterin/verkle_tree_eip#Illustration) diff --git a/public/content/translations/hu/security/index.md b/public/content/translations/hu/security/index.md index 5369c2ee6d6..7a83e9ac510 100644 --- a/public/content/translations/hu/security/index.md +++ b/public/content/translations/hu/security/index.md @@ -24,7 +24,7 @@ Gyenge jelszó például: AranyosBolyhosCicák! Erős jelszó például: ymv\*azu.EAC8eyp8umf ``` -A másik általános hiba az, amikor a [közösségi médiából visszafejthető]() jelszót találnak ki. Beleértve az édesanyja leánykori nevét, a gyerekek vagy háziállatok neveit, születési időpontokat használva nem lesz a jelszó biztonságos, és lehetőséget ad a támadásra. +A másik általános hiba az, amikor a [közösségi médiából visszafejthető](https://wikipedia.org/wiki/Social_engineering_(security)) jelszót találnak ki. Beleértve az édesanyja leánykori nevét, a gyerekek vagy háziállatok neveit, születési időpontokat használva nem lesz a jelszó biztonságos, és lehetőséget ad a támadásra. #### A jó jelszóhoz: {#good-password-practices} @@ -66,7 +66,7 @@ Különböző egyedi bizonyítékok bemutatásával igazolhatja, hogy Ön valób - Valami, ami Öntől származik (mint egy ujjlenyomat vagy írisz-/arcszkenner) - Valami, ami az Ön birtokában van (biztonsági kulcs vagy azonosítási alkalmazás a telefonján) -A **kéttényezős azonosítás (2FA)** egy plusz _biztonsági tényezőt_ ad az online számlákhoz, így a jelszó (amit Ön tud) önmagában nem elég annak eléréséhez. Általában a második tényező egy véletlenszerű hatjegyű kód, ami egy **időzített egyszeri jelszó (TOTP)**, amit egy azonosítási alkalmazással ér el, mint a Google Authenticator vagy Authy. Ez az a tényező, ami az Ön birtokában van, mert a kódot adó mag az Ön eszközén található. +A **kéttényezős azonosítás (2FA)** egy plusz *biztonsági tényezőt* ad az online számlákhoz, így a jelszó (amit Ön tud) önmagában nem elég annak eléréséhez. Általában a második tényező egy véletlenszerű hatjegyű kód, ami egy **időzített egyszeri jelszó (TOTP)**, amit egy azonosítási alkalmazással ér el, mint a Google Authenticator vagy Authy. Ez az a tényező, ami az Ön birtokában van, mert a kódot adó mag az Ön eszközén található.
@@ -270,15 +270,14 @@ A tokenkiosztási (airdrop) csalások során egy hamis projekt eszközt (NFT, to ### Webbiztonság {#reading-web-security} -- [Ezért ne SMS-t használjon a kéttényezős azonosításhoz](https://www.theverge.com/2017/9/18/16328172/sms-two-factor-authentication-hack-password-bitcoin) – _The Verge_ - [3 millió eszközt érintenek a rosszindulatú Chrome- és Edge-bővítmények](https://arstechnica.com/information-technology/2020/12/up-to-3-million-devices-infected-by-malware-laced-chrome-and-edge-add-ons/) – _Dan Goodin_ -- [Hogyan hozzon létre erős jelszót — amit nem felejt el](https://www.avg.com/en/signal/how-to-create-a-strong-password-that-you-wont-forget) – _AVG_ +- [Hogyan hozzon létre erős jelszót – amit nem felejt el](https://www.avg.com/en/signal/how-to-create-a-strong-password-that-you-wont-forget) – _AVG_ - [Mi az a biztonsági kulcs?](https://help.coinbase.com/en/coinbase/getting-started/verify-my-account/security-keys-faq) – _Coinbase_ ### Kriptobiztonság {#reading-crypto-security} - [Védje magát és a pénzeszközeit](https://support.mycrypto.com/staying-safe/protecting-yourself-and-your-funds) – _MyCrypto_ -- [4 mód, hogy biztonságban maradjon a kripto világában](https://www.coindesk.com/tech/2021/04/20/4-ways-to-stay-safe-in-crypto/) – _CoinDesk_ +- [Biztonsági problémák az általános kriptokommunikációs szoftverben](https://docs.salusec.io/untitled/web3-penetration-test/risks-in-social-media) – _Salus_ - [Biztonsági útmutató kezdőknek és haladóknak](https://medium.com/mycrypto/mycryptos-security-guide-for-dummies-and-smart-people-too-ab178299c82e) – _MyCrypto_ - [Kriptobiztonság: jelszavak és azonosítás](https://www.youtube.com/watch?v=m8jlnZuV1i4) – _Andreas M. Antonopoulos_ diff --git a/public/content/translations/hu/staking/pools/index.md b/public/content/translations/hu/staking/pools/index.md index a0ea48f83a1..a05fd2cd989 100644 --- a/public/content/translations/hu/staking/pools/index.md +++ b/public/content/translations/hu/staking/pools/index.md @@ -26,7 +26,7 @@ A [bevezetés a letétbe helyezésbe](/staking/) során elhangzott előnyök mel - + @@ -53,14 +53,14 @@ Számos olyan opció érhető el, amely biztosan kielégíti minden igényét. A -Olyan szolgáltatást válasszon, amely komolyan veszi a [kliensek diverzitását](/developers/docs/nodes-and-clients/client-diversity/), mert ez egyszerre javítja a hálózat biztonságát, és csökkenti az Ön kockázatát. Azok a szolgáltatók, akik korlátozzák a többségi klienseket használatát, a következő jellemzők alapján szűrhetők ki: sokrétű végrehajtás és sokrétű konszenzus +Olyan szolgáltatást válasszon, amely komolyan veszi a [kliensek diverzitását](/developers/docs/nodes-and-clients/client-diversity/), mert ez egyszerre javítja a hálózat biztonságát, és csökkenti az Ön kockázatát. Azok a szolgáltatók, akik korlátozzák a többségi klienseket használatát, a következő jellemzők alapján szűrhetők ki: végrehajtási kliens sokrétűsége és konszenzusos kliens sokrétűgése Hiányolja valamelyik letétbe helyezési eszközt? Ha a [terméklistázó szabályzat](/contributing/adding-staking-products/) alapján úgy véli, hogy egy adott eszköz illeszkedne ide, akkor jelezze felénk. ## Gyakran ismételt kérdések {#faq} -A letétbe helyezők ERC-20 letéti tokeneket kapnak, melyek a letétbe adott ETH-t képviselik, megnövelve azt a jutalmakkal. A különféle alapok a letéti jutalmakat különböző módon adják át a felhasználóknak, a folyamat lényege ugyanakkor közös. +A letétbe helyezők ERC-20 letéti tokeneket kapnak, és ezeket a letétbe adott ETH-t képviselik, megnövelve azt a jutalmakkal. A különféle alapok a letéti jutalmakat különböző módon adják át a felhasználóknak, a folyamat lényege ugyanakkor közös. @@ -81,5 +81,6 @@ Néhány letéti alap sokkal decentralizáltabb, amikor az általuk használt cs ## További olvasnivaló {#further-reading} +- [Ethereum letétbe helyezési jegyzék](https://www.staking.directory/) – _Eridian és Spacesider_ - [Letétbe helyezés a Rocket Poollal – Áttekintés](https://docs.rocketpool.net/guides/staking/overview.html) – _RocketPool docs_ - [Letétbe helyezés az Ethereumon a Lidoval](https://help.lido.fi/en/collections/2947324-staking-ethereum-with-lido) - _Lido help docs_ diff --git a/public/content/translations/hu/staking/saas/index.md b/public/content/translations/hu/staking/saas/index.md index af91ba33e30..efefc45174d 100644 --- a/public/content/translations/hu/staking/saas/index.md +++ b/public/content/translations/hu/staking/saas/index.md @@ -47,7 +47,7 @@ Néhány elérhető SaaS-szolgáltatót soroltunk fel alább. A fenti jellemzők -Olyan szolgáltatót válasszon, aki támogatja a [kisebbségi klienseket](/developers/docs/nodes-and-clients/client-diversity/), mert ez egyszerre javítja a hálózat biztonságát, és csökkenti az Ön kockázatát. Azok a szolgáltatók, akik korlátozzák a többségi klienseket használatát, a következő jellemzők alapján szűrhetők ki: sokrétű végrehajtás és sokrétű konszenzus +Olyan szolgáltatót válasszon, aki támogatja a [kisebbségi klienseket](/developers/docs/nodes-and-clients/client-diversity/), mert ez egyszerre javítja a hálózat biztonságát, és csökkenti az Ön kockázatát. Azok a szolgáltatók, akik korlátozzák a többségi klienseket használatát, a következő jellemzők alapján szűrhetők ki: végrehajtási kliens sokrétűsége és konszenzusos kliens sokrétűgése ### Kulcsgenerátorok @@ -91,4 +91,5 @@ Kérdezze meg az SaaS-szolgáltatóját a lehetséges garanciákról vagy biztos ## További olvasnivaló {#further-reading} +- [Ethereum letétbe helyezési jegyzék](https://www.staking.directory/) – _Eridian és Spacesider_ - [A letétbe helyezési szolgáltatások értékelése](https://www.attestant.io/posts/evaluating-staking-services/) – _Jim McDonald 2020._ diff --git a/public/content/translations/hu/staking/solo/index.md b/public/content/translations/hu/staking/solo/index.md index c49d6817600..d099ad0e6b6 100644 --- a/public/content/translations/hu/staking/solo/index.md +++ b/public/content/translations/hu/staking/solo/index.md @@ -109,7 +109,7 @@ Számos olyan opció érhető el, amely biztosan kielégíti minden igényét. A -Olyan szolgáltatót válasszon, aki komolyan veszi a [kliensek diverzitását](/developers/docs/nodes-and-clients/client-diversity/), mert ez egyszerre javítja a hálózat biztonságát, és csökkenti az Ön kockázatát. Azok az eszközök, melyek a kisebbségi kliens beállítást támogatják, a többklienses jellemzővel vannak jelölve +Olyan szolgáltatót válasszon, aki komolyan veszi a [kliensek diverzitását](/developers/docs/nodes-and-clients/client-diversity/), mert ez egyszerre javítja a hálózat biztonságát, és csökkenti az Ön kockázatát. Azok az eszközök, amelyek a kisebbségi kliens beállítást támogatják, a többklienses jellemzővel vannak jelölve ### Kulcsgenerátorok @@ -195,6 +195,7 @@ A teljes egyenleg visszavonásához végig kell menni a validátorkiléptetési ## További olvasnivaló {#further-reading} +- [Ethereum letétbe helyezési jegyzék](https://www.staking.directory/) – _Eridian és Spacesider_ - [Az Ethereum-kliens diverzitásának problémája](https://hackernoon.com/ethereums-client-diversity-problem) – _@emmanuelawosika 2022._ - [A kliensdiverzitás támogatása](https://www.attestant.io/posts/helping-client-diversity/) – _Jim McDonald 2022._ - [Kliensdiverzitás az Ethereum konszenzus rétegén](https://mirror.xyz/jmcook.eth/S7ONEka_0RgtKTZ3-dakPmAHQNPvuj15nh0YGKPFriA) – _jmcook.eth 2022._ diff --git a/public/content/translations/hu/staking/withdrawals/index.md b/public/content/translations/hu/staking/withdrawals/index.md index 83daa5ed893..53c9d69501f 100644 --- a/public/content/translations/hu/staking/withdrawals/index.md +++ b/public/content/translations/hu/staking/withdrawals/index.md @@ -114,12 +114,12 @@ Ezt a kalkulációt kiterjesztve megbecsülhetjük, hogy egy adott számú vissz | Visszavonások száma | Időszükséglet | -| :-----------------: | :-----------: | -| 400 000 | 3,5 nap | -| 500 000 | 4,3 nap | -| 600 000 | 5,2 nap | -| 700 000 | 6,1 nap | -| 800 000 | 7,0 nap | +| :-------------------: | :--------------: | +| 400 000 | 3,5 nap | +| 500 000 | 4,3 nap | +| 600 000 | 5,2 nap | +| 700 000 | 6,1 nap | +| 800 000 | 7,0 nap | @@ -194,7 +194,7 @@ eventCategory="FAQ" eventAction="I operate a validator. Where can I find more information on enabling withdrawals?" eventName="read more"> -A validátor működtetők látogassanak el a Staking Launchpad Withdrawals oldalra, ahol a validátorok készítéséről további információkat találhatnak. Továbbá hogyan készüljenek fel, mi az események időzítése, pontosan hogyan működik a visszavonási funkció. +Javasoljuk, hogy a validátorműködtetők látogassanak el a Staking Launchpad Withdrawals oldalra, ahol további információkat találhatnak a letét kivonásához kapcsolódó felkészülésről, az események időzítéséről és arról, hogyan működik ez a kivonási funkció. Próbálja ki először a beállításait egy teszthálózaton, látogasson el a Goerli-teszthálózat Staking Launchpad oldalára. @@ -214,5 +214,5 @@ Nem. Miután egy validátor kilépett, és a teljes egyenlegét kivette, az adot - [EIP-4895: Beacon-lánc operációs műveletként intézi a visszavonásokat](https://eips.ethereum.org/EIPS/eip-4895) - [Ethereum Cat Herders – Shanghai](https://www.ethereumcatherders.com/shanghai_upgrade/index.html) - [PEEPanEIP #94: A letétbe helyezett ETH visszavonása (tesztelés) – Potuz & Hsiao-Wei Wang](https://www.youtube.com/watch?v=G8UstwmGtyE) -- [PEEPanEIP#68: EIP-4895: Beacon-lánc operációs műveletként intézi a visszavonásokat – Alex Stokes](https://www.youtube.com/watch?v=CcL9RJBljUs) +- [PEEPanEIP#68: EIP-4895: Beacon lánc operációs műveletként intézi a visszavonásokat – Alex Stokes](https://www.youtube.com/watch?v=CcL9RJBljUs) - [A validátor valós egyenlegének megértése](https://www.attestant.io/posts/understanding-validator-effective-balance/) diff --git a/public/content/translations/hu/zero-knowledge-proofs/index.md b/public/content/translations/hu/zero-knowledge-proofs/index.md index 39379117775..dcf596021ff 100644 --- a/public/content/translations/hu/zero-knowledge-proofs/index.md +++ b/public/content/translations/hu/zero-knowledge-proofs/index.md @@ -176,7 +176,7 @@ A MACI használatához ugyanakkor _muszáj_ megbízni a koordinátorban, hogy ne Ha a koordinátor jóhiszeműen jár el, akkor a MACI egy kiváló eszköz arra, hogy garantálja a láncon belüli szavazás szentesítését. Ez megmagyarázza a népszerűségét a kvadratikus finanszírozási alkalmazásokban (mint amilyen a [clr.fund](https://clr.fund/#/about/maci)), ami nagy mértékben függ az egyének szavazásának integritásától. -[Bővebben a MACI-ról](https://github.com/privacy-scaling-explorations/maci/blob/master/specs/01_introduction.md). +[Bővebben a MACI-ról](https://privacy-scaling-explorations.github.io/maci/). ## A zero-knowledge bizonyítékok hátulütői {#drawbacks-of-using-zero-knowledge-proofs} diff --git a/src/intl/hu/common.json b/src/intl/hu/common.json index 4cc88760025..c7470004b58 100644 --- a/src/intl/hu/common.json +++ b/src/intl/hu/common.json @@ -1,7 +1,16 @@ { - "account-abstraction": "Számlaabsztrakció", "about-ethereum-org": "Az ethereum.org-ról", "about-us": "Rólunk", + "adding-desci-projects": "Desci projektek hozzáadása", + "adding-developer-tools": "Fejlesztői eszközök hozzáadása", + "adding-exchanges": "Tőzsdék hozzáadása", + "adding-glossary-terms": "Új fogalmak hozzáadása", + "adding-layer-2s": "Adding Layer 2s", + "adding-products": "Adding Products", + "adding-staking-products": "Letétbe helyezési lehetőségek hozzáadása", + "adding-wallets": "Tárcák hozzáadása", + "account-abstraction": "Számlaabsztrakció", + "acknowledgements": "Köszönetnyilvánítások", "aria-toggle-search-button": "Keresés bekapcsolása gomb", "aria-toggle-menu-button": "Menü bekapcsolása gomb", "beacon-chain": "Beacon Chain", @@ -12,6 +21,8 @@ "community-hub": "Közösségi központ", "community-menu": "Közösségi menü", "contact": "Kapcsolat", + "content-buckets": "Tartalomgyűjtők", + "content-resources": "Tartalomforrások", "content-standardization": "Tartalomegységesítés", "contributing": "Közreműködők", "contributors": "Hozzájárulók", @@ -28,6 +39,8 @@ "decentralized-social-networks": "Decentralizált közösségi hálózatok", "decentralized-science": "Nem központosított kutatás (DeSci)", "defi-page": "Decentralizált pénzügy (DeFi)", + "design": "Dizájn", + "design-principles": "Dizájnelvek", "devcon": "Devcon", "developers": "Fejlesztők", "developers-home": "Fejlesztői kezdőlap", @@ -59,7 +72,7 @@ "enterprise-menu": "Vállalati menü", "esp": "Ecosystem Támogatási Program", "eth-current-price": "Jelenlegi ETH árfolyam (USD)", - "ethereum-basics": "Ethereum alapok", + "ethereum-basics": "Az Ethereum alapjai", "ethereum-bug-bounty": "Ethereum bugvadász program", "consensus-when-shipping": "Mikor lesz kész?", "ethereum-upgrades": "Az Ethereum fejlesztései", @@ -83,7 +96,7 @@ "feedback-card-prompt-tutorial": "Hasznosnak találta az útmutatót?", "feedback-widget-thank-you-title": "Köszönjük a visszajelzést!", "feedback-widget-thank-you-subtitle": "Tedd jobbá ezt az oldalt egy pár kérdés megválaszolásával.", - "feedback-widget-thank-you-subtitle-ext": "Ha segítségre van szüksége, akkor a Discordunkon veheti fel a kapcsolatot közösségünkkel.", + "feedback-widget-thank-you-subtitle-ext": "Ha segítségre van szüksége, akkor a Discordunkon veheti fel a kapcsolatot közösségünkkel.", "feedback-widget-thank-you-timing": "2–3 perc", "feedback-widget-thank-you-cta": "Rövid kérdőív megnyitása", "find-wallet": "Tárca keresése", @@ -94,11 +107,11 @@ "grants": "Támogatások", "grant-programs": "Ökoszisztéma-támogatási program", "guides": "Útmutatók", - "guides-hub": "Útmutatóközpont", + "guides-hub": "Útmutatók", "history-of-ethereum": "Az Ethereum története", "home": "Kezdőlap", "how-ethereum-works": "Hogy működik az Ethereum", - "how-to-register-an-ethereum-account": "Hogyan lehet létrehozni Ethereum-számlát", + "how-to-create-an-ethereum-account": "Hogyan lehet Ethereum számlát „létrehozni”", "how-to-revoke-token-access": "Hogyan vonható vissza, hogy az okosszerződés hozzáférjen a kriptoeszközeihez", "how-to-swap-tokens": "Hogyan lehet átváltani a tokeneket", "how-to-use-a-bridge": "Hogyan lehet áthelyezni a tokeneket a második blokkláncrétegbe (L2)", @@ -121,13 +134,14 @@ "learn-more": "Bővebben", "less": "Kevesebb", "light-mode": "Világos", - "listing-policy-disclaimer": "Az oldalon szereplő egyik termék sincs hivatalosan jóváhagyva, csak információs célokat szolgálnak. Ha szeretnél egy terméket hozzáadni, vagy visszajelzést küldeni az irányelvről, akkor nyiss egy GitHub ticketet.", + "listing-policy-disclaimer": "Az oldalon szereplő egyik termék sincs hivatalosan jóváhagyva, csak információs célokat szolgálnak. Ha szeretnél egy terméket hozzáadni, vagy visszajelzést küldeni az irányelvről, akkor nyiss egy Github ticketet.", "loading": "Betöltés...", "loading-error": "Betöltési hiba.", "loading-error-refresh": "Hiba, kérjük frissítsen.", "loading-error-try-again-later": "Nem sikerült az adatok betöltése. Kérjük, próbálja meg később.", "logo": "logo", "mainnet-ethereum": "Mainnet Ethereum", + "merge": "Egyesítés", "more": "Több", "nav-developers": "Fejlesztők", "nav-developers-docs": "Fejlesztői dokumentumok", @@ -164,6 +178,7 @@ "search-box-blank-state-text": "Keresés indítása!", "search-eth-address": "Ez úgy néz ki, mint egy Ethereum cím. Mi nem szolgáltatunk címspecifikus adatot. Próbálj meg rákeresni egy blokkfelfedezőn, mint például", "search-no-results": "Nincs találat a keresésre", + "security": "Biztonság", "single-slot-finality": "Egyhelyes véglegesség", "statelessness": "Hontalanság", "see-contributors": "Hozzájárulók megtekintése", @@ -179,8 +194,9 @@ "stake-eth": "ETH letétbe helyezése", "staking": "Letétbe helyezés", "start-here": "Kezdje itt", - "style-guide": "Style guide", + "style-guide": "Stílusútmutató", "solo": "Egyéni letétbe helyezés", + "support": "Támogatás", "terms-of-use": "Felhasználási feltételek", "translation-banner-body-new": "Ezt az oldalt angol nyelven látja, mert még nem fordítottuk le. Segítsen lefordítani ezt a tartalmat.", "translation-banner-body-update": "Az oldal új verziója jelenleg csak angolul érhető el. Segítsen nekünk a fordításban.", @@ -191,6 +207,7 @@ "translation-banner-no-bugs-title": "Itt nincsenek bugok!", "translation-banner-no-bugs-content": "Ez az oldal nincs lefordítva. Egyelőre szándékosan hagytuk meg angol nyelven ezt az oldalt.", "translation-banner-no-bugs-dont-show-again": "Ne jelenjen meg többször", + "translation-program": "Fordítási Program", "try-using-search": "Használja a keresőt, hogy megtalálja, amit keres vagy", "tutorials": "Oktatóanyagok", "up": "Fel", diff --git a/src/intl/hu/learn-quizzes.json b/src/intl/hu/learn-quizzes.json index 49589736cd4..179dda701b6 100644 --- a/src/intl/hu/learn-quizzes.json +++ b/src/intl/hu/learn-quizzes.json @@ -242,7 +242,7 @@ "f004-c-label": "alkotói gazdaság", "f004-c-explanation": "Az NFT-k révén jöhetett létre az alkotói gazdaság.", "f004-d-label": "„doge” gazdaság", - "f004-d-explanation": "Az NFT-k révén létrejöhetett egy új gazdaság az alkotók, nem a „doge” 🐶 számára.", + "f004-d-explanation": "Az NFT-k révén létrejöhetett egy új gazdaság az alkotók, nem a „doge” számára.", "f005-prompt": "Az Ethereumon lévő NFT káros a környezetre", "f005-a-label": "Igaz", "f005-a-explanation": "Az egyesítés (The Merge) óta (áttérés a proof-of-stake-re), a tranzakcióknak jelentéktelen hatása van a környezetre.", diff --git a/src/intl/hu/page-dapps.json b/src/intl/hu/page-dapps.json index 6bd01235a54..cd08bb7311c 100644 --- a/src/intl/hu/page-dapps.json +++ b/src/intl/hu/page-dapps.json @@ -1,32 +1,48 @@ { "page-dapps-1inch-logo-alt": "1inch logó", - "page-dapps-dexguru-logo-alt": "DexGuru-logó", "page-dapps-aave-logo-alt": "Aave logó", "page-dapps-add-button": "Dapp ajánlása", "page-dapps-add-title": "Dapp hozzáadása", + "page-dapps-ankr-logo-alt": "Ankr logó", + "page-dapps-api3-logo-alt": "API3 logó", + "page-dapps-arweave-logo-alt": "ARweave logó", "page-dapps-audius-logo-alt": "Audius logó", "page-dapps-augur-logo-alt": "Augur logó", "page-dapps-axie-infinity-logo-alt": "Axie Infinity logó", "page-dapps-balancer-logo-alt": "Balancer logó", "page-dapps-brave-logo-alt": "Brave logó", + "page-dapps-beginner-friendly-description": "Néhány dapp kezdő felhasználóknak. Fedezzen fel még több dappot alább.", + "page-dapps-beginner-friendly-header": "Kezdő felhasználóknak", "page-dapps-category-arts": "Művészet és divat", "page-dapps-category-browsers": "Böngészők", + "page-dapps-category-code-marketplaces": "Programkódpiactér", "page-dapps-category-collectibles": "Digitális gyűjthető tárgyak", - "page-dapps-category-competitive": "Verseny", + "page-dapps-category-competitive": "Web3 játékok", "page-dapps-category-computing": "Fejlesztői eszközök", - "page-dapps-category-dex": "Tokenváltások", - "page-dapps-category-investments": "Befektetések", + "page-dapps-category-dex": "Tőzsdék", + "page-dapps-category-investments": "Befektetési alapok", "page-dapps-category-lending": "Hitelezés és kölcsönzés", "page-dapps-category-lottery": "Közösségi finanszírozás", "page-dapps-category-marketplaces": "Piacterek", "page-dapps-category-music": "Zene", "page-dapps-category-payments": "Fizetések", "page-dapps-category-insurance": "Biztosítás", - "page-dapps-category-portfolios": "Portfóliók", - "page-dapps-category-trading": "Kereskedelem és hírpiacok", + "page-dapps-category-portfolios": "Portfólió-menedzsment", + "page-dapps-category-trading": "Fogadói piacok", "page-dapps-category-utilities": "Eszközök", "page-dapps-category-worlds": "Virtuális világok", + "page-dapps-category-demand-aggregator": "Keresletaggregátorok", + "page-dapps-category-derivatives": "Derivatívák", + "page-dapps-category-liquid-staking": "Likvid letétbe helyezés", + "page-dapps-category-bridges": "Bridges", + "page-dapps-category-experiences": "Közös élmények", + "page-dapps-category-guilds": "Hozamvadászok", + "page-dapps-category-avatar": "Avatárok", "page-dapps-choose-category": "Válassz kategóriát", + "page-dapps-category-social": "Közösségi média", + "page-dapps-category-content": "Tartalom", + "page-dapps-category-messaging": "Üzenetküldés", + "page-dapps-category-identity": "Identitás", "page-dapps-collectibles-benefits-1-description": "Amikor egy műalkotást Ethereumon tokenizálnak, akkor a tulajdonjogról bárki megbizonyosodhat. Vissza lehet követni a műalkotás életútját a keletkezéstől a jelenlegi tulajdonosig. Ez megakadályozza a hamisítást.", "page-dapps-collectibles-benefits-1-title": "A tulajdonjog bizonyítható", "page-dapps-collectibles-benefits-2-description": "A művészek szemszögéből sokkal igazságosabb fizetni a zene streamelésért vagy műtárgyakért. Az Ethereumnál kevésbé van szükség harmadik félre. És ha szükséges is harmadik felet bevonni, a költségeik nem olyan magasak, mivel a platformoknak nem kell a hálózati infrastruktúráért fizetni.", @@ -41,10 +57,15 @@ "page-dapps-collectibles-description": "Ezek olyan alkalmazások, amelyek a digitális tulajdonjogra fókuszálnak úgy, hogy az alkotók számára kereseti potenciált biztosítanak és új lehetőségeket teremtenek, hogy befektethessen a kedvenc alkotóiba és a munkájukba.", "page-dapps-collectibles-title": "Decentralizált műalkotások és gyűjthető tárgyak", "page-dapps-compound-logo-alt": "Compound logo", + "page-dapps-convex-logo-alt": "Convex-logó", "page-dapps-cryptopunks-logo-alt": "CryptoPunks logo", "page-dapps-cryptovoxels-logo-alt": "Cryptovoxels logo", + "page-dapps-cyberconnect-logo-alt": "CyberConnect logó", "page-dapps-dapp-description-1inch": "Segít elkerülni a magas árcsúszásokat a legjobb árak összehasonlításával.", "page-dapps-dapp-description-aave": "Adja kölcsönbe tokeneit, keressen kamatot és vegye ki, amikor csak szeretné.", + "page-dapps-dapp-description-ankr": "Különféle web3-as infrastruktúra-összeállítások programépítéshez, pénzkereséshez, játékhoz és más használatra – minden a blokkláncon belül.", + "page-dapps-dapp-description-api3": "Ár referenciaadatok első kézből, amelyek által a dappok 10 (a jövőben még több) hálózaton valós időben tudnak kapcsolódni az eszközök áradataihoz, beleértve a kriptó és forex árakat is.", + "page-dapps-dapp-description-arweave": "Adattárolás folyamatosan, fenntartható módon egy előre kifizetett díj ellenében.", "page-dapps-dapp-description-async-art": "Alkosson, gyűjtsön és kereskedjen #ProgramozhatoMutaggyal –a digitális festmények „Rétegekre” bonthatók, amelyeket a teljes kép befolyásolására használhat. Minden Master és Layer egy-egy ERC721 token.", "page-dapps-dapp-description-audius": "Decentralizált streaming platform. Hallgatások = pénz az alkotóknak, nem a kiadóknak.", "page-dapps-dapp-description-augur": "Fogadjon sporteseményekre, gazdasági vagy más eseményekre.", @@ -53,24 +74,34 @@ "page-dapps-dapp-description-brave": "Keress tokeneket böngészéskor és támogasd kedvenc alkotóidat.", "page-dapps-dapp-description-cent": "Egy közösségi hálózat, ahol pénzt kereshet NFT-k készítésével.", "page-dapps-dapp-description-compound": "Adja kölcsönbe tokeneit, keressen kamatot, és vegye ki, amikor csak szeretné.", + "page-dapps-dapp-description-convex": "A Convex lehetővé teszi, hogy a Curve-nek likviditást biztosító egyének kereskedelmi díjakat kapjanak, valamint boosted CRV-t kapjanak anélkül, hogy a saját CRV-jük zárolásra kerülne.", "page-dapps-dapp-description-cryptopunks": "Vásároljon, licitáljon vagy adjon el punkokat – az egyik legelső gyűjthető tokent az Ethereumon.", "page-dapps-dapp-description-cryptovoxels": "Hozzon létre galériákat, építsen üzleteket vagy vásároljon földet az Ethereum virtuális világban.", + "page-dapps-dapp-description-cyberconnect": "Decentralizált közösségigráf-protokoll, amelynek révén a dappok képesek a hálózati hatásokat felhasználni és személyre szabott közösségi tapasztalatot adni", "page-dapps-dapp-description-dark-forest": "Hódítson meg bolygókat egy végtelen, algoritmikusan létrehozott, kriptográfiailag meghatározott univerzumban.", "page-dapps-dapp-description-decentraland": "Gyűjtsön és kereskedjen virtuális földdel egy virtuális világban, amit felfedezhet.", "page-dapps-dapp-description-ens": "Felhasználóbarát nevek Ethereum-címekhez vagy decentralizált oldalakhoz.", "page-dapps-dapp-description-foundation": "Fektessen be egyedi kiadású műalkotásokba, és kereskedjen velük más vevőkkel.", "page-dapps-dapp-description-gitcoin": "Szerezzen kriptót nyílt forráskódú szoftverfejlesztéssel.", "page-dapps-dapp-description-gitcoin-grants": "Közösségi finanszírozás Ethereum közösségi projekteknek felerősített hozzájárulásokkal", + "page-dapps-dapp-description-gm": "Egyetlen platform csevegésre, fórumok működtetésére és véleménynyilvánításra, amely megosztja a keletkező jövedelmet a tartalom készítőivel", "page-dapps-dapp-description-gods-unchained": "Stratégiai kártyajáték. Szerezzen kártyákat játék közben, amiket a való életben el is adhat.", "page-dapps-dapp-description-golem": "Szerezzen hozzáférést megosztott számítási kapacitáshoz, vagy adja bérbe a saját erőforrásait.", + "page-dapps-dapp-description-graph": "Egy indexáló protokoll, mellyel lekérdezhetők olyan hálózatok, mint az Ethereum és az IPFS.", + "page-dapps-dapp-description-ipfs": "Egy közvetítőmentes (peer-to-peer) hipermédia-protokoll az emberiség tudásának megőrzésére és fejlesztésére azáltal, hogy a hálózatot fejleszthetővé, rugalmassá és nyitottabbá teszi.", "page-dapps-dapp-description-radicle": "Biztonságos peer-to-peer kódkollaboráció közvetítők nélkül.", + "page-dapps-dapp-description-kyberswap": "Átváltás és jövedelemszerzés a legjobb árakon.", + "page-dapps-dapp-description-lido": "Digitális eszközök egyszerűsített és biztonságos letétbe helyezése.", "page-dapps-dapp-description-loopring": "Peer-to-peer kereskedelmi platform a sebességre kihegyezve.", "page-dapps-dapp-description-marble-cards": "Alkosson egyedi digitális kártyákat, melyek URL-eken alapulnak.", "page-dapps-dapp-description-matcha": "Több különböző tőzsde között megtalálja Önnek a legjobb árakat.", + "page-dapps-dapp-description-mirror": "Web3-ra épített platform web3-tartalmakért – a Mirror robosztus publikációs platformja kiterjeszti az írások online publikálásának határait", + "page-dapps-dapp-description-multichain": "A legjobb router a web3 számára. Egy olyan infrastruktúra, amelyet a korlátlan láncok közötti interakciókra fejlesztettek.", "page-dapps-dapp-description-nifty-gateway": "Vásároljon alkotásokat a láncon top művészektől, sportolóktól, márkáktól vagy alkotóktól.", "page-dapps-dapp-description-oasis": "Kereskedjen, vegyen fel kölcsönt vagy tegyen félre Daival, egy Ethereum stabil érmével.", "page-dapps-dapp-description-opensea": "Vásárolonj, adja tovább, fedezzen fel és kereskedjen limitált kiadású javakkal.", "page-dapps-dapp-description-opera": "Küldjön kriptót a böngészőjéből kereskedőknek, más felhasználóknak vagy alkalmazásoknak.", + "page-dapps-dapp-description-osuvox": "3D avatárok, amelyek a blokkláncon élnek", "page-dapps-dapp-description-poap": "Gyűjtsön NFT-ket, amelyek bizonyítják, hogy különböző virtuális vagy személyes eseményeken vett részt. Használja őket sorsolásokon való részvételhez, szavazáshoz, együttműködéshez vagy egyszerűen csak dicsekedéshez.", "page-dapps-dapp-description-polymarket": "Fogadonj kimenetelekre. Kereskedjen a hírpiacokon.", "page-dapps-dapp-description-pooltogether": "A szerencsejáték, amin nem veszíthet. Nyeremények minden héten.", @@ -82,13 +113,19 @@ "page-dapps-dapp-description-rotki": "Nyílt forráskódú portfóliókövető, elemző, számviteli és adóbevallási eszköz, amely tiszteletben tartja a magánszférát.", "page-dapps-dapp-description-krystal": "Egyetlen platform az összes kedvenc DeFi-szolgáltatás eléréséhez.", "page-dapps-dapp-description-rarible": "Készítsen, adjon el és vásároljon tokenizált gyűjthető tárgyakat.", + "page-dapps-dapp-description-rubic": "Láncok közötti technológiai aggregátor a felhasználók és a dappok számára.", "page-dapps-dapp-description-sablier": "Streameljen pénzt valós időben.", + "page-dapps-dapp-description-skiff": "Teljeskörűen titkosított levelezés, naptár, dokumentumok és fájlok, amelyek által szabadon kommunikálhat.", + "page-dapps-dapp-description-spatial": "Hozza létre saját avatárját és 3D világait", + "page-dapps-dapp-description-spruce": "Nyílt forráskódú megoldás, mellyel a személyazonosság és az adatok a felhasználónál maradnak, mivel egyedül hozzá tartoznak.", + "page-dapps-dapp-description-status": "Lehetővé teszi az információk szabad áramlását, biztosítja a bizalmas és biztonságos beszélgetéseket, és elősegíti az egyének szuverenitását.", "page-dapps-dapp-description-superrare": "Vásároljon digitális műtárgyakat közvetlenül a művészektől vagy másodlagos piacokról.", + "page-dapps-dapp-description-synthetix": "A Synthetix egy szintetikus eszközöket létrehozó és azokkal kereskedő protokoll", "page-dapps-dapp-description-token-sets": "Kripto befektetési stratégiák, melyek automatikusan kiegyensúlyozódnak.", "page-dapps-dapp-description-tornado-cash": "Küldjön névtelen tranzakciókat az Ethereumon.", "page-dapps-dapp-description-uniswap": "Cseréljen tokeneket egyszerűen, vagy biztosítson tokeneket egy bizonyos kamatért cserébe.", - "page-dapps-dapp-description-dexguru": "Nem felügyelt kereskedelmi platform DeFi kereskedőknek", - "page-dapps-dapp-description-synthetix": "A Synthetix egy szintetikus eszközöket létrehozó és azokkal kereskedő protokoll", + "page-dapps-dapp-description-xmtp": "Blokkláncszámlák közötti üzenetküldés, amelyben közvetlen üzenetek, figyelmeztetések, bejelentések és más jellegű közlések is lehetségesek.", + "page-dapps-dapp-description-yearn": "A Yearn Finance egy hozamokat aggregáló projekt, mely lehetővé teszi, hogy egyének, DAO-k és más protokollok letétbe helyezzék digitális eszközeiket és arra hozamot kapjanak.", "page-dapps-docklink-dapps": "Bevezetés a dappok világába", "page-dapps-docklink-smart-contracts": "Okosszerződések", "page-dapps-dark-forest-logo-alt": "Dark Forest logo", @@ -104,9 +141,7 @@ "page-dapps-desc": "Keressen Ethereum applikációt, amit szívesen kipróbálna.", "page-dapps-doge-img-alt": "Illusztráció egy számítógépet használó doge-kutyáról", "page-dapps-editors-choice-dark-forest": "Játsszon más játékosok ellen a bolygók meghódításában és próbáld ki a legkorszerűbb Ethereum méretezési/adatvédelmi technológiát. Inkább azoknak, akik már járatosak az Ethereumban.", - "page-dapps-editors-choice-description": "Egy pár dapp, amit az ethereum.org csapat nagyon kedvel mostanság. Fedezzen fel több dappot lentebb.", "page-dapps-editors-choice-foundation": "Fektessen a kultúrába. Vásároljon, kereskedjen és adjon el egyedi digitális műtárgyakat és divatcikkeket pár hihetetlen előadótól, zenésztől vagy márkától.", - "page-dapps-editors-choice-header": "A Szerkesztők ajánlata", "page-dapps-editors-choice-pooltogether": "Vegyen veszteségmentes lottójegyet! Minden héten egy szerencsés nyertes megkapja a jegyalap által termelt egy heti kamat összegét. Kapja vissza a pénzét, amikor csak akarja.", "page-dapps-editors-choice-uniswap": "Cseréljen tokeneket könnyedén. Egy közösségi kedvenc, mely segít, hogy a többiekkel kereskedjen a hálózaton keresztül.", "page-dapps-ens-logo-alt": "Ethereum Name Service logo", @@ -156,8 +191,10 @@ "page-dapps-get-started-title": "Kezdjünk bele", "page-dapps-gitcoin-grants-logo-alt": "Gitcoin Grants logo", "page-dapps-gitcoin-logo-alt": "Gitcoin logo", + "page-dapps-gm-logo-alt": "gm.xyz logo", "page-dapps-gods-unchained-logo-alt": "Gods Unchained logo", "page-dapps-golem-logo-alt": "Golem logo", + "page-dapps-graph-logo-alt": "Graph logó", "page-dapps-radicle-logo-alt": "Radicle logó", "page-dapps-hero-header": "Ethereummal működtetett eszközök és szolgáltatások", "page-dapps-hero-subtitle": "A dappok olyan egyre növekvő alkalmazások, melyek az Ethereumot használják, hogy üzleti modelleket tegyenek próbára, vagy újakat hozzanak létre.", @@ -165,10 +202,13 @@ "page-dapps-how-dapps-work-p2": "Az okosszerződés egy láncon futó szabályrendszer, így bárki meggyőződhet arról, hogy minden szabályszerűen történik. Képzeljen el egy ételautomatát: ha elég pénzt dob be és a megfelelő dolgot választja ki, akkor azt kapja, amit szeretne. És ahogy az automaták, úgy az okosszerződések is tőkét tárolnak hasonlóan az Ethereum számlájához. Így a kód megállapodásokat és trnazakciókat mediálhat.", "page-dapps-how-dapps-work-p3": "A dappokat az Ethereum hálózatra történő telepítésük után nem lehet megváltoztatni. A dappok decentralizáltak lehetnek, ha a szerződésbe írt logika irányítja őket, nem pedig egy személy vagy egy cég.", "page-dapps-how-dapps-work-title": "Hogy működnek a dappok", + "page-dapps-ipfs-logo-alt": "IPFS logó", + "page-dapps-kyberswap-logo-alt": "KyberSwap logó", "page-dapps-learn-callout-button": "Kezdjen el építeni", "page-dapps-learn-callout-description": "A közösségi fejlesztői portálunk dokumentációkat, eszközöket és keretrendszereket is tartalmaz, hogy segítsen belekezdeni a dappok építésébe.", "page-dapps-learn-callout-image-alt": "Egy kéz illusztrációja, mely egy ETH szimbólumot épít lego kockákból.", "page-dapps-learn-callout-title": "Tanuljon meg dappot építeni", + "page-dapps-lido-logo-alt": "Lido logó", "page-dapps-loopring-logo-alt": "Loopring logo", "page-dapps-magic-behind-dapps-description": "A dappok hasonlítanak egy normál apphoz, de a kulisszák mögött van néhány különleges tulajdonságuk, mert öröklik az Ethereum összes szupererejét. Itt egy pár dolog, hogy miben különböznek a dappok az appoktól.", "page-dapps-magic-behind-dapps-link": "Mi teszi az Ethereumot nagyszerűvé?", @@ -179,11 +219,23 @@ "page-dapps-marble-cards-logo-alt": "marble.cards logo", "page-dapps-async-logo-alt": "Async logó", "page-dapps-matcha-logo-alt": "Matcha logo", + "page-dapps-metaverse-benefits-title": "metaverzum", + "page-dapps-metaverse-benefits-description": "Mi az, ami miatt az Ethereum lehetővé teszi a metaverzumok virágzását?", + "page-dapps-metaverse-benefits-1-title": "NFT-k", + "page-dapps-metaverse-benefits-1-description": "Egyedi, játékhoz tartozó tételek, amelyeket a felhasználó birtokol és a különféle, ugyanazt a szabványt követő virtuális világokban és piactereken is kezelhet.", + "page-dapps-metaverse-benefits-2-title": "A felhasználók által menedzselt közösségek", + "page-dapps-metaverse-benefits-2-description": "Felhasználók által birtokolt személyazonosság, mellyel széleskörűen tudnak felfedezni és létrehozni közösségi hálózatokat számos virtuális világban.", + "page-dapps-metaverse-button": "Metaverzum", + "page-dapps-metaverse-title": "Metaverzum", + "page-dapps-metaverse-description": "Olyan alkalmazások, amelyek által a felhasználók szabadon részt vehetnek a virtuális világokban. Személyes kapcsolatokat alakíthatnak ki és digitális eszközöket is birtokolhatnak", + "page-dapps-mirror-logo-alt": "Mirror logó", "page-dapps-mobile-options-header": "Másik kategória böngészése", + "page-dapps-multichain-logo-alt": "Multichain logó", "page-dapps-nifty-gateway-logo-alt": "Nifty Gateway logo", "page-dapps-oasis-logo-alt": "Oasis logo", "page-dapps-opensea-logo-alt": "OpenSea logo", "page-dapps-opera-logo-alt": "Opera logo", + "page-dapps-osuvox-logo-alt": "OSUVOX logó", "page-dapps-polymarket-logo-alt": "Polymarket logo", "page-dapps-poap-logo-alt": "Proof of Attendance Protocol (azaz részvételt tanúsító protokoll) logó", "page-dapps-pooltogether-logo-alt": "PoolTogether logo", @@ -191,10 +243,18 @@ "page-dapps-ready-button": "Ugrás", "page-dapps-ready-description": "Válasszon ki egy dappot, amit ki szeretne próbálni", "page-dapps-ready-title": "Készen áll?", + "page-dapps-rubic-logo-alt": "Rubic logó", "page-dapps-sablier-logo-alt": "Sablier logo", "page-dapps-set-up-a-wallet-button": "Tárca keresése", "page-dapps-set-up-a-wallet-description": "A tárcával „jelentkezhet be” a dappba", "page-dapps-set-up-a-wallet-title": "Tárca létrehozása", + "page-dapps-skiff-logo-alt": "Skiff logó", + "page-dapps-social-button": "Közösségi", + "page-dapps-social-description": "Ezek olyan alkalmazások, amelyek lényege a decentralizált közösségi hálózatok létrehozása decentralizált személyazonossági technológiát használva, ahol a felhasználók birtokában van a személyazonosságuk és a közösségi gráfjuk is.", + "page-dapps-social-title": "Közösségi", + "page-dapps-spatial-logo-alt": "Spatial logó", + "page-dapps-spruce-logo-alt": "Spruce logó", + "page-dapps-status-logo-alt": "Status logo", "page-dapps-superrare-logo-alt": "SuperRare logo", "page-dapps-technology-button": "Technológia", "page-dapps-technology-description": "Ezek olyan alkalmazások, amelyek a fejlesztői eszközök decentralizálására, a kriptogazdasági rendszerek beépítésére a meglévő technológiára és a nyílt forráskódú fejlesztési munkák piactereinek létrehozására összpontosítanak.", @@ -214,11 +274,17 @@ "page-dapps-more-on-nft-gaming-button": "Bővebben a tokenizált, játékokhoz kapcsolódó dolgokról", "page-dapps-dapp-description-pwn": "Hitelek könyedén, amelyek mögött bármilyen, az Ethereumon elérhető token vagy NFT áll.", "page-dapps-pwn-image-alt": "PWN logó", - "page-dapps-dapp-description-yearn": "A Yearn Finance egy hozamokat aggregáló projekt, mely lehetővé teszi, hogy egyének, DAO-k és más protokollok letétbe helyezzék digitális eszközeiket és arra hozamot kapjanak.", + "page-dapps-xmtp-logo-alt": "XMTP logó", + "opage-dapps-yearn-logo-alt": "Yearn-logó", "page-dapps-yearn-image-alt": "Yearn-logó", - "page-dapps-dapp-description-convex": "A Convex lehetővé teszi, hogy a Curve-nek likviditást biztosító egyének kereskedelmi díjakat kapjanak, valamint boosted CRV-t kapjanak anélkül, hogy a saját CRV-jük zárolásra kerülne.", "page-dapps-convex-image-alt": "Convex-logó", "foundation": "Alapítvány", "transaction-fees": "Mik azok a tranzakciós díjak?", - "page-wallets-get-some": "Szerezz valamennyi ETH-et" + "page-wallets-get-some": "Szerezz valamennyi ETH-et", + "page-dapps-dapp-description-curve": "A Curve egy olyan decentralizált tőzsde (dex), amely a stabil érmékre fókuszál", + "page-dapps-curve-image-alt": "Curve logó", + "page-dapps-dapp-description-dodo": "A DODO egy láncon belüli likviditási szolgáltató, amely a Proactive Market Maker (PMM, Proaktív piacmenedzselő) algoritmust használja", + "page-dapps-dodo-image-alt": "DODO logó", + "page-dapps-dapp-description-artblocks": "Az Art Blocks a kortárs, generatív művészet lenyűgöző alkotásait kelti életre", + "page-dapps-artblocks-image-alt": "Art Blocks logó" } diff --git a/src/intl/hu/page-developers-docs.json b/src/intl/hu/page-developers-docs.json index 7ac126e541a..b1f50b96163 100644 --- a/src/intl/hu/page-developers-docs.json +++ b/src/intl/hu/page-developers-docs.json @@ -1,59 +1,135 @@ { "docs-nav-accounts": "Fiókok", + "docs-nav-accounts-description": "Entitások a hálózaton, akik egyenleggel rendelkezhetnek és tranzakciókat indíthatnak", "docs-nav-advanced": "Speciális", "docs-nav-backend-apis": "Backend API-ok", "docs-nav-block-explorers": "Blokk felfedezők", "docs-nav-blocks": "Blokkok", + "docs-nav-blocks-description": "Az a módszer, amely alapján a tranzakciókat kötegelik annak biztosítására, hogy a státusz minden szereplőnél szinkronizálva legyen", + "docs-nav-bridges": "Bridges", + "docs-nav-bridges-description": "Fejlesztőknek szóló áttekintés a hidakról", "docs-nav-compiling-smart-contracts": "Okosszerződések fordítása", "docs-nav-composability": "Összeilleszthetőség", "docs-nav-consensus-mechanisms": "Konszenzus mechanizmusok", + "docs-nav-consensus-mechanisms-description": "Hogyan egyeznek meg az elosztott hálózat egyéni csomópontjai a rendszer aktuális státuszáról", + "docs-nav-gasper": "Gasper", + "docs-nav-weak-subjectivity": "Gyenge szubjektivitás", + "docs-nav-attestations": "Tanúsítások", + "docs-nav-keys": "Kulcsok", + "docs-nav-block-proposal": "Blokkjavaslat", "docs-nav-data-and-analytics": "Adat és elemzések", + "docs-nav-data-and-analytics-description": "Hogyan kerül aggregálásra, rendezésre és megvalósításra a blokkláncadat a dapp-ba", + "docs-nav-data-availability": "Adatelérhetőség", "docs-nav-dart": "Dart", "docs-nav-delphi": "Delphi", "docs-nav-deploying-smart-contracts": "Okosszerződések telepítése", + "docs-nav-design-and-ux": "Bevezetés a tervezésbe és UX-be", + "docs-nav-design-and-ux-description": "Bevezetés az UX-tervezésbe és -kutatásba a web3 térben és az Ethereumon", + "docs-nav-design-fundamentals": "Tervezési alapok", "docs-nav-development-frameworks": "Fejlesztői keretrendszerek", + "docs-nav-development-frameworks-description": "Eszközök, amelyek megkönnyítik a fejlesztést az Ethereum", "docs-nav-development-networks": "Fejlesztői hálózatok", + "docs-nav-development-networks-description": "Lokális blokklánc-környezetek a dappok tesztelésére a bevezetés előtt", "docs-nav-dot-net": ".NET", - "docs-nav-erc-20": "ERC-20", - "docs-nav-erc-721": "ERC-721", + "docs-nav-erc-20": "ERC-20: helyettesíthető tokenek", + "docs-nav-erc-721": "ERC-721: NFT-k", "docs-nav-erc-777": "ERC-777", "docs-nav-erc-1155": "ERC-1155", + "docs-nav-erc-4626": "ERC-4626", "docs-nav-ethereum-client-apis": "Ethereum kliens API-ok", + "docs-nav-ethereum-client-apis-description": "Kényelmes könyvtárak, hogy a webes alkalmazás kommunikálni tudjon az Ethereummal és az okosszerződésekkel", "docs-nav-ethereum-stack": "Ethereum stack", "docs-nav-evm": "Ethereum virtuális gép (EVM)", + "docs-nav-evm-description": "Az EVM kezeli az összes számítást az Ethereum-hálózaton", "docs-nav-foundational-topics": "Alapvető témák", "docs-nav-gas": "Üzemanyag", + "docs-nav-gas-description": "A tranzakciók feldolgozása számítási kapacitást igényel, amelyet a küldők fizetnek ki ETH-ben", "docs-nav-golang": "Golang", "docs-nav-integrated-development-environments-ides": "Integrált Fejlesztői Környezetek (IDE-k)", + "docs-nav-integrated-development-environments-ides-description": "A legjobb környezet a dapp programozásra", "docs-nav-intro-to-dapps": "Bevezetés a dapps-ok világába", + "docs-nav-intro-to-dapps-description": "Bevezetés a decentralizált alkalmazásokba", + "docs-nav-intro-to-ether": "Bevezetés az Ether világába", + "docs-nav-intro-to-ether-description": "Az ether rövid áttekintése", "docs-nav-intro-to-ethereum": "Bevezetés az Ethereum-ba", + "docs-nav-intro-to-ethereum-description": "Az Ethereum rövid áttekintése", "docs-nav-intro-to-the-stack": "Bevezetés a stack-be", + "docs-nav-intro-to-the-stack-description": "Az Ethereum/web3 áttekintése", "docs-nav-java": "Java", "docs-nav-java-script-apis": "JavaScript API-ok", "docs-nav-javascript": "JavaScript", + "docs-nav-json-rpc": "JSON-RPC", + "docs-nav-mev": "Bányászattal kitermelhető maximális érték (MEV)", + "docs-nav-mev-description": "A blokkjutalmon túl hogyan nyerhető ki érték az Ethereum-blokkláncból", "docs-nav-mining": "Bányászat", + "docs-nav-mining-algorithms": "Bányászati algoritmusok", + "docs-nav-dagger-hashimoto": "Dagger-Hashimoto", + "docs-nav-ethash": "Ethash", "docs-nav-networks": "Hálózatok", + "docs-nav-networks-description": "Az Ethereum megvalósítása a teszthálózatokkal együtt", "docs-nav-nodes-and-clients": "Csomópontok és kliensek", + "docs-nav-nodes-and-clients-description": "A hálózatban részt vevő egyének, illetve a tranzakciók igazolásához futtatott szoftverek", + "docs-nav-opcodes": "Műveleti kódok", + "docs-nav-run-a-node": "Csomópont futtatása", + "docs-nav-client-diversity": "Kliensdiverzitás", + "docs-nav-bootnodes": "Bootnode-ok", + "docs-nav-light-clients": "Könnyű kliens", "docs-nav-nodes-as-a-service": "Csomópont, mint szolgáltatás", "docs-nav-oracles": "Orákulumok", + "docs-nav-oracles-description": "Az információ bekerülése az Ethereum blokkláncba", "docs-nav-programming-languages": "Programozási nyelvek", + "docs-nav-programming-languages-description": "Az Ethereum használata olyan nyelvekkel, amelyeket már ismer", "docs-nav-proof-of-stake": "Proof-of-stake", "docs-nav-proof-of-work": "Proof-of-work", "docs-nav-python": "Python", - "docs-nav-readme": "README", + "docs-nav-readme": "Áttekintés", + "docs-nav-ruby": "Ruby", "docs-nav-rust": "Rust", "docs-nav-scaling": "Méretezés", - "docs-nav-smart-contract-security": "Biztonság", + "docs-nav-scaling-description": "Módszerek a decentralizáció és a biztonság megőrzésére az Ethereum növekedésével", + "docs-nav-scaling-optimistic-rollups": "Optimista összesítések", + "docs-nav-scaling-zk-rollups": "Zero-knowledge összegzők", + "docs-nav-scaling-channels": "Állapotcsatornák", + "docs-nav-scaling-sidechains": "Mellékláncok", + "docs-nav-scaling-plasma": "Plasma", + "docs-nav-scaling-validium": "Validium", + "docs-nav-smart-contract-security": "Okosszerződés-biztonság", + "docs-nav-smart-contract-security-description": "Bevált gyakorlatok az okosszerződés-támadások és -sebezhetőségek kezelésére", + "docs-nav-smart-contract-formal-verification": "Az okosszerződés formális érvényesítése", + "docs-nav-smart-contract-formal-verification-description": "Bevezetés a formális hitelesítésbe az Ethereum-okosszerződések kontextusában", "docs-nav-smart-contract-anatomy": "Okosszerződés felépítés", "docs-nav-smart-contract-languages": "Okosszerződés nyelvek", "docs-nav-smart-contracts": "Okosszerződések", + "docs-nav-smart-contracts-description": "Programok, amelyek Ethereum-címen találhatók, és tranzakciók által kiváltott funkciókat futtatnak", "docs-nav-smart-contracts-libraries": "Okosszerződés könyvtárak", "docs-nav-standards": "Szabványok", + "docs-nav-standards-description": "Közös protokollok a projektek hatékonyságának és elérhetőségének fenntartására a közösség felé", "docs-nav-storage": "Tárhely", + "docs-nav-storage-description": "Decentralizált tárolási struktúrák és mechanizmusok", "docs-nav-testing-smart-contracts": "Okosszerződések tesztelése", "docs-nav-token-standards": "Token szabványok", "docs-nav-transactions": "Tranzakciók", + "docs-nav-transactions-description": "Transzferek és más akciók, amelyek megváltoztatják az Ethereum státuszát", + "docs-nav-upgrading-smart-contracts": "Okosszerződések frissítése", + "docs-nav-verifying-smart-contracts": "Okosszerződések érvényesítése", "docs-nav-web2-vs-web3": "Web2 vs Web3", + "docs-nav-web2-vs-web3-description": "Alapvető különbségek, amelyeket a blokkláncon alapuló alkalmazások nyújtanak", + "docs-nav-networking-layer": "Hálózati réteg", + "docs-nav-networking-layer-description": "Az Ethereum hálózati rétegének működése", + "docs-nav-networking-layer-network-addresses": "Hálózati címek", + "docs-nav-networking-layer-portal-network": "Portal Network", + "docs-nav-data-structures-and-encoding": "Adatszerkezetek és kódolás", + "docs-nav-data-structures-and-encoding-description": "Az Ethereum stacken használt adatstruktúrák és kódolási sémák bemutatása", + "docs-nav-data-structures-and-encoding-rlp": "Rekurzív hosszúságú prefixum (RLP)", + "docs-nav-data-structures-and-encoding-patricia-merkle-trie": "Patricia Merkle Trie", + "docs-nav-data-structures-and-encoding-ssz": "Egyszerű sorosítás (SSZ)", + "docs-nav-data-structures-and-encoding-web3-secret-storage": "Web3 titkos tárhely meghatározása", + "docs-nav-rewards-and-penalties": "PoS jutalmak és büntetések", + "docs-nav-node-architecture": "Csomópont-architektúra", + "docs-nav-archive-nodes": "Csomópontok archiválása", + "docs-nav-attack-and-defense": "PoS-támadás és védekezés", + "docs-nav-pos-vs-pow": "A proof-of-stake és a proof-of-work összehasonlítása", + "docs-nav-pos-faqs": "Proof-of-stake GYIK", "page-calltocontribute-desc-1": "Ha a témának a szakértője vagy és szeretnél hozzájárulni, akkor szerkeszd ezt az oldalt és szórd meg a tudásoddal.", "page-calltocontribute-desc-2": "Jóváírást kapsz, és segítesz az Ethereum közösségnek!", "page-calltocontribute-desc-3": "Használd rugalmasan", @@ -62,8 +138,12 @@ "page-calltocontribute-link-2": "Discord szerver", "page-calltocontribute-span": "Oldal szerkesztése", "page-calltocontribute-title": "Segíts nekünk ezzel a lappal", - "back-to-top": "Vissza a tetejére", - "banner-page-incomplete": "Ez az oldal nem teljes, és szeretnénk a segítségét kérni. Szerkessze ezt az oldalt, és adjon hozzá bármit, ami Ön szerint hasznos lehet másoknak.", + "layer-2-arbitrum-note": "A hibavizsgálat csak az engedélyezőlistán szereplő felhasználók számára elérhető, az engedélyezőlista még nincs megnyitva", + "layer-2-boba-note": "Az állapotvalidálás fejlesztés alatt áll", + "layer-2-metis-note": "Fejlesztés alatt álló csalási bizonyítékok", + "layer-2-optimism-note": "A hibavizsgálat fejlesztés alatt áll", + "back-to-top": "Vissza az oldal tetejére", + "banner-page-incomplete": "Ez az oldal nem teljes, és szeretnénk a segítségét kérni. Szerkessze az oldalt, és adjon hozzá bármit, ami Ön szerint hasznos lehet másoknak.", "next": "Következő", "previous": "Előző" } diff --git a/src/intl/hu/page-gas.json b/src/intl/hu/page-gas.json new file mode 100644 index 00000000000..c7fbca54a7c --- /dev/null +++ b/src/intl/hu/page-gas.json @@ -0,0 +1,64 @@ +{ + "page-gas-meta-title": "Gázdíjak az Ethereumon: hogyan működnek?", + "page-gas-meta-description": "Tudjon meg többet arról, hogy mi a gáz az Ethereumon: hogyan működik és hogyan lehet kevesebb gázdíjat fizetni", + "page-gas-hero-title": "Gázdíjak", + "page-gas-hero-header": "Hálózati díjak", + "page-gas-hero-button-1-content": "Mi az a gáz?", + "page-gas-hero-subtitle-1": "Az Ethereumon a hálózati díjakat nevezik gáznak.", + "page-gas-hero-subtitle-2": "A gáz az az üzemanyag, amely az Ethereumot működteti.", + "page-gas-summary-title": "Összegzés", + "page-gas-summary-item-1": "Az Ethereumon minden tranzakcióért valamekkora összeget fizetni kell, hogy azt feldolgozza a rendszer", + "page-gas-summary-item-2": "Ezeket a díjakat nevezzük gázdíjnak", + "page-gas-summary-item-3": "A gázdíjak a hálózati leterheltség alapján változnak", + "page-gas-what-are-gas-fees-header": "Mik a gázdíjak?", + "page-gas-what-are-gas-fees-text-1": "Gondoljon úgy az Ethereumra, akár egy nagy számítógépes hálózatra, ahol az emberek üzeneteket tudnak küldeni vagy programokat tudnak futtatni. Ahogy a való világban, úgy ezekhez a feladatokhoz is energiára van szükség.", + "page-gas-what-are-gas-fees-text-2": "Az Ethereumban minden számítási tevékenység egy előre meghatározott gázdíjjal rendelkezik. Az Ön gázdíja a tranzakcióban lévő tevékenységek teljes költsége. Amikor Ön tranzakciót küld vagy okosszerződést futtat, ennek díját gázban fizeti ki, hogy végre legyen hajtva.", + "page-gas-how-do-i-pay-less-gas-header": "Hogyan fizessek kevesebb gázt?", + "page-gas-how-do-i-pay-less-gas-text": "Miközben az Ethereumon néha elkerülhetetlenek a magas díjak, vannak olyan stratégiák, amelyekkel a költség csökkenthető:", + "page-gas-how-do-i-pay-less-gas-card-1-title": "Időzítse a tranzakciókat", + "page-gas-how-do-i-pay-less-gas-card-1-description": "Ahogy a szezonon kívüli utazások kevésbé zsúfoltak és megfizethetőbbek, úgy az Ethereumot is általában olcsóbb használni, amikor Észak-Amerikában éjszaka van.", + "page-gas-how-do-i-pay-less-gas-card-2-title": "Várja meg, amíg a gáz ára csökken", + "page-gas-how-do-i-pay-less-gas-card-2-description": "A gáz ára tizenkét másodpercenként emelkedik vagy csökken, attól függően, hogy mennyire zsúfolt az Ethereum. Ha a gázárak magasak, akkor várjon néhány percet a tranzakció előtt, és jelentősen csökkenhet a fizetendő összeg.", + "page-gas-how-do-i-pay-less-gas-card-3-title": "A második blokkláncréteg (L2) használata", + "page-gas-how-do-i-pay-less-gas-card-3-description": "A második blokkláncréteg (L2) megoldások az Ethereumra épülnek, alacsonyabb díjakat kínálnak és több tranzakciót kezelnek. Jó választásnak bizonyulnak, ha olyan tranzakciók díját szeretnénk megtakarítani, amelyeknek nem kell a fő Ethereum-hálózaton történniük.", + "page-gas-try-layer-2": "Próbálja ki a második blokkláncréteges (L2) megoldásokat", + "page-gas-what-causes-high-gas-fees-header": "Mi okozza a magas gázdíjakat?", + "page-gas-what-causes-high-gas-fees-text-1": "Amikor az Ethereumon a számítási kapacitás mennyisége (gáz) meghalad egy bizonyos küszöbértéket, a gázdíjak emelkedni kezdenek. Minél inkább meghaladja a gáz ezt a küszöböt, annál gyorsabban nőnek a díjak.", + "page-gas-what-causes-high-gas-fees-text-2": "A magasabb díjakat olyan dolgok okozhatják, mint a népszerű dappok vagy NFT-k, az időszakosan megnövekedett kereskedés a decentralizált tőzsdéken (DEX), vagy a felhasználói aktivitás növekedése csúcsidőben.", + "page-gas-what-causes-high-gas-fees-text-3": "Az Ethereumon dolgozó fejlesztőknek ügyelniük kell arra, hogy az okosszerződések használatát a telepítés előtt optimalizálják. Ha sokan használnak egy rosszul megírt okosszerződést, az több gázt fog fogyasztani, és nem szándékos hálózati torlódást okozhat.", + "page-gas-want-to-dive-deeper": "Szeretne többet tudni erről?", + "page-gas-check-out-the-developer-docs": "Tekintsen bele a fejlesztői dokumentációkba.", + "page-gas-attack-of-the-cryptokitties-header": "A Cryptokitties berobbanása", + "page-gas-attack-of-the-cryptokitties-text": "2017 novemberében indult a népszerű CryptoKitties projekt. A népszerűség megugrása jelentős hálózati torlódást és magas gázdíjakat okozott. Ezek a kihívások megnövelték az Ethereum skálázására vonatkozó megoldások sürgősségét.", + "page-gas-why-do-we-need-gas-header": "Miért van szükség gázra?", + "page-gas-why-do-we-need-gas-text": "A gáz kritikus szerepet játszik abban, hogy az Ethereum biztonságos legyen és tranzakciókat lehessen rajta végrehajtani. A gáz számos módon segít:", + "page-gas-benefits-1-description": "A gáz sybil-ellenállóvá teszi az Ethereumot, megakadályozva, hogy a rosszindulatú szereplők csalárd tevékenységekkel árasszák el a hálózatot.", + "page-gas-benefits-2-description": "Mivel a számítás gázba kerül, az Ethereum drága tranzakciókkal való teleszemetelése (spam), véletlenül vagy rosszindulatúan, pénzügyileg nem motiváló.", + "page-gas-benefits-3-description": "Az egyszerre elvégezhető számítások mennyiségének korlátozása megakadályozza, hogy az Ethereum túlterhelődjön, így biztosítva, hogy a hálózat mindig elérhető legyen.", + "page-gas-how-is-gas-calculated-header": "Hogyan kerül kiszámításra a gáz?", + "page-gas-advanced": "Speciális", + "page-gas-how-is-gas-calculated-text-1": "Az Ön által fizetett gázdíj több elemből áll:", + "page-gas-how-is-gas-calculated-item-1": "Alapdíj: a hálózat által meghatározott díj, melyet a tranzakcióért fizetni kell", + "page-gas-how-is-gas-calculated-item-2": "Elsőbbségi díj: egy opcionális borravaló, amely motiválja a csomópont-üzemeltetőket, hogy prioritással kezeljék az Ön tranzakcióját", + "page-gas-how-is-gas-calculated-item-3": "Az elhasznált gáz egysége*: emlékszik, hogy azt mondtuk, a gáz a számítási kapacitást jelenti? Az összetettebb tevékenységek, mint az okosszerződésekkel való interakció, több gázt használ, mint az egyszerűbbek, például egy tranzakció elküldése.", + "page-gas-how-is-gas-calculated-list-item-1": "* Tekintse meg az 1. ábrán, hogy a különféle tranzakciók mennyi gázt használnak", + "page-gas-how-is-gas-calculated-text-2": "A gázdíj kiszámításának képlete: felhasznált gázegység * (alapdíj + elsőbbségi díj). A legtöbb tárca kiszámítja a gázhasználatot, és egyértelműen megmutatja azt.", + "page-gas-table-figure": "1. ábra: A tranzakciótípusok által használt gáz", + "page-gas-table-header-1": "Tranzakciótípus", + "page-gas-table-header-2": "Felhasznált gázegységek", + "page-gas-table-item-1-transaction-type": "ETH küldése", + "page-gas-table-item-2-transaction-type": "ERC-20 tokenek küldése", + "page-gas-table-item-3-transaction-type": "NFT átadása", + "page-gas-table-item-4-transaction-type": "Valutaváltás a Uniswap-on", + "page-gas-faq-header": "Gyakran ismételt kérdések", + "page-gas-faq-question-1-q": "Ki kapja meg a gázdíjat a tranzakciómból?", + "page-gas-faq-question-1-a-1": "A gázdíj nagy részét – az alapdíjat – a protokoll megsemmisíti (elégeti). Az elsőbbségi díjat, ha az Ön tranzakciója tartalmaz ilyet, az a validátor kapja, aki előterjeszti azt.", + "page-gas-faq-question-1-a-2": "A folyamat részletes leírását a gázfejlesztői dokumentációban olvashatja.", + "page-gas-faq-question-2-q": "A gázt ETH-ben kell fizessem?", + "page-gas-faq-question-2-a-1": "Igen. Az Ethereumon minden gázdíjat a natív ETH valutában kell kifizetni.", + "page-gas-faq-question-2-a-2": "Többet az ETH-ről", + "page-gas-faq-question-3-q": "Mi az a gwei?", + "page-gas-faq-question-3-a-1": "A legtöbb tárcában vagy gázlistában a gázárakat a denominált gwei-ben jelölik.", + "page-gas-faq-question-3-a-2": "A gwei az ETH kisebb egysége (ahogy a penny a dollárnak), 1 ETH 1 milliárd gwei-nek felel meg. Tehát a gwei akkor hasznos, ha kis mennyiségű ETH-ről beszélünk.", + "page-gas-use-layer-2": "A második blokkláncréteg (L2) használata" +} diff --git a/src/intl/hu/page-get-eth.json b/src/intl/hu/page-get-eth.json index 4eeacf9eb4d..71350895bc9 100644 --- a/src/intl/hu/page-get-eth.json +++ b/src/intl/hu/page-get-eth.json @@ -9,23 +9,32 @@ "page-get-eth-cex-desc": "A tőzsdék olyan vállalkozások, melyek lehetővé teszik kriptó vásárlását hagyományos valutákkal. Ők rendelkeznek az Ön által vásárolt ETH felett, amíg ki nem utalja egy tárcába, amit Ön irányít.", "page-get-eth-checkout-dapps-btn": "Nézd meg a dappokat", "page-get-eth-community-safety": "Közösségi posztok a biztonságról", - "page-get-eth-description": "Az Ethereumot és az ETH-et egyik cég vagy kormány sem irányítja - decentralizáltak. Ez azt jelenti, hogy az ETH-et bárki használhatja.", + "page-get-eth-description": "Az Ethereumot nem irányítja semmilyen szervezet – teljesen decentralizált.", "page-get-eth-dex": "Decentralizált tőzsdék (DEX-ek)", - "page-get-eth-dex-desc": "Ha nagyobb kontrollt szeretnél, akkor vásárolj ETH-et peer-to-peer módon. A DEX-ekkel úgy kereskedhetsz, hogy nem adod át a kontrollt a vagyonod felett egy centralizált vállalatnak.", + "page-get-eth-dex-desc": "Ha nagyobb kontrollt szeretne, akkor vásároljon ETH-et okosszerződéssel. A DEX-ekkel úgy kereskedhet digitális eszközökkel, hogy nem adja át a kontrollt a vagyona felett egy centralizált vállalatnak.", + "page-get-eth-peers": "Kapjon ETH-t más személyektől", + "page-get-eth-peers-desc": "Amint rendelkezik Ethereum számlával, csak meg kell adnia a címét ahhoz, hogy ETH-t (és más tokeneket) küldjön és fogadjon peer-to-peer módon.", + "page-get-eth-staking": "A letétbe helyezésből eredő jutalmak", + "page-get-eth-staking-desc": "Ha már rendelkezik valamennyi ETH-szel, akkor többet is kereshet, ha validátor-csomópontként tevékenykedik. A validálásért ETH-ben fizetnek.", + "page-get-eth-earn": "ETH-jövedelem", + "page-get-eth-earn-desc": "ETH-jövedelmet szerezhet azáltal, hogy DAO-knak dolgozik, vagy olyan szervezeteknek, amelyek kritpóban fizetnek, továbbá programhibák és más vadászatok során is jutalmul kaphatja.", + "page-get-eth-daos-link-desc": "Tudjon meg többet a DAO-król", + "page-get-eth-cex-link-desc": "Tekintse meg a tőzsdék listáját", + "page-get-eth-staking-link-desc": "Tudjon meg többet a letétbe helyezésről", "page-get-eth-dexs": "Decentralizált tőzsdék (DEX-ek)", "page-get-eth-dexs-desc": "A decentralizált tőzsdék nyílt piactereket nyújtanak az ETH-nek és más tokeneknek. Közvetlenül összekötik a vevőket az eladókkal.", "page-get-eth-dexs-desc-2": "Ahelyett, hogy egy megbízható harmadik felet bíznának meg a pénz megőrzésére a tranzakcióban, kódot használnak. Az eladó ETH-jét csak akkor utalják át, ha a fizetés garantált. Ezt a típusú kódot úgy hívják, hogy okosszerződés.", - "page-get-eth-dexs-desc-3": "Ez azt jelenti, hogy kevesebb a földrajzi korlátozás, mint a centralizált alternatíváknál. Ha valaki azt árul, amit szeretnél, és elfogadja az általad megadott fizetési módot, akkor minden rendben. A DEX-ek lehetővé teszik, hogy ETH-et vásárolj más tokenekkel, PayPal-lal vagy akár személyesen készpénzzel.", + "page-get-eth-dexs-desc-3": "Ez azt jelenti, hogy kevesebb a földrajzi korlátozás, mint a centralizált alternatíváknál. Ha valaki olyat árul, amit Ön meg szeretne vásárolni, és elfogadja az Ön által megadott fizetési módot, akkor minden rendben.", "page-get-eth-do-not-copy": "Példa: Ne másolja le", "page-get-eth-exchanges-disclaimer": "Ezt az információt manuális gyűjtöttük. Ha találsz valami hibát, jelezd felénk itt:", - "page-get-eth-exchanges-empty-state-text": "Írd be az országot, ahol élsz, a tárcák és tőzsdék listájához, melyeket ETH vételre használhatsz.", + "page-get-eth-exchanges-empty-state-text": "Írja be az országot, ahol él, azon tőzsdék listájának megjelenítéséhez, amelyeket használhat", "page-get-eth-exchanges-except": "Kivéve", "page-get-eth-exchanges-header": "Melyik országban élsz?", "page-get-eth-exchanges-header-exchanges": "Tőzsdék", "page-get-eth-exchanges-header-wallets": "Tárcák", - "page-get-eth-exchanges-intro": "A tőzsdék és a tárcák korlátozzák a kripto értékesítési helyeit.", + "page-get-eth-exchanges-intro": "A tőzsdék nem árulhatnak kriptót mindenhol. Ez a lista jelzés értékű, hogy melyik országban milyen szolgáltatások működnek. Nem minősül jóváhagyásnak az, hogy a listán szerepel egy szolgáltató – mindig ellenőrizze Ön is, hogy mi engedélyezett!", "page-get-eth-exchanges-no-exchanges": "Sajnáljuk, de nem tudunk olyan tőzsdéről, ahol ETH-et tudsz venni ebben az országban. Ha találsz ilyet, tudasd velünk", - "page-get-eth-exchanges-no-exchanges-or-wallets": "Sajnáljuk, de nem tudunk olyan tőzsdéről vagy tárcáról, ahol ETH-et tudsz venni ebben az országban. Ha találsz ilyet, tudasd velünk", + "page-get-eth-exchanges-no-exchanges-or-wallets": "Sajnáljuk, de nem tudunk olyan tőzsdéről, ahol ETH-et tudsz venni ebben az országban. Ha találsz ilyet, tudasd velünk", "page-get-eth-exchanges-no-wallets": "Sajnáljuk, de nem tudunk olyan tárcáról, ahol ETH-et tudsz venni ebben az országban. Ha találsz ilyet, tudasd velünk", "page-get-eth-exchanges-search": "Írja be, hogy hol él...", "page-get-eth-exchanges-success-exchange": "Egy tőzsdére történő regisztráció több napot is igénybe vehet a jogi ellenőrzések miatt.", @@ -36,30 +45,30 @@ "page-get-eth-hero-image-alt": "ETH szerzése hős ábra", "page-get-eth-keep-it-safe": "Az ETH-ed biztonságban tartása", "page-get-eth-meta-description": "Hogyan tudsz lakhely alapján ETH-et venni és tanács arról, hogy hogyan vigyázz rá.", - "page-get-eth-meta-title": "Hogy lehet ETH-et venni", + "page-get-eth-meta-title": "Hogyan lehet ETH-et szerezni", "page-get-eth-need-wallet": "A DEX-ek használatához egy tárcára lesz szükséged.", "page-get-eth-new-to-eth": "Még új az ETH? Itt egy összefoglaló, hogy hogyan fogj hozzá.", "page-get-eth-other-cryptos": "Vásárlás más kriptoval", - "page-get-eth-protect-eth-desc": "Ha sok ETH-et tervezel venni, akkor lehet, hogy érdemesebb egy tárcában tárolni, amit te irányítasz, nem pedig egy tőzsdén. Ennek az az oka, hogy a tőzsdék gyakori célpontjai a hackereknek. Ha egy hacker hozzáférést szerez, elveszítheted a pénzedet. Ezzel szemben a tárcádhoz csak te férsz hozzá.", - "page-get-eth-protect-eth-in-wallet": "Védd meg az ETH-edet egy tárcában", + "page-get-eth-protect-eth-desc": "Az Ethereum egyik fő vonása, hogy a felhasználó a saját számláját kezeli, így mindig ellenőrzése alatt tarthatja a saját eszközeit. Ennélfogva nem kell rábízni az eszközöket egy harmadik félre, így elkerülhető, hogy az eszközöket felügyelő rosszhiszeműen járjon el, csődbe menjen vagy megtámadják. Emellett az is fontos, hogy a felhasználónak kell felelősséget vállalni a saját biztonságát illetően.", + "page-get-eth-protect-eth-in-wallet": "Tartsa az ETH-t a saját tárcájában", "page-get-eth-search-by-country": "Keresés ország szerint", - "page-get-eth-security": "De ez azt is jelenti, hogy komolyan kell venned a pénzed feletti biztonságot. Az ETH esetében nem egy bankot bízol meg, hogy vigyázzon a pénzedre, hanem magadban bízol.", + "page-get-eth-security": "Ez azt jelenti, hogy komolyan kell vennie a pénze feletti biztonságot. Az ETH esetében nem egy bankot vagy egy céget bíz meg, hogy vigyázzon az eszközeire, hanem Ön vállalja a felelősséget.", "page-get-eth-smart-contract-link": "Többet az okos szerződésekről", "page-get-eth-swapping": "Kereskedj a tokeneiddel más emberek ETH-éért. És fordítva.", "page-get-eth-try-dex": "Próbáljon ki egy DEX-et", "page-get-eth-use-your-eth": "Használd az ETH-ed", "page-get-eth-use-your-eth-dapps": "Most, hogy már van valamennyi ETH-ed, próbálj ki valamilyen Ethereum alkalmazást (dappot). Vannak pénzügyi, közösségi média, játék és még sok más kategóriájú dappok.", "page-get-eth-wallet-instructions": "Kövesd a tárca utasításokat", - "page-get-eth-wallet-instructions-lost": "Ha elveszted a hozzáférést a tárcádhoz, akkor elveszted a hozzáférést a pénzedhez. A tárcádnak utasításokat kell addnia, hogy ezt meg tudd akadályozni. Kövesd őket figyelmesen - a legtöbb esetben senki sem tud segíteni, ha elveszted a hozzáférést a tárcádhoz.", + "page-get-eth-wallet-instructions-lost": "Ha a számlához való hozzáférését elveszti, akkor nem lehet elérni a rajta lévő eszközöket. A tárca olyan utasításokat ad, amelyekkel ez elkerülhető. Kövesse azokat figyelmesen – a legtöbb esetben senki sem tud segíteni, ha elveszik a számlához való hozzáférése.", "page-get-eth-wallets": "Tárcák", "page-get-eth-wallets-link": "Többet a tárcákról", "page-get-eth-wallets-purchasing": "Néhány tárcával hitel- és bankkártyával, banki átutalással vagy akár Apple Pay-jel is tudsz kriptot venni. Földrajzi szabályozás lehet érvényben.", - "page-get-eth-warning": "Ezek a DEX-ek nem kezdőknek valók, mivel kelleni fog valamennyi ETH a használatukhoz.", + "page-get-eth-warning": "Ezek a DEX-ek nem kezdő felhasználóknak valók, mert használatukhoz ETH-ra van szükség. Ezek csak példák, nem minősül jóváhagyásnak az említésük. Mindig ellenőrizze le Ön is!", "page-get-eth-what-are-DEX's": "Mik azok a DEX-ek?", "page-get-eth-whats-eth-link": "Mi az az ETH?", - "page-get-eth-where-to-buy-desc": "Vásárolhatsz ETH-et tőzsdéken vagy tárcákról közvetlenül.", + "page-get-eth-where-to-buy-desc": "ETH-t szerezhet jövedelemként, kaphat más személyektől vagy vehet tőzsdén és alkalmazások révén.", "page-get-eth-where-to-buy-desc-2": "Ellenőrizd, hogy mely szolgáltatásokat használhatod a lakhelyed alapján.", - "page-get-eth-where-to-buy-title": "Hol lehet ETH-et venni", + "page-get-eth-where-to-buy-title": "Hol lehet ETH-et szerezni", "page-get-eth-your-address": "Az ETH címed", "page-get-eth-your-address-desc": "Ha letöltesz egy tárcát, akkor egy nyilvános ETH címet fog generálni neked. Így néz ki:", "page-get-eth-your-address-desc-3": "Gondolj rá úgy, mint az email címedre, de emailek helyett ETH-et kaphatsz rá. Ha ETH-et szeretnél kiutalni egy tőzsdéről a tárcádra, használd a címedet, mint beérkező cím. Küldés előtt mindig ellenőrizd többször is!", diff --git a/src/intl/hu/page-languages.json b/src/intl/hu/page-languages.json index d78b1eab67a..88baeb222d1 100644 --- a/src/intl/hu/page-languages.json +++ b/src/intl/hu/page-languages.json @@ -12,10 +12,13 @@ "page-languages-want-more-link": "Fordítási Program", "page-languages-want-more-paragraph": "az ethereum.org fordítók mindig a lehető legtöbb nyelvre igyekeznek lefordítani az oldalakat. Hogy megnézd mivel foglalkoznak jelenleg, vagy csatlakozz munkájukhoz, olvasd el az", "page-languages-filter-placeholder": "Szűrő", + "langauge-am": "Amhara", "language-ar": "Arab", "language-az": "Azerbajdzsáni", + "langauge-be": "Belarusz", "language-bg": "Bolgár", "language-bn": "Bengáli", + "language-bs": "Bosnyák", "language-ca": "Katalán", "language-cs": "Cseh", "language-da": "Dán", @@ -32,6 +35,7 @@ "language-hi": "Hindi", "language-hr": "Horvát", "language-hu": "Magyar", + "language-hy-am": "Örmény", "language-id": "Indonéz", "language-ig": "Igbó", "language-it": "Olasz", @@ -39,12 +43,14 @@ "language-ka": "Grúz", "language-kk": "Kazah", "language-km": "Khmer", + "language-kn": "Kannada", "language-ko": "Koreai", "language-lt": "Litván", "language-ml": "Malajálam", "language-mr": "Maráthi", "language-ms": "Maláj", "language-nb": "Norvég", + "language-ne-np": "Nepáli", "language-nl": "Holland", "language-pcm": "Nigériai pidzsin", "language-fil": "Filippínó", @@ -58,8 +64,9 @@ "language-sl": "Szlovèn", "language-sr": "Szerb", "language-sw": "Szuahéli", - "language-th": "Thai", "language-ta": "Tamil", + "language-th": "Thai", + "language-tk": "Türkmén", "language-tr": "Török", "language-uk": "Ukrán", "language-ur": "Urdu", diff --git a/src/intl/hu/page-layer-2.json b/src/intl/hu/page-layer-2.json index cd855aa7cc8..f69f05493eb 100644 --- a/src/intl/hu/page-layer-2.json +++ b/src/intl/hu/page-layer-2.json @@ -123,6 +123,7 @@ "zksync-description": "A zkSync egy felhasználó-központú zero-knowledge rollup platform, amelyet a Matter Labs dolgozott ki. Egy Ethereum-skálázási megoldás, amely már elérhető az Ethereum főhálózatán. Támogatja a kifizetéseket, a tokenátváltást és az NFT-k létrehozását.", "zkspace-description": "A ZKSpace platform három fő részből áll: az L2 AMM DEX (automatikus piackészítőként működő decentralizált tőzsde), mely ZK-rollup technológát használ, és ZKSwapnak nevezik; a kifizetési rendszer, melynek ZKSquare a neve; és az NFT-piactér, amely ZKSea néven fut.", "aztec-description": "Az Aztec Network az első privát ZK-rollup az Ethereumon, mely lehetővé teszi, hogy a decentralizált alkalmazások élvezhessék az adatvédelmet és a skálázást.", + "starknet-description": "A Starknet egy validitáson alapuló összevont tranzakció (L2). Gyors tranzakcióátvitel, alacsony gázdíj jellemzi, miközben megtartja az Ethereum (L1) biztonsági szintjét.", "layer-2-note": "Megjegyzés:", "layer-2-ecosystem-portal": "Ökoszisztéma portál", "layer-2-token-lists": "Tokenlisták", diff --git a/src/intl/hu/page-learn.json b/src/intl/hu/page-learn.json index 4e5248f7747..2074eca5e9b 100644 --- a/src/intl/hu/page-learn.json +++ b/src/intl/hu/page-learn.json @@ -11,7 +11,7 @@ "hero-subtitle": "Az Ön tanulási útmutatója az Ethereum világába. Ismerje meg, hogyan működik az Ethereum és hogyan tud hozzá kapcsolódni. Ez az oldal technikai és nem technikai cikkeket, útmutatókat és forrásokat is tartalmaz.", "hero-button-lets-get-started": "Lássunk neki!", "what-is-crypto-1": "Talán Ön is hallott már a kriptovalutákról, blokkláncokról és a Bitcoinról. Az alábbi hivatkozások feltárják, hogy mik ezek és hogyan kapcsolódnak az Ethereumhoz.", - "what-is-crypto-2": "A kriptovaluták, mint amilyen a Bitcoin is, lehetővé teszik bárki számára, hogy pénzt utaljon a világon bárhova. Az Ethereum is képes erre, ráadásul olyan programkódokat is tud futtatni, melyek révén alkalmazásokat és szervezeteket lehet rá építeni. Egyaránt ellenálló és rugalmas: bármilyen számítógépes program futhat az Ethereumon. Tudjon meg többet, és kezdje el Ön is használni:", + "what-is-crypto-2": "A kriptovaluták, mint amilyen a bitcoin is, lehetővé teszik bárki számára, hogy pénzt utaljon a világon bárhova. Az Ethereum is képes erre, ráadásul olyan programkódokat is tud futtatni, amelyek révén alkalmazásokat és szervezeteket lehet rá építeni. Egyaránt ellenálló és rugalmas: bármilyen számítógépes program futhat az Ethereumon. Tudjon meg többet, és kezdje el használni Ön is:", "what-is-ethereum-card-title": "Mi az Ethereum?", "what-is-ethereum-card-description": "Ha Önnek új az Ethereum világa, akkor kezdje itt és ismerje meg, hogy miért fontos az Ethereum.", "what-is-ethereum-card-image-alt": "Egy bazárba kukucskáló ember képe, amely az Ethereumot reprezentálja.", diff --git a/src/intl/hu/page-roadmap-vision.json b/src/intl/hu/page-roadmap-vision.json index 94083a518d3..f5eca7bf384 100644 --- a/src/intl/hu/page-roadmap-vision.json +++ b/src/intl/hu/page-roadmap-vision.json @@ -1,63 +1,67 @@ { - "page-roadmap-vision-2014": "Egy proof-of-stake-et részletező 2014-es blog poszt megtekintése", - "page-roadmap-vision-desc-1": "Az Ethereumnak csökkentenie kell a hálózati torlódást és növelnie a sebességet, hogy kiszolgálja a globális felhasználói bázist.", - "page-roadmap-vision-desc-2": "Egy csomópont futtatása egyre nehezebb, ahogy nő a hálózat. Ez csak nehezebbé fog válni a hálózat méretezhetőségének növelésével.", - "page-roadmap-vision-desc-3": "Az Ethereum túl sok elektromosságot használ. A hálózat biztonságát szolgáltató technológiának fenntarthatóbbnak kell lennie.", - "page-roadmap-vision-ethereum-node": "Többet a csomópontokról", - "page-roadmap-vision-future": "Egy digitális jövő globális méretben", - "page-roadmap-vision-meta-desc": "Egy áttekintő az Eth2 fejlesztések Ethereumra való hatásáról és a kihívásokról, amikkel meg kell küzdenünk.", - "page-roadmap-vision-meta-title": "Ethereum 2.0 (Eth2) vízió", - "page-roadmap-vision-mining": "Többet a bányászatról", + "page-roadmap-vision-2014": "Tekintse meg ezt a proof-of-stake-et részletező 2014-es blogposztot", + "page-roadmap-vision-2021": "Tekintse meg ezt a 2021-es blogposztot az Ethereum-útiterv fejlődéséről", + "page-roadmap-vision-2022": "Tekintse meg ezt a 2022-es blogposztot: Ethereum útikalauz stopposoknak", + "page-roadmap-vision-2021-updates": "Tekintse meg ezt a 2021-es blogposztot az Ethereum-protokoll frissítéseiről", + "page-roadmap-vision-desc-1": "Az Ethereumnak csökkentenie kell a hálózati leterheltséget és növelnie a sebességet, hogy jobban kiszolgálhasson egy globális felhasználói bázist.", + "page-roadmap-vision-desc-2": "A hálózat növekedésével egyre nehezebb csomópontokat futtatni. A hálózat méretezésére tett erőfeszítésekkel ez csak még nehezebbé fog válni.", + "page-roadmap-vision-desc-3": "Az Ethereum túl sok elektromos áramot használ. A hálózat biztonságát nyújtó technológiának fenntarthatóbbnak kell lennie.", + "page-roadmap-vision-ethereum-node": "A csomópontokról bővebben", + "page-roadmap-vision-future": "Egy digitális jövő globális méretekben", + "page-roadmap-vision-meta-desc": "Áttekintő a frissítések Ethereumra gyakorolt hatásáról és a leküzdendő kihívásokról.", + "page-roadmap-vision-meta-title": "Az Ethereum jövőképe", + "page-roadmap-vision-mining": "A bányászatról bővebben", "page-roadmap-vision-problems": "A jelen problémái", "page-roadmap-vision-scalability": "Méretezhetőség", - "page-roadmap-vision-scalability-desc": "Az Ethereumnak több tranzakciót kell egy másodperc alatt feldolgoznia anélkül, hogy megnövelnénk a csomópontok méretét a hálózatban. A csomópontok létfontosságú hálózati elemek, melyek a blokkláncot tárolják és futtatják. A csomópont méretének növelése nem praktikus, mert csak az erős és drága számítógépekkel rendelkezők képesek erre. Ahhoz, hogy méretezhető legyen, az Ethereumnak több tranzakciót kell feldolgoznia egy másodperc alatt további csomópontokkal egyesülve. Több csomópont nagyobb biztonságot jelent.", - "page-roadmap-vision-scalability-desc-3": "A shard lánc fejlesztés a hálózati terhelést 64 új láncon fogja eloszlatni. Ez levegőhöz juttatja az Ethereumot a torlódás csökkentésével és tovább növeli a sebességet a jelenlegi 15-45 tranzakció per másodpercenkénti határon túl.", - "page-roadmap-vision-scalability-desc-4": "És annak ellenére, hogy több lánc lesz, ez valójában kevesebb munkát fog igényelni a validátorok - hálózat fenntartói - részéről. A validátoroknak csak a saját shardjukat kell 'futtatni' és nem a teljes Ethereum láncot. Ez a csomópontokat könnyűvé teszi és lehetővé teszi az Ethereum számára, hogy méretezhető legyen és megmaradjon decentralizáltnak.", + "page-roadmap-vision-scalability-desc": "Az Ethereumnak másodpercenként több tranzakciót kell tudni feldolgozni anélkül, hogy megnövelnénk a hálózati csomópontok méretét. A csomópontok létfontosságú hálózati elemek, amelyek a blokkláncot tárolják és futtatják. A csomópont méretének növelése nem praktikus, mert csak az erős és drága számítógépekkel rendelkezők lennének képesek erre. Ahhoz, hogy méretezhető legyen, az Ethereumnak másodpercenként több tranzakciót kell tudnia feldolgozni, és több csomóponttal kell rendelkeznie. A több csomópont nagyobb biztonságot jelent.", + "page-roadmap-vision-scalability-desc-3": "Az L2 összevont tranzakciók skálázzák az Ethereumot azáltal, hogy a tranzakciókat a láncon kívül kezelik, és csak azok összegzését küldik be az Ethereumra. Ez a kötegelés megnöveli a hálózat tranzakcióátvitelét, közben drasztikusan csökkenti a felhasználók költségeit.", + "page-roadmap-vision-scalability-desc-4": "A összevont tranzakcióknak alacsony költségű tárolási megoldásra van szükségük az L1-en, hogy a lehető legolcsóbb tranzakciós díjat tudják kínálni. Ezt blobok formájában kapják meg, amelyek az Ethereum-blokkokhoz kapcsolódnak. Végül számos blob lesz az Ethereum-blokkhoz csatolva, hogy az összevont tranzakcióknak olcsó tárhelyet biztosítson.", "page-roadmap-vision-security": "Biztonság", - "page-roadmap-vision-security-desc": "Az Eth2 fejlesztések növelni fogják az Ethereum biztonságát irányított támadásokkal szemben, mint például az 51%-os támadás. Ez egy olyan támadás, amikor valaki a hálózat többségét irányítja és hamis változtatásokat tud megvalósítani.", - "page-roadmap-vision-security-desc-3": "A proof-of-stake-be történő átmenet azt jelenti, hogy az Ethereum protokollnak nagyobb eltántorító tényezői vannak a támadásokkal szemben. Ennek az az oka, hogy a proof-of-stake esetében a hálózatot biztonságban tartó validátoroknak egy jelentős mennyiségű ETH-et kell letenniük a protokollba. Ha megpróbálják megtámadni a hálózatot, a protokoll automatikusan elpusztíthatja az ETH-üket.", - "page-roadmap-vision-security-desc-5": "Ez nem lehetséges a proof-of-work esetében, ahol legjobb esetben a protokoll kényszerítheti a hálózatot biztosító szereplőket (bányászokat), hogy elveszítsék a bányászati jutalékot, amit egyébként megkaptak volna. Hogy azonos hatást érjünk el a proof-of-worknél, a protokollnak el kellene pusztítania a bányász teljes felszerelését, ha megpróbál csalni.", - "page-roadmap-vision-security-desc-5-link": "Többet a proof-of-work-ről", - "page-roadmap-vision-security-desc-10": "A staking azt is jelenti, hogy nem kell elit hardverbe fektetned, hogy egy Ethereum csomópontot 'futtass'. Ez több embert bátoríthat arra, hogy validátorok legyenek, megnövelve ezzel a hálózat decentralizáltságát és csökkentve a támadási felületet.", + "page-roadmap-vision-security-desc": "A tervezett frissítések fokozzák az Ethereum védelmét a koordinált támadásokkal szemben.", + "page-roadmap-vision-security-desc-3": "A proof-of-stake mechanizmusnál a nagyobb biztonságot a támadások ellen ható nagyobb kriptogazdasági ösztönzők adják. Ennek az az oka, hogy a proof-of-stake esetében a hálózatot biztonságban tartó validátoroknak jelentős mennyiségű ETH-t kell letétbe helyezniük a protokollban. Ha megpróbálják megtámadni a hálózatot, a protokoll automatikusan megsemmisítheti az ETH-jukat.", + "page-roadmap-vision-security-desc-5": "Ugyanakkor az is fontos, hogy olyan frissítések vannak kilátásban a közeljövőben, amelyek megvédik a validátorokat a szolgáltatásmegtagadással járó támadások ellen, fokozzák az anonimitásukat, és elválasztják a blokképítést a blokkpropagálástól. Ezek a frissítések az egyes validátorokat és a hálózat egészét is védik a liveness támadásoktól és a cenzúrától.", + "page-roadmap-vision-security-desc-5-link": "A proof-of-stake-ről bővebben", + "page-roadmap-vision-security-desc-10": "A letétbe helyezés azt is jelenti, hogy nem kell csúcstechnológiás hardverbe fektetnie, hogy közvetlenül részt vehessen a konszenzusban. Ez több embert bátoríthat arra, hogy validátorrá váljon, megnövelve ezzel a hálózat decentralizáltságát és csökkentve a támadási felületet.", "page-roadmap-vision-security-staking": "ETH letétbe helyezése", - "page-roadmap-vision-security-validator": "Az ETH-ed letétbe helyezésével validátor lehetsz.", + "page-roadmap-vision-security-validator": "ETH letétbe helyezésével Ön is lehet validátor.", "page-roadmap-vision-staking-lower": "Többet a letétbe helyezésről", - "page-roadmap-vision-subtitle": "Addig fejleszteni az Ethereumot, amíg elég erős nem lesz, hogy az egész emberiséget szolgálja.", + "page-roadmap-vision-subtitle": "Addig fejlesztjük az Ethereumot, amíg elég erős nem lesz, hogy az egész emberiséget szolgálja.", "page-roadmap-vision-sustainability": "Fenntarthatóság", - "page-roadmap-vision-sustainability-desc-1": "Nem titok, hogy az Ethereum és más blokkláncok, mint a Bitcoin, energiaintenzívek a bányászat miatt.", - "page-roadmap-vision-sustainability-desc-2": "De az Ethereum az ETH-el történő biztonság irányába tart, nem pedig a számítási erővel - a staking által.", - "page-roadmap-vision-sustainability-desc-3": "Bár a stakinget a Beacon Chain vezeti be, az általunk használt Ethereum egy ideig párhuzamosan fog futni, mielőtt „összeolvadna” vagy „dokkolna” az Eth2 frissítésekkel. Az egyik rendszert ETH tartja biztonságban, a másikat számítási erő. Ez azért van, mert eleinte a shard láncok nem fogják tudni kezelni például a számláinkat vagy dappokat. Tehát nem feledkezhetünk meg a bányászatról és a főhálózatról.", - "page-roadmap-vision-sustainability-desc-8": "Amint a Beacon Chain és a sharding fejlesztések működnek, elkezdődik a főhálózat bedokkolásával kapcsolatos munka az új rendszerrel. Ez a főhálózatot egy sharddá alakítja, amit így ETH fog biztonságban tartani és kevésbé lesz energiaintenzív.", - "page-roadmap-vision-sustainability-subtitle": "Az Ethereumnak zöldebbnek kell lennie.", - "page-roadmap-vision-title": "Az Eth2 vízió", - "page-roadmap-vision-title-1": "Feltorlódott hálózat", + "page-roadmap-vision-sustainability-desc-1": "Az Ethereum most már zöld blokklánc. Az energiafelhasználás nagyjából 99,95%-kal csökkent, amikor a proof-of-work mechanizmust leváltották proof-of-stake-re.", + "page-roadmap-vision-sustainability-desc-2": "Az Ethereum biztonságát most már letétbe helyezéssel biztosítják, nem pedig számítási teljesítménnyel.", + "page-roadmap-vision-sustainability-desc-3": "Ez a fenntarthatósági fejlődés biztonsági előnyökkel is jár. A letétbe helyezett Ether sokkal drágábbá teszi a lánc megtámadását, mint amilyen a proof-of-work mechanizmus idején volt, ám a hálózat biztosítása sokkal kevesebbe kerül, mivel sokkal kevesebb új ETH-t kell kibocsátani a validátorok kifizetéséhez, mint amennyi a bányászokhoz kellett.", + "page-roadmap-vision-sustainability-desc-8": "A váltás a proof-of-stake mechanizmusra zöldebbé és biztonságosabbá tette az Ethereumot. Most már egy alacsony kibocsátású platform, amelyen alkalmazások és szervezetek építhetők.", + "page-roadmap-vision-sustainability-subtitle": "Az Ethereum egy zöld blokklánc, erős kriptogazdaság-védelemmel.", + "page-roadmap-vision-title": "Az Ethereum jövőképe", + "page-roadmap-vision-title-1": "Bedugult hálózat", "page-roadmap-vision-title-2": "Lemezterület", "page-roadmap-vision-title-3": "Túl sok energia", - "page-roadmap-vision-trilemma-cardtext-1": "Az Eth2 fejlesztések az Ethereumot méretezhetővé, biztonságossá és decentralizálttá fogják tenni. A sharding skálázhatóbbá teszi az Ethereumot a másodpercenkénti tranzakciók növelésével mindemellett csökkentve a csomópont futtatásához és a lánc validálásához szükséges erőt. A Beacon Chain biztonságossá teszi az Ethereumot a validátorok koordinálásával a shardokon keresztül. A staking pedig csökkenti a részvétel akadályait, ezzel egy nagyobb - decentralizáltabb - hálózatot teremtve.", - "page-roadmap-vision-trilemma-cardtext-2": "A biztonságos és decentralizált blokklánc hálózatok összes csomópontjának a lánc által feldolgozott összes tranzakciót ellenőrizniük kell. A munka mennyisége behatárolja a tranzakciók számát, melyek egy adott időben történnek. A decentralizáltság és biztonság a mai Ethereumot tükrözi.", - "page-roadmap-vision-trilemma-cardtext-3": "A decentralizált hálózatok úgy működnek, hogy információkat küldenek a csomópontokon keresztül a tranzakciókról - az egész hálózatnak tudnia kell minden állapotváltozásról. A másodpercenkénti tranzakciók skálázhatósága egy decentralizált hálózatnál biztonsági kockázatot jelent, mivel minél több a tranzakció, annál nagyobb a késés és annál nagyobb a támadás valószínűsége, mialatt az információ még nem ért célba.", - "page-roadmap-vision-trilemma-cardtext-4": "Az Ethereum csomópontok méretének és teljesítményének növelése biztonságos módon növelheti a másodpercenkénti tranzakciókat, de a hardverigény korlátozná, hogy ki teheti meg - ez fenyegeti a decentralizációt. Abban reménykedünk, hogy a sharding és a proof-of-stake lehetővé teszi majd az Ethereum méretezését a csomópontok mennyiségének növelésével, nem pedig a csomópont méretével.", + "page-roadmap-vision-trilemma-cardtext-1": "Az Ethereum fejlesztései skálázhatóvá, biztonságossá és decentralizálttá teszik a hálózatot. A letétbe helyezés (staking) csökkentette az akadályát a részvételnek és a behatárolt méretgazdaságosságnak, így nagyobb és decentralizáltabb hálózatot hozott létre.", + "page-roadmap-vision-trilemma-cardtext-2": "A biztonságos és decentralizált blokklánchálózatok az összes csomóponttól megkövetelik a lánc által feldolgozott összes tranzakció ellenőrzését. A munkamennyiség korlátozza az adott időegység alatt feldolgozható tranzakciók számát. A mai Ethereum-láncra a decentralizáltság és a biztonság jellemző.", + "page-roadmap-vision-trilemma-cardtext-3": "A decentralizált hálózatok úgy működnek, hogy információkat küldenek a tranzakciókról a csomópontokon keresztül – az egész hálózatnak tudnia kell minden állapotváltozásról. A másodpercenkénti tranzakciók méretezése egy decentralizált hálózatnál biztonsági kockázatot jelent, mivel minél több a tranzakció, annál nagyobb a késés, és annál nagyobb a támadás valószínűsége, mialatt az információ úton van.", + "page-roadmap-vision-trilemma-cardtext-4": "Az Ethereum-csomópontok méretének és teljesítményének növelése biztonságos módon növelheti a másodpercenkénti tranzakciók számát, de a hardverigény korlátozná a résztvevők körét – ez pedig fenyegeti a decentralizációt. Reményeink szerint a szilánkolás és a proof-of-stake segítségével az Ethereum a csomópontméret növelése helyett a csomópontok számának növelésével lesz méretezhető.", "page-roadmap-vision-trilemma-h2": "A decentralizált méretezés kihívása", - "page-roadmap-vision-trilemma-modal-tip": "Kattints a karikákra lentebb, hogy jobban megértsd a decentralizált méretezés problémáját", - "page-roadmap-vision-trilemma-p": "Az Ethereum problémáinak naív megoldása az lenne, ha centralizáltabbá tennénk. De a decentralizáció túlságosan fontos. A decentralizáltság adja az Ethereumnak a cenzúra-ellenállását, nyitottságát, adatvédelmét és a közel feltörhetetlen biztonságát.", - "page-roadmap-vision-trilemma-p-1": "Az Ethereum víziója, hogy skálázhatóbb és biztonságosabb legyen, de ugyanakkor megmaradjon decentralizáltnak. Ennek a 3 tulajdonságnak az elérését úgy hívjuk, hogy méretezhetőségi trilemma.", - "page-roadmap-vision-trilemma-p-2": "Az Eth2 fejlesztések a trilemma megoldását tűzték ki célul, de van egy pár jelentős kihívás.", - "page-roadmap-vision-trilemma-press-button": "Nyomd meg a gombokat a háromszögön, hogy jobban megértsd a decentralizált méretezés problémáit.", + "page-roadmap-vision-trilemma-modal-tip": "Kattintson a lenti karikákra, hogy jobban megértse a decentralizált méretezés problémáját", + "page-roadmap-vision-trilemma-p": "Naiv megoldás lenne az Ethereum problémáira, ha centralizáltabbá tennénk, a decentralizáció túlságosan is fontos. A decentralizáció adja az Ethereum cenzúrával szembeni ellenálló képességét, nyitottságát, adatvédelmét és a közel feltörhetetlen biztonságát.", + "page-roadmap-vision-trilemma-p-1": "Az Ethereum víziója, hogy méretezhetőbb és biztonságosabb legyen, de ugyanakkor megőrizze a decentralizáltságát. A felsorolt 3 tulajdonság elérésének problematikáját úgy hívjuk, hogy méretezhetőségi trilemma.", + "page-roadmap-vision-trilemma-p-2": "Az Ethereum frissítések célja a trilemma megoldása, de van néhány jelentős kihívás.", + "page-roadmap-vision-trilemma-press-button": "Nyomja meg a háromszögön található gombokat, hogy jobban megismerje a decentralizált méretezés problémáját.", "page-roadmap-vision-trilemma-text-1": "Decentralizáció", "page-roadmap-vision-trilemma-text-2": "Biztonság", "page-roadmap-vision-trilemma-text-3": "Méretezhetőség", - "page-roadmap-vision-trilemma-title-1": "Fedezd fel a méretezhetőségi trilemmát", - "page-roadmap-vision-trilemma-title-2": "Eth2 fejlesztések és decentralizált méretezés", + "page-roadmap-vision-trilemma-title-1": "Fedezze fel a méretezhetőségi trilemmát", + "page-roadmap-vision-trilemma-title-2": "Ethereum-frissítések és decentralizált méretezés", "page-roadmap-vision-trilemma-title-3": "Biztonságos és decentralizált", "page-roadmap-vision-trilemma-title-4": "Decentralizált és méretezhető", "page-roadmap-vision-trilemma-title-5": "Méretezhető és biztonságos", - "page-roadmap-vision-understanding": "Az Eth2 vízió megértése", - "page-roadmap-vision-upgrade-needs": "Az Eth2 fejlesztések szükségessége", - "page-roadmap-vision-upgrade-needs-desc": "A 2015-ben indult Ethereum protokollnak elképesztő sikere lett. De az Ethereum közösség mindig is arra számított, hogy egy pár kulcsfontosságú fejlesztésre lesz szükség, hogy az Ethereum teljes potenciálját elérjük.", - "page-roadmap-vision-upgrade-needs-desc-2": "A magas kereslet felfelé hajtja a tranzakciós díjakat, ami az Ethereumot drágává teszi az átlag felhasználó számára. Az Ethereum klienshez szükséges lemezterület nagy ütemben nő. És a mögöttes proof-of-work konszenzus algoritmusnak, mely az Ethereum biztonságát és decentralizáltságát biztosítja, nagy a környezeti hatása.", - "page-roadmap-vision-upgrade-needs-desc-3": "Amire gyakran Eth2-ként hivatkozunk, gyakorlatilag egy fejlesztéssorozat, mely ezeket a problémákat orvosolja és még ennél is többet. Ezt a fejlesztési halmazt eredetlieg 'Serenity-nek' hívták, és már 2014-től aktív területe a kutatásnak és fejlesztésnek.", - "page-roadmap-vision-upgrade-needs-desc-5": "Most, hogy a technológia készen áll, ezek a fejlesztések át fogják alakítani az Ethereumot, hogy méretezhetőbb, biztonságosabb és fenntarthatóbb legyen - hogy jobbá tegyék a jelenlegi és új felhasználók életét. Mindezt úgy, hogy megőrizzék az Ethereum belső decentralizáltági értékét.", - "page-roadmap-vision-upgrade-needs-desc-6": " Ez azt jelenti, hogy az Eth2-n nincs bekapcsoló gomb. A fejlesztések egyesével fognak megérkezni idővel.", - "page-roadmap-vision-upgrade-needs-serenity": "Egy 2015-ös blog poszt megtekintése a 'Serenity-ről'", - "ethereum": "Ethereum" + "page-roadmap-vision-understanding": "Az Ethereum jövőképének megértése", + "page-roadmap-vision-upgrade-needs": "A frissítések szükségessége", + "page-roadmap-vision-upgrade-needs-desc": "A 2015-ben indult Ethereum-protokollnak elképesztő sikere lett. De az Ethereum-közösség mindig is számított arra, hogy néhány kulcsfontosságú fejlesztésre szükség lesz, hogy kibontakozhasson az Ethereumban rejlő potenciál.", + "page-roadmap-vision-upgrade-needs-desc-2": "A nagy kereslet felhajtja a tranzakciós díjakat, ami az átlagfelhasználó számára drágává teszi az Ethereumot. Az Ethereum-kliens futtatásához szükséges lemezterület nagysága nagy ütemben nő.", + "page-roadmap-vision-upgrade-needs-desc-3": "Az Ethereum rendelkezésére álló frissítéscsomagja többek között ezeket a problémákat is orvosolja. Ez a frissítési halmaz eredetileg a „Serenity” és az „Eth2” nevet viselte, és már 2014-től aktív területe a kutatásnak és fejlesztésnek.", + "page-roadmap-vision-upgrade-needs-desc-5": "Most, hogy a technológia készen áll, ezek a fejlesztések át fogják strukturálni az Ethereumot, hogy méretezhetőbb, biztonságosabb és fenntarthatóbb legyen – hogy jobbá tegye a jelenlegi felhasználók életét és új felhasználókat vonzzon be. Mindezt úgy, hogy megőrizze az Ethereum decentralizáltságának alapértékét.", + "page-roadmap-vision-upgrade-needs-desc-6": "Ez azt jelenti, hogy a méretezhetőségnek nincs bekapcsológombja. A fejlesztések az idő előrehaladtával, fokozatosan érkeznek majd.", + "page-roadmap-vision-upgrade-needs-serenity": "Tekintse meg ezt a 2015-ös blogposztot a „Serenityről”", + "ethereum": "Ethereum", + "page-roadmap-vision-danksharding": "Bővebben a Dankshardingról" } diff --git a/src/intl/hu/page-stablecoins.json b/src/intl/hu/page-stablecoins.json index 3b286578909..184548303f9 100644 --- a/src/intl/hu/page-stablecoins.json +++ b/src/intl/hu/page-stablecoins.json @@ -128,6 +128,7 @@ "page-stablecoins-stablecoins-table-type-fiat-backed": "Fiat", "page-stablecoins-stablecoins-table-type-precious-metals-backed": "Nemesfémek", "page-stablecoins-table-error": "Nem lehet betölteni a stabil érméket. Próbálja meg frissíteni az oldalt.", + "page-stablecoins-table-loading": "Stabilérmeadatok betöltése...", "page-stablecoins-title": "Stabil érmék", "page-stablecoins-top-coins": "Legfontosabb stabil érmék piaci kapitalizáció alapján", "page-stablecoins-top-coins-intro": "A piaci kapitalizáció", diff --git a/src/intl/hu/page-upgrades-get-involved.json b/src/intl/hu/page-upgrades-get-involved.json index 0325a5cf9d7..82f1c5a9d62 100644 --- a/src/intl/hu/page-upgrades-get-involved.json +++ b/src/intl/hu/page-upgrades-get-involved.json @@ -1,41 +1,47 @@ { "page-upgrades-get-involved-btn-1": "Kliensek megtekintése", - "page-upgrades-get-involved-btn-2": "Többet a stakingről", - "page-upgrades-get-involved-btn-3": "Találj bugokat", - "page-upgrades-get-involved-bug": "Egy bug lehet:", - "page-upgrades-get-involved-bug-hunting": "Menj bug vadászatra", - "page-upgrades-get-involved-bug-hunting-desc": "Keress és jelents bugokat az Eth2 fejlesztési specifikációban vagy magukban a kliensekben. Akár 50 000 USD-t is nyerhetsz és szerepelhetsz ranglistán.", - "page-upgrades-get-involved-bug-li": "specifikáció nem-megfelelési problémák", - "page-upgrades-get-involved-bug-li-2": "véglegesítést megakadályozó bugok", - "page-upgrades-get-involved-bug-li-3": "szolgáltatásmegtagadás (DOS) vektorok", - "page-upgrades-get-involved-bug-li-4": "és még sok más...", - "page-upgrades-get-involved-desc-1": "Egy kliens futtatása azt jelenti, hogy aktív résztvevője vagy az Ethereumnak. A kliensed segíteni fog tranzakciók feljegyzésében és az új blokkok ellenőrzésében.", - "page-upgrades-get-involved-desc-2": "Ha van ETH-ed, akkor letétbe helyezheted, validátorrá válhatsz és segíthetsz biztonságossá tenni a hálózatot. Validátorként ETH jutalmakat kaphatsz.", - "page-upgrades-get-involved-desc-3": "Csatlakozz a közösségi tesztelési kezdeményezéshez! Segíts letesztelni az Eth2 fejlesztéseket mielőtt bevezetnék őket, találj bugokat és szerezz jutalmakat.", + "page-upgrades-get-involved-btn-2": "Többet a letétbe helyezésről", + "page-upgrades-get-involved-btn-3": "Találjon hibákat", + "page-upgrades-get-involved-bug": "Hiba lehet például:", + "page-upgrades-get-involved-bug-hunting": "Menjen hibavadászatra", + "page-upgrades-get-involved-bug-hunting-desc": "Keresse és jelentse a hibákat a konszenzusréteg frissítési specifikációban vagy magukban a kliensekben. Akár 50 000 USD-t is nyerhet, és szerepelhet a ranglistán.", + "page-upgrades-get-involved-bug-li": "specifikáció – megfelelőségi problémák", + "page-upgrades-get-involved-bug-li-2": "véglegességet megtörő hibák", + "page-upgrades-get-involved-bug-li-3": "szolgáltatásmegtagadási (DOS) vektorok", + "page-upgrades-get-involved-bug-li-4": "és még sok mást...", + "page-upgrades-get-involved-desc-1": "Egy kliens futtatása azt jelenti, hogy Ön aktív résztvevője az Ethereumnak. A kliense segít a tranzakciók feljegyzésében és az új blokkok ellenőrzésében.", + "page-upgrades-get-involved-desc-2": "Ha van ETH-ja, akkor letétbe helyezheti, validátorrá válhat, és segíthet biztosítani a hálózatot. Validátorként ETH-jutalmakat kaphat.", + "page-upgrades-get-involved-desc-3": "Csatlakozzon a közösségi tesztelési kezdeményezéshez! Segítsen tesztelni az Ethereum frissítéseit a bevezetésük előtt, találjon hibákat, és szerezzen jutalmakat.", "page-upgrades-get-involved-ethresearch-1": "Sharding", - "page-upgrades-get-involved-ethresearch-2": "Eth1 és Eth2 átmenet", - "page-upgrades-get-involved-ethresearch-3": "Shardok és az állapot végrehajtás", - "page-upgrades-get-involved-ethresearch-4": "Minden kutatási téma", - "page-upgrades-get-involved-how": "Hogyan szeretnél bevonódni?", - "page-upgrades-get-involved-how-desc": "Az Ethereum közösség mindig szívesen veszi ha többen futtatnak klienseket, stakelnek és bugokat vadásznak.", - "page-upgrades-get-involved-join": "Csatlakozz a kutatáshoz", - "page-upgrades-get-involved-join-desc": " Mint a legtöbb dolog az Ethereumnál, a kutatás nagy része nyilvános. Ez azt jelenti, hogy részt vehetsz a vitákban vagy átolvashatod az Ethereum kutatók munkáit. Az ethresear.ch többet fed le, mint az Eth2 fejlesztések, de az Eth2 nagyobb fókuszban van.", - "page-upgrades-get-involved-meta-description": "Hogy vehetsz részt az Eth2-ben: futtass node-ot, stakelj, keress bugokat vagy más egyebet.", - "page-upgrades-get-involved-run-clients": "Futtass beacon chain klienseket", - "page-upgrades-get-involved-run-clients-desc": "Az Ethereum hosszútávú biztonságához kulcsfontosságú a kliensek erős eloszlása. A kliens egy szoftver, mely a blokkláncot futtatja, ellenőrzi a tranzakciókat és az újonnan létrehozott blokkokat. Minden kliens egyedi tulajdonságokkal rendelkezik, úgyhogy olyat válassz, mellyel elboldogulsz.", - "page-upgrades-get-involved-stake": "Stakeld az ETH-ed", - "page-upgrades-get-involved-stake-desc": "Mostantól letétbe helyezheted az ETH-edet a beacon chain biztonságossá tételéhez.", + "page-upgrades-get-involved-ethresearch-2": "A beolvadás", + "page-upgrades-get-involved-ethresearch-3": "Szilánkolt végrehajtás", + "page-upgrades-get-involved-ethresearch-4": "Összes kutatási téma", + "page-upgrades-get-involved-how": "Hogyan szeretne bekapcsolódni?", + "page-upgrades-get-involved-how-desc": "Az Ethereum-közösségnek mindig jól jön, ha többen futtatnak klienseket, letétbe helyeznek és hibákra vadásznak.", + "page-upgrades-get-involved-join": "Csatlakozzon a kutatáshoz", + "page-upgrades-get-involved-join-desc": "Mint a legtöbb dolog az Ethereumnál, a kutatás nagy része is nyilvános. Ez azt jelenti, hogy Ön részt vehet a vitákban, illetve átolvashatja az Ethereum kutatóinak munkáit. Az ethresear.ch számos témát lefed, például a konszenzusfrissítéseket, az összevont tranzakciókat stb.", + "page-upgrades-get-involved-meta-description": "Hogyan vehet részt az Ethereum frissítésekben: futtasson csomópontot, helyezzen letétbe ETH-t, keressen hibákat stb.", + "page-upgrades-get-involved-run-clients": "Futtasson klienspárt", + "page-upgrades-get-involved-run-clients-desc": "A „kliens” egy szoftver, amely a blokkláncot futtatja. Az Ethereum esetében egy teljes csomóponthoz két klienst szükséges futtatni: egy végrehajtásiréteg-klienst és egy konszenzusréteg-klienst. A teljes csomópont képes ellenőrizni a tranzakciókat, és ha ETH-letét is rendelkezésre áll, akkor új blokkokat is létrehozhat. Minden kliensnek megvannak a maga sajátosságai, de összességében ugyanazokat a funkciókat látják el, ezért arra biztatunk mindenkit, hogy a sokszínű biztonságos kliensállomány érdekében, amikor csak lehet, válasszon kevésbé használt klienst.", + "page-upgrades-get-involved-run-clients-desc-link": "A kliensdiverzitásról bővebben.", + "page-upgrades-get-involved-run-clients-execution": "Végrehajtásiréteg-kliensek", + "page-upgrades-get-involved-run-clients-execution-desc": "Ezeket a klienseket korábban „Eth1” klienseknek nevezték, ám ezt a kifejezést kiszorította a „végrehajtásiréteg-kliens” elnevezés.", + "page-upgrades-get-involved-run-clients-consensus": "Konszenzusréteg-kliensek", + "page-upgrades-get-involved-run-clients-consensus-desc": "Ezeket a klienseket korábban „Eth2” klienseknek nevezték, ám ezt a kifejezést kiszorította a „konszenzusréteg-kliens” elnevezés.", + "page-upgrades-get-involved-stake": "Helyezze letétbe a rendelkezésére álló ETH-t", + "page-upgrades-get-involved-stake-desc": "Mostantól az ETH-ja letétbe helyezésével hozzájárulhat a beacon lánc biztonságához.", "page-upgrades-get-involved-stake-eth": "ETH letétbe helyezése", - "page-upgrades-get-involved-subtitle": "Itt van minden, amivel az Ethereumot és a jövőbeli Eth2-höz kapcsolódó erőfeszítéseket segítheted.", - "page-upgrades-get-involved-title-1": "Futtass klienst", - "page-upgrades-get-involved-title-2": "Stakeld az ETH-ed", - "page-upgrades-get-involved-title-3": "Találj bugokat", - "page-upgrades-get-involved-written-go": "Go-ban írva", - "page-upgrades-get-involved-written-java": "Java-ban írva", - "page-upgrades-get-involved-written-javascript": "JavaScript-ben írva", - "page-upgrades-get-involved-written-nim": "Nim-ben írva", - "page-upgrades-get-involved-written-rust": "Rust-ban írva", - "page-upgrades-get-involved": "Vegyél részt az Eth2-ben", - "page-upgrades-get-involved-2": "Kapcsolódj be", - "page-upgrades-bug-bounty-leaderboard-points": "pontok" + "page-upgrades-get-involved-subtitle": "Itt megtalál mindent, amivel az Ethereumot és a jövőbeni frissítésekhez kapcsolódó erőfeszítéseket segítheti.", + "page-upgrades-get-involved-title-1": "Futtasson egy klienst", + "page-upgrades-get-involved-title-2": "Helyezze letétbe a rendelkezésére álló ETH-t", + "page-upgrades-get-involved-title-3": "Találjon hibákat", + "page-upgrades-get-involved-written-c-sharp": "C# programnyelven írva", + "page-upgrades-get-involved-written-go": "Go programnyelven írva", + "page-upgrades-get-involved-written-java": "Java programnyelven írva", + "page-upgrades-get-involved-written-javascript": "JavaScript programnyelven írva", + "page-upgrades-get-involved-written-nim": "Nim programnyelven írva", + "page-upgrades-get-involved-written-rust": "Rust programnyelven írva", + "page-upgrades-get-involved": "Vegyen részt az Ethereum frissítésében", + "page-upgrades-get-involved-2": "Kapcsolódjon be", + "page-upgrades-bug-bounty-leaderboard-points": "pontszám" } diff --git a/src/intl/hu/page-upgrades-index.json b/src/intl/hu/page-upgrades-index.json index 00c8d19db84..0cdde8ba6bf 100644 --- a/src/intl/hu/page-upgrades-index.json +++ b/src/intl/hu/page-upgrades-index.json @@ -1,145 +1,208 @@ { - "consensus-client-lighthouse-logo-alt": "Lighthouse logo", - "consensus-client-lodestar-logo-alt": "Lodestar logo", - "consensus-client-nimbus-logo-alt": "Nimbus logo", - "consensus-client-prysm-logo-alt": "Prysm logo", - "consensus-client-teku-logo-alt": "Teku logo", - "page-upgrades-answer-1": "Gondolj úgy az Eth2-re, mint egy fejlesztési sorozatra, melyeket a ma használt Ethereumhoz hozzáadunk, hogy tovább fejlesszük. Ezekbe a fejlesztésekbe beletartozik egy új lánc, melyet Beacon Chainnek nevezünk és további 64 lánc, melyeket shardoknak nevezünk.", - "page-upgrades-answer-2": "Ezek a ma használt Ethereum főhálózattól különállóak, de nem fogják helyettesíteni azt. Ehelyett a főhálózat bedokkol vagy 'beolvad' ebbe a párhuzamos rendszerbe, melyet idővel hozzáadunk.", - "page-upgrades-answer-4": "Más szavakkal az Ethereum, amit ma használunk, végül megtestesíti mindazon tulajdonságokat, melyeket az Eth2 vízióval elérni szeretnénk.", - "page-upgrades-beacon-chain-date": "A Beacon Chain 2020. december 1.-ején lépett életbe.", - "page-upgrades-beacon-chain-desc": "Az ökoszisztéma első Eth2 kiegészítője. A Beacon Chain elhozza a letétbe helyezést az Ethereumra, lefekteti a jövő fejlesztéseinek alapjait és az új rendszert fogja koordinálni végül.", - "page-upgrades-beacon-chain-estimate": "A Beacon Chain életbe lépett", + "consensus-client-besu-logo-alt": "A Besu logója", + "consensus-client-erigon-logo-alt": "Az Erigon logója", + "consensus-client-geth-logo-alt": "A Geth logója", + "consensus-client-lighthouse-logo-alt": "A Lighthouse logója", + "consensus-client-lodestar-logo-alt": "A Lodestar logója", + "consensus-client-nethermind-logo-alt": "A Nethermind logója", + "consensus-client-nimbus-logo-alt": "A Nimbus logója", + "consensus-client-prysm-logo-alt": "A Prysm logója", + "consensus-client-teku-logo-alt": "A Teku logója", + "page-upgrades-answer-1": "A Beacon láncot arra használták, hogy az egyesítés (Merge) idején frissítsék az Ethereum fő hálózatát.", + "page-upgrades-answer-2": "Az egyesítéssel (Merge) az Ethereum eddigi legjelentősebb frissítését hajtották végre, felváltva az addig használt proof-of-work mechanizmust egy új, proof-of-stake alapú konszenzusrétegre.", + "page-upgrades-answer-4": "A Beacon láncot az Ethereum által most használt proof-of-stake alapú konszenzusmechanizmus kifejlesztéséhez használták. Az Ethereum fő hálózatától különválasztva futtatták, hogy a fejlesztők megfigyelhessék, hogyan működik önmagában a konszenzusmechanizmus, mielőtt valós tevékenység koordinálására használnák.", + "page-upgrade-article-author-status": "Állapot", + "page-upgrade-article-author-ethmerge": "Ethmerge", + "page-upgrade-article-author-alchemy": "Alchemy", + "page-upgrade-article-author-consensys": "Consensys", + "page-upgrade-article-author-delphi-digital": "Delphi Digital", + "page-upgrade-article-author-eip-4844": "Vitalik Buterin, Dankrad Feist, Diederik Loerakker, George Kadianakis, Matt Garnett, Mofi Taiwo", + "page-upgrade-article-author-ethereum-foundation": "Ethereum Alapítvány", + "page-upgrade-article-author-vitalik-buterin": "Vitalik Buterin", + "page-upgrade-article-author-ethos-dev": "Ethereum.org", + "page-upgrade-article-title-two-point-oh": "Kettő pont nulla: a Beacon lánc", + "page-upgrade-article-title-beacon-chain-explainer": "A Beacon lánc/Ethereum 2.0 leírása, amelyet először el kell olvasnia", + "page-upgrade-article-title-sharding-consensus": "Szilánkolási konszenzus", + "page-upgrade-article-title-sharding-is-great": "Miért remek dolog a szilánkolás: a műszaki tulajdonságok érthetőbbé tétele", + "page-upgrade-article-title-rollup-roadmap": "Összevonttranzakció-központú útiterv", + "page-upgrade-article-title-hitchhikers-guide-to-ethereum": "Ethereum útikalauz stopposoknak", + "page-upgrade-article-title-eip-4844": "EIP-4844: Shard Blob tranzakciók (Proto-Danksharding)", + "page-upgrade-article-title-proto-danksharding-faq": "Proto-Danksharding GYIK", + "page-upgrade-article-title-sharding-das": "Magyarázat a szilánkoláshoz és az adatelérhetőség-mintázáshoz (Data Availability Sampling – DAS)", + "page-upgrade-article-title-ethmerge": "Ethmerge", + "page-upgrade-article-title-merge-is-coming": "Jön az egyesítés (Merge)", + "page-upgrade-article-title-state-of-the-merge": "Hogy áll az egyesítés (Merge): friss hírek az Ethereum beolvadásról, vagyis a Proof-of-Stake 2022-es bevezetéséről", + "page-upgrade-article-title-ropsten-merge-testnet": "A Ropsten Merge tesztelőhálózat bejelentése", + "page-upgrade-article-title-execution-layer-specs": "Végrehajtási réteg – specifikáció", + "page-upgrade-article-title-consensus-layer-specs": "Konszenzusréteg – specifikáció", + "page-upgrade-article-title-engine-api-specs": "Motor-API – specifikáció", + "page-upgrades-beacon-chain-date": "A Beacon láncot 2020. december 1-jén élesítették", + "page-upgrades-beacon-chain-desc": "A Beacon lánc tette lehetővé a letétbe helyezést az Ethereumon, és lefektette az alapjait a jövőbeli frissítéseknek. Ez a lánc végzi az új, proof-of-stake Ethereum koordinálását.", + "page-upgrades-beacon-chain-estimate": "A Beacon lánc élesítése", "page-upgrades-beacon-chain-title": "A Beacon Chain", - "page-upgrades-bug-bounty": "Bug vadászati program megtekintése", - "page-upgrades-clients": "Eth2 kliensek megtekintése", - "page-staking-deposit-contract-title": "A letéti szerződés cím ellenőrzése", - "page-upgrades-dive": "Merülj el a vízióban", - "page-upgrades-dive-desc": "Hogyan tesszük az Ethereumot skálázhatóbbá, biztonságosabbá és fenttarthatóbbá? Mindezt úgy, hogy a legfontosabb Ethereum decentralizáltsági étosz megmarad.", - "page-upgrades-docking": "A dokkolás", - "page-upgrades-merge-answer-1": "A dokkolás az, amikor a főhálózat egy sharddá válik. Ez a shard láncok sikeres bevezetése után jön.", - "page-upgrades-merge-btn": "Többet a dokkolásról", - "page-upgrades-merge-desc": "Egy ponton a főhálózati Ethereumnak be kell majd “dokkolnia” vagy “olvadnia” a Beacon Chainbe. Ez lehetővé teszi majd a letétbe helyezést a teljes hálózatnak és az energia-intenzív bányászat végét jelenti.", - "page-upgrades-merge-estimate": "Becslés: 2022", - "page-upgrades-merge-mainnet": "Mi az a főhálózat?", + "page-upgrades-bug-bounty": "Hibavadász program megtekintése", + "page-upgrades-clients": "Tekintse meg a konszenzusos klienseket (korábbi nevükön „Eth2” kliensek)", + "page-staking-deposit-contract-title": "Ellenőrizze a letéti szerződéscímet", + "page-upgrades-dive": "Merüljön el a jövőképben", + "page-upgrades-dive-desc": "Hogyan tesszük az Ethereumot méretezhetőbbé, biztonságosabbá és fenntarthatóbbá? Mindezt úgy, hogy közben megtartjuk az Ethereum lényegét képező decentralizáltságot.", + "page-upgrades-docking": "A beolvadás", + "page-upgrades-merge-answer-1": "Az egyesítés (Merge) volt az az esemény, amely során az Ethereum 2022. szeptember 15-én áttért a proof-of-stake konszenzusmechanizmusra. A Beacon lánc összeolvadt a fő lánccal, ezzel hivatalosan is megszüntetve a proof-of-work használatát Ethereumon, és nagyjából 99,95%-kal csökkentve az Ethereum energiafelhasználását.", + "page-upgrades-merge-btn": "A beolvadásról bővebben", + "page-upgrades-merge-desc": "Az Ethereum fő hálózata egyesült a proof-of-stake Beacon lánccal, ami az energiaintenzív bányászat végét jelentette.", + "page-upgrades-merge-estimate": "Megtörtént az egyesítés (Merge)", + "page-upgrades-merge-mainnet": "Mi az a fő hálózat?", "page-upgrades-eth-blog": "ethereum.org blog", - "page-upgrades-explore-btn": "Fejlesztések felfedezése", - "page-upgrades-get-involved": "Vegyél részt az Eth2-ben", - "page-upgrades-get-involved-2": "Kapcsolódj be", - "page-upgrades-head-to-ethresearch": "Irány a(z) ethresear.ch", - "page-upgrades-help": "Szeretnéd segíteni az Eth2-t?", - "page-upgrades-help-desc": "Rengeteg lehetőség adódik, hogy bekapcsolódj az Eth2 fejlesztésekbe, Segítsd a tesztelésben, és még díjakat is nyerhetsz.", - "page-upgrades-index-staking": "A letétbe helyezés megérkezett", - "page-upgrades-index-staking-desc": "Az Eth2 fejlesztések kulcsa a staking bevezetése. Ha szeretnéd az ETH-edet a hálózat biztonságának segítésére használni, akkor kövesd ezeket a lépéseket.", - "page-upgrades-index-staking-learn": "Tudj meg többet a staking-ről", - "page-upgrades-index-staking-learn-desc": "A Beacon Chain elhozza a letétbe helyezést az Ethereumra. Ez azt jelenti, hogy ha van ETH-ed, akkor közhasznú tevékenységként a hálózatot biztonságosabbá teheted és a folyamat közben több ETH-et szerezhetsz.", - "page-upgrades-index-staking-step-1": "1. Beállítás az indítópulttal", - "page-upgrades-index-staking-step-1-btn": "Staking indítópult meglátogatása", - "page-upgrades-index-staking-step-1-desc": "Ahhoz, hogy az Eth2-n stakelj az indítópultot kell használnod - ez végigkísér a folyamaton.", - "page-upgrades-index-staking-step-2": "2. Letéti cím megerősítése", - "page-upgrades-index-staking-step-2-btn": "Letéti szerződés cím megerősítése", - "page-upgrades-index-staking-step-2-desc": "Mielőtt letétbe raknád az ETH-edet, ellenőrizd, hogy a helyes címet használod-e. Először végig kell menned a indítópulton, mielőtt ezt megteszed.", + "page-upgrades-explore-btn": "Fedezze fel a frissítéseket", + "page-upgrades-get-involved": "Vegyen részt az Ethereum frissítésében", + "page-upgrades-get-involved-2": "Kapcsolódjon be", + "page-upgrades-head-to-ethresearch": "Látogasson el az ethresear.ch oldalra", + "page-upgrades-help": "Segítene az Ethereum-frissítéseknél?", + "page-upgrades-help-desc": "Rengeteg lehetőség adódik, hogy bekapcsolódjon az Ethereum-frissítésekbe, segítsen a tesztelésben, és még díjakat is nyerhet.", + "page-upgrades-index-staking": "A letétbe helyezés már elérhető", + "page-upgrades-index-staking-desc": "Az Ethereum-frissítések kulcsa a letétbe helyezés bevezetése. Ha szeretné az ETH-ját a hálózatbiztonság segítésére használni, akkor kövesse ezeket a lépéseket.", + "page-upgrades-index-staking-learn": "Tudjon meg többet a letétbe helyezésről", + "page-upgrades-index-staking-learn-desc": "A Beacon lánc elhozta a letétbe helyezést az Ethereumra. Ez azt jelenti, hogy ha van ETH-ja, akkor a közjó érdekében biztonságosabbá teheti a hálózatot, és közben még több ETH-et szerezhet.", + "page-upgrades-index-staking-step-1": "1. Beállítás az indítóállás segítségével", + "page-upgrades-index-staking-step-1-btn": "Nyissa meg a letétbehelyezési indítóállást", + "page-upgrades-index-staking-step-1-desc": "Az Ethereumon a letétbe helyezéshez az indítóállást kell használnia – az végigkíséri majd a folyamaton.", + "page-upgrades-index-staking-step-2": "2. Letétbehelyezési cím megerősítése", + "page-upgrades-index-staking-step-2-btn": "Ellenőrizze a letétbehelyezési szerződéscímet", + "page-upgrades-index-staking-step-2-desc": "Mielőtt letétbe helyezné az ETH-ját, ellenőrizze, hogy a helyes címet használja-e. Mielőtt ezt megtehetné, végig kell mennie az indítóállás beállításain.", "page-upgrades-index-staking-sustainability": "Fenntarthatóbb", - "page-upgrades-meta-desc": "Egy áttekintés az Ethereum 2.0 fejlesztésekről és a vízióról, amit szeretnénk megvalósítani.", - "page-upgrades-meta-title": "Az Eth2 fejlesztések", - "page-upgrades-proof-stake-link": "Többet a proof-of-stake-ről", - "page-upgrades-question-1-title": "Mikor vezetik be az Eth2-t?", - "page-upgrades-question-1-desc": "Az Eth2 különböző fejlesztésekből áll különböző bevezetési dátumokkal.", - "page-upgrades-question-2-title": "Az Eth2 egy különálló blokklánc?", - "page-upgrades-question-2-desc": "Nem teljesen pontos úgy gondolni az Eth2-re, mint egy különálló blokkláncra.", - "page-upgrades-question-3-answer-3-link": "ethresear.ch meglátogatása", - "page-upgrades-question-3-desc": "Jelenleg nem kell csinálnod semmit, hogy felkészülj az Eth2-re.", - "page-upgrades-question-3-title": "Hogyan készüljek fel az Eth2-re?", - "page-upgrades-question-4-answer-1": "Amikor ma elküldesz egy tranzakciót vagy egy dappot használsz, akkor az Eth1-et használod. Ez a bányászok által biztosított Ethereum.", - "page-upgrades-question-4-answer-3": "A dokkolás után validátorok fogják biztosítani a teljes hálózatot proof-of-stake-el.", - "page-upgrades-question-4-answer-6": "Bárki validátor lehet ETH letétbe helyezéssel.", + "page-upgrades-meta-desc": "Az Ethereum frissítések és a megvalósítani remélt jövőkép áttekintése.", + "page-upgrades-meta-title": "Ethereum frissítések (korábban „Eth2”)", + "page-upgrades-proof-stake-link": "A proof-of-stake-ről bővebben", + "page-upgrades-question-1-title": "Mikor lépnek életbe a frissítések?", + "page-upgrades-question-1-desc": "Az Ethereum frissítése lépésről lépésre történik. Különálló frissítésekből áll, eltérő bevezetési dátumokkal.", + "page-upgrades-question-2-title": "A Beacon lánc különálló blokklánc?", + "page-upgrades-question-2-desc": "Igen. A Beacon lánc az Ethereum fő hálózatának frissítéséhez használt párhuzamos proof-of-stake blokklánc neve. Most már csak egy blokklánc létezik, amely úgy jött létre, hogy eredeti Ethereum-blokklánc beolvadt a Beacon láncba.", + "page-upgrades-question-3-answer-2a": "Az egyesítés (Merge) minimális hatással volt a dapp-fejlesztőkre. Ők továbbra is változatlan módon kommunikálnak az Ethereummal.", + "page-upgrades-question-3-answer-2a-link": "Az egyesítés (Merge) és a dapp-fejlesztők", + "page-upgrades-question-3-answer-2b": "A szilánkolási tervek kidolgozása még folyamatban van, de 2. rétegű összevont tranzakciókkal számolva alakítják ki őket.", + "page-upgrades-layer-2-rollups": "A 2. rétegű összevont tranzakciókról bővebben", + "page-upgrades-question-3-answer-3-link": "Tovább az ethresear.ch oldalra", + "page-upgrades-question-3-desc": "Jelenleg semmit sem kell tennie, hogy felkészüljön a frissítésekre.", + "page-upgrades-question-3-title": "Hogyan készülhetek fel a frissítésekre?", + "page-upgrades-question-4-answer-1": "Ha ma tranzakciót kezdeményez vagy egy dappot használ, akkor a fő hálózatnak is nevezett végrehajtási réteget használja.", + "page-upgrades-question-4-answer-3": "Az egyesítés (Merge) óta a validátorok a proof-of-stake konszenzusmechanizmus útján biztosítják a teljes hálózatot.", + "page-upgrades-question-4-answer-6": "ETH letétbe helyezésével bárki lehet validátor.", "page-upgrades-question-4-answer-7": "Többet a letétbe helyezésről", - "page-upgrades-question-4-title": "Mi az az Eth1?", - "page-upgrades-question-4-desc": "Az Eth1 az Ethereum főhálózatra utal, amit ma is használsz.", - "page-upgrades-question-5-answer-1": "Hogy teljes validátorrá válhass, 32 ETH-et kell letétbe helyezned. Ha nincs olyan sok vagy nem szeretnél ennyit letenni, akkor csatlakozhatsz letéti alapokhoz. Ezek az alapok lehetővé teszik, hogy kevesebbet tegyél letétbe és az összes díjnak a töredékében részesülj.", - "page-upgrades-question-5-desc": "A staking indítópultot kell használnod, vagy csatlakoznod kell egy letéti alaphoz.", - "page-upgrades-question-5-title": "Hogyan helyezzek el letétet?", - "page-upgrades-question-6-answer-3": "Danny Ryan az Ethereum Alapítványtól rendszeres tájékoztatást nyújt a közösségnek:", - "page-upgrades-question-6-answer-4": "Ben Edgingtonnak a Consensystől vagy egy heti rendszerességű Eth2 hírlevele:", - "page-upgrades-question-6-answer-5": "Csatlakozhatsz az Eth2 kutatási és fejlesztési fórumhoz az ethresear.ch oldalon.", + "page-upgrades-question-4-title": "Mi az a végrehajtási réteg?", + "page-upgrades-question-4-desc": "Az egyesítés (Merge) előtt az Ethereum-blokkláncot „Eth1” néven is emlegették. Ezt a megnevezést szorította ki a „végrehajtási réteg” kifejezés.", + "page-upgrades-question-5-answer-1": "Hogy validátorrá válhasson, letétbe kell helyeznie 32 ETH-t. Ha nincs elegendő ETH-ja, vagy nem szeretne ennyit letétbe helyezni, akkor csatlakozhat letéti poolokhoz. Ezek az alapok lehetővé teszik, hogy kevesebbet tegyen letétbe, és cserébe a teljes díj törtrészét kapja meg.", + "page-upgrades-question-5-desc": "A letétbehelyezési indítóállást kell használnia, vagy csatlakoznia kell egy letéti poolhoz.", + "page-upgrades-question-5-title": "Hogyan történik a letétbe helyezés?", + "page-upgrades-question-6-answer-3": "Az Ethereum Alapítvány részéről Danny Ryan nyújt rendszeres tájékoztatást a közösségnek:", + "page-upgrades-question-6-answer-4": "A ConsenSys munkatársa, Ben Edgington heti hírlevelet készít az Ethereum-frissítésekkel kapcsolatban:", + "page-upgrades-question-6-answer-5": "Emellett csatlakozhat az Ethereum-kutatási és -fejlesztési fórumhoz is az ethresear.ch oldalon.", "page-upgrades-question-6-title": "Mit kell csinálnom a dappommal?", - "page-upgrades-question-6-desc": "A dappodra nem lesz hatással egyik közelgő frissítés sem. Azonban a jövőbeli fejlesztések szükségessé tehetnek egy pár változtatást.", - "page-upgrades-question-6-answer-1": "Egyelőre nincs semmi tennivaló. De azt ajánljuk, hogy légy naprakész a shard láncok és a dokkolás fejlesztéseivel.", - "page-upgrades-question-7-desc": "A közösség egészéből sok különböző csapat dolgozik a különféle Eth2 frissítéseken.", + "page-upgrades-question-6-desc": "Az egyesítést (Merge) úgy tervezték meg, hogy minimális hatást gyakoroljon a dapp-fejlesztőkre, azonban történt néhány említésre méltó változtatás.", + "page-upgrades-question-6-answer-1": "A beolvadás előtti Ethereumot ismerő dapp-fejlesztőknek tisztában kell lenniük néhány változással. Ezek közé sorolható a blokkstruktúra és -időzítés változása, néhány műveletikód-változás, a láncon belüli (on-chain) véletlenszerűség forrása és a korszak-véglegesítés koncepciója.", + "page-upgrades-question-6-answer-1-link": "Az egyesítés (Merge) hatása az Ethereum alkalmazási rétegére", + "page-upgrades-question-6-answer-2": "Az alkalmazások szinte teljesen érintetlenek maradtak.", + "page-upgrades-question-7-desc": "A közösség egészéből sok különböző csapat dolgozik a különféle Ethereum-frissítéseken.", "page-upgrades-question-7-lighthouse": "Lighthouse", - "page-upgrades-question-7-lighthouse-lang": "(Rust implementáció)", + "page-upgrades-question-7-lighthouse-lang": "(Rust-implementáció)", "page-upgrades-question-7-lodestar": "Lodestar", - "page-upgrades-question-7-lodestar-lang": "(JavaScript implementáció)", + "page-upgrades-question-7-lodestar-lang": "(JavaScript-implementáció)", "page-upgrades-question-7-nimbus": "Nimbus", - "page-upgrades-question-7-nimbus-lang": "(Nim implementáció)", + "page-upgrades-question-7-nimbus-lang": "(Nim-implementáció)", "page-upgrades-question-7-prysm": "Prysm", - "page-upgrades-question-7-prysm-lang": "(Go implementáció)", - "page-upgrades-question-7-teams": "Az Eth2 kliens csapatok:", + "page-upgrades-question-7-prysm-lang": "(Go-implementáció)", + "page-upgrades-question-7-teams": "Az Ethereum konszenzusoskliens-csapatai:", "page-upgrades-question-7-teku": "Teku", - "page-upgrades-question-7-teku-lang": "(Java implementáció)", - "page-upgrades-question-7-title": "Ki építi az Eth2-t?", - "page-upgrades-question-8-answer-1": "Az Eth2 fejlesztések az Ethereum decentralizált módon történő skálázhatóságában fognak segíteni a biztonság fenntartásával és a fenntarthatóság növelésével.", - "page-upgrades-question-8-answer-2": "Valószínűleg a legnyilvánvalóbb probléma az az, hogy az Ethereumnak 15-45 tranzakciónál többet kell tudnia kezelni másodpercenként. De az Eth2 fejlesztés az Ethereum más jelenlegi problémáját is orvosolja.", - "page-upgrades-question-8-answer-3": "A hálózat használatára nagy a kereslet, mely az Ethereum használatát megdrágítja. A hálózati csomópontok küszködnek az Ethereum mérete és az adatmennyiség miatt, melyet a számítógépeknek fel kell dolgozniuk. És a mögöttes algoritmus, mely biztonságossá és decentralizálttá teszi az Ethereumot, energiaintenzív és zöldebbnek kell lennie.", - "page-upgrades-question-8-answer-4": "Az Ethereum ütemterv egészen 2015-től sk változtatást tartalmazott. De a jelenlegi feltételek még inkább szükségesebbé teszik a frissítéseket.", - "page-upgrades-question-8-answer-6": "Fedezd fel az Eth2 víziót", - "page-upgrades-question-8-desc": "Az ma használt Ethereumnak jobb élményeket kell nyújtania a végfelhasználóknak és a hálózati szereplőknek.", - "page-upgrades-question-8-title": "Miért szükséges az Eth2?", - "page-upgrades-question-9-answer-1": "A legaktívabb szerep, amit elvállalhatsz az az ETH-ed letétbe helyezése.", - "page-upgrades-question-9-answer-2": "Esetleg futtathatsz egy második klienst javítva ezzel a kliens diverzitást.", - "page-upgrades-question-9-answer-3": "Ha technikásabb vagy, akkor segíthetsz megtalálni az új kliensek bugjait.", - "page-upgrades-question-9-answer-4": "Beszállhatsz a technikai beszélgetésbe az Ethereum kutatókkal az ethresear.ch oldalon.", - "page-upgrades-question-9-desc": "A közreműködéshez nem kell technikai tudás. A közösség mindenféle készségtől keres hozzájárulást.", + "page-upgrades-question-7-teku-lang": "(Java-implementáció)", + "page-upgrades-question-7-title": "Ki fejleszti Ethereum-frissítéseket?", + "page-upgrades-question-7-clients": "Tudjon meg többet az Ethereum-kliensekről", + "page-upgrades-question-8-answer-1": "Az Ethereum-frissítések segítik az Ethereum decentralizált méretezését, miközben megőrzik a hálózat biztonságát és fokozzák a fenntarthatóságát.", + "page-upgrades-question-8-answer-2": "A legnyilvánvalóbb probléma talán az, hogy az Ethereumnak másodpercenként 15–45 tranzakciónál többet kell tudnia kezelni. Ám a frissítések az Ethereum más aktuális problémáit is orvosolják.", + "page-upgrades-question-8-answer-3": "A hálózathasználat iránti igény növekedése megdrágítja az Ethereum használatát. Az Ethereum méretének és a számítógépes feldolgozással érintett adatok mennyiségének kezelése kihívást jelent a csomópontok számára. Az Ethereum biztonságának és decentralizációjának alapját képező eredeti algoritmus működése energiaintenzív volt, és zöldebbé kellett tenni.", + "page-upgrades-question-8-answer-4": "A most eszközölt változásokból sok olyan van, amely mindig is szerepelt az Ethereum útitervében, némelyik már 2015 óta. Ám a jelenlegi körülmények még inkább növelik a frissítések iránti igényt.", + "page-upgrades-question-8-answer-6": "Fedezze fel az Ethereum jövőképét", + "page-upgrades-question-8-desc": "A ma használt Ethereumnak jobb élményt kell nyújtania a végfelhasználók és a hálózati résztvevők számára.", + "page-upgrades-question-8-title": "Miért van szükség frissítésekre?", + "page-upgrades-question-9-answer-1": "Az Ön számára nyitva álló legaktívabb szerep az ETH-ja letétbe helyezése.", + "page-upgrades-question-9-answer-2": "A kliensdiverzitás elősegítése érdekében akár egy második klienst is futtathat.", + "page-upgrades-question-9-answer-3": "Ha erősebb a műszaki vénája, akkor segíthet a hibakeresésben az új klienseknél.", + "page-upgrades-question-9-answer-4": "Emellett az Ethereum-kutatók közötti szakmai párbeszédekben is részt vehet az ethresear.ch oldalon.", + "page-upgrades-question-9-desc": "A részvételhez nem szükséges műszaki tudás. A közösség bármilyen szakmai hátterű ember meglátásait szívesen fogadja.", "page-upgrades-question-9-stake-eth": "ETH letétbe helyezése", - "page-upgrades-question-9-title": "Hogyan tudok közreműködni az Eth2-höz?", + "page-upgrades-question-9-title": "Hogyan járulhatok hozzá az Ethereum-frissítésekhez?", + "page-upgrades-question-9-more": "Keressen általánosabb módot, hogy részt vehessen az Ethereum fejlesztésében", "page-upgrades-question-10-title": "Mik az Eth2 fázisai?", - "page-upgrades-question-10-desc": "A fázisok a munka fázisaihoz kapcsolódnak és az Eth2 műszaki ütemtervre fókuszálnak.", - "page-upgrades-question-10-answer-1": "Nem szívesen beszélünk túl sokat a műszaki ütemtervről, mert ez szoftver: a dolgok változhatnak. Úgy gondoljuk, hogy könnyebb megérteni, mi történik, ha elolvasod az eredményeket.", - "page-upgrades-question-10-answer-1-link": "Frissítések megtekintése", - "page-upgrades-question-10-answer-2": "De ha követted a beszélgetéseket, itt van, hogy hogy illenek a fejlesztések a műszaki ütemtervekbe.", - "page-upgrades-question-10-answer-3": "A Fázis 0 részletezi a Beacon Chain életbe léptetéséhez szükséges munkát.", - "page-upgrades-question-10-answer-5": "A műszaki ütemtervekben szereplő Fázis 1 a shard láncok implementálására fókuszál.", - "page-upgrades-question-10-answer-6": "A főhálózat dokkolása az Eth2-be a shard láncok megvalósítása érdekében végzett munka kiterjesztése, és a Fázis 1.5-ként emlegetik. De egy jelentős pillanat, mivel az Ethereum, ahogy ma ismerjük, összeolvad a többi Eth2 fejlesztéssel. Továbbá ez az a pillanat, amikor az Ethereum teljesen átáll proof-of-stake-re.", - "page-upgrades-question-10-answer-7": "Jelenleg nem teljes világos, hogy mi fog történni a Fázis 2 körül. Még mindig komoly kutatás és vita tárgyát képezi. Az eredeti terv az volt, hogy további extra funkciókkal látjuk el a shardokat, de lehet, hogy erre nem lesz szükség a rollup-centrikus ütemterv szerint.", - "page-upgrades-question-10-answer-8": "Többet a rollup-centrikus ütemtervről", + "page-upgrades-question-10-desc": "Néhány dolog megváltozott.", + "page-upgrades-question-10-answer-0": "Az „Eth2” megnevezés is eltűnik, mivel nem egyetlen frissítést vagy új hálózatot jelöl. Pontosabban fogalmazva több frissítésből álló eszköztárat jelent, amelyek mind hozzájárulnak ahhoz, hogy az Ethereum méretezhetőbb, biztonságosabb és fenntarthatóbb legyen. Az Ön által ismert és szeretett hálózat neve egyszerűen csak Ethereum.", + "page-upgrades-question-10-answer-1": "Nem szívesen beszélünk a kelleténél többet a műszaki útitervről, mivel ez egy szoftver, vagyis a dolgok változhatnak. Szerintünk a kimenetelekről olvasva könnyebb megérteni az eseményeket.", + "page-upgrades-question-10-answer-1-link": "A frissítések megtekintése", + "page-upgrades-question-10-answer-2": "Ám ha követte a beszélgetéseket, most megmutatjuk, hogyan illeszkednek a frissítések a műszaki útitervbe, és egy kis betekintést adunk a változásokba is.", + "page-upgrades-question-10-answer-3": "A 0. fázis ismertette azt a munkát, amely a Beacon lánc élesítéséhez kellett.", + "page-upgrades-question-10-answer-5": "Az 1. fázis eredetileg a láncszilánkok megvalósítására fókuszált, de aztán az egyesítés (Merge) lépett az első helyre, és 2022. szeptember 15-én meg is valósult.", + "page-upgrades-question-10-answer-6": "Az 1.5 fázis az eredeti tervek szerint a szilánkok bevezetését követte volna, amikor a fő hálózat utolsó szilánkként a Beacon lánchoz kerül. Azonban ahogy az összevonttranzakció-technológia fejlődött, az Ethereum-közösség inkább a proof-of-work mechanizmusról való áttérést gyorsította fel.", + "page-upgrades-question-10-answer-7": "A 2. fázissal kapcsolatos tervek intenzív kutatás és párbeszéd tárgyát képezték. Most, hogy az egyesítés (Merge) megtörtént és a 2. rétegű megoldások fejlődését figyelembe véve a célok az adatszilánkolás egy egyszerűbb formájának biztosítása felé tolódnak el az összevont tranzakciók hatékonyságának maximalizálása érdekében. A jelenlegi 2. rétegű megoldások lehetővé teszik a tranzakciók végrehajtásának méretezését, a szilánkolás segítségével pedig megvalósítható ezen adatok bizonyítékának olcsó és méretezhető tárolása az 1. rétegen.", + "page-upgrades-question-10-answer-8": "Az összevonttranzakció-központú útitervről bővebben", + "page-upgrades-question-11-title": "Vásárolhatok Eth2-t?", + "page-upgrades-question-11-desc": "Nem. Nincs Eth2-token, és az ETH sem változott az egyesítés (Merge) után.", + "page-upgrades-question-11-answer-1": "Az Eth2 név felvétele mögötti hajtóerők egyike az az általános félreértés volt, hogy az ETH-tulajdonosoknak az egyesítés (Merge) vagy bármely más frissítést követően migrálniuk kell majd az ETH-tokenjeiket az ETH 2.0-ra. Ez nem igaz, és soha nem is volt az.", + "page-upgrades-question-11-answer-2": " Ezt a félreértést a csalók gyakran kihasználják.", "page-upgrades-question-title": "Gyakran ismételt kérdések", - "page-upgrades-question3-answer-1": "Az ETH birtokosoknak biztos, hogy nem kell csinálniuk semmit. Az ETH-edet nem kell megváltoztatni vagy frissíteni. Biztos, hogy lesznek olyan átverések, melyek ezt tanácsolják, úgyhogy légy óvatos.", - "page-upgrades-scalable": "Skálázhatóbb", - "page-upgrades-scalable-desc": "Az Ethereumnak biztosítania kell az 1000 tranzakciót másodpercenként, hogy az alkalmazások gyorsabbak és olcsóbbak legyenek.", + "page-upgrades-question3-answer-1": "Az ETH-birtokosoknak nem kell csinálniuk semmit. Az ETH-t nem kell megváltoztatni, sem frissíteni. Majdnem biztosan lesznek olyan átverések, amelyek ezt tanácsolják, úgyhogy legyen óvatos.", + "page-upgrades-scalable": "Méretezhetőbb", + "page-upgrades-scalable-desc": "Az Ethereumnak biztosítania kell az 1000 tranzakciót másodpercenként, hogy az alkalmazások gyorsabbak és olcsóbban használhatók legyenek.", "page-upgrades-secure": "Biztonságosabb", - "page-upgrades-secure-desc": "Az Ethereumnak biztonságosabbnak kell lennie. Ahogy az Ethereum adoptációja egyre nő, a protokollnak is biztonságosabbnak kell lennie különféle támadásokkal szemben.", - "page-upgrades-shard-date": "A shard láncok bevezetése, a második fejlesztés, nagyjából 2023 körül várható.", - "page-upgrades-shard-desc": "A shard láncok megnövelik az Ethereum a tranzakciók feldolgozására és adattárolására vonatkozó kapacitását. A shardok idővel több funkciót fognak ellátni, melyet több fázisban vezetünk be.", - "page-upgrades-shard-estimate": "Becslés: 2023", - "page-upgrades-shard-lower": "Többet a shard láncokról", - "page-upgrades-shard-title": "Shard láncok", - "page-upgrades-stay-up-to-date": "Maradj naprakész", - "page-upgrades-stay-up-to-date-desc": "Kapd meg a legfrissebb infókat a kutatóktól és fejlesztőktől, akik az Eth2 fejlesztéseken dolgoznak.", - "page-upgrades-sustainable-desc": "Az Ethereumnak környezetbarátabbnak kell lennie. A mai technológia túl sok számítási erőt és energiát emészt fel.", - "page-upgrades-take-part": "Vegyél részt a kutatásban", - "page-upgrades-take-part-desc": "Ethereum kutatók és érdeklődők találkoznak itt, hogy megvitassák a kutatási törekvéseket beleértve az Eth2-t is.", - "page-upgrades-the-upgrades": "Az Eth2 fejlesztések", - "page-upgrades-the-upgrades-desc": "Az Eth2 egy fejlesztések sorozata az Ethereum skálázhatósága, biztonsága és fenntarthatósága növelésének érdekében. Bár mindegyiken párhuzamosan dolgoznak, vannak bizonyos függőségeik, amelyek meghatározzák, hogy mikor kerülnek bevezetésre.", - "page-upgrades-unofficial-roadmap": "Ez nem egy hivatalos ütemterv. A kint lévő információk alapján így tekintünk a történésekre. De mivel ez technológia, a dolgok egy pillanat alatt megváltozhatnak. Tehát kérjük ne úgy értelmezd, mint egy kötelezettségvállalást.", - "page-upgrades-upgrade-desc": "Az Ethereum, amit ismerünk és szeretünk, csak skálázhatóbb, biztonságosabb és fenntarthatóbb...", - "page-upgrades-upgrades": "Az Eth2 fejlesztések", - "page-upgrades-upgrades-aria-label": "Eth2 fejlesztések menü", - "page-upgrades-upgrades-beacon-chain": "A Beacon Chain", - "page-upgrades-upgrades-guide": "Útmutató az Eth2 fejlesztésekhez", - "page-upgrades-upgrades-docking": "A főhálózat és az Eth2 dokkolása", - "page-upgrades-upgrading": "Az Ethereum merően új magasságokba fejlesztése", + "page-upgrades-secure-desc": "Az Ethereumnak biztonságosabbnak kell lennie. Ahogy az Ethereum elfogadása növekszik, a protokoll biztonságosát is fokozni kell a különféle támadásokkal szemben.", + "page-upgrades-shard-date": "A szilánkolás 2023 és 2024 folyamán több fázisban követi majd az egyesítést (Merge).", + "page-upgrades-shard-desc": "A szilánkolás kibővíti az Ethereum adattárolási kapacitását, és harmonikusan együttműködik majd az L2-megoldásokkal a feldolgozási kapacitás méretezése és a hálózati díjak csökkentése érdekében. A szilánkolás bevezetése több fázisban valósul meg, a ProtoDankshardinggal kezdve.", + "page-upgrades-shard-estimate": "Megvalósítás várható ideje: 2023–2024", + "page-upgrades-shard-lower": "A szilánkolásról bővebben", + "page-upgrades-shard-title": "Szilánkolás (sharding)", + "page-upgrades-stay-up-to-date": "Legyen mindig naprakész", + "page-upgrades-stay-up-to-date-desc": "Szerezze meg a legfrissebb infókat az Ethereum-frissítéseken dolgozó kutatóktól és fejlesztőktől.", + "page-upgrades-sustainable-desc": "Az Ethereum működése egészen a közelmúltig energiaintenzív volt. Az áttérés a proof-of-stake mechanizmusra több mint 99,9%-kal csökkentette a hálózat energiafelhasználását.", + "page-upgrades-take-part": "Vegyen részt a kutatásban", + "page-upgrades-take-part-desc": "Az Ethereum kutatók és érdeklődők találkoznak itt, hogy megvitassák a kutatási törekvéseket, beleértve mindent, ami az Ethereum frissítésekhez kapcsolódik.", + "page-upgrades-the-upgrades": "Az Ethereum frissítései", + "page-upgrades-the-upgrades-desc": "Az Ethereum-frissítések célja a hálózat méretezhetőségének, biztonságának, és fenntarthatóságának javítása. Az Ethereum a közelmúltban nagyszabású frissítéseket hajtott végre a biztonság és a fenntarthatóság tekintetében, és a jövőben is várható hasonló, különösen a méretezhetőséghez kapcsolódóan.", + "page-upgrades-unofficial-roadmap": "Ez nem a hivatalos útiterv. A nyilvánosságra hozott információk alapján így tekintünk a történésekre. De mivel ez technológia, a dolgok egy pillanat alatt megváltozhatnak. Tehát, kérjük, ne értelmezze ezt kötelezettségvállalásként.", + "page-upgrades-upgrade-desc": "Az Ethereum, amit ismerünk és szeretünk, csak méretezhetőbb, biztonságosabb és fenntarthatóbb módon...", + "page-upgrades-upgrades": "Az Ethereum frissítései", + "page-upgrades-upgrades-aria-label": "Ethereum-frissítések – menü", + "page-upgrades-upgrades-beacon-chain": "A Beacon lánc", + "page-upgrades-upgrades-guide": "Útmutató az Ethereum-frissítésekhez", + "page-upgrades-upgrades-docking": "A beolvadás", + "page-upgrades-energy-consumption": "Az Ethereum energiafogyasztásáról bővebben", + "page-upgrades-upgrading": "Az Ethereum merően új magasságokba emelése frissítéseken keresztül", "page-roadmap-vision": "A jövőkép", - "page-roadmap-vision-btn": "Többet az Eth2 vízióról", - "page-roadmap-vision-desc": "Ahhoz, hogy az Ethereumot mainstreammé tegyük és az egész emberiséget szolgálja, először skálázhatóbbá, biztonságosabbá és fenntarthatóbbá kell tennünk.", - "page-upgrades-what-to-do": "Mit kell tenned?", - "page-upgrades-what-to-do-desc": "Ha dapp felhasználó vagy ETH birtokló vagy, nem kell csinálnod semmit. Ha fejlesztő vagy vagy szeretnél elkezdeni letétbe helyezni, akkor ma többféleképpen is bekapcsolódhatsz.", - "page-upgrades-whats-next": "Mi az az Eth2?", - "page-upgrades-whats-next-desc": "Az Eth2 egy összekapcsolt fejlesztéssorozatot jelent, mely az Ethereumot skálázhatóbbá, biztonságosabbá és fenntarthatóbá teszi. Ezeket a frissítéseket több csapat fejleszti szerte az Ethereum ökoszisztémából.", + "page-roadmap-vision-btn": "Az Ethereum jövőképről bővebben", + "page-roadmap-vision-desc": "Ahhoz, hogy az Ethereumot széles körben elfogadottá tegyük és az emberiség szolgálatába állítsuk, méretezhetőbbé, biztonságosabbá és fenntarthatóbbá kell tennünk a hálózatot.", + "page-upgrades-what-happened-to-eth2-title": "Mi történt az „Eth2”-vel?", + "page-upgrades-what-happened-to-eth2-1": "Az „Eth2” kifejezést az egyesítés (Merge) előtt gyakran használták, de eltűnőben van, hogy átadja helyét egy pontosabb terminológiának.", + "page-upgrades-what-happened-to-eth2-1-more": "Az egyesítésről (Merge) bővebben.", + "page-upgrades-what-happened-to-eth2-2": "Az „Eth1” és az „Eth2” összeolvadása óta nincs két külön Ethereum-blokklánc; csak egy Ethereum létezik.", + "page-upgrades-what-happened-to-eth2-3": "A zavar elkerülése érdekében a közösség frissítette az alábbi kifejezéseket:", + "page-upgrades-what-happened-to-eth2-3-1": "Az „Eth1” helyett a „végrehajtási réteg” kifejezést használjuk. Ez a réteg kezeli a tranzakciókat és a végrehajtást.", + "page-upgrades-what-happened-to-eth2-3-2": "Az „Eth2” helyett a „konszenzusréteg” kifejezést használjuk. Ez a réteg kezeli a proof-of-stake konszenzust.", + "page-upgrades-what-happened-to-eth2-4": "Ezek a terminológiai módosítások csak az elnevezési szabályokat változtatják meg; ez nem változtat az Ethereum céljain vagy útitervén.", + "page-upgrades-what-happened-to-eth2-5": "Tudjon meg többet az „Eth2” átnevezéséről", + "page-upgrades-why-cant-we-just-use-eth2-title": "Miért nem nevezhetjük egyszerűen csak Eth2-nek?", + "page-upgrades-why-cant-we-just-use-eth2-mental-models-title": "Mentális modellek", + "page-upgrades-why-cant-we-just-use-eth2-mental-models-description": "Az egyik fő probléma az Eth2 elnevezéssel, hogy az Ethereum új felhasználóiban hibás mentális modellt hoz létre. Akaratlanul is arra gondolnak, hogy az Eth1 volt előbb, és az Eth2 jött később. Vagy azt hiszik, hogy az Eth1 megszűnt létezni az Eth2 létrejöttével. Egyik elképzelés sem igaz. Az Eth2 kifejezés kivezetésével megkíméljük a jövőbeni felhasználóinkat attól, hogy vissza kelljen fejteniük ezeket a kifejezéseket.", + "page-upgrades-why-cant-we-just-use-eth2-inclusivity-title": "Bennfoglalás", + "page-upgrades-why-cant-we-just-use-eth2-inclusivity-description": "Ahogy az Ethereum útiterve fejlődött, az Ethereum 2.0 pontatlan megjelöléssé vált az Ethereum-útiterv számára. A körültekintő és pontos választás lehetővé teszi, hogy a lehető legszélesebb értelemben vett nagyközönség is megértse az Ethereum tartalmát.", + "page-upgrades-why-cant-we-just-use-eth2-scam-prevention-title": "Csalásmegelőzés", + "page-upgrades-why-cant-we-just-use-eth2-scam-prevention-description": "Sajnos a rosszindulatú szereplők megpróbálják felhasználni a helytelen Eth2 megnevezést, hogy a felhasználókat átverve arra kérjék őket, hogy cseréljék ki ETH-tokenjeiket ETH2-tokenekre, vagy azt állítsák, hogy még az Eth2-frissítés előtt migrálniuk kell az ETH-tokenjeiket. Reméljük hogy ez a frissített terminológia olyannyira egyértelmű, hogy megszünteti az ilyen csalások lehetőségét, és biztonságosabbá teszi az ökoszisztémát.", + "page-upgrades-why-cant-we-just-use-eth2-staking-clarity-title": "Egyértelműség a letétbe helyezés terén", + "page-upgrades-why-cant-we-just-use-eth2-staking-clarity-description": "Vannak olyan letéti operátorok, akik a Beacon láncon letétbe helyezett ETH-t is „ETH2” kóddal jelenítették meg. Ezt potenciális félreértésekhez vezethet, mivel a szolgáltatások felhasználói valójában nem ETH2-tokent kapnak. ETH2-token nem létezik; egyszerűen csak a részesedést tükrözi az adott szolgáltató letétjében.", + "page-upgrades-what-to-do": "Mit kell tennie?", + "page-upgrades-what-to-do-desc": "Ha Ön dapp-felhasználó, illetve ETH-tulajdonos, akkor nem kell tennie semmit. Ha fejlesztő, illetve letétbe helyezést szeretne végezni, akkor most többféleképpen is bekapcsolódhat.", + "page-upgrades-whats-next": "Mik azok az Ethereum-frissítések?", + "page-upgrades-whats-next-desc": "Az Ethereum-útiterv összekapcsolt protokollfrissítéseket tartalmaz, amelyek méretezhetőbbé, biztonságosabbá és fenntarthatóbbá teszik a hálózatot. Ezeket a frissítéseket az Ethereum-ökoszisztéma több csapata fejleszti világszerte.", + "page-upgrades-whats-next-history": "Ismerje meg a korábbi Ethereum-frissítéseket", "page-upgrades-whats-ethereum": "Egy pillanat, mi az az Ethereum?", - "page-upgrades-whats-new": "Mi az új az Eth2-ben?", - "page-staking-deposit-contract-staking-more-link": "Többet a stakingről", + "page-upgrades-whats-new": "Mi vár az Ethereumra?", + "page-upgrades-security-link": "A biztonságról és a csalásmegelőzésről bővebben", + "page-staking-deposit-contract-staking-more-link": "Többet a letétbe helyezésről", "docs-nav-proof-of-stake": "Proof-of-stake", "docs-nav-proof-of-work": "Proof-of-work", "page-upgrades-get-involved-ethresearch-1": "Sharding", - "page-upgrades-get-involved-ethresearch-2": "Eth1 és Eth2 átmenet" + "page-upgrades-get-involved-ethresearch-2": "A beolvadás" } diff --git a/src/intl/hu/page-upgrades.json b/src/intl/hu/page-upgrades.json index 7471d048a0a..93ba45f48f7 100644 --- a/src/intl/hu/page-upgrades.json +++ b/src/intl/hu/page-upgrades.json @@ -1,15 +1,24 @@ { - "page-upgrades-beacon-date": "Kiszállított!", - "page-upgrades-upgrades-guide": "Útmutató az Eth2 fejlesztésekhez", - "page-upgrades-upgrades-docking": "A főhálózat és az Eth2 dokkolása", - "page-upgrades-shard-title": "Shard láncok", + "page-upgrades-merge-infographic-el": "Ethereum-állapot: tranzakciók, applikációk, szerződések, egyenlegek", + "page-upgrades-merge-infographic-alt-text": "Infografikus ábrázolás a Beacon lánc beolvadásáról az Ethereum végrehajtási rétegébe a proof-of-work → proof-of-stake mechanizmusváltás során.", + "page-upgrades-beacon-date": "Megvalósítva!", + "page-upgrades-merge-date": "2022. szeptember", + "page-upgrades-shards-date": "~2023", + "page-upgrades-pbs": "Nem azonnali – 2024/25-ben várható", + "page-upgrades-post-merge-banner-tutorial-ood": "Ez az útmutató a beolvadás után már nem naprakész, és előfordulhat, hogy nem működik. Ha szeretne segíteni, kérjük, küldjön egy bejelentést (PR-t).", + "page-upgrades-post-merge-banner-governance-ood": "Az oldalon található tartalmak egy része a beolvadás után már nem naprakész. Ha szeretne segíteni, kérjük, küldjön egy bejelentést (PR-t).", + "page-upgrades-upgrades-guide": "Útmutató az Ethereum-frissítésekhez", + "page-upgrades-upgrades-docking": "A beolvadás", + "page-upgrades-shard-title": "Sharding", "page-upgrades-upgrades-beacon-chain": "A Beacon Chain", + "consensus-beaconscan-title": "beaconscan", + "consensus-beaconscan-in-title": "beaconcha.in", "consensus-beaconcha-in-desc": "Nyílt forráskódú Beacon Chain explorer", - "consensus-beaconscan-desc": "Beacon Chain explorer - Etherscan a konszenzus réteg számára", - "consensus-become-staker": "Legyél te is letétbe helyező", - "consensus-become-staker-desc": "A letétbe helyezés életbe lépett! Ha szeretnéd letétbe helyezni az ETH-edet a hálózat biztonságánk növeléséhez, bizonyosodj meg arról, hogy ismered a kockázatokat.", - "consensus-explore": "Ismerd meg az adatokat", - "consensus-run-beacon-chain": "Konszenzus kliens futtatása", - "consensus-run-beacon-chain-desc": "Az Ethereum annyi futó klienst igényel, amennyi lehetséges. Segítsd ezzel az Ethereum közjavat!", + "consensus-beaconscan-desc": "Beacon Chain explorer – Etherscan a konszenzusréteg számára", + "consensus-become-staker": "Legyen Ön is letétbe helyező", + "consensus-become-staker-desc": "A letétbe helyezés életbe lépett! Ha szeretné letétbe helyezni ETH-jeit a hálózat biztonságának növeléséhez, bizonyosodjon meg arról, hogy ismeri a kockázatokat.", + "consensus-explore": "Ismerje meg az adatokat", + "consensus-run-beacon-chain": "Konszenzusos kliens futtatása", + "consensus-run-beacon-chain-desc": "Az Ethereum annyi futó klienst igényel, amennyi lehetséges. Segítse ezzel az Ethereum közjavát!", "read-more": "Bővebben" } diff --git a/src/intl/hu/page-wallets-find-wallet.json b/src/intl/hu/page-wallets-find-wallet.json index 50c43cd10c6..9d749808ea5 100644 --- a/src/intl/hu/page-wallets-find-wallet.json +++ b/src/intl/hu/page-wallets-find-wallet.json @@ -50,11 +50,11 @@ "page-find-wallet-features": "Jellemzők", "page-find-wallet-security": "Biztonság", "page-find-wallet-smart-contract": "Smart contract", - "page-find-wallet-check-out": "Nézd meg", + "page-find-wallet-check-out": "Nézze meg", "page-find-wallet-info-updated-on": "információ utolsó frissítésének dátuma", "page-find-wallet-showing-all-wallets": "Az összes tárca megjelenítése", "page-find-wallet-showing": "Mutatás ", - "page-find-wallet-wallets": "tárcák", + "page-find-wallet-wallets": "tárca", "page-find-wallet-iOS": "iOS", "page-find-wallet-android": "Android", "page-find-wallet-linux": "Linux", @@ -90,5 +90,6 @@ "page-find-wallet-browser-desc": "Tárcák böngészőbővítményekkel", "page-find-wallet-device": "Eszköz", "page-find-choose-to-compare": "Válassza ki az összehasonlításhoz", - "page-find-wallet-choose-features": "Válasszon a funkciók közül" + "page-find-wallet-choose-features": "Válasszon a funkciók közül", + "page-find-wallet-reset-filters": "Szűrők törlése" }