永发信息网

求将一段c#转换为java代码

答案:1  悬赏:60  手机版
解决时间 2021-01-28 17:31
求将一段c#转换为java代码
最佳答案
package com.sunnylocus.util;  
  
import java.security.MessageDigest;  
  
  
public class CipherUtil{  
      
    //十六进制下数字到字符的映射数组  
    private final static String[] hexDigits = {"0", "1", "2", "3", "4",  
        "5", "6", "7", "8", "9", "a", "b", "c", "d", "e", "f"};  
      
      
    public static String generatePassword(String inputString){  
        return encodeByMD5(inputString);  
    }  
      
        
    public static boolean validatePassword(String password, String inputString){  
        if(password.equals(encodeByMD5(inputString))){  
            return true;  
        } else{  
            return false;  
        }  
    }  
      
    private static String encodeByMD5(String originString){  
        if (originString != null){  
            try{  
                //创建具有指定算法名称的信息摘要  
                MessageDigest md = MessageDigest.getInstance("MD5");  
                //使用指定的字节数组对摘要进行最后更新,然后完成摘要计算  
                byte[] results = md.digest(originString.getBytes());  
                //将得到的字节数组变成字符串返回  
                String resultString = byteArrayToHexString(results);  
                return resultString.toUpperCase();  
            } catch(Exception ex){  
                ex.printStackTrace();  
            }  
        }  
        return null;  
    }  
      
      
    private static String byteArrayToHexString(byte[] b){  
        StringBuffer resultSb = new StringBuffer();  
        for (int i = 0; i < b.length; i++){  
            resultSb.append(byteToHexString(b[i]));  
        }  
        return resultSb.toString();  
    }  
      
      
    private static String byteToHexString(byte b){  
        int n = b;  
        if (n < 0)  
            n = 256 + n;  
        int d1 = n / 16;  
        int d2 = n % 16;  
        return hexDigits[d1] + hexDigits[d2];  
    }  
}调用方法:

package com.sunnylocus.util;  
  
public class Main {  
    public static void main(String[] args) {  
        String pwd1="123";  
        String pwd2="";  
        CipherUtil cipher = new CipherUtil();  
        System.out.println("未加密的密码:"+pwd1);  
        //将123加密  
        pwd2 = cipher.generatePassword(pwd1);  
        System.out.println("加密后的密码:"+pwd2);  
          
        System.out.print("验证密码是否下确:");  
        if(cipher.validatePassword(pwd2, pwd1)) {  
            System.out.println("正确");  
        }  
        else {  
            System.out.println("错误");  
        }  
    }  
}显示结果

未加密的密码:123  
加密后的密码:202CB962AC59075B964B07152D234B70  
验证密码是否下确:正确
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
朋友借我三十三万,有欠条指印,我想起诉他请
鄞州公交641路上午发车班次
院子里适合种什么树
s6火花塞换过后动力跟不上是什么原因
问罪之师的意思是什么啊?知道的请说下!
因记账凭证错误而造成的账簿记录错误,一定釆
初中学历的我,今年26了,做保安的,一个月两
刀剑乱舞界面初始化失败怎么办
【甲鱼是乌龟吗】甲鱼是乌龟吗?它属于什么动
老年人肚子胀气如何快速消除
李丽从一楼爬到三楼需要30秒,照这样计算,她
加枝添叶的意思是什么啊?知道的请说下!
IT里各种简称的含义
急开锁可以随便帮别人开锁吗?不需要证明一下
指出下列错误的操作导致的后果(1)把块状固
推荐资讯
五菱荣光怠速不稳该是什么地方毛病?
好朋友是不是不能在同一家公司工作?
类里面为什么写hashcode
艺峰究竟怎么样!?看见有条诽谤艺峰画室的信
当你晚自习专心做测标卷子时,参与的高级中枢
地球上会发生各种各样的灾难。在灾难事故死亡
金日窗帘地址在什么地方,想过去办事
车艺族汽车一站汽车服务地址好找么,我有些事
别克君越导航升级价格是多少
类似妃嫔这职业,淑妃,架空宫斗,女主升级,
读某地区经纬网图,回答问题。【小题1】若bd
下列哪门学科不属于自然科学? A化学 B历史 C
正方形一边上任一点到这个正方形两条对角线的
阴历怎么看 ?