成人国产在线小视频_日韩寡妇人妻调教在线播放_色成人www永久在线观看_2018国产精品久久_亚洲欧美高清在线30p_亚洲少妇综合一区_黄色在线播放国产_亚洲另类技巧小说校园_国产主播xx日韩_a级毛片在线免费

資訊專欄INFORMATION COLUMN

數(shù)據(jù)防篡改加驗簽基本方案

Michael_Ding / 1350人閱讀

方案

加簽

待加簽數(shù)據(jù)整理為String

(待加簽數(shù)據(jù)+密鑰)一起轉(zhuǎn)化為MD5

結(jié)果寫入數(shù)據(jù)庫

驗簽

待驗簽數(shù)據(jù)整理為String(邏輯必須同加簽一致)

(待驗簽數(shù)據(jù)+密鑰)一起轉(zhuǎn)化為MD5

比較與原簽是否一致

public static String sign(String text, String salt, String inputCharset) {
    return DigestUtils.md5Hex(getContentBytes(text + salt, inputCharset));
}

public static boolean verify(String text, String sign, String salt, String inputCharset) {
    String mysign = DigestUtils.md5Hex(getContentBytes(text + salt, inputCharset));
    return mysign.equals(sign);
}

private static byte[] getContentBytes(String content, String charset) {
    if (charset == null || "".equals(charset)) {
        return content.getBytes();
    }
    try {
        return content.getBytes(charset);
    } catch (UnsupportedEncodingException e) {
        throw new RuntimeException("MD5簽名過程中出現(xiàn)錯誤,指定的編碼集不對,您目前指定的編碼集是:" + charset);
    }
}
性能測試

執(zhí)行100萬組加驗簽操作,本機用時1400ms。也就是平均每組加驗簽用時0.0014ms(粗略估計)。

public static void main(String[] args) {
    FinanceAccount fa = new FinanceAccount();
    fa.setBalance(BigDecimal.TEN);
    fa.setLocking(BigDecimal.TEN);
    String salt = "dskfnweabghcxoihvwei";
    String signature = SecurityUtil.sign(fa.toSignString(), salt, null);

    int i = 0;
    long start = System.currentTimeMillis();
    while (++i < 1000000)
        if (SecurityUtil.verify(fa.toSignString(), signature, salt, null)) {
            SecurityUtil.sign(fa.toSignString(), salt, null);
        } else {
            System.out.println("verification fail!");
        }
    }
    System.out.println((System.currentTimeMillis() - start));
}

文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請注明本文地址:http://systransis.cn/yun/77290.html

相關(guān)文章

  • 一種基于http協(xié)議的敏感數(shù)據(jù)傳輸方案

    摘要:比如加密算法但是加密也存在局限性,需要定期維護。當(dāng)然聰明的你可能會說,那我就使用非對稱加密算法,比如好了。所以本次結(jié)合了和來實現(xiàn)我們的數(shù)據(jù)傳輸。發(fā)送方接收到請求返回結(jié)果后,通過約定的方式對返回結(jié)果進行處理,以供后續(xù)使用。 最近公司需要通過公網(wǎng)與其它平臺完成接口對接,但是基于開發(fā)時間和其它因素的考慮,本次對接無法采用https協(xié)議實現(xiàn)。既然不能用https協(xié)議,那就退而求其次采用http...

    yagami 評論0 收藏0
  • 簡單的視頻圖像篡改方法

    摘要:本文中就以算法壓縮圖像的過程為例,簡單介紹一下圖像防篡改的方法。這一步不在本次視頻防篡改算法中,不做過多介紹。這一步在本次的視頻圖像防篡改中起到了至關(guān)重要的作用。而圖像中的中頻部分是比較適合進行防篡改修改的部分。 大家都知道視頻中圖像壓縮的重要性,但是圖像的安全性也至關(guān)重要。特別是在一些需要知識產(chǎn)權(quán)保護的視頻文件中(比如教育類的視頻就是其中的典型),對于視頻信息的保護就顯得尤為重要。那...

    lunaticf 評論0 收藏0
  • Python腳本——信手拈來的自動化測試工具

    摘要:快速高效的測試工具及腳本,能使程序猿的開發(fā)工作事半功倍。筆者構(gòu)想與編寫整個自動化測試腳本只花費了幾個工作日中的零碎時間,但是使用自動化測試腳本后讓整個開發(fā)測試周期節(jié)省的時間遠超幾個工作日。 ...

    張紅新 評論0 收藏0
  • 微軟為Azure推出了一種新的“篡改”對象存儲服務(wù)

    摘要:微軟公司推出了,這是平臺上一種新的防篡改存儲服務(wù),該服務(wù)用于保護敏感數(shù)據(jù)。微軟表示,還提供了許多可管理功能方面的優(yōu)勢。微軟在一篇博客文章中解釋道同樣的存儲環(huán)境可用于標(biāo)準(zhǔn)及不可變存儲。微軟針對行業(yè)的云產(chǎn)品線在不斷地豐富,是其中最新的成員。微軟公司推出了Immutable Blob Storage,這是Azure平臺上一種新的防篡改存儲服務(wù),該服務(wù)用于保護敏感數(shù)據(jù)。此次推出的這項服務(wù)主要針對的是...

    eternalshallow 評論0 收藏0
  • 探討一下常見支付系統(tǒng)的對外接口

    摘要:相比起來,支付寶的下單動作由于是在前端調(diào)用的,因此,站點需要將自己的訂單信息返回到客戶端,然后又客戶端發(fā)起調(diào)用支付寶的下單接口,這樣一來,如果安全加密等做的不到位,很容易被惡意用戶篡改信息。 作為一個具備用戶交易能力的網(wǎng)站,豐富它的支付渠道對于獲客和提高日活都有不可估量的積極作用。算起來,我接觸過的支付系統(tǒng)也有幾十個了,在這里總結(jié)一下我所接觸過的支付系統(tǒng)對外接口的設(shè)計方案。 1. 支付...

    warnerwu 評論0 收藏0

發(fā)表評論

0條評論

最新活動
閱讀需要支付1元查看
<