Using such a matrix notation, the FFCT can be extended to two dimensions.
The period of the FFCT transform matrix T has great importance for the application described in this paper, since such a parameter corresponds to the least integer and positive power l giving [T.sup.l] = 7.
First, the FFCT algorithm used in the first phase is described.
The technique adopted by  calls for the recursive application of the transform to overcome this problem; that is, the FFCT of a block is computed repeatedly until the resulting block has no pixels with value equal to 256; see Figure 4.
Another interesting characteristic of the above FFCT transform computational algorithm is that it lends itself to parallel implementation, where processing of all blocks can be done in parallel.
For each 8 x 8 block, apply FFCT recursively as in Figure 4.
(i) For FFCT phase, consider the 8 x 8 transformation matrix T of unsigned 8-bit integers (0 to [2.sup.8] -1), which is used for all 8 x 8 image blocks.
(i) For the FFCT phase, we used 8 x 8 matrix multiplication.
Moreover, the computational complexity can be improved by using fast algorithms for computing the FFCT by O(R log R) as in .
The block-by-block FFCT computation makes it possible to reduce the time required by the proposed scheme if parallel processing is employed.
The proposed two-phase image encryption scheme benefits from the histogram equalization capabilities of the FFCT and blends it with the success of fractal images in producing highly random keystreams.
In our simulations, the number of recursive applications of FFCT to an image block has been investigated and the percentage of image blocks being subjected to a given number of recursive applications of the FFCT has been computed.