Поиск  Пользователи  Правила 
Закрыть
Логин:
Пароль:
Забыли свой пароль?
Войти
 
Страницы: 1
RSS
Знатокам задачка!, Разгадать шифр, уже который день ломаю голову....
 
В общем озадачил меня друг интересным шифрованием 4-х значного числа. На выходе имеем 16 значную строку из чисел и букв. Очеведна 16-я система счисления. Вот примеры:
2A772ABC2708F8F7 = 3000
2A7224B62103FFF9 = 7833
2A762BBC2009FBF4 = 9258
2B7C2BB2200BFEF4 = 6841
2B772EB4200FFAF5 = 6640

Могу еще накидать, он мне еще скинул. Правда есть одно большое но, которое меня сразу смутило!
2B772EB4200FFAF5 = 3044 и 2B772EB4200FFAF1 тоже 3044

Я уже полностью сломал голову... Может кто сможет помочь?
 
чему равны
0000
0001
0002
...
0009
0010
0020
...
0090
...
...
...
9000
 
Не так просто все.Если уж вдаваться в подробности, то друг написал скрипт рандомизатор, который выдает мне оба эти значения четырех и шестнадцатизначное. И еще в скрипте есть проверка по шестнадцатизначному, так я и узнал, что одно и тоже 4х значное число выдает несколько шестнадцатизначных...
Чтоб узнать, что ты хочешь, необходимо запустить скрипт около 8999 раз)))
 
ну и че..
пусть другой скрипт запускает первый, хоть миллион раз...
 
Это имеет какое-то отношение к теме?
Он просто хочет проверить надежность шифровки. Я не справился, думал найду тут помощь
 
Это имеет непосредственное отношение к теме.
Данных предоставленных вами явно недостаточно для анализа алгоритма.
Вам тут пытаются помочь, но похоже, результат вам не очень и нужен.
 
2B772EB4200FFAF5 = 6640
2B772EB4200FFAF5 = 3044
на таком не большом промежутке (1..10000) уже есть коллизия, для любого шифрования - это кака.
имхо: phoenix абсолютно прав, для решения нужно что-то около 40 примеров (чуть больше, чуть меньше - как масть попрет). А по идеи должно быть легко, ибо режет глаз:
2_7_2_B_2_0_F_F_ = 3000
2_7_2_B_2_0_F_F_ = 7833
2_7_2_B_2_0_F_F_ = 9258
2_7_2_B_2_0_F_F_ = 6841
2_7_2_B_2_0_F_F_ = 6640
так что из 16 - это легко превратилось в 8.
 
[mad]Mega,
Сорри, коллизии нет, моя ошибка... Пытался написать мини скрипт, который бы все это записывал в текстовый формат, да только ошибся... Спасибо за заметку, действительно эта комбинация повторяется везде! Вот поработал чуть чуть с утра и отсортировал:

0416 B7D05DB7
0468 A4D023F3
0491 B2D0DA81
0745 BCD30EA7
0774 A4D33F80
0791 BDD3DAE4
0848 A6DC0383
0983 A6DDC891
1034 B4C47FE3
1541 B7C10AB0
1559 A6C112B5
1575 A4C13E80
1585 A5C1CEB1
1758 A7C31389
1777 A0C33CA5
2040 2CF40BF7
2041 2DF40A91
2078 BDF43383
2263 B1F628F3
2416 B1F05DB0
2523 B0F168E1
2672 BDF239F1
2827 A5FC6C87
3062 B7E429E4
3114 B5E55FF9
3156 B3E51DF3
3159 A4E512A6
3258 A4E613F2
3417 B3E05CA0
3430 B6E07BA0
3438 A4E073B6
3558 A7E113F8
3571 BCE13A84
3623 B2E268A7
3655 A5E21EF6
3670 BCE23B95
3697 A3E2DC94
4058 BD9413F3
4196 A695DD87
4199 A195D290
4328 BD9763A4
4359 A79712B1
4694 A192DFB9
4853 A69C1898
5180 B285CBE9
5218 BC865386
5278 A08633E4
5285 A686CE83
5308 BC8743B5
5734 A5837FA4
5822 BD8C69B5
5861 A68C2AA9
5889 968CC282
6003 B5B448B9
6110 B4B55B84
6155 BDB51EE8
6198 A2B5D3B0
6224 B2B66FF8
6232 B1B67993
6256 A5B61DF8
6638 A1B27383
6669 ADB222B9
6703 BCB348F6
6988 97BDC3A9
7048 A5A403A8
7096 A0A4DDE5
7241 B2A60A88
7524 A4A16F99
7639 A3A272E9
7676 ACA23D92
7852 A0AC19F7
7861 A0AC2AE1
7948 94AD03E8
8040 B0540B88
8068 A05423A4
8255 A6561EB5
8273 A65638F2
8279 AC563284
8328 A7576392
8437 A0507C94
8472 A7503995
8483 A150C897
8801 BD5C4A98
8823 A75C68B7
8836 A35C7DE5
8852 A15C1993
8896 975CDD99
8924 A15D6FE9
9170 BD453BB2
9261 A4462A84
9341 BD470AB9
9591 A241DAE5
9969 914D22E1
9998 934DD3B9
 
Заметка №1
0xxx = xxDxxxxx
1xxx = xxCxxxxx
2xxx = xxFxxxxx
3xxx = xxExxxxx
4xxx = xx9xxxxx

x1xx = xxx5xxxx
x2xx = xxxExxxx
x3xx = xxx7xxxx
x4xx = xxx0xxxx

xx1x = xxxx5xxx
xx2x = xxxx6xxx
xx3x = xxxx7xxx
и далее в таком же духе
вырежи всё что не нужно(всм уже решено) и представь новую таблицу из первых двух и последних двух и наверно всё решиться быстро
Изменено: [mad]Mega - 30.06.2011 18:02:43
 
вот несколько примеров:
0468 A4D023F3
0491 B2D0DA81
9591 A241DAE5

04xx xxD0xxxx
04xx xxD0xxxx
первые две десятичные цифры везде в 16-ричной части одинаковые ("04" => D0)
____________________________________________________________­____^^^^^^^^^^ - что не противоречит [mad]Mega

0491 xxxxDAxx
9591 xxxxDAxx
"91" - вторые две десятичные цифры тоже везде однозначно совпадают ("91" => "DA")
____________________________________________________________­_______^^^^^^^^^^^^ что не противоречит [mad]Mega
первые 2 числа 16-ричной формы это сумма чисел десятичной формы т.е.
0416 B7xxxxxx => 0+4+1+6=11 => "B7"
1541 B7xxxxxx => 1+5+4+1=11 => "B7"
3062 B7xxxxxx => 3+0+6+2=11 => "B7"

Пока не осилил как формируются последние 2 разряда 16-ричной формы записи.

Удачи ;)
Изменено: Danil - 01.07.2011 14:55:02
 
[mad]Mega,
хм, хорошо подмечено. Проснусь посмотрю

Danil,
Огромное спасибо, постараюсь все вычислить))

Очень приятно, что тут на форуме помогли, на двух других так и не ответили)
 
Разброс результатов маловат, для большей устойчивости ко взлому нужен лавинный эффект.
 
Всем спасибо за помощь! Нашел все символы!
соответствие
'D'=>'0','C'=>'1','F'=>'2','E'=>'3','9'=>'4','8'=>'5','B'=>'6','A'=>'7','5'=>'8','4'=>'9'
'4'=>'0','5'=>'1','6'=>'2','7'=>'3','0'=>'4','1'=>'5','2'=>'6','3'=>'7','C'=>'8','D'=>'9'
'4'=>'0','5'=>'1','6'=>'2','7'=>'3','0'=>'4','1'=>'5','2'=>'6','3'=>'7','C'=>'8','D'=>'9'
'B'=>'0','A'=>'1','9'=>'2','8'=>'3','F'=>'4','E'=>'5','D'=>'6','C'=>'7','3'=>'8','2'=>'9'

Первые два и вправду сумма, а последние пока не понял, но при некоторых изменениях последних двух выдает ошибку, а при некоторых нет...
Код оказался и вправду простым донельзя))
Страницы: 1
Читают тему