2017-02-05 22 views
-3

Мне нужно зашифровать файл слова, и для этого мне нужно не просто прочитать текст файла слова, так как он может содержать изображения, поэтому мне нужно получить содержимое Word Doc или Docx в виде байтов, а затем зашифровать их, а затем создать новый файл с новым расширением говорит DocSec и записывает байты в этот файл.Работает ли File.ReadAllBytes на словах doc и docx?

Мой вопрос: возможно ли прочитать содержимое слова doc \ x с помощью File.ReadAllBytes, чтобы оно учитывало и изображения?

Если это не рекомендуемый способ?

+4

Я извиняюсь, но если вы должны спросить это, вы не должны быть написание программного обеспечения, связанных с безопасностью. Тот факт, что файл, после его обработки, не может быть открыт в Word, больше не означает, что ваше программное обеспечение безопасно. Нет никакой разницы между «текстовыми байтами» и «байтами изображения» в файле Word, с точки зрения потока байтов. – CodeCaster

+1

Простой прямой ответ здесь - «Да». –

+0

@CodeCaster «Тот факт, что файл, после его обработки, не может быть открыт в Word, больше не означает, что ваше программное обеспечение безопасно». - Конечно, нет, поэтому я также шифрую содержимое файла. – WeinForce

ответ

1

Конечно, вы можете с любым файлом.

Весь вид файла представляет собой последовательность байтов.

Общих принципов

Для шифрования шагов

  1. Открыть файл (если действительно большое считает чтение() вместо readAllBytes())
  2. Используйте свой любимый алгоритм шифрования байт для чтения.
  3. Запишите новые байты в новый файл (ex newdoc.docsec).
  4. Закрыть оба файла.
  5. Удалить исходный файл.

Теперь MS Word больше не может читать ваш файл.

Для расшифровки

  1. Откройте файл cript (например newdoc.docsec)
  2. Используйте алгоритм дешифрования на прочитанный байт в.
  3. Запишите новые байты в новый файл (ex mydoc.doc).
  4. Закрыть оба файла.
  5. Удалить файл newdoc.docsec.

Теперь вы можете открыть его с помощью MS Word.

Полный пример на CodeProject File Encryption and Decryption in C#

+0

Спасибо, мой дорогой друг – WeinForce

+0

Добро пожаловать –