当前位置: 首页 > 知识库问答 >
问题:

Android:java中的Hmac SHA512

郭修平
2023-03-14

我有以下PHP代码:

$binKey = pack("H*", $keyTest);
$hmac = strtoupper(hash_hmac($pbx_hash, $msg, $binKey));

如何在android(java)中实现同样的功能。

我已经尝试了hmac sha512可用的几种方法,但php代码段的结果与我的不同。

提前致谢

共有1个答案

鲜于裕
2023-03-14

你可以用这个来检查它,我用HmacSHA512算法加密它,然后我用BASE64编码它。

try {
            String secret = "secret";
            String message = "Message";

            Mac sha_HMAC = Mac.getInstance("HmacSHA512");

            SecretKeySpec secret_key = new SecretKeySpec(secret.getBytes(), "HmacSHA512");
            sha_HMAC.init(secret_key);

            String hash = Base64.encodeToString(sha_HMAC.doFinal(message.getBytes()), Base64.DEFAULT);
            System.out.println(hash);
            Log.e("string is ",hash);

        }
        catch (Exception e){
            System.out.println("Error");
        }
 类似资料:
  • 我收到一个与Firebase相关的错误。 我不明白这是什么问题 格拉德尔 我如何解决这个问题?

  • 我制作了一个聊天应用程序进行练习,并尝试使用我的可绘制文件夹中的add1.png图像作为默认配置文件图像,无论用户是否放置图像 这是我的代码片段 如果运行应用,则会发生异常,但默认映像 (add1.png) 会正确插入到 firebase 存储中。 这里有个例外。 谢谢大家!

  • 我使用子JPanel构造JScrollPane,然后尝试将JScrollPane添加到父JPanel中,希望有一个可滚动的自定义JPanel。 我有一个大的细白线前面的所有我的组件,他们是没有滚动。有什么想法吗?

  • 我已经为android Studio创建了一个webview应用程序。但没有加载web URL。错误为NET::ERR_ACCESS_DENIED。有谁能帮忙吗

  • 我有一个使用Java Version8的Spring和Maven的项目。当我运行maven update时,它适用于Java9或更高版本,当我编译它时,它适用于Java8。我注意到了这一点,因为用Maven更新会将一个特定的类更改为Java9,而我无法导入这个类。 这个类是:javax.annotation.generated(Java8)。 这是要导入的类。但是,当我进行maven更新时,文件的

  • 当应用程序启动EncryptionBootstrapConfiguration无法自动装配我的自定义TextEncryptor-https://github.com/spring-cloud/spring-cloud-commons/blob/cde7c7f3118382490c28776f66e0a56f248141fd/spring-cloud-context/src/main/java/or