모네로 지갑 추적 - monelo jigab chujeog

왜 모네로(Monero)는 추적이 어려울까?

2020년 4월10일

비트코인(Bitcoin)을 어렵게들 생각하시는데, 사실 비트코인을 사용하는 것은 인터넷 뱅킹에서 계좌 이체 하는 것과 상당히 유사합니다.

우리가 인터넷 뱅킹을 하려면 제일 먼제 계좌를 개설해야 합니다. 비트코인도 마찬가지 입니다. 비트코인에서는 이 계좌번호를 '전자지갑 주소'라고 하는데, 이게 좀 특이하게 생겼습니다.

(예) 전자지갑 주소 : 3KZ526NxCVXbKwwP66RgM3pte6zW4gY1tD

그런데 비트코인 계좌 개설시 인터넷 뱅킹과는 약간 다른 부분이 있습니다. 바로 실명확인을 안한다는 것입니다. 이런 이유로 비트코인에서는 '익명성'이 보장됩니다. (이렇게 말씀드리면 "그런데 조주빈은 왜 잡혔지?"라며 의문을 제기하시는 분들도 계실 것입니다. 익명성을 보장하는 비트코인이 돈세탁, 탈세 등 각종 범죄에 악용되면서 미국을 비롯한 여러나라에서는 비트코인도 인터넷뱅킹에서와 마찬가지로 실명확인을 할 것을 요구하고 있습니다. 우리나라도 '금융거래정보의 보고 및 이용 등에 관한 법률(특금법) 개정안'을 통해 '실명확인 입출금계좌 사용'을 의무화하고 있습니다.)

이제 계좌 개설후 암호화폐 거래소에서 100비트코인을 구매해 내 전자지갑(계좌)에 넣어 두었다고 가정해 보겠습니다. (또는 '채굴(Mining)'을 통해 비트코인을 얻을 수도 있습니다.)

상점에 가서 물건을 사고 주인 아저씨게 얼마냐고 물었더니, 3비트코인이라며 주인 아저씨의 비트코인 전자지갑 주소를 알려주십니다. 위의 예제에서처럼 전자지갑 주소는 보통 긴 문장 형태인데, 암호화폐 거래를 좀 더 쉽게 할 수 있도록 QR코드 형태로 표시해 두기도 합니다. 이 경우 스마트폰에서 비트코인 앱(App)을 구동시킨후 스캔하면 자동으로 전자지갑 주소가 입력되게 됩니다.

모네로 지갑 추적 - monelo jigab chujeog

스마트폰에서 비트코인 앱을 켜고 내 전자지갑 주소와 가게 주인 아저씨의 전자지갑 주소를 입력한 후, 3비트코인을 이체금액으로 입력합니다.

이제 거의 다 됐습니다.

오프라인 은행 거래에서 계좌 이체시 이체용지에 계좌번호, 금액 등을 쓰고 최종적으로 '서명 날인'한 후 은행 창구에 제출합니다. 마찬가지로 인터넷 뱅킹에서도 마지막에 '공인인증서'를 이용해 전자서명을 합니다. 이와 비슷하게 비트코인도 최종 단계에서 '전자서명'을 해야 합니다. (단, 비트코인의 경우 공인인증서와는 다르게 전자서명 키(Key) 발급시 실명확인을 하지 않습니다.)

여기까지 하면 내 전자지갑에 있던 100비트코인 중 3비트코인이 상점 주인 아저씨의 전자지갑 주소로 이체되고, 내 전자지갑에는 97 비트코인이 남게 됩니다.

끝으로 보통의 인터넷 뱅킹이라면 이렇게 계좌 이체한 내역들이 은행의 중앙서버에 차곡 차곡 저장되겠으나, 비트코인의 경우 '블록체인(Blockchain)'이라고 하는 공개 분산 데이터베이스에 저장되게 됩니다.

[참고] 블록체인의 기술적 원리를 이해하시고 싶으신 분은 다음을 읽어 보시기 바랍니다. "초등학생도 이해하는 블록체인" https://amhoin.blog.me/221291896225

어떻습니까? 비트코인을 사용하는 것이나 인터넷 뱅킹에서 계좌 이체를 하는 것이나 상당히 비슷하지 않은지요?

앞서도 말씀드렸듯 비트코인을 이용하면 익명성이 보장됩니다. 그런데 말입니다. 대포통장도 하나의 대포통장을 여러번 반복해서 사용할 경우, 사용 패턴이 들어나면서 꼬리가 밟히게 됩니다. 비트코인도 마찬가지입니다. 실제로 2017년 4월에 발표된 "Virtual Currencies and their Relevance to Digital Forensics"이라는 논문에 따르면, 약 40%의 비트코인 사용자들은 추적이 가능했다고 합니다.

이렇듯 비트코인의 경우 실명확인을 하지 않은 경우에도 어느 정도 추적이 가능합니다. 물론 암호화폐 돈세탁 서비스를 제공하는 믹서('Mixer' 또는 'Tumbler'라고도 함) 사이트를 이용할 수도 있겠으나, 이 경우 사이트 운영자를 무한 신뢰해야 한다는 문제와 더불어 수사기관이 해당 사이트를 압수수색하는 경우 세탁한 암호화폐들을 추적하는 것이 가능해 집니다.

모네로 지갑 추적 - monelo jigab chujeog

(그림) 유명 믹서 사이트 중 하나인 BitcoinMixer

그래서 이러한 믹서의 도움 없이도 자체적으로 추적을 어렵게 하는 암호화폐 일명, '다크 코인(Dark Coin)'들이 등장하게 됩니다. (좋게 말하면 이런 암호화폐들을 '프라이버시 코인(Privacy Coin)'이라고도 합니다.) 이러한 다크 코인들 중에서 가장 유명한 것이 바로 '모네로(Monero)' 입니다. 모네로에는 추적을 어렵게 하기 위해 다음 3가지의 안전장치가 내장돼 있습니다.

모네로 지갑 추적 - monelo jigab chujeog

(그림) 모네로의 추적을 어렵게 하는 안전장치들

첫번째는 '링서명(Ring Signatures)' 입니다. 링서명은 실제 서명자가 누군지를 감춤으로써 송금하는 사람이 누군지를 식별하기 어렵게 만듭니다. 링서명에 대한 내용은 제 이전 포스팅을 참고하시면 감사하겠습니다. (참고로 모네로에서는 링서명을 생성하기 위한 키를 'Private Spend Key'라고 합니다.)

[참고] "무조건적인 프라이버시 보호(익명성)는 과연 옳은 것인가? 해결책은??" https://amhoin.blog.me/221873567611

두번째는 'RingCT(Ring Confidential Transactions)' 입니다. RIngCT는 송금하는 액수를 감춰주는 역할을 하는데, 이를 위해 1992년에 개발된 'Pedersen Commitments'라는 기술을 활용합니다. RingCT를 이용하면 실제 송금한 금액이 아닌 암호화 된 금액이 블록체인상에 기록되게 됩니다. 예를 들면, 실제로는 3비트코인을 이체했지만, 블록체인상에는 이 '3'에다 송금한 사람과 수신한 사람 둘만이 알고 있는 비밀 난수를 곱한 값(예를 들면 3*17 = 51, 이때 3은 실제 이체한 금액이고 17은 비밀 난수임)을 기록하는 식입니다. 이렇게 하면 블록체인을 아무리 뒤져봐도 난수값(17)을 알지 못하는 한 정확한 이체 금액을 파악할 수 없게 됩니다. (좀 더 전문적인 얘기를 덧붙이면 Pedersen Commitments는 'Additive 성질'을 갖는게 특징입니다. 그래서 암호화 되더라도 입급액의 총합과 출금액의 총합이 같아지는 특성이 있습니다. 마치 1+2 = 3의 양변에 난수 17을 곱해도 (1*17) + (2*17) = (3*17)이 되는 것처럼 말입니다.)

모네로 지갑 추적 - monelo jigab chujeog

마지막 세번째는 '스텔스 주소(Stealth Address)' 또는 '일회용 주소(One-Time Address)'라는 기술입니다. 스텔스 주소는 수신하는 사람의 계좌번호, 즉 수신자의 전자지갑 주소를 감춰주는 기술입니다. 원리는 단순합니다. 돈을 송금할 계좌번호와 이 계좌의 비밀번호(모네로에서는 이를 'Private View Key'라고 함)를 송금자가 무작위로 생성한 후, 무작위로 생성된 계좌번호로 돈을 이체하고, 해당 계좌의 비밀번호는 암호화해 돈을 받을 사람에게 전달합니다. 그러면 훗날 이 수신자는 비밀번호를 해독해 계좌에서 돈을 인출할 수 있겠지요?

이외에 'KOVRI'라고 하는 I2P 라우터 기술이 있으나 이는 생략토록 하겠습니다. I2P 등의 기술이 왜 탄생하게 되었는지 궁금하신 분들은 다음 포스팅을 참조하시면 될 듯 합니다.

[참고] 보안 기술의 양면성 - 첩보 기술이 프라이버시 보호 기술로, 그것이 다시 범죄 도구로 사용되는 아이러니 https://amhoin.blog.me/221888098640

이상으로 최근 n번방 사건으로 인해 화제가 된 암호화폐, '모네로'에 대해 알아봤습니다. 지금까지 보셨듯이 모네로는 별도의 믹서 사이트를 이용하지 않고도 암호화폐 자체적으로 계좌번호, 송금액 등을 감추는 기능을 내장하고 있으며, 이로 인해 이용자들의 사용 패턴을 찾기가 비트코인보다 더 어렵습니다.

하지만 노파심에 말씀드리면 이러한 모네로 또한 추적이 절대 불가능한 기술은 아니랍니다! 관련 연구들도 꾸준히 발표되고 있구요.

그럼 좋은 주말 되십시요!!

PS1. [참고] 모네로 (Monero) 전자지갑 주소의 구성

모네로 지갑 추적 - monelo jigab chujeog

PS2. 조회수 6만을 기록했던 "초등학생도 이해하는 블록체인 (Kid Blockchain)"에 이어 두번째로 제 글이 네이버 메인화면(테크)에 올라갔네요! 감사합니다!!

모네로 지갑 추적 - monelo jigab chujeog

(그림) 네이버 메인화면(테크) 갈무리 (iPad)

모네로 지갑 추적 - monelo jigab chujeog

(그림) 네이버 메인화면(테크) 갈무리 (PC)