WyreBitcoin Swap Wallet is a protocol allowing cross-chain swap of cryptocurrencies without the need for an intermediary party. Implementation is done with JS & the use of IPFS.

 

Features

  • DECENTRALIZED WALLET: Completely Decentralized Cryptocurrency Wallet. No intermediary parties involved. Your coins, Your keys.
  • BROWSER-BASED: No more software downloads or installs. Use the browser or the chrome extension to power your wallet.
  • ATOMIC SWAPS: Connecting multiple blockchains & enabling users to exchange coins directly with other connected peers.
  • IPFS POWERED: Orders are recorded and activated directly on the IPFS. Orders are activated & deactivated as you turn your browser on/off.
  • IMPORT/EXPORT: Import or Export your wallets as you wish. Enjoy complete control over your funds. No restrictions, no fees.
  • OPEN SOURCE: 100% open sourced project for improved transparency & further developments by Blockchain & Crypto geeks.

 

Terms You Need to Know

  • Hash function: a function conforming to the following conditions:
    If x is known, then f(x) is relatively easy to calculate.
    If y=f(x) is known, there is no simple (efficient) way to calculate x.
    Example of the function , where mod is the remainder after division by N.
  • Order: a message which indicates that the user wishes to trade ‘X’ for ‘Y’. In this case, the swap (exchange) only begins when other users ‘subscribe’ to the orders and their conditions are met. More info: https://medium.com/@EthAdvisor/atomic-swaps-etomic-swaps-explained-in-plain-english-4c3936c7adb8
  • Swap: an exchange procedure whereby X is traded for Y and vice versa in a simultaneous and irreversible way.
  • Smart contract: specifically conditioned address on the blockchain with funds locked only until the specific condition has been met.
  • Bitcoin script: smart contracts for bitcoin and likewise networks.
  • IPFS pub sub: a decentralized network for message and data transmission.

 

Forkflow

The swap (exchange) process resembles a dialogue between people. Below, M refers to the Market Maker, T refers to the Market Taker, and M refers to Messages which are marked as **. 

  1. ** Maker to All: I want to exchange 1 BITCOIN for 10 ETH (place order) (signed with a private key with a condition that a penalty of $100 is to be paid upon refusal)
  2. ** Taker to Maker: Let’s exchange
  3. The Maker fills the bitcoin script with the condition that only T may unlock it upon sending the x value conforming to the condition y=f(x) to the script; the script contains the y value.
  4. ** Maker to Taker: I have frozen bitcoins at the address {ContractBTCaddress}, sending the Y value now
  5. The Taker creates and fills a similar contract in the Ethereum network stating the same Y value
  6. ** Taker to Maker: Here is the contract in the Ethereum network {ContractETHaddress}
  7. The Maker takes ETH out of {ContractETHaddress} by transferring the X value there
  8. The Taker takes bitcoins from {ContractBTCaddress} by transferring the X value there

The Maker is unable to take money out of {ContractBTCaddress} until the timeout expires, and vice versa.
The parties check whether the smart contract is created and filled properly by the other party before taking any actions.

Components

Wallet

Upon first logging in to the wallet, cryptocurrency addresses and its corresponding private keys are generated for the user. The user can then proceed to import/export private keys, deposit, withdraw, view transaction history, and place swap orders.

Orderbook

The orderbook (for swaps) mimics a mini-blockchain whereby all parties will actively keep a copy of the orderbook. 

  • order messages and data operates via events through IPFS whereby each user will be able to send his/her actions directly to other users

 

Transport: IPFS

Data are stored in a distributed network based on IPFS pub sub, and in this case the only point of failure is the signal server; furthermore, several such servers may be added.

  • Possible Alternatives: webRTC, metsh, Whisper, libp2p
  • Current: IPFS pub sub room
  • Disclaimer: It is probable that a redundant transport system will be required as IPFS remains unfinished

Liquidity: bots

The protocol allows exchanging cryptocurrency directly from other addresses; users do not have to keep a reserve on the stock exchange. The user may keep reserves wherever he/she requires these reserves, for example, on other stock exchanges, and run them through the system only during the swap. Thus, we will not take liquidity from competitors and become an additional invisible layer.

Rating and pledge

*to be expanded*
It is not possible to implement all parts of the protocol technically, many aspects still depends on the user; therefore, a rating or other additional data to filter users are required.
Rating example: Each exchange increases statistics for the volume and quantity of transactions, with the drawback that it keeps Ethereum-related transactions, but this means 95% of all tokens.
Pledge example: The market maker puts a pledge into the smart contract which is reduced if he/she agrees for transactions and later cancels them.
Rating data may be stored off-chain; each user keeps the exchange history with signatures from the other party, which allows uploading it into the blockchain at any time to obtain rating points.

Token (example)

  1. A token is a pledge for the green status;
  2. The user transfers the token into the smart contract, and his/her address becomes green in the system which can be seen by all protocol participants;
  3. If one party aborts the transaction, part of his/her tokens will be transferred to another user;
  4. Therefore, the system encourages correct behaviour, when the expected value is positive; it is not an investment income;
  5. If desired, the participant may withdraw excess tokens;
  6. The token holders may, upon a general vote, establish a fee for all transactions with tokens and a purpose of use (stating the address);
  7. We cannot affect the protocol operation in any way but may choose what information should be displayed on the website.

QA

Q: What is the difference from x?

A: It is most likely that x is working with only one blockchain (such as 0x, EtherDelda, BitShares …) or is not launched yet.

 

Q: What is the project stage?

A: Prototype, mainnet release is due in summer.

 

Q: Where can detailed technical information be found?

A: If you are a programmer, you can skip to tests.

 

Q: How are you going to maintain liquidity?

A: A smart contract can be filled not only using the internal balance but also by a direct transfer. In this case the user does not keep funds within the application and transfers them only during exchange (for example, by withdrawing from another stock exchange). Furthermore, we will use arbitration.

 

 

Q: What is your main difference from your competitors?

A: Most stock exchanges are written using Go and C languages; we create our stock exchange completely on JS, which means that users do not have to download and install binary files. Furthermore, no data pass through our server.

 

Q: It is used only for exchanges. Can information be transferred?

A: Information can easily be written into contracts.

 

Q: OK, if I want to connect bitcoins to my blockchain token project, what should I do?

A: Open the app, add your token using the custom token form. Then offer an order for sale. Press the share button and copy the link to the payment form. Upload it to the website. Do not turn the app off.

 

Q: What is the difference from Lightning and Raiden?

A: We use Lightning as well, add an orderbook and a reputation system. Thus, the product becomes more complex and cryptocurrency-oriented. Furthermore, it is necessary to open a channel for Lightning, while we are making the on-chain system, that is, money can be used at once unlike Lightning where the channel must be closed beforehand.

 

Q: How can your project help my project if we already accept bitcoin and listing on your platform gives us nothing (no volumes)?

A: It will be a simple news opportunity.

 

Q: What is your difference from BitShares, WavesDEX, etc.?

A: Most use gateways accepting currency and issue unsecured tokens (such as BTC > dexBTC) that can be used for trade in another blockchain. There is no guarantee that the gateways will accept the tokens back.

 

Q: I am a market maker. Most exchanges are ready to remove fees, what bonuses can you offer?

A: You don’t have to keep the volume on our system.

 

Full list of features

  •     Wyre Bitcoin Wallet: a second level protocol and a platform implementing cross-blockchain swaps of cryptocurrencies
  •     using hashed timelock contracts (the base of atomic swap, Lightning network)
  •     the basis of bitcoin is the integrity of private property, we support the principle
  •     purpose: the period between sending from a wallet and deposit in another blockchain is 1 minute.
  •     95% of cryptocurrencies are supported (because of ERC20)
  •     Automatic market maker
  •     Convenient UX
  •     A direct exchange is possible via a link
  •     it does not require its own blockchain, it works using existing ones
  •     exchange is possible in 20 seconds if there is mutual trust
  •     works directly from the browser
  •     BitcoinJS, web3, ipfs.js are used
  •     the use of Lightning is planned
  •     solution for fiat
  •     planned: Lightning network wallet
  •     planned: Monero swaps
  •     0% fee (not for everybody)
  •     works in browsers (excellent for mobile users)
  •     planned: lending, margin trading

 

Current swap directions support

tx\rx ETH ERC20 BTC BCH GHOST SUM NEXT
ETH + + +
ERC20 + +
BTC + +
BCH
GHOST + +
SUM
NEXT + + +

Wyrebitcoin Swap Wallet is a completely decentralized cryptocurrency wallet which supports Bitcoin, Bitcoin Cash, Litecoin, EOS, Telos, Ethereum, and some popular ERC tokens including Wyrebitcoin Token (WyBTC). Wyrebitcoin Swap Wallet is a unique wallet which features a truly peer-to-peer coin-coin and coin-token exchanging feature. This feature is powered by the ‘Atomic Swap’ technology, which is just another way of explaining the act of combining multiple blockchains into a single interface for users to directly interact and exchange coins with one another.

Decentralized is another way of describing a non-custodial platform. This simply means that there are no 3rd parties involved in storing and swapping your coins and tokens. No data or information about you is ever recorded, passed, and cached on our servers. When you create a new wallet on wyrebitcoin.com, you are creating a wallet 100% on your end, via your browser. This means if you lose your private keys (or forget to save them), you will lose your funds permanently as nobody else keeps these data/information.

Atomic swap is a peer-to-peer exchange of cryptocurrencies from one party to another, without going through a third party service like a crypto exchange. During this entire process, the users have full control and ownership of their private keys. For more information, read this ARTICLE.

Over $1 Billion+ were lost up until today as a result of hacking incidents on centralized wallets and exchanges. Transparency is never always guaranteed with centralized services. Hence, many avid cryptocurrency users are quickly shifting away from centralized services to decentralized/non-custodial platforms.

Another reason is the hectic fees involved with centralized services. Market makers/takers are usually charged around 0.1% for each exchange activity and there are deposit/withdrawal fees involved. Remember, we are not here to sell anything and we charge 0 fees for any of the services we offer. We have simply created this decentralized wallet + p2p exchange because we are passionate about bringing solutions to the existing problems within the industry. By using Bitcoin.js, web3.js and the libp2p library in IPFS, we allow users to seamlessly swap coins and tokens (cross-chain) directly with one another without any 3rd parties involved & without any fees involved.

Many centralized services additionally require you to complete KYC as funds are received directly into their wallets. We do not require users to verify their identifications as we do not handle your funds nor do we store your data anywhere with us. Nobody can freeze or suspend your account or funds and prevent you from performing transactions. It’s the way it should have been and will always be.