请选择 进入手机版 | 继续访问电脑版

登录  | 立即注册

游客您好!登录后享受更多精彩

查看: 273|回复: 0

【Java】简单加解密

[复制链接]

441

主题

506

帖子

1944

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
1944

荣誉管理论坛元老

发表于 2021-6-30 22:18:12 来自手机 | 显示全部楼层 |阅读模式 来自:
  1. public class JavaCrackMe03 {     / R" d5 O1 u! ]: v) I4 Y
  2. public static char[] szSrc = new char[]{'a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j', 'k', 'l', 'm', 'n', 'o', 'p', 'q', 'r', 's', 't', 'u', 'v', 'w', 'x', 'y', 'z'}; . v3 O. O' T1 j% k
  3.    public static char[] szKey = new char[]{'b', 'f', 'd', 'j', 'z', 'e', 'r', 'm', 'i', 'a', 'k', 'x', 'v', 'h', 'c', 'g', 'o', 'p', 'l', 'q', 's', 'n', 't', 'u', 'w', 'y'};      
    ( j3 Y( Y# b) f
  4. public static int getIndex(char[] arr, char ch) { 6 M9 Y7 l) i: E4 U
  5.        for(int i = 0; i < arr.length; ++i) {         
    , s' l5 j$ K, ]( K
  6.         if(ch == arr[i]) {
    " `& {- C3 R* ?7 d8 U  @
  7.                return i;           
    6 w- j! f/ u+ u# g0 m
  8. }      
    " M$ n% u; y1 h* X( y  \
  9. }         / Y- B: H) j# G% j6 w, q
  10. return -1;    ! V7 d/ ~% `9 y: J
  11. }      * Y  C3 s4 F& s0 k
  12. public static String encode(String string) { ! p0 r: [! b3 ]' d( c: G
  13.        StringBuffer stringbuffer = new StringBuffer();        2 o" p8 u  w7 D) \3 T9 Y& W
  14.         for(int i = 0; i < string.length(); ++i) {
    ! m/ D+ `- L, _& W0 `* n& x/ a$ |6 b0 u
  15.             char ch = string.charAt(i);
    1 F) o) x& B% @3 Y/ k+ X" E
  16.            int m = getIndex(szSrc, ch);
    / f6 d& u% w" M" a! t% F6 F/ Z6 ]
  17.             stringbuffer.append(szKey[m]); ( `0 K6 g/ q1 x- F
  18.        }    j4 m- |6 X, O9 \: L
  19.         System.out.println("密文:" + stringbuffer);
    . Y4 [  X. N! B" G- g# W' d7 g- E
  20.                 return new String(stringbuffer);+ A& C. c  a7 U& B- D7 x
  21.                     }  ; F8 s+ ^7 w3 H. i
  22.     public static String DeCode(String string) {
    ) j8 y+ z; a( M' a
  23.        StringBuffer stringbuffer = new StringBuffer();   d1 I# n4 ~3 E: [4 f. u
  24.          for(int i = 0; i < string.length(); ++i) {   d% D* X' A- z5 ?; n  `6 i8 f$ a
  25.            char ch = string.charAt(i);  I4 k. z8 `) M
  26.             int m = getIndex(szKey, ch);   2 y5 U: g- u0 P/ ~( L( i! |
  27.          stringbuffer.append(szSrc[m]);  % @+ n+ v$ b0 M% q: z3 ?( Q* p) [
  28.       }      ) q9 V+ T& i. u& L! t0 I' W
  29.     System.out.println("明文:" + stringbuffer);
    - x5 a' O7 ]" k0 l, B* Y* e
  30.             return new String(stringbuffer); ) ]' R+ {$ O0 E9 U0 F
  31.    }   
    5 V: g5 ^2 w  I9 V5 _
  32.   public static void main(String []args)  6 S) C  _7 }' k7 `5 L" f
  33.   {        
    # Z3 D7 c" d1 }" w" `& ]
  34.         encode("java");
    # m9 d/ p/ ^: \5 h) n6 A5 u
  35.         DeCode("abnb");
    ; c4 _6 w' r4 V1 U  G
  36.    }& r  g# g3 R' f8 U' ], ]7 Z
  37.    }
    : M" K! h/ k& u8 P1 L4 S
复制代码
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|小黑屋|星空社区

GMT+8, 2022-8-11 22:37 , Processed in 0.056545 second(s), 22 queries .

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表