Como o AES no CTR funciona para Python com PyCrypto?

Eu estou usando python 2.7.1 Eu quero criptografar sth usando AES no modo CTR. Eu instalei a biblioteca PyCrypto para python. Eu escrevi o seguinte código:

secret = os.urandom(16)
crypto = AES.new(os.urandom(32), AES.MODE_CTR, counter=lambda: secret)
encrypted = crypto.encrypt("asdk")
print crypto.decrypt(encrypted)

Eu tenho que executar crypto.decrypt tantas vezes quanto o tamanho do byte do meu texto simples, a fim de obter corretamente os dados descriptografados. Ou seja:

encrypted = crypto.encrypt("test")
print crypto.decrypt(encrypted)
print crypto.decrypt(encrypted)
print crypto.decrypt(encrypted)
print crypto.decrypt(encrypted)

A última chamada para decifrar vai me dar o texto simples de volta. As outras saídas da decodificação são algumas cadeias de texto sem sentido. Eu estou querendo saber se isso é normal ou não? Eu tenho que incluir em um loop com tamanho igual ao meu texto sem formatação toda vez ou eu fiquei errado?

questionAnswers(4)

yourAnswerToTheQuestion