Czy istnieje x
gdzie SHA1(x) == x
? Szukam dowodu lub mocnego argumentu przeciwko niemu.Czy są jakieś x, dla których SHA1 (x) jest równy x?
Odpowiedz
Te same argumenty mają zastosowanie tutaj, jak w pytaniu Is there an MD5 fixed point? , tj. dla losowo wybranej funkcji wynosi około 63%.
Nie tego szukam. Powiedzenie 63% jest jak powiedzenie "może, a może nie". ;-) – forki23
I myślę, że ważne jest to, że SHA1 nie jest funkcją losową i dlatego poprawna odpowiedź może być tylko tak lub nie. – forki23
Argument mówi, że dopóki nie można wykorzystać specjalnych właściwości SHA1, trudno będzie znaleźć mocne argumenty za lub przeciw ustalonym punktom. Miejmy nadzieję, że SHA1 nie ma żadnych nieznanych specjalnych właściwości. – abc
Przeczytaj o stałym atakiem na punkcie tego wpisu wiki One-way compression function - Davies-Meyer
najpowszechniej stosowanym funkcje skrótu, w tym MD5, SHA-1 i SHA-2
użytku Merkle-Damgård budowy.
Jeśli dobrze to rozumiem, to nie jest to naprawdę sprawdzone, ale mamy tylko małą szansę na znalezienie przykładu . – forki23
@ forki23, Wierzę, że możliwe jest znalezienie stałej wartości, więc metoda Merkle-Damgård służy tylko do wzmocnienia algorytmów haszujących. –
Problem z tą konstrukcją stosowaną do bieżącego pytania polega na tym, że dołączona długość jest znana a priori; wejście jest tak długie, jak wyjście. – MSalters
- 1. Czy są jakieś twórcy .chm dla OS X?
- 2. "x = ++ x" czy to jest naprawdę niezdefiniowane?
- 3. Dlaczego jest x ++ - + - ++ x legal, ale x +++ - +++ x nie jest?
- 4. Kiedy jest (x ||! X) fałsz?
- 5. Dla każdego x ... Next Vs. Dla każdego x ... Dalej x
- 6. Piętro (X) modulo X to X?
- 7. Haskell: x na liście dla której f (x) jest maksymalna
- 8. string.charAt (x) lub ciąg [x]?
- 9. Czy jest krótka droga do napisania `{| x | x} `?
- 10. BeautifulSoup4: wybierz elementy, w których atrybuty nie są równe x
- 11. Wpływ x = x + w JavaScript
- 12. Dlaczego powinienem używać operatora.itemgetter (x) zamiast [x]?
- 13. Dokonywanie przedmiot x takie, że „x w [x]” zwraca false
- 14. Struct X w Struct X?
- 15. Różnica między ~ (x-1) i ~ x + 1, gdy x = 0x80000000
- 16. Obliczanie pracy wykonanej przez x = f (x, x)
- 17. Dziwactwo rubowe: x == y && [x, y] .uniq == [x, y]
- 18. Czy istnieje jakaś różnica między "Object [] x" a "Object x []"?
- 19. Czy są jakieś wtyczki do generowania dokumentacji interfejsu API dla Play 2.x?
- 20. Jaki jest układ pamięci dynamicznej macierzy X dynamicznej tablicy X?
- 21. Dlaczego x [i] [:] = x [:] [i] gdzie x to lista list?
- 22. Pisanie w stylu bezramkowym f x = g x x
- 23. co robi x: Key = "{x: Type TextBox}"?
- 24. Różnica sqrt (x) i pow (x 0,5)
- 25. Confused o X w GaussianHMM.fit ([X])
- 26. Czy jest jakieś graficzne narzędzie Binary Diff dla Mac OS X?
- 27. Czy można używać npm 3.x z nodejs 4.x?
- 28. ANTLR 4.5 - Niedopasowane wejście "x" oczekiwanie "x"
- 29. Kombinacje trzech liczb dodatnich x, y, z tak, że x + y, x-y, y + z, y-z, x + z i x-z są idealnymi kwadratami
- 30. Czy "x = new (Foo)" jest takie samo jak "x = new Foo" dla dowolnego Foo?
Zapomniałem o algo, ale sugeruję, aby brać i wkładać i wysyłać do obwodu, żeby były takie same i próbować formułować warunki na wewnętrznych bramach, zobaczyć, czy którykolwiek z nich jest w konflikcie, jeśli nie, to możliwe, że to jeszcze nie jest. Dzięki –
nazywa się "stały punkt", http://en.wikipedia.org/wiki/Fixed_point_%28mathematics%29 –