Модераторы: Poseidon, Snowy, bems, MetalFan

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Защитить данные TStringGrid, Как ? 
:(
    Опции темы
ZBugz
  Дата 4.8.2009, 11:01 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 636
Регистрация: 15.2.2006
Где: Москва

Репутация: 6
Всего: 6



Всем привет.  smile Может и не сюда постю, но если че, переместите тему.
Прочитал эту тему http://forum.vingrad.ru/articles/topic-226725/unread-1.html
Ну и собственно вопрос, как защитить данные в TStringGrid ? Короче нужно что бы их не могли читать другие программы.
PM MAIL   Вверх
Romikgy
Дата 4.8.2009, 11:05 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Любитель-программер
****


Профиль
Группа: Участник Клуба
Сообщений: 7326
Регистрация: 11.5.2005
Где: Porto Franco Odes sa

Репутация: 26
Всего: 146



юзай шифрованый массив 
а при выводе дешифруй и выводи юзая OnDrawCell


--------------------
Владение русской орфографией это как владение кунг-фу — истинные мастера не применяют его без надобности. 
smile

PM   Вверх
ZBugz
Дата 4.8.2009, 11:23 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 636
Регистрация: 15.2.2006
Где: Москва

Репутация: 6
Всего: 6



Цитата(Romikgy @ 4.8.2009,  11:05)
юзай шифрованый массив 
а при выводе дешифруй и выводи юзая OnDrawCell

Ну вот мысль про OnDrawCell была, тока вот как реализовать, можно хотя бы простенький пример ? smile 
PM MAIL   Вверх
RockClimber
Дата 4.8.2009, 12:32 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 848
Регистрация: 5.5.2006
Где: планета 013 в тен туре

Репутация: нет
Всего: 15



Как вариант, не шифровать, а хранить данные отдельно. Сделать например строковый массив для данных, а для вывода использовать TDrawGrid.
Цитата(ZBugz @  4.8.2009,  11:23 Найти цитируемый пост)
Ну вот мысль про OnDrawCell была, тока вот как реализовать, можно хотя бы простенький пример ?

А что именно в выводе непонятно? Canvas.FillRect и Canvas.TextRect (или TextOut), и ячейка готова...


--------------------
Хорошо кинутый дятел далеко летит, крепко встревает, долго торчит.
PM MAIL GTalk   Вверх
ZBugz
Дата 4.8.2009, 13:16 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 636
Регистрация: 15.2.2006
Где: Москва

Репутация: 6
Всего: 6



Цитата(RockClimber @ 4.8.2009,  12:32)
А что именно в выводе непонятно? Canvas.FillRect и Canvas.TextRect (или TextOut), и ячейка готова...

Да вот именно по синтаксу не понятно, для меня эти работы с Canvas, как темный лес.
PM MAIL   Вверх
RockClimber
Дата 4.8.2009, 17:20 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 848
Регистрация: 5.5.2006
Где: планета 013 в тен туре

Репутация: нет
Всего: 15



Я тут сам недавно разбирался. Вот мой примерчик, там правда комментариев нет...
Общий принцип такой: Canvas.FillRect - закрашивает прямоугольник, Canvas.TextRect и Canvas.TextOut выводят текст.
Метод TextOut использует текущие настройки стиля текста, а TextRect позволяет их задавать.

Единственное - проект сделан в Lazarus'e, так что под Delphi придется доработать напильником. В принципе, замена расширений lpi, lpr и lfm на dpi, dpr и dfm должна частично решить проблему, ну еще возможн придется эти файлики руками поковырять. Реализации Canvas.TextRect и Canvas.TextOut скорее всего по конечному результату должны совпадать с дельфийскими.
В проекте все выводится на TPanel, с гридом все то же самое, только использовать надо StringGrid.Canvas.

Присоединённый файл ( Кол-во скачиваний: 3 )
Присоединённый файл  TextOut1.zip 340,88 Kb


--------------------
Хорошо кинутый дятел далеко летит, крепко встревает, долго торчит.
PM MAIL GTalk   Вверх
Rrader
  Дата 18.8.2009, 14:48 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Inspired =)
***


Профиль
Группа: Экс. модератор
Сообщений: 1535
Регистрация: 7.5.2005

Репутация: 70
Всего: 191



Интересная тема smile 

Как немного понимающий в вопросе, скажу, что хорошо защитить данные TStringGrid крайне сложно. У меня есть программа, которая читает данные из таблицы, даже если таблица рисуется в OnDrawCell. Ей не страшны обфускации кода, упаковщики, шифровщики, потому что она берет данные почти с самого низа, на пути к win32k.sys smile Эта программа - моя закрытая разработка, но кто хочет написать свой защищенный StringGrid - готов продемонстрировать граббер smile  

Более продвинутая защита - рисование графическим алфавитом, когда каждой букве соответствует заранее подготовленная картинка. В сочетании с шифрованием может выйти очень неплохо, но замутить такое сложно. В общем, главное условие - не использовать API для рисования текста таблицы.


--------------------
Let's do this quickly!
Rest in peace, Vit!
PM MAIL Skype   Вверх
Frees
Дата 19.8.2009, 08:25 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 2233
Регистрация: 2.12.2005
Где: Екатеринбург

Репутация: 9
Всего: 54



от Print Screen всеравно не защитить

Добавлено через 1 минуту и 53 секунды
все что видит пользователь на экране можно "стырить".... 
так что защищайся не шифрованием а не выводи все сразу, не показывай данные целиком а только кусками тогда будет проще купить твои данные чем их "тырить"


--------------------
Кольцов Виктор Владимирович
PM MAIL ICQ   Вверх
Rrader
Дата 19.8.2009, 08:45 (ссылка) |    (голосов:1) Загрузка ... Загрузка ... Быстрая цитата Цитата


Inspired =)
***


Профиль
Группа: Экс. модератор
Сообщений: 1535
Регистрация: 7.5.2005

Репутация: 70
Всего: 191



От PS защищают его полным блокированием


--------------------
Let's do this quickly!
Rest in peace, Vit!
PM MAIL Skype   Вверх
ZBugz
Дата 19.8.2009, 10:06 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 636
Регистрация: 15.2.2006
Где: Москва

Репутация: 6
Всего: 6



Цитата(Rrader @ 18.8.2009,  14:48)
Более продвинутая защита - рисование графическим алфавитом, когда каждой букве соответствует заранее подготовленная картинка. В сочетании с шифрованием может выйти очень неплохо, но замутить такое сложно. В общем, главное условие - не использовать API для рисования текста таблицы.

Ну вот кстати это говорят самое оно. Т.е. тупо рисовать. 

А то что принтскрин, это другое, главное защитить данные от перехвата и импорта к врагу.
PM MAIL   Вверх
Akella
Дата 19.8.2009, 10:11 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Творец
****


Профиль
Группа: Модератор
Сообщений: 18485
Регистрация: 14.5.2003
Где: Корусант

Репутация: 36
Всего: 329



Открываешь программу на другом компе с помощью RAdmin, нажимаешь PS на своём компе. Вуаля smile

Добавлено через 3 минуты и 7 секунд
Подсказка. От старых версий RAdmin`а и похожих программ есть способ спастись, включив полупрозрачность. Например, некоторые окна квипа , а также главное выпадающее меню (слева вверху) у программ MS Office 2007 тоже не видно. Но некоторые программы, например, TeamViewer, стандартный виндовый RDC всё равно воспроизводят всё подряд.

Добавлено через 4 минуты и 30 секунд
Цитата(ZBugz @  19.8.2009,  10:06 Найти цитируемый пост)
А то что принтскрин, это другое, главное защитить данные от перехвата и импорта к врагу. 

Ну как это другое, если без проблем картинку можно распознать.
PM MAIL   Вверх
Frees
Дата 19.8.2009, 11:19 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 2233
Регистрация: 2.12.2005
Где: Екатеринбург

Репутация: 9
Всего: 54



Цитата(ZBugz @  19.8.2009,  13:06 Найти цитируемый пост)
А то что принтскрин, это другое, главное защитить данные от перехвата и импорта к врагу.

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

все что видиш не спрятать!


--------------------
Кольцов Виктор Владимирович
PM MAIL ICQ   Вверх
former
Дата 19.8.2009, 11:42 (ссылка) |    (голосов:1) Загрузка ... Загрузка ... Быстрая цитата Цитата


MEMS Expert
***


Профиль
Группа: Завсегдатай
Сообщений: 1166
Регистрация: 1.3.2006
Где: Россия

Репутация: 5
Всего: 17



Цитата(Rrader @  19.8.2009,  08:45 Найти цитируемый пост)
От PS защищают его полным блокированием 

Это бесполезно.  smile 
Цитата(Frees @  19.8.2009,  11:19 Найти цитируемый пост)
зря думаеш что другое )) это один из самых простых способов...да и прог есть куча которыйе тебе все картинки с твоего окна сграбят, они даже скролл двигать автоматом умеют, и все передадут файн ридеру....и все что нажито непосильным трудом будет у тех самых врагов от которых ты городиш защиту....

все что видиш не спрятать! 

Согласен. Как вариант.
На штатив устанавливается простейший цифровой фотоаппарат. Данные прокручиваются и делаются снимки. Фотографии загружаются в комп, и с помощью FineReader успешно распознаются. Это даже быстрее, чем PS.
Как вариант ScreenReader из состава того же FineReader или Corel Capture.
Затраты на защиту будут значительно дороже самих данных.
Не хотите что бы данные украли - не показывайте их.

Это сообщение отредактировал(а) former - 19.8.2009, 11:43


--------------------
Достаточно снизить уровень мышления, чтобы иные почувствовали почву под ногами.
PM MAIL   Вверх
Akella
Дата 19.8.2009, 12:01 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Творец
****


Профиль
Группа: Модератор
Сообщений: 18485
Регистрация: 14.5.2003
Где: Корусант

Репутация: 36
Всего: 329



Да и распознавать не нужно. Даже если в офисе... тихонько клацнул мобильником, распечатал инфу и будь здоров.
PM MAIL   Вверх
Yanis
Дата 19.8.2009, 13:18 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Участник Клуба
Сообщений: 2937
Регистрация: 9.2.2004
Где: Москва

Репутация: 72
Всего: 111



Цитата(former @  19.8.2009,  12:42 Найти цитируемый пост)
Не хотите что бы данные украли - не показывайте их.

Присоединяюсь. Уже не один топик наплодили на данную тему, немало копий сломано, в том числе и на винграде. Хочется скрыть данные? Запишите на диск, удалите все оригиналы, а диск сдайте на хранение в банк/закопайте/отправьте в космос. И даже в этом случае сохранность не гарантируется. Смотря какие данные.
Я допускаю, что такая возможность может пригодиться, но и вполне допускаю, что это «один случай из миллиона».

И, считаю, что если в программе и хранятся такие вот супер-пупер-секретные данные, то тут уже надо комплексно подходить к вопросу защиты. Заключать договоры с пользователями программы, создавать соответствующие условия (ну там железные клавиатуры с заблокированной кнопкой принтскрина) безопасности и использования программы, писать драйвера для защиты всего и вся.

И сейчас вообще нереальное что-то скажу. Программисты обязаны упрощать жизнь пользователей своих творений, а не наоборот. smile

П. С. Кстати, Rrader и другие, интересно (я, правда, не понял как) защищается от копирования ABBY Lingvo. Через WinAPI к списку слов достучаться не удаётся, и даже программно прокрутить скрол. Её-йный способ довольно неплохо защищает от непрофессионалов по исследованию программ smile


--------------------
user posted image *щёлк*
PM MAIL WWW ICQ   Вверх
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Delphi: Общие вопросы"
SnowyMetalFan
bemsPoseidon
Rrader

Запрещается!

1. Публиковать ссылки на вскрытые компоненты

2. Обсуждать взлом компонентов и делиться вскрытыми компонентами

  • Литературу по Дельфи обсуждаем здесь
  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда
  • Вопросы по реализации алгоритмов рассматриваются здесь
  • 90% ответов на свои вопросы можно найти в DRKB (Delphi Russian Knowledge Base) - крупнейшем в рунете сборнике материалов по Дельфи


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Snowy, MetalFan, bems, Poseidon, Rrader.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Delphi: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.1038 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.