Phasing

From Nxt Wiki
Jump to: navigation, search
This page is a translated version of the page Phasing and the translation is 100% complete.

Other languages:
Deutsch • ‎English • ‎русский • ‎українська

1 Вступ

Nxt Фазiнг-це функціональність яка дозволяє реалізовувати поетапні безпечні угоди, які будуть створені з умовним відкладеного виконання, заснованого на результаті фазованого опитування, на списку пов'язаних транзакцій або на розкритті таємниці; чи просто з безумовним відстроченням виконання. Безпечні фазовані транзакції виділені курсивом в описі API Create Transaction.

У цьому керівництві, усі приклади починаються з фазованих Send NXT транзакцій створюються в Клієнтові Nxt; процедури подібні для інших типів безпечних фазованих транзакцій, підтримуваних Клієнтом Nxt.

Це керівництво описує Фазування в Testnet на прикладі Nxt software release 1.5.3e.

2 Зміст

3 Створення Фазованої Транзакції

Для створення фазованої Send NXT транзакції, спершу натисніть Send NXT у верхній центральній частині клієнта Nxt. З'явиться спливаюча форма для введення даних :

Phasing send nxt basic.png
  • На цьому етапі, в поля Recipent і Amount можуть бути введені відповідні їм дані - ID облікового запису одержувача і сума NXT, для відправки.
  • Якщо зараз натиснути кнопку Send NXT, в нижній правій частині форми, транзакція буде створена і відразу передана вузлам мережі для включення в blockchain, за комісію 1 NXT.
  • Щоб замість цього зробити транзакцію фазованою, що в Клієнтові Nxt має на увазі, що її виконання буде умовно затримано на основі результату опитування фазування, клацніть по посиланню advanced в нижній лівій області форми, щоб вивести на екран додаткові поля, для завдання умов фазування:
Phasing send nxt advanced.png
  • Щоб повернутися до стандартної форми відправки Send NXT, клацніть по посиланню Basic в нижній лівій області форми.
  • Поле Referenced Transaction Hash, і елементи управління Do Not Broadcast і Note to Self? не відносяться до Фазування.
  • Поле Fee містить мінімальну комісію за проведення транзакції, і за умовчанням складає 1 NXT. Поля справа зі значком молоточка і іконки, автоматично виводить на екран додатковий набір параметрів для фазування, залежно від конфігурації фазування.
  • Поле Deadline (Hours) виводить на екран 24-годинний термін за умовчанням для включення транзакції в блок; показники в годиннику будуть перетворені в блоки з розрахунку 60 блоків в годині
  • Наступний рядок містить п'ять значків для вибору моделі фазування; наводячи курсор над значком викличе появу спливаючої підказки. Крайній лівий варіант, варіант пропонований за умовчанням, припускає відсутності фазування. Нижче наводиться опис чотирьох різних моделей голосування.

3.1 Моделі голосування

Клацання по одному зі значків дозволяє вибрати модель фазованого голосування, при цьому, залежно від вибраної моделі, змінюватиметься комісія за транзакцію, а також будуть активовані додаткові поля або засоби управління, як описано в розділах нижче.

У усіх моделей голосування існує загальне поле/механізм управління для Висоти Закінчення, яка визначає, коли буде виконана відкладена транзакція, якщо вона затверджена, тобто якщо усі вимоги для її виконання будуть задоволені до настання висоти закінчення. Моделі голосування називаються згідно з методом схвалення.

Для чотирьох моделей голосування (моделі Vote By ..), результати голосування визначають, чи станеться виконання транзакції досягши висоти закінчення. Ці чотири моделі мають загальні властивості: поле Whitelist (Білий Список) для обмеження голосування тільки заданими акаунтами і для генерації Запитів Узгодження Білим Списком, і Тип мінімального балансу задає правила обмеження голосування для акаунтів з мінімальним балансом NXT, активу або валюти.

3.1.1 Без умови

Якщо клацнути по другому значку, з'являється наступне:

Phasing none.png
  • Поетапна транзакція виконається беззастережно досягши Висоти закінчення.
  • Додаткова комісія +1 NXT.

3.1.2 Голосування Акаунтом

Якщо клацнути по третьому значку, з'являється наступне:

Phasing vote by account.png
  • Введіть в поле Number Accounts кількість акаунтів які повинні схвалити/погоджувати транзакцію. Кожен акаунт дає 1 голос.
  • Додаткова комісія +1 NXT.
  • Білий Список може використовуватися, щоб накладати обмеження на голосування і створювати Запит Голосування Білим Списком. Інакше, єдиним механізмом для голосування буде Ручне Голосування.
  • Голосування також може бути обмежене обліковими записами з мінімальним балансом NXT, активу або валюти, використовуючи випадний елемент управління Тип Мінімального Балансу.
  • Не забудьте відновити поле Finish Height (Висота Закінчення), щоб змінити значення встановлюване за умовчанням.

3.1.3 Голосування Балансом Акаунту

Якщо клацнути на четвертому значку, з'явиться наступне:

Phasing vote by account balance.png
  • Введіть в поле Amount NXT мінімальну загальну кількість NXT необхідне для голосування, яке має бути зібране з усіх акаунтів тих, що беруть участь в голосуванні, (включаючи будь-які витікаючі очікуючі фазовані трансфери) тільки до завершення фазованого опитування.
  • Додаткова комісія +20 NXT.
  • Білий Список може використовуватися, щоб накладати обмеження на голосування і створювати Запит Голосування Білим Списком. Інакше, єдиним механізмом для голосування буде Ручне Голосування.
  • Голосування також може бути обмежене обліковими записами з мінімальним балансом NXT, використовуючи випадний елемент управління Тип Мінімального Балансу.
  • Не забудьте відновити поле Finish Height (Висота Закінчення), щоб змінити значення встановлюване за умовчанням.

3.1.4 =Голосування Балансом Активу

При клацанні на п'ятому значку, з'явиться наступне:

Phasing vote by asset balance.png
  • Введіть в поле Asset Quantity мінімальну загальну кількість активів необхідне для затвердження транзакції, яке має бути зібране з усіх голосуючих акаунтів(включаючи будь-які витікаючі очікуючі фазовані трансфери) тільки до завершення фазованого опитування.
  • Введіть в поле Asset ID активу. Назва активу з'являється в затіненому полі справа, відразу після введення його ID.
  • Додаткова комісія +20 NXT.
  • Білий Список може використовуватися, щоб накладати обмеження на голосування і створювати Запит Голосування Білим Списком. Інакше буде автоматично згенерований Запит Голосування Активом.
  • Голосування також може бути обмежене обліковими записами з мінімальним балансом активу, використовуючи випадний елемент управління Тип Мінімального Балансу.
  • Не забудьте відновити поле Finish Height (Висота Закінчення), щоб змінити значення встановлюване за умовчанням.

3.1.5 Голосування Балансом Валюти

При натисненні на шостому значку, з'явиться наступне:

Phasing vote by currency balance.png
  • Введіть в поле Currency Units мінімальну загальну кількість валюти необхідне для затвердження транзакції, яке має бути зібране з усіх голосуючих акаунтів (включаючи будь-які витікаючі очікуючі фазовані трансфери) тільки до завершення фазованого опитування.
  • Введіть в поле Currency трьох- чотирьох- символьний код валюти. ID валюти з'являється в затіненому полі справа, відразу після введення її коду.
  • Додаткова комісія +20 NXT.
  • Білий Список може використовуватися, щоб накладати обмеження на голосування і створювати Запит Голосування Білим Списком. Інакше буде автоматично згенерований Запит Голосування Валютою.
  • Голосування також може бути обмежене обліковими записами з мінімальним балансом валюти, використовуючи випадний елемент управління Тип Мінімального Балансу.
  • Не забудьте відновити поле Finish Height (Висота Закінчення), щоб змінити значення встановлюване за умовчанням.

3.1.6 Пов'язані транзакції

Якщо клацнути по сьомому значку, з'являється наступне:

Phasing by linked transactions.png
  • Введіть повний хеш транзакції, яка має бути в blockchain на висоті закінчення для виконання фазованої (поетапноі) транзакції.
  • Транзакція вже знаходиться в blockchain перед прийняттям поетапної транзакції, вона може бути сполучена, поки їй не більше ніж 60 днів, або вона фазована транзакція. Якщо транзакція пов'язана з вашим акаунтом, її повний хеш ви отримаєте натиснувши на її мітку часу на екрані My Transactions, щоб відкрити спливаюче вікно Transaction Info , і натиснувши в нім на вкладку Transactions Detail. Інакше, повний хеш може бути отриманий, за допомогою API Nxt, якщо ID транзакції відомий.
  • Транзакція ще не знаходиться в blockchain може бути пов'язана заздалегідь, якщо транзакція буде створена, але не опублікована. Тоді повний хеш доступний для з'єднання з фазованою транзакцією. Підписані байти транзакції можуть бути опубліковані пізніше (через елемент Transaction Operations Меню Settings), перед досягненням заввишки закінчення поетапної транзакції, щоб підтвердити її.
  • Можливо зв'язати до десяти транзакцій через API Nxt, але нині тільки одна транзакція може бути пов'язана через форму введення.
  • Додаткова комісія +1 NXT.
  • Не забувайте відновити поле Finish Height, щоб змінити значення встановлене за умовчанням.

3.1.7 Секрет

Якщо клацнути по восьмому значку, з'являється наступне:

Phasing by secret.png
  • Виберіть Hash Algorithm з випадного списку.
  • Введіть в поле Approved By Hashed Secret хеш секретної фрази (ні в якому разі не секретна фраза вашого облікового запису !), яка має бути розкрита перед висотою завершення, щоб затвердити виконання фазованої транзакції. Хеш секретної фрази може бути вичислений за допомогою пункту Calculate Hash Меню Налаштувань.
  • Додатковий збір +1 NXT.
  • Відновите поле "Finish Height", щоб змінити значення встановлене за умовчанням.
  • Щоб затвердити фазовану транзакцію, за умови що вона підтверджена і підходить висота закінчення, використовуйте Ручне Схвалення.

3.2 Висота Закінчення

При виборі моделі голосування з'явиться Finish Height і пов'язані засоби управління:

Phasing finish height.png
  • Крайнє ліве поле - поле для введення Висоти Закінчення (Finish Height), значенням за умовчанням встановлюється на 7000 блоків (приблизно тиждень) більше ніж поточне значення blockchain. Введіть потрібну вам висоту блоку, на якій повинне закінчитися фазоване опитування.
  • Для зручності, передбачувана дата закінчення виведена на екран праворуч від мітки "Finish Height". Ця дата змінюється автоматично кожного разу, коли змінюється значення поля Finish Height.
  • Для зручності, друге затемнене поле праворуч від поля Finish Height відображує на екрані поточну висоту блоків на момент відкриття спливаючої форми створення голосування. Клацання по ньому примушує значення поля Finish Height змінюватися на це значення.
  • Також для зручності, треті і четверте поля містять засоби управління, вони позначаються як -(мінус) і + (плюс) відповідно для зменшення або збільшення значення 'Finish Height на 500 блоків (приблизно половина дня).

3.3 Білий список

Вибір моделі голосування приводить до появи поля Accounts (Whitelist) і пов'язані з ним засоби управління :

Phasing whitelist.png
  • Введіть в поле Accounts (Whitelist) ID акаунту який має право приймати долі в цьому голосуванні.
  • Як тільки Білий Список (whitelist) створений і містить єдиний обліковий запис, тільки цей обліковий запис і до дев'яти інших облікових записів, додатково доданих до Білого Списку, мають право голосувати в цьому фазованому опитуванні.
  • Щоб додати ще один обліковий запис до Білого Списку, клацніть кнопку + Add Account і введіть ID облікового запису в полі, що з'явилося.
  • Щоб видалити обліковий запис з Білого Списку, клацніть елемент , що управляє, - (minus).
  • Білий Список облікових записів використовуватиметься при Голосуванні Білим Списком, який є механізмом для голосування.

3.4 Модель Мінімального Балансу

Вибір моделі голосування Min Balance Type викликає поява наступного елементу управління :

Phasing min balance.png
  • За умовчанням встановлюється умова No min balance necessary, яке означає, що володіння яким або мінімальним балансом не є обов'язковою вимогою для участі в голосуванні. Додатковий збір відсутній.

Клацання за випадним списком відобразить одну або декілька моделей мінімального балансу (їх типів), залежно від моделі голосування :

Phasing min balance expanded.png
  • Показаний список для моделі Голосування Акаунтом пропонує на вибір три моделі мінімальних балансів: Потрібно Мінімальний баланс NXT, Потрібно Мінімальний баланс Активу і Потрібно Мінімальний баланс Валюти. Відповідно, в голосуванні можуть брати участь тільки ті акаунти у яких виконуються задані умови (тобто акаунту у яких баланс NXT/Активу/Валюти буде рівний або більше заданого мінімального об'єму)
  • Якщо модель голосування Голосування Балансом Акаунту, Голосування Балансом Активу або Голосування Балансом Валюти, модель мінімального балансу повинна відповідати моделі голосування і таким чином, тільки один варіант буде запропонований для для кожного варіанту. (Примітка: вибір для першого з них відсутній і цей випадок вважається помилкою.)
  • Вибір однієї з моделей мінімального балансу збільшує комісію на +20 NXT і додає одне або декілька додаткових полів, які будуть описані в наступних підрозділах.

3.4.1 Мінімальний Баланс NXT

Phasing min balance nxt.png
  • Введіть в поле Min Balance мінімальний баланс NXT яким повинен володіти акаунт щоб бути допущеним до цього голосування для підтвердження транзакції.
  • Акаунт повинен володіти як мінімум заданим балансом (включаючи будь-які витікаючі очікуючі фазовані трансфери), до завершення фазованого опитування.

3.4.2 Мінімальний Баланс Активу

Phasing min balance asset.png
  • Введіть в поле Min Balance мінімальну кількість заданого Активу у акаунту, необхідне для того, щоб акаунт мав право взяти участь у фазованому голосуванні для підтвердження транзакції.
  • Акаунт повинен володіти як мінімум заданим балансом вказаного Активу(включаючи будь-які витікаючі очікуючі фазовані трансфери), до завершення фазованого опитування.
  • Якщо модель голосування Голосування Акаунтом, введіть в поле Asset ID активу. Для перевірки правильності введення ID, назва Активу відразу відобразиться в затемненому полі справа. Це поле не відображується якщо вибрана модель Голосування Балансом Активу, оскільки ID Активу заздалегідь заданий.

3.4.3 Мінімальний Баланс Валюти

Phasing min balance currency.png
  • Введіть в поле Min Balance мінімальну кількість заданої Валюти у акаунту, необхідне для того, щоб акаунту мав право взяти участь у фазованому голосуванні для підтвердження транзакції.
  • Акаунт повинен володіти як мінімум заданим балансом вказаної Валюти (включаючи будь-які витікаючі очікуючі фазовані трансфери), до завершення фазованого опитування.
  • Якщо вибрана модель голосування Голосування Акаунтом, введіть в поле Currency трьох- чотирьох- символьний код Валюти. Для перевірки правильності введення коду Валюти, назва Валюти відразу відобразиться в затемненому полі справа. Це поле не відображується якщо вибрана модель Голосування Балансом Валюти, оскільки код Валюти заздалегідь заданий.

4 Затвердження Фазованої Транзакції

"Запити схвалення (Approval requests)" є кращим механізмом для схвалення фазованих транзакцій, але потрібно пам'ятати, що вони застосовуються тільки до чотирьох моделям голосування, і для випадків Голосування Акаунтом і Голосування Балансом Акаунту, використовуються тільки якщо використовується Білий Список. Інакше, а також у разі використання моделі голосування Секретом, повинен використовуватися інший механізм: Ручне Схвалення. Модель голосування Пов'язані Транзакції не вимагає ручного схвалення а тільки присутність вказаної пов'язаної транзакції(й) в blockchain.

4.1 Запити на Узгодження

Запити на Узгодження є запрошеннями голосувати у фазованих опитуваннях, які застосовуються до чотирьох моделей голосування. Доки голосування відкрите (до тих пір, поки не досягнута висота закінчення опитування фазування), запити на узгодження з'являтимуться в Клієнтові Nxt, у усіх зареєстрованих акаунтів, які запрошені голосувати в опитуванні, або включені в Білий Список, або володіють активом або валютою, залежно від конфігурації голосування.

Якщо використовується whitelist (білий список акаунтів), то запити схвалення з'являються тільки на екрані Whitelisted Approval Requests, незалежно від моделі голосування.

За відсутності Білого Списку, і моделі голосування Голосування Акаунтом і Голосування Балансом Акаунту запити на твердження в клієнтові Nxt ніде не відображуються, тоді як при вибраній моделі голосування Голосування Балансом Активу і Голосування Балансом Валюти запити на твердження з'являться на відповідних екранах Запит Голосування Активом і Запит Голосування Валютою.

4.2 Запити Узгодження Білого Списку

Доступ до цього екрану можна отримати прямо з меню клієнта Nxt, клацнувши на першому пункті меню Dashboard, після цього меню розгорнеться і буде доступний пункт підміню Approval Requests, натисніть на нім:

Phasing account approval.png
  • Зверніть увагу на те, що кількість незавершених запитів узгодження виведена на екран в затемненому крузі праворуч від елементу підміню Approval Requests; це-попередження, що потрібно узгодження.
  • (Account) у заголовку вікна, відноситься до моделей голосування Голосування Акаунтом і Голосування Балансом Акаунту, для яких Білий Список потрібний, щоб створювати запити узгодження, але цей екран також включає дві інші моделі голосування, коли використовується Білий Список.
  • Подробиці фазованих транзакцій з відкритими фазованими опитуваннями показані в рядку списку, з кнопкою Approve в стовпці Actions ; діаграма в стовпці зі значком молоточка вказує стан фазованого голосування.
  • Кнопка Approve виділена і активна, якщо використовуваний (так під якою ви увійшли) обліковий запис ще не голосував; після голосування кнопка стає сірою і неактивною.
  • Клацання по кнопці Approve відкриває спливаючу форму Approve Transaction; клацання по Approve створює транзакцію узгодження.

4.3 Запити Узгодження Активом

Доступ до цього екрану можна отримати прямо з меню клієнта Nxt, клацнувши в лівій панелі на розділі Asset Exchange щоб відкрити підміню, потім клацнути пункт підміню Approval Requests; нарешті, виберіть актив з випадного списку розташованого під заголовком екрану :

Phasing asset approval.png
  • Подробиці фазованих транзакцій з відкритими фазованими опитуваннями показані в рядку списку, з кнопкою Approve в стовпці Actions ; діаграма в стовпці зі значком молоточка вказує стан фазованого голосування.
  • Кнопка Approve виділена і активна, якщо використовуваний (так під якою ви увійшли) обліковий запис ще не голосував; після голосування кнопка стає сірою і неактивною.
  • Клацання по кнопці Approve відкриває спливаючу форму Approve Transaction; клацання по Approve створює транзакцію узгодження.

4.4 Запити Узгодження Валютою

Доступ до цього екрану можна отримати прямо з меню клієнта Nxt, клацнувши в лівій панелі на розділі Monetary System щоб відкрити підміню, потім клацнути пункт підміню Approval Requests; нарешті, виберіть валюту з випадного списку розташованого під заголовком екрану :

Phasing currency approval.png
  • Подробиці фазованих транзакцій з відкритими фазованими опитуваннями показані в рядку списку, з кнопкою Approve в стовпці Actions ; діаграма в стовпці зі значком молоточка вказує стан фазованого голосування.
  • Кнопка Approve виділена і активна, якщо використовуваний (так під якою ви увійшли) обліковий запис ще не голосував; після голосування кнопка стає сірою і неактивною.
  • Клацання по кнопці Approve відкриває спливаючу форму Approve Transaction; клацання по Approve створює транзакцію узгодження.

4.5 Ручне схвалення

Для будь-якої фазованої транзакції, яка з'являється на екрані My Transactions, і які не використовують модель голосування Без Умов або Пов'язані Транзакції, узгодження може бути виконане таким чином:

  1. клацнути на мітці часу транзакції, щоб відкрити спливаюче вікно Transaction Info
  2. клацнути на вкладці Actions
  3. клацнути на кнопці Approve Transaction, щоб відкрити спливаюче вікно Approve Transaction
  4. клацнути на кнопці Approve , щоб затвердити транзакцію, після введення секретної фрази, у випадку якщо використовується модель голосування Секрет

На цьому екрані з'являються тільки (підтверджені) транзакції, які безпосередньо пов'язані із зареєстрованим акаунтом, включаючи транзакції, відправлені або отримані, а також фазовані опитування із запрошенням голосувати (запит узгодження).

Коли відсутній запит затвердження і фазована транзакція не з'явилася на екрані "My Transactions (Мої транзакції) ", вона може бути знайдена, якщо відома висота блоку того, що містить транзакцію, для цього потрібно на екрані Blocks, клацнути на висоту потрібного блоку. Інакше, може бути використаний API виклик Approve Transaction, якщо відомий повний хэш фазованої транзакції, а повний хэш може бути отриманий за допомогою API виклику Get Transaction, якщо відомий ідентифікатор (ID) транзакції.

5 Перегляд стану фазованого опитування

Стан фазованого опитування позначений золотою діаграмою, яка з'являється на екрані Запити Узгодження коли фазоване голосування відкрите і на екрані Мої Транзакції, де значок змінює свій колір на зелений (затверджено) або червоний (не затверджено) після завершення фазованого опитування і досягнення Висоти Закінчення. Якщо навести курсор на графічний елемент - з'явиться підказка, що виводить на екран детальні дані.

Стан може змінитися до завершення фазованого опитування, коли заморожується. На висоті закінчення виконується фазована транзакція, але тільки якщо усі вимоги для схвалення задоволені не пізніше чим в блоці передуванні блоку закінчення.

5.1 Статуси Графічного Індикатора

Індикатор Модель голосування Індикатор статусу
Phasing status none.png Без Умови Без Умови
Phasing status account number.png Голосування акаунтом Поточний/Необхідні схвалення (голоси)
Phasing status account balance.png Голосування балансом акаунту Шкала прогресу загального балансу NXT, від 0% до 100%
Phasing status asset.png Голосування балансом активів Шкала прогресу загального балансу активів, від 0% до 100%
Phasing status currency.png Голосування балансом валют Шкала прогресу загального балансу валют, від 0% до 100%
Phasing status transaction.png Пов'язані Транзакції Шкала прогресу Пов'язані Транзакції, від 0% до 100%
Phasing status secret.png By Secret Шкала прогресу Секрет, двійкова: 0% або 100%

5.2 Колірні коди статусу графічного індикатора

Індикатор Колір Статус узгодження
Phasing status currency.png Золотий Ще не затверджений; фазоване опитування все ще відкрите
Phasing status currency disapproved.png Червоний Не затверджений; фазоване опитування завершене, транзакція скасована
Phasing status currency approved.png Зелений Затверджений; фазоване опитування завершене, транзакція виконана

5.3 Підказки для стану графічного індикатора

Phasing status tooltip.png


Accounts/Asset/Currency: Число акаунтів в білому списку, або назва активу, або валюта голосування.
Votes: Кількість акаунтів або кількість NXT, QNT активу, або одиниць валюти форматі Current approvals/Required approvals.
Percentage: Current approvals відсоток від Required approvals.
Finish Height: Висота блоку на якій фазоване опитування завершиться або буде зупинений.
Approved: Yes тільки якщо усі вимоги були задоволені при завершенні фазованого опитування, No, якщо не затверджений або якщо фазоване опитування все ще відкрите.