一个简易的加密算法

一个简易的加密算法

import java.util.HashMap;
import java.util.Map;

public class SecurityUtils {
    private static long slot = 自己指定的slot值;

    private static Map<String, String> map = new HashMap<>();
    static {
        map.put("0", "m");
        map.put("1", "q");
        map.put("2", "e");
        map.put("3", "t");
        map.put("4", "u");
        map.put("5", "o");
        map.put("6", "a");
        map.put("7", "d");
        map.put("8", "g");
        map.put("9", "j");
    }

    private static Map<String, String> revserMap = new HashMap<>();

    static {
        revserMap.put("m", "0");
        revserMap.put("q", "1");
        revserMap.put("e", "2");
        revserMap.put("t", "3");
        revserMap.put("u", "4");
        revserMap.put("o", "5");
        revserMap.put("a", "6");
        revserMap.put("d", "7");
        revserMap.put("g", "8");
        revserMap.put("j", "9");
    }
    public static String jiami(long orig){
        long sum = orig + slot;
        String str = String.valueOf(sum);
        char[] chars = str.toCharArray();
        StringBuilder newStr = new StringBuilder();
        for (int i = 0; i < chars.length; i++){
            newStr.append(map.get(String.valueOf(chars[i])));
        }
        return newStr.toString();
    }

    public static long jiemi(String str){
        StringBuilder newStr = new StringBuilder();
        char[] chars = str.toCharArray();
        for (int i = 0; i < chars.length; i++){
            newStr.append(revserMap.get(String.valueOf(chars[i])));
        }
        long sum = Long.parseLong(newStr.toString());
        return sum - slot;
    }

    public static void main(String[] args) {
        for(int i = 1; i < 11000000; i++) {
            long time = System.currentTimeMillis();
            String jiami = jiami(i);
            long jiemi = jiemi(jiami);
           // System.out.println("耗时:" + (System.currentTimeMillis() - time));
            if(jiemi == i){
                System.out.println("加密:" + jiami + "揭秘:" + jiemi);
            }else {
                System.out.println("加密错误");
            }
        }
    }
}

  

原文地址:https://www.cnblogs.com/zhangchiblog/p/15216147.html