비트코인의 라이트닝 네트워크 개발자, 해당 네트워크의 취약성 밝혀

비트코인(BTC)의 라이트닝 네트워크(LN) 개발자 러스티 러셀(Rusty Russel)이 지난 8월에 발견된 해당 네트워크의 취약점을 전면 공개하면서 해결책도 함께 제시했다.

그는 이러한 취약성이 펀딩 채널을 열 때 나타났다고 지적했다. 설명된 프로세스는 임의의 거래가 펀드 제공자가 금액과 실제 암호화 공개키(scriptPubKey)로 약속한 거래인지 여부를 확인할 필요가 없다.

암호화 공개키는 수신자가 비트코인을 소비하기 위해서는 특정 조건을 준수해야 하는 출력 거래 스크립트이다. 해당 파일의 내용은 다음과 같다.

“임의의 채널을 수용하는 라이트닝 노드는 펀딩 거래 출력이 제안된 채널을 실제로 여는 지 점검해야 한다. 그렇지 않으면 공격자가 채널을 열었다고 주장하더라도 상대방에게 지불하지 않거나 전체 금액을 지불하지 않을 수도 있다. 일단 해당 거래가 최소 깊이에 도달하면 그 채널의 자금을 쓸 수 있게 된다. 피해자는 채널을 닫으려 할 경우에만 이를 알아차리게 되며, 갖고 있는 약정 거래나 상호 폐쇄형 거래 중 어느 것도 유효하지 않게 된다.”

가능한 해결책

러스티 러셀은 앞서 언급한 문제에 대한 해결책도 제시했다. 일단 펀딩 거래가 확인되면, 양 당사자는 "funding_created'에 기술된 아웃포인트가 "open_channel"에 기술된 금액의 펀딩거래 산출물인지 확인해야 한다."

이 파일은 또한 c-라이트닝 버전 0.7.1 이상이 해당 프로세스를 올바르게 수행하므로 사용자는 구 버전의 라이트닝 노드를 업그레이드 할 것을 촉구하고 있다.

지난 9월 10일, 라이트닝 네트워크 기반의 스타트업인 라이트닝 랩스(Lightning Labs)와 에이싱크(ACINQ)의 CTO인 올라오루와 오순토쿤(Olaoluwa Osuntokun)도 이러한 취약성이 악용되고 있는 사례를 발견했다고 주장했다. 그는 사용자가 자금손실 위험을 피하기 위해 라이트닝 네트워크 버전을 업그레이드 할 것을 강력히 권장했다. 그에 따르면, 영향 받는 버전으로는 LND 노드 버전 0.7 이하, c-라이트닝 노드 버전 0.7 이하, 그리고 eclair 노드 버전 0.3 이하가 포함된다고 한다.

지난 9월 26일, 비트코인의 라이트닝 네트워크 노드 수는 처음으로 1만 개에 도달했다.

코인텔레그래프가 앞서 보도한 바와 같이, 안드레아스 안토노풀로스(Andreas Antonopoulos)는 르네 픽하트(René Pickhardt) 및 라이트닝 랩스의 CTO인 올라오루와 오순토쿤과 공동 저술한 저서인 "라이트닝 네트워크의 마스터(Mastering Lightning Network)"를 새로 발표했다.