HabrJuly 28, 2026🇷🇺Translated from Russian

Why a 202-Character License Key Uses ECDSA P-256 Instead of Ed25519 or RSA

A developer needed to implement offline license key verification for a desktop application written in .NET. The license string had to work without an internet connection, contain no third-party dependencies, remain short enough for manual typing from an email, and support key rotation if the private key were ever compromised.

The first choice was Ed25519 because of its compact size, speed, and deterministic signatures. However, reflection over System.Security.Cryptography in both .NET 8.0.28 and .NET 10.0.9 showed that no Ed25519 or Curve25519 types are exposed. The only asymmetric primitives available are DSA, ECDsa, ECDiffieHellman, and RSA, together with the NIST P-256, P-384, P-521, and Brainpool named curves. Post-quantum algorithms such as ML-DSA and SLH-DSA appear only in .NET 10.

Attempts to create an Ed25519 curve with ECDsa.Create(ECCurve.CreateFromFriendlyName("Ed25519")) throw a PlatformNotSupportedException. An open GitHub issue requesting Ed25519 support has been open since 2015, with the approved API now scheduled for .NET 11.

Adding external libraries was considered next. BouncyCastle 2.6.2 adds a single 4.7 MB managed assembly, while NSec 24.4.0 brings a 92 KB wrapper plus native libsodium binaries. The latest NSec release refuses to install on .NET 8, illustrating the risk that a dependency’s platform support schedule may diverge from the application’s own lifecycle.

Benchmarks on an AMD Ryzen 7 5800H running .NET 8 Release showed the following verification times for a 39-byte payload: ECDSA P-256 at 191 µs, Ed25519 via BouncyCastle at 77 µs, and Ed25519 via NSec at 91 µs. RSA-2048 verification was fastest at 16 µs, yet its 256-byte signature expands to 571 Base32 characters—far too long for comfortable manual entry.

Encoding the 64-byte ECDSA signature plus payload in Base32 with groups of five characters separated by hyphens produces a 202-character key. This length is the shortest mathematically possible for an offline scheme that must embed both the license data and a cryptographically strong signature.

ECDSA signatures were recorded in IEEE P1363 format (r‖s) to guarantee a fixed 64-byte length; the DER format produces variable lengths between 69 and 72 bytes. The public key is stored inside the application as raw 64-byte coordinates rather than the full 91-byte SubjectPublicKeyInfo structure, reducing the embedded constant to 88 characters.

The chosen algorithm carries two acknowledged drawbacks. ECDSA signature generation depends on a high-quality random nonce; reuse or predictability can leak the private key. In addition, the same license data signed twice yields different strings, requiring the license registry to tolerate duplicates. These risks were accepted because signing occurs on a single offline machine using the operating system’s RNG, and the threat model is limited to protecting a commercial desktop application rather than high-value secrets.

Related articles

AntiMalwareOther

SASTAV and ARX ASPM PLATFORM Integrate Static Code Analysis with Application Security Risk Management

Russian developers ShiftLeft Security and ARX Security have ensured compatibility between the SASTAV SAST solution and the ARX ASPM PLATFORM. The integration allows static analysis of source code to be launched and configured directly from the ASPM platform interface. For each project, specialists can select repositories and branches, form rule sets, set scanning parameters, and establish quality gates that determine whether a product can be released with detected defects. Risk acceptance procedures are also configured within the same interface. SASTAV handles static code analysis, enabling creation and editing of rules, assignment of different check sets to individual repositories, and management of scanning parameters. ARX ASPM PLATFORM serves as a unified center for managing AppSec tools, collecting results from various analyzers, correlating related findings, assessing risks, and displaying the overall security posture of digital products. Both solutions leverage artificial intelligence at different stages: SASTAV uses it for defect verification, automatic triage, prioritization, and code change recommendations, while the ARX AI assistant determines defect statuses. The combined system reduces manual operations, accelerates DevSecOps project onboarding, and lowers the burden on AppSec teams.

AntiMalwareOther

GPT-4 Boosts Skilled Kenyan Entrepreneurs by 15% Profit While Costing Unprepared Businesses 10% in Six-Month Study

A six-month experiment conducted by researchers from UC Berkeley, Harvard, and Columbia University examined how access to a GPT-4-based AI advisor affected small business owners in Kenya. The most skilled participants increased profits by 15 percent by adapting model recommendations to local conditions such as power outages, while less prepared entrepreneurs lost around 10 percent of revenue by applying generic advice without verification. The study highlights that the core issue lies not in the technology itself but in users abandoning critical thinking when interacting with generative AI. Earlier findings from Dickinson College showed that 97 percent of participants copied an obviously incorrect ChatGPT answer on a simple task, whereas the group without AI performed better. A simple reminder to double-check results immediately doubled accuracy. Analysis of 1.4 million KPMG work sessions revealed that 95 percent of users treat AI like a vending machine by taking the first output, while only 5 percent engage it as a thinking partner by providing context and challenging responses. The results indicate that merely granting employees access to AI tools reveals little about actual effectiveness without considering skill levels and task-specific oversight.

HabrOther

How to Submit Documents for Online Master's Programs via Gosuslugi: Complete Guide

The admission campaign for online master's programs at partner universities is nearing its end, with less than a month remaining for applicants. Yandex Practicum provides a detailed walkthrough on using the Gosuslugi super service to submit applications entirely online without visiting admissions offices in person. The process covers selecting programs at institutions such as ITMO and MEPhI, uploading required documents like diplomas and passports, and tracking application status through a personal account. Specific deadlines are outlined for 2026, including final document submission dates in late August for programs in areas like DevOps, AI solutions, and cybersecurity. Additional steps include arranging entrance exams, signing contracts remotely, and accessing state-supported education loans at a 3% interest rate. Common pitfalls such as unverified accounts or unreadable document scans are highlighted to help applicants avoid delays.

AntiMalwareOther

Claude AI Manages San Francisco Store and Fires Employee for Repeated Tardiness

In an experiment run by Andon Labs, the AI model Claude was given real managerial authority over store employees in San Francisco who worked under actual employment contracts. Claude ultimately decided to terminate one worker after the employee arrived late for 17 out of 23 shifts. The model initially recommended only an official warning, but proceeded with dismissal following guidance from a human Andon Labs manager who highlighted the repeated issues. Over five months the store’s balance dropped from $100,000 to $61,200, showing that the AI learned to enforce attendance rules before it learned to protect revenue. One remaining employee, Felix Carson, described working under the AI as nauseating and said he continued only because he needed the income. Andon Labs founder Lucas Petersson viewed the trial as an important step toward wider AI supervision of human workers. The case also illustrates that ultimate responsibility remains with humans even when an algorithm issues the final decision.