Visualizzazione dei risultati da 1 a 5 su 5

Discussione: Rifare la funzione md5

  1. #1
    Utente di HTML.it
    Registrato dal
    Apr 2007
    Messaggi
    37

    Rifare la funzione md5

    Salve a tutti in questi giorni volevo ricreare "per studio" la funzione dell'md5 su php ,solo che mi sono bloccato nel punto del pre-processing in questi 3 passi:
    codice:
    //Pre-processing:
    append "1" bit to message
    append "0" bits until message length in bits ≡ 448 (mod 512)
    append bit /* bit, not byte */ length of unpadded message as 64-bit little-endian integer to message
    le mie domande sono, come trovo la lunghezza a 64bit little-endian del messaggio ? e come aggiungo dei bit a questa stringa?
    non riesco proprio a trovare questi comandi da nessuna parte,spero che qualcuno qui lo sappia
    grazieee

    PS:lo pseudo code l'ho trovato su QUI
    PS2:non rispondetemi di usare la funzione md5() che è già presente in php, grazie

  2. #2
    Utente di HTML.it L'avatar di bubi1
    Registrato dal
    Dec 2009
    Messaggi
    1,230
    La lunghezza rappresentata da un intero a 64 bit - significa che prendi il numero dei bit, lo trasformi in binario, e poi gli spari degli 0 insignificanti fino a raggiungere 64. Little-endian significa che gli zeri li spari a sinistra, dal momento che questo metodo specifica che la memorizzazione comincia dai bit meno significativi.

  3. #3
    Utente di HTML.it
    Registrato dal
    Apr 2007
    Messaggi
    37
    Originariamente inviato da bubi1
    La lunghezza rappresentata da un intero a 64 bit - significa che prendi il numero dei bit, lo trasformi in binario, e poi gli spari degli 0 insignificanti fino a raggiungere 64. Little-endian significa che gli zeri li spari a sinistra, dal momento che questo metodo specifica che la memorizzazione comincia dai bit meno significativi.
    ti ringrazio non sai quanto per questa delucidazione !
    Quindi devo praticamente aggiungere 1 bit all'inizio poi tanti 0 fino a che la lunghezza non è 448 (mod 512) e a quel punto scrivo in una variabile la lunghezza (iniziale?) del messaggio a 64 bit nel modo che tu mi hai descritto ma poi devo aggiungerla in fondo a tutto? o all'inizio?
    Comunque mi resta da trovare il modo per convertire la stringa in binario e il modo per misurarne la lunghezza che continuo a non trovare

    Comunque ti ringrazio

    EDIT:come non detto ho trovato una funzione che mi trasforma il messaggio in binario e una che mi legge la lunghezza (strlen)
    ora il problema è quale lunghezza devo usare,quella del messaggio iniziale senza trasformazione in binario,quella del messaggio trasformato in binario o quella del messaggio trasformato in binario e con 1 e 0 aggiunti dei primi 2 passaggi?

  4. #4
    Utente di HTML.it L'avatar di bubi1
    Registrato dal
    Dec 2009
    Messaggi
    1,230
    Beh, la specifica dice questo: The remaining bits are filled up with a 64-bit integer representing the length of the original message, in bits.

    Quindi ci aggiungi il numero di bit iniziale, rappresentato come intero binario a 64 bit. E lo aggiungi in fondo.

  5. #5
    Utente di HTML.it
    Registrato dal
    Apr 2007
    Messaggi
    37
    Originariamente inviato da bubi1
    Beh, la specifica dice questo: The remaining bits are filled up with a 64-bit integer representing the length of the original message, in bits.

    Quindi ci aggiungi il numero di bit iniziale, rappresentato come intero binario a 64 bit. E lo aggiungi in fondo.
    okok
    cavolo ma è normale che per trovare la lunghezza che corrisponde a 448 (mod 512) ci mette un epoca ? :master:
    EDIT:corretto

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.