CPC G06F 21/6218 (2013.01) [G06F 16/258 (2019.01); G06F 16/285 (2019.01)] | 13 Claims |
1. A computer program product comprising a non-transitory computer-readable recording medium on which an executable program is recorded, the program instructing the computer to:
receive an operation instruction by a user regarding a number of divisions of original data, the original data including a plurality of first data groups of which each includes a set of pieces of binary data arrayed in a line in a first direction and which are arrayed in a second direction intersecting with the first direction, the original data including a plurality of second data groups obtained by dividing the plurality of first data groups in the second direction in unit of binary data, the plurality of second data groups each including a set of pieces of binary data arrayed in a line in the second direction, and the plurality of first data groups and the plurality of second data groups representing same data in two data formats;
divide the plurality of first data groups into a plurality of pieces of division data of the number of divisions, one of the plurality of pieces of division data partially overlapping with another of the plurality of pieces of division data, a number of the plurality of first data groups being larger than the number of divisions of the original data; and
execute alteration processing in mutually different manners on the plurality of pieces of division data, alteration processing on the one of the plurality of pieces of division data being different from alteration processing on the other of the plurality of pieces of division data,
wherein the program instructs the computer to execute, in each of the plurality of pieces of division data, the alteration processing individually on at least either the first data groups or the second data groups,
the alteration processing includes at least one of:
first replacement processing of replacing positions in the first direction of two or more of the second data groups included in each of the plurality of pieces of division data;
second replacement processing of replacing positions in the second direction of two or more of the first data groups included in each of the plurality of pieces of division data;
first inversion processing of inverting respective values of the pieces of binary data of one or more of the second data groups included in each of the plurality of pieces of division data;
second inversion processing of inverting respective values of the pieces of binary data of one or more of the first data groups included in each of the plurality of pieces of division data;
third inversion processing of inverting, with probability corresponding to a predetermined probability distribution, respective values of the pieces of binary data of the second data groups included in each of the plurality of pieces of division data;
fourth inversion processing of inverting, with probability corresponding to a predetermined probability distribution, respective values of the pieces of binary data of the first data groups included in each of the plurality of pieces of division data; or
thinning processing of thinning one or more of the first data groups or one or more of the second data groups included in each of the plurality of pieces of division data, and
the alteration processing on the first data groups or the second data groups included in the one of the plurality of pieces of division data is different from the alteration processing on the first data groups or the second data groups included in the other of the plurality of pieces of division data.
|