» Frequently Asked Questions on UfoDex

UfoDex FAQ

Frequently asked questions about UfoDex.

Table of contents

What’s different in Ufodex from other crypto exchanges?

UfoDex is a decentralized exchange designed to handle your coins, keys and secrets exclusively on your computer.

The basic idea is that only user owns private keys for his crypto. The exchange itself does not have any access to user’s coins.

UfoDex never sends any sensitive information to servers. Only public information is allowed to be sent to outer world.

How does exchange happen?

Exchange operations are made using atomic swaps: a technology that allows to secure exchange process on different blockchains without any need to trust anyone. Atomic swap technology was implemented by Bitcoin (and altcoins) developers and supported natively by the proper blockchains.

Ufodex matches orders from users and notifies users about the actions their browser must do to complete the coin exchange.

How can I be sure that I won’t lose my coins during exchange?

Users do the exchange via the public atomic swap technology - it ensures that each side is guaranteed to get funds while following some basic obligatory rules.

Can you lock my funds? (spoiler: no)

Since private keys for coins are generated based on your login/password and are not transmitted to the server - there is no way for UfoDex neither to lock your funds, nor to access it at server side.

Does it require running a full bitcoin node and a full ufo node?

Regulars users need only a browser. When standalone client will be available - it will work via server side infrastructure while keeping private keys only on the client side.

Is there a way to access my coins from somewhere else besides Ufodex?

The user has an option to export private keys from browser to the file/paper. This makes it possible to import privkeys to any wallet that supports importing. There is also a backward compatible way to login to coinbin to manage funds independently from ufodex.

Things to know before logging into 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 sure your login/password are 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.

If login/password are not sent - how does UfoDex know this is me logging in?

In fact, UfoDex does not know anything about the client connected until the client announces addresses it owns.

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 the server.

How do I deposit crypto to UfoDex?

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.

Mainnet - via your installed wallet software:

  • Send coins from your wallet to your UfoDex address.
  • While waiting for coins to arrive - keep clicking on UfoDex balance row from time to time :)
  • Done.

Testnet - via faucets. Select one of the faucets:

Does Orderbook have any specifics?

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 :)

Do I have to do anything to start the deal (atomic swap)?

Create an order to buy or sell crypto. The deal will start automatically as soon as there is a matching order.

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.

What are the fees?

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.

How is blockchain fee calculated?

When generating blockchain transactions UfoDex takes into account current state of the blockchain mempool.

If mempool is overloaded then smart fee calculation is used which usually results in getting transaction into the following 1-2 blocks. If mempool is relatively empty minimum possible blockchain fee will be applied.

How are orders matched? What is the execution price?

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.

Is there partial order execution?

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.

What is the deal execution script?

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

Atomic deal consists of 6 steps:

  • Request for deal
    • Server generates preliminary information for parties, contracts samples and waits for confirmations from both to take part in this deal.
  • 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.
  • 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.
  • 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.
  • 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.
  • Refund (if needed)
    • In case if something goes wrong - either party can refund its locked funds after a timeout.

Is there any deal progress report available?

When logged in to your account, section “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

How do I export account’s private keys?

When logged in to your account, use “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

How do I withdraw crypto?

Use “Top menu / Withdraw” to withdraw funds.

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

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.

Sounds great! How to login?

Welcome to Trading interface.