1
Fork 0
mirror of https://github.com/Steffo99/appunti-magistrali.git synced 2025-03-16 21:43:32 +00:00
appunti-steffo/8 - Crittografia applicata/2 - Comunicazione simmetrica/3 - Indistinguibilità/one-time pad.md

17 lines
581 B
Markdown
Raw Normal View History

2025-01-16 16:59:56 +01:00
[[8 - Crittografia applicata/1 - Concetti/1 - Trovare soluzioni crittografiche/funzione]] che implementa una [[famiglia di funzioni pseudo-casuali]] in modo semplice ed efficiente, ma [[malleabilità|malleabile]] ed [[riutilizzo di chiavi nell'one-time pad|efficace per un singolo messaggio]].
2023-09-21 02:46:23 +02:00
## Funzionamento
L'*one-time pad* si basa sull'invertibilità della funzione logica [[XOR]].
```python
def onetimepad(key):
def encrypt(plaintext) -> ciphertext:
return key ^ plaintext
def decrypt(ciphertext) -> plaintext:
return key ^ ciphertext
return encrypt, decrypt
```