第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

使用 Gradle 進行 Java 標記化

使用 Gradle 進行 Java 標記化

繁星淼淼 2022-01-12 17:13:56
對于我當前的項目,我正在使用 Java 連接到 MySQL 數(shù)據(jù)庫。我有一些代碼,其中我使用 Gradle 將敏感的數(shù)據(jù)庫憑據(jù)替換到 .java 文件中,使用 ReplaceTokens 在構建目錄中填充文件的新版本并獲取該版本(使用替換的“detokenized”值) 編譯 .class 文件。除了處理源 .java 文件的核心開發(fā)團隊之外,我預計不會有任何人,只有 .war 包含已編譯的 .class 文件。但是,通過使用 vim 查看這些 .class 文件,我可以看出去標記化的值在編譯的字節(jié)碼中是顯而易見的。我的問題是,假設我的 .class 文件可以被潛在的惡意代理從服務器檢索到,是否有更好的標記化方法可以為數(shù)據(jù)庫憑據(jù)提供另一層安全性?有關其他信息,MySQL DB 僅通過套接字訪問,因此我不認為惡意代理可以單獨使用 DB 憑據(jù)做任何事情,但我希望盡可能難以確定這些憑據(jù)。感謝您的任何建議!總的來說,我對 Java 和 Gradle 還是很陌生,但是這個項目已經(jīng)讓我對可以做什么有了很多了解。
查看完整描述

1 回答

?
蕪湖不蕪

TA貢獻1796條經(jīng)驗 獲得超7個贊

這是一些執(zhí)行base64編碼/解碼的簡單代碼


我使用Blowfish的algo


import javax.crypto.Cipher;

import javax.crypto.spec.SecretKeySpec;

import org.apache.commons.codec.binary.Base64;


public static String encrypt(String text) throws Exception

{

    SecretKeySpec sksSpec = new SecretKeySpec(key.getBytes(), algo );

    Cipher cipher = Cipher.getInstance(algo);

    cipher.init(javax.crypto.Cipher.ENCRYPT_MODE, sksSpec);


    byte[] encrypt_bytes = cipher.doFinal(text.getBytes());

    return new String( Base64.encodeBase64(encrypt_bytes) );

}


public static String decrypt(String encrypt_str) throws Exception

{

    SecretKeySpec sksSpec = new SecretKeySpec(key.getBytes(), algo);

    Cipher cipher = Cipher.getInstance(algo);

    cipher.init(Cipher.DECRYPT_MODE, sksSpec);


    return new String(cipher.doFinal( Base64.decodeBase64(encrypt_str.getBytes("UTF-8"))));

}


查看完整回答
反對 回復 2022-01-12
  • 1 回答
  • 0 關注
  • 138 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網(wǎng)微信公眾號