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

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

?? specifications.html

?? 橢圓曲線算法包
?? HTML
?? 第 1 頁 / 共 2 頁
字號:
<html><head><title>Bouncy Castle Crypto Package</title></head><body bgcolor="#ffffff" text="#000000#"><center><h1>Bouncy Castle Crypto Package</h1><font size=1><pre></pre></font></center><h2>1.0 Introduction</h2>The Bouncy Castle Crypto package is a Java implementation of cryptographic algorithms.  The package is organised so that it contains a light-weight API suitable for use in any environment(including the newly released J2ME) with the additional infrastructureto conform the algorithms to the JCE framework.<p>This software is distributed under a license based on the MIT X Consortium license.  To view the license, <a href="./LICENSE.html">see here</a><p>If you have the full package you will have six jar files, bcprov*.jarwhich contains the BC provider, jce-*.jar which containsthe JCE provider, clean room API, and bcmail*.jar which contains themail API.<p>Note: if you are using JDK 1.0, you will just find a class hierarchy inthe classes directory.<p>To view examples, look at the test programs in the packages:<ul>	<li><b>org.bouncycastle.crypto.test</b>	<li><b>org.bouncycastle.jce.provider.test</b></ul><p>To verify the packages, run the following Java programs with theappropriate classpath:<ul>	<li><b>java org.bouncycastle.crypto.test.RegressionTest</b>	<li><b>java org.bouncycastle.jce.provider.test.RegressionTest</b></ul><h2>2.0 Patents</h2><p>Some of the algorithms in the Bouncy Castle APIs are patented in someplaces. It is upon the user of the library to be aware of what thelegal situation is in their own situation, however we have been askedto specifically mention the patent below at the request of the patentholder.<p>The IDEA encryption algorithm is patented in the USA, Japan, and Europeincluding at least Austria, France, Germany, Italy, Netherlands, Spain, Sweden,Switzerland and the United Kingdom. Non-commercial use is free, howeverany commercial products that make use of IDEA are liable for royalties.Please see<a href="http://www.mediacrypt.com">www.mediacrypt.com</a> forfurther details.<h2>3.0 Specifications</h2><ul><li> clean room implementation of the JCE API <li> light-weight cryptographic API consisting of support for	<ul>		<li>BlockCipher		<li>BufferedBlockCipher		<li>AsymmetricBlockCipher		<li>BufferedAsymmetricBlockCipher		<li>StreamCipher		<li>BufferedStreamCipher        <li>KeyAgreement        <li>IESCipher		<li>Digest		<li>Mac		<li>PBE		<li>Signers	</ul><li> JCE compatible framework for a Bouncy Castle provider</ul><h2>4.0 Light-weight API</h2><p>This API has been specifically developed for those circumstanceswhere the rich API and integration requirements of the JCE arenot required.  <p>However as a result, the light-weight API requires more effortand understanding on the part of a developer to initialise and utilise the algorithms.<h3>4.1 Example</h3><p>To utilise the light-weight API in a program, the fundamentalsare as follows;<pre><code>	/*	 * This will use a supplied key, and encrypt the data	 * This is the equivalent of DES/CBC/PKCS5Padding	 */	BlockCipher engine = new DESEngine();	BufferedBlockCipher cipher = new PaddedBlockCipher(new CBCCipher(engine));	byte[] key = keyString.getBytes();	byte[] input = inputString.getBytes();	cipher.init(true, new KeyParameter(key));	byte[] cipherText = new byte[cipher.getOutputSize(input.length)];		int outputLen = cipher.processBytes(input, 0, input.length, cipherText, 0);	try	{		cipher.doFinal(cipherText, outputLen);	}	catch (CryptoException ce)	{		System.err.println(ce);		System.exit(1);	}</code></pre><h3>4.2 Algorithms</h3><p>The light-weight API has built in support for the following:<h4>Symmetric (Block)</h4><p>The base interface is <b>BlockCipher</b> and has the followingimplementations which match the modes the block cipher canbe operated in.<p><table cellpadding=5 cellspacing=0 border=1 width=80%><tr><th>Name</th><th>Constructor</th><th>Notes</th></tr><tr><td><b>BufferedBlockCipher</b></td><td>BlockCipher</td><td>&nbsp;</td></tr><tr><td><b>CBCBlockCipher</b></td><td>BlockCipher</td><td>&nbsp;</td></tr><tr><td><b>CFBBlockCipher</b></td><td>BlockCipher, block size (in bits)</td><td>&nbsp;</td></tr><tr><td><b>OFBBlockCipher</b></td><td>BlockCipher, block size (in bits)</td><td>&nbsp;</td></tr><tr><td><b>SICBlockCipher</b></td><td>BlockCipher, block size (in bits)</td><td>Also known as CTR mode</td></tr><tr><td><b>OpenPGPCFBBlockCipher</b></td><td>BlockCipher</td><td>&nbsp;</td></tr><tr><td><b>GOFBBlockCipher</b></td><td>BlockCipher</td><td>GOST OFB mode</td></tr></table><p><b>BufferedBlockCipher</b> has a further sub-classes<p><table cellpadding=5 cellspacing=0 border=1 width=80%><tr><th>Name</th><th>Constructor</th><th>Notes</th></tr><tr><td><b>PaddedBufferedBlockCipher</b></td><td>BlockCipher</td><td>a buffered block cipher that can use padding - default PKCS5/7 padding</td></tr><tr><td><b>CTSBlockCipher</b></td><td>BlockCipher</td><td>Cipher Text Stealing</td></tr></table><p>The following paddings can be used with the PaddedBufferedBlockCipher.<p><table cellpadding=5 cellspacing=0 border=1 width=80%><tr><th>Name</th><th>Description</th></tr><tr><td>PKCS7Padding</td><td>PKCS7/PKCS5 padding</td></tr><tr><td>ISO10126d2Padding</td><td>ISO 10126-2 padding</td></tr><tr><td>X932Padding</td><td>X9.23 padding</td></tr><tr><td>ISO7816d4Padding</td><td>ISO 7816-4 padding (ISO 9797-1 scheme 2)</td></tr><tr><td>ZeroBytePadding</td><td>Pad with Zeros (not recommended)</td></tr></table><p>The following cipher engines are implemented that can beused with the above modes.<p><table cellpadding=5 cellspacing=0 border=1 width=80%><tr><th>Name</th><th>KeySizes (in bits) </th><th>Block Size</th><th>Notes</th></tr><tr><td><b>AESEngine</b></td><td>0 .. 256 </td><td>128 bit</td><td>&nbsp;</td></tr><tr><td><b>AESWrapEngine</b></td><td>0 .. 256 </td><td>128 bit</td><td>Implements FIPS AES key wrapping</td></tr><tr><td><b>BlowfishEngine</b></td><td>0 .. 448 </b></td><td>64 bit</td><td>&nbsp;</td></tr><tr><td><b>CAST5Engine</b></td><td>0 .. 128 </b></td><td>64 bit</td><td>&nbsp;</td></tr><tr><td><b>CAST6Engine</b></td><td>0 .. 256 </b></td><td>128 bit</td><td>&nbsp;</td></tr><tr><td><b>DESEngine</b></td><td>64</td><td>64 bit</td><td>&nbsp;</td></tr><tr><td><b>DESedeEngine</b></td><td>128, 192</td><td>64 bit</td><td>&nbsp;</td></tr><tr><td><b>DESedeWrapEngine</b></td><td>128, 192</td><td>64 bit</td><td>Implements Draft IETF DESede key wrapping</td></tr><tr><td><b>IDEAEngine</b></td><td>128</td><td>64 bit</td><td>&nbsp;</td></tr><tr><td><b>RC2Engine</b></td><td>0 .. 1024 </td><td>64 bit</td><td>&nbsp;</td></tr><tr><td><b>RC532Engine</b></td><td>0 .. 128 </td><td>64 bit</td><td>Uses a 32 bit word</td></tr><tr><td><b>RC564Engine</b></td><td>0 .. 128 </td><td>128 bit</td><td>Uses a 64 bit word</td></tr><tr><td><b>RC6Engine</b></td><td>0 .. 256 </td><td>128 bit</td><td>&nbsp;</td></tr><tr><td><b>RijndaelEngine</b></td><td>0 .. 256 </td><td>128 bit, 160 bit, 192 bit, 224 bit, 256 bit</td><td>&nbsp;</td></tr><tr><td><b>SkipjackEngine</b></td><td>0 .. 128 </td><td>64 bit</td><td>&nbsp;</td></tr><tr><td><b>TwofishEngine</b></td><td>128, 192, 256 </td><td>128 bit</td><td>&nbsp;</td></tr><tr><td><b>SerpentEngine</b></td><td>128, 192, 256 </td><td>128 bit</td><td>&nbsp;</td></tr><tr><td><b>GOST28147Engine</b></td><td>256</td><td>64 bit</td><td>Has a range of S-boxes</td></tr><tr><td><b>CamelliaEngine</b></td><td>128, 192, 256</td><td>128 bit</td><td>&nbsp;</td></tr></table><h4>Symmetric (Stream)</h4><p>The base interface is <b>StreamCipher</b> and has the followingimplementations which match the modes the stream cipher canbe operated in.<p><table cellpadding=5 cellspacing=0 border=1 width=80%><tr><th>Name</th><th>Constructor</th><th>Notes</th></tr><tr><td><b>BlockStreamCipher</b></td><td>BlockCipher</td><td>&nbsp;</td></tr></table><p>The following cipher engines are implemented that can beused with the above modes.<p><table cellpadding=5 cellspacing=0 border=1 width=80%><tr><th>Name</th><th>KeySizes (in bits) </th><th>Notes</th></tr><tr><td><b>RC4Engine</b></td><td>40 .. 2048 </b></td><td>&nbsp;</td></tr></table><h4>Block Asymmetric</h4><p>The base interface is <b>AsymmetricBlockCipher</b> and has the followingimplementations which match the modes the cipher can be operated in.<p><table cellpadding=5 cellspacing=0 border=1 width=80%><tr><th>Name</th><th>Constructor</th><th>Notes</th></tr><tr><td><b>BufferedAsymmetricBlockCipher</b></td><td>AsymmetricBlockCipher</td><td>&nbsp;</td></tr><tr><td><b>OAEPEncoding</b></td><td>AsymmetricBlockCipher</td><td>&nbsp;</td></tr><tr><td><b>PKCS1Encoding</b></td><td>AsymmetricBlockCipher</td><td>&nbsp;</td></tr><tr><td><b>ISO9796d1Encoding</b></td><td>AsymmetricBlockCipher</td><td>ISO9796-1</td></tr></table><p>The following cipher engines are implemented that can beused with the above modes.<p><table cellpadding=5 cellspacing=0 border=1 width=80%><tr><th>Name</th><th>KeySizes (in bits)</th><th>Notes</th></tr><tr><td><b>RSAEngine</b></td><td>any multiple of 8 large enough for the encoding.</td><td>&nbsp;</td></tr><tr><td><b>ElGamalEngine</b></td><td>any multiple of 8 large enough for the encoding.</td><td>&nbsp;</td></tr></table><h4>Digest</h4><p>The base interface is <b>Digest</b> and has the followingimplementations <p><table cellpadding=5 cellspacing=0 border=1 width=80%><tr><th>Name</th><th>Output (in bits)</th><th>Notes</th></tr><tr><td><b>MD2Digest</b></td><td>128</td><td>&nbsp;</td></tr><tr><td><b>MD4Digest</b></td><td>128</td><td>&nbsp;</td></tr><tr><td><b>MD5Digest</b></td><td>128</td><td>&nbsp;</td></tr><tr><td><b>RipeMD128Digest</b></td><td>128</td><td>basic RipeMD</td></tr><tr><td><b>RipeMD160Digest</b></td><td>160</td><td>enhanced version of RipeMD</td></tr><tr><td><b>RipeMD256Digest</b></td><td>256</td><td>expanded version of RipeMD128</td></tr><tr><td><b>RipeMD320Digest</b></td><td>320</td><td>expanded version of RipeMD160</td></tr><tr><td><b>SHA1Digest</b></td><td>160</td><td>&nbsp;</td></tr><tr><td><b>SHA224Digest</b></td><td>224</td><td>FIPS 180-2</td></tr><tr><td><b>SHA256Digest</b></td><td>256</td><td>FIPS 180-2</td></tr><tr><td><b>SHA384Digest</b></td><td>384</td><td>FIPS 180-2</td></tr><tr><td><b>SHA512Digest</b></td><td>512</td><td>FIPS 180-2</td></tr><tr><td><b>TigerDigest</b></td><td>192</td><td>The Tiger Digest.</td></tr><tr><td><b>GOST3411Digest</b></td><td>256</td><td>The GOST-3411 Digest.</td></tr><tr><td><b>WhirlpoolDigest</b></td><td>512</td><td>The Whirlpool Digest.</td></tr></table><h4>MAC</h4><p>The base interface is <b>Mac</b> and has the followingimplementations <p><table cellpadding=5 cellspacing=0 border=1 width=80%><tr><th>Name</th><th>Output (in bits)</th><th>Notes</th></tr><tr><td><b>CBCBlockCipherMac</b></td><td>blocksize/2 unless specified</td><td>&nbsp;</td></tr><tr><td><b>CFBBlockCipherMac</b></td><td>blocksize/2, in CFB 8 mode, unless specified</td><td>&nbsp;</td></tr><tr><td><b>HMac</b></td><td>digest length</td><td>&nbsp;</td></tr></table><h4>PBE</h4><p>The base class is <b>PBEParametersGenerator</b> and has the followingsub-classes <p><table cellpadding=5 cellspacing=0 border=1 width=80%><tr><th>Name</th><th>Constructor</th><th>Notes</th></tr><tr><td><b>PKCS5S1ParametersGenerator</b></td><td>Digest</td><td>&nbsp;</td></tr><tr><td><b>PKCS5S2ParametersGenerator</b></td><td>&nbsp;</td><td>Uses SHA1/Hmac as defined</td></tr><tr><td><b>PKCS12ParametersGenerator</b></td><td>Digest</td><td>&nbsp;</td></tr><tr><td><b>OpenSSLPBEParametersGenerator</b></td><td>&nbsp;</td><td>Uses MD5 as defined</td></tr></table><h4>Key Agreement</h4><p>Two versions of Diffie-Hellman key agreement are supported, the basicversion, and one for use with long term public keys. Two versions ofkey agreement using Elliptic Curve cryptography are also supported,standard Diffie-Hellman key agreement and standard key agreement withco-factors.<p>The agreement APIs are in the <b>org.bouncycastle.crypto.agreement</b> package.Classes for generating Diffie-Hellman parameters can be found in the<b>org.bouncycastle.crypto.params</b> and <b>org.bouncycastle.crypto.generators</b> packages.<p><h4>IESCipher</h4><p>The IES cipher is based on the one described in IEEE P1363a (draft 10), foruse with either traditional Diffie-Hellman or Elliptic Curve Diffie-Hellman.<p><b>Note:</b> At the moment this is still a draft, don't use it for anythingthat may be subject to long term storage, the key values produced may wellchange as the draft is finalised.<p><h4>Signers</h4><p>DSA, ECDSA, ISO-9796-2, GOST-3410-94, GOST-3410-2001, and RSA-PSS are supported by the <b>org.bouncycastle.crypto.signers</b>package. Note: as these are light weight classes, if you need to use SHA1 or GOST-3411(as defined in the relevant standards) you'll also need to make use of the appropriatedigest class in conjunction with these.Classes for generating DSA and ECDSA parameters can be found in the<b>org.bouncycastle.crypto.params</b> and <b>org.bouncycastle.crypto.generators</b> packages.<p><h3>4.3 ASN.1 package</h3><p>The light-weight API has direct interfaces into a package capable ofreading and writing DER-encoded ASN.1 objects and for the generationof X.509 V3 certificate objects and PKCS12 files. BER InputStream andOutputStream classes are provided as well.<h2>5.0 Bouncy Castle Provider</h2><p>The Bouncy Castle provider is a JCE compliant provider thatis a wrapper built on top of the light-weight API.<p>The advantage for writing application code that uses the provider interface to cryptographic algorithms is that theactual provider used can be selected at run time.  This is extremely valuable for applications that may wish to make use of a provider that has underlying hardware forcryptographic computation, or where an application may havebeen developed in an environment with cryptographic exportcontrols.<h3>5.1 Example</h3><p>To utilise the JCE provider in a program, the fundamentalsare as follows;<pre><code>	/*	 * This will generate a random key, and encrypt the data	 */	Key		key;	KeyGenerator	keyGen;	Cipher		encrypt;	Security.addProvider(new BouncyCastleProvider());	try	{		// "BC" is the name of the BouncyCastle provider		keyGen = KeyGenerator.getInstance("DES", "BC");		keyGen.init(new SecureRandom());		key = keyGen.generateKey();		encrypt = Cipher.getInstance("DES/CBC/PKCS5Padding", "BC");	}	catch (Exception e)	{		System.err.println(e);		System.exit(1);	}	encrypt.init(Cipher.ENCRYPT_MODE, key);	bOut = new ByteArrayOutputStream();	cOut = new CipherOutputStream(bOut, encrypt);

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
欧美日韩精品福利| 中文字幕中文乱码欧美一区二区| 精品美女在线观看| 亚洲精品高清在线观看| 激情综合色综合久久综合| 91影院在线免费观看| 欧美变态tickle挠乳网站| 亚洲一二三四久久| 成人av免费在线| 精品入口麻豆88视频| 亚洲高清在线视频| 色综合天天综合| 国产精品免费视频网站| 国产在线精品一区二区| 欧美精品日日鲁夜夜添| 一区二区三区在线免费观看| 成人免费视频视频在线观看免费| 日韩精品一区二区三区视频| 亚洲国产综合人成综合网站| 91网址在线看| 亚洲色图在线播放| 成人在线综合网| 久久久精品蜜桃| 国产一区二三区| 精品成人免费观看| 国内一区二区视频| 日韩欧美成人激情| 麻豆精品一区二区综合av| 欧美二区三区91| 三级欧美韩日大片在线看| 欧美三级日韩在线| 天堂在线亚洲视频| 欧美一级日韩一级| 久久国产精品99久久久久久老狼 | 一区二区三区国产精品| 成人免费高清视频| 国产精品久久久久四虎| www.亚洲人| 亚洲少妇30p| 欧美在线一二三四区| 亚洲福利电影网| 欧美一级淫片007| 国产乱码字幕精品高清av| 久久久精品国产免大香伊| 国产成人日日夜夜| 亚洲欧美国产毛片在线| 在线观看欧美精品| 美女网站色91| 亚洲国产精品黑人久久久| 91视视频在线观看入口直接观看www | 日韩欧美国产一区在线观看| 玖玖九九国产精品| 欧美国产成人在线| 色婷婷av一区二区三区gif| 一区二区三区免费网站| 欧美日韩国产经典色站一区二区三区| 奇米四色…亚洲| 久久久久国产精品厨房| www.日韩av| 青青草国产成人av片免费| 久久久三级国产网站| 色综合天天综合网天天看片| 日韩高清一级片| 国产校园另类小说区| 91黄视频在线| 国产一区啦啦啦在线观看| 亚洲日本一区二区| 欧美一卡在线观看| 成人黄色一级视频| 日本中文一区二区三区| 国产亲近乱来精品视频| 欧美视频精品在线观看| 国产美女娇喘av呻吟久久| 亚洲你懂的在线视频| 精品成人在线观看| 欧美午夜在线观看| 福利91精品一区二区三区| 香蕉影视欧美成人| 欧美韩国日本不卡| 欧美一区二区三区免费视频| 91亚洲精品久久久蜜桃网站| 六月婷婷色综合| 亚洲一区二区三区四区五区中文| 久久精品一级爱片| 欧美美女激情18p| 91丨porny丨国产| 国产不卡在线一区| 麻豆成人综合网| 亚洲午夜在线观看视频在线| 亚洲国产精品激情在线观看| 欧美不卡视频一区| 欧美日韩色一区| 91一区在线观看| www.亚洲在线| 福利电影一区二区| 国产一区在线视频| 另类调教123区| 亚洲成人精品一区二区| 亚洲女同ⅹxx女同tv| 国产精品亲子乱子伦xxxx裸| 精品久久久久久亚洲综合网 | 91精品久久久久久久99蜜桃 | 国产精品资源在线看| 日韩av网站在线观看| 五月激情六月综合| 亚洲国产日韩综合久久精品| 亚洲女人的天堂| 亚洲黄色小说网站| 亚洲精品乱码久久久久久黑人| 国产精品短视频| 日本一二三四高清不卡| 国产肉丝袜一区二区| 国产亚洲欧美色| 欧美精彩视频一区二区三区| 久久久激情视频| 久久久国际精品| 国产女人18毛片水真多成人如厕| 久久久99免费| 国产精品色眯眯| 亚洲精品国产第一综合99久久| 日韩毛片精品高清免费| 一区二区视频在线| 亚洲一区二区黄色| 日本午夜精品一区二区三区电影| 日产国产欧美视频一区精品| 喷水一区二区三区| 久久99国产精品久久99| 国产成人综合亚洲91猫咪| 成人午夜精品在线| 色综合网色综合| 欧美疯狂性受xxxxx喷水图片| 日韩欧美一区二区免费| 国产人成亚洲第一网站在线播放| 国产精品色噜噜| 亚洲电影中文字幕在线观看| 日本午夜一本久久久综合| 韩国午夜理伦三级不卡影院| 成人性生交大合| 色婷婷av一区| 日韩一区二区在线看| 国产性做久久久久久| 一区二区三区在线视频观看58| 亚洲一区二区三区小说| 久久成人综合网| 91视频91自| 日韩欧美中文字幕一区| 中文字幕一区二区三区色视频| 午夜影院久久久| 国产一区二区三区四区五区美女 | 日韩理论电影院| 亚洲国产精品欧美一二99| 精品无码三级在线观看视频| zzijzzij亚洲日本少妇熟睡| 4438成人网| 国产精品电影院| 久久精品国产99国产精品| 99国产精品久久久久久久久久久| 69堂亚洲精品首页| 中文字幕在线不卡| 免费在线观看不卡| 91偷拍与自偷拍精品| 日韩精品一区二区三区视频在线观看 | 国产寡妇亲子伦一区二区| 色噜噜偷拍精品综合在线| 26uuu国产电影一区二区| 一区二区三区在线免费视频| 国产精品亚洲成人| 日韩一区二区精品在线观看| 亚洲三级视频在线观看| 经典三级在线一区| 欧美日韩高清一区二区| 国产精品久久影院| 久久精品国产网站| 欧美精品一卡二卡| 夜夜嗨av一区二区三区四季av| 国产一区二区视频在线播放| 666欧美在线视频| 亚洲黄色尤物视频| 91小视频在线免费看| 欧美激情综合五月色丁香小说| 免费亚洲电影在线| 欧美情侣在线播放| 亚洲影院久久精品| 91啪在线观看| 亚洲欧美另类小说视频| 国产成人aaa| 欧美激情一区二区在线| 国产一区二区按摩在线观看| 5858s免费视频成人| 亚洲3atv精品一区二区三区| 一本色道**综合亚洲精品蜜桃冫| 国产精品久久网站| 国产99精品国产| 久久久久久久久久久久电影| 九九视频精品免费| 欧美成人aa大片| 国产伦精一区二区三区| 久久久亚洲高清| 国产成人丝袜美腿| 国产精品久久网站|