1
Fork 0
mirror of https://github.com/Steffo99/appunti-magistrali.git synced 2024-11-24 19:24:19 +00:00
appunti-steffo/8 - Crittografia applicata/2 - Comunicazione simmetrica/3 - Indistinguibilità/one-time pad.md

17 lines
504 B
Markdown
Raw Normal View History

2023-09-21 00:46:23 +00:00
[[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]].
## 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
```