معرفی و دانلود کتاب برنامه نویسی بیت کوین: آموزش برنامه نویسی بیت کوین از ابتدا
برای دانلود قانونی کتاب برنامه نویسی بیت کوین و دسترسی به هزاران کتاب و کتاب صوتی دیگر، اپلیکیشن کتابراه را رایگان نصب کنید.
معرفی کتاب برنامه نویسی بیت کوین: آموزش برنامه نویسی بیت کوین از ابتدا
جیمی سانگ بهعنوان یکی از توسعهدهندههای ارزهای دیجیتال، در کتاب برنامه نویسی بیت کوین، چگونگی برنامهنویسی این رمزارز را آموزش میدهد. او در این اثر علمی، اصول اولیه مثل ریاضیات، رمزنگاری، بلاک و تراکنشهای بیتکوین و سیستم پرداخت بلاکچِین را به شکلی جامع توضیح میدهد تا خواننده به کمک آن بتواند برنامهنویسی بیتکوین را با استفاده از پایتون 3 بیاموزد. این کتاب کاربردی، نحوهی کار تحت پوشش لایه نهان را نیز توضیح میدهد.
دربارهی کتاب برنامه نویسی بیت کوین
تردیدی نیست که از ابتدای دههی دوم قرن بیستویکم و با ظهور ارزهای دیجیتال، تصویر آیندهی جهان نیز دستخوش تغییر شد؛ بهویژه وقتی صحبت از آن میشود که در دهههای پیش رو، سیستم مراودههای مالی بر اساس رمز ارزها تعریف خواهد شد. در این میان، بیتکوین مشهورترین و بهنوعی پرچمدار بازار دیجیتال است و گرچه درحالحاضر، از نظر جهش قیمتی در دورهی رکود به سر میبرد، اما نمیتوان انکار کرد که بهزودی این رمز ارز بار دیگر رکوردشکنی میکند و قیمتش به 100 هزار دلار میرسد! شاید به دلیل همین اهمیت، جیمی سانگ (Jimmy Song)، از مشهورترین برنامهنویسهای کریپتو، بهمنظور آموزش برنامهنویسی این ارز دیجیتال، کتابی به نام برنامه نویسی بیت کوین (Programming Bitcoin: Learn How to Program Bitcoin from Scratch) را در سال 2019 منتشر کرد.
این اثر آموزشی در 14 فصل نوشته شده و خوانندهی کتاب میتواند با مطالعهی آن، برنامه نویسی بیت کوین را از ابتدا فرابگیرد. فصل اول کتاب به تعریف میدانها و مجموعههای متناهی اختصاص دارد و طی آن کدنویسیِ جمع، تفریق، ضرب و توان در پایتون آموزش داده میشود. نویسنده در فصلهای بعد، کدنویسی و رمزنگاری منحنیهای بیضوی در پایتون، آنالیز و سریالسازی، اجزای تراکنشها، نحوهی ذخیره و انتقال رمزنگاریهای اولیه، اسکریپت (Script)، بلوکها، شبکهسازی، فیلترهای بلوم و سگویت (Segwit) را شرح میدهد. جیمی سانگ در فصل پایانی کتاب برنامهنویسی بیتکوین، به توضیح بعضی موضوعات پیشرفته مانند کیفهای پول سلسلهمراتبی، هستههای یادآور، کانالهای پرداخت و شبکهی لایتنینگ، کیف پول تست نت، جستوجوگر بلاک و کتابخانهی ابزار میپردازد و دستآخر خوانندهی کتاب میتواند بسیاری از کلاسهای پایتون را بنویسد، و تراکنشهای خود را ایجاد و در شبکه پخش کند.
این اثر آموزشی، فنآوری بیت کوین را در سطح کلی آموزش میدهد و خواننده با مطالعهی آن میتواند با رمزگذاری تمام اجزای لازم برای کتابخانهی این رمز ارز آشنا شود. کتاب برنامه نویسی بیت کوین نوشتهی جیمی سانگ با ترجمهی مشترک حسینعلی باباجان زاده تهمتن، جواد وحیدی و علی باباجان زاده تهمتن در انتشارات «فنآوری نوین» منتشر شده است.
(این کتاب دارای حجم بیش از 20 مگابایت است. لطفاً قبل از خرید، نسخهی نمونه را دریافت و از صحت نمایش کتاب در موبایل یا تبلت اطمینان حاصل کنید.)
در نکوداشت کتاب برنامه نویسی بیت کوین
- تمرینهای این کتاب نهتنها شیوهی کار با بلاکچِین را به شما میآموزد؛ بلکه به شما تجربهی شهودی درک ظرافت و زیبایی این فناوری را نیز به اشتراک میگذارد. (Ken Liu، نویسنده و برنامهنویس آمریکایی)
کتاب برنامه نویسی بیت کوین مناسب چه کسانی است؟
این کتاب به علاقهمندان حوزهی کریپتو و به طور مشخص ارز دیجیتالی بیتکوین پیشنهاد میشود.
با جیمی سانگ بیشتر آشنا شویم
جیمی سانگ یکی از توسعهدهندههای بیتکوین است که از سال 2013 در این حوزه کار میکند. او در سال 2019 کتاب «برنامهنویسی بیتکوین» را نوشت تا اصول این رمز ارز را به مردم توضیح دهد. او مدیر یک شرکت خصوصی به نام Programming Blockchain هم هست که در آن تکنیکهای گوناگون جهت توسعهی بیتکوین را به علاقهمندان به این ارز دیجیتالی آموزش میدهد. جیمی سانگ منتقد بلاکچینهای مجاز و رمزارزهای جایگزین است و اعتقاد دارد که رمز ارز اتریوم باعث غیرمتمرکز شدن اینترنت میشود.
فهرست مطالب کتاب
پیشگفتار
مقدمه
فصل اول: میدانهای متناهی
1-1. یادگیری ریاضی سطح عالی
2-1. تعریف میدان متناهی
3-1. تعریف مجموعههای متناهی
4-1. ساخت یک میدان محدود در پایتون 5-1. ریاضیات مدولی
6-1. ریاضیات مدولار در پایتون
7-1. جمع و تفریق میدان محدود
8-1. کد نویسی جمع و تفریق در پایتون
9-1. ضرب و توان میدان محدود
10-1. کد نویسی ضرب در پایتون
11-1. کد نویسی توان در پایتون
12-1. تقسیم میدان محدود
13-1. قضیه کوچک فرما
14-1. تعریف مجدد توان
15-1. نتیجه گیری
فصل دوم: منحنیهای بیضوی
2-1. تعریف
2-2. کد نویسی منحنیهای بیضوی در پایتون
3-2. جمع نقطه ای
4-2. ریاضیات جمع نقطهای
5-2. کد نویسی جمع نقطهای
6-2. جمع نقطهای برای زمانی که X_1≠X_2است
7-2. کد استخراج جمع
8-2. کد نویسی جمع نقطهای برای زمانی که X_1≠X_2 است
9-2. جمع نقطه برای زمانی که
10-2. استخراج شیب مماس بر منحنی
11-2. کد نویسی جمع نقطهای برای زمانی که P_1=P_2 است
12-2. کد نویسی یک استثنا دیگر
13-2. نتیجهگیری
فصل سوم: رمزنگاری منحنیهای بیضوی
1-3. منحنیهای بیضوی در حوزه اعداد حقیقی
2-3. منحنیهای بیضوی در حوزه میدانهای محدودشده
3-3. کد نویسی منحنیهای بیضوی در حوزه میدانهای محدود
4-3. جمع نقطه بر روی میدانهای محدود
5-3. کد نویسی جمع نقطه بر روی میدانهای محدود
6-3. ضرب اسکالر برای منحنیهای بیضوی
7-3. چرا به این مشکل (مسئله) Log گسسته میگویند؟
8-3. Redux ضرب اسکالر
9-3- گروههای ریاضی
10-3. همانی
11-3. بسته بودن
12-3. معکوسپذیری
13-3. جابجایی
14-3. شرکتپذیری
15-3. کد نویسی ضرب اسکالر
16-3. تعریف انحنا برای بیت کوین
17-3. 2^256 چقدر بزرگ است؟
18-3. کار با secp256k1
19-3. رمزنگاری کلید عمومی
20-3. امضا و تائید
21-3. درج هدف
22-3. چرا k را آشکار نمیکنیم
23-3. تائید عمیق
24-3. چرا دو دور sha256؟
25-3. تائید یک امضا
26-3. برنامهنویسی تائید امضاء
27-3. امضای عمیق
28-3. ایجاد یک امضا
29-3. مراقب تولید اعداد تصادفی باشید
30-3. برنامهنویسی امضاء پیام
31-3. اهمیت یک k منحصربهفرد
32-3. نتیجهگیری فصل چهارم: سریال سازی
1-4. فرمت SEC فشرده نشده
2-4. اندیان بزرگ و کوچک
2-4. فرمت SEC فشرده
4-4. بیان ریاضی
5-4. امضاهای DER
6-4. Base
7-4. انتقال کلید عمومی شما
8-4. چرا Base58 در راه خروج است؟
9-4. فرمت آدرس
10-4. Testnet چیست؟
11-4. فرمت WIF
12-4. اندین ردوکس بزرگ و کوچک
13-4. نتیجهگیری فصل پنجم: تراکنشها
1-5. اجزای تراکنش 2-5. نسخه
3-5. ورودیها
4-5. تجزیه اسکریپتها
5-5. دنباله و زمان قفل
6-5. تجزیه (تحلیل =parsing) اسکریپت
7-5. خروجیها
8-5. مجموعه UTX0
9-5. قفل زمانی
10-5. وقتی زمان قفل نادیده گرفته میشود
11-5. کد نویسی تراکنشها
12-5. هزینه تراکنش
13-5. محاسبه هزینه
14-5. نتیجهگیری فصل ششم: اسکرپت
1-6. مکانیزمهای اسکریپت
2-6. چرا بیت کوین تورینگ کامل نیست؟
3-6. اسکریپت چگونه کار میکند
4-6. نمونه عملیات
5-6. کد نویسی کدهای عملیاتی
6-6. تجزیه فیلدهای اسکریپت
7-6. عناصری که از 75 بایت طولانیتر هستند
8-6. کد نویسی تجزیهکننده اسکریپت و سریال ساز
9-6. ترکیب فیلدهای اسکریپت
10-6. کدینگ مجموعه دستورالعملهای ترکیبی
11-6. اسکریپتهای استاندارد
12-6. P2pk
13-6. کدنویسی ارزیابی اسکریپت
14-6. ایمن کردن ارزیابی اسکریپت
15-6. چینش المانها در زیرساختهای نهان
16-6. مشکلات کار با p2pk
17-6. چرا ساتوشی از فرمت SEC غیر فشرده استفاده کرد؟
18-6. حل مشکلات p2pk با استفاده از p2pkh
19-6. P2pkh 118
20-6. اسکریپتها را میتوان بهصورت دلخواه ساخت
21-6. کاربرد اسکریپتها
22-6. SHA-1 Piñat 124
23-6. نتیجهگیری
فصل هفتم: ایجاد و اعتبار سنجی تراکنش
1-7. اعتبار سنجی تراکنشها
2-7. بررسی میزان مصرف ورودیها
3-7. بررسی مجموع ورودیها در مقابل مجموع خروجیها
4-7. حادثه سرریز مقدار
5-7. چک کردن امضا
6-7. هش درجه دوم
7-7. تأیید کل تراکنش
8-7. ایجاد تراکنشها
9-7. چرا استفاده مجدد از آدرسها ایده بدی است؟
10-7. برآورد هزینه
11-7. انجام تراکنش
12-7. امضای تراکنش
13-7. ایجاد تراکنشهای خود در تست نت
14-7. نتیجهگیری
فصل هشتم: P2SH
1-8. کلیدهای خصوصی چندگانه برای یک کلید عمومی تجمیع شده
2-8. کیف پولهای با چند امضاء (MULTISIG)
3-8. کدنویسی OP_CHECKMULTISIG 143
4-8. مشکلات BARE-MULTISIG (کیف پول چند امضاء ساده)
5-8. (P2SH) PAY-TO-SCRPT-HASH
6-8. اهمیت حفظ RedeemScript
7-8. کدینگ p2sh
8-8. اسکریپتهای پیچیدهتر
9-8. آدرسها
10-8. تأیید امضای p2sh
11-8. نتیجهگیری
فصل نهم: بلوکها
1-9. تراکنشهای کوین بیس
2-9. ScriptSig
3-9. BIP0034
4-9. هدرهای بلوکی
5-9. نسخه
6-9. بلوک قبلی
7-9. برچسب زمانی (timestamp) 8-9. Bits
9-9. Nonce (عددی که فقط یک بار استفادهشده است)
10-9. Pow (اثبات کار)
11-9. چگونه یک ماینر هش جدید تولید میکند
12-9. هدف
13-9. سختی
14-9. نتیجهگیری
فصل دهم: شبکهسازی
1-10. پیامهای شبکه
2-10. پارسینگ پیلود
3-10. دست دادن شبکه
4-10. اتصال به شبکه
5-10. گرفتن هدرهای بلوک
6-10. پاسخ هدرها
7-10. نتیجهگیری
فصل یازدهم: تائید پرداخت تسهیل شده
1-11. انگیزه (محرک)
2-11. درخت مرکل
3-11. مراقب درختان مرکل باشید!
4-11. خانواده مرکل
5-11. سطح خانواده مرکل
6-11. ریشه مرکل
7-11. ریشه مرکل در بلوکها
8-11. استفاده از درخت مرکل
9-11. اثبات SPV چقدر ایمن است؟
10-11. بلوک مرکل
11-11. ساختار درخت مرکل
12-11. کد نویسی یک درخت مرکل
13-11. دستور مرکل بلوک
14-11. استفاده از پرچم بیتها و هشها
15-11. نتیجه گیری
فصل دوازدهم: فیلترهای بلوم
1-12. فیلتر بلوم چیست
2-12. رفتن یک قدم جلوتر
3-12. فیلترهای بلومBIP0037
4-12. بارگذاری یک فیلتر بلوم
5-12. دریافت بلوکهای مرکل
6-12. به دست آوردن تراکنشهای سود
7-12. نتیجهگیری
فصل سیزدهم: سگویت (Segwit)
1-13. P2wpkh
2-13. چکش خواری تراکنش
3-13. حل مشکل چکش خوارگی
4-13. تراکنشهای p2wpkh
5-13. P2sh-p2wpkh
6-13. آیا کسی میتواند خروجیهای سگویت (Segwit) را خرج کند؟
7-13. کدنویسی p2wpkh و p2sh-p2wsh
8-13. P2wsh
9-13. P2sh-p2wsh
10-13. کد نویسی p2wsh وp2sh-p2wsh
11-13. پیشرفت دیگر
12-13. نتیجه گیری
فصل 14: موضوعات پیشرفته و مراحل بعدی
1-14. موضوعات پیشنهادی برای مطالعه بعدی
2-14. کیفهای پول قطعی HD (کیفهای پول سلسله مراتبی)
3-14. هستههای یادآور
4-14. کانالهای پرداخت و شبکه لایتنینگ
5-14. مشارکت
6-14. پروژههای بعدی پیشنهادی
7-14. کیف پول تست نت
8-14. بلاک اکسپلورر (جستجوگر بلاک)
9-14. فروشگاه اینترنتی
10-14. کتابخانه ابزار
11-14. یافتن یک شغل
12-14. نتیجه گیری
پیوست الف: حل تمرینها
مشخصات کتاب الکترونیک
نام کتاب | کتاب برنامه نویسی بیت کوین: آموزش برنامه نویسی بیت کوین از ابتدا |
نویسنده | جیمی سانگ |
مترجم | حسینعلی باباجان زاده تهمتن، جواد وحیدی، علی باباجان زاده تهمتن |
ناشر چاپی | انتشارات فناوری نوین |
سال انتشار | ۱۴۰۱ |
فرمت کتاب | |
تعداد صفحات | 309 |
زبان | فارسی |
شابک | 978-622-7393-79-8 |
موضوع کتاب | کتابهای برنامه نویسی پایتون |