Форум программистов, компьютерный форум, киберфорум
Visual Basic .NET
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск  
 
 
Рейтинг 4.71/21: Рейтинг темы: голосов - 21, средняя оценка - 4.71
0 / 0 / 0
Регистрация: 04.03.2015
Сообщений: 25

Защита программы от копирования

04.03.2015, 21:09. Показов 4738. Ответов 36
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Добрый админ попросил создать новую тему, вот собственно и создал )))))

Ладно, дело не в этом. Вопрос у меня к знающим пользователям.
Как можно или чем можно защитить программу от копирования.
Что бы она привязывалась только к одному компу.

Или может у кого туториалы есть, чем вы сами учились защиты писать?
Буду благодарен.
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
04.03.2015, 21:09
Ответы с готовыми решениями:

Сохранение массива в файл, защита программы от пиратского копирования
Доброго времени суток! Два вопроса: 1) Есть массив 15 групп по 14 параметров: Public Class Param Dim NameSet(15) As...

Простейшая защита программы: где хранить число срабатываний программы?
День добрый! Написал одну небольшую программу, которая может быть интересна специализированной тусовке. Хочу распространять ее бесплатно,...

ЗАЩИТА информации и программы от копирования
У меня такой вопрос: Кто-нибудь занимался ЗАЩИТОЙ программы -> данные в базе данных, сама программа на VB и нужно как-то отсекать...

36
0 / 0 / 0
Регистрация: 04.03.2015
Сообщений: 25
05.03.2015, 11:37  [ТС]
Студворк — интернет-сервис помощи студентам
Оке. Спасибо тебе, буду разбираться ))

Добавлено через 10 часов 11 минут
исправил проблему, изменив код.

VB.NET
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
Dim myPassword As String
        Dim myEnter As String
        myPassword = "1234"
        Do
            myEnter = InputBox("Введите пароль.")
            If myEnter <> myPassword Then
                MsgBox("Введён неправильный пароль.", vbExclamation)
                End
            Else
                Exit Do
 
            End If
 
        Loop
 
    End Sub
Только это врядли защищает программу.
Потому что он может перекинуть кому нибудь установачный файл и сказать пароль.
Все, он тоже получит доступ.

Добавлено через 1 час 36 минут
Может кто то слышал по поводу : электронный ключ и обфускация для защиты ?
0
20 / 0 / 0
Регистрация: 03.03.2015
Сообщений: 15
05.03.2015, 13:58
Есть вариант использовать заводской номер флешки(она соответственно будет ключом), сам не пробовал
Привязка по мак адресу сетевой карты (точно используют).

Реализовывал по имени базы данных. Но в том случае была дополнительная защита. Программа с которой поставлялась БД уже была защищена hasp ключом.
0
1 / 1 / 0
Регистрация: 01.06.2019
Сообщений: 26
23.10.2019, 13:14
Озадачился защитой и решил применить защиту по железу.
Что именно определяет ПК ? Для себя решил что ПК , это во первых материнка. Ведь ЦП, память, диски и прочее можно менять в зависимости от материнки.
Вот и хочу выдернуть данные Bios, вернее выдернул. Но проблема в пользователе. Исли ты не админ, система ругается.
Как обойти это ?
0
 Аватар для AlexNorton
17 / 17 / 6
Регистрация: 30.04.2016
Сообщений: 227
23.10.2019, 14:22
Устанавливать ПО в ProgramData или в локальный каталог Юзера.
Работая из этих директорий прога более менее вольна в своих действиях (в пределах разумного конечно).
Как минимум такой код спокойно исполняется:
VB.NET
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
Try
    '=================ОПРЕДЕЛЯЕМ ИМЯ КОМПЬЮТЕРА=====================================================
    vPicuk = My.Computer.Name.ToString
    '=================ОПРЕДЕЛЯЕМ ИМЯ КОМПЬЮТЕРА=====================================================
    '=================ОПРЕДЕЛЯЕМ ИМЯ ПОЛЬЗОВАТЕЛЯ===================================================
    vUseData = My.User.Name.ToString
    '=================ОПРЕДЕЛЯЕМ ИМЯ ПОЛЬЗОВАТЕЛЯ===================================================
    '=================ОПРЕДЕЛЯЕМ СЕРИЙНИК МАТЕРИНСКОЙ ПЛАТЫ=========================================
    Dim MOS As New ManagementObjectSearcher("SELECT * FROM Win32_BaseBoard")
    For Each getserial As ManagementObject In MOS.[Get]()
        vMbSrl = getserial("SerialNumber").ToString()
    Next
    '=================ОПРЕДЕЛЯЕМ СЕРИЙНИК МАТЕРИНСКОЙ ПЛАТЫ=========================================
 
Catch
    vMbSrl = "nodetect"
 
    Using FileLogger As New StreamWriter(LogFilePth, True, System.Text.Encoding.UTF8)
        FileLogger.WriteLine(TimeString & "  Критическая ошибка контроля лицензии." & vbNewLine & _
                             TimeString & "  Требуется перезапуск программы...")
    End Using
End Try
1
 Аватар для AlexNorton
17 / 17 / 6
Регистрация: 30.04.2016
Сообщений: 227
23.10.2019, 14:38
SELECT * FROM Win32_BaseBoard в поиск вбиваешь и мульен информации тебе дают.
=============
И далеко не факт, что этот вариант самостоятельно позволит защитить ПО.
Сейчас китайское гуано везде и всюду. И сетевуха в смартфоне с динамическим МАК-адресом - меньшее из всех зол.
Продают СЕРВЕРА(!) на линуксах с «живыми»(!), @#$%#@!, сетевухами!
А уж о материнках с серийником типа «0-000-000-00» я вообще молчу )))))))).

Как думаешь, на приведенном скрине сколько удачно определенных мамушек? )))))))
Миниатюры
Защита программы от копирования  
0
1 / 1 / 0
Регистрация: 01.06.2019
Сообщений: 26
23.10.2019, 15:23
Какие тогда надежные защиты ?
0
 Аватар для AlexNorton
17 / 17 / 6
Регистрация: 30.04.2016
Сообщений: 227
23.10.2019, 15:24
Еще немного лирики )))

По размещению софта подробно расписано здесь:
Где следует размещать файлы программы, чтобы не требовались права Администратора

По целесообразности защиты, филосовско-прикладные измышления здесь:
Марафон по безопасности
0
1 / 1 / 0
Регистрация: 01.06.2019
Сообщений: 26
23.10.2019, 15:25
Спасибо, почитаем.....
0
 Аватар для AlexNorton
17 / 17 / 6
Регистрация: 30.04.2016
Сообщений: 227
23.10.2019, 15:40
Цитата Сообщение от gps38region Посмотреть сообщение
Какие тогда надежные защиты ?
1. Организационные ))): Писать качественно, полезно и не сходить с ума с ценниками. Генерация экзешников подушевная (каждому клиенту - свой экземпляр). Вводить контроль инсталляций, и тд. и тп.
2. софтовые: шифрование, мучение, кручение )))
3. обфускация.

Но все это от лукавого, ибо, как сказали в самом начале - «сломают все».
Читал, одну игру ломали больше тучи лет. Сломали. Праздновали все планетой )))
0
1 / 1 / 0
Регистрация: 01.06.2019
Сообщений: 26
23.10.2019, 15:44
Есть прога gpsMapEdit , вот ломанной не видел ни одной...
А за советы спасибо, буду изучать и учиться.
0
2296 / 1612 / 400
Регистрация: 26.06.2017
Сообщений: 4,774
Записей в блоге: 1
23.10.2019, 16:12
Вставлю свои 5 копеек. Зачем запрещать устанавливать, запускать, использовать и т.д. Лучше для нелегальных копий, через некоторый промежуток времени использования, отключать какой нибудь функционал. Пользователь поюзает, но поймёт, что постоянно перезапускать (переустанавливать и т.п.) приложение сильно его нервирует и, если ему софтина понравиться, купит её. В итоге все довольны.
0
1 / 1 / 0
Регистрация: 01.06.2019
Сообщений: 26
23.10.2019, 16:24
Не совсем согласен, мой софт с первого использования ценен. Но ждать пока кому-то надоест......

Добавлено через 8 минут
Склоняюсь привязки к материнке и последующими проверками на трассеры и прочее.
Пользоваться будут прогой редко, но метко.
0
1 / 1 / 0
Регистрация: 01.06.2019
Сообщений: 26
24.10.2019, 06:11
Как такой вариант ?

1. при первом запуске проги проверить наличие в "нном месте" наличие параметра реестра.
2. Сгенерировать ключ
3. Прописать ключ в реестр и выдать ключ пользователю для регистрации.
4. Пользователь передает ключ и получает файл разблокировки.
5. При наличии файла разблокировки функционал программы начинает работать на 100%

Вопрос, какие участки реестра доступны всем пользователям ПК ?
0
 Аватар для AlexNorton
17 / 17 / 6
Регистрация: 30.04.2016
Сообщений: 227
24.10.2019, 07:38
Адобовская манера, менять ключ на другой ключ.
Ломают. Фотошоп у каждого школяра нынче стоит ))) Нужно же на чем то фотки обрезать )))))))))

Просто из программы уберут кусок кода, который просит ключ и все на том.
0
1 / 1 / 0
Регистрация: 01.06.2019
Сообщений: 26
24.10.2019, 07:47
Категория рыбаков, с компом на ВЫ и то с внуками и детьми.
По 2 часа им объясняешь как на SD в определенную папку файл закачать который на мыло пришел.
Но не спорю, официалы уже интересовались. Так что тяжелую артиллерию могут подключить.
Контролировать md5 файла ?
Абфукцию или как там ее называют ?
Понимаю , что к любому замку есть отмычка. Главное чтоб сильно устали ломать и долго....
0
259 / 200 / 49
Регистрация: 18.12.2015
Сообщений: 416
24.10.2019, 16:53
Цитата Сообщение от gps38region Посмотреть сообщение
Главное чтоб сильно устали ломать и долго....
1. Необходимо наличие интернет соединения
2. Перенос важных функций и процедур с приложегния на web api(соответственно, нужен будет хостинг)
3. Приложение формирует ключи\хэши как вам угодно, передает по web api, на стороне сервера идет проверка, если все ок - там же исполняются функции\процедуры и возвращается результат, который парсится и визуально отображается.

При грамотном исполнении можно и баны раздавать.
0
1 / 1 / 0
Регистрация: 01.06.2019
Сообщений: 26
24.10.2019, 16:57
1. Интернет не у всех
2. С хостингом проблемы
3. Интернет не у всех
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
24.10.2019, 16:57

ЗАЩИТА информации и программы от копирования
У меня такой вопрос: Кто-нибудь занимался ЗАЩИТОЙ программы -&gt; данные в базе данных, сама программа на VB и нужно как-то отсекать...

Защита программы от несанкционированного копирования
Итак тема говорит сама за себя. Необходимо защитить прогу таким образом, чтобы её нельзя было раскопировать на несколько компов. Методы...

Защита программы от НСД. Защита путем шифрования части программы на флеш-диске или флешке
Написать программу на любом известном Вам языке программирования. Программа должна выполнять функцию защиты программы от НСД. Защита...

Защита от копирования
Добрый день, кто-нибудь реализовывал &quot;защиту от копирования&quot; вэб приложения? Т.е есть у нас какое-то приложение, по типу базы продаж,...

Защита от копирования?
Подскажите пожалуйста, как можно сделать так, что бы было невозможно скопировать статьи с сайта. То есть что бы они или вообще не...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
37
Ответ Создать тему
Новые блоги и статьи
Саморегулирующийся социальный контракт для сервера cross-section.
Hrethgir 14.08.2026
С кодом конечно таких глубоких размышлений пока не было, впрочем я уже привык к алгоритмизации. Суть предмета записи: снова в диалоге с нейросетью (я взял пока себе ник для учётки админа - Rector). . . .
Часы электронные
Uhbif79 12.08.2026
Выкладываю программу часов. Программа позволяет: 1. Использовать системное время и дату, 2. Есть возможность вводить время и дату вручную. 3. Реализованы 2 будильника: начало и конец рабочего дня. . . .
Часы с будильником на основе класса QLCDNumber
Uhbif79 12.08.2026
Всем добрый день, выкладываю программу часов с будильником на основе класса QLCDNumber. Здесь я пробовал самостоятельно создавал классы, впервые столкнулся с видимостью переменной одного класса из. . .
Установка MinGW GCC 16.2 и CMake
8Observer8 10.08.2026
VK Видео: https:/ / vkvideo. ru/ video-240781534_456239017 YouTube: eY5-5PyI9NM Текстовая версия
Неделя из жизни имитационной модели склада: мои кривые руки растут, откуда надо
anaschu 10.08.2026
Неделя из жизни имитационной модели склада: как я почти написал неправильную логику и что с этим делать Работаю сейчас над учебно-рабочим проектом: строю в AnyLogic имитационную модель процессов. . .
Калькулятор для расчета родства
russiannick 07.08.2026
1. Задача: Создать калькулятор для расчета родства. Родственных связей существует 8 ступеней, такие как: p - отец P - мать q - муж Q - жена b - брат B - сестра s - сын S - дочь
Мир по моей воле
kumehtar 07.08.2026
Когда-то кажется, что всё просто. Ты весь такой светлый. Причиняешь добро. Борешься за справедливость в этом тёмном мире. Потом начинаешь замечать одну неприятную вещь. Почти каждый хороший. . .
Кредитный калькулятор
Maks 05.08.2026
Решение задачи по прикладной информатике средствами 1С. Задача: Напишите приложение-калькулятор, которое помогает рассчитывать параметры кредита для аннуитетного и дифференцированного видов. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru