473,414 Members | 1,615 Online
Bytes | Software Development & Data Engineering Community
Post Job

Home Posts Topics Members FAQ

Join Bytes to post your question to a community of 473,414 software developers and data experts.

Q: Software Protection

Hi

Does anybody know where I can find some tutorials/sample code to add
software protection to a standalone vb.net application?

Thanks in advance

Geoff
Nov 21 '05 #1
16 1302
Geoff,

Search the general and the language newsgroups for obfuscator. You find than
very much answers and long discussion threads. (Especially in general)

This is in languages.VB

http://groups-beta.google.com/group/...rch+this+group

I hope this helps,

Cor
Nov 21 '05 #2
"Geoff Jones" <no********@email.com> schrieb:
Does anybody know where I can find some tutorials/sample code to add
software protection to a standalone vb.net application?


<URL:http://msdn.microsoft.com/vcsharp/team/tools/default.aspx#obfuscators>

--
M S Herfried K. Wagner
M V P <URL:http://dotnet.mvps.org/>
V B <URL:http://classicvb.org/petition/>
Nov 21 '05 #3
Hi Cor/Herfried

I'm sorry, I think I've mislead you. Rather than stopping people from
examining the code, I want to add code to my application to make users enter
a serial code, for example, before they can use the application.

What I have in mind is that they install the software and during its first
run it generates a code. The user then contacts me with this code and I send
them another code to unlock the software (ideally for a specific amount of
time).

Geoff

"Herfried K. Wagner [MVP]" <hi***************@gmx.at> wrote in message
news:uC*************@TK2MSFTNGP09.phx.gbl...
"Geoff Jones" <no********@email.com> schrieb:
Does anybody know where I can find some tutorials/sample code to add
software protection to a standalone vb.net application?


<URL:http://msdn.microsoft.com/vcsharp/team/tools/default.aspx#obfuscators>

--
M S Herfried K. Wagner
M V P <URL:http://dotnet.mvps.org/>
V B <URL:http://classicvb.org/petition/>

Nov 21 '05 #4
Geoff,

Nick Patterman (in the time he was still using the Nick Nak) has been
extremely been busy with that.

http://groups-beta.google.com/group/...rch+this+group

Nick is always prepared to help other people, however I did not see him a
while now.

I hope this helps,

Cor
Nov 21 '05 #5
Thanks Cor.

Another piece of information. I don't necessarily assume that the client
machine will have access to the internet i.e. they may have to phone through
the access key.

Geoff

"Cor Ligthert" <no************@planet.nl> wrote in message
news:uk**************@tk2msftngp13.phx.gbl...
Geoff,

Nick Patterman (in the time he was still using the Nick Nak) has been
extremely been busy with that.

http://groups-beta.google.com/group/...rch+this+group

Nick is always prepared to help other people, however I did not see him a
while now.

I hope this helps,

Cor

Nov 21 '05 #6
Hi Geoff,

It does not matter which method you use (own code or commercial solution),
you still need an obfuscator to try to prevent other understanding your
protection.

--

Best regards,

Carlos J. Quintero

MZ-Tools: Productivity add-ins for Visual Studio .NET, VB6, VB5 and VBA
You can code, design and document much faster.
Free resources for add-in developers:
http://www.mztools.com

"Geoff Jones" <no********@email.com> escribió en el mensaje
news:42*********************@news.dial.pipex.com.. .
Hi Cor/Herfried

I'm sorry, I think I've mislead you. Rather than stopping people from
examining the code, I want to add code to my application to make users
enter a serial code, for example, before they can use the application.

What I have in mind is that they install the software and during its first
run it generates a code. The user then contacts me with this code and I
send them another code to unlock the software (ideally for a specific
amount of time).

Geoff


Nov 21 '05 #7
Hi Carlos

Yes, good point. I've taken that on-board.

Maybe I'll start writing something from scratch. Can anybody suggest a way
of getting information from the client computer which is unique and I can
use to generate the key? For example, a CPU number (if such a beast exists).
Some example code would be great.

Thanks in advance

Geoff

"Carlos J. Quintero [.NET MVP]" <ca*****@NOSPAMsogecable.com> wrote in
message news:eb**************@TK2MSFTNGP14.phx.gbl...
Hi Geoff,

It does not matter which method you use (own code or commercial solution),
you still need an obfuscator to try to prevent other understanding your
protection.

--

Best regards,

Carlos J. Quintero

MZ-Tools: Productivity add-ins for Visual Studio .NET, VB6, VB5 and VBA
You can code, design and document much faster.
Free resources for add-in developers:
http://www.mztools.com

"Geoff Jones" <no********@email.com> escribió en el mensaje
news:42*********************@news.dial.pipex.com.. .
Hi Cor/Herfried

I'm sorry, I think I've mislead you. Rather than stopping people from
examining the code, I want to add code to my application to make users
enter a serial code, for example, before they can use the application.

What I have in mind is that they install the software and during its
first run it generates a code. The user then contacts me with this code
and I send them another code to unlock the software (ideally for a
specific amount of time).

Geoff

Nov 21 '05 #8
Geoff,

"Geoff Jones" <no********@email.com> schrieb:
I'm sorry, I think I've mislead you. Rather than stopping people from
examining the code, I want to add code to my application to make users
enter a serial code, for example, before they can use the application.


Free components:

Aspose.License
<URL:http://www.aspose.com/Products/Aspose.License/>

Commercial components:

XHEO|Licensing
<URL:http://www.xheo.com/products/enterprise/licensing/>

Infralution Licensing System
<URL:http://www.infralution.com/licensing.html>

--
M S Herfried K. Wagner
M V P <URL:http://dotnet.mvps.org/>
V B <URL:http://classicvb.org/petition/>

Nov 21 '05 #9
Thanks Herfried

Geoff

"Herfried K. Wagner [MVP]" <hi***************@gmx.at> wrote in message
news:uM**************@TK2MSFTNGP12.phx.gbl...
Geoff,

"Geoff Jones" <no********@email.com> schrieb:
I'm sorry, I think I've mislead you. Rather than stopping people from
examining the code, I want to add code to my application to make users
enter a serial code, for example, before they can use the application.


Free components:

Aspose.License
<URL:http://www.aspose.com/Products/Aspose.License/>

Commercial components:

XHEO|Licensing
<URL:http://www.xheo.com/products/enterprise/licensing/>

Infralution Licensing System
<URL:http://www.infralution.com/licensing.html>

--
M S Herfried K. Wagner
M V P <URL:http://dotnet.mvps.org/>
V B <URL:http://classicvb.org/petition/>

Nov 21 '05 #10

"Geoff Jones" <no********@email.com> wrote in message
news:42*********************@news.dial.pipex.com.. .
Hi Carlos

Yes, good point. I've taken that on-board.

Maybe I'll start writing something from scratch. Can anybody suggest a way
of getting information from the client computer which is unique and I can
use to generate the key? For example, a CPU number (if such a beast
exists). Some example code would be great.

Thanks in advance

Geoff


Try the MacAddress.
:)

Imports System.Management

Dim management As ManagementClass = _
New ManagementClass("Win32_NetworkAdapterConfiguration ")
Dim col As ManagementObjectCollection = management.GetInstances()
Dim addr As String

For Each mgr As ManagementObject In col
If mgr.Item("IPEnabled")
addr = mgr.Item("MacAddress").ToString()
Exit For
End If
Next

Mythran

Nov 21 '05 #11
Thanks Mythran. An interesting idea. Will any computer have this or only
ones on a network?

Geoff

"Mythran" <ki********@hotmail.comREMOVETRAIL> wrote in message
news:%2****************@TK2MSFTNGP12.phx.gbl...

"Geoff Jones" <no********@email.com> wrote in message
news:42*********************@news.dial.pipex.com.. .
Hi Carlos

Yes, good point. I've taken that on-board.

Maybe I'll start writing something from scratch. Can anybody suggest a
way of getting information from the client computer which is unique and I
can use to generate the key? For example, a CPU number (if such a beast
exists). Some example code would be great.

Thanks in advance

Geoff


Try the MacAddress.
:)

Imports System.Management

Dim management As ManagementClass = _
New ManagementClass("Win32_NetworkAdapterConfiguration ")
Dim col As ManagementObjectCollection = management.GetInstances()
Dim addr As String

For Each mgr As ManagementObject In col
If mgr.Item("IPEnabled")
addr = mgr.Item("MacAddress").ToString()
Exit For
End If
Next

Mythran

Nov 21 '05 #12

"Geoff Jones" <no********@email.com> wrote in message
news:42*********************@news.dial.pipex.com.. .
Thanks Mythran. An interesting idea. Will any computer have this or only
ones on a network?

Geoff


Being that the definition of a MAC address is:

"a hardware address that uniquely identifies each node of a network"

I would say that those that either are on a network that supports IEEE 802
or has an installed IEEE 802 supported network card would have a MAC
address...but I'm not positive.

Mythran

Nov 21 '05 #13
MAC ids are generally hard-coded into the network card itself. So if the
user changed network cards, you need to make sure the program doesn't die.

Isn't there a unique id generated when the OS is installed? If so, that
would be safer.

--
Jonathan Allen
"Geoff Jones" <no********@email.com> wrote in message
news:42*********************@news.dial.pipex.com.. .
Thanks Mythran. An interesting idea. Will any computer have this or only
ones on a network?

Geoff

"Mythran" <ki********@hotmail.comREMOVETRAIL> wrote in message
news:%2****************@TK2MSFTNGP12.phx.gbl...

"Geoff Jones" <no********@email.com> wrote in message
news:42*********************@news.dial.pipex.com.. .
Hi Carlos

Yes, good point. I've taken that on-board.

Maybe I'll start writing something from scratch. Can anybody suggest a
way of getting information from the client computer which is unique and
I can use to generate the key? For example, a CPU number (if such a
beast exists). Some example code would be great.

Thanks in advance

Geoff


Try the MacAddress.
:)

Imports System.Management

Dim management As ManagementClass = _
New ManagementClass("Win32_NetworkAdapterConfiguration ")
Dim col As ManagementObjectCollection = management.GetInstances()
Dim addr As String

For Each mgr As ManagementObject In col
If mgr.Item("IPEnabled")
addr = mgr.Item("MacAddress").ToString()
Exit For
End If
Next

Mythran


Nov 21 '05 #14
Hi Jonathan

Yes, I seem to remember someone saying that there is another way of getting
a unique number for a computer. Maybe somebody can remind me?

Geoff

"Jonathan Allen" <x@x.x> wrote in message
news:OH**************@TK2MSFTNGP14.phx.gbl...
MAC ids are generally hard-coded into the network card itself. So if the
user changed network cards, you need to make sure the program doesn't die.

Isn't there a unique id generated when the OS is installed? If so, that
would be safer.

--
Jonathan Allen
"Geoff Jones" <no********@email.com> wrote in message
news:42*********************@news.dial.pipex.com.. .
Thanks Mythran. An interesting idea. Will any computer have this or only
ones on a network?

Geoff

"Mythran" <ki********@hotmail.comREMOVETRAIL> wrote in message
news:%2****************@TK2MSFTNGP12.phx.gbl...

"Geoff Jones" <no********@email.com> wrote in message
news:42*********************@news.dial.pipex.com.. .
Hi Carlos

Yes, good point. I've taken that on-board.

Maybe I'll start writing something from scratch. Can anybody suggest a
way of getting information from the client computer which is unique and
I can use to generate the key? For example, a CPU number (if such a
beast exists). Some example code would be great.

Thanks in advance

Geoff
Try the MacAddress.
:)

Imports System.Management

Dim management As ManagementClass = _
New ManagementClass("Win32_NetworkAdapterConfiguration ")
Dim col As ManagementObjectCollection = management.GetInstances()
Dim addr As String

For Each mgr As ManagementObject In col
If mgr.Item("IPEnabled")
addr = mgr.Item("MacAddress").ToString()
Exit For
End If
Next

Mythran



Nov 21 '05 #15
Johathan,

Isn't there a unique id generated when the OS is installed? If so, that
would be safer.

There is an OS number however that is not unique.

The approach you want to take is often tried, however look what Geoff said.

I thought to remember me, that there was once a company (I thought the name
was Frameworks or shomething). It was the in that time best seller for
things like what is now Windows and Excel on the IBM PC. They had protected
their software using the 10 Mb disk from the IBM PC. However you could only
use that 10Mb disk and replacing it to an other IBM standard 10Mb disk was a
crime and I thought that you had to contact them for that.

Maybe you know what company that was?

Cor
Nov 21 '05 #16
Jonathan Allen wrote:
MAC ids are generally hard-coded into the network card itself. So if the
user changed network cards, you need to make sure the program doesn't die.

Isn't there a unique id generated when the OS is installed? If so, that
would be safer.


Most cards let you set the MAC address in the driver. I've done that on
both my linux and my windows box in the past. So inserting a new card
and giving it the old MAC address is quite simple.

--
Rinze van Huizen
C-Services Holland b.v.
Nov 21 '05 #17

This thread has been closed and replies have been disabled. Please start a new discussion.

Similar topics

0
by: Max | last post by:
I have written a program in Visual Basic for distribution. I am looking for an internet based registration service and found SecureWrap software protection. Has any one used it? ...
9
by: Howard | last post by:
I am currently looking at the various packages that are available for software protection. I have a particular question that I'd welcome your feedback on. Background info: I work for a company...
3
by: Yavuz Bogazci | last post by:
Hi, i am searching for a Protection Software for VB.Net or C# executables. I want to create Trial Versions and License- Codes. Under Delphi i have used TurboPower ProActivate. But this seem...
10
by: Mitchell Vincent | last post by:
I'm in the market for a new software licensing system to protect my shareware. Can anyone make some suggestions of protection/licensing systems (especially for .NET, but not exclusively)? My...
9
by: John | last post by:
Hi, I would like to protect my software from copying. What are best tools for it (hardware protection is not an option), do you have some reccomendation for protection or third party software...
12
by: jeanjean_5 | last post by:
Hi all I'm looking forward to purchase ExeCryptor (www.strongbit.com) to protect my shareware. But before I'd like to know independent opinions/experience if any. My question is: Anybody uses...
0
by: emmanuelkatto | last post by:
Hi All, I am Emmanuel katto from Uganda. I want to ask what challenges you've faced while migrating a website to cloud. Please let me know. Thanks! Emmanuel
0
BarryA
by: BarryA | last post by:
What are the essential steps and strategies outlined in the Data Structures and Algorithms (DSA) roadmap for aspiring data scientists? How can individuals effectively utilize this roadmap to progress...
1
by: nemocccc | last post by:
hello, everyone, I want to develop a software for my android phone for daily needs, any suggestions?
0
by: Hystou | last post by:
There are some requirements for setting up RAID: 1. The motherboard and BIOS support RAID configuration. 2. The motherboard has 2 or more available SATA protocol SSD/HDD slots (including MSATA, M.2...
0
by: Hystou | last post by:
Most computers default to English, but sometimes we require a different language, especially when relocating. Forgot to request a specific language before your computer shipped? No problem! You can...
0
jinu1996
by: jinu1996 | last post by:
In today's digital age, having a compelling online presence is paramount for businesses aiming to thrive in a competitive landscape. At the heart of this digital strategy lies an intricately woven...
0
by: Hystou | last post by:
Overview: Windows 11 and 10 have less user interface control over operating system update behaviour than previous versions of Windows. In Windows 11 and 10, there is no way to turn off the Windows...
0
tracyyun
by: tracyyun | last post by:
Dear forum friends, With the development of smart home technology, a variety of wireless communication protocols have appeared on the market, such as Zigbee, Z-Wave, Wi-Fi, Bluetooth, etc. Each...
0
isladogs
by: isladogs | last post by:
The next Access Europe User Group meeting will be on Wednesday 1 May 2024 starting at 18:00 UK time (6PM UTC+1) and finishing by 19:30 (7.30PM). In this session, we are pleased to welcome a new...

By using Bytes.com and it's services, you agree to our Privacy Policy and Terms of Use.

To disable or enable advertisements and analytics tracking please visit the manage ads & tracking page.