循环加密伪随机数产生器

本文示例中,首先定义了一个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