Я хочу создать зашифрованный файл XML.Зашифровано целиком.
У меня есть один большой класс, который я сериализую в строку.Затем я конвертирую его в байты (например, в одном тестовом случае это занимает 1128
байтов) и я хочу зашифровать эти байты.
Мне нужен сертификат, к которому нет доступа ни у одного администратора, поэтому я создалмой сертификат такой:
New-SelfSignedCertificate -CertStoreLocation Cert:\LocalMachine\My -FriendlyName "XD" -NotAfter
(Get-Date).AddYears(10) -KeyAlgorithm RSA -KeyLength 2048 -Subject "test"
Затем в моем приложении на C # я получаю этот сертификат с помощью .Subject
и хочу зашифровать свои байты, используя его.Проблема в том, что я получаю исключение с сообщением bad length
, которое предполагает, что я хочу зашифровать слишком много байтов с помощью RSA.
Теперь я знаю, что могу использовать AES или что-то еще, но мне нужноиметь этот ключ в сертификате в хранилище, поэтому никто, кроме пользователя-администратора, который создает этот сертификат, не имеет к нему доступа.И поскольку я прочитал документацию для New-SelfSignedCertificate
- он не может создать сертификат с ключом fe AES
.
Итак, мой вопрос здесь: есть ли способ создать сертификат с определенным алгоритмом ключа, который мог бы шифровать по крайней мере 2-3 Кбайт?