刚碰到一个PB加密后的文件,要求用java解密出来,但是就是实现不出来PB的算法:
integer ilen
integer ifor
string outstr
ilen = len(instr)for ifor = 1 to ilen
outstr = outstr + char(mod(asc(mid(instr,ifor,1)) + 256 - 20,256)) //主要加密部分,对单个字符进行加密
nextreturn outstr加密后的数据为:
箼都鯙访娇辊"鯚樁绩浂疾┆濞酋祹脺貂罇!?貂 #??%#!?? ?%#!? ?%%?貂鯚樁绩浂疾┆濞酋酲扦?
箼都鯛撷タ辊#鯚樁绩浂疾┆濞酋祹脺貂罇!?貂 #??%#!?? ?%#!? ?%%貂貂煒都都博ㄇ貂ㄇぽ
箼都鯛撷タ辊#?醯幟滜趵?!?貂 #? ?%#!?? ?%#!? ?%%貂??貂ㄇぽ
箼都鯛撷タ辊#鯚樁减祹脺貂罇!?貂 #? ?%#!?? ?%#!? ?%%貂?鯚樁减酲扦?
箼都鯛撷タ辊#?醯幟滜趵?!?貂 #??%#!?? ?%#!? ?%%貂??貂ㄇぽ
箼都鯛撷タ辊#?醯幟滜趵?!?貂 #??%#!?? ?%#!? ?%%貂??貂ㄇぽ
箼都鯛撷タ辊#酲浂减祹脺貂罇!?貂 #??%#!?? ?%#!? ?%%貂?酲浂减酲扦?
箼都酾數婵辊$鯚樁绩浂疾┆濞酋晶á箿脺貂罇!甸?貂 #??%#!?? ?%#!? ?%%貂貂煒都都博ㄇ貂ㄇぽ
箼都酾數婵辊$?蹙Ж⒐溍滜趵?!甸?貂 #??%#!?? ?%#!? ?%%貂??貂ㄇぽ
箼都酾數婵辊$酲浂减晶á箿脺貂罇!甸?貂 #??%#!?? ?%#!? ?%%貂?酲浂减酲扦?各位高人,小弟在线急等,帮个大忙吧,兄弟分少,凑合着接点吧
integer ilen
integer ifor
string outstr
ilen = len(instr)for ifor = 1 to ilen
outstr = outstr + char(mod(asc(mid(instr,ifor,1)) + 256 - 20,256)) //主要加密部分,对单个字符进行加密
nextreturn outstr加密后的数据为:
箼都鯙访娇辊"鯚樁绩浂疾┆濞酋祹脺貂罇!?貂 #??%#!?? ?%#!? ?%%?貂鯚樁绩浂疾┆濞酋酲扦?
箼都鯛撷タ辊#鯚樁绩浂疾┆濞酋祹脺貂罇!?貂 #??%#!?? ?%#!? ?%%貂貂煒都都博ㄇ貂ㄇぽ
箼都鯛撷タ辊#?醯幟滜趵?!?貂 #? ?%#!?? ?%#!? ?%%貂??貂ㄇぽ
箼都鯛撷タ辊#鯚樁减祹脺貂罇!?貂 #? ?%#!?? ?%#!? ?%%貂?鯚樁减酲扦?
箼都鯛撷タ辊#?醯幟滜趵?!?貂 #??%#!?? ?%#!? ?%%貂??貂ㄇぽ
箼都鯛撷タ辊#?醯幟滜趵?!?貂 #??%#!?? ?%#!? ?%%貂??貂ㄇぽ
箼都鯛撷タ辊#酲浂减祹脺貂罇!?貂 #??%#!?? ?%#!? ?%%貂?酲浂减酲扦?
箼都酾數婵辊$鯚樁绩浂疾┆濞酋晶á箿脺貂罇!甸?貂 #??%#!?? ?%#!? ?%%貂貂煒都都博ㄇ貂ㄇぽ
箼都酾數婵辊$?蹙Ж⒐溍滜趵?!甸?貂 #??%#!?? ?%#!? ?%%貂??貂ㄇぽ
箼都酾數婵辊$酲浂减晶á箿脺貂罇!甸?貂 #??%#!?? ?%#!? ?%%貂?酲浂减酲扦?各位高人,小弟在线急等,帮个大忙吧,兄弟分少,凑合着接点吧
public class Test{
public static void main(String[] args) {
//System.out.println(countBits(-1));
System.out.println(handleString("箼都鯙访娇辊\"鯚樁绩浂疾┆濞酋祹脺貂罇!?貂 #??%#!?? ?%#!? ?%%?貂鯚樁绩浂疾┆濞酋酲扦? "));
}
public static String handleString(String str){
byte[] bys=str.getBytes();
for(int i=0;i<bys.length;i++){
bys[i]=(byte)((bys[i]+20)%256);
}
return new String(bys);
}
}我只做了第一行,不知道为什么最后部分的内容不太对:
F:\java>java Test
铜陵市 菜籽油 1002060101 超市集市平均价 散装 元/500克S2.00 340700S00S00
90705SS4S0090705S4S99S.00 超市集市平均价 价窼4
90705SS4S0090705S4S99 超市集市平均价 价格4!