Перейти к основному содержимому
Reincubate

Building Reincubate

Запуск Reincubate Lookup

Aidan FitzpatrickОпубликовано 17 сентября 2019 г.Обновлено 13 ноября 2019 г.
Cover image for: Запуск Reincubate Lookup

Сегодня мы с радостью запускаем Reincubate Lookup. Он отвечает на вопрос, который пользователи задавали снова и снова: можно ли по серийному номеру или IMEI устройства Apple точно определить его и понять, на что оно способно?

  • При покупке iPhone или iPad на eBay пользователи могут захотеть проверить характеристики (особенно возраст и объём памяти устройства). Имея серийный номер или IMEI из объявления, они могут проверить характеристики и даже узнать, поставлялось ли устройство заблокированным. Вот пример проверки серийного номера устройства, проданного с блокировкой под оператора.
  • Разработчикам часто нужно тестировать приложения на конкретных версиях iOS. Искать подержанные устройства со старой iOS — всё равно что мыть золото, но мы можем определить версию, с которой устройство поставлялось, и отсеять часть объявлений.
  • Системные администраторы, отвечающие за парки устройств, получают из MDM-инструментов лишь ограниченные характеристики и данные об устройствах. Предприятия и организации уже используют технологию, на которой работает Reincubate Lookup, чтобы обогащать данные своей инвентаризации устройств.
Reincubate Lookup, готовый проверить серийный номер или IMEI устройства Apple

Reincubate Lookup, готовый проверить серийный номер или IMEI устройства Apple

За последний год клиенты и пользователи отправили в наш API более 13 миллионов запросов информации об устройствах, и это подтолкнуло нас копнуть глубже.

Обещание Reincubate Lookup простое: по серийному номеру Apple или IMEI он выдаёт точные, этичные и удобные данные. У каждой части этого обещания для нас особое значение, и у каждой есть своя история. Давайте разберёмся.

Удобство

В мире мобильных устройств много жаргона, поэтому мы потратили время на то, чтобы продумать, как лучше упорядочить, представить и подписать выводимую информацию. Мы не показываем несколько показателей, которые могут быть полезны некоторым техническим пользователям, но способны запутать остальных.

Ценность данных об устройствах и сложность оценки их достоверности для потребителей породили ряд сервисов, предоставляющих эти данные, и они ограждают их набором мучительных и недружелюбных механизмов, чтобы другие не могли их скачивать. Мы решили обойтись без мучительной капчи и сделали Lookup очень быстрым, без промежуточных страниц загрузки.

Как ни странно, учитывая, что речь о данных о мобильных устройствах, интерфейсы лишь немногих похожих сервисов хорошо работают на телефонах и планшетах. Мы хотели, чтобы наш сервис был удобен на мобильных устройствах и для людей из разных стран.

Надеюсь, нам хорошо удалась доступность Reincubate Lookup. Его тщательно протестировали на iPhone и iPad, и, по-нашему, он выглядит отлично. Он штатно поддерживает тёмное оформление и меняет палитру, чтобы глаза меньше уставали. Он не станет просить вас пройти капчу и доступен на 11 языках.

Тёмное оформление в Reincubate Lookup

Тёмное оформление в Reincubate Lookup

Точность

Мы многое узнали об этих данных с тех пор, как в 2017 году начали создавать API для определения устройств (а прошлым летом добавили поддержку расширенных метаданных устройств в iPhone Backup Extractor), и столкнулись с рядом сложных проблем, которые хотели решить.

Одно из первых открытий: данные, стоящие за идентификаторами Apple, если честно, довольно запутаны. У самой Apple нет единого канонического идентификатора модели и нет единообразия в именовании. В некоторых случаях — привет, iPhone 3G — одни и те же идентификаторы даже используются повторно для разных продуктов.

Во время WWDC я с удовольствием пытался обнаружить признаки внутренней согласованности у инженеров и менеджеров Apple, но даже они выражали недовольство этим. Более того, документация Apple по идентификации моделей непоследовательна, и почти каждая форма идентификатора (основных их 12) в какой-то момент называется в ней «моделью».

Идентификаторы, которые использует Apple, со временем тоже менялись. Существует три разных формата серийных номеров (скоро будет четыре) и два разных формата UDID. Номера семейств раньше неизменно начинались с «M», а теперь начинаются только с «A», и вместо этого некоторые MPN теперь начинаются с «M». И так далее.

В интернете уже есть множество инструментов для поиска, но недолго покопавшись, в них находишь неверные данные. Обычно причина структурная: такие инструменты, как Everymac, строятся на наблюдаемых связях между данными идентификаторов, которые кажутся верными… пока не окажутся неверными. У некоторых инструментов достаточно данных, чтобы это распознать, и поиск выдаёт набор возможных результатов, а не один окончательный. Другие выдают данные, которые выглядят почти правильно… но неверны.

Структурные проблемы данных — не единственная беда. Многие из этих систем опираются на ошибочные источники данных: скачивание данных из сервиса Apple GSX, ввод данных техниками или, что хуже всего, ввод данных случайными чудаками из интернета.

Решив сделать всё правильно, мы хотели соблюсти три условия:

  1. Система должна как можно больше узнавать автоматически и самостоятельно, ведь всё, что требует регулярного ввода, редактирования или модерации данных, быстро устареет.
    A learning computer
    We needed... a learning computer
  2. Система не должна опираться на нелицензированные или ненадёжные данные. В iPhone Wiki есть некоторые данные (и мы внесли немало), но они не нормализованы и не вполне точны. В API Apple GSX тоже есть данные, но они тоже не нормализованы, в некоторых из них творится что-то странное, и они не лицензированы для такого использования.
  3. Система должна выдавать данные и результаты, в которых мы полностью уверены, а не такие, которые часто верны. Поэтому, если единого ответа нет или вероятность ответа низкая, система должна ясно это показать.

Этичность

Но точность была не единственным условием. Нам не потребовалось много времени, чтобы понять, откуда в отрасли берутся некоторые из этих данных: от сетей сотрудников, которым платят за тайное копирование (кражу!) данных из внутренних баз.

Пока мы не придумали, как заставить Reincubate Lookup работать, существовало лишь три источника данных об IMEI:

  • Скачивание данных из GSX API от Apple. Это нарушает условия Apple и приводит к отзыву доступа к API. Существует небольшая индустрия людей, перепродающих доступ к учётным записям GSX, сжигающих их и пытающихся получить новые. Это не работает.
  • Лицензирование базы IMEI GSMA. Эта отраслевая организация мобильной индустрии ведёт канонический реестр всей информации об IMEI и лицензирует свою базу кодов распределения типов (TAC), которые помогают идентифицировать устройства. Хотя это звучит идеально, всё сложнее: сама организация заявляет о точности лишь 95% для данных «GSMA Device Map». Кроме того, в её базе нет нормализованных идентификаторов для включённых устройств. Поиск по TAC может сообщить лишь, что устройство — iPhone XS. Это вряд ли детально.
    Организация, похоже, отчасти воюет с производителями мобильных устройств, которых представляет: она одновременно запускает программы по поддержанию целостности IMEI и отмечает, что «the GSMA does not have the responsibility or powers to stop illegal TAC and IMEI activity». Неправильная регистрация этих данных настолько распространена, что организация активно продвигает свой «non-compliant TAC / IMEI reporting process».
    По сути, это значит, что нужно учитывать два набора данных: самодекларируемые GSMA данные от производителей, неполные и неточные, но хотя бы теоретически точные, и реальные данные, точные и нормализованные, которые можно построить, изучая мобильные устройства. Нам пришлось создать базу из 3000 TAC устройств Apple, более полную и полезную, чем у GSMA.
  • Подкуп сотрудников телеком-компаний, которые становятся «шпионами данных». Это та же отвратительная практика, из-за которой американские операторы продают данные о местоположении потребителей охотникам за головами и психам, и именно так работают нелегальные сервисы «разблокировки iCloud».
    Некоторые сервисы IMEI рекламируют это совершенно открыто. Мы нашли такое объявление на сайте одного британского сервиса:
Как работают сомнительные сервисы разблокировки

Как работают сомнительные сервисы разблокировки

Поскольку мы не были готовы пользоваться ни тем, ни другим подходом, нам пришлось искать третий путь к нужным данным: без шпионов, без GSX, без нечестных приёмов.

Ответ, по сути, в анализе очень больших объёмов данных, понимании связей между ними и сведении их к набору фактов, которые со временем обновляются автоматически. Часть этих данных присуща самим устройствам, а часть можно вывести, изучая анонимизированные вопросы о данных. Если достаточно запросов имеют вид «это устройство A и B, а оно также C?», можно начать понимать, что A и B связаны. Это та же техника, на которой работал наш продукт awdit: иногда, если посмотреть на достаточно много вопросов, можно получить ответы.

Анализ начал работать почти для любого устройства, когда в базе накопилось около 5 000 000 запросов, а если данных для ответа на вопрос недостаточно, Reincubate Lookup порекомендует посмотреть через iPhone Backup Extractor. Он достаточно умён, чтобы копнуть глубже и передать вопрос нам.

На сегодняшний день мы определили чуть менее 9000 кодов конфигураций для 2350 моделей, 127 различных производственных площадок, 304 различных регионов распространения и более 3000 кодов распределения типов IMEI.

Вот так мы пришли к созданию Reincubate Lookup и почему удобство, точность и этичность были важны при его создании. Надеемся, он вам понравится и будет полезен. Если захотите копнуть глубже: все данные Lookup поступают из нашего DeviceIdentifier API, и нам нравится видеть, как люди создают на его основе свои проекты.

Не пропадайте: расскажите, как у вас получилось.


Об авторе

Aidan Fitzpatrick

Основатель, генеральный директор

Aidan основал Reincubate в 2008 году, создав первый в мире инструмент восстановления данных для iOS. С тех пор он превратил компанию в одного из ведущих в мире независимых поставщиков программного обеспечения (ISV), сотрудничая с такими компаниями, как AMD, Qualcomm и HP, чтобы создавать значимые функции машинного обучения для видеопрограмм, главным примером которых служит экосистема приложений Camo. Под руководством Aidan Reincubate четыре раза получала высшую бизнес-награду Великобритании, вошла в список The Sunday Times 100 Tech и была отмечена номинациями на Apple Design Award и в App Store. Его работы и методы нередко цитируются в научных статьях по мобильной криминалистике, а его приглашают выступать на мероприятиях таких компаний, как Google, Microsoft и Snap.


Комментарии (2)

Andrew Holland 22 февраля 2021 г.

Wow. I stumbled upon this amazing tool after realizing that Apple created an AirPods Pro Service Program due to faulty devices manufactured before October 2020. My APPs were a 2020 Christmas gift and I felt that I was experiencing similar issues to those described in the faulty units. I then began to search around for a way to determine the eligibility of my APPs using the serial number and Apple doesn’t have an online tool like they have in the past for various Apple devices and requires you to visit a Genius Bar. I then scoured google and tried multiple tools claiming to “decode any Apple device serial number.” The only tool to work and provide detailed information was this tool. I am curious as to how accurate the manufacturing dates are for the AirPods Pro. According to the tool, my APPs were manufactured in the week beginning October 27, 2020. Mine were purchased in early December. Is the turnaround from the manufacturing floor to the consumer’s hand really that quick these days? Either way, I genuinely appreciate your teams development work and am looking into purchasing something to further support future development. Also, I appreciate the “learn more here” pages. As an IT Engineering student, it’s interesting insight into the reality of network and systems administration and how human error can create a need for solutions like yours!

Ответ службы поддержки Reincubate 22 февраля 2021 г.

Thank you! Apple code each serial according to the week of manufacture. There's a little [more on that here](https://reincubate.com/support/deviceidentifier/apple-identifiers/#serial). And yes, the turnaround on those dates really can be that rapid. Sometimes when we buy devices they're only a week or two from manufacturing.

Roland Kosek 8 ноября 2021 г.

Very helpful in getting the trade in allowance back from Verizon after 24 months. Total you saved me $300.00. Thank you.


Похожие материалы


Популярные статьи

Помощь