There are two classes of JPSEC tools normative and non-normative. The normative are defined with the protection method templates specified in the tool syntax. Non-normative tools are also called JPSEC Registration Authority (RA) tools or JPSEC User-Defined Tools and are registered with the RA or are provided by the user. The non-normative can use the normative templates or can define there own as appropriate. The tools are used to implement security functions. JPSEC is designed as an open framework in order to make it easily extensible. Current tools concentrate on these security services:

JPSEC tools are specified in the syntax of the SEC marker. The basic tool syntax is shown in Figure 1. The syntax is interpreted differently depending on whether the tool is normative or non-normative. Table 1 shows how the syntax is interpreted for each class of tool (nt = number of tools).

JPSEC Tool Syntex

Table 1: JPSEC Tool Parameter Values

ParameterNormative Size (bits)Non-Normative Size (bits)Normative ValuesNon-Normative ValuesDescription
t8x0xx xxxxbx1xx xxxxbTool instance index (can be used as a unique identifier)
i8 + 8 * nt0…(27+7*nt – 2)
(27+7*nt – 1) is reserved
Length of Marker Segment in Bytes
ID8Variablesee Table 2see Figure 3Identification value for the JPSEC tool
LZOI16 + 8 * nt0…215+7*ntLength of ZOI in bytes
ZOIVariableVariableZone of Influence for the JPSEC tool
LPID16 + 8 * nt0…215+7*ntLength of PID in bytes
PIDVariablesee Figure 2 and Table 3Managed by RA or UserParameters for JPSEC tool

JPSEC normative tools are based on protection method templates defined in the standard. The tool identifier ID is used to identify which template is used (see Table 2). Figure 2 shows the parameters (PID) syntax for normative tools with the description of each field in Table 3.

Table 2: Normative Tool Template ID Values

ValueProtection Method Template
0Reserved
1Decryption Template
2Authentication Template
3Hash Template
4NULL Tool
All other values are reserved for ISO use

 

Parameter Syntax for Normative Tools

JPSEC normative tools are based on protection method templates defined in the standard. The tool identifier ID is used to identify which template is used (see Table 2). Figure 2 shows the parameters (PID) syntax for normative tools with the description of each field in Table 3.

Table 3: Normative Tool Parameter Values

ParameterSize (bits)ValuesDescription
TIDVariable, if t=0 and ID=1see Decryption TemplateTemplate parameters for normative tool with template identifier ID
Variable, if t=0 and ID=2see Authentication Template
16, if t=0 and ID=3see Hash Template
0, if t=0 and ID=4NA
Unknown, if t=0 and ID=0 or ID>4Reserved
PDVariablesee belowProcessing Domain for normative tool
G24see belowGranularity for normative tool
VVariablesee belowValue list for normative tool dependent on template identifier ID

The Processing Domain (PD) is used to describe the domain the JPSEC tool is applied. There are four possible domains
and depending on the domain a few specifics related to the field parameters. The four domains are:

If the Wavelet Coefficient Domain or the Quantized Wavelet Coefficient Domain are where the JPSEC tool is being applied it can either be applied on the sign bit or the most significant bit. When the Codestream Domain is where the tool is being applied it can either be applied on both the packet header and body or just on the packet body.

The Granularity (G) indicates the unit of protection for each method by specifying the order the elements are processed along with granularity level. There are a total of twelve granularity levels.

  1.   Tile
  2.   Tile-part
  3.   Component
  4.   Resolution Level
  5.   Layer
  6.   Precinct
  7.   Packet
  8.   Sub-band
  9.   Code-block
  10.   Total area identified by Zone of Influence (ZOI)
  11.   Item identified in non-image-related ZOI
  12.   Zone identified in non-image-related ZOI

The Value List (VL) field specifies values that change as the tool is applied and the granularity of the change. Values specified include keys, Initialization Vectors (IV), MAC values, Digital Signatures (DS), and hash values. The Zone of Influence (ZOI) is used describes the coverage are of the JPSEC tool, referred to as the influenced data.

JPSEC non-normative tools have the flexibility of either using some of the pre-defined structures in the JPSEC normative tools or defining there own as needed. There are two classes of non-normative tools

  1. JPSEC Registration Authority (RA) Tools – the signaling for these tools is specified using the RA
  2. JPSEC User-Defined Tools – the signaling for these tools is specified by the application/user

These classes of tools use a 32-bit ID value to show if it is a RA tool (0x0000 0000 to 0x7FFF FFFF), user defined
tool (0x8000 0000 to 0xEFFF FFFF) or reserved (0xF000 0000 to 0xFFFF FFFF). The ID value also has a name space
parameter that specifies the name space of the specification. The PID field is not fully defined in these
instances in the standard. If the tool is an RA tool then the RA defines the PID and if a user tool then
it is defined by the user.

Further information available here:

JPSEC Standards available here: