在 Charm-Crypto 中序列化和反序列化组元素
Serializing and deserializing group elements in Charm-Crypto
我需要帮助将椭圆曲线配对组元素的列表表示(字符串)转换回对象。
解释:
我正在使用 charm crypto v0.43 在我的 Web 应用程序中使用 CPABE 方案。我需要将生成的配对元素存储到我的数据库中。当我这样做时,它将它存储为列表。我需要将它映射回配对组元素对象。
转换:
[771281202364725359015275543519860265278248937600027018972741977722880288402810467924555583431036045929994018001453439703799448692568829067937466068366897, 5928426678871551838449004494119368314093842432141364739971117261348155912543962117516776973405646414105108743246860323245910977796691638669773215755592297]
到
<pairing.Element object at 0x7f1a1e840300>`
代码:
group = PairingGroup('SS512')
alpha = group.random(ZR)
g= group.random(G1)
找到了解决我的问题的方法。这是我 did.You 可以使用组序列化功能。
g = group.random(G1) # generates a random group element in that pairing group
您可以使用组序列化函数序列化 g
:
str = group.serialize(g)
您可以使用
反序列化它
obj = group.deserialize(str)
希望它可以帮助面临同样问题的人。
我需要帮助将椭圆曲线配对组元素的列表表示(字符串)转换回对象。
解释:
我正在使用 charm crypto v0.43 在我的 Web 应用程序中使用 CPABE 方案。我需要将生成的配对元素存储到我的数据库中。当我这样做时,它将它存储为列表。我需要将它映射回配对组元素对象。
转换:
[771281202364725359015275543519860265278248937600027018972741977722880288402810467924555583431036045929994018001453439703799448692568829067937466068366897, 5928426678871551838449004494119368314093842432141364739971117261348155912543962117516776973405646414105108743246860323245910977796691638669773215755592297]
到
<pairing.Element object at 0x7f1a1e840300>`
代码:
group = PairingGroup('SS512')
alpha = group.random(ZR)
g= group.random(G1)
找到了解决我的问题的方法。这是我 did.You 可以使用组序列化功能。
g = group.random(G1) # generates a random group element in that pairing group
您可以使用组序列化函数序列化 g
:
str = group.serialize(g)
您可以使用
反序列化它obj = group.deserialize(str)
希望它可以帮助面临同样问题的人。