PBC:从元素中获取哈希值

时间:2016-01-18 15:45:57

标签: c hash cryptography

在PBC库中有一个从散列中获取元素的函数:

  

void element_from_hash(element_t e, void *data, int len)

     

从存储在缓冲区数据中的len个字节确定性地生成元素。

PBC manuals: Converting elements

有没有办法反过来,即从元素中恢复相应的哈希? 或者,是否有一种将字符串来回转换为元素的一致方法? element_to_bytes / element_from_bytes是否有效或者这些字节是否以特定形式被解释为PBC元素(我强烈认为)?

我正在构建一个密码系统,显然我需要在解密后恢复明文;)。 为了更好地解释我的问题,我需要一种方法将字符串编码为元素并将元素解码为字符串。

1 个答案:

答案 0 :(得分:0)

我研究了手册并查阅了一些理论。我不是密码学方面的专家,而且对于eliptic ring和groups也没有太多了解。

基于配对的密码术的基本目的是能够安全地交换或构建共享密钥以用于进一步加密或身份验证,因为知道某人可能正在窃听交换/构建中使用的通信。

手册和理论的散列讨论了从消息中生成散列的方法。该哈希将反过来用于使用PBC库的功能从环中获取密钥的组件。

按照定义散列 意味着从较大的东西映射到较小的东西。例如,从1024个字符的消息生成16位整数散列。因此,根据定义,可以从散列中获取原始内容 - 有无限数量的消息符合条件,因为它们都会生成相同的散列。

但是,使用从交换获得的密钥并使用库函数可以解密消息。