When I tried to implement "H2 : {0, 1}* --> GT" mentioned in the paper [1], I encountered an error: pairing.Error: cannot hash a string to that field. Only Zr or G1.
[1] Y. Miao, J. Ma, X. Liu, X. Li, Q. Jiang, and J. Zhang, “Attribute-Based Keyword Search over Hierarchical Data in Cloud Computing,” IEEE Transactions on Services Computing, vol. 13, no. 6, pp. 985–998, Nov. 2020, doi: 10.1109/TSC.2017.2757467.
When I tried to implement "H2 : {0, 1}* --> GT" mentioned in the paper [1], I encountered an error:
pairing.Error: cannot hash a string to that field. Only Zr or G1.
After looking at [the documentation](https://jhuisi.github.io/charm/toolbox/pairinggroup.html#:~:text=%5Bsource%5D-,hash,-\(args%2C), I found that only ZR, G1 and G2 are mentioned but not GT.
However, "H2 : {0, 1}* --> GT" is available in pypbc (another python pbc library).
So I wonder why charm doesn't support hashing objects into GT, and how to hash strings into GT?
The only way I can think of is to hash string into G1 first and then pair, like below. Is there any other better way?
[1] Y. Miao, J. Ma, X. Liu, X. Li, Q. Jiang, and J. Zhang, “Attribute-Based Keyword Search over Hierarchical Data in Cloud Computing,” IEEE Transactions on Services Computing, vol. 13, no. 6, pp. 985–998, Nov. 2020, doi: 10.1109/TSC.2017.2757467.