Me parece que hay algo de confusión sobre estas dos funciones. Tal vez esto les ayude:
sage: x = 256
sage: i2osp(x,2)
'01 00'
sage: x = 1234567891011121314 sage: i2osp(x,10) '00 00 11 22 10 f4 b2 d2 30 a2' sage: x = 1234567891011121314 sage: i2osp(x,7) IntegerTooLarge sage: x = 123456789101112131415 sage: i2osp(x,20) '00 00 00 00 00 00 00 00 00 00 00 06 b1 4e 9f 95 da 1a ff 57'
sage: os2ip(i2osp(11231,10)) 11231 sage: i2osp(os2ip('00 00 de ad be ef'),5) '00 de ad be ef'
No tienen que tener este formato exactamente (yo represento una cadena de octetos como un lista de pares de números en hexadecimal, pero ustedes no tienen que hacerlo así). Yo lo hice así para tener algo parecido a los vectores de prueba en el ejercicio 7.
Además espero que el primer ejemplo resuelva cualquier duda de big-endian: había leído mal las especificaciones (y ahora estoy cambiando todo lo que escribí) pero ahora sí lo tengo bien.
Saludos,
Nathan