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

? 歡迎來(lái)到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關(guān)于我們
? 蟲蟲下載站

?? ofb.java

?? 另一個(gè)使用java編寫的加密通用算法包
?? JAVA
字號(hào):
// $Id: OFB.java,v 1.5 1997/11/21 05:45:11 hopwood Exp $//// $Log: OFB.java,v $// Revision 1.5  1997/11/21 05:45:11  hopwood// + Missed a name change.//// Revision 1.4  1997/11/20 19:39:32  hopwood// + cryptix.util.* name changes.//// Revision 1.3.1  1997/11/16  David Hopwood// + Removed commented-out code (since we will be using FeedbackMode//   permanently now).// + Fixed imports.// + Added check that IV is set in engineUpdate.// + Removed reset(byte[] iv) method.// + Removed (ivStart == null) case in cryptByte, since we now require//   the IV to always be set.//// Revision 1.3  1997/11/07 05:53:25  raif// *** empty log message ***//// Revision 1.2  1997/11/05 08:01:56  raif// + Added initialisation of currentByte in engineInitEncrypt/Decrypt//   to force proper handling of the iv in successive uses of the Mode//   instance object without the need to re-setInitializationVector().// + Call cipher.update instead of cipher.crypt.// + Added Aug/97 fixes.//// Revision 1.1.1.1  1997/11/03 22:36:56  hopwood// + Imported to CVS (tagged as 'start').//// $Endlog$/* * Copyright (c) 1995-1997 Systemics Ltd * on behalf of the Cryptix Development Team.  All rights reserved. */package cryptix.provider.mode;import cryptix.CryptixException;import java.security.Cipher;import java.security.Key;import java.security.KeyException;import java.security.InvalidParameterException;import java.security.IllegalBlockSizeException;/** * Implements a byte-oriented stream cipher using n-bit OFB with an * n-bit-sized block cipher. * <p> * The full block size of the supplied cipher is used for the * Output Feedback Mode. The bytes supplied are processed and * returned immediately. * <p> * <b>References:</b> * <ol> *   <li> <a href="mailto:schneier@counterpane.com">Bruce Schneier</a>, *        "Section 9.8 Output Feedback Mode," and "Section 9.11 Choosing a Cipher Mode," *        <cite>Applied Cryptography, 2nd edition</cite>, *        John Wiley &amp; Sons, 1996 *        <p> *   <li> <code>sci.crypt</code> FAQ, "Part 5: Product Ciphers," *        <a href="ftp://ftp.rtfm.mit.edu/pub/usenet/news.answers/cryptography-faq/part05"> *        ftp://ftp.rtfm.mit.edu/pub/usenet/news.answers/cryptography-faq/part05</a> *        <p> *   <li> National Bureau of Standards (now NIST), *        "DES Modes of Operation," *        <cite>NBS FIPS PUB 81</cite>, *        U.S. Department of Commerce, December 1980 * </ol> * <p> * <b>Copyright</b> &copy; 1997 * <a href="http://www.systemics.com/">Systemics Ltd</a> on behalf of the * <a href="http://www.systemics.com/docs/cryptix/">Cryptix Development Team</a>. * <br>All rights reserved. * <p> * <b>$Revision: 1.5 $</b> * @author David Hopwood * @author Raif S. Naffah * @since  Cryptix 2.2.2 */public class OFBextends FeedbackMode{// Constructors//...........................................................................    /**     * Constructs an OFB cipher, assuming that the IV will be provided     * via <code>setInitializationVector</code>.     * <p>     * The IV value must be unique during the lifetime of the key.     * <strong>If it is not unique, and an attacker has access to a different     * message encrypted under the same IV and key, all of the plaintext can     * normally be recovered.</strong>     */    public OFB() {        super(true, false, "Cryptix");  // implements its own buffering    }    /**     * Constructs an OFB cipher, assuming that the IV will be provided     * via <code>setInitializationVector</code>.     * See the previous constructor for more details.     *     * @param  cipher   the cipher object to use in OFB mode.     * @exception NullPointerException if cipher == null     * @exception IllegalBlockSizeException if cipher.getPlaintextBlockSize() !=     *                  cipher.getCiphertextBlockSize()     */    public OFB(Cipher cipher) {        this();        engineSetCipher(cipher);    }    /**     * Constructs a OFB cipher, using an initialization vector     * provided in the constructor.     * <p>     * The IV value must be unique during the lifetime of the key.     * <strong>If it is not unique, and an attacker has access to a different     * message encrypted under the same IV and key, all of the plaintext can     * normally be recovered.</strong>     *     * @param  cipher   the block cipher to use     * @param  iv       the initial value for the shift register (IV)     * @exception NullPointerException if cipher == null     */    public OFB(Cipher cipher, byte[] iv) {        this(cipher);        setInitializationVector(iv);    }// FeedbackMode and Mode methods//...........................................................................// Implementations from FeedbackMode are sufficient.// Cipher methods//...........................................................................    protected int engineBlockSize() { return 1; }    protected void engineInitEncrypt(Key newkey)    throws KeyException {        cipher.initEncrypt(newkey);        if (ivStart != null) System.arraycopy(ivStart, 0, ivBlock, 0, length);        currentByte = length;               // to force crypting the iv    }    protected void engineInitDecrypt(Key newkey)    throws KeyException {        cipher.initEncrypt(newkey);        if (ivStart != null) System.arraycopy(ivStart, 0, ivBlock, 0, length);        currentByte = length;               // to force crypting the iv    }    /**     * <b>SPI</b>: This is the main engine method for updating data.     * It may be called with any size of input.     * <p>     * <code>in</code> and <code>out</code> may be the same array, and the     * input and output regions may overlap.     *     * @param in        the input data.     * @param inOffset  the offset into <code>in</code> specifying where     *                  the data starts.     * @param inLen     the length of the subarray.     * @param out       the output array.     * @param outOffset the offset indicating where to start writing into     *                  the <code>out</code> array.     * @return the number of bytes written.     */    protected int engineUpdate(byte[] in, int inOffset, int inLen, byte[] out,                                int outOffset) {        if (ivBlock == null)            throw new InvalidParameterException("OFB: IV is not set");        if (getState() == UNINITIALIZED)            throw new CryptixException("OFB: Cipher not initialized");        if (in == out && outOffset > inOffset &&            outOffset < (long)inOffset+inLen) {            // The input array would be overwritten, so copy it.            byte[] newin = new byte[inLen];            System.arraycopy(in, inOffset, newin, 0, inLen);            in = newin;            inOffset = 0;        }        for (int i = 0; i < inLen; i++)            out[i + outOffset] = cryptByte(in[i + inOffset]);        return inLen;    }// Own methods//...........................................................................    /**     * Encrypts or decrypts a byte in OFB mode (encryption and decryption     * use the same algorithm).     */    private byte cryptByte(byte b) {        if (currentByte >= length) {            currentByte = 0;//            cipher.crypt(ivBlock, 0, length, ivBlock, 0);            cipher.update(ivBlock, 0, length, ivBlock, 0);        }        b ^= ivBlock[currentByte];        currentByte++;        return b;    }}

?? 快捷鍵說(shuō)明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號(hào) Ctrl + =
減小字號(hào) Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
亚洲第一在线综合网站| 久久精品国产亚洲5555| 亚洲成av人综合在线观看| 一区二区三区不卡视频在线观看| 亚洲欧洲国产日韩| 亚洲黄一区二区三区| 亚洲成人午夜影院| 久久精品国产秦先生| 国产精品一二三| 色综合天天综合在线视频| 欧美日本一区二区三区| 中文字幕欧美日本乱码一线二线| 亚洲免费视频成人| 青椒成人免费视频| 成人av在线资源网站| 欧美日韩综合色| 欧美激情在线免费观看| 亚洲国产一区二区三区青草影视| 日韩成人一级大片| 成人黄色大片在线观看| 91麻豆精品国产自产在线观看一区 | 日韩欧美一区二区久久婷婷| 国产亚洲欧美日韩在线一区| 亚洲高清免费一级二级三级| 波多野结衣在线aⅴ中文字幕不卡 波多野结衣在线一区 | 成人精品视频.| 欧美丰满少妇xxxxx高潮对白| 亚洲精品一区二区三区蜜桃下载 | 91丨九色丨黑人外教| 91精品婷婷国产综合久久性色| 亚洲色图视频免费播放| 久久er精品视频| 91精品午夜视频| 视频一区在线视频| 在线观看一区不卡| 亚洲欧美偷拍另类a∨色屁股| 国内精品国产成人| 亚洲人成网站在线| 国产精品一线二线三线| 欧美大片一区二区| 视频在线观看一区| 666欧美在线视频| 日韩av在线免费观看不卡| 欧美在线一区二区| 亚洲电影欧美电影有声小说| 一本色道综合亚洲| 亚洲五码中文字幕| 欧美三级欧美一级| 青青草国产成人av片免费| 国产精品麻豆久久久| 成人亚洲精品久久久久软件| 久久久久久久综合日本| 波多野结衣一区二区三区| 日韩码欧中文字| 911精品国产一区二区在线| 蜜桃视频一区二区三区在线观看| 欧美一区二区国产| 国产一区二区美女诱惑| 国产精品色婷婷| 欧美色综合网站| 久久激情五月婷婷| 麻豆精品在线观看| 国产精品蜜臀在线观看| 色就色 综合激情| 激情久久五月天| 亚洲精品欧美二区三区中文字幕| 欧美日本视频在线| 国产成人8x视频一区二区| 亚洲精品欧美二区三区中文字幕| 日韩一二三区视频| 99久久精品国产毛片| 日韩精品视频网站| 中文字幕不卡一区| 亚洲人精品午夜| 日韩一区二区精品葵司在线| 国产成人精品亚洲午夜麻豆| 亚洲国产另类av| 国产精品色在线观看| 日本韩国欧美一区二区三区| 亚洲综合激情另类小说区| 精品日韩欧美一区二区| 欧美日韩美女一区二区| 粉嫩av亚洲一区二区图片| 免费在线欧美视频| 亚洲欧美日韩精品久久久久| 亚洲国产精品欧美一二99| 久久久久亚洲综合| 日韩一区二区电影| 91精品国产色综合久久不卡蜜臀 | 久久婷婷国产综合精品青草 | 亚洲自拍都市欧美小说| 国产欧美日韩在线看| 亚洲美女区一区| 亚洲精品在线观看网站| 91精品国产美女浴室洗澡无遮挡| 成人免费看片app下载| 国产精品亚洲视频| 极品美女销魂一区二区三区| 日韩高清不卡一区二区| 亚洲一区二区三区在线看| 尤物av一区二区| 亚洲在线一区二区三区| 一区二区成人在线| 亚洲电影一区二区| 日韩中文字幕亚洲一区二区va在线 | 一区二区三区中文免费| 亚洲男人的天堂在线观看| 亚洲一区二区三区四区不卡| 亚洲大片在线观看| 奇米精品一区二区三区在线观看| 久久精品国产精品青草| 国产自产高清不卡| www.av亚洲| 欧美日韩一级大片网址| 91精品国产综合久久精品麻豆| 精品少妇一区二区三区免费观看| 中文字幕第一区二区| 亚洲国产精品欧美一二99| 久久精品噜噜噜成人88aⅴ| 高清在线观看日韩| 欧美在线看片a免费观看| 日韩精品一区二区在线| 中文字幕制服丝袜成人av| 亚洲永久免费av| 国产成人欧美日韩在线电影| 色久优优欧美色久优优| 久久久精品综合| 日韩精品91亚洲二区在线观看| 国内精品嫩模私拍在线| 亚洲国产高清在线| 亚洲高清一区二区三区| 国产ts人妖一区二区| 欧美日韩国产另类一区| 国产精品三级电影| 久久 天天综合| 制服视频三区第一页精品| 亚洲天堂网中文字| 高清视频一区二区| 日韩亚洲国产中文字幕欧美| 一区二区三区四区高清精品免费观看 | 成人福利在线看| 久久老女人爱爱| 美女国产一区二区三区| 精品婷婷伊人一区三区三| 国产精品成人一区二区艾草| 国产成人免费在线视频| 欧美电影免费观看高清完整版在线观看| 亚洲综合av网| 欧美伊人久久久久久久久影院| 中文在线一区二区 | 中文字幕免费不卡| 国产精品自产自拍| 欧美激情一区不卡| 欧洲精品中文字幕| 亚洲一区二区三区小说| 色94色欧美sute亚洲线路二| 综合亚洲深深色噜噜狠狠网站| 亚洲天堂av一区| 日本不卡一二三| 欧美精品亚洲二区| 亚洲国产欧美在线人成| 欧美电影在哪看比较好| 青青草原综合久久大伊人精品优势| 6080国产精品一区二区| 免费av网站大全久久| 久久久久久一二三区| 国产精一品亚洲二区在线视频| 日韩激情中文字幕| 日韩视频一区在线观看| 国产成人免费av在线| 亚洲人成在线播放网站岛国| 在线观看日韩国产| 国模大尺度一区二区三区| 亚洲欧洲日产国码二区| 欧美一区永久视频免费观看| 韩国欧美一区二区| 亚洲午夜免费视频| 精品欧美黑人一区二区三区| av男人天堂一区| 日本亚洲欧美天堂免费| 国产精品色在线观看| 67194成人在线观看| 成人av电影在线| 91浏览器入口在线观看| 日韩va欧美va亚洲va久久| 中文字幕成人av| 26uuu精品一区二区| 欧美日韩国产高清一区二区三区| 国产传媒久久文化传媒| 亚洲成人久久影院| ...中文天堂在线一区| 精品国产乱码久久久久久夜甘婷婷| 99精品热视频| 国v精品久久久网| 国产福利一区二区三区视频| 日韩电影一二三区| 亚洲电影激情视频网站| 亚洲线精品一区二区三区八戒| 亚洲国产岛国毛片在线| 久久久99久久精品欧美|