Подумайте о том, как физические наличные работают в реальном мире. При покупке вы передаёте целые банкноты и получаете сдачу в ответ. Сами деньги при этом не изменяются — их просто обменивают, чтобы создать новую транзакцию. Сеть DigiByte работает по точно такому же принципу через неизрасходованные выходы транзакций, которые обычно называют UTXO. Вместо того чтобы хранить традиционные балансы аккаунтов, она полагается на эту уникальную систему, и это структурное отличие невероятно важно.
Поэтому баланс кошелька никогда не является одним записанным числом, хранящимся где-то в базе данных. Это просто вычисленная общая сумма всех отличающихся друг от друга, отдельных частей криптовалюты, которые вы в данный момент имеете и которым вам разрешено распоряжаться. Каждый отдельный неизрасходованный выход транзакции представляет собой дискретный фрагмент цифровой монеты, принадлежащий конкретному владельцу.
Чтобы проиллюстрировать это, предположим, что вам отправили 300 $DGB одним переводом и ещё 700 — отдельным. В системе у вас на самом деле нет объединённого баланса аккаунта на 1 000. Вы просто владеете двумя независимыми выходами. Если затем вы решите потратить 800, сети необходимо будет использовать оба ваших предыдущих фрагмента. После этого она создаст совершенно новые выходы, направив требуемый платёж получателю и отправив оставшуюся сдачу обратно в ваш кошелёк.
Эта конкретная архитектурная модель и является основой работы DigiDollar-«сейфов» (vaults). Заблокированный сейф по сути представляет собой выход транзакции, привязанный к набору определённых условий. Он надёжно останется в ожидающем (pending) состоянии, пока не будут выполнены именно эти условия.
Поэтому баланс кошелька никогда не является одним записанным числом, хранящимся где-то в базе данных. Это просто вычисленная общая сумма всех отличающихся друг от друга, отдельных частей криптовалюты, которые вы в данный момент имеете и которым вам разрешено распоряжаться. Каждый отдельный неизрасходованный выход транзакции представляет собой дискретный фрагмент цифровой монеты, принадлежащий конкретному владельцу.
Чтобы проиллюстрировать это, предположим, что вам отправили 300 $DGB одним переводом и ещё 700 — отдельным. В системе у вас на самом деле нет объединённого баланса аккаунта на 1 000. Вы просто владеете двумя независимыми выходами. Если затем вы решите потратить 800, сети необходимо будет использовать оба ваших предыдущих фрагмента. После этого она создаст совершенно новые выходы, направив требуемый платёж получателю и отправив оставшуюся сдачу обратно в ваш кошелёк.
Эта конкретная архитектурная модель и является основой работы DigiDollar-«сейфов» (vaults). Заблокированный сейф по сути представляет собой выход транзакции, привязанный к набору определённых условий. Он надёжно останется в ожидающем (pending) состоянии, пока не будут выполнены именно эти условия.