java 软件加密
2016-11-02 10:36
441 查看
MD5字符串加密
java 读写字符串
代码:引用博客地址:http://blog.csdn.net/baidu_18607183/article/details/51461657
/*** * MD5加码 生成32位md5码 */ public static String string2MD5(String inStr){ MessageDigest md5 = null; try{ md5 = MessageDigest.getInstance("MD5"); }catch (Exception e){ System.out.println(e.toString()); e.printStackTrace(); return ""; } char[] charArray = inStr.toCharArray(); byte[] byteArray = new byte[charArray.length]; for (int i = 0; i < charArray.length; i++) byteArray[i] = (byte) charArray[i]; byte[] md5Bytes = md5.digest(byteArray); StringBuffer hexValue = new StringBuffer(); for (int i = 0; i < md5Bytes.length; i++){ int val = ((int) md5Bytes[i]) & 0xff; if (val < 16) hexValue.append("0"); hexValue.append(Integer.toHexString(val)); } return hexValue.toString(); } /** * 加密解密算法 执行一次加密,两次解密 */ public static String convertMD5(String inStr){ char[] a = inStr.toCharArray(); for (int i = 0; i < a.length; i++){ a[i] = (char) (a[i] ^ 't'); } String s = new String(a); return s; } // 测试主函数 public static void main(String args[]) { String s = new String("00-E0-4C-14-B1-2E"); System.out.println("原始:" + s); System.out.println("MD5后:" + string2MD5(s)); //System.out.println("加密的:" + convertMD5(s)); System.out.println("解密的:" + convertMD5(convertMD5(s))); }
java 读写字符串
由于java程序是“write once, run everywhere”,用java读写注册表,那程序的跨平台性就差了。java对注册表的操作,在jdk1.4以前的版本中,那是不可能的,只能用JNI来实现;然而jdk1.4之后提供的prefs包可以操作windows注册表,不过定死了root只在 *SOFTWARE/JavaSoft/prefs下*, 估计也是出于这种两难吧,又要保证所谓平台无关,还要照顾大家对windows的依赖。下面将从两方面来介绍对注册表的操作。
代码:引用博客地址:http://blog.csdn.net/baidu_18607183/article/details/51461657
//注册表类 public class Registery { static String keys =null; static String values =null; //把相应的值储存到变量中去 public void writeValue(String keys , String values) { // HKEY_LOCAL_MACHINE\Software\JavaSoft\prefs下写入注册表值. Preferences pre = Preferences.systemRoot().node("/javaplayer"); pre.put(keys, values); } //根据key获取value public String getValue(String key){ Preferences pre = Preferences.systemRoot().node("/javaplayer"); return pre.get(key, "timedd"); } //清除注册表 public void clearValue() throws BackingStoreException { Preferences pre = Preferences.systemRoot().node("/javaplayer"); pre.clear(); } //测试main方法 public static void main(String[] args) throws BackingStoreException { Registery reg = new Registery(); reg.clearValue(); // reg.writeValue("version", "1.2"); // String value = reg.getValue("version"); // System.out.println(value); } }
相关文章推荐
- (1)java自带软件包javax.crypto的使用方法,对称加密方法和非对称加密方法
- 关于java程序商业软件中的加密问题
- java JNI调用动态库 获取硬件信息 制作软件加密
- Java软件如何加密
- 论Java加密技术与Windows的结合
- 软件注册加密技术
- 我的Java矢量软件之路3--想象篇
- 共享软件的注册加密法
- Java 开源软件的集合
- 软件加密方法的思考
- 代码加密:加密Java源代码,保护自己的版权!
- Java 建模: 子整体软件开发,第二部分--需求收集:工作的恰当过程
- Rsa加密的Java测试代码
- MICROSOFT INTERNET EXPLORER 128 位高加密功能软件组件
- Java软件开发学习笔记(一)
- WDSsoft免费源代码,java加密解密编程常用工具包 JCT 1.0 (整理)
- 我的Java矢量软件之路4--FAQs
- Java中的加密和DSA数字签名
- UML工具推荐 Poseidon版本 可以免费下载,自动生成代码 C++ Java C# VB.NET等 (来自德国汉堡的国际性建模软件开发商Gentleware AG的)
- 软件加密方式