Автор Тема: Управление на пароли - обсъждане  (Прочетена 9198 пъти)

gat3way

  • Напреднали
  • *****
  • Публикации: 6050
  • Relentless troll
    • Профил
    • WWW
Re: Управление на пароли - обсъждане
« Отговор #30 -: Jan 12, 2014, 00:54 »
Значи темата се измести малко ми се струва в посока сигурна комуникация.

Това което предлагаш е стеганография, без значение под каква точно форма (дали ще е в картинките, дали ще е в body-то на съобщението, дори при добро желание имаш няколко байта на разположение в TCP хедърите да използваш, няма значение.

Този вариант не ми допада силно честно казано, защото не дава някакви добре дефинирани гаранции за конфиденциалността на съобщението. Освен което напротив това, което вероятно мислиш, "анти-стеганографията" също се развива с времето и обикновено такива неща се откриват със статистически методи - Бейсиански анализ и т.н. Не е казано че е лесно да откриеш какво точно е "скрито", но е относително лесно да се определи дали има нещо "скрито".

За жалост и криптографията не дава лесни отговори. Примерно конфиденциалността лесно може да се подсигури - използваш споделен ключ и някаква силна симетрична криптография, примерно AES, в някакъв подходящ режим (примерно CTR).

Това е хубаво, но никога не можеш да имаш гаранция, че някой няма активно да се намеси във връзката и да подмени някой пакет. Следователно трябва да се ползва примерно HMAC кодове за гарантиране на автентичността на съобщението. Само че дали HMAC-а да се смята върху криптираното или върху plaintext-а? И двете имат предимства и недостатъци и в дадени ситуации може фатално да се оплескат нещата.

Да се върнем на симетричната криптография - двете страни трябва да имат споделен ключ. Съществува варианта да си го разменят на хартиена бележка, но това не е практично, поради което трябва да се ползва някакъв key exchange механизъм. Diffie-Hellman сам по себе си е сигурен от гледна точка на пасивно слухтене, но ужасно податлив на активни mitm атаки. Можем да вкараме още малко асиметрична криптография, всяка страна да си има двойка частен/публичен ключ и на база това да потвърждаваме автентичността на този с който си говорим. Всичко е хубаво но какво става когато за първи път си говорим с човека, когато за пръв път вземаме публичния му ключ? Можем ли да сме сигурни че това което вземаме е неговия публичен ключ или някой по трасето ни ебава? Става малко като кокошката и яйцето.

Оттам има и друг важен момент - да речем че този с който си говорим го бастисат лошите и се сдобият с ключовете му. Ние не искаме лошите да могат да декриптират предишните комуникации, които са изслухтяли след като се сдобият с ключа. За целта key exchange-а трябва да ползва ефемерни стойности, които се унищожават и не се преизползват.

И така нататък и така нататък.

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

Стеганографията...не мисля че може да даде отговори на всички тези въпроси. Може само на някои и обикновено това става на някаква цена. Особено пък в момента в който едно стеганографско решение стане по-масово използвано, тогава сигурността му неминуемо е обречена.
« Последна редакция: Jan 12, 2014, 00:57 от gat3way »
Активен

"Knowledge is power" - France is Bacon

4096bits

  • Напреднали
  • *****
  • Публикации: 6178
    • Профил
Re: Управление на пароли - обсъждане
« Отговор #31 -: Jan 12, 2014, 01:18 »
Това е система за компресиране на информация и данни, изразяваща се накрая в много глямо число. Наистина много голямо. Файлът се кодира под формата на бази и степени. Всеки пореден байт се изразява като просто число 1, 3, 5, 7, 11, 13 etc., а самият байт като степен. Да речем, че искаш изпратиш телефонен номер. Взимаме произволен - 9769475. Деветката и седмицата се срещат най-често. Значи те ще са със степени 1 и 2. и става така. 9-1, 7-2, 6-3, 9-1, 4-4, 7-2, 5-5. Има пет различни цифри. Кодирането е следното.

9^1x7^2x6^3x9^1x4^4x7^2x5^5

Получава се едно доста голямо число. Още по-голямо се получава, ако искаме да изпратим e-mail. Пъти, пъти^пъти по-голямо. Но колкото и да е голямо, то може да се изрази отново като база и степен. Нещо от сорта на 3465086984128135^5618613837 + 441^835 + евентуално още малко подобен род цифри. Така представен, e-mail-а може да е стотици или лиляди пъти по-малък като размер. Както и всяко друго нещо. Колкото по-голям е размерът на файла, толкова компресията ще е по-голяма. Защото каквото и да е, може да се представи като сбор от бази и степени на един ред или по-малко, което е направо смешно като размер.
Активен

As they say in Mexico, "Dasvidaniya!" Down there, that's two vidaniyas.

4096bits

  • Напреднали
  • *****
  • Публикации: 6178
    • Профил
Re: Управление на пароли - обсъждане
« Отговор #32 -: Jan 12, 2014, 01:39 »
Изслухтяването засега няма как де се избегне. Btw половината от написаното не ти разбрах. Щеше ми се да съм нагазил малко повече в тея неща, но ще ми трябват 5 живота, за да си покрия интересите. Щях може би дори в този момент да пусна в търсачката, кое, какво означава, но това щеше да доведе до още ровене, за да разбера други неща. Трябва база все пак. А вече е късно. Пък и един ден или една нощ, няма кад да стигнат.
Но начини да се направи едно нещо - всякакви. Защо трябва да разменят ключове. Не може ли часът на изпращане на съобщението да указва нарпимер географския пояс, като всяко следващо изпратено в същия час, да указва ширината. Взимаш локацията на центъра на получения квадрат и го ползваш за ключ, ако има населени места, тази на най-голямото и ако е достатъчно голямо, локацията на градското сметище. После превръщаш 9-ките в 0-и, 4-ите в 6-и, 2-ите в 8-и и това ти е ключа. Само трябва да внимаваш, да не изпратиш каквото искаш в 14:59, щото има голяма вероятност да объркаш човека отсреща. Макар, че в днешно време една минута за тези неща си е доста. Убеден съм, че достатъчно простичките неща почти винаги могат да бията някоя сложна система.
Нещата се изплъзват от контрол. Прекалено зависими ставаме от подобни технологии, а те не са в ръцете ни. Други ги мислят, други ги пишат, а ние дори не сме наясно, какво ползваме и как работи.
Активен

As they say in Mexico, "Dasvidaniya!" Down there, that's two vidaniyas.

gat3way

  • Напреднали
  • *****
  • Публикации: 6050
  • Relentless troll
    • Профил
    • WWW
Re: Управление на пароли - обсъждане
« Отговор #33 -: Jan 12, 2014, 02:42 »
Цитат
Но начини да се направи едно нещо - всякакви. Защо трябва да разменят ключове. Не може ли часът на изпращане на съобщението да указва нарпимер географския пояс, като всяко следващо изпратено в същия час, да указва ширината. Взимаш локацията на центъра на получения квадрат и го ползваш за ключ, ако има населени места, тази на най-голямото и ако е достатъчно голямо, локацията на градското сметище. После превръщаш 9-ките в 0-и, 4-ите в 6-и, 2-ите в 8-и и това ти е ключа. Само трябва да внимаваш, да не изпратиш каквото искаш в 14:59, щото има голяма вероятност да объркаш човека отсреща. Макар, че в днешно време една минута за тези неща си е доста. Убеден съм, че достатъчно простичките неща почти винаги могат да бията някоя сложна система.
Нещата се изплъзват от контрол. Прекалено зависими ставаме от подобни технологии, а те не са в ръцете ни. Други ги мислят, други ги пишат, а ние дори не сме наясно, какво ползваме и как работи.


Може, обаче представи си - хората особено в последно време държат да ползват отворени стандарти и софтуер с отворен код, така че тази схема не може да е тайна - тя трябва да е известна. Оттам всеки, който прави mitm атака, може да докара произволни неща както му изнасят и ти ще ги вземеш на доверие. Може примерно избирателно да не допусне някакво съобщение точно в определено време да достигне до теб. И алтернативно да допусне точно определено, но фалшифицирано съобщение, в точно определено време, да достигне. Ти как може да си сигурен какво получаваш? Извън всичко това, ако протоколът е известен, то няма проблем да разбереш какво се говори, защото щом за двете страни не е проблем да имат идея за точното време, то и за третата страна не е проблем. Тук да вметна че ще имаш и проблеми със синхронизация на часовници и че ако избереш ntp като вариант за синхронизация, то даваш още един начин на лошите да се ебават със схемата. Много хора си мислят че като можеш да се наместиш по средата, то повечето забава опира до пасивното слухтене на комуникацията. Това не е точно така, активните mitm атаки обикновено са по-голяма забава. GSM нещата са най-дебелата илюстрация за това, пасивното слухтене е лесно, но предполага да кажем "разширени" възможности да слухтиш плюс прилични изчислителни мощности за да се разправиш с криптографията. Активните атаки обаче правят всичко лесно и елементарно като за полицаи - просто излъгваш "жертвата" че не се ползва криптиране и оттам всичко е лесно. Дори не ти се налага да ползваш скъпи радиа, които могат да слухтят няколко различни честоти в реално време, просто казваш на жертвата "ползвай тази честота и този timeslot за контролния/трафик канала" и тя ще ти вярва и ще ги ползва.

А иначе алтернативно иначе може и протокола да е "таен" и софтуерът да е със затворен код и да са хвърлени доколкото може там усилия против дебъгването му. Ти имаш ли доверие на този от който си го взел? Мен примерно ако ми кажат че за да си говоря с някой, трябва да дърпам затворен софтуер, който не знам какво прави и не съм чувал за него, вероятно ще тегля една майна и дотам. Но и да не беше така - имаш ли доверия на сървъра, откъдето си го издърпал? Дори да имаш доверие, знаеш ли дали това което дърпаш е същото като това, което се намира на сървъра? Когато някой контролира инфраструктурата, не е никакъв проблем да ти сервира забави по желание. Мислиш си че теглиш едно, то се оказало друго. Това е и причината binary пакетите в линукс дистрибуциите да се подписват. Когато това не става е безотговорно меко казано.
« Последна редакция: Jan 12, 2014, 03:19 от gat3way »
Активен

"Knowledge is power" - France is Bacon

4096bits

  • Напреднали
  • *****
  • Публикации: 6178
    • Профил
Re: Управление на пароли - обсъждане
« Отговор #34 -: Jan 12, 2014, 15:12 »
Ясно е, че говоря за защита на личната комуникация. Ако методът не е известен ( например да се вземат индексите на някоя борса или каквито ти хрумне статистически данни от, да кажем 2000 година насам и да се ползват те ), върши работа. Все пак става въпрос за комуникация между двама души.

Точно поради споменатите от теб причини не понасям Скайп например. Но какво да правя, като някои хора мога да ги намеря само там.
« Последна редакция: Jan 12, 2014, 15:16 от 4096bits »
Активен

As they say in Mexico, "Dasvidaniya!" Down there, that's two vidaniyas.

remotexx

  • Напреднали
  • *****
  • Публикации: 3235
    • Профил
Re: Управление на пароли - обсъждане
« Отговор #35 -: Jan 12, 2014, 16:28 »
Това е система за компресиране на информация и данни, изразяваща се накрая в много глямо число. ...
 Взимаме произволен - 9769475.  Кодирането е следното.

9^1x7^2x6^3x9^1x4^4x7^2x5^5

Получава се едно доста голямо число.

Даа доста по-голямо се поучава така че това не е метод за компресия
или в сл. с дадения пример само от 7 цифрен число "уж компресиарния вариант е 14 цифрено число"
33606316800000 = 9*49*216*9*256*49*3125
т.е. обик. текст без компресия да кажем заема 1 байт за буква (на латиница - даже 7 бита но да не издребняваме) та по т.нар. метод за "компресия" всяко нещо закодирано в > 1 байт всъщност увеличава размера.
Нека видим сега кога добавяме > 256 (1 байт) - т.е. всяко умножение с число > 2^8
т.е. при обикновения текст всяка нова буква уголемява "числото" с умножение с 2^8
или еквиваленто за др. числа
2^8, 3^4.5, 4^4, 5^3.5, 6^3.1, 7^2.8, 8^2.4 и т.н. до *256^1
и тъй като е много вероятно да имаме повече от 25-30 различни букви (ако искаме смислено съобщение напр. на кирилица) и макар и първите 3-4 букви да се срещат много често то при всяка следваща ще имаме число на 5-та и по-голяма степен което всъщост ще прави "кокпресирането" по-дълго отколкото една обикновена кодова таблица напр. cp1251 без компресия при която добавянето всяка нова буква увеличава точно с умножние по 2^8

само един малък пример  да кажем че най-рядко използванатабуква е "ь" ер-малко т.е. е на позиция 30 тогава ще умножава числото по 30^30 =
205891132094648990023782374475305522563121152 не ми се смята колко байта са но в cp1251 plain text 1 буква "ь" ще добави само 1 байт
и въобще всяка буква след 4-тата (по честота на срещане) която умножава точно по 4^4=256 всъщност е добавя по повече от 1 байт
П.П. това без да взимаме предвид че чслата трябва да са прости
« Последна редакция: Jan 12, 2014, 16:57 от remotexx »
Активен

4096bits

  • Напреднали
  • *****
  • Публикации: 6178
    • Профил
Re: Управление на пароли - обсъждане
« Отговор #36 -: Jan 12, 2014, 16:49 »
Не си чел внимателно.
Активен

As they say in Mexico, "Dasvidaniya!" Down there, that's two vidaniyas.

remotexx

  • Напреднали
  • *****
  • Публикации: 3235
    • Профил
Re: Управление на пароли - обсъждане
« Отговор #37 -: Jan 12, 2014, 16:58 »
Не си чел внимателно.
Моля? Искате да кажете че
9^1x7^2x6^3x9^1x4^4x7^2x5^5
НЕ Е = 33606316800000
или може би че
33606316800000 не е по-дълго (или както е по-равилно всъщност не по-голямо) от 9769475
???
Активен

remotexx

  • Напреднали
  • *****
  • Публикации: 3235
    • Профил
Re: Управление на пароли - обсъждане
« Отговор #38 -: Jan 12, 2014, 17:10 »
Много задълбахме колеги

Най-простото криптиране се нарича one time pad и е доволно просто - записваме 1 CD т.нар. бял шум и си го менкаме и това е ключа.

Сега ако някой посредата докопа ключа то този метод пропада - но и всеки друг също, но иначе е железен и доволно прост.
Активен

stealth01

  • Гост
Re: Управление на пароли - обсъждане
« Отговор #39 -: Jan 12, 2014, 19:57 »
- Милo, ти ли сложи парола на компютъра?
- Да.
- И каква е тя?
- Датата на нашата сватба.
- Мамка му... ???
Активен