Как скрыть код от себя до указанного времени?

по существу, мне нужен какой-то способ генерировать и хранить случайную строку (20 символов, скажем) в течение некоторого периода времени, так что для меня нет способа восстановить строку до конца этого периода. Я использую стандартный Ubuntu 12.10.

вещи, которые делают это трудно:

  • у меня есть root доступ.
  • компьютер может выключиться и запуститься в течение этого периода.
  • там не должно быть никакого способа для меня, чтобы восстановить строку до окончания месячных.
  • Я не имеют доступа к интернету на период.

причина, по которой я должен сделать это, что у меня есть зависимость от интернет-порно. Большую часть времени я могу контролировать его, но я получаю тягу поздно ночью. Это еще сложнее, потому что я использую компьютер для моей работы, и я работаю из дома. Поэтому в последнее время я начал удалять /sbin/ dhclient, который отключает подключение к интернету (пока я не смогу получить liveCD и скопировать файл обратно, но это занимает некоторое время.) Вместо этого я хочу сгенерировать пароль для dhclient (зашифровав dhclient или просто создав zipfile с этим паролем), а затем получить пароль только на следующее утро. В основном я пытаюсь найти обязательств, немного похоже на алкоголика, наливающего свой ликер в раковину.

некоторые возможные пути нападения:

  • запустить программу, которая сгенерирует строку и сохранит ее в памяти, ждет n секунды, затем печатает строку. Это не будет работать, потому что процесс будет убит, если компьютер перезагрузится, и я мог бы посмотреть в памяти программы, чтобы найти строку.
  • пусть программа изменит пароль root на случайно сгенерированную строку, удалив root-доступ у меня; пусть она хранит строку в файле, к которому имеет доступ только root, и пусть root повторно запускает программу, которая проверяет, закончился ли период, и если да, дайте мне строку (и, таким образом, root-доступ). Это звучит так, как будто это сработает, но я могу обойти это, изменив время в BIOS.
  • идея, которую я только что имел: написать одну программу, которая удаляет root-доступ и сохраняет пароль в файле, который требует root для чтения. Затем позвольте root использовать cron для запуска программы каждую минуту, которая проверяет существование файла с именем "delayed_root_request". Каждый раз, когда он запускается, если delayed_root_request существует, он увеличивает число, хранящееся в файле "root_timer", который может читать/писать только root. (Если это не существует, он создает его и делает его содержать "0".) Когда число в root_timer достигает 60*8=480, это дает мне доступ для чтения к файлу, в котором хранится пароль root и, следовательно, доступ root. Поэтому я могу запустить сценарий, который удаляет корневой доступ, сохраняет случайно сгенерированный пароль в файле только для корневого доступа и ломает dhclient. Когда я хочу, чтобы доступ в интернет вернулся, я создаю файл "delayed_root_request" и должен ждать 8 часов для пароля. Если в любое время во время тех 8 часы, которые я решаю, корневой доступ просто заставит меня отложить, я просто удалю файл, и мне придется начать отсчет. Если компьютер перезагружается, подсчет делает. Мне придется дать жратвы пароль (например,http://sourceforge.net/projects/grubpass/). Могу ли я получить с оптических носителей, или просто вынимая жесткий диск, но я могу сделать что неудобно, удалив все копии Убунту ISO-файл, который у меня есть, и я могу отдать все мои LiveCD дистрибутивами (и не сможет сделать больше без доступа в интернет).

там может быть очень простой способ сделать это, что мне не хватает - скажите, пожалуйста, какие идеи у вас есть.

любая помощь с этим будет действительно оценили!

1
задан Stephen
17.11.2022 23:12 Количество просмотров материала 3681
Распечатать страницу

5 ответов

с технической стороны, может быть, такой сервис, какhttp://www.timecave.com/timecave/about.jsp будет работать?

2
отвечен Kent 2022-11-19 07:00

вот высокотехнологичное решение, которое вы искали:: -)

  1. генерация случайной строки.
  2. установите пароль root в случайную строку.
  3. вычислить хэш строки.  (Это может быть достаточно хорошо, чтобы использовать "шифрование паролей" ОС, но следующие шаги могут быть проще, если вы используете автономный инструмент хэширования, например,md5sum).  Сохраните хэш на диск.
  4. "забыть" строку (т. е. пароль root).
  5. взломать пароль, пройдя через все возможные строки (см. Шаг 1), хэширования его, и видя, соответствует ли он сохраненный хэш.  Для удобства восстановления периодически проверяйте, насколько далеко вы находитесь в списке.

естественно, вы должны настроить это так, чтобы ваша случайная процедура на шаге 1 выбирала из пространства пароля, которое занимает указанное вами время (например, восемь часов) для сканирования.

самая большая слабость, которая произошла со мной до сих пор это то, что, если ваш шаг 1 случайным образом выбирает строку в начале (например, "aaaaaq"), Шаг 5 может завершиться очень быстро.  Одним из исправлений этого является то, что Шаг 5 сохраняет свои результаты в файле, читаемом только root, а затем сканирует все пространство пароля, даже после того, как он взломает пароль.  Более сложный подход:

  1. создать n случайные строки, str1,str2, …, strn.
  2. установите пароль root для их объединения:str1str2 ... strn.
  3. вычисление хэш каждого строку.  Храните хэши на диске.
  4. "забыть" струны.
  5. взломать пароль, выполнив поиск хэша на каждой из строк, в последовательности.

Если вы настраиваете это так, каждая строка принимает 8 часов/n чтобы сломаться, у вас все еще есть максимальное время восемь часов.  И все еще возможно, что он взломает пароль за гораздо более короткое время, но теперь распределение вероятности является кривой колокола, поэтому короткие времена становятся менее вероятными.  (К сожалению, так делать долгое время; это, скорее всего, потребуется от 2 до 6 часов.  Возможно, вы должны выяснить максимальное количество времени, которое вы можете выдержать, чтобы быть заблокированным, и подключить его к уравнение.)


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

1
отвечен Scott 2022-11-19 09:17

Ну, я немного опоздал на вечеринку! Но у меня есть настройка системы для достижения этой самостоятельной фильтрации порно. Я использую qustodio для блокирования мобильных и настольных(до 5 ПК/устройств!). Это всестороннее фильтруя програмное обеспечение которое легко для использования, для того чтобы настроить и побежать с минимальным ударом, специально на Чернях. Но вы можете использовать любое программное обеспечение. Funamo работает лучше IMO для мобильных телефонов, но не предлагает фильтрацию рабочего стола, поэтому я склонен использовать оба программного обеспечения одновременно, Qustodio для рабочего стола и funamo для моего мобильного.

Я установил их с электронной почтой от GMX(xyz@gmx.com) поскольку он не требует восстановления электронной почты, поэтому его полностью невозможно взломать, если я чувствую себя слабым! и используйте случайный пароль, сгенерированный, который я не буду помнить(должен быть 16 символов или меньше, поскольку GMX имеет этот предел). Этот пароль используется для учетной записи электронной почты GMX и моего программного обеспечения для фильтрации.

проблема у меня была скрывая этот пароль от себя(я его хранил на usb) без того, чтобы получить другие люди участвуют. Так im с помощью метода, предложенного "Кент", где с помощьюhttp://www.timecave.com/timecave/about.jsp, я могу получить пароли и адрес электронной почты, отправленные мне один раз в неделю по расписанию. Таким образом, я могу внести изменения или переустановить программное обеспечение, если требуется в определенное время дня, где я контролирую, а остальная часть недели его из-под моего контроля и им порно бесплатно!

хотя это может установить вас обратно $60 AUD(около $40 USD) для подписки, это стоит это!

хотя его не идеальный (но почти надежный) его достаточно стимул, чтобы обуздать мою зависимость порно и чувствовать, что у меня есть моя жизнь обратно. Как христианин, я использую это как еще один инструмент, чтобы помочь мне контролировать себя, но моя основная мотивация-это влияние моих пристрастий на мои отношения с Иисусом и с окружающими меня людьми. Хотя я согласен, что иметь партнера по подотчетности более выгодно. Такие, как я, с очень небольшим количеством социальных навыков или прочных отношений(lol), все еще может получить господство над нашими пристрастиями в наше время, не полагаясь на других людей(они раздражают), поэтому это бесценно, но их более эффективные способы, я думаю.

1
отвечен Lewis Penrice 2022-11-19 11:34

Это интересная концептуальная проблема, но для вашей конкретной проблемы я думаю, что вы пытаетесь решить ее до того, что вам нужно (ну, с точки зрения технологии; что касается вашей фактической проблемы, возможно, вы должны попытаться решить ее еще более вверх по течению...). Есть приложения, которые можно использовать для блокировки доступа к определенным сайтам в интернете, например LeechBlock для Firefox, StayFocusd для Chrome или Cold Turkey для Windows. Конечно, они не будут 100%, но ни любой другой метод, который зависит исключительно от вас, и эти программы имеют преимущество, позволяя вам использовать интернет для продуктивной работы (можно Белый).

0
отвечен Paulo Almeida 2022-11-19 13:51

от того, что вы написали, похоже, что любой механизм можно сразу влиять будет проблемой. Как насчет изменения на провайдера, который блокирует порно для вас ? Предположительно, это означало бы, что вам нужно будет позвонить им, чтобы отойти/разблокировать его (если они хорошо справляются и могут блокировать обходные пути), что создаст существенную задержку времени, надеюсь, победив ваши побуждения.

0
отвечен davidgo 2022-11-19 16:08

Постоянная ссылка на данную страницу: [ Скопировать ссылку | Сгенерировать QR-код ]

Ваш ответ

Опубликуйте как Гость или авторизуйтесь

Имя

Похожие вопросы про тегам:

linux
permissions
root
security
ubuntu
Вверх