如何在 Jmeter 中使用 BCrypt 使用密码哈希

How to use password hashing using BCrypt in Jmeter

提问人:Rahul 提问时间:10/6/2023 更新时间:10/6/2023 访问量:32

问:

我必须使用 bCrypt 哈希生成器来加密任何字符串。

我采取的步骤: #

1- 在 Lib 文件夹
中添加了 Jar 文件 2- 重新启动了 Jmeter
3- 在 JSR223 Sampler 中添加了以下代码

String password = "1234"; 
String bcryptHashString = BCrypt.withDefaults().hashToString(10, password.toCharArray());
  • 收到异常

2023-10-06 13:27:53,749 错误 o.a.j.p.j.s.JSR223Sampler:JSR223 脚本 JSR223 Sampler 中的问题,消息:javax.script.ScriptException:groovy.lang.MissingPropertyException:没有这样的属性:类的 BCrypt:Script228 javax.script.ScriptException: groovy.lang.MissingPropertyException: No such property: BCrypt for class: Script228 在 org.codehaus.groovy.jsr223.GroovyScriptEngineImpl.eval(GroovyScriptEngineImpl.java:320) ~[groovy-jsr223-3.0.5.jar:3.0.5] 在 org.codehaus.groovy.jsr223.GroovyCompiledScript.eval(GroovyCompiledScript.java:71) ~[groovy-jsr223-3.0.5.jar:3.0.5] 在 javax.script.CompiledScript.eval(来源不明) ~[?:1.8.0_381] 在 org.apache.jmeter.util.JSR223TestElement.processFileOrScript(JSR223TestElement.java:217) ~[ApacheJMeter_core.jar:5.4.1] 在 org.apache.jmeter.protocol.java.sampler.JSR223Sampler.sample(JSR223Sampler.java:72) [ApacheJMeter_java.jar:5.4.1] 在 org.apache.jmeter.threads.JMeterThread.doSampling(JMeterThread.java:638) [ApacheJMeter_core.jar:5.4.1] 在 org.apache.jmeter.threads.JMeterThread.executeSamplePackage(JMeterThread.java:558) [ApacheJMeter_core.jar:5.4.1] 在 org.apache.jmeter.threads.JMeterThread.processSampler(JMeterThread.java:489) [ApacheJMeter_core.jar:5.4.1] 在 org.apache.jmeter.threads.JMeterThread.run(JMeterThread.java:256) [ApacheJMeter_core.jar:5.4.1]

bcrypt jmeter-4.0

评论


答:

0赞 Dmitri T 10/6/2023 #1

我想你忘了复制和粘贴必要的导入语句

import at.favre.lib.crypto.bcrypt.BCrypt

enter image description here

此外,您需要添加文件S,而不是文件,如果没有 bytes 实用程序库,bcrypt 将无法工作

有关 JMeter 中 Groovy 脚本的更多信息:Apache Groovy:Groovy 的用途是什么?