Russian Qt Forum

Qt => Общие вопросы => Тема начата: Volodia от Сентябрь 28, 2006, 11:57



Название: "Encoding and decoding in QT 3.3.3" и другое
Отправлено: Volodia от Сентябрь 28, 2006, 11:57
Привет всем!

Посоветуйте, пожалуйста, QT библиотеку для кодирования и декодирования стрингов. Я нашел только "KCodecs" в kdecore Library API Documentation.
И еще вопрос,  куда в Linux-е можна писать данные, кроме как в файлы, чтобы программа при старте читала их от туда?

Спасибо.


Название: "Encoding and decoding in QT 3.3.3" и другое
Отправлено: bigirbis от Сентябрь 28, 2006, 12:38
QTextCodec обычно хватает.
Вторую часть вопроса не смог осилить. Пространнее напиши, пожалуйста.


Название: "Encoding and decoding in QT 3.3.3" и другое
Отправлено: Volodia от Сентябрь 28, 2006, 13:12
Ну проблема в следующем:
Есть програма которая во время работы сохраняет нужную ей информацию (эти данные должны кодироватся(шифроватся) какимто алгоритмом), чтобы  при следующем запуске прочитать её, раскодировать и использовать. Но нужно чтобы "нехорошие люди" не знали или не сразу догадались где эти данние есть. В Windows я использовал реестр. А что можна сделать в Linux? Писать кудато глубого в файлы не очень хочется.

Спасибо.


Название: "Encoding and decoding in QT 3.3.3" и другое
Отправлено: Dendy от Сентябрь 28, 2006, 13:37
Советую посмотреть на Qt Cryptographic Architecture:
http://delta.affinix.com/qca/


Название: "Encoding and decoding in QT 3.3.3" и другое
Отправлено: dont от Октябрь 02, 2006, 19:25
>>Но нужно чтобы "нехорошие люди" не знали или не сразу догадались где эти данние есть.
Попробуй в переменные окружения..
Знаю что изврат, но....)))


Название: "Encoding and decoding in QT 3.3.3" и другое
Отправлено: bigirbis от Октябрь 03, 2006, 08:42
Люди разные бывают... - лучше сразу криптовать.


Название: "Encoding and decoding in QT 3.3.3" и другое
Отправлено: Ryhel от Октябрь 04, 2006, 12:17
А чем не подходит QSettings?)


Название: "Encoding and decoding in QT 3.3.3" и другое
Отправлено: bigirbis от Октябрь 04, 2006, 13:31
To Ryhel
Читай тему полностью.
Пост: Чт Сен 28, 2006 1:12 pm


Название: "Encoding and decoding in QT 3.3.3" и другое
Отправлено: atak от Октябрь 04, 2006, 13:52
Цитата: "Volodia"
Писать кудато глубого в файлы не очень хочется.

А что если писать в БД? К примеру PostgreSQL там строки, вроде как, резиновые... Шифрованный QByteArray, преобразуешь каждый байт в шестнадцатеричную литерную последовательность, записываешь как строку в БД.


Название: "Encoding and decoding in QT 3.3.3" и другое
Отправлено: Ryhel от Октябрь 05, 2006, 01:29
To bigirbis
Читал вот это:
"И еще вопрос, куда в Linux-е можна писать данные, кроме как в файлы, чтобы программа при старте читала их от туда?"
QSettings в самый раз :)


Название: "Encoding and decoding in QT 3.3.3" и другое
Отправлено: bigirbis от Октябрь 05, 2006, 08:34
To Ryhel
А вот это читал?
Цитировать
Ну проблема в следующем:
Есть програма которая во время работы сохраняет нужную ей информацию (эти данные должны кодироватся(шифроватся) какимто алгоритмом), чтобы при следующем запуске прочитать её, раскодировать и использовать. Но нужно чтобы "нехорошие люди" не знали или не сразу догадались где эти данние есть. В Windows я использовал реестр. А что можна сделать в Linux? Писать кудато глубого в файлы не очень хочется.


Название: "Encoding and decoding in QT 3.3.3" и другое
Отправлено: Alex03 от Октябрь 05, 2006, 08:49
Нехорошие люди знают про такие утили как strace и т.д.
Так что лучше пусть копаются в конфиге в котором параметры зашифрованы.

Типа такого:
[section_name]
param1="JFD22874KLKJHLD234LKJH44lKhl"
param2="HJDLF6SDKLJ20D8KDJH5DHS7H"

Тут уже без отладчика (ну иль там дизассемблера и т.д.) не обойтись.
Иль я чего не понял из того что автор хочет?


Название: "Encoding and decoding in QT 3.3.3" и другое
Отправлено: Ryhel от Октябрь 05, 2006, 09:52
To bigirbis:
Читал:) Не понимаю, что тебе не нравится:) Я так понял, что автор не хочет писать в файлы не потому что "ФАЙЛЫ", а потому что не хочется писать в них самому:)


Название: "Encoding and decoding in QT 3.3.3" и другое
Отправлено: bigirbis от Октябрь 05, 2006, 09:59
ОФФТОП
Судя по тексту, автор темы просто не хотел далеко прятать файлы, а не то чтобы вообще в них писать.


Название: "Encoding and decoding in QT 3.3.3" и другое
Отправлено: Volodia от Октябрь 05, 2006, 12:15
Привет всем!
Спасибо за поддержку :)
Как писал Alex03 на счет:
section_name]
param1="JFD22874KLKJHLD234LKJH44lKhl"
param2="HJDLF6SDKLJ20D8KDJH5DHS7H"

Я так и делаю. Но надо данные писать еще кудато, чтобы при старте программы сравнивать данные с файла и другого места. Делается это потому что файл можно подменять(скопировать его сегодня а подменить через неделю) и это значит что программа получит старые настройки.
База данных не подойдет, условия такие.
QSettings -  кажетьса подходит. Правда куда оно пишет? В хелпе написано - "On Unix systems, QSettings uses text files to store settings." Значит опять таки файлы :-/


Название: "Encoding and decoding in QT 3.3.3" и другое
Отправлено: Dendy от Октябрь 05, 2006, 13:10
Извечная проблема защитьІ программ. В результате сводится к тому, что защитить нельзя. Тем более, что свой Unix - своя крепость, спрятать ничего не получится, уж лучше изменить подход к методу защитьІ. Например, защитить лицензией.

Для подобного криптования можно использовать QSettings вкупе со своим форматом данньІх, установленньІм через: QSettings::registerFormat().


Название: "Encoding and decoding in QT 3.3.3" и другое
Отправлено: Alex03 от Октябрь 05, 2006, 14:25
Если юзеру время менять нельзя то в эти
param1="JFD22874KLKJHLD234LKJH44lKhl"
param2="HJDLF6SDKLJ20D8KDJH5DHS7H"
можно и время закодировать.

Ещё можно прогу съюидной забубенить и писать в файл недуступный юзеру.

добавлено спустя 59 минут:

 Про время я видимо не в тему ляпнул? В том смысле что для данной задачи не пойдёт?