Adding test vectors RSA primitives with truncated hashes:
SHA-512/224 and SHA-512/256. I don't expect these hashes to be heavily used. But there is some potential for incompatibilities. E.g. BouncyCastle previously used algorithm names such as "SHA512(224)WITHRSA" while jdk uses "SHA512/224WithRSA". RSA-OAEP would in principle allow the same hashes as RSA-PSS, but the algorithm name in JCA is not well-defined, using truncated hashes with OAEP doesn't make much sense, and providers don't seem to implement it. Test results: jdk11 supports the truncated signatures. BouncyCastle does not support the algorithm names ConsCrypt does not support the algorithms. Tested in a different CL: boringSSL does not implement the algorithms. Bugs: b/120406853 is about an alternative ASN encoding of PSS-keys. This is an encoding that contains all the parameters of signature scheme. This will be added by jdk11. But so far, jdk11 fails to read its own key encodings. I have test vectors for this encoding, but can't add them without having at least one library accepting them. NOKEYCHECK=True PiperOrigin-RevId: 275018282 GitOrigin-RevId: 42c8b6d8e768858b6ec5a273d53f1e111268ecd7
This commit is contained in:
@@ -85,6 +85,10 @@ public class JsonSignatureTest {
|
||||
return "SHA384";
|
||||
} else if (md.equalsIgnoreCase("SHA-512")) {
|
||||
return "SHA512";
|
||||
} else if (md.equalsIgnoreCase("SHA-512/224")) {
|
||||
return "SHA512/224";
|
||||
} else if (md.equalsIgnoreCase("SHA-512/256")) {
|
||||
return "SHA512/256";
|
||||
}
|
||||
return md;
|
||||
}
|
||||
@@ -759,7 +763,7 @@ public class JsonSignatureTest {
|
||||
// Testing RSA PKCS#1 v1.5 signatures.
|
||||
@Test
|
||||
public void testRsaSigning() throws Exception {
|
||||
testSigning("rsa_sig_gen_misc_test.json", "RSA", Format.RAW, false);
|
||||
testSigning("rsa_sig_gen_misc_test.json", "RSA", Format.RAW, true);
|
||||
}
|
||||
|
||||
@Test
|
||||
@@ -777,6 +781,11 @@ public class JsonSignatureTest {
|
||||
testVerification("rsa_signature_2048_sha256_test.json", "RSA", Format.RAW, false);
|
||||
}
|
||||
|
||||
@Test
|
||||
public void testRsaSignatures2048sha384() throws Exception {
|
||||
testVerification("rsa_signature_2048_sha384_test.json", "RSA", Format.RAW, false);
|
||||
}
|
||||
|
||||
@Test
|
||||
public void testRsaSignatures2048sha512() throws Exception {
|
||||
testVerification("rsa_signature_2048_sha512_test.json", "RSA", Format.RAW, false);
|
||||
@@ -807,6 +816,28 @@ public class JsonSignatureTest {
|
||||
testVerification("rsa_signature_4096_sha512_test.json", "RSA", Format.RAW, false);
|
||||
}
|
||||
|
||||
// RSA signatures with truncated hashes. Tests may be skipped if the provider
|
||||
// does not support the hash.
|
||||
@Test
|
||||
public void testRsaSignatures2048sha512_224() throws Exception {
|
||||
testVerification("rsa_signature_2048_sha512_224_test.json", "RSA", Format.RAW, true);
|
||||
}
|
||||
|
||||
@Test
|
||||
public void testRsaSignatures2048sha512_256() throws Exception {
|
||||
testVerification("rsa_signature_2048_sha512_256_test.json", "RSA", Format.RAW, true);
|
||||
}
|
||||
|
||||
@Test
|
||||
public void testRsaSignatures3072sha512_256() throws Exception {
|
||||
testVerification("rsa_signature_3072_sha512_256_test.json", "RSA", Format.RAW, true);
|
||||
}
|
||||
|
||||
@Test
|
||||
public void testRsaSignatures4096sha512_256() throws Exception {
|
||||
testVerification("rsa_signature_4096_sha512_256_test.json", "RSA", Format.RAW, true);
|
||||
}
|
||||
|
||||
// RSA signatures with SHA-3. Not every provider supports SHA-3. Hence the tests
|
||||
// may be skipped.
|
||||
@Test
|
||||
|
||||
@@ -20,15 +20,21 @@ import com.google.gson.JsonElement;
|
||||
import com.google.gson.JsonObject;
|
||||
import com.google.security.wycheproof.WycheproofRunner.NoPresubmitTest;
|
||||
import com.google.security.wycheproof.WycheproofRunner.ProviderType;
|
||||
import java.lang.reflect.Constructor;
|
||||
import java.math.BigInteger;
|
||||
import java.security.AlgorithmParameters;
|
||||
import java.security.GeneralSecurityException;
|
||||
import java.security.KeyFactory;
|
||||
import java.security.KeyPair;
|
||||
import java.security.KeyPairGenerator;
|
||||
import java.security.NoSuchAlgorithmException;
|
||||
import java.security.PublicKey;
|
||||
import java.security.Signature;
|
||||
import java.security.SignatureException;
|
||||
import java.security.spec.AlgorithmParameterSpec;
|
||||
import java.security.spec.MGF1ParameterSpec;
|
||||
import java.security.spec.PSSParameterSpec;
|
||||
import java.security.spec.RSAKeyGenParameterSpec;
|
||||
import java.security.spec.X509EncodedKeySpec;
|
||||
import java.util.HashSet;
|
||||
import java.util.Set;
|
||||
@@ -42,6 +48,96 @@ import org.junit.runners.JUnit4;
|
||||
@RunWith(JUnit4.class)
|
||||
public class RsaPssTest {
|
||||
|
||||
/**
|
||||
* Returns an AlgorithmParameterSpec for generating a RSASSA-PSS key,
|
||||
* which include the PSSParameters.
|
||||
* Requires jdk11.
|
||||
*
|
||||
* @param keySizeInBits the size of the modulus in bits.
|
||||
* @param sha the name of the hash function for hashing the input (e.g. "SHA-256")
|
||||
* @param mgf the name of the mask generating function (typically "MGF1")
|
||||
* @param mgfSha the name of the hash function for the mask generating function
|
||||
* (typically the same as sha).
|
||||
* @param saltLength the length of the salt in bytes (typically the digest size of sha,
|
||||
* i.e. 32 for "SHA-256")
|
||||
* @throws NoSuchMethodException if the AlgorithmParameterSpec is not
|
||||
* supported (i.e. this happens before jdk11).
|
||||
*/
|
||||
public RSAKeyGenParameterSpec getPssAlgorithmParameters(
|
||||
int keySizeInBits,
|
||||
String sha,
|
||||
String mgf,
|
||||
String mgfSha,
|
||||
int saltLength) throws Exception {
|
||||
BigInteger publicExponent = new BigInteger("65537");
|
||||
PSSParameterSpec params =
|
||||
new PSSParameterSpec(sha, mgf, new MGF1ParameterSpec(mgfSha), saltLength, 1);
|
||||
// Uses reflection to call
|
||||
// public RSAKeyGenParameterSpec(int keysize, BigInteger publicExponent,
|
||||
// AlgorithmParameterSpec keyParams)
|
||||
// because this method is only supported in jdk11. This throws a NoSuchMethodException
|
||||
// for older jdks.
|
||||
Constructor<RSAKeyGenParameterSpec> c =
|
||||
RSAKeyGenParameterSpec.class.getConstructor(
|
||||
int.class, BigInteger.class, AlgorithmParameterSpec.class);
|
||||
return c.newInstance(keySizeInBits, publicExponent, params);
|
||||
}
|
||||
|
||||
/**
|
||||
* Tries encoding and decoding of RSASSA-PSS keys generated with RSASSA-PSS.
|
||||
*
|
||||
* RSASSA-PSS keys contain the PSSParameters, hence their encodings are
|
||||
* somewhat different than plain RSA keys.
|
||||
*/
|
||||
@NoPresubmitTest(
|
||||
providers = {ProviderType.OPENJDK},
|
||||
bugs = {"b/120406853"}
|
||||
)
|
||||
@Test
|
||||
public void testEncodeDecodePublic() throws Exception {
|
||||
int keySizeInBits = 2048;
|
||||
PublicKey pub;
|
||||
try {
|
||||
KeyPairGenerator keyGen = KeyPairGenerator.getInstance("RSASSA-PSS");
|
||||
keyGen.initialize(keySizeInBits);
|
||||
KeyPair keypair = keyGen.genKeyPair();
|
||||
pub = keypair.getPublic();
|
||||
} catch (NoSuchAlgorithmException ex) {
|
||||
System.out.println("Key generation for RSASSA-PSS is not supported.");
|
||||
return;
|
||||
}
|
||||
byte[] encoded = pub.getEncoded();
|
||||
assertEquals(
|
||||
"The test assumes that the public key is in X.509 format", "X.509", pub.getFormat());
|
||||
System.out.println("Generated RSA-PSS key");
|
||||
System.out.println(TestUtil.bytesToHex(encoded));
|
||||
KeyFactory kf = KeyFactory.getInstance("RSASSA-PSS");
|
||||
X509EncodedKeySpec spec = new X509EncodedKeySpec(encoded);
|
||||
kf.generatePublic(spec);
|
||||
|
||||
// Tries to generate another pair or keys. This time the generator is given an
|
||||
// RSAKeyGenParameterSpec containing the key size an the PSS parameters.
|
||||
String sha = "SHA-256";
|
||||
String mgf = "MGF1";
|
||||
int saltLength = 20;
|
||||
try {
|
||||
RSAKeyGenParameterSpec params =
|
||||
getPssAlgorithmParameters(keySizeInBits, sha, mgf, sha, saltLength);
|
||||
KeyPairGenerator keyGen = KeyPairGenerator.getInstance("RSASSA-PSS");
|
||||
keyGen.initialize(params);
|
||||
KeyPair keypair = keyGen.genKeyPair();
|
||||
pub = keypair.getPublic();
|
||||
} catch (NoSuchAlgorithmException | NoSuchMethodException ex) {
|
||||
System.out.println("Key generation for RSASSA-PSS is not supported.");
|
||||
return;
|
||||
}
|
||||
byte[] encoded2 = pub.getEncoded();
|
||||
System.out.println("Generated RSA-PSS key with PSS parameters");
|
||||
System.out.println(TestUtil.bytesToHex(encoded2));
|
||||
X509EncodedKeySpec spec2 = new X509EncodedKeySpec(encoded2);
|
||||
kf.generatePublic(spec2);
|
||||
}
|
||||
|
||||
/**
|
||||
* Tests the default parameters used for a given algorithm name.
|
||||
*
|
||||
@@ -128,6 +224,14 @@ public class RsaPssTest {
|
||||
* are the same. It expects that the saltLength is the same as the size of the message digest.
|
||||
* It expects that the default for the trailerField is 1. These expectations are based on
|
||||
* existing implementations. They differ from the ASN defaults in RFC 8017.
|
||||
*
|
||||
* <p>There is no test for defaults for the algorithm name "RSASSA-PSS".
|
||||
* "RSASSA-PSS" does not specify any parameters. Using the default values from RFC 8017
|
||||
* (i.e. SHA-1 for both hashes) leads to potential weaknesses and hence is of course a bad
|
||||
* choice. Other defaults lead to incompatibilities and hence isn't a reasonable choice either.
|
||||
* jdk11 requires that the parameters are always specified. BouncyCastle however uses the SHA-1
|
||||
* default. The behaviour in jdk11 is preferable, since it requires that an implementor chooses
|
||||
* PSSParameters explicitly, and does not default to weak behaviour.
|
||||
*/
|
||||
@Test
|
||||
public void testDefaults() throws Exception {
|
||||
@@ -136,18 +240,14 @@ public class RsaPssTest {
|
||||
testDefaultForAlgorithm("SHA256withRSAandMGF1", "SHA-256", "MGF1", "SHA-256", 32, 1);
|
||||
testDefaultForAlgorithm("SHA384withRSAandMGF1", "SHA-384", "MGF1", "SHA-384", 48, 1);
|
||||
testDefaultForAlgorithm("SHA512withRSAandMGF1", "SHA-512", "MGF1", "SHA-512", 64, 1);
|
||||
testDefaultForAlgorithm("SHA512/224withRSAandMGF1", "SHA-512", "MGF1", "SHA-512", 28, 1);
|
||||
testDefaultForAlgorithm("SHA512/256withRSAandMGF1", "SHA-512", "MGF1", "SHA-512", 32, 1);
|
||||
testDefaultForAlgorithm(
|
||||
"SHA512/224withRSAandMGF1", "SHA-512/224", "MGF1", "SHA-512/224", 28, 1);
|
||||
testDefaultForAlgorithm(
|
||||
"SHA512/256withRSAandMGF1", "SHA-512/256", "MGF1", "SHA-512/256", 32, 1);
|
||||
testDefaultForAlgorithm("SHA3-224withRSAandMGF1", "SHA3-224", "MGF1", "SHA3-224", 28, 1);
|
||||
testDefaultForAlgorithm("SHA3-256withRSAandMGF1", "SHA3-256", "MGF1", "SHA3-256", 32, 1);
|
||||
testDefaultForAlgorithm("SHA3-384withRSAandMGF1", "SHA3-384", "MGF1", "SHA3-384", 48, 1);
|
||||
testDefaultForAlgorithm("SHA3-512withRSAandMGF1", "SHA3-512", "MGF1", "SHA3-512", 64, 1);
|
||||
// TODO(bleichen): Should there be any expectations for RSASSA-PSS?
|
||||
// RSASSA-PSS does not specify any parameters. Using the default values from RFC 8017
|
||||
// (i.e. SHA-1 for both hashes) leads to potential weaknesses. jdk11 requires that
|
||||
// the parameters are always specified. BouncyCastle however uses the SHA-1 default.
|
||||
// Is this a bug?
|
||||
// testDefaultForAlgorithm("RSASSA-PSS", "SHA-256", "MGF1", "SHA-256", 32, 1);
|
||||
}
|
||||
|
||||
/** Convenience mehtod to get a String from a JsonObject */
|
||||
@@ -165,9 +265,9 @@ public class RsaPssTest {
|
||||
* Oracle previously specified that algorithm names for RSA-PSS are strings like
|
||||
* "SHA256WITHRSAandMGF1".
|
||||
* See http://docs.oracle.com/javase/8/docs/technotes/guides/security/StandardNames.html
|
||||
*
|
||||
* <p> But the implementation in jdk11 only support "RSASSA-PSS". This function simply attempts
|
||||
* to return an algorithm name that works.
|
||||
* These algorithm names fail to specify the hash function for the MGF. A cleaner solution
|
||||
* in jdk11 is to use the algorithm name "RSASSA-PSS" and specify the parameters separately.
|
||||
* This function simply attempts to return an algorithm name that works.
|
||||
*
|
||||
* @param group A json dictionary containing a field "sha" with message digest (e.g. "SHA-256")
|
||||
* and the a field "mgf" for the mask generation function (e.g. "MGF1").
|
||||
@@ -192,6 +292,10 @@ public class RsaPssTest {
|
||||
md = "SHA384";
|
||||
} else if (md.equals("SHA-512")) {
|
||||
md = "SHA512";
|
||||
} else if (md.equals("SHA-512/224")) {
|
||||
md = "SHA512/224";
|
||||
} else if (md.equals("SHA-512/256")) {
|
||||
md = "SHA512/256";
|
||||
}
|
||||
return md + "WITHRSAand" + mgf;
|
||||
}
|
||||
@@ -203,9 +307,14 @@ public class RsaPssTest {
|
||||
* the key in ASN encoding encoded hexadecimal "keyPem": the key in Pem format encoded hexadecimal
|
||||
* The test can use the format that is most convenient.
|
||||
*/
|
||||
protected static PublicKey getPublicKey(JsonObject object) throws Exception {
|
||||
protected static PublicKey getPublicKey(JsonObject object, boolean pssParamsIncluded)
|
||||
throws Exception {
|
||||
KeyFactory kf;
|
||||
if (pssParamsIncluded) {
|
||||
kf = KeyFactory.getInstance("RSASSA-PSS");
|
||||
} else {
|
||||
kf = KeyFactory.getInstance("RSA");
|
||||
}
|
||||
byte[] encoded = TestUtil.hexToBytes(getString(object, "keyDer"));
|
||||
X509EncodedKeySpec x509keySpec = new X509EncodedKeySpec(encoded);
|
||||
return kf.generatePublic(x509keySpec);
|
||||
@@ -255,8 +364,16 @@ public class RsaPssTest {
|
||||
* @param allowSkippingKeys if true then keys that cannot be constructed will not fail the test.
|
||||
* This is for example used for files with test vectors that use elliptic curves that are not
|
||||
* commonly supported.
|
||||
* @param paramsIncluded if true then the enoding of the public key contains the PSS parameters.
|
||||
* The algorithm parameters of PSS are defined in appendix A.2 of RFC 8017. One option is not
|
||||
* to include the parameters and use { OID rsaEncryption PARAMETERS NULL } for the algorithm
|
||||
* identifier. Another option is to include the parameters by using
|
||||
* { OID id-RSASSA-PSS PARAMETERS RSASSA-PSS-params } as algorithm identifier.
|
||||
* The second option requires that an RSAKey contains an AlgorithmParameterSpec. The
|
||||
* AlgorithmParameterSpec is a recent addition made in jdk11. Hence many providers are
|
||||
* currently not supporting this.
|
||||
**/
|
||||
public void testRsaPss(String filename, boolean allowSkippingKeys)
|
||||
public void testRsaPss(String filename, boolean allowSkippingKeys, boolean paramsIncluded)
|
||||
throws Exception {
|
||||
// Testing with old test vectors may be a reason for a test failure.
|
||||
// Generally mismatched version numbers are of little or no concern, since
|
||||
@@ -281,6 +398,7 @@ public class RsaPssTest {
|
||||
int cntTests = 0;
|
||||
int errors = 0;
|
||||
int skippedKeys = 0;
|
||||
int verifiedTests = 0;
|
||||
Set<String> skippedAlgorithms = new HashSet<String>();
|
||||
for (JsonElement g : test.getAsJsonArray("testGroups")) {
|
||||
JsonObject group = g.getAsJsonObject();
|
||||
@@ -288,10 +406,12 @@ public class RsaPssTest {
|
||||
PublicKey key = null;
|
||||
Signature verifier = null;
|
||||
try {
|
||||
key = getPublicKey(group);
|
||||
PSSParameterSpec pssParams = getPSSParams(group);
|
||||
key = getPublicKey(group, paramsIncluded);
|
||||
verifier = Signature.getInstance(algorithm);
|
||||
if (!paramsIncluded) {
|
||||
PSSParameterSpec pssParams = getPSSParams(group);
|
||||
verifier.setParameter(pssParams);
|
||||
}
|
||||
} catch (GeneralSecurityException ex) {
|
||||
if (allowSkippingKeys) {
|
||||
skippedKeys++;
|
||||
@@ -359,13 +479,27 @@ public class RsaPssTest {
|
||||
+ " sig:"
|
||||
+ sig);
|
||||
errors++;
|
||||
} else if (verified) {
|
||||
verifiedTests++;
|
||||
}
|
||||
}
|
||||
}
|
||||
System.out.println("Number of skipped keys:" + skippedKeys);
|
||||
|
||||
// Prints some information if tests were skipped. This avoids giving
|
||||
// the impression that algorithms are supported.
|
||||
if (skippedKeys > 0 || verifiedTests == 0) {
|
||||
System.out.println(
|
||||
"File:"
|
||||
+ filename
|
||||
+ " number of skipped keys:"
|
||||
+ skippedKeys
|
||||
+ " verified signatures:"
|
||||
+ verifiedTests);
|
||||
for (String s : skippedAlgorithms) {
|
||||
System.out.println("Skipped algorithms " + s);
|
||||
}
|
||||
}
|
||||
|
||||
assertEquals(0, errors);
|
||||
if (skippedKeys == 0) {
|
||||
assertEquals(numTests, cntTests);
|
||||
@@ -376,7 +510,7 @@ public class RsaPssTest {
|
||||
|
||||
@Test
|
||||
public void testRsaPss2048Sha256() throws Exception {
|
||||
testRsaPss("rsa_pss_2048_sha256_mgf1_32_test.json", true);
|
||||
testRsaPss("rsa_pss_2048_sha256_mgf1_32_test.json", true, false);
|
||||
}
|
||||
|
||||
@NoPresubmitTest(
|
||||
@@ -385,22 +519,50 @@ public class RsaPssTest {
|
||||
)
|
||||
@Test
|
||||
public void testRsaPss3072Sha256() throws Exception {
|
||||
testRsaPss("rsa_pss_3072_sha256_mgf1_32_test.json", true);
|
||||
testRsaPss("rsa_pss_3072_sha256_mgf1_32_test.json", true, false);
|
||||
}
|
||||
|
||||
@Test
|
||||
public void testRsaPss4096Sha256() throws Exception {
|
||||
testRsaPss("rsa_pss_4096_sha256_mgf1_32_test.json", true);
|
||||
testRsaPss("rsa_pss_4096_sha256_mgf1_32_test.json", true, false);
|
||||
}
|
||||
|
||||
@Test
|
||||
public void testRsaPss4096Sha512() throws Exception {
|
||||
testRsaPss("rsa_pss_4096_sha512_mgf1_32_test.json", true);
|
||||
testRsaPss("rsa_pss_4096_sha512_mgf1_32_test.json", true, false);
|
||||
}
|
||||
|
||||
@Test
|
||||
public void testRsaPss2048Sha256NoSalt() throws Exception {
|
||||
testRsaPss("rsa_pss_2048_sha256_mgf1_0_test.json", true);
|
||||
testRsaPss("rsa_pss_2048_sha256_mgf1_0_test.json", true, false);
|
||||
}
|
||||
|
||||
@Test
|
||||
public void testRsaPss2048Sha512_224() throws Exception {
|
||||
testRsaPss("rsa_pss_2048_sha512_256_mgf1_28_test.json", true, false);
|
||||
}
|
||||
|
||||
@Test
|
||||
public void testRsaPss2048Sha512_256() throws Exception {
|
||||
testRsaPss("rsa_pss_2048_sha512_256_mgf1_32_test.json", true, false);
|
||||
}
|
||||
|
||||
// BouncyCastle and Conscrypt do not support RSA-PSS Parameters in the
|
||||
// encoding of the key. jdk11 should support this, but as long as
|
||||
// testEncodeDecodePublic fails it makes no sense to try this test.
|
||||
/*
|
||||
@ExcludedTest(
|
||||
providers = {ProviderType.BOUNCY_CASTLE, ProviderType.CONSCRYPT},
|
||||
comment = "RSA-PSS parameters in RSAKeys is added in jdk11"
|
||||
)
|
||||
@NoPresubmitTest(
|
||||
providers = {ProviderType.OPENJDK},
|
||||
bugs={"jdk can't read the keys"}
|
||||
)
|
||||
@Test
|
||||
public void testRsaPss2048Sha256WithParams() throws Exception {
|
||||
testRsaPss("rsa_pss_2048_sha256_mgf1_32_params_test.json", false, true);
|
||||
}
|
||||
*/
|
||||
}
|
||||
|
||||
|
||||
@@ -0,0 +1,429 @@
|
||||
{
|
||||
"algorithm" : "RSASSA-PSS",
|
||||
"generatorVersion" : "0.8rc16",
|
||||
"numberOfTests" : 50,
|
||||
"header" : [
|
||||
"Test vectors of class RsassaPssVerify are intended for checking the",
|
||||
"verification of RSASSA-PSS signatures."
|
||||
],
|
||||
"notes" : {
|
||||
},
|
||||
"schema" : "rsassa_pss_verify_schema.json",
|
||||
"testGroups" : [
|
||||
{
|
||||
"e" : "010001",
|
||||
"keyAsn" : "3082010a0282010100a38fbcf34eef1810cb2ae21fef1e9a1e037f7d25d43e8b4f051ea74c367bddb2327a7bccc5334fe610f7a9855e2b76c1e9715970c22c274616fd9460d727afe9a149c23b6b9730c13c4f6213e0c112a49db2e55993b60c520eb73042c7a0b1bfe4e27b11a4c7395057235233fd8ab3898ad56a7893077bbc4414b4089a594c9cbec5deca092efb4d84d977b9f37fd982341da963a20af680ff4a774ec85a104a684648b0a90b6cc4f7d4808db666ebab808a21020f8c005c6793f196187811935526caf1b6cee47a0c14e0823f87d7aa82e9f5a635ca116686d2da719cda269c39d863571c606e5ce5334254e49648fcfcf502a1321cc071f1000d562723156f0203010001",
|
||||
"keyDer" : "30820122300d06092a864886f70d01010105000382010f003082010a0282010100a38fbcf34eef1810cb2ae21fef1e9a1e037f7d25d43e8b4f051ea74c367bddb2327a7bccc5334fe610f7a9855e2b76c1e9715970c22c274616fd9460d727afe9a149c23b6b9730c13c4f6213e0c112a49db2e55993b60c520eb73042c7a0b1bfe4e27b11a4c7395057235233fd8ab3898ad56a7893077bbc4414b4089a594c9cbec5deca092efb4d84d977b9f37fd982341da963a20af680ff4a774ec85a104a684648b0a90b6cc4f7d4808db666ebab808a21020f8c005c6793f196187811935526caf1b6cee47a0c14e0823f87d7aa82e9f5a635ca116686d2da719cda269c39d863571c606e5ce5334254e49648fcfcf502a1321cc071f1000d562723156f0203010001",
|
||||
"keyPem" : "-----BEGIN PUBLIC KEY-----\nMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAo4+8807vGBDLKuIf7x6a\nHgN/fSXUPotPBR6nTDZ73bIyenvMxTNP5hD3qYVeK3bB6XFZcMIsJ0YW/ZRg1yev\n6aFJwjtrlzDBPE9iE+DBEqSdsuVZk7YMUg63MELHoLG/5OJ7EaTHOVBXI1Iz/Yqz\niYrVaniTB3u8RBS0CJpZTJy+xd7KCS77TYTZd7nzf9mCNB2pY6IK9oD/SndOyFoQ\nSmhGSLCpC2zE99SAjbZm66uAiiECD4wAXGeT8ZYYeBGTVSbK8bbO5HoMFOCCP4fX\nqoLp9aY1yhFmhtLacZzaJpw52GNXHGBuXOUzQlTklkj8/PUCoTIcwHHxAA1WJyMV\nbwIDAQAB\n-----END PUBLIC KEY-----",
|
||||
"keysize" : 2048,
|
||||
"mgf" : "MGF1",
|
||||
"mgfSha" : "SHA-512/224",
|
||||
"n" : "00a38fbcf34eef1810cb2ae21fef1e9a1e037f7d25d43e8b4f051ea74c367bddb2327a7bccc5334fe610f7a9855e2b76c1e9715970c22c274616fd9460d727afe9a149c23b6b9730c13c4f6213e0c112a49db2e55993b60c520eb73042c7a0b1bfe4e27b11a4c7395057235233fd8ab3898ad56a7893077bbc4414b4089a594c9cbec5deca092efb4d84d977b9f37fd982341da963a20af680ff4a774ec85a104a684648b0a90b6cc4f7d4808db666ebab808a21020f8c005c6793f196187811935526caf1b6cee47a0c14e0823f87d7aa82e9f5a635ca116686d2da719cda269c39d863571c606e5ce5334254e49648fcfcf502a1321cc071f1000d562723156f",
|
||||
"sLen" : 28,
|
||||
"sha" : "SHA-512/224",
|
||||
"type" : "RsassaPssVerify",
|
||||
"tests" : [
|
||||
{
|
||||
"tcId" : 1,
|
||||
"comment" : "",
|
||||
"msg" : "",
|
||||
"sig" : "5ff84226a80c8f9154a50083fe04ac1fe57a837a15e471b9bc61fa852b2e43b6f3418ca2a7130037d74955778e463f24b632d53af6dd141a2d91dfab14049b7762ebc0acfba459cd8c9ddd29a7b07e97d06db81d49beb9ed0cc9ba6dc0609788f6291e3753907c8ac11459b83a1c0a0acd3ef78f9ac68498d78409a1f3b54ef650f108d60e7267354787dcd5ff0c3648c3ad3a1796dea232bd9b8e816726109fb2e5749835ceb37375f8c3d8d6234b5828b0696b01e1479fe38935d27dba3654de38d1fedbbfc20e66a89b408111b4fd39eb451dab472a66fc8e3b31bc487bee3efb81c50dd9307e674e9dc8a47513ad119be1dd541741c1fce81b638d1f3fc1",
|
||||
"result" : "valid",
|
||||
"flags" : []
|
||||
},
|
||||
{
|
||||
"tcId" : 2,
|
||||
"comment" : "",
|
||||
"msg" : "0000000000000000000000000000000000000000",
|
||||
"sig" : "786f20dcc20f1b84f15dddb03cbb861d9bcbb41b303fa8ee98bfe6c9ef8af56a1047a1fe2032332bc0309ca4a6913f8aca617824a55729301a0db9d70414495cfe494edcd27a7b5338a27a2b21d8b675f1bc902a739f1129c661927d10537045b69c4504677b73efec551fc7690627b5c72a710ec3ceae49124f95f28d802da4c1bc894def8ff64a3d95ab56dcb54c1aa061c0d5f05ca5ed8a788cceabe1a542ae7d414b9aa97ab2129e88438ce48fa5c707dcf82809aa5538bb7bd9720c251dc17b01d871a6527bc3744f70dc9d130f5aceb7b2acd70cedb501cbd67b7841713b93a7094bb60f322691f25641c2b22b48805c11b07666f62672c726aea8d325",
|
||||
"result" : "valid",
|
||||
"flags" : []
|
||||
},
|
||||
{
|
||||
"tcId" : 3,
|
||||
"comment" : "",
|
||||
"msg" : "54657374",
|
||||
"sig" : "6b6f8cacce0e50429e5e60eb15ad4746ecad41d3bbb973a56cec1f783023e0f004a5c26ddf494cffca29d5d0edd1a9c52f181d69bf73450c61ea9ea0102bb412244d5b4ff6e2c216be76f452381708b45f0e80aeb6391a4ad5d389155fb5e5cb38e6a2e303e0bc63f52d27830bfd1e3807beedc5d9495b7d5cfd113dc0c6e1bc17085dea97bbca5f0d462b63bec5a664eb5c1ff587459038f5be7cdc4cdcb320d7686a0b97fffd2341eaf286e900176f85141710666c6bcf3a797f9e8282a7910825d7bf4d2930dc208aac366670701b583b84817e6369a2183054b894e505dcecf5405b2110f96b6b8b244542a466bf0f0f7141cddeee7f0613379028d1a5bc",
|
||||
"result" : "valid",
|
||||
"flags" : []
|
||||
},
|
||||
{
|
||||
"tcId" : 4,
|
||||
"comment" : "",
|
||||
"msg" : "313233343030",
|
||||
"sig" : "69f8f909c6f4cf4ed99950ccc28515588a9a781c2559de8e2ce8b0a73ff423be475b58d91d6eb57a70902604615fd9fab2e6bca6b5fd302eb02c5f4b6e35a7cd11320586f6295834b55d4c4f09c4a97b9ef22d2321a8f4eef1a3904a21657c34673ffb72d83ca044e42d7286c268132fac4e3c3376d4b270b3dda2bfe0e2beba2d8670a7c224bb7bc02713efbeef767d500eea4e3eff4c9158089c5f1d96f5c10a1654837d10e84d23bc84166b14c852a9af0ce20f4cf8a63b7b5adb775aae0dd2fa97cdbb588d36e70faba949e45541a83bb4e9ea3575264f8f1d821953d0af01db2a16ac4012ee97b9f1caebaece5ab1c944559b0c94414aecadd6666b19a4",
|
||||
"result" : "valid",
|
||||
"flags" : []
|
||||
},
|
||||
{
|
||||
"tcId" : 5,
|
||||
"comment" : "",
|
||||
"msg" : "4d657373616765",
|
||||
"sig" : "757f4eebdb0368378444058319f47c74d6a54d417110370fdad032ad2b9ac617413d43b12272dfd200f5f69944a9ccaff650aac5ec553c7577f9ab4b2b25a4bf86978d00bf125e99da8c03f1ef8ea223cf1c4bde5a6607ef62253a15514834b90297015cc248af27284438ebc3cb416627b25054cf719a9fd59f1572bbf00dc7b36d303dda6ce396f9fc8dc78112854d1a68c39cfb32b7c56f0c43aa5b86dbe19637a4f3ab56844b9ae4420a55afb454931f8d5cba5858a1fcebeff8df21a27b3349675e0090e9bab9bfd7562ab4bd569774fada45ecc38fc2cec0189bcade898b8de86cf39081bdd95f38d9502f20b129b4d9d465c1143a869d1fac58d827c7",
|
||||
"result" : "valid",
|
||||
"flags" : []
|
||||
},
|
||||
{
|
||||
"tcId" : 6,
|
||||
"comment" : "",
|
||||
"msg" : "61",
|
||||
"sig" : "37be3ac1e3fa1bf05800e2ee968a65d6580e653cdc6875efbd6908815336777a1d8fb3a3273a15d2be988bb1161799641704f6121c303d62a957689bb9023ea665561f5f2b01332ef71429d565987ba2d9be826f01e1d3dc427d87f514eca74a929774134673c3aeab24e68d24661b0b80577da320030d62d3c7c7e1a35300bd75cd120dbdac1d2aa97bf904ff9ef74af53237c3da14bdd57022f6a9b8fc93ab48227b735468bd8460c509cdd92779aa0dc6f273cbe45bbcd73ca6d32966cb33c8ae61743f18157d31c63b905ac86a14a5e822cdcec92b7d4267c6f8c912e360dd98fe724948b39ab546b2403daf740b78e955e20d37fee4504129fe4d4a7dc4",
|
||||
"result" : "valid",
|
||||
"flags" : []
|
||||
},
|
||||
{
|
||||
"tcId" : 7,
|
||||
"comment" : "",
|
||||
"msg" : "e0e1e2e3e4e5e6e7e8e9eaebecedeeeff0f1f2f3f4f5f6f7f8f9fafbfcfdfeff",
|
||||
"sig" : "382a6a00c02c93991f4e75caeaf199e9e6069e414cb6179162bf47cbd2ec0f59f214ff11207945b5621e29bd1d9d0b6ee5753ba47ded7b25b1ccf0dd0b6ef39302b170565c55f37e63fefc7ed799abc73ce75ab056ad1f1cf8d1c1b04205ce5020ba9c2fbdfba612867dd5ed8448ed79331ff31f19ea7b2a4ef9c91bea9e38697960363ab055165e4b68dd2f551c4102e483ae448a7c7320810c2849a157f2f91418b4f282d596b351f8ed7a5d4db07019668ed27b70d0e02ed70e962597c4f95e2e0bc8a1294e20a69b6b739bb9704b8557be2aa7b530d709563cd1cf966be8f06c83121249d34998c1ecb86f73f5b37ac49315f4dfdbd69e4e0b1dc32aa795",
|
||||
"result" : "valid",
|
||||
"flags" : []
|
||||
},
|
||||
{
|
||||
"tcId" : 8,
|
||||
"comment" : "first byte of m_hash modified",
|
||||
"msg" : "313233343030",
|
||||
"sig" : "01ad0532f0b111e7ebb6aa8e0e2a7d28770080621a0739cbc26bec1e0e6cd6d474b0f74a1dc82d32031d503bda62ebd2dca6cd2a28821c3c2579c720a9d9af1da2512b1fbb71fa74b65262dbeb1c6f09601388a721501532f2b37f4419870c95b0595007f2e8f8dc7182b7c71b27f7e6ebb84e736c107ec05140b257d317c262ad044224208960c6f31d715265d194076497d4521956f7a48cfc09428bbdcb4fc53ad8be1153698873f360ed09c9fe10d3b9d5eb2dfa0feac74a764be044b1cc5d5e7b6744455fa3889c6259080a9ec672a017c9e5b37ae87cae85d3db71f81785e344e01255acec8d79be308dacae9c31aa9008308b43126f7236f104f543c2",
|
||||
"result" : "invalid",
|
||||
"flags" : []
|
||||
},
|
||||
{
|
||||
"tcId" : 9,
|
||||
"comment" : "first byte of m_hash modified",
|
||||
"msg" : "313233343030",
|
||||
"sig" : "0d6e7e748aa537a309dc3b389cfab0b0b491c6f3e1acb1b19451413680e80fc3d98a1c33aab10185e0caa35fb78707f7b5df53da534ea88c0643eb2d8ca9d420423cdf1148a17579cc6b24fcf9ff9107aee8c5c4219d1069b42730e470165d70775b7160df2239bc1f1bae1cf7e88c86a96b44aba49883483a38b54814d5ba90540bc167c772f2fe7fc588dc7898d1bf9de863c2918f2468514f08393697c01df6b4c9c3448153f1a222936aff123dd64c18a6021fbb8ee33227529fc194282925e2a461568e74f14d072bfd1149b109b2a9af91e7cbf43dffbbba5e158218005f842e118604b38dd23a0ab5e7a3ec4524faec14aff19d886338d2d94b19eff2",
|
||||
"result" : "invalid",
|
||||
"flags" : []
|
||||
},
|
||||
{
|
||||
"tcId" : 10,
|
||||
"comment" : "last byte of m_hash modified",
|
||||
"msg" : "313233343030",
|
||||
"sig" : "9ef22c2eada93509c8a8c8d692d5f9bcc3fd4c8a114aa2f260a545a09e75512321d3d77e53614d928b713d962f2617a13205041451d479d0e39fe912e098c095386aed21a606dc82f0053d34595e51b8232628cb367133ef0fa98f4fade4b420a6383c7c0a8321b8560ac0eb5d397beedfe30b4c4aab58fe2310a18ef2905a9d5a65bd5f819e392bdac167a6d43323e3611ed7abf6445cf088ab11f3c739781e2f7a031fd780b202767e33c0e991b11a0aee840397fb8ce578b6513bf30917912eb2a06ac1300908734ff802ba0e3646593ff4f92a61cd2e19321ff0672e2afd902dee13bef67b197dfe1ac4e48ce17805ea67a5cf3c3a1c07ecadfe710a9634",
|
||||
"result" : "invalid",
|
||||
"flags" : []
|
||||
},
|
||||
{
|
||||
"tcId" : 11,
|
||||
"comment" : "last byte of m_hash modified",
|
||||
"msg" : "313233343030",
|
||||
"sig" : "88fe6b05bf1db8290753e21a7026665b12221ba79762c669a19110c02221e90138adbdd0147e52e69fc4817920834c9e4f32d7932d7597727d8b1e8ba88d5792cc0c7a4a99261c8bf447e569fd1d11f27b5441b985fc5b55134a3f3f10e5774ac6c426c55a081947b89b537eee0c7d2ae2f3ea68ba4f1d8884539e2d6a26c6db13250439e78965bbf130ee4ff2a18b423fe96595eaff510e7f8c2090b4cd418bb72ae0dbfcc8ccae2d96800a6da30782b339e0e5dff18df0cc01cb5ecf78a7e32bd811baddabd82979b8f9ebbbc2b8b73222660f30b5ca124231c797f6239fb5cf3c5e3e6ae9eb4d9e66b34c5b7f7fac3851060fc09d5b0dea7320abf3f67075",
|
||||
"result" : "invalid",
|
||||
"flags" : []
|
||||
},
|
||||
{
|
||||
"tcId" : 12,
|
||||
"comment" : "all bits in m_hash flipped",
|
||||
"msg" : "313233343030",
|
||||
"sig" : "4d1d0ff5e44d2a0a794ef9e4f8e138404824d7da33ba291c6954a061bcd0827dd02434442f6d38dd9da2ea8268c3af11bbf1bc191837b64cdbef0bc4db3601e5bec1cfb73321474a21ec88e43e12a6dd711f1f2cca44013c032617393571ae1c1e1e1a595cddd92214cf8ce8d3392397ba684db0e31bd09ac8e589b5f2b3ebf6a2d3403ae8d7ef7b2d0e1c35fd49b2eefc896efa336df8da42105305ebd398ca8bc2ce07733260e50871ffd6ccb03aa19fa5fd87e49a98326ab78ac7ae99f1291666982137a63fe546c3f34d550cfdcf4dfa74ae50e7822fb9cec5144d8afabed44aed61c3a98e84a3da7d3b76799e1ec0c936aec178d471e1a16387ae42c879",
|
||||
"result" : "invalid",
|
||||
"flags" : []
|
||||
},
|
||||
{
|
||||
"tcId" : 13,
|
||||
"comment" : "s_len changed to 0",
|
||||
"msg" : "313233343030",
|
||||
"sig" : "319e76fd40f8f971c06185874d61512c2814019e2f5c68f8aa637aaebd19e8df38faf33553348870c2e8b54830ae3dfcb71356a73e369fe62d5bb9df80cd9760a41bb29a64b86e5f5c0cba71f01dda35940366a8f49535cdf8f496caf348e4010965cf98e4ceed9393fb61d2252ed1716682b79054a2ddd6c315d478c522a7ce02b54c5a92171f0b7e2bbdf357145f830ac6f23aa620c1c43098e830134c0c1caa7e42b497d04bc72c49138acd6b50e5d82f71e370fadcf604b3da18b2a685dd99ecd8e00ee58d5deee5245b9e247d0ac80b3bca884860d1c31a677d481a00bc05f9d6ce3d17e908bac747895126e68c8d59a82cc3df9956a24b77be6e2ad39b",
|
||||
"result" : "invalid",
|
||||
"flags" : []
|
||||
},
|
||||
{
|
||||
"tcId" : 14,
|
||||
"comment" : "s_len changed to 20",
|
||||
"msg" : "313233343030",
|
||||
"sig" : "71242c490cc97734d18241fdc426217b8c7de089c180749d64d167e3fa96c9360541d3d6c9f63486d397539d8e81ff8063cf15e13826fb94618c638620f78fa81b21a63c1aa220d0ae1a235ce334592a0d8bed6e3468270cc3fb289e57fff3b746351d4e9d41e334578d1a7330fa9ceb47298f5638a786f90f7ff779f7a462691388b60a52cecf08b7a1038f154d8f75b4d666690b7d0b8f8eceee0c5d8b607bb7c0b96270dba0c4b5e51999fded5e6de5095a72d45b20945c47aebe717e8d995684582b099883431f4ed73b73549d41518e61d6dc76d957cd0d898a7cb551fbd2a65b650bb633e743f5a971b6c3b5637feba075b89885b362a7e0f0da3b9ee3",
|
||||
"result" : "invalid",
|
||||
"flags" : []
|
||||
},
|
||||
{
|
||||
"tcId" : 15,
|
||||
"comment" : "s_len changed to 32",
|
||||
"msg" : "313233343030",
|
||||
"sig" : "9258e3e3deffefc0fa406dfc1c62c581a8273cacb9342366db9c9c2984c6d008473131d5a6a78ec0d91cfd20d301181a86c334aa52cdf365384443963844ef085a5620bb2181597802b5dffa71b34084607a27fcdd7f7510eec13959d139ff1412c28ac9fddc33ae37733c767d71be6ec2034fa2cd28a418dc40cab3d02f2423b9d137f11d6707b67f11d30951e110c7c5c54facb0d069f09d54456dbdff2ad7aac5bc584d498426b6888d45a9e4cf1e7a20ac12af3b319d49e271ffe81aefb9a0ea1937dd7e59c1ccb6c189a1348825655c7176eeeefaf35f9de0e339187cd99ce7e0854c90075e5b9fc2a7c47017c6dd4c49c0d4e2474fec96e3c3aa8a023f",
|
||||
"result" : "invalid",
|
||||
"flags" : []
|
||||
},
|
||||
{
|
||||
"tcId" : 16,
|
||||
"comment" : "salt is all 0",
|
||||
"msg" : "313233343030",
|
||||
"sig" : "4a9fb8d1a04ffd36a34efa4505f99500db77657370b5bb8547a6428477b8099534eaca611de757b703b2506d463f52c26bbd9ff6bb7ffafc3ea38e86fefd936288854974cd4db84fd8a3bc31c12765cda55e76ee384ede82317ccd780286b56c1f916e545f735e4327faf05b9ec4d5095094adb19e55fa6703b92277533fe9bcb93a0052d5dfed49301517b238d8e125e2dee483e4d2839b8a7fa88d0fdee0164c08ae866b89cc7fe3bd494a2d2a3c2e3707af257cc7bae53cd93b86a19dcc73985080c035b344ae4fe89247a5165ce7bdc1b1513dc5bc693c497a03ff761f8991e524dd779bdf2f796c7c43a4e6f453752eac1097dc3c0a92830e01bca56258",
|
||||
"result" : "valid",
|
||||
"flags" : []
|
||||
},
|
||||
{
|
||||
"tcId" : 17,
|
||||
"comment" : "salt is all 1",
|
||||
"msg" : "313233343030",
|
||||
"sig" : "474593ea47013e62b7156604c261943b3b6eba25e90e339ca6659a054bcd0a06c100545120f0a32d614c428de28af005f867da74e44c2dfed0e791d6fdc9b42b5cc52fa98690f053f7ec140c6286d808e2cbdeb0c7d910211bfef2fc0f901df4958df6153294f0ddd7709fbec92adc3cc2a3d94f3e8b983c22db19c51932ef47fc2e0892e49f43f42bddade886a3d65c3049d391718439da47d1fbb4d4e23c6c025cd1143bf9f8ebfed3723c96dda126af0a235e3a20f716ddf27d74f7f1d2b0e2354d16c6eefa205739a6775297e905a762d2b43d56319c5d6520f2c943c7f2f4a918836b8ec1bcb6ab437cb24690746e9eb8e13ef30c8f8bdb44a6d82c5b67",
|
||||
"result" : "valid",
|
||||
"flags" : []
|
||||
},
|
||||
{
|
||||
"tcId" : 18,
|
||||
"comment" : "byte 0 in zero padding modified",
|
||||
"msg" : "313233343030",
|
||||
"sig" : "89e849efc26803e3a152765fc53b10d545d5be574f3297623bcaeffd1ab42dd671902abf9a99d0b169cc3ead700a2176304d0333ef312f26ac263d594bae39d2404fd5e6965ae78795f5308086b3fbe6881071297ec4b74ca24018244907adce97a6cd09aca0e972169df91d4744e4c241eeda58dbce00c2c86cbb9d0b1b4d1da9201a11e96015cf5d9bd6ccfbd83f12bc8627697a1b9e102c822ff203eb2b86b668b15118e9737295780386bc0505db48e46eca1d752667374065cd084e357905f04525b71a624654ca97d4aa2e6a566228feaca10fb2fa7abd7b2fcb679c89c730e80b2c1e594ee785855bdd4bcb79a9f855a3c17e3ce323ad04afedd8910c",
|
||||
"result" : "invalid",
|
||||
"flags" : []
|
||||
},
|
||||
{
|
||||
"tcId" : 19,
|
||||
"comment" : "byte 7 in zero padding modified",
|
||||
"msg" : "313233343030",
|
||||
"sig" : "3fe7ca479c29cb63924d12f4781db1dffc43b92aa0b602dae290cf3bcf0a705450b0cf6399e7b12cfa4f543f334c819dda5c15ad2dd343cf97ab058d28780edae184da0da215c51c7054c36ac7124467eadb251aaf5eda94776de57def20420ac8f154e44156202f4e479f52614cc11bec6947d96beb291c4f42c871b701ce8e744646b12e967557bb9033475694e98a2ea2d6f86d339d377ac7ea8dfe4057e902981931095b9e004c5109e32dcac560d7f0d263017b3218c339fb2e2bd13027e30cd194aa934e15aafcc133dc147c1454fd61d6a1803b3e9c21d6e9158fcc1a90b6779e9e0d8c8150f16474be9b164e6f9bd98927b069641cedbfd83c64334b",
|
||||
"result" : "invalid",
|
||||
"flags" : []
|
||||
},
|
||||
{
|
||||
"tcId" : 20,
|
||||
"comment" : "all bytes in zero padding modified",
|
||||
"msg" : "313233343030",
|
||||
"sig" : "5c84649130b0bd13e5552a4275c002d218ce7735382a7b5771a7d334a658550ca2ee45a0d1a56b4c0c2d6d1134d7cca5db6442adafee044db92c303d56c5512050d2d81dbd02b508ead7dcaa01ff081d68ed8ab33243d7fef433c9f3afd3b1839725d6fe7936b668a75ca47432f92e7dc525984c01b1782d833830bb9e6ee452746b2f4a59d2712a1fa940f81688980aacdcbc9db3a65516f300b2d9104cfdce3d7002742061f7150070e9e174a83d779858bcf246daab5d29b681ee52dfaeb342806ef56a90931cd21b95deaf105c01b8c7af748c0f9cecad870285fdc6a43f95f87c052fc35f1a3153b8d09b2218cfbe7274b48c8f6fe95d9a88db634d155b",
|
||||
"result" : "invalid",
|
||||
"flags" : []
|
||||
},
|
||||
{
|
||||
"tcId" : 21,
|
||||
"comment" : "first byte of hash h modified",
|
||||
"msg" : "313233343030",
|
||||
"sig" : "6f30b7cf2e5e358725f426b73990171e8d59f9ec6be0ccd212494a3feca57e2b0949011dfced93923f93cb88a39d2c03b9dcc106e8d702cf35ff3382ec50866346781fbef19bd7792afc1e82dd9e15f604fae8799cdbdc80469098ffa1a9ab5073a342ccd1ff7f4614ea06cc45e59b237df38a22f15d1bf7566028ec4be17ac1957a64890c7dcc601343ccfeb078870dd909841f7c520c9f2b2edf7a88074874c472c3dc4241981216e59cecccbe765e809926057b865254738bc4f7ca11eaef045615ef9b4e224153b32e2ad4eddeab5e2a81081045b8ab679f5fb33f530cea45e6ebeff0ac4941daf72953b8497204cbe98ed3817140b7bb9d70ade8a49473",
|
||||
"result" : "invalid",
|
||||
"flags" : []
|
||||
},
|
||||
{
|
||||
"tcId" : 22,
|
||||
"comment" : "first byte of hash h modified",
|
||||
"msg" : "313233343030",
|
||||
"sig" : "7ed0eb24039be4695dde517d94d1b7be7f2ae59f3ba3a7e22050f7fe899e4330b96050828f50370ecb50c357af474bd866eceb93b0749bf38a97acbcf9bfa8ff53a30490aec3cc5f6b39c8b6c194891e7972a69e3dc2d05797524200cc02af0833cea284053b9f953c223031690b1e1fb8a7b2609e6bb94f3c701cda484d4f7d84902b62fc91e0f0ec69387d5df497e318b6706a10a4581e3f073c75050a94663cc83335d50f051ff5d005974f36a4541f65a560e587f09c924f52a781537459f20526f89459765b4badf3a040c339227440e162507bc0f9fa91e16a4e4d58c6c81fefc76e6db8220eb49f6d1276cddc146f0d964aafbef49c935f53b8a2b215",
|
||||
"result" : "invalid",
|
||||
"flags" : []
|
||||
},
|
||||
{
|
||||
"tcId" : 23,
|
||||
"comment" : "last byte of hash h modified",
|
||||
"msg" : "313233343030",
|
||||
"sig" : "632842e6cd190b0aa03105499240a04dfb3d612176642ddf68eefe8ff67de18cd387165bf5f34e78052ef1d1ab888c6168aa21f977d936856eaec5ca0034acec21631034304c4710f5665a8217f314d1bf970587d99e06ef386e9c0be1a5fbc645c5f3f36e497e4557e2ac83033718230964199adf857ad971ec69d4216aacd0ed257edec73c8a644aa25e175297f414b8c911e9dc5bb6866dc1b9c7e52d5e656d598c7a7007a7c842828e934a508e7c0e4003263e657e84bf2d10a0ccbb47620becbe0f52c3f095b17e3dd4e906fbad7f45ebdbe8995a61cbf82b6ed58a32f12e33b3900fba07d8149693a43c34649cbd34aa7a6b9303d40f187bbcf61a13ce",
|
||||
"result" : "invalid",
|
||||
"flags" : []
|
||||
},
|
||||
{
|
||||
"tcId" : 24,
|
||||
"comment" : "last byte of hash h modified",
|
||||
"msg" : "313233343030",
|
||||
"sig" : "545ecd3a1b8799b749e37bc45fa8b997d15f12d1123abb07766130e74429a2becf9684ebeda0855df075e2b18ac7ca91e77d8e682e171319f742eb6d833c1383ff233411dd7fa36639ef628fbf6fa53ab07383c1663641ffe4cd030d20fe4b357597d51bcbe2725c06ba0005241a7958b961a96bb445bf19b9056fd7154513cf7d22602a0e271de9273204955bd944984ed8292c125221059c26b9d3cedc79f0750e430e8862762a397a0a8737fe5623e668bc24a5ec8b619e0506d09720beaecf02c8432153d4c918a461c7d3255db19bb12c8c5ffe046fd0676be6858ae883a13e71e69c35ee2f09375f01a1fd5e17e660614f1f293db0a76701cca27b9699",
|
||||
"result" : "invalid",
|
||||
"flags" : []
|
||||
},
|
||||
{
|
||||
"tcId" : 25,
|
||||
"comment" : "all bytes of h replaced by 0",
|
||||
"msg" : "313233343030",
|
||||
"sig" : "9e0158c8cb346fe387e11d75141f243336af0b9560607e2af9f16c60f271b6614a8842a347a17a27bb49f13f894cd2e494c1888365b433c3c4cc6bb0dfd2dbdf530731496afdf39a70caf29271acc58a74d4196b85bb8f376facdf86232b9d00f9f5cabf0a37c32f71e6b0d7cb78a2e932663bf33c68342a17577826a230b9072e6f97a99bcf679b709658c29ee07ef3809239e953bc79933e4be483630cb1fadf95143c60ea2b435444e972b48248b399cd92261c0bc9f949ff6cdc52e1ff693347e75e65faaa6afe3ca552cd3686d663d631a961046b7baa0aae0e62783cdf175c178c91f61248229d5584e0070f2218c481ad73de7cdabe61e933e62f3f53",
|
||||
"result" : "invalid",
|
||||
"flags" : []
|
||||
},
|
||||
{
|
||||
"tcId" : 26,
|
||||
"comment" : "all bits of h replaced by 1s",
|
||||
"msg" : "313233343030",
|
||||
"sig" : "1ec99560ef70f02c523c39cbd21aea0d0e6a6593b2029ec9e9f499f8ddbd864a0a85bcdcd8acea867090c511ebd633105b8303515507480ccb58dbf4dfa03bb902d93273873029f8e10a02bc140913d5ad1c1e6d87a97b42755691541dfe7d344bb0cc209dd2bc8a2c36b3caf8295a11bdd060de347d4e91b2382a53bcaefa29df00978d49406fc05d540cef6add5939ca0915d0d7d98f0883e7cf5004d3da90a0fb3d0b9ce6b8567fd03ff1cf44c8d80a3ff9f1b316c22840124902cad7bf2bd44e93d4c344c6a957a49d5b847b79aed2f99757e1cfcc18ca9abe2e7b2c1afaa29c0165efc5ebac1c80a85ec171637268beed536e591d37ec6da69ee2e53aa8",
|
||||
"result" : "invalid",
|
||||
"flags" : []
|
||||
},
|
||||
{
|
||||
"tcId" : 27,
|
||||
"comment" : "all bits in hash h flipped",
|
||||
"msg" : "313233343030",
|
||||
"sig" : "2b4ff07f7788afa0cf63a285a2b88860f9a75f7ed768a14680ab3d105d70a612fac98a1e8784790ff6c1ca03dcce5a1ed84a86c450260f9a88cc532bfc30e6b7ff0230a0dc5606779f1553447294b3692e89cb91864f3a95c591e9ce84a2f38515826dc5633c075cbdad03eff06a8466d6ec99c327750c6e78c8d77e33573be5190855d590b07e79bb3d6099688c5f39c192c4d7bf8fbf205d26789b8cc7b290d840706ba33190136cba3aa6bd16ee14e5412bc8d99d7d245758093a2236a53cf55825d572e69108b02b19188bfa0045573f639e1694f7af1ed6299e10f28a1a953ca7294a0efa462f9fd1876d6faf2e7c40e5554fff80c8ef256e424f02e3f4",
|
||||
"result" : "invalid",
|
||||
"flags" : []
|
||||
},
|
||||
{
|
||||
"tcId" : 28,
|
||||
"comment" : "hash of salt missing",
|
||||
"msg" : "313233343030",
|
||||
"sig" : "6dec410a4e3566a5215b6c9d0fe5fa0b5f5c65df0c4f952dcb7c48d7cef57b16daa315d7d1e05c5928bc0615dd0e51bd533c52753c6b54b524a54c787aa956bd3af8ae7eac1fcdb4adecbbbd114a9ae19b6767c9e7474efa54e8f861bab93e0c94f8b0c9361953c9411e12f34b5f9e84fa5f8aea29e316eb983b883228574565e6d53d82c47545aac70d3d3b24ee3e2b3acd597ee32464176da90e9623ec2cd02831de40e1fd5c627b42194165171bc8877043fe8f5975e38631a55701d84e895fa69dd6778dda8498756452d171c7195898efe9cb837b2abd9a22a58c1230fb7fab2c6b955b5cd24eb97cf67fea018c2f283234a5bd8abe0695b252b047dcf0",
|
||||
"result" : "invalid",
|
||||
"flags" : []
|
||||
},
|
||||
{
|
||||
"tcId" : 29,
|
||||
"comment" : "first byte of ps modified",
|
||||
"msg" : "313233343030",
|
||||
"sig" : "6146424199528a498f6dfef22a99d0a6871f2b6e27e01daddfc985dc565442941817a0a5dfcaec3ee5baa48e0e0c902b2ba9b62f047d80210b614ca5cef35cccd60111198bb129e59ca7b6db2e0dec8fa2762907d0d6ed00c2995c073accbecbca836be2ceb1bbb7c14df21f9fdb409e78bf9d409a3898c34ee448bbb88f92acd5296f50742bf831e0123f4eb868b07217c7707e032cf5dd821e38a3f896717aee7d43dd3ed6cbb9172597ce840f126ec78a8294f2025694fc5d618cffa0adbdc5717c43c0506d10bc033304a71f5ae1030169da67a1afedce85a41b7f964e0fb54004d8cf04ea9324b3b0c934e82857ded3af6df9903ee86fa1fb2458ac9d12",
|
||||
"result" : "invalid",
|
||||
"flags" : []
|
||||
},
|
||||
{
|
||||
"tcId" : 30,
|
||||
"comment" : "last byte of ps modified",
|
||||
"msg" : "313233343030",
|
||||
"sig" : "2b37393825d1faf89cea62b126237b0d6807bb4fb5756b9a9e20cf49ba6dee4602edabcd74d3b730aec590ec5184cd3818492f4c8affde0824ff4251564b15410ead9a5a27e68f47adfcafe8b5973111f000bc6631e81c454a4fee6ffa22dd2f01f28680ef74fad0c3080bbf7958cb6e4886f01a42210f1a9f4bc1fa6e8a71abe39a41f1f1c09efcbea6a10abb0c1e22754d20a12a38a5b26896e2ba9ff885b17adf65ca68115070fbd1c90c059178e044c45e2428e67083eb65e5481054f9cb4c23b30fb43713396a409f2c98dc718349878865ef200f9ff5dc2d9a0477a12ec312cdc565b5e75b9fdf1de53fe6f8b17634817a3aca83e02a025edc03532473",
|
||||
"result" : "invalid",
|
||||
"flags" : []
|
||||
},
|
||||
{
|
||||
"tcId" : 31,
|
||||
"comment" : "all bytes of ps changed to 0xff",
|
||||
"msg" : "313233343030",
|
||||
"sig" : "975e84b1156cec3f36cda99755506dd0bbcd42a1116e9b863274600df51be67103b0c44b6a5a8864136a4a25a47d8ef61ad91d610d696e015841385067976205151450046abfa4f9514f7487f2191a1cb939de58218f4570b61a6ba6f6d6ea4b2ac09db79c416bf7736fe671fd11c6647332ce4a6e269fb7ae320980f8f51863562600f4bb543ad12952eda92271c14cb556150feabc4148e6d28a2c858d9a4e84ab985fa416fe6119fc241659139a9783f01cc46834ef35ac5c215bb374bc3720aee19abf24955b7a0ba2d486861a9871bbaa6702dd2809f99dbea29e2921286b5d5f7fd5fdc594c2952f9a39003fe3bc0e23bf7026ada9198eaec9c7dd267a",
|
||||
"result" : "invalid",
|
||||
"flags" : []
|
||||
},
|
||||
{
|
||||
"tcId" : 32,
|
||||
"comment" : "all bytes of ps changed to 0x80",
|
||||
"msg" : "313233343030",
|
||||
"sig" : "6e2361cae5f5d7e3ecb6b4600f1a27db10b2b9b59a1d620dc7314bcccef10bc52a0dd0ab7fdc26bab61ecf75d92bde12ac9158f7e9ac6e8c0731a4714bbbab3235f7524137b16f2726a87e360b82f9d8245112bd323087c34e94a09bd75ea45a2b904c3544a2098f5367dec657f7e7184557ed4eb2e3bdb01fdcc9d8e8eb209485d46342f2208276bca631a75464ec1b8f3ad34deedd0b8d97a602930c863f75777f26b8324e0d67fcb1dab2ea556846f938b31a7bb1d860c4d737ff45d6b59561963a0368f2a648bfdf81c147be1d6bbf011437e98b68557477b03114f50327578f11196cd017b7feea22eb947ebbd5c6080435b5e9a01a5160067f58711d8f",
|
||||
"result" : "invalid",
|
||||
"flags" : []
|
||||
},
|
||||
{
|
||||
"tcId" : 33,
|
||||
"comment" : "ps followed by 0",
|
||||
"msg" : "313233343030",
|
||||
"sig" : "0a2f6eeaa333ad05da113fa00cdcd3888fad739605c4d9b345000d6ae3d80a772250109fa424ef8515391f3ea4c4149c3e7073f20a4f2d85a4b6f632ec725cc4a5c796ae1dd64c4adbae494f6933e9cb1c4045e77d991ada322e82a331510f7b48c09e62e1f285005a15aab4b9645d5f764356e3266aa5410476efce447b0f8cf8f11ef58f52089cf345e47053532a12d9fe11fbfc49da9f3ddccd5d5b338317d5a709883b7f4f82306f5aec5c8227238cfdf6cb9e8febe72f923fe2e2439cbdda5bf6331827a2189613023a49401c16c85bb163c65304e4c2c749ea27a8b070814d66f8e9fe59725b96cfd76d0c4c612d5a49a61a73e47c4be7729593f1d75b",
|
||||
"result" : "invalid",
|
||||
"flags" : []
|
||||
},
|
||||
{
|
||||
"tcId" : 34,
|
||||
"comment" : "ps followed by 0xff",
|
||||
"msg" : "313233343030",
|
||||
"sig" : "741b5c6fe8dd2bafa5031f0bae057b7c6b5bc0d2c4f260df2449c2bbd947b2cc06ff46ae67af73795dd05d76bee15f4b267290cfa58dbbf9b29f99c365e4841241b22e135dabd40700d6a92cf146be751dbe8f7e85befaea9c33712cf62be0c3d76f6a514fef13a1ba6fce6c67888810022f4c168b2517a3012de762ff10205504ed27b80ebfaded12bd1abb2577fb620bd70cf1ae886ab810146896d7428e84f48ba0b5f7e67e169411bf207dcb43c0e185ef82f1bbdc431a70d103577778bdcab424ef3f619f3de4aa49ec2e48fc40dd44f90fd6fca50d02f1a2735260548a01a568c7369d62999d305dc3cd15dcecf2a6417cd5b4c26ac5155ebee8e577f7",
|
||||
"result" : "invalid",
|
||||
"flags" : []
|
||||
},
|
||||
{
|
||||
"tcId" : 35,
|
||||
"comment" : "shifted salt",
|
||||
"msg" : "313233343030",
|
||||
"sig" : "7fee1e9e5f777d5f50743a1ec53539d5f0824432bfdc9b7ef31d2b1852804773969796d503fdb2b48b08cd8dbdd90affc6a0c7f4639fd931155ddc3d5252993ecef5b3df872609e4890ae478f809edffd5e2725f2e29b3ca402af4853ecfa4a9ae71b68c3b1144ced47a27a30e272dcdfb99dbce0ffd3bbfce12a5933c2eb68eb03b9d29b4c0b16e669cdac0f42d00ce421864418b71c354ba11c65afaeca919f4dcb3f09bc8be92001b4298128e832d6559ce9dfc42e3ea2ae2259b191532aeb2419a8f21d7434579b2c9034305c3458ceb66e048b903d22de309a5095b4472e2a5850ee0777f0ee62464639f766eedd5d350d4109af3b0a52edc7373f8f93a",
|
||||
"result" : "invalid",
|
||||
"flags" : []
|
||||
},
|
||||
{
|
||||
"tcId" : 36,
|
||||
"comment" : "including garbage",
|
||||
"msg" : "313233343030",
|
||||
"sig" : "1795ac40c8003a953d0d0de08ee35613ef3ac952425219e37b5699ce002a6c574655e527cf8c433d7b73b313638b2b9df0e9a36db576b728f7c8e7521392a5fa51fc0fc588e92551594ba79b46b67367465d1575f12e3cf4227fea508164232c41d3c3cf92d05acb4efbdc5a3b66a093a79382143e0fc0f8f6abc90d5c9862eaba8dba8964ad4dfd17a214accb4c4b548a5757135af68d488efe68e7e66a7279f2eebeaafa66c87c6818efc9d9fada16455529a61686165e0d8b94ecffd346f46cd44214e9c71ff45778bbdd3df3a58ef5d8c02e0469a770778568a4316ab9531a77cb7ce55de061f8a227ed2c5dec5e63c5bacc2a474d9d6b77f0613b5a6fa3",
|
||||
"result" : "invalid",
|
||||
"flags" : []
|
||||
},
|
||||
{
|
||||
"tcId" : 37,
|
||||
"comment" : "bit 7 of masked_db not cleared",
|
||||
"msg" : "313233343030",
|
||||
"sig" : "5c6e5054f411cb43f15ee46022187da45c8214a0f5f6e52c4deaf57aa44040c087b828d1c3d5a2e1c378077c51f9bc49599afcfe9db03510376392016149ad61bec1203bf4fd05672341f62cb32e9a4d7f8e91d2953ce5e83370bf4a5ed1c31329c5622a7d55a82e8a19ecc25984ecd99f38198796fe31c3def106c6e81946224a7c1a0d935869fe8ef6bb892fb6df806cf52de09f4ac86abe51f1b148f6b32dbb97cbf87cdd259ac57666dedd0afcb6dd7cab527d8cb847cf1a18f01b0a14f0f1f3b50fcb9af4692abca60b12331510c1eccfdbaa128bdb9f025d75fe8a49da2cef04307912a2d2907ebe6a77dd44dbcc5d83753096eb0eba86bed42fd84f24",
|
||||
"result" : "invalid",
|
||||
"flags" : []
|
||||
},
|
||||
{
|
||||
"tcId" : 38,
|
||||
"comment" : "first byte of masked_db changed to 0",
|
||||
"msg" : "313233343030",
|
||||
"sig" : "7928c5877dbb16c761d15e5997512159bab294fc1d1cc73a5865f84840f369d6bc47504bba8432003a4f1cbcfce97dee137660e973e5181f7e81f897fa607941a11d95ab230c8c2afeab2526c5d906597593948b7e9677823db13c12062c56d0b8f4bca283dc90a3962cfc98089e09cdc791e5ca6076ca8e6e0b731d85ed5f4be38ed798e70b437f1eec4bb5b70a8fbf35f3c05f0f93f34167ec666783a08062c2230d12f9d291ecb4e523bd7e90d3f8d295d5723fc1bd35892207423f20e1c925c270f1e8b6e576b872df475d561b5dc775705bcdaba215f3c4ee9c2571e41b9a41ff23f6013c02202755b605bba21d2bc6fcac6cfee45182c11f4853db26b5",
|
||||
"result" : "invalid",
|
||||
"flags" : []
|
||||
},
|
||||
{
|
||||
"tcId" : 39,
|
||||
"comment" : "last byte in em modified",
|
||||
"msg" : "313233343030",
|
||||
"sig" : "09fc62890b26d45956afaaa57d63d54e205c1f5b6204889bf83e5ad8895fedadea1eb85e4e49663d24605d4c4a2f7fc6850e8067904e7001555c0bab595d3bc36db62f369629c9534467406eeae04fd63bf164c77d77ce7b5bc01f1ecfa4e5d000c94a4f37c4f8f16fd0c5aa44d1e2f6a7361b497bcec31d6cfbeb5c805d5cb5321a0de8f2c8e0fb9e0e19b7421eb1a432b316d0eb2e72d5c938028fe98f5847b90c87bd22bba5de81ffa0c9b17ae86a32bca6433007ab445651b8d94158b2fba9214a62a0f692fc12d3fef8f78679601394943bbf4813ae56110ceca1929bfe225a5439d6a2e5afad50332faddf434559a0303a2ddfaeef471a974e38f39ec4",
|
||||
"result" : "invalid",
|
||||
"flags" : []
|
||||
},
|
||||
{
|
||||
"tcId" : 40,
|
||||
"comment" : "last byte in em modified",
|
||||
"msg" : "313233343030",
|
||||
"sig" : "0a18c8bfbed2b0fd74e06e2ddfb5ec85198dced9546f8bc6f80c9f8ca52a0d153a609cdb3d645d7d7cb9cd760e9fe766127eb5c2ce05cc678d749d05fa37df06aaec15c777d93188ef56c8499c50b5dabd543b14aac9fd8c09ddc96f80c0e2748334a18c4b10d5bd1a43c2139d47751c33c946a3753e1360a81d1f6771b24119555a338f2e824069e946497d9b90862ef3b39c05ba674deaa95dd3291ae05cbed4f4b868afed2e655cdfcc36c0a703a5561a846de66a7ae67634a45bc60e966c81b6343ecbda46cc7592687e74a03e5863df0eb7fb4da2eec38952581fa2ea48c62447893191b562b1905ca60df9870a074a3a6101911a31c8f93c3be7a7e21d",
|
||||
"result" : "invalid",
|
||||
"flags" : []
|
||||
},
|
||||
{
|
||||
"tcId" : 41,
|
||||
"comment" : "last byte in em modified",
|
||||
"msg" : "313233343030",
|
||||
"sig" : "63c003b9bbe4267bd83ef9f01c0bde0943b42686fdf6d1dc6ff3eee96ad0ebba21e2c2119d3ce8710ad369735ca9f2c4fefeffdbd8933736682971b4ab620b7753fb7b866705cb09ee224bc5b2d778d58836ad31d3c3ecfc63b1dea0ce472034e508f057fad03c515eeb0b62790387f2ead8efc5421a992e3d71a53db48980dadecfb6d837c501b08c791e24465e2cb42972d3450be6d1561fb1c416f306820cb5156cea44c965ca64e2941853718974c8b0e76dc5f6e0f580cf52a7e166edb6d41d79a691b8f6807a89752e852ed4e207b078f3c8bdfdf16a6914b970fa7989f81a573fb1f1a52733c7212242dd673ff48571a568713aac094949a12c9a755e",
|
||||
"result" : "invalid",
|
||||
"flags" : []
|
||||
},
|
||||
{
|
||||
"tcId" : 42,
|
||||
"comment" : "signature is 0",
|
||||
"msg" : "313233343030",
|
||||
"sig" : "00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000",
|
||||
"result" : "invalid",
|
||||
"flags" : []
|
||||
},
|
||||
{
|
||||
"tcId" : 43,
|
||||
"comment" : "signature is 1",
|
||||
"msg" : "313233343030",
|
||||
"sig" : "00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001",
|
||||
"result" : "invalid",
|
||||
"flags" : []
|
||||
},
|
||||
{
|
||||
"tcId" : 44,
|
||||
"comment" : "signature is n-1",
|
||||
"msg" : "313233343030",
|
||||
"sig" : "a38fbcf34eef1810cb2ae21fef1e9a1e037f7d25d43e8b4f051ea74c367bddb2327a7bccc5334fe610f7a9855e2b76c1e9715970c22c274616fd9460d727afe9a149c23b6b9730c13c4f6213e0c112a49db2e55993b60c520eb73042c7a0b1bfe4e27b11a4c7395057235233fd8ab3898ad56a7893077bbc4414b4089a594c9cbec5deca092efb4d84d977b9f37fd982341da963a20af680ff4a774ec85a104a684648b0a90b6cc4f7d4808db666ebab808a21020f8c005c6793f196187811935526caf1b6cee47a0c14e0823f87d7aa82e9f5a635ca116686d2da719cda269c39d863571c606e5ce5334254e49648fcfcf502a1321cc071f1000d562723156e",
|
||||
"result" : "invalid",
|
||||
"flags" : []
|
||||
},
|
||||
{
|
||||
"tcId" : 45,
|
||||
"comment" : "signature is n",
|
||||
"msg" : "313233343030",
|
||||
"sig" : "a38fbcf34eef1810cb2ae21fef1e9a1e037f7d25d43e8b4f051ea74c367bddb2327a7bccc5334fe610f7a9855e2b76c1e9715970c22c274616fd9460d727afe9a149c23b6b9730c13c4f6213e0c112a49db2e55993b60c520eb73042c7a0b1bfe4e27b11a4c7395057235233fd8ab3898ad56a7893077bbc4414b4089a594c9cbec5deca092efb4d84d977b9f37fd982341da963a20af680ff4a774ec85a104a684648b0a90b6cc4f7d4808db666ebab808a21020f8c005c6793f196187811935526caf1b6cee47a0c14e0823f87d7aa82e9f5a635ca116686d2da719cda269c39d863571c606e5ce5334254e49648fcfcf502a1321cc071f1000d562723156f",
|
||||
"result" : "invalid",
|
||||
"flags" : []
|
||||
},
|
||||
{
|
||||
"tcId" : 46,
|
||||
"comment" : "prepending 0's to signature",
|
||||
"msg" : "313233343030",
|
||||
"sig" : "000069f8f909c6f4cf4ed99950ccc28515588a9a781c2559de8e2ce8b0a73ff423be475b58d91d6eb57a70902604615fd9fab2e6bca6b5fd302eb02c5f4b6e35a7cd11320586f6295834b55d4c4f09c4a97b9ef22d2321a8f4eef1a3904a21657c34673ffb72d83ca044e42d7286c268132fac4e3c3376d4b270b3dda2bfe0e2beba2d8670a7c224bb7bc02713efbeef767d500eea4e3eff4c9158089c5f1d96f5c10a1654837d10e84d23bc84166b14c852a9af0ce20f4cf8a63b7b5adb775aae0dd2fa97cdbb588d36e70faba949e45541a83bb4e9ea3575264f8f1d821953d0af01db2a16ac4012ee97b9f1caebaece5ab1c944559b0c94414aecadd6666b19a4",
|
||||
"result" : "invalid",
|
||||
"flags" : []
|
||||
},
|
||||
{
|
||||
"tcId" : 47,
|
||||
"comment" : "appending 0's to signature",
|
||||
"msg" : "313233343030",
|
||||
"sig" : "69f8f909c6f4cf4ed99950ccc28515588a9a781c2559de8e2ce8b0a73ff423be475b58d91d6eb57a70902604615fd9fab2e6bca6b5fd302eb02c5f4b6e35a7cd11320586f6295834b55d4c4f09c4a97b9ef22d2321a8f4eef1a3904a21657c34673ffb72d83ca044e42d7286c268132fac4e3c3376d4b270b3dda2bfe0e2beba2d8670a7c224bb7bc02713efbeef767d500eea4e3eff4c9158089c5f1d96f5c10a1654837d10e84d23bc84166b14c852a9af0ce20f4cf8a63b7b5adb775aae0dd2fa97cdbb588d36e70faba949e45541a83bb4e9ea3575264f8f1d821953d0af01db2a16ac4012ee97b9f1caebaece5ab1c944559b0c94414aecadd6666b19a40000",
|
||||
"result" : "invalid",
|
||||
"flags" : []
|
||||
},
|
||||
{
|
||||
"tcId" : 48,
|
||||
"comment" : "truncated signature",
|
||||
"msg" : "313233343030",
|
||||
"sig" : "69f8f909c6f4cf4ed99950ccc28515588a9a781c2559de8e2ce8b0a73ff423be475b58d91d6eb57a70902604615fd9fab2e6bca6b5fd302eb02c5f4b6e35a7cd11320586f6295834b55d4c4f09c4a97b9ef22d2321a8f4eef1a3904a21657c34673ffb72d83ca044e42d7286c268132fac4e3c3376d4b270b3dda2bfe0e2beba2d8670a7c224bb7bc02713efbeef767d500eea4e3eff4c9158089c5f1d96f5c10a1654837d10e84d23bc84166b14c852a9af0ce20f4cf8a63b7b5adb775aae0dd2fa97cdbb588d36e70faba949e45541a83bb4e9ea3575264f8f1d821953d0af01db2a16ac4012ee97b9f1caebaece5ab1c944559b0c94414aecadd6666b",
|
||||
"result" : "invalid",
|
||||
"flags" : []
|
||||
},
|
||||
{
|
||||
"tcId" : 49,
|
||||
"comment" : "empty signature",
|
||||
"msg" : "313233343030",
|
||||
"sig" : "",
|
||||
"result" : "invalid",
|
||||
"flags" : []
|
||||
},
|
||||
{
|
||||
"tcId" : 50,
|
||||
"comment" : "PKCS #1 v1.5 signature",
|
||||
"msg" : "313233343030",
|
||||
"sig" : "7fb64ef10de96b3456fa0af54572595e45328612dad2064119cbc672bd7c6eb99028ed79a5f81378ce8de64995a1b44c3f6b0ef5d0324ce3d48280599126e23ba7bf61cb284f52bd60769730c9d7aabd8e7971e7231b588bcd8811994c9e57a73d424b0fbf7a89b1cce22253af62f29635993ef4d2cd0cefc01a421cc99507a1e4e0752fc467cbc055ea6679ba00a718b0d39b8de4530893a2b289cc08396045198a8aba8c659de56320ff2ab0aff0c2aa0f58a3dbe7f2ab1544c34672db10bef839638a92b54e78968a0f9ea77fa03748f400473cd5a903b44b134135ddafed174fc92c4ae8b7ac322730d6d1ee0f7770626cebf90f0f144a3f66535330ba4f",
|
||||
"result" : "invalid",
|
||||
"flags" : []
|
||||
}
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
||||
@@ -0,0 +1,421 @@
|
||||
{
|
||||
"algorithm" : "RSASSA-PSS",
|
||||
"generatorVersion" : "0.8rc16",
|
||||
"numberOfTests" : 49,
|
||||
"header" : [
|
||||
"Test vectors of class RsassaPssVerify are intended for checking the",
|
||||
"verification of RSASSA-PSS signatures."
|
||||
],
|
||||
"notes" : {
|
||||
},
|
||||
"schema" : "rsassa_pss_verify_schema.json",
|
||||
"testGroups" : [
|
||||
{
|
||||
"e" : "010001",
|
||||
"keyAsn" : "3082010a0282010100c684aef47bc201764a663acdf22e67140410b3d201533b6ccaebf86eda3d81a1230a1cc5ce2c9e4e102d107f2418d9386f1d3734eb922629b4e7ef464f79fcac53744702a147c1ef8dafc8eb366284d3419d98e8cf176ccb7f65bada528c222956900e1ec0c2f21e83e3ee30d946a6aa267e01a28b9c1833b035a881ad1865dfd2a451086a46f38ed137237c5fe368261e3a46712399f3c56ac6fbde33682ba98c95e435e1dec2d5b9d681ade372622c2dbdbe47b419b4ba23a5defc3f792d4d8373cc27cf707dd2f3603363a0ffe643dcfda79758ad1ac53d46f1a5ec25df1ddd94780a8f51f88ffb32337f05395dec93267802db95243f1b62cc3dd8118d2d0203010001",
|
||||
"keyDer" : "30820122300d06092a864886f70d01010105000382010f003082010a0282010100c684aef47bc201764a663acdf22e67140410b3d201533b6ccaebf86eda3d81a1230a1cc5ce2c9e4e102d107f2418d9386f1d3734eb922629b4e7ef464f79fcac53744702a147c1ef8dafc8eb366284d3419d98e8cf176ccb7f65bada528c222956900e1ec0c2f21e83e3ee30d946a6aa267e01a28b9c1833b035a881ad1865dfd2a451086a46f38ed137237c5fe368261e3a46712399f3c56ac6fbde33682ba98c95e435e1dec2d5b9d681ade372622c2dbdbe47b419b4ba23a5defc3f792d4d8373cc27cf707dd2f3603363a0ffe643dcfda79758ad1ac53d46f1a5ec25df1ddd94780a8f51f88ffb32337f05395dec93267802db95243f1b62cc3dd8118d2d0203010001",
|
||||
"keyPem" : "-----BEGIN PUBLIC KEY-----\nMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAxoSu9HvCAXZKZjrN8i5n\nFAQQs9IBUztsyuv4bto9gaEjChzFziyeThAtEH8kGNk4bx03NOuSJim05+9GT3n8\nrFN0RwKhR8Hvja/I6zZihNNBnZjozxdsy39lutpSjCIpVpAOHsDC8h6D4+4w2Uam\nqiZ+AaKLnBgzsDWoga0YZd/SpFEIakbzjtE3I3xf42gmHjpGcSOZ88VqxvveM2gr\nqYyV5DXh3sLVudaBreNyYiwtvb5HtBm0uiOl3vw/eS1Ng3PMJ89wfdLzYDNjoP/m\nQ9z9p5dYrRrFPUbxpewl3x3dlHgKj1H4j/syM38FOV3skyZ4AtuVJD8bYsw92BGN\nLQIDAQAB\n-----END PUBLIC KEY-----",
|
||||
"keysize" : 2048,
|
||||
"mgf" : "MGF1",
|
||||
"mgfSha" : "SHA-512/256",
|
||||
"n" : "00c684aef47bc201764a663acdf22e67140410b3d201533b6ccaebf86eda3d81a1230a1cc5ce2c9e4e102d107f2418d9386f1d3734eb922629b4e7ef464f79fcac53744702a147c1ef8dafc8eb366284d3419d98e8cf176ccb7f65bada528c222956900e1ec0c2f21e83e3ee30d946a6aa267e01a28b9c1833b035a881ad1865dfd2a451086a46f38ed137237c5fe368261e3a46712399f3c56ac6fbde33682ba98c95e435e1dec2d5b9d681ade372622c2dbdbe47b419b4ba23a5defc3f792d4d8373cc27cf707dd2f3603363a0ffe643dcfda79758ad1ac53d46f1a5ec25df1ddd94780a8f51f88ffb32337f05395dec93267802db95243f1b62cc3dd8118d2d",
|
||||
"sLen" : 32,
|
||||
"sha" : "SHA-512/256",
|
||||
"type" : "RsassaPssVerify",
|
||||
"tests" : [
|
||||
{
|
||||
"tcId" : 1,
|
||||
"comment" : "",
|
||||
"msg" : "",
|
||||
"sig" : "25085796e3f7e52f0b35179c40b748f8faa4024fd774505e9f60dd2c4112f1f0c69b0fd5df5aa32fa342809549e58d317ceda5e5684450aa7a7028edef61bbe5770ba4fa49beb14468104cf45c882777b98469d0af43a8b907b064784c5cb2293b4d7f9aa251a5d5ea8ba7beeda8278ad6066267b63fe6c2da178a670507e1b93c59d23df00bd4cd49857bd6af6157b6c1faa5af5285b9aa86db87c7bce6d2a44a2e90032cac5f77eda748de58b673a7ffdfc59f9a9231de0ff8cddb8932b492e8b39d0533bc661279595658b1661528b71d460c302678e528214f54ff0f53b17c05f83dc6dd1ccf111367ce19d014557a824545d24022ce880e9d81b7ed6b61",
|
||||
"result" : "valid",
|
||||
"flags" : []
|
||||
},
|
||||
{
|
||||
"tcId" : 2,
|
||||
"comment" : "",
|
||||
"msg" : "0000000000000000000000000000000000000000",
|
||||
"sig" : "4b93f7a4523c81eb601509bd3675fedbd3df37225f84cf68ae268cb52515b1966d17dd49a3f49628a608d3aecf3677b4993498873782d419583b3e1fcf23a75f8536ff2fb7472b30f26f389c4e0a1753b9d246ac52b225b8b750844a3022d8811cd6d2a57a4c6ac407c7975529926a2de3ad79b7459097d8cb9c102f157d98c90849e4f1c1022885854ee66bc00ed1103f6ae0be542b0421ea1db7e923cc220df8c4d989bc3a9ae4de55a7933afd5b295bf315c6d7c613975534867a1cd3d5dc69ec883451f2aef559f9ea7f4617d2ca0ab96ba70f2f5a284693716f8c9b777b9e5391edeb26dfd38571e46d9564571b52df7280984668a1384d61b40fa8974f",
|
||||
"result" : "valid",
|
||||
"flags" : []
|
||||
},
|
||||
{
|
||||
"tcId" : 3,
|
||||
"comment" : "",
|
||||
"msg" : "54657374",
|
||||
"sig" : "2f8890be11f64dd78055ef19d318344d12ce37bfff77b3d4cff10e0015e98135dad8de142bb0f736108772d4ccf4cd2009cce78dfd88b9d0d81e8173cba8d04c066bbd216c27ea70992ffc8dbc9e1a72611514564ded60c5125ebf8ca6fa0d28a3f4cf68b688876fa0663665efd9c3d5b2cef904c048a8b6bbe54c06ed80875ed955016165eae97f25a72335394549fb49b962bc108555778279c1fd856e0ffd5b887ecb2ffc96866c84967884456692b6b63cd8ee072a41dd0c76579ab21fff267127da8052d4f86fe7a63e626d95e560bf7934580f4096e71c10b60f312f641f62c02a5ddcc03873d700b68b1d1b8c1d6940890e9f68efd93de474e372a87e",
|
||||
"result" : "valid",
|
||||
"flags" : []
|
||||
},
|
||||
{
|
||||
"tcId" : 4,
|
||||
"comment" : "",
|
||||
"msg" : "313233343030",
|
||||
"sig" : "13ba63edfb238437932e8f508b307cdb5117577935355a877b1ca6546537b55c35952d4b1a7cdc2be01e2f76f04dc8ead4a6bbb25ef85188b5e13109ba730746962f04ae37c8ea210dbc0970975fd55c3b0663668951544f05243d1fe6977aa71f4cb797bc8c64d85cab05a1c16a09544a6eefc464efc70b80d98964099ee71d30453b23475bec88308702042e6b4751b138a3a7f15da19e224b52d5b2d1b507dd3f7cf61d6a1cbff6478bae9d0587f376cdc2dde05901e259194ca4961211b7164c5ee23d56f7625ab8170040f00d608b2b028298df4b576b2514d881ba665f9994bb14c9a9d9d172c84b3322f2175032dc3c96c1986742651453582c79ef5a",
|
||||
"result" : "valid",
|
||||
"flags" : []
|
||||
},
|
||||
{
|
||||
"tcId" : 5,
|
||||
"comment" : "",
|
||||
"msg" : "4d657373616765",
|
||||
"sig" : "a197c192408dbca8bd8beaa9ec3fb778085435e2c869701fbd6912efe0a9951de8054952a704ea08836507b4031e9c5c2e37a8d4af08f6cc0c9a738e5a86c71de5ff2d0fd999f191724270e2a5f4c60dfca3402c4ab0de2b0b01d44c352514f84e5affa9be17f9d703da0439fdaa604e00c77a153f7e1d557b89afac13f71254d926d423cada08a0066a72a9f3dddbcade51d6990c52f8b12f1f2299a1bb1f4b6b3673a2890f1186b63b4b4cf8a50532670689e2ebca2ec9c6cfbd97575526589c054661d914c9592bcf7b48b5dfcc289a4f31be97f5e4da96f3830fae0366e7ab933413bdbf6cf45e8abe7cafff331a5ea2f12041fffa9b9cbc3f57a1294947",
|
||||
"result" : "valid",
|
||||
"flags" : []
|
||||
},
|
||||
{
|
||||
"tcId" : 6,
|
||||
"comment" : "",
|
||||
"msg" : "61",
|
||||
"sig" : "0bff440478904b107038c0b63f8a8384a3289ec08983a1b26578c32587245627a9b9792c9dd3e522552e9fda43bfab6611367775194da4c45e37aedf8666b090ece837da828dca96a255f00e039cb6f52c13c7ff1aa60cf23dd03db3312e7d2e6b15da3ca11115a14053c91030f2d0e730d8c401761c2cb450acb434202253c0566e4a9f1414fb31766434d141e0a74f59a3ad7bd5afd32afc5bd57961da9f5c5daee88884178dbb4c504bba9420ea144c5bf9b1a7d758ffeca23a5b2bcb296898796e81c8b5da3736851cac6bb1ddbab2527ce631ba216926b27937b6d9d2c232f967352f7bbf1a74be8664a8cc0f67fe8331cb98c1182fd9a49e571cc7ba07",
|
||||
"result" : "valid",
|
||||
"flags" : []
|
||||
},
|
||||
{
|
||||
"tcId" : 7,
|
||||
"comment" : "",
|
||||
"msg" : "e0e1e2e3e4e5e6e7e8e9eaebecedeeeff0f1f2f3f4f5f6f7f8f9fafbfcfdfeff",
|
||||
"sig" : "20182fc05509907181b2d2662587b10c2d084aa45f279b9631d9e0b8aed3df42dcbd874a336dbd529444342d235d64d4cba2f8847a2d32f047839ab7b22bf758afde1f06efbef84ad7912da52c4e1bb08c913ba8cfd4b6c980e875f2a679bfa732dd0746984e4efc1e81dcabb260c679e5f792cfba2b6b5f0110b5f2eee581d6f4ebdff1a28d653e39a0d5058a0543db066313e60a3a3eaa93ab71e15f3023f8c9f041450083f4643e2d0e5fd5eb7a47b3adf396500adcb1c7b0852ac04154a3c4aecd92d1e2d798bf45c29d3bc2d5406c5ef84db4b85581584889153dfc082b1c9b54195d5b0494428846aace6101b70c3696ea057ad7e35ea30baefcf0bf57",
|
||||
"result" : "valid",
|
||||
"flags" : []
|
||||
},
|
||||
{
|
||||
"tcId" : 8,
|
||||
"comment" : "first byte of m_hash modified",
|
||||
"msg" : "313233343030",
|
||||
"sig" : "06aeeaa068a541e4fc7d5de9bbca623b965f336adc63a4fbab30b49261c9293a048464029660d0a45411838fe916f6a90fad4a6bed7ff3fff920535404fece40c2edb7025ecb07cb50538fdcf1c1f29cb48fd32d9898fc665b928d26557488fcf6f1c991bcf8ab7625aa758920972d0f18589f3a7718d2d809415e07c94cd150d426365dfdc151a3fabcde8e6fd25b4bf1aee90c5e467f63b7a6ab353577561825fd1b58108c11e45d54e7424ce08fc4a342b393bd95ef7a37ea9b8f5aec34aa17b89bad591db31935c29163789d92c3c330bda6dc721eab7b478256de7833697f0cd10dcd11b0a63ed3e805720e84b8ab84a6556e2575e01b97080f467cb318",
|
||||
"result" : "invalid",
|
||||
"flags" : []
|
||||
},
|
||||
{
|
||||
"tcId" : 9,
|
||||
"comment" : "first byte of m_hash modified",
|
||||
"msg" : "313233343030",
|
||||
"sig" : "58f0dd4f3fc8ac8e85061e6d14731be42dd864455d2cf70a043ae76185f83dbd3fced9c16fb8678963cbaabfdfeec9d4b6a2ce6af811b77a11e82eda25ab8f070fdd31daf49c59f295432aad7fedc82b75e279e05e653bf3e1742760a5c6b7d14da13eb5590abfbc4c70708c1272cb55803ea5c95b8ee6b986f421917441ecc990575f403571db77e5ceeab55036b5cf0b5f4d55619cde6ef4cc238f1a22bd15e7f2a61d7ee38b6ded9f802e182ccec9fbbf9a34580f3fe0ea3cd8549af0832f97f2ce2fccfd12395522a68766c32309b68ad054d8c8fde9a9877eacfdb2f494d4790090619b350bbf87cb158a15cdf0bce82e2cc30ff61ba0df7156ec56b07b",
|
||||
"result" : "invalid",
|
||||
"flags" : []
|
||||
},
|
||||
{
|
||||
"tcId" : 10,
|
||||
"comment" : "last byte of m_hash modified",
|
||||
"msg" : "313233343030",
|
||||
"sig" : "7ede0b8e32a93237a275af33e45d813cdfb62f0d2a3aa2aac74b8ba087e0c152638ffc04bb0e7a1210b08c11a4b1271948117f1939ef37a2803129022a886af1114c89598df48470a5be740bd88ca58b5a9167f0182a99c4a5c1ae9663042f5fc32de8b335d0e5302bd933bca66d2b0c29370e04e6963be1976bffe70572ef0a94989c8cfda1dd1ccd589ef84d2ee901c33a60abb625a84da804519b75c2b28953cf8025928e2c8a239e67083dd64350a8e1a1942041fcf4b1f9d045a7d606125bbcd01bd1b3723a64f40df68744c50347b5bf8c7b3e0a2c8bb8f65c0ed1f1a4a2f67747190788384bb7b4ddd486a7768e601341b8a4d4fbb1c068cf69946c25",
|
||||
"result" : "invalid",
|
||||
"flags" : []
|
||||
},
|
||||
{
|
||||
"tcId" : 11,
|
||||
"comment" : "last byte of m_hash modified",
|
||||
"msg" : "313233343030",
|
||||
"sig" : "9988ccba25f493db250a596fbef65153c74305d4d7aa511fc0c7eb3795f418ceda425d0362de1a16b4281d0828656da02ed98fa3fe419e153c5fd11d21cf22b761d93633645c752fc9a23ffce9f6e085b489d0bdd9d144d2de51166b255e4cfdb37854721c649ced224ed8d9e30f821c92f3fb24b04a63676f81a4b5ef0249fd2b90e5a28673f82829980e291c87819083cbcd042127337024e3904e2b581857a336a04a042ea0acc36b8950d202e0dd11a15d2358651b6ddccf89b7e228fda0a89a1ba2967bdfc38563d2066db12fb0c7ad246f84ce5d81533c7b35fd09f7c04e7429504d25af31750655f41359bc23e2cd853825759a64c8b887e35b70340d",
|
||||
"result" : "invalid",
|
||||
"flags" : []
|
||||
},
|
||||
{
|
||||
"tcId" : 12,
|
||||
"comment" : "all bits in m_hash flipped",
|
||||
"msg" : "313233343030",
|
||||
"sig" : "5f459cbb1a96b1ceefaf54d3cdff680e6115e28fef69c5952ca25fed918ed3ef5c2b3e64c70be7eca0f4ef92af5e8f96b880c0a5c70525035e2ec7b2bcb4c69bcde8071b77a5f2283078ff7aa413dbb550168d863641052d9ffd5126ff21d35c30a4f1d1f62cd1ced7af5697a31ceca47346f1163a2826b705d8b26d3382371f171548b5576a410366629d4b4c83fbc18c0cf104923a91b1ae5cffb2e8e0b72ed7deb84a18be55496d0294deb3a78486dfc3b8fd64d4a1bdc7f636c4a8a9d982d05d0dd91af30979f881184d41799829e20b7ff87232da892f86c63c1c3be288a4031070d9f87fc7785c6822b850cfd0871e4e62b089f8904fadbb92cf2470d5",
|
||||
"result" : "invalid",
|
||||
"flags" : []
|
||||
},
|
||||
{
|
||||
"tcId" : 13,
|
||||
"comment" : "s_len changed to 0",
|
||||
"msg" : "313233343030",
|
||||
"sig" : "0b3f7de5275e61eb834c4335ddb4b79e786da6325ea0df53b5fc14f249c96776f8fd0e9588a7db6ed3280006b90245547aec0bdeeada381efb78ff941845e5c5b64516304766318d46aef8081a80303a89cf91b8d843ec6bd7edbfc6c24fbb709b551e7a3dba4cbfd8f3d74fda3fca117cce28bf8a3ab0770c924ac4ee16c5195de347452645eac61782a6a315dc51b301e75c690e7e4d4f2fb72a5eefd7fbf9d8fa30dc5fb9a016e79745790ea581b7f0bf2040a07a408625a243e56c07125b6b00ce3e5dfb2e2886b2b75c385ee8451c87c405d8b43d9b3c412f7bcf8a09c5830014553f07375df5dd618160fbe64176469e9c648b3f54ca9d6c37cb6a6b0d",
|
||||
"result" : "invalid",
|
||||
"flags" : []
|
||||
},
|
||||
{
|
||||
"tcId" : 14,
|
||||
"comment" : "s_len changed to 20",
|
||||
"msg" : "313233343030",
|
||||
"sig" : "25337ad22642a001a70be32b5fe3d8603502efbc8c54685ab140c50da793cbfb3ed7340e2eafe5ca02641d9001f805e649f826826b4dcfdd608618bee4da819ab8e3336610afa2bc6cec6a65c895bcc2faafac0264307b260a4eedfc00446668fe87f8de89b5b53471d236cf69cb5534d56a297043df1d8ea9ea2aeee6e03cd14758fa803dec4274fb53cbe620799d2483b9398a55443457103d221039fd80e1f410b66fdab42b3465e3319141dd8cf47d6ed0511851f16551924fbec4e4bc5bcccccf75d800534357786b26f1f43074df83c0c1601cb700b925b7066acafae9a980cc45e3cdf62e088a8bea6a041eb245774c36e7fd2e3c53c3a00f2a3edf9b",
|
||||
"result" : "invalid",
|
||||
"flags" : []
|
||||
},
|
||||
{
|
||||
"tcId" : 15,
|
||||
"comment" : "salt is all 0",
|
||||
"msg" : "313233343030",
|
||||
"sig" : "6d7791f73fc0b17a1012eb92f972742094c9a68ac68f7392cbfca1dacf1199be0f7561ba2b7104a57dce9cff5e138f6e18fd27358722c3ec0c6318fdd909305e7522a1f22d53760dd456cf2fc3a36a2aab1fed694c7d9a9d5fb9b18b279bf8a9cad737491e5880821eabba433104c4dc62e1e82ec098b6a5e328d6df6deddcf768efea22b4d17a961f0a0f245e82eba022fe1219117507aa18bbaa6a7744155780a3541ec86bd98a7a77eeeaf9998836ec2711b02ffa68e8d4aafb44f2830d403f13aba42e120eabf55143362a549d27b6d68d6b415a4fd2c304a2cfe4af6cfc7b6cfae56723d734c0e15737d72491fa7bda954f02b66ece3a14c7509335791a",
|
||||
"result" : "valid",
|
||||
"flags" : []
|
||||
},
|
||||
{
|
||||
"tcId" : 16,
|
||||
"comment" : "salt is all 1",
|
||||
"msg" : "313233343030",
|
||||
"sig" : "0035024fd56d31f68e739fa18cffd13f20c95925aa233b356eae6cdf5cfbebe86d1d8fdc9511f6197d61e81da00cc3cfe1c4706e733e3428e1254ba52fca6e11651781ff0c9919021445d3b4937b92ded09287336b1418786f21794ccda97ff4747aa3a1d68fe6480733ed3525aa28ad0443d9771a8ac8591ff749e79a9a6319c81a4ed2de4bc3d9fde17cd52fef72787f71d7dc2cee9993b25df677741eeecf296938bdb13a6fb2408f1d46e0efff6df68eea482482feaed98cd2980b0e1076fe628fc0562736b870c6c3f0f1d858bdde47b8fa1b02643082cb06f4f2a02832c4e1cc297f067e261fa0926fc13b10507351c92dfb602a6cc9ee7e0b9d5c3431",
|
||||
"result" : "valid",
|
||||
"flags" : []
|
||||
},
|
||||
{
|
||||
"tcId" : 17,
|
||||
"comment" : "byte 0 in zero padding modified",
|
||||
"msg" : "313233343030",
|
||||
"sig" : "67f686ee19ffa68d407878140f0b2911c25538c6b5e1bd4899de87df44b86512cf98e354d82cdc68a4dd443a1ec88cfc1e303d9251eff6426dadfc52649bf860890e34b0931c467b7c69bce6fb67fb4849e450d0d8fb0db88672314b0d76f3d3acc667d6be7501cec4a6cfb90e201d1aa94ee4c67d530480e82513073d00535c7ab26ffffe26810e8d2947904b7be7e4f240ef08c733b846765ed792e89d68fe8a67bcec4311944a6ee37be293dabf071acbe1170e565d03e7fb54778693093061448ce53f30556ffd95efffe15b6085e7c7373e1af90090daebb5a223f1b98ea8c64c3de2591edc48293b5a16f599d0d1184f6e9889abcd719e1bd91c21362a",
|
||||
"result" : "invalid",
|
||||
"flags" : []
|
||||
},
|
||||
{
|
||||
"tcId" : 18,
|
||||
"comment" : "byte 7 in zero padding modified",
|
||||
"msg" : "313233343030",
|
||||
"sig" : "30cddec34658d20ecc3bcfc6df9571b9669de7386ca11b4786176cfce90759a42046c673a09651c35b72652e2799c82ecc7fa7be9ce277bff3dbcf76d7fa48f9552a04576e2c95e5295283ed635dd744703af28ed6115dd7417d16b64142d1ae945020e4fbf3b19d481823fe986f7217991473732d4445f9f8bb33bc4e4d0faf859fe20ce1345a1290b41dda4c42f26440b5ac60cc723845ffd1cbe412ef3062237216bb7201f9009191fe8b4d8dd988e1e91c530cddfbfbd230fd5b906e237ec91e8eeec2697db4077ea378b533a1fc3e85a968b784fb52dc4535bdc1742c4c8d37d77fe15b7e6e2fc8cf20820caaa7f8f7d490515861d82a426a0c57a1c8b4",
|
||||
"result" : "invalid",
|
||||
"flags" : []
|
||||
},
|
||||
{
|
||||
"tcId" : 19,
|
||||
"comment" : "all bytes in zero padding modified",
|
||||
"msg" : "313233343030",
|
||||
"sig" : "90ae7b4ecf826f2c176a19246a326d5f4787aa6de936ebccbd3bc02d263d87e6357c4ea8100f8f775ec93a72a593e8535ee4a7a1a0ca4f157551a42c656a41a22376eeef9d89f51408a754c59970a0fe1b11bae8490799155009f1403ecedbe925aad6846fff9cd677b7dbef25b2e21679c810b7b91ddf7abbe9b9ea23de4d04bf6fb0c84994480039d3f372c6356e9c2cc1b07f0158fefcdd3d26a3c2946f934fd4bba6b39cf0e595cf9e36915ee19fbef45d1d13dcbdb5c51a9914c6bfe93a6a267ebf6b1844309114f2f29190e67f109ccd210b8608eb85f31be0ce69bd3103e5910fa62211fa64f6ff8bd76fa34f5a15602b19903c4330fd0bbec7a83949",
|
||||
"result" : "invalid",
|
||||
"flags" : []
|
||||
},
|
||||
{
|
||||
"tcId" : 20,
|
||||
"comment" : "first byte of hash h modified",
|
||||
"msg" : "313233343030",
|
||||
"sig" : "03332f90489c6b31f2f535bca630331f983a336c4bb3877b56714fe84575d6adbc2ff706de564c71d7c86fa3b26db62d6abc545468f5fe62f82e8bf49fc9e1634e0072da801c6b4e49bab35bc8beacf6772622f36625d0b806abe93cb262b5cab5188a8f265513882b6a442d4f9facfc7b6c7ad92b414385b1136b8703b2e202d22188cb6597124706b1dec357d314a6ea031961247dfefe9158cb1d6a01faf7047f6ae041dbdfc00bb5749e181e70541089e37017d799d44864b50e25c30ee499964eec5350ef7a144d7ca6deb6575e09f60e1d442078c601ee5310a927f6e60c6e6085721d4aefacaa875603a94beda575f43b638dd93e2780827390de3dd5",
|
||||
"result" : "invalid",
|
||||
"flags" : []
|
||||
},
|
||||
{
|
||||
"tcId" : 21,
|
||||
"comment" : "first byte of hash h modified",
|
||||
"msg" : "313233343030",
|
||||
"sig" : "61e23ed63de8a41def4bae9be916d04ed5d38bf928dfb39c35acedb1c64bcf52477ea5ca6663df4f0b6b74e8a07a880df8b09443413845e83276866d9c901c0f8ec75bd5f95306e2c06abe27e0847d8a17d472358102f054c04e069583cc1d28184d4305b2f61a1f2713bc07ab0205a95fecd2ff117bb67f90e8fff8dd6df9302ad1d745bdd602189005f02873ad6d503f9d114f0cfda570b10379e89350c68a4ba096f9174fe507d1d6e77b5feff5bc5b392ec6d7be5efaaba41cfc0e85c5c6d754681482631f1d4b0afeab4c69def6175a0686dea96e6e1e3a4b78b820b30ca97dff36fe892046cf71ecf1e1f88db636afba41f26cddc7e4fbc7e6014ddea6",
|
||||
"result" : "invalid",
|
||||
"flags" : []
|
||||
},
|
||||
{
|
||||
"tcId" : 22,
|
||||
"comment" : "last byte of hash h modified",
|
||||
"msg" : "313233343030",
|
||||
"sig" : "99d9abd2f8b529e4bed89d6ce2bff8b6c6e6096103c026fe1e464f67d5b015ee138a3fd4468e9d2c49f8c71a932580e719fecf808b81593e9e7f3951a6488254ae69d160cc2c06d3085ac91d61ce70fc9233c2e6d18add1acee8d80bc82cb6f5c602cf61bb5b40d9fb7efd8478b1a860e95c03e970da4ab235a226b0404ec95ad4aca0b606725f76acb010bf4a2b857a343d65b7e8b31af1ac70a32b60df8203c046b3fc7a76471c4a61d819039d80d00bef7b3a1a917479f328083f4f279c6f922de46bddae6743390beb06f47a89f805685a593cd4ec85236167b09acfe0ae01f6b99632124e7fb7338091ffb130dd0d67d6da387b6d5fcf9333c0dd5174ca",
|
||||
"result" : "invalid",
|
||||
"flags" : []
|
||||
},
|
||||
{
|
||||
"tcId" : 23,
|
||||
"comment" : "last byte of hash h modified",
|
||||
"msg" : "313233343030",
|
||||
"sig" : "2c7b62b6e368f888ac5fee793ef25e291ee74e9075826bad3bb6ceff534be69fc70a9c2423e6b12d60d7bd0579bfa0dc5ac9ec140b271740171ca8e4731d71d6edd802562cbcc6f68f34fc98edf37b9f21d74f2b12e2ca5909a910da8e575a7a741a92faee0508417a916154fc78d52a17bfdc6a22779ae331e659db6c348c569dd751a53a9b06280e0b9c9de1dbb841386fd2c90bd147a1d8c7ca5588ae8148f1a3bc730637e62730822c4105c4909409fcd1f9c1a52b3d3cbd0ba931ff397176b52434a689ef003d307bfdc52448e56579c05e8801f88b48083fb6d760afd69d435fc7558de21425d7c33e8f215304d2901b95fa57ccf1cf232486440996e5",
|
||||
"result" : "invalid",
|
||||
"flags" : []
|
||||
},
|
||||
{
|
||||
"tcId" : 24,
|
||||
"comment" : "all bytes of h replaced by 0",
|
||||
"msg" : "313233343030",
|
||||
"sig" : "58c11f3aef934956f8a2f8131d08c6a0c378c8e7243aab65cf1f11bd29c9e99bb3bf3388fb0e26e6bf94e2b268c19a97410085f6bed3d566cec443dcb244b13c75798b22d420227a5df5d071e36b66e9f7d146ed17651c3432e509dbff2e176f1a2906d1bf7cd6e5372dbdfd6f10f96cea3ad49b86a50284487b817e32dcc7f8a118758cf4ecf66203135a53896747fe988305cad8477589cd6275d4d39a207a9f75122b57915e24a2b7be58f5d83a6e987ed065e89aed82826b4edc7aeb5ce738dceb508840621653e75556ad278cb448e02e35308ef3ade58c3339f0cb456b4ac24863fde98301c3ee513e0915be5503ae9fd92d7b2d8b893447faf2be14b6",
|
||||
"result" : "invalid",
|
||||
"flags" : []
|
||||
},
|
||||
{
|
||||
"tcId" : 25,
|
||||
"comment" : "all bits of h replaced by 1s",
|
||||
"msg" : "313233343030",
|
||||
"sig" : "938049e3628e5d67ae9e137c7cc5b50728229c45591cbfb2a4d87dc983f3c59a46da157e144a6e43fb62018de719d19acf614cf2bc2417b99dc3fdc02f925146f340e37f37edd8e5eef08abac227240bb029e24529eeabc4a3d094cc53b582c4301b51556a471d3082258be2d720a02ba4a946dbd41570215512d6da179aa34439cf20b71e6b550699bf7f5ccef7667163c97f91349e3bc29f143f8737e549f6ce337b42cdc59574b5d0a2352540456cf3b2f000e54bff673f0596239bdc6b2219462afc89450ef546efb9f44133c2c67f05e0354149c267acd6b3007fc60b460b7b80e38d2b7a90f1f28fbea0d77d8931175dbb6ed18a05dc826834a01277ef",
|
||||
"result" : "invalid",
|
||||
"flags" : []
|
||||
},
|
||||
{
|
||||
"tcId" : 26,
|
||||
"comment" : "all bits in hash h flipped",
|
||||
"msg" : "313233343030",
|
||||
"sig" : "9c3ed04eee1eb4dc560bc16f5e2ce7d7b53593cf33b94083e56319a53bed39f7687f436c7916f2305337de71517128e319f63b262655009c7b2bbba4e8b3f4426f9617468a52e0237d49880b4b9ee1839e9cc703f5234f1430228acce9c228012e5b7fa78eee5bf0320052a18f1f6f59eefd4bdaf10032cb51d349387242755e1cd71b6f7261ebc18dd800666aa4e23a8d4866cdaee3677dc48403ac0a2bf4fcea6de9a0eacee1bea7696de4298953353f71ae2126ad1e57d376d6fd2bc164d45a06c15a8bf6c478b4a113d09b453da1259eff60c0456b285b7e7aeb994a18b8af5030ed2bad4affb6afc3206759fdc162b84d2cc8370d7ccb3bd29a7a346eeb",
|
||||
"result" : "invalid",
|
||||
"flags" : []
|
||||
},
|
||||
{
|
||||
"tcId" : 27,
|
||||
"comment" : "hash of salt missing",
|
||||
"msg" : "313233343030",
|
||||
"sig" : "9c9f5a4a9b57594db6d6b2d20ccd6c5e8139615459bc3fce9b88ee2ebc2aa0e81eb5fe039026dc212ec425fe86258f3ebfb17f1596217e77b4d39d61db09785becf198f8631ad30b233a9c9bcf200357e0b54dfef7e3a4085402843d814ac60598bd2c2af3dc12d419fe26fa3eefdf7146a5fae854519dbc5c3a59b3526072eebb9f51a9eccaf4810d74a023871248f36421801ed062714754bec1a6cc7d050b54d2e4c8965a52d284189affeb9ed86a5830e2d659974b8d8fb3fc3585943077d5421fe767cca9b072c6146d6a0c33ff0f7f7dfd778fc0c45360f20263eba68653589d265331d5c05b5c7cdfa885389f3de107203092cfccb2a7bc0b6edd0588",
|
||||
"result" : "invalid",
|
||||
"flags" : []
|
||||
},
|
||||
{
|
||||
"tcId" : 28,
|
||||
"comment" : "first byte of ps modified",
|
||||
"msg" : "313233343030",
|
||||
"sig" : "16cbe40a4ceb516342e186d07a5e5b243eb125869e1d1215bf6399a725068dd7942f94272e68b36f6e8a5a010e0f87c3ffe6dc943df5bbfa5c742ee776321ba78f1a0f4e2cbb84b21d04bffddd58ad57445b4087a088fe90a556173f50f832a3140b7d55c495fd38525873ed90193475788d9fae19966fac871d8ef23a73fe76afc7c5ba181b5063d282b6d0f7598973ef2ee17f5422acd3e2bd31d89ea701b24137078ff55cd0da83d4dc46432f7fadddf1c0a987409252f49112ca509b32c6a79617854f409896ae777441b79fcee0f6c54723563c1d47dd0d8f1a7bade79fc1124b520b764de6edf44fa383512ac0432a01e2d303c66a202454ec03e5d161",
|
||||
"result" : "invalid",
|
||||
"flags" : []
|
||||
},
|
||||
{
|
||||
"tcId" : 29,
|
||||
"comment" : "last byte of ps modified",
|
||||
"msg" : "313233343030",
|
||||
"sig" : "a8daad7e0d81243f33bb8de066c439c164e99935efadbd6041a286d9e7a47f352318df5bca1367788cba83f3b115c2fe566456e6cf5c5df2979854a3f231f186f9c29a3af197a355847300ed76279410c088fc4efb30a45737c9ec2b680a46f1dfccdeadae227ab40ba299ba620f8fb43fa1df7e8949c42ddee2dad8903fe894c44fc0e3b63544ef96d4db897c8103e6dde2719176838dda656748ef59cdf5687ac0cdb5518c68e7b883630b03c97508dcd821e4859ff630eee3f01efd53bd2e0729329867ff9f607f23fa74bf0d1afed4a5b663f31b3cfb21d85d898216f605f172bae974178ed9fa69437c49f6c4ab728398b18aa86dc2a5d020208cb77e50",
|
||||
"result" : "invalid",
|
||||
"flags" : []
|
||||
},
|
||||
{
|
||||
"tcId" : 30,
|
||||
"comment" : "all bytes of ps changed to 0xff",
|
||||
"msg" : "313233343030",
|
||||
"sig" : "81d2511b52a1bf47afc450073c2bd62c5dce31710378f0d3f32a2579de518b2bc91c987912ff8b9d07d76671c51dd6415ab194489cd04f3572e6912ad7249dc1343fca5060e21775d5439298f19726c9d040a10e18eb6f467649aea3e90cfc72bdf617108a5965b844b0103c50ef703ded0515021f45d1539f9e3407deb1b8520c169b15f47c7d837504793326bc069180da68dee8eb5e568266dd643b518d40392016faf6fef7413445e65a89e774deebc492cedb09d809bb6412553eba74db547e6bd2016d49de48e20e27b6cdf36ac02b95fa6b8edc7c822ca83ac25a6b13c797dd823f13fb6bf04a3c2da7cc1ee469d3eca751e078f4ea8b7d7345ced113",
|
||||
"result" : "invalid",
|
||||
"flags" : []
|
||||
},
|
||||
{
|
||||
"tcId" : 31,
|
||||
"comment" : "all bytes of ps changed to 0x80",
|
||||
"msg" : "313233343030",
|
||||
"sig" : "13cab65dd24434eb0475434fd46e8134c292cc378ba1afd63776a446f942dfcff68cd5d148564207ff11ed3aeba338ea013e62cc2b0c7421a3d5c6e23ce068d204b19cecd4031e496c21038f64736c23b9c12afa8ad19348623baca996b2f7694533cb10e77a49569db095779eb24962a0d91e3d415e9c8e93ec31d37b3c95c75e8077f897f0524dc575e322e303e3513070fed7906c86ad1d74ff14a9b5091659283e145a258070325aee5e7b2ff9f22fad6d2f4800c1a6fbc6daa02a569d9f3dd17059677057a0fab6142b884890b8e05d62948c3d842575a43174db025ee6907534bb333d47f43e7fdc7aa08495aab94a76486d543fbd4f01227064004604",
|
||||
"result" : "invalid",
|
||||
"flags" : []
|
||||
},
|
||||
{
|
||||
"tcId" : 32,
|
||||
"comment" : "ps followed by 0",
|
||||
"msg" : "313233343030",
|
||||
"sig" : "7979daec767038cfec577360c095468de4768867daadf743d71ae5eb18b87a9a80ef3ae1ecf39183ea786afa0f0856fa1637c86e1f473899cf9743b78dcd6d3474298f774c81c961b4d6d546b0a534d4807a0f52ca452cbc8f1b2189dbec9a062d51b41060f17c2dcd155842c7b95af9fe671cfa00563dd7fbbf1ab08e88903df80e872cd5e80787c4c07d0d9ea8817c598aeac81b2be21bf47c902aa9caaf89dd79ff45f7fb21eb1f4f3f198f7d838dca0883d8a5b155f7f4ddf6cfa481aafd57a077e4d3f98e4e6f10cefacaa34d8e86e076caa5f37e364ac0b64e4d50d3a2f36eeb97f2829d5fec3353956aa592d2167a4aab6c45678d139b16c8f4ec3469",
|
||||
"result" : "invalid",
|
||||
"flags" : []
|
||||
},
|
||||
{
|
||||
"tcId" : 33,
|
||||
"comment" : "ps followed by 0xff",
|
||||
"msg" : "313233343030",
|
||||
"sig" : "0bc7e91a2770304befb58383adfdafb627c90968630492a1a8ceef2880526ebc8089d0edfe05aaa3f6ccb4f59ba465502d337a4e9100ecc521bfd6439638a126c3b7492c7d2e921d3dbe70b7ae1891aad80b57b562fb24507197a5765e238181bc7b06fe3db81b085078bb6ca3aca913a4946f14c1954946fc97aa04218614dca326e5f4460a00dfffab89117ee66cfc46f350f745543563a6a57a98c4c65b49b90592e15f1c8161977260bce072377c684d02fb5105558b5a7749aecbb2d1d32e3dc37569625a6c942d57517af6cb4c7101a36f9a58b0a7c88ac4d2afa9c4a8b517a9802c1da6d6596e78d5d4c51ddf0e471d20935f8a5d0542c20be052ca43",
|
||||
"result" : "invalid",
|
||||
"flags" : []
|
||||
},
|
||||
{
|
||||
"tcId" : 34,
|
||||
"comment" : "shifted salt",
|
||||
"msg" : "313233343030",
|
||||
"sig" : "623d712c35bad54674208e3d55a5f4626a687c13f4491462bcb12ce6fe33534393151ff6d6588efbd09e0cc73e4bde59683b6b9d92ba4e0796b2dad36038708a37f621a7e177a5d8632e18f8eb6c742649564205a08ba5c44b0426b62921ddaa19e05731dc1952c7710b1bc5bfcbf3547f8f3fc0cc20860583d1cb66300a31c033da0a7a0e65041f517bd32e77e96cb3a7a857b31012f47b41509f6aff1f01c6f69fec696a33665164b7de763e3e4e2da36cbc0c9be486e9350f708636f989c9efbc0fdbac0ecd84814a8367d08ac265d6cd61db35a3290c65d7e572ac86790db8307480a23d95414800d28da43baf09e6e5c4e282e36189d1457d8a8fa76b99",
|
||||
"result" : "invalid",
|
||||
"flags" : []
|
||||
},
|
||||
{
|
||||
"tcId" : 35,
|
||||
"comment" : "including garbage",
|
||||
"msg" : "313233343030",
|
||||
"sig" : "4fba6b612ee3a28aae6d500a0a6511e42c06a2c1fa0fddecaf01735c08d7c0bc591c91e942f65dcbb5e257b487635018e306b1e403838e5f21787b5e993c5b9fc090a0312874e192d9d7459b8785707a94bb59295ed18a579d7a507891ca69633114b8b27cf4fcaed3daf8673e36d1dc8af8a886eb98bfc9b3535bbeed106bd2d60dd683747794cac66acac47e885d59c923595d383300b48e1bd84ffb5d8e8b8c103ed199248ac7d6976ee96f891c3ce1d59dbe56e0ca1e886f54fdc0efb204c1203e20886bbca06561b72bc36bf628c0976ad67011a857fd0e6a048a4985c8bdb9a9d9d78173265c7f3a37e17d140c7b78bc262ec4adab7c1e9fcc0fa60ad1",
|
||||
"result" : "invalid",
|
||||
"flags" : []
|
||||
},
|
||||
{
|
||||
"tcId" : 36,
|
||||
"comment" : "bit 7 of masked_db not cleared",
|
||||
"msg" : "313233343030",
|
||||
"sig" : "30bf988aff288824b7cde0f08ac75a39d05edb22f9051614ad96b8278520f39be7ce1b6fb7cb6992ae244424116af7e646f67acc8ccbdad2a90774a263a39b0014bceedbca53675d7094e985a6735b8c1c3c8ee605ac307a1af8cf2e6953474dfbfa80963add09196d37f4cc6c22091630cc33063d28c0b93025a474284e2a03fe938282132196e9b8de864e63223ec944521899b9e95344cb5124098fd949ea3bca3de362b2b60c18710466bf609d66fbe8583271c0bdc502bafd245a6cda9bd41fd5268a2d1f82216e893c530cec872625a3f5479b2dd17609505db528dcf63b1f795efd9d47fa67afe76fc438a550e57e102b05696330245a213790498c78",
|
||||
"result" : "invalid",
|
||||
"flags" : []
|
||||
},
|
||||
{
|
||||
"tcId" : 37,
|
||||
"comment" : "first byte of masked_db changed to 0",
|
||||
"msg" : "313233343030",
|
||||
"sig" : "7b978910abf0114dcb5214ca469a0f4a8048ba882b901ee05b8dc558f9402c2fd28ff4dd9f42e909a76c539426cbde4b4b676f062e4087b83153df9acf363c695f321447182e3f111aeac528595858b1e5efadc080e3c79bd61af0e07cba1bd20eef69aab0a30944cf3b25a1cfb1b917adc2ae8b1b1b0fb52099ce844ef69db27fe9b0cd754c01222d64ca876e0317639fa20d44a1438028ae4614c2069c44f3afc61029a6eee36b29213d1234c8d6545eb5700f9a9bbc3d6f8b44171492bc306b656f9d8f3b7fc42b20b6df4ca467fd8627ebe7329fda4e9f6b269754411b89bacc46c30276b54e92ac04d1705e59459e7dda4ecea05adbebd748ea5645ae94",
|
||||
"result" : "invalid",
|
||||
"flags" : []
|
||||
},
|
||||
{
|
||||
"tcId" : 38,
|
||||
"comment" : "last byte in em modified",
|
||||
"msg" : "313233343030",
|
||||
"sig" : "662869127ee70b974df6b962ed99484cdbebc8168c3a72d7196084df171248a001134cf467ba29dd8be549747488e63a3531a7680b5a5efcee17fc8864bbe5482612fbb3d100891adc38ccf29ecc3736bb94173b7b37961f64abb7e6d7c1e09ce3ccdce54b963db62aabfb73e5e067e75a500e7d37bab14f423dbcac2587e28f3eb4ad574877250856a4727c7dd0b1cdd77c8ef116a68e7867f58756c0a5e747f11388361a847098319594c9401641b8e3771aade2b02a015bdf32db7ff6beafcb3a761e54670eaf72c66576540379fa6d833c919585b6745046db744b0b17c6bf8d77e8be847b3cee5b8b9efc6bfb1d6019ed7fe7c9c56a06d2cb3a6c1b2d9b",
|
||||
"result" : "invalid",
|
||||
"flags" : []
|
||||
},
|
||||
{
|
||||
"tcId" : 39,
|
||||
"comment" : "last byte in em modified",
|
||||
"msg" : "313233343030",
|
||||
"sig" : "2644fc4d9837813b0d58a40ea62385b7afa68a73af08f2ded6f3206c59b8cbde6fb41cac05e18f83a2bcde5d3558696dee1ba87bf620b5620bd65cf64211ef83ede66eace10a6d13799c5ebca1b88831cfe6eeed4147c334e5fbaa7e4e69d1d76574be8f60d6517ff597df049e571352ba7eaab295bb3710b33c20e14bf7750f2b629c3e6243e774db104c1d8dc1a0a23dbd74279442b64e095775243b7d9508feefec937d473daa67f8fd6f87c8e6b0c97bd46e32ca9b1f002e02a17c9c24506561259602449e4d7413f578c428240c752422814164a29dfc6831dc2d696853b7b10eb0093080e36eae206676b64d3fa1f9bc7852a65fec282be041d8f1f7f6",
|
||||
"result" : "invalid",
|
||||
"flags" : []
|
||||
},
|
||||
{
|
||||
"tcId" : 40,
|
||||
"comment" : "last byte in em modified",
|
||||
"msg" : "313233343030",
|
||||
"sig" : "5a7f014d5c417ba362b5a3f3e72eaf6268c5e0765a70a62fa1a74a93305e21f818ca546abe26c98ca5f0680df728448834c720a900f23778d7b540dd5de992915043a9f3b2d46a475f38506551738bfd404bce937956ca321fe1f297c64943b1615caa94e6ae3ba8fa1b35c67196215c7edae05d66b4b97ea961827a3a8bb83261b97d2e2607725d3380e93ed340e7e5a2e76dfdb6cf59b6d3f2e664638a76daf0ca0e28588551299ea85159ff7a57cd3ffc4dab6f8e6ceda2ecce6b8e25bd829793b5c703aa5c20f7441092aae7da1cb19c802ebdb9d94232e87c2317eaa0771830402eb9d84a6434bb2bb9aebe56b1cbad3f686851ce6d3317a14c306a6d19",
|
||||
"result" : "invalid",
|
||||
"flags" : []
|
||||
},
|
||||
{
|
||||
"tcId" : 41,
|
||||
"comment" : "signature is 0",
|
||||
"msg" : "313233343030",
|
||||
"sig" : "00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000",
|
||||
"result" : "invalid",
|
||||
"flags" : []
|
||||
},
|
||||
{
|
||||
"tcId" : 42,
|
||||
"comment" : "signature is 1",
|
||||
"msg" : "313233343030",
|
||||
"sig" : "00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001",
|
||||
"result" : "invalid",
|
||||
"flags" : []
|
||||
},
|
||||
{
|
||||
"tcId" : 43,
|
||||
"comment" : "signature is n-1",
|
||||
"msg" : "313233343030",
|
||||
"sig" : "c684aef47bc201764a663acdf22e67140410b3d201533b6ccaebf86eda3d81a1230a1cc5ce2c9e4e102d107f2418d9386f1d3734eb922629b4e7ef464f79fcac53744702a147c1ef8dafc8eb366284d3419d98e8cf176ccb7f65bada528c222956900e1ec0c2f21e83e3ee30d946a6aa267e01a28b9c1833b035a881ad1865dfd2a451086a46f38ed137237c5fe368261e3a46712399f3c56ac6fbde33682ba98c95e435e1dec2d5b9d681ade372622c2dbdbe47b419b4ba23a5defc3f792d4d8373cc27cf707dd2f3603363a0ffe643dcfda79758ad1ac53d46f1a5ec25df1ddd94780a8f51f88ffb32337f05395dec93267802db95243f1b62cc3dd8118d2c",
|
||||
"result" : "invalid",
|
||||
"flags" : []
|
||||
},
|
||||
{
|
||||
"tcId" : 44,
|
||||
"comment" : "signature is n",
|
||||
"msg" : "313233343030",
|
||||
"sig" : "c684aef47bc201764a663acdf22e67140410b3d201533b6ccaebf86eda3d81a1230a1cc5ce2c9e4e102d107f2418d9386f1d3734eb922629b4e7ef464f79fcac53744702a147c1ef8dafc8eb366284d3419d98e8cf176ccb7f65bada528c222956900e1ec0c2f21e83e3ee30d946a6aa267e01a28b9c1833b035a881ad1865dfd2a451086a46f38ed137237c5fe368261e3a46712399f3c56ac6fbde33682ba98c95e435e1dec2d5b9d681ade372622c2dbdbe47b419b4ba23a5defc3f792d4d8373cc27cf707dd2f3603363a0ffe643dcfda79758ad1ac53d46f1a5ec25df1ddd94780a8f51f88ffb32337f05395dec93267802db95243f1b62cc3dd8118d2d",
|
||||
"result" : "invalid",
|
||||
"flags" : []
|
||||
},
|
||||
{
|
||||
"tcId" : 45,
|
||||
"comment" : "prepending 0's to signature",
|
||||
"msg" : "313233343030",
|
||||
"sig" : "000013ba63edfb238437932e8f508b307cdb5117577935355a877b1ca6546537b55c35952d4b1a7cdc2be01e2f76f04dc8ead4a6bbb25ef85188b5e13109ba730746962f04ae37c8ea210dbc0970975fd55c3b0663668951544f05243d1fe6977aa71f4cb797bc8c64d85cab05a1c16a09544a6eefc464efc70b80d98964099ee71d30453b23475bec88308702042e6b4751b138a3a7f15da19e224b52d5b2d1b507dd3f7cf61d6a1cbff6478bae9d0587f376cdc2dde05901e259194ca4961211b7164c5ee23d56f7625ab8170040f00d608b2b028298df4b576b2514d881ba665f9994bb14c9a9d9d172c84b3322f2175032dc3c96c1986742651453582c79ef5a",
|
||||
"result" : "invalid",
|
||||
"flags" : []
|
||||
},
|
||||
{
|
||||
"tcId" : 46,
|
||||
"comment" : "appending 0's to signature",
|
||||
"msg" : "313233343030",
|
||||
"sig" : "13ba63edfb238437932e8f508b307cdb5117577935355a877b1ca6546537b55c35952d4b1a7cdc2be01e2f76f04dc8ead4a6bbb25ef85188b5e13109ba730746962f04ae37c8ea210dbc0970975fd55c3b0663668951544f05243d1fe6977aa71f4cb797bc8c64d85cab05a1c16a09544a6eefc464efc70b80d98964099ee71d30453b23475bec88308702042e6b4751b138a3a7f15da19e224b52d5b2d1b507dd3f7cf61d6a1cbff6478bae9d0587f376cdc2dde05901e259194ca4961211b7164c5ee23d56f7625ab8170040f00d608b2b028298df4b576b2514d881ba665f9994bb14c9a9d9d172c84b3322f2175032dc3c96c1986742651453582c79ef5a0000",
|
||||
"result" : "invalid",
|
||||
"flags" : []
|
||||
},
|
||||
{
|
||||
"tcId" : 47,
|
||||
"comment" : "truncated signature",
|
||||
"msg" : "313233343030",
|
||||
"sig" : "13ba63edfb238437932e8f508b307cdb5117577935355a877b1ca6546537b55c35952d4b1a7cdc2be01e2f76f04dc8ead4a6bbb25ef85188b5e13109ba730746962f04ae37c8ea210dbc0970975fd55c3b0663668951544f05243d1fe6977aa71f4cb797bc8c64d85cab05a1c16a09544a6eefc464efc70b80d98964099ee71d30453b23475bec88308702042e6b4751b138a3a7f15da19e224b52d5b2d1b507dd3f7cf61d6a1cbff6478bae9d0587f376cdc2dde05901e259194ca4961211b7164c5ee23d56f7625ab8170040f00d608b2b028298df4b576b2514d881ba665f9994bb14c9a9d9d172c84b3322f2175032dc3c96c1986742651453582c79",
|
||||
"result" : "invalid",
|
||||
"flags" : []
|
||||
},
|
||||
{
|
||||
"tcId" : 48,
|
||||
"comment" : "empty signature",
|
||||
"msg" : "313233343030",
|
||||
"sig" : "",
|
||||
"result" : "invalid",
|
||||
"flags" : []
|
||||
},
|
||||
{
|
||||
"tcId" : 49,
|
||||
"comment" : "PKCS #1 v1.5 signature",
|
||||
"msg" : "313233343030",
|
||||
"sig" : "92626c8d80680cc141f89f5cd482c3e7f59b2cf0e6df97785674387ebd9c9f0631012d28535bbf8f9c7890b80d9a0c49853d2f9f6318df06eca2af2aa8351a304aead3d723ff5fbce48db6bc27e5685e0b329a14d1ef57994a4871e7a8d0f3a0d97f8486a7b40fe52327677fb58136afbd5dd832628fe423001568484c796b0036fd3f329236533fe4c24ac2e0bdc027def06fe3ea227e27282e63bf858491f18e663e23f03f7089b4b94c35f6687fadc786297535b8af03b399fa07b67ae409056cf33549b1825c5cbd954e39c8d6862b6a0b1981100c1e780802334b6924bee55efbae7685feb02d202415807a415fdc4e512e78164d821e9b2a1caef95fca",
|
||||
"result" : "invalid",
|
||||
"flags" : []
|
||||
}
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
||||
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
Reference in New Issue
Block a user