Тарифы Услуги Сим-карты

«Подписи приложений, использующие этот идентификатор, не совпадают. Android & iOS: концепции распространения приложений и вопросы безопасности

Сейчас смартфоны под управлением Android и iOS являются одними из самых популярных среди потребителей во всем мире, хотя по количеству проданных устройств и наблюдается существенный разрыв. Так, согласно отчету NPD Group, доля Android-смартфонов на рынке США составляет 61%, в то время как доля iOS - 29%. Несмотря на все возрастающую популярность двух конкурирующих платформ, проблемы их безопасности разительно отличаются. В то время как сообщения об очередной атаке злоумышленников на пользователей Android-устройств появляются с завидной регулярностью, владельцы «яблочных» i-продуктов фактически не испытывают никаких опасений, а большинство из них могло даже не слышать об имевших место атаках.

В чем же причина столь большой разницы? Попытаемся ответить на этот вопрос. Для начала рассмотрим технические особенности каждой операционной системы.

В основе ОС Android лежит Ядро Linux, которое выступает мостом между аппаратными возможностями смартфона и программными функциями Android. Большинство приложений для этой системы создаются при помощи языка Java и выполняются в виртуальной среде Dalvik, являющейся интерпретацией виртуальной Java-машины. Помимо языка Java, для написания программ могут использоваться и другие языки, но вне зависимости от способа создания приложения работают в специальной защищенной среде - песочнице (sandbox). Благодаря этой песочнице приложения не могут получить доступ к процессам других программ или их данным.

В Android всем приложениям присваивается уникальный идентификатор пользователя User ID или UID. Во время работы каждая программа выполняется под своим пользователем и в отдельном процессе, что является составной частью песочницы. У одного и того же приложения, установленного на разных устройствах, этот идентификатор может быть разным, однако он всегда сохраняется за приложением на протяжении всего времени пребывания его в системе. По умолчанию доступ к root (учетной записи суперпользователя с неограниченными правами в системе) имеют только ядро и некоторые ключевые системные приложения.

Обязательным условием корректной работы приложений в ОС Android является наличие у них цифровой подписи. Если ее нет, система просто не позволит выполнить установку программы. Цифровая подпись используется для идентификации разработчика, а также для обеспечения безопасной взаимной работы приложений. Когда разработчик создает и тестирует программу, она подписывается временным ключом, использующимся для отладки. Для готового приложения необходима личная цифровая подпись разработчика, которая создается после компиляции приложения и затем используется для подписи уже готового программного пакета. Особенностью Android является то, что разработчик самостоятельно подписывает свое приложение, без вмешательства кого бы то ни было со стороны, после чего приложение сразу готово к использованию.

Из-за ограничений, накладываемых песочницей, два и более приложений не могут работать под одним и тем же процессом, так как у каждого из них должна быть своя уникальная учетная запись пользователя. Тем не менее, у разработчиков существует возможность назначить для нескольких программ единый идентификатор UID, но для этого все приложения должны иметь одну и ту же цифровую подпись. Если это условие выполняется, приложения могут работать c одной учетной записью пользователя.

Базовое приложение Android не содержит в себе функций, требующих доступа к контролируемым и защищаемым песочницей данным или возможностям смартфона. В случае необходимости задействования определенного функционала или доступа к данным разработчик должен указать для приложения соответствующие разрешения (Permissions) в конфигурационном файле AndroidManifest.xml. Во время установки подобного приложения пользователь увидит сообщение, содержащее информацию о функциях, необходимых для его работы. Операционная система оставляет за пользователем право решать, стоит ли доверять выбранной программе. После установки выполнение той или иной функции уже не потребует участия пользователя.

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

Операционная система iOS, как и OS X, на которой она базируется, построена на основе ядра Mach и интерфейсов BSD и представляет собой UNIX-подобную систему. Системное ядро отвечает за управление памятью, работу с файловой системой, доступ к аппаратным функциям, сети и т. п. Драйвера выполняют связующую роль между аппаратной частью и системными функциями. Доступ к ядру и драйверам ограничен, и его имеют лишь некоторые системные приложения и библиотеки.

Для обеспечения безопасности каждое устанавливаемое приложение помещается в песочницу - sandbox. Приложениям отводится отдельное место в файловой системе (каталог, содержащий саму программу и ее данные), доступ к которому для других приложений ограничивается. Помимо этого, песочница контролирует доступ к различным функциям системы, сети, аппаратным возможностям смартфона и т. д. Например, ограничения затрагивают доступ к СМС- и почтовой переписке, выполнению скрытого набора номера, отправке сообщений. Если в работе приложения предусмотрен обмен определенными данными с другими программами, у разработчиков существует возможность предоставить такой доступ. Все приложения, устанавливаемые пользователями, работают с ограниченными правами.

Приложения для iOS должны быть подписаны цифровым сертификатом. Этот сертификат служит идентификатором разработчика и гарантирует, что приложение было создано именно им, а также что разработчик является зарегистрированным членом Developer Program. Для получения сертификата разработчик должен направить запрос в Apple. В случае положительного решения этого вопроса он получает цифровой сертификат безопасности, который в дальнейшем используется при создании приложений.

Как и Google, компания Apple при необходимости может дистанционно удалять со смартфонов пользователей опасные или нарушающие какие-либо правила приложения.

Как мы видим, обе операционные системы обеспечивают вполне приемлемый уровень безопасности. Почему же сообщения об очередных угрозах для владельцев Android-устройств звучат гораздо чаще, чем об угрозах для смартфонов от Apple?

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

– онлайн-мошенничество;

– социальная инженерия;

– создание вредоносных и нежелательных программ.

Практически всегда эти «инструменты» встречаются в комбинированном виде, что позволяет киберпреступникам использовать их наиболее эффективно.

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

Что касается ОС Android, прежде всего, стоит отметить тот факт, что SDK - средства разработки - доступны для Windows, Linux и Mac OS X. Этим обеспечивается охват самого широкого круга разработчиков.

Созданные приложения могут распространяться несколькими способами. Первый - через основную официальную площадку - каталог Google Play. За небольшую единовременную плату в размере $25 любой желающий может зарегистрировать аккаунт разработчика и распространять в этом каталоге созданные им приложения. Помещаемые в Google Play программы практически сразу становятся доступными для загрузки пользователями. До недавнего времени публикуемые в этом каталоге приложения не подвергались какой-либо проверке, однако из-за того, что злоумышленники периодически размещали в нем вредоносные программы, компании Google пришлось ввести специальную систему Bouncer, которая должна искать подозрительные и нежелательные приложения на основе уже имеющихся данных. Тем не менее, ни о какой жесткой политике проверки и тестирования приложений перед размещением речи не идет.

У каталога Google Play имеется интернет-версия. В ней содержится не только информация о доступных в нем приложениях, но также существует возможность их установки непосредственно с веб-сайта. Для этого владелец смартфона должен выполнить вход под своей учетной записью электронной почты, которая привязана к его мобильному устройству. Простым нажатием кнопки можно инициировать установку, которая при наличии доступа к Интернету будет сразу же выполнена, при этом на самом устройстве не возникнет никаких запросов.

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


Рис.1. Схема возможных каналов получения приложений в ОС Android

Пользуясь такой свободой, вирусописатели быстро освоились. Вполне демократичная стоимость аккаунта в Google Play дает им возможность без особых финансовых потерь создавать новые учетные записи в случае их блокировки. Различные методы социальной инженерии позволяют легко заставить пользователей загрузить и установить троянские программы, распространяющиеся в том числе вне официального каталога, например, под видом некоего обновления системы или популярного приложения (популярная тактика, применяемая для доставки СМС-троянцев семейства Android.SmsSend - одной из главных и наиболее распространенных угроз).

Система разрешений Android предоставляет пользователю информацию о функциях, которые сможет выполнять устанавливаемая программа, однако далеко не всегда можно однозначно сказать, как именно поступит приложение с той или иной функцией, чем и пользуются злоумышленники. Так, например, необходимость доступа к сети Интернет, закладкам браузера, контактам, координатам GPS, номеру телефона и т. п. может иметь как вполне безобидная программа, так и троянец, распространяющийся под ее видом.

Не стоит забывать, что компания Google позиционирует Android как открытую операционную систему. Несмотря на то что некоторые компоненты все же являются недоступными (например, ключевые системные драйверы и проприетарные приложения), имеющийся в открытом доступе код позволяет эффективнее обнаруживать различные уязвимости, которые в том числе берут на вооружение и используют в своих вредоносных программах злоумышленники. Одним из наиболее ярких примеров таких приложений являются троянцы Android.DreamExploid., Android.Wukong и Android.Gongfu, которые эксплуатируют уязвимости операционной системы, позволяющие повышать привилегии программного окружения до уровня root. Это дает им более широкие возможности по выполнению своих вредоносных функций, например, установке других приложений без участия пользователя.

Так как Android доступна большому числу производителей, выпускающих смартфоны с различными техническими характеристиками и версиями операционной системы, на рынке присутствует большое разнообразие мобильных устройств, что вызывает фрагментацию. Несмотря на попытки Google оперативно выпускать обновления системы, закрывающие обнаруживаемые уязвимости, фрагментация платформы часто мешает пользователям своевременно получать эти обновления, так как каждый производитель имеет свою стратегию по их выпуску. Случается и так, что производитель вообще отказывается от дальнейших обновлений некоторых моделей по причине их устаревания, экономическим или техническим соображениям или же по каким-либо другим причинам. Таким образом, пользователи становятся беззащитными перед угрозой троянцев, использующих root-эксплойты, о которых говорилось выше.

Доступный исходный код Android также может применяться различными энтузиастами, создающими свои сборки операционной системы. Вирусописатели освоили и эту нишу. Они могут распространять троянские программы (такие как, например, Android.SmsHider), имеющие цифровую подпись одного из образов такой сборки. Благодаря этому методу приложение получает недоступные в обычных условиях права суперпользователя в системе, которой принадлежит использованный для подписи сертификат безопасности. А некоторые злоумышленники могут и вовсе встраивать троянские программы в подобные сторонние прошивки.

Таким образом, у вирусописателей существует несколько способов доставки своих творений пользователям.

Создание и распространение приложений для операционной системы iOS имеет ряд отличий. Во-первых, средства разработки доступны только для компьютеров Mac OS X. Во-вторых, разработчик должен выбрать подходящую ему модель распространения созданных приложений:

IOS Developer Program Individual или iOS Developer Program Company - для индивидуальных разработчиков и компаний, которые создают приложения для массового рынка;

IOS Developer Enterprise Program - для корпоративных клиентов, которым необходимы приложения для внутренних нужд;

IOS Developer University Program - для образовательных учреждений с целью повышения квалификации студентов и ознакомления их с процессом создания приложений для мобильной системы от Apple.

Первая модель является стандартной, рассчитанной на общий потребительский рынок (именно эта модель в дальнейшем будет использоваться в качестве основы для рассмотрения). Созданные на ее основе приложения доступны только через официальный каталог приложений App Store, причем прежде чем увидеть свет, они проходят определенную проверку. Процесс создания приложения, проверки и добавления в App Store выглядит следующим образом: сначала разработчик должен пройти простую регистрацию на сайте developer.apple.com , после чего ему будет доступна среда разработки. Однако для того, чтобы иметь возможность распространять в App Store созданные приложения, ему необходимо выбрать одну из подходящих моделей распространения (в случае с iOS Developer Program Individual или iOS Developer Program Company членство стоит $99 в год).

Для того чтобы разместить созданное приложение в каталоге App Store, разработчику необходимо направить его на рассмотрение в Apple. Для этого требуется уже откомпилированная и готовая к использованию программа. При проверке внимание обращается на соответствие многим требованиям, среди которых - оформление приложения и логика построения интерфейса, отсеивание малосодержательных приложений, а также программ, которые дублируют уже имеющийся функционал и вводят пользователя в заблуждение своим сходством со стандартным ПО. Также не допускаются приложения, иконка которых похожа на иконку системных приложений. Обязательным является проверка на следование установленным правилам безопасности. Среди них стоит выделить следующие:

Функционал соответствует заявленным возможностям, то есть не имеется скрытых и необъявленных функций;
- приложение может выполнять загрузку файлов, если это необходимо для ее основной работы, причем пользователь должен быть уведомлен об этом;
- если требуемый объем загрузки через мобильную сеть превышает лимит в 50 МБ, загрузка должна происходить только по Wi-Fi либо отдельными сессиями;
- приложение не выполняет установку или запуск других программ;
- приложение выполняется в своей среде и не имеет доступа к областям других приложений, включая их файлы;
- в приложении не используются недокументированные функции системы;
- пользователь должен быть уведомлен о сборе персональной информации (включая координаты местоположения), выполняемом приложением, и должен дать согласие на такие действия перед их выполнением;
- приложение должно уведомить пользователя о целях сбора персональной информации и возможных областях их применений.

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

Помимо установки программ непосредственно со смартфона, существует еще один стандартный способ, который выполняется при помощи программы iTunes, устанавливаемой на компьютер владельца устройства. Подключив смартфон к компьютеру, пользователь легко может загрузить нужную программу из каталога App Store.

Вторая модель - iOS Developer Enterprise Program - ориентирована на корпоративных клиентов, которым требуется создание приложений для внутренних нужд. Как и в предыдущем случае, для доступа к ней необходима платная регистрация, которая стоит уже $299 в год. Созданные впоследствии приложения могут быть распространены среди сотрудников компании и установлены следующими способами: через компьютер с имеющейся на нем программой iTunes, при помощи администрирующего приложения iPhone Configuration Utility, либо через специально созданный веб-сайт. Помимо корпоративных, также возможна установка общедоступных приложений, размещенных в каталоге App Store.

Третью модель - iOS Developer University Program - рассматривать не стоит, так как она служит образовательным целям.

Кроме описанных способов установки приложений на смартфоны с iOS, существует и третий. Он становится возможным после выполнения операции jailbreak - снятия стандартных ограничений системы и получения прав доступа к файловой системе устройства. Сделав jailbreak, пользователь может устанавливать приложения, минуя App Store. Доступ к таким приложениям осуществляется при помощи специализированных программ-каталогов, наиболее известный и широко применяемый из которых - Cydia. Маловероятно, что корпоративный сектор будет использовать такой метод, поэтому он в большей степени присущ определенной части обычных пользователей.

Рис. 2. Схема возможных каналов получения приложений в iOS

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

Среди того немногочисленного числа вредоносных программ, существующих для iOS, самой известной, пожалуй, является червь Ike. Этот червь функционировал только на взломанных смартфонах, где был выполнен jailbreak. Для своего распространения он использовал терминал SSH и стандартный root-пароль устройства: alpine. Червь устанавливал в качестве фонового изображения фотографию певца Рика Эстли (Rick Astley). Другая версия червя уже имела в своем функционале возможность принимать и выполнять команды от своих создателей. Более того, он менял стандартный пароль, чтобы снизить вероятность того, что пользователь сможет от него избавиться.

Помимо вредоносной программы Ike, для iOS существуют и коммерческие программы-шпионы. Однако для их установки необходимо, чтобы на устройстве также был выполнен jailbreak, так как они распространяются через сторонние площадки, отличные от App Store. Для успешного внедрения и настройки такого шпиона требуется непосредственное участие злоумышленника.

Также следует помнить, что iOS, являясь закрытой операционной системой, принадлежащей исключительно компании Apple, менее охотно поддается анализу. Это вовсе не значит, что уязвимости в ней найти невозможно. Тем не менее, обнаруженные уязвимости операционной системы, которые применяются на практике, больше всего направлены на выполнение операции jailbreak. Может сложиться впечатление, что смартфоны с jailbreak’ом являются хорошей мишенью для злоумышленников, и это отчасти справедливо. Однако нельзя забывать, что пользователей таких смартфонов все-таки существенно меньше, чем тех, кто предпочел ничего не модифицировать, поэтому экономическая эффективность (а именно финансовая сторона является одной из главных причин деятельности злоумышленников) здесь также под вопросом.

Ко всему прочему, iOS не лицензируется сторонним производителям. Это помогает сохранять контроль над целостностью платформы, обеспечивая тем самым более высокую надежность и позволяя оперативно выпускать обновления системы для все еще поддерживаемых устройств. Это, в свою очередь, также снижает вероятность создания злоумышленниками вредоносных программ, использующих различные уязвимости системы, как, например, происходит в случае Android. Хорошим примером такого подхода может служить недавний выпуск обновления системы, iOS 5.1.1, устраняющего уязвимости, которые могли привести к подмене отображаемого адреса веб-страницы, межсайтовому скриптингу, а также выполнению произвольного кода. Это обновление доступно сразу для нескольких поколений мобильных устройств от Apple.

Таким образом, мы можем видеть в концепции создания и распространения приложений на Android и iOS принципиальные различия, которые приводят к совершенно разным результатам в плане наличия вредоносных программ - одного из главных инструментов киберпреступников. На данный момент создание таких программ для мобильной операционной системы от Apple невыгодно злоумышленникам, так как этот процесс сопряжен с определенными финансовыми рисками. К тому же им незачем направлять часть своих усилий на еще одну платформу, когда другая - Android - обеспечивает их всем необходимым.

Сейчас наиболее оправданным для злоумышленников, нацеленных на владельцев смартфонов от Apple, является использование методов социальной инженерии и онлайн-мошенничества. Некоторые пользователи уже могли сталкиваться со случаями подобных атак:



Нельзя забывать и про другой вполне эффективный вид онлайн-мошенничества. Злоумышленники могут использовать поддельные или взломанные сайты для похищения конфиденциальной информации, а также для подписки пользователей на платные услуги, как это делается, например, во всевозможных «лотереях», «онлайн-пособиях» и прочих мошеннических схемах, широко применяемых киберпреступниками в сегменте настольных компьютеров. Обе эти проблемы - пожалуй, единственное, что на данный момент в равной степени объединяет пользователей двух популярных платформ, однако сейчас основное внимание злоумышленников приковано к пользователям Android, оставляя владельцев смартфонов от Apple в относительной безопасности.

Случается так, что после перепрошивки некоторых моделей телефонов при попытке обновления встроенных в новую прошивку программ через Google Play Маркет аппарат выдает ошибку «Файл пакета подписан неверно», удалите предыдущую версию и попробуйте снова. После выполнения требуемых операций проблема не решается - приложения не обновляются, зато появляется сообщение о новой ошибке: «Подписи приложений, использующие этот идентификатор, не совпадают». Если у вас имеются права суперпользователя, то вы можете попробовать исправить ситуацию, воспользовавшись следующим способом:

1. Сначала нужно установить программу Titanium Backup .

2. Затем зайти в нее и вверху по центру нажать на кнопку «Резервные копии» (должен появиться полный список приложений, установленных на устройстве);

3. Для страховки сделать резервную копию программы, которую намерены обновить (выбрать нужное приложение, в открывшемся небольшом меню нажать кнопку «Сохранить»).

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

5. Зайти в Google Play, найти обновляемое приложение и произвести манипуляции, необходимые для его обновления. На экране появится уже знакомое сообщение об ошибке, но теперь с предложением удалить старую версию программы («Файл пакета подписан неверно, удалите предыдущую версию и попробуйте снова»). Придется удалить и старую версию. Всё. На этом приложение полностью удалено с устройства.

6. Вот теперь можно заново установить приложение. Разумеется, с маркета установится последняя версия программы, что и требовалось. Больше проблемы с этой программой уже не возникнут.

При желании можно повторить пункт 4 с той только разницей, что преобразовать пользовательское приложение обратно в системное. Просто выберите соответствующий пункт в меню.

Если принятые меры от ошибки избавиться не помогли, резервное копирование, выполненное в самом начале процесса с помощью

В данной статье мы с Вами узнаем, как подписать приложение личным сертификатом, используя ПК.
В статье "Общие сведения о сертификатах безопасности." мы познакомились с видами сертификации, общими сведениями о них. Узнали о том, что существуют приложения, для которых требуется личный, персональный сертификат, для того чтобы выполнить им подписку приложения.
Итак, Вы получили персональный сертификат для своего смартфона. Теперь надо Вам подписать свое приложение. Как и с помощью каких приложений это можно сделать, мы и рассмотрим.

В данной статье я расскажу о двух способах подписи приложений на компьютере:

Первый способ. Для подписи используем программу SisSigner .

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

1. Скачиваем архив с программой SISSigner. Данный архив содержит все необходимые файлы для начала работы:

  • Папка "cert" содержит внутри файл mykey (этот файл необходимо будет заменить).
  • Установочный файл программы SISSigner.
Сначала устанавливаем саму программу SISSigner, а затем уже в ее папку добавляем папку "cert" с ключом из архива.

Итак, Вы уже имеете персональный сертификат и ключ к нему (получили заранее), установленное приложение для подписи, теперь рассмотрим сам процесс подписи приложения при помощи программы SISSigner:

2. Заходим в папку программы SISSigner (куда Вы ее установили).

  • Копируем в нее Ваш полученный сертификат (файл с расширением cer).
  • Копируем в нее Ваш полученный ключ к сертификату (файл с расширением key).
  • Копируем в нее приложение для смартфона, которое необходимо подписать.

3. Запускаем файл SISSigner и указываем в окне программы:

  • Путь к ключу key (что получили при заказе сертификата)
  • Путь к сертификату cer (что получили при заказе)
  • Пароль key файла (по умолчанию 12345678)
  • Путь к приложению, которое необходимо подписать
Сертификат, ключ и приложение можно не переименовывать - главное правильно в окне программы SisSinger указать к ним путь!

4. Нажимаем кнопку Подписать.

После появления запроса "Для продолжения нажмите любую клавишу..." - нажимаем любую клавишу.

5. Вот теперь наше приложение подписано и его можно устанавливать в телефон.

6. Подключаем телефон к ПК и с помощью программы PC Suite устанавливаем наше подписанное приложение в смартфон.

Второй способ. Для подписи используем приложение Signsis .

Данное приложение интересно тем, что не требует работы с командной строкой, не требует ввода путей в окне программы. Программу достаточно установить и настроить один раз. И затем у Вас будет возможность подписать приложение, расположенное в любом месте на жестком диске, в любой папке, из контекстного меню.

После установки и настройки этой программы добавляется следующая надпись в меню при нажатии правой кнопки мыши:

Рассмотрим процесс установки этой программы и ее настройки:

1. Скачиваем и распаковываем архив с программой Signsis. В архиве четыре файла:

  • install1.bat
  • install2.bat
  • uninstall.bat
  • signsis.exe
2. Копируем в тот же каталог, куда мы распаковали файлы, свои сертификат и ключ.
3. Переименовываем Ваш сертификат в cert.cer, а ключ в cert.key.
4. Открываем файл install1.bat в Блокноте для редактирования.
  • Изменяем значение set password1 на свой пароль (по умолчанию 12345678).
  • Изменяем путь к папке программы в значениях set disk_ins и set app_path .
Теперь разберем, как правильно отредактировать путь к программе.
В данном примере программа расположена в папке:

D:\Nokia\6290\sign_sis\

Следовательно, необходимо прописать значения таким образом:

set disk_ins=D:
set app_path=Nokia/6290/sign_sis

Обратите внимание на наклон cлеш (косых линий), если их поставить в обратную сторону, то программа уже не станет работать.

5. Сохраняем файл, нажав в Блокноте "Сохранить".

6. Запускаем файл install1.bat двойным нажатием мыши.

7. Если все выполнено верно, то в результате по нажатию правой кнопкой мыши по инсталляционному пакету sis, у Вас появится контекстное меню с пунктом "Подписать персональным сертификатом".

8. Выбираем приложение на жестком диске, что необходимо подписать. Нажимаем правой кнопкой мыши по нему один раз, в контекстном меню выбираем "Подписать персональным сертификатом". В результате рядом с неподписанным файлом появится еще один файл с тем же именем, но с добавлением к имени "_signed".

9. Подключаем телефон к ПК и с помощью программы PC Suite устанавливаем наше подписанное приложение в смартфон.

Примечание: Если нужно сделать два меню, для подписи двумя разными персональными сертификатами (в случае, если в семье два и более телефонов), то по аналогии редактируем и запускаем install2.bat.

Для полного удаления приложения, а также удаления записей реестра, запустить файл uninstall.bat.

Скачать программы, описанные в статье.

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

Если срок сертификата, использованного для подписи предыдущей версии приложения, истек, и он был заменен или обновлен, для подписи обновленной версии можно использовать обновленный или новый (полученный на замену) сертификат. Для этого следует подписать приложение новым сертификатом и применить подпись переноса к оригинальному сертификату. Подпись переноса подтверждает, что владелец исходного сертификата опубликовал обновление.

Прежде чем применить подпись переноса, обратите внимание на следующие моменты.

    Чтобы применить подпись переноса, исходный сертификат должен быть действителен или быть просроченным не более чем на 365 дней. Этот период считается льготным, и его продолжительность может быть изменена в будущем.

    Примечание. До выхода AIR 2.6 льготный период составлял 180 дней.

    После окончания 365-дневного льготного периода, который отсчитывается с момента истечения действия сертификата, подпись переноса не может быть применена. В этом случае пользователям потребуется перед установкой обновления удалить текущую версию приложения.

    365-дневный льготный период применяется только к приложениям, для которых в пространстве имен дескриптора приложения указана версия AIR 1.5.3 или более поздняя версия.

Важная информация. Подписание обновлений с использованием подписи переноса просроченного сертификата является временным решением. Окончательное решение предполагает разработку стандартизированной процедуры подписания для управления развертыванием обновлений приложений. К примеру, каждое обновление подписывается последним имеющимся сертификатом, и применяется сертификат переноса - сертификат, использованный для подписи предыдущего обновления (если таковое было). Каждое обновление размещается на сервере с собственным URL, с помощью которого происходит загрузка приложения пользователями. Дополнительные сведения см. в разделе «Процедура подписания для обновлений приложений ».

Следующая таблица и рисунок иллюстрируют процесс обращения с подписями переноса:

Сценарий

Состояние оригинального сертификата

Действие разработчика

Действие пользователя

Приложение на основе среды выполнения Adobe AIR 1.5.3 или более новой версии

Действительный

Действия не требуются

Срок истек, но не более 365 дней назад

Подпишите приложение новым сертификатом. Примените подпись переноса с использованием устаревшего сертификата.

Действия не требуются

Приложение обновляется автоматически

    Идентификатор издателя в дескрипторе обновленного приложения совпадает с идентификатором предыдущей версии

Действительный

Опубликуйте последнюю версию приложения AIR

Действия не требуются

Приложение обновляется автоматически

Просрочен, льготный период закончился

Подпись переноса не может быть применена для обновления приложения AIR.

Вместо этого опубликуйте другую версию приложения AIR, используя новый сертификат. Пользователи могут установить новую версию приложения AIR после удаления существующей версии.

Удалите текущую версию приложения AIR и установите последнюю версию

    Приложение на основе среды выполнения Adobe AIR 1.5.2 или более ранней версии

    Идентификатор издателя в дескрипторе обновленного приложения не совпадает с идентификатором предыдущей версии

Подпишите приложение AIR действующим сертификатом и опубликуйте его последнюю версию.

Удалите текущую версию приложения AIR и установите последнюю версию

Процедура подписания для обновлений

Процедура переноса приложения AIR на новый сертификат при обновлении приложения:

    Упакуйте и подпишите файл обновления AIR новым сертификатом

    Подпишите файл AIR снова, на этот раз оригинальным сертификатом с помощью команды ADT -migrate

Файл AIR, подписанный с помощью команды -migrate , может также использоваться для установки новой версии приложения - не только для обновления любой прошлой версии, подписанной устаревшим сертификатом.

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

Используйте команду ADT - migrate со следующим синтаксисом:

Adt -migrate SIGNING_OPTIONS air_file_in air_file_out

    SIGNING_OPTIONS . Параметры подписи определяют закрытый ключ и сертификат подписи файла AIR. Эти параметры должны определять оригинальный Параметры подписания кода ADT »).

    air_file_in - обновляемый файл AIR, подписанный новым сертификатом.

    air_file_out - создаваемый файл AIR.

Примечание. Имена входных и выходных файлов AIR должны отличаться.

Следующий пример иллюстрирует вызов функции ADT с флагом -migrate для применения подписи переноса к обновленной версии приложения AIR:

Adt -migrate -storetype pkcs12 -keystore cert.p12 myAppIn.air myApp.air

Примечание. Команда -migrate была добавлена в ADT в AIR версии 1.1.

Перенос приложения AIR с собственным файлом установки на новый сертификат

Приложение AIR, опубликованное как собственный файл установки для конкретной платформы (например, приложение, использующее собственный API платформы), не может быть подписано командой ADT -migrate , поскольку не является файлом air. Для переноса приложения AIR, опубликованного в качестве собственного расширения платформы, на новый сертификат предусмотрена другая процедура:

    Создайте обновление приложения.

    Убедитесь, что в файле-дескрипторе приложения (app.xml) тег содержит как профиль настольной системы (desktop), так и расширенный профиль настольной системы (extendedDesktop); либо совсем удалите тег из дескриптора приложения.

    Упакуйте и подпишите обновленное приложение как файл air при помощи команды ADT -package с новым сертификатом.

    Примените сертификат переноса к файлу.air, используя команду ADT -migrate с оригинальным сертификатом (как описано ранее в разделе «Перенос приложения AIR для использования нового сертификата »).

    Упакуйте файл.air в виде собственного установочного файла платформы при помощи команды ADT -package с флагом -target native . Поскольку приложение уже подписано, на этом шаге нет необходимости указывать сертификат подписи.

В следующем примере показаны этапы 3–5 этой процедуры. Код вызывает программу ADT с командой -package , затем - с командой -migrate , затем снова с командой -package для упаковки обновленной версии приложения AIR в виде собственного файла установки данной платформы:

Adt -package -storetype pkcs12 -keystore new_cert.p12 myAppUpdated.air myApp.xml myApp.swf adt -migrate -storetype pkcs12 -keystore original_cert.p12 myAppUpdated.air myAppMigrate.air adt -package -target native myApp.exe myAppMigrate.air

Перенос на новый сертификат приложения AIR, использующего собственное расширение платформы

Приложение AIR, использующее собственное расширение платформы, не может быть подписано при помощи команды ADT -migrate . Его перенос также не может быть выполнен по процедуре переноса приложения AIR с собственным файлом установки, поскольку оно не может быть опубликовано как промежуточный файл.air. Для переноса приложения AIR, использующего собственное расширение платформы, на новый сертификат предусмотрена другая процедура:

    Создайте обновление приложения

    Упакуйте и подпишите обновленный собственный файл установки при помощи команды ADT -package . Упакуйте приложение с указанием нового сертификата и включите в команду флаг -migrate с указанием оригинального сертификата.

Для вызова команды ADT -package с флагом -migrate используется следующий синтаксис:

Adt -package AIR_SIGNING_OPTIONS -migrate MIGRATION_SIGNING_OPTIONS -target package_type NATIVE_SIGNING_OPTIONS output app_descriptor FILE_OPTIONS

    AIR_SIGNING_OPTIONS новый сертификат подписи (их описание приводится в разделе «Параметры подписания кода ADT »).

    MIGRATION_SIGNING_OPTIONS . Параметры подписи определяют закрытый ключ и сертификат подписи файла AIR. Эти параметры определяют оригинальный сертификат подписи (их описание приводится в разделе «Параметры подписания кода ADT »).

    Прочие параметры те же, что применяются при упаковке приложения AIR с собственным файлом установки; они описаны в разделе «Команда ADT package ».

В следующем примере иллюстрируется вызов программы ADT с командой -package и флагом -migrate для упаковки обновленной версии приложения AIR, использующего собственное расширение платформы, и для применения к нему подписи переноса:

Adt -package -storetype pkcs12 -keystore new_cert.p12 -migrate -storetype pkcs12 -keystore original_cert.p12 -target native myApp.exe myApp.xml myApp.swf

Примечание. Флаг -migrate команды -package доступен в программе ADT в версиях AIR 3.6 и более поздних.