| Предыдущая тема :: Следующая тема |
| Автор |
Сообщение |
Am1r Новичок
Зарегистрирован: 18.12.2008 Сообщения: 16
|
Добавлено: Фев 04, 2010 23:17 Заголовок сообщения: Вызвать метод из jar-файла |
|
|
Привет всем.
Допустим у меня есть программа написанная на Java. Т.е. jar-файл.
Ещё у меня есть каталог с jar/class файлами.
Я просматриваю каталог на наличие этих файлов, и если находится файл с нужным именем, то я должен вызвать из него какой нибудь "метод".
Вопрос: "Как вызвать метод из jar/class файла, если имя метода заранее будет известно"
jar или class значение не имеет, приму любой из способов. |
|
| Вернуться к началу |
|
 |
psix Новичок
Зарегистрирован: 23.01.2008 Сообщения: 15
|
Добавлено: Фев 04, 2010 23:35 Заголовок сообщения: RE: Вызвать метод из jar-файла |
|
|
Вам нужно почитать про класс-лоадеры (java.lang.ClassLoader) и рефлекшн (java.lang.reflect.*).
Создаете свой класс-лоадер, который будет загружать ваш класс. Получаете ссылку на объект типа Class, через него получаете список методов, выбираете нужный и вызываете. |
|
| Вернуться к началу |
|
 |
Am1r Новичок
Зарегистрирован: 18.12.2008 Сообщения: 16
|
|
| Вернуться к началу |
|
 |
RLC Новичок

Зарегистрирован: 07.10.2009 Сообщения: 88 Откуда: Санкт-Петербург
|
Добавлено: Фев 06, 2010 19:03 Заголовок сообщения: RE: Вызвать метод из jar-файла |
|
|
есть вопрос по теме: есть некая прога и очень не хочется что бы кто либо смог бы подключится к ней и узнать логины и пароли пользователей.
Как мне сделать чт бы такого не случилось.
Или в какую сторону мне копать? _________________ Чудеса в моей жизни я делаю своими руками! |
|
| Вернуться к началу |
|
 |
Oxygen Новичок

Зарегистрирован: 06.12.2009 Сообщения: 56 Откуда: Воронеж
|
Добавлено: Фев 06, 2010 19:47 Заголовок сообщения: Re: RE: Вызвать метод из jar-файла |
|
|
| RLC писал(а): |
есть вопрос по теме: есть некая прога и очень не хочется что бы кто либо смог бы подключится к ней и узнать логины и пароли пользователей.
Как мне сделать чт бы такого не случилось.
Или в какую сторону мне копать? |
Эта прога - апплет, отдельный JAR или приложение Java Web Start? Я решил, что вы о втором.
Вам нужно копать в сторону шифрования. Всё шифрование и средства безопасности в пакете java.security; Не могу прям сейчас написать код, но думаю, что пароли следует хранить так:
1. Снять с пароля отпечетов по алгоритму MD5 и сохранить отпечаток.
2. Потом, когда пользователь введёт свой пароль, сделать то же самое и сверить с сохранённым отпечатком.
Фокус в том, что даже если кто-то выкраст отпечаток, пароль он всё равно не узнает (если конечно он не живёт вечно) _________________
Компьютер - это почти человек. Единственное серьезное различие - ему не свойственно сваливать свои ошибки на другой компьютер. |
|
| Вернуться к началу |
|
 |
RLC Новичок

Зарегистрирован: 07.10.2009 Сообщения: 88 Откуда: Санкт-Петербург
|
Добавлено: Фев 06, 2010 20:41 Заголовок сообщения: RE: Вызвать метод из jar-файла |
|
|
нет. я про десктоп приложение. Я уже сделал прогу которая шифрует пароли от каких либо сайтов программ и пр. не хотелось бы мне что бы мой jar кто нить умный добавил в свой classpath и приспокойно считал бы все данные и через Reflection тоже... как поставить заглушку? _________________ Чудеса в моей жизни я делаю своими руками! |
|
| Вернуться к началу |
|
 |
TimReset Постоянный посетитель
Зарегистрирован: 19.02.2009 Сообщения: 540
|
Добавлено: Фев 08, 2010 12:34 Заголовок сообщения: RE: Вызвать метод из jar-файла |
|
|
Воспользоваться обфускатором? _________________ вообще не понял вопрос, но постараюсь ответить |
|
| Вернуться к началу |
|
 |
Am1r Новичок
Зарегистрирован: 18.12.2008 Сообщения: 16
|
Добавлено: Фев 08, 2010 14:12 Заголовок сообщения: RE: Вызвать метод из jar-файла |
|
|
А если использовать пароль к твоей проге, как ключ к шифрованию.
Даже если кто нибудь получить доступ к методам и классам твоей проги, без ключа (пароля) все равно не сможет расшифровать данные.
А сам пароль от проги хранить в md5. |
|
| Вернуться к началу |
|
 |
RLC Новичок

Зарегистрирован: 07.10.2009 Сообщения: 88 Откуда: Санкт-Петербург
|
Добавлено: Фев 08, 2010 19:04 Заголовок сообщения: RE: Вызвать метод из jar-файла |
|
|
в голове  _________________ Чудеса в моей жизни я делаю своими руками! |
|
| Вернуться к началу |
|
 |
RLC Новичок

Зарегистрирован: 07.10.2009 Сообщения: 88 Откуда: Санкт-Петербург
|
Добавлено: Фев 08, 2010 19:08 Заголовок сообщения: RE: Вызвать метод из jar-файла |
|
|
обфускатор-это дело!
Дело в том что есть некоторые статические классы и публичные переменные которые легко доступны и при желании можно легко получит часть пароля. тк часть зашита в прогу. + получить количество итераций шифрования и алгоритм. Ну и даже текст в исходном виде. поэтому обфускация!!!! и ещё раз обфускация!!! _________________ Чудеса в моей жизни я делаю своими руками! |
|
| Вернуться к началу |
|
 |
Am1r Новичок
Зарегистрирован: 18.12.2008 Сообщения: 16
|
Добавлено: Фев 08, 2010 21:44 Заголовок сообщения: Re: RE: Вызвать метод из jar-файла |
|
|
| RLC писал(а): |
в голове  |
не, с чем то ведь сравнивать придется. Вроде как для нескольких пользователей. |
|
| Вернуться к началу |
|
 |
Am1r Новичок
Зарегистрирован: 18.12.2008 Сообщения: 16
|
Добавлено: Фев 08, 2010 22:09 Заголовок сообщения: Re: RE: Вызвать метод из jar-файла |
|
|
| RLC писал(а): |
обфускатор-это дело!
Дело в том что есть некоторые статические классы и публичные переменные которые легко доступны и при желании можно легко получит часть пароля. тк часть зашита в прогу. + получить количество итераций шифрования и алгоритм. Ну и даже текст в исходном виде. поэтому обфускация!!!! и ещё раз обфускация!!! |
Но я все равно не понимаю. А какой смысл в обфускации?!
Доступ к памяти процесса, сторонний процесс получить не может (или я не прав?).
А через Reflection, как я понимаю, можно получить только шаблон класса, а не указатель на него. |
|
| Вернуться к началу |
|
 |
Shreder Новичок

Зарегистрирован: 07.05.2008 Сообщения: 101 Откуда: Kharkov, Ukraine
|
Добавлено: Фев 24, 2010 18:56 Заголовок сообщения: RE: Вызвать метод из jar-файла |
|
|
ProGuard подойдет для вышеописаного. Сразу оговорюсь что офлускация часто добавляет больше проблем чем выгоды. Покрайней мере пока нет плугинов к IDE проводящих рефакторинг и добавление ноых пакетов в конфигурационный файла обфускатора вместе с кодом.
Ктому-же сборка на разных JVM-ах (не сановских, например аплл) потребует модификации сборочного скрипта.
Сам-же протект - иллюзорен, при желании и приналичии jad программа всеравно взламывается.
Можно попытатся использовать exe4j тогда можно будет обойтись без обфускации. [/url] |
|
| Вернуться к началу |
|
 |
|