
2017년 12월 14일, BitPay는 결제 프로토콜을 시행하기 위한 첫 번째 단계를 발표했습니다: 모든 BitPay 카드 주문은 BitPay의 자체 지갑 및 몇 가지 다른 지갑과 같은 결제 프로토콜 호환 지갑에서 결제를 요구합니다. 이 발표는 2017년 11월에 BitPay가 BitPay 송장이 곧 비트코인 결제 프로토콜과 호환되는 지갑에서 결제를 요구할 것이라고 처음 발표한 이후에 이루어졌습니다.
BitPay의 조치는 비트코인 결제 프로토콜을 지원하지 않는 일부 지갑 개발자들에 의해 저항에 직면했습니다. 일부는 BitPay가 결제 처리 분야에서의 선도적 위치를 남용하고 사용자 보안을 위험에 빠뜨리고 있다고 제안하고 있습니다.
“우리는 BitPay가 시장 점유율의 지배적 위치를 공격적으로 이용하여 지갑 제공업체를 자신의 비즈니스 계획을 지원하도록 강요하거나 사용자를 프라이버시와 비트코인의 대체 가능성을 저하시키는 시스템으로 강요하는 것을 전혀 지지하지 않습니다,”라고 비트코인 지갑 Samourai는 2018년 1월 2일 블로그 게시물에서 밝혔습니다.
비트코인 결제 프로토콜(BIP70)은 2013년 Gavin Andresen과 Mike Hearn에 의해 제안되었으며, 상인과 고객 간의 통신 프로토콜을 설명합니다. “이는 더 나은 고객 경험과 결제 과정에서의 중간자 공격에 대한 보안을 제공합니다.” 결제 프로토콜의 세부 사항에 대한 자세한 설명은 Mike Hearn이 Q/A 형식으로 작성한 것이 비트코인 포럼에서 제공됩니다.
BitPay에 따르면, 결제 프로토콜은 잘못된 주소로 보내지거나 비트코인 네트워크에서 빠른 처리를 위해 너무 낮은 거래 수수료로 결제되는 등의 사용자 오류를 줄일 것입니다.
“우리는 매달 수천 건의 고객 지원 요청에 응답하며, 이러한 문제가 BitPay 상인과 고객에게 어떻게 영향을 미치는지 직접 보고 있습니다,”라고 BitPay는 언급하며, 두 개의 지갑이 모두 결제 프로토콜을 “구사”할 경우, 올바른 비트코인 수신 주소와 올바른 송금 금액이 SSL 보안 연결을 통해 자동으로 잠금된다고 덧붙였습니다. 암호화된 비트코인 주소 대신, 이 프로토콜은 사람이 읽을 수 있는 식별자를 사용하며, 이는 비트코인 주소에 매핑됩니다.
“우리의 다음 단계는 모든 BitPay 카드 적재에 대해 결제 프로토콜 결제를 요구하는 것입니다,”라고 BitPay는 밝혔습니다. “그 후, 우리는 모든 BitPay 송장에 대해 결제 프로토콜을 요구할 것입니다… 우리는 비트코인 생태계의 다른 지갑 제공업체와 협력하여 비트코인 결제 프로토콜의 채택을 촉진하고 있습니다. 우리는 받은 반응에 고무되어 있습니다. 결제 프로토콜의 광범위한 채택은 즉시 비트코인 결제 경험을 개선할 것입니다.”
BitPay 웹사이트에 제공된 목록에 따르면, Copay, Mycelium 및 Electrum 지갑과 비트코인 코어는 결제 프로토콜 결제를 지원합니다. “이 진정한 비트코인 지갑들은 모두 이미 결제 프로토콜을 ‘구사’합니다,”라고 BitPay는 밝혔습니다. “결제 프로토콜을 지원하지 않는 지갑이나 서비스를 사용하여 BitPay 송장을 결제하려는 경우, 결제 프로토콜을 지원할 수 있는 지갑이나 서비스로 비트코인을 이동해야 합니다. 거래 지연을 피하기 위해 진정한 비트코인 지갑을 사용하는 것을 강력히 권장하지만, 결제 프로토콜과 호환되는 모든 서비스를 사용할 수 있습니다.”
그러나 이 목록은 구식입니다. Bitcoin Magazine은 여러 다른 지갑에 연락하여 그들의 상태를 확인했습니다.
“현재 출시된 Airbitz 앱은 BIP70를 지원하며, 2015년부터 그랬습니다,”라고 AirBitz의 공동 창립자이자 CEO인 Paul Puey가 Bitcoin Magazine에 말했습니다. “Edge Wallet(현재 베타 버전)은 향후 생산 버전에서 BIP70를 지원할 것입니다.” BitPay는 현재 Airbitz가 BIP70를 지원하지 않는다고 나열하고 있습니다.
Bread 또한 2015년부터 BIP70를 지원해왔으며, 이는 BitPay의 목록에서 제공된 정보와는 다릅니다.
보안 우려
이 정책 변화에 대한 가장 강력한 반대자 중 하나는 Samourai Wallet입니다.
“우리는 여기서 매우 분명해야 합니다,”라고 Samourai는 최근 블로그 게시물에서 단호하게 말했습니다. “Samourai Wallet은 우리의 제품에서 BIP70를 지원하지 않을 것이므로, 우리의 지갑 사용자는 BitPay 송장으로 생성된 QR 코드에 비트코인을 보낼 수 없습니다. 이는 유효한 비트코인 주소를 제공하지 않기 때문입니다.”
Samourai에 따르면, BIP70는 “대부분의 지갑 및 서비스 제공업체에 의해 크게 채택되지 않고” 있으며, 이는 알려진 취약점이 있는 레거시 공개 키 인프라 기능의 지원을 요구하는 등 많은 보안 및 프라이버시 우려 때문입니다.
실제로, Meltdown 및 Spectre에 대한 최근의 폭로는 일부 비평가들 사이에서 추가적인 보안 우려를 불러일으켰습니다.
“Meltdown/Spectre는 메모리에서 키가 도난당할 위험을 크게 증가시킵니다,”라고 개발자이자 MyRig 엔지니어인 James Hilliard가 Bitcoin Magazine에 말했습니다. “이는 프로세스가 다른 프로세스의 메모리를 염탐할 수 있는 사이드 채널 공격이기 때문입니다(지갑 비공개 키는 일반적으로 거래에 서명하기 위해 어느 시점에서 메모리에 들어가야 합니다).”
“우리는 일부 우려를 공유하지만 Samourai Wallet만큼 강하게 느끼지는 않습니다,”라고 Puey가 말했습니다. “웹사이트에서 결제 QR 코드를 획득하는 경우, 이미 공개 주소가 소유자로부터 온 것인지 알기 위해 SSL 공개 키 인프라를 신뢰하고 있습니다. BIP70를 추가하는 것은 상황을 더 악화시키지 않습니다. 그러나 물리적으로 서로 가까운 두 지갑 간의 P2P 거래를 하는 경우, 공개 주소를 얻기 위해 https 서버 쿼리에 의존할 필요가 없으며, 그 과정은 불필요한 위험을 초래합니다.”
Coinbase 및 Jaxx를 포함한 많은 비트코인 지갑은 현재 BIP70를 지원하지 않습니다. Airbitz 및 곧 출시될 Edge와 같은 다른 지갑은 BIP70를 지원하지만 BitPay보다 덜 열정적입니다.
Addison Cameron-Huff는 Jaxx 지갑을 개발하는 Decentral의 사장입니다. BIP70가 비트코인에 대해 보안 웹 브라우징(HTTPS)이 인터넷에 한 것과 같다고 BitPay가 언급한 것에 대해 그는 Bitcoin Magazine에 “BitPay가 BIP70의 사례를 과장하고 있다고 생각합니다. BIP를 ‘표준’이라고 부르는 것도 다소 오해의 소지가 있습니다,”라고 말하며 “BIP” 약어는 “비트코인 개선 제안”을 의미하며 “비트코인 개선 표준”을 의미하지 않는다고 덧붙였습니다.
“주소를 표시하지 않는 것은 사람들이 비트코인을 사용하는 방식에 큰 변화를 가져오며, 2018년 1월 현재, 생태계 전체에서 이 변화를 강요하는 것은 시기상조라고 생각하지만 BitPay는 오직 BitPay를 사용하고자 하는 사람들에게만 이를 고집하고 있습니다,”라고 Cameron-Huff는 계속했습니다. “앞으로 몇 달 동안 이 변화가 그들의 사용자 기반에 어떤 영향을 미치는지, 대체 결제 처리 회사들이 시장 점유율을 얻는지(또는 그렇지 않은지) 지켜보겠습니다. 궁극적으로, 암호화폐 세계는 최고의 제품과 제안이 시장에서 승리하는 경향이 있으며, 시간이 지나야 이것이 BitPay에 대한 좋은 결정이었는지, 그리고 더 중요하게는 비트코인 커뮤니티에 대한 좋은 결정이었는지 알 수 있을 것입니다.”
“우리는 BitPay와 여러 차례 대화를 나누었고, BIP70 프로토콜에 대한 우리의 우려를 표현했습니다. 여기에는 실제로 문제를 해결하지 않는 불필요한 복잡성이 포함됩니다,”라고 Puey가 말했습니다. “우리는 BitPay가 원하는 동일한 목표를 달성할 수 있는 BIP21 사양에 대한 확장이 구현될 수 있었던 것으로 생각합니다. 추가적인 복잡성, 중앙집중화 또는 SSL 보안 문제 없이 말입니다.”
“우리는 BIP70를 계속 지원할 의향이 있지만, 제공업체가 이를 사용하거나 결제를 받기 위해 요구하는 것을 권장하지 않으며, 대신 BIP21에 대한 확장을 추구해야 한다고 결론지었습니다,”라고 Puey가 말했습니다. “우리는 BitPay의 BIP70 지원과 관련하여 여러 가지 문제를 경험했으며, 제공된 결제 URL을 통해 결제 정보를 제공할 수 없는 그들의 서버로 인해 지갑이 가능하다면 BIP21 스타일 결제로 되돌아가는 경우가 발생했습니다.”
미래 채택
Bread 지갑의 CMO인 Aaron Lasher는 Bitcoin Magazine에 Bread가 이미 BIP70를 지원하고 있지만, 회사는 “향후 출시에서 BitPay와 함께 작동하도록 만들 계획”이라고 말했습니다. 그는 지갑의 핵심 기능을 유지하고 높은 수준의 프라이버시를 보장하는 것이 중요하다고 강조했습니다.
“Bread는 소비자 중심의 지갑이므로, 사용자 경험을 개선하거나 단순화하는 모든 것을 표면적으로 지원합니다. 단, 사용자 대신 충분한 프라이버시와 재정적 통제를 유지할 수 있는 경우에 한합니다.”
유사하게, Cameron-Huff는 Jaxx가 현재 BIP70를 지원하지 않지만, BIP70가 실제로 널리 채택된 표준이 된다면 Jaxx는 사용자에게 이를 활성화할 것이라고 설명했습니다.
“우리는 BitPay 및 다른 대규모 블록체인 생태계 조직과 함께 이 변화를 주의 깊게 지켜볼 것입니다,”라고 Cameron-Huff는 결론지었습니다. “우리는 항상 Jaxx를 개선하려고 하지만, 사용자에게 변화를 강요하거나 600,000명의 사용자에게 부정적인 경험을 초래할 수 있는 성급한 변화를 구현하는 것과 균형을 맞춰야 합니다.”
하드웨어 지갑 Ledger의 한 대표는 Bitcoin Magazine에 “우리는 현재 하드웨어 지갑에 BIP70를 직접 지원할 계획이 없습니다. 이 프로토콜의 복잡성을 고려할 때, 하드웨어 지갑에 대한 종단 간 지원을 제공할 수 있는 경우에만 의미가 있을 것입니다.”라고 말했습니다.
Ledger는 나중에 번역 게이트웨이를 통해 이를 지원할 수 있지만, 사용자에게 추가 위험을 인지시키는 것이 중요하다고 덧붙였습니다. Airbitz/Edge와 마찬가지로, 이 회사는 BIP21을 선호한다고 밝혔습니다.
“보안 측면에서, 우리는 BIP70가 현재 좋은 상태가 아니라고 믿습니다( ECDSA 인증서를 지원하지 않으며, 사용자가 가능한 악성 인증서를 인증해야 하는 표준 PKI 문제를 중복하고, 특정 출력으로 사용자에게 공개 인증 쿠키를 강요할 수 있습니다) 그리고 모든 결제 제공업체가 상호 운용성을 위해 정기적인 BIP21 URL을 계속 제공할 수 있기를 바랍니다.”
업데이트 (2016년 1월 6일): GreenAddress 지갑은 금요일 게시물에 포함하기 위한 논평 요청에 제때 응답하지 않았습니다. 이후 한 대표가 이 정보를 이메일로 보내왔습니다:
“우리는 수년 동안 BIP70를 지원해왔습니다. 우리는 다른 지갑 개발자(하드웨어 지갑 포함)가 표현한 많은 우려를 공유합니다.”