Частна мрежа Ethereum - Създайте свой собствен блокчейн Ethereum!



В този урок за частна мрежа на Ethereum ще научите как да създадете свой собствен Ethereum Blockchain и как да направите транзакция между два акаунта.

В предишния Урок за трюфел Ethereum , научихте за Трюфел Suite и разработихте Ethereum DApp. За да разработите сложно приложение ethereum, ще искате да го стартирате в частна мрежа, за да видите как работи, преди да го внедрите. И така, в този урок за частна мрежа на Ethereum ще научите как да създадете Частна мрежа Ethereum и как да направите транзакция между два акаунта.

Интересувате ли се от развитието на Ethereum? Вижте на живо .





Урок за частна мрежа на Ethereum

Това са темите, които ще разгледам в този урок:

Какво представлява частната мрежа на Ethereum?

Частната мрежа на Ethereum е напълно частна блокчейн, която е изолирана от основната мрежа на Ethereum. Частната мрежа на Ethereum се създава главно от организации, за да ограничи разрешенията за четене на Blockchain. Само възлите с правилните разрешения ще имат достъп до този блокчейн. Възлите в тази мрежа не са свързани с основните мрежови възли и техният обхват е ограничен само до този частен блокчейн.



Частен и публичен - Урок за частна мрежа на Ethereum - Edureka

Защо се използва частната мрежа Ethereum?

Частната мрежа на Ethereum се използва от организациите за съхраняване на лични данни, които не трябва да бъдат видими за хора извън тяхната организация. Частната мрежа Ethereum също се използва за тестване и експериментиране на Blockchain, ако някой не иска да използва публичните тестови мрежи.

Характеристики на частната мрежа на Ethereum

Както бе споменато в предишния раздел, Ethereum Private Network се използва с цел тестване. Но защо някой ще си направи труда да създаде нова мрежа, след като вече има налични мрежи за публично тестване? Е, частната мрежа на Ethereum има свой собствен набор от функции, изброени по-долу:



  • Той действа като разпределена база данни
  • Blockchain в частната мрежа на Ethereum може да съдържа лични данни (тъй като мрежата не е публична)
  • Достъпът може да се основава на разрешения
  • Извършването на транзакции може да бъде безплатно
  • Сметките могат да бъдат разпределени с етериот нас самите, което дори не изисква закупуване на виртуални етери

Продължавайки напред, нека да стигнем до практическата част на този урок за частна мрежа на Ethereum.

Инсталиране на Ethereum на Ubuntu

За да създадем частна мрежа на Ethereum, първо трябва да инсталираме Ethereum в нашата система. В този раздел на урока за частна мрежа на Ethereum ще научите как да инсталирате Ethereum на Ubuntu.

За да инсталирате Ethereum, изпълнете следните команди в терминал:

$ sudo apt-get инсталиране на софтуерни свойства-често $ sudo add-apt-repository -y ppa: ethereum / ethereum $ sudo apt-get update $ sudo apt-get install ethereum

Свършен! Това ще инсталира Ethereum във вашата система.

Нека започнем със създаването на частната мрежа.

Демонстрация: Създаване на частна мрежа Ethereum и извършване на транзакция

В този урок за частна мрежа на Ethereum ще изпратим етериот един акаунт в друг и така, ние се нуждаем от акаунти. Нека сега видим как да създадем акаунти за нашата Blockchain.

Създаване на акаунти за частна мрежа Ethereum

Преди да създадем нови акаунти, нека създадем нова директория за нашето работно място. Вижте командите по-долу, за да направите това:

$ mkdir private-ethereum $ cd private-ethereum

За да извършим транзакция, са ни необходими поне два акаунта: Получател и Подател.

За да създадете два акаунта, изпълнете следната команда два пъти:

$ geth --datadir ./datadir акаунт нов

Влез в паролна фраза за всеки акаунт при поискване. Не забравяйте тази парола!

След като тези команди се изпълнят успешно, ще бъдат създадени два акаунта и адресът на акаунта ще бъде показан на екрана.

Запазете тези адреси някъде, защото ще ги използваме допълнително.

Създаване на файл Genesis

Файл Genesis съдържа свойствата, които определят Blockchain. Файлът Genesis е началната точка на Blockchain и затова е задължително да се създаде Genesis файл, за да се създаде Blockchain. Сега, нека създадем Битиефайл.

Първо създайте файл с име genesis.json

$ nano genesis.json

И сега копирайте и поставете следния код в този файл:

{'config': {'chainId': 2019, 'homesteadBlock': 0, 'eip155Block': 0, 'eip158Block': 0, 'byzantiumBlock': 0}, 'трудност': '400', 'gasLimit': ' 2000000 ',' alloc ': {' 82c440bba462220c9b54600e584373014706c177 ': {' balance ':' 100000000000000000000000 '},' 9db5b590fdecc10cdb04b85a3503e94e61b207ca ': {' balance ':' 1200000000}

Забележка: В горния код заменете адреса под разпределение раздел с адреса на акаунтите, които сте създали в предишната стъпка.

Запазете го и излезте.

Позволете ми да обясня накратко съдържанието на файла Genesis:

chainId - Това е идентификационният номер на веригата, който се използва за разграничаване на Blockchains
homesteadBlock, eip155Block, eip158Block, byzantiumBlock - тези свойства са свързани с разклоняване на вериги и създаване на версии. Ние не се нуждаем от тях за нашия урок, така че нека ги зададем на 0.
трудност - Този номер решава колко трудно ще бъдат добиваните блокове. За частните мрежи е добре да зададете по-нисък номер, тъй като ви позволява бързо да добивате блокове, което води до бързи транзакции.
gasLimit - Това число е общото количество газ, което може да се използва във всеки блок. Не искаме мрежата ни да достигне лимита, затова сме го поставили високо.
разпределение - Тази част се използва за разпределяне на етери към вече създадени акаунти.

Файлът Genesis е готов. Сега е време да стартирате Blockchain.

Инсталираща директория с данни

Преди да стартираме Blockchain, трябва да създадем екземпляр на директорията с данни. Директорията с данни е директорията, в която се съхраняват данните, свързани с Blockchain. За да създадете инстанция на директорията с данни, изпълнете следната команда:

$ geth --datadir ./myDataDir init ./genesis.json

При успешна инстанция трябва да видите следния изход:

С инстанция на Директория с данни вече можем да стартираме Blockchain.

Стартиране на Ethereum Private Blockchain

За да стартирате Blockchain, изпълнете следната команда:

как да използвам шпионски питон
$ geth --datadir ./myDataDir --networkid 1114 конзола 2 >> Eth.log

Свършен! Вашата частна Ethereum Blockchain е готова и работи.

В горната команда изпращаме всички регистрационни файлове в отделен файл, наречен Ет.лог . Geth автоматично ще създаде нов файл, ако не бъде намерен.

Резултатът от този код трябва да изглежда по следния начин:

Сега влязохме в geth конзола където можем да изпълняваме команди за нашия блокчейн.

Четене на дневници

В предишния раздел споменах, че съхраняваме регистрационните файлове в друг файл. В този раздел ще ви кажа как да четете дневниците от този файл.

Ще прочетем дневниците от отделен терминал, така че първо да отворим нов терминал. Първо,превключете на частен ефириум директория и след това изпълнете следната команда, за да прочетете дневниците:

$ tail -f Eth.log

Вече можете да видите дневниците в терминала. Тези дневници се актуализират динамично, когато има някаква активност в Blockchain.

Импортиране на акаунти в частна мрежа

Може би си спомняте, че създадохме два акаунта за извършване на транзакции. Но ние не добавихме тези акаунти към нашата мрежа. И така, в този раздел на урока за частна мрежа на Ethereum ще ви кажа как да импортирате акаунтите.

Когато създаваме акаунт, всички подробности за него се съхраняват в UTC файл в директорията, спомената по време на създаването на акаунт (път: ./datadir/keystore ). За да импортираме акаунтите, трябва да копираме тези файлове и да ги поставим в магазин за ключове директория под Директория с данни(път: ./myDataDir/keystore )

Това е всичко! Акаунтите се импортират. Просто, нали? За да проверим импортирането, ще изпълним следната команда в geth конзола.

> ет.сметки

Това ще покаже списък с всички налични акаунти.

За да проверим салдото по тези сметки, ще използваме следната команда:

> web3.fromWei (eth.getBalance (), 'етер')

Готови сме с всичко необходимо за извършване на транзакция. Защо да чакаш? Хайде да го направим!

Извършване на транзакция

В този урок за частна мрежа на Ethereum ще изпратим някои етериот един акаунт в друг.

Синтаксисът за изпращане на етери е както следва:

> eth.sendTransaction ({от: „адрес“, до: „адрес“, стойност: web3.toWei (количество, „етер“)})

Ще изпратим 1000 етери от акаунт 1 до акаунт 2, като използваме следната команда:

> eth.sendTransaction ({от: eth.accounts [0], до: eth.accounts [1], стойност: web3.toWei (1000, „етер“)})

Не работи? Не се притеснявайте Не работи и за мен. Това е така, защото акаунтът е заключен по подразбиране и не позволява транзакции.

И така, първо, трябва да отключим акаунта на подателя. Помните ли паролата, която сте използвали при създаването на акаунта? Е, трябва, защото ще трябва да го използвате, за да отключите акаунта. Ще отключим акаунта със следната команда:

personal.unlockAccount (eth.accounts [0], '')

Сега ще изпратим етериуспешно:

> eth.sendTransaction ({от: eth.accounts [0], до: eth.accounts [1], стойност: web3.toWei (1000, „етер“)})

Това трябва да върне идентификатор на транзакция.

Свършен! Успешно извършихте транзакция!

За да проверим транзакцията, нека проверим салдото и в двата акаунта.

> web3.fromWei (eth.getBalance ('0x82c440bba462220c9b54600e584373014706c177'), 'етер')
> web3.fromWei (eth.getBalance ('0x9db5b590fdecc10cdb04b85a3503e94e61b207ca'), 'етер')

Ех! Виждаме, че 1000 етерибяха изпратени от един акаунт в друг!

Честито! Създали сте частна мрежа на Ethereum и сте направили транзакция. Надявам се този урок за частна мрежа на Ethereum да е информативен и да ви помогне да разберете за частната мрежа на Ethereum. Сега продължете и опитайте да експериментирате с новосъздадената частна мрежа.

Имате въпрос към нас? Моля, публикувайте го на и ние ще се свържем с вас.

Ако искате да научите Blockchain и да изградите кариера в Blockchain Technologies, тогава разгледайте нашата което се предлага с обучение под ръководството на инструктори на живо и опит в реалния живот на проекти. Това обучение ще ви помогне да разберете изчерпателно какво е Blockchain и ще ви помогне да постигнете майсторство по темата.