TP-Link의 스마트홈 기기 브랜드 Tapo(타포)를 로컬에서 제어할 수 있는 비공식 Rust/Python 라이브러리 'tapo'가 최신 v0.11.1 업데이트를 통해 TPAP(Tapo Proprietary Authentication Protocol) 프로토콜을 지원하기 시작했습니다. 이로써 사용자들은 Tapo 앱 내 'Third-Party Compatibility(서드파티 호환성)' 설정을 비활성화한 상태에서도 대부분의 Tapo 기기를 라이브러리로 제어할 수 있게 되었으며, 이는 서드파티 통합을 방해하려는 제조사의 정책에 대응하는 중요한 진전으로 평가됩니다.
이번 업데이트의 핵심은 TPAP 프로토콜 지원으로, 이는 기존 KLAP(Key-Less Authentication Protocol) 방식보다 훨씬 강화된 보안을 제공합니다. TPAP는 SPAKE2+ 인증 방식을 사용하여 로그인 정보를 캡처해도 오프라인에서 비밀번호를 추측하기 어렵고, 설령 비밀번호가 유출되더라도 과거 세션의 통신 내용을 복호화할 수 없습니다. 또한, H200/H500 카메라 허브 지원이 추가되어 연결된 카메라의 녹화 다운로드 및 센서 제어가 가능해졌으며, 플러그의 일정 및 타이머 기능을 스크립트나 인터넷 연결 없이 기기 자체에서 실행하도록 설정할 수 있게 되어 스마트홈 자동화의 유연성을 높였습니다. 라이브러리는 기기의 프로토콜을 자동으로 감지하여 기존 코드 변경 없이 새로운 인증 방식을 사용할 수 있도록 합니다.
이번 'tapo' 라이브러리의 발전은 스마트홈 기기 제조사가 서드파티 로컬 제어를 제한하려는 움직임에 맞서 사용자의 제어권을 되찾으려는 노력의 결과입니다. TP-Link는 과거 보안 취약점 수정 이후 서드파티 연결을 차단하거나, '서드파티 호환성' 설정을 기본 비활성화하는 등 로컬 제어를 어렵게 만들어왔습니다. 이러한 상황에서 'tapo' 라이브러리가 새로운 프로토콜을 리버스 엔지니어링(reverse engineering)하여 지원함으로써, 사용자는 클라우드 의존도를 줄이고 더 안전하며 유연한 스마트홈 환경을 구축할 수 있는 기반을 마련하게 되었습니다. 이는 스마트홈 생태계에서 개방성과 사용자 제어권의 중요성을 다시 한번 강조하는 사례로 볼 수 있습니다.