Einführung in die Kryptographie digitaler Signaturen

Die digitale Signatur ist eine kryptografische mathematische Technik zur Überprüfung der Integrität und Sicherheit der Daten. Die digitale Signatur mit Kryptografie soll das reale Problem des Identitätswechsels und der digitalen Manipulation lösen. In echten Worten, um vertrauliche Informationen zu teilen und die Herkunft der Beweise zu gewährleisten, den Status des elektronischen Dokuments. Die digitale Kryptografie-Signatur verwendet ein öffentliches / privates Schlüsselsystem. Schlüssel wurden in einer zufälligen hexadezimalen Zahl dargestellt. Zum Erstellen einer kryptografischen digitalen Signatur werden die zu signierenden Daten in eine Richtung gehasht. Mit dem privaten Schlüssel wird die Verschlüsselung von Hash durchgeführt.

Die Kryptographie einer digitalen Signatur ist mit zwei Schlüsselbegriffen möglich:

  1. Privat Schlüssel
  2. Öffentlicher Schlüssel

Privater Schlüssel : Der Kontoinhaber besitzt einen Schlüssel, der eine zufällige hexadezimale Zahl ist. Der private Schlüssel ist für den Kontoinhaber eher vertraulich als für die reale Welt

Öffentlicher Schlüssel : Eine zufällige hexadezimale Zahl, die öffentlich geteilt wird. Um eine öffentliche digitale Kryptografiesignatur zu erstellen, wird die Nachricht zuerst digital signiert und dann mit dem privaten Schlüssel des Absenders und mit dem öffentlichen Schlüssel des Empfängers verschlüsselt. Um die zwischen Sender und Empfänger geteilten Nachrichten zu entschlüsseln, muss der Empfänger die innere Schicht der Informationen mit dem öffentlichen Schlüssel des Senders entschlüsseln und die äußere Schicht der Informationen mit dem privaten Schlüssel des Empfängers entschlüsseln.

Kryptographiearchitektur für digitale Signaturen

Um eine digitale Signatur mittels Kryptographie durchzuführen, muss Folgendes durchgeführt werden:

Am Ende des Absenders sollte die Nachricht / Information unter Verwendung einer Hash-Funktion mit dem privaten Schlüssel des Absenders verschlüsselt werden. Die Informationen werden mit dem Zwischenmodell der digitalen Signatur an das Empfängerende weitergeleitet. Am Ende des Empfängers überprüft der Empfänger die digitale Signatur, indem er die empfangenen Informationen mit der Hashing-Funktion entschlüsselt. Die Entschlüsselung erfolgt durch Extrahieren der inneren Schicht mit dem öffentlichen Schlüssel und der äußeren Schicht mit dem privaten Schlüssel. Eine große Herausforderung für den sicheren Informationsaustausch besteht darin, die Nachricht in einem verschlüsselten Format zu senden. In der Kryptografie mit digitaler Signatur, bei der der öffentliche Schlüssel mit der Außenwelt geteilt wird, besteht die Möglichkeit, dass jemand die Verschlüsselung fälscht.

Die Verschlüsselung digitaler Signaturen kann auf zwei Arten erfolgen:

1. Digitale Signatur, gefolgt von Verschlüsselung

Bei dieser Methode wird die Absendersignatur vom Empfänger ausgenutzt und die Informationen werden unverschlüsselt an die externe Partei weitergegeben. Da diese Form weniger sicher ist, ist dies in der Industrie nicht zu bevorzugen.

2. Verschlüsselung mit anschließender digitaler Signatur

Der in der Branche am weitesten verbreitete Ansatz ist die Verschlüsselung, gefolgt von einer digitalen Signatur, bei der der Absender die verschlüsselten Daten mit der digitalen Signatur sendet. Wenn der Empfänger die Nachricht am Ende empfängt, entschlüsselt er die vom Absender gemeinsam genutzte Nachricht mit dem öffentlichen Schlüssel des Absenders und dem privaten Schlüssel des Empfängers.

Kryptographie Digitale Signatur mit RSA

Der folgende Codeausschnitt erläutert, wie Kryptografie mit digitaler Signatur in Python in Echtzeit implementiert wird und wie die Ver- und Entschlüsselung mit digitaler Signatur unter Verwendung von RSA durchgeführt wird. Um eine Kryptografie mit digitaler Signatur durchzuführen, muss das Pycrypto-Paket installiert sein. Schreiben Sie dann das folgende Snippet.

importCrypto
fromPublicKey importRSA
fromCrypto import Random

Um eine Kryptographie mit der digitalen Signatur durchzuführen, müssen der private Schlüssel und der öffentliche Schlüssel initialisiert werden. Wir erstellen eine Funktion zum Generieren von RSA-Schlüsseln, die einen privaten und einen öffentlichen Schlüssel haben:

defrsa_keys():
l=1024
private_key = RSA.generate(l, Random.new().read)
public_key = private_key.publickey()
return private_key, public_key
The above snippet returns the private key and public key.

1. Verschlüsselungsfunktion

defencrypt(public_key, text):
c_text=public_key.encrypt(text, 32)(0) val_cipher=base64.b64encode(c_text)
return val_cipher

Um die Nachricht zu verschlüsseln, verwenden wir den obigen Code, der rsa_publickey und text als Parameter für die Verschlüsselungsfunktion verwendet. Die Verschlüsselungsfunktion führt die Verschlüsselung mit öffentlichem Schlüssel durch und generiert die Verschlüsselung. Die generierte Verschlüsselung wird zurückgegeben, wenn der Funktionsaufruf aufgerufen wird.

2. Entschlüsselungsfunktion

defdecrypt(private_key, val_cipher):
d_cipher = base64.b64decode(val_cipher)
text = private_key.decrypt(d_cipher)
return text

Kryptographie mit einer digitalen Signatur unter Verwendung von Public-Key-Verschlüsselung und Textentschlüsselung unter Verwendung des privaten Schlüssels. Um die Bedeutung von verschlüsseltem Text zu verstehen, der als Verschlüsselung geteilt wird, haben wir eine Entschlüsselungsfunktion erstellt. Die Funktion benötigt private_key und die von der Verschlüsselungsfunktion generierte Chiffre. Mit der Entschlüsselungsmethode wird eine entschlüsselte Chiffre erstellt, und mit der Entschlüsselungsmethode wird der entschlüsselte Text zurückgegeben.

3. Implementierung

In diesem Beispiel sehen wir uns an, wie die Verschlüsselung von Text durchgeführt und wie er mit dem privaten Schlüssel wieder in den Originaltext entschlüsselt wird. Die Funktion zum Ver- und Entschlüsseln wird im Beispiel verwendet, um zu zeigen, wie die Verschlüsselung und Entschlüsselung erfolgt.

Code:

importCrypto
fromPublicKey importRSA
fromCrypto import Random
importbase64
defrsa_keys():
l=1024
private_key = RSA.generate(l, Random.new().read)
public_key = private_key.publickey()
returnprivate_key, public_key
defencrypt(public_key, plain_text):
c_text=public_key.encrypt(plain_text, 32)(0) val_cipher=base64.b64encode(c_text)
returnval_cipher
defdecrypt(private_key, val_cipher):
d_cipher = base64.b64decode(val_cipher)
text = private_key.decrypt(d_cipher)
returntext
private_key, public_key=rsa_keys()
txt=b"Hello Peers!"
enc_cipher=encrypt(public_key, txt)
print('**'*10)
print("The ecncrypted text is ()".format(enc_cipher))
print('**'*10)
dec_cipher=decrypt(private_key, enc_cipher) #decryption
print("The decrypted cipher text is ()".format(dec_cipher))
print('**'*10)

Ausgabe:

Wie wir sehen können, wird der an die Verschlüsselungsfunktion übergebene Eingabetext "Hello Peers!" Mit dem öffentlichen Schlüssel verschlüsselt. Die verschlüsselte Verschlüsselung, die als Parameter an die Entschlüsselungsfunktion übergeben wird, entschlüsselt die ursprüngliche Nachricht, die mit dem privaten Schlüssel des Empfängers geteilt wurde. Um eine digitale Signatur mit Kryptografie durchführen zu können, müssen Sie die Methoden "Signieren" und "Überprüfen" verwenden. Das Signieren wird vom Absender mithilfe des privaten Schlüssels ausgeführt. Wenn die Informationen an den Empfänger übertragen werden, wird die Überprüfungsfunktion mithilfe des öffentlichen Schlüssels ausgeführt.

Verdienste der Kryptographie Digitale Signatur

  1. Verbessern Sie die Sicherheit der Informationsübertragung.
  2. Verbessern Sie den Workflow stärker digitalisiert.
  3. Besseres Kundenerlebnis.
  4. Verbesserung der Geschäftseffizienz und der Rechtsgültigkeit.
  5. Reduziert den manuellen Aufwand und spart Zeit.

Nachteile der Kryptographie Digitale Signatur

  1. Die Überprüfung erfordert viel Zeit.
  2. Es schützt nicht vor Schwachstellen
  3. Infrastruktur und Einrichtung von Kryptografie sind nicht kostenfreundlich.

Fazit

In der modernen digitalen Welt spielt der Algorithmus für digitale Signaturen mit Kryptografie eine wichtige Rolle bei der Bereitstellung einer sicheren Umgebung und ist eines der besseren Werkzeuge für die Authentifizierung. In der wachsenden technologischen Welt wird es eine entscheidende Rolle in Bezug auf die Sicherheit gegen Bedrohungen und Schwachstellen spielen.

Empfohlener Artikel

Dies ist eine Anleitung zur Kryptographie digitaler Signaturen. Hier diskutieren wir die Kryptographiearchitektur für digitale Signaturen zusammen mit der Codeimplementierung. Sie können auch unsere anderen Artikelvorschläge durchgehen, um mehr zu erfahren -

  1. Software für digitale Signaturen mit Working
  2. Kryptographie vs Verschlüsselung | Top 6 Vergleich
  3. Was ist asymmetrische Verschlüsselung?
  4. Einführung in digitale Signaturtypen