다른 메인넷 지갑에 실수로 코인을 넣을 수 잇는 이유가 무엇인가요
지갑이란건 결국 키를 관리하고, 그 키는 트랜잭션이나, 블록을 서명해서 본인것임을 증명하는 용도인데
제가 가끔 듣기로는 클레이튼을 거래소에 입금할때 이더리움 주소로 넣었다던지...
이러한 실수는 어떻게 발생할 수 있는건가요?
- 두 메인넷의 주소체계가 같으면 같은 키로 두 메인넷의 자산을 컨트롤 가능한것인가요? (만약에 이유가 이게 아니면 알려주세요. 제가 추측한것입니다!)
- 그리고 그렇다면 누구도 프라이빗키를 가지지 않았지만 (정상적인)주소로 암호화폐 전달이 가능한가요?
첫 번째로, 클레이튼은 이더리움을 하드포크에서 나온 블록체인입니다.
그러다 보니 두 블록체인의 주소 체계가 공교롭게도 같습니다.
따라서, 이더리움을 보내려다가 클레이튼의 주소를 잘못기입하더라도 올바른 주소로 인식됩니다. 그러므로 실수로 클레이튼 주소로 보내야 할 것을 이더리움 주소로 보내는 경우가 발생합니다. 반대의 경우 또한 발생합니다.
두 번째로, 주소 에 대한 소유권 즉 - 프라이빗 키-를 가지고 있을 때 두 블록체인에서 다 사용 할 수 있는지 여쭤보셨네요. 답변을 말씀드리면 불가능 합니다. 프라이빗 키를 통해 공개 주소를 생성하는 알고리즘 자체가 이더리움과 클레이튼은 서로 상이하게 설계되어있습니다. 따라서, 이더리움 블록체인의 A주소를 를 제어 할 수 있는 프라이빗 키로 클레이튼 블록체인의 A주소를 제어 할 수가 없습니다.
마지막으로, 주소 형식만 맞으면 해당 주소에 대한 프라이빗 키를 가지고 있지 않더라도 전송 할 수 있습니다. 예를 들면 이더리움 블록체인에서의 토큰 소각 같은 것을 생각하시면 됩니다. 보통 0x000000000000~000 으로 전송을 하지만 이 주소를 제어 할 수 있는 프라이빗 키는 아직 발견되지 않았습니다. 혹시 누군가가 이 프라이빗 키를 발견하면 그야 말로 금광을 발견한 것 과 마찬가지 일 것입니다. 왜냐하면 저 주소에 있는 모든 자산을 제어 할 수 있기 때문입니다.
감사합니다.
다른 메인넷 지갑에서 실수로 코인을 넣을 수 있는 이유는
송금과정에서 수신자의 주소를 검증하는 방법이 해당 메인넷의 주소 체계와 같다면 무조건 보내기 때문입니다.
예를 들어 이더리움 주소와 클레이튼 주소는 "0x0fe2e20716753082222b52e753854f40afddffd2" 이런 형식으로 동일한 주소체계를 사용합니다. 그렇기 때문에 일부 사람들이 비슷해보이는 주소로 인한 오입금을 하는 것 같습니다.
반면, 비트코인 주소는 1혹은 3으로 시작하는 26~35자의 주소라 이더리움 주소 체계와는 다르기 때문에 에초에 송금이 되지 않아 오입금이 불가능합니다.
두 메인넷의 주소체계가 같으면 같은 키로 두 메인넷의 자산을 컨트롤 가능한것인가요?
> 잘못된 답변을 달았습니다. 지적해주신 질문자분께 감사합니다. 댓글에 다시 답변을 달았습니다.
그리고 그렇다면 누구도 프라이빗키를 가지지 않았지만 (정상적인)주소로 암호화폐 전달이 가능한가요?
> 가능합니다. 실제로 고객에게 발급되지는 않았지만 발급여부는 송금과정에서 고려하는 요건이 아니기에 정상적인 주소라면 송금이 가능합니다.
감사합니다.