随着熵增加的16字节随机字符串

时间:2013-09-29 14:23:56

标签: python aes

我正在尝试使用增加的熵生成大量16字节的随机字符串。 通过增加熵我的意思是增加可能选择的随机字符的数量,每1000个生成的字符串。 我想将每个字符串存储在一个文件中,这样我就可以将每一行发送到openssl进行加密(这就是16byte的原因)。 那是我的代码。是吗?

file = f=open('/root/randomGenString.txt', 'w')
for y in xrange(0,256):
        print "Range", y
        for x in xrange(0,1000):
                #print random.randint(0,y)
                stringa=''.join(chr(random.randint(0,y)) for z in xrange(0,16))
                file.write(stringa)
                file.write("\n")
file.close()

1 个答案:

答案 0 :(得分:3)

这几乎可以满足您的需求,但这并不是最佳方式。

首先,有关于

的事情
file.write("\n")

您是否认为stringa自然会包含换行符?因为用换行符分隔它是没有意义的。只需将其删除并在打开时使用file.read(16)

还有关于stringa包含换行符的事情。对于在文本模式下打开的文件,\n会自动转换为Windows上的\r\n。它被称为通用换行符,它是一个非常有用的功能。但它会弄乱你的字节。所以你应该以二进制模式打开文件。

当您在此时,请在网络上查找with statement python