如何对Charm密码中的两个群元素进行异或运算?

2024-06-26 00:10:25 发布

您现在位置:Python中文网/ 问答频道 /正文

我正在使用Charm加密来实现。我想对G1中的两个元素进行异或运算。我已经写了下面的代码和异或操作是正确的,但我得到一个列表。有人能告诉我如何将列表转换成G1中的元素吗?希望不久能听到。你知道吗

示例代码

sigma_m = group.random(G1)
km = group.random(G1)
#XOR Operation 
km_bytes = objectToBytes(km, group)
len_km = len(km_bytes)
sigma_bytes = objectToBytes(sigma_m, group)
k1mXORk2m =[]
for i in range(len_km): 
     k1mXORk2m.append( km_bytes[i] ^ sigma_bytes[i])
orig_k1mXORk2m = objectToBytes(k1mXORk2m, group)
gXOR= bytesToObject (orig_k1mXORk2m, group)

@ArtjomB。我正在研究ABE方案,我必须比较我设计的方案与基于椭圆曲线的ABE方案的性能。在加密阶段,我必须计算椭圆曲线上两点的XoRXOR operation(第8页的等式8和9)。我不知道如何做到这一点,并为此在这里张贴了一个问题。你知道吗


Tags: 代码元素列表lenbytesgroup方案random