Шифровка

  • 10
  • Недоступна
Придумать механизм шифровки/дешифровки. Программа запускается с одним из следующих наборов параметров: -e fileName fileOutputName -d fileName fileOutputName где: fileName - имя файла, который необходимо зашифровать/расшифровать. fileOutputName - имя файла, куда необходимо записать результат шифрова
Вы не можете решать эту задачу, т.к. не залогинены.
Комментарии (346)
  • популярные
  • новые
  • старые
Для того, чтобы оставить комментарий Вы должны авторизоваться
Fruitella
Уровень 29, Тверь, Russian Federation
28 июля, 18:36
Это первая моя решеная задача с аргументами командной строки. Сидел и несколько часов вникал, что да как. Помог дебагер и видео с ютуба. В итоге валидацию прошел с первого раза.
29 июля, 13:12
ууу сразу видно человека, который скипнул замечательные хард задачи "CRUD". Стыдно должно быть... Иди решай или не мужик!
Fruitella
Уровень 29, Тверь, Russian Federation
29 июля, 13:22
Да, я их оставил. На этих выхах хотел как раз с ними повозиться. Сейчас бы стыдиться из за каких то нерешенных задач. P.s. чекнул твой профиль, вижу как ты там наскипал кучу задач с пред. лвлов, наверное стыдно должно быть... Решать будешь или не мужик?
29 июля, 13:30
Не переводи стрелки. Речь шла только о тебе)
papsnaz
Уровень 28, Самара, Russian Federation
4 августа, 14:56
А я о тебе, иди решай
RomanGV
Уровень 22, Россия
26 июля, 11:29
ну ладно... Изобретать - так изобретать)))
String secretKey = "password"; // -Скажи пароль! - Пароль. - Проходи.
byte[] cypher = secretKey.getBytes();
byte[] buffer = new byte[cypher.length];
int readBytesCount = inputStream.read(buffer);
for (int i = 0; i < buffer.length; i++) buffer[i] = (byte) (buffer[i] + cypher[i]); //сдвиг байтов вправо
outputStream.write(buffer, 0, readBytesCount); // readBytesCount - чтобы лишние байты не
//записывались, если размер файла не совпадёт по длине ключа
Blynchik Работает в Pegas Touristik
1 июля, 06:44
Считал с помощью BufferedReader и записал с помощью BufferedWriter сразу char'ы. При шифровании к char прибавил +1, при дешифровке -1
Alex Karpov
Уровень 33, Russian Federation
29 июня, 17:48
И вновь авторское решение удивительно неоптимальное.. Не понимаю в чем такое дикое желание побайтово считывать... Я вот проверяю обычно на файлах не меньше пары мегабайт. И если авторское решение работает на файле в 2мб около 16 секунд, то с помощью буфера все занимает на том же файле 8 миллисекунд. Сам не стал придумывать системы кодирования (про XOR забыл, а в обсуждения не лазил). Сделал 2 метода, шифровка - расшифровка. в одном +7 к байтам буфера, в другом -7. В мейне через switch.
Erizo
Уровень 24, Минск, Belarus
5 мая, 06:17
"Исключение системы безопасности JavaRush. Вы выполняете потенциально опасную или запрещенную операцию." Такого от валидатора я еще не видел
SergGlav
Уровень 20
8 июля, 17:50
Шифровками занимаетесь, опасными 😁
Anonymous #2512534
Уровень 30
30 марта, 11:31
решил через XOR
Валерий
Уровень 22
15 февраля, 16:14
Блин, не учел дефис перед "-e" и "-d" в if))))
Igor Petrashevsky
Уровень 37
14 мая, 01:47
c xor можно вообще не проверять что там за команда. валидатор и так глотает, главное ее прочесть.
The Body of the Atr
Уровень 51
1 февраля, 12:10
Всего эту задачу решили 18305 учеников. куда то зашифровалась половина тех, кто решал задачи вначале квеста Core. в задаче 4 строчки - открыть/закрыть потоки и 3 строчки цикл.
Дон Дин Дон
Уровень 22, Russian Federation
4 февраля, 13:13
у меня появилось желание забить на бонусные задачи и идти дальше, может не я один так подумал а та половина о которой ты говоришь)
Николай Лехманов
Уровень 51, Санкт-Петербург, Russian Federation
11 мая, 13:08
Всего эту задачу решили 19011 учеников.
Михаил
Уровень 51, Санкт-Петербург, Russian Federation
30 января, 17:32
В цикле fileOutputStream.write(255-fileInputStream.read()) Профит. Можно даже ключ не учитывать и switch не использовать.
Neonila Kravtcova
Уровень 19, Санкт-Петербург, Россия
25 января, 09:56
С первого раза, 5 минут. Даже забыла проверить решение локально. Начинает потихоньку осенять ))