Использование одного и того же подхода к криптографии в C++ и C#
КОНТЕКСТ: Я разрабатываю приложение, для которого требуется процесс лицензирования, чтобы повысить безопасность. Приложение является основным C#, но у него есть небольшая часть (фактически, независимый модуль), написанная на C++.
В последнем уже реализован процесс лицензирования, который вкратце состоит из: когда приложение инициализируется, оно ищет файл лицензии, содержащий зашифрованную информацию, созданную разработчиками на основе некоторой информации о клиенте (string
). Если файл действителен, приложение продолжает выполнение, в противном случае оно закрывается. Важной частью этого является то, что он использует wincrypt.h
библиотека для добавления криптографии в строки.
ЖЕЛАНИЕ: Обе части (или модули) должны иметь основанную на лицензии защиту и совместно использовать один и тот же файл лицензии.
ПРОБЛЕМА. Я пытаюсь адаптировать процесс безопасности, описанный выше, к C#, чтобы использовать его в другой части приложения. Я не нашел способ использования wincrypt.h
функции, чтобы сделать это (возможно, потому что мое известное знание C# не так уж велико, или, может быть, потому что я просто не могу этого сделать). В итоге я использовал RSA, но у меня было два разных метода криптографии.
ВОПРОС: Есть ли способ использования wincrypt.h
в C#? Если нет, то есть ли другой способ разработки (en|de) string
процесс, который можно использовать как в C++, так и в C#?
Любая помощь приветствуется.