# Enhancing Border Gateway Protocol Security Using Public Blockchain
## 2 State of the Art  
Management of traditional networks is essential for reliable provisioning of services. BGP is not sufficiently secure, and it enables some attacks on the AS path. In the section, we review notable results that increased the security of communication between ASes. Towards blockchain-based security in BGP [PERSON] et al. [9] proposed BGPcoin, a BGP framework that is created by a set of smart contracts in the network Ethereum. BGPcoin provides a reliable and transparent allocation of sources such as IP prefixes and AS numbers. It performs and checks sources assignment using blockchain resistant to tampering. [PERSON] et al. [10] also designed RouteCoin model; bi-hierarchical blockchain system. RouteCoin consists of two chains. The global chain is shared among subgroups, and the subgroup chain is shared among ASes. Every AS is placed to subgroup according to its geographical position. They aimed to increase protection for BGP prefix hijacking. They also modified the protocol to achieve faster consensus. [PERSON] et al. [11] introduce the use of a blockchain mechanism to secure BGP and DNS infrastructure. They describe the current problems of RPKI in the decentralized architecture of ASes. They also designed the format of the transaction to save IP prefixes for ASes. However, their solution did not provide an architecture or model that can be implemented among ASes. They also referred to the problem of blockchain scalability. [PERSON] et al. [12] proposed a blockchain-based framework called BGP-LS Chain. It connects multiple ASes and allows us to share bandwidth and delay information of ASes and inter-domain links. They implemented the mechanism on the verification of shared data with smart help contracts. They also introduced an AS credit rating mechanism to evaluate the credibility of every AS. Owners of ASes are forced to advertise the right information. Otherwise, their credit rating is lower, and in the end, less traffic is routed through them. Moreover, they describe research to secure BGP without the use of blockchain. A few studies utilize an approach based on BGP and Deep learning to detect IP hijack. [PERSON] et al. in [13] introduce a method using deep learning. They tested their method on past attacks between 2008 and 2018. They were successful in detection of 32 of 48 attacks. In [14], the authors explored identifying conflicts by using their detector, which learned characteristics of good route updates. There are few results in this area that would allow conclusions to be drawn. In future work, it is also suitable to investigate other methods using deep learning such as neural network that are capable of exploiting the memory in the system for enhanced forecasting capability [15]. In [8], the authors introduced distributed architecture for storing configuration files of the network devices. Therefore the device does not need to rely on a central point in the network, but it can obtain the current configuration file from any node in the blockchain network. The advantage of this architecture is that admin can track changes that happened in the past. Every modification of the configuration file of any device is stored in the blockchain. It is simplified to find out when the configuration file was changed and what was modified. The process of updating a device consists of several steps. First, the network administrator logs in to a blockchain node. The authentication method can be a password or a certificate. Then, he downloads the current configuration file of the device and modifies it. Then the file is checked for syntax errors. If everything is correct, the file is submitted to the network as a transaction. The blockchain node captures this transaction and adds it to the block which is currently being created. If the block passes the consensus process, it will be added to the chain. Now, the file is saved in the blockchain. The network device regularly checks for the new blocks in the chain. If it finds a new block, it checks if the block is addressed to it.