О сетевых адресах и кросс-платформенности Java

Для любителей обсудить что круче Linux или Win32, Java или C#.

Модератор: Duncon

Аватара пользователя
AiK
Сообщения: 2274
Зарегистрирован: 13 фев 2004, 18:14
Откуда: СПб
Контактная информация:

03 июн 2005, 20:49

Или это не правильный подход
Угу. Во-первых, не на каждом компьютере есть сетевуха. Во-вторых, на мой взгляд это нарушение моего права на fair use - не вижу ни одной причины, почему я не могу использовать единожды купленную программу, скажем на стационарном компьютере и на собственном ноутбуке. В-третих, не вижу причины, по которой я не имею права менять сетевуху на своём компьютере, в-четвёртых - если я сделаю копию программы перед использованием, ты об этом никогда не узнаешь, в-пятых, java-программу вскрыть не тяжелее, чем perl-скрипт, ну и в шестых, ява по определению не имеет доступа к железу, ибо кросс-платформенная.
Даже самый дурацкий замысел можно воплотить мастерски
Аватара пользователя
Oscar
Сообщения: 958
Зарегистрирован: 29 май 2004, 13:44
Откуда: Мюнхен (рожден в Киеве)
Контактная информация:

03 июн 2005, 21:39

AiK,

что ж, большое спасибо!

Все аргументы, кроме пятого и шестого, действительно справедливые!

Программа для работы над проэктами по разработке новых продуктов (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");
getMacAdress РэгЭкспом выдирает Мак Адрес.

И так далее ... вот и вся кроссплатформенность
(а если учитывать то, что с вероятностью 90% программа будет использоваться исключительно под Виндовз ... )

По поводу первых четырёх пунктов.
Мы просто хотим хоть как-то предотвратить, чтобы фирма при помощи нашей программы за месяц (лицензия, например) паралельно делала два или более проэктов.
Нет сетевой карты? Мало вероятно. Кто сейчас из разработчиков не пользуется интернетом? ..
Если вылетит сетевуха - дадим новую лицезнию, но разве это так уж часто случается?
Чтобы додуматься сделать копию перед первым запуском - нужно знать КАК работает программа, а этого им никто не скажет ))

Использовать на ноутбуке и стационарном компьютере - именно это мы и хотим предотвратить, чтобы не было паралельной работы над разными проэктами.
Нарушение "fair use" ? Сорри, но в лицензионном соглашении будет стоять. что программу можно использовать только на одном компьютере, кто не согласен - не использует.

Что ж, информацию о том, как получить Мак-Адрес я уже нашел.
О том стоит это делать или нет - можно конечно спорить.
Если считаешь нужным - перекинь топик в Флейм.
Absurd
Сообщения: 1213
Зарегистрирован: 26 фев 2004, 13:24
Откуда: Pietari, Venäjä
Контактная информация:

03 июн 2005, 21:47

в-пятых, java-программу вскрыть не тяжелее, чем perl-скрипт
Ну например, Intellj IDEA обработали каким-то обфусктором в резальтате чего структура пакетов у названия классов изуродованы до неузнаваемости. Правда, обратной стороной такого подхода является невозможность использования reflection.
Кроме того, я не видел ни одного декомпилятора байт-кода, который бы нормально реверсил код, скомпилированный javac из JDK 1.4 (максимиум - 1.3)
2B OR NOT(2B) = FF
Аватара пользователя
Oscar
Сообщения: 958
Зарегистрирован: 29 май 2004, 13:44
Откуда: Мюнхен (рожден в Киеве)
Контактная информация:

03 июн 2005, 21:56

Absurd,

мы используем Jshrink
Kolinus
Сообщения: 449
Зарегистрирован: 23 авг 2004, 14:02
Откуда: Минск

06 июн 2005, 12:26

Раз уж пошел флейм :)
В дополнение к высказыванию Айк'а: почти на всех современных сетевухах МАК можно менять.
Так что ...
В SAD - все в SAD.
evgeny_d
Сообщения: 62
Зарегистрирован: 23 мар 2004, 08:31

06 июн 2005, 12:45

да уж... "кроссплатформенность" явы - это похоже только ярлык и ничего более... на C++ Builder тоже, в принципе можно писать так, чтобы и под винду компилировалось и под линуху (под QT, если я ничего не путаю).

Насчет возражений... интересно все-таки, привязка к МАК адресу - это единственное достойное средство от копирования?

И еще вопрос (раз уж пошла такая пьянка...).
to Kolinus: А как его менять? На уровне BIOS или софтом тоже можно?
Kolinus
Сообщения: 449
Зарегистрирован: 23 авг 2004, 14:02
Откуда: Минск

06 июн 2005, 13:28

Если встроенная сетевуха то в бивесе
если отдельная - то из винды либо софтом специательным
В SAD - все в SAD.
Absurd
Сообщения: 1213
Зарегистрирован: 26 фев 2004, 13:24
Откуда: Pietari, Venäjä
Контактная информация:

06 июн 2005, 13:56

да уж... "кроссплатформенность" явы - это похоже только ярлык и ничего более... на C++ Builder тоже, в принципе можно писать так, чтобы и под винду компилировалось и под линуху (под QT, если я ничего не путаю).
Текущий проект мы пишем и отлаживаем на виндах, хотя работает он под сорярой на Sparс'ах. Некоторые библиотеки написаны индусами через жопу. Но ничего, и они идентично работают и под виндой и под солярой.

На С++ потребуется гораздо меньше усилий для раздельного написания нескольких вариантов программы для разных платформ, чем для написания одной кроссплатформенной программы.
В дополнение к высказыванию Айк'а: почти на всех современных сетевухах МАК можно менять
Микрософт тоже полагается на уникальность MAC адресов для генерации GUIDов и для активации приложений.
Кроме того, а не понимаю как могут одном сегменте сети сосуществовать два компьютера с одним MAC-адресом. Как их ARP будет различать? Ставить несколько сегментов сети ради увеличения количества инсталляций программы я бы ни стал.
2B OR NOT(2B) = FF
Аватара пользователя
AiK
Сообщения: 2274
Зарегистрирован: 13 фев 2004, 18:14
Откуда: СПб
Контактная информация:

06 июн 2005, 16:01

Флейм так флейм :)
Несколько лет назад ради интереса отвязал Intellj IDEA от лицензии. Потом уже просили :) Обфускатор ну ни разу не лечит, если аппликуха просит ввести код, то дальше всё раскручивается на раз. Если нет возможности декомпильнуть - есть редакторы байткодов. В нескольких версиях подряд вся защита снималась изменением в нужном месте условия с равно на неравно. Потом мне это надоело, но судя по отзывам народ и без меня прекрасно справляется...

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

Что касается двух одинаковых мак-адресов для разных компьютеров, то похоже про NAT все забыли. До NAT'а они разные, после - один на всех :)
Даже самый дурацкий замысел можно воплотить мастерски
evgeny_d
Сообщения: 62
Зарегистрирован: 23 мар 2004, 08:31

06 июн 2005, 17:25

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