Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Основная";
Текущий архив: 2002.02.18;
Скачать: [xml.tar.bz2];

Вниз

Помогите пожалуйста!   Найти похожие ветки 

 
HDD   (2002-02-01 10:29) [0]

Люди кто-нибудь занет как зашифровать текст в RichEdit и расшифроать. Так какой-нибудь средненький алгоритм. И еще вопросик с кодировками Win, Dos с горем попалам разобрался,а как перевести текст в Iso, Koi8, Mac?
Заранее благодарен Кирилл!


 
Vitek   (2002-02-01 12:08) [1]

Могу прислать исходники программы для шифрования и дешифрования по алгоритму DES Если интересно отправь письмо mailto:Ishimov@newmail.ru


 
Фэ   (2002-02-01 12:34) [2]

Например таблица подстановки.
Таблицу составляешь случайным перемешиванием, реверсом..
Вход через table[ord(ch)] для байт-кодировок

Или через XOR-перемешивание

mask = "EЖV7V5G"#39"Ццv7"#20#39"VДЦFFVц";
function Decrypto(const str: string): string;
var n: integer;
begin
result := "";
for n:=1 to length(str) do
result:=result+
chr(ord(str[n]) xor ord(mask[((n-1) mod length(mask)) +1]));
end;

function Encrypto(const str: string): string;
begin
result:=Decrypto(str);
end;


 
Dimka Maslov   (2002-02-01 12:39) [3]

procedure EncodeStr(var Str: string; Key: string);
var
i, lp: Integer;
B: PByte;
begin
lp:=Length(Key);
B:=@Str[1];
Dec(B);
if lp<>0 then for i:=1 to Length(Str) do begin
Inc(B);
B^:=B^ xor Byte(Key[(i mod lp)+1]);
end;
end;


Расшифровывать той-же процедурой


 
HDD   (2002-02-01 13:24) [4]

А как всё это к RichEdit1 применить подскажите плиз!!!


 
Фэ   (2002-02-01 13:43) [5]

shifr := Crypto(rch.Lines.Text);
rch.Lines.Text := Decrypto(shifr);
Но могут проблемы из-за CR+LF возникнуть
Надо проверять


 
Vitek   (2002-02-01 14:03) [6]

Совет зашифрованный текст не выдавать в TRichEdit так как при шифровании могут появлятся например управляющие символы
Либо ограничивать алфавит шифротекста ну скажем только латинские буквы и цифры
Можно сделать так шифровать любым методом а дальше делать подстановку например
#0:aa
#1:ab
#2:ac
и тд


 
HDD   (2002-02-01 14:20) [7]

Косяк! Просто текст исчезает и всё и никаго шифра!


 
lnkd   (2002-02-01 16:01) [8]

А может попробовать предварительно сохранить текст в файл RichEdit1.Lines.SaveToFile(FileName). А потом открыть файл как file of byte и делай с ним что хочешь, кодируй по любому алгоритму. Ну и дешифровка соответственно наоборот.


 
Grim Rider   (2002-02-01 17:52) [9]

Попробуй вот это:


unit Crypt32;
{
*************************************************************************
* Name: Crypt32.Pas *
* Description: 32 bits encode/decode module *
* 2^96 variants it is very high to try hack *
* Purpose: Good for encrypting passwors and text *
* Security: avoid use StartKey less than 256 *
* if it use only for internal use you may use default *
* key, but MODIFY unit before compiling *
* Call: Encrypted := Encrypt(InString,StartKey,MultKey,AddKey) *
* Decrypted := Decrypt(InString,StartKey) *
* Parameters: InString = long string (max 2 GB) that need to encrypt *
* decrypt *
* MultKey = MultKey key *
* AddKey = Second key *
* StartKey = Third key *
* (posible use defaults from interface) *
* Return: OutString = result string *
* Editor: Besr viewed with Tab stops = 2, Courier new *
* Started: 01.08.1996 *
* Revision: 22.05.1997 - ver.2.01 converted from Delphi 1 *
* and made all keys as parameters, before only start key *
* Platform: Delphi 2.0, 3.0 *
* work in Delphi 1.0, 2^48 variants, 0..255 strings *
* Author: Anatoly Podgoretsky *
* Base alghoritm from Borland *
* Address: Vahe 4-31, Johvi, Estonia, EE2045, tel. 61-142 *
* kvk@estpak.ee *
* Status: Freeware, but any sponsor help will be appreciated here *
* need to buy books, shareware products, tools etc *
*************************************************************************
* Modified: Supports Delphi 1.0 & 2.0 *
* Overflow checking removed *
* By: Martin Djern


 
Anatoly Podgoretsky   (2002-02-02 14:36) [10]

HDD © (01.02.02 13:24)

А зачем это применять к RichEdit, с таким же успехом можешь использовать Random, RichEdit предназначен для визуализации данных.



Страницы: 1 вся ветка

Форум: "Основная";
Текущий архив: 2002.02.18;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.47 MB
Время: 0.004 c
4-57253
GOSHAT
2001-12-19 01:18
2002.02.18
DELPHI, WIN API


3-57012
Savage
2002-01-24 15:44
2002.02.18
MS SQL Server - запись файла в базу


3-56992
SelfDestructor
2002-01-23 16:37
2002.02.18
Как загрузить поле таблицы типа Memo из текстового файла?


7-57233
neverbee
2001-11-13 14:32
2002.02.18
Подскажите как програмно можно выключить/включить Service?


1-57149
tovSuhov
2002-02-04 08:06
2002.02.18
Как узнать текущую версию приложения...





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский