ساختن دموکراسی دیجیتال برای ایرانیان — با اثباتهای دانش-صفر و بدون هیچ سازشی در حریم خصوصی
انتشار توسط Transcf.org — مارس ۲۰۲۶
مرتبط: #VO
ما در فدراسیون جوامع فراملی (Transnational Community Federation e. V.) باور داریم که مشارکت دموکراتیک یک حق بنیادین است — نه امتیازی که نهادها به میل خود اعطا کنند. در طول سال گذشته، تیم ما پلتفرم متنباز جمهور را ساخته است: بستری که به ایرانیان اجازه میدهد هویت خود را تأیید کنند و در پیشنهادهای جمعی رأی دهند، بدون آنکه هرگز اطلاعات شخصیشان در اختیار کسی قرار گیرد — حتی ما.
امروز میخواهیم بگوییم کجای کار هستیم، چطور کار میکند، و به کجا میرویم.
مسئله
میلیونها ایرانی — در داخل و خارج از کشور — هیچ سازوکار قابل اعتمادی برای تصمیمگیری جمعی ندارند. ابزارهای موجود یا تحت نظارت حکومت هستند، یا در برابر دستکاری با حسابهای جعلی آسیبپذیرند، یا نیاز به اعتماد به یک اپراتور متمرکز با دادههای حساس شخصی دارند.
ما پرسیدیم: اگر بتوانید ثابت کنید که شهروند ایرانی هستید و رأی تأییدشدهای بدهید، بدون آنکه مشخص شود چه کسی هستید، چه؟
جمهور چگونه کار میکند
جمهور یک اپلیکیشن موبایل (iOS و Android) است که سه فناوری را ترکیب میکند تا مشارکت دموکراتیک حافظ حریم خصوصی را ممکن سازد:
۱. اسکن اسناد با NFC — اثبات شهروندی به صورت محلی
هر پاسپورت ایرانی و کارت ملی هوشمند مدرن حاوی یک تراشه NFC با گواهی دیجیتال امضاشده رمزنگاریشده است. جمهور این تراشه را مستقیماً روی گوشی شما میخواند.
نکته حیاتی: دادههای پاسپورت/کارت ملی شما هرگز از دستگاهتان خارج نمیشود. اپلیکیشن تراشه را میخواند، آنچه برای تولید اثبات نیاز دارد استخراج میکند، و بقیه را دور میریزد. هیچ سروری هرگز نام، عکس، شماره پاسپورت یا هیچ اطلاعات شناسایی شخصی شما را نمیبیند.
۲. اثباتهای دانش-صفر — اثبات بدون افشا
پس از اسکن سند شما، جمهور یک اثبات دانش-صفر تولید میکند — یک اثبات ریاضی که در اصل میگوید: «من دارنده یک سند معتبر صادرشده توسط دولت ایران هستم و مدت اعتبار آن تمام نشده است».
ما بسته به رمزنگاری سند از دو سیستم اثبات استفاده میکنیم:
- Circom (Groth16) برای اسناد مبتنی بر RSA (بیشتر پاسپورتهای ایرانی)
- Noir (UltraPlonk) برای اسناد مبتنی بر ECDSA (کارتهای ملی هوشمند ایرانی، پاسپورتهای اروپایی)
تولید اثبات کاملاً روی گوشی انجام میشود. سپس اثبات به بلاکچین Rarimo L2 ارسال میشود، جایی که یک قرارداد هوشمند آن را تأیید و هویت ناشناس شما را ثبت میکند.
۳. رأیگیری بلاکچینی — ضدتقلب و قابل تأیید
پس از ثبتنام، میتوانید به پیشنهادهای جمعی رأی دهید. هر رأی:
- ناشناس است — به یک نالکننده (nullifier) رمزنگاری متصل است، نه به هویت شما
- تأییدشده است — فقط شهروندان ثبتشده میتوانند رأی دهند
- ضدتقلب است — روی یک بلاکچین عمومی ثبت میشود که هیچ طرف واحدی آن را کنترل نمیکند
- یکنفر-یکرأی — همان نالکننده نمیتواند دوبار در یک پیشنهاد رأی دهد
رأیها از طریق یک سرویس ریلیر (relayer) سبک ارسال میشوند که تراکنشها را امضا و پخش میکند. ریلیر هرگز نمیداند شما چه کسی هستید — فقط یک اثبات معتبر دریافت و منتشر میکند.
چه چیزی این را متفاوت میکند
حریم خصوصی با معماری، نه با سیاستگذاری. بیشتر پلتفرمهای رأیگیری از شما میخواهند به آنها اعتماد کنید و قول میدهند از دادههایتان سوءاستفاده نکنند. جمهور طوری طراحی شده که حتی اگر سرورهای ما مصادره شوند، هیچ داده رأیدهندگانی برای استخراج وجود نخواهد داشت. دادههای پاسپورت شما به صورت محلی پردازش شده و هرگز ارسال نمیشود. هویت شما روی زنجیره یک تعهد رمزنگاری است، نه یک نام.
تأیید غیرمتمرکز. برخلاف سیستمهایی که دادههای پاسپورت را از طریق سرور بکاند برای تأیید مسیردهی میکنند، اپلیکیشن ما تمام عملیات رمزنگاری را روی دستگاه انجام میدهد. گوشی مستقیماً از طریق RPC با بلاکچین ارتباط برقرار میکند. تنها جزء بکاند یک ریلیر تراکنش حداقلی است.
پشتیبانی از کارت ملی هوشمند ایرانی. کارتهای ملی هوشمند ایرانی (INID / کارت ملی هوشمند) از یک پروتکل تراشه اختصاصی استفاده میکنند که هیچ پروژه متنباز دیگری از آن پشتیبانی نمیکند. ما پشتیبانی سفارشی آن را از ابتدا تا انتها ساختیم، شامل ماژولهای بومی خواندن NFC، مدارهای ZK نوآر، و ادغام تخصصی قرارداد هوشمند.
آنچه تا کنون ساختهایم
اپلیکیشن موبایل جمهور — یک اپلیکیشن React Native (Expo) با:
- اسکن NFC برای پاسپورتها و کارتهای ملی ایرانی
- تولید اثبات دانش-صفر روی دستگاه (Noir و Circom)
- رأیگیری ناشناس روی زنجیره با مرور کامل پیشنهادها
- رابط کاربری فارسیاول با بومیسازی کامل فارسی و پشتیبانی RTL
- کیف پول رمزنگاری داخلی (BabyJubjub)
- صفحه اصلی به سبک آیفون با آیکونهای قابل جابجایی
قراردادهای هوشمند — مستقر روی شبکه اصلی Rarimo L2:
- قراردادهای ثبت هویت (مشترک با زیرساخت Rarimo)
- قراردادهای رأیگیری اختصاصی ما (NoirIDVoting، ProposalsState)
- پشتیبانی از ثبتنام هم با پاسپورت و هم با کارت ملی
سرویسهای بکاند — زیرساخت حداقلی:
- ریلیر ثبتنام برای تراکنشهای تأیید هویت
- ریلیر تأیید اثبات برای ارسال رأی
- دروازه Nginx با SSL در api.iranians.vote
همه چیز متنباز است در سازمان Iranians-Vote-Digital-Democracy در گیتهاب.
پشته فناوری
| لایه | فناوری |
| اپلیکیشن موبایل | React Native, Expo SDK 52, TypeScript |
| اثباتهای ZK | Noir (UltraPlonk), Circom (Groth16) |
| بلاکچین | Rarimo L2 (سازگار با EVM) |
| خواندن NFC | ماژولهای بومی سفارشی (Swift/Kotlin) |
| قراردادهای هوشمند | Solidity (Hardhat) |
| مدیریت وضعیت | Zustand با ذخیرهسازی امن رمزنگاریشده |
| رابط کاربری | NativeWind (Tailwind CSS), tailwind-variants |
گفتگو: نه فقط رأیگیری
دموکراسی چیزی بیش از انداختن یک رأی در صندوق است. نیاز به بحث آگاهانه، رویارویی با دیدگاههای مختلف، و گفتگوی واقعی قبل از تصمیمگیری دارد.
به همین دلیل ما آگورا (Agora) را — یک پلتفرم گفتگوی متنباز — در جمهور ادغام میکنیم. آگورا از خوشهبندی آماری (PCA، k-means) برای تجسم گروههای نظری و نمایان کردن نقاط اجماع و اختلاف استفاده میکند. کاربران میتوانند درباره پیشنهادها بحث کنند، ببینند نسبت به دیگران کجا ایستادهاند، و قبل از رأیگیری انتخابهای آگاهانهتری داشته باشند.
ادغام ما رشتههای بحث آگورا را با هویت کیف پول جمهور متصل میکند، بنابراین همان هویت ناشناسی که برای رأیگیری استفاده میکنید، به بحثهای جمعی نیز منتقل میشود. بدون حسابهای جداگانه، بدون تأیید اضافی.
ما همچنین روی ویژگی قطبنمای مدنی کار میکنیم — ابزاری برای کاربران تا جهتگیری سیاسی خود را در ابعاد مختلف ترسیم کنند و کشف کنند کدام مواضع پیشنهادها با ارزشهایشان همسو است. همچنین ویژگیهای شبکهسازی و تحلیلی را در آن پنهان کردهایم، پس حتماً نگاهی بیندازید.
قدمهای بعدی
گسترش پشتیبانی از پاسپورت — در حالی که بیشتر کارتهای ملی از ابتدا تا انتها کار میکنند، پشتیبانی از پاسپورتهای ایرانی و در نهایت اسناد ملیتهای دیگر را گسترش دادهایم. زیرساخت ثبتنام آماده است؛ ما در حال تکمیل جریان رابط کاربری برای اسکن مختص پاسپورت هستیم.
رأیگیری سادهشده — برای نظرسنجیهای جمعی که نیاز به تضمینهای کامل تأیید ZK ندارند، یک سیستم رأیگیری سبکتر با امضای کیف پول میسازیم. این امکان نظرسنجیهای فوری با یکپارچگی رمزنگاری اما بدون زمان ۳۰ تا ۶۰ ثانیهای تولید اثبات را فراهم میکند.
مدیریت محتوای فارسی با هوش مصنوعی — ما Claude را برای مدیریت محتوای فارسیزبان، برچسبگذاری خوشهها، و بررسی انطباق هنجاری با استانداردهای بینالمللی حقوق بشر (اعلامیه جهانی حقوق بشر، میثاق بینالمللی حقوق مدنی و سیاسی، کنوانسیون رفع تبعیض علیه زنان و غیره) ادغام میکنیم. این تضمین میکند که بحثهای جمعی سازنده و مبتنی بر ارزشهای جهانی باقی بمانند.
چرا این مهم است
برای جوامع ایرانیان برونمرزی، جمهور چیزی ارائه میدهد که تا دیروز وجود نداشت: راهی برای بیان ترجیحات جمعی، تصمیمگیری، و ایجاد اجماع — با تضمینهای ریاضی که هیچکس نمیتواند رأیدهندگان فردی را شناسایی کند، و هیچ طرف واحدی نمیتواند نتایج را دستکاری کند.
برای جامعه مدنی به طور گستردهتر، جمهور اثبات مفهومی است که رأیگیری ناشناس تأییدشده امروز از نظر فنی ممکن است. ابزارهای رمزنگاری وجود دارند. زیرساخت بلاکچین وجود دارد. آنچه لازم است تلاش مهندسی برای دسترسپذیر کردن این ابزارها برای مردم عادی است.
این همان چیزی است که TCF دارد میسازد.
مشارکت کنید
- گیتهاب: github.com/jomhoor
جمهور کاملاً متنباز است. ما از مشارکتکنندگان استقبال میکنیم — چه رمزنگار باشید، چه توسعهدهنده موبایل، چه مترجم، یا کسی که به دموکراسی دیجیتال اهمیت میدهد.
جمهور به معنای «عموم مردم» یا «مردم» در فارسی است — ریشه «جمهوری» به معنای «حکومت مردم». ما این نام را انتخاب کردیم چون دموکراسی متعلق به مردم است، و حالا ابزارهای تمرین آن نیز همینطور.
