Перейти к содержимому


Фотография

Модуль аутентификации WMSigner для WebMoney на C# создан


  • Пожалуйста, авторизуйтесь для ответа.
5 ответов в данной теме

#1 Продвинутый пользователь IT Consulting (WMID 301095414760 )

  • Группа: Пользователи
  • сообщений 79
  • Регистрация: 30-марта 07
  • МестоположениеУкраина
  • Webmoney BL

Отправлено 30 марта 2007 - 03:15

После долгих дней тяжелой работы, наконец, создан WMSigner под .Net на C#.


Раньше приходилось использовать модуль WMSigner написанный на C++. Никаких аналогов не было. Была попытка переложить его на php, но автор, не разобравшись в сути, а просто "переложив",  сделал не работоспособный модуль. Вернее он работает, но только для некоторых ключей. Но, в общем, его использовать невозможно.
 
А так как никаких аналогов WMSigner не имел, то было 2 варианта:
 
1. Использовать тот, что есть на C++ (либо WMSigner -- консольное приложение, либо так называемый WMSignerX -- COM компонент, внутренне устроенный аналогично WMSigner). Так большинство и делало.
 
2. Вообще забыть про подпись WMSigner, и пользоваться сертификатом WM Keeper Light.
 
Все бы хорошо, но для того, чтобы использовать нормальный (1) вариант, нужно иметь зарегистрированный COM компонент WMSigner на сервере хостинга. Плюс ко всему нужно было иметь привелегии больше Medium Trust. И самое главное -- юзать WMSigner было небезопасно, т.к. на сервере хранился ключ, пароль и логин. А имея 3 эти вещи можно почистить любой кошелек. То есть держать такой сайт можно было только у проверенного хостера.
 
Теперь WMSigner есть на C#. Но он не просто переложен, а написан заново. Алгоритм естественно тот же, но реализация совершенно новая, имеющая мало схожего с тем, что есть на C++.

Вот преимущества:

1. Для работы WMSigner на сервере достаточно минимальных привилегий. Не нужно регистрировать WMSigner как COM компонент. Для многих это было и остается основной проблемой.

2. Теперь НЕ нужно хранить файл кошелька, логин и пароль на сервере. Вместе с WMSigner пришлось делать еще одну библиотеку, и интерфейс к ней, которая предварительно обрабатывает файл кошелька, логин и пароль, и получает хэш, который в дальнейшем и используется для подписи. Хэш преобразуется в строку Base 64 и хранится в Web Config.

3. Устранены некоторые ошибки старого WMSigner. Убраны запутанные (видимо специально) конструкции.

4. Код очень понятен. Его можно назвать в полном смысле слова самодокументируемым.

Пока решается вопрос по какой лицензии его распространять. Очень скоро все желающие будут иметь возможность получить WMSigner.

 
    • 0
  • Наверх

#2 Новичок ScaliaR (WMID 353759275071 )

  • Группа: Пользователи
  • сообщений 4
  • Регистрация: 29-марта 07
  • МестоположениеРоссия
  • Webmoney BL

Отправлено 11 апреля 2007 - 14:53

Ну было бы очень здорово! С нетерпением жду:)

    • 0
  • Наверх

#3 Продвинутый пользователь 058016335779 (WMID 058016335779 )

  • Группа: Пользователи
  • сообщений 73
  • Регистрация: 30-декабря 05
  • МестоположениеУкраина
  • Webmoney BL

Отправлено 18 апреля 2007 - 21:54

Была попытка переложить его на php, но автор, не разобравшись в сути, а просто "переложив",  сделал не работоспособный модуль. Вернее он работает, но только для некоторых ключей. Но, в общем, его использовать невозможно.


А если так попробовать? http://my-tools.net/wmxi/ :lol:
http://owebmoney.ru/...?showtopic=2220
Два месяца обсуждаем. Пока у всех работает.


Пока решается вопрос по какой лицензии его распространять. Очень скоро все желающие будут иметь возможность получить WMSigner.

Не жадничайте, и делайте фри оупенсорс.
Людям приятно и вам зачтётся.
Да и Шарп, на сколько мне известно, реверсится от и до.

    • 0
  • Наверх

#4 Продвинутый пользователь IT Consulting (WMID 301095414760 )

  • Группа: Пользователи
  • сообщений 79
  • Регистрация: 30-марта 07
  • МестоположениеУкраина
  • Webmoney BL

Отправлено 13 мая 2007 - 10:55

Всем, у кого есть персональный аттестат я смогу выслать Beta версию уже сейчас. А примерно через неделю будет доступна Release версия. Через время ее можно будет скачать с сайта.

 
    • 0
  • Наверх

#5 Продвинутый пользователь IT Consulting (WMID 301095414760 )

  • Группа: Пользователи
  • сообщений 79
  • Регистрация: 30-марта 07
  • МестоположениеУкраина
  • Webmoney BL

Отправлено 20 мая 2007 - 08:38

Всем интересующимся: создан сайт посвященный вопросам использования модуля WMSigner для платформы .Net: http://www.wmsigner.com/

Если кратко:

[*]Исчезла проблема размещения модуля на сервере (модуль WMSigner для платформы .Net не требует регистрации на сервере или специальных прав для своей работы).
[*]Решена проблема хранения на сервере файла ключей WMID и пароля для восстановления ключей. Теперь файл ключей и пароль для восстановления ключей вовсе не хранятся на сервере. Вместо этого используется строковое представление ключей в формате Base64, которое удобно хранить в конфигурационном файле (доступ к которому закрыт по умолчанию).
[*]С использованием проекта Mono существует возможность работать со сборкой в разных операционных средах (Linux, Solaris, Mac OS X, Windows и Unix).
[*]Увеличена скорость работы модуля примерно в 3 раза (для Beta версии это значение существенно меньше).
Притом теперь процесс подписи разбит на 2 части:

  • получение представление ключей в формате Base64 с помощью специально созданной утилиты Keys Extractor;
  • использование этого представления для инициализации класса Signer, осуществляющего подпись строки.
Так выглядит утилита для получения строки в формате Base64:



 
    • 0
  • Наверх

#6 Продвинутый пользователь IT Consulting (WMID 301095414760 )

  • Группа: Пользователи
  • сообщений 79
  • Регистрация: 30-марта 07
  • МестоположениеУкраина
  • Webmoney BL

Отправлено 10 сентября 2009 - 04:45

Небольшая новость по проекту для разработчиков. Опубликована новая версия 3.1. Более подробную информацию разместил в статье на wiki.webmoney

 
    • 0
  • Наверх