짧은 답변: 비트코인 주소는 비트코인 통화를 “보유”하는 고유한 번호입니다. 이 주소를 사용하여 비트코인을 받고 보내는 데 사용합니다.
중간 크기의 답변: 비트코인 주소는 해당 주소의 소유권을 검증할 수 있게 해주는 공개-비공개 키 쌍의 공개 키 절반입니다. 이게 무슨 뜻인지 궁금하신가요??
비트코인 주소는 키 생성 프로세스의 일환으로 생성되며, 이 과정에서 키 쌍이 생성됩니다. 이들은 서로 짝을 이루며, 하나는 공개 키이고 다른 하나는 비공개 키입니다. 비트코인 주소에 서명할 때, 공개 키와 비공개 키를 알고리즘을 통해 실행하여 이 키들이 함께 속하는지 확인합니다. 일반적으로 서명은 메시지의 맥락에서 이야기됩니다. 누군가가 서명된 메시지를 보내면, 그 메시지가 진짜 사람에게서 온 것인지 확인할 수 있습니다. 메시지를 확인할 수 있는 이유는 비공개 키로 서명되었고, 이를 공개 키와 일치시킬 수 있기 때문입니다. 비트코인을 보낼 때 서명된 메시지는 비트코인 거래의 일부이며, 메시지를 명시적으로 볼 수는 없고 거래의 일부일 뿐입니다. 이를 통해 주소의 소유권을 검증할 수 있습니다. 거래(가치의 이전)는 소유자의 비공개 키로 서명되었으며, 이를 공개 키를 사용하여 유효성을 확인합니다.
조금 다른 이야기 – 공개 키 암호화는 1970년대 중반에 개발된 정말 멋진 기술입니다. 공개-비공개 키 쌍의 놀라운 점은 모든 사람이 공개 키를 알 수 있고, 비공개 키의 소유자는 해당 공개 키로 전송된 메시지의 소유자임을 증명할 수 있다는 것입니다. 비트코인의 보안 기반이 되는 PKI(공개 키 인프라)에 대한 자세한 정보는 마이크 헌(Mike Hearn, 비트코인 핵심 개발자)의 “왜 당신은 PKI가 형편없다고 생각하지만, 더 나은 방법을 찾을 수 없는가”라는 글에서 확인할 수 있습니다.
긴 이야기: 키 쌍을 생성하고 사용하는 일련의 과정을 살펴보겠습니다. 먼저 키 쌍을 생성해야 하며, 이로 인해 공개 키와 비공개 키 두 개가 생성됩니다. 비트코인 주소는 실제로 공개 키의 한 형태입니다(공개 키의 해시입니다). 비트코인 프로토콜 사양에서: https://en.bitcoin.it/wiki/Protocol_specification#Signatures
비트코인 주소는 실제로 ECDSA 공개 키의 해시입니다.
누구나 공개 키를 알 수 있고 실제로 비트코인 주소는 공개 키이므로 비트코인 주소를 공개하는 것은 전혀 문제가 없습니다. 이제 비트코인 주소가 생겼다면, 다음은 무엇일까요?
예를 들어, 제가 이 기사를 작성하는 대가로 돈을 받고 싶다고 가정해 보겠습니다! 비트코인 주소를 광고할 수 있으며, 여러분은 이 글을 읽고 싶어하는 마음에 저에게 비트코인을 보내고 싶어 할 것입니다. 여러분은 비트코인 지갑을 열고, 제 주소를 비트코인을 보낼 주소로 입력한 후, 보내기를 클릭하면 저는 기꺼이 비트코인을 받을 것입니다. 제가 가진 비공개 키는 공개 키(주소)와 일치하므로, 저만이 방금 받은 비트코인을 사용할 수 있는 유일한 사람입니다.
비트코인을 보내기 전에 제가 실제로 주소의 소유자인지 확인하고 싶다면, 주소와 관련된 서명된 메시지를 보내달라고 요청할 수 있습니다. 저는 메시지를 작성하고 주소에 서명할 수 있습니다. 그러면 여러분은 제가 보낸 메시지를 받아서 제 주소와 함께 지갑에 넣어 제가 주소의 “소유자”임을 증명할 수 있습니다. 비트코인 지갑은 일반적으로 이 메시지 서명 및 검증 기능을 포함합니다.
주소는 비트코인을 “보유”하는 데 사용되지만, 주소가 비트코인을 보유하거나 비트코인 주소의 “소유자”라는 개념은 잘못된 표현입니다. 주소는 공개-비공개 키 쌍의 절반이기 때문입니다. 주소를 “소유”하고 해당 주소와 관련된 코인을 제어할 수 있는 이유는 비공개 키라는 공개-비공개 키 쌍의 다른 절반을 알고 있기 때문입니다. 만약 다른 사람이 주소의 비공개 키를 알게 된다면, 그 사람은 주소에 대해 여러분과 똑같은 제어권과 “소유권”을 가지게 됩니다. 즉, 그 사람은 여러분의 비트코인을 사용할 수 있습니다. 해결책은 간단합니다. 여러분과 오직 여러분만이 비트코인 주소의 공개 키를 제어하도록 하십시오. 실용적인 관점에서 이는 쉽게 추측할 수 없는 비트코인 지갑 비밀번호를 만들고/또는 안전한 장소에 보관하는 것을 의미합니다. 비트코인 재단 사이트에서 훌륭한 보안 관행이 설명되어 있습니다: https://bitcoin.org/en/secure-your-wallet.
비트코인 주소는 비트코인을 사용하는 데 있어 중요한 요소 중 하나이므로, 주소를 가지고 놀아보는 것은 비트코인 주소가 무엇인지 더 잘 이해하는 데 도움이 됩니다. 특히 좋은 웹사이트는 bitaddress.org입니다. 새로운 비트코인 주소를 생성한 후 다양한 옵션을 가지고 놀아보고 생성된 공개 키와 비공개 키를 관찰해 보세요. 단, 비공식 키를 표시하면서 실제 비트코인을 주소에 넣지 마세요. 비공개 키는 비공식적으로 유지하세요!
항상 여기와 BitcoinInPlainEnglish에서 제 비트코인 생각을 따라가세요: http://www.bitcoininplainenglish.com