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

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

?? cipher.java

?? linux下編程用 編譯軟件
?? JAVA
?? 第 1 頁(yè) / 共 3 頁(yè)
字號(hào):
/* Cipher.java -- Interface to a cryptographic cipher.   Copyright (C) 2004  Free Software Foundation, Inc.This file is part of GNU Classpath.GNU Classpath is free software; you can redistribute it and/or modifyit under the terms of the GNU General Public License as published bythe Free Software Foundation; either version 2, or (at your option)any later version.GNU Classpath is distributed in the hope that it will be useful, butWITHOUT ANY WARRANTY; without even the implied warranty ofMERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNUGeneral Public License for more details.You should have received a copy of the GNU General Public Licensealong with GNU Classpath; see the file COPYING.  If not, write to theFree Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA02110-1301 USA.Linking this library statically or dynamically with other modules ismaking a combined work based on this library.  Thus, the terms andconditions of the GNU General Public License cover the wholecombination.As a special exception, the copyright holders of this library give youpermission to link this library with independent modules to produce anexecutable, regardless of the license terms of these independentmodules, and to copy and distribute the resulting executable underterms of your choice, provided that you also meet, for each linkedindependent module, the terms and conditions of the license of thatmodule.  An independent module is a module which is not derived fromor based on this library.  If you modify this library, you may extendthis exception to your version of the library, but you are notobligated to do so.  If you do not wish to do so, delete thisexception statement from your version. */package javax.crypto;import gnu.java.security.Engine;import java.security.AlgorithmParameters;import java.security.InvalidAlgorithmParameterException;import java.security.InvalidKeyException;import java.security.Key;import java.security.NoSuchAlgorithmException;import java.security.NoSuchProviderException;import java.security.Provider;import java.security.SecureRandom;import java.security.Security;import java.security.cert.Certificate;import java.security.cert.X509Certificate;import java.security.spec.AlgorithmParameterSpec;import java.util.StringTokenizer;/** * <p>This class implements a cryptographic cipher for transforming * data.</p> * * <p>Ciphers cannot be instantiated directly; rather one of the * <code>getInstance</code> must be used to instantiate a given * <i>transformation</i>, optionally with a specific provider.</p> * * <p>A transformation is of the form:</p> * * <ul> * <li><i>algorithm</i>/<i>mode</i>/<i>padding</i>, or</li> * <li><i>algorithm</i> * </ul> * * <p>where <i>algorithm</i> is the base name of a cryptographic cipher * (such as "AES"), <i>mode</i> is the abbreviated name of a block * cipher mode (such as "CBC" for cipher block chaining mode), and * <i>padding</i> is the name of a padding scheme (such as * "PKCS5Padding"). If only the algorithm name is supplied, then the * provider-specific default mode and padding will be used.</p> * * <p>An example transformation is:</p> * * <blockquote><code>Cipher c = * Cipher.getInstance("AES/CBC/PKCS5Padding");</code></blockquote> * * <p>Finally, when requesting a block cipher in stream cipher mode * (such as <acronym title="Advanced Encryption Standard">AES</acronym> * in OFB or CFB mode) the number of bits to be processed * at a time may be specified by appending it to the name of the mode; * e.g. <code>"AES/OFB8/NoPadding"</code>. If no such number is * specified a provider-specific default value is used.</p> * * @author Casey Marshall (csm@gnu.org) * @see java.security.KeyGenerator * @see javax.crypto.SecretKey */public class Cipher{  // Constants and variables.  // ------------------------------------------------------------------------  private static final String SERVICE = "Cipher";  /**   * The decryption operation mode.   */  public static final int DECRYPT_MODE = 2;  /**   * The encryption operation mode.   */  public static final int ENCRYPT_MODE = 1;  /**   * Constant for when the key to be unwrapped is a private key.   */  public static final int PRIVATE_KEY = 2;  /**   * Constant for when the key to be unwrapped is a public key.   */  public static final int PUBLIC_KEY = 1;  /**   * Constant for when the key to be unwrapped is a secret key.   */  public static final int SECRET_KEY = 3;  /**   * The key unwrapping operation mode.   */  public static final int UNWRAP_MODE = 4;  /**   * The key wrapping operation mode.   */  public static final int WRAP_MODE = 3;  /**   * The uninitialized state. This state signals that any of the   * <code>init</code> methods have not been called, and therefore no   * transformations can be done.   */  private static final int INITIAL_STATE = 0;  /** The underlying cipher service provider interface. */  private CipherSpi cipherSpi;  /** The provider from which this instance came. */  private Provider provider;  /** The transformation requested. */  private String transformation;  /** Our current state (encrypting, wrapping, etc.) */  private int state;  // Class methods.  // ------------------------------------------------------------------------  /**   * <p>Creates a new cipher instance for the given transformation.</p>   *   * <p>The installed providers are tried in order for an   * implementation, and the first appropriate instance is returned. If   * no installed provider can provide the implementation, an   * appropriate exception is thrown.</p>   *   * @param transformation The transformation to create.   * @return An appropriate cipher for this transformation.   * @throws java.security.NoSuchAlgorithmException If no installed   *         provider can supply the appropriate cipher or mode.   * @throws javax.crypto.NoSuchPaddingException If no installed   *         provider can supply the appropriate padding.   */  public static final Cipher getInstance(String transformation)    throws NoSuchAlgorithmException, NoSuchPaddingException  {    Provider[] providers = Security.getProviders();    NoSuchPaddingException ex = null;    String msg = "";    for (int i = 0; i < providers.length; i++)      {        try          {            return getInstance(transformation, providers[i]);          }        catch (NoSuchAlgorithmException nsae)          {            msg = nsae.getMessage();            ex = null;          }        catch (NoSuchPaddingException nspe)          {            ex = nspe;          }      }    if (ex != null)      {        throw ex;      }    throw new NoSuchAlgorithmException(msg);  }  /**   * <p>Creates a new cipher instance for the given transformation and   * the named provider.</p>   *   * @param transformation The transformation to create.   * @param provider       The name of the provider to use.   * @return An appropriate cipher for this transformation.   * @throws java.security.NoSuchAlgorithmException If the provider cannot   *         supply the appropriate cipher or mode.   * @throws java.security.NoSuchProviderException If the named provider   *         is not installed.   * @throws javax.crypto.NoSuchPaddingException If the provider cannot   *         supply the appropriate padding.   */  public static final Cipher getInstance(String transformation, String provider)    throws NoSuchAlgorithmException, NoSuchProviderException,           NoSuchPaddingException  {    Provider p = Security.getProvider(provider);    if (p == null)      {        throw new NoSuchProviderException(provider);      }    return getInstance(transformation, p);  }  /**   * Creates a new cipher instance for the given transform and the given   * provider.   *   * @param transformation The transformation to create.   * @param provider       The provider to use.   * @return An appropriate cipher for this transformation.   * @throws java.security.NoSuchAlgorithmException If the given   *         provider cannot supply the appropriate cipher or mode.   * @throws javax.crypto.NoSuchPaddingException If the given   *         provider cannot supply the appropriate padding scheme.   */  public static final Cipher getInstance(String transformation, Provider provider)    throws NoSuchAlgorithmException, NoSuchPaddingException  {    CipherSpi result = null;    String key = null;    String alg = null, mode = null, pad = null;    String msg = "";    if (transformation.indexOf('/') < 0)      {        try          {            result = (CipherSpi) Engine.getInstance(SERVICE, transformation,                                                    provider);            return new Cipher(result, provider, transformation);          }        catch (Exception e)          {            msg = e.getMessage();          }      }    else      {        StringTokenizer tok = new StringTokenizer(transformation, "/");        if (tok.countTokens() != 3)          {            throw new NoSuchAlgorithmException("badly formed transformation");          }        alg = tok.nextToken();        mode = tok.nextToken();        pad = tok.nextToken();        try          {            result = (CipherSpi) Engine.getInstance(SERVICE, transformation,                                                    provider);            return new Cipher(result, provider, transformation);          }        catch (Exception e)          {            msg = e.getMessage();          }        try          {            result = (CipherSpi) Engine.getInstance(SERVICE, alg + '/' + mode,                                                    provider);            result.engineSetPadding(pad);            return new Cipher(result, provider, transformation);          }        catch (Exception e)          {            if (e instanceof NoSuchPaddingException)              {                throw (NoSuchPaddingException) e;              }            msg = e.getMessage();          }        try          {            result = (CipherSpi) Engine.getInstance(SERVICE, alg + "//" + pad,                                                    provider);            result.engineSetMode(mode);            return new Cipher(result, provider, transformation);          }        catch (Exception e)          {            msg = e.getMessage();          }        try          {            result = (CipherSpi) Engine.getInstance(SERVICE, alg, provider);            result.engineSetMode(mode);            result.engineSetPadding(pad);            return new Cipher(result, provider, transformation);          }        catch (Exception e)          {            if (e instanceof NoSuchPaddingException)              {                throw (NoSuchPaddingException) e;              }            msg = e.getMessage();          }      }    throw new NoSuchAlgorithmException(transformation + ": " + msg);  }// Constructor.  // ------------------------------------------------------------------------  /**   * Create a cipher.   *   * @param cipherSpi The underlying implementation of the cipher.   * @param provider  The provider of this cipher implementation.   * @param transformation The transformation this cipher performs.   */  protected  Cipher(CipherSpi cipherSpi, Provider provider, String transformation)  {    this.cipherSpi = cipherSpi;    this.provider = provider;    this.transformation = transformation;    state = INITIAL_STATE;  }// Public instance methods.  // ------------------------------------------------------------------------  /**   * Get the name that this cipher instance was created with; this is   * equivalent to the "transformation" argument given to any of the   * {@link #getInstance()} methods.   *   * @return The cipher name.   */  public final String getAlgorithm()  {    return transformation;  }  /**   * Return the size of blocks, in bytes, that this cipher processes.   *   * @return The block size.   */

?? 快捷鍵說(shuō)明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號(hào) Ctrl + =
減小字號(hào) Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
在线看国产一区二区| 国产精品日产欧美久久久久| 91久久精品一区二区三| 成人av免费观看| 国产一区二区福利| 国产乱子轮精品视频| 捆绑紧缚一区二区三区视频| 日韩综合小视频| 日韩在线一区二区| 日本最新不卡在线| 日本不卡一二三区黄网| 日韩国产成人精品| 日韩va亚洲va欧美va久久| 天天av天天翘天天综合网| 亚洲第一久久影院| 午夜激情一区二区| 免费在线观看成人| 美女视频第一区二区三区免费观看网站| 日韩精品乱码av一区二区| 日韩精品久久理论片| 免费成人在线播放| 国产美女在线观看一区| 国产一区二区三区四区五区入口| 免费av成人在线| 蜜桃视频在线观看一区二区| 久久99久久99小草精品免视看| 久久精品国产一区二区三区免费看| 天堂va蜜桃一区二区三区 | 一区二区三区四区不卡在线| 亚洲免费观看高清完整版在线观看 | 日韩久久精品一区| 国产无人区一区二区三区| 亚洲国产成人自拍| 亚洲视频在线一区观看| 亚洲久草在线视频| 三级成人在线视频| 久久精品国产秦先生| 欧美一卡二卡三卡| 欧美精品一区二区三区蜜桃| 国产精品视频一二三区| 亚洲精品视频免费看| 日一区二区三区| 国产成人自拍网| 99国产精品久久| 欧美片在线播放| 久久久久久免费毛片精品| 日韩码欧中文字| 免费在线一区观看| 成人黄色小视频在线观看| 欧美主播一区二区三区| 日韩精品一区二区三区视频在线观看| 久久精品这里都是精品| 一区二区激情视频| 奇米综合一区二区三区精品视频| 国产一区二区视频在线| 在线精品视频小说1| 精品处破学生在线二十三| 日韩美女啊v在线免费观看| 奇米影视7777精品一区二区| 成人亚洲精品久久久久软件| 欧美精品1区2区3区| 国产视频一区二区在线| 亚洲第一主播视频| 国产成人av在线影院| 欧美日韩精品一区视频| 国产午夜亚洲精品理论片色戒 | 中文字幕一区二区三区在线观看| 成人国产精品视频| 在线综合亚洲欧美在线视频| 亚洲欧洲一区二区三区| 麻豆一区二区99久久久久| 91麻豆国产香蕉久久精品| 久久日一线二线三线suv| 亚洲成av人影院在线观看网| 国产91精品在线观看| 欧美一区二区观看视频| 亚洲黄色小说网站| 国产精品99久久久久久久vr| 91精品午夜视频| 亚洲最大色网站| 成人av电影观看| 久久亚洲精精品中文字幕早川悠里| 尤物在线观看一区| 成人久久18免费网站麻豆| 精品久久久久久久久久久院品网| 亚洲国产精品尤物yw在线观看| 成人高清在线视频| 久久青草欧美一区二区三区| 日本亚洲天堂网| 欧美日韩一区国产| 亚洲精品国产精品乱码不99| 国产91丝袜在线18| 久久人人爽爽爽人久久久| 日韩不卡在线观看日韩不卡视频| 欧美丝袜丝交足nylons| 亚洲女人小视频在线观看| 成人av影院在线| 国产亲近乱来精品视频| 国产呦萝稀缺另类资源| 欧美成人激情免费网| 日韩精品成人一区二区在线| 精品污污网站免费看| 亚洲午夜在线视频| 欧美性生活影院| 一卡二卡欧美日韩| 在线精品国精品国产尤物884a| 自拍偷在线精品自拍偷无码专区| 精品国产sm最大网站免费看| 奇米精品一区二区三区在线观看一| 欧美精品一卡两卡| 日韩成人免费在线| 日韩一区二区三区视频在线 | 自拍偷拍亚洲激情| 99re在线精品| 一区二区三区四区不卡视频 | 最好看的中文字幕久久| 91天堂素人约啪| 亚洲欧美电影一区二区| 色婷婷激情综合| 亚洲午夜久久久久| 538prom精品视频线放| 日日摸夜夜添夜夜添精品视频| 91精品国产品国语在线不卡| 日本亚洲免费观看| 亚洲精品一区二区三区蜜桃下载| 国产资源精品在线观看| 国产日韩欧美亚洲| aaa欧美日韩| 亚洲自拍偷拍麻豆| 欧美一卡二卡三卡| 国产麻豆精品theporn| 中文字幕国产一区| 在线一区二区视频| 日韩和欧美一区二区三区| 精品国产不卡一区二区三区| 粉嫩在线一区二区三区视频| 亚洲人吸女人奶水| 777欧美精品| 国产伦精一区二区三区| 中文字幕一区二区三区色视频| 色老汉一区二区三区| 免费精品99久久国产综合精品| 国产视频一区不卡| 欧日韩精品视频| 欧美一区二区三区公司| 国精产品一区一区三区mba视频 | 久久精品国产99国产| 国产日韩欧美激情| 欧美在线三级电影| 久久国产精品色婷婷| 亚洲婷婷国产精品电影人久久| 欧美日韩三级一区| 国产精品99久久久久久宅男| 一区二区三区欧美| 精品99一区二区| 色欲综合视频天天天| 麻豆成人久久精品二区三区红 | 亚洲国产欧美另类丝袜| 精品久久久久久久久久久久久久久久久| 丰满少妇久久久久久久| 天天色图综合网| 国产精品沙发午睡系列990531| 欧美美女激情18p| 福利视频网站一区二区三区| 天天av天天翘天天综合网色鬼国产| 国产午夜亚洲精品午夜鲁丝片 | 亚洲免费在线视频一区 二区| 欧美一区二区三区免费在线看| 成人三级在线视频| 日本不卡在线视频| 亚洲素人一区二区| 精品99久久久久久| 欧美性受xxxx| 不卡一区二区在线| 韩国三级在线一区| 亚洲一区二区三区国产| 国产拍揄自揄精品视频麻豆 | 亚洲国产中文字幕在线视频综合 | 亚洲免费在线观看视频| 精品久久人人做人人爱| 欧美亚洲精品一区| eeuss鲁片一区二区三区在线观看 eeuss鲁片一区二区三区在线看 | 精品国产1区2区3区| 欧美三级三级三级| 99国产精品视频免费观看| 久久99最新地址| 亚洲成a人片在线不卡一二三区| 国产精品视频一区二区三区不卡| 日韩欧美国产wwwww| 欧美日韩一区视频| 一本色道**综合亚洲精品蜜桃冫 | 欧美猛男超大videosgay| 91在线观看免费视频| 国产高清不卡一区二区| 久久精品二区亚洲w码| 视频在线在亚洲| 亚洲一区国产视频| 亚洲精品伦理在线| 国产精品美女www爽爽爽| 久久久精品国产免费观看同学|