循环加密伪随机数产生器
本文示例中,首先定义了一个XOR循环加密函数xor_cypher
,然后定义了一个随机数生成器random_number_generator
。生成器生成一个1到100之间的随机数,然后使用一个随机密钥对其进行加密。最后,程序生成并打印了10个加密的随机数。
在本程序中,xor_cypher函数接受两个参数:
- input_string:需要加密的字符串。
- key:用于加密的密钥。
函数的主要逻辑是通过一个循环,将输入字符串中的每个字符与密钥中的相应字符进行异或操作。异或操作是一种简单的加密方法,通过将两个字符的ASCII码进行异或操作,可以得到加密后的字符。最后,函数返回加密后的字符串。
另一个函数random_number_generator
用于生成一个1到100之间的随机数,并使用一个随机密钥对其进行加密。它首先生成一个随机数,然后生成一个随机密钥,并使用xor_cypher
函数对随机数进行加密。最后,函数返回加密后的随机数。
最后调用random_number_generator
函数10次,并打印生成的加密随机数。
代码部分:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20
| import random
''' 这个程序首先定义了一个XOR循环加密函数,然后定义了一个随机数生成器。 生成器生成一个1到100之间的随机数,然后使用一个随机密钥对其进行加密。 最后,程序生成并打印了10个加密的随机数。 '''
def xor_cypher(input_string, key): return ''.join(hex(ord(x) ^ ord(y))[2:] for (x,y) in zip(input_string, key))
def random_number_generator(): number = random.randint(1, 100) key = str(random.randint(1, 100)) encrypted_number = xor_cypher(str(number), key) return encrypted_number
for _ in range(10): print(random_number_generator())
|
实验结果
1 2 3 4 5 6 7 8 9 10 11 12
| d8 10 67 56 0 5c a 4 0f f3
Process finished with exit code 0
|
Author:
QUANQUAN
License:
Copyright (c) 2019 CC-BY-NC-4.0 LICENSE
Slogan:
Make the world MORE PERFECT !