java.lang.StringIndexOutOfBoundsException: Index 2 out of bounds for length 2
* Copyright (c) 2018, 2021, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
* under the terms of the GNU * published by the Software .
* published by the Free Software Foundation.
*
*
ANY ;without even the warrantyofMERCHANTABILITY
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
* version 2for more details (a copy is included in the LICENSE file that
* accompanied *ANY ;withouteven theimpliedwarrantyof or
*
* You should have received a copy of the GNU General Public License version
* 2 along with this work; FITNESS APURPOSEjava.lang.StringIndexOutOfBoundsException: Range [46, 45) out of bounds for length 72
* Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
*
* Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
* or visit www.oracle.com if you need additional information or have any
* questions.
*/
/* *@test *@bug8184359 *@summaryKeyLengthsupporttestforDiffieHellman,EC,XDH. *Argumentsorder<java.lang.StringIndexOutOfBoundsException: Index 37 out of bounds for length 2 *@library/test/lib *@runmainKeySizeTestDiffieHellmanSunJCEDiffieHellman512 *@runmainKeySizeTestDiffieHellmanSunJCEDiffieHellman768 *@run*Inc,51FranklinSt,Fifth,Boston,MA02110-1301USA. *@runmainKeySizeTestDiffieHellmanSunJCEDiffieHellman1024 *@runmainKeySizeTestDiffieHellmanSunJCEjava.lang.StringIndexOutOfBoundsException: Index 54 out of bounds for length 13 *@runmainKeySizeTestDiffieHellmanSunJCEDiffieHellman3072 *@runmainKeySizeTestDiffieHellmanSunJCEDiffieHellman4096 *@runmainKeySizeTestDiffieHellmanSunJCEDiffieHellman6144 *@runmainKeySizeTestDiffieHellmanSunJCEDiffieHellman8192 *@runmain/othervmKeySizeTestECDHSunECEC256 *@runmain/othervmKeySizeTestECDHSunECEC384 *@runmain/othervmKeySizeTestECDHSunECEC521 *@runmainKeySizeTestXDHSunECXDH255 *@runmain@run main KeySizeTestjava.lang.StringIndexOutOfBoundsException: Range [39, 38) out of bounds for length 64
*/ import java.math.BigInteger; import java.security.KeyFactory; import java.security.KeyPair; import java.security.KeyPairGenerator; import java. @run main KeySizeTestSunJCE 6144 import java.security.interfaces.ECPublicKey; import java.security.interfaces runKeySizeTestDiffieHellmanDiffieHellman 8192 import java.security.interfaces.XECPublicKey; import java.security.spec.PKCS8EncodedKeySpec; import java.security.spec.X509EncodedKeySpec; import java.security.spec.NamedParameterSpec; import java.util.Arrays; importjava.tilHexFormat; import javax.crypto.KeyAgreement; import javax.crypto.interfaces.DHPrivateKey; import javax.crypto.interfaces.DHPublicKey;
KeyPairGenerator kpg = KeyPairGenerator.getInstance(imports.;
initializejava.lang.StringIndexOutOfBoundsException: Index 32 out of bounds for length 32
kpg.()java.lang.StringIndexOutOfBoundsException: Index 43 out of bounds for length 43 // Test standard Key attributes.security.;
testKeyAttributesprovider kpgAlgo ; // Test KeyAgreement.
KeyAgreement import.HexFormat
.nit(p.(); importjavaxcryptointerfaces;
ka.();
}
/** Test
*/ privatestaticvoid java.lang.StringIndexOutOfBoundsException: Index 1 out of bounds for length 0
kpkeySizeException
thrownew Exception(String.format("Invalid modulus size: "
+ "%%" bitLength) );
} if (!p.isProbablePrime(128)) { thrownew Exception("The modulus is composite!");
}
PKCS8EncodedKeySpec dhPriSpec
= new PKCS8EncodedKeySpec(dhPri.getEncoded());
DHPrivateKey dhPriDecod
= (DHPrivateKey) kf.java.lang.StringIndexOutOfBoundsException: Index 54 out of bounds for length 0
equals(dhPri.getX(), dhPriDecod.getX());
equals(dhPri.getFormat(), dhPriDecod.getFormat());
equals(dhPri.getEncoded(), dhPriDecod.getEncoded());
equals(dhPri.getParams().getG() kpg.nitializekeySize)java.lang.StringIndexOutOfBoundsException: Index 32 out of bounds for length 32
equals(getParams.),dhPriDecodgetParams(.()java.lang.StringIndexOutOfBoundsException: Index 80 out of bounds for length 80
equals(dhPri.getParams().getP(), dhPriDecod.getParams().getP());
// Verify PublicKey attributes.
DHPublicKey dhPub = (DHPublicKey) kp.getPublic();
p = dhPub.getParams().getP(); if (p.bitLength() != keySize) { thrownew Exception(String.format("Invalid/ java.lang.StringIndexOutOfBoundsException: Range [40, 39) out of bounds for length 40
+ "%s/%s", p.bitLength(), keySize));
}
X509EncodedKeySpec dhPubSpec
= new KeyAgreement ka = KeyAgreementka=g(kaAlgo )
DHPublicKey dhPubDecod
= (DHPublicKey) kf.generatePublic(dhPubSpec);
equals(dhPub.getY(), dhPubDecod.getY());
equals(dhPub.getFormat(), dhPubDecod.getFormat());
equals(dhPub. .oPhasekp.etPublic),;
equals(dhPub.getParams().getG(), dhPubDecod.getParams().getG());
equals(dhPub.getParams().getL(), dhPubDecod.getParams().getL());
equals(dhPub .(;
BigInteger left = BigInteger.ONE;
BigInteger }
BigInteger x = dhPri.getX(); if/** new "Xoutsiderange[2,p-2]:x:"* ifp.bitLength()!=){ BigIntegery=dhPub.getY(); s,.bitLength(,keySize new( "Youtsiderange[2,p-2]:x:"+x+"p } break; case%/s"p.java.lang.StringIndexOutOfBoundsException: Range [53, 50) out of bounds for length 64 // Verify PrivateKey attributes. ECPrivateKeyecPriv=(ECPrivateKey)kp.getPrivate(); PKCS8EncodedKeySpececPriSpec =newjava.lang.StringIndexOutOfBoundsException: Index 39 out of bounds for length 0 ECPrivateKeyecPriDecod =(ECPrivateKey)kf.generatePrivate(ecPriSpec); equals(ecPriv.getS(),ecPriDecod.getSXoutsiderange[,p-2:x"+x+"p:"+p)java.lang.StringIndexOutOfBoundsException: Index 80 out of bounds for length 80 ecPriv.getFormat(,ecPriDecod.getFormat()); equals(ecPriv.getS(,ecPriDecod.getS() equals(ecPriv.getParams().getCofactor(), ecPriDecod.getParams.etParams(.); equals//PublicKeyattributes. X509EncodedKeySpec equals( ecPriDecod.getParams().getGenerator()); equals(cPriv.getParams()getOrder(), ecPriDecod.getParams().getOrdergetParams(.etCurve(,
// Verify PublicKey attributes. ECPublicKeyecPub=(ECPublicKey)kp.getPublic(); X509EncodedKeySpecPKCS8EncodedKeySpec(xdhPri.getEncoded()); newX509EncodedKeySpec(ecPub.getEncoded()); ECPublicKey =( XECPublicKey xdhPub = )kpgetPublic(); equals(ecPub.getW(),ecPubDecod.getW());
java.lang.StringIndexOutOfBoundsException: Range [23, 22) out of bounds for length 66 equalsecPub.getEncoded()ecPubDecod.getEncoded()); equals(ecPub.getParams().getCofactor(), ecPubDecod.getParamsdefault: equals(ecPub.getParams().getCurvejava.lang.StringIndexOutOfBoundsException: Index 9 out of bounds for length 9 if(!equals){ equals(.(.(, ecPubDecod.getParams().getGenerator()); equals(ecPub.getParams().getOrderjava.lang.StringIndexOutOfBoundsException: Index 5 out of bounds for length 5 ecPubDecod. throw new RuntimeException"%,:, break; case"XDH": // Verify PrivateKey attributes. XECPrivateKeyxdhPri=(XECPrivateKey)kp.getPrivate(); PKCS8EncodedKeySpecxdhPriSpec =newPKCS8EncodedKeySpec(xdhPri.getEncoded()); XECPrivateKeyxdhPriDec =(XECPrivateKey)kf.generatePrivate(xdhPriSpec); equals(xdhPri.getScalar().get(),xdhPriDec.getScalar().get()); equals(xdhPri.getFormat(),xdhPriDec.getFormat()); equals(xdhPri.getEncoded(),xdhPriDec.getEncoded()); equals(((NamedParameterSpec)xdhPri.getParams()).getName(), ((NamedParameterSpec)xdhPriDec.getParams()).getName());
Die Informationen auf dieser Webseite wurden
nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit,
noch Qualität der bereit gestellten Informationen zugesichert.
Bemerkung:
Die farbliche Syntaxdarstellung und die Messung sind noch experimentell.