📄 algorithmparameterstest.java
字号:
package org.bouncycastle.jce.provider.test;import org.bouncycastle.jce.provider.BouncyCastleProvider;import org.bouncycastle.util.encoders.Base64;import org.bouncycastle.util.test.SimpleTest;import java.io.IOException;import java.security.AlgorithmParameters;import java.security.Security;import java.security.spec.AlgorithmParameterSpec;import java.security.spec.DSAParameterSpec;import java.security.spec.InvalidParameterSpecException;public class AlgorithmParametersTest extends SimpleTest{ private byte[] dsaParams = Base64.decode( "MIGcAkEAjfKklEkidqo9JXWbsGhpy+rA2Dr7jQz3y7gyTw14guXQdi/FtyEOr8Lprawyq3qsSWk9+/g3J" + "MLsBzbuMcgCkQIVAMdzIYxzfsjumTtPLe0w9I7azpFfAkBP3Z9K7oNeZMXEXYpqvrMUgVdFjq4lnWJoV8" + "Rwe+TERStHTkqSO7sp0lq7EEggVMcuXtarKNsxaJ+qyYv/n1t6"); private void basicTest(String algorithm, Class algorithmParameterSpec, byte[] asn1Encoded) throws Exception { AlgorithmParameters alg = AlgorithmParameters.getInstance(algorithm, "BC"); alg.init(asn1Encoded); try { alg.init(asn1Encoded); fail("encoded re-initialization not detected"); } catch (IOException e) { // expected already initialized } AlgorithmParameterSpec spec = alg.getParameterSpec(algorithmParameterSpec); try { alg.init(spec); fail("spec re-initialization not detected"); } catch (InvalidParameterSpecException e) { // expected already initialized } try { spec = alg.getParameterSpec(AlgorithmParameterSpec.class); fail("wrong spec not detected"); } catch (InvalidParameterSpecException e) { // expected unknown object } try { spec = alg.getParameterSpec(null); fail("null spec not detected"); } catch (NullPointerException e) { // expected unknown object } alg = AlgorithmParameters.getInstance(algorithm, "BC"); alg.init(asn1Encoded, "ASN.1"); alg = AlgorithmParameters.getInstance(algorithm, "BC"); alg.init(asn1Encoded, null); alg = AlgorithmParameters.getInstance(algorithm, "BC"); try { alg.init(asn1Encoded, "FRED"); fail("unknown spec not detected"); } catch (IOException e) { // expected already initialized } } public void performTest() throws Exception { basicTest("DSA", DSAParameterSpec.class, dsaParams); } public String getName() { return "AlgorithmParameters"; } public static void main( String[] args) { Security.addProvider(new BouncyCastleProvider()); runTest(new AlgorithmParametersTest()); }}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -