#dusk $DUSK @Dusk
Признаюсь: когда я впервые увидел «nullifier» в документации Phoenix, я искренне подумал, что это какой-то механизм штрафов. Помню, как открыл whitepaper, ожидая быстрый обзор, и в итоге застрял на одной странице почти на час — перечитывал один и тот же абзац, как будто в четвертый раз он вдруг начнёт складываться в понятную картину.
Вот простая версия, к которой я в итоге пришёл. Нот — это по сути частный чек. Он говорит, что вам принадлежит что-то, но не кричит на всю цепочку ваше имя или ваш баланс. Представьте это как запечатанный конверт, лежащий внутри огромного шкафа для документов. Никто не может заглянуть внутрь, если вы не решите открыть его.
Merkle-дерево — это тот самый шкаф. Каждую ноту вкладывают в ветку, а вся структура сжимается в один маленький отпечаток наверху. Цепочке достаточно проверить этот отпечаток. Ей не нужно видеть каждый отдельный конверт. Сначала это казалось странным. Столько данных скрыто, и при этом всё остаётся строго проверяемым.
Но «nullifiers» — самая хитрая часть. Когда вы тратите ноту, вы не удаляете её, потому что удаление выдало бы информацию. Вместо этого вы публикуете nullifier, который доказывает: нота существовала и теперь уже использована — но не раскрывает, какая именно. Это похоже на то, как рвут корешок билета так, чтобы никто не смог отследить, на какое место вы сели.
Возможно, я просто слишком накручиваю, но чем дольше я с этим живу в голове, тем больше ощущение, что здесь приватность и верификация перестают быть противоположностями. Я всё равно думаю, как это выдерживает работу в реальном масштабе при большой нагрузке. Интересно, проверяли ли это другие за пределами поверхностных примеров из документации.
$SC
$POL
Что в nullifiers вам кажется самым интересным?
Признаюсь: когда я впервые увидел «nullifier» в документации Phoenix, я искренне подумал, что это какой-то механизм штрафов. Помню, как открыл whitepaper, ожидая быстрый обзор, и в итоге застрял на одной странице почти на час — перечитывал один и тот же абзац, как будто в четвертый раз он вдруг начнёт складываться в понятную картину.
Вот простая версия, к которой я в итоге пришёл. Нот — это по сути частный чек. Он говорит, что вам принадлежит что-то, но не кричит на всю цепочку ваше имя или ваш баланс. Представьте это как запечатанный конверт, лежащий внутри огромного шкафа для документов. Никто не может заглянуть внутрь, если вы не решите открыть его.
Merkle-дерево — это тот самый шкаф. Каждую ноту вкладывают в ветку, а вся структура сжимается в один маленький отпечаток наверху. Цепочке достаточно проверить этот отпечаток. Ей не нужно видеть каждый отдельный конверт. Сначала это казалось странным. Столько данных скрыто, и при этом всё остаётся строго проверяемым.
Но «nullifiers» — самая хитрая часть. Когда вы тратите ноту, вы не удаляете её, потому что удаление выдало бы информацию. Вместо этого вы публикуете nullifier, который доказывает: нота существовала и теперь уже использована — но не раскрывает, какая именно. Это похоже на то, как рвут корешок билета так, чтобы никто не смог отследить, на какое место вы сели.
Возможно, я просто слишком накручиваю, но чем дольше я с этим живу в голове, тем больше ощущение, что здесь приватность и верификация перестают быть противоположностями. Я всё равно думаю, как это выдерживает работу в реальном масштабе при большой нагрузке. Интересно, проверяли ли это другие за пределами поверхностных примеров из документации.
$SC
$POL
Что в nullifiers вам кажется самым интересным?
🔒 Privacy
50%
✅ Preventing double-spends
50%
🌳 Merkle verification
0%
🤔 Still learning
0%
2 проголосовали • Голосование закрыто