Secure Stop Server


You can use the following URL to test the Secure Stop functionality with a PlayReady client. The client has to be PlayReady 3.0 minimum, and support that functionality.

Secure Stop Server endpoint: http://test.playready.microsoft.com/service/rightsmanager.asmx


The test workflow is as follows:

1. Client gets the metering certificate for the secure stop transaction

The client must have the metering certificate used by the service for the secure stop functionality. For this test server, we use the following test metering certificate:
Test Metering Certificate (base64):

Q0hBSQAAAAEAAAUEAAAAAAAAAAJDRVJUAAAAAQAAAfQAAAFkAAEAAQAAAFjt9G6KdSncCkrjbTQPN+/2AAAAAAAAAAAAAAAJIPbrW9dj0qydQFIomYFHOwbhGZVGP2ZsPwcvjh+NFkP/////AAAAAAAAAAAAAAAAAAAAAAABAAoAAABYxw6TjIuUUmvdCcl00t4RBAAAADpodHRwOi8vcGxheXJlYWR5LmRpcmVjdHRhcHMubmV0L3ByL3N2Yy9yaWdodHNtYW5hZ2VyLmFzbXgAAAAAAQAFAAAADAAAAAAAAQAGAAAAXAAAAAEAAQIAAAAAADBRmRRpqV4cfRLcWz9WoXIGZ5qzD9xxJe0CSI2mXJQdPHEFZltrTkZtdmurwVaEI2etJY0OesCeOCzCqmEtTkcAAAABAAAAAgAAAAcAAAA8AAAAAAAAAAVEVEFQAAAAAAAAABVNZXRlcmluZyBDZXJ0aWZpY2F0ZQAAAAAAAAABAAAAAAABAAgAAACQAAEAQGHic/IPbmLCKXxc/MH20X/RtjhXH4jfowBWsQE1QWgUUBPFId7HH65YuQJ5fxbQJCT6Hw0iHqKzaTkefrhIpOoAAAIAW+uRUsdaChtq/AMUI4qPlK2Bi4bwOyjJcSQWz16LAFfwibn5yHVDEgNA4cQ9lt3kS4drx7pCC+FR/YLlHBAV7ENFUlQAAAABAAAC/AAAAmwAAQABAAAAWMk5Z0ovo2X0b2C9K5PbFX8AAAAAAAAAAAAAAARTYd1EkpFovPAZUjOj2doDLnHiRSfYc89Fs7gosBfar/////8AAAAAAAAAAAAAAAAAAAAAAAEABQAAAAwAAAAAAAEABgAAAGAAAAABAAECAAAAAABb65FSx1oKG2r8AxQjio+UrYGLhvA7KMlxJBbPXosAV/CJufnIdUMSA0DhxD2W3eRLh2vHukIL4VH9guUcEBXsAAAAAgAAAAEAAAAMAAAABwAAAZgAAAAAAAAAgE1pY3Jvc29mdAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgFBsYXlSZWFkeSBTTDAgTWV0ZXJpbmcgUm9vdCBDQQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgDEuMC4wLjEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEACAAAAJAAAQBArAKJsEIDWNG5ulOgLvSUb8I2zZ0c5lZGYvpIO56Z0UNk/uC4Mq3jwXQUUN6m/48V5J/vuLDhWu740aRQc1dDDAAAAgCGTWHP8iVuQixWizwoABz7PhUnZYWEugUht5sYKNk23h2Cao/D5uf6epDVyilG8fZKLvufXc/+fkNOtEKT+sWr

Test Metering Certificate (XML):

<PlayReady_Cert_Chain>
    <Number_of_Certs>2</Number_of_Certs>
    <Certificate_1>
        <Basic_Data>
            <Cert_Type>Metering</Cert_Type>
            <Security_Level>0</Security_Level>
            <Expiration>Not set</Expiration>
            <Metering_Data>
                <Metering_Id>xw6TjIuUUmvdCcl00t4RBA==</Metering_Id>
                <URL>http://playready.directtaps.net/pr/svc/rightsmanager.asmx</URL>
                <URL_Length>58</URL_Length>
            </Metering_Data>
            <Features>
                Empty
            </Features>
        </Basic_Data>
        <Key_Data>
            <KEY_0>
                <Key_Type>0x1</Key_Type>
                <Length>512 bit</Length>
                <Key_Value>MFGZFGmpXhx9EtxbP1ahcgZnmrMP3HEl7QJIjaZclB08cQVmW2tORm12a6vBVoQjZ60ljQ56wJ44LMKqYS1ORw==</Key_Value>
                <Key_Usage>Encrypt Key,</Key_Usage>
            </KEY_0>
        </Key_Data>
        <Manufacturer>
            <Manufacturer>DTAP</Manufacturer>
            <Model_Name>Metering Certificate</Model_Name>
            <Model_Number></Model_Number>
        </Manufacturer>
        <Signature>
            <Signature_Type>0x1</Signature_Type>
            <Issuer_Key_Length>512</Issuer_Key_Length>
            <Issuer_Key_Value>W+uRUsdaChtq/AMUI4qPlK2Bi4bwOyjJcSQWz16LAFfwibn5yHVDEgNA4cQ9lt3kS4drx7pCC+FR/YLlHBAV7A==</Issuer_Key_Value>
        </Signature>
    </Certificate_1>
    <Certificate_2>
        <Basic_Data>
            <Cert_Type>Issuer</Cert_Type>
            <Security_Level>0</Security_Level>
            <Expiration>Not set</Expiration>
            <Features>
                Empty
            </Features>
        </Basic_Data>
        <Key_Data>
            <KEY_0>
                <Key_Type>0x1</Key_Type>
                <Length>512 bit</Length>
                <Key_Value>W+uRUsdaChtq/AMUI4qPlK2Bi4bwOyjJcSQWz16LAFfwibn5yHVDEgNA4cQ9lt3kS4drx7pCC+FR/YLlHBAV7A==</Key_Value>
                <Key_Usage>Sign,Issuer-Metering,</Key_Usage>
            </KEY_0>
        </Key_Data>
        <Manufacturer>
            <Manufacturer>Microsoft</Manufacturer>
            <Model_Name>PlayReady SL0 Metering Root CA</Model_Name>
            <Model_Number>1.0.0.1</Model_Number>
        </Manufacturer>
        <Signature>
            <Signature_Type>0x1</Signature_Type>
            <Issuer_Key_Length>512</Issuer_Key_Length>
            <Issuer_Key_Value>hk1hz/IlbkIsVos8KAAc+z4VJ2WFhLoFIbebGCjZNt4dgmqPw+bn+nqQ1copRvH2Si77n13P/n5DTrRCk/rFqw==</Issuer_Key_Value>
        </Signature>
    </Certificate_2>
</PlayReady_Cert_Chain>

The client can hardcode this certificate, or acquire it from the test server through the GetMeteringCertificate interface of the server

Test Server Url: http://test.playready.microsoft.com/service/rightsmanager.asmx
SOAPAction: http://schemas.microsoft.com/DRM/2007/03/protocols/GetMeteringCertificate


Sample Challenge:

<soap:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
    <soap:Body>
        <GetMeteringCertificate xmlns="http://schemas.microsoft.com/DRM/2007/03/protocols">
            <challenge>
                <Challenge>
                    <MeterCert>
                        <Version>1</Version>
                        <MID>xw6TjIuUUmvdCcl00t4RBA==</MID>
                    </MeterCert>
                </Challenge>
            </challenge>
        </GetMeteringCertificate>
    </soap:Body>
</soap:Envelope>


Sample Response:

<?xml version="1.0" encoding="utf-8" ?>
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
    <soap:Body>
        <GetMeteringCertificateResponse xmlns="http://schemas.microsoft.com/DRM/2007/03/protocols">
            <GetMeteringCertificateResult>
                <Response xmlns="http://schemas.microsoft.com/DRM/2007/03/protocols/messages">
                    <MeteringCertificateResponse xmlns="http://schemas.microsoft.com/DRM/2007/03/protocols">
                        <Version>1</Version>
                        <MeterCert>Q0hBSQAAAAEAAAUEAAAAAAAAAAJDRVJUAAAAAQAAAfQAAAFkAAEAAQAAAFjt9G6KdSncCkrjbTQPN+/2AAAAAAAAAAAAAAAJIPbrW9dj0qydQFIomYFHOwbhGZVGP2ZsPwcvjh+NFkP/////AAAAAAAAAAAAAAAAAAAAAAABAAoAAABYxw6TjIuUUmvdCcl00t4RBAAAADpodHRwOi8vcGxheXJlYWR5LmRpcmVjdHRhcHMubmV0L3ByL3N2Yy9yaWdodHNtYW5hZ2VyLmFzbXgAAAAAAQAFAAAADAAAAAAAAQAGAAAAXAAAAAEAAQIAAAAAADBRmRRpqV4cfRLcWz9WoXIGZ5qzD9xxJe0CSI2mXJQdPHEFZltrTkZtdmurwVaEI2etJY0OesCeOCzCqmEtTkcAAAABAAAAAgAAAAcAAAA8AAAAAAAAAAVEVEFQAAAAAAAAABVNZXRlcmluZyBDZXJ0aWZpY2F0ZQAAAAAAAAABAAAAAAABAAgAAACQAAEAQGHic/IPbmLCKXxc/MH20X/RtjhXH4jfowBWsQE1QWgUUBPFId7HH65YuQJ5fxbQJCT6Hw0iHqKzaTkefrhIpOoAAAIAW+uRUsdaChtq/AMUI4qPlK2Bi4bwOyjJcSQWz16LAFfwibn5yHVDEgNA4cQ9lt3kS4drx7pCC+FR/YLlHBAV7ENFUlQAAAABAAAC/AAAAmwAAQABAAAAWMk5Z0ovo2X0b2C9K5PbFX8AAAAAAAAAAAAAAARTYd1EkpFovPAZUjOj2doDLnHiRSfYc89Fs7gosBfar/////8AAAAAAAAAAAAAAAAAAAAAAAEABQAAAAwAAAAAAAEABgAAAGAAAAABAAECAAAAAABb65FSx1oKG2r8AxQjio+UrYGLhvA7KMlxJBbPXosAV/CJufnIdUMSA0DhxD2W3eRLh2vHukIL4VH9guUcEBXsAAAAAgAAAAEAAAAMAAAABwAAAZgAAAAAAAAAgE1pY3Jvc29mdAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgFBsYXlSZWFkeSBTTDAgTWV0ZXJpbmcgUm9vdCBDQQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgDEuMC4wLjEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEACAAAAJAAAQBArAKJsEIDWNG5ulOgLvSUb8I2zZ0c5lZGYvpIO56Z0UNk/uC4Mq3jwXQUUN6m/48V5J/vuLDhWu740aRQc1dDDAAAAgCGTWHP8iVuQixWizwoABz7PhUnZYWEugUht5sYKNk23h2Cao/D5uf6epDVyilG8fZKLvufXc/+fkNOtEKT+sWr</MeterCert>
                    </MeteringCertificateResponse>
                </Response>
            </GetMeteringCertificateResult>
       </GetMeteringCertificateResponse>
    </soap:Body>
</soap:Envelope>

2. Client acquires licenses from the test server and plays back

Use standard license acquisition transactions, with the property securestop set to true.

Test Server Url: http://test.playready.microsoft.com/service/rightsmanager.asmx
SOAPAction: http://schemas.microsoft.com/DRM/2007/03/protocols/AcquireLicense
License Acquisition Url: http://test.playready.microsoft.com/service/rightsmanager.asmx?cfg=(securestop:true,persist:false)

These licenses are acquired with the Secure Stop restriction. During playback, the PlayReady client generates Secure Stop events for these licenses as they get consumed, bound and released.

3. Client initiates a secure stop transaction to the test server and verifies the events in the response

Test Server Url: http://test.playready.microsoft.com/service/rightsmanager.asmx
SOAPAction: http://schemas.microsoft.com/DRM/2007/03/protocols/ProcessSecureStopData

Sample Challenge:
<?xml version="1.0" encoding="utf-8" ?>
<soap:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
    <soap:Body>
        <ProcessSecureStopData xmlns="http://schemas.microsoft.com/DRM/2007/03/protocols">
            <challenge>
                <Challenge xmlns="http://schemas.microsoft.com/DRM/2007/03/protocols/messages">
                    <SecureStopData xmlns="http://schemas.microsoft.com/DRM/2007/03/protocols" Id="SignedData">
                        <Version>1</Version>
                        <PublisherID>xw6TjIuUUmvdCcl00t4RBA==</PublisherID>
                        <TransactionID>9UgrZ/yHHyp6E4xubTjU1Q==</TransactionID>
                        <EncryptedData xmlns="http://www.w3.org/2001/04/xmlenc#" Type="http://www.w3.org/2001/04/xmlenc#Element">
                            <EncryptionMethod Algorithm="http://www.w3.org/2001/04/xmlenc#aes128-cbc"></EncryptionMethod>
                            <KeyInfo xmlns="http://www.w3.org/2000/09/xmldsig#"><EncryptedKey xmlns="http://www.w3.org/2001/04/xmlenc#"><EncryptionMethod Algorithm="http://schemas.microsoft.com/DRM/2007/03/protocols#ecc256"></EncryptionMethod><KeyInfo xmlns="http://www.w3.org/2000/09/xmldsig#"><KeyName>SecureStop</KeyName></KeyInfo>
                            <CipherData>
                                <CipherValue>JvRGbvPdlXovbXkDc4SlNfPV+YkrvKFLg5D+Cq/2sCajZlnpEBh9R+yRxDW9A7nJzwLJvx6jhr8kHwCMpIeyHchC+obtAheqMGwyL8mwRxYcBILQtO8KrjMYPf/itWh+zuhQwpGcF6t0AhXE7Ef5jDpw2k/Ao8gGXdEOaPF1ga4=</CipherValue></CipherData></EncryptedKey></KeyInfo><CipherData><CipherValue>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</CipherValue>
                            </CipherData>
                        </EncryptedData>
                    </SecureStopData>
                    <Signature xmlns="http://www.w3.org/2000/09/xmldsig#"><SignedInfo xmlns="http://www.w3.org/2000/09/xmldsig#"><CanonicalizationMethod Algorithm="http://www.w3.org/TR/2001/REC-xml-c14n-20010315"></CanonicalizationMethod><SignatureMethod Algorithm="http://schemas.microsoft.com/DRM/2007/03/protocols#ecdsa-sha256"></SignatureMethod><Reference URI="#SignedData"><DigestMethod Algorithm="http://schemas.microsoft.com/DRM/2007/03/protocols#sha256"></DigestMethod><DigestValue>WEaTSsqAeYrvaqhVhQwDGRG9pdaM8n3mALy3zVrOwyo=</DigestValue></Reference></SignedInfo><SignatureValue>N0uru8iLP+UU2btYWU18APBbGvKBTEeB/Aa2IOLAEZ6A7zYg7ZO6nJyXpv7U0kdtUJrVbEOSLo85Kwc/3bHn4g==</SignatureValue><KeyInfo xmlns="http://www.w3.org/2000/09/xmldsig#"><KeyValue><ECCKeyValue><PublicKey>5l+FzQ9RcwaXOauOkRWWD7IDcojP5+EMjKDJzEImmzLIhRDocpTQAE7UfkQecC14LVsDUfeGPwiQiza7Ra+4Ww==</PublicKey></ECCKeyValue></KeyValue></KeyInfo></Signature>
                </Challenge>
            </challenge>
       </ProcessSecureStopData>
    </soap:Body>
</soap:Envelope>

The test server simply reflects the secure stop events received in the challenge and outputs them in the response that it sends back to the client, it the CustomData node. The client under test can use this response to track whether the secure stop events it generated earlier in the challenge are correct.

Sample Response:

<?xml version="1.0" encoding="utf-8" ?>
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
    <soap:Body>
        <ProcessSecureStopDataResponse xmlns="http://schemas.microsoft.com/DRM/2007/03/protocols">
            <ProcessSecureStopDataResult>
                <Response xmlns="http://schemas.microsoft.com/DRM/2007/03/protocols/messages">
                    <SecureStopResponse xmlns="http://schemas.microsoft.com/DRM/2007/03/protocols" Id="SignedData">
                        <Version>1</Version>
                        <PublisherID>xw6TjIuUUmvdCcl00t4RBA==</PublisherID>
                        <TransactionID>9UgrZ/yHHyp6E4xubTjU1Q==</TransactionID>
                        <PublisherCert>Q0hBSQAAAAEAAAUEAAAAAAAAAAJDRVJUAAAAAQAAAfQAAAFkAAEAAQAAAFjt9G6KdSncCkrjbTQPN+/2AAAAAAAAAAAAAAAJIPbrW9dj0qydQFIomYFHOwbhGZVGP2ZsPwcvjh+NFkP/////AAAAAAAAAAAAAAAAAAAAAAABAAoAAABYxw6TjIuUUmvdCcl00t4RBAAAADpodHRwOi8vcGxheXJlYWR5LmRpcmVjdHRhcHMubmV0L3ByL3N2Yy9yaWdodHNtYW5hZ2VyLmFzbXgAAAAAAQAFAAAADAAAAAAAAQAGAAAAXAAAAAEAAQIAAAAAADBRmRRpqV4cfRLcWz9WoXIGZ5qzD9xxJe0CSI2mXJQdPHEFZltrTkZtdmurwVaEI2etJY0OesCeOCzCqmEtTkcAAAABAAAAAgAAAAcAAAA8AAAAAAAAAAVEVEFQAAAAAAAAABVNZXRlcmluZyBDZXJ0aWZpY2F0ZQAAAAAAAAABAAAAAAABAAgAAACQAAEAQGHic/IPbmLCKXxc/MH20X/RtjhXH4jfowBWsQE1QWgUUBPFId7HH65YuQJ5fxbQJCT6Hw0iHqKzaTkefrhIpOoAAAIAW+uRUsdaChtq/AMUI4qPlK2Bi4bwOyjJcSQWz16LAFfwibn5yHVDEgNA4cQ9lt3kS4drx7pCC+FR/YLlHBAV7ENFUlQAAAABAAAC/AAAAmwAAQABAAAAWMk5Z0ovo2X0b2C9K5PbFX8AAAAAAAAAAAAAAARTYd1EkpFovPAZUjOj2doDLnHiRSfYc89Fs7gosBfar/////8AAAAAAAAAAAAAAAAAAAAAAAEABQAAAAwAAAAAAAEABgAAAGAAAAABAAECAAAAAABb65FSx1oKG2r8AxQjio+UrYGLhvA7KMlxJBbPXosAV/CJufnIdUMSA0DhxD2W3eRLh2vHukIL4VH9guUcEBXsAAAAAgAAAAEAAAAMAAAABwAAAZgAAAAAAAAAgE1pY3Jvc29mdAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgFBsYXlSZWFkeSBTTDAgTWV0ZXJpbmcgUm9vdCBDQQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgDEuMC4wLjEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEACAAAAJAAAQBArAKJsEIDWNG5ulOgLvSUb8I2zZ0c5lZGYvpIO56Z0UNk/uC4Mq3jwXQUUN6m/48V5J/vuLDhWu740aRQc1dDDAAAAgCGTWHP8iVuQixWizwoABz7PhUnZYWEugUht5sYKNk23h2Cao/D5uf6epDVyilG8fZKLvufXc/+fkNOtEKT+sWr</PublisherCert>
                        <CustomData>&lt;SecureStopRecords&gt;&lt;SecureStopRecord&gt;&lt;SessionID&gt;c6b1902a-c50c-fa3c-6be9-c175a4c6aa1e&lt;/SessionID&gt;&lt;StartTime&gt;10/23/2017 10:58:12 PM&lt;/StartTime&gt;&lt;UpdateTime&gt;10/23/2017 10:58:13 PM&lt;/UpdateTime&gt;&lt;Stopped&gt;False&lt;/Stopped&gt;&lt;/SecureStopRecord&gt;&lt;/SecureStopRecords&gt;</CustomData>
                        <EncryptedData xmlns="http://www.w3.org/2001/04/xmlenc#" Type="http://www.w3.org/2001/04/xmlenc#Element"><EncryptionMethod Algorithm="http://www.w3.org/2001/04/xmlenc#aes128-cbc"></EncryptionMethod><KeyInfo xmlns="http://www.w3.org/2000/09/xmldsig#"><KeyName>TIDKey</KeyName></KeyInfo><CipherData><CipherValue>LobgXVM2r0F8pAXzPIpOZ5VI+UkMw5myQLgNi46yZl2DoWel+opxzVitY3byQMtpczW+IiG0XFv6qxOT+7cIj9ucagWPlUk6I7MiSbP4g8RPnvrJrZDA6FqQ1VOwCQ4TXvvBvQtI+p4mxYLuS5+Nl8JxazaKEajoXomtY0/c0R2NEUgEoTBKSZUWjzzIFLSHxLN8smgAMOv7Rln8IeEVag==</CipherValue></CipherData></EncryptedData>
                    </SecureStopResponse>
                    <Signature xmlns="http://www.w3.org/2000/09/xmldsig#"><SignedInfo xmlns="http://www.w3.org/2000/09/xmldsig#"><CanonicalizationMethod Algorithm="http://www.w3.org/TR/2001/REC-xml-c14n-20010315"></CanonicalizationMethod><SignatureMethod Algorithm="http://schemas.microsoft.com/DRM/2007/03/protocols#ecdsa-sha256"></SignatureMethod><Reference URI="#SignedData"><DigestMethod Algorithm="http://schemas.microsoft.com/DRM/2007/03/protocols#sha256"></DigestMethod><DigestValue>hej3hySzZTIbpLppLUIQhSWmyjk1C2EGrIue9Br/i2w=</DigestValue></Reference></SignedInfo><SignatureValue>R3E+fShow58I+MjDwYfy3DZ7MWJCZgAPRQ9u2Y57MpNBi2hgn3B2HO5PCGF/Qn7TL/pUUJqaaaplhsgPh8uokg==</SignatureValue></Signature>
                </Response>
            </ProcessSecureStopDataResult>
        </ProcessSecureStopDataResponse>
    </soap:Body>
</soap:Envelope>

Which gives the following secure stop events (extracted from the CustomData node):

<SecureStopRecords>
    <SecureStopRecord>
        <SessionID>c6b1902a-c50c-fa3c-6be9-c175a4c6aa1e</SessionID>
        <StartTime>10/23/2017 10:58:12 PM</StartTime>
        <UpdateTime>10/23/2017 10:58:13 PM</UpdateTime>
        <Stopped>False</Stopped>
    </SecureStopRecord>
</SecureStopRecords>