zoukankan      html  css  js  c++  java
  • Java实现一个简单的加密解密方法

    【本文版权归微信公众号"代码艺术"(ID:onblog)所有,若是转载请务必保留本段原创声明,违者必究。若是文章有不足之处,欢迎关注微信公众号私信与我进行交流!】

    Crypto是Java语言写的一个简单的加密解密方法。

    使用方法:

    加密方法 String cipherte=Enande.encrypt(content, pass);

    解密方法 Enande.decrypt(ciphertext, pass);

    content,pass均为String类型 content为明文,pass为加密口令,ciphertext为密文

    (对代码公开,对密码保密)

    /**
     * 时间:2007-11-14 
     * yster@foxmail.com
     */
    public class Enande {
        /**
         * @param sourceString
         * @param password
         * @return 密文
         */
        public static String encrypt(String sourceString, String password) {
            char[] p = password.toCharArray(); // 字符串转字符数组
            int n = p.length; // 密码长度
            char[] c = sourceString.toCharArray();
            int m = c.length; // 字符串长度
            for (int k = 0; k < m; k++) {
                int mima = c[k] + p[k / n]; // 加密
                c[k] = (char) mima;
            }
            return new String(c);
        }
    
        /**
         *
         * @param sourceString
         * @param password
         * @return 明文
         */
        public static String decrypt(String sourceString, String password) {
            char[] p = password.toCharArray(); // 字符串转字符数组
            int n = p.length; // 密码长度
            char[] c = sourceString.toCharArray();
            int m = c.length; // 字符串长度
            for (int k = 0; k < m; k++) {
                int mima = c[k] - p[k / n]; // 解密
                c[k] = (char) mima;
            }
            return new String(c);
        }
    
        /*
         * 使用例子
         */
        public static void main(String arg[]) {
            String wen = "这是一段明文";
            String pass = "123456789";
            System.out.println(encrypt(wen, pass));
            System.out.println(decrypt(encrypt(wen, pass), pass));
        }
    }
    

    版权声明

    【本文版权归微信公众号"代码艺术"(ID:onblog)所有,若是转载请务必保留本段原创声明,违者必究。若是文章有不足之处,欢迎关注微信公众号私信与我进行交流!】

  • 相关阅读:
    mysql data type <----> java data type (数值)
    line number is important in Exceptions.
    dom4j 使用原生xpath 处理带命名空间的文档
    dom4j 通过 org.dom4j.XPath 设置命名空间来支持 带namespace 的 xpath
    dom4j 创建一个带命名空间的pom.xml 文件
    xml to xsd ; xsd to xml
    sax 动态切换 抓取感兴趣的内容(把element当做documnet 处理)
    d3.js <一>
    python学习进阶一
    Java *字格
  • 原文地址:https://www.cnblogs.com/onblog/p/13043400.html
Copyright © 2011-2022 走看看