A computer-readable, non-transitory medium storing a digital content playback program causing a client on which playback is started of data of digital content including;
- data in which digital copyrighted work is stored, and a plurality of separation data separated from the data, the data having a header, which stores position information for specifying a separation region in which one of the plurality of separation data is separated, and each separation region in which the separation data is separated, stores position information for specifying other separation regions in an interlinked manner, and the data excluding the separation region is encrypted by a content key of the data, while the separation region of the data and the separation data separated from the separation region are encrypted respectively by a content key different for each separation data, to execute a process comprising:
- requesting a distribution of a content key for decrypting the data;
- requesting a distribution of separation data specified by an identifier when in response to the distribution request of a content key of the data, there is received the content key of the data, and the identifier for identifying the separation data separated from a separation region specified by the position information stored in the header of the data;
- requesting a distribution of separation data specified by an identifier when in response to the distribution request of the separation data, there is received the separation data, the content key of the separation data, and the identifier for identifying the separation data separated from a separation region specified by the position information stored in the separation region in which the separation data is separated;
- decrypting the data excluding the separation region by using the content key of the data, and decrypting the separation region of the data and the separation data by using the content key of the separation data;
- and
- playing back the data and the separation data based on the separation region specified by the position information stored in the header of the data and in each separation region.