亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? sha1digest.java

?? 內容:基于jdk1.4的加密算法的具體實現
?? JAVA
字號:
package org.bouncycastle.crypto.digests;/** * implementation of SHA-1 as outlined in "Handbook of Applied Cryptography", pages 346 - 349. * * It is interesting to ponder why the, apart from the extra IV, the other difference here from MD5 * is the "endienness" of the word processing! */public class SHA1Digest    extends GeneralDigest{    private static final int    DIGEST_LENGTH = 20;    private int     H1, H2, H3, H4, H5;    private int[]   X = new int[80];    private int     xOff;    /**     * Standard constructor     */    public SHA1Digest()    {        reset();    }    /**     * Copy constructor.  This will copy the state of the provided     * message digest.     */    public SHA1Digest(SHA1Digest t)    {        super(t);        H1 = t.H1;        H2 = t.H2;        H3 = t.H3;        H4 = t.H4;        H5 = t.H5;        System.arraycopy(t.X, 0, X, 0, t.X.length);        xOff = t.xOff;    }    public String getAlgorithmName()    {        return "SHA-1";    }    public int getDigestSize()    {        return DIGEST_LENGTH;    }    protected void processWord(        byte[]  in,        int     inOff)    {        X[xOff++] = ((in[inOff] & 0xff) << 24) | ((in[inOff + 1] & 0xff) << 16)                    | ((in[inOff + 2] & 0xff) << 8) | ((in[inOff + 3] & 0xff));         if (xOff == 16)        {            processBlock();        }    }    private void unpackWord(        int     word,        byte[]  out,        int     outOff)    {        out[outOff]     = (byte)(word >>> 24);        out[outOff + 1] = (byte)(word >>> 16);        out[outOff + 2] = (byte)(word >>> 8);        out[outOff + 3] = (byte)word;    }    protected void processLength(        long    bitLength)    {        if (xOff > 14)        {            processBlock();        }        X[14] = (int)(bitLength >>> 32);        X[15] = (int)(bitLength & 0xffffffff);    }    public int doFinal(        byte[]  out,        int     outOff)    {        finish();        unpackWord(H1, out, outOff);        unpackWord(H2, out, outOff + 4);        unpackWord(H3, out, outOff + 8);        unpackWord(H4, out, outOff + 12);        unpackWord(H5, out, outOff + 16);        reset();        return DIGEST_LENGTH;    }    /**     * reset the chaining variables     */    public void reset()    {        super.reset();        H1 = 0x67452301;        H2 = 0xefcdab89;        H3 = 0x98badcfe;        H4 = 0x10325476;        H5 = 0xc3d2e1f0;        xOff = 0;        for (int i = 0; i != X.length; i++)        {            X[i] = 0;        }    }    //    // Additive constants    //    private static final int    Y1 = 0x5a827999;    private static final int    Y2 = 0x6ed9eba1;    private static final int    Y3 = 0x8f1bbcdc;    private static final int    Y4 = 0xca62c1d6;    private int f(        int    u,        int    v,        int    w)    {        return ((u & v) | ((~u) & w));    }    private int h(        int    u,        int    v,        int    w)    {        return (u ^ v ^ w);    }    private int g(        int    u,        int    v,        int    w)    {        return ((u & v) | (u & w) | (v & w));    }    private int rotateLeft(        int    x,        int    n)    {        return (x << n) | (x >>> (32 - n));    }    protected void processBlock()    {        //        // expand 16 word block into 80 word block.        //        for (int i = 16; i <= 79; i++)        {            X[i] = rotateLeft((X[i - 3] ^ X[i - 8] ^ X[i - 14] ^ X[i - 16]), 1);        }        //        // set up working variables.        //        int     A = H1;        int     B = H2;        int     C = H3;        int     D = H4;        int     E = H5;        //        // round 1        //        for (int j = 0; j <= 19; j++)        {            int     t = rotateLeft(A, 5) + f(B, C, D) + E + X[j] + Y1;            E = D;            D = C;            C = rotateLeft(B, 30);            B = A;            A = t;        }        //        // round 2        //        for (int j = 20; j <= 39; j++)        {            int     t = rotateLeft(A, 5) + h(B, C, D) + E + X[j] + Y2;            E = D;            D = C;            C = rotateLeft(B, 30);            B = A;            A = t;        }        //        // round 3        //        for (int j = 40; j <= 59; j++)        {            int     t = rotateLeft(A, 5) + g(B, C, D) + E + X[j] + Y3;            E = D;            D = C;            C = rotateLeft(B, 30);            B = A;            A = t;        }        //        // round 4        //        for (int j = 60; j <= 79; j++)        {            int     t = rotateLeft(A, 5) + h(B, C, D) + E + X[j] + Y4;            E = D;            D = C;            C = rotateLeft(B, 30);            B = A;            A = t;        }        H1 += A;        H2 += B;        H3 += C;        H4 += D;        H5 += E;        //        // reset the offset and clean out the word buffer.        //        xOff = 0;        for (int i = 0; i != X.length; i++)        {            X[i] = 0;        }    }}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
亚洲高清免费一级二级三级| 亚洲精品一二三| 日韩精品成人一区二区三区| 91网站最新网址| 中文字幕av在线一区二区三区| 九九**精品视频免费播放| 欧美一区二区视频在线观看| 天堂va蜜桃一区二区三区| 久久精品二区亚洲w码| 91麻豆精品国产91| 亚洲欧洲一区二区三区| 成人永久免费视频| 国产精品久久久久久久久免费桃花| 成人午夜激情片| 日韩欧美在线影院| 亚洲欧美偷拍卡通变态| 91免费视频观看| 亚洲精品成人悠悠色影视| 91国产精品成人| 亚洲国产日产av| 欧美日韩日日骚| 日本亚洲最大的色成网站www| 99热精品一区二区| 精品国产一区二区三区忘忧草| 久久97超碰国产精品超碰| 欧美三级日本三级少妇99| 中文一区二区完整视频在线观看| 成人国产精品免费观看视频| 亚洲私人黄色宅男| 日本高清免费不卡视频| 亚洲va韩国va欧美va精品| 91精品国产综合久久蜜臀| 亚洲制服丝袜av| 91.com视频| 亚洲电影视频在线| 欧美一区二区三区影视| 国内精品免费**视频| 日韩丝袜美女视频| 国产电影一区在线| 久久久噜噜噜久久人人看 | 国产成人午夜99999| 国产精品国产三级国产aⅴ无密码 国产精品国产三级国产aⅴ原创 | xfplay精品久久| 成人精品鲁一区一区二区| 精品国产第一区二区三区观看体验 | 1024亚洲合集| 欧美日韩二区三区| 亚洲一区二区三区中文字幕| 97精品久久久午夜一区二区三区 | 日韩电影在线观看一区| 精品欧美一区二区三区精品久久| 视频一区视频二区在线观看| 2021久久国产精品不只是精品| 日本不卡视频在线观看| 久久精品一区二区三区不卡| 91国内精品野花午夜精品| 九九九久久久精品| 亚洲欧洲色图综合| 色综合天天视频在线观看 | 亚洲综合区在线| 精品盗摄一区二区三区| 精品亚洲成a人在线观看| 日韩精品一区二| 成人白浆超碰人人人人| 国产精品看片你懂得| 波多野结衣精品在线| 亚洲18色成人| 国产精品五月天| 欧美一区二区在线免费播放| 免费看欧美美女黄的网站| 综合激情网...| 精品嫩草影院久久| 国产一区二区伦理片| 亚洲制服丝袜在线| 国产日韩欧美麻豆| 欧美剧在线免费观看网站| 秋霞av亚洲一区二区三| 精品国产一区二区三区不卡| 欧洲精品一区二区| 亚洲综合免费观看高清完整版| 久久综合色之久久综合| 欧美性做爰猛烈叫床潮| 国产 欧美在线| 亚洲精品视频一区| 欧美日韩色综合| www.亚洲在线| 亚洲国产另类精品专区| 国产精品嫩草影院av蜜臀| 日韩欧美久久一区| 欧美三级一区二区| 91麻豆国产精品久久| 国产精品2024| 亚洲一区二区在线免费看| 国产亚洲女人久久久久毛片| 欧美一卡2卡三卡4卡5免费| 国产麻豆成人精品| 日韩不卡一区二区三区| 国产午夜精品理论片a级大结局| 欧美日韩aaaaaa| 黄色精品一二区| 日韩二区三区四区| 亚洲韩国精品一区| 亚洲欧美另类久久久精品2019| 日本一区二区在线不卡| 精品国产乱码久久久久久牛牛 | 日本一区二区三区高清不卡| 色菇凉天天综合网| av在线不卡电影| 日韩二区三区四区| 亚洲成av人片在线观看无码| 一区二区三区中文在线| 中文字幕在线不卡视频| 国产精品美女久久久久久久网站| 久久人人爽人人爽| 精品国产麻豆免费人成网站| 91精品国产品国语在线不卡| 欧美日韩日日骚| 欧美色综合天天久久综合精品| 国精产品一区一区三区mba桃花 | 国产精品一品视频| 亚洲一区二区三区不卡国产欧美| 国产精品电影一区二区三区| 欧美一区二区三区视频在线 | 久久亚洲一级片| 欧美在线观看禁18| 国产成人丝袜美腿| 国产.精品.日韩.另类.中文.在线.播放| 韩国精品主播一区二区在线观看 | 亚洲成av人在线观看| 午夜亚洲福利老司机| 亚洲高清不卡在线观看| 国产欧美日本一区二区三区| 国产亚洲综合色| 欧美日韩国产高清一区| 丁香天五香天堂综合| 国产成人福利片| 青青草97国产精品免费观看| 亚洲乱码中文字幕| 一区二区三区中文在线观看| 亚洲午夜精品一区二区三区他趣| 一区二区三国产精华液| 亚洲国产人成综合网站| 亚洲婷婷综合久久一本伊一区| 亚洲视频资源在线| 亚洲精品高清在线| 日日夜夜精品免费视频| 久久国产精品一区二区| 国产一区二区三区黄视频| 日韩不卡手机在线v区| 青青草原综合久久大伊人精品 | 亚洲一区二区综合| 亚洲图片欧美激情| 亚洲成a人v欧美综合天堂| 免费xxxx性欧美18vr| 久久成人免费网| 国产成人啪免费观看软件| 久久国产婷婷国产香蕉| 日韩精品电影一区亚洲| 午夜精品视频一区| 美国av一区二区| 日韩精品一二三区| 亚洲高清久久久| 久久99精品一区二区三区| 日韩高清电影一区| 国产成人精品www牛牛影视| 色94色欧美sute亚洲线路一ni| 666欧美在线视频| 精品国产第一区二区三区观看体验| 国产精品素人视频| 亚洲一线二线三线视频| 另类中文字幕网| 成人网在线播放| 国产成人综合网| 国产一区二区福利| 色综合av在线| 在线精品观看国产| 欧美r级在线观看| 欧美成人乱码一区二区三区| 国产精品盗摄一区二区三区| 亚洲成av人片一区二区梦乃| 日韩精品一区第一页| 国产精品91一区二区| 国产v综合v亚洲欧| 91国在线观看| 26uuu精品一区二区| 亚洲男人的天堂网| 九九久久精品视频| 国产精品一区在线观看你懂的| 色婷婷av一区| 欧美三级蜜桃2在线观看| 国产日韩欧美精品电影三级在线 | 亚洲电影一级黄| 日韩激情av在线| 免费成人在线影院| 一本大道综合伊人精品热热 | 这里只有精品99re| 自拍偷在线精品自拍偷无码专区 | 国产成人亚洲精品青草天美 | 这里只有精品电影| 久久综合网色—综合色88|