powered by simpleCommunicator - 2.0.60     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Delphi [игнор отключен] [закрыт для гостей] / Как в ADO зашифровать пароль на базу Access mdb ,чтобы в ехе не видно было??
9 сообщений из 9, страница 1 из 1
Как в ADO зашифровать пароль на базу Access mdb ,чтобы в ехе не видно было??
    #32323743
tihonov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Всем привет. Как в ADO зашифровать пароль на базу Access mdb? После компиляции в ехешнике остаются прописаны все ConnectionString -и в явном виде где прописаны пароль и т.п. Ищутся обычным просмотром по F3 .В самом же mdb этого не увидешь . И получается защищал базу ,а дельфа все рассказала .Это для любого подключения в ADO (SQL, Paradox и пр.) с ехешника можно прочесть пароль ??
Кто знает как с этим бороться?
Спасибо!
...
Рейтинг: 0 / 0
Как в ADO зашифровать пароль на базу Access mdb ,чтобы в ехе не видно было??
    #32323816
mike_n
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
For starters, the simplest way is to hardcode encoded password (encode using some simple algorithm that is a part of your application. Then, when the app runs, decode it and build connection string on the fly. Basically, this is quite a common problem, many compilers treat literal constansts in the same way (VB, etc.). If you want to be more sophisticated, keep encrypted password in registry and embed decryption code into your app. As far as I know, Delphi can consume COM objects and it seems to me that Microsoft has some COM wrappers for their Win32 CryptoAPI library. Personally, I just use this library with Visual C++. Quite simple. I am not familiar with Delphi, but if you can call Win32 C functions from within Delphi code, this is the way to go (my assamption you are developing on Microsoft platform). Good luck.
...
Рейтинг: 0 / 0
Как в ADO зашифровать пароль на базу Access mdb ,чтобы в ехе не видно было??
    #32323846
Valdemar
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Интересно ты понял его ответ, перевести.
...
Рейтинг: 0 / 0
Как в ADO зашифровать пароль на базу Access mdb ,чтобы в ехе не видно было??
    #32323861
Фотография Luchkin Dmitry
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
простейший вариант:
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
....
function  TSBKey.charXor(cStr, cXorMask : string) : string;
var
   nl1, nl2   : integer;
begin
   Result:= cStr; nl2:=  1 ;
   for nl1:=  1  to length(cStr) do begin
      Result[nl1]:= Char(Byte(cStr[nl1]) xor Byte(cXorMask[nl2]));
      Inc(nl2);
      if nl2 > length(cXorMask) then nl2:=  1 
   end;
end;
.....
charXor('­ѓ’Џ“џАЃ‹“џ—ћ?„', 'маска') // 'Access password'

берёшь в дизайне ConnectionString, прогоняешь через эту фигню, а в run-time получаешь из этого нормальную строку снова.
:)
...
Рейтинг: 0 / 0
Как в ADO зашифровать пароль на базу Access mdb ,чтобы в ехе не видно было??
    #32323864
Valdemar
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ты ему предложил Дос кодировку, а видеть ее так же будут и дальше.
...
Рейтинг: 0 / 0
Как в ADO зашифровать пароль на базу Access mdb ,чтобы в ехе не видно было??
    #32323870
Фотография Luchkin Dmitry
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
где? будет видно только 'ѓ’Џ“џАЃ‹“џ—ћ?„' и 'маска', а 'Access password' - нигде не увидишь.
...
Рейтинг: 0 / 0
Как в ADO зашифровать пароль на базу Access mdb ,чтобы в ехе не видно было??
    #32323975
Valdemar
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Напиши эту калябулю в файл просмотри в фаре
...
Рейтинг: 0 / 0
Как в ADO зашифровать пароль на базу Access mdb ,чтобы в ехе не видно было??
    #32325184
mike_n
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
To Valdemar...

Nope, it is not DOS encoding, it is password XORed with something. And basically, this is how all symmetric encryption algorithms work (plus permutation). Generally speaking you are right - executable file is not the right place to keep password. Even more, a PC itself is not the right place either. If you anticipate that your code may be attacked by a professional crypto-analyst, get yourself a smart id card or something else of this kind. National Security Agency (something our late FAPSI was similar to) never implements encryption algorithms as pure software solutions - always as tamper-resistant microchips. But we are not talking here about NSA or FAPSI, aren't we? For common end-users keeping encrypted connection string in registry is enough. What are you protecting, anyways? Viably important state secrets? Hardly. And for corporate junk this will do.

PS: Sorry for using English, I am on a corporate comp, not allowed to install another locale and hate to write Russian with Latin fonts. Such a mess comes out.
...
Рейтинг: 0 / 0
Как в ADO зашифровать пароль на базу Access mdb ,чтобы в ехе не видно было??
    #32325191
tihonov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Парни , спасибо ! Сам понял, что спросил фигню, но было уже поздо вопрос опубликовался
...
Рейтинг: 0 / 0
9 сообщений из 9, страница 1 из 1
Форумы / Delphi [игнор отключен] [закрыт для гостей] / Как в ADO зашифровать пароль на базу Access mdb ,чтобы в ехе не видно было??
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]