اپلیکیشن اندرویدی فلشکارت آموزشی جامع SNARKs، NIZKs و تبادل کلید - از مفاهیم پایه تا پیادهسازی
🎓 دوره آموزشی جامع
📚 اطلاعات دوره
عنوان دوره: دوره جامع SNARKs، NIZKs و تبادل کلید - از مفاهیم پایه تا پیادهسازی
موضوع کلی: رمزنگاری و امنیت اطلاعات
موضوع میانی: اثباتهای رمزنگاری پیشرفته
📋 سرفصلهای دوره
- 1. مقدمهای بر اثباتهای رمزنگاری و تعاملی بودن
- 2. تعریف سیستم اثبات تعاملی (Interactive Proof)
- 3. نقش Verifier و Prover در اثبات تعاملی
- 4. مفهوم کامل بودن (Completeness) و درستی (Soundness)
- 5. مقدمهای بر اثباتهای غیرتعاملی (NIZK)
- 6. تاریخچه و انگیزه ایجاد SNARKs
- 7. تفاوت SNARKs با اثباتهای کلاسیک
- 8. مفهوم مختصر بودن (Succinctness) در SNARKs
- 9. چارچوب امنیتی SNARKs: Soundness تطبیقی
- 10. مقدمهای بر توابع دروازهای (Hash Functions) در اثبات
- 11. مدارهای حسابی (Arithmetic Circuits) به عنوان زبان اثبات
- 12. تبدیل یک مسئله محاسباتی به مدار حسابی
- 13. مقدمهای بر سیستمهای شاهد (Witness) و رابطه (Relation)
- 14. سیستم اثبات Pinocchio: معماری کلی
- 15. QAP (Quadratic Arithmetic Program) : مفهوم و ساختار
- 16. تبدیل مدار حسابی به QAP
- 17. مفهوم چندجملهای در اثبات SNARK
- 18. تکنیک Linear PCP (Probabilistically Checkable Proof)
- 19. الگوریتم Key Generation در SNARKs (Proving Key و Verification Key)
- 20. ساخت Proving Key با استفاده از متنهای رمزنگاری شده
- 21. الگوریتم Prover: تولید اثبات از روی QAP
- 22. الگوریتم Verifier: تأیید اثبات با استفاده از Verification Key
- 23. نقش جفتسازی (Pairing) در SNARKs
- 24. مفاهیم پایه جفتسازی روی منحنیهای بیضوی
- 25. مقدمهای بر منحنیهای بیضوی مناسب برای SNARKs (مثل BN254)
- 26. استفاده از جفتسازی برای بررسی برابری چندجملهایها
- 27. مفهوم CRS (Common Reference String) در SNARKs
- 28. مقدمهای بر NIZK (Non-Interactive Zero-Knowledge)
- 29. تفاوت NIZK با SNARK: تعریف و کاربردها
- 30. سیستم اثبات NIZK مبتنی بر رمزنگاری کلید عمومی
- 31. مقدمهای بر اثباتهای NIZK با استفاده از Σ-protocols
- 32. تبدیل Σ-protocol به NIZK با تکنیک Fiat-Shamir
- 33. تکنیک Fiat-Shamir: تبدیل تعاملی به غیرتعاملی
- 34. نقش توابع دروازهای در تکنیک Fiat-Shamir
- 35. مفهوم Random Oracle Model در اثبات NIZK
- 36. مقدمهای بر zk-SNARKs: ترکیب دانش صفر با مختصر بودن
- 37. تولید اثبات با دانش صفر (Zero-Knowledge) در SNARK
- 38. تکنیکهای پنهانسازی شاهد در اثبات (مثل Blinding)
- 39. مقدمهای بر سیستم اثبات Groth16
- 40. معماری و کارایی سیستم Groth16
- 41. مقایسه Groth16 با Pinocchio از نظر اندازه اثبات
- 42. مقدمهای بر PLONK: یک سیستم اثبات جهانی
- 43. مفهوم Universal Setup در PLONK
- 44. تفاوت PLONK با سیستمهای وابسته به مدار
- 45. مقدمهای بر اثباتهای مبتنی بر Polynomial Commitment
- 46. مفهوم Commitment Scheme برای چندجملهایها
- 47. استفاده از KZG (Kate-Zaverucha-Goldberg) Commitment
- 48. مقدمهای بر تبادل کلید (Key Exchange) در رمزنگاری
- 49. پروتکل تبادل کلید Diffie-Hellman (DH)
- 50. امنیت تبادل کلید در برابر حملات Man-in-the-Middle
- 51. استفاده از اثبات NIZK برای احراز هویت در تبادل کلید
- 52. پروتکل STS (Station-to-Station) با اثبات NIZK
- 53. پروتکل تبادل کلید مبتنی بر هویت (IBKE)
- 54. نقش SNARKs در تبادل کلید با اثبات صحت کلید
- 55. مفهوم Key Exchange با اثبات مالکیت کلید خصوصی
- 56. تبادل کلید امن در برابر حملات کوانتومی: مقدمه
- 57. مقدمهای بر رمزنگاری مبتنی on Lattice برای تبادل کلید
- 58. پروتکل NewHope و اثبات صحت آن
- 59. پروتکل Kyber و نقش اثباتها در امنیت آن
- 60. ترکیب SNARKs با Key Exchange برای اثبات هویت
- 61. مثال عملی: اثبات صحت یک کلید عمومی با SNARK
- 62. مقدمهای بر اثباتهای تجمعی (Aggregation Proofs)
- 63. مفهوم Batch Verification در اثباتهای NIZK
- 64. استفاده از SNARKs برای تجمیع چند اثبات
- 65. مقدمهای بر اثباتهای بازگشتی (Recursive SNARKs)
- 66. معماری IVC (Incrementally Verifiable Computation)
- 67. کاربرد SNARKs بازگشتی در بلاکچین
- 68. مقدمهای بر زبانهای توصیف مدار (مانند Circom)
- 69. نوشتن یک مدار ساده در Circom
- 70. کامپایل مدار Circom به QAP
- 71. تولید Proving Key و Verification Key با ابزار SnarkJS
- 72. اجرای Prover با SnarkJS برای یک مدار ساده
- 73. اجرای Verifier با SnarkJS و تأیید اثبات
- 74. پیادهسازی یک تبادل کلید ساده با اثبات NIZK در پایتون
- 75. مقایسه عملکرد SNARKs با NIZK کلاسیک
- 76. چالشهای امنیتی در پیادهسازی SNARKs
- 77. حملات احتمالی به سیستمهای SNARK (مثل Weak Fiat-Shamir)
- 78. روشهای بهینهسازی اثباتها برای کارایی بالا
- 79. مقدمهای بر اثباتهای transparent (مثل STARKs)
- 80. تفاوت STARKs با SNARKs از نظر Setup
- 81. کاربردهای عملی SNARKs در سیستمهای غیرمتمرکز
- 82. نقش SNARKs در حریم خصوصی تراکنشها
- 83. مرور کلی بر پروتکلهای تبادل کلید مدرن با اثبات
- 84. جمعبندی و مسیرهای پیشرفته در اثباتهای رمزنگاری
این اپلیکیشن فارسی برای یادگیری و مرور محتوای آموزشی از طریق فلشکارت طراحی شده است. کارتها را یکییکی مرور کنید، پاسخ پرسشها را به یاد بیاورید و نتیجه هر پاسخ را ثبت کنید. محتوای دوره پس از نصب درون برنامه در دسترس است تا برای مطالعه روزمره معمولاً به اتصال مداوم اینترنت نیاز نداشته باشید.
محتوای آموزشی در قالبهای متنوع ارائه میشود تا هم برای یادگیری مفاهیم جدید و هم برای تثبیت آموختهها قابل استفاده باشد.
- رابط کاربری فارسی و راستچین با فونت وزیر.
- تم روشن و تیره مطابق تنظیمات سیستم.
- صفحهبندی ساده برای انتخاب دوره و شروع مرور.
- نمایش تعداد دفعات مرور هر فصل.
- انتخاب چند فصل برای مرور همزمان.
- امکان تمرکز بر فصلهایی که هنوز مرور نشدهاند.
این اپلیکیشن برای دانشآموزان، دانشجویان، داوطلبان آزمونها و علاقهمندان به یادگیری طراحی شده است؛ بهویژه کسانی که میخواهند مطالب آموزشی را در زمانهای کوتاه مرور کنند، دانستههای خود را بسنجند و مطالعه منظمتری داشته باشند.
نظرات
هنوز نظری ثبت نشده است.
وارد شوید تا نظر ثبت کنید.