A lock is a familiar colloquial term and it is used to protect various objects.
But what is the concept of lock in the world of computer and software?
Today, in order to prevent unauthorized use of programs or their illegal reproduction, they lock them.
If special hardware is used for locking, we call it a hardware lock. Some of these locks are installed as an interface on the parallel port of the system, although both types have the same function.
The main part of the lock consists of an erasable memory, which has a different function according to its type and size, and mainly works in one of the following two ways:
A) The first method of locking is that the software manufacturer writes one or more bytes of information in the lock and the program checks it during execution. If there is a lock, the program continues to work, and if there is no lock or the information read from the lock is not correct, the program stops and refuses to run properly with an error message .
These types of locks have a simple structure, a few bytes of memory, and a cheap price.
The use of these locks is very simple and does not require special expertise, it is enough to run the special lock software (provided by the lock manufacturer).
At first, when the lock has no information, first request a desired word as a password, and then, according to the type of lock, receive one or more words of information and register it in the lock memory. Next time, the password that was registered for the first time must be entered in order to be able to access the internal information of the lock. Of course, this word can be changed after entering the program.
In any case, after registering the information in the lock, the software manufacturer checks the registered information in a program, and the way to check the information is different according to the type of lock.
In some cases, only the information inside the lock is checked, and in others, the presence of the lock is checked in the first step, and the information inside it is checked in the next step.
b) Another method of locking is that the software manufacturer places a small part of the program in the lock memory, in this case, if there is no lock, the program will not be able to run and continue working in any way. .
These types of locks have a slightly complicated structure, a memory sometimes up to several kilobytes, and a relatively expensive price.
Using these locks is not as simple as the previous type. Of course, the general way of working is similar to the previous method.
By running the special lock software and entering the password, we must specify the name of the file we want to lock, so that a part of it is registered in the lock.
Of course, in some other types of locks, which provide more protection, the software manufacturer must control exactly what parts of the file should be registered in the lock, which requires sufficient expertise and experience. It is, because sometimes it is possible that the error in doing the work will cause problems in the production program.
Because this actually registers a part of the program in the lock, it is clear that each lock can only be used for one version of the program and therefore the use of this lock is less.
In addition, there are other types of locks that use both of the above methods, but they are not very popular.
If software methods and tricks are used for locking, we call it software lock. Software locks have more variety and do not have the quality and security of hardware locks
But the way most of them work can be described by one of the following 3 methods:
A) Limitation in the number of copies (Copy Limited)
In this case, the software installer program restores a certain space on the disk in a special way, and inserts the allowed number of copies in it. In this way, every time the program is copied, one unit is reduced from this number, and when the allowed number reaches zero, the program cannot be installed on the system.
Now, the question may be raised that after installing the program, it is not possible to get support (Back Up) from it and then use the backup copy on another system?
The answer is negative. Because during installation, information about the system hardware, which can include, for example, the type of parts or the serial number of the parts, is stored somewhere in the area of the lock, and from now on, this information is carefully checked every time the program is run. and in case of any changes, the program will not be executed.
b) Using a diskette when running the program (Disk Required)
In this case, the desired diskette is either formatted in a certain way and then during execution, the information on it is checked, or a part of the diskette is physically and intentionally damaged, and here, in fact, the same damage which is deliberately entered on the surface of the diskette, acts as a lock and protection of the software.
From now on, to transfer the program from one system to another system, this floppy acts like a hardware lock and its coordinates must be confirmed by the program, and if this floppy is not in the drive, the program will not be executed.
CD lock (run from CD)
With the popularization of CDs or CDs, a new locking method was invented, and that is to run the program from the CD.
In this case, when the program is running, it refers to the CD and checks certain points of it. These points are parts that are physically marked and actually damaged in some way, and usually this damage is done by laser radiation.
In this way, certain points of the CD are laser burned. This point or points acts as a CD lock and prevents duplication or copying as well as its unauthorized use.
In conclusion, the question that is raised about the three methods mentioned above is, is it possible to make copies of locked diskettes and CDs before installation and then install them?
The answer is negative, because as mentioned, either a part of the diskette or all of it is formatted in a special way that cannot be copied, or the location and points on the diskette or CD are physically and intentionally damaged. have seen, do not allow copying and prevent doing this.
ARM is an advanced technology to protect software privacy
A study conducted by information technology research firm IDC found that nearly one in three versions of personal computing software installed and used on personal computers is compromised. While this amount of software theft is increasing from one country to another, and it has been happening repeatedly in the world for many years.
If you are a software developer and want to stay successful in the highly competitive software market, the last thing you can afford is to lose two-thirds of your revenue to software piracy. So what you need to do is find a solid solution to protect your software that you need at a low cost that is quick and easy to implement.
Logo hardware lock! Your only solution…
ARM is a USB hardware lock, commonly known as a dongle. Dongle is the most secure solution to prevent software theft. This mechanism consists of a hardware key (or lock) that is connected to a USB port on the computer » The protected program needs this key to verify access before continuing to run » The registered numbers before being sent by the soft publisher The software is loaded in the dongle.
Can dongles be hacked? Well, since dongles are external hardware devices, they are not susceptible to the same level of hacking as common software protection solutions. For this reason, this technology is more secure than software lock options. In addition, dongles offer greater flexibility than other forms of copy protection because they are not limited to a single PC. Similarly, dongles are more convenient for recovering from a system crash, or replacing or upgrading a PC.
arm software protection lock offers extra security while providing true integrity in your apps.
Increase your software revenue today – use arm to protect a huge percentage of your software licenses that would otherwise be stolen!
Unique CPU intelligent circuit
Strictly conforming to NIST standards, the armlock is based on a unique intelligent CPU circuit design consisting of an 8-bit CPU coupled with a 1024-byte EEPROM. This makes arm lock more secure than other simple ASIC and simple EEPROM dongle technologies
Prevent copying of software
PC Guard protection is applied directly to compiled programs and modules by placing them in a security envelope. This means that almost any native (unmanaged) Windows, .NET Framework, Windows .NET Core, standard and non-standard applications can be protected regardless of the programming language used.
Protected applications will run on the latest 32-bit and 64-bit Windows desktop and server operating systems. Protected programs can be run from any storage device such as a hard disk, USB drive, or directly from read-only storage such as a CD or DVD.
Out of the box solution
By default, no additional programming and source code editing is required. Hardware lock can be used by everyone, from beginners to professional software developers. The protection process is simple and effective. Adjust the project settings according to your needs and click Protect! The encryption button is its own program!
The app is encrypted during the protection process and our protection code is embedded in it. The security packet consists of a large number of encryption layers and anti-debugging and anti-reverse engineering codes and includes all protection functions.
Boot control protection code – Check license status – Display restrictions – Program integrity – Initialize required data – Decrypt protected program and transfer control without dumping decrypted code to hard drive.
Improvements in hardware locks
Dongles or ” Hardware LOCK ” are hardware modules that attach to your computer and communicate with software running on the computer in such a way that the software will not work at all or at all without the dongle. Hardware locking devices usually embed some form of algorithmic encryption into the microelectronic circuitry on their board. In some models of hardware locks, these encryption algorithms can be very advanced. Many hardware locks provide some on-board non-volatile memory for software access. Some locking devices even have real-time clocks to keep track of date and time information, such as when a temporary license or trial version of an app expires.