Каждое устройство Яндекс содержит в себе приватный ключ RSA, который используется при регистрации устройства в умном доме, а также при ряде критичных, с точки зрения Яндекса, операций. При отправке подобных запросов, в заголовке запроса указывается серийный номер устройства, заголовок подписывается RSA ключом устройства, а сервер Яндекса по серийнику находит у себя публичную часть ключа и проверяет соответствует ли ей подпись. Именно поэтому не работают станции, в которые залили чужой дамп или стерли раздел с ключами - подпись не сходится. Как можно подсунуть чужой серийник не перепаивая процессор, я, по понятным причинам, описывать не буду (хотя это довольно просто), но про то, как создаются подписи расскажу. Взаимодействие с RSA ключом происходит не напрямую, а через механизм keymaster. В документации Android про keymaster написано довольно много и сложно, но, к счастью, вникать в нее не требуется, так как Яндекс при взаимодействии с серверами умного дома использует только три опера