오늘날 블록체인 기술이 디지털 자산을 비롯한 여러 산업군의 중요한 데이터를 저장하고 관리하기 위해 사용되면서 블록체인을 대상으로 하는 공격들이 증가하고 있다. 특히 분산 서비스 거부 공격(Distributed Denial of Service, DDoS)으로 블록체인의 가용성을 저하시키거나 비정상 및 악의적 거래를 시도하는 공격이 증가하고 있으며 그 피해 또한 커지고 있다. 따라서 블록체인에 시도되는 공격을 빠르게 탐지하여 대응함으로써 블록체인 네트워크의 피해를 줄일 수 있는 방법이 필요하다.
블록체인에 대한 DDoS 공격은 공격자가 많은 양의 트래픽을 공격 대상의 블록체인으로 보내서 해당 블록체인의 네트워크에 과부하를 가하여 정상적으로 작동하지 못하게 한다. 이러한 공격을 빠르게 인지하는 방법 중 하나는 블록체인 네트워크 상태를 지속적으로 살펴보는 것이다. 즉, 블록체인 네트워크 상황을 모니터링하여 현재 상태를 파악하며 지켜보는 방법이다.
블록체인 네트워크 상태를 확인하는 것을 블록체인 시각화 시스템을 통해서 진행하게 된다. 블록체인 시각화는 블록체인 데이터와 처리과정에 대한 자료를 시각화하여 나타내는데, 이를 통해 사용자는 전반적인 블록체인 시스템을 이해할 수 있다. 이러한 시각화 시스템을 통해서 관리자 혹은 사용자가 의미 있는 데이터를 직관적으로 이해할 수 있으며 한정된 시간과 비용 내에서 효율적으로 네트워크를 분석할 수 있는 방법인 것이다.
그러나 현존하는 블록체인 시각화 시스템은 주로 과거와 현재의 데이터 상태를 표시하는 것에 초점을 맞추기 때문에 공격이 발생하는 상황에서는 빠르게 대처하기에는 한계가 있다. 따라서 사용자가 블록체인 네트워크의 위험 상황을 빠르게 인식하여 공격에 대응할 수 있도록 하는 방법이 필요하다. 본 논문에서는 블록체인 네트워크에 관련한 정보를 시각화할 뿐만 아니라 미래 데이터를 예측하고 실제 값과 예측 값을 비교하여 공격에 대한 판단을 내릴 수 있도록 하는 기술을 제안한다.
본 연구에서는 블록체인 네트워크 상태를 보여주는 다양한 데이터들 중에서 네트워크 성능과 밀접한 관계가 있는 트랜잭션 수를 예측한다. 블록체인에서 DDoS 공격이 발생하면 트랜잭션 수가 급격히 증가하게 되는데, 이를 기반으로 트랜잭션 수를 예측하면서 실제 값과 비교하여 공격 여부를 판단한다. 이때 통계적 기법을 활용하여 블록의 가스 사용량의 이상치를 구하고 이를 바탕으로 최종 공격 판단을 돕는다.
이더리움 네트워크에서 실험 환경을 설정했으며 시간대에 따라 트랜잭션 수의 규칙적인 변화가 있음을 가정한다. 이를 바탕으로 예측에 필요한 데이터를 상관 분석을 통해 선정하고, 선택된 데이터를 수집하여 다항 회귀(Polynomial Regression)를 적용하여 트랜잭션 수를 예측한다. 만약 공격으로 의심되는 상황이 발생하면 블록의 가스 사용량 또한 고려하여 최종적으로 공격 여부를 판단하게 된다. 이때 가스 사용량은 통계적 기법인 IQR(Interqurtile Range)로 이상치를 결정한 결과를 사용한다. 마지막으로 예측 모델에 대한 성능 평가 및 분석을 진행한다.