ارز الکترونیک خودتان را بسازید !

سلام به دوستان خوبم !

امروز بعد از چند وقت وارد پنل سایت شدم و خیلی خیلی از آمار بازدید متعجب شدم !

امروز با یک آموزش خیلی ویژه در خدمتتون هستم.

آموزش ساخت ارز الکترونیک.

مثل بیتکوین.

خیلی جالب و البته پر از ارور های سرگرم کننده هست.فقط این رو بدونید سورسی که ما ازش استفاده میکنیم باهاش ارز های موفقی ساخته شدن مثل بایت کوین یا داش.اما با توجه به فضای مالی ایران و البته اتفاقات اخیر در بیتکوین پیشنهاد میکنم صابون ساخت یک ارز موفق رو به دلتون نزنید و فقط به چشم یک پروژه تفریحی نگاهش کنید.

و البته من هیچ مسئولیتی درباره استفاده نادرست و درست و هر چیز دیگه از این آموزش ندارم.

خب،لازم میدونم کمی توضیح بدم که دقیقا قراره چی بسازید.

ما توی این آموزش از سورس پروژه Cryptonote استفاده میکنیم.چیزی که شما میسازید یک ارز الکترونیک هست که ارسال و دریافت میشه،ماین میشه و …

اما برای اونهایی که اطلاعات مالی ندارن بگم که شما نمیتونید ارزتون رو بفروشید.چرا؟چون فقط خودتون ازش استفاده میکنید !

مثلا صرافی های آنلاین که بیتکوین رو تبدیل به پول و پول رو تبدیل به بیتکوین میکنن یک مقدار پول دارن یک مقدار بیت کوین.شما به اون ها بیتکوین می دید و اون ها معادل پولی اون رو که داشتن به شما میدن و برعکس.یعنی خواهان داره اون ارز.پس شما اگر بخواید ارزتون رو بفروشید باید برای ارزتون خواهان داشته باشید که حاضر باشن براش پول بپردازن و بعد یک صرافی راه بندازید.

خب،حالا فهمیدیم که خیال باطل نکنیم 🙂

پس بریم سر آموزش.

اما قبلش به چند چیز اشاره کنم.

یکی اینکه تو فرایند کامپایل خیلی خیلی ارور پیش میاد و گاهی اوقات روی بعضی سیستم عامل ها و هاردور ها جواب نمیدن.

اگر به اروری بر میخورید توی کامنت ها اعلام کنید و اگر بدونم بهتون کمک میکنم.

راستی فرایند کامپایل روی سیستم های ۳۲ بیت جواب نمیده.

خب شروع کنیم.

کامپایل روی ویندوز امکان پذیره ولی صد برابر سخت تر.

توصیه من اوبونتو ۱۴٫۰۴ به بالا هست (۶۴ بیت).

خب اول به صفحه گیت هاب پروژه برید :

https://github.com/cryptonotefoundation/cryptonote

و اون رو فورک کنید.البته اگر به هر دلیلی نمیخواید این کار رو کنید زیپش رو دانلود کنید.

خب باید کانفیگ کنید.

برید به پوشه src بعد به فایل cryptonote_config.h.

const char CRYPTONOTE_NAME[] = ""

رو پیدا کنید.اسم ارزتون رو اینجا و بین “” وارد کنید.

مثلا

const char     CRYPTONOTE_NAME[]                             = "MhnCoin";

خب حالا تو همون فایل دنبال این بگردید.

const uint64_t MONEY_SUPPLY =

توی این خط تعداد تمام سکه های موجود ارزتون باید باشه ولی نه به صورت عدد خالی.میتونه با فرمول باشه ولی به شخصه عددی رو ترجیح میدم.مثلا:

const uint64_t MONEY_SUPPLY = UINT64_C(8000000000000);

جای عدد ،تعداد مورد نظرتون رو قرار بدید.

خط زیر هم پیدا کنید و همون بیست و یک رو قرار بدید.

const unsigned EMISSION_SPEED_FACTOR                         = 21;

توی خط زیر هم بهتره همون ۱۲۰ رو قرار بدید البته مقدار پیشفرض توی فایل احتمالا ۶۰ هست که به ۱۲۰ تغییر بدید.

const uint64_t DIFFICULTY_TARGET                             = 120; // seconds

در خطوط زیر هم باید شماره پورت های لازم رو قرار بدید که بهتره توسط برنامه دیگه ای استفاده نشه.البته اگر تست هست میتونیدمقادیر توی مثال رو قرار بدید .

const int P2P_DEFAULT_PORT = 17236;
const int RPC_DEFAULT_PORT = 18236;

این چند خط هم پیدا کنید و آدرس آیپی سیستم خودتون رو به جای یکی از آیپی های مثال قرار بدید و اون خط رو آن کامنت کنید.(اگر میخواید پروژه در شبکه خانگیتون راه بندازید آیپی داخلیتون رو بدید.

const std::initializer_list<const char*> SEED_NODES = {
  "۱۱۱٫۱۱٫۱۱٫۱۱:۱۷۲۳۶",
  "۲۲۲٫۲۲٫۲۲٫۲۲:۱۷۲۳۶",
};

این خط هم مقدار کارمزدی هست که گرفته میشه و با توجه به کانفیگ خودتون قرار بدید.

const uint64_t MINIMUM_FEE = 10;

این خط هم همون ۰x8 قرار بدید.مثل زیر:

const uint64_t CRYPTONOTE_PUBLIC_ADDRESS_BASE58_PREFIX = 0x8;

حالا برید به فایل CMakeList.txt file در همون پوشه و اسم ارزتون رو در

set_property(TARGET daemon PROPERTY OUTPUT_NAME "X")

این خط به جای X قرار بدید و بعدش بدون فاصله یه d قرار بدید.

بعد برید به

src/p2p/p2p_networks.h

و مقادیر درون

const static boost::uuids::uuid CRYPTONOTE_NETWORK = { { 0xA1, 0x1A, 0xA1, 0x1A, 0xA1, 0x0A, 0xA1, 0x0A, 0xA0, 0x1A, 0xA0, 0x1A, 0xA0, 0x1A, 0xA1, 0x1A } };

رو شانسی تغییر بدید بدون اینکه خراب کنید خط رو.

خب !

مرحله اول تموم شد حالا باید کامپایل کنیم.

برای کامپایل به Boost 1.55 یا بالاتر و Cmake و Gcc نیاز دارید.

بعد از نصب اون ها برید به پوشه پروژه و توی ترمینال make بزنید تا ساخته بشه.البته احتمالا چند جا اشتباه کردید که با ارور مواجه میشید و باید حلش کنید.بعد با ارور های بعدی و … تا بالاخره کامپایل بشه.

حالا برید به پوشه build/release/src و توی ترمینال

./Xd --print-genesis-tx

به جای X اسم ارزتون و d هم که جلوشه رو بزنید.

اگر همچی درست باشه یه رشته کد بهتون میده که اولین بلاک ارزتون هست.

برید اون کد رو توی فایل src/cryptonote_config.h در

const char GENESIS_COINBASE_TX_HEX[] = "";

بین “” بزنید.

بعد تو پوشه اصلی پروژه بزنید make clean.

و دوباره کامپایل کنید.

اگر همچی درست پیش بره کار شما تمومه.توی پوشه build/release/src فایل های اجرایی هستن که سه تای مهمش اینا هستن.

Xd ( ایکس یعنی نام ارز الکترونیک شما که دی هم جلوشه…) : این هسته ارز شما هست که باید اجرا باشه همیشه.میشه باهاش ماین هم کرد و امکانات دیگه ای هم داره…

SimpleMiner : این یه ماینر نمونه هست که تحت ترمینال اجرا میشه و گرافیکی نیست و حتما هم باید بهش یه آدرس Pool ماین ارزتون رو بدید…

SimpleWallet : این یه کیف پول نمونه هست برای ارزتون که باز گرافیکی نیست…

خب تموم شد !

حالا ارز شما آماده هست.اگر اشکالی داشتید تا اونجایی که بدونم کمکتون میکنم.

کپی هم فقط با ذکر منبع در غیر این صورت … (اگر ببینم خودتون میدونید :دی )

موفق باشید !

1 دیدگاه در “ارز الکترونیک خودتان را بسازید !

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *