Skip to main content
Skip table of contents

Quickmark fingerprinting

The Fingerprint feature is an add-on to the QuickMark forensic watermarking feature. It allows a visible message to be embedded onto high value video content as an additional counter-measure in the fight against content piracy.

Fingerprinting is independent of Watermarking, but requires common integration steps and environment as described in QuickMark forensic watermarking . In addtion, the quickmarkConfig requires the enableFingerprint flag to be set to true.

CODE
let playerInstance = otvplayer(
    plugins: {
        otvtoolkit: {
			quickmark: {
				message: quickmarkMessageCallback,
				error: quickmarkErrorCallback
				quickmarkConfig: {
					enableFingerprint: true, // for the Fingerprint add-on feature
					token: "400000000",
					tenant: "TEST_TENANT",
					apikey: "<Contact NAGRA for your key>",
					service: "<Contact NAGRA for your URL>",
					secret: "<Contact NAGRA for your secret>"
				},
			}
		}
	}
});

Incorporation of SSM

The concept of Fingerprint Campaigns is defined in the SSP system whereby the fingerprint will be shown or hidden at intervals according to SSP prescribed configuration.

Details of Campaigns are out of scope for this document.

Secure Session Management is used as the Fingerprint Messenger for the application, i.e. SSM setup is required by the App with a content token containing fingerprint enabling settings.

Details of content token settings are out of scope for this document.

The SSM setup response can carry a fingerprintToken in additional to the usual sessionToken and heartbeat value. The App needs to call the new API with the value of the Fingerprint Token for it to be applied.

JS
function handleFingerprintToken(response) {
	if (response && response.fingerprintToken) {
		console.log("Fingerprint token updated: ", response.fingerprintToken);

		player
			.otvtoolkit()
			.quickmarkInterface.setFingerprintToken(response.fingerprintToken);
	}
}

As with SSM an interval timer of length heartbeat should be started to renew with a post to SSM /sessisons/heartbeat endpoint. In the response to this message a fresh fingerprintToken can be included. As with setup, the setFingerprintToken() API shall be called with the updated token for it to be applied.

According to the definition of the campaign, the visibility and characteristics of the fingerprint can change as a result of the heartbeat cycle.

JavaScript errors detected

Please note, these errors can depend on your browser setup.

If this problem persists, please contact our support.