Utilia

Διαμοιρασμός μυστικού Shamir

Χωρίστε έναν κωδικό ή μια φράση ανάκτησης σε N μερίδια, ώστε όποια M να τα ανασυγκροτούν, με το σχήμα Shamir πάνω στο GF(256), τοπικά στον browser.

Ο διαχωρισμός και ο συνδυασμός γίνονται εξ ολοκλήρου στο πρόγραμμα περιήγησής σας. Το μυστικό και τα μερίδια δεν στέλνονται πουθενά· οι τυχαίοι αριθμοί προέρχονται από το crypto.getRandomValues.

Διαχωρισμός μυστικού

    Συνδυασμός μεριδίων

    Πώς να διαχωρίσετε ένα μυστικό

    1. Πληκτρολογήστε ή επικολλήστε το κείμενο που θέλετε να προστατεύσετε στο Μυστικό (κείμενο): μια φράση ανάκτησης, έναν κύριο κωδικό πρόσβασης, ένα κλειδί κρυπτογράφησης…
    2. Ορίστε τον Αριθμός μεριδίων (N) και τα Μερίδια που χρειάζονται για την ανασυγκρότηση (M). Για παράδειγμα, N = 5 και M = 3 σημαίνει ότι όποια 3 από τα 5 μερίδια ανασυγκροτούν το μυστικό, ενώ 2 μερίδια δεν αποκαλύπτουν τίποτα.
    3. Πατήστε Διαχωρισμός μυστικού. Κάθε μερίδιο εμφανίζεται σε δική του γραμμή με κουμπί Αντιγραφή· μπορείτε επίσης να πατήσετε Αντιγραφή όλων των μεριδίων ή Λήψη μεριδίων (.txt).
    4. Πατήστε Δοκιμή: συνδυασμός των πρώτων M μεριδίων για να βεβαιωθείτε ότι τα μερίδια λειτουργούν πριν τα μοιράσετε.
    5. Δώστε κάθε μερίδιο σε διαφορετικό άτομο ή φυλάξτε το σε διαφορετικό μέρος. Μην τα κρατάτε όλα μαζί, αλλιώς ο διαχωρισμός δεν έχει νόημα.

    Πώς να ανασυγκροτήσετε το μυστικό

    1. Επικολλήστε τουλάχιστον M μερίδια στο Μερίδια, ένα ανά γραμμή, με οποιαδήποτε σειρά. Οι κενές γραμμές αγνοούνται.
    2. Πατήστε Συνδυασμός μεριδίων. Το κείμενο εμφανίζεται κάτω από το Ανακτημένο μυστικό και η κατάσταση λέει ποιοι αριθμοί μεριδίων χρησιμοποιήθηκαν.
    3. Αν ένα μερίδιο έχει τυπογραφικό λάθος, προέρχεται από άλλον διαχωρισμό ή εμφανίζεται δύο φορές με διαφορετικό περιεχόμενο, το εργαλείο λέει ποιο και γιατί, αντί να επιστρέψει ακατάληπτα δεδομένα.

    Πώς λειτουργεί ο διαμοιρασμός μυστικού του Shamir

    Ο Adi Shamir δημοσίευσε το σχήμα το 1979. Για να μοιράσετε ένα byte s με κατώφλι M, επιλέγεται ένα τυχαίο πολυώνυμο βαθμού M − 1 με σταθερό όρο s: f(x) = s + a₁x + … + a₍M−1₎x^(M−1). Το μερίδιο με αριθμό x είναι η τιμή f(x). Οποιαδήποτε M σημεία καθορίζουν το πολυώνυμο, οπότε η παρεμβολή Lagrange στο x = 0 επιστρέφει το s· με λιγότερα από M σημεία, κάθε τιμή του s είναι εξίσου πιθανή, άρα τα μερίδια δεν διαρρέουν τίποτα για το μυστικό.

    Το εργαλείο εργάζεται στο πεπερασμένο σώμα GF(256) (αυτό που χρησιμοποιεί το AES, με πολυώνυμο ανάγωγης x⁸ + x⁴ + x³ + x + 1), οπότε κάθε byte του μυστικού UTF-8 παίρνει δικό του πολυώνυμο και τα μερίδια έχουν ακριβώς το μήκος του μυστικού. Οι τυχαίοι συντελεστές προέρχονται από το crypto.getRandomValues, την κρυπτογραφική γεννήτρια τυχαίων αριθμών του προγράμματος περιήγησης. Όλα εκτελούνται τοπικά: το μυστικό και τα μερίδια δεν φεύγουν ποτέ από τη συσκευή σας.

    Μορφή των μεριδίων

    Ένα μερίδιο μοιάζει με 3-2-5f1c…: το κατώφλι M, ο αριθμός μεριδίου X (1 έως 255) και μετά δεκαεξαδικά δεδομένα. Τα δεδομένα περιέχουν τις τιμές του πολυωνύμου για το μυστικό, ακολουθούμενες από CRC-32 4 byte του μυστικού, και τελειώνουν με άθροισμα ελέγχου CRC-32 4 byte του ίδιου του μεριδίου. Το άθροισμα ελέγχου εντοπίζει λάθη αντιγραφής· το εσωτερικό CRC δείχνει πότε αναμείχθηκαν μερίδια από διαφορετικά μυστικά. Τα μερίδια που παράγουν άλλα εργαλεία Shamir χρησιμοποιούν άλλες μορφές και δεν μπορούν να συνδυαστούν εδώ.

    Συχνές ερωτήσεις

    Πώς να διαλέξω τα N και M;

    Το M είναι πόσα άτομα ή μέρη πρέπει να συνεργαστούν, και το N − M είναι πόσα μερίδια μπορείτε να αντέξετε να χάσετε. Το 3 από 5 είναι συνηθισμένη επιλογή: δύο μερίδια μπορούν να χαθούν ή να καταστραφούν και κανένα ζευγάρι κατόχων δεν μπορεί να ανασυγκροτήσει μόνο του το μυστικό.

    Είναι ασφαλές να αποθηκεύσω ένα μερίδιο στο cloud;

    Ένα μεμονωμένο μερίδιο, ή οποιαδήποτε ομάδα μικρότερη από M, δεν αποκαλύπτει τίποτα για το μυστικό. Παρ’ όλα αυτά, κρατήστε λιγότερα από M μερίδια σε οποιονδήποτε λογαριασμό ή χώρο, αλλιώς εκείνος ο χώρος και μόνο κατέχει το μυστικό.

    Κρυπτογραφεί το εργαλείο το μυστικό;

    Όχι με τη συνηθισμένη έννοια: δεν υπάρχει κωδικός πρόσβασης. Η προστασία προέρχεται από το κατώφλι. Μπορείτε να συνδυάσετε και τα δύο, για παράδειγμα διαχωρίζοντας τη φράση πρόσβασης ενός κρυπτογραφημένου αρχείου.

    Τι γίνεται αν δώσω περισσότερα από M μερίδια;

    Τα πρώτα M μερίδια ανασυγκροτούν το μυστικό και τα υπόλοιπα ελέγχονται σε σχέση με αυτά. Ένα μερίδιο που δεν ταιριάζει αναφέρεται, κάτι που βοηθά να εντοπιστεί ένα κατεστραμμένο ή ξένο μερίδιο.

    Μπορώ να διαχωρίσω ένα αρχείο;

    Το εργαλείο διαχωρίζει κείμενο έως 10.000 byte. Για ένα αρχείο, κρυπτογραφήστε το με ισχυρή τυχαία φράση πρόσβασης και διαχωρίστε τη φράση.