реклама на сайте
подробности

 
 
> ГПСЧ, выделить несоответствие в проследовательности
toweroff
сообщение Feb 1 2013, 14:35
Сообщение #1


Гуру
******

Группа: Свой
Сообщений: 2 957
Регистрация: 19-09-06
Из: Москва
Пользователь №: 20 514



Добрый нень всем

Возник такой вопрос. Имеем ГПСЧ последовательность, в районе килобайта. Последовательность тупо генерится через rand()
В этой последовательности заменяем некоторые значения, длина 8 байт, количество замен - 4 по 8 байт

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

Спасибо
Go to the top of the page
 
+Quote Post
2 страниц V  < 1 2  
Start new topic
Ответов (15 - 18)
toweroff
сообщение Feb 3 2013, 11:32
Сообщение #16


Гуру
******

Группа: Свой
Сообщений: 2 957
Регистрация: 19-09-06
Из: Москва
Пользователь №: 20 514



Цитата(maksimp @ Feb 2 2013, 23:03) *
rand() скорее всего использует линейный конгруэнтный генератор
x[i] = (x[i-1] * a + c) mod m
Имея достаточно длинный фрагмент последовательности, этот генератор можно вскрыть, то есть определить x[0], a, c, m. После этого легко найти заменённые байты.

Я Вас понял.
вот из описания rand
Цитата
rand uses a multiplicative congruential random number generator with period 2 to the 32nd power to return successive pseudo-random numbers in the range from 0 to RAND_MAX. The symbolic constant RAND_MAX is defined in stdlib.h.

то есть в любом случае повторения после 4ГБ. Отыскать в этой последовательности мой килобайт проще простого sad.gif
Так что остается только шифрование
Go to the top of the page
 
+Quote Post
zombi
сообщение Feb 3 2013, 12:09
Сообщение #17


Гуру
******

Группа: Свой
Сообщений: 2 076
Регистрация: 10-09-08
Пользователь №: 40 106



Зачем rand() использовать?
Напишите свой гпсч.
Go to the top of the page
 
+Quote Post
toweroff
сообщение Feb 3 2013, 12:29
Сообщение #18


Гуру
******

Группа: Свой
Сообщений: 2 957
Регистрация: 19-09-06
Из: Москва
Пользователь №: 20 514



Цитата(zombi @ Feb 3 2013, 16:09) *
Зачем rand() использовать?
Напишите свой гпсч.

Ну как вариант - да
Только вот, возможно, с шифрованием надежнее будет. Примеров реализации - вагон с тележкой sm.gif
Go to the top of the page
 
+Quote Post
zombi
сообщение Feb 3 2013, 16:09
Сообщение #19


Гуру
******

Группа: Свой
Сообщений: 2 076
Регистрация: 10-09-08
Пользователь №: 40 106



Цитата(toweroff @ Feb 3 2013, 16:29) *
Ну как вариант - да

А если в приёмнике будет точно токой же гсч и где то в блоке положить статовое значение для него, то можно и сам "мусор" проверить.
Проверка подлинности однако biggrin.gif

Go to the top of the page
 
+Quote Post

2 страниц V  < 1 2
Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 20th July 2025 - 00:09
Рейтинг@Mail.ru


Страница сгенерированна за 0.01374 секунд с 7
ELECTRONIX ©2004-2016