1
Fork 0
mirror of https://github.com/Steffo99/appunti-magistrali.git synced 2024-11-22 10:44:17 +00:00
appunti-steffo/8 - Crittografia applicata/2 - Comunicazione simmetrica/3 - Indistinguibilità/one-time pad.md
2023-09-21 02:46:23 +02:00

504 B

funzione che implementa una famiglia di funzioni pseudo-casuali in modo semplice ed efficiente, ma malleabilità ed riutilizzo di chiavi nell'one-time pad.

Funzionamento

L'one-time pad si basa sull'invertibilità della funzione logica XOR.

def onetimepad(key):
	def encrypt(plaintext) -> ciphertext:
		return key ^ plaintext
	def decrypt(ciphertext) -> plaintext:
		return key ^ ciphertext
	return encrypt, decrypt