|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
29.10.2015, 18:47 | #1 |
Пользователь
Регистрация: 09.05.2008
Сообщений: 40
|
Код авторизации для передачи по email и т.д.
Доброго времени суток всем.
Суть проблемы в общем глупая донельзя: Готовая программа привязывается к конкретному компьютеру, реализация готова (благо до меня уже эти вопросы решали). Юзеру выдается авторизационный код, зашифрованный с помощью обычного XOR (тоже в интернете готовых решений - вагон). Зашифрованный код с помощью другой программы прекрасно распаковывается и выдает уже рабочий код для активации всех возможностей программы. Все работает идеально пока я не пытаюсь передать авторизационный код по почте. Так я понимаю, что проблема в кодировках. При копировании из Memo одной в edit другой - все отлично. При копированиии в текст email либо отправки через mailto либо... получается бред Сразу оговорюсь - используется Delphi 7 (уже знаю, что D2010 работает с UTF8, но ради этого перепиливать весь код не с руки). Что было предпринято: 1. Комбинации OEMConvert для Memo и Edit true/false, а также варианты CHARSET - DEFAULT, RUSSIAN, OEM ... 2. Использование функции UTF8toAnsi и AnsiToUTF8 в различных комбинациях. Кстати, на этом этапе получился интересный результат - чисто визуально окончательная строка похожа на исходную, но раскодировка XOR наотрез отказалась работать 3. Самописная функция Decode тоже результатов не принесла. Если интересно могу кинуть ее код - тоже где-то с просторов интернета благополучно взят Не испробовано: 1. Использовать шифрование строки не XOR, а с конвертацией в набор цифр (пока не нашел такую функцию готовую, буду думать о самостоятельном изобретении велосипеда). В итоге цифры как ни крути во всех кодировках одинаковые. 2. Передавать через email не символы, а ord-ы (опять же цифры) 3. Плюнуть и не использовать шифрование (не рекомендуется) Есть ли предложения? Последний раз редактировалось slm; 29.10.2015 в 18:50. |
29.10.2015, 19:09 | #2 |
Белик Виталий :)
Старожил
Регистрация: 23.07.2007
Сообщений: 57,097
|
Конвертируй код в base64 и передавай, а на стороне клиента расконверчивай.
I'm learning to live...
|
29.10.2015, 19:37 | #3 |
Пользователь
Регистрация: 09.05.2008
Сообщений: 40
|
Stilet, спасибо - как всегда просто и изящно. Кстати, это та программа, которую мы с тобой обсуждали и опять же по твоей наводке создана. Как-то я и не подумал про base64. Единственное - придется искать и заменять пробел на +, но это мизерная проблема
|
29.10.2015, 19:58 | #4 | |
Белик Виталий :)
Старожил
Регистрация: 23.07.2007
Сообщений: 57,097
|
Цитата:
А то, о чем ты говоришь - это URI кодировка. Кстати можно и ее использовать, если данные не сильно секретные.
I'm learning to live...
|
|
29.10.2015, 20:11 | #5 |
Пользователь
Регистрация: 09.05.2008
Сообщений: 40
|
Еще раз спасибо. Все отлично работает.
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Ищу программиста для email маркетинга | VoronX | Фриланс | 3 | 18.03.2014 15:29 |
Посоветуйте компонент для отправки email. | Zadovatel | Компоненты Delphi | 8 | 04.09.2013 00:48 |
JS для авторизации | zalza | Помощь студентам | 1 | 25.11.2012 03:52 |
Виджет для авторизации вк | Andrey770 | PHP | 0 | 29.10.2012 21:07 |
Покритикуйте код авторизации | skeletor | PHP | 13 | 06.08.2010 02:45 |