在手机客户端登录时,常用到令牌机制,以确保用户在登录时信息不被抓取,在java程序中,主要根据时间情况,进行MD5加密即可

package com.kevin.authtoken;

import java.security.MessageDigest;

import java.security.NoSuchAlgorithmException;

public class TokenProcessor {

private static TokenProcessor instance = new TokenProcessor();

private long previous;

public TokenProcessor() {

}

public static TokenProcessor getInstance(){

return instance;

}

public synchronized String generateToken(String msg,boolean timeChange){

try{

long current = System.currentTimeMillis();

if(current == previous){

current++;

}

previous = current;

MessageDigest md = MessageDigest.getInstance("MD5");

md.update(msg.getBytes());

if(timeChange){

byte now[] = (new Long(current)).toString().getBytes();

md.update(now);

}

return toHex(md.digest());

}

catch(NoSuchAlgorithmException e){

return null;

}

}

private String toHex(byte buffer[]){

StringBuffer sb = new StringBuffer(buffer.length * 2);

for(int i = 0; i < buffer.length;i++){

sb.append(Character.forDigit((buffer[i] & 240) >> 4, 16));

sb.append(Character.forDigit(buffer[i] & 15, 16));

}

return sb.toString();

}

//进行测试

public static void main(String args[]){

String token = new TokenProcessor().generateToken("vokey", false);

System.out.println(token);

}

}这样即可

java 手机令牌_手机令牌机制java程序的实现相关推荐

  1. java铲车_深入研究Java类装载机制

    目录 1.为什么要研究java类装在机制? 2.了解类装载机制,对于我们在项目开发中有什么作用? 3.装载实现细节. 4.总结 一.为什么药研究Java类装载机制 java类加载机制,便于我们使用自定 ...

  2. java兵临城下_再谈java事件监听机制

    java中的事件机制的参与者有3种角色: 1.event object:就是事件产生时具体的"事件",用于listener的相应的方法之中,作为参数,一般存在于listerner的 ...

  3. opencv java 摄像头_使用OpenCV Java创建Windows摄像头扫码程序

    OpenCV提供了一些基本的Webcam控制接口.用OpenCV C/C++或者Python,可以在任意平台快速创建一个摄像头预览应用.然而使用Java,情况就复杂的多,因为OpenCV Java并没 ...

  4. JAVA拳皇_拳皇(Java简单的小程序)代码实例|chu

    刚开始学习Java,看完老九君的视频根据他的内容敲的代码,感觉还挺有成就感的,毕竟刚学习Java. package helloasd;import java.util.*; public class ...

  5. 小学数学闯关游戏 java代码_简单的java程序 小学数学闯关游戏 多谢高分

    展开全部 有4个类 MainFrame,Question,QuestionPanel,ResultPanel import java.awt.BorderLayout; import java.awt ...

  6. groovy 使用java类_深入学习java中的Groovy 和 Scala 类

    前言 Java 传承的是平台,而不是语言.有超过 200 种语言可以在 JVM 上运行,它们之中不可避免地会有一种语言最终将取代 Java 语言,成为编写 JVM 程序的最佳方式.本系列将探讨三种下一 ...

  7. java学习_都说Java难学,不知道具体的学习内容?全套Java学习路线送上

    首先,我个人比较推崇的学习方法是:先学java前段,也就是HTML,css,js,因为学习java以后肯定是往java ee方向发展的,学习完前端,在学习后端很多东西比计较容易理解! 其中J2SE是关 ...

  8. java 虚拟机_浅谈Java虚拟机内存区

    1. Java 虚拟机内存区概述 我们在编写程序时,经常会遇到OOM(out of Memory)以及内存泄漏等问题.为了避免出现这些问题,我们首先必须对JVM的内存划分有个具体的认识.JVM将内存主 ...

  9. java classpath import package 机制 @Java的ClassPath, Package和Jar

    java classpath import package 机制 從一個簡單的例子談談package與import機制 基本原則:為什麼需要將Java文件和類文件切實安置到其所歸屬之Package所對 ...

  10. java序列化_技术干货 | JAVA反序列化漏洞

    目录 反序列化漏洞 序列化和反序列化 JAVA WEB中的序列化和反序列化 对象序列化和反序列范例 JAVA中执行系统命令 重写readObject()方法 Apache Commons Collec ...

最新文章

  1. 红帽计划收购API管理领导者3scale
  2. .NET多线程编程入门
  3. oracle 唯一递增列,在oracle中创建unique唯一约束(单列和多列)
  4. GSLX680触摸屏驱动移植
  5. 从蛋白质结构到功能的生物信息学研究 From Protein Structure to Function with Bioinformatics PDF
  6. pymc3 贝叶斯线性回归_使用PyMC3估计的贝叶斯推理能力
  7. ABP入门系列(13)——Redis缓存用起来
  8. 【代码笔记】iOS-判断中英文混合的字符长度的两种方法
  9. 关于新手使用CPC客户端的操作指南
  10. 张鑫旭的《CSS世界》读后笔记
  11. 图解项目绩效考核指标及实例模板
  12. am335xSD卡启动--文件系统制作
  13. java redis锁_Java中Redis锁的实现
  14. 推荐|微信朋友圈营销的新尝试
  15. java 有c基础的自学教程(全站最详细 没有之一)
  16. 【ZBH选讲·树变环】
  17. 计算机专业研究生面试英语翻译,20考研复试英语面试最强攻略,都是干货!
  18. IT运维面试问题总结-LVS、Keepalived、HAProxy、Kubernetes、OpenShift
  19. RS485自行收发的实现方法
  20. 为什么敬业签绑定了微信提醒不了?

热门文章

  1. 飞刀:云原生内存数据库解锁存算一体
  2. 嗨!不来看一下如何骚气十足的登陆MySQL嘛?
  3. ssl证书无效 宝塔ssl 浏览器显示不安全
  4. Flink 版本数据湖(hudi)实时数仓---flinkcdc hudi kafak hive
  5. opencvShrap的PutText函数输出中文
  6. SVN A C D M G U R I的含义
  7. UG NX 12 如何确定绘制的草图是封闭的?
  8. linux指令(1)
  9. Aspose.Words图片水印
  10. Linux看内存标压低压,Linux 5.12将开始支持USB 4安全等级5 可禁用PCIe隧道功能