Внешняя компонента хеширования данных.

04.09.15

Разработка - Разработка внешних компонент

Внешняя компонента хеширования данных, HMAC (SHA-1 ,RIPEMD,Tiger,Whirlpool,MD5 и другие)

Скачать файл

ВНИМАНИЕ: Файлы из Базы знаний - это исходный код разработки. Это примеры решения задач, шаблоны, заготовки, "строительные материалы" для учетной системы. Файлы ориентированы на специалистов 1С, которые могут разобраться в коде и оптимизировать программу для запуска в базе данных. Гарантии работоспособности нет. Возврата нет. Технической поддержки нет.

Наименование По подписке [?] Купить один файл
AddInNativeCryptoPP_86_64.zip
.zip 449,04Kb ver:0.1
15
15 Скачать (1 SM) Купить за 1 850 руб.
Пример использования компоненты
.epf 232,10Kb ver:1
13
13 Скачать (1 SM) Купить за 1 850 руб.

Предыстория:

  1. По мотивам http://forum.infostart.ru/forum86/topic136695/
  2. Я забанен до некоторого момента на форуме, ответить в комментах не могу. Решено сделать публикацию.
  3. Изначально использовалась библиотека botan (  http://botan.randombit.net/  ) , но не смог скомпилировать ее под Windows без использования  c++ redistributable (есть подозрение , что это и невозможно на текущий момент, но я совсем с плюсами на Вы) , а это дополнительная зависимость, которой не хотелось иметь (имея c++ redistributable , естественно все получилось и есть версия компоненты с Botan, но выкладывать ее не буду)
  4. Поэтому решил использовать библиотеку Crypto++ ( http://www.cryptopp.com/ ) , которая распространяется под лицензией Boost Software License https://ru.wikipedia.org/wiki/Boost_Software_License
  5. Библиотека с Crypto++ сделана вместе со статьей за один присест ))) , поэтому есть вероятность появления неожиданностей и рекомендую все таки сразу не использовать в продакшн коде, а проверить ее.  (к сожалению серьезных тестов я не делал, ограничившись проверкой пары хэшей с сайта freeformatter.com/hmac-generator.html и сравнением с результатами кода в питоне)
  6. Методы 

 

СлучайноеЧисло(МинимальноеЗначение,Максимальное значение) -  Возвращает случайное число заданного диапазона

RandomNumber

 

ХешированиеДанныхКодом (НаименованиеАлгоритма, Сообщение, Ключ)

DataHashingMAC

Возвращает результат(ДвоичныеДанные) хеширования HMAC алгоритма заданного первым аргументом  .

Например:

 

НаименованиеАлгоритма = "HMAC(SHA-1)";
Сообщение = "Тестовая строка";
Ключ  = "Тестовый ключ857";
ДвоичныеДанные  = ОбъектВК.ХешированиеДанныхКодом (НаименованиеАлгоритма, Сообщение, Ключ);
ТипДвоичныеДанные = ФабрикаXDTO.Тип("http://www.w3.org/2001/XMLSchema", "hexBinary");
Данные = ФабрикаXDTO.Создать(ТипДвоичныеДанные,ДвоичныеДанные);
Сообщить(Данные.ЛексическоеЗначение);

Будет сообщение  - 00634d9276c7e8fa3b8e4d3015a22f4a8438b

 

 

ХешированиеДанных (НаименованиеАлгоритма, Сообщение)

DataHashing

Возвращает результат(ДвоичныеДанные) хеширования алгоритма заданного первым аргументом  .

В принципе особого смысла метод не имеет для алгоритмов, которые уже есть возможность использовать в программе . SHA-1 , например или MD5. С другой стороны в Crypto++ реализовано гораздо больше алгоритмов . Например : Whirlpool

 PS. Замечание: при вызове метода с неизвестными именами алгоритмов или неправильными именами , программа будет завершаться с ошибкой. Это будет исправлено на выдачу исключения.

См. также

Разработка внешних компонент Программист Платформа 1С v8.3 1C:Бухгалтерия Платные (руб)

Позволяет автоматизировать работу с картинками. С помощью компоненты можно измерять размер изображений, поворачивать их, наносить водяные знаки, конвертировать из одного формата в другой. Будет очень полезна для интернет-магазинов и всех, кому постоянно требуется работать с различными графическими форматами. Выполнена по технологии NativeAPI. Работает с форматами: jpg (jpeg), png, bmp, gif, tif

3600 руб.

02.09.2010    77930    73    277    

191

Разработка внешних компонент Программист Платформа 1С v8.3 1C:Бухгалтерия 1С:Управление нашей фирмой 1.6 1С:Бухгалтерия 3.0 Платные (руб)

Внешняя компонента позволяет работать c TWAIN-совместимым оборудованием (сканерами, камерами) . Полностью совместима со стандартной TWAIN-компонентой из БСП и может применяться как ее замена без изменения вызовов, при этом может работать с 64-разрядной платформой, а так же имеет расширенную функциональность, например, сохранение результата непосредственно в PDF без использования сторонних утилит. Прекрасно работает на сервере, тонком клиенте и веб-клиенте (проверена работа в браузерах Google Chrome, Mozilla Firefox и Microsoft Internet Explorer).

3000 руб.

12.05.2020    29221    139    100    

92

Разработка внешних компонент Программист Платформа 1С v8.3 1C:Бухгалтерия Платные (руб)

Внешняя компонента позволяет печатать PDF файлы непосредственно из 1С, не используя при этом сторонних программ. Прекрасно работает на сервере, тонком клиенте и веб-клиенте. Основана на проекте PDFium из состава проекта Chromium/Chrome

1500 руб.

17.09.2018    37206    115    128    

116

Разработка внешних компонент Телефония, SIP Программист Платформа 1С v8.3 1C:Бухгалтерия Россия Платные (руб)

Внешняя компонента выполнена по технологии Native API для 1С 8.х, обеспечивает доступ к программным АТС Asterisk (FreePBX, Elastix) через AMI интерфейс. Через него можно управлять многими функциями Asterisk (определение номеров, перевод звонков, набор телефона и т. д.)

2400 руб.

04.05.2018    47737    125    66    

68

Разработка внешних компонент Системный администратор Программист Стажер Бесплатно (free)

Библиотека для работы с базами SQLite из 1С на основе внешней компоненты. Для Linux и Windows, бесплатно и с открытым исходным кодом!

14.01.2025    2781    bayselonarrend    14    

48

Разработка внешних компонент Программист Платформа 1С v8.3 1C:Бухгалтерия Россия Бесплатно (free)

В статье описывается приложение-конструктор внешних компонент (native API). Конструктор упрощает процесс разработки за счет удобного добавления всех нужных функций и процедур в графическом режиме, с указанием их параметров и типов параметров. На выходе приложение генерирует готовый код на С++ и Rust и позволяет сразу приступить к реализации, без настройки API компоненты вручную.

04.12.2024    5576    kovalevdmv    26    

77

Разработка внешних компонент Программист Платформа 1С v8.3 1C:Бухгалтерия 1С:Управление торговлей 11 Платные (руб)

Внешняя компонента для конвертации PDF файлов в картинки без использования дополнительных программ. Работает на сервере и в тонком клиенте.

2400 руб.

25.06.2024    1346    3    4    

3
Комментарии
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
1. Region102 26.12.17 19:01 Сейчас в теме
Потратил 2 старт мани на то, что не работает на УФ, платформа 8.3.11 х64.
2. ArchLord42 83 26.12.17 20:23 Сейчас в теме
(1) на 8.3.11 есть же наивный объект для получения хеша, но он конечно не так богат на хеш функции
3. Region102 27.12.17 11:18 Сейчас в теме
Проблема всех этих функций в том, что они считают хеш как-то не так, надо преобразовывать base64 туда сюда, для работы с Amazon S3 хеш высчитывается 1 раз и строки, 3 раза из последовательности байт и только потом получается сигнатура с переводом в hex. На php это решается в 4 строки кода. На 1С пришлось "голову сломать" и реализовать через COMОбъект("System.Security.Cryptography.HMACSHA256"), но и там есть свои тонкости.
Оставьте свое сообщение