Провёл час, читая документацию DUSK в поисках той самой вещи, которую каждая «приватная» цепочка обещает по умолчанию: конфиденциальные транзакции. $DUSK , #dusk , @Dusk . Вместо этого я обнаружил развилку, которую большинство людей не заметит, если они не занимаются разработкой. Базовая транзакция действительно скрыта, но как только вам нужна компонуемость с чем-то, хоть немного похожим на «умный контракт», вас отправляют через Piecrust и отдельный путь выполнения конфиденциального контракта — тот самый, которого нет в комплекте «из коробки», с которым поставляются кошельки. Поэтому формулировка «приватность по умолчанию» технически верна для переводов, но тихо становится условной для программируемого использования. И один вариант дизайна выделился особенно: сеть рассматривает приватность и аудит как переключатель на уровне приложения, а не как гарантии по всей сети — а значит, реальная позиция по приватности всего, что построено на DUSK, целиком зависит от того, какой модуль разработчик выбрал для подключения. Это не совсем ошибка — скорее архитектурное решение с последствиями, о которых никто не говорит в маркетинге. Заставляет задуматься, сколько «приватность-сохраняющих» приложений поверх цепочек вроде этой на самом деле просто умеют приватность, но ждут, пока кто-то включит функцию.