Шаровароварение

php-keygen для Avangate и Asprotect

January 18th, 2009 Begemot

Имел тут недавно день увелекательного секса процесса скрещивания php, системы ipn\idn авангейта и кейгена для аспротекта. Надо сразу сказать что прикрутить внешний кейген к Авангейту, на порядок сложнее чем к плимусу (я подразумеваю человека для которого пхп не родной). Система более сложная в плане передаваемых данных, требует проверки принимаемых и подписывания отправляемых данных, подтверждения получения ipn и подтверждения доставки ключа.

Конечн, о всегда можно использовать статический или даже динамический спискок ключей, но мы не ищем легких путей 🙂

О терминах

IPN – Instant Payment Notification – вызов вашего скрипта с параметрами содержащими данные о продажи

IDN – Instant Delivery Notification – тут уже вы должны вызвать скрипт на сайте авангейта, что бы подтвердить, что вы доставили ключ покупателю. Деньги не снимутся, пока вы этого не сделаете, как альтернатива можно делать руками в контрольной панели)

В принципе у Авангейта  есть пример php скрипта для IPN, но какой-то уж сильно… никакой. Там есть только код для проверки истиности полученных данных (они подписываются)  и отсылки ответа что данные полученны (тоже с  подписью), а учитывая их не самый простой формат данных, было бы хорошо если бы они включили и код для их разбора\интерпретации.  Примера для IDN вообще отсутсвует:(  Правда есть документация для всего этого, так что где наша не пропадала. Примеры и спецификации можно скачать в секции docs.

Теперь необходимый disclaimer

  • Код кейгена скорее всего крайне далек от совершенство. Так как пхп у меня со словарем, и вообще это мой второй или третий скрипт, и первый за последнии 4 года:)
  • Тем нее менее, код вроде работает и делает все что требуется. Правда у меня он тестировался\работал только в режиме наличия одного продукта, в ордере. Так что по крайне мере в качестве базы для того что бы понять как правильно взаимодейтсвовать с авангейтом его можно взять.
  • Ну и разумеется я не несу ответственности за любые ошибки, ущерб ну и так далее.
  • С удовольствием приму любые замечания, поправки, комментарии, а также пиво и печеньки 🙂

Скачать скрипт.


Про автоматическое продление подписки

January 17th, 2009 Begemot

Недавно я пытался определиться с политикой лицензирования для новой программы, в частности рассматривался и вариант годовой подписки. Любой нормальный регистратор позволяет создать так называемый recurrent’ый продукт, таким образом что деньги с покупателя будут автоматически с ниматся, каждый раз по истечению срока подписки.

Я пока решил не рисковать и использовать традиционную схему, но тем не менее записал в todo через пару месяцев подумать над таким экспериментом – предложив пользователям выбор либо купить, либо подписатся. А сегодня вот наткнулся на интересный пост на rsdn, marx paul пишет:

Я Вам как закоренелый буржуй скажу: никто не любит самопродляющихся абонементов. Автопродлялка есть веский аргумент против. Вон даже Financial Times прекратила эту практику. Абонемент, конечно остался. Но не продливается автоматом. Ближе к концу срока приходит напминалка с уже заполнеными бланками и маркой на открытке. И все. Усилия “юзера” сведены к решению “опустить открытку в почтовый ящик по дороге на работу или нет?”. Аналогичная тенденция наблюдается и с софтом. Схема, которая себя зарекомендовала:
1) Продаем абонемент на год без автоматического продления (последнее акцентируется)
2) За месяц до истечения срока начинаем слать напоминалки
а) за 30 дней
б) за 14 дней
в) за 1 день до истечения срока
В напоминалке стоит, мол от Вас требуется только ответ в неформальной форме, что Вы хотите продлить абонемент.

3) по истечении срока включается 30ти дневный счетчик “защитного” периода, в течении которого клиент может продлить, как буд-то бы он продлил точно в срок. По истечении этого срока, можно только купить “заново”. (Тут есть варианты с созданием искусственного барьера на выход — эдакого мотиватора. Например, продлить можно по льготным ценам. Купить — по актуальным, немного более высоким. Можно удалять клиентские данные в веб сервисе (но это не ваш случай) и т.п.)

Вот схема (полу?)годового абонемента, о которой я предлагаю подумать…

мотайте на ус.

Posted in Шаровароварение
Comments Off on Про автоматическое продление подписки


Windows 7 грядет

January 15th, 2009 Begemot

 

[12:38:23] <MbIcJIu_B_cJIyX> кто нить уже поставил Windows 7 ?
[12:38:28] <@Begemot> да
[12:38:43] <@Begemot> мне только что анинстал нотес пришел
[12:38:44] <@Begemot> TRY TO USE WITH Windows 7
[12:38:44] <@Begemot> Does’ nt work yet
[12:38:50] <@Begemot> кто-то уже поставил:(
[12:39:04] <MbIcJIu_B_cJIyX> да мне чет тоже подобное пишут
[12:39:12] <MbIcJIu_B_cJIyX> а ты сам себе поставил?
[12:39:20] <@Begemot> нет, но качаю

Новый проблема на голову, теперь еще и совместимость с 7кой обеспечивать, а то еще и с вистой не уверен что я дружу на 100%, а тут уже следующая. Если кто не в курсе, бета доступна на сайте MS – http://msdn.microsoft.com/en-us/dd353271.aspx , можно качать и использовать, работать будет до 1 августа.

Кто-то в сврусе даже сказал что поставил основной системой – если вам не хватает лицензионной винды – чем не выход?:)


О программах партнерства с Microsoft

January 13th, 2009 Begemot

Вы уже партнер MS? Мне всегда казалось что это что-то сложное и явно не для простого девелопера-одиночки. На днях в swrus пролетело письмо с более-менее развернутой информацией по возможности партнерства. Я и не знал что всяких программ так много, возможно кому-то пригодится. Письмо приводится с разрешения автора:

 

Существует несколько программ от Microsoft, но многие начинаются с Registered Member (бесплатно) https://partner.microsoft.com/ukraine и https://partner.microsoft.com/rus/

Это сайт для российских разработчиков, т.к. многие программы идут вместе с государственными инвестициями и российскими инвесторами, но информации можно
почерпнуть много и всему остальному СНГ http://www.ms-start.ru/

вот те программы, которые на мой взгляд самые интересные

http://www.innovateon.com   все просто: регистритесь, создаете сколько угодно проектов, для каждого проекта выбираете технологию (технологии) от МС
и получаете скидки, а иногда и бесплатности =) Что приятно: если продукт не использует технологии МСа, то можно выбрать из технологий Windows Vista и пройти бесплатное тестирование для “Certified for Windows Vista”. Также, если продукт использует хранение данных, то можете добавить, как фичу, хранение под MS SQL и пройти тестирование и лейблирование по данной технологии.

http://www.microsoft.com/BizSpark/    Это вообще супер. Регистрируясь в программе, вы получаете доступ к ограмадному списку продуктов Microsoft на 3-и года. Через 3 года – должны за все это 100 usd. Плюсы описаны на сайте.

Минус –
Как зарегиться: на сайте заполняете заявку, для входа вам не хватает кода партнера. Спустя  некоторое время к вам прийдет письмо от представителя МС по данной программе в вашей стране. В Украине данным вопросом занимается Сергей Байдачный Sergiy.Baydachnyy@microsoft.com при контакте можете сослаться на меня.

По моему мнению – Microsoft раскручивает свой магазин Marketplace, который, начиная с Vista, интегрирован в Windows. Пока от него толку мало, но далее будет… =)

Также следует не забывать, о том, что не подписанные драйвера уже не инсталлятся.

Что мешает МСу не подписанный и не прошедший проверку софт блокировать? Ничего =) Софта много – можно половину и “побрить” =)

MS Solution Profile – дает возможность поиска партнеров.
Certified/Works with Vista – на западе любят, т.к. это гарантия стабильной и безопастной работы. PR жив и жить будет =)

P.S.  Недавно увидел на клавиатуре Microsoft, если перевернуть, сообщение типа: работа на клаве в неудобной позе приводит к болезне суставов. Обратитесь к своему доктору за помощью, если у вас появились первые болевые ощущения…. Что то типа этого. Для нас бред – для конечного пользователя – забота и любовь =)

Ни к чему не агитирую, но играть на стороне большинства всегда приятнее, чем плевать против ветра =)

(с)  Bistriy Andrey / www.bistriy.com

Интересно среди читателей есть те кто состоит в отношениях с MS и имеет с этого бенефиты?


Мука выбора с лицензиями

January 10th, 2009 Begemot

Как обычно провтыкал:) Оставив вопрос с типами лицензий на потом, и вот уже все готово для долгожданного релиза, который мог бы состоятся уже сегодня-завтра. Я начал делать страницу buy now и тут что-то мне попало под хвост 🙂

Изначально планировался простой подход, хорошо зарекомендовавший себя на предыдущей программе – две лицензии (Single и Extended) и бесплатные апдейты. Вторая лицензия стоит +50% и дает возможность ставить на три машины для одного пользователя. Планировалось 20 и $30.

Потом меня в сврусе убедили что мажорные апдейты  должны быть платными, иначе не кайф.

Сегодня начав делать buy now и смотреть сайт других шароваршиков для примера, я заметил что у многих есть Business. И подумал чем я хуже…? В итоге вырисовалась такая картина

  1. Single – $20
  2. Business – $25
  3. Extended – $30 – до 3 компов для 1 пользователя (домашний, рабочий, ноут)

или

Single – $20 и Businees – $30 позволяет использовать в бизнесе, или до 3 ком…

и платные мажорные апдейты.

Не успел я решить хорошая или нет это идея, меня натолкнули на еще более свежую – подписка на год. Дело в том что утилитка вполне может быть массовой, но в принцие достаточно простая – нет уверености что массовый пользователь оценит ее в $20.

Годовую подписку (на использование, не на апдейты), можно продавать по $10\$15 для бизнес версии – в надежде на то что такая сумма мало кого смутит. Так сказать сделать ставку на массовость и продления через год.

Если есть чем поделится, буду благодарен за любой опыт\мысли в комментариях 🙂


Навалимся и подтолкнем триалпей?

January 10th, 2009 Begemot

Год назад Trialpay обешал ввести поддержку пайонера, даже один извесный в сврус человек грозился помочь. Но что-то там с места не сдвинулось за это время.

Сейчас я их опять спросил, можно ли вывести деньги на пайонер. В ответ получил

Unfortunately we have only received a handful of requests to support Payoneer.  At this time it does not make business sense to support this payment method, until we receive a larger set of requests.

Я им сейчас напишу про то, как пайонер важен для простых русскоязычных работяг от шаровары, но может соберемся толпой и подтолкнем махину?

Каждый может внести свой вклад, написав в саппорт триалпея и с просьбой\вопросом о поддержке пайонера, присоединяйтесь!

Интересно сколько человек напишет:)


Сабмитим, пользуясь случаем

December 26th, 2008 Begemot

 

В наше тяжелое кризисное время, так приятно получать бонусы 🙂 Вот Руденко и компания, предлагают заказав сабмит программы по каталогам ($50), получить на шару сабмит сайта по веб-директориям (обычно тоже 50).

  До 31-го Декабря включительно, у Вас есть уникальная возможность заказать два самых популярных пакета услуг по цене одного. Вы заказываете пакет  “Basic” (даунлоад-сайты, пресс-релизы, RSS-Feed’ы) и получаете бесплатно  пакет “Link” (400+ web-директорий с защитой от автоматического сабмита).

    Подробности акции смотрите на нашем сайте:

    http://submit-everywhere.com/xmas08.html

Охренеть, дайте две! подумал я и взял две, раз такая шара.

А ты уже затарился сабмитом?:)

Posted in Шаровароварение
Comments Off on Сабмитим, пользуясь случаем


Рождество благословенное

December 25th, 2008 Begemot

С продажами совсем не ахти, с продажами в штаты, еще хуже. За месяц всего 4 ордера из штатов, и два из них пришли в Рождество, днем и поздно вечером (по штатам). А говорят что все празднуют…

Выходит они не только сами празднуют, но и людям повод дают. Ждем нового года 🙂


Шароварная криптография: Выбираем алгоритм для системы лицензирования

December 24th, 2008 Begemot

Итак вернемся к шароварной криптографии, нам нужно научится создавать систему ключей и добится двух условий

  1. Приложение должно иметь возможность убедиться, что введеный ключ – это именно оригинальный, неизмененый ключ который сделали. 
  2. Злоумышленник не должен иметь возможности создать свой валидный клю – избегаем кейгенов

Для этих целей идеально подходит цифровая подпись на основе ассиметричной криптографии. На очень упрощеном бытовом уровне суть такова – есть два ключа, открытый и закрытый. Закрытый знаете только вы, пользуясь им вы вычисляете ЭЦП от вашей лицензии. Открытый ключ известен всем и  используется для проверки подписи. Разумеется вычислить закрытый ключ, зная открытый – сильно сложно.

Самый распространенный метод ассиметричной криптографии – RSA. Чуть менее распространеный, в силу свой молодости – DSA. В кратце плюсы каждого алгоритма

RSA:

  • Более зрелый, проверенный временем. Больше реализаций и примеров использования.
  • Возможность использовать как для создания подписи, так и для шифрования. (последнее нам не надо, но в потенциально может пригодится)

DSA:

  • Легче в реализации, если писать самому, а не использовать готовые библиотеки
  • Меньше длина подписи – 40 байт.
  • Делает все что нам нужно
Ещё есть алгоритмы на эллиптических кривых (тот же ECDSA, например), которые работают быстрее и требуют меньших размеров ключей, но они ещё менее распространены и сложны для понимания нематематиками

Я выбрал (мне выбрали:)) DSA.

Дальше нам нужно сделать следующе

  1. Сгенерировать пару ключей.
  2. Выбрать готовую реализацию алгоритма DSA или RSA и прикрутить ее к своему проекту. Или  второй вариант – написать ее самому, как показывает опыт одного человека, это вполне реально, хотя не уверен что я бы лично рискнул:)
  3. Написать две процедуры: подписи лицензии для кейгена и проверки для приложения.

В принципе, если знать как это делать – ничего сложного или особо затратного по времени тут нет, хотя у меня заняло почти две недели потому что я не знал как это делать:(  Для того, чтобы вы знали, и не повторяли моих ошибок,  я расскажу все это в подробностях в следующих постах:)


Вопрос на миллион долларов

December 16th, 2008 Begemot

Релиз у меня и так уже просто отвратительно затянут, снчала хотелось в ноябре, потом были планы 1 декабря, потом 15, сейчас я могу успеть к 20му:)

Но стоит ли выпускать продукт (сейчас он в статусе бесплатной беты), как раз перед праздниками. С одной стороны – морально, уже очень хочется покончить с этой тягомотиной, с другой – вроде бы как логично переждать праздники. Чтобы и пользователям ничего не мешало покупать, и меня саппорт от пьянки не отвлекал:)

Что делать? Ваше мнение?