Objective C相当于Java中的MessageDigest?

Fog*_*gni 8 java objective-c code-conversion sha256

我正在执行将Java代码转换为Objective C的任务.

这是我必须转换的Java代码:

private String getHash(String input) 
{
    String ret = null;
    try 
    {
        MessageDigest md = MessageDigest.getInstance("SHA-256");

        byte[] bs = md.digest(input.getBytes("US-ASCII"));


        StringBuffer sb = new StringBuffer();
        for (byte b : bs) 
        {
            String bt = Integer.toHexString(b & 0xff);
            if(bt.length()==1) 
            {
                sb.append("0");
            }
            sb.append(bt);
        }
        ret = sb.toString();
    } 
    catch (Exception e) 
    {
    }
    return ret;
}
Run Code Online (Sandbox Code Playgroud)

具体来说,我可以在Objective C中使用哪些功能与MessageDigest相同?

Chu*_*uck 0

您需要 OpenSSL 库。请参阅使用 openssl 和 C++ 生成 sha256 的答案作为示例(标题说是 C++,但 OpenSSL 只是一个基本的 C 库)。