Files
TermNSI/Sécurité/exemples/codage_binaire.py

37 lines
1.0 KiB
Python
Raw Normal View History

#!/usr/bin/env python3
# -*- coding: utf-8 -*-
"""
Created on Wed Feb 3 10:55:48 2021
@author: pjoulaud
"""
def codage_binaire(message : str, code : str) -> str:
"""
Fonction qui code un message à l' aide d' une clé. Le message codé resulte
d' un OU exclusif bit à bit
Argument :
- message : Message à coder de type str
- code : Clé de codage de type str
Retourne :
- res : Message codé bit à bit
>>> codage_binaire(codage_binaire("Hello World!", "toto"), "toto")
'Hello World!'
"""
i = 0
res = ''
for car in message :
ord_car = ord(car)^ord(code[i%len(code)])
#print(f"car : {ord(car):08b}\ncode : {ord(code[i%len(code)]):08b}\n => {ord_car:08b} \n")
res += chr(ord_car)
i += 1
return res
#CORPS DE PROGRAMME
if __name__=='__main__':
import doctest
doctest.testmod()
#message_code = codage_binaire('Hello World', 'toto')
#input("Tapez Entree pour continuer")
#message_decode = codage_binaire(message_code, 'toto')