Utilia

Απόκρυψη μηνύματος μέσα σε κείμενο

Κρύψτε ένα μυστικό μήνυμα μέσα σε συνηθισμένο κείμενο με αόρατους χαρακτήρες μηδενικού πλάτους, προαιρετικά κρυπτογραφημένο, και αποκαλύψτε το αργότερα.

Πρόκειται για κόλπο, όχι για ασφάλεια: πολλές εφαρμογές και ιστότοποι αφαιρούν τους χαρακτήρες μηδενικού πλάτους και οποιοσδήποτε μπορεί να τους εντοπίσει με έναν απλό έλεγχο. Χρησιμοποιήστε φράση πρόσβασης αν το περιεχόμενο έχει σημασία.

Απόκρυψη μηνύματος

Με φράση πρόσβασης, το μήνυμα κρυπτογραφείται (AES-256-GCM) πριν κρυφτεί. Χωρίς αυτήν, όποιος γνωρίζει τη μέθοδο μπορεί να το διαβάσει.

Αποκάλυψη ή αφαίρεση κρυφού μηνύματος

Πώς να κρύψετε ένα μήνυμα

  1. Πληκτρολογήστε το Κείμενο κάλυψης (αυτό που βλέπουν όλοι): μια συνηθισμένη πρόταση που θα φαίνεται ακριβώς ίδια και μετά.
  2. Πληκτρολογήστε το Μυστικό μήνυμα.
  3. Προαιρετικά, εισαγάγετε μια Φράση πρόσβασης (προαιρετικά). Το μήνυμα τότε κρυπτογραφείται με AES-256-GCM πριν κρυφτεί, οπότε η γνώση της μεθόδου δεν αρκεί για να διαβαστεί.
  4. Επιλέξτε Πού να μπουν οι κρυφοί χαρακτήρες: Μετά την πρώτη λέξη (προεπιλογή), Διάσπαρτοι ανάμεσα στις λέξεις, Στην πολύ αρχή ή Στο πολύ τέλος.
  5. Πατήστε Απόκρυψη μηνύματος και, έπειτα, αντιγράψτε το Κείμενο με το κρυφό μήνυμα με το κουμπί αντιγραφής. Ανοίξτε το Εμφάνιση της θέσης των κρυφών χαρακτήρων για να τους δείτε ως σύμβολα ◆.

Πώς να αποκαλύψετε ή να αφαιρέσετε ένα κρυφό μήνυμα

  1. Επικολλήστε το κείμενο στο Κείμενο προς έλεγχο. Ο αριθμός των χαρακτήρων μηδενικού πλάτους εμφανίζεται κάτω από το πλαίσιο.
  2. Πατήστε Αποκάλυψη μηνύματος. Αν το μήνυμα είναι κρυπτογραφημένο, εισαγάγετε τη Φράση πρόσβασης (αν το μήνυμα είναι κρυπτογραφημένο) και πατήστε ξανά.
  3. Για να καθαρίσετε ένα κείμενο, πατήστε Αφαίρεση κρυφών χαρακτήρων: παίρνετε το ίδιο κείμενο χωρίς τα κρυφά δεδομένα. Τα emoji όπως το 👨‍👩‍👧, που χρησιμοποιούν νόμιμα αόρατους συνδέσμους, μένουν ανέγγιχτα.

Όλα γίνονται στο πρόγραμμα περιήγησής σας· ούτε το κείμενο ούτε η φράση πρόσβασης στέλνονται κάπου.

Πώς λειτουργεί

Το Unicode περιέχει χαρακτήρες που δεν καταλαμβάνουν χώρο στην οθόνη. Αυτό το εργαλείο χρησιμοποιεί τέσσερις από αυτούς ως ψηφία: ZERO WIDTH SPACE (U+200B) = 00, ZERO WIDTH NON-JOINER (U+200C) = 01, ZERO WIDTH JOINER (U+200D) = 10 και WORD JOINER (U+2060) = 11. Το μήνυμά σας μετατρέπεται σε byte UTF-8 και κάθε byte γίνεται τέσσερις αόρατοι χαρακτήρες. Το μπλοκ ξεκινά και τελειώνει με έναν ZERO WIDTH NO-BREAK SPACE (U+FEFF) και φέρει μια κεφαλίδα ενός byte που δείχνει αν το περιεχόμενο είναι απλό κείμενο ή κρυπτογραφημένο.

Έτσι το κρυφό μέρος μεγαλώνει γρήγορα: ένα μήνυμα 20 γραμμάτων προσθέτει περίπου 90 αόρατους χαρακτήρες και η κρυπτογράφηση προσθέτει 49 byte κεφαλίδας και ετικέτας ταυτοποίησης (περίπου 200 ακόμη χαρακτήρες). Σε UTF-8 καθένας από αυτούς τους χαρακτήρες πιάνει 3 byte, κάτι που μετράει σε πεδία με όριο σε byte. Το Μέγεθος σε UTF-8 στα αποτελέσματα δείχνει το πραγματικό μέγεθος ολόκληρου του κειμένου.

Με φράση πρόσβασης, το εργαλείο χρησιμοποιεί την ίδια μορφή με το εργαλείο κρυπτογράφησης κειμένου: το κλειδί παράγεται με PBKDF2-SHA-256 και 600.000 επαναλήψεις, η κρυπτογράφηση γίνεται με AES-256-GCM, και μια λάθος φράση πρόσβασης ή ένας μόνο αλλοιωμένος χαρακτήρας κάνει την αποκρυπτογράφηση να αποτύχει αντί να επιστρέψει ακατάληπτα δεδομένα.

Όρια: ένα κόλπο, όχι ασφάλεια

  • Πολλές πλατφόρμες αφαιρούν τους χαρακτήρες μηδενικού πλάτους. Ορισμένες εφαρμογές μηνυμάτων, κοινωνικά δίκτυα, πεδία φορμών και επεξεργαστές κειμένου τους αφαιρούν ή τους κανονικοποιούν. Δοκιμάστε πρώτα με τον προορισμό: επικολλήστε εκεί το αποτέλεσμα, αντιγράψτε το ξανά και πατήστε Αποκάλυψη μηνύματος.
  • Τα μερικά αντίγραφα χαλούν το μήνυμα. Αν ο αναγνώστης αντιγράψει μόνο μέρος του κειμένου, το μπλοκ είναι ελλιπές και το εργαλείο συνήθως το αναφέρει ως κατεστραμμένο.
  • Ανιχνεύεται εύκολα. Κάθε εργαλείο ελέγχου αόρατων χαρακτήρων, ένας δεκαεξαδικός επεξεργαστής ή μια απλή μέτρηση δείχνουν ότι κάτι υπάρχει. Η απόκρυψη της ίδιας της ύπαρξης ενός μηνύματος από έναν αποφασισμένο παρατηρητή δεν είναι εφικτή με αυτόν τον τρόπο.
  • Χωρίς φράση πρόσβασης είναι μόνο συσκότιση. Όποιος γνωρίζει αυτή τη διαδεδομένη τεχνική μπορεί να το αποκωδικοποιήσει. Χρησιμοποιήστε ισχυρή φράση πρόσβασης για οτιδήποτε ευαίσθητο και μοιραστείτε την από άλλο κανάλι.

Για να αφαιρέσετε κάθε είδος αόρατου χαρακτήρα (μη αλλάζοντα κενά, χαρακτήρες διπλής κατεύθυνσης, μαλακές παύλες και άλλα), χρησιμοποιήστε το εργαλείο αφαίρεσης αόρατων χαρακτήρων.

Το εργαλείο δεν εξαρτάται από τη γλώσσα: το κείμενο κάλυψης και το μυστικό μήνυμα μπορούν να είναι γραμμένα με ελληνικούς, λατινικούς ή άλλους χαρακτήρες, αφού το μήνυμα μετατρέπεται σε byte UTF-8. Να θυμάστε μόνο ότι τα ελληνικά γράμματα πιάνουν 2 byte το καθένα, άρα το κρυφό μέρος είναι μεγαλύτερο για ένα ελληνικό μήνυμα απ’ ό,τι για ένα αγγλικό της ίδιας έκτασης.

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

Θα επιβιώσει το κρυφό μήνυμα αν σταλεί με email ή συνομιλία;

Μερικές φορές. Το email απλού κειμένου και πολλές εφαρμογές συνομιλίας διατηρούν τους χαρακτήρες μηδενικού πλάτους, αλλά κάποιες υπηρεσίες τους αφαιρούν και κάποια πληκτρολόγια ή προγράμματα επεξεργασίας τους αλλάζουν. Κάντε πάντα μια δοκιμή μετ’ επιστροφής.

Μπορούν άλλα εργαλεία να διαβάσουν μηνύματα που κρύφτηκαν εδώ;

Μόνο εργαλεία που χρησιμοποιούν την ίδια κωδικοποίηση. Δεν υπάρχει πρότυπο για τη στεγανογραφία με χαρακτήρες μηδενικού πλάτους, οπότε διαφορετικά εργαλεία γενικά δεν είναι συμβατά.

Βοηθά το να διασπαρούν οι χαρακτήρες ανάμεσα στις λέξεις;

Κρατά τις μεγάλες αλυσίδες αόρατων χαρακτήρων μακριά από ένα σημείο, κάτι που μπορεί να επιβιώσει καλύτερα σε ορισμένους επεξεργαστές και φαίνεται λιγότερο ύποπτο σε έναν επιθεωρητή χαρακτήρων. Δεν κάνει το μήνυμα δυσκολότερο να βρεθεί από λογισμικό.

Γιατί το εργαλείο βρίσκει χαρακτήρες μηδενικού πλάτους αλλά όχι μήνυμα;

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

Τι γίνεται αν κρύψω νέο μήνυμα σε κείμενο που έχει ήδη ένα;

Το παλιό κρυφό μπλοκ αφαιρείται πρώτα, οπότε το αποτέλεσμα περιέχει μόνο το νέο μήνυμα.