因为我是这个领域的新手,这个问题可能看起来很愚蠢,但请原谅我。我想在Objective-C中实现SHA-512以获得等效的Java代码。这就是Java代码:
String passwordSalt = "Somesalt";
byte[] bsalt=base64ToByte(passwordSalt);
byte[] passwordToDigestAsBytes=("somepassword").getBytes("UTF-8");
MessageDigest digest = MessageDigest.getInstance("SHA-512");
digest.reset();
digest.update(bsalt);
byte[] = input digest.digest(passwordToDigestAsBytes);
我使用CC_SHA512作为摘要功能......但我需要为digest.update(bsalt)部分做些什么?如何在Objective-C中实现相同的功能?
答案 0 :(得分:2)
我不熟悉Java的MessageDigest
对象,但看起来它只是在数据之前添加salt,这是处理这种数据的一种非常正常的方式。所以你只需要拨打CC_SHA512_Update()
两次。一旦用盐,然后第二次用密码数据。然后你打电话给CC_SHA512_Final()
来获取结果。