Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/397.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 在java中生成CHAP响应_Javascript_Java_Php - Fatal编程技术网

Javascript 在java中生成CHAP响应

Javascript 在java中生成CHAP响应,javascript,java,php,Javascript,Java,Php,目前,我正在尝试用java生成chap响应。它在php中工作。。。但是我们的后端需要用java完成 var challenge = "cda9af6faa83d0883d694fa58d2e88wh"; var password = "password123"; var hexchal = challenge.packHex(); var newchal = hexchal; var response = md5('\0' + password + newchal) 我已经设法找到了一些jav

目前,我正在尝试用java生成chap响应。它在php中工作。。。但是我们的后端需要用java完成

var challenge = "cda9af6faa83d0883d694fa58d2e88wh";
var password = "password123";
var hexchal = challenge.packHex();
var newchal = hexchal;
var response = md5('\0' + password + newchal)
我已经设法找到了一些javascript代码,但是响应只差了几个字符

function getPapPassword(){
           //function to add value padding to a string of x length default : null padding
           String.prototype.pad = function (length, padding) {
               var padding = typeof padding === 'string' && padding.length > 0 ? padding[0] : '\x00'
                       , length = isNaN(length) ? 0 : ~~length;
               return this.length < length ? this + Array(length - this.length + 1).join(padding) : this;
           };

           //function to convert hex to ascii characters
           String.prototype.packHex = function () {
               var source = this.length % 2 ? this + '0' : this
                       , result = '';

               for (var i = 0; i < source.length; i = i + 2) {
                   result += String.fromCharCode(parseInt(source.substr(i, 2), 16));
               }
               return result;
           };

           var challenge = "cda9af6faa83d0883d694fa58d2e88wh";
           var password = "password123";
           var hexchal = challenge.packHex();
           var newchal = hexchal;
           var response = md5('\0' + password + newchal);
           }
           return response;
           }
函数getPapPassword(){ //函数将值填充添加到x长度的字符串默认值:null padding String.prototype.pad=函数(长度、填充){ var padding=typeof padding=='string'&&padding.length>0?padding[0]:'\x00' ,长度=isNaN(长度)?0:~~长度; 返回this.length 有人能为我指出正确的方向或提供帮助吗? 谢谢

好的,我所做的是在java中尝试从十六进制转换为ascii。。。这是我的密码

public class App{

  public String convertHexToString(String hex){

      StringBuilder sb = new StringBuilder();
      StringBuilder temp = new StringBuilder();

      //49204c6f7665204a617661 split into two characters 49, 20, 4c...
      for( int i=0; i<hex.length()-1; i+=2 ){

          //grab the hex in pairs
          String output = hex.substring(i, (i + 2));
          //convert hex to decimal
          int decimal = Integer.parseInt(output, 16);
          //convert the decimal to character
          sb.append((char)decimal);

          temp.append(decimal);
      }
      System.out.println("Decimal : " + temp.toString());

      return sb.toString();
  }

  public static void main(String[] args) {

      App app = new App();
      System.out.println("ASCII : " + app.convertHexToString("9f9585f4e88305fde280c762925f37af"));
  }
}
公共类应用程序{
公共字符串转换HEXTOSTRING(字符串十六进制){
StringBuilder sb=新的StringBuilder();
StringBuilder temp=新的StringBuilder();
//49204c6f7665204a617661拆分为两个字符49、20、4c。。。

对于(inti=0;iYou需要正确地编写Java服务器页面(JSP)代码,对吗?我这样做是为了使用radius对用户进行身份验证,并且需要这个chap响应。