Jump to content

SUBIECTE NOI
« 1 / 5 »
RSS
Cum sa elimini urmele de acnee?

Wc Geberit

Routere detinute in trecut si in ...

Teii din fața casei
 E-Mail in serie prin Excel si Out...

Modul alimentare rulou/jaluzea ex...

Recuperare fișiere dupa form...

Aplicatii stress test RAM
 Asigurare auto hibrid

Asus B550M - PC-ul nu porneste di...

Tzanca Uraganu - Inconjurat de Fe...

explicatie montaj breadboard
 3 Doors Down - Kryptonite

Semnalizati cand virati pe un dru...

Succesiune - mostenire apartament...

Donez Siofor de 1000mg ( diabet t...
 

Honey, I Shrunk the Internet ? Hash-ul unei adrese IP (v4)

- - - - -
  • Please log in to reply
9 replies to this topic

#1
radu103

radu103

    Guru Member

  • Grup: Senior Members
  • Posts: 12,314
  • Înscris: 15.11.2003
https://forum.softpe...gb/page__st__18

Babaieti, voi ati fost la matematica ?
Voi stiti ce inseamna o functie injectiva ?
Hash-ul etse rezultatul unui astfel de functii, valoarea obtinuta prin aplicarea functiei asupra datelor de intrare.
Rezultatul (Hash-ul) TREBUIE sa fie DIFERIT pentru 2 intrari diferite si tot rezultatul TREBUIE sa fie ACELASI pentru 2 intrari identice in momente de timp diferite
(presupunem aici cazul de hash fara "salt" dinamic)
Daca nu se intampla asa in general, atunci nu e hash ci este o functie de rahat pe care o folosesti degeaba.
Si la cele mai bune functii se mai intampla foarte rar sa existe coliziuni, extrem de rar si nesemnificativ
Referinte gasiti pe net gramada :
https://en.wikipedia...i/Hash_function
https://en.wikipedia...vulnerabilities

Edited by MarianG, 07 April 2021 - 17:27.
branch link


#2
romio79

romio79

    Active Member

  • Grup: Members
  • Posts: 1,655
  • Înscris: 30.03.2005
intodeauna la hash ai coliziuni, nu e nesemnificativ asta. ideal e ca rezultatul functiei sa fie unic pentru o valoare de intrare dar in realitate aproape niciodata nu e asa

Edited by romio79, 07 April 2021 - 14:35.


#3
radu103

radu103

    Guru Member

  • Grup: Senior Members
  • Posts: 12,314
  • Înscris: 15.11.2003
quote : long adress = Integer.toUnsignedLong(ByteBuffer.wrap(InetAddress.getByName(line).getAddress()).getInt());

HORROR  !!!

View Postromio79, on 07 aprilie 2021 - 14:33, said:

intodeauna la hash ai coliziuni, nu e nesemnificativ asta. ideal e ca rezultatul functiei sa fie unic pentru o valoare de intrare dar in realitate aproape niciodata nu e asa
Am mai spus, matematica + internet va ofera multe cunostinte chiar daca nu le aveti : https://en.wikipedia...t_hash_function

Edited by radu103, 07 April 2021 - 14:38.


#4
romio79

romio79

    Active Member

  • Grup: Members
  • Posts: 1,655
  • Înscris: 30.03.2005
cum ziceai mai sus? folosesti ce ai ? Posted Image
e scris asa de lene :)

Edited by romio79, 07 April 2021 - 14:39.


#5
_bcristian_

_bcristian_

    Senior Member

  • Grup: Senior Members
  • Posts: 3,551
  • Înscris: 31.12.2006
Ia-o mai usor, si gandeste-te putin.
Ar trebui sa fie evident ca pot exista mai mult de 2^32 de stringuri de exemplu.
Cum ar putea sa existe o functie care returneaza valori distince pe 32 de biti pt orice string posibil?
Sau si mai simplu, hash (pe 32 de biti) pt valori pe 64.

#6
MarianG

MarianG

    be that as it may

  • Grup: Moderators
  • Posts: 31,383
  • Înscris: 10.08.2005
Si orice string este adresa IP valabila ?

Care 64 de biti ca adresele IP sunt grupuri de 4 octeti ?
0 to FF

Edited by MarianG, 07 April 2021 - 17:25.


#7
_bcristian_

_bcristian_

    Senior Member

  • Grup: Senior Members
  • Posts: 3,551
  • Înscris: 31.12.2006
Era vorba despre hashing in general. Afirmatiile initiale (in topicul asta) sunt lipsite de sens, fiind contradictorii (asa cum sunt facute).
Adresele IPv4 sunt 32 de biti, stringurile de forma a.b.c.d sunt reprezentarea obisnuita ca text.
Hash-ul natural al unei adrese IP v4 fiind chiar cei 32 de biti. Caz in care hash-ul este o functie bijectiva triviala (f(x) = x).
Daca insa folosim hash-ul stringului, calculat cu functia normala de hash-uit stringuri a platformei, avem urmatoarele probleme:
  • nu exista nicio garantie ca hash-ul stringurilor unor adrese ip diferite sunt diferite.
  • din cauza punctului anterior, nu putem folosi hash-ul ca index si sa facem optimizarea cu 1 bit per adresa unica, ci trebuie sa folosim hashset sau similare. Asta inseamna peste 1 octet per adresa, si fiind 2^32 posibile, consumul de memorie o sa fie monstruos.


#8
MarianG

MarianG

    be that as it may

  • Grup: Moderators
  • Posts: 31,383
  • Înscris: 10.08.2005
Pai daca nu avem garantie nu-l folosim.
Renuntam la separator si avem un bit per adresa.

Desigur, ne scriem singuri functia care valideaza ip-ul si functia hash_ip

Edited by MarianG, 08 April 2021 - 10:52.


#9
OriginalCopy

OriginalCopy

    I'm harmful, fear me please! :))

  • Grup: Senior Members
  • Posts: 27,268
  • Înscris: 10.08.2006
Eu nu inteleg ce vrei sa zici de fapt si care e problema.

Zici doua lucruri adevarate, dar una o contrazice pe cealalata:

1.

View Postradu103, on 07 aprilie 2021 - 14:31, said:

https://forum.softpe...gb/page__st__18

Babaieti, voi ati fost la matematica ?
Voi stiti ce inseamna o functie injectiva ?
Hash-ul etse rezultatul unui astfel de functii, valoarea obtinuta prin aplicarea functiei asupra datelor de intrare.
Rezultatul (Hash-ul) TREBUIE sa fie DIFERIT pentru 2 intrari diferite si tot rezultatul TREBUIE sa fie ACELASI pentru 2 intrari identice in momente de timp diferite
(presupunem aici cazul de hash fara "salt" dinamic)
Daca nu se intampla asa in general, atunci nu e hash ci este o functie de rahat pe care o folosesti degeaba.

2.

View Postradu103, on 07 aprilie 2021 - 14:31, said:

Si la cele mai bune functii se mai intampla foarte rar sa existe coliziuni, extrem de rar si nesemnificativ
Referinte gasiti pe net gramada :
https://en.wikipedia...i/Hash_function
https://en.wikipedia...vulnerabilities

Ce vrei de fapt si cu cine te certi?

#10
Bamyhun

Bamyhun

    Member

  • Grup: Members
  • Posts: 318
  • Înscris: 10.04.2021

View Postradu103, on 07 aprilie 2021 - 14:31, said:

Babaieti, voi ati fost la matematica ?
Voi stiti ce inseamna o functie injectiva ?
Hash-ul etse rezultatul unui astfel de functii, valoarea obtinuta prin aplicarea functiei asupra datelor de intrare.
Rezultatul (Hash-ul) TREBUIE sa fie DIFERIT pentru 2 intrari diferite
Prea multa matematica stirica se pare. Te face sa confunzi concepte din it cu diverse din matematica.
Gresit, o functie hash nu e o functie injectiva si nu trebuie sa fie diferit hash-ul pentru doua intrari diferite, cel mai adesea e si imposibil, caci domeniul(partea de intrare) e adesea de multe ori mai mare decat codomeniul(iesirea, hash-ul in sine de obicei fixed length).

Anunturi

Chirurgia endoscopică a hipofizei Chirurgia endoscopică a hipofizei

"Standardul de aur" în chirurgia hipofizară îl reprezintă endoscopia transnazală transsfenoidală.

Echipa NeuroHope este antrenată în unul din cele mai mari centre de chirurgie a hipofizei din Europa, Spitalul Foch din Paris, centrul în care a fost introdus pentru prima dată endoscopul în chirurgia transnazală a hipofizei, de către neurochirurgul francez Guiot. Pe lângă tumorile cu origine hipofizară, prin tehnicile endoscopice transnazale pot fi abordate numeroase alte patologii neurochirurgicale.

www.neurohope.ro

0 user(s) are reading this topic

0 members, 0 guests, 0 anonymous users

Forumul Softpedia foloseste "cookies" pentru a imbunatati experienta utilizatorilor Accept
Pentru detalii si optiuni legate de cookies si datele personale, consultati Politica de utilizare cookies si Politica de confidentialitate