都看不到的,
10年積累的網(wǎng)站設(shè)計(jì)制作、做網(wǎng)站經(jīng)驗(yàn),可以快速應(yīng)對客戶對網(wǎng)站的新想法和需求。提供各種問題對應(yīng)的解決方案。讓選擇我們的客戶得到更好、更有力的網(wǎng)絡(luò)服務(wù)。我雖然不認(rèn)識你,你也不認(rèn)識我。但先網(wǎng)站設(shè)計(jì)后付款的網(wǎng)站建設(shè)流程,更有汨羅免費(fèi)網(wǎng)站建設(shè)讓你可以放心的選擇與我們合作。
java程序分為:
編輯
編譯
解釋
運(yùn)行
運(yùn)行的都是.class字節(jié)碼文件,看不到源文件的,你不用操心
采納即可
可以使用Virbox Protector Standalone 加殼工具對java的class類進(jìn)行加密,支持各種開發(fā)語言的程序加密??煞乐勾a反編譯,更安全,更方便
產(chǎn)品簡介
Virbox Protector Standalone提供了強(qiáng)大的代碼虛擬化、高級混淆與智能壓縮技術(shù),保護(hù)您的程序免受逆向工程和非法修改。
Virbox Protector Standalone 將被保護(hù)的程序代碼轉(zhuǎn)換為虛擬機(jī)代碼,程序運(yùn)行時(shí),虛擬機(jī)將模擬程序執(zhí)行,進(jìn)入和離開虛擬機(jī)都有高級代碼混淆。虛擬機(jī)配合代碼混淆可以達(dá)到很好的保護(hù)效果,尤其是開發(fā)者的私有邏輯。高級混淆利用花指令和代碼非等價(jià)變形等技術(shù),將程序的代碼,轉(zhuǎn)換成一種功能上等價(jià),但是難于閱讀和理解的代碼,可充分干擾靜態(tài)分析。應(yīng)用程序的解壓縮含有動態(tài)密碼,讓一切自動脫殼工具失效,有效的阻止.Net、PE 程序的直接反編譯。
特點(diǎn)
多種加密策略:代碼虛擬化、高級混淆、智能壓縮
性能分析:智能分析引擎,一鍵分析各個(gè)函數(shù)模塊調(diào)用的次數(shù)
支持多種開發(fā)語言:多種開發(fā)語言加殼支持
源碼級保護(hù):保護(hù)到匯編級別,c#保護(hù)IL級別
免費(fèi)更新:免費(fèi)版本升級
只給編譯后的.jar文件,不給.java文件
不過要說明的是,java因?yàn)槭亲止?jié)碼,所以沒有辦法防止被反編譯。
最多也就是做一下代碼混淆,比如把方法或變量名改成無意義的名稱,或者加一些完全無用的代碼進(jìn)去,讓惡意攻擊的人難以看懂
基本的單向加密算法:
BASE64 嚴(yán)格地說,屬于編碼格式,而非加密算法
MD5(Message Digest algorithm 5,信息摘要算法)
SHA(Secure Hash Algorithm,安全散列算法)
HMAC(Hash Message Authentication Code,散列消息鑒別碼)
復(fù)雜的對稱加密(DES、PBE)、非對稱加密算法:
DES(Data Encryption Standard,數(shù)據(jù)加密算法)
PBE(Password-based encryption,基于密碼驗(yàn)證)
RSA(算法的名字以發(fā)明者的名字命名:Ron Rivest, AdiShamir 和Leonard Adleman)
DH(Diffie-Hellman算法,密鑰一致協(xié)議)
DSA(Digital Signature Algorithm,數(shù)字簽名)
ECC(Elliptic Curves Cryptography,橢圓曲線密碼編碼學(xué))
代碼參考:
/**
*?BASE64加密
*
*?@param?key
*?@return
*?@throws?Exception
*/
public?static?String?encryptBASE64(byte[]?key)?throws?Exception?{
return?(new?BASE64Encoder()).encodeBuffer(key);
}
/**
*?MD5加密
*
*?@param?data
*?@return
*?@throws?Exception
*/
public?static?byte[]?encryptMD5(byte[]?data)?throws?Exception?{
MessageDigest?md5?=?MessageDigest.getInstance(KEY_MD5);
md5.update(data);
return?md5.digest();
}
/**
*?SHA加密
*
*?@param?data
*?@return
*?@throws?Exception
*/
public?static?byte[]?encryptSHA(byte[]?data)?throws?Exception?{
MessageDigest?sha?=?MessageDigest.getInstance(KEY_SHA);
sha.update(data);
return?sha.digest();
}
}
/**
*?初始化HMAC密鑰
*
*?@return
*?@throws?Exception
*/
public?static?String?initMacKey()?throws?Exception?{
KeyGenerator?keyGenerator?=?KeyGenerator.getInstance(KEY_MAC);
SecretKey?secretKey?=?keyGenerator.generateKey();
return?encryptBASE64(secretKey.getEncoded());
}
/**
*?HMAC加密
*
*?@param?data
*?@param?key
*?@return
*?@throws?Exception
*/
public?static?byte[]?encryptHMAC(byte[]?data,?String?key)?throws?Exception?{
SecretKey?secretKey?=?new?SecretKeySpec(decryptBASE64(key),?KEY_MAC);
Mac?mac?=?Mac.getInstance(secretKey.getAlgorithm());
mac.init(secretKey);
return?mac.doFinal(data);
}
可以的。推薦的是使用綠盾加密,采用的是文件透明加密模塊,對平常辦公使用是沒有影響的。而且綠盾支持與SVN等源代碼管理工具無縫結(jié)合。
如果企業(yè)內(nèi)部SVN服務(wù)器采取透明模式,即加密文件是可以存放在SVN服務(wù)器上的,需要達(dá)到的效果是SVN服務(wù)器上文件密文存儲。則配合天銳綠盾應(yīng)用服務(wù)器安全接入系統(tǒng)來實(shí)現(xiàn)只有安裝了加密客戶端的Windows、Linux、MAC端才能夠正常的訪問公司內(nèi)部的SVN服務(wù)器。
如果企業(yè)內(nèi)部采用eclipse、VS等開發(fā)工具,從這些開發(fā)工具將代碼直接上傳到SVN服務(wù)器上時(shí)會自動解密。為了避免明文、密文混亂存放導(dǎo)致版本比對時(shí)出現(xiàn)錯(cuò)誤等問題。因此,SVN服務(wù)器上需統(tǒng)一存放明文文件。則通過服務(wù)器白名單功能實(shí)現(xiàn)對終端電腦數(shù)據(jù)進(jìn)行強(qiáng)制透明加密,對上傳到應(yīng)用服務(wù)器數(shù)據(jù)實(shí)現(xiàn)上傳自動解密、下載自動加密。再配合天銳綠盾應(yīng)用服務(wù)器安全接入系統(tǒng)實(shí)現(xiàn)只有安裝了加密客戶端的Windows、Linux、MAC端才能夠正常的訪問公司內(nèi)部的SVN服務(wù)器。
賽虎信息科技始終傾力為企事業(yè)單位的信息安全、綠盾數(shù)據(jù)防泄密提供一體化顧問式解決方案,為客戶提供優(yōu)質(zhì)的內(nèi)網(wǎng)安全管理產(chǎn)品和適合多種行業(yè)的應(yīng)用解決方案。
可以使用加密鎖硬件對java進(jìn)行加密,可以通過加殼的形式防止代碼被反編譯,也可以在Java代碼中進(jìn)行開發(fā),硬件加密安全性唯一性更高??梢栽囋嘡OCKEY系列加密鎖,價(jià)格也不貴,加密簡單。