Расшифровка зашифрованного файла и выполнение на Java - PullRequest
1 голос
/ 08 декабря 2011

В настоящее время я работаю над проектом, в котором я могу зашифровать и расшифровать файлы.Я разрабатываю его на Java.

Вот как это работает (упрощенно):

  1. Сначала я читаю файл и преобразовываю его в байтовый массив
  2. ЗатемЯ зашифровываю байтовый массив и записываю его обратно в файл

Когда я хочу запустить зашифрованный файл, я делаю обратное, вот так:

  1. Я читаюзашифрованный файл и преобразование его в байтовый массив
  2. Затем я расшифровываю байтовый массив и записываю его обратно в файл.

Таким образом, файл преобразуется обратно в исходную форму.

Моя проблема в том, что я не хочу записывать расшифрованный байтовый массив в виде файла на диск.

Есть ли способ сделать это?Я хочу запустить расшифрованный массив байтов прямо в памяти.Под «запуском» я подразумеваю его выполнение, потому что это исполняемый криптер Win32.

Заранее спасибо, Онур

Ответы [ 3 ]

1 голос
/ 08 декабря 2011

Я бы сказал, что ваши возможности здесь ограничены, потому что вы зависите от Windows, запускающей процесс.Java, будучи кроссплатформенной, вероятно, не имеет возможности подключаться к Windows так, как вы хотите.

Отойдя от сфер чистой Java, вы можете создать виртуальный диск и записать EXE-файл на Ramdisk.или, возможно, подключиться к .NET, как описано в этого ответа (и вопросить ссылки внутри этого ответа).

0 голосов
/ 10 декабря 2011

Я видел пример в c #, это именно то, что я хочу, но смешивание двух языков не подходит для этого проекта.

Я слышал о библиотеке JNA, которая делает кое-что из win32. Может быть, я должен посмотреть на это.

Спасибо всем за вашу помощь, но я все еще надеюсь, что кто-то опубликует мое решение здесь.

Onur

0 голосов
/ 08 декабря 2011

Возможно, фреймворк Java NIO вам подойдет.Посмотрите на ByteBuffer и FileChannel

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...