Угу. Во-первых, не на каждом компьютере есть сетевуха. Во-вторых, на мой взгляд это нарушение моего права на fair use - не вижу ни одной причины, почему я не могу использовать единожды купленную программу, скажем на стационарном компьютере и на собственном ноутбуке. В-третих, не вижу причины, по которой я не имею права менять сетевуху на своём компьютере, в-четвёртых - если я сделаю копию программы перед использованием, ты об этом никогда не узнаешь, в-пятых, java-программу вскрыть не тяжелее, чем perl-скрипт, ну и в шестых, ява по определению не имеет доступа к железу, ибо кросс-платформенная.Или это не правильный подход
О сетевых адресах и кросс-платформенности Java
Модератор: Duncon
Даже самый дурацкий замысел можно воплотить мастерски
- Oscar
- Сообщения: 963
- Зарегистрирован: 29 май 2004, 13:44
- Откуда: Мюнхен (рожден в Киеве)
- Контактная информация:
AiK,
что ж, большое спасибо!
Все аргументы, кроме пятого и шестого, действительно справедливые!
Программа для работы над проэктами по разработке новых продуктов (Developing Tool, так сказать).
Почему пятый - нет?
Программа будет использоваться на солидных фирмах,
и вероятность того, что на БМВ себе позволят ломать код - весьма ничтожна.
Почему шестой - нет?
getMacAdress РэгЭкспом выдирает Мак Адрес.
И так далее ... вот и вся кроссплатформенность
(а если учитывать то, что с вероятностью 90% программа будет использоваться исключительно под Виндовз ... )
По поводу первых четырёх пунктов.
Мы просто хотим хоть как-то предотвратить, чтобы фирма при помощи нашей программы за месяц (лицензия, например) паралельно делала два или более проэктов.
Нет сетевой карты? Мало вероятно. Кто сейчас из разработчиков не пользуется интернетом? ..
Если вылетит сетевуха - дадим новую лицезнию, но разве это так уж часто случается?
Чтобы додуматься сделать копию перед первым запуском - нужно знать КАК работает программа, а этого им никто не скажет ))
Использовать на ноутбуке и стационарном компьютере - именно это мы и хотим предотвратить, чтобы не было паралельной работы над разными проэктами.
Нарушение "fair use" ? Сорри, но в лицензионном соглашении будет стоять. что программу можно использовать только на одном компьютере, кто не согласен - не использует.
Что ж, информацию о том, как получить Мак-Адрес я уже нашел.
О том стоит это делать или нет - можно конечно спорить.
Если считаешь нужным - перекинь топик в Флейм.
что ж, большое спасибо!
Все аргументы, кроме пятого и шестого, действительно справедливые!
Программа для работы над проэктами по разработке новых продуктов (Developing Tool, так сказать).
Почему пятый - нет?
Программа будет использоваться на солидных фирмах,
и вероятность того, что на БМВ себе позволят ломать код - весьма ничтожна.
Почему шестой - нет?
Код: Выделить всё
String os = System.getProperty("os.name");
//Windows
if (os.startsWith("Windows")) return getMacAddress("cmd /c ipconfig /all");
//Linux | SunOS
if (os.equals("Linux") || os.equals("SunOS")) return getMacAddress("/sbin/ifconfig -a");
И так далее ... вот и вся кроссплатформенность
(а если учитывать то, что с вероятностью 90% программа будет использоваться исключительно под Виндовз ... )
По поводу первых четырёх пунктов.
Мы просто хотим хоть как-то предотвратить, чтобы фирма при помощи нашей программы за месяц (лицензия, например) паралельно делала два или более проэктов.
Нет сетевой карты? Мало вероятно. Кто сейчас из разработчиков не пользуется интернетом? ..
Если вылетит сетевуха - дадим новую лицезнию, но разве это так уж часто случается?
Чтобы додуматься сделать копию перед первым запуском - нужно знать КАК работает программа, а этого им никто не скажет ))
Использовать на ноутбуке и стационарном компьютере - именно это мы и хотим предотвратить, чтобы не было паралельной работы над разными проэктами.
Нарушение "fair use" ? Сорри, но в лицензионном соглашении будет стоять. что программу можно использовать только на одном компьютере, кто не согласен - не использует.
Что ж, информацию о том, как получить Мак-Адрес я уже нашел.
О том стоит это делать или нет - можно конечно спорить.
Если считаешь нужным - перекинь топик в Флейм.
-
- Сообщения: 1228
- Зарегистрирован: 26 фев 2004, 13:24
- Откуда: Pietari, Venäjä
- Контактная информация:
Ну например, Intellj IDEA обработали каким-то обфусктором в резальтате чего структура пакетов у названия классов изуродованы до неузнаваемости. Правда, обратной стороной такого подхода является невозможность использования reflection.в-пятых, java-программу вскрыть не тяжелее, чем perl-скрипт
Кроме того, я не видел ни одного декомпилятора байт-кода, который бы нормально реверсил код, скомпилированный javac из JDK 1.4 (максимиум - 1.3)
2B OR NOT(2B) = FF
Раз уж пошел флейм 
В дополнение к высказыванию Айк'а: почти на всех современных сетевухах МАК можно менять.
Так что ...

В дополнение к высказыванию Айк'а: почти на всех современных сетевухах МАК можно менять.
Так что ...
В SAD - все в SAD.
да уж... "кроссплатформенность" явы - это похоже только ярлык и ничего более... на C++ Builder тоже, в принципе можно писать так, чтобы и под винду компилировалось и под линуху (под QT, если я ничего не путаю).
Насчет возражений... интересно все-таки, привязка к МАК адресу - это единственное достойное средство от копирования?
И еще вопрос (раз уж пошла такая пьянка...).
to Kolinus: А как его менять? На уровне BIOS или софтом тоже можно?
Насчет возражений... интересно все-таки, привязка к МАК адресу - это единственное достойное средство от копирования?
И еще вопрос (раз уж пошла такая пьянка...).
to Kolinus: А как его менять? На уровне BIOS или софтом тоже можно?
Если встроенная сетевуха то в бивесе
если отдельная - то из винды либо софтом специательным
если отдельная - то из винды либо софтом специательным
В SAD - все в SAD.
-
- Сообщения: 1228
- Зарегистрирован: 26 фев 2004, 13:24
- Откуда: Pietari, Venäjä
- Контактная информация:
Текущий проект мы пишем и отлаживаем на виндах, хотя работает он под сорярой на Sparс'ах. Некоторые библиотеки написаны индусами через жопу. Но ничего, и они идентично работают и под виндой и под солярой.да уж... "кроссплатформенность" явы - это похоже только ярлык и ничего более... на C++ Builder тоже, в принципе можно писать так, чтобы и под винду компилировалось и под линуху (под QT, если я ничего не путаю).
На С++ потребуется гораздо меньше усилий для раздельного написания нескольких вариантов программы для разных платформ, чем для написания одной кроссплатформенной программы.
Микрософт тоже полагается на уникальность MAC адресов для генерации GUIDов и для активации приложений.В дополнение к высказыванию Айк'а: почти на всех современных сетевухах МАК можно менять
Кроме того, а не понимаю как могут одном сегменте сети сосуществовать два компьютера с одним MAC-адресом. Как их ARP будет различать? Ставить несколько сегментов сети ради увеличения количества инсталляций программы я бы ни стал.
2B OR NOT(2B) = FF
Флейм так флейм 
Несколько лет назад ради интереса отвязал Intellj IDEA от лицензии. Потом уже просили
Обфускатор ну ни разу не лечит, если аппликуха просит ввести код, то дальше всё раскручивается на раз. Если нет возможности декомпильнуть - есть редакторы байткодов. В нескольких версиях подряд вся защита снималась изменением в нужном месте условия с равно на неравно. Потом мне это надоело, но судя по отзывам народ и без меня прекрасно справляется...
Код меня улыбнул. У меня 2 сетевухи, и я в и-нет выхожу со второй, а регексп скорее всего первый МАК адрес схавает.
Что касается двух одинаковых мак-адресов для разных компьютеров, то похоже про NAT все забыли. До NAT'а они разные, после - один на всех

Несколько лет назад ради интереса отвязал Intellj IDEA от лицензии. Потом уже просили

Код меня улыбнул. У меня 2 сетевухи, и я в и-нет выхожу со второй, а регексп скорее всего первый МАК адрес схавает.
Что касается двух одинаковых мак-адресов для разных компьютеров, то похоже про NAT все забыли. До NAT'а они разные, после - один на всех

Даже самый дурацкий замысел можно воплотить мастерски
И все-таки я нифига не понял.
Как в пределах одной подсети могут быть 2 одинаковых МАК-адреса и причем здесь NAT?
Как в пределах одной подсети могут быть 2 одинаковых МАК-адреса и причем здесь NAT?