Я пытаюсь зашифровать что-то простое, например int или long. Простой способ, который я нашел, выглядит так:. Простой шифрование RSA
int num = 2;
RSACryptoServiceProvider rsa = new RSACryptoServiceProvider();
byte[] numBytes = BitConverter.GetBytes(num);
byte[] encryptedBytes = rsa.Encrypt(numBytes, true);
Проблема в том, что зашифрованные байты составляют 128 байт. Как я могу зашифровать данные (которые я мог бы еще позже расшифровать), где зашифрованный результат такой же длины в байтах, что и вход?
Я знаю, что могу сократить результат, если я определяю RSACryptoServiceProvider (512) или RSACryptoServiceProvider (384), но это как можно меньше.
мне нужно 4 или 8 байт происходит в, и 4 или 8 байт выходит (соответственно)
Спасибо!
*** Пояснение:
Я хочу, чтобы зашифровать что-то маленькое (то есть 4 или 8 байт) и получить результат такого же размера. Самый простой способ сделать это на C# при использовании некоторого ключа (со встроенными библиотеками), а не на некоторых моделях и сменах
Почему вы хотите зашифровать небольшой объект? Это может помочь вам получить лучший ответ, если у нас есть лучшее представление о том, что вы хотите достичь целиком. –