ఎథీరియం ఖాతాలు
ఒక ఎథీరియం ఖాతా అనేది ఈథర్ (ETH) బ్యాలెన్స్ కలిగి ఉండి, ఎథీరియంపై సందేశాలను పంపగల ఒక ఎంటిటీ. ఖాతాలు వినియోగదారుల నియంత్రణలో ఉండవచ్చు లేదా స్మార్ట్ కాంట్రాక్ట్లుగా డిప్లాయ్ చేయబడవచ్చు.
ముందస్తు అవసరాలు
ఈ పేజీని మీరు మరింత బాగా అర్థం చేసుకోవడానికి, ముందుగా మా ఎథీరియం పరిచయం చదవాలని మేము సిఫార్సు చేస్తున్నాము.
ఖాతా రకాలు
ఎథీరియంలో రెండు ఖాతా రకాలు ఉన్నాయి:
- బాహ్య-యాజమాన్య ఖాతా (EOA) – ప్రైవేట్ కీలు ఉన్న ఎవరైనా నియంత్రించవచ్చు
- కాంట్రాక్ట్ ఖాతా – నెట్వర్క్లో డిప్లాయ్ చేయబడిన స్మార్ట్ కాంట్రాక్ట్, ఇది కోడ్ ద్వారా నియంత్రించబడుతుంది. స్మార్ట్ కాంట్రాక్ట్ల గురించి తెలుసుకోండి
రెండు ఖాతా రకాలకు ఈ సామర్థ్యాలు ఉంటాయి:
- ETH మరియు టోకెన్లను స్వీకరించడం, నిల్వ చేయడం మరియు పంపడం
- డిప్లాయ్ చేయబడిన స్మార్ట్ కాంట్రాక్ట్లతో ఇంటరాక్ట్ అవ్వడం
ముఖ్యమైన తేడాలు
బాహ్య-యాజమాన్య ఖాతా
- ఖాతాను సృష్టించడానికి ఎటువంటి ఖర్చు ఉండదు
- లావాదేవీలను ప్రారంభించగలదు
- బాహ్య-యాజమాన్య ఖాతాల మధ్య లావాదేవీలు కేవలం ETH/టోకెన్ బదిలీలు మాత్రమే కాగలవు
- ఖాతా కార్యకలాపాలను నియంత్రించే పబ్లిక్ మరియు ప్రైవేట్ కీల క్రిప్టోగ్రాఫిక్ జతతో రూపొందించబడింది
కాంట్రాక్ట్
- మీరు నెట్వర్క్ నిల్వను ఉపయోగిస్తున్నందున కాంట్రాక్ట్ను సృష్టించడానికి ఖర్చు అవుతుంది
- లావాదేవీని స్వీకరించిన దానికి ప్రతిస్పందనగా మాత్రమే సందేశాలను పంపగలదు
- బాహ్య ఖాతా నుండి కాంట్రాక్ట్ ఖాతాకు జరిగే లావాదేవీలు కోడ్ను ట్రిగ్గర్ చేయగలవు, ఇది టోకెన్లను బదిలీ చేయడం లేదా కొత్త కాంట్రాక్ట్ను సృష్టించడం వంటి అనేక విభిన్న చర్యలను అమలు చేయగలదు
- కాంట్రాక్ట్ ఖాతాలకు ప్రైవేట్ కీలు ఉండవు. బదులుగా, అవి స్మార్ట్ కాంట్రాక్ట్ కోడ్ యొక్క లాజిక్ ద్వారా నియంత్రించబడతాయి
ఖాతా పరిశీలన
ఎథీరియం ఖాతాలు నాలుగు ఫీల్డ్లను కలిగి ఉంటాయి:
nonce– బాహ్య-యాజమాన్య ఖాతా నుండి పంపబడిన లావాదేవీల సంఖ్యను లేదా కాంట్రాక్ట్ ఖాతా ద్వారా సృష్టించబడిన కాంట్రాక్ట్ల సంఖ్యను సూచించే కౌంటర్. ప్రతి ఖాతాకు ఇచ్చిన నాన్స్తో ఒక లావాదేవీ మాత్రమే అమలు చేయబడుతుంది, ఇది సంతకం చేయబడిన లావాదేవీలు పదేపదే ప్రసారం చేయబడి మరియు తిరిగి అమలు చేయబడే రీప్లే దాడుల నుండి రక్షిస్తుంది.balance– ఈ చిరునామా కలిగి ఉన్న Wei సంఖ్య. Wei అనేది ETH యొక్క డినామినేషన్ మరియు ప్రతి ETHకి 1e+18 Wei ఉంటాయి.codeHash– ఈ హాష్ ఎథీరియం వర్చువల్ మెషీన్ (EVM)లో ఖాతా యొక్క _కోడ్_ను సూచిస్తుంది. కాంట్రాక్ట్ ఖాతాలు విభిన్న కార్యకలాపాలను నిర్వహించగల కోడ్ ఫ్రాగ్మెంట్లను ప్రోగ్రామ్ చేసి ఉంటాయి. ఖాతాకు సందేశ పిలుపు వస్తే ఈ EVM కోడ్ అమలు చేయబడుతుంది. ఇతర ఖాతా ఫీల్డ్ల వలె కాకుండా, దీనిని మార్చలేము. అటువంటి కోడ్ ఫ్రాగ్మెంట్లన్నీ తర్వాత తిరిగి పొందడం కోసం వాటి సంబంధిత హాష్ల క్రింద స్థితి డేటాబేస్లో ఉంటాయి. ఈ హాష్ విలువను codeHash అని పిలుస్తారు. బాహ్య యాజమాన్య ఖాతాల కోసం, codeHash ఫీల్డ్ అనేది ఖాళీ స్ట్రింగ్ యొక్క హాష్.storageRoot– కొన్నిసార్లు స్టోరేజ్ హాష్ అని పిలుస్తారు. ఖాతా యొక్క నిల్వ కంటెంట్లను (256-బిట్ పూర్ణాంక విలువల మధ్య మ్యాపింగ్) ఎన్కోడ్ చేసే మెర్కిల్ ప్యాట్రిసియా ట్రై యొక్క రూట్ నోడ్ యొక్క 256-బిట్ హాష్, 256-బిట్ పూర్ణాంక కీల యొక్క కేకాక్-256 హాష్ నుండి RLP-ఎన్కోడ్ చేయబడిన 256-బిట్ పూర్ణాంక విలువలకు మ్యాపింగ్గా ట్రైలో ఎన్కోడ్ చేయబడింది. ఈ ట్రై ఈ ఖాతా యొక్క నిల్వ కంటెంట్ల హాష్ను ఎన్కోడ్ చేస్తుంది మరియు డిఫాల్ట్గా ఖాళీగా ఉంటుంది.
రేఖాచిత్రం Ethereum EVM illustrated (opens in a new tab) నుండి స్వీకరించబడింది
బాహ్య-యాజమాన్య ఖాతాలు మరియు కీ జతలు
ఒక ఖాతా పబ్లిక్ మరియు ప్రైవేట్ అనే క్రిప్టోగ్రాఫిక్ కీల జతతో రూపొందించబడింది. లావాదేవీ వాస్తవానికి పంపినవారి ద్వారా సంతకం చేయబడిందని నిరూపించడానికి మరియు ఫోర్జరీలను నిరోధించడానికి ఇవి సహాయపడతాయి. లావాదేవీలపై సంతకం చేయడానికి మీరు మీ ప్రైవేట్ కీని ఉపయోగిస్తారు, కాబట్టి ఇది మీ ఖాతాతో అనుబంధించబడిన నిధులపై మీకు కస్టడీని ఇస్తుంది. మీరు నిజంగా క్రిప్టోకరెన్సీని ఎప్పుడూ పట్టుకోరు, మీరు ప్రైవేట్ కీలను కలిగి ఉంటారు – నిధులు ఎల్లప్పుడూ ఎథీరియం లెడ్జర్లోనే ఉంటాయి.
మీరు ఎల్లప్పుడూ లావాదేవీ పంపినవారిని ధృవీకరించగలరు కాబట్టి ఇది హానికరమైన వ్యక్తులు నకిలీ లావాదేవీలను ప్రసారం చేయకుండా నిరోధిస్తుంది.
ఆలిస్ తన స్వంత ఖాతా నుండి బాబ్ ఖాతాకు ఈథర్ను పంపాలనుకుంటే, ఆలిస్ లావాదేవీ అభ్యర్థనను సృష్టించి, ధృవీకరణ కోసం దానిని నెట్వర్క్కు పంపాలి. ఎథీరియం పబ్లిక్-కీ గూఢలిపి శాస్త్రాన్ని ఉపయోగించడం వల్ల ఆలిస్ తాను వాస్తవానికి లావాదేవీ అభ్యర్థనను ప్రారంభించినట్లు నిరూపించగలదని నిర్ధారిస్తుంది. క్రిప్టోగ్రాఫిక్ యంత్రాంగాలు లేకుండా, ఈవ్ అనే హానికరమైన వ్యక్తి "ఆలిస్ ఖాతా నుండి ఈవ్ ఖాతాకు 5 ETH పంపండి" లాంటి అభ్యర్థనను బహిరంగంగా ప్రసారం చేయవచ్చు మరియు అది ఆలిస్ నుండి రాలేదని ఎవరూ ధృవీకరించలేరు.
ఖాతా సృష్టి
మీరు ఖాతాను సృష్టించాలనుకున్నప్పుడు, చాలా లైబ్రరీలు మీకు యాదృచ్ఛిక ప్రైవేట్ కీని రూపొందిస్తాయి.
ప్రైవేట్ కీ 64 హెక్స్ అక్షరాలతో రూపొందించబడింది మరియు పాస్వర్డ్తో ఎన్క్రిప్ట్ చేయబడుతుంది.
ఉదాహరణ:
fffffffffffffffffffffffffffffffebaaedce6af48a03bbfd25e8cd036415f
దీర్ఘవృత్తాకార వక్రరేఖ డిజిటల్ సంతకం అల్గారిథమ్ (opens in a new tab) ఉపయోగించి ప్రైవేట్ కీ నుండి పబ్లిక్ కీ రూపొందించబడుతుంది. పబ్లిక్ కీ యొక్క కేకాక్-256 హాష్లోని చివరి 20 బైట్లను తీసుకుని, ప్రారంభంలో 0x జోడించడం ద్వారా మీరు మీ ఖాతా కోసం పబ్లిక్ చిరునామాను పొందుతారు.
అంటే బాహ్య యాజమాన్య ఖాతా (EOA) 42-అక్షరాల చిరునామాను కలిగి ఉంటుంది (20-బైట్ విభాగం అంటే 40 హెక్సాడెసిమల్ అక్షరాలు మరియు 0x ప్రిఫిక్స్).
ఉదాహరణ:
0x5e97870f263700f46aa00d967821199b9bc5a120
కొత్త ఖాతాను రూపొందించడానికి Clef (opens in a new tab) అనే సంతకం చేసే సాధనాన్ని ఎలా ఉపయోగించాలో కింది ఉదాహరణ చూపుతుంది. Clef అనేది ఎథీరియం క్లయింట్, Geth (opens in a new tab)తో బండిల్ చేయబడిన ఖాతా నిర్వహణ మరియు సంతకం చేసే సాధనం. clef newaccount కమాండ్ కొత్త కీ జతను సృష్టిస్తుంది మరియు వాటిని ఎన్క్రిప్ట్ చేయబడిన కీస్టోర్లో సేవ్ చేస్తుంది.
> clef newaccount --keystore <path>
Please enter a password for the new account to be created:
> <password>
------------
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 డాక్యుమెంటేషన్ (opens in a new tab)
మీ ప్రైవేట్ కీ నుండి కొత్త పబ్లిక్ కీలను పొందడం సాధ్యమవుతుంది, కానీ మీరు పబ్లిక్ కీల నుండి ప్రైవేట్ కీని పొందలేరు. మీ ప్రైవేట్ కీలను సురక్షితంగా ఉంచడం చాలా ముఖ్యం మరియు పేరు సూచించినట్లుగా, వాటిని ప్రైవేట్గా (రహస్యంగా) ఉంచాలి.
సంతకాన్ని అవుట్పుట్ చేసే సందేశాలు మరియు లావాదేవీలపై సంతకం చేయడానికి మీకు ప్రైవేట్ కీ అవసరం. ఇతరులు మీ పబ్లిక్ కీని పొందడానికి ఆ సంతకాన్ని తీసుకోవచ్చు, తద్వారా సందేశం రాసినవారిని నిరూపించవచ్చు. మీ అప్లికేషన్లో, నెట్వర్క్కు లావాదేవీలను పంపడానికి మీరు JavaScript లైబ్రరీని ఉపయోగించవచ్చు.
కాంట్రాక్ట్ ఖాతాలు
కాంట్రాక్ట్ ఖాతాలు కూడా 42 అక్షరాల హెక్సాడెసిమల్ చిరునామాను కలిగి ఉంటాయి:
ఉదాహరణ:
0x06012c8cf97bead5deae237070f9587f8e7a266d
ఎథీరియం బ్లాక్చైన్లో కాంట్రాక్ట్ డిప్లాయ్ చేయబడినప్పుడు సాధారణంగా కాంట్రాక్ట్ చిరునామా ఇవ్వబడుతుంది. ఈ చిరునామా సృష్టికర్త చిరునామా మరియు ఆ చిరునామా నుండి పంపబడిన లావాదేవీల సంఖ్య ("నాన్స్") నుండి వస్తుంది.
ధృవీకర్త కీలు
ఎథీరియం ప్రూఫ్-ఆఫ్-వర్క్ (PoW) నుండి ప్రూఫ్-ఆఫ్-స్టేక్ (PoS) ఆధారిత ఏకాభిప్రాయానికి మారినప్పుడు ప్రవేశపెట్టబడిన మరో రకమైన కీ కూడా ఎథీరియంలో ఉంది. ఇవి 'BLS' కీలు మరియు ఇవి ధృవీకర్తలను గుర్తించడానికి ఉపయోగించబడతాయి. నెట్వర్క్ ఏకాభిప్రాయానికి రావడానికి అవసరమైన బ్యాండ్విడ్త్ను తగ్గించడానికి ఈ కీలను సమర్థవంతంగా సమగ్రపరచవచ్చు. ఈ కీ అగ్రిగేషన్ లేకుండా ధృవీకర్తకు కనీస స్టేక్ చాలా ఎక్కువగా ఉంటుంది.
ధృవీకర్త కీల గురించి మరింత సమాచారం.
వాలెట్లపై ఒక గమనిక
ఖాతా అనేది వాలెట్ కాదు. వాలెట్ అనేది మీ ఎథీరియం ఖాతాతో (బాహ్య-యాజమాన్య ఖాతా లేదా కాంట్రాక్ట్ ఖాతా) ఇంటరాక్ట్ అవ్వడానికి మిమ్మల్ని అనుమతించే ఇంటర్ఫేస్ లేదా అప్లికేషన్.
దృశ్యమాన డెమో
హాష్ ఫంక్షన్లు మరియు కీ జతల గురించి ఆస్టిన్ వివరించడాన్ని చూడండి.
మరింత పఠనం
మీకు సహాయపడిన కమ్యూనిటీ వనరు ఏదైనా తెలుసా? ఈ పేజీని సవరించి, దాన్ని జోడించండి!