Merge branch 'main' of https://git.mamahaha.work/sangge/mimajingsai
All checks were successful
Deploy App / Deploy to Web Server (push) Successful in 1m24s

This commit is contained in:
Smart-SangGe 2023-10-26 08:28:41 +08:00
commit 6df22e2072

View File

@ -1,51 +1,60 @@
from tpre import * from tpre import *
import time import time
# 1 for N in range(4,21,4):
start_time = time.time() # N = 10
pk_a, sk_a = GenerateKeyPair() # T = 5
m = b"hello world" T = N // 2
end_time = time.time() print(f"当前门限值: N = {N}, T = {T}")
elapsed_time = end_time - start_time
print(f"代码块1运行时间:{elapsed_time}")
# 2 start_total_time = time.time()
start_time = time.time() # 1
capsule_ct = Encrypt(pk_a, m) start_time = time.time()
end_time = time.time() pk_a, sk_a = GenerateKeyPair()
elapsed_time = end_time - start_time m = b"hello world"
print(f"代码块2运行时间:{elapsed_time}") end_time = time.time()
elapsed_time = end_time - start_time
print(f"密钥生成运行时间:{elapsed_time}")
# 3 # 2
pk_b, sk_b = GenerateKeyPair() start_time = time.time()
capsule_ct = Encrypt(pk_a, m)
end_time = time.time()
elapsed_time = end_time - start_time
print(f"加密算法运行时间:{elapsed_time}")
N = 10 # 3
T = 5 pk_b, sk_b = GenerateKeyPair()
# 5
start_time = time.time()
id_tuple = tuple(range(N))
rekeys = GenerateReKey(sk_a, pk_b, N, T, id_tuple)
end_time = time.time()
elapsed_time = end_time - start_time
print(f"代码块5运行时间:{elapsed_time}")
# 7 # 5
start_time = time.time() start_time = time.time()
cfrag_cts = [] id_tuple = tuple(range(N))
rekeys = GenerateReKey(sk_a, pk_b, N, T, id_tuple)
end_time = time.time()
elapsed_time = end_time - start_time
print(f"重加密密钥生成算法运行时间:{elapsed_time}")
for rekey in rekeys: # 7
cfrag_ct = ReEncrypt(rekey, capsule_ct) start_time = time.time()
cfrag_cts.append(cfrag_ct) cfrag_cts = []
end_time = time.time()
elapsed_time = end_time - start_time
print(f"代码块7运行时间:{elapsed_time}")
# 9 for rekey in rekeys:
start_time = time.time() cfrag_ct = ReEncrypt(rekey, capsule_ct)
cfrags = mergecfrag(cfrag_cts) cfrag_cts.append(cfrag_ct)
m = DecryptFrags(sk_b, pk_b, pk_a, cfrags) end_time = time.time()
end_time = time.time() elapsed_time = (end_time - start_time) / len(rekeys)
elapsed_time = end_time - start_time print(f"重加密算法运行时间:{elapsed_time}")
print(f"代码块9运行时间:{elapsed_time}")
print(m) # 9
start_time = time.time()
cfrags = mergecfrag(cfrag_cts)
m = DecryptFrags(sk_b, pk_b, pk_a, cfrags)
end_time = time.time()
elapsed_time = end_time - start_time
end_total_time = time.time()
total_time = end_total_time - start_total_time
print(f"解密算法运行时间:{elapsed_time}")
print("成功解密:", m)
print(f"算法总运行时间:{total_time}")
print()