В текущем я использую ethernet mac address
для генерации лицензии для своей программы, но иногда есть более одной сетевой карты (беспроводной, модем и т. д.). Поэтому я хотел бы использовать что-то еще: возможно, есть идентификатор материнской платы или что-то еще?!
Мне нужно получить этот идентификатор с помощью Python ...
Другие серийные номера (через dmidecode) кажутся мне несовместимыми. [... d0]
Я бы сказал, если бы вы хотели это сделать, вы просто используете eth0. Почти каждый компьютер имеет по крайней мере один Ethernet-порт и всегда будет отображать MAC-адрес. Однако есть некоторые проблемы:
MAC-адреса могут быть изменены. Без труда. MAC-адреса дублируются. Учитывая, что половина адреса - это идентификатор поставщика / модели, многие поставщики получают только несколько миллионов уникальных ключей и явно делают много миллионов других устройств - так что в дикой природе есть дубликаты. На некоторых устройствах нет Ethernet-порта, он отключен, или это только время от времени. Это проблема, если вы пытаетесь динамически изменять, с какого порта вы связываетесь. Если вы нажмете wlan0, потому что это единственный доступный в то время, а затем eth0 появляется в очереди при следующем проверке, вы можете раздражать клиента.Вы можете сделать все возможное, чтобы получить информацию об оборудовании (имя материнской платы, идентификатор процессора, количество процессоров, имя графика, количество / конфигурацию оперативной памяти и т. д.).
Просто убедитесь, что вы не глупы, о том, как клиенты оплачивают процесс повторной аутентификации. Как только вы сделаете этот процесс сложнее, чем просто пиратствовать, вы проиграли игру. О, и не забывайте, что вам нужно будет рекламировать тот факт, что вы собираете и сохраняете этот идентифицируемый фронт, в идеале перед покупкой.
Другие серийные номера (через dmidecode
) кажутся мне несовместимыми.
Я бы сказал, если бы вы хотели это сделать, вы просто используете eth0
. Почти каждый компьютер имеет по крайней мере один Ethernet-порт и всегда будет отображать MAC-адрес. Однако есть некоторые проблемы:
wlan0
, потому что это единственный доступный в то время, а затем eth0
появляется в очереди при следующем проверке, вы можете раздражать клиента. Вы могли бы сделать
Просто убедитесь, что вы не глупы в отношении того, как платят клиенты, и вы можете получить информацию об аппаратной информации (имя материнской платы, идентификатор процессора, количество процессоров, имя графика, количество / конфигурацию оперативной памяти и т. д.). через процесс повторной аутентификации. Как только вы сделаете этот процесс сложнее, чем просто пиратствовать, вы проиграли игру. О, и не забывайте, что вам нужно будет рекламировать тот факт, что вы собираете и сохраняете этот идентифицируемый фронт, в идеале перед покупкой.
Как сказал наш самозванный доброжелательный диктатор на всю жизнь: Примечание для владельцев контента: DRM не работает.
По сути, нет надежного способа делать DRM (включая используемую вами технологию лицензионного ключа). Вместо этого это может быть гораздо лучший подход, чтобы обеспечить простой способ купить продукт по разумной цене. Это, вероятно, приведет к гораздо более простой базе кода для вас, более простой процесс распространения, процесс обновления и, в конечном счете, более счастливые пользователи.
Хорошим примером является Self-Назначенный доброжелательный диктатор для жизни : вы можете купить игру онлайн и загрузить с этого момента столько компьютеров, сколько вам нужно и архитектуры , И у них есть много счастливых пользователей с этим решением.
Еще один пример - магазин Ubuntu One Music (который я люблю), и где его так легко купить и синхронизировать музыку, что у меня никогда не возникало ощущение, что было бы легче загрузить песню из незаконного источник.
Я думаю, вы должны задать этот вопрос на форуме gamedev.net. Я уверен, что кто-то там поможет вам. :)
А как насчет создания программного ключа в зависимости от конфигурации оборудования? Например:
, если у вас есть nVidia VGA, тогда добавьте к ключу 'x', если ATI 'y' Если har drive является HDD, тогда добавьте 'h'
и так далее возможно, создать довольно длинную буквенную или цифровую комбинацию, которая может быть использована в качестве ключа.
Я думаю, вы должны задать этот вопрос на форуме gamedev.net. Я уверен, что кто-то там поможет вам. :)
А как насчет создания программного ключа в зависимости от конфигурации оборудования? Например:
, если у вас есть nVidia VGA, тогда добавьте к ключу 'x', если ATI 'y' Если har drive является HDD, тогда добавьте 'h'
и так далее возможно, создать довольно длинную комбинацию букв или цифр, которая могла бы использоваться в качестве ключа.
Я думаю, вы должны задать этот вопрос на форуме gamedev.net. Я уверен, что кто-то там поможет вам. :)
А как насчет создания программного ключа в зависимости от конфигурации оборудования? Например:
, если у вас есть nVidia VGA, тогда добавьте к ключу 'x', если ATI 'y' Если har drive является HDD, тогда добавьте 'h'
и так далее возможно, создать довольно длинную комбинацию букв или цифр, которая могла бы использоваться в качестве ключа.
Я думаю, вы должны задать этот вопрос на форуме gamedev.net. Я уверен, что кто-то там поможет вам. :)
А как насчет создания программного ключа в зависимости от конфигурации оборудования? Например:
, если у вас есть nVidia VGA, тогда добавьте к ключу 'x', если ATI 'y' Если har drive является HDD, тогда добавьте 'h'
и так далее возможно, создать довольно длинную комбинацию букв или цифр, которая могла бы использоваться в качестве ключа.