Επαλήθευση

Επαλήθευση μιας εγγραφής αποδείξεων ParkProof.

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

Έντιμη πλαισίωση. Η υπογραφή αποδεικνύει την ακεραιότητα: τα byte μέσα σε αυτή την εγγραφή είναι πανομοιότυπα με τα byte που υπογράφηκαν τη στιγμή της σάρωσης. Δεν αποδεικνύει την αλήθεια της εγγραφής (η ΑΙ μπορεί να διάβασε λάθος την πινακίδα), ούτε καθορίζει το νομικό βάρος της απόδειξης. Αυτή είναι ξεχωριστή κρίση που γίνεται από όποιον την εξετάζει.

Τι επαληθεύεις

Κάθε συνεδρία ParkProof έχει ένα payload (ένα μικρό αρχείο κειμένου που περιέχει τα κανονικά μεταδεδομένα της συνεδρίας συν τα hashes SHA-256 των φωτογραφιών πινακίδας + αυτοκινήτου) και μία υπογραφή (το payload υπογεγραμμένο με ιδιωτικό κλειδί ECDSA P-256 διαχειριζόμενο από το AWS KMS που δεν φεύγει ποτέ από το AWS). Και τα δύο εκτυπώνονται στο παράρτημα υπογραφής κάθε εξαγόμενου PDF αποδείξεων.

Το δημόσιο κλειδί που χρειάζεται για την επαλήθευση της υπογραφής δημοσιεύεται στο /parkproof-public-key.pem — άνοιξέ το σε browser για επιβεβαίωση φόρτωσης, μετά αποθήκευσέ το τοπικά.

Τι θα χρειαστείς

Βήμα-βήμα

Άνοιξε το PDF αποδείξεων, κάνε scroll στη σελίδα "Παράρτημα υπογραφής" στο πίσω μέρος. Θα δεις τρία μπλοκ κειμένου: payload, sig.base64, και μία αναφορά στο URL του δημόσιου κλειδιού. Αποθήκευσε τα δύο πρώτα σε αρχεία στον υπολογιστή σου, μετά τρέξε την επαλήθευση:

# 1. Αποθήκευσε το payload block από το παράρτημα του PDF στο payload.txt
#    (copy-paste ακριβώς· διατήρησε τα τέλη γραμμών).
# 2. Αποθήκευσε το base64 signature block στο sig.base64.
# 3. Κατέβασε το δημόσιο κλειδί.
curl -O https://www.parkproof.com.au/parkproof-public-key.pem

# 4. Αποκωδικοποίησε την base64 υπογραφή σε raw bytes.
base64 -d sig.base64 > sig.bin

# 5. Τρέξε την επαλήθευση.
openssl dgst -sha256 -verify parkproof-public-key.pem \
  -signature sig.bin payload.txt

Τι σημαίνει το αποτέλεσμα

Επαληθεύτηκε PASS

Verified OK — το payload στο PDF σου είναι byte-πανομοιότυπο με αυτό που υπέγραψε το ParkProof τη στιγμή της σάρωσης. Οι κανόνες της πινακίδας, GPS, timestamp, διεύθυνση και hashes φωτογραφιών δεν έχουν αλλοιωθεί από τότε.

Αποτυχία FAIL

Verification failure — το payload, η υπογραφή, ή και τα δύο έχουν τροποποιηθεί από τότε που αποθηκεύτηκε η εγγραφή. Το PDF μπορεί να έχει επεξεργαστεί, το παράρτημα παραποιηθεί, ή το copy-paste εισήγαγε διαφορές κενών χαρακτήρων. Επανάλαβε προσεκτικά την αντιγραφή πριν βγάλεις συμπεράσματα.

Πέρα από το "άλλαξαν τα bytes;"

Μια επιτυχημένη επαλήθευση επιβεβαιώνει την ακεραιότητα. Δεν επιβεβαιώνει:

Γιατί υπάρχει αυτό

Οι περισσότερες εφαρμογές στάθμευσης που παράγουν "αποδείξεις" παράγουν ένα screenshot. Τα screenshots δεν έχουν ιστορία ακεραιότητας — θα μπορούσαν να έχουν επεξεργαστεί σε οποιοδήποτε σημείο μεταξύ της λήψης και της αποστολής. Η κρυπτογραφική υπογραφή είναι η διαφορά μεταξύ "να τι είδα" και "να τι είδα, και να η μαθηματική απόδειξη ότι δεν το άλλαξα από τότε."

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

Ερωτήσεις;

Email στο hello@parkproof.com.au. Απαντάμε.

Continue in your language → ×