22 QDataStream ds(&encode, QIODevice::WriteOnly);
24 for(
int i = l ; i ; i--){
25 ds << (quint8)(v >> (8 * (i - 1)));
26 v -= (v >> (8 * (i - 1))) << (8 * (i - 1));
35 QDataStream ds(&encode, QIODevice::WriteOnly);
37 for(
int i = l ; i ; i--){
38 ds << (qint8)(v >> (8 * (i - 1)));
39 v -= (v >> (8 * (i - 1))) << (8 * (i - 1));
48 QDataStream ds(&encode, QIODevice::WriteOnly);
50 for(
int i = 0 ; i < o.
size ; i++)
51 ds << (quint8)o.
buf[i];
59 QDataStream ds(&encode, QIODevice::WriteOnly);
64 ds.writeRawData(length.data(), length.length());
65 ds.writeRawData(value.data(), value.length());
74 QDataStream ds(&encode, QIODevice::WriteOnly);
77 ds.writeRawData(value.data(), value.length());
85 char encode[8] = {0x00};
89 return QByteArray(encode, 1);
91 for(i = 7 ; i > -1 &&
intx ; i--)
93 encode[i] =
intx & 0xFF;
103 return QByteArray(&encode[8 - nbBytes], nbBytes);
111 QDataStream ds(&encode, QIODevice::WriteOnly);
114 QByteArray publicKey;
115 QByteArray supportedSymmAlg;
118 ds.writeRawData(algorithm.data(), algorithm.length());
123 ds.writeRawData(publicKey.data(), publicKey.length());
128 ds.writeRawData(supportedSymmAlg.data(), supportedSymmAlg.length());
129 ds.writeRawData(publicKey.data(), publicKey.length());
133 ds.writeRawData(otherKey.data(), otherKey.length());
143 QDataStream ds(&encode, QIODevice::WriteOnly);
150 ds.writeRawData(
type.data(),
type.length());
151 ds.writeRawData(x.data(), x.length());
160 ds.writeRawData(y.data(), y.length());
164 ds.writeRawData(data.data(), data.length());
176 QDataStream ds(&encode, QIODevice::WriteOnly);
182 ds.writeRawData(symmAlgorithm.data(), symmAlgorithm.length());
187 ds.writeRawData(nonce.data(), nonce.length());
191 ds.writeRawData(params.data(), params.length());
201 QDataStream ds(&encode, QIODevice::WriteOnly);
204 QByteArray ecdsaSignature;
207 ds.writeRawData(algorithm.data(), algorithm.length());
212 ds.writeRawData(ecdsaSignature.data(), ecdsaSignature.length());
216 ds.writeRawData(sign.data(), sign.length());
226 QDataStream ds(&encode, QIODevice::WriteOnly);
231 ds.writeRawData(R.data(), R.length());
232 ds.writeRawData(s.data(), s.length());
240 QDataStream ds(&encode, QIODevice::WriteOnly);
245 QByteArray certificates;
246 QDataStream certificatesDS(&certificates, QIODevice::WriteOnly);
247 QByteArray algorithm;
251 ds.writeRawData(
type.data(),
type.length());
252 switch (signerInfo.
type)
256 ds.writeRawData(digest.data(), digest.length());
269 ds.writeRawData(var.data(), var.length());
270 ds.writeRawData(certificates.data(), certificates.length());
275 ds.writeBytes(algorithm.data(), algorithm.length());
276 ds.writeRawData(digest.data(), digest.length());
280 ds.writeRawData(info.data(), info.length());
296 QDataStream ds(&encode, QIODevice::WriteOnly);
301 ds.writeRawData(t.data(), t.length());
302 ds.writeRawData(logStdDev.data(), logStdDev.length());
312 QDataStream ds(&encode, QIODevice::WriteOnly);
317 ds.writeRawData(latitude.data(), latitude.length());
318 ds.writeRawData(longitude.data(), longitude.length());
326 QDataStream ds(&encode, QIODevice::WriteOnly);
332 ds.writeRawData(latitude.data(), latitude.length());
333 ds.writeRawData(longitude.data(), longitude.length());
334 ds.writeRawData(elevation.data(), elevation.length());
342 QDataStream ds(&encode, QIODevice::WriteOnly);
345 QByteArray circularRegion;
347 QByteArray polygonalRegion;
349 QByteArray otherRegion;
351 ds.writeRawData(regionType.data(), regionType.length());
356 ds.writeRawData(circularRegion.data(), circularRegion.length());
367 ds.writeRawData(polygonalRegion.data(), polygonalRegion.length());
371 ds.writeRawData(idRegion.data(), idRegion.length());
377 ds.writeRawData(otherRegion.data(), otherRegion.length());
389 QDataStream ds(&encode, QIODevice::WriteOnly);
394 ds.writeRawData(center.data(), center.length());
395 ds.writeRawData(radius.data(), radius.length());
403 QDataStream ds(&encode, QIODevice::WriteOnly);
408 ds.writeRawData(northwest.data(), northwest.length());
409 ds.writeRawData(southEast.data(), southEast.length());
417 QDataStream ds(&encode, QIODevice::WriteOnly);
419 QByteArray polygonalRegion;
422 ds.writeRawData(var.data(), var.length());
423 for(
int i = 0 ; i < polygon.list.count ; i++)
426 ds.writeRawData(polygonalRegion.data(), polygonalRegion.length());
435 QDataStream ds(&encode, QIODevice::WriteOnly);
438 QByteArray regionIdentifier =
encode_INTEGER(
id.region_identifier, 2);
439 QByteArray localRegion =
encode_INTX(
id.local_region);
441 ds.writeRawData(regionDictionary.data(), regionDictionary.length());
442 ds.writeRawData(regionIdentifier.data(), regionIdentifier.length());
443 ds.writeRawData(localRegion.data(), localRegion.length());
454 QDataStream ds(&encode, QIODevice::WriteOnly);
457 QByteArray headerFields;
458 QDataStream headerFieldsDS(&headerFields, QIODevice::WriteOnly);
466 headerFieldsDS.writeRawData(field.data(), field.length());
469 ds.writeRawData(var.data(), var.length());
470 ds.writeRawData(headerFields.data(), headerFields.length());
478 QDataStream ds(&encode, QIODevice::WriteOnly);
481 QByteArray generationTime;
482 QByteArray generationTimeWithStandardDeviation;
483 QByteArray expiryTime;
484 QByteArray generationLocation;
486 QDataStream digestsDS(&digests, QIODevice::WriteOnly);
490 QByteArray encParams;
491 QByteArray recipients;
492 QDataStream recipientsDS(&recipients, QIODevice::WriteOnly);
494 QByteArray otherHeader;
497 ds.writeRawData(
type.data(),
type.length());
502 ds.writeRawData(generationTime.data(), generationTime.length());
506 ds.writeRawData(generationTimeWithStandardDeviation.data(), generationTimeWithStandardDeviation.length());
510 ds.writeRawData(expiryTime.data(), expiryTime.length());
514 ds.writeRawData(generationLocation.data(), generationLocation.length());
520 digestsDS.writeRawData(digest.data(), digest.length());
523 ds.writeRawData(var.data(), var.length());
524 ds.writeRawData(digests.data(), digests.length());
528 ds.writeRawData(itsAid.data(), itsAid.length());
532 ds.writeRawData(signer.data(), signer.length());
536 ds.writeRawData(encParams.data(), encParams.length());
545 ds.writeRawData(var.data(), var.length());
546 ds.writeRawData(recipients.data(), recipients.length());
550 ds.writeRawData(otherHeader.data(), otherHeader.length());
562 QDataStream ds(&encode, QIODevice::WriteOnly);
565 QDataStream fieldsDS(&fields, QIODevice::WriteOnly);
572 fieldsDS.writeRawData(field.data(), field.length());
575 ds.writeRawData(var.data(), var.length());
576 ds.writeRawData(fields.data(), fields.length());
584 QDataStream ds(&encode, QIODevice::WriteOnly);
587 QByteArray signature;
588 QByteArray securityField;
590 ds.writeRawData(
type.data(),
type.length());
595 ds.writeRawData(signature.data(), signature.length());
599 ds.writeRawData(securityField.data(), securityField.length());
611 QDataStream ds(&encode, QIODevice::WriteOnly);
617 ds.writeRawData(certId.data(), certId.length());
618 ds.writeRawData(pkEncryption.data(), pkEncryption.length());
623 ds.writeRawData(encKey.data(), encKey.length());
627 ds.writeRawData(encKey.data(), encKey.length());
637 QDataStream ds(&encode, QIODevice::WriteOnly);
643 ds.writeRawData(v.data(), v.length());
644 ds.writeRawData(c.data(), c.length());
645 ds.writeRawData(t.data(), t.length());
654 QDataStream ds(&encode, QIODevice::WriteOnly);
659 QByteArray subjectAttributes;
660 QDataStream subjectAttributesDS(&subjectAttributes, QIODevice::WriteOnly);
661 QByteArray subjectAttribute;
663 QByteArray validityRestrictions;
664 QDataStream validityRestrictionsDS(&validityRestrictions, QIODevice::WriteOnly);
669 ds.writeRawData(version.data(), version.length());
670 ds.writeRawData(signerInfo.data(), signerInfo.length());
671 ds.writeRawData(subjectInfo.data(), subjectInfo.length());
675 subjectAttributesDS.writeRawData(subjectAttribute.data(), subjectAttribute.length());
678 ds.writeRawData(var.data(), var.length());
679 ds.writeRawData(subjectAttributes.data(), subjectAttributes.length());
686 ds.writeRawData(var.data(), var.length());
687 ds.writeRawData(validityRestrictions.data(), validityRestrictions.length());
688 ds.writeRawData(signature.data(), signature.length());
696 QDataStream ds(&encode, QIODevice::WriteOnly);
701 ds.writeRawData(subjectType.data(), subjectType.length());
702 ds.writeRawData(subjectName.data(), subjectName.length());
712 QDataStream ds(&encode, QIODevice::WriteOnly);
717 QByteArray assuranceLevel;
718 QByteArray itsAidLists;
719 QDataStream itsAidListsDS(&itsAidLists, QIODevice::WriteOnly);
720 QByteArray itsAidList;
722 QByteArray itsAidSspLists;
723 QDataStream itsAidSspListsDS(&itsAidSspLists, QIODevice::WriteOnly);
724 QByteArray itsAidSspList;
725 QByteArray otherAttribute;
727 ds.writeRawData(
type.data(),
type.length());
728 switch (subject.
type)
733 ds.writeRawData(key.data(), key.length());
737 ds.writeRawData(rv.data(), rv.length());
741 ds.writeRawData(assuranceLevel.data(), assuranceLevel.length());
747 itsAidListsDS.writeRawData(itsAidList.data(), itsAidList.length());
750 ds.writeRawData(var.data(), var.length());
751 ds.writeRawData(itsAidLists.data(), itsAidLists.length());
757 itsAidSspListsDS.writeRawData(itsAidSspList.data(), itsAidSspList.length());
760 ds.writeRawData(var.data(), var.length());
761 ds.writeRawData(itsAidSspLists.data(), itsAidSspLists.length());
765 ds.writeRawData(otherAttribute.data(), otherAttribute.length());
778 QDataStream ds(&encode, QIODevice::WriteOnly);
781 QByteArray endValidity;
782 QByteArray startValidity;
787 ds.writeRawData(
type.data(),
type.length());
792 ds.writeRawData(endValidity.data(), endValidity.length());
797 ds.writeRawData(startValidity.data(), startValidity.length());
798 ds.writeRawData(endValidity.data(), endValidity.length());
803 ds.writeRawData(startValidity.data(), startValidity.length());
804 ds.writeRawData(duration.data(), duration.length());
808 ds.writeRawData(region.data(), region.length());
812 ds.writeRawData(data.data(), data.length());
824 QDataStream ds(&encode, QIODevice::WriteOnly);
829 ds.writeRawData(itsAid.data(), itsAid.length());
830 ds.writeRawData(serviceSpecificPermission.data(), serviceSpecificPermission.length());
struct ValidityRestriction::validity_restriction::ValidityRestriction__validity_restriction_u::time_start_and_duration time_start_and_duration
QByteArray encode_INTEGER(quint64 v, int l)
encode_INTEGER Encode an unsigned integer.
QByteArray encode_TrailerFieldType(TrailerFieldType_t type)
encode_TrailerFieldType Encode a TrailerFieldType.
QByteArray encode_HeaderFieldType(HeaderFieldType_t type)
encode_HeaderFieldType Encode an HeaderFieldType.
QByteArray encode_EccPoint(EccPoint_t point)
encode_EccPoint Encode an EccPoint.
QByteArray encode_SignerInfo(SignerInfo_t signerInfo)
encode_SignerInfo Encode a SignerInfo.
static IntX_t intx[NSECURE_FIELDS]
struct SignerInfo * signer_info_certificate
QByteArray encode_SignerInfoType(SignerInfoType_t type)
encode_SignerInfoType Encode a SignerInfoType.
SymmetricAlgorithm_t supported_symm_alg
QByteArray encode_SubjectAssurance(SubjectAssurance_t subject)
encode_SubjectAssurance Encode a SubjectAssurance.
union EncryptionParameters::encryption_parameters::EncryptionParameters__encryption_parameters_u choice
PublicKeyAlgorithm_t pk_encryption
union SignerInfo::signer_info::SignerInfo__signer_info_u choice
static Certificate_t certificate[NSECURE_FIELDS]
QByteArray encode_Opaque(Opaque_t opaque)
encode_Opaque Encode an Opaque with unknown length.
QByteArray encode_EciesEncryptedKey(EciesEncryptedKey_t ecies)
encode_EciesEncryptedKey Encode an EciesEncryptedKey.
struct EccPoint::ecc_point::EccPoint__ecc_point_u::uncompressed uncompressed
struct SignerInfo::signer_info::SignerInfo__signer_info_u::certificate_chain certificate_chain
struct SubjectAttribute::subject_attribute::SubjectAttribute__subject_attribute_u::its_aid_ssp_list its_aid_ssp_list
long SymmetricAlgorithm_t
QByteArray encode_Certificate(Certificate_t certificate)
encode_Certificate Encode a Certificate.
struct SubjectAttribute::subject_attribute::SubjectAttribute__subject_attribute_u::recontruction_value recontruction_value
struct EccPoint::ecc_point::EccPoint__ecc_point_u::unknown_ecc_point unknown_ecc_point
static RectangularRegion_t rectangularRegion[NSECURE_FIELDS]
struct PublicKey::public_key::PublicKey__public_key_u::ecdsa_nistp256_with_sha256_public_key ecdsa_nistp256_with_sha256_public_key
struct GeographicRegion::geographic_region::GeographicRegion__geographic_region_u::circle circle
QByteArray encode_TrailerField(TrailerField_t field)
encode_TrailerField Encode a TrailerField.
Opaque_t service_specific_permissions
QByteArray encode_Time64(Time64_t time)
encode_Time64 Encode a Time64.
EcdsaSignature_t ecdsa_signature
QByteArray encode_OCTET_STRING(OCTET_STRING_t o)
encode_OCTET_STRING Encode an OCTET_STRING.
QByteArray encode_PolygonalRegion(PolygonalRegion_t polygon)
encode_PolygonalRegion Encode a PolygonalRegion.
union SubjectAttribute::subject_attribute::SubjectAttribute__subject_attribute_u choice
SubjectAssurance_t assurance
static RecipientInfo_t recipient[NSECURE_FIELDS]
union GeographicRegion::geographic_region::GeographicRegion__geographic_region_u choice
struct GeographicRegion::geographic_region geographic_region
struct SubjectAttribute::subject_attribute subject_attribute
long SubjectAttributeType_t
ValidityRestrictionType_t type
QByteArray encode_HeaderField(HeaderField_t field)
encode_HeaderField Encode an HeaderField.
struct Certificate * certif
struct TrailerField::trailer_field trailer_field
union TrailerField::trailer_field::TrailerField__trailer_field_u choice
QByteArray encode_Signature(Signature_t signature)
encode_Signature Encode a Signature.
QByteArray encode_IdentifiedRegion(IdentifiedRegion_t id)
encode_IdentifiedRegion Encode a IdentifiedRegion.
struct Certificate::validity_restrictions validity_restrictions
GeographicRegion_t geographic_region
QByteArray encode_SINTEGER(quint64 v, int l)
encode_INTEGER Encode an signed integer.
struct SignerInfo::signer_info::SignerInfo__signer_info_u::unknown_signer_info unknown_signer_info
QByteArray encode_RegionDictionary(RegionDictionary_t dictionary)
encode_RegionDictionary Encode a RegionDictionary.
struct ValidityRestriction::validity_restriction::ValidityRestriction__validity_restriction_u::unknown_validity_restriction unknown_validity_restriction
QByteArray encode_Time32(Time32_t time)
encode_Time32 Encode a Time32.
struct Certificate::subject_attributes subject_attributes
QByteArray encode_SymmetricAlgorithm(SymmetricAlgorithm_t algorithm)
encode_SymmetricAlgorithm Encode a SymmetricAlgorithm.
struct RecipientInfo::recipient_info::RecipientInfo__recipient_info_u::unknown_recipient_info unknown_recipient_info
struct SubjectAttribute::subject_attribute::SubjectAttribute__subject_attribute_u::its_aid_list::its_aid its_aid
union PublicKey::public_key::PublicKey__public_key_u choice
QByteArray encode_PublicKey(PublicKey_t key)
encode_PublicKey Encode a PublicKey.
struct ValidityRestriction::validity_restriction validity_restriction
struct SignerInfo::signer_info::SignerInfo__signer_info_u::certificate certificate
struct SubjectAttribute::subject_attribute::SubjectAttribute__subject_attribute_u::its_aid_ssp_list::its_aid_ssp its_aid_ssp
struct EncryptionParameters::encryption_parameters::EncryptionParameters__encryption_parameters_u::aes_128_ccm aes_128_ccm
union ValidityRestriction::validity_restriction::ValidityRestriction__validity_restriction_u choice
QByteArray encode_HashedId8(HashedId8_t hash)
encode_HashedId8 Encode an HashedId8.
SubjectAttributeType_t type
QByteArray encode_ValidityRestrictionType(ValidityRestrictionType_t type)
encode_ValidityRestrictionType Encode a ValidityRestrictionType.
QByteArray encode_EncryptionParameters(EncryptionParameters_t encParams)
encode_EncryptionParameters Encode an EncryptionParameters.
QByteArray encode_INTX(IntX_t intx)
encode_INTX Encode an INTX.
struct Signature::sign::Signature__sign_u::unknown_signature unknown_signature
struct SignerInfo::signer_info::SignerInfo__signer_info_u::certificate_chain::certificates certificates
struct SubjectAttribute::subject_attribute::SubjectAttribute__subject_attribute_u::its_aid_list its_aid_list
struct GeographicRegion::geographic_region::GeographicRegion__geographic_region_u::rectangle::rectangular_region rectangular_region
SubjectType_t subject_type
QByteArray encode_RegionType(RegionType_t type)
encode_RegionType Encode a RegionType.
QByteArray encode_ValidityRestriction(ValidityRestriction_t validityRestriction)
encode_ValidityRestriction Encode a ValidityRestriction.
CircularRegion_t circular_region
EciesEncryptedKey_t enc_key
QByteArray encode_HashedId3(HashedId3_t hash)
encode_HashedId3 Encode an HashedId3.
QByteArray encode_SubjectAttributeType(SubjectAttributeType_t type)
encode_SubjectAttributeType Encode SubjectAttributeType.
struct ValidityRestriction::validity_restriction::ValidityRestriction__validity_restriction_u::time_end time_end
long ValidityRestrictionType_t
PublicKeyAlgorithm_t algorithm
struct PublicKey::public_key public_key
struct Signature::sign sign
QByteArray encode_Duration(Duration_t duration)
encode_Duration Encode a Duration.
struct SignerInfo::signer_info signer_info
QByteArray encode_PublicKeyAlgorithm(PublicKeyAlgorithm_t algorithm)
encode_PublicKeyAlgorithm Encode a PublicKeyAlgorithm.
union RecipientInfo::recipient_info::RecipientInfo__recipient_info_u choice
struct PublicKey::public_key::PublicKey__public_key_u::unknown_public_key unknown_public_key
IdentifiedRegion_t id_region
QByteArray encode_SubjectInfo(SubjectInfo_t info)
encode_SubjectInfo Encode a SubjectInfo.
QByteArray encode_EccPointType(EccPointType_t type)
encode_EccPointType Encode an EccPointType.
QByteArray encode_SecuredHeader(SecuredHeader_t header)
encode_SecuredHeader Encode a SecuredHeader.
QByteArray encode_CircularRegion(CircularRegion_t region)
encode_CircularRegion Encode a CircularRegion.
struct SignerInfo::signer_info::SignerInfo__signer_info_u::certificate_digest_with_sha256 certificate_digest_with_sha256
struct GeographicRegion::geographic_region::GeographicRegion__geographic_region_u::id id
Signature_t signature_certificate
struct SubjectAttribute::subject_attribute::SubjectAttribute__subject_attribute_u::assurance_level assurance_level
PublicKeyAlgorithm_t algorithm
PolygonalRegion_t polygonal_region
QByteArray encode_GeographicRegion(GeographicRegion_t region)
encode_GeographicRegion Encode a GeographicRegion.
QByteArray encode_ThreeDLocation(ThreeDLocation_t location)
encode_ThreeDLocation Encode a ThreeDLocation.
Time64WithStandardDeviation_t generation_time_with_standard_deviation_value
static quint8 intx_lentghs[]
struct RecipientInfo::recipient_info::RecipientInfo__recipient_info_u::ecies_nistp256_recipient_info ecies_nistp256_recipient_info
struct Signature::sign::Signature__sign_u::ecdsa_nistp256_with_sha256_signature ecdsa_nistp256_with_sha256_signature
struct SignerInfo::signer_info::SignerInfo__signer_info_u::certificate_digest_with_other_algorithm certificate_digest_with_other_algorithm
struct GeographicRegion::geographic_region::GeographicRegion__geographic_region_u::polygon polygon
QByteArray encode_TwoDLocation(TwoDLocation_t location)
encode_TwoDLocation Encode a TwoDLocation.
QByteArray encode_Time64WithStandardDeviation(Time64WithStandardDeviation_t time)
encode_Time64WithStandardDeviation Encode a Time64WithStandardDeviation.
struct ValidityRestriction::validity_restriction::ValidityRestriction__validity_restriction_u::region region
struct GeographicRegion::geographic_region::GeographicRegion__geographic_region_u::rectangle rectangle
long PublicKeyAlgorithm_t
struct TrailerField::trailer_field::TrailerField__trailer_field_u::signature_trailer_field signature_trailer_field
PublicKeyAlgorithm_t algorithm
static ValidityRestriction_t validityRestriction[NSECURE_FIELDS]
QByteArray encode_SubjectType(SubjectType_t type)
encode_SubjectType Encode a SubjectType.
QByteArray encode_SecureTrailer(SecureTrailer_t trailer)
encode_SecureTrailer Encode a SecureTrailer.
QByteArray encode_RecipientInfo(RecipientInfo_t recipient)
encode_RecipientInfo Encode a RecipientInfo.
struct EccPoint::ecc_point ecc_point
union Signature::sign::Signature__sign_u choice
static ItsAidSsp_t ssp[NSECURE_FIELDS]
SubjectInfo_t subject_info
struct GeographicRegion::geographic_region::GeographicRegion__geographic_region_u::unknown_geographic_region unknown_geographic_region
union EccPoint::ecc_point::EccPoint__ecc_point_u choice
struct EncryptionParameters::encryption_parameters::EncryptionParameters__encryption_parameters_u::unknown_encryption_parameters unknown_encryption_parameters
QByteArray encode_ItsAidSsp(ItsAidSsp_t ssp)
encode_ItsAidSsp Encode an ItsAidSsp.
SymmetricAlgorithm_t symm_algorithm
struct PublicKey::public_key::PublicKey__public_key_u::ecies_nistp256_public_key ecies_nistp256_public_key
struct SubjectAttribute::subject_attribute::SubjectAttribute__subject_attribute_u::unknown_subject_attribute unknown_subject_attribute
struct TrailerField::trailer_field::TrailerField__trailer_field_u::unknown_trailer_field unknown_trailer_field
QByteArray encode_SubjectAttribute(SubjectAttribute_t subject)
encode_SubjectAttribute Encode a SubjectAttribute.
struct EncryptionParameters::encryption_parameters encryption_parameters
struct RecipientInfo::recipient_info recipient_info
QByteArray encode_RectangularRegion(RectangularRegion_t region)
encode_RectangularRegion Encode a RectangularRegion.
QByteArray encode_EcdsaSignature(EcdsaSignature_t ecdsa)
encode_EcdsaSignature Encode an EcdsaSignature.
struct ValidityRestriction::validity_restriction::ValidityRestriction__validity_restriction_u::time_start_and_end time_start_and_end
struct SubjectAttribute::subject_attribute::SubjectAttribute__subject_attribute_u::encryption_key encryption_key
struct SecureTrailer::trailer_fields trailer_fields