Björn Kreye Ответов: 1

Как зашифровать csv - файл с помощью открытого ключа на языке Си#


Привет, мое приложение загружает CSV-файл и преобразует данные в нем. Эти данные хранятся в списке< gt; Я хотел бы иметь возможность зашифровать каждую строку в этом списке с помощью открытого ключа, а затем сохранить ее в новый CSV-файл. После того как я сохранил файл с зашифрованными данными, я хотел бы снова зашифровать этот файл с помощью открытого ключа. Открытый ключ - это строка типа:
Цитата:
MFwwDQYJKoZIhvcNAQEBBQADSwAwSAJBamdm/5kIEchm1R0oU46TuKEE7b5HQMgJ
1O8IdB3YqmMa9mTy178c0JkPfiigbDnGnfhllx4dq7kx2tz+suK1Vj8CAwEAAQ==

а закрытый ключ для расшифровки выглядит так
Цитата:
MIIBOwIBAAJBAMDm/5kIEchm1R0oU46TuKEE7b5HQMgJ1O8Idb3yqmma9mty178c
0JkPfiigbDnGNfHlLX4DQ7KX2TZ+suk1vj8caweaaaqjadfrz242uo8hxymei7b6f
fwUb4l3R4VCcirIMZFtfFXgHC2lrrSB5iwwontcgiv7qf/V09uic5SPIMSp0EiU4
gQIhAN9RtawpAYsdMWwCY97pmEzfATYI84fnfq0+tJdXipAfAiEA3SHFb1LReqoI
hsAH1zJppfmkUEyKozRljOKDdP4h9eECiarmz62aehug+L/RScUApKWq7uMPAb+i
Vxap3o+m4wNfAiEAj6JlBRdtW9jgKu7G6QAk4Zttijlnh/Vj1Ow46SA9XOECIQCF
sRjnfML4Pdp0oR1fh/YHJgCdxPBcGz8AoIwsfG1GgA==


Я получил эти ключи с этого сайта:
[^]

Бонус был бы, если бы я мог генерировать свои собственные ключи с помощью отдельного очень маленького приложения, но это всего лишь бонус, прямо сейчас моя главная проблема заключается в том, что я хотел бы иметь возможность шифровать и расшифровывать свой csv-файл в консольном приложении.

Большое вам спасибо за ваше время и, возможно, помощь.

Что я уже пробовал:

Я нашел несколько примеров, которые делают то, что я хочу, но не делают, например:

Шифрование RSA с открытым ключом в C# .NET[^]

Простое шифрование и дешифрование данных на языке Си#[^]

и еще пара других источников, которые я нашел в google, но ничего по - настоящему мне не помогло.
Прямо сейчас я использую 2-ю ссылку и получаю ошибку, когда пытаюсь расшифровать свой файл.
Цитата:
Система.Безопасность.Криптография.CryptographicException: "символы недопустимы и не могут быть удалены."

Когда я использую приложение из первой ссылки, оно в значительной степени делает все, что мне нужно, но я действительно не понимаю источник, и он нужен мне для консольного приложения.

1 Ответов

Рейтинг:
2

OriginalGriff

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

Перенос с консоли на приложение windows является сложным, но переход в другую сторону должен быть тривиальным. Если вы не можете сделать это самостоятельно, то, честно говоря, вы пытаетесь пробежать марафон, прежде чем научитесь ходить.

А если вы получаете ошибки при использовании кода из статьи, то в нижней части этой статьи есть кнопка "Добавить комментарий или Вопрос", которая вызывает отправку электронного письма автору. Затем они предупреждаются, что вы хотите поговорить с ними.
Публикуя это здесь, вы полагаетесь на то, что они "заглядывают" и понимают, что это для них.