Live edition loading…

PXke Algorand

Independent daily coverage of the Algorand ecosystem — verified reporting on wallets, DeFi, NFTs and infrastructure, fact-checked on-chain before it publishes.

← Latest stories

ZK Color Sort د ورځني پزل نمرې د صفر-پوهې ثبوتونو سره پر بلاک چین تاییدوي

· · · · · · ·

ZK Color Sort د ورځني پزل نمرې د صفر-پوهې ثبوتونو سره پر بلاک چین تاییدوي

د کریپټوګرافیک سکوربورډ سره یوه ورځنۍ پزل

ZK Color Sort هغه د رنګ اچولو پزل ته ورته دی چې تاسو یې د قهوې په انتظار کې په تلیفون باندې لوبوئ: دولس نلونه، لس رنګونه، تر هغه پورې اچول چې هر نل یو واحد رنګ ولري. مګر ټکی هغه دی چې پاڼه یې ستاسو له پای ته رسولو وروسته غواړي. د 'Scores' تڼۍ او د حرکتونو شمېرونکي تر څنګ لیکلي دي: 'خپل Algorand بټوه وصل کړئ ترڅو دا ځانګړتیا پرانیستل شي.' دا د تادیې خنډ نه دی. د ملاتړ شوي بټوې وصلول — اوسمهال Lute یا Pera — د لوبې اصلي هدف ته داخله ده: ستاسو د نمرې سپارل د Algorand مین نت هوښیار تړون ته د صفر-پوهې ثبوت سره یوځای، چې یو کریپټوګرافیک سند دی چې یوه ادعا ریښتیا ده پرته له دې چې تر شا یې معلومات ښکاره کړي. دلته ادعا دا ده چې 'ما دا ځانګړی پزل په N حرکتونو کې حل کړی دی'، او هغه معلومات چې شخصي ساتل کیږي د حرکتونو ترتیب دی. د پزل لوبول هیڅ بټوې ته اړتیا نلري؛ د ثبوت-کنټرول شوی سکوربورډ د بلاک چین پوړ دی.

د ورځې پزل پخپله له بلاک چین څخه اخیستل کیږي. فرنټ انډ د Algorand انډیکسر څخه غوښتنه کوي چې د UTC نیمېشپې وروسته لومړنی بلاک هډر ترلاسه کړي او په ټاکونکي ډول د هغه هډر له سید څخه تخته اشتقاق کوي، نو ننګونه عامه ده او د بلاک چین له تاریخ څخه د بیا تولید وړ ده، نه دا چې د یو پراختیا کونکي لخوا غوره شوې وي. قوانین د معیاري Color Sort بڼه تعقیبوي، چې په دقیق ډول په پروژې README کې ټاکل شوي: دولس نلونه د څلورو ظرفیت سره؛ لس رنګونه چې هر یو دقیقا څلور ځله ښکاري؛ دوه تش نلونه چې پکې واچول شي؛ یو قانوني اچول د یو واحد رنګ اعظمي پرله پسې لړۍ په یوه تش نل یا هغه نل باندې اچوي چې سر یې رنګ سره سمون خوري؛ پزل حل شوی وي کله چې هر غیر تش نل په بشپړ ډول یو رنګه وي. نمره د حرکتونو شمېر دی، لږ تر لږ ښه دی، او محلي غوره نمرې د خپلو بشپړو حرکتونو تاریخونو سره د براوزر localStorage کې ساتل کیږي. د بلاک چین رجسټر هیڅکله هغه نمره نه مني چې د لوبغاړي خپل ثبت شوي غوره نمرې ته ماتې ورنکړي.

صفر-پوهې ثبوت واقعا څه ثابتوي

د هر مهارت لوبې لپاره د بلاک چین هره لارډربورډ د اعتبار ستونزه لري: یو تړون چې شمېره مني، هر شمېره به ومني. یو باوري سرور چې لوبه تاییدوي، متمرکزیت بېرته راوړي، او د ګټونکي حل خپرول هغه ستراتیژي ښکاره کوي چې د هغې لامل شوې. ZK Color Sort دریمه لاره هڅه کوي — ثابت یې کړه، مه یې ښکاره کوه.

کله چې یو لوبغاړی سپارښتنه وړاندې کوي، براوزر د snarkjs له لارې د Circom سرکیټ چلوي، چې د جاوا سکریپټ د ثبوت کولو خلاص-سرچینه کتابتون دی، او د Groth16 ثبوت تولیدوي، چې د صفر-پوهې له خورا پراخه کارول شویو سکیمونو څخه دی. لومړی سپارښت د ۵۵ MB تقریبا د ثبوت کلید ډاونلوډ کوي چې لوبه یې د جامد شتمنۍ په توګه وړاندې کوي؛ له هغه وروسته ټوله پایپ لاین د کلاینټ په اړخ کې چلیږي، د لوبې تر شا هیڅ ثبوت سرور نه وي. د ټیکنالوژۍ انتخاب قصدي دی: د snarkjs-algorand کتابتون README یادونه کوي چې gnark، د بدیل AlgoPlonk تصدیق کونکي تر شا کمپیلر، WebAssembly ملاتړ نه کوي، چې د براوزر دننه د ثبوت تولید به ناشونی کړي — snarkjs TypeScript دی او هغه ځای کې چلیږي چې لوبغاړی هلته وي.

سرکیټ دې لوبې دقیق پروفایل ته تنظیم شوی — دولس نلونه، ظرفیت څلور، تر ۱۲۰ حرکتونو پورې، لس رنګونه، دوه تش نلونه — او د لوبې بشپړ منطق پلي کوي: یو معتبر پیلونکی تخته، د پورته اچولو قوانینو لاندې قانوني حرکتونه، د هر حرکت وروسته سم د حالت لیږدونه، یوه بشپړه حل شوې وروستۍ تخته، او د حرکت شمېر چې د ترسره شويو حرکتونو شمېر سره برابر وي. هغه څه چې عامه دي او هغه څه چې شخصي پاتې کیږي، ټول جوړښت دی:

مفهومپه واقعیت کې اغېزه
عام: پیلونکې تختههر څوک کولی شي تایید کړي چې یوه نمره کوم پزل ته اشاره کوي
عام: د حرکتونو شمېرهغه شمېره چې رجسټر یې ذخیره کوي او لارډربورډ پرې رتبه بندي کوي
عام: د پزل هویت او د بټوې پتهپه ثبوت کې تړل شوي، نو هغه ثبوت چې د یوه پزل یا یوه حساب لپاره جوړ شوی، د بل لپاره بیا کارول کېدای نشي
شخصي: د حرکتونو بشپړ ترتیبکتونکي کولی شي ادعا تایید کړي پرته له دې چې ګټونکې ستراتیژي کاپي کړي — د بلاک چین د پزل لارډربورډونو معمول وژونکی لامل

د بلاک چین د نمرې رجسټر

د ترلاسه کولو اړخ یو هوښیار تړون دی چې PuzzleScores نومیږي، په Algorand TypeScript کې لیکل شوی، د Puya-کمپایل شوي قرارداد عصري ژبه چې پخوانی PyTeal یې ځای په ځای کړی دی. دا د هر (پزل، بټوه) جوړې لپاره یوه نمره د اپلیکیشن په بکس ذخیره کې ساتي — کی-ویلیو حالت چې پخپله تړون پورې تړلی وي. کیلي د ۲۰ بایټه پزل کوډ د ۳۲ بایټه بټوې پتې سره یوځای شوی (ټول ۵۲ بایټه)؛ ارزښت یو واحد بایټ دی، چې ذخیره شوې نمرې په ۲۵۵ حرکتونو پورې محدودوي، د دې پزل د هر حل له اړتیا څخه ډېر پورته. د یوې ننوتۍ جوړول دقیق د بکس لږ تر لږه بیلانس اړتیا مصرفوي، چې تړون یې د اجرا په وخت کې اشتقاق کوي (۲،۵۰۰ میکروALGO اساس او ۴۰۰ د هر بایټ لپاره) او که لوبغاړی د removeScore له لارې ننوتۍ حذف کړي، بېرته یې ورکوي. یوازې-لوستلو میتودونه لوبغاړي ته اجازه ورکوي چې خپله نمره یا د بل چا نمره ترلاسه کړي.

دوه لیکنې لارې شتون لري: addScore د لومړۍ ننوتۍ لپاره، او updateScore، چې تړون یې یوازې هغه وخت مني چې نوې نمره د ذخیره شوې نمرې څخه په کلکه ټیټه وي. دواړه په ورته اتومیک ګروپ کې د یو ملګري 'تاییدونکي' لیږد ته اړتیا لري، او دلته دی چې ثبوت واقعا معاینه کیږي. فرنټ انډ د دریو لیږدونو یوه ډله جوړوي — یو صفر-ارزښته تادیه چې د منطقي لاسلیک حساب (یو حساب چې واک یې له شخصي کیلي پرځای یو پروګرام دی، د لوبې د تایید کیلي څخه اخیستل شوی) لخوا لاسلیک شوې، د لږ تر لږه بیلانس تادیه، او د اپلیکیشن زنګ. تړون تاییدوي چې د تصدیق تادیه د ترتیب شوي تاییدونکي پتې څخه راځي او د ثبوت عامه سیګنالونه د ادعا شوې نمرې، پزل کوډ، او لیږونکي سره سمون لري؛ د Groth16 تایید ریاضی پخپله د منطقي لاسلیک پروګرام دننه چلیږي، کوم چې د تصدیق تادیه یوازې هغه وخت تولیدوي چې شاهد ومني. ځکه چې د لوبغاړي نمره، پزل او بټوه ټول په ورته ثبوت کې نښلول شوي، یوه سپارښتنه چې د یوه پزل یا یوه حساب لپاره جوړه شوې، د بل لپاره بیا کارول کېدای نشي. په فرنټ انډ کې، ورته بکس ذخیره د سلنې لید ځواکوي: له نښلولو وروسته، لوبه د ورځني پزل لپاره د بلاک چین ننوتۍ سکین کوي او لوبغاړي ته وایي چې څو نور یې مات کړي دي.

پر مین نت ژوندی — مګر څوک لوبې کوي؟

تړون رښتینی دی، ځای پر ځای شوی او اوسنی دی: اپلیکیشن ۳۶۰۳۴۵۹۴۲۵ د ۲۰۲۶ کال د جون په ۱۶ مه په ۶۲،۲۰۹،۳۱۵ ګرد کې د پروژې تر شا حساب (چې د tools.orange.algo .algo نوم لري) لخوا جوړ شوی، د دې تاییدونکی یې څو دقیقې وروسته تنظیم شوی. اوس دا ۹۴ د نمرې بکسونه لري، او خط کتاب د ۶۴،۱۳۰،۵۲۰ ګرد پورې وروستي اپلیکیشن زنګونه ښیې — د ۲۰۲۶ کال د اګست ۱۶، د دې لیکنې څخه دوه ورځې مخکې. ویب بنډل تاییدوي چې فرنټ انډ ډیفالټ شبکه مین نت ده، چې د ریپو شبکې تنظیم کې د اپلیکیشن ID سره سمون لري.

د لیږونکي خط کتاب، که څه هم، د منلو یوه نرمه کیسه وایي. د پراختیا کونکي خپله بټوه دواړه د لیږد لاګ او د بکس کیليو باندې حاکمه ده؛ دویمه سپارونکې بټوه د پیل په ورځ جوړه شوې وه او د پراختیا کونکي لخوا د ۱ ALGO سره تمویل شوې وه — یو ازمایښتي حساب. دوه نورې بټوې خپل لومړی تمویل د ۲۰۲۲ او ۲۰۲۴ کالونو کې رامنځته شویو بې تړاوه حسابونو ته لټوي، چې د بهرنیو لوبغاړو سره سمون لري، که څه هم هیڅ یو .algo نوم نه لري. صادقه لوستنه: دا یو ژوندی مګر کوچنی رجسټر دی، چې ډېری ننوتۍ د پراختیا کونکي خپلو ازموینو ته منسوبې دي او لا تر اوسه د پام وړ لوبغاړو د شتون هیڅ شواهد نشته.

پروژه پخپله د یو واحد پراختیا کونکي کار دی — د GitHub حساب funk-af، چې پروفایل یې خاوند 'Andrew' نوموي — او همدغه حساب د نورو Algorand تړونونو کار هم خپروي، په شمول هغه ریپوزیټوري چې د Baanx او د Immersve flexi-card تمویل پروتوکول لپاره د هوښیار تړونونو په توګه تشریح شوي. د لوبې ریپو د ۲۰۲۶ کال د جون میاشتې ۱۸ کمېټونه ښیې او له جون ۱۸ راهیسې هیڅ فعالیت نلري، پداسې حال کې چې ځای پر ځای شوی فرنټ انډ او د بلاک چین تړون روان دي.

د باور ماډل محدودیتونه

درې احتیاطونه د هر چا لپاره مهم دي چې دا رجسټر د یوې لوبې څخه ډېر څه په توګه لولي. لومړی، د ورځني پزل اشتقاق د فرنټ انډ یو دود دی، نه د تړون قاعده: تړون هیڅکله نه ګوري چې ایا سپارل شوی پزل کوډ د نن ورځې د بلاک څخه اخیستل شوي پزل سره سمون خوري، او سرکیټ یوازې دا تاییدوي چې یو پزل ښه جوړ شوی او حل شوی دی. د ورته سرکیټ پروفایل څخه د هر ښه جوړ شوي پزل ثبوت به ومنل شي؛ پر بلاک چین هیڅ شی یوه سپارښتنه اوسنۍ نیټې پورې نه تړي. دوهم، دواړه تاییدونکې پته او پخپله تړون د جوړونکي کنټرول لاندې دي — setVerifier او updateApplication د جوړونکي بټوې پورې محدود دي — نو د رجسټر بشپړتیا په پای کې په یو واحد پراختیا کونکي پورې اړه لري چې تاییدونکی بدل نه کړي یا تړون بیا نه لیکي. دریم، د ثبوت ټیکنالوژي بې پلټنې ده: د snarkjs-algorand README خبرداری ورکوي چې SDK 'د پرمختګ په حال کې دی او لا مستحکم نه دی' او 'په دې ریپو کې کوډ نه دی معاینه شوی. په خپل مسؤلیت یې وکاروئ!'

هیڅ یو له دې څخه هغه څه نه کموي چې دلته واقعا د پام وړ دي: د براوزر په اړخ کې د Groth16 ثبوت تولید یوه فعاله پای-ته-پای ننداره چې د Algorand مین نت پر بلاک چین تاییدونکي ته لیږدول کیږي، د ورځني پزل سره چې د بلاک چین له خپلو بلاک هډرونو څخه سرچینه اخلي. که چیرې بڼه پاخه شي — یو پلټل شوی تاییدونکی، د تړون پلي شوی د پزل نښلول، او ریښتیني لوبغاړي — د ZK-تایید شوي مهارت لوبو یوه ځانګړې برخه یو باوري بنسټ لري. اوس مهال، دا یو صادق، کوچنی تجربه ده، او کار کوي.

سرچینې

Source: https://zk-colorsort.netlify.app/