java与php的md5互通

简介: 其实md5这个算法和语言没有什么关系,很多同学在使用不同语言开发的时候,使用md5算法得出的结果会不一样,比如java与php,其实很多时候是由于受到源码文件的影响,比如你java的字符串编码是unicode,不受源码文件影响,而php的编码是和源文件编码一致的,受源码编码影响。在做下记录 public String md5(String txt) { try{
其实md5这个算法和语言没有什么关系,很多同学在使用不同语言开发的时候,使用md5算法得出的结果会不一样,比如java与php,其实很多时候是由于受到源码文件的影响,比如你java的字符串编码是unicode,不受源码文件影响,而php的编码是和源文件编码一致的,受源码编码影响。在做下记录

public String md5(String txt) {
             try{
                  MessageDigest md = MessageDigest.getInstance("MD5");
                  md.update(txt.getBytes("GBK"));    //问题主要出在这里,Java的字符串是unicode编码,不受源码文件的编码影响;而PHP的编码是和源码文件的编码一致,受源码编码影响。
                  StringBuffer buf=new StringBuffer();            
                  for(byte b:md.digest()){
                       buf.append(String.format("%02x", b&0xff));        
                  }
                 return  buf.toString();
               }catch( Exception e ){
                   e.printStackTrace(); 

                   return null;
                } 
        }

 

相关文章
|
4月前
|
编解码 算法 安全
怎么Java进行MD5摘要加密?
MD5(Message-Digest Algorithm 5)是一种常用的摘要算法,用于将任意长度的数据转换为固定长度的摘要值(通常为128位)。MD5算法的原理是将原始数据分成若干个固定长度的块,对每个块进行一系列的数据处理,最终得到一个128位的摘要值。这个摘要值可以作为数据的唯一标识,用于验证数据的完整性和真实性。
43 1
|
5月前
|
人工智能 小程序 JavaScript
【Java】智慧校园家校互通小程序源码
【Java】智慧校园家校互通小程序源码
101 0
|
2月前
|
存储 Java 开发者
Java代码揭秘:实现三端互通的技术
Java代码揭秘:实现三端互通的技术
20 0
|
2月前
|
Java API PHP
多多关键字API php java Python
多多关键字API接口广泛应用于商家进行市场分析、竞品分析、关键词优化等场景。商家可以通过分析关键词数据,了解用户需求,制定针对性的营销策略,提高产品的曝光率和转化率。
|
3月前
|
网络安全 PHP Python
【网络安全 | MD5截断比较】PHP、Python脚本利用
【网络安全 | MD5截断比较】PHP、Python脚本利用
26 0
php案例:判断这个文件是什么编程语言代码的文件(判断java或者php)
php案例:判断这个文件是什么编程语言代码的文件(判断java或者php)
php案例:判断这个文件是什么编程语言代码的文件(判断java或者php)
|
4月前
|
PHP 数据安全/隐私保护
|
5月前
|
算法 安全 Java
MD5 - 加密算法简要介绍与JAVA实现
MD5 - 加密算法简要介绍与JAVA实现
59 1
|
5月前
|
存储 Java PHP
Java、PHP、C语言经典项目源码合集推荐(一)
Java、PHP、C语言经典项目源码合集推荐(一)
83 0
|
6月前
|
小程序 前端开发 Java
Java智慧校园电子班牌智能互联家校互通源码
系统开发环境 1. 开发语言:JAVA 2. 数据库:MySQL 3. 后端框架:Spring boot 4. 前端框架:VUE2 5. 电子班牌: Android  7.1 6. 小程序:原生语言开发 7. 多学校Saas 模式
44 0