A Method of Protecting a Program from Unauthorized use that is Resistant to a Brute Force Attack

This paper discusses methods for protecting software from unauthorized use. It is known that an attacker often tampers with the license key verification function, thereby eliminating protection. A new method is proposed based on cutting out an algorithmically important fragment of the program. The cut part is the key supplied to the licensed user. The freely distributed version does not contain a functionally important part of the program, and therefore can be considered protected. Without a key, an attacker cannot learn or break the verification algorithm, and is forced to attack only by bruteforce attack on the missing commands. Activation of licensed software and full access to its functionality are possible only with such a correct key, which is a sequence of commands from the original program. The upper limit on the key length is theoretically justified, guaranteeing resistance to hacking <tex xmlns:mml="http://www.w3.org/1998/Math/MathML" xmlns:xlink="http://www.w3.org/1999/xlink">$\mathbf{O}\left(2^{n}\right)$</tex>. An algorithm for automatically selecting the location of the key in the program is proposed.

Institutions

Publication Details

Published
2025-06-27
DOI
https://doi.org/10.1109/edm65517.2025.11096701
Primary Topic
Security and Verification in Computing
Type
article
Field-Weighted Citation Impact
0.00
Controls
|||
ALL TIME
JAN
FEB
MAR
APR
MAY
JUN
JUL
AUG
SEP
OCT
article

A Method of Protecting a Program from Unauthorized use that is Resistant to a Brute Force Attack

Security and Verification in Computing
article

A Method of Protecting a Program from Unauthorized use that is Resistant to a Brute Force Attack

article en

Abstract

This paper discusses methods for protecting software from unauthorized use. It is known that an attacker often tampers with the license key verification function, thereby eliminating protection. A new method is proposed based on cutting out an algorithmically important fragment of the program. The cut part is the key supplied to the licensed user. The freely distributed version does not contain a functionally important part of the program, and therefore can be considered protected. Without a key, an attacker cannot learn or break the verification algorithm, and is forced to attack only by bruteforce attack on the missing commands. Activation of licensed software and full access to its functionality are possible only with such a correct key, which is a sequence of commands from the original program. The upper limit on the key length is theoretically justified, guaranteeing resistance to hacking <tex xmlns:mml="http://www.w3.org/1998/Math/MathML" xmlns:xlink="http://www.w3.org/1999/xlink">$\mathbf{O}\left(2^{n}\right)$</tex>. An algorithm for automatically selecting the location of the key in the program is proposed.

Siberian State University of Telecommunications and Information Science (RU)
Peace, Justice and strong institutions
Openalex Percentile: Top 24%
Security and Verification in Computing
AI Navigator

Ask Laika to Summarize, Analyze, and Connect papers live on the map.

Summarize Papers & Methodologies

Extract key findings, datasets, and comparative methods across publications.

Benchmark Rankings & Visual Analytics

Rank top research institutions, authors, funders, topics, and journals by Field-Weighted Citation Impact (FWCI) and paper volume with instant charts.

Connect Distant Disciplines

Bridge topological clusters on the map to find hidden collaborative intersections.

A Method of Protecting a Program from Unauthorized use that is Resistant to a Brute Force Attack · (2025) | TGRS Research Map | TGRS