

πές μου πως παράγεις το ένα hash από το ένα plaintext, να σου πω πως θα φτιάξεις το μαζικό.
την εντολή που παράγει ένα hash την πήρα από εδώ.
Κώδικας: Επιλογή όλων
values=`cat myplaintextvalues`
for v in $values
do
echo -n "$v" | openssl dgst -sha1 -hmac "key" >> myhashes
done
Simple example mutual-authentication sequence
Server sends a unique challenge value sc to the client
Client generates unique challenge value cc
Client computes cr = hashA(cc + sc + secret)
Client sends cr and cc to the server
Server calculates the expected value of cr and ensures the client responded correctly
Server computes sr = hashB(cc + sc + secret)
Server sends sr
Client calculates the expected value of sr and ensures the server responded correctly
where
sc is the server generated challenge
cc is the client generated challenge
cr is the client response
sr is the server response
dizzyk έγραψε:Αν καταλαβαίνω καλά, το key είναι για την παραγωγή salted hash; Αν είναι έτσι, η λογική είναι η εξής:
Σε ένα απλό plaintext -> hash σχήμα, ο server έχει μόνο το hash, ο user του δίνει το password, και ο server ελέγχει αν το password παράγει αυτό το hash. Αυτό όμως είναι ευάλωτο σε attack με rainbow tables (ο κλασσικός τρόπος να σπάσεις το password των windows, πολύ χρήσιμο όταν ο πρώην admin έχει μεταναστεύσει). Η λύση είναι τα salted hashes, όπου προστίθεται ένα επιπλέον κλειδί στο password πριν βγει το hash και μπορεί να είναι διαφορετικό για κάθε user. Αυτό εκτός του ότι ανεβάζει τη δυσκολία του να φτιαχτεί ένα καλό rainbow table δεν επιτρέπει τη μαζική ανάκτηση password από ένα σύστημα γιατί θέλει διαφορετικό rainbow table για κάθε χρήστη.
Dimitris Zappas έγραψε:Έχω την εντύπωση ότι όλα αυτά δε βοηθούν στη περίπτωση τη δική μας.
Μέ μία απλή διαδικασία login in ή οποία να έχει και ένα δεύτερο επίπεδο αυθεντικόποίησης (ερώτηση ασφαλείας) για την είσοδο του χρήστη.
Ολα τα παραπάνω έχουν να κάνουν με κρυπτογραφίσεις άλλου επιπέδου.
Το δικό μας σύστημα πρέπει να είναι απλό μεν, ασφαλές δε, δε διακυβεύονται κρατικά μυστικά.
Το όλο θέμα έχει να κάνει με τη διαχείριση, αν υπάρχει εμπιστοσύνη στους διαχειριστές δεν έχουμε πρόβλημα.
Και ας ξεκινήσουμε έτσι απλά και στη πορεία να δούμε πως μπορούμε να συνδέσουμε κάποια υπηρεσία με δημόσια υπογραφή πχ ΕΡΜΗΣ.
Dimitris Zappas έγραψε:Ναι ρε random
Αλλά αν υπάρχουν στο σερβερ τα hash κάποια στιγμή με rainbow tables μπορεί ο κακόβουλος διαχειριστής ή εισβολέας να γυρίσει το hash και να κάνει μαζική είσοδο.
Μέλη σε αυτή την Δ. Συζήτηση: 9 και 0 επισκέπτες