Saturday, 21 September 2019

UFODEX Cryptocurrency Atomic Swap Exchange

UfoDex is a decentralized exchange designed to handle your coins, keys and secrets exclusively on your computer. UfoDex never sends any sensitive information to servers. Only public information is allowed to be sent to outer world.

UfoDex: How it works

Main principle of UfoDex is that all sensitive data is handled on your computer: client-side browser, desktop client or mobile client.

Client side keys and safe cross-chain deals

All your coins, keys and secrets are handled exclusively on your computer. No sensitive information is allowed to be sent to outerworld, not even login or password.

Exchange operations are made using atomic swaps: a technology that allows to secure exchange process on different blockchains without any need to trust anyone.

Login to UfoDex

In the login window enter any email and password that you will remember for sure. They will be used to generate private keys for coins locally.

Make your login/password complex enough so that no one else can guess them eventually or on purpose. If someone else guesses your password - they will have access to your funds.

This information itself (emails, passwords, privkeys) is not sent to the server.

First moments after login

After login you will see a Tradeview page. Take a look around.

Right after login the client interface generates a proof-of-ownership message, where it announces available public keys under your control. Each pubkey is properly signed and sent to the server.

This is needed for server and other users (you may iteract with in future) to know that you are the one who owns private keys for the announced addresses.

Remember, that private keys (and login/pass) are NEVER revealed to anyone!

Stay online

After proof-of-ownership process is finished - server will keep sending you updates about orderbook, your orders, deals and reports when available.

If you have posted an order that has a good match in the orderbook - the server will initiate the execution of atomic swap. We call it a "deal".

Deposit funds

Before starting any deal you will need to need to deposit funds to your ufodex wallets in first place. There are two ways to do this.

First way (mainnet) - via your installed wallet software. Send coins from your wallet to your UfoDex address.

Second way (testnet) - via faucets. Select one of the faucets:

- Testnet BTC - https://coinfaucet.eu/en/btc-testnet/
- Testnet LTC - http://testnet.litecointools.com/
- Testnet UFO - contact developers in Telegram at https://t.me/UFODEX_En (or mine some ufo coins)
- Send faucet coins to your proper address at ufodex.
- While waiting for coins to arrive - keep clicking on UfoDex balance row from time to time :)
- Done

Orderbook explained

On the right of the Tradeview page there is an order book for currently selected coin pair. In the middle - recent historical price (the price of the last successfully completed deal). Sell orders on top. Buy orders in the bottom.

Your own orders are marked with a colored icon. If you have few orders or more - this makes visually identifiyng orders and deals much easier. No need to compare orders/deals hashes.

Gray orders are the orders when owner goes offline. They are valid orders but will be executed later, when owner logins back online. So if you see a good price offer - you can post your matching offer and wait for another side (or someone else) to come online. If you do not want to wait for anyone - pick the order from the list of online (red/green colored) orders.

Due to the nature of atomic swaps and as a sideeffect of it - the UfoDex orderbook may contain *overlapping* orders that keep staying in orderbook and not being executed immediately. That's pretty normal :)

Deal start explained

Atomic swaps require the deal to be executed on two blockchains. This guarantees the safety of each party's funds.

But it makes atomic swap NON-instant, because blockchains sometimes are not that fast.

Since each significant action is being pushed to blockchains - parties need to make sure that transactions are actually confirmed in both blockchains before trusting them. This differes a lot from the instant exchange that we are used to at regular exchanges.

To prevent deals' falsestart - UfoDex matcher blocks the initiation of new deals for a user that has just started a new atomic swap deal. As soon as funds for such deal are locked in the blockchain - any other parallel atomic swap can be started. The number and amounts of parallel deals are limited only by the amount of funds on your balance.

Filling in buy/sell orders

When you want to sell or buy coins, click on "Tradeview" menu item. There are buy/sell inputs below the stockchart.

Input the price and amount that you want to buy/sell.

You can also click on existing order in the orderbook (on the right). This will collect all available (online) orders starting from near the market price and put total amounts into buy/sell inputs.

After you enter price and amount, UfoDex will calculate the approximate fee value for your order.

UfoDex will also check your available balance for spending, and lowest possible order size that can be posted on the blockchains without running into absurdly high blockchain fees.

If you run out of limits or are below minimum - you will see a red warning with valid values.

Fees explained

Order fee consists of two parts:

- UfoDex fee which is 0.25% normally, but not less than 0.0001 of the coin
- Blockchain fee which is relatively low and calculated approximately based on the current status of your coin inputs and current blockchain fee.

Normally, order total fee should be around 0.25% of the amount you spend.

If fee is different then you are probably trying to create too small order. For small-amount orders total fee can be absurdly high, but you still have an option to confirm posting it to the orderbook though :)

UfoDex fee is paid from your balance, above the amount of coin you send. Blockchain fee is paid from the amount of actual transaction.

When receiving coin you will get the actually executed amount minus blockchain fee only.

Orders matching, price priorities

UfoDex matcher iterates orders from middle of orderbook to the edges. For concurrent orders with same prices older (earlier) order is evaluated in first place.

Matcher also validates a number of significant conditions before passing two matching orders to deal execution engine. This includes: online status, sufficient balance, penalties on previous failures and some others.

Due to the possible price overlapping (order #1 sells at 0.5, order #2 buys at 0.7) UfoDex gives price priority to the younger order. E.g.:

- younger order will get requested amount by spending less at better price.
- older order will get requested amount at requested price.

This is done to stimulate liquidity for existing orders.

Order groups

Click "Your orders" in top menu.

When creating an order the system actually creates a parent order (group) that is hidden from end-user, never gets executed and holds information about the total deal amount that should be fulfilled.

When the parent order has unfulfilled amounts - the client side automatically creates new child order at parent price that will cover the rest of the amount needed.

Detailed information on active groups and child orders is available in "Your orders" top menu item.

Partial execution of orders

When two orders are matched at the same (or overlapping) price but with different amounts - UfoDex matcher will recalculate maximum possible amount that won't go beyond the limits of matched orders.

On deal start original order will be hidden from orderbook and modified to execute for such recalculated amount.

In the same time the client side will post a new order for the rest of the amount to be fulfilled. Which can be used in a another deal in parallel, as soon as the original deal has its coins locked for the atomic swap.

Deal execution

Click "Orders in swap"

When the matcher finds two proper orders, it sends them to deal execution engine which inititates and orchestrates the atomic swap procedure between two clients - atomic deal.

Click on executing deal in "Orders in swap"

Atomic deal consists of 6 steps:

1, Request for deal
   - Server generates preliminary information for parties, contracts samples and waits for confirmations from both to take part in this deal.

2. InitScriptRequest
   - Party One generates atomic swap init transaction on the first blockchain to lock funds.
   - Party One's init transaction is pushed to the first blockchain and confirmed.

3. SecondScriptRequest
   - Party Two validates locked funds on the first blockchain.
   - Party Two generates atomic swap init transaction on the second blockchain to lock funds.
   - Party Two's transaction is pushed to the second blockchain and confirmed.

4. Redeem B
   - Party One generates transaction to redeem funds from the second blockchain.
   - Party One's redeem transaction is pushed to the second blockchain and confirmed.

5. Redeem A
   - Party Two generates transaction to redeem funds from the first blockchain.
   - Party Two's redeem transaction is pushed to the first blockchain and confirmed.

6.  In case if something goes wrong - either party can refund its locked funds after a timeout.

Monitoring deal execution and report

"Top menu / Deals in swap" provides a brief information on the deal status being executed.

Click on it to open an extremely detailed report on the deal.

The detailed report is updated online as the deal goes on. It contains technical details on each step being executed, such as:

- step explanation
- blockchain information and fees
- transaction hex source
- transaction ID
- push-to-blockchain status

Securing your private keys

"Top menu / Account backup"

This section allows to copy private keys for each of your wallets. You can import them into any other wallet that supports private key import.

- Click on "Show private details"
- Copy displayed private key
- Open your wallet (must have support for importing privkeys)
- Import privkey

Withdraw funds

a) If you have already exported privkeys from UfoDex to your preferred wallet - use that wallet to send coins to any other address.

b) Use "Top menu / Submenu / Withdraw"

Take a note, that there is no way UfoDex can prevent you from moving funds, since UfoDex has no control of your wallets.

In case if you have not-yet-executing orders backed with the funds that you move - such orders at UfoDex will be penaltied and moved away from orderbook after some time.

Start trading now!

Login to UfoDex

source: UfoDex
Legal disclaimer: The insight, recommendations and analysis presented here are based on corporate filings, current events, interviews, corporate press releases, and what we've learned as financial journalists. They are presented for the purposes of general information only, and all the information belongs to the original publishers. These may contain errors and we make no promises as to the accuracy or usefulness of the information we present. You should not make any investment decision based solely on what you read here.

Creamcoin Marketcap