# Чеки VIZ

Чек на предъявителя в VIZ представляет собой пару ключей (публичный и приватный), с которой связано некоторое количество токенов viz. С помощью публичного ключа можно убедиться, что средства чека не были использованы, а с помощью приватного - получить средства на счёт.

Если проводить аналогию с банковской сферой, то наиболее близким к этой системе понятием будет банковский чек на предъявителя, то есть ценная бумага, которая дает владельцу право получить от банка указанную в ней сумму. Но в блокчейне нет банка и ценных бумаг, поэтому чек - это запись особого вида.

Участник VIZ может выписать чек на любое количество ликвидных токенов, имеющихся на его счёте. Эти средства блокируются блокчейном в момент оформления чека и переводятся на счёт получателя в момент предъявления чека блокчейну. Получателем может быть любой аккаунт, в том числе и тот, что выписал чек (например, если владелец чека передумал его передавать).

Чтобы создать чек, пользователь должен отправить специальную транзакцию (create_invite). В этой транзакции необходимо указать имя своего аккаунта в качестве инициатора, публичный ключ и сумму токенов, которую получит обладатель приватного ключа чека.

Публичный ключ генерируется так же, как для аккаунта, то есть на базе эллиптической криптографии с использованием кривой secp256k1 (opens new window). Как только транзакция попадёт в блокчейн, на аккаунте инициатора будут заморожены средства в указанном объёме.

Чтобы перевести средства с чека на любой другой аккаунт, обладателю приватного ключа требуется отправить транзакцию (claim_invite_balance), в которой нужно указать приватный ключ и аккаунт получателя. Если приватный ключ подойдёт к публичному, и аккаунт-получатель будет существовать, то на указанный аккаунт будет перечислена вся сумма ликвидных токенов, которая указана в чеке.

Кроме простого перевода, с помощью помощью чеков можно создавать новые аккаунты, отправив транзакцию регистрации через инвайт (invite_registration). Подробнее о регистрации через инвайты читайте в разделе об аккаунтах.

# 1 пример использования чеков. Подарок

В некоем городе живет человек по имени Боб. У его друга Макса сегодня день рождения. Боб решил подарить Максу несколько токенов viz, но он хочет сделать это красиво. Если Боб переведет токены до того, как придёт в гости, Макс всё узнает, и сюрприз испортится. Если он захочет перевести токены в присутствии Макса, то кто знает, какая неприятная ситуация случится - возможно, в этот момент Боб не сможет отправить транзакцию в блокчейн из-за медленного интернета. Тогда Боб решил поступить иначе: он сформирует чек, распечатает в виде QR-кода и подарит Максу в красивой открытке.

# 2 пример использования инвайт-кодов. Регистрация

Алиса решила зарегистрировать своего коллегу по работе Макса в ДАО VIZ, но Макс ещё не знает, какой хочет себе логин. Поэтому, чтобы долго не сидеть за компьютером, Алиса решила создать чек и передать его Макcу, чтобы тот зарегистрировал себе аккаунт, когда придёт домой.