109: (Default)
[personal profile] 109
я тут попытался придумать, как бы хотя бы firends-only записи сделать _на_самом_деле_ защищёнными (то есть чтобы _на_самом_деле_ только френды могли читать), но так ничего и не придумал. зато есть куча рассмотренных сценариев (как с симметричным криптованием, так и асимметричным), которые работать не будут (с объяснением, почему).

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

(no subject)

Date: 2006-10-23 11:02 pm (UTC)
From: [identity profile] the-white-man.livejournal.com
С использованием или без использования third-party services?

(no subject)

Date: 2006-10-23 11:07 pm (UTC)
From: [identity profile] 109.livejournal.com
можно и с использованием, если эти третии партии не будут иметь возможности декриптовать.

(no subject)

Date: 2006-10-24 12:09 am (UTC)
From: [identity profile] fenikso.livejournal.com
Хранить много шифрованных копий, по одной на каждого френда, шифровать каждую - share secret-ом с этим френдом. Недостатки очевидны.

(no subject)

Date: 2006-10-24 12:47 am (UTC)
From: [identity profile] 109.livejournal.com
хм... хранить много копий мне в голову не пришло.

а как с группами быть? юзер А - член моей группы Б, но не моей группы С. когда я пощу в Б, я хочу, чтобы юзер А имел доступ, а когда пощу в Б - нет.

всё-таки как-то должно быть можно и без множественных копий... например, симметричный ключ, которым зашифрован пост, в свою очередь, шифруется shared secret-ом, и кладётся на сервер вместе с указанием, какому френду этот ключ выдавать. таким образом, сервер прочитать не может, поскольку не знает shared key, и в то же время хранит только один экземпляр зашифрованного поста.

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

(no subject)

Date: 2006-10-24 01:02 am (UTC)
From: [identity profile] fenikso.livejournal.com
>а как с группами быть? юзер А - член моей группы Б, но не моей группы С.
>когда я пощу в Б, я хочу, чтобы юзер А имел доступ, а когда пощу в Б - нет.
per-group key. с revocation конечно заморочки пойдёт, плюс если ты хочешь постить в С неявно для юзера А, то вариант негуманно сработает - юзер А вынет шифрованный пост, обломается прочитать и загрустит в печаль (ЖЖ как я понимаю, просто не светит такие посты)

>например, симметричный ключ, которым зашифрован пост, в свою очередь, шифруется
>shared secret-ом, и кладётся на сервер вместе с указанием, какому френду этот
>ключ выдавать.
Нет, тут ты уже условия задачи сдвинул - если ты серверу указываешь кому давать, кому не давать - то тебе не нужен никакой второй ключ. Заведи себе один на всех людей ключ, неизвестный только серверу, шифруй им, а доступ регулируй сервером.

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

p.a. ничего что я на "ты"? (возможно, склероз)

(no subject)

Date: 2006-10-24 01:19 am (UTC)
From: [identity profile] 109.livejournal.com
на "ты", конечно, о чём речь.

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

то есть, сервер "дружественный" в том смысле, что он готов имплементировать предлагаемый протокол, чтобы иметь возможность сказать "мы не можем читать шифрованные посты при всём желании". например, чтобы привлечь privacy-challenged userbase.

но "недружественный" в том единственном смысле, что он не должен быть способен расшифровать шифрованные посты.

с одним ключом на всех я вообще не понял идею.

(no subject)

Date: 2006-10-24 01:29 am (UTC)
From: [identity profile] fenikso.livejournal.com
>с одним ключом на всех я вообще не понял идею.
это один из вариантов - выдавай ключ для чтения своих постов всем один и тот же, а выдачу самих постов регулируй сервером. друзьям давать - недрузьям не давать. тогда даже при наличии ключа, будет просто нечего декодировать тем кому ты не хочешь давать читать свои записи.

впрочем, и в этом варианте дыр куча. как и во всяком другом, имхо.

(no subject)

Date: 2006-10-24 01:40 am (UTC)
From: [identity profile] 109.livejournal.com
не, это не годится. в протоколах с shared key для каждого френда мы не рассматриваем вариант, как именно мы обменялись shared key и установили его подлинность. это годится [только] потому, что протокол не подразумевает изменения этого ключа. в этом же твоём варианте (один ключ на всех), ключ надо менять каждый раз, когда удаляешь френда, поэтому игнорировать механизм дистрибуции ключа нельзя.

(no subject)

Date: 2006-10-24 01:46 am (UTC)
From: [identity profile] fenikso.livejournal.com
Смотри, у тебя все равно получается избыточность - не копиями сообщений, так копиями ключей. фактически при хорошей динамике изменений структуры группы, ты получаешь свой новый симметричный ключ на каждое сообщение, прокриптованный shared ключом для каждого френда. Причём формировать шифрованный шаредом симметричный ключ ты должен у себя, иначе сервер получит информацию об этом ключе.

(no subject)

Date: 2006-10-24 01:52 am (UTC)
From: [identity profile] 109.livejournal.com
ну, избыточность - дело относительное. по сравнению с чем? есть ли более компактная имплементация, отвечающая условиям? по крайней мере, хранить копии ключей - более компактно, чем копии сообщений...

(no subject)

Date: 2006-10-24 02:01 am (UTC)
From: [identity profile] fenikso.livejournal.com
Тут уже руками смотреть надо :) Человеческие сообщения жмутся очень хорошо - ещё неизвестно кто меньше окажется (хранить то можно и зипованный вариант :) Но это уже гонка за битами. А так - что одно, что другое.

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

(no subject)

Date: 2006-10-24 06:39 am (UTC)
From: [identity profile] 109.livejournal.com
ну да, на постах короче 128 бит мой вариант начинает проигрывать :-Р

при чём тут доверие серверу? при шифровке симметричного ключа поста теми же самыми открытыми ключами френдов доверие к серверу ровно такое же.

(no subject)

Date: 2006-10-24 10:26 am (UTC)
From: [identity profile] fenikso.livejournal.com
>ну да, на постах короче 128 бит мой вариант начинает проигрывать :-Р
От длины ключа зависит :-P :)

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

Browser-specific crap

Date: 2006-10-24 12:22 am (UTC)
From: [identity profile] piggymouse.livejournal.com
Участвовали ли в твоих размышлениях FireFox extensions & GreaseMonkey scripts?

(no subject)

Date: 2006-10-24 12:29 am (UTC)
From: [identity profile] 109.livejournal.com
в моих размышлениях участвовал некий абстрактный джаваскрипт, который ходит, куда хочет (то есть, я не ограничил себя аяксовскими мнэ... ограничениями). и всё равно :-(

ни про фокс, ни про monkey я ничего не знаю, но предполагаю, что оно всё на джаваскрипте построено anyway?

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

(no subject)

Date: 2006-10-24 01:07 am (UTC)
From: [identity profile] fenikso.livejournal.com
>как обрабатывать ситуацию "исключил из френдов"
кстати, действительно, можно групповому ключу придать атрибут "ревизия" и при каждом изменении состава группы, перешифровывать записи и propagate ключ всем текущим юзерам группы (а тут уже надо напрямую как-то раздавать)

в итоге мы приходим к внешней системе (хотя бы раздачи ключей)

(no subject)

Date: 2006-10-24 01:27 am (UTC)
From: [identity profile] 109.livejournal.com
негодидзе. тогда "внешняя система" сможет прочитать посты, что нельзя (если эти третии партии не будут иметь возможности декриптовать)

а мой протокол вроде должен работать. ещё бы придумать протокол обмена shared key для новых френдов, и можно запускать IPO :-)

(no subject)

Date: 2006-10-24 01:41 am (UTC)
From: [identity profile] fenikso.livejournal.com
По-моему, в данной постановке LJ вообще вырождается в "канал связи" и мы приходим к той самой задаче передаче зашифрованного сообщения :)

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

Не думаю, что без "множественных копий" обойдётся.

(no subject)

Date: 2006-10-24 01:59 am (UTC)
From: [identity profile] 109.livejournal.com
да, это место меня смущало и из общих соображений. нужно просто больше не выдавать исключённому френду ключ. а если он уже успел прочитать, то что уж тут перешифровывать...

(no subject)

Date: 2006-10-24 01:37 am (UTC)
From: [identity profile] msh.livejournal.com
see RFC1421, случай с multiple recipients

(no subject)

Date: 2006-10-24 06:43 am (UTC)
From: [identity profile] 109.livejournal.com
ниасилил. чем-нибудь отличается от того, что я тут придумал? (шифровать пост симметричным ключом, ключ шифровать открытым ключом френда и выдавать френду комплект "зашифрованный пост - зашифрованный ключ")

(no subject)

Date: 2006-10-24 03:00 am (UTC)
From: [identity profile] selfmade.livejournal.com
Можно и без браузера обойтись. Прикрутить криптование к редактору лж, забыл как называется.

(no subject)

Date: 2006-10-24 12:22 pm (UTC)
From: [identity profile] ignik.livejournal.com
Вешать в lj токмо анонсы новых записей. Как lleo поступает.
С другой стороны фигня всё это, кому мы нужны кроме нас самих пока бабла не платим ;-)

не получится

Date: 2006-10-24 03:20 pm (UTC)
pishu: (Default)
From: [personal profile] pishu
придется возвращаться к старинному обмену доверенными курьерами и бумажной переписке.
А если серьезно, то можно было бы у поставщиков криптосистем денег поднять на такой мегатест.

(no subject)

Date: 2006-10-24 06:49 pm (UTC)
From: [identity profile] 109.livejournal.com
дык поднимай. мы тут уже придумали, как сделать.
pishu: (Default)
From: [personal profile] pishu
По-аглицки: фамилии, адреса, сиви. Плюс краткое описание технологии на английском. Когда составлю доку пригодную для отсылки инвесторам - дам вам почитать, если вы там со всем согласитесь - надо будет зарегить какой-нибудь entity в юсовской или канадской юрисдикции, это вам легче чем мне, и дальше уже будем искать ангела или промышленного инвестора. Мыл в инфе.

(no subject)

Date: 2006-10-25 07:38 am (UTC)
From: [identity profile] 109.livejournal.com
entity у меня, кстати, есть :-)

так тебе и карты в руки :)

Date: 2006-10-25 08:17 am (UTC)
pishu: (Default)
From: [personal profile] pishu
генштабовские

Profile

109: (Default)
109

March 2019

S M T W T F S
     12
3456789
101112131415 16
17181920212223
24252627282930
31      

Most Popular Tags

Style Credit

Expand Cut Tags

No cut tags