Linux keygen example

Post here messages if you have any problems with working of Enigma Protector
Post Reply
GROL
Posts: 6
Joined: Thu Jan 20, 2011 1:01 pm

Linux keygen example

Post by GROL »

Ваш пример при использовании кирилического имени вместо кода выдает сообщение что-то типа "Пустые данные".
Это как то можно обойти?
Enigma
Site Admin
Posts: 3085
Joined: Wed Aug 20, 2008 2:24 pm

Re: Linux keygen example

Post by Enigma »

Хм.. это какой пример Вы имеете ввиду?

The Enigma Protector\Examples\KeyGen\CGI Linux\test_post.html?

Протестировал этот пример с кирилицей - все отлично...
GROL
Posts: 6
Joined: Thu Jan 20, 2011 1:01 pm

Re: Linux keygen example

Post by GROL »

К качестве имени вводим "Русское Имя", в итоге, вместо серийника выводит "Registration info is empty".
Если нужно, в приват кинул ссылку.
GROL
Posts: 6
Joined: Thu Jan 20, 2011 1:01 pm

Re: Linux keygen example

Post by GROL »

и еще, хотелось бы защетится от внешних вызовов, чтобы ни кто кому не положено не дергал keygen, поэтому в идеале хотелось бы например, положить где нить текстовый файлик, в котором будет перечень хостов или(и) IP-адресов, откуда можно дергать keygen.
Enigma
Site Admin
Posts: 3085
Joined: Wed Aug 20, 2008 2:24 pm

Re: Linux keygen example

Post by Enigma »

GROL wrote:К качестве имени вводим "Русское Имя", в итоге, вместо серийника выводит "Registration info is empty".Если нужно, в приват кинул ссылку.
Я протестировал эту ссылку на двух компьютерах, ошибка возникает только на русской Windows, на английской все нормально. Скорее всего надо в html указать что используется UTF8 на странице, отпишусь позднее. Хотя вы наверное будете использовать php для вызова этого генератора, так что с кирилцей проблем не будет.
GROL wrote:и еще, хотелось бы защетится от внешних вызовов, чтобы ни кто кому не положено не дергал keygen, поэтому в идеале хотелось бы например, положить где нить текстовый файлик, в котором будет перечень хостов или(и) IP-адресов, откуда можно дергать keygen.
Самый простой вариант, положите генератор в отдельный каталог, создаете .htaccess в котором заблокируйте доступ по IP:

Code: Select all

order deny,allow
deny from all
allow from 888.888.888.888
GROL
Posts: 6
Joined: Thu Jan 20, 2011 1:01 pm

Re: Linux keygen example

Post by GROL »

Скорее всего надо в html указать что используется UTF8 на странице, отпишусь позднее.
Да, помогло, хотя Вы правы, планирую использовать вызов из пхп.

Я не асс в пхп, но использовать существующий кейген в php, удалось только так:

Code: Select all

function simpleLoadURL($submit_url)
{
  $curl = curl_init();
  $url_parts = parse_url($submit_url);
  $url = $url_parts['scheme'] . '://' . $url_parts['host'] . $url_parts['path'];
  curl_setopt($curl, CURLOPT_POST, true);
  curl_setopt($curl, CURLOPT_POSTFIELDS, $url_parts['query']);
  curl_setopt($curl, CURLOPT_RETURNTRANSFER, true);
  curl_setopt($curl, CURLOPT_URL, $url);
  $response = curl_exec($curl);
  curl_close($curl);
  return $response;
}

$cmd = 'http://site.com/cgi-bin/keygen?Action=GenerateKey&.......'; 
//указание протокола и домена обязательно!
$key = simpleLoadURL($cmd);
....
дальше работа с ключем (формирование письма, занесения в базу клиентов и пр.)
....
Команды, типа exec(...) не дуют нужного результата, поскольку воспринимают ВСЮ строку как имя файла. Если отделять параметры, то сам кейген не понимает передаваемые ему параметры, и соответественно ничего не возвращает.
Enigma
Site Admin
Posts: 3085
Joined: Wed Aug 20, 2008 2:24 pm

Re: Linux keygen example

Post by Enigma »

Я думаю что это не очень хороший вариант вызова удаленного генератора... Потому что в этом случае все параметры передаются в $_GET, а это значит что общая длинна запроса, со всеми переменными не может привышать 2047 символов.

Лучше использовать php скрипт который написан в помощи, в разделе Keys Generator - CGI Keygen, там есть пример, называется PHP Post Method Example, в этом случае данные передаются через $_POST и их длинна не ограничена.
GROL wrote:Команды, типа exec(...) не дуют нужного результата, поскольку воспринимают ВСЮ строку как имя файла. Если отделять параметры, то сам кейген не понимает передаваемые ему параметры, и соответественно ничего не возвращает.
Я думаю эту проблему тоже можно решить, например поставив аттрибуты файла, для CGI генератора - 111, при этом, чтение файла будет заблокировано, и сервер будет его запускать во время вызова, а не просто читать.
Post Reply