import time
def charCodeAt(string, index):
if index >= len(string):
raise IndexError("Index out of range")
return ord(string[index])
def do_encrypt_rc4(src, passwd):
plen = len(passwd)
print(plen)
size = len(str(src))
j = 0
a = 0
b = 0
c = 0
print(size)
key = [None for i in range(256) ]
sbox =[None for i in range(256) ]
output =[None for i in range(size) ]
for i in range(0,256,1):
# key[i] = passwd.charCodeAt(i %plen)
key[i] = charCodeAt(passwd,i %plen)
sbox[i] = i
print(sbox)
for i in range(0,256,1):
j = (j + sbox[i] + key[i]) % 256
temp = sbox[i]
sbox[i] = sbox[j]
sbox[j] = temp
for i in range(0,size,1):
a = (a + 1) % 256;
b = (b + sbox[a]) % 256;
temp = sbox[a]
sbox[a] = sbox[b]
sbox[b] = temp
c = (sbox[a] + sbox[b]) % 256
temp =charCodeAt(str(src),i) ^ sbox[c]
print("48 ^133=",48 ^133)
print("c",c)
print("charCodeAt(str(src),i)",charCodeAt(str(src),i))
print("sbox[c]",sbox[c])
temp = str(temp)
if len(temp) == 1 :
temp = '0' + temp
elif len(temp) == 0 :
temp = '00'
output[i] = temp
print("Output:",output)
return output
def generate_13_digit_timestamp():
# 获取当前时间的秒数和微秒数
current_time = time.time()
seconds = int(current_time) # 秒数部分
milliseconds = int((current_time - seconds) * 1000) # 毫秒数部分,取0到999的整数部分
# 组合成13位时间戳(前10位是秒,后3位是毫秒)
return int(f"{seconds}{milliseconds:03d}")
##keys = generate_13_digit_timestamp()
##ssss = do_encrypt_rc4(keys,'yyt8822461')
print(charCodeAt("hello",0)^100)
赞 (0)
rc4
上一篇
2024年 4月 15日 下午6:48