Аммо ба ман як идея писанд омад: агар oracle тасодуфӣ маълумоти корбарро бо алгоритми детерминистӣ имзо мекунад, пас корбар ҳамеша метавонад бо истифода аз калиди умумӣ чунин имзоро тафтиш кунад ва боварӣ ҳосил кунад, ки арзиши натиҷавӣ беназир аст. Оракл, новобаста аз он ки чӣ қадар мехоҳад, ҳеҷ чизро тағир дода наметавонад; алгоритм натиҷаи якхела меорад. Аслан, корбар натиҷаро сабт мекунад, аммо то он даме, ки oracle онро нашр накунад, онро намедонад. Маълум мешавад, ки шумо ба oracle тамоман бовар карда наметавонед, аммо натиҷаи кори онро санҷед. Пас, дар сурати бомуваффақият тафтиш, чунин имзо метавонад манбаи энтропия барои рақами псевдорандом ҳисобида шавад.
Платформаи blockchain Waves схемаи имзоро истифода мебарад EdDSA интихоб Ed25519. Дар ин схема, имзо аз арзишҳои R ва S иборат аст, ки дар он R аз арзиши тасодуфӣ вобаста аст ва S аз рӯи паёми имзошуда, калиди хусусӣ ва ҳамон рақами тасодуфӣ бо R ҳисоб карда мешавад. Маълум мешавад, ки барои як паёми корбар ягон вобастагии беназир вуҷуд надорад.
Ҳама чиз хеле оддӣ шуд; барои ноил шудан ба детерминизм, шумо бояд арзиши R -ро пеш аз пайдо шудани паёми имзошуда ислоҳ кунед. Агар R содир шуда бошад ва як қисми паёми имзошаванда бошад, ки минбаъд тасдиқи R дар паёми имзошаванда содир карда мешавад, арзиши S ба таври нотакрор тавассути паёми корбар муайян карда мешавад ва аз ин рӯ метавонад ҳамчун манбаи рақамҳои псевдортасодуфӣ истифода шавад.
Дар чунин схема, муҳим нест, ки R чӣ гуна собит шудааст; ин масъулияти oracle боқӣ мемонад. Муҳим он аст, ки S аз ҷониби корбар ба таври ягона муайян карда мешавад, аммо арзиши он то он даме, ки oracle онро нашр накунад, маълум нест. Ҳар чизе ки мо мехостем!
Дар бораи R собит сухан ронда, қайд кунед, ки такроран истифодашуда Р ҳангоми имзои паёмҳои гуногун, он калиди хусусиро дар схемаи EdDSA ба таври беназир ошкор мекунад. Барои соҳиби oracle хеле муҳим мегардад, ки имкони истифодаи дубораи R барои имзои паёмҳои корбарони гуногунро аз байн барад. Яъне, бо ҳама гуна дасткорӣ ё созиш, oracle ҳамеша хатари аз даст додани калиди хусусии худро хоҳад дошт.
Дар маҷмӯъ, oracle бояд ба корбарон ду функсия пешниҳод кунад: оғозсозӣ, ки арзиши R-ро ислоҳ мекунад ва имзо, ки арзиши S-ро бармегардонад. Дар ин ҳолат, ҷуфти R, S имзои муқаррарии тафтишшавандаи паёми корбарест, ки дорои як собит аст. арзиши R ва маълумоти корбар худсарона.
Метавон баҳс кард, ки ин схема барои blockchain чизи оддӣ нест схемаи васеъ кардани ухдадорй. Аслан, ҳа, ин вай аст. Аммо якчанд нозукиҳо вуҷуд доранд. Аввалан, oracle ҳамеша дар ҳама амалиётҳо бо як калид кор мекунад, масалан, ин барои истифода дар шартномаҳо қулай аст. Сониян, хатари аз даст додани калиди махфии oracle вуҷуд дорад, агар он нодуруст рафтор кунад, масалан, oracle ба шумо имкон медиҳад, ки намунаҳои натиҷаро созед, пас барои дарёфти калиди хусусӣ ва гирифтани пурраи он танҳо ду санҷиш гузаронед кифоя аст. дастрасӣ ба ҳамён. Сеюм, имзое, ки дар blockchain аслӣ санҷида мешавад ва манбаи тасодуфӣ аст, зебо аст.
Дар тӯли шаш моҳ идеяи татбиқ дар сарам ҷунбида буд, то даме ки дар ниҳоят ҳавасмандӣ дар шакл пайдо шуд грант аз Waves Labs. Бо гранти калон масъулияти бузург ба миён меояд, бинобар ин лоиҳа он ҷо хоҳад буд!