Геоскан — российская группа технологических компаний, которая занимается разработкой и производством беспилотных авиационных систем (БАС), малых космических аппаратов (кубсатов), авионики, средств беспроводной связи, сенсоров для БАС и кубсатов. Компания предоставляет услуги по беспилотной аэрофотосъемке, в том числе мультиспектральной и тепловизионной, воздушному лазерному сканированию, геологоразведке, организует шоу дронов.
С 2017 Геоскан года развивает образовательное направление, популяризируя применение дронов в рамках учебного процесса. Сегодня «Геоскан Пионер» — это уже целая образовательная экосистема, включающая несколько моделей квадрокоптеров, в том числе FPV, соревновательный полигон, симуляторы полетов и пр. Образовательные комплексы Геоскана широко представлены в учебных заведениях по всей стране.
Изначально программное обеспечение для пилотирования промышленных беспилотных воздушных судов (БВС) не требовало дополнительной защиты, поскольку оно входило в состав БАС, имеющей собственный защищенный канал связи. Вмешательство извне в управление ей исключалось с помощью аппаратных методов.
В определенный момент у одного из заказчиков разработчика возникла потребность в создании автономного рабочего места оператора БАС без интернет-доступа. В то время такой возможности у программного продукта Геоскана не было: выход в сеть был необходим для входа в учетную запись, хранящуюся на сервере лицензирования.
В качестве вариантов решения этой задачи были рассмотрены прокси-сервер для хранения учетных записей заказчика, создание отдельной версии продукта под заказчика, дописывание специальной защиты под клиента. Однако у каждого из них существовали определенные недостатки. В результате Геоскан начал взаимодействие с компанией «Актив» — разработчиком продуктов Guardant для защиты, лицензирования и управления продажами ПО.
Реализованный проект стал первым и на практике показал, что продукты Guardant подходят и для разработки других программных продуктов компании «Геоскан», которые планируется распространять как самостоятельный коммерческий софт.
Решения Guardant обеспечивают гибкое лицензирование функционала ПО, а также надежную защиту от реверс-инжиниринга и нелицензионного использования.
Программные ключи Guardant DL являются безопасным зашифрованным хранилищем информации о лицензии и лицензионных ограничениях. Ключ надежно привязан к конкретному компьютеру или виртуальной машине, на которых изначально производилась активация. Возможна как автоматическая активация лицензии в несколько кликов при наличии доступа в интернет, так и оффлайн активация для закрытых контуров через обмен файлами по электронной почте.
В первую очередь разработчик озадачился выбором формата ключа: аппаратного или программного. Решение было принято в пользу программного ключа по ряду причин. Первая и наиболее очевидная: аппаратный ключ больше подвержен утере, а это может быть критичным в определенных случаях.
Например, если БВС эксплуатируется в условиях тайги или в других труднодоступных зонах, при утере пользователем аппаратного ключа весь рабочий процесс может быть сорван. Кроме того, программный ключ — более гибкое решение, его можно использовать и на виртуальных машинах, и в облачных решениях.
Следующий нюанс касался выбора между использованием утилиты Guadrant Protection Studio и Guardant Licensing API. Специфика исходного продукта Геоскана, основная часть которого написана на Java, не предполагала возможностей автоматической «защиты из конверта» из-за особенностей данного языка программирования. Кроме того, разработчику хотелось иметь универсальный продукт: чтобы одна и та же версия для заказчиков, имеющих ключ, входила в учетную запись по ключу, проходя по нему необходимые проверки безопасности; а для заказчиков, не имеющих ключа, — брала учетную запись с сервера.
Последнее пожелание заключалось в автоматическом обновлении лицензий на ПО. Дело в том, что учетная запись пилота БВС содержит информацию о дате прохождения обучения и перечень аппаратов, которыми он может управлять (коптерами, самолетами или всеми видами). Важно, чтобы при изменении этих параметров пользователю не требовалось каждый раз вручную обновлять лицензию.
В результате в Геоскане разработали собственную «обертку» над API, обеспечив совместимость тех образцов, которые были у Guardant, со стандартами кодирования, применяемыми в системах Геоскана.
Чтобы не включать в комплект поставки защищенного ПО утилиту для активации и переноса ключей (мастер лицензий Guardant), был разработан собственный графический интерфейс для выполнения необходимых действий с лицензиями. Задачу внедрения защиты удалось решить за один месяц.
В этот же период защита от Guardant была внедрена еще в два продукта: в Geoscan Trainer и в FPV-симулятор Pioneer Drone Sim. В решении по пилотированию БВС и Geoscan Trainer защита внедрялась посредством усовершенствованного API. А в симуляторе, для написания программного кода которого использовался другой язык программирования, — посредством Protection Studio. Кроме того, в Pioneer Drone Sim были использованы триальные ключи Guardant, имеющие ограниченный срок действия. Это позволило распространять программу бесплатно для всех желающих, но на условиях ознакомительного использования — на один месяц.
Помимо разработки БАС компания разрабатывает образовательные продукты и услуги. В планах компании «Геоскан» использовать сетевые ключи Guardant в софте беспилотной робототехники, которую используют в учебных центрах.
«Опыт взаимодействия с Guardant оказался для нас очень позитивным: понравилось общение с технической поддержкой и с менеджерами, скорость решения вопросов. Теперь мы можем дальше развивать свое софтверное направление и при этом быть уверенными в том, что у нас есть надежный технологический партнер», — резюмирует руководитель отдела разработки ПО ГК «Геоскан» Арсений Афанасенко.