Он ведь кстати не с той стороны полосы приземлился где ждали изначально, вроде бы. Автоматика решила что там фиговые условия и перенаправила его, а все были типа в шоке.
в SHA-2 для инициализации используются, например, дробные части кубических(или квадратных, не помню) корней первых скольки то там простых чисел в 16ричном виде. Так что, тоже под замену без последствий.
Этот исходник — часть открытого проекта, который правда пока только на моём компе существует. Так что да, когда нибудь он появится на гитхабе или где-нибудь еще.
Да, к сожалению этот человек не захотел чтобы я его упоминал в статье(спрашивал когда искал сорцы второй версии брутфорсилки), так что просто будем называть его «Хороший человек».
Пакетный режим в том смысле, что он предусматривает смену хотя бы вектора инициализации(соли) для каждого пакета(сообщения). А это всё равно полная переинициализация.
Вот часть кода утилиты, которая генерит всевозможные значения.
mad, xgcd функции из либы miracl
bytes_to_big(14,d,D);
bytes_to_big(14,c,C);
bytes_to_big(16,(char*)hash,H);
subtract(O,H,H); // H = -H mod O
xgcd(C,O,Ci,Ci,Ci); // Ci = C^(-1) mod O
mad(D,Ci,Z,O,T,D); // D = D*C^(-1) mod O
mad(H,Ci,Z,O,T,H); // H = H*C^(-1) mod O
for(seed=0;seed<100000000L;++seed) {
int i;
unsigned int sk[4];
unsigned char r[16];
if(0==(seed%10000)) {
printf("%1.2f%% ... \r",(double)seed/1000000.);
}
InitRandomGenerator(seed);
for(i=ECC_MAXLONG-1;i>=0;--i) sk[i] = NextRandomNumber();
sk[3] &= ECC_UPRMASK;
inverse((char*)sk,16);
bytes_to_big(16,(char*)sk,S);
mad(D,S,H,O,T,R);
big_to_bytes(14,R,r,1);
inverse(r,14);
// write to the basket # r[0]
fwrite(r,14,1,f[r[0]]);
}
Мож я немного напортачил конечно с объяснением, давно дело было
Этот ключ не ECC и версия 3, а не 3.7. Для 3.7 делали красивый кейген чуваки из TMG, но уже после того как наши расковыряли дыру в сорцах и с помощью тех данных, что были в этих сорцах. Так что, мы впереди планеты всей ) А, и кейген TMG не учитывал все нюансы и поэтому перестал работать сразу же после первого обновления. А наш работал )
Надо совмещать такие принтеры с переработчиками металла. Засыпал туда гаек\стружки\обрезков, он переработал это в пыль\глину или какой нить наногель и в принтер.
В данном конкретном случае являются, т.к. именно в таком виде алгоритм был сертифицирован. Исследователи предложили каждый раз генерировать разные константы, но это уже другой алгоритм.
Закладка вшита в сам алгоритм, независимо от реализации. В алгоритме прописаны константы, которые при неудачном стечении обстоятельств могут свести на нет всю его секьюрность
Нельзя его успокаивать, можно только давать передохнуть. Прикиньте, сколько еще Сноуден НЕ рассказал? И сколько секретов есть помимо тех что он знает. Да хотя бы список рекомендованных «эпилептических» кривых, можно ему доверять?
mad, xgcd функции из либы miracl
Мож я немного напортачил конечно с объяснением, давно дело было