Συζήτηση:Brute-force attack

Από τη Βικιπαίδεια, την ελεύθερη εγκυκλοπαίδεια
Πήδηση στην πλοήγηση Πήδηση στην αναζήτηση

Ήξερα πως δεν πρόκειται για δοκιμή όλων των κλειδιών, αλλά τυχαίων συνδυασμών... Δεν το έχω δει επισταμένα το άρθρο όμως ρίξτε και μια ματιά στην (αβέβαιη) αγγλική wikipedia: scheme by trying a large number of possibilities; for example, exhaustively working through all possible keys in order to decrypt a message.

Btw το αλλάζω σε brute-force attack καθώς αυτό είναι όνομα και όχι απλές λέξεις να μεταφραστούν.--lady 16:11, 23 Αυγούστου 2006 (UTC)

- Εγώ πάλι έχω μάθει πως το brute-force είναι όταν διασχίζεις όλο το keyspace. Αν δεν κάνεις μια enumerative επίθεση, σημαίνει πως κατά κάποιο τρόπο διαλέγεις τα κλειδιά που δοκιμάζεις, που πέφτει στην κατηγορία trial-and-error.
Επειδή με ενδιαφέρει το θέμα, έψαξα λίγο στο Διαδίκτυο και βρήκα διαφορετικές απόψεις :
  • [1] Αυτό μου φαίνεται ΣΟΥΠΕΡ λάθος, εφ'όσον άλλο η επίθεση με χρήση λεξικού (που αυτό υπονοείται στην σελίδα αυτή), και άλλο το brute-force.
  • [2] και [3] λένε πως δοκιμάζεις όλους τους πιθανούς συνδυασμούς.
Δεν δίνω τα παραπάνω παραδείγματα για να "αποδείξω" πως έχω δίκιο, διότι απ'οτί φαίνεται, πάλι υπάρχουν διαφορετικές απόψεις (και οτί ο καθένας λέει ό,τι θέλει, π.χ. παράδειγμα ένα), και μπορεί να έχω και άδικο ;)... Θα ρίξω μια ματιά στο 'Applied Cryptography' όταν θα το'χω στο χέρι.
- Άλλο θέμα, ερώτηση βασικά, λες (με βάση το 'Handbook....') πως αν η δυσκολία επίθεσης είναι μικρότερη του brute-force, ο αλγόριθμος θεωρείται σπασμένος. Το 'Handbook...' δίνει αυτή την definition αλλά για hash functions. Ισχύει και για κώδικες αυτό; (ρωτάω για εκπαιδευτικούς λόγους ;) --Acp 20:55, 26 Αυγούστου 2006 (UTC)
Χμμμ..εδώ αναφέρει την επιλεκτική χρήση κωδικών (βέβαια εννοεί ότι απορρίπτει κάποιους κωδικούς διαπαντός για να μειώσει το χρόνο υπολογισμού - άρα δεν ξέρω αν είναι trial-and-error). Δεν ξέρω ας βρούμε και άλλα :)))--lady 21:20, 26 Αυγούστου 2006 (UTC)
Χεχε να και κάτι άλλο:
To speed things up a bit, a brute-force attack could start with dictionary words or slightly modified dictionary words because most people will use those rather than a completely random password. These attacks are called dictionary attacks or hybrid brute-force attacks. Brute-force attacks put user accounts at risk and flood your site with unnecessary traffic.
από εδώ--lady 21:34, 26 Αυγούστου 2006 (UTC)
Μάλιστα, αλλά η επίθεση παραμένει σε όλο τον χώρο κλειδιών όμως, έτσι δεν είναι. Θα μπορούσε τότε να μπει ως σημείωση (ή ενότητα αν υπάρχει ανάγκη) οτί για να είναι πιο γρήγορη η επίθεση μπορούν να χρησιμοποιηθούν, π.χ. λεξικά. Αλλά στην θεωρία μου φαίνεται πως λέει "όλα τα κλειδιά". Αν λέμε "μεγάλο μέρος των κλειδιών", είναι σαν να δεχόμαστε πως η πολυπλοκότητα είναι μικρότερη. --Acp 22:37, 26 Αυγούστου 2006 (UTC)
Yep, στην επίθεση χρησιμοποιούνται θεωρητικά όλα τα κλειδιά, όμως ξεκινώντας από τα πιο "πιθανά" με βάση την άποψη του επιτιθέμενου (αφού αυτός κάνει τη λίστα πιθανών κλειδιών - είτε λεξικογραφικά είτε με άλλο τρόπο (αυθαίρετα)) έχει μεγαλύτερες πιθανότητες να βρει το κλειδί πιο γρήγορα. Όμως θεωρητικά χρησιμοποιεί όλα τα κλειδιά, ασχέτως αν πρακτικά σταματάει μόλις βρει το κλειδί. Μπορούμε να πούμε ακριβώς αυτό και να μη βάλουμε "μεγάλο μέρος". Η πολυπλοκότητα εφόσον θεωρητικά δοκιμάζονται όλα τα κλειδιά είναι η ίδια. Δεν αποκλείονται κλειδιά βάση αλγορίθμου, έτσι δεν είναι?--lady 23:29, 26 Αυγούστου 2006 (UTC)
Όχι, ίδια είναι. Απλά φοβάμαι μήπως δεν το καταλάβαινει ο αναγνώστης. Προτείνω να λέγεται ξεκάθαρα πως δοκιμάζονται όλα τα κλειδιά, αλλά στην πρακτική, δεν κάνουμε απλή ενημέρωση όταν έχουμε κάποια πιο "πιθανά" κλειδιά. --Acp 00:17, 27 Αυγούστου 2006 (UTC)
 :) Ωραία ας το βάλουμε έτσι μάλλον σε παράγραφο τελικά :) Btw, τα παραπάνω είναι καλές πηγές ας δούμε τι άλλο μπορούμε να βρούμε από εκεί (τρόπους αντιμετώπισης κλπ.) :)--lady 00:23, 27 Αυγούστου 2006 (UTC)
...In point of fact, only a one-time pad (see Section 1 S) is unbreakable given infinite resources. All other cryptosystems are breakable in a ciphertext-only attack, simply by trying every possible key one by one and checking whether the resulting plaintext is meaningful. This is called a brute-force attack, "Applied Cryptography - Protocols, Algorithms and Source Code in C", Bruce Schneier, CHAPTER 1 Foundations, σελ. 9.
If it finds the correct key-great. If it doesn’t, then nothing is lost. CHAPTER 7, Key Length, σελ.154
Και τα δύο βιβλία ορίζουν ότι η δοκιμασία των κλειδιών σε brute-force attack είναι εξαντλητική δλδ. δοκιμάζονται όλα :) και αυτό μέχρι να βρεθεί το κατάλληλο. Επίσης εδώ αναφέρει ότι η brute-force attack δεν έχει επιτυχία για one-time-pad --lady 20:50, 27 Αυγούστου 2006 (UTC)
Το one-time-pad είναι ο μόνος πλήρες ασφαλείς κώδικας (οπότε και unbreakable), όπως το απέδειξε ο Shannon. Θα ρίξω μια ματιά στα υπάρχοντα άρθρα στην κρυπτολογία/ασφάλεια, διότι μ'ενδιαφέρει αρκετά ο τομέας και από την γρήγορη ματιά που έρειξα, έχει μπόλικη δουλειά στη ΒΠ. --Acp 21:14, 27 Αυγούστου 2006 (UTC)
 :)))--lady 21:18, 27 Αυγούστου 2006 (UTC)