Jump to content
Old Phone Forum
  • Login

    You are currently not logged in to the forum.

    To comment, upload files, subscribe to answers - you need to login.

rost751

Подписывание Java - приложений сертификатом

Recommended Posts

Ну вот, что называется , "приехали". С входом в "силу" новых платформ Qualcomm и обновленной java пришлось ( и наверное в будущем многим придется ) столкнутся с системой подписывания java приложений сертификатом . Подобное существовало давно на телефонах других производителей ( Nokia, SE ) и теперь , что очень плохо, добралось и до Samsung. Существуют несколько проблем:

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

2. Про установку только файла jar уже известно - в 90% случаев получаем ошибку - " недостаточно памяти"

3. В jimm нет звуковых оповещений, есть подозрение что есть взаимосвязь.

Пытался установить уже подписанные приложения для устройств других производителей - результат один - "недопустимый файл".

В связи с этим, давайте делиться всей возможной информацией по этому поводу.

З.Ы. выкладываю архив с реально подписанным приложением, может это поможет пролить свет на проблему.

NE_samsung_S7220_locationapi_ru_local.zip


--------------------------------------------------------------------------------------------

Модифицированная прошивка для X700 Retro Style 3D by rost751

Тема для Symbian Pear wood by rost751

Share this post


Link to post
Share on other sites

как видно подпись добавлется в JAD файл... насколько я знаю.. там лежит хеш JAR файла и сертификат.. хеш получить можно..но вот сертификат это другое (((

 

P.S. вот нашел прогу для подписывания мидлетов... но есть несколько но..

1. Нужен JRE

2. Прога под Сименс, поэтому надо изменять список Permissions...

 

Короче ушел тестить..как получится выложу полную инструкцию

MidletSigner.rar

Edited by RusEm

Жизнь - пьяный поэт, я - слово.

Я жесток и грустен, когда ему херово.

Жизнь - старый поэт, жизнь - усталый поэт,

А я... Что я? Его инструмент!...

 

Разработка Broadcom: http://www.rk-team.net/

Новости проекта QuB на Twitter

Share this post


Link to post
Share on other sites

RusEm,

Да проги есть , не факт , что к Самсунг прокатит. А за отклик спасибо !!!

как видно подпись добавлется в JAD файл...

вот из-за этого нельзя установить приложение - "недопустимый файл"

З.Ы. Спасибо за отклик. :( Сам что то разыскиваю. И есть же подписанное приложение - должно вывести на нужный путь :67:


--------------------------------------------------------------------------------------------

Модифицированная прошивка для X700 Retro Style 3D by rost751

Тема для Symbian Pear wood by rost751

Share this post


Link to post
Share on other sites

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


Жизнь - пьяный поэт, я - слово.

Я жесток и грустен, когда ему херово.

Жизнь - старый поэт, жизнь - усталый поэт,

А я... Что я? Его инструмент!...

 

Разработка Broadcom: http://www.rk-team.net/

Новости проекта QuB на Twitter

Share this post


Link to post
Share on other sites

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

В свифтах это файл main.ks. Структура у него несложная, я добавлял простым хекс-едитором.

Если надо, вспомню, что и как делал.

  • Like 1

Мы рождены, чтоб сказку сделать пылью...

 

VishnyaSoft.com - мои программы и мидлеты для телефонов Samsung

 

Классификация телефонов Samsung

 

Угадай название телефона

Share this post


Link to post
Share on other sites

было бы просто отлично


Жизнь - пьяный поэт, я - слово.

Я жесток и грустен, когда ему херово.

Жизнь - старый поэт, жизнь - усталый поэт,

А я... Что я? Его инструмент!...

 

Разработка Broadcom: http://www.rk-team.net/

Новости проекта QuB на Twitter

Share this post


Link to post
Share on other sites

Пару ключей я создавал с помощью WTK. Им же и подписывал.

 

Что касается структуры _main.ks :

Сначала в файле лежит один байт с единицей ($01), а дальше ключи.

Каждый ключ хранится в виде набора тэгов.

- 1 байт с тэгом:

	public static final byte OWNER_TAG = 1;
public static final byte NOT_BEFORE_TAG = 2;
public static final byte NOT_AFTER_TAG = 3;
public static final byte MODULUS_TAG = 4;
public static final byte EXPONENT_TAG = 5;
public static final byte DOMAIN_TAG = 6;

Это константы из исходников эмулятора JVM. В файле из WTK есть еще один тэг (7), определяющий активность ключа. Он хранит строку "enabled" или "disabled".

- байт с длиной заголовка

для тэгов 4 и 5 значение байта на единицу меньше, чем надо (если я не ошибаюсь)

- заголовок, в нем хранится длина данных

для тэгов 2 и 3 длина в заголовке может быть нулевой, но реально она равна 8 байтам

- данные

к примеру, для OWNER_TAG там будет строка "GC=US;O=RSA Data Security, Inc.;OU=Secure Server Certification Authority"

Даты NOT_BEFORE_TAG и NOT_AFTER_TAG (срок годности ключа) хранятся по-разному в зависимости от телефона.

 

Вот как-то так...

 

 

Вся эта информация легко читается из самого телефона.

Я уже где-то тут выкладывал пробную версию мидлета, но она уже слегка устарела, поэтому выложу новую.

Если у кого-то он не заработает или будет показывать не пойми что, пишите, помогу разобраться.

 

Cert.zip

  • Like 5

Мы рождены, чтоб сказку сделать пылью...

 

VishnyaSoft.com - мои программы и мидлеты для телефонов Samsung

 

Классификация телефонов Samsung

 

Угадай название телефона

Share this post


Link to post
Share on other sites

Снег,

"Непредвиденное исключение

В результате работы произошла ошибка, приложение может работать неправильно" :idea:


--------------------------------------------------------------------------------------------

Модифицированная прошивка для X700 Retro Style 3D by rost751

Тема для Symbian Pear wood by rost751

Share this post


Link to post
Share on other sites

То что имеем для телефонов Nokia S40 topnokia.ru конкретнее > здесь <


Не в пирогах счастье...

FAQ<<по Agere и >> Навигатор

Настройка internet-gprs для samsung

Для абонентов БайкалВестКом ICQ SMS

Share this post


Link to post
Share on other sites

Снег, на маем д900i при выборе третьего и четвертого пунктов уходит за границы массива.


И CEГOДHЯ ЖИBУ Я B ЗABTPAШHEM ДHE BЧEPAШHEГO

Share this post


Link to post
Share on other sites

В TFS C5212 рядом с main.ks есть файл policy.txt. В нем прописаны политики для довереных и недовереных java-приложений по действиям.

Изменение файла policy.txt позволит недовереным приложениям вести себя как довереным?

Или всетаки без подписывания приложений не обойтись?

policy.txt

Share this post


Link to post
Share on other sites

Ну вот, что называется , "приехали". С входом в "силу" новых платформ Qualcomm и обновленной java пришлось ( и наверное в будущем многим придется ) столкнутся с системой подписывания java приложений сертификатом . Подобное существовало давно на телефонах других производителей ( Nokia, SE ) и теперь , что очень плохо, добралось и до Samsung. Существуют несколько проблем: 1. Доступ к файловой системе и прочим системным функциям - если раньше на платформе свифт это легко отключалось в меню, теперь требуется подпись сертификатом для удаления запроса. 2. Про установку только файла jar уже известно - в 90% случаев получаем ошибку - " недостаточно памяти" 3. В jimm нет звуковых оповещений, есть подозрение что есть взаимосвязь. Пытался установить уже подписанные приложения для устройств других производителей - результат один - "недопустимый файл". В связи с этим, давайте делиться всей возможной информацией по этому поводу. З.Ы. выкладываю архив с реально подписанным приложением, может это поможет пролить свет на проблему. NE_samsung_S7220_locationapi_ru_local.zip

Фаил _policy в Qualcomm есть ,но он находиться в Rc1 и его надо распаковывать!

Насчет звуков в jimm-они вроде должны быть в wave формате!

Выложил policy с Qualcomm(u900) если кому надо!

Security.rar


Алё-алё Хопчик

Долблю Quallcomm)

Прошивка u900/u800

Установка Java на Qualcomm 1/2

Share this post


Link to post
Share on other sites

Может кто знает что за фаил такой systemfs/user/exe/java/property.txt ?

Может это список доверенных приложений, или ещё что ?

По поводу подписи:В u900 есть игра родная Checkers Deluxe там в jad файле есть какой то сертификат, и в мини опере 5

тоже есть, только толку с этого по моему нет!

Share this post


Link to post
Share on other sites

В файловой системе есть файл _main.ks. Как я понял здесь хранятся сертификаты для java браузера, а не для встроенного браузера (в прошивке есть свои сертификаты) . В теме "Все о Samsung Sgh-e200/e200b" говорилось о том, как его прочитать. А как его редактировать и нужно ли :-) ? Посмотрел прошивку B5722, там кроме _main.ks есть еще папка java_Cert.

Share this post


Link to post
Share on other sites
9 часов назад, bugbug сказал:

А как его редактировать и нужно ли

Зачем? Для прав на доступ к записи файлов, интернету и т.п. - мы просто в настройках разрешений сделали ведь патч для игнорирования сертификатов.

  • Thanks 1

Нужен какой-то патч на C3322i, C3322, C3592, B5722, S5610, E1080, E1081, и прочие Swift/Infineon ? Обращайтесь в ЛС или E.F2065@gmail.com

Share this post


Link to post
Share on other sites

Java-приложения у меня никогда не запрашивали сертификаты. Вопрос о сертификатах при входе в интернет через стандартный браузер. При входе https://google.com выскакивает сообщение: "Ошибка защиты: не имеющий доверия сертификат сервера". Файл _main.ks имеет отношение к этой проблеме?

Share this post


Link to post
Share on other sites
9 часов назад, bugbug сказал:

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

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

9 часов назад, bugbug сказал:

"Ошибка защиты: не имеющий доверия сертификат сервера". Файл _main.ks имеет отношение к этой проблеме?

В ks-файлах всё какие-то экзотические сертификаты - Samsung, Sun, и т.п., и находится это всё в java-папке. Думаю это всё имеет отношение только к запускам java, а не к браузеру.

Для браузера типовые корневые сертификаты другие ведь - Thawte, VeriSign и т.п. - и они обнаруживаются в дампе прошивки…

И подозреваю что дело может быть не только в устаревших сертификатах, а ещё может и форматы поменялись (например старые платформы не поддерживались в сертификатах *-маску или многоцелевые назначения, а сейчас у сайтов часто сертификаты с масками и т.п., плюс ещё новые форматы шифрования стали появляться - даже вон The Bat v8 недавно перестал работать с gmail из-за очередного нового формата в сертификатах или TLS).

  • Thanks 1

Нужен какой-то патч на C3322i, C3322, C3592, B5722, S5610, E1080, E1081, и прочие Swift/Infineon ? Обращайтесь в ЛС или E.F2065@gmail.com

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now



×
×
  • Create New...