Я пишу фреймворк для генерации и валидации лицензионных кодов на основе эллиптической цифровой подписи (ECDSA, elliptic curve digital signature algorithm). Преимущество эллиптической криптографии в том, что она позволяет получить короткие лицензионные коды при хорошей защищенности.

Для Windows есть несколько коммерческих продуктов с короткими ключами (AsProtect SKE1, который я использую в BlogJet, и ExeCryptor2). Для Mac OS X почти ничего нет. Есть опен-сорсный AquaticPrime, который я использую в Mémoires, но он по умолчанию работает с файлами и использует RSA, отчего получаются длиннющие ключи.

Сейчас EllipticLicense может создавать ключи типа таких:

Licensed to: John Doe
License key: HQYRV-OZFNZ-M3L7B-WA644-CXLG4-D7IRD-QZ6FY-GJGTO-MEXEG

Это при эллиптической кривой над 112-битным полем простых чисел (secp112r1). 160-битная версия ECDSA по крипотостойкости примерно эквивалентна 1024-битной DSA.

Демонстрация работы GUI EllipticLicense Developer:

Проект опен-сорсный (MIT-лицензия), скоро будет доступен на GitHub’е. Я использую OpenSSL 0.9.8 для криптографии.

Фреймворку понадобится хорошая порка, потому что ошибки в таком деле могут иметь плохие последствия, поэтому мне нужны люди для peer review кода (чуть больше 200 строчек, Objective-C). Пишите на dmitry@sellme.biz если сможете помочь.

1 Кстати, AsProtect был куплен StarForce, они зажрались и стали брать деньги за несуществующую поддержку раз в год, за что могут спокойно засунуть AsProtect в свою ass. Никому не рекомендую этот продукт и эту дебильную организацию.

2 2008-04-01: Мне сказали, что ExeCryptor уже мертв.