亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? psiapp.java

?? 這個是自由下載的
?? JAVA
?? 第 1 頁 / 共 4 頁
字號:
// Decompiled by DJ v2.9.9.60 Copyright 2000 Atanas Neshkov  Date: 2004-4-7 14:50:25
// Home Page : http://members.fortunecity.com/neshkov/dj.html  - Check often for new version!
// Decompiler options: packimports(3)
// Source File Name:   PSIApp.java

package psic;

import java.io.*;
import java.util.*;

// Referenced classes of package psic:
//            ClientConf, PSIJni, PKI_DATA, LDAPProcess,
//            XMLParse, PA_CERTINFO, ATTR_CERTINFO

public class PSIApp {
  
  public PSIApp() {
    conf = new ClientConf();
    CurStatus = -18000;
    try {
      keyLabel = conf.getParamValue("KeyLabel");	
      psi = new PSIJni();
      CurStatus = psi.pkiInit();
      if (CurStatus != 0)
        CurStatus = -18000;
    }
    catch (Exception err) {
      CurStatus = -18000;
    }
  }

  public boolean release() {
    int flag = -18000;
    flag = psi.pkiEnd();
    CurStatus = flag;
    return flag == 0;
  }

  public int GetCurStatus() {
    return CurStatus;
  }

  public String AdvBase64Encode(byte i_inData[]) {
    String outStr = "";
    int flag = -18000;
    try {
      PKI_DATA inData = new PKI_DATA();
      PKI_DATA outData = new PKI_DATA();
      inData.setSize(i_inData.length);
      inData.setValue(i_inData);
      flag = psi.pkiBase64Encode(inData, outData);
      if (flag == 0)
        outStr = outData.getValueString();
      CurStatus = flag;
    }
    catch (Exception err) {
      CurStatus = -18000;
    }
    return outStr;
  }

  public byte[] AdvBase64Decode(String i_inData) {
    int flag = -18000;
    PKI_DATA inData = new PKI_DATA();
    PKI_DATA outData = new PKI_DATA();
    byte b_out[];
    try {
      inData.setSize(i_inData.length());
      inData.setValueString(i_inData);
      flag = psi.pkiBase64Decode(inData, outData);
      CurStatus = flag;
    }
    catch (Exception err) {
      CurStatus = -18000;
      b_out = new byte[0];
    }
    if (flag == 0)
      b_out = outData.getValue();
    else
      b_out = new byte[0];
    return b_out;
  }

  public String AdvGetCert(int certType) {
    String outStr = "";
    int flag = -18000;
    try {
      PKI_DATA outData = new PKI_DATA();
      PKI_DATA encData = new PKI_DATA();
      switch (certType) {
        case 1: // '\001'

//                flag = psi.pkiReadLabel(keyLabel + "_ENC", 1, outData);
          flag = psi.pkiExportCert(keyLabel , 1, 1, outData);
          break;

        case 2: // '\002'

//                flag = psi.pkiReadLabel(keyLabel + "_SIG", 1, outData);
          flag = psi.pkiExportCert(keyLabel , 1, 2, outData);          
          break;

        default:
          flag = -1;
          break;
      }
      if (flag == 0)
        flag = psi.pkiBase64Encode(outData, encData);
      if (flag == 0)
        outStr = encData.getValueString();
      CurStatus = flag;
    }
    catch (Exception err) {
      CurStatus = -18000;
    }
    return outStr;
  }

  public boolean AdvCheckCert(String i_inCert) {  	
    byte b_nil[] = new byte[0];    
    PKI_DATA i_cacer = new PKI_DATA(b_nil, 0);
    PKI_DATA i_certsChain = new PKI_DATA(b_nil, 0);
    PKI_DATA i_cacrl = new PKI_DATA(b_nil, 0);
    int flag = -18000;
    try {
      i_cacer = new PKI_DATA(   this.read("/usr/local/Config/ca.cer")  );
      i_cacrl = new PKI_DATA(    this.read("/usr/local/Config/ca.crl")   );
      PKI_DATA inCert = new PKI_DATA();
      PKI_DATA decCert = new PKI_DATA();
      inCert.setSize(i_inCert.length());
      inCert.setValueString(i_inCert);
      flag = psi.pkiBase64Decode(inCert, decCert);
      if (flag == 0)
        flag = psi.pkiCheckCert(decCert, i_cacer, i_certsChain, i_cacrl);
      CurStatus = flag;
    }
    catch (Exception err) {
      CurStatus = -18000;
    }
    return  (flag==0) ;
  }

  public String AdvGetCertInfo(String i_inData) {
    PKI_DATA inCert = new PKI_DATA();
    PKI_DATA outCert = new PKI_DATA();
    String outData = "";
    try {
      inCert.setSize(i_inData.length());
      inCert.setValueString(i_inData);
      int flag = psi.pkiBase64Decode(inCert, outCert);
      PKI_DATA o_certInfo = new PKI_DATA();
      if (flag == 0)
        flag = psi.pkiGetXMLCertInfo(outCert, o_certInfo);
      if (flag == 0)
        outData = o_certInfo.getValueString();
      CurStatus = flag;
    }
    catch (Exception err) {
      CurStatus = -18000;
    }
    return outData;
  }

  public String AdvSealEnvelope(String i_encCert, int i_symmAlgo, byte i_inData[]) {
    String outStr = "";
    int flag = ABERROR;
    try {
      if (i_symmAlgo == 0) {
        String ownerCert = AdvGetCert(1);
        if (ownerCert.length() <= 0) {
          CurStatus = ABERROR;
          return outStr;
        }

        int algo = AdvGetAlgoFromPA(ownerCert, i_encCert, 2, -1);
        if (! (algo <= 0)) {
          i_symmAlgo = algo;
        }
      }

      PKI_DATA inCert = new PKI_DATA();
      PKI_DATA outCert = new PKI_DATA();

      inCert.setSize(i_encCert.length());
      inCert.setValueString(i_encCert);

      flag = psi.pkiBase64Decode(inCert, outCert);

      PKI_DATA inData = new PKI_DATA();
      inData.setSize(i_inData.length);
      inData.setValue(i_inData);

      PKI_DATA outData = new PKI_DATA();
      PKI_DATA encData = new PKI_DATA();

      if (flag == 0)
        flag = psi.pkiSealEnvelope(outCert, i_symmAlgo, inData, outData);

      if (flag == 0)
        flag = psi.pkiBase64Encode(outData, encData);

      if (flag == 0)
        outStr = encData.getValueString();

      CurStatus = flag;
    }
    catch (Exception err) {
      CurStatus = ABERROR;
    }

    return outStr;
  }

  public boolean fAdvSealEnvelope(String i_encCert, int i_symmAlgo,
                                  String i_inFile, String i_outFile) {
    boolean retv = false;
    int flag = -18000;
    byte b_readData[] = null;
    if (i_inFile == null || i_inFile.length() <= 0) {
      CurStatus = -18500;
      return retv;
    }
    if (i_outFile == null || i_outFile.length() <= 0) {
      CurStatus = -18501;
      return retv;
    }
    try {
      PKI_DATA inCert = new PKI_DATA();
      PKI_DATA outCert = new PKI_DATA();
      inCert.setSize(i_encCert.length());
      inCert.setValueString(i_encCert);
      flag = psi.pkiBase64Decode(inCert, outCert);
      if (flag == 0)
        b_readData = read(i_inFile);
      if (CurStatus == 0) {
        PKI_DATA inData = new PKI_DATA();
        inData.setSize(b_readData.length);
        inData.setValue(b_readData);
        PKI_DATA outData = new PKI_DATA();
        if (flag == 0)
          flag = psi.pkiSealEnvelope(outCert, i_symmAlgo, inData, outData);
        if (flag == 0)
          write(outData.getValue(), i_outFile);
        else
          CurStatus = flag;
      }
    }
    catch (Exception err) {
      CurStatus = -18000;
    }
    if (CurStatus == 0)
      retv = true;
    else
      retv = false;
    return retv;
  }

  public String AdvSealEnvelopeEx(String i_encCert, int i_encCertNum,
                                  int i_symmAlgo, byte i_inData[]) {
    String outStr = "";
    int flag = ABERROR;
    try {
      StringTokenizer st = new StringTokenizer(i_encCert, "|", false);
      int num = st.countTokens();

      if (num != i_encCertNum) {
        CurStatus = ENCCERT_NUM_ERROR;
        return outStr;
      }

      PKI_DATA[] inCert = new PKI_DATA[i_encCertNum];
      for (int j = 0; j < i_encCertNum; j++)
        inCert[j] = new PKI_DATA();

      int i = 0;

      while (st.hasMoreTokens()) {
        String str = st.nextToken().trim();
        PKI_DATA temp = new PKI_DATA();
        temp.setSize(str.length());
        temp.setValueString(str);

        flag = psi.pkiBase64Decode(temp, inCert[i]);
        if (flag == 0)
          i++;
      }

      PKI_DATA inData = new PKI_DATA();
      inData.setSize(i_inData.length);
      inData.setValue(i_inData);

      PKI_DATA outData = new PKI_DATA();
      PKI_DATA encData = new PKI_DATA();

      //去PA取策略,但是只由多張證書的第一張決定對稱算法(不太合理)
      if (i_symmAlgo == 0) {
        String ownerCert = AdvGetCert(1);
        if (ownerCert.length() <= 0) {
          CurStatus = ABERROR;
          return outStr;
        }
        String i_otherCert = AdvBase64Encode(inCert[0].getValue());
        int algo = AdvGetAlgoFromPA(ownerCert, i_otherCert, 2, -1);
        if (! (algo <= 0)) {
          i_symmAlgo = algo;
        }
      }

      flag = psi.pkiSealEnvelopeEx(inCert, i_encCertNum, i_symmAlgo, inData,
                                   outData);

      if (flag == 0)
        flag = psi.pkiBase64Encode(outData, encData);

      if (flag == 0)
        outStr = encData.getValueString();

      CurStatus = flag;
    }
    catch (Exception err) {
      CurStatus = ABERROR;
    }

    return outStr;

  }

  public boolean fAdvSealEnvelopeEx(String i_encCert, int i_encCertNum,
                                    int i_symmAlgo, String i_inFile,
                                    String i_outFile) {
    boolean retv = false;
    int flag;
    byte b_readData[];
    retv = false;
    flag = -18000;
    b_readData = null;
    if (i_inFile == null || i_inFile.length() <= 0) {
      CurStatus = -18500;
      return retv;
    }
    if (i_outFile == null || i_outFile.length() <= 0) {
      CurStatus = -18501;
      return retv;
    }
    StringTokenizer st;
    st = new StringTokenizer(i_encCert, "|");
    int num = st.countTokens();
    if (num != i_encCertNum){
      CurStatus = -18001;
      return retv;
    }
    try {
      PKI_DATA inCert[] = new PKI_DATA[i_encCertNum];
      for (int j = 0; j < i_encCertNum; j++)
        inCert[j] = new PKI_DATA();

      int i = 0;
      while (st.hasMoreTokens()) {
        String str = st.nextToken();
        PKI_DATA temp = new PKI_DATA();
        temp.setSize(str.length());
        temp.setValueString(str);
        flag = psi.pkiBase64Decode(temp, inCert[i]);
        if (flag == 0)
          i++;
      }
      if (flag == 0)
        b_readData = read(i_inFile);
      if (CurStatus == 0) {
        PKI_DATA inData = new PKI_DATA();
        inData.setSize(b_readData.length);
        inData.setValue(b_readData);
        PKI_DATA outData = new PKI_DATA();
        if (flag == 0)
          flag = psi.pkiSealEnvelopeEx(inCert, i_encCertNum, i_symmAlgo, inData,
                                       outData);
        if (flag == 0)
          write(outData.getValue(), i_outFile);
        else
          CurStatus = flag;
      }
    }
    catch (Exception err) {
      CurStatus = -18000;
    }
    if (CurStatus == 0)
      retv = true;
    else
      retv = false;
    return retv;
  }

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
国产亚洲欧美在线| 黄页视频在线91| 精品一区二区三区影院在线午夜| 国产在线播精品第三| 欧美日韩国产小视频在线观看| 久久久久高清精品| 免费看欧美女人艹b| 日本二三区不卡| 国产嫩草影院久久久久| 麻豆一区二区在线| 欧美视频在线播放| 中文字幕一区视频| 成人黄色大片在线观看| 久久综合色婷婷| 蜜桃精品在线观看| 欧美三片在线视频观看| 亚洲情趣在线观看| 成人av电影免费在线播放| 精品久久久久99| 久久精品噜噜噜成人av农村| 9191成人精品久久| 亚洲午夜免费视频| 欧美亚一区二区| 亚洲精品日产精品乱码不卡| 成人久久18免费网站麻豆| 日本一区二区三区在线观看| 韩国精品主播一区二区在线观看| 日韩丝袜情趣美女图片| 另类小说一区二区三区| 日韩欧美在线网站| 精品一区二区在线播放| 精品久久久久久综合日本欧美| 另类小说色综合网站| 精品久久久久久久久久久久久久久久久 | 精品亚洲国内自在自线福利| 欧美一级精品大片| 日韩不卡一区二区三区| 日韩视频一区二区三区| 美女在线视频一区| 久久久久久久综合| 成人亚洲一区二区一| 一区在线中文字幕| 欧美吻胸吃奶大尺度电影| 亚洲成人av资源| 91精品婷婷国产综合久久竹菊| 日韩不卡一区二区| 精品国产3级a| 99久久99久久免费精品蜜臀| 亚洲制服丝袜av| 日韩欧美视频在线| 国产精品一区二区免费不卡| 中文在线免费一区三区高中清不卡| 成人福利在线看| 一区二区三区毛片| 日韩免费看的电影| 成人国产精品免费观看动漫| 一二三区精品视频| 日韩欧美综合在线| 波多野结衣中文字幕一区| 亚洲成av人片在线观看| 久久综合久久综合久久| k8久久久一区二区三区| 日本欧美加勒比视频| 国产欧美日韩中文久久| 欧美日韩久久不卡| 国产91精品免费| 丝袜美腿亚洲色图| 国产精品色在线观看| 欧美日韩一区三区| 国产精品1024| 丝袜美腿亚洲色图| 中文字幕中文字幕在线一区| 这里只有精品99re| 91网上在线视频| 国内久久婷婷综合| 亚洲成人动漫在线免费观看| 国产日本欧洲亚洲| 777亚洲妇女| 色偷偷成人一区二区三区91| 久久成人精品无人区| 一区二区三区视频在线观看| 久久精品欧美一区二区三区麻豆| 欧美美女黄视频| 91首页免费视频| 国产精品自拍毛片| 日韩激情一二三区| 亚洲欧美激情视频在线观看一区二区三区 | 久久这里只有精品视频网| 欧美亚洲国产一区二区三区va| 成人综合日日夜夜| 精品综合久久久久久8888| 亚洲国产成人av网| 亚洲精品国产a| 国产欧美1区2区3区| 精品国产3级a| 日韩欧美国产小视频| 欧美日韩视频在线观看一区二区三区| 高清不卡一区二区| 国产精品系列在线播放| 久久精品噜噜噜成人88aⅴ| 亚洲第一福利视频在线| 一区二区三区四区高清精品免费观看 | 4hu四虎永久在线影院成人| 91精品1区2区| 91蜜桃网址入口| 成人一区二区三区在线观看| 国产精品影视在线观看| 国产一区二区三区久久久| 久久国产精品99久久人人澡| 日本不卡一区二区三区高清视频| 午夜电影一区二区三区| 丝袜a∨在线一区二区三区不卡| 亚洲一区二区中文在线| 一区二区欧美国产| 亚洲一区欧美一区| 日日摸夜夜添夜夜添精品视频 | 日本v片在线高清不卡在线观看| 亚洲福利视频一区| 天天影视网天天综合色在线播放| 亚洲成a人片在线不卡一二三区| 亚洲成人黄色影院| 秋霞影院一区二区| 麻豆精品精品国产自在97香蕉| 韩国欧美国产一区| caoporn国产一区二区| 成人av资源站| 欧美少妇xxx| 日韩欧美一卡二卡| 国产亚洲一区二区三区在线观看| 欧美国产日韩精品免费观看| 国产精品久久久久久户外露出 | 一本久久综合亚洲鲁鲁五月天 | 亚洲成av人影院| 日本成人超碰在线观看| 国产精品99久久久久久宅男| 粉嫩高潮美女一区二区三区| 色综合天天综合网天天狠天天| 在线一区二区观看| 日韩一区二区电影| 久久久91精品国产一区二区精品 | 欧美日本在线视频| 日韩一区二区三区在线观看| 久久无码av三级| 日韩码欧中文字| 欧美a级一区二区| 成人a级免费电影| 欧美一卡在线观看| 国产精品国产三级国产普通话99 | 欧美日韩你懂的| 国产亚洲欧美中文| 亚洲一级二级在线| 国产精品69久久久久水密桃| 日本韩国精品在线| 久久午夜电影网| 亚洲午夜精品在线| 国产在线一区观看| 91久久线看在观草草青青| 亚洲精品在线三区| 亚洲国产一区二区a毛片| 国产一区二区网址| 欧美精品第1页| 成人免费小视频| 国产美女在线观看一区| 欧美日韩激情在线| **网站欧美大片在线观看| 美女一区二区在线观看| 91福利小视频| 日本一区二区三区久久久久久久久不 | 欧美日韩一区二区三区不卡| 久久久电影一区二区三区| 亚洲chinese男男1069| 99久久婷婷国产精品综合| 欧美精品一区二区三区蜜桃视频| 亚洲综合视频网| 91小视频免费观看| 欧美—级在线免费片| 韩国v欧美v日本v亚洲v| 国产精品午夜久久| 丝袜美腿成人在线| 在线观看日产精品| 日韩一区欧美小说| 成人在线综合网| 欧美国产精品专区| 国产一区二区调教| 2023国产一二三区日本精品2022| 亚洲一区二区三区中文字幕| 99re视频这里只有精品| 欧美国产在线观看| 国产精品99久久久久| 精品福利av导航| 麻豆国产欧美一区二区三区| 91精品国产综合久久精品图片 | 久久国产日韩欧美精品| 欧美另类变人与禽xxxxx| 亚洲码国产岛国毛片在线| 97久久超碰国产精品电影| 综合激情网...| 色偷偷久久一区二区三区| 一区二区三区日韩欧美精品 | 成人小视频在线|