關於base64前端加密,後端解密

2021-08-10 18:52:09 字數 2463 閱讀 7636

公司做的系統是給某公司內網的系統。做了乙個滲透測試。提出一點漏洞,關於使用者名稱和密碼在傳輸中是用明文傳輸的,但後台接到後已經做了md5加密進行校驗而且還是內網,一般這個是沒問題的。但提出了漏洞就改唄,加個密。思路是前端加密,後端解密。

前端 

function submitform()
base64.js:
//base64加密 解密

/* //1.加密

var result = base.encode('125中文'); //--> "mti15lit5pah"

//2.解密

var result2 = base.decode(result); //--> '125中文'

*/~(function(root, factory) else if (typeof module === "object" && module.exports) else

}(this, function()

//public method for encoding

base64.prototype.encode = function (input) else if (isnan(chr3))

output = output +

this._keystr.charat(enc1) + this._keystr.charat(enc2) +

this._keystr.charat(enc3) + this._keystr.charat(enc4);

}return output;

}// public method for decoding

base64.prototype.decode = function (input)

if (enc4 != 64)

}output = this._utf8_decode(output);

return output;

}// private method for utf-8 encoding

base64.prototype._utf8_encode = function (string) else if((c > 127) && (c < 2048)) else

}return utftext;

}// private method for utf-8 decoding

base64.prototype._utf8_decode = function (utftext) else if((c > 191) && (c < 224)) else

}return string;

}var base = new base64();

return base;

}));

後端工具類:

package com.sasis.util;

import sun.misc.base64decoder;

import sun.misc.base64encoder;

public final class base64util

/*** 採用base64演算法對位元組陣列進行加密

* @param basebuff 原位元組陣列

* @return 加密後的字串

*/public static final string encode(byte basebuff)

/*** 字串解密,採用base64的演算法

* @param encoder 需要解密的字串

* @return 解密後的字串

*/public static final string decode(string encoder) catch (exception e) }}

後端處理:

string username1 = request.getparameter("j_username");

string password1 = request.getparameter("j_password");

log.info("使用者名稱:"+username1);

log.info("密碼:"+password1);

//後端解密

string username=base64util.decode(username1);

string password=base64util.decode(password1);

******dateformat sdf=new ******dateformat("yyyy-mm-dd hh:mm:ss");

string time=sdf.format(new date());

Base64加密解密

public class base64 對應asicc字元的位置 public static string base64encode string str c2 str i if i len c3 str i out base64encodechars c1 2 out base64encodech...

base64加密 例子

12349 50 51 31 32 33 00110001 00110010 00110011 001100 010011 001000 110011 00001100 00010011 00001000 00110011 12 19 8 51 mtiz base64編碼說明 base64編碼要求把...

Base64 加密 解密

1 原理 轉碼過程例子 3 8 4 6 記憶體1個字元佔8位 轉前 s 1 3 先轉成ascii 對應 115 49 51 2進製 01110011 00110001 00110011 6個一組 4組 011100110011000100110011 然後才有後面的 011100 110011 00...