Commit dc4e3f8e authored by garciay's avatar garciay
Browse files

testSystem/asn1c codec tests

parent 552ac2eb
......@@ -762,13 +762,128 @@ module TestCodec_Certificates {
var bitstring v_enc_msg := oct2bit('8003008100288300000000001874e3808466a8c001012080010780012482080301ffff0301ffff800125820a0401ffffff0401ffffff800189820a0401ffffff0401ffffff80018a820a0401ffffff0401ffffff80018b820a0401ffffff0401ffffff80018c820a0401ffffff0401ffffff00018d00808082cb6d12f0886798e4c2fac41e92e5cdf6c81682e705e0c2905b5aeaceca5bddae8080424789359de2597ab0d78a17f08acdebb10d31d3f0a25b1362e0b56c1a5080135638e7e68c8bf24a0356e570df6465b980ed52317db89822d099c6e6ee72d39d'O);
var integer v_compressedMode;
var Oct32 v_publicKeyCompressed := int2oct(0, 32);
var EtsiTs103097Certificate v_cert_exp := {
version := 3,
type_ := explicit,
issuer := {
self_ := sha256
},
toBeSigned := {
id := {
none_ := NULL
},
cracaId := '000000'O,
crlSeries := 0,
validityPeriod := {
start_ := 410313600,
duration := {
hours := 26280
}
},
region := omit,
assuranceLevel := 'C0'O,
appPermissions := omit,
certIssuePermissions := {
{
subjectPermissions := {
explicit := {
{
psid := 36,
sspRange := {
bitmapSspRange := {
sspValue := '01FFFF'O,
sspBitmask := '01FFFF'O
}
}
},
{
psid := 37,
sspRange := {
bitmapSspRange := {
sspValue := '01FFFFFF'O,
sspBitmask := '01FFFFFF'O
}
}
},
{
psid := 137,
sspRange := {
bitmapSspRange := {
sspValue := '01FFFFFF'O,
sspBitmask := '01FFFFFF'O
}
}
},
{
psid := 138,
sspRange := {
bitmapSspRange := {
sspValue := '01FFFFFF'O,
sspBitmask := '01FFFFFF'O
}
}
},
{
psid := 139,
sspRange := {
bitmapSspRange := {
sspValue := '01FFFFFF'O,
sspBitmask := '01FFFFFF'O
}
}
},
{
psid := 140,
sspRange := {
bitmapSspRange := {
sspValue := '01FFFFFF'O,
sspBitmask := '01FFFFFF'O
}
}
},
{
psid := 141,
sspRange := omit
}
}
},
minChainLength := 0,
chainLengthRange := 0,
eeType := '00000000'B
}
},
certRequestPermissions := omit,
canRequestRollover := omit,
encryptionKey := omit,
verifyKeyIndicator := {
verificationKey := {
ecdsaNistP256 := {
compressed_y_0 := 'CB6D12F0886798E4C2FAC41E92E5CDF6C81682E705E0C2905B5AEACECA5BDDAE'O
}
}
}
},
signature_ := {
ecdsaNistP256Signature := {
rSig := {
x_only := '424789359DE2597AB0D78A17F08ACDEBB10D31D3F0A25B1362E0B56C1A508013'O
},
sSig := '5638E7E68C8BF24A0356E570DF6465B980ED52317DB89822D099C6E6EE72D39D'O
}
}
};
var integer v_res := decvalue(v_enc_msg, v_cert_dec);
if (v_res == 0) {
log("Decoded message: ", v_cert_dec);
setverdict(pass);
setverdict(pass, "Decoded succeed");
if (not(match(v_cert_exp, v_cert_dec))) {
setverdict(fail, "Templates mismatch");
} else {
setverdict(pass, "Templates match");
}
} else {
setverdict(fail);
setverdict(fail, "Decoding failed");
}
if (ischosen(v_cert_dec.toBeSigned.verifyKeyIndicator.verificationKey.ecdsaNistP256.compressed_y_0)) {
......@@ -778,13 +893,13 @@ module TestCodec_Certificates {
v_compressedMode := 1;
v_publicKeyCompressed := v_cert_dec.toBeSigned.verifyKeyIndicator.verificationKey.ecdsaNistP256.compressed_y_1;
}
if (f_verifyWithEcdsaBrainpoolp256WithSha256(
bit2oct(v_enc_msg),
int2oct(0, 32),
v_cert_dec.signature_.ecdsaNistP256Signature.rSig.x_only & v_cert_dec.signature_.ecdsaNistP256Signature.sSig,
v_publicKeyCompressed,
v_compressedMode
) == false) {
if (f_verifyWithEcdsaNistp256WithSha256(
bit2oct(v_enc_msg),
int2oct(0, 32),
v_cert_dec.signature_.ecdsaNistP256Signature.rSig.x_only & v_cert_dec.signature_.ecdsaNistP256Signature.sSig,
v_publicKeyCompressed,
v_compressedMode
) == false) {
setverdict(fail);
} else {
setverdict(pass)
......
Supports Markdown
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment