Αυτό το άρθρο είναι ένα άρθρο καθρέφτη της αυτόματης μετάφρασης, κάντε κλικ εδώ για να μεταβείτε στο αρχικό άρθρο.

Άποψη: 2344|Απάντηση: 3

[Πηγή] Κρυπτογραφήστε το backend χρησιμοποιώντας τον αλγόριθμο RSA (. NET) αποκρυπτογραφημένο

[Αντιγραφή συνδέσμου]
Δημοσιεύτηκε στις 2024-9-6 08:44:03 | | | |
Απαιτήσεις: Ο αρχικός κωδικός πρόσβασης του χρήστη στο έργο πρέπει να μεταβιβαστεί στο backend, επειδή το backend πρέπει να καλέσει μια διεπαφή τρίτου μέρους με τον κωδικό πρόσβασης. Εάν ο κωδικός πρόσβασης δεν μεταδοθεί πολύ καλά σε απλό κείμενο, εάν πιαστεί από το εργαλείο λήψης πακέτων, ο κωδικός πρόσβασης θα διαρρεύσει. Τελικά υιοθετήθηκε ο αλγόριθμος RSA, με το front end να κρυπτογραφεί τον κωδικό πρόσβασης χρησιμοποιώντας το δημόσιο κλειδί και το back end να χρησιμοποιεί το ιδιωτικό κλειδί για την αποκρυπτογράφηση του.

Το frontend χρησιμοποιεί το πακέτο jsencrypt, διεύθυνση:Η σύνδεση με υπερσύνδεσμο είναι ορατή.

Εάν το backend είναι .NET 5 ή νεότερη έκδοση, μπορείτε να χρησιμοποιήσετε τις ενσωματωμένες λειτουργίες, εάν όχι, χρησιμοποιήστε τις ακόλουθες παραμέτρους:

Κρυπτογράφηση και αποκρυπτογράφηση μορφής .NET/C# RSA PEM
https://www.itsvse.com/thread-10602-1-1.html

Αρχικά, χρησιμοποιήστε το openssl για να δημιουργήσετε δημόσια και ιδιωτικά κλειδιά, αυτό το άρθρο εκτελείται απευθείας στο Linux (κάντε λήψη και εγκατάσταση του openssl στο σύστημα Windows), η εντολή είναι η εξής:



γάτα rsa_1024_priv.pem
-----ΈΝΑΡΞΗ ΙΔΙΩΤΙΚΟΎ ΚΛΕΙΔΙΟΎ RSA-----
MIICXAIBAAKBgQDTyd/KP2JuidA0JA+7i8FCzKCdn2Gq/ChfLpnBFcHb9vKgZb6n
aK2UXynpTbO6l5CVU4KG7w/hUJgxUQsSzNIsnPQuNpop/FO9doiV5l/94Hcuj17f
2AAEQGkWC8EvZBoMDr2JRVDBEji3l6mHXmTduCjH7VpuQyJRGHzWQu8HnwIDAQAB
AoGARat4Ifkd8U0Gn9BpGIIN7mKQR6nhoDTZNw6GZ903a5veDuPJhxrJVzDDAcuc
3znyxxy0qJzF9ZHkrvyBDwsv7AGyVfg6fwwLxvrsJS1MpwKLY3yqbPVk3hnaOECO
915XcbkVua+DGVjwtyX37CxPuSDaH2ut+kIQ3xci+BreSpkCQQD3FfgYELZgrHDk
JQaSiILCnFbld+NBuTm4CHPCN+XDZwzvC8sH4M9my7kznxAQosHbm+aGaOK1k4+k
zKgaiJzVAkEA223oSa7UMyMf/K/dEFmGjKBWQYP7gjLxcsxDHdwTpKHBEuZ32IT2
nuvYxsaOATqg8WABAJHWmT2Rj/joeAx8owJBANaLovLygAoNcbEIXV6bXj8xlVqG
8TO+a9narPk1pDI5psdijBb5I930g4nJUh+/02inRFHtfP2Bdbb5ZfY0LUkCQDxJ
iCamaBrcra8pSl1xm2wLqWc6seFlyby2rkIH80WqQ3fD5m2QqomjVt3WM7HWv91R
eTUE3KchqVqbEpPZKm0CQD7VMRAb1NNH+BNjuGxZB3AQSJvRXhpJ+w3ckSP6IX0L
N0OoHtvH5lvtm7hfB5nDUBYhqN3wj7wDNiK9Vrdyqow=
-----ΤΕΡΜΑΤΙΣΜΌΣ ΙΔΙΩΤΙΚΟΎ ΚΛΕΙΔΙΟΎ RSA-----
γάτα rsa_1024_pub.pem
-----ΈΝΑΡΞΗ ΔΗΜΌΣΙΟΥ ΚΛΕΙΔΙΟΎ-----
MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQDTyd/KP2JuidA0JA+7i8FCzKCd
n2Gq/ChfLpnBFcHb9vKgZb6naK2UXynpTbO6l5CVU4KG7w/hUJgxUQsSzNIsnPQu
Npop/FO9doiV5l/94Hcuj17f2AAEQGkWC8EvZBoMDr2JRVDBEji3l6mHXmTduCjH
7VpuQyJRGHzWQu8HnwIDAQAB
-----ΤΕΡΜΑΤΙΣΜΌΣ ΔΗΜΌΣΙΟΥ ΚΛΕΙΔΙΟΎ-----

Δημιουργήστε μια νέα ιστοσελίδα index.html με τον ακόλουθο πηγαίο κώδικα:

Τουρίστες, αν θέλετε να δείτε το κρυφό περιεχόμενο αυτής της ανάρτησης, παρακαλώΑπάντηση


Δημιουργήστε μια νέα εφαρμογή κονσόλας .NET 8 με τον ακόλουθο πηγαίο κώδικα:


Ανοίξτε την index.html ιστοσελίδα χρησιμοποιώντας ένα πρόγραμμα περιήγησης, δοκιμάστε την κρυπτογράφηση και χρησιμοποιήστε την εφαρμογή .NET για να την αποκρυπτογραφήσετε, όπως φαίνεται στην παρακάτω εικόνα:



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

(Τέλος)




Προηγούμενος:Το Docker εξετάζει την πιο πρόσφατη συγκεκριμένη (αντίστοιχη) έκδοση της εικόνας
Επόμενος:Jenkins (7) Ο διακομιστής Linux κατασκευάζει την έκδοση 2.462.1 του Jenkins
 Σπιτονοικοκύρης| Δημοσιεύτηκε στις 2024-10-14 15:51:48 |
Δημιουργήστε δημόσια και ιδιωτικά κλειδιά μήκους 2048

 Σπιτονοικοκύρης| Δημοσιεύτηκε στις 2024-10-14 17:10:13 |
Μια άλλη βιβλιοθήκη κρυπτογράφησης και αποκρυπτογράφησης RSA front-end, το node-forge, είναι μια πλήρως εγγενής υλοποίηση του πρωτοκόλλου TLS σε JavaScript, ένα σύνολο κρυπτογραφικών βοηθητικών προγραμμάτων και ένα σύνολο εργαλείων για την ανάπτυξη διαδικτυακών εφαρμογών που εκμεταλλεύονται μεγάλες ποσότητες πόρων δικτύου.

https://www.npmjs.com/package/node-forge

Χρησιμοποιείται ήδη στο Angular, εγκατεστημένο με npm ως εξής:

Ο κώδικας διεπαφής έχει ως εξής:

Κωδικός Backend .NET:



 Σπιτονοικοκύρης| Δημοσιεύτηκε στις 2024-10-16 08:23:58 |
Το RSA κρυπτογραφεί το μέγιστο μέγεθος δεδομένων
Η σύνδεση με υπερσύνδεσμο είναι ορατή.


Στον αλγόριθμο κρυπτογράφησης RSA, το μέγιστο μέγεθος μπλοκ που θα κωδικοποιηθεί εξαρτάται από το επιλεγμένο μήκος κλειδιού. Γενικά, τα κλειδιά RSA μπορεί να έχουν μήκος 1024-bit, 2048-bit ή 4096-bit.

Για ένα κλειδί 1024-bit, το μέγιστο μέγεθος μπλοκ είναι 117 byte. Αυτό σημαίνει ότι όταν χρησιμοποιείτε ένα κλειδί 1024-bit, το μέγιστο μπλοκ δεδομένων που μπορείτε να κρυπτογραφήσετε είναι 117 byte.

Για κλειδιά 2048-bit, το μέγιστο μέγεθος μπλοκ είναι 245 byte. Αυτό σημαίνει ότι όταν χρησιμοποιείτε ένα κλειδί 2048-bit, το μέγιστο μπλοκ δεδομένων που μπορείτε να κρυπτογραφήσετε είναι 245 byte.

Για κλειδιά 4096-bit, το μέγιστο μέγεθος μπλοκ είναι 512 byte. Αυτό σημαίνει ότι όταν χρησιμοποιείτε ένα κλειδί 4096-bit, το μέγιστο μπλοκ δεδομένων που μπορείτε να κρυπτογραφήσετε είναι 512 byte.

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

Mail To:help@itsvse.com