Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Общие вопросы Delphi
Регистрация

Восстановить пароль

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 04.02.2011, 17:32   #1
quarty
Форумчанин
 
Аватар для quarty
 
Регистрация: 09.10.2010
Сообщений: 124
По умолчанию как зашифровать код готовый программы?

Скажите пожалуйста как зашифровать код готовой программы на Дельфи, вот например сделал программу для ввода пароля в нее, но если открыть через блокнот можно увидеть заданный пароль, вот как сделать чтоб он был зашифрован и ничего небыло видно?
quarty вне форума Ответить с цитированием
Старый 04.02.2011, 17:38   #2
Pein95
Форумчанин
 
Регистрация: 25.04.2010
Сообщений: 881
По умолчанию

а зачем вам распостронять програму с исходником?
Pein95 вне форума Ответить с цитированием
Старый 04.02.2011, 17:53   #3
veniside
Старожил
 
Регистрация: 03.01.2011
Сообщений: 2,508
По умолчанию

> как зашифровать код готовой программы на Дельфи

код-то тут причем


> можно увидеть заданный пароль

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

Ну или навесьте защиту, типо АссПротекта или ЕхеКрупта, с ней прийдётся 20 минут возиться, а не 5 )
"Когда приходит положенное время, человек перестаёт играть в пинбол. Только и всего."
veniside вне форума Ответить с цитированием
Старый 04.02.2011, 18:02   #4
BuT@JL
Форумчанин
 
Регистрация: 27.11.2008
Сообщений: 137
По умолчанию

Попробуй зашифровать пароль
например шифр цезаря
Код:
procedure TForm1.Button1Click(Sender: TObject);
var

  a,b,CaesarEncipher:string;

  i,n,t:integer;

begin
   n:=3;
  a:=Form1.Edit1.Text;

for i := 1 to length(a) do begin
    T := (Ord(a[ i ]) + n);
    if T >= 256 then dec(T, 256);
    a[ i ] := Chr(T);
  end;
  CaesarEncipher := a;
  Form1.Edit2.Text:=a; 

  end;


procedure TForm1.Button2Click(Sender: TObject);
var

  a,b,CaesarDecipher:string;

  i,n,t:integer;

begin

 n:=3;
 b:=Form1.Edit2.Text;
 for i := 1 to length(b) do begin
    T := (Ord(b[ i ]) - n);
    if T < 0 then Inc(T, 256);
    b[ i ] := Chr(T);
  end;
  CaesarDecipher := b;
  Form1.Edit2.Text:=b; 


end;

end.
BuT@JL вне форума Ответить с цитированием
Старый 04.02.2011, 20:15   #5
asmodey1
Подтвердите свой е-майл
 
Регистрация: 19.12.2010
Сообщений: 808
По умолчанию

Самый простой вариант - пароль собирать из отдельных буковок, а присвоение типа psw[i]:='s' производить в разных местах программы или хотя бы процедуры Form.Create()... Можно еще добавить преобразование типа psw[i]:=Chr(66).
asmodey1 вне форума Ответить с цитированием
Старый 04.02.2011, 20:45   #6
_Engine_
Форумчанин
 
Регистрация: 29.06.2008
Сообщений: 603
По умолчанию

Не храните пароли, храните их ХЭШи
_Engine_ вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
C++,try-catch-trow,Как модифицировать готовый код? Aleksandr_Yanov Помощь студентам 0 21.08.2010 15:39
нужно исправить готовый код Алексей Долгов Помощь студентам 2 02.06.2010 15:46
графы(нуждаюсь в идее или объясните готовый код) shash Помощь студентам 2 14.05.2010 00:07
Как зашифровать php код? kolchakA PHP 1 21.03.2010 20:11
готовый код!нужна помошь в проверке(корректировке) -ushёl- Помощь студентам 23 13.03.2009 17:02