diff --git a/src/XML/ds/AbstractKeyInfoType.php b/src/XML/ds/AbstractKeyInfoType.php
index b266045f..3753e670 100644
--- a/src/XML/ds/AbstractKeyInfoType.php
+++ b/src/XML/ds/AbstractKeyInfoType.php
@@ -35,6 +35,7 @@ abstract class AbstractKeyInfoType extends AbstractDsElement
* \SimpleSAML\XMLSecurity\XML\ds\KeyValue|
* \SimpleSAML\XMLSecurity\XML\ds\RetrievalMethod|
* \SimpleSAML\XMLSecurity\XML\ds\X509Data|
+ * \SimpleSAML\XMLSecurity\XML\ds\PGPData|
* \SimpleSAML\XML\SerializableElementInterface
* )[] $info
* @param string|null $Id
@@ -64,7 +65,7 @@ final public function __construct(
if ($item instanceof AbstractDsElement) {
Assert::isInstanceOfAny(
$item,
- [KeyName::class, KeyValue::class, RetrievalMethod::class, X509Data::class],
+ [KeyName::class, KeyValue::class, RetrievalMethod::class, X509Data::class, PGPData::class],
SchemaViolationException::class,
);
}
diff --git a/src/XML/ds/AbstractPGPDataType.php b/src/XML/ds/AbstractPGPDataType.php
new file mode 100644
index 00000000..b526fc47
--- /dev/null
+++ b/src/XML/ds/AbstractPGPDataType.php
@@ -0,0 +1,120 @@
+ $children
+ */
+ final public function __construct(
+ protected ?PGPKeyID $pgpKeyId = null,
+ protected ?PGPKeyPacket $pgpKeyPacket = null,
+ array $children = [],
+ ) {
+ if ($pgpKeyId === null && $pgpKeyPacket === null) {
+ throw new SchemaViolationException("ds:PGPKeyID and ds:PGPKeyPacket can't both be null.");
+ }
+
+ $this->setElements($children);
+ }
+
+
+ /**
+ * Collect the value of the PGPKeyID-property
+ *
+ * @return \SimpleSAML\XMLSecurity\XML\ds\PGPKeyID|null
+ */
+ public function getPGPKeyID(): ?PGPKeyID
+ {
+ return $this->pgpKeyId;
+ }
+
+
+ /**
+ * Collect the value of the PGPKeyPacket-property
+ *
+ * @return \SimpleSAML\XMLSecurity\XML\ds\PGPKeyPacket|null
+ */
+ public function getPGPKeyPacket(): ?PGPKeyPacket
+ {
+ return $this->pgpKeyPacket;
+ }
+
+
+ /**
+ * Convert XML into a PGPData
+ *
+ * @param \DOMElement $xml The XML element we should load
+ * @return static
+ *
+ * @throws \SimpleSAML\XML\Exception\InvalidDOMElementException
+ * If the qualified name of the supplied element is wrong
+ */
+ public static function fromXML(DOMElement $xml): static
+ {
+ Assert::same($xml->localName, static::getLocalName(), InvalidDOMElementException::class);
+ Assert::same($xml->namespaceURI, static::NS, InvalidDOMElementException::class);
+
+ $pgpKeyId = PGPKeyID::getChildrenOfClass($xml);
+ Assert::maxCount($pgpKeyId, 1, TooManyElementsException::class);
+
+ $pgpKeyPacket = PGPKeyPacket::getChildrenOfClass($xml);
+ Assert::maxCount($pgpKeyPacket, 1, TooManyElementsException::class);
+
+ return new static(
+ array_pop($pgpKeyId),
+ array_pop($pgpKeyPacket),
+ self::getChildElementsFromXML($xml),
+ );
+ }
+
+
+ /**
+ * Convert this PGPData to XML.
+ *
+ * @param \DOMElement|null $parent The element we should append this PGPData to.
+ * @return \DOMElement
+ */
+ public function toXML(DOMElement $parent = null): DOMElement
+ {
+ $e = $this->instantiateParentElement($parent);
+
+ $this->getPGPKeyId()?->toXML($e);
+ $this->getPGPKeyPacket()?->toXML($e);
+
+ foreach ($this->getElements() as $elt) {
+ $elt->toXML($e);
+ }
+
+ return $e;
+ }
+}
diff --git a/src/XML/ds/KeyInfo.php b/src/XML/ds/KeyInfo.php
index 079fde5e..59cd4fce 100644
--- a/src/XML/ds/KeyInfo.php
+++ b/src/XML/ds/KeyInfo.php
@@ -37,7 +37,7 @@ public static function fromXML(DOMElement $xml): static
$keyValue = KeyValue::getChildrenOfClass($xml);
$retrievalMethod = RetrievalMethod::getChildrenOfClass($xml);
$x509Data = X509Data::getChildrenOfClass($xml);
- //$pgpData = PGPData::getChildrenOfClass($xml);
+ $pgpData = PGPData::getChildrenOfClass($xml);
//$spkiData = SPKIData::getChildrenOfClass($xml);
$mgmtData = MgmtData::getChildrenOfClass($xml);
$other = self::getChildElementsFromXML($xml);
@@ -47,7 +47,7 @@ public static function fromXML(DOMElement $xml): static
$keyValue,
$retrievalMethod,
$x509Data,
- //$pgpData,
+ $pgpData,
//$spkiData,
$mgmtData,
$other,
diff --git a/src/XML/ds/PGPData.php b/src/XML/ds/PGPData.php
new file mode 100644
index 00000000..f8a2c3b9
--- /dev/null
+++ b/src/XML/ds/PGPData.php
@@ -0,0 +1,14 @@
+ '\SimpleSAML\XMLSecurity\XML\ds\Manifest',
'MgmtData' => '\SimpleSAML\XMLSecurity\XML\ds\MgmtData',
'Object' => '\SimpleSAML\XMLSecurity\XML\ds\DsObject',
-// 'PGPData' => '\SimpleSAML\XMLSecurity\XML\ds\PGPData',
+ 'PGPData' => '\SimpleSAML\XMLSecurity\XML\ds\PGPData',
'Reference' => '\SimpleSAML\XMLSecurity\XML\ds\Reference',
'RetrievalMethod' => '\SimpleSAML\XMLSecurity\XML\ds\RetrievalMethod',
'RSAKeyValue' => '\SimpleSAML\XMLSecurity\XML\ds\RSAKeyValue',
diff --git a/src/XML/xenc/OriginatorKeyInfo.php b/src/XML/xenc/OriginatorKeyInfo.php
index 2aba0d3e..413d9e19 100644
--- a/src/XML/xenc/OriginatorKeyInfo.php
+++ b/src/XML/xenc/OriginatorKeyInfo.php
@@ -12,6 +12,7 @@
use SimpleSAML\XMLSecurity\XML\ds\KeyName;
use SimpleSAML\XMLSecurity\XML\ds\KeyValue;
use SimpleSAML\XMLSecurity\XML\ds\MgmtData;
+use SimpleSAML\XMLSecurity\XML\ds\PGPData;
use SimpleSAML\XMLSecurity\XML\ds\RetrievalMethod;
use SimpleSAML\XMLSecurity\XML\ds\X509Data;
@@ -51,7 +52,7 @@ public static function fromXML(DOMElement $xml): static
$keyValue = KeyValue::getChildrenOfClass($xml);
$retrievalMethod = RetrievalMethod::getChildrenOfClass($xml);
$x509Data = X509Data::getChildrenOfClass($xml);
- //$pgpData = PGPData::getChildrenOfClass($xml);
+ $pgpData = PGPData::getChildrenOfClass($xml);
//$spkiData = SPKIData::getChildrenOfClass($xml);
$mgmtData = MgmtData::getChildrenOfClass($xml);
$other = self::getChildElementsFromXML($xml);
@@ -61,7 +62,7 @@ public static function fromXML(DOMElement $xml): static
$keyValue,
$retrievalMethod,
$x509Data,
- //$pgpData,
+ $pgpData,
//$spkiData,
$mgmtData,
$other,
diff --git a/src/XML/xenc/RecipientKeyInfo.php b/src/XML/xenc/RecipientKeyInfo.php
index 4d8d6136..e6af6857 100644
--- a/src/XML/xenc/RecipientKeyInfo.php
+++ b/src/XML/xenc/RecipientKeyInfo.php
@@ -12,6 +12,7 @@
use SimpleSAML\XMLSecurity\XML\ds\KeyName;
use SimpleSAML\XMLSecurity\XML\ds\KeyValue;
use SimpleSAML\XMLSecurity\XML\ds\MgmtData;
+use SimpleSAML\XMLSecurity\XML\ds\PGPData;
use SimpleSAML\XMLSecurity\XML\ds\RetrievalMethod;
use SimpleSAML\XMLSecurity\XML\ds\X509Data;
@@ -51,7 +52,7 @@ public static function fromXML(DOMElement $xml): static
$keyValue = KeyValue::getChildrenOfClass($xml);
$retrievalMethod = RetrievalMethod::getChildrenOfClass($xml);
$x509Data = X509Data::getChildrenOfClass($xml);
- //$pgpData = PGPData::getChildrenOfClass($xml);
+ $pgpData = PGPData::getChildrenOfClass($xml);
//$spkiData = SPKIData::getChildrenOfClass($xml);
$mgmtData = MgmtData::getChildrenOfClass($xml);
$other = self::getChildElementsFromXML($xml);
@@ -61,7 +62,7 @@ public static function fromXML(DOMElement $xml): static
$keyValue,
$retrievalMethod,
$x509Data,
- //$pgpData,
+ $pgpData,
//$spkiData,
$mgmtData,
$other,
diff --git a/tests/XML/ds/KeyInfoTest.php b/tests/XML/ds/KeyInfoTest.php
index 44e25513..1ba1c1a2 100644
--- a/tests/XML/ds/KeyInfoTest.php
+++ b/tests/XML/ds/KeyInfoTest.php
@@ -16,9 +16,13 @@
use SimpleSAML\XMLSecurity\XML\ds\AbstractKeyInfoType;
use SimpleSAML\XMLSecurity\XML\ds\KeyInfo;
use SimpleSAML\XMLSecurity\XML\ds\KeyName;
+use SimpleSAML\XMLSecurity\XML\ds\PGPData;
+use SimpleSAML\XMLSecurity\XML\ds\PGPKeyID;
+use SimpleSAML\XMLSecurity\XML\ds\PGPKeyPacket;
use SimpleSAML\XMLSecurity\XML\ds\X509Certificate;
use SimpleSAML\XMLSecurity\XML\ds\X509Data;
use SimpleSAML\XMLSecurity\XML\ds\X509SubjectName;
+use SimpleSAML\XMLSecurity\XML\xenc\P;
use function dirname;
use function openssl_x509_parse;
@@ -96,6 +100,11 @@ public function testMarshalling(): void
new X509SubjectName(self::$certData['name']),
],
),
+ new PGPData(
+ new PGPKeyID('GpM7'),
+ new PGPKeyPacket('GpM8'),
+ [new P('/CTj03d1DB5e2t7CTo9BEzCf5S9NRzwnBgZRlm32REI=')],
+ ),
new Chunk(DOMDocumentFactory::fromString(
'some',
)->documentElement),
diff --git a/tests/XML/ds/PGPDataTest.php b/tests/XML/ds/PGPDataTest.php
new file mode 100644
index 00000000..cc56a803
--- /dev/null
+++ b/tests/XML/ds/PGPDataTest.php
@@ -0,0 +1,95 @@
+assertEquals(
+ self::$xmlRepresentation->saveXML(self::$xmlRepresentation->documentElement),
+ strval($pgpData),
+ );
+ }
+
+
+ /**
+ */
+ public function testMarshallingBothIdAndPacketNullThrowsException(): void
+ {
+ $this->expectException(SchemaViolationException::class);
+
+ new PGPData(null, null, []);
+ }
+
+
+ /**
+ */
+ public function testMarshallingReferenceElementOrdering(): void
+ {
+ $pgpKeyId = new PGPKeyID('GpM7');
+ $pgpKeyPacket = new PGPKeyPacket('GpM8');
+ $p = new P('/CTj03d1DB5e2t7CTo9BEzCf5S9NRzwnBgZRlm32REI=');
+
+ $pgpData = new PGPData($pgpKeyId, $pgpKeyPacket, [$p]);
+
+ $pgpDataElement = $pgpData->toXML();
+ /** @var \DOMElement[] $children */
+ $children = $pgpDataElement->childNodes;
+
+ $this->assertEquals('ds:PGPKeyID', $children[0]->tagName);
+ $this->assertEquals('ds:PGPKeyPacket', $children[1]->tagName);
+ $this->assertEquals('xenc:P', $children[2]->tagName);
+ }
+}
diff --git a/tests/XML/xenc/OriginatorKeyInfoTest.php b/tests/XML/xenc/OriginatorKeyInfoTest.php
index 69522d79..947f9d61 100644
--- a/tests/XML/xenc/OriginatorKeyInfoTest.php
+++ b/tests/XML/xenc/OriginatorKeyInfoTest.php
@@ -14,10 +14,14 @@
use SimpleSAML\XMLSecurity\XML\ds\AbstractDsElement;
use SimpleSAML\XMLSecurity\XML\ds\AbstractKeyInfoType;
use SimpleSAML\XMLSecurity\XML\ds\KeyName;
+use SimpleSAML\XMLSecurity\XML\ds\PGPData;
+use SimpleSAML\XMLSecurity\XML\ds\PGPKeyID;
+use SimpleSAML\XMLSecurity\XML\ds\PGPKeyPacket;
use SimpleSAML\XMLSecurity\XML\ds\X509Certificate;
use SimpleSAML\XMLSecurity\XML\ds\X509Data;
use SimpleSAML\XMLSecurity\XML\ds\X509SubjectName;
use SimpleSAML\XMLSecurity\XML\xenc\OriginatorKeyInfo;
+use SimpleSAML\XMLSecurity\XML\xenc\P;
use function dirname;
use function openssl_x509_parse;
@@ -92,6 +96,11 @@ public function testMarshalling(): void
new X509SubjectName(self::$certData['name']),
],
),
+ new PGPData(
+ new PGPKeyID('GpM7'),
+ new PGPKeyPacket('GpM8'),
+ [new P('/CTj03d1DB5e2t7CTo9BEzCf5S9NRzwnBgZRlm32REI=')],
+ ),
new Chunk(DOMDocumentFactory::fromString(
'some',
)->documentElement),
diff --git a/tests/XML/xenc/RecipientKeyInfoTest.php b/tests/XML/xenc/RecipientKeyInfoTest.php
index 3fdce621..7197a0e0 100644
--- a/tests/XML/xenc/RecipientKeyInfoTest.php
+++ b/tests/XML/xenc/RecipientKeyInfoTest.php
@@ -14,9 +14,13 @@
use SimpleSAML\XMLSecurity\XML\ds\AbstractDsElement;
use SimpleSAML\XMLSecurity\XML\ds\AbstractKeyInfoType;
use SimpleSAML\XMLSecurity\XML\ds\KeyName;
+use SimpleSAML\XMLSecurity\XML\ds\PGPData;
+use SimpleSAML\XMLSecurity\XML\ds\PGPKeyID;
+use SimpleSAML\XMLSecurity\XML\ds\PGPKeyPacket;
use SimpleSAML\XMLSecurity\XML\ds\X509Certificate;
use SimpleSAML\XMLSecurity\XML\ds\X509Data;
use SimpleSAML\XMLSecurity\XML\ds\X509SubjectName;
+use SimpleSAML\XMLSecurity\XML\xenc\P;
use SimpleSAML\XMLSecurity\XML\xenc\RecipientKeyInfo;
use function dirname;
@@ -92,6 +96,11 @@ public function testMarshalling(): void
new X509SubjectName(self::$certData['name']),
],
),
+ new PGPData(
+ new PGPKeyID('GpM7'),
+ new PGPKeyPacket('GpM8'),
+ [new P('/CTj03d1DB5e2t7CTo9BEzCf5S9NRzwnBgZRlm32REI=')],
+ ),
new Chunk(DOMDocumentFactory::fromString(
'some',
)->documentElement),
diff --git a/tests/resources/xml/ds_KeyInfo.xml b/tests/resources/xml/ds_KeyInfo.xml
index 7b06e7e5..4a051ea7 100644
--- a/tests/resources/xml/ds_KeyInfo.xml
+++ b/tests/resources/xml/ds_KeyInfo.xml
@@ -4,5 +4,10 @@
MIICxDCCAi2gAwIBAgIUZ9QDx+SBFHednUWDFGm9tyVKrgQwDQYJKoZIhvcNAQELBQAwczElMCMGA1UEAwwcc2VsZnNpZ25lZC5zaW1wbGVzYW1scGhwLm9yZzEZMBcGA1UECgwQU2ltcGxlU0FNTHBocCBIUTERMA8GA1UEBwwISG9ub2x1bHUxDzANBgNVBAgMBkhhd2FpaTELMAkGA1UEBhMCVVMwIBcNMjIxMjAzMTAzNTQwWhgPMjEyMjExMDkxMDM1NDBaMHMxJTAjBgNVBAMMHHNlbGZzaWduZWQuc2ltcGxlc2FtbHBocC5vcmcxGTAXBgNVBAoMEFNpbXBsZVNBTUxwaHAgSFExETAPBgNVBAcMCEhvbm9sdWx1MQ8wDQYDVQQIDAZIYXdhaWkxCzAJBgNVBAYTAlVTMIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQDessdFRVDTMQQW3Na81B1CjJV1tmY3nopoIhZrkbDxLa+pv7jGDRcYreyu1DoQxEs06V2nHLoyOPhqJXSFivqtUwVYhR6NYgbNI6RRSsIJCweH0YOdlHna7gULPcLX0Bfbi4odStaFwG9yzDySwSEPtsKxm5pENPjNVGh+jJ+H/QIDAQABo1MwUTAdBgNVHQ4EFgQUvV75t8EoQo2fVa0E9otdtIGK5X0wHwYDVR0jBBgwFoAUvV75t8EoQo2fVa0E9otdtIGK5X0wDwYDVR0TAQH/BAUwAwEB/zANBgkqhkiG9w0BAQsFAAOBgQANQUeiwPJXkWMXuaDHToEBKcezYGqGEYnGUi9LMjeb+Kln7X8nn5iknlz4k77rWCbSwLPC/WDr0ySYQA+HagaeUaFpoiYFJKS6uFlK1HYWnM3W4PUiGHg1/xeZlMO44wTwybXVo0y9KMhchfB5XNbDdoJcqWYvi6xtmZZNRbxUyw==
/CN=selfsigned.simplesamlphp.org/O=SimpleSAMLphp HQ/L=Honolulu/ST=Hawaii/C=US
+
+ GpM7
+ GpM8
+ /CTj03d1DB5e2t7CTo9BEzCf5S9NRzwnBgZRlm32REI=
+
some
diff --git a/tests/resources/xml/ds_PGPData.xml b/tests/resources/xml/ds_PGPData.xml
new file mode 100644
index 00000000..bde1884e
--- /dev/null
+++ b/tests/resources/xml/ds_PGPData.xml
@@ -0,0 +1,5 @@
+
+ GpM7
+ GpM8
+ /CTj03d1DB5e2t7CTo9BEzCf5S9NRzwnBgZRlm32REI=
+
diff --git a/tests/resources/xml/ds_Signature.xml b/tests/resources/xml/ds_Signature.xml
index 1081fb30..66b7595f 100644
--- a/tests/resources/xml/ds_Signature.xml
+++ b/tests/resources/xml/ds_Signature.xml
@@ -18,6 +18,11 @@
MIICxDCCAi2gAwIBAgIUZ9QDx+SBFHednUWDFGm9tyVKrgQwDQYJKoZIhvcNAQELBQAwczElMCMGA1UEAwwcc2VsZnNpZ25lZC5zaW1wbGVzYW1scGhwLm9yZzEZMBcGA1UECgwQU2ltcGxlU0FNTHBocCBIUTERMA8GA1UEBwwISG9ub2x1bHUxDzANBgNVBAgMBkhhd2FpaTELMAkGA1UEBhMCVVMwIBcNMjIxMjAzMTAzNTQwWhgPMjEyMjExMDkxMDM1NDBaMHMxJTAjBgNVBAMMHHNlbGZzaWduZWQuc2ltcGxlc2FtbHBocC5vcmcxGTAXBgNVBAoMEFNpbXBsZVNBTUxwaHAgSFExETAPBgNVBAcMCEhvbm9sdWx1MQ8wDQYDVQQIDAZIYXdhaWkxCzAJBgNVBAYTAlVTMIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQDessdFRVDTMQQW3Na81B1CjJV1tmY3nopoIhZrkbDxLa+pv7jGDRcYreyu1DoQxEs06V2nHLoyOPhqJXSFivqtUwVYhR6NYgbNI6RRSsIJCweH0YOdlHna7gULPcLX0Bfbi4odStaFwG9yzDySwSEPtsKxm5pENPjNVGh+jJ+H/QIDAQABo1MwUTAdBgNVHQ4EFgQUvV75t8EoQo2fVa0E9otdtIGK5X0wHwYDVR0jBBgwFoAUvV75t8EoQo2fVa0E9otdtIGK5X0wDwYDVR0TAQH/BAUwAwEB/zANBgkqhkiG9w0BAQsFAAOBgQANQUeiwPJXkWMXuaDHToEBKcezYGqGEYnGUi9LMjeb+Kln7X8nn5iknlz4k77rWCbSwLPC/WDr0ySYQA+HagaeUaFpoiYFJKS6uFlK1HYWnM3W4PUiGHg1/xeZlMO44wTwybXVo0y9KMhchfB5XNbDdoJcqWYvi6xtmZZNRbxUyw==
/CN=selfsigned.simplesamlphp.org/O=SimpleSAMLphp HQ/L=Honolulu/ST=Hawaii/C=US
+
+ GpM7
+ GpM8
+ /CTj03d1DB5e2t7CTo9BEzCf5S9NRzwnBgZRlm32REI=
+
some
diff --git a/tests/resources/xml/xenc_OriginatorKeyInfo.xml b/tests/resources/xml/xenc_OriginatorKeyInfo.xml
index 080836d0..121f7edf 100644
--- a/tests/resources/xml/xenc_OriginatorKeyInfo.xml
+++ b/tests/resources/xml/xenc_OriginatorKeyInfo.xml
@@ -4,5 +4,10 @@
MIICxDCCAi2gAwIBAgIUZ9QDx+SBFHednUWDFGm9tyVKrgQwDQYJKoZIhvcNAQELBQAwczElMCMGA1UEAwwcc2VsZnNpZ25lZC5zaW1wbGVzYW1scGhwLm9yZzEZMBcGA1UECgwQU2ltcGxlU0FNTHBocCBIUTERMA8GA1UEBwwISG9ub2x1bHUxDzANBgNVBAgMBkhhd2FpaTELMAkGA1UEBhMCVVMwIBcNMjIxMjAzMTAzNTQwWhgPMjEyMjExMDkxMDM1NDBaMHMxJTAjBgNVBAMMHHNlbGZzaWduZWQuc2ltcGxlc2FtbHBocC5vcmcxGTAXBgNVBAoMEFNpbXBsZVNBTUxwaHAgSFExETAPBgNVBAcMCEhvbm9sdWx1MQ8wDQYDVQQIDAZIYXdhaWkxCzAJBgNVBAYTAlVTMIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQDessdFRVDTMQQW3Na81B1CjJV1tmY3nopoIhZrkbDxLa+pv7jGDRcYreyu1DoQxEs06V2nHLoyOPhqJXSFivqtUwVYhR6NYgbNI6RRSsIJCweH0YOdlHna7gULPcLX0Bfbi4odStaFwG9yzDySwSEPtsKxm5pENPjNVGh+jJ+H/QIDAQABo1MwUTAdBgNVHQ4EFgQUvV75t8EoQo2fVa0E9otdtIGK5X0wHwYDVR0jBBgwFoAUvV75t8EoQo2fVa0E9otdtIGK5X0wDwYDVR0TAQH/BAUwAwEB/zANBgkqhkiG9w0BAQsFAAOBgQANQUeiwPJXkWMXuaDHToEBKcezYGqGEYnGUi9LMjeb+Kln7X8nn5iknlz4k77rWCbSwLPC/WDr0ySYQA+HagaeUaFpoiYFJKS6uFlK1HYWnM3W4PUiGHg1/xeZlMO44wTwybXVo0y9KMhchfB5XNbDdoJcqWYvi6xtmZZNRbxUyw==
/CN=selfsigned.simplesamlphp.org/O=SimpleSAMLphp HQ/L=Honolulu/ST=Hawaii/C=US
+
+ GpM7
+ GpM8
+ /CTj03d1DB5e2t7CTo9BEzCf5S9NRzwnBgZRlm32REI=
+
some
diff --git a/tests/resources/xml/xenc_RecipientKeyInfo.xml b/tests/resources/xml/xenc_RecipientKeyInfo.xml
index bee00ede..36a43030 100644
--- a/tests/resources/xml/xenc_RecipientKeyInfo.xml
+++ b/tests/resources/xml/xenc_RecipientKeyInfo.xml
@@ -4,5 +4,10 @@
MIICxDCCAi2gAwIBAgIUZ9QDx+SBFHednUWDFGm9tyVKrgQwDQYJKoZIhvcNAQELBQAwczElMCMGA1UEAwwcc2VsZnNpZ25lZC5zaW1wbGVzYW1scGhwLm9yZzEZMBcGA1UECgwQU2ltcGxlU0FNTHBocCBIUTERMA8GA1UEBwwISG9ub2x1bHUxDzANBgNVBAgMBkhhd2FpaTELMAkGA1UEBhMCVVMwIBcNMjIxMjAzMTAzNTQwWhgPMjEyMjExMDkxMDM1NDBaMHMxJTAjBgNVBAMMHHNlbGZzaWduZWQuc2ltcGxlc2FtbHBocC5vcmcxGTAXBgNVBAoMEFNpbXBsZVNBTUxwaHAgSFExETAPBgNVBAcMCEhvbm9sdWx1MQ8wDQYDVQQIDAZIYXdhaWkxCzAJBgNVBAYTAlVTMIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQDessdFRVDTMQQW3Na81B1CjJV1tmY3nopoIhZrkbDxLa+pv7jGDRcYreyu1DoQxEs06V2nHLoyOPhqJXSFivqtUwVYhR6NYgbNI6RRSsIJCweH0YOdlHna7gULPcLX0Bfbi4odStaFwG9yzDySwSEPtsKxm5pENPjNVGh+jJ+H/QIDAQABo1MwUTAdBgNVHQ4EFgQUvV75t8EoQo2fVa0E9otdtIGK5X0wHwYDVR0jBBgwFoAUvV75t8EoQo2fVa0E9otdtIGK5X0wDwYDVR0TAQH/BAUwAwEB/zANBgkqhkiG9w0BAQsFAAOBgQANQUeiwPJXkWMXuaDHToEBKcezYGqGEYnGUi9LMjeb+Kln7X8nn5iknlz4k77rWCbSwLPC/WDr0ySYQA+HagaeUaFpoiYFJKS6uFlK1HYWnM3W4PUiGHg1/xeZlMO44wTwybXVo0y9KMhchfB5XNbDdoJcqWYvi6xtmZZNRbxUyw==
/CN=selfsigned.simplesamlphp.org/O=SimpleSAMLphp HQ/L=Honolulu/ST=Hawaii/C=US
+
+ GpM7
+ GpM8
+ /CTj03d1DB5e2t7CTo9BEzCf5S9NRzwnBgZRlm32REI=
+
some