Semua tulisan dari Ahmad Sobirin

how to Binance DEX: Accessing Your Wallet

how to Binance DEX, Accessing Your Wallet

To start, navigate to the Binance DEX (or testnet if you wish to test using testnet funds) and click on “Unlock Wallet” in the upper right-hand corner of your screen.
Binance DEX: Accessing Your Wallet
From here you are able to select the method on how you would like to unlock your wallet.
There are 3 methods to unlock your wallet:
  1. WalletConnect (Recommended)
  2. Ledger Device (Recommended)
  3. Keystore File (NOT Recommended)

WalletConnect (recommended)

The easiest way to access your Binance DEX wallet. WalletConnect easily integrates with Trust Wallet (Binance’s official recommended wallet) and CoolWallet S. 
To get started, open the Binance DEX and click on WalletConnect. From here, click on the “Get WalletConnect QR Code” button.
WalletConnect
Open Trust Wallet (or download it if you do not have it yet) and click on the button in the upper left-hand corner of the wallet and then click “WalletConnect”. This will open your camera for you to scan the QR Code generated by Binance DEX.
WalletConnect
Once you scan the QR code, approve access and you will be connected to the Binance DEX with your Trust wallet using WalletConnect. 

Ledger Device (recommended)

In order to use your Ledger hardware wallet with the Binance Chain, first you must install the Binance Chain application onto your Ledger from the Ledger Live manager. 
Binance DEX: Accessing Your Wallet
Once the Binance Chain application is installed on your Ledger, unlock your Ledger by entering your pin code. 
Binance DEX: Accessing Your Wallet
After unlocking your device, you will be on the menu of the Ledger, open up the Binance Chain application
Binance DEX: Accessing Your Wallet
When you open up the Binance Chain application, you will see a message saying “Binance Chain Ready”

 

Binance DEX: Accessing Your Wallet

While the application is open, you can unlock your wallet and trade on the DEX by navigating to the Binance DEX (or testnet if you wish to test using testnet funds) and clicking on “Unlock Wallet” in the upper right-hand corner of your screen. From here, select “Ledger Device” and click on “Connect to Ledger”.
Binance DEX: Accessing Your Wallet

Keystore File (not recommended)

In order to unlock your wallet using a keystore file either upload your keystore file by clicking on the “Upload keystore file” button or drag and drop your keystore file into the button.
You will then need to enter the password you first set up with your keystore file to unlock your wallet. This password will also act as a session password to protect your account after a period of inactivity.
Binance DEX: Accessing Your Wallet

Once you have unlocked your wallet, you will be on the trading interface of the Binance DEX. Continue through to our article on navigating the Binance DEX to learn how to use the interface.

How to Binance DEX: Creating a Wallet

How to Binance DEX: Creating a Wallet

To start, navigate to the Binance DEX (or testnet if you wish to test using testnet funds) and click on “Create Wallet” in the upper right-hand corner of your screen.
You will be prompted with a tutorial on how to create a wallet directly on the website.
As a Binance DEX user, you will hold full custody of your funds. No one, not even Binance will be able to help you recover your wallet if you lose your private key, mnemonic phrase or keystore file. 
Upon creating a wallet, the following will be generated for you. Please store them securely.
  • Keystore (encrypted & password protected)
    • A keystore file contains your private key along with your public key and address (both of which are derived from your private key). This file is encrypted and password protected. This is the recommended way to access your wallet if you do not have access to a supported hardware device. 
  • Mnemonic Phrase
    • A mnemonic phrase is generated based on a BIP39 word list – this phrase allows you to access your wallet, but should not be used regularly. It is recommended you only use your mnemonic phrase as a backup
  • Private Key
    • This allows you to access your wallet, but should not be used regularly. It is recommended you only use your private key as a backup
In order to create a keystore file, you will need to assign a password that will be used to access the file. When logging into the Binance DEX, this password will also function as your session password.
Once you have entered your password, click “Download Keystore File”.

Binance DEX: Creating a Wallet

In the next step, your mnemonic phrase will be generated. Make sure no one is able to see your screen during this phase.
Once you’ve proceeded to the next step, you will see your mnemonic phrase and you will be able to view your private key by clicking on “View my Private Key >>” after you have finished writing down your mnemonic phrase.
Binance DEX: Creating a Wallet
The recommended methods of accessing your wallet are with a keystore file or a supported hardware device. 
Storage tips for the mnemonic phrase and private key:
  1. Do not store on an electronic device (computer, phone, etc.).
  2. Do not print them out. Printers have a memory of what they print. 
  3. Hand-write them on paper.
  4. Do not put your private key or mnemonic phrase in your wallet.
  5. Store them in a fireproof and waterproof safe/lockbox.
Congratulations. You’ve created a wallet on the Binance Chain. You may now use the wallet with the Binance DEX.  To learn how to unlock your wallet, continue through to our article on accessing your Binance DEX wallet

How to Deposit on Binance

How to Deposit on Binance

In order to begin trading cryptocurrencies on Binance Exchange, you will need to deposit funds into your Binance account.

Deposit cryptocurrency on Binance

Binance supports trading of over 150 different cryptocurrencies, and you can deposit any one of these onto the exchange. In this example, we will be depositing BNB from Trust Wallet.
From the homepage of Binance, move your mouse up to your profile icon. The icon will be different for everyone and is defined based on the first two letters of your email address.
Once you activate the dropdown menu, you will see an overview of your profile. Click on “Deposit,” and you will be directed to the deposit page. 
How to Deposit on Binance
Once on the deposit page, you will be able to select which coin you wish to deposit. Binance supports the deposit of over 150 cryptocurrencies. However, it’s important to note that sometimes deposits will be unavailable for certain cryptocurrencies if the wallet is undergoing maintenance.
The coin selection is on the left side of the screen, and the deposit details will be displayed on the right side.
How to Deposit on Binance
Depending on the cryptocurrency you have selected to deposit, there may be a specific process to deposit that coin. In the case of BNB, a MEMO is required when depositing BNB to Binance Exchange. Once you have read and understood the warning, select “I understand” and proceed. 
How to Deposit on Binance
After you have continued to the next stage, your BNB deposit address will be displayed on the screen along with the deposit MEMO. If you do not include a memo when depositing, your deposit will be lost.

Why is a MEMO required?

A MEMO is required because the BNB deposit address for all users is identical. The MEMO is a unique identifier assigned to each account that allows Binance to identify a deposit and credit the appropriate account. 
How to Deposit on Binance
Now that you have your deposit details, you can open the wallet that you wish to send the deposit from. For this example, we will be using Trust Wallet on iOS. If you don’t have Trust Wallet, you can download it from the Trust Wallet website.
Once your wallet is open, select the coin you wish to send. In this case, it is BNB. 
How to Deposit on Binance
Now click on “Send.”
How to Deposit on Binance
From this screen, you will need to enter your Binance deposit address and MEMO. The simplest way to input your address is to scan the QR code available on Binance. You can see your QR code by clicking “Show QR Code” on the website.
How to Deposit on Binance
How to Deposit on Binance
Once you have entered your details you can send the transaction and your Binance account will be credited shortly after.
How to Deposit on Binance

Purchasing cryptocurrency on Binance with credit card

You can also purchase cryptocurrencies using your credit card. To do so, move your mouse up to your profile icon. Once you activate the dropdown menu, click on “Buy With Credit Card” to be directed to the next step.
How to Deposit on Binance
On the next page, you will be able to select which coin you wish to buy, as well as the order amount. The total charge will be displayed according to the order amount and current market price (all fees are included). If you prefer, you can set the total charge first and the order amount will be calculated automatically.
How to Deposit on Binance
When you are ready, click “Buy now.” A window will appear so you can confirm the details of your order. Read the disclaimer and Terms of Use and, if you agree, tick the box and click “Go to payment.”
How to Deposit on Binance
Next, you will be required to fill your credit card details along with your personal information. When you are done, click “Pay now.”
How to Deposit on Binance
How to Deposit on Binance
Wait for your credit card to be verified.
How to Deposit on Binance
If this is your first Simplex payment, you will be required to verify your email and phone number. You will receive an email and an SMS with a verification code. To finish the verification process, you need to open the link sent by email and insert the code received by SMS. Once you are done, click “Continue.”
How to Deposit on Binance
Next, you will be required to verify your identity using an official document. Please upload a picture of your document along with your personal data and click “Upload Document.”
How to Deposit on Binance
Finally, your documents will be verified and, if approved, you will receive an email stating that your purchase has been confirmed. Your Binance account will be credited shortly with the purchased cryptocurrency.

BINANCE What Is a Limit Order?

BINANCE What Is a Limit Order?

A limit order is an order that you place on the order book with a specific limit price. The limit price is determined by you. So when you place a limit order, the trade will only be executed if the market price reaches your limit price (or better). Therefore, you may use limit orders to buy at a lower price or to sell at a higher price than the current market price.
Unlike market orders, where trades are executed instantly at the current market price, limit orders are placed on the order book and are not executed immediately, meaning that you save on fees as a market maker.

How to use it?

Let’s say you want to sell BNB at a higher price than what is currently being bid. After logging in to your Binance account, choose the BNB market you want (e.g., BNB/BTC) and go to the trading page. Then, find the Limit order tab, set the price and amount, and click the Sell BNB button. You may also set the amount by clicking the percentage buttons, so you can easily place a limit sell order for 25%, 50%, 75% or 100% of your balance.
What is a Limit Order?
After that, you will see a confirmation message on the screen, and your limit order will be placed on the order book, with a small yellow arrow.
What is a Limit Order?
What is a Limit Order?
You can scroll down to see and manage your open orders. The limit order will only execute if the market price reaches your limit price. If the market price doesn’t reach the price you set, the limit order will remain open.

 

What is a Limit Order?

When should you use it?

You should use limit orders when you are not in a rush to buy or sell. Unlike market orders, the limit orders are not executed instantly, so you need to wait until your ask/bid price is reached. Limit orders allow you to get better selling and buying prices and they are usually placed on major support and resistance levels. You may also split your buy/sell order into many smaller limit orders, so you get a cost average effect.

BINANCE What Is a Market Order?

What is a Market Order?

A market order is an order to quickly buy or sell at the best available current price. It needs liquidity to be filled, meaning that it is executed based on the limit orders that were previously placed on the order book. 
Unlike limit orders, where orders are placed on the order book, market orders are executed instantly at the current market price, meaning that you pay the fees as a market taker.

How to use it?

Let’s say you want to create a market order to buy 2 BNBs. After logging in to your Binance account, choose the BNB market you want (e.g., BNB/USDT) and go to the trading page. Then, find the Market order tab, set the amount to 2 BNB, and click the Buy BNB button. 
What is a Market Order?
After that, you will see a confirmation message on the screen, and your market order will be executed.
What is a Market Order?
Since market orders are executed right away, your market buy order will match the cheapest limit sell order available on the order book, in this example 2 BNB for 5.2052 USDT each.
What is a Market Order?
But let’s say you want to buy 500 BNB at the current market price. The cheapest limit sell order available will not be sufficient to fill your entire market buy order, so your order will automatically match the following limit sell orders, working its way up the order book until it is completed. This is called slippage and is the reason why you pay higher prices and higher fees (because you are acting as a market taker).
What is a Market Order?
When should you use it?
Market orders are handy in situations where getting your order filled is more important than getting a certain price. This means that you should only use market orders if you are willing to pay higher prices and fees caused by the slippage. In other words, market orders should only be used if you are in a rush. 
Sometimes you might be in a situation where you had a stop-limit order that was passed over, and you need to buy/sell as soon as possible. So if you need to get into a trade right away or get yourself out of trouble, that’s when market orders come in handy.
However, if you’re just coming into crypto for the first time and you are using Bitcoin to buy some altcoins, avoid using market orders because you will be paying way more than you should. In this case, you should use limit orders.

BINANCE Withdrawal Address Whitelist

How to whitelist a withdrawal address on Binance

The withdrawal address whitelist is another security feature offered by Binance. When the whitelist feature is turned off, your account is able to make withdrawals to any address. When turned on, you will be able to make withdrawals only to the addresses that are whitelisted.
In other words, the addresses that you whitelist will be the only ones able to receive funds from your Binance account. This is very useful because if you ever become a victim of phishing and a hacker manages to invade your account, they won’t be able to withdraw your money.

How to activate it

From the homepage of Binance, move your mouse up to your profile icon. Note that the icon will be different for each account as it is based on the first two letters of your email address. Once you activate the dropdown menu, you will see an overview of your profile. Click on “Security,” and you will be directed to the security page.
Withdrawal Address Whitelist
Then click on the “Address Management” tab.
Withdrawal Address Whitelist
The whitelist toggle will be displayed on the right side of your screen.
Withdrawal Address Whitelist
Turn it on, and you will see a confirmation window like this:
Withdrawal Address Whitelist
Next, you will be required to provide your 2FA authentication. In this case, we are using the Google Authentication app.
Withdrawal Address Whitelist
After turning the whitelist feature on, click on “Add new withdrawal address.”
Withdrawal Address Whitelist
Next, select the coin of your withdrawal address and give it a name (label). In this example, we will add a BNB address generated by the TrustWallet app, so we will label this address “MyTrustWallet.”
Depending on the cryptocurrency you have selected, there may be a specific process to withdraw that coin. In the case of BNB, a MEMO may be required. If you are sending BNB to another account on Binance Exchange, you must include the MEMO. Otherwise, you will lose your funds. Make sure to check whether the address you are sending BNB requires a MEMO.
For TrustWallet addresses, you don’t need to insert a MEMO. If you are sure that you don’t need a MEMO, leave it blank. Next, add the address, check the “Add to Whitelist” box, and click “Submit.”
Withdrawal Address Whitelist
You will be required to provide your 2FA authentication once again.
Withdrawal Address Whitelist
A confirmation email will be sent to you. Follow the instructions in the email to confirm your request.
Withdrawal Address Whitelist
Check if everything is correct. If so, click confirm to finish the process and will you see the following message:
Withdrawal Address Whitelist
Now that your withdrawal address was whitelisted, you may go to your Binance account and check the Address Management page. On this page, you can see and manage all your withdrawal addresses, including the whitelisted ones.
Withdrawal Address Whitelist
You should always have your withdrawal whitelist feature turned on, so you have an extra layer of security over your funds.

binance What Is a Stop-Limit Order?

What is a Stop-Limit Order?

A stop-limit order is one of the many order types you will find on Binance. However, before proceeding with this one, we recommend you to first learn about limit and market orders.
The best way to understand a stop-limit order is to break it down into stop price and limit price. The stop price is simply the price that triggers a limit order, and the limit price is the specific price of the limit order that was triggered. This means that once your stop price has been reached, your limit order will be immediately placed on the order book.
Although the stop and limit prices can be the same, this is not a requirement. In fact, it would be safer for you to set the stop price (trigger price) a bit higher than the limit price (for sell orders) or a bit lower than the limit price (for buy orders). This increases the chances of your limit order getting filled after the stop-limit is triggered.


How to use it?

Let’s say you just bought 5 BNB at 0.0012761 BTC because you believe the price is close to a major support level and will likely go up from here. 

What Is a Stop-Limit Order?
In this situation, you may want to set a stop-limit sell order to alleviate your losses in case your assumption is wrong, and the price starts to drop. To do that, log in to your Binance account and go to the BNB/BTC market. Then click on the Stop-Limit tab and set the stop and limit price, along with the amount of BNB to be sold.
So if you believe that 0.0012700 BTC is a reliable support level, you may set a stop-limit order just below this price (in case it doesn’t hold). In this example, we will set a stop-limit order for 5 BNB with the stop price at 0.0012490 BTC and the limit price at 0.0012440 BTC.

What Is a Stop-Limit Order?

When you click Sell BNB, a confirmation window will appear. Make sure everything is correct and press Place Order to confirm.

What Is a Stop-Limit Order?

After placing your stop-limit order, you will see a confirmation message.

What Is a Stop-Limit Order?

You can scroll down to see and manage your open orders.

What Is a Stop-Limit Order?

Note that the stop-limit order will only be placed if and when the stop price is reached, and the limit order will only be filled if the market price reaches your limit price. If your limit-order is triggered (by the stop price), but the market price doesn’t reach the price you set, the limit order will remain open. 
Sometimes you might be in a situation where the price drops too fast, and your stop-limit order is passed over without being filled. In this case, you may appeal to market orders to quickly get out of the trade.


When should you use it?

Stop-limit orders are valuable as a risk management tool, and you should use it to avoid significant losses. Noteworthy, they are also useful for placing Sell orders to ensure that you take your profits when your trading targets are reached. You may also set a stop-limit buy order to buy an asset after a certain resistance level is breached during the start of an uptrend.

An Introduction to The Dow Theory

What is the Dow Theory?

Essentially, the Dow Theory is a framework for technical analysis, which is based on the writings of Charles Dow concerning market theory. Dow was the founder and editor of the Wall Street Journal and the co-founder of Dow Jones & Company. As part of the company, he helped create the first stock index, known as the Dow Jones Transportation Index (DJT), followed by the Dow Jones Industrial Average (DJIA).
Dow never wrote his ideas as a specific theory and didn’t refer to them as such. Still, many learned from him through his editorials in the Wall Street Journal. After his death, other editors, such as William Hamilton, refined these ideas and used his editorials to put together what is now known as the Dow Theory.
This article provides an introduction to the Dow Theory, discussing the different stages of market trends based on Dow’s work. As with any theory, the following principles are not infallible and are open to interpretation.

The basic principles of the Dow Theory

The market reflects everything

This principle is closely aligned with the so-called Efficient Market Hypothesis (EMH). Dow believed that the market discounts everything, which means that all available information is already reflected in the price.
For example, if a company is widely expected to report positive improved earnings, the market will reflect this before it happens. Demand for their shares will increase prior to the report being released, and then the price may not change that much after the expected positive report finally comes out.
In some cases, Dow observed that a company might see their stock price reduce after good news because it wasn’t quite as good as expected.
This principle is still believed to be true by many traders and investors, particularly by those that make extensive use of technical analysis. However, those that prefer fundamental analysis disagree and believe the market value does not reflect the intrinsic value of a stock.
Some people say that Dow’s work is what gave birth to the concept of a market trend, which is now deemed as an essential element of the financial world. The Dow Theory says that there are three main types of market trends:
  • Primary trend – Lasting from months to many years, this is the major market movement.
  • Secondary trend – Lasting from weeks to a few months.
  • Tertiary trend – Tends to die in less than a week or not longer than ten days. In some cases, they may last only for a few hours or a day.
By examining these different trends, investors can find opportunities. While the primary trend is the key one to consider, favorable opportunities tend to occur when secondary and tertiary trends seem to contradict the primary one.
For example, if you believe a cryptocurrency has a positive primary trend, but it experiences a negative secondary trend, there may be an opportunity to purchase it relatively low, and try to sell once its value has increased.
The problem now, as then, is in recognizing what type of trend you are observing, and that’s where deeper technical analysis comes in. Today, investors and traders use a wide range of analytical tools to help them understand what type of trend they are looking at.
Dow established that long-term primary trends have three phases. For example, in a bull market, the phases would be:
  • Accumulation – After the preceding bear market, the valuation of assets is still low as the market sentiment is predominantly negative. Smart traders and market makers start to accumulate during this period, before a significant increase in price occurs.
  • Public Participation – The wider market now realizes the opportunity that smart traders have already observed, and the public becomes increasingly active in buying. During this phase, prices tend to increase rapidly.
  • Excess & Distribution – In the third phase, the general public continues to speculate, but the trend is nearing its end. The market makers start to distribute their holdings, i.e., by selling to other participants who are yet to realize that the trend is about to reverse.
In a bear market, the phases would essentially be reversed. The trend would start with distribution from those who recognize the signs and be followed by public participation. In the third phase, the public would continue to despair, but investors who can see the upcoming shift will begin accumulating again. 
There is no guarantee that the principle will hold true, but thousands of traders and investors consider these phases before taking action. Notably, the Wyckoff Method also relies on the ideas of accumulation and distribution, describing a somewhat similar concept of market cycles (moving from one phase to another).

Cross-index correlation

Dow believed that primary trends seen on one market index should be confirmed by trends seen on another market index. At the time, this mainly concerned the Dow Jones Transportation Index and Dow Jones Industrial Average.
Back then, the transportation market (mainly railroads) was heavily linked to industrial activity. This stands to reason: for more goods to be produced, an increase in rail activity was first needed to provide the necessary raw materials. 
As such, there was a clear correlation between the manufacturing industry and the transportation market. If one were healthy, the other would likely be as well. However, the principle of cross-index correlation doesn’t hold up quite as well today because many goods are digital and don’t require physical delivery.

Volume matters

As many investors do now, Dow believed in volume as a crucial secondary indicator, meaning that a strong trend should be accompanied by a high trading volume. The higher the volume, the more likely it is that the movement reflects the true trend of the market. When the trading volume is low, the price action may not represent the true market trend.
Dow believed that if the market is trending, it will continue to trend. So, for example, if a business’s stock starts to trend upwards after positive news, it will continue to do so until a definite reversal is shown.
Because of this, Dow believed that reversals should be treated with suspicion until they are confirmed as a new primary trend. Of course, distinguishing between a secondary trend and the beginning of a new primary trend is not easy, and traders often face misleading reversals that end up being just secondary trends.

Closing thoughts

Some critics argue that the Dow Theory is outdated, especially in regard to the principle of cross-index correlation (which states that an index or average must support another). Still, most investors consider the Dow Theory to be relevant today. Not only because it concerns identifying financial opportunities, but also because the concept of market trends that Dow’s work created.

What is an Eclipse Attack?

Introduction

An eclipse attack is a relatively simple attack that a malicious actor may deploy to interfere with nodes on a network. As the name may suggest, the attack aims to obscure a participant’s view of the peer-to-peer network, in order to cause general disruption, or to prepare for more sophisticated attacks.
Eclipse attacks may sound similar, on the surface, to Sybil attacks. While they share certain similarities – the malicious actor will flood the network with fake peers – their end goal is ultimately different. An eclipse attack takes aim at a single node (for reasons explained in a later section), whilst a Sybil attack is a network-wide attack designed to game the reputational system of the protocol.
The concept is discussed at length in the 2015 paper Eclipse Attacks on Bitcoin’s Peer-to-Peer Network, in which researchers from Boston University and Hebrew University report their findings from their experiments in mounting eclipse attacks, as well as possible countermeasures to combat them.

How an eclipse attack works

Bitcoin miners require specialized equipment in order to generate new blocks, but non-mining (or full) nodes are easily run on minimal computational power. This aids the decentralization of Bitcoin, as anyone can spin up a node on a low-spec device. The software maintains a database of transactions that it synchronizes with its immediate peers, so as to remain in lockstep with the network.
A limiting factor for many nodes is bandwidth. Though there is a tremendous amount of devices running the software, the average device is unable to connect directly to many of them due to limitations set out in the Bitcoin software (which only permits a maximum of 125 connections).
In an eclipse attack, the malicious actor will ensure that all of the target’s connections are made to attacker-controlled nodes. The entity will first flood the target with its own IP addresses, which the victim will likely connect to upon the restart of their software. A restart can either be forced (i.e. with a DDoS attack on the target), or the attacker can simply wait for it to occur. 
Once this has occurred, the unsuspecting victim is at the mercy of the malicious nodes – with no view of the wider network, they can be fed incorrect data by the attacker.

Consequences of an eclipse attack

If an attacker is expending the resources to alienate a peer from the network, they probably have a motive to do so. There are a handful of successive attacks that can be more easily launched once a node has been suffocated.

0-confirmation double spends

If an individual accepts a transaction with no confirmations, they’re at risk of a double spend. The transaction may have been broadcast, but until it has been included in a block (and therefore committed to the blockchain), the sender can easily craft a new transaction that spends the same funds somewhere else. If the new transaction has a higher fee, a miner will likely include it before the original, invalidating the earlier one. 
Some businesses and individuals accept these 0-confirmation transactions. Consider a merchant, Bob, who sells high-end vehicles. He is unaware that Alice has eclipsed his node, and suspects nothing as she places an order for a luxury sports car. She creates a transaction, which Bob then broadcasts to the network. Satisfied that the payment is on its way, he hands over the keys to the car and Alice speeds off.
Of course, the transaction wasn’t broadcast to the network – Bob has merely relayed it to Alice’s malicious nodes, which will not relay it to honest nodes. While this transaction hangs in limbo, Alice spends the same funds on the (real) network, whether to another party or to an address she owns. Even if the initial transaction to Bob is eventually seen, it will be rejected as the coins have already been spent.

N-confirmation double spends

The N-confirmation double spend is similar to the 0-confirmation one, but involves more preparation. Many businesses prefer to wait for a certain number of confirmations before marking a payment as valid. To route around this, the attacker must eclipse both miners, and the merchant. Once the attacker has set up the order with the merchant, they broadcast a transaction to the (eclipsed) miners. The transaction is confirmed and included in the blockchain – but this blockchain is not the chain that the majority of the network observe, since the miner is cut off.
From there, the attacker relays this version of the blockchain to the merchant, who releases the goods under the belief that the transaction has been confirmed. Once the eclipsed nodes rejoin the actual network, the blockchain they mistakenly believe to be valid is orphaned by the one that the rest of the network has been working on (this bears some similarities to a 51% attack).

Weakening competing miners

An eclipsed node will continue to operate, oblivious to the fact that they have been segregated from the network. Miners will continue to mine blocks within the rules laid out by the protocol, but the blocks added will be discarded as they sync with honest peers. 
Theoretically, a large-scale eclipse attack on major miners could be used to facilitate a 51% attack. As it stands, the cost to take over the majority of Bitcoin’s hashing power is simply too high for even the most resourceful of attackers – at ~80TH/s, the entity would need more than 40TH/s to attempt such a maneuver. 
In a hypothetical scenario where this hashing power is distributed between 10 parties (such that each owns 8TH/s), the attacker can significantly lower the requirements for a 51% attack by cutting these parties off from the network. If five are eclipsed, 40TH/s is removed from the race to find the next block, and the attacker now only needs to acquire slightly upwards of 20TH/s to take control.
Other sabotage that can be achieved by eclipsing targets includes the manipulation of nodes for selfish mining, or the engineering of races between miners to find the next block.

Mitigation

With enough IP addresses, an attacker can eclipse any node. The most straightforward method of preventing this from happening is for an operator to block incoming connections, and to only make outbound connections to specific nodes (such as those that have been whitelisted by other peers). As the research paper points out, however, this is not an approach that works at scale – if all participants adopt these measures, new nodes will not be able to join the network.
The authors propose a handful of tweaks to the Bitcoin software, some of which have been integrated since the paper’s release. These make eclipse attacks more costly through minor modifications to the code, such as random selection of new connections and greater capacity for storing addresses.

Closing Thoughts

Eclipse attacks are carried out at the peer-to-peer network level. Deployed as a standalone attack, they can be something of a nuisance. Their true effectiveness is in potentiating other attacks that impact targets financially, or provide the attacker with an advantage on the mining front.
In the wild, there has yet to be serious consequences resulting from an eclipse attack, but the threat still exists in spite of the countermeasures integrated into the network. As with most of the attack vectors that exist for Bitcoin and other cryptocurrencies, the strongest defense will be that which makes it financially prohibitive for malicious parties to attempt them.

Blockchain Oracles Explained

What is a blockchain oracle?

Blockchain oracles are third-party services that provide smart contracts with external information. They serve as bridges between blockchains and the outside world.
Blockchains and smart contracts cannot access off-chain data (data that is outside of the network). However, for many contractual agreements, it is vital to have relevant information from the outside world to execute the agreement.
This is where blockchain oracles come into play, as they provide a link between off-chain and on-chain data. Oracles are vital within the blockchain ecosystem because they broaden the scope in which smart contracts can operate. Without blockchain oracles, smart contracts would have very limited use as they would only have access to data from within their networks. 
It’s important to note that a blockchain oracle is not the data source itself, but rather the layer that queries, verifies, and authenticates external data sources and then relays that information. The data transmitted by oracles comes in many forms – price information, the successful completion of a payment, or the temperature measured by a sensor. 
To call data from the outside world, the smart contract has to be invoked, and network resources have to be spent. Some oracles also have the ability to not only relay information to smart contracts but to send it back to external sources.
Many different types of oracles exist – how a blockchain oracle operates is entirely dependent on what it is designed for. This article will go through some of those designs.

Example of a blockchain oracle

Suppose that Alice and Bob place a bet on who the winner of the US presidential election will be. Alice believes that the Republican candidate will win, while Bob believes that the Democrat will be the winner. They agree on the terms of the bet and lock their funds in a smart contract, which will release all the funds to the winner based on the results of the election.
Since the smart contract cannot interact with external data, it has to depend on an oracle to feed it the necessary information – in this case, the results of the presidential election. After the election is over, the oracle queries a trusted API to find out which candidate has won and relays this information to the smart contract. The contract then sends the funds to Alice or Bob, depending on the outcome.
Without the oracle relaying the data, there would have been no way to settle this bet in a way that couldn’t be gamed by one of the participants. 

What are the different types of blockchain oracles?

Blockchain oracles can be classified depending on a number of different qualities: 
  • Source – does the data originate from software or hardware?
  • Direction of information – is it inbound or outbound?
  • Trust – is it centralized or decentralized?
A single oracle can fall into multiple categories. For example, an oracle that sources information from a company website is a centralized inbound software oracle.

Software oracles

Software oracles interact with online sources of information and transmit it to the blockchain. This information can come from online databases, servers, websites – essentially, any data source on the Web.
The fact that software oracles are connected to the Internet not only allows them to supply information to smart contracts but also to transmit that information in real-time. This makes them one of the most common types of blockchain oracles. 
Information typically provided by software oracles can include exchange rates, digital asset prices, or real-time flight information.

Hardware oracles

Some smart contracts need to interface with the real world. Hardware oracles are designed to get information from the physical world and make it available to smart contracts. Such information could be relayed from electronic sensors, barcode scanners, and other information reading devices.
A hardware oracle essentially “translates” real-world events into digital values that can be understood by smart contracts.
An example of this could be a sensor that checks if a truck transporting goods has arrived at a loading bay. If it does, it relays the information to a smart contract that can then execute decisions based on it.
If you’d like to read more on a similar subject, check out Blockchain Use Cases: Supply Chain.

Inbound and outbound oracles

Inbound oracles transmit information from external sources to smart contracts, while outbound oracles send information from smart contracts to the external world. 
An example of an inbound oracle is one that tells a smart contract what the temperature is measured by a sensor. An example of an outbound oracle can be considered with a smart lock. If funds are deposited to an address, the smart contract sends this information through an outbound oracle to a mechanism that unlocks the smart lock.

Centralized and decentralized oracles

A centralized oracle is controlled by a single entity and is the sole provider of information for the smart contract. Using only one source of information can be risky – the effectiveness of the contract depends entirely on the entity controlling the oracle. Also, any malicious interference from a bad actor will have a direct impact on the smart contract. The main problem with centralized oracles is the existence of a single point of failure, which makes the contracts less resilient to vulnerabilities and attacks.
Decentralized oracles share some of the same objectives as public blockchains – avoiding counterparty risk. They increase the reliability of the information provided to smart contracts by not relying on a single source of truth. The smart contract queries multiple oracles to determine the validity and accuracy of the data – this is why decentralized oracles can also be referred to as consensus oracles.
Some blockchain projects provide decentralized oracle services to other blockchains. Decentralized oracles can also be useful in prediction markets, where the validity of a certain outcome can be verified by social consensus.
While decentralized oracles aim to achieve trustlessness, it is important to note that just like trustless blockchain networks, decentralized oracles do not completely eliminate trust, but rather distribute it between many participants.

Contract-specific oracles

A contract-specific oracle is one that is designed to be used by a single smart contract. This means that if one wants to deploy several smart contracts, a proportionate number of contract-specific oracles have to be developed.
This type of oracle is considered very time-consuming and expensive to maintain. Companies that want to extract data from a variety of sources may find this approach very impractical. On the other hand, since contract-specific oracles can be designed from scratch to serve a specific use case, developers have high flexibility to tailor them to specific requirements.

Human oracles

Sometimes individuals with specialized knowledge in a particular field can also serve as oracles. They can research and verify the authenticity of information from various sources and translate that information to smart contracts. Since human oracles can verify their identity using cryptography, the possibility of a fraudster faking their identity and providing corrupted data is relatively low.

The Oracle Problem

Since smart contracts execute decisions based on data provided by oracles, they are key to a healthy blockchain ecosystem. The main challenge with designing oracles is that if the oracle is compromised, the smart contract relying on it is also compromised. This is often referred to as The Oracle Problem. 
Since oracles are not part of the main blockchain consensus, they are unfortunately not part of the security mechanisms that public blockchains can provide. The trust conflict between third-party oracles and the trustless execution of smart contracts remains a mostly unsolved issue.
Man-in-the-middle attacks can also be a threat, where a malicious actor gains access to the data flow between the oracles and the contract and modifies or falsifies the data.  

Closing thoughts

A reliable mechanism that facilitates communication between smart contracts and the external world is vital to the global adoption of blockchains. Without blockchain oracles, smart contracts would have to rely only on information already within their networks, which would considerably limit their capabilities.
Decentralized oracles have the potential to introduce safeguard mechanisms that could eliminate a lot of systemic risk from the blockchain ecosystem. Blockchain oracles remain one of the critical building blocks to be implemented in a secure, reliable, and trustless manner for the blockchain ecosystem to grow.