KR102198266B1 - Bitcoin exchange with blockchain analysis device for intrusion detection - Google Patents
Bitcoin exchange with blockchain analysis device for intrusion detection Download PDFInfo
- Publication number
- KR102198266B1 KR102198266B1 KR1020180131041A KR20180131041A KR102198266B1 KR 102198266 B1 KR102198266 B1 KR 102198266B1 KR 1020180131041 A KR1020180131041 A KR 1020180131041A KR 20180131041 A KR20180131041 A KR 20180131041A KR 102198266 B1 KR102198266 B1 KR 102198266B1
- Authority
- KR
- South Korea
- Prior art keywords
- intrusion
- bitcoin
- analysis unit
- management server
- block
- Prior art date
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q20/00—Payment architectures, schemes or protocols
- G06Q20/30—Payment architectures, schemes or protocols characterised by the use of specific devices or networks
- G06Q20/36—Payment architectures, schemes or protocols characterised by the use of specific devices or networks using electronic wallets or electronic money safes
- G06Q20/367—Payment architectures, schemes or protocols characterised by the use of specific devices or networks using electronic wallets or electronic money safes involving electronic purses or money safes
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q20/00—Payment architectures, schemes or protocols
- G06Q20/38—Payment protocols; Details thereof
- G06Q20/382—Payment protocols; Details thereof insuring higher security of transaction
- G06Q20/3827—Use of message hashing
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q20/00—Payment architectures, schemes or protocols
- G06Q20/38—Payment protocols; Details thereof
- G06Q20/40—Authorisation, e.g. identification of payer or payee, verification of customer or shop credentials; Review and approval of payers, e.g. check credit lines or negative lists
- G06Q20/401—Transaction verification
- G06Q20/4016—Transaction verification involving fraud or risk level assessment in transaction processing
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q30/00—Commerce
- G06Q30/06—Buying, selling or leasing transactions
- G06Q30/0601—Electronic shopping [e-shopping]
- G06Q30/0607—Regulated
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q30/00—Commerce
- G06Q30/06—Buying, selling or leasing transactions
- G06Q30/0601—Electronic shopping [e-shopping]
- G06Q30/0609—Buyer or seller confidence or verification
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L2209/00—Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
- H04L2209/56—Financial cryptography, e.g. electronic payment or e-cash
Landscapes
- Business, Economics & Management (AREA)
- Accounting & Taxation (AREA)
- Finance (AREA)
- Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Strategic Management (AREA)
- Physics & Mathematics (AREA)
- General Business, Economics & Management (AREA)
- Theoretical Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Development Economics (AREA)
- Economics (AREA)
- Marketing (AREA)
- Computer Networks & Wireless Communication (AREA)
- Financial Or Insurance-Related Operations Such As Payment And Settlement (AREA)
- Computer And Data Communications (AREA)
Abstract
본 발명은 침입 탐지를 위한 블록체인 분석장치를 구비한 비트코인 교환기에 관한 것이다. 본 발명의 구체적인 예에 따른 비트코인 교환기는 사용자 관리서버, 서명 서버, 및 중앙 비트코인 노드를 포함하고, 상기 비트코인 교환기의 불법적인 침입을 블록체인 분석부의 트랜잭션을 이용하여 탐지 및 완화하는 침입 관리서버를 더 포함한다.The present invention relates to a Bitcoin exchange equipped with a block chain analysis device for intrusion detection. A bitcoin exchange according to a specific example of the present invention includes a user management server, a signature server, and a central bitcoin node, and intrusion management that detects and mitigates illegal intrusion of the bitcoin exchange using a transaction of the blockchain analysis unit. It further includes a server.
Description
본 발명은 비트코인 교환기에 관한 것으로서, 보다 상세하게는 침입 탐지를 위한 블록체인 분석 장치에 갖는 비트코인 교환기에 관한 것이다. The present invention relates to a bitcoin exchanger, and more particularly, to a bitcoin exchanger included in a block chain analysis device for intrusion detection.
최근 들어 온라인상의 거래, 특히 국제적인 거래들을 가능케 하는 크립토 커런시(Crypto currency)를 기반으로 둔 비트코인은 이슈화되고 있으며, 이러한 비트코인은 2008년부터 존재해 왔음에도 불구하고, 사람들은 최근에 그 존재를 접하게 된 이유는 지난 몇 개월 동안 비트코인의 가치가 폭등했기 때문이다.Recently, bitcoin based on cryptocurrency, which enables online transactions, especially international transactions, is becoming an issue, and although such bitcoins have existed since 2008, people have recently existed. The reason I came across is because the value of Bitcoin has skyrocketed over the past few months.
비트코인(Bitcoin)은 2009년 나카모토 사토시(Satoshi Nakamoto)가 만든 디지털 통화로, 통화를 발행하고 관리하는 중앙 장치가 존재하지 않는 구조를 가지고 있다. 대신, 비트코인의 거래는 P2P 기반 분산 데이터베이스에 의해 이루어지며, 공개 키 암호 방식 기반으로 거래를 수행한다. 비트코인은 익명성과 공개성을 가지고 있다.Bitcoin is a digital currency created by Satoshi Nakamoto in 2009, and has a structure that does not have a central device for issuing and managing currencies. Instead, transactions in Bitcoin are made through a P2P-based distributed database, and transactions are performed based on public key cryptography. Bitcoin has anonymity and openness.
비트코인은 지갑 파일의 형태로 저장되며, 이 지갑에는 각각의 고유 주소가 부여되며, 그 주소를 기반으로 비트코인의 거래가 이루어진다. 비트코인은 1998년 웨이따이가 사이버펑크 메일링 리스트에 올린 암호통화(crypto currency)란 구상을 최초로 구현한 것 중의 하나이다.Bitcoin is stored in the form of a wallet file, and each wallet is given a unique address, and Bitcoin transactions are made based on that address. Bitcoin is one of the first to implement the concept of cryptocurrency, which Weitai put on the cyberpunk mailing list in 1998.
또한 비트코인은 공개 키 암호 방식을 이용해 공개된 계정간에 거래를 한다. 모든 거래는 공개적이며, 분산 데이터베이스에 저장된다. 분산된 시간서버로 일련의 작업증명(proof-of-work)을 하여 중복지출(double-spending)을 방지한다. 거래 기록은 모두 사용자 관리서버의 데이터베이스에 저장되어야 한다. 저장소 크기를 줄이기 위해 머클 트리(Merkle tree)가 사용된다.Bitcoin also uses public key cryptography to trade between public accounts. All transactions are public and stored in a distributed database. Distributed time servers prevent double-spending by performing a series of proof-of-work. All transaction records must be stored in the database of the user management server. A Merkle tree is used to reduce the storage size.
비트코인 네트워크에 참여하는 사람은 모두 서명 서버에서 생성된 임의의 암호화 키쌍을 담고 있는 지갑을 갖게 된다. 공개키는 비트코인 주소와 마찬가지인데 모든 지불의 발신자와 수신자 종단점으로 작동한다. Everyone who participates in the Bitcoin network will have a wallet containing a random pair of cryptographic keys generated by the signing server. The public key is like a Bitcoin address, which acts as the sender and receiver endpoint of all payments.
공개키의 짝이 되는 비밀키는 소유자만이 지불할 수 있도록 허가하는데 사용된다. 비트코인 주소에는 소유자에 대한 정보가 포함되지 않아서 익명성을 갖고 있다. The private key paired with the public key is used to allow only the owner to pay. Bitcoin addresses do not contain information about the owner, so they are anonymous.
여기서 주소는 사람이 읽을 수 있게 표기될 경우 33글자 정도 되며 1rYK1YzEGa59pI314159KUF2Za4jAYYTd처럼 보인다. 비트코인 사용자는 여러 주소를 보유할 수 있고 새로운 주소를 제한 없이 생성할 수 있다. 어떤 네트워크 노드와도 접촉할 필요 없이 새로운 공개키와 암호키쌍을 간단히 생성하면 새로운 주소를 즉시 만들 수 있기 때문이다. 쉽게 주소를 무한대로 생성해 바꿔 사용한다면 익명성이 보장될 수 있다.Here, the address is about 33 characters when it is marked human-readable and looks like 1rYK1YzEGa59pI314159KUF2Za4jAYYTd. Bitcoin users can have multiple addresses and create new ones without restrictions. This is because a new address can be created immediately by simply generating a new public key and cryptographic key pair without having to contact any network node. If you easily create an infinite number of addresses and use them, anonymity can be guaranteed.
그리고 비트코인에는 현재 소유자의 공개키(주소)가 포함되어 있다. 사용자 갑이 사용자 을에게 무언가를 전송할 경우를 보자. 갑은 을의 공개키(주소)를 비트코인에 추가하고 갑이 소유한 개인키로 서명한다. 그 다음 갑은 이 비트코인을 적절한 메시지의 거래 내역으로 P2P 네트워크에 방송한다. 나머지 네트워크 노드들은 암호화된 서명과 거래량을 허가하기 전에 입증한다.And Bitcoin contains the current owner's public key (address). Let's say that user A sends something to user A. A adds B's public key (address) to Bitcoin and signs with A's private key. Next, A broadcasts this bitcoin to the P2P network as the transaction details of the appropriate message. The rest of the network nodes verify the encrypted signature and transaction volume before authorizing.
비트코인 네트워크는 "코인 생성" 옵션을 선택한 소프트웨어를 구동하는 누군가, 구체적으로는 블록을 생성해내는데 성공한 누군가에게 한 묶음의 새로운 비트코인을 시간당 6번 정도씩 생성해 배분할 수 있도록 되어 있다. 그 소프트웨어나 같은 역할을 하는 사용자가 직접 만든 특수한 프로그램을 구동하는 사람은 누구나 비트코인 묶음을 받을 가능성이 있다. 비트코인을 생성하는 것은 금광 채굴에 빗대어 "채굴"이라고 불리기도 한다. 사용자가 코인 묶음을 받을 수 있는 확률은 정해진 목표값 이하의 해쉬를 만들어낼 수 있는 확률과 같으며, 비트코인이 묶음당 생성되는 양은 50 BTC를 넘지 않는다. 그리고 변동분은 전 시간에 걸쳐 0으로 줄어들게 프로그램되어, 전부 2100만을 넘지 않게 된다. 이 지불금이 줄어들면, 사용자들은 블록을 생성하는 노드를 구동하는 것 보다는 거래 수수료를 벌도록 유도된다.The Bitcoin network is designed to generate and distribute a bunch of new bitcoins about 6 times per hour to someone running software that has selected the "Generate Coins" option, specifically to someone who has successfully created a block. Anyone who runs the software or a special program created by a user in the same role is likely to receive a bitcoin bundle. Generating Bitcoin is sometimes referred to as "mining" in relation to gold mining. The probability that a user can receive a bundle of coins is the same as the probability of generating a hash below the set target value, and the amount of bitcoin generated per bundle does not exceed 50 BTC. And the fluctuation is programmed to decrease to zero over the entire time, so that the total does not exceed 21 million. When this payout decreases, users are encouraged to earn transaction fees rather than running nodes that generate blocks.
네트워크의 생성용 노드들은 전부 그들의 후보 블록을 만들기 위한 암호화 문제를 찾아내기 위해 경쟁한다. 이문제를 풀려면 반복적인 시행착오가 필요하다. 노드가 정답을 찾으면 네트워크의 나머지 노드에게 그것을 알리고 새로운 비트코인 묶음을 요구한다. 새로 해결된 블록(solved-block)을 받은 노드들은 그것을 허가하기 전에 인증하고 체인에 추가한다. All the generating nodes of the network compete to find cryptographic problems to create their candidate blocks. Repetitive trial and error is required to solve this problem. When a node finds the correct answer, it informs the rest of the network and asks for a new bitcoin bundle. Nodes that have received a newly resolved-block authenticate and add to the chain before granting it.
노드에는 표준 클라이언트를 사용하거나 GPU 가속을 이용하는 다른 소프트웨어가 사용될 수 있다. 사용자들은 집단으로 비트코인을 생성할 수도 있다.Nodes can use standard clients or other software that utilizes GPU acceleration. Users can also generate bitcoins in groups.
블록 하나가 대략 10분마다 생성될 수 있도록 각 노드들은 P2P 네트워크의 집단적 연산 능력의 변화에 따라서 매 2016 블록(약 2주)마다 문제의 난이도를 재조정하게 된다.Each node readjusts the difficulty of the problem every 2016 blocks (about 2 weeks) according to the change in the collective computing power of the P2P network so that one block can be generated approximately every 10 minutes.
이러한 블록체인을 이용하여 비트코인의 암호화 및 익명성을 보정함에도 불구하고 악의적인 다양한 침입 시도가 있으며 이에 거래 시장이 불안정해 지는 문제점이 존재하였다.Despite the use of such a block chain to correct the encryption and anonymity of bitcoin, there have been various malicious intrusion attempts, and there is a problem that the transaction market becomes unstable.
본 발명은 비트코인 교환기의 사용자 관리서버 및 서명 서버와 비트코인 네트워크 각각의 침입을 블록체인 분석으로 탐지 및 완화하는 것을 일 목적으로 한다. An object of the present invention is to detect and mitigate intrusions of a user management server and a signature server of a bitcoin exchange, and each intrusion of a bitcoin network through block chain analysis.
전술한 목적을 달성하기 위해 제안된 본 발명의 일 측면은 사용자 관리서버, 서명 서버, 및 중앙 비트코인 노드를 포함하고 비트코인과 명목 화폐를 상호 교환하는 비트코인 교환기에 있어서, 상기 비트코인 교환기의 불법적인 침입을 블록체인 분석부의 트랜잭션을 이용하여 탐지 및 완화하는 침입 관리서버를 더 포함하는 것이다.In order to achieve the above object, an aspect of the present invention is a bitcoin exchange that includes a user management server, a signature server, and a central bitcoin node, and exchanges bitcoin and fiat money, wherein the bitcoin exchange It further includes an intrusion management server that detects and mitigates illegal intrusion using transactions of the blockchain analysis unit.
바람직하게는 상기 침입 관리서버는, 상기 사용자 관리서버에 불법적으로 침입하여 고객의 계정 아이디와 암호로 계정을 액세스한 다음 고객 잔고를 변경하고, 가짜 구매 정보를 생성하는 제1 침입을 탐지 및 완화하는 제1 침입 분석부를 포함한다.Preferably, the intrusion management server detects and mitigates the first intrusion that illegally intrudes into the user management server, accesses the account with the account ID and password of the customer, changes the customer balance, and generates fake purchase information. It includes a first intrusion analysis unit.
바람직하게 상기 제1 침입 분석부는, 다수의 제1 침입 유형을 모델링하는 제1 침입 모델링 모듈과, 상기 블랙체인 분석부의 트랜잭션의 데이터와 사용자 관리서버의 대차대조표에 기록된 데이터의 일치 여부에 따라 제1 침입 유형 중 대차대조표를 수정하여 보유한 비트코인을 증가하는 침입과 할인된 가격으로 비트코인을 구매한 후 재판매하는 침입을 탐지하는 제2 침입 탐지 모듈과, 상기 제2 침입 탐지 모듈에 의거 탐지된 제1 침입을 상기 서명 서버의 동작을 종료한 후 비트코인의 결제를 철회하여 완화시키는 제1 침입 완화 모듈을 포함하는 것이다.Preferably, the first intrusion analysis unit comprises a first intrusion modeling module for modeling a plurality of first intrusion types, and according to whether the transaction data of the black chain analysis unit matches the data recorded in the balance sheet of the user management server. 1 Among the types of intrusions, a second intrusion detection module that detects intrusions that increase the amount of bitcoins held by modifying the balance sheet and resells bitcoins at a discounted price, and the second intrusion detection module detected based on the second intrusion detection module. And a first intrusion mitigation module for mitigating the first intrusion by withdrawing payment of bitcoin after ending the operation of the signature server.
바람직하게 상기 침입 관리서버는, 상기 서명 서버에 불법적으로 침입하여 개인키를 추출하는 제2 침입을 탐지 및 완화하는 제2 침입 분석부를 더 포함하고, 상기 제2 침입 분석부는, 상기 블록체인 분석부에서 상기 사용자 관리서버에서 사용되지 아니한 모든 mempool의 트랜잭션을 감시하고 감시 결과 mempool의 블록 해쉬값(Txid)과 상기 블록체인 분석부의 블록 해쉬값이 일치하지 아니한 경우 상기 제2 침입으로 탐지하는 제2 침입 탐지 모듈과, 상기 서명 서버에서 생성된 개인키에 잠금 시간 매개 변수를 추가하여 상기 잠금 시간 동안 비트코인의 사용을 중지함에 따라 불법적인 제2 침입을 완화하는 제2 침입 완화 모듈을 포함하는 것이다.Preferably, the intrusion management server further includes a second intrusion analysis unit for detecting and mitigating a second intrusion that illegally intrudes into the signature server and extracts a private key, and the second intrusion analysis unit includes the block chain analysis unit The second intrusion detects as the second intrusion when the block hash value (Txid) of the mempool and the block hash value of the block chain analysis unit do not match as a result of monitoring all transactions of the mempool not used in the user management server at And a second intrusion mitigation module for mitigating an illegal second intrusion by adding a lock time parameter to the private key generated by the signature server and stopping the use of bitcoin during the lock time.
바람직하게 상기 침입 관리서버는, 비트코인 네트워크를 공격하는 제3 침입을 탐지 및 완화하는 제3 침입 분석부를 더 포함하고, 상기 제3 침입 분석부는, 블록체인 분석부(110)에 의한 블록 타임의 분석 결과에 따라 블록 타임의 평균 시간을 설정하고, 평균 블록 타임 동안 비트코인 교환기에서 예금 및 확인되지 아니한 입금을 확인하여 제3 침입을 탐지하는 제3 침입 탐지 모듈과, 비트코인 교환기에서 예금 및 확인되지 아니한 입금을 확인된 경우 공격으로 인한 모든 거래를 되돌리고 서명 서버의 비트코인 철수를 방지하기 위한 서명을 중지하여 제3 침입을 완화하는 제3 침입 완화 모듈을 포함한다.Preferably, the intrusion management server further comprises a third intrusion analysis unit for detecting and mitigating a third intrusion attacking the bitcoin network, and the third intrusion analysis unit includes the block time of the block
전술한 바와 같은 구성의 본 발명에 의하면, 비트코인 교환기의 사용자 관리서버 및 서명 서버와 비트코인 네트워크 각각의 침입을 블록체인 분석으로 탐지 및 완화할 수 있다.According to the present invention having the configuration as described above, intrusions of the user management server and signature server of a bitcoin exchange and each of the bitcoin network can be detected and mitigated by block chain analysis.
본 명세서에서 첨부되는 다음의 도면들은 본 발명의 바람직한 실시예를 예시하는 것이며, 후술하는 발명의 상세한 설명과 함께 본 발명의 기술사상을 더욱 이해쉬키는 역할을 하는 것이므로, 본 발명은 그러한 도면에 기재된 사항에만 한정되어 해석되어서는 아니된다.
도 1은 본 발명의 일 실시예에 따른 비트코인 시스템의 구성을 보인 도면이다.
도 2는 도 1에 도시된 침입 관리서버의 구성도이다.
도 3은 도 2에 도시된 제1 침입 분석부의 구성도이다.
도 4는 도 2에 도시된 제2 침입 분석부의 구성도이다.
도 5는 도 2에 도시된 제3 침입 분석부의 구성도이다.
도 6은 비트코인 네트워크를 통한 제3 침입 과정을 설명하기 위한 개념도
이다.The following drawings attached in the present specification illustrate preferred embodiments of the present invention, and serve to further understand the technical idea of the present invention together with the detailed description of the present invention to be described later, so the present invention is described in such drawings. It is limited to matters and should not be interpreted.
1 is a diagram showing the configuration of a bitcoin system according to an embodiment of the present invention.
2 is a configuration diagram of the intrusion management server shown in FIG. 1.
3 is a configuration diagram of a first intrusion analysis unit shown in FIG. 2.
4 is a configuration diagram of a second intrusion analysis unit shown in FIG. 2.
5 is a configuration diagram of a third intrusion analysis unit shown in FIG. 2.
6 is a conceptual diagram for explaining a third intrusion process through a bitcoin network
to be.
이하에서는 도면을 참조하여 본 발명의 실시예들을 보다 상세하게 설명한다.Hereinafter, embodiments of the present invention will be described in more detail with reference to the drawings.
본 발명의 이점 및 특징, 그리고 그것들을 달성하는 방법은 첨부되는 도면과 함께 후술되어 있는 실시예들을 참조하면 명확해질 것이다. 그러나 본 발명은 이하에서 개시되는 실시예들에 한정되는 것이 아니라 서로 다른 다양한 형태로 구현될 수 있으며, 단지 본 실시예들은 본 발명의 개시가 완전하도록 하고, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 발명의 범주를 완전하게 알려주기 위해 제공되는 것이며, 본 발명은 청구항의 범주에 의해 정의될 뿐이다.Advantages and features of the present invention, and a method of achieving them will become apparent with reference to the embodiments described later together with the accompanying drawings. However, the present invention is not limited to the embodiments disclosed below, but may be implemented in a variety of different forms, and only these embodiments make the disclosure of the present invention complete, and are common knowledge in the technical field to which the present invention pertains. It is provided to completely inform the scope of the invention to those who have, and the invention is only defined by the scope of the claims.
본 명세서에서 사용되는 용어에 대해 간략히 설명하고, 본 발명에 대해 구체적으로 설명하기로 한다.The terms used in the present specification will be briefly described, and the present invention will be described in detail.
본 발명에서 사용되는 용어는 본 발명에서의 기능을 고려하면서 가능한 현재 널리 사용되는 일반적인 용어들을 선택하였으나, 이는 당 분야에 종사하는 기술자의 의도 또는 판례, 새로운 기술의 출현 등에 따라 달라질 수 있다. 또한, 특정한 경우는 출원인이 임의로 선정한 용어도 있으며, 이 경우 해당되는 발명의 설명 부분에서 상세히 그 의미를 기재할 것이다. 따라서 본 발명에서 사용되는 용어는 단순한 용어의 명칭이 아닌, 그 용어가 가지는 의미와 본 발명의 전반에 걸친 내용을 토대로 정의되어야 한다.The terms used in the present invention have been selected from general terms that are currently widely used while considering functions in the present invention, but this may vary depending on the intention or precedent of a technician working in the field, the emergence of new technologies, and the like. In addition, in certain cases, there are terms arbitrarily selected by the applicant, and in this case, the meaning of the terms will be described in detail in the description of the corresponding invention. Therefore, the terms used in the present invention should be defined based on the meaning of the term and the overall contents of the present invention, not a simple name of the term.
명세서 전체에서 어떤 부분이 어떤 구성요소를 "포함"한다고 할 때, 이는 특별히 반대되는 기재가 없는 한 다른 구성요소를 제외하는 것이 아니라 다른 구성요소를 더 포함할 수 있음을 의미한다. 또한, 명세서에서 사용되는 "부"라는 용어는 소프트웨어, FPGA 또는 ASIC과 같은 하드웨어 구성요소를 의미하며, "부"는 어떤 역할들을 수행한다. 그렇지만 "부"는 소프트웨어 또는 하드웨어에 한정되는 의미는 아니다. "부"는 어드레싱할 수 있는 저장 매체에 있도록 구성될 수도 있고 하나 또는 그 이상의 프로세서들을 재생시키도록 구성될 수도 있다.When a part of the specification is said to "include" a certain component, it means that other components may be further included rather than excluding other components unless otherwise stated. In addition, the term "unit" used in the specification refers to a hardware component such as software, FPGA, or ASIC, and "unit" performs certain roles. However, "unit" is not meant to be limited to software or hardware. The “unit” may be configured to be in an addressable storage medium or may be configured to reproduce one or more processors.
따라서, 일 예로서 "부"는 소프트웨어 구성요소들, 객체지향 소프트웨어 구성요소들, 클래스 구성요소들 및 태스크 구성요소들과 같은 구성요소들과, 프로세스들, 함수들, 속성들, 프로시저들, 서브루틴들, 프로그램 코드의 세그먼트들, 드라이버들, 펌웨어, 마이크로 코드, 회로, 데이터, 데이터베이스, 데이터 구조들, 테이블들, 어레이들 및 변수들을 포함한다. 구성요소들과 "부"들 안에서 제공되는 기능은 더 작은 수의 구성요소들 및 "부"들로 결합되거나 추가적인 구성요소들과 "부"들로 더 분리될 수 있다.Thus, as an example, "unit" refers to components such as software components, object-oriented software components, class components, and task components, processes, functions, properties, procedures, Includes subroutines, segments of program code, drivers, firmware, microcode, circuitry, data, database, data structures, tables, arrays and variables. The functions provided within the components and "units" may be combined into a smaller number of components and "units" or may be further separated into additional components and "units".
아래에서는 첨부한 도면을 참고하여 본 발명의 실시예에 대하여 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자가 용이하게 실시할 수 있도록 상세히 설명한다. 그리고 도면에서 본 발명을 명확하게 설명하기 위해서 설명과 관계없는 부분은 생략한다.Hereinafter, embodiments of the present invention will be described in detail with reference to the accompanying drawings so that those of ordinary skill in the art may easily implement the present invention. In addition, in the drawings, parts not related to the description are omitted in order to clearly describe the present invention.
본 실시예에서 고객 단말은 비트코인을 명목화폐로 또는 그 역으로 거래하고자 하는 회사 또는 개인이 소지한 단말이고, 사용자 관리 서버는 고객을 인증하고 각 고객 별 대차대조표를 관리하는 기능을 수행하며, 서명 서버는 사용자 관리 서버에서 제공한 정보를 기반으로 비트코인을 철회하도록 서명하는 장치이며, 중앙 비트코인 노드는 트랜잭션(transaction) 및 블록을 확인하고 생성된 트랜잭션을 타 로컬 비트코인 노드와 마이너(miner)에게 전송하며 트랜잭션 식별번호를 포함하는 영수증을 사용자 관리 서버로 전송하는 기능을 수행한다.In this embodiment, the customer terminal is a terminal owned by a company or individual who wants to trade bitcoin in fiat currency or vice versa, and the user management server authenticates the customer and manages the balance sheet for each customer, The signature server is a device that signs withdrawal of bitcoins based on the information provided by the user management server, and the central bitcoin node verifies the transaction and block, and sends the generated transaction to other local bitcoin nodes and miner ) And transmits the receipt including the transaction identification number to the user management server.
이에 본 실시예는 사용자 관리 서버, 서명 서버, 및 중앙 비트코인 노드와 로컬 비트코인 노드를 연결하는 비트코인 네트워크 상의 각 침입 유형을 블록체인 분석 기반으로 탐지하고 탐지된 침입을 완화하도록 구성된다.Accordingly, the present embodiment is configured to detect each type of intrusion on a user management server, a signature server, and a bitcoin network connecting a central bitcoin node and a local bitcoin node based on blockchain analysis and mitigate the detected intrusion.
이하에서는, 도면을 참조하여 본 발명의 실시예를 상세히 설명한다.Hereinafter, embodiments of the present invention will be described in detail with reference to the drawings.
도 1은 본 실시예가 적용되는 비트코인 시스템을 보인 도면으로서, 도 1에 도시된 바와 같이 고객 단말(10), 사용자 관리서버(21)와 서명 서버(22)와 중앙 비트코인 노드(23)을 구비하는 비트코인 교환기(20), 및 다수의 로컬 비트코인 노드(30)를 포함할 수 있다.1 is a diagram showing a bitcoin system to which this embodiment is applied, as shown in FIG. 1, a
고객 단말(10)은 비트코인과 명목 화폐 간에 거래를 요청하고, 고객 단말(10)로부터의 거래 요청을 수신한 비트코인 교환기(20)의 사용자 관리서버(21)는 고객 인증을 위한 로그인 웹 페이지를 고객 단말(10)로 전달하고 이에 고객 단말(10)의 인증 절차를 수행한다. 여기서 거래는 구매, 판매, 거래 철회, 및 입금 등이다.The
사용자 관리서버(21)는 인증 성공한 고객단말(10)의 잔금 등을 확인한 후 원하는 비트코인 주소로 비트코인 지불을 고객에게 요청한 다음 인증된 통신라인을 통해 서명 서버(22)에 비트코인 지불 요청정보를 전달한다.The
서명 서버(22)는 비트코인 지불 요청정보에 따라 트랜잭션(transaction)을 생성하고 생성된 트랜잭션을 중앙 비트코인 노드(23)를 통해 로컬 비트코인 노드(30)로 전달한다.The
로컬 비트코인 노드(30)는 수신된 트랜잭션이 타 로컬 비트코인 노드(30)에 전달되었는지를 확인한 후 트랜잭션 식별번호를 영수증 형태로 발행하여 사용자 관리서버(21)로 전달한다.The
사용자 관리서버(21)는 수신된 트랜잭션 식별번호를 저장한 후 고객단말(10)로 전달하고(S8), 고객단말(10)은 수신된 트랜잭션 식별번호를 이용하여 거래 확인할 수 있다(S9).The
비트코인 교환기(20)는 사용자 관리서버(21), 서명 서버(22), 및 중앙 비트코인 노드(23)와 로컬 비트코인 노드(30)를 연결하는 비트코인 네트워크 상의 각 침입 유형을 블록체인 분석 기반으로 탐지하고 탐지된 침입을 완화하기 위한 침입관리서버(100)를 더 포함할 수 있다.The
도 2는 도 1에 도시된 침입 관리서버(100)의 구성을 보인 도면으로서, 도 2를 참조하면, 침입 관리서버(100)는 블록체인 분석부(110), 제1 침입 분석부(120), 제2 침입 분석부(130) 및 제3 침입 분석부(140)를 포함할 수 있다.Figure 2 is a diagram showing the configuration of the
블록체인은 10분마다 한번씩 블록을 생성하고 여러 건의 거래 내역을 하나의 블록으로 묶고 이전의 생성된 블록에 체인처럼 계속하여 연결하는 구조이다. 이에 블록체인 분석부(110)는 여러 노드에 걸쳐 분산 저장 및 관리되며 모든 거래 정보를 포함하는 분산 장부 또는 공통 장부를 관리하는 기능을 수행한다. 여기서 블록이란 다수의 거래 정보의 묶음으로 블록 헤더, 거래 정보를 기록하는 다수의 트랜잭션, 및 기타 정보로 구성되며, 트랜잭션은 입출금과 관련된 거래 정보를 기록하는 작업이고, 기타 정보는 블록 내에 있는 정보 중 블록 헤더와 거래 정보에 해당하지 아니한 정보를 포함한 블록 정보로 블록 해쉬 계산에 사용되지 아니한다.Blockchain is a structure that creates a block once every 10 minutes, binds several transaction details into one block, and connects it to the previously created block continuously like a chain. Accordingly, the block
블록 해쉬는 블록의 식별정보로서, 블록 헤더의 소프트웨어/프로토콜의 버전, 블록 체인 바로 이전에 위치한 블록의 해쉬값인 이전 블록 해쉬, 개별 거래 정보의 거래 해쉬를 2진 트리 형태로 구성될 때 트리 루트에 위치하는 해쉬값인 마클 루트, 블록의 생성 시간값인 타임, 난이도 조절용 수치값인 비트(bits), 최초 0으로 시작하여 조건을 만족하는 해쉬값의 검색 시 증가하는 계산 회수값인 논스 정보를 포함한다.The block hash is the identification information of the block, and the tree root when the software/protocol version of the block header, the previous block hash, which is the hash value of the block located immediately before the block chain, and the transaction hash of individual transaction information are configured in the form of a binary tree. Markle root, which is the hash value located at, time, which is the generation time value of the block, bits that are numerical values for difficulty adjustment, and nonce information, which is the number of calculations that increases when searching for a hash value that satisfies the condition starting with the first 0. Include.
제1 침입 분석부(120)는 사용자 관리서버(21)의 침입을 유형 별로 탐지한 다음 제1 침입을 완화하는 기능을 수행한다.The first
제1 침입은 고객의 계정 아이디와 암호로 계정을 액세스하여 고객의 잔고를 변경하기 위한 공격 교환 잔액 장부를 책정하고 가짜로 구매 및 판매 주문을 생성하여 재정적으로 이익을 취하는 공격이다.The first intrusion is an attack to change the customer's balance by accessing the account with the customer's account ID and password, and is an attack that takes financial advantage by setting up an exchange balance book and creating fake purchase and sales orders.
도 3은 도 2에 도시된 제1 침입 분석부(120)의 세부적인 구성을 보인 도면으로서, 도 3에 도시된 바와 같이, 제1 침입 분석부(120)는 제1 침입 모델링 모듈(121), 제1 침입 탐지 모듈(123), 및 제1 침입 완화 모듈(125)를 포함할 수 있다. FIG. 3 is a diagram showing a detailed configuration of the first
제1 침입 모델링 모듈(121)은 (1) 비트코인을 공격자 계정으로 철회하는 사용자 계정 유출, (2) 공격자에 의해 대차대조표가 수정되어 보유한 명목화폐가 증가되는 명목화폐 잔고 증가, (3) 공격자에 의해 높은 가격으로 비트코인이 가짜 주문되는 경우 비트코인을 프리미엄으로 판매하는 많은 비트코인 고가 구매 오더 증가, (4) 공격자에 의해 대차대조표가 수정되어 보유한 비트코인이 증가되는 비트코인 잔고 증가, (5) 공격자에 의해 저렴한 가격으로 비트코인이 가짜 주문되는 경우 비트코일의 가격이 하락하여 플래시 충돌이 발생하고 할인된 가격으로 비트코인을 구매하여 시장이 안정화된 이후 재 판매하는 많은 비트코인 저가 판매 오더 증가 등을 포함하는 제1 침입 유형의 모델이 구축되어 있다. The first
도 3은 블랙체인 분석을 이용하여 제1 침입 유형 중 (4) 및 (5) 침입 유형에 대해 탐지 및 제거를 위한 실시예로서, 본 실시예와 관련된 구성요소들이 도시되어 있다. 따라서, 도 3에 도시된 구성요소들 외에 다른 유형의 침입을 탐지 및 완화하기 위한 범용적인 구성요소가 더 포함될 수 있다. 3 is an embodiment for detection and removal of (4) and (5) intrusion types among the first intrusion types using black chain analysis, and components related to the present embodiment are shown. Accordingly, in addition to the components shown in FIG. 3, general-purpose components for detecting and mitigating other types of intrusion may be further included.
제1 침입 탐지 모듈(123)은 블록체인 분석부(110)의 트랜잭션의 거래 정보를 이용하여 사용자 잔고 무결성을 확인하기 위해 사용자 관리서버(21)에 저장된 대차대조표의 데이터와 블록체인 분석부(110)의 블록의 데이터를 비교하고, 비교 결과에 따라 다수의 제1 침입 유형 중 (4) 및 (5) 침입임을 탐지한다. 예를 들어, 사용자 관리서버(21)에 저장된 대차대조표는 하기 표에 도시된 바와 같이, "∑sell order" 판매되는 비트코인의 총 금액을 나타내고 "∑ Not used"는 판매에 사용되지 아니한 비트코인의 금액을 나타내며 10.05 BTC는 거래소에 있는 비트코인의 총 금액을 나타낸다. The first
사용자 관리서버(21)에 의거 대차대조표에 표시된 비트코인의 총 금액과 블록체인 분석부(110)에 기록된 비트코인의 총 금액이 교차 일치시켜 기록되므로, 제1 침입 탐지 모듈(123)은 사용자 관리서버(21)에 저장된 대차대조표의 데이터와 블록체인 분석부(110)의 블록의 데이터를 비교하고, 비교 결과에 따라 다수의 제1 침입 유형 중 (4) 및 (5) 공격임을 알 수 있다.Based on the
즉, 10분마다 한번씩 생성되는 블록체인 분석부(110)의 블록의 데이터와 사용자 관리서버(21)에 저장된 대차대조표의 데이터가 일치하지 아니하면, 제1 침입 탐지 모듈(123)은 모델링된 다수의 제1 침입 유형 중 (4) 및 (5) 침입 유형을 탐지한다. 여기서, 제1 침입 탐지 모듈(123)은 독립적으로 운영되므로, 고객 단말(10)의 요청이 없는 경우 고객의 개인 정보를 보호하기 위해 사용자 관리서버(21)에 저장된 대차대조표에서 비트코인의 총 금액이 제1 침해 탐지 모듈(123)에 제공된다.That is, if the block data of the block
제1 침입 완화 모듈(125)은 제1 침입으로 인한 피해가 사용자 관리서버(21)에 한정되는바, 서명 서버(22)의 동작을 종료하여 비트코인 결제를 철회하고, 공격자가 거래 시장에 진입하는 것을 방지한 다음 침입 유형을 평가한다. 또한 제1 침입 완화 모듈(125)은 공격자로부터 가짜 판매 또는 구매 주문을 시도한 경우 해당 공격자에 의한 트랜잭션을 중지하여 침입을 견딜 수 있는 시간을 확보한다. In the first
침입 관리서버(100)는 기존에 보안 매개 변수 및 침입 탐지 기능을 갖추고 있음에도 불구하고 공격 대상이고 비트코인 개인키를 호스팅하는 서명 서버(22)에서 발생된 침입의 공격 유형을 탐지 및 완화하는 제2 침입 분석부(130)를 더 포함한다.The
도 4는 도 2에 도시된 제2 침입 분석부(130)의 세부적인 구성을 보인 도면으로서, 제2 침입 분석부(130)는 제2 침입 탐지 모듈(131) 및 제2 침입 완화 모듈(133)을 포함할 수 있다.FIG. 4 is a diagram showing a detailed configuration of the second
서명 서버(22)를 공격하는 제2 침입은 직접 공격자가 서명 서버(22)에 접근하여 개인키를 추출하는 공격으로서, 제2 침입 분석부(130)는 블록체인 분석부(110)의 트랜잭션의 거래 정보를 이용한 트랜잭션 검증을 통해 제2 침입을 탐지한다.The second intrusion attacking the
공격자에 의해 서명 서버(22)의 개인키가 유출된 경우 비트코인 네트워크를 통해 서명 서버(22)에 공격할 수 있기 때문에 제2 침입은 탐지하기가 매우 어렵다. 이에 제2 침입 탐지 모듈(123)은 블랙체인 분석부(110)의 트랜잭션에 대한 멤풀(mempool)을 감시하여 멤풀의 트랜잭션의 데이터와 사용자 관리서버(21)의 트랜잭션을 일치시킴에 따라 제2 침입을 탐지할 수 있다.If the private key of the
멤풀은 로컬 비트코인 노드(30)에 저장되어 있으며 블록체인에 포함되지 아니한 트랜잭션을 저장 및 전송한다.Mempool is stored in the
제2 침입 탐지 모듈(131)은 모든 비트코인의 트랜잭션에 대해 분산 평균을 사용하여 특정 주소에서 발생한 트랜잭션에 대한 검증을 수행할 수 있으며, 이에 허가 없이 비트코인 교환기(20)의 지갑으로부터 비트코인을 거래하는 악의적인 트랜잭션을 용이하게 탐지할 수 있다. The second
이에 악성 트랜잭션을 신속하게 식별하기 위해 멤풀의 트랜잭션과 사용자 관리서버(21)의 트랜잭션과 일치하기 위해 트랜잭션 식별번호가 사용된다. 즉, 트랜잭션 식별번호 또는 블록 해쉬값(Txid)이 서명 가역성으로 인해 변경되지 아니하도록 서명 서버(22)는 비트코인 거래 시 증인 역할을 수행하는 서명 정보를 분리하여 저장하는 지갑(wallet) 및 트랜잭션 세그위트(segwit : Segregated Witness)가 구현되어야 하고 지갑(wallet) 및 트랜잭션 세그위트는 트랜잭션을 확인하는 서명이 블록의 뒤쪽으로 이동되고 블록 해쉬값은 생성되지 아니한다. Accordingly, in order to quickly identify a malicious transaction, a transaction identification number is used to match the transaction of the Mempool and the transaction of the
따라서, 제2 침입 탐지 모듈(131)은 사용자 관리서버(21)에서 사용되지 아니한 모든 멤풀의 트랜잭선에 대해 입력된 블록 해쉬값(Txid)을 비교하고, 비교 결과에 따라 서명 서버(22)의 제2 침입을 탐지할 수 있다.Therefore, the second
제2 침입의 탐지는 멤풀에서 이루어지므로 기존의 멤풀의 트랜잭션을 대체하기 위해 멤풀의 트랜잭션을 오버라이팅(overwriting)할 수 있는 기능이 추가되고, 이를 위해 비트코인 교환기(20)에 마련된 대체 또는 RBF(Replace Buy Fee) 트랜잭션을 사용한다.Since the detection of the second intrusion is performed in Mempool, a function to overwrite Mempool's transaction is added to replace the existing Mempool's transaction, and for this purpose, a replacement or RBF ( Replace Buy Fee) transaction.
RBF 트랜잭션은 낮은 거래 수수료로 비트코인 거래를 가속화하거나 트랜잭션을 일괄 처리하여 거래 비용을 절약하기 위해 개발되었으나, 이를 이용하여 악성 트랜잭션을 새로운 트랜잭션으로 대체할 수 있다. RBF transactions were developed to accelerate bitcoin transactions with low transaction fees or to save transaction costs by batch processing of transactions, but they can be used to replace malicious transactions with new transactions.
예를 들어, 공격자가 합법적인 고객의 서명 서버(22)에 침입하여 획득된 비트코인 주소로 악의적인 거래가 전송되면, RBF 트랜잭션은 발신 트랜잭션없이 이루어진다. For example, when an attacker intrudes into a legitimate customer's
서명 서버(22)는 개인키를 생성하므로 생성되는 개인키에 잠금 시간 매개 변수를 포함하여 전달함에 따라 잠금 시간 동안 해당 비트코인을 사용할 수 없고 이에 제2 침입 완화 모듈(133)은 잠금 시간 동안 제2 침입을 평가한 후 보안 지갑(wallet)을 생성할 수 있다.Since the
제2 침입 완화 모듈(133)에 의거 RBF의 트랜잭션을 실시간으로 업데이트하여 거래하고 자동으로 RBF의 트랜잭션을 로컬 비트코인 노드(30)로 전파함에 따라 제2 침입으로 따른 악의적인 트랜잭션은 제거된다.According to the second
침입 관리서버(100)는 비트코인 네트워크를 공격하는 제3 침입을 탐지한 다음 완화시키는 제3 침입 분석부(140)를 더 포함할 수 있다. The
도 5는 도 2에 도시된 제3 침입 분석부(140)의 세부적인 구성을 보인 도면으로, 도 5에 도시된 바와 같이, 제3 침입 분석부(140)는 제3 침입 탐지 모듈(141) 및 제3 침입 완화 모듈(143)를 포함할 수 있다.5 is a diagram showing a detailed configuration of the third
전술한 바와 같이 제3 침입은 비트코인 네트워크 상에 발생하는 공격으로 비트코인 교환기(20)에 간접적으로 이루어지고, 이를 위해 공격자는 50% 이상의 블록 해쉬비를 사용하여야 한다. 이에 제3 침입은 51% 공격이라고 하고 따라서 공격자는 2배로 비트코인 거래를 진행할 수 있다.As described above, the third intrusion is an attack that occurs on the bitcoin network and is indirectly performed on the
도 6은 제3 침입 과정을 설명하기 위한 개념도로서, 도 6을 참조하면, 비트코인 네트워크를 통한 제3 침입 과정은 다음과 같다.6 is a conceptual diagram illustrating a third intrusion process. Referring to FIG. 6, a third intrusion process through a bitcoin network is as follows.
(1) 공격자가 해쉬 임대 서비스를 이용하여 해쉬 레이트를 임대하면 현재 비트코인 해쉬 레이트의 50% 이상의 제어가 가능하다.(1) If the attacker leases the hash rate using the hash rental service, it is possible to control more than 50% of the current Bitcoin hash rate.
(2) 이 후 사설 비트코인 노드를 설정한 다음 중앙 비트코인 노드(23)와 로컬 비트코인 노드(30) 간의 주 비트코인 네트워크의 연결을 끊고 50% 이상의 해쉬 레이트를 사용하여 채굴한다.(2) After that, after setting up a private bitcoin node, disconnect the main bitcoin network between the
(3) 사전에 공개 비트코인 노드를 이용하여 소유한 지갑과 동일한 비트코인을 전달하면, 비트코인은 주 비트코인 네트워크를 통해 비트코인 교환기(20)로 전달된다.(3) If you transfer the same bitcoin as the wallet you own using a public bitcoin node in advance, the bitcoin is transferred to the
(4) 비트코인 교환기(20)는 비트코인을 판매한 다음 명목 화폐를 인출한다.(4) The
(5) 전술한 (3) 단계에서의 동일한 비트코인은 사설 비트코인 노드 대신 공격자의 월넷으로 전달된다. 이 단계에서 사설 광산 블록이 블록체인 분석부(100)로 전파될 때 주 비트코인 네트워크를 통해 비트코인 교환기(20)로 전송된 트랜잭션은 악의적인 것으로 표시된다.(5) The same bitcoin in step (3) above is delivered to the attacker's wallet instead of the private bitcoin node. At this stage, when the private mining block is propagated to the
(6) 사설 비트코인 노드에서 사설 광산 블록체인이 주 비트코인 네트워크 보다 작업 증명(PoW: Proof of Work)이 많은 지를 확인하고 사설 광산 블록을 주 비트코인 네트워크로 전파한 다음 (3) 단계에서 비트코인 교환기(20)로 전달된 공격자의 트랜잭션을 포함하여 (2) 단계 이 후 전달된 모든 트랜잭션은 되돌려진다. 다만 자신이 소유한 지갑으로 전송한 트랜잭션은 제외된다.(6) In the private bitcoin node, it is checked whether the private mining block chain has more Proof of Work (PoW) than the main bitcoin network, and the private mining block is propagated to the main bitcoin network, and then bit in step (3). All transactions transferred after step (2), including the attacker's transaction transferred to the
이러한 제3 침입은 공격을 받은 이 후에 비트코인 침전물에 대한 확인 시간을 증가하여 장시간의 해쉬 레이트를 임대 시 공격자에게 불이익을 주는 방법으로 완화될 수 있고. 이러한 제3 침입은 블록체인 분석부(110)의 분석된 결과에 따라 제3 침입을 탐지하는 통계적 지표를 기반으로 탐지될 수 있다. This third intrusion can be mitigated by increasing the confirmation time for bitcoin deposits after being attacked and penalizing the attacker when leasing a long hash rate. This third intrusion may be detected based on a statistical index that detects the third intrusion according to the analyzed result of the block
비트코인의 입금액과 관련하여 예금 확인을 설정하면 제3 침입에 대한 안전 조치를 설정할 수 있으나, 이러한 제3 침입에 대한 안전 조치는 대량의 비트코인의 공격을 추정하여야 하는 가정하에서 이루어지므로 공격자가 여러 번 적은 수의 비트코인을 다수의 비트코인 교환기(20)로 전달하는 경우 실패한다. If a deposit confirmation is set in relation to the deposit amount of bitcoin, a safety measure against a third intrusion can be set.However, the safe measure against such a third intrusion is performed under the assumption that a large amount of bitcoin attacks must be estimated. It fails when delivering a small number of bitcoins to a plurality of bitcoin exchanges 20.
제3 침입 탐지 모듈(141)은 블록체인 분석부(110)의 평균 블록 타임 동안3 침입을 탐지하는 기능을 수행한다. The third
블록 타임은 새로운 작업 증명(PoW)을 위해 새 블록을 생성하는 걸리는 시간으로 비트코인의 경우 평균 10분 마다 생성된다. 이러한 블록 타임은 작업 증명의 난이도에 따라 정해지며 블록 타임이 평균 10분 보다 빨라지면 작업 증명의 난이도가 높아지고 블록 타임이 평균 10분 보다 늦어지면 작업 증명의 난이도가 감소한다. 따라서 제3 침입에 대한 공격으로 비트코인 네트워크의 차단 시간이 해쉬 레이트의 50% 이상이 되는 시간 보다 늦어져야만 제3 침입이 탐지된다. 따라서, 평균 블록 타임을 10분에서 20분으로 늘리면 제3 침입 탐지하는데 통계 지표가 된다. Block time is the time it takes to create a new block for a new proof of work (PoW), and in the case of Bitcoin, it is generated every 10 minutes on average. This block time is determined according to the difficulty of proof-of-work, and if the block time is faster than an average of 10 minutes, the difficulty of proof-of-work increases, and if the block time is later than an average of 10 minutes, the difficulty of proof-of-work decreases. Therefore, the third intrusion is detected only when the blocking time of the bitcoin network becomes more than 50% of the hash rate due to an attack against the third intrusion. Therefore, increasing the average block time from 10 minutes to 20 minutes becomes a statistical index for third intrusion detection.
예를 들어, 383627 블록은 2015-11-15 05:11:19에 타임 스탬프가 찍히고 다음 블록 인 383628은 2015-11-15 05:03:16에 타임 스탬프가 지정되었다고 가정하면 새로운 블록을 수신하는 비트코인 노드의 평균 시간은 12.6초이므로 타임 스탬프는 실제 시간 소인보다 평균 12.6초 늦은 것으로 판단되며, 현재 블록과 이전 블록의 시간 스탬프를 차감하여 블록 타임을 계산하면 평균 절대 오류는 약 12.6초가 되어야 한다. 이에 제3 침입 탐지 모듈(131)은 평균 블록 타임을 10분에서 20분으로 증가함에 따라 제3 침입을 탐지할 수 있다.For example, assuming that block 383627 is timestamped on 2015-11-15 05:11:19 and the next block, 383628, is timestamped on 2015-11-15 05:03:16, then receiving a new block Since the average time of the Bitcoin node is 12.6 seconds, the time stamp is judged to be 12.6 seconds behind the actual time stamp on average.If the block time is calculated by subtracting the time stamp of the current block and the previous block, the average absolute error should be about 12.6 seconds. . Accordingly, the third
제3 침입 완화 모듈(143)은 설정된 평균 블록 타임 동안 비트코인 교환기(20)의 예금 및 확인되지 아니한 입금을 확인하여 공격으로 인한 모든 거래를 되돌리고 서명 서버(22)의 비트코인 철수를 방지하기 위한 서명을 중지하는 안전 조치를 수행한다. The third
이에 따라 비트코인 교환기(20)의 사용자 관리서버 및 서명 서버와 비트코인 네트워크 각각의 외부로부터 공급되는 악의적인 침입은 블록체인 분석 결과를 이용하여 탐지 및 완화될 수 있다. Accordingly, malicious intrusions supplied from outside of the user management server and signature server of the
비트코인 교환기의 사용자 관리서버, 서명 서버, 및 비트코인 네트웍스 침입을 블록체인 분석으로 탐지 및 완화할 수 있는 비트코인 교환기의 침입 탐지를 위한 블록체인 분석장치에 대한 운용의 정확성 및 신뢰도 측면, 더 나아가 성능 효율 면에 매우 큰 진보를 가져올 수 있으며, 비트코인 시스템의 시판 또는 영업의 가능성이 충분할 뿐만 아니라 현실적으로 명백하게 실시할 수 있는 정도이므로 산업상 이용가능성이 있는 발명이다.In terms of accuracy and reliability of operation of the user management server of the Bitcoin exchange, the signature server, and the blockchain analysis device for intrusion detection of the Bitcoin exchange that can detect and mitigate the intrusion of Bitcoin Networks with blockchain analysis. It is an invention that has great industrial applicability because it can bring a very large progress in terms of performance efficiency, and the possibility of commercialization or sales of the bitcoin system is sufficient as well as the degree to be practically obvious.
Claims (5)
상기 비트코인 교환기의 불법적인 침입을 블록체인 분석부의 트랜잭션을 이용하여 탐지 및 완화하는 침입 관리서버를 포함하고,
상기 침입 관리서버는, 상기 사용자 관리서버에 불법적으로 침입하여 고객의 계정 아이디와 암호로 계정을 액세스한 다음 고객 잔고를 변경하고 가짜 구매 정보를 생성하는 제1 침입을 탐지 및 완화하는 제1 침입 분석부를 포함하며,
상기 제1 침입 분석부는, 다수의 제1 침입 유형을 모델링하는 제1 침입 모델링 모듈; 상기 블록체인 분석부의 트랜잭션의 데이터와 사용자 관리서버의 대차대조표에 기록된 데이터의 일치 여부에 따라 제1 침입 유형 중 대차대조표를 수정하여 보유한 비트코인을 증가하는 침입과 할인된 가격으로 비트코인을 구매한 후 재판매하는 침입을 탐지하는 제2 침입 탐지 모듈; 및 상기 제2 침입 탐지 모듈에 의거 탐지된 제1 침입을 상기 서명 서버의 동작을 종료한 후 비트코인의 결제를 철회하여 완화시키는 제1 침입 완화 모듈을 포함하고,
상기 제1 침입 모델링 모듈은, i) 비트코인을 공격자 계정으로 철회하는 사용자 계정 유출; ii) 공격자에 의해 대차대조표가 수정되어 보유한 명목화폐가 증가되는 명목화폐 잔고 증가; iii) 공격자에 의해 높은 가격으로 비트코인이 가짜 주문되는 경우 비트코인을 프리미엄으로 판매하는 많은 비트코인 고가 구매 오더 증가; iv) 공격자에 의해 대차대조표가 수정되어 보유한 비트코인이 증가되는 비트코인 잔고 증가; v) 공격자에 의해 저렴한 가격으로 비트코인이 가짜 주문되는 경우 비트코일의 가격이 하락하여 플래시 충돌이 발생하고 할인된 가격으로 비트코인을 구매하여 시장이 안정화된 이후 재판매하는 많은 비트코인 저가 판매 오더 증가를 포함하는 침입 유형 모델을 구축하는
것을 특징으로 하는 비트코인 교환기.
In a bitcoin exchanger that has a user management server, a signature server, and a central bitcoin node and exchanges bitcoin and fiat currency,
Including an intrusion management server that detects and mitigates illegal intrusion of the bitcoin exchange using a transaction of a block chain analysis unit,
The intrusion management server is a first intrusion analysis that detects and mitigates the first intrusion that illegally intrudes into the user management server, accesses the account with the customer's account ID and password, and then changes the customer balance and generates fake purchase information. Includes wealth,
The first intrusion analysis unit may include a first intrusion modeling module that models a plurality of first intrusion types; According to whether the transaction data of the block chain analysis unit matches the data recorded in the balance sheet of the user management server, the balance sheet among the first types of intrusion is modified to increase the amount of bitcoins held and purchase bitcoins at a discounted price. A second intrusion detection module that detects an intrusion that is then re-sold; And a first intrusion mitigation module for mitigating the first intrusion detected by the second intrusion detection module by withdrawing payment of bitcoin after ending the operation of the signature server,
The first intrusion modeling module includes: i) outflow of a user account for withdrawing bitcoin to an attacker account; ii) an increase in the fiat currency balance, which increases the fiat currency held by the attacker's balance sheet modification; iii) Increasing the number of high-priced Bitcoin purchase orders selling Bitcoin at a premium when Bitcoin is faked at a high price by an attacker; iv) Increasing the bitcoin balance due to the amendment of the balance sheet by the attacker, increasing the amount of bitcoins held; v) If bitcoins are fake ordered at a low price by an attacker, the price of bitcoin falls, causing a flash crash, and a large number of low-cost bitcoin sales orders that are reselled after the market stabilizes by purchasing bitcoin at a discounted price. To build an intrusion type model that includes
Bitcoin exchange, characterized in that.
상기 서명 서버에 불법적으로 침입하여 개인키를 추출하는 제2 침입을 탐지 및 완화하는 제2 침입 분석부를 더 포함하고,
상기 제2 침입 분석부는,
상기 블록체인 분석부에서 상기 사용자 관리서버에서 사용되지 아니한 모든 mempool의 트랜잭션을 감시하고 감시 결과 mempool의 블록 해쉬값(Txid)과 상기 블록체인 분석부의 블록 해쉬값이 일치하지 아니한 경우 상기 제2 침입으로 탐지하는 제2 침입 탐지 모듈; 및
상기 서명 서버에서 생성된 개인키에 잠금 시간 매개 변수를 추가하여 상기 잠금 시간 동안 비트코인의 사용을 중지함에 따라 불법적인 제2 침입을 완화하는 제2 침입 완화 모듈을
포함하는 것을 특징으로 하는 비트코인 교환기.
The method of claim 1, wherein the intrusion management server,
Further comprising a second intrusion analysis unit for detecting and mitigating a second intrusion that illegally intrudes into the signature server and extracts a private key,
The second intrusion analysis unit,
If the block chain analysis unit monitors all mempool transactions that are not used in the user management server, and the monitoring result, the block hash value (Txid) of the mempool and the block hash value of the block chain analysis unit do not match, the second intrusion occurs. A second intrusion detection module to detect; And
A second intrusion mitigation module for mitigating illegal second intrusion by adding a lock time parameter to the private key generated by the signature server and stopping the use of bitcoin during the lock time.
Bitcoin exchange, characterized in that including.
상기 비트코인 네트워크를 공격하는 제3 침입을 탐지 및 완화하는 제3 침입 분석부를 더 포함하고,
상기 제3 침입 분석부는,
상기 블록체인 분석부에 의한 블록 타임의 분석 결과에 따라 블록 타임의 평균 시간을 설정하고, 평균 블록 타임 동안 비트코인 교환기에서 예금 및 확인되지 아니한 입금을 확인하여 제3 침입을 탐지하는 제3 침입 탐지 모듈; 및
상기 사용자 관리서버에서 예금 및 확인되지 아니한 입금을 확인된 경우 공격으로 인한 모든 거래를 되돌리고 서명 서버의 비트코인 철수를 방지하기 위한 서명을 중지하여 제3 침입을 완화하는 제3 침입 완화 모듈을
포함하는 것을 특징으로 하는 비트코인 교환기.The method of claim 4, wherein the intrusion management server,
Further comprising a third intrusion analysis unit for detecting and mitigating a third intrusion attacking the bitcoin network,
The third intrusion analysis unit,
The third intrusion detection detects a third intrusion by setting the average block time according to the analysis result of the block time by the block chain analysis unit, and checking deposits and unconfirmed deposits at the bitcoin exchange during the average block time. module; And
If the user management server confirms deposits and unconfirmed deposits, a third intrusion mitigation module is provided to mitigate third intrusion by reverting all transactions caused by the attack and stopping signing to prevent the withdrawal of bitcoins from the signature server.
Bitcoin exchange, characterized in that including.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020180131041A KR102198266B1 (en) | 2018-10-30 | 2018-10-30 | Bitcoin exchange with blockchain analysis device for intrusion detection |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020180131041A KR102198266B1 (en) | 2018-10-30 | 2018-10-30 | Bitcoin exchange with blockchain analysis device for intrusion detection |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20200048691A KR20200048691A (en) | 2020-05-08 |
KR102198266B1 true KR102198266B1 (en) | 2021-01-04 |
Family
ID=70678200
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020180131041A KR102198266B1 (en) | 2018-10-30 | 2018-10-30 | Bitcoin exchange with blockchain analysis device for intrusion detection |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR102198266B1 (en) |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101751792B1 (en) * | 2015-12-16 | 2017-06-29 | 한국정보통신주식회사 | Method for processing payment using ic card and payment terminal thereof |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20130085473A (en) * | 2011-12-05 | 2013-07-30 | 인텔렉추얼디스커버리 주식회사 | Encryption system for intrusion detection system of cloud computing service |
KR20150077538A (en) | 2013-12-27 | 2015-07-08 | 박정현 | Crypto Currency deal system and Method thereof |
KR101857223B1 (en) | 2017-11-13 | 2018-05-11 | 주식회사 온더 | Method and system for user identification based block chain token |
-
2018
- 2018-10-30 KR KR1020180131041A patent/KR102198266B1/en active IP Right Grant
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101751792B1 (en) * | 2015-12-16 | 2017-06-29 | 한국정보통신주식회사 | Method for processing payment using ic card and payment terminal thereof |
Also Published As
Publication number | Publication date |
---|---|
KR20200048691A (en) | 2020-05-08 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20220277307A1 (en) | Systems and methods for personal identification and verification | |
US10346814B2 (en) | System and method for executing financial transactions | |
US9818092B2 (en) | System and method for executing financial transactions | |
US20200043001A1 (en) | Pet Food Traceability System and Method Therefor | |
CN109523362B (en) | Second-hand house transaction system and method based on 5G architecture and block chain | |
US20210357915A1 (en) | Methods, devices, and systems for secure payments | |
CN108876332A (en) | A kind of block chain method for secure transactions and device based on biological characteristic label certification | |
US20040059952A1 (en) | Authentication system | |
JP3228339U (en) | Personal authentication and verification system and method | |
WO2019170814A1 (en) | Data transaction system and method | |
Patel et al. | DAuth: A decentralized web authentication system using Ethereum based blockchain | |
JP2021531600A (en) | How to facilitate transactions between users | |
Kim et al. | Intrusion detection and mitigation system using blockchain analysis for bitcoin exchange | |
CN112232828A (en) | Power grid data transaction method and system | |
US20160239832A1 (en) | Payment system | |
KR20190099365A (en) | Data management and item transaction of Mobile game users based on Blockchain | |
KR20190095843A (en) | Crypto-Currency Exchanges Managing System and Method of the same | |
KR102069849B1 (en) | Electronic wallet system for secure cryptocurrency transaction and the method thereof | |
KR102376783B1 (en) | The blockchain-based transaction history confirmation system | |
Suliyanti et al. | Evaluation of hash rate-based double-spending based on proof-of-work blockchain | |
KR102198266B1 (en) | Bitcoin exchange with blockchain analysis device for intrusion detection | |
CN111402037A (en) | User data processing method and device | |
Sanjay et al. | Security and Privacy Trade-Off in Cryptocurrencies: An Implementation of Blockchain Technology | |
KR20190115555A (en) | Method for Providing Cryptocurrency Trade based on Certification of Connection Status between Wallet and User by using Smart Contract based on Blockchain | |
Panduro-Ramirez et al. | Blockchain Implementation in Financial Sector and Cyber Security System |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
E902 | Notification of reason for refusal | ||
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant |