導航:首頁 > 文檔加密 > jdk資料庫加密

jdk資料庫加密

發布時間:2022-06-13 02:53:39

A. 用java做的登錄框 怎麼給密碼加密

密碼不是保存在cookie里么 如果非要資料庫伺服器記住密碼 那就得用上面的朋友說的MD5加密啦 雖然吧可逆 不過也是可以破的

B. jdk的des加密演算法報錯

這個問題我曾經也遇到過,具體原因不太清楚,好像是系統並發量達到一定的數量,Cipher來不及初始化就會報錯,至於為什麼會出現二次加密就不清楚了。具體解決方法也比較簡單,原程序中的做法是,每次解加解密,都創建一個Cipher對象,現改為,有幾個密鑰就創建幾個靜態的Cipher對象,放在hashmap中,問題解決。附件有我修改後的加密演算法代碼。

C. jdk8的加密jdk11不支持

JDK8的加密策略存在限製版本和無限製版本,越來越多的第三方工具只支持JDK8。
可以使用AES加解密,或者下載官方JCE無限制強度加密策略文件,覆蓋即可。
在將應用程序遷移到JDK11之前,應熟悉從JDK8遷移到以後的JDK版本中描述的JDK8和更高版本之間的差異。

D. 怎麼用java代碼把imei和uin取得微信資料庫加密方法密碼

這還真是第一次寫java程序。其實,一直是對java有偏見的。無奈,從BlackFeather那裡知道了微信資料庫加密方法,以及密碼的獲取方式。
發現是基於hashmap的,本來吧,還是想用C或者其他語言來實現對hashmap的讀取,可後來都失敗了。要麼就是太復雜了。於是,還是硬著頭皮去把jdk裝好,然後~~~開始各種網路。
先用反編譯出來的代碼搭了個大體的輪廓。然後,自己各種加代碼(考慮到一些問題,還是只貼出一些關鍵代碼吧):
加密方式是:hash(imei&uin).substring(0,7)
public static void main(String[] args)
{
try
{
ObjectInputStream in = new ObjectInputStream(new FileInputStream(args[0]));
Object DL = in.readObject();
HashMap hashWithOutFormat = (HashMap)DL;
ObjectInputStream in1 = new ObjectInputStream(new FileInputStream(args[1]));
Object DJ = in1.readObject();
HashMap hashWithOutFormat1 = (HashMap)DJ;
String s = String.valueOf(hashWithOutFormat1.get(Integer.valueOf(258))); //取IMEI
s=s+hashWithOutFormat.get(Integer.valueOf(1));//
s=encode(s);//hash
System.out.println("The Key is : "+s.substring(0,7));
in.close();
in1.close();
}
}

E. 用java實現對資料庫文件的加密

自己編寫一個加密演算法,或者在網上找一個MD5的加密演算法,把密碼加密後再存入資料庫,取的時候解密下就可以了

F. 在jdk6中RSA如何加密文件

在jdk6中RSA如何加密文件..
RSA是分組加密的,不能使用CipherInputStream或者CipherOutputStream。
藉助「bouncycastle」 實現。

加密
in = new FileInputStream(inPath);
out = new FileOutputStream(outPath);

int size = in.available();
byte[] encryptByte = new byte[size];
in.read(encryptByte);

int blockSize = cipher.getBlockSize();
int outputBlockSize = cipher.getOutputSize(encryptByte.length);
int leavedSize = encryptByte.length % blockSize;
int blocksNum = leavedSize == 0 ? encryptByte.length / blockSize
: encryptByte.length / blockSize + 1;
byte[] cipherData = new byte[blocksNum * outputBlockSize];
for (int i = 0; i < blocksNum; i++) {
System.out.println(i);
if ((encryptByte.length - i * blockSize) > blockSize) {
cipher.doFinal(encryptByte, i * blockSize, blockSize,
cipherData, i * outputBlockSize);
} else {
cipher.doFinal(encryptByte, i * blockSize,
encryptByte.length - i * blockSize, cipherData, i
* outputBlockSize);
}
out.write(cipherData);
}

解密:
in = new FileInputStream(inPath);
out = new FileOutputStream(outPath);
int size = in.available();
byte[] encryptByte = new byte[size];
in.read(encryptByte);
int blockSize = cipher.getBlockSize();
int j = 0;
while ((encryptByte.length - j * blockSize) > 0) {
byte[] tmp = cipher.doFinal(encryptByte, j * blockSize,
blockSize);
out.write(tmp);
j++;
}

G. jce-jdk13-139和bcprov-jdk15-139支持的加密怎麼調用

package Encrypt;
import java.security.*;
import javax.crypto.*;
import sun.misc.*;
/**
* 使用DES加密與解密,可對byte[],String類型進行加密與解密
* 密文可使用String,byte[]存儲.
* 方法:
* void getKey(String strKey)從strKey的字條生成一個Key
* String getEncString(String strMing)對strMing進行加密,返回String密文
* String getDesString(String strMi)對strMin進行解密,返回String明文
* byte[] getEncCode(byte[] byteS)byte[]型的加密
* byte[] getDesCode(byte[] byteD)byte[]型的解密
*/
public class Encrypt{
private Key key;
private byte[] byteMi = null;
private byte[] byteMing = null;
private String strMi= "";
private String strM= "";
// 根據參數生成KEY
public void setKey(String strKey){
try{
KeyGenerator _generator = KeyGenerator.getInstance("DES");
_generator.init(new SecureRandom(strKey.getBytes()));
this.key = _generator.generateKey();
_generator=null;
}
catch(Exception e){
e.printStackTrace();
}

}
// 加密String明文輸入,String密文輸出
public void setEncString(String strMing){
BASE64Encoder base64en = new BASE64Encoder();
try {
this.byteMing = strMing.getBytes("UTF8");
this.byteMi = this.getEncCode(this.byteMing);
this.strMi = base64en.encode(this.byteMi);
}
catch(Exception e)
{
e.printStackTrace();
}
finally
{

this.byteMing = null;
this.byteMi = null;
}
}
//加密以byte[]明文輸入,byte[]密文輸出
private byte[] getEncCode(byte[] byteS){
byte[] byteFina = null;
Cipher cipher;
try
{
cipher = Cipher.getInstance("DES");
cipher.init(Cipher.ENCRYPT_MODE,key);
byteFina = cipher.doFinal(byteS);
}
catch(Exception e)
{
e.printStackTrace();
}
finally
{
cipher = null;
}

return byteFina;
}
// 解密:以String密文輸入,String明文輸出
public void setDesString(String strMi){
BASE64Decoder base64De = new BASE64Decoder();
try
{
this.byteMi = base64De.decodeBuffer(strMi);
this.byteMing = this.getDesCode(byteMi);
this.strM = new String(byteMing,"UTF8");
}
catch(Exception e)
{
e.printStackTrace();
}
finally
{
base64De = null;
byteMing = null;
byteMi = null;
}

}
// 解密以byte[]密文輸入,以byte[]明文輸出
private byte[] getDesCode(byte[] byteD){
Cipher cipher;
byte[] byteFina=null;
try{
cipher = Cipher.getInstance("DES");
cipher.init(Cipher.DECRYPT_MODE,key);
byteFina = cipher.doFinal(byteD);
}
catch(Exception e)
{
e.printStackTrace();
}
finally
{
cipher=null;
}
return byteFina;
}
//返回加密後的密文strMi
public String getStrMi()
{
return strMi;
}
//返回解密後的明文
public String getStrM()
{
return strM;
}
}
*注意:因為我用的時候是作為後台的BEAN來調用的,所以沒有寫main函數,也就不能直接運行了。必須加一個main()函數才能做為一個完成的JAVA程序使用。一個很簡單的 main()函數就ok了,不用我寫在這里了吧?呵呵!

在WEB前台調用這個BEAN文件時的語句:
<jsp:useBean id="abc" scope="page" class="oaweb.Encrypt" />
//id="abc" 用來初始化一個對象
<%
//明文加密:
String key = 「06」; //初始化密鑰。
abc.setKey(key); //調用set函數設置密鑰。
abc.setEncString(re[i][j]);//將要加密的明文傳送給Encrypt.java進行加密計算。
String Mi=abc.getStrMi(); //調用get函數獲取加密後密文。
%>
//變數Mi就是密文.
<%
//密文解密:
abc. setDesString(String Mi); //將要解密的密文傳送給Encrypt.java進行解密計算。
String M=abc. String getStrM(); //調用get函數獲取解密後明文。
%>

H. 求教Java web項目一般怎樣做代碼混淆或加密

一、java web項目混淆
proguard4.8工具,說是支持war的,可混淆過後少了classes目錄了,自然成功不了。網上搜的過程不詳說了,最後找著--「J2EE-web工程ProGuard代碼混淆07_28」,網址:http://wenku..com/link?url=CxToEqg5QWbz2_--cVqaImGKnLLLTO45u6uD_
根據提示一步步完成。
把web項目打成jar包後用proguard進行混淆,然後把混淆過後的class目錄替換發布包war中的對應目錄,啟動運行是正常的。
主要注意利用proguard生成xxx.pro文件,然後手動加工-keep class WebRoot.WEB-INFO.lib.* 等項目中不需要混淆的包和類。
二、java web項目打成.exe
沒找到免費的,這搜到個收費的--Jinstall,試了下功能挺好,
可以加密、集成jdk、tomcat,如果資料庫是mysql也集成,其他資料庫的話要設置資料庫的url.

I. java ibm jdk rsa 怎麼 加密

android和java webservice RSA處理的不同

1.andorid機器上生成的(密鑰對由伺服器在windows xp下生成並將公鑰發給客戶端保存)密碼無法在伺服器通過私鑰解密。

2.為了測試,在伺服器本地加解密正常,另外,在android上加解密也正常,但是在伺服器中加密(使用相同公鑰)後的密碼同樣無法在android系統解密(使用相同私鑰)。
3.由於對RSA加密演算法不了解,而且對Java RSA的加密過程也不清楚、谷歌一番,才了解到可能是加密過程中的填充字元長度不同,這跟加解密時指定的RSA演算法有關系。
4. 比如,在A機中使用標准RSA通過公鑰加密,然後在B系統中使用「RSA/ECB/NoPadding」使用私鑰解密,結果可以解密,但是會發現解密後的原文前面帶有很多特殊字元,這就是在加密前填充的空字元;如果在B系統中仍然使用標準的RSA演算法解密,這在相同類型的JDK虛擬機環境下當然是完全一樣的,關鍵是android系統使用的虛擬機(dalvik)跟SUN標准JDK是有所區別的,其中他們默認的RSA實現就不同。
5.更形象一點,在加密的時候加密的原文「abc」,直接使用「abc」.getBytes()方法獲得的bytes長度可能只有3,但是系統卻先把它放到一個512位的byte數組里,new byte[512],再進行加密。但是解密的時候使用的是「加密後的密碼」.getBytes()來解密,解密後的原文自然就是512長度的數據,即是在「abc」之外另外填充了500多位元組的其他空字元。

J. 為什麼JDK默認不支持AES 256位加密

aes加密其實是一種對稱加密的演算法,256位的話,其實就是計算的復雜度比128位增加了很多而已,因為我們一般的解破辦法都是採用字典或者是遍歷的方法來解破,所以計算復雜度增加就直接增加了計算的時間。如果這個時間很大的話,就認為不可能解破了,但是現在計算能力一直在不斷的提升和爆發中,所以原來以為很大的計算量,可能很快就變成很小的了。

閱讀全文

與jdk資料庫加密相關的資料

熱點內容
單片機6502 瀏覽:763
自助洗車有什麼app 瀏覽:935
程序員離職率多少 瀏覽:322
程序員那麼可愛電視劇今天沒更新 瀏覽:337
我的世界地形演算法 瀏覽:343
台灣dns的伺服器地址雲空間 瀏覽:288
音樂噴泉軟體要什麼加密狗 瀏覽:501
androidhttpmime 瀏覽:774
威科夫操盤法pdf 瀏覽:981
演算法可以用圖表表示 瀏覽:949
山西太原php 瀏覽:274
常用cmd網路命令 瀏覽:677
hashmap7源碼分析 瀏覽:899
搜索引擎原理技術與系統pdf 瀏覽:362
運動估計演算法python 瀏覽:861
java正則1 瀏覽:539
redhatlinux最新 瀏覽:182
python字典編程詞彙 瀏覽:147
微信和伺服器如何通訊 瀏覽:13
百家號伺服器配置有什麼用 瀏覽:601