Форум программистов, компьютерный форум, киберфорум
Наши страницы

Visual Basic .NET

Войти
Регистрация
Восстановить пароль
 
 
Khaker_tt
30 / 30 / 6
Регистрация: 24.11.2015
Сообщений: 329
Завершенные тесты: 1
#1

Как создать лицензионный ключ для своего приложения? - Visual Basic .NET

23.01.2016, 09:39. Просмотров 1060. Ответов 15
Метки нет (Все метки)

Здравствуйте Уважаемые форумчане.
как составить лицензионный ключ для своей программы?
Как и куда сохраняется ключ для активации?
Откуда программа понимает соответствующий ключ?
Заранее спасибо.
0
Лучшие ответы (1)
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
23.01.2016, 09:39
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Как создать лицензионный ключ для своего приложения? (Visual Basic .NET):

.NET 4.x Как узнать лицензионный ключ Windows - Visual Basic .NET
Доброе время суток. Подскажите пожалуйста как можно узнать Prodyct key от Windows в таком виде в котором он приходит с коробкой? Ну...

Как создать установщик для своего приложения - .NET
давно хочу написать установкщик,но весь гугл перерыв не нашел.вот все совреемнные установщики сжимают твой exe,кучу мусора что там ты...

Задать глобально горячие клавиши только для своего приложения - Visual Basic .NET
Private Sub Avtorizacia_KeyDown(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyEventArgs) Handles Me.KeyDown If...

.NET 4.x Как работать с базами данных из своего приложения - Visual Basic .NET
Всем форумистам, добрый вечер! Я еще совсем зеленый в программировании на VB.NET, есть один вопрос: у меня есть готовая БД (имеет любое...

Можно ли создать компилятор для своего языка программирования для .NET - .NET
Сейчас вот думаю..Можно ли создать компилятор для своего языка программирования для .NET на языках C#, VB.NET? Интересует только создание...

Как создать отдельную папку для dll при компоновки приложения в VS2008 - .NET
У меня в одном проекте соединено несколько других проектов. Главный проект при компиляции генерирует ехе, а все остальные проекты создают...

15
Yury Komar
Модератор
2214 / 2019 / 321
Регистрация: 27.01.2014
Сообщений: 3,583
Завершенные тесты: 1
23.01.2016, 11:09 #2
Khaker_tt, вам нужен один ключ или механизм проверки правильности введенного ключа? Соответственно нужен и генератор ключа?

Какого вида ключ вы хотите создать? Дайте больше информации.
1
Khaker_tt
30 / 30 / 6
Регистрация: 24.11.2015
Сообщений: 329
Завершенные тесты: 1
23.01.2016, 12:13  [ТС] #3
Yury Komar, Мне нужен механизм проверки правильности введенного ключа.

Добавлено через 35 минут
Допустим такой ключ GYH-NDJ-JDH-hjd-fjd.

Добавлено через 13 минут
то есть регистрация для своей программы.
0
Yury Komar
Модератор
2214 / 2019 / 321
Регистрация: 27.01.2014
Сообщений: 3,583
Завершенные тесты: 1
23.01.2016, 12:37 #4
Khaker_tt, а как вы создаете этот ключ? или это просто строка текста?

ну тогда самый простой способ - это:
vb.net
1
If Text = "GYH-NDJ-JDH-hjd-fjd" Then Msgbox("Пароль верный.!")
4
Khaker_tt
30 / 30 / 6
Регистрация: 24.11.2015
Сообщений: 329
Завершенные тесты: 1
23.01.2016, 13:00  [ТС] #5
Yury Komar, Нет. Это очень простой способ я по моему неправильно сформулировал вопрос извиняюсь за неудобства. Мне нужно чтобы как то было динамично. Допустим кто та хочет использовать мою программу он должен взят у меня код активации. И этот код должен работать на один компьютер а на другой он уже не рабочий.
0
Yury Komar
Модератор
2214 / 2019 / 321
Регистрация: 27.01.2014
Сообщений: 3,583
Завершенные тесты: 1
23.01.2016, 13:51 #6
Лучший ответ Сообщение было отмечено автором темы, экспертом или модератором как ответ
Khaker_tt, тогда вы должны попросить и данные о его копьютере, чтобы сформировать ключ именно для этого компьютера, либо завести сетевую базу данных, и хранить количество авторизаций с разных компьютеров с этим серийным номером.... это муторно...
проще на основе имени компьютера (например) создавать ключ по определенным правилам, которые будут известны только вам конечно...
разделяете пароль на части, кодируете каждую часть определенным образом, чтобы ключ каждый раз содержал разные символы, но при проверке, удовлетворял условиям кодировки ключа..

Добавлено через 21 минуту
Скажем так, вот следующий алгоритм проверки пароля, не очень сложный, но и не такой простой как обычный текст:
vb.net
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
    Public Function CheckKey(KeyString As String) As Boolean
        If KeyString Is Nothing Or Not KeyString.Contains("-") Then Return Nothing
        Dim KeyParts() As String = KeyString.Split("-")
 
        If Strings.Mid(KeyParts(0), 2, 1) = "Y" Then
            If Strings.Mid(KeyParts(1), 2, 1) = "U" Then
                If Strings.Mid(KeyParts(2), 2, 1) = "R" Then
                    If Strings.Mid(KeyParts(3), 2, 1) = "I" Then
                        If Strings.Mid(KeyParts(4), 2, 1) = "Y" Then
                            Return True
                        End If
                    End If
                End If
            End If
        End If
        Return False
    End Function
Просто зашиваете слово, например YURIY (как в данном примере) в ваш пароль и прячете среди других символов, конечно сложность пароля может быть разной, на ваш вкус, я привел просто пример, чтобы натолкнуть на мысль.

Вот такие пароли успешно подойдут для авторизации по данной функции:
mYS-4Uc-AR5-QI1-qY7
SYm-cU4-5RA-1IQ-7Yq
aYURIY-LUM-PRO-SILK-KYARIO


Идею подал...

Добавлено через 2 минуты
разработайте алгоритм проверки ключа, которые выданы для 1,2 или Unlimited и проверяйте на совпадения какие-то конкретные части пароля...
11
Khaker_tt
30 / 30 / 6
Регистрация: 24.11.2015
Сообщений: 329
Завершенные тесты: 1
23.01.2016, 17:14  [ТС] #7
Yury Komar, Спасибо огромное я проверил.

Добавлено через 2 часа 27 минут
Yury Komar, По этой же функцию как создать генератор паролей? Заранее спасибо.
0
Yury Komar
Модератор
2214 / 2019 / 321
Регистрация: 27.01.2014
Сообщений: 3,583
Завершенные тесты: 1
23.01.2016, 17:32 #8
Khaker_tt, да легко:
vb.net
1
2
3
4
5
6
7
8
9
10
    Public Function GeneratePassword() As String
        Dim kp(4) As String
        Dim rnd As New Random()
        kp(0) = ChrW(rnd.Next(65, 91)) & "Y" & ChrW(rnd.Next(65, 91))
        kp(1) = ChrW(rnd.Next(65, 91)) & "U" & ChrW(rnd.Next(65, 91))
        kp(2) = ChrW(rnd.Next(65, 91)) & "R" & ChrW(rnd.Next(65, 91))
        kp(3) = ChrW(rnd.Next(65, 91)) & "I" & ChrW(rnd.Next(65, 91))
        kp(4) = ChrW(rnd.Next(65, 91)) & "Y" & ChrW(rnd.Next(65, 91))
        Return kp(0) & "-" & kp(1) & "-" & kp(2) & "-" & kp(3) & "-" & kp(4)
    End Function
использование
vb.net
1
MsgBox(GeneratePassword)
9
Yury Komar
Модератор
2214 / 2019 / 321
Регистрация: 27.01.2014
Сообщений: 3,583
Завершенные тесты: 1
23.01.2016, 17:34 #9
пример работы
7
Изображения
 
Khaker_tt
30 / 30 / 6
Регистрация: 24.11.2015
Сообщений: 329
Завершенные тесты: 1
23.01.2016, 17:37  [ТС] #10
Yury Komar, Очень Благодарен. Все отлично работает.
0
Yury Komar
Модератор
2214 / 2019 / 321
Регистрация: 27.01.2014
Сообщений: 3,583
Завершенные тесты: 1
23.01.2016, 17:46 #11
Khaker_tt,
2
Alexey Number
2 / 2 / 0
Регистрация: 23.12.2016
Сообщений: 80
29.05.2017, 05:51 #12
Цитата Сообщение от Yury Komar Посмотреть сообщение
Скажем так, вот следующий алгоритм проверки пароля, не очень сложный, но и не такой простой как обычный текст:
Yury Komar, Привет а как это подключить к textbox.
0
Qusar
7 / 7 / 0
Регистрация: 25.04.2013
Сообщений: 38
29.05.2017, 06:16 #13
Можно еще исходить из даты до которой программа активирована. Допустим до 01.11.2017, в числовом эквиваленте эта дата 43040. В программу записываем алгоритм, который из последовательности цифр получает число формата 4XXXX. Пользователь вводит код, программа его обрабатывает и получает дату до которой программа активирована и записывает код в реестр. Чем сложнее будет алгоритм, тем сложнее будет хакнуть программу.
0
Yury Komar
Модератор
2214 / 2019 / 321
Регистрация: 27.01.2014
Сообщений: 3,583
Завершенные тесты: 1
29.05.2017, 07:01 #14
Qusar, что прятать в пароль - дело ваше.
Вот только прятать пароль в реестре нужно не в открытом виде, а лучше в зашифрованном...

Добавлено через 2 минуты
Alexey Number, что значит подключить?
так?
vb.net
1
2
3
4
5
If CheckKey(TextBox1.Text) Then
    MsgBox("Пароль верный")
Else
    MsgBox("Пароль неверный")
End If
1
Alexey Number
2 / 2 / 0
Регистрация: 23.12.2016
Сообщений: 80
29.05.2017, 09:18 #15
Спасибо все работает!

А как можно генератор ключей выводить не в сообщении а в textbox как на картинке у тебя?
Или еще лучше сохранять весь текст из textbox в txt на рабочий стол, чтобы удобнее было.
0
29.05.2017, 09:18
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
29.05.2017, 09:18
Привет! Вот еще темы с ответами:

Ping сервера из своего приложения - Visual Basic .NET
Приветствую. Помогите пожалуйста кто может. Делаю программулю на ней уже есть список консольных команд , узнать ip сайта , добавить сайт в...

Вызвать справку своего приложения по F1 - Visual Basic .NET
Подскажите пожалуйста как по нажатию на кнопку F1 запустить файл "Пегас.chm", который находится в корне программы (там где exe файл...

Получить путь к папке своего приложения - Visual Basic .NET
Доброго всем дня! Не знаю, с какой стороны подойти, к простому, наверное, вопросу. При открытии формы в TextBox должен автоматически...

.NET 4.x Запуск страницы в браузере из своего приложения - Visual Basic .NET
Всем доброго времени суток! В моем приложении я получаю адрес страницы из файла, например "http://www.cyberforum.ru/" Как из...


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

Или воспользуйтесь поиском по форуму:
15
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru