Перейти к содержимому
Форумы SkyCentre Прыжки с парашютом
Igor

Программное западло - прораммисты трут здесь

Recommended Posts

главная шутка программистов тут

0_62c91_b4e1666f_L.jpg

Я в замешательстве! Не работает ссылочка-то! Вечно эти программисты блох в свитере заведут, а программы как следует не работают. Вот раньше было не то, что нынеча. И трава была зеленее заметно и менгир торчал повыше.. Эхехе.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
Я в замешательстве! Не работает ссылочка-то!

ты просто невнимателен :)

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
ты просто невнимателен :)

Как невнимателен. Оно скачет туда-сюда, а шутки нет. Вот нынеча не то, что давеча...

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
Как невнимателен. Оно скачет туда-сюда, а шутки нет. Вот нынеча не то, что давеча...

http://www.skycentre.net/index.php?showtop...st&p=333240

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Есть ли кто едрёно шарит в криптографии? Забыл ключевую фразу, но есть паблик и секюрити ключи PGP, есть ли утиль для восстановления фразы по двум ключам? Желательно виндовая.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

завтра день программера, кстати...

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
Есть ли кто едрёно шарит в криптографии? Забыл ключевую фразу, но есть паблик и секюрити ключи PGP, есть ли утиль для восстановления фразы по двум ключам? Желательно виндовая.

Ты имеешь ввиду восстановление passphrase на которой приватные ключи закрыты?

На пальцах как работает асимметричная криптография.

Публичный ключ - это одностороннее математическое преобразование от приватного. Например: считать остаток от деления мы умеем, а вот по остатку посчитать делимое - фиг. Получатель генерит себе случайное число и называет его приватным ключом. Публичный ключ считается из приватного и раздается всем подряд. Главное - сделать это так, чтобы его по дороге не подменили. Для этого используется PKI или WebOfTrust.

Приватный ключ есть только у получателя. В идеальном мире получатель его выучивает на зубок и его никто никогда не стащит. Но человеку сложно учить 512/1024 бит наизусть, поэтому приватный ключ хранят на компе. Чтобы его не стащил злобный вирус (или чтобы не потерять его при потере ноутбука) - он храниться в зашифрованном виде. Причем шифруется он на чем-то, что может запомнить пользователь - passphrase (пароль).

Само асимметричное шифрование работает также: можно зашифровать на публичном ключе, тогда расшифровать сможет только владелец приватного.

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

Теперь как работает PGP (тоже на пальцах без подробностей):

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

Если я правильно понял, ты хочешь восстановить пароль по паре открытый/приватный ключ.

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

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

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

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

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
Теперь как работает PGP (тоже на пальцах без подробностей):

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

а зачем там сессионый ключ? почему нельзя просто открытым зашифровать?

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
а зачем там сессионый ключ? почему нельзя просто открытым зашифровать?

Ответ простой - ооооочень медленно. Асимметричная криптография требует в сотни раз больше ресурсов, чем симметричная. Сейчас распространены две мат модели для асимметричной криптухи: ((a^b) mod c) и эллиптические кривые. И то и другое требует арифметики с длинными числами, а это медленно.

Для примера, симметричный ключ, как правило, 32-64 байта, а асимметричный приватный 128 и больше (до килобайта) :) Плюс симметричная криптография - это ксоры, сдвиги и замены по табличкам, а асимметричная - это умножения, деления и т.д.

По той же причине цифровую подпись ставят не на само сообщение, а на его хеш.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

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

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
А вторая причина - одинаковые данные, зашифрованные два раза, должны выдавать различные шифртексты. Чтобы одинаковые блоки в пределах одного сообщения (одного ключа) тоже получались разными, применяются правильные режимы шифрования: гаммирование, гаммирование с обратной связью и т.д.

фигасе... а я думал - это я умный :)

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

я так правда ничего и не понял про шифрование "кто на ком стоял", но стало ясно что шансов нет :) Дело в том что это пассфразой я в свое время запаролил архив и не могу его теперь распаковать :) Остановился на том, что сейчас переборщик подбирает пароль. Но с учетом неизвестной длины и набора символов это похоже на века :))

Поделиться сообщением


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

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Да там секретный архив, нельзя хранилкам доверять :)

Товарищ подкинул ПО, которое якобы может по ключам собрать пассфразу, кто шарит дайте оценку по ее readme.

readme

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
Да там секретный архив, нельзя хранилкам доверять :)

Товарищ подкинул ПО, которое якобы может по ключам собрать пассфразу, кто шарит дайте оценку по ее readme.

readme

Судя по readme - это такая "умная" брут-форсилка, которая не просто перебирает все комбинации символов или словарь, а может еще использовать дополнительную неточную информацию от пользователя. Например, если ты помнишь, что в пароле было слово на "Ж", он больше 20 букв и состоял из трех осмысленных слов, то поле для перебора можно сильно сократить, если приложить к этому хороший словарь :)

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

печально но я не могу вспомнить вообще логических доводов пароля :) в ту пору было много изменений.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Вопрос к Linux-оводам, ваяяю магаз, он, при запуске инсталла (php файл) ругается что у него нет доступа к файлам на запись. Файлы заливал на сервер под root пользователем. Я так полагаю надо дать доступ ко всему для Apach-а ? Как это грамотно провернуть ось - центос, файло заложено в папку var/www/html/

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
Вопрос к Linux-оводам, ваяяю магаз, он, при запуске инсталла (php файл) ругается что у него нет доступа к файлам на запись. Файлы заливал на сервер под root пользователем. Я так полагаю надо дать доступ ко всему для Apach-а ? Как это грамотно провернуть ось - центос, файло заложено в папку var/www/html/

А php инсталл тоже из-под рута запускал? Проверь права доступа и владельца у папки /var/www/html/ - там должен либо владельцем быть тот пользователь, из-под которого ты запускал инсталл, либо должны быть права на запись для other

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

запускаю файл index.php из папки install уже "снаружи", заходя через http, и вот собственно там инсталляция и прерывается, с написями что ряд файлов и папок unrewritable. И собственно я подумал что Apachu не хватает прав, потому что файлы изначально на сервер я копировал root ом.

Если можно в виде конкретных команд помощь :)

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
запускаю файл index.php из папки install уже "снаружи", заходя через http, и вот собственно там инсталляция и прерывается, с написями что ряд файлов и папок unrewritable. И собственно я подумал что Apachu не хватает прав, потому что файлы изначально на сервер я копировал root ом.

Если можно в виде конкретных команд помощь :)

Под каким пользователем работает апач?

В каком режиме отрабатывают скрипты php? (модуль апача или fastCGI?)

Используя подключение ssh, выполнить следующие команды и показать вывод:

cd /var/www/html/ && ls -lh ./

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Принято, ответ завтра катану, сегодня оборвалась удаленка с работой :(

PHP апач обрабатывает.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
PHP апач обрабатывает.

После того, как залил файло на сервер, необходимо владельцем файлов объявить пользователя апача:

chown apache:apache -R /var/www/html

Подправить права файлам:

cd /var/www/html
find ./ -type f -exec chmod 640 {} \;
find ./ -type d -exec chmod 750 {} \;

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Добрался сегодня таки!

[root@localhost ~]# cd /var/www/html/ && ls -lh ./

итого 8,1M

drwxrwxrwx. 6 root root 4,0K апр 28 17:27 admin

drwxrwxrwx. 6 root root 61 апр 28 17:28 catalog

-rwxrwxrwx. 1 root root 0 сен 19 2011 config.php

drwxrwxrwx. 2 root root 23 апр 28 17:28 download

drwxrwxrwx. 6 root root 76 апр 28 17:28 image

-rwxrwxrwx. 1 root root 6,7K сен 27 2011 index.php

-rwxrwxrwx. 1 root root 49 апр 28 15:07 info.php

drwxrwxrwx. 6 root root 4,0K апр 28 17:28 install

-rwxrwxrwx. 1 root root 316 дек 19 2010 php.ini

drwxrwxrwx. 9 root root 4,0K апр 28 17:28 system

-rwxrwxrwx. 1 root root 20 апр 28 15:40 test.php

-rwxrwxrwx. 1 root root 8,1M апр 28 15:58 upload.zip

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Подправил, не помогло.

[root@localhost html]# cd /var/www/html/ && ls -lh ./

итого 8,1M

drwxr-x---. 6 apache apache 4,0K апр 28 17:27 admin

drwxr-x---. 6 apache apache 61 апр 28 17:28 catalog

-rw-r-----. 1 apache apache 0 сен 19 2011 config.php

drwxr-x---. 2 apache apache 23 апр 28 17:28 download

drwxr-x---. 6 apache apache 76 апр 28 17:28 image

-rw-r-----. 1 apache apache 6,7K сен 27 2011 index.php

-rw-r-----. 1 apache apache 49 апр 28 15:07 info.php

drwxr-x---. 6 apache apache 4,0K апр 28 17:28 install

-rw-r-----. 1 apache apache 316 дек 19 2010 php.ini

drwxr-x---. 9 apache apache 4,0K апр 28 17:28 system

-rw-r-----. 1 apache apache 20 апр 28 15:40 test.php

-rw-r-----. 1 apache apache 8,1M апр 28 15:58 upload.zip

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Создайте аккаунт или войдите для комментирования

Вы должны быть пользователем, чтобы оставить комментарий

Создать аккаунт

Зарегистрируйтесь для получения аккаунта. Это просто!

Зарегистрировать аккаунт

Войти

Уже зарегистрированы? Войдите здесь.

Войти сейчас

×
×
  • Создать...