我刚刚读完Elixir.
生成一个hmac哈希后,我得到了一个bitstring:
:crypto.hmac(:sha512, secret, data)
Sign: <<104, 155, 224, 193, 121, 129, 237, 103, 233, 236, 161, 130...>>
Run Code Online (Sandbox Code Playgroud)
现在,我必须将其转换为String,但不知道具体如何.
任何Elixir/erlang模块直接执行此操作?
糟糕,我没有看到你最初想要使用字符串模块的bitstring输出.你已经可以!您可以通过尝试将输出传递到String.length并获得成功的返回值来查看此信息.
这本入门指南很好地介绍了基础知识.特别是"字符串是UTF-8编码的二进制文件".
您希望能够对输出做什么?
如果你想要能够通过URL传递auth系统或类似的东西,我就离开了原来的答案.
您可以使用基本模块来实现这一目标.
例如,您可以管道输出
:crypto.hmac(:sha512, secret, data) |> Base.encode64
如果你需要它是文件名或网址安全,那么有一个替代url_encode64功能.