⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 encryptaction.java

📁 是一个用VB编写得银行ATM机交易的程序
💻 JAVA
字号:
package com.myapp.struts;

import java.sql.ResultSet;
import java.util.ArrayList;
import java.util.Date;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

import org.apache.struts.action.Action;
import org.apache.struts.action.ActionForm;
import org.apache.struts.action.ActionMapping;
import org.apache.struts.action.ActionForward;

import com.myapp.struts.ChangeCharset;
import java.io.*;
import javax.crypto.*;
import javax.crypto.spec.*;
import java.security.*;
import java.security.spec.*;
import com.sun.crypto.provider.SunJCE;
import java.io.Serializable;
import java.lang.Character;

/**
 *
 * @author Administrator
 */
public class encryptAction extends Action {
    
    public static String tmp;
    public static int len;
     public ActionForward execute(ActionMapping mapping, ActionForm  form,
            HttpServletRequest request, HttpServletResponse response)
            throws Exception {
         String action = request.getParameter("action");
         String info=request.getParameter("info");
         String str = new String();
        
           //获取公钥
           String Gkey=request.getParameter("GongYao");
           
           //获取私钥
           String Skey = request.getParameter("SiYao");
           
           
           if(action.equals("encrypt")){
           
             str = encrypt(info,Gkey);
             request.getSession().setAttribute("encryptinfo",str);
             request.getSession().setAttribute("unencryptinfo",null);
         }else if(action.equals("unencrypt")){
             str = unencrypt(info,Skey);
             request.getSession().setAttribute("encryptinfo",null);
             request.getSession().setAttribute("unencryptinfo",str);
         }
         
         return mapping.findForward("sucess");
         
     }
     
     public String encrypt(String pre,String Gkey) throws UnsupportedEncodingException{
       String GBK="GBK";
       String UTF_16LE="UTF_16LE";   
       //加入公钥
       String something = Gkey + pre;
       ChangeCharset test=new ChangeCharset();
       String after = test.toUTF_16LE(something); 
       tmp = after;
       len=Gkey.length();
       return after;
     }
     public String unencrypt(String after,String Skey) throws UnsupportedEncodingException{
         String GBK="GBK";
         String UTF_16LE="UTF_16LE";
         int num;
         String pp="";
         String MingWen="";         
         ChangeCharset test=new ChangeCharset();
         String gbk = test.changeCharset(tmp,UTF_16LE,GBK);
         
        //获取密文中的公钥
         String duibi = gbk.substring(0,len);
                   
        //对比私钥:          
        for(int i=0;i<Skey.length();i++){
           
            int tt=Skey.charAt(i)-48;
            num=ChangeNum(tt);      
            pp=pp+num;
        }
        if(pp.equals(duibi)){
              
              MingWen = gbk.substring(len);              
        }                         
         return MingWen;
     }
     
     private int ChangeNum(int tmp){
       if(tmp==6){
           tmp=1;
       }   
       else if(tmp==3){
           tmp=2;
       }
       else if(tmp==9){
           tmp=3;
       }
       else if(tmp==1){
           tmp=4;
       }
       else if(tmp==8){
           tmp=5;
       }
       else if(tmp==0){
           tmp=6;
       }
       else if(tmp==5){
           tmp=7;
       }
       else if(tmp==2){
           tmp=8;
       }
       else if(tmp==4){
           tmp=9;
       }
       else if(tmp==7){
           tmp=0;
       }
       return tmp;
    }
     
    
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -