-
- Коллизий дофига: для 'abcd' и 'dbac', например, сумма одна. - fk0(22.10.2010 18:38)
- Да, хеш нужен необратимый. - fk0(22.10.2010 18:39)
- Хэш по определению будет иметь коллизии и по определению необратим. Иначе это не хэш :) - LightElf(22.10.2010 18:42)
- Хорошо, труднообратимый, но без коллизий. Есть A и B, из AB считается эта функция и получается C (разрядность C может быть больше 64 бит). Нужно, чтоб для разных A никогда не получались одинаковые C, нужно чтоб из C было трудно вычислить A. Как? - fk0(22.10.2010 18:49)
- Любой блочный шифр. - SciFi(22.10.2010 19:22)
- + Алгоритмы сжатия "без потерь", zip и иже с ним. Хотя по сути это, наверное, тоже самое, "или нет?" (с) - Chum_A_(22.10.2010 21:38, )
- Нет... один сжал, другой разжал. - fk0(25.10.2010 12:13)
- Мне это не очевидно. Почему? - fk0(22.10.2010 19:56)
- По пунктам: SciFi(739 знак., 22.10.2010 21:27)
- Если B=rand(), тогда шифрование разных A с разным B может давать одинаковый C -- коллизия. Иначе B нужно делать одинаковым во всех случаях. Но тогда, украв B, можно из любого C узнать A, что недопустимо. - fk0(24.10.2010 12:44)
- Пример простого шифра - TEA: SciFi(246 знак., 22.10.2010 21:36, ссылка)
- По пунктам: SciFi(739 знак., 22.10.2010 21:27)
- + Алгоритмы сжатия "без потерь", zip и иже с ним. Хотя по сути это, наверное, тоже самое, "или нет?" (с) - Chum_A_(22.10.2010 21:38, )
- Да, B == rand() - fk0(22.10.2010 19:02)
- Любой блочный шифр. - SciFi(22.10.2010 19:22)
- Хорошо, труднообратимый, но без коллизий. Есть A и B, из AB считается эта функция и получается C (разрядность C может быть больше 64 бит). Нужно, чтоб для разных A никогда не получались одинаковые C, нужно чтоб из C было трудно вычислить A. Как? - fk0(22.10.2010 18:49)
- Хэш по определению будет иметь коллизии и по определению необратим. Иначе это не хэш :) - LightElf(22.10.2010 18:42)
- Да, хеш нужен необратимый. - fk0(22.10.2010 18:39)
- Коллизий дофига: для 'abcd' и 'dbac', например, сумма одна. - fk0(22.10.2010 18:38)