GOST 3411 Algorithm using Bouncy Castle(基于弹跳城堡的GOST 3411算法)
本文介绍了基于弹跳城堡的GOST 3411算法的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我使用GOST算法来创建基于键的散列和使用弹跳城堡库的输入。下面的代码生成的散列与通过http://beautifytools.com/hmac-generator.php
等在线工具生成的散列不匹配 HMac gMac= new HMac(new GOST3411Digest());
byte[] key = "keyphrase".getBytes();
byte[] input = "macinput".getBytes();
gMac.init(new KeyParameter(key));
gMac.update(input, 0, input.length);
byte[] mac = new byte[gMac.getMacSize()];
gMac.doFinal(mac, 0);
BigInteger in = new BigInteger(1, mac);
System.out.println(in.toString(16));
正常时,需要在MuleSoft内部调用API,对Hash进行验证并进行身份验证。基本上,加密用于生成身份验证令牌。
很长时间以来一直在提及堆栈溢出,但从未有机会发布任何问题。这是我的第一次:)
谢谢, 苏迪普
推荐答案
GOST3411算法有几个Sbox选项,因此尝试在初始化时使用不同的选项。我在"D-测试"Sbox上有一些运气,它与大多数在线工具匹配,如果不是全部的话。您可以按如下方式初始化不同的SBox:
HMac mac = new HMac(new GOST3411Digest(GOST28147Engine.getSBox("D-Test")));
这篇关于基于弹跳城堡的GOST 3411算法的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!
沃梦达教程
本文标题为:基于弹跳城堡的GOST 3411算法


猜你喜欢
- java.lang.IllegalStateException:Bean 名称“类别"的 BindingResult 和普通目标对象都不能用作请求属性 2022-01-01
- 未找到/usr/local/lib 中的库 2022-01-01
- 如何使 JFrame 背景和 JPanel 透明且仅显示图像 2022-01-01
- GC_FOR_ALLOC 是否更“严重"?在调查内存使用情况时? 2022-01-01
- Eclipse 的最佳 XML 编辑器 2022-01-01
- 在 Java 中,如何将 String 转换为 char 或将 char 转换 2022-01-01
- 如何指定 CORS 的响应标头? 2022-01-01
- 获取数字的最后一位 2022-01-01
- 转换 ldap 日期 2022-01-01
- 将 Java Swing 桌面应用程序国际化的最佳实践是什么? 2022-01-01