fbpx
мая27

Функция хеширования (конвертирования) строки в MD5 для 1С

Троцкий Юрий

Функция хеширования (конвертирования) строки в MD5 для 1С

Готовый код по хешированию (конвертированию) строки в MD5 для 1С

толстый клиент, тонкий клиент

     Что такое MD5 (англ. Message Digest 5) ? Это 128-битный алгоритм хеширования, разработанный профессором Рональдом Л. Ривестом еще в далеком в 1991 году. Но его до сих пор успешно применяют в современных методах хеширования, например для сверки контрольных сумм документов (удостоверение в его неизменном содержимом), хранения паролей, цифровых подписей и много где еще.

     Не смотря на широкое расспространение, готовой функции в 1С нету, поэтому предлагаю вам готовый код ниже:

 

Функция КонвертироватьВМД5 (ТекстОригинал);
	
	
	оMD5 = Новый COMОбъект("System.Security.Cryptography.MD5CryptoServiceProvider");
	оEnc = Новый COMОбъект("System.Text.UTF8Encoding");
	оStr = Новый COMОбъект("System.Text.StringBuilder");
	
	// переводим в байтовый массив 
	Массив = оEnc.GetBytes_4(ТекстОригинал);
	
	// MD5
	Массив = оMD5.ComputeHash_2(Массив);
	
	// переведем обратно из байтового массива в строку
	КолЭлементовМассива = Массив.GetLength();
	
	Для Ит = 0 ПО КолЭлементовМассива - 1 Цикл 
		оStr.AppendFormat("{0:x02}", Массив.GetValue(Ит));
	КонецЦикла;
	
	оMD5 = NULL;
	оEnc = NULL;
	
	Возврат оStr.ToString();
	
КонецФункции

P.S. Так-же мы предоставлям надежное обланое хранилище для ваших баз 1С. Подробнее...

Оставить комментарий

Пожалуйста, войдите, чтобы комментировать.