Je veux écrire un petit script en python qui fait un bourrage/unstuffing, car je n'ai aucune idée de la façon de le faire. Je vais juste commencer par le bourrage.Octet Stuffing/Unstuffing en Python
Donc, le but est simple, il y a une fonction avec trois entrées, quelque chose comme ceci: ByteStuffing(flagbyte, escapebyte, frame)
et sortie avec des octets de drapeau au début et à la fin, et trame bourrée entre les deux.
laisse ainsi dire mon octet de drapeau est Z, échapper à l'octet est A et cadre LEONARDO
ByteStuffing(Z,A,LEONARDO) = ZLEONAARDOZ
P.S. escape byte échappe également les caractères du drapeau dans le cadre, pas seulement les octets d'échappement lui-même.
unstuffing est simplement une fonction inverse.
maintenant, je ne suis pas vraiment familier avec la programmation, je suis vraiment pas très créatif quand il s'agit de coder, c'est pourquoi je veux commencer avec ces petits projets, quelqu'un peut-il me donner des idées pour commencer avec ce problème?
Version p.s Python 2.7.12
EDIT: de la réponse de Keerthana Prabhakaran j'ai fini avec cela.
def applyByteStuffing(flagbyte, escapebyte, payload):
flagbyte = ("Z")
escapebyte = ("A")
x = payload.replace (escapebyte, escapebyte*2)
y = x.replace (flagbyte, escapebyte+flagbyte)
print (flagbyte + y + flagbyte)
return;
si j'essaie de le tester comme ceci:
def test():
assert applyByteStuffing("Z", "A", "TAZZA") == "ZTAAAZAZAAZ"
if __name__ == '__main__':
test()
Je reçois erreur d'assertion. Quelqu'un at-il une idée de l'endroit où se produit mon erreur d'assertion?
juste essayer d'essayer ceci: applyByteStuffing("Z" , "A" , "TAZZA")
me donne la sortie correcte: ZTAAAZAZAAZ
@NickA Je n'ai aucune idée ce qui est emballage peu. Je sais bourrage de bourrage et bourrage de bits et je veux dire farce octet, pas bit – Leonardo
ah assez juste, je n'ai jamais entendu parler de bourrage d'octets avant –