Pseudo-random binary sequency generator4649419Abstract A pseudo-random binary address generator is described which is designed for supplying addresses of cutting points of video signals for the purpose of encoding these signals by rotation of the two segments situated on either side of each cutting point, comprising three feedback registers (A), (B), (C) whose generating polynomials are irreducible and primitive, and in which the numbers of cells are different. These registers comprise several outputs a.sub.i b.sub.j c.sub.k, and the addresses of the cutting points are sums of N terms of weight 2.sup.O to 2.sup.N-1 and of coefficients S.sub.O to S.sub.N-1 of which at least a certain number are deduced from logic equations combining the outputs a.sub.i b.sub.j c.sub.k. At regular intervals a synchronization pulse (SP) reloads in the registers (A), (B), (C) three initial words which, placed end to end, constitute the decoding key, stored in a fourth register (D) with three taps to which, for their reloading, the three registers (A), (B), (C) are momentarily connected. Claims What is claimed is: Description The present invention relates to a pseudo-random binary sequence generator applicable to the digital coding of television pictures.
TABLE 1
______________________________________
a + b
a
b 0 1
______________________________________
0 0 1
1 1 1
______________________________________
Table 4 illustrates schematically the decoding probabilities of the first, second, third and fourth modes of implementation of the invention proposed hereinafter, as a function of the number of address bits utilized, in the case where the degrees n.sub.a, n.sub.b, n.sub.c of the registers are such that n.sub.a =at least 7, n.sub.b =5, n.sub.c =4, and when there is no loss of efficacity due to limitation of the addresses;
TABLE 4
__________________________________________________________________________
Number of address bits
3 4 5 6
__________________________________________________________________________
Decoding probability
Solutions 1, 2, 4
12,5%
6,25%
3,1%
1,6%
for same b and c
Solution 3
" " " 3,1 or 1,6*
Decoding probability
Solution 1
12,5 6,25
6,25
6,25
for same a and b
Solution 2
12,5 9,4 6,25
6,25
or same a and c
Solution 3
18,7 12,5 9,4 6,25
Solution 4
12,5 9,4 6,25
6,25
__________________________________________________________________________
*when 8 outputs of register A are used (n.sub.a > 7)
Table 5 illustrates schematically the decoding probabilities of the first, second, third and fourth modes of implementation of the invention, as a function of the number of the address bits utilized, in the same case as that of Table 4, but with a loss of efficacity due to limitation of the addresses.
TABLE 5
__________________________________________________________________________
Number of address bits
3 4 5 6
__________________________________________________________________________
Decoding probability
Solution 1, 2, 4
15,6%
8,8%
4,4%
2,2%
for same b and c
Solution 3
15,6 8,8 4,4 3,5 or 2,2*
Decoding probability
Solution 1
15,6 8,8 7,8-7
6,25
(a and b)
(a and c)
for same a and b
Solution 2
15,6 12,2 8,3 8,3
or same a and c
Solution 3
20,3 14,8 11 7,4
Solution 4
15,6 12,2 8,3 8,3
__________________________________________________________________________
*when 8 outputs of register A are used (n.sub.a > 7).
In a first form of embodiment of the invention, the generator is thus a Geffe generator with three feedback shift registers A, B, C whose generating polynomials are irreducible and primitive, such that the bit sequences a, b, c which they deliver are of maximum length, that is to say equal respectively to 2.sup.n.sbsp.a -1, to 2.sup.n.sbsp.b -1, and to 2.sup.n.sbsp.c -1, where n.sub.a, n.sub.b and n.sub.c are the numbers of the respective cells or degrees, the registers A, B and C, and being conventionally chosen such that n.sub.a is greater than n.sub.b, itself being greater than n.sub.c. The lengths of the three registers, which are maximum, have been chosen here as first among them, in order that the length of the pseudo-random sequences formed by the combinations of bits a, b, c shall themselves be maximum and equal to the product (2.sup.n.sbsp.a -1).multidot.(2.sup.n.sbsp.b -1).multidot.(2.sup.n.sbsp.c -1). An arbitrary cutting point address S being expressed by the sum S of N terms of weight 2.sup.0 to 2.sup.N-1 affected by the respective coefficients S.sub.0 to S.sub.N-1, written as: ##EQU1## an object of the invention is achieved if at least the four coefficients of greates weight, S.sub.N-1, S.sub.N-2, S.sub.N-3 and S.sub.N-4, are derived from logic equations each consisting of a modulo 2 addition of the type S.sub.h =a.sub.i .sym.b.sub.j .sym.c.sub.k, where S.sub.h is the generic term of the sum S defining the address and a.sub.i, b.sub.j, c.sub.k are the outputs of the three registers A, B and C. Preferentially, the ranks i, j, k are chosen differently, in so far as permitted by the degrees n.sub.a, n.sub.b, n.sub.c. The latter address coefficients are either fixed or chosen equal to 0 or to 1, or deduced for several of them from among the outputs a.sub.i, b.sub.j and c.sub.k with the aid of equations not comprising modulo 2 addition of the three outputs. The probability of address identity is now, for four address bits equal to (1/2).sup.4 =6.25%, a value which is much lower than the 10% noted in the foregoing as the limit value for recognising a structure in a picture. The modulo 2 addition: S.sub.h =a.sub.i .sym.b.sub.j .sym.c.sub.k (5) can thus be written, explaining the logic operations: S.sub.h =a.sub.i (b.sub.j c.sub.k +b.sub.j c.sub.k)+a.sub.i (b.sub.j c.sub.k +b.sub.j c.sub.k) (5 bis) These equations (5) or (5 bis) represent a linear system, and an attempt at deciphering only requires the solution of a number of linear equations equal to the number of bits n.sub.d of the key (n.sub.d being equal to n.sub.a +n.sub.b +n.sub.c). To make this mathematical solution more difficult, it is possible, in a second mode of embodiment of the invention, to employ, for the first address bit of greatest weight, a logic equation containing for example two different modulo 2 additions of the type (a.sym.b.sym.c), the choice of which is dictated by the value of another bit a or b or c. If one chooses n.sub.a greater than n.sub.b, itself being greater than n.sub.c, this multiplier bit results from the longest register A. To avoid using more than two register outputs per address bit, one can use the same output a in the two sums. In this second mode of embodiment, the logic equation of the first strongest weight coefficient can thus be written: S.sub.N-1 =a.sub.i (a.sub.i' .sym.b.sub.j .sym.c.sub.k)+a.sub.i (a.sub.i' .sym.b.sub.j' .sym.c.sub.k') (6) or S.sub.N-1 =a.sub.i (a.sub.i' .sym.b.sub.j .sym.c.sub.k)+a.sub.i (a.sub.i' .sym.b.sub.j' .sym.c.sub.k') (6 bis) These two expressions (6) and (6 bis), in which we have used the same output a.sub.i' in the two sums in order to avoid employing three outputs a for one single address bit, differ only in the fact that one uses either a.sub.i or its complement a.sub.i' in the second sum. If the complexity of the circuit is not significantly increased, it is preferable to use expression (6 bis) because the fact of using a.sub.i' diminishes the similitude between the two sums. The logic equations giving at least three of the following strongest weight coefficients remain in the form: S.sub.h =a.sub.i" .sym.b.sub.j" .sym.c.sub.k" (7) the ranks i", j", k" being here again chosen differently, in so far as the degrees n.sub.a, n.sub.b and n.sub.c permit. The latter address coefficients are fixed and chosen equal to 0 or to 1, as the case may be. In a third mode of embodiment of the invention, the logic equation of the second strongest weight coefficient S.sub.N-2 is also the type of equations (6) or (6 bis), with the coefficients i j k chosen differently, and the logic equations giving at least two of the strongest weight coefficients following the type of equation (7). The other coefficients are fixed and are equal to 0 or 1. This third mode of embodiment offers greater protection against mathematical deciphering, since the two strongest weight coefficients contain products and their order of complexity is thus close to that of n.sub.a (n.sub.b +n.sub.c)=63, for example, since n.sub.a, n.sub.b and n.sub.c are respectively 7, 5 and 4. However, the two coefficients of greatest weight, S.sub.N-1 and S.sub.N-2, each use two outputs of register A, two outputs of register B and two outputs of register C. If the length of the shortest register C is only 4, for example, one will thus find in the following address coefficients some outputs of C that have already been used, which will increase the probability of address identity and, consequently, the risk of deciphering by successive trials with keys. To overcome this drawback one can, in a fourth mode of embodiment of the invention, choose as multiplicative terms the register outputs of least length, taking for example an output of register B for the first coefficient and an output of register C for the second. The logic equations of the strongest weight coefficients may then be written: S.sub.N-1 =b.sub.j (a.sub.i .sym.b.sub.j' .sym.c.sub.k)+b.sub.j (a.sub.i' .sym.b.sub.j' .sym.c.sub.k') (8) or S.sub.N-1 -b.sub.j (a.sub.i .sym.b.sub.j' .sym.c.sub.k)+b.sub.j (a.sub.i' .sym.b.sub.j' .sym.c.sub.k') (8 bis) and S.sub.N-2 =c.sub.k" (a.sub.i" .sym.b.sub.j" .sym.c.sub.k"')+c.sub.k" (a.sub.i"' .sym.b.sub.j"' .sym.c.sub.k"') (9) or S.sub.N-2 =c.sub.k" (a.sub.i" .sym.b.sub.j" .sym.c.sub.k"')+c.sub.k" (a.sub.i"' .sym.b.sub.j"' .sym.c.sub.k"') (9 bis) In this case, as in the foregoing, the logic equations giving at least two of the strongest weight coefficients, are of the type: S.sub.h =a.sub.i"" .sym.b.sub.j"" .sym.c.sub.k"" (10) taking the ranks i j k as different as the degrees of the registers permit, and the latter coefficients are fixed and equal to 0 or 1. With the fourth mode of embodiment, the orders of complexity of the two first coefficients approximate respectively to n.sub.b (n.sub.a +n.sub.c) and n.sub.c (n.sub.a +n.sub.b), or, respectively 55 and 48 in the example chosen above (n.sub.a =7, n.sub.b =5, n.sub.c =4). These orders of complexity are thus slightly inferior to those of the second mode of embodiment. This system however, is better protected against deciphering by successive attempts with keys, since it may be noted that the coefficient S.sub.N-1 always depends on b.sub.j, and that the coefficient S.sub.N-2 always depends on C.sub.k"', which makes it possible to use again the outputs b.sub.j and c.sub.k" for the third or fourth coefficient S.sub.N-3 or S.sub.N-4 without reducing their effectiveness. In the four modes of embodiment proposed in the foregoing the protection is maximum relative to deciphering by successive stages that would begin by the shortest bits of the registers B and C. However, the protection relative to deciphering beginning with the bits of the registers A and B or of registers A and C should also be investigated. In the case where the degrees of the registers are for example equal to 5, 4 and 3, deciphering beginning with bits A and C would require no more, on average, than 1/2(2.sup.5+3 +2.sup.4)=(128+8) attempts, or about two minutes, whereas if this deciphering were not possible on the basis of A and C, an average of 2,048 attempts or 34 minutes, would be required; in the case where the degrees of the registers are equal to 7, 5, 4, an average of 17 minutes would be required instead of 9 hours. By way of example, the abovementioned table 4 indicates the decoding probabilities of the four modes of embodiment proposed, as a function of the number of address bits utilized, in the case where the degrees n.sub.a, n.sub.b, n.sub.c are such that n.sub.a =at least 7, n.sub.b =5 and n.sub.c =4, and when there is not, of course, any loss of effectiveness due to limitation of addresses (which will now be discussed). The generator described in the foregoing, in four possible forms of embodiment, is capable of delivering 2.sup.N different addresses of value 0 to 2.sup.N -1 (it has already been shown that any cutting point address was expressed by a sum S of N terms S.sub.h 2.sup.h of weight 2.sup.0 to 2.sup.N-1 given the respective coefficients S.sub.0 to S.sub.N-1). When the number M of samples stored each line in the memory is slightly greater than a power of 2, there is no problem of exceeding the limits if N is chosen equal to the power of 2 just lower than M. It may happen, however, that the number M will be very slightly lower than a whole power of 2: in this case, the preceding choice of N will lead to permutations corresponding to line translations maximally equal to about the half-width of the picture, which would cause a loss of scrambling effectiveness. This eventuality may occur in particular in the case of the scrambling of a standard European PAL coded signal, when a sampling frequency is chosen equal to four times the colour subcarrier frequency (i.e. 17,734 Megahertz for this sampling frequency) to avoid interference between these two frequencies. In this case, the number of points stored each line in the memory does not in practice exceed 990, taking into account the part of the signal sacrificed to permit the repetition of a zone in the neighbourhood of the cutting point (a redundancy characteristic). To obtain translations approximating to the width of the picture without exceeding it, one may thus choose for example N=10, or 1,024 possible addresses, and cause 2.sup.p of these addresses, comprised between 2.sup.N -2.sup.p and 2.sup.N -1, to undergo a reduction by a quantity 2.sup.q, p being chosen such that 2.sup.N -2.sup.p is less than M and q being chosen equal to or greater than p but such that 2.sup.q is less than 2.sup.N -2.sup.p. In the example quoted, one may choose for example p and q both equal to 6, which amounts to reducing by 64 the 64 addresses greater than or equal to 960. This operation amounts to forcing the coefficient S.sub.6 to the value 0 when the coefficients S.sub.7, S.sub.8 and S.sub.9 are all three equal to 1, which can be obtained very simply by means of the circuit indicated in FIG. 4 which uses an AND gate with two inputs and a NAND gate with three inputs, verifying the equation: S*.sub.6 =S.sub.6 .multidot.(S.sub.7 .multidot.S.sub.8 .multidot.S.sub.9) (11) It should be noted that this operation reduces the effectiveness of the coefficient S.sub.6, which only influences the delivered address during 7/8ths of the time. In any case, the television signals stored in the memory always comprise an initial reference period containing either the black level where it relates to a black- and -white signal or a luminance signal, or a reference threshold superimposed on the black level when it relates to a composite colour signal of the type PAL, SECAM or NTSC, or a reference level corresponding to the colour difference zero level when it relates to a colour difference signal U or V (in the case of MAC coding for example). As this reference level could be referred to relatively easily in the enciphered signal, it is important, in order to avoid deciphering of the picture, not to apply the permutation in this period, which amounts to inhibiting the cutting point addresses that fall in these reference periods. A simple means of realizing this inhibition consists in augmenting the 2.sup.r addresses supplied by the generator, comprised between 0 and 2.sup.r -1, by a quantity 2.sup.s, r being chosen such that 2.sup.r is greater than the length L of the reference segment, and s being chosen equal to or greater than r such that 2.sup.s is less than M-2.sup.r. In the example quoted, the length L does not exceed 100 sampled elements. One may thus choose, for example, r and s both equal to 7, which amounts to adding 128 to 128 first addresses, comprised between 0 and 127. This operation amounts to forcing the coefficient S.sub.7 to the value 1 when the coefficients S.sub.8 and S.sub.9 are both equal to 0, which can be obtained very simply by means of the circuit indicated in FIG. 5, which uses an OR gate and a NOR gate with two inputs, verifying the equation: S*.sub.7 =S.sub.7 +(S.sub.8 +S.sub.9) (12) Here again, it should be noted that this operation reduces the effectiveness of the coefficient S.sub.7, which only influences the supplied address during 3/4 of the time. In the case of the first form of embodiment described (see equations (5) and (5 bis)), the probability of address identity for four significant address bits S.sub.6 to S.sub.9 thus becomes equal, in the example quoted and in the case where the smallest register comprises at least four cells, to: ##EQU2## By way of example, the abovementioned table 5 indicates as a function of the number of address bits the probabilities of address identity calculated in the case of lower and higher preceding limits, for the first, second, third and fourth forms of embodiment proposed, in the case where the lengths of the registers are respectively 4 for C, 5 for B and greater than or equal to 7 for A. It can be seen that the probability of decoding is equal to the minimum probability when the bits of B and C are known at the same time (9 bits). On the other hand, when the bits A and B are known at the same time (at least 12 bits) or A and C at the same time (at least 11 bits), the probability of decoding is greater than the minimum probability, and only drops below the 10% threshold of perception when one uses at least four address bits in the solution 1, five bits in the solutions 2 and 4, and six bits in solution 3. It may be noted in addition that the example of the limits quoted applies equally to the PAL and SECAM systems in Europe, when the clock frequency f.sub.H is chosen at about 17,734 MHz, as well as to the NTSC system in the countries using the 525 lines standard, with 30 pictures per second, when a clock-frequency is chosen about five times the colour subcarrier frequency of NTSC, i.e. 17.9 MHz. In the case of a time-division multiplexing system of analog components, the generator has to supply as many cutting point addresses as there are components in each line, that is to say for example two in the case of the MAC system (where the components are Y and, alternatively, U and V). As the luminance and chrominance components comprise information of comparable form, no element of secrecy is lost when analogous rotations are applied to these components, that is to say when the two addresses are calculated on the basis of the same outputs of the same shift registers and using the same logic equations. This makes it possible to have an address generator whose complexity is in practice no greater than in the preceding case, except that the problem of the limits may differ depending on the components. If one assumes, for example, that the generator supplies six variable coefficients A.sub.0 to A.sub.5 deduced from the foregoing operations and taking N=6, and also that we have the case of a MAC signal such that the duration of the luminance component is about twice that of the chrominance component, with a clock frequency such that the useful capacity of the luminance and chrominance memories is slightly less than 512 and 256, respectively, we can then take for the luminance N.sub.Y =9 and for the chrominance N.sub.C =8, choosing as coefficients the address expression (formed, it will be recalled, from a sum of N terms S.sub.h 2.sup.h): ##EQU3## after having subjected A.sub.2 and A.sub.3 to the same operations as those described in the foregoing for S.sub.6 and S.sub.7 (FIGS. 4 and 5) to inhibit the address segments situated at the extremities. One might also have the case of a MAC signal with a clock frequency such that the useful capacity of the luminance memory is closer to 768 than to 512 (=2.sup.9) or to 1024 (=2.sup.10). A first solution consists then in choosing N.sub.Y =10 and in forcing to 0 the coefficient S.sub.Y.sbsb.8, as well as possibly a weaker weight coefficient (S.sub.Y.sbsb.6 or S.sub.Y.sbsb.5) when the strongest weight coefficient S.sub.Y.sbsb.9 is equal to 1, but this solution has the drawback of reducing by a factor of 1/2 the effectiveness of the second strongest weight coefficient S.sub.Y.sbsb.8 and of equally reducing the effectiveness of the two other coefficients, taking account of the lower limit. A second solution consists in choosing N.sub.Y =9, which gives 512 possible addresses, and in choosing, for the translation of the addresses comprised between 0 and 2.sup.r -1, a quantity 2.sup.s =2.sup.9 =512, which is possible, for example, when the length of the reference level is less than 128 and when the length M of the signal is comprised between 640 and 896. The luminance address coefficients are then chosen as follows: ##EQU4## This amounts to choosing S.sub.Y.sbsb.9 =S.sub.Y.sbsb.8 +S.sub.Y.sbsb.7, (14) which can very easily be obtained with a NOR gate with two inputs as indicated in FIG. 6. This second solution offers the advantage that the effectiveness of the six coefficients A.sub.0 to A.sub.5 remains intact. The probabilities of decoding are then as indicated in table 4. This latter type of solution can also be applied in the case of a MAC signal with a clock frequency such that the useful capacity of the chrominance memory is closer to 384 than to 256 (=2.sup.8) or to 512 (=2.sup.9). The chrominance address coefficients would then be chosen as follows: ##EQU5## and S.sub.C.sbsb.8 =S.sub.C.sbsb.7 +S.sub.C.sbsb.6. (15) FIG. 7, made by the association of the parts of FIGS. 7a and 7b, shows an example of the practical embodiment of a pseudo-random binary address generator adapted to PAL, SECAM and NTSC signals. The lengths of the three registers A, B, C have been chosen respectively equal to 11, 5 and 4, which permits about 950,000 different keys of 20 bits. The irreducible and primitive generating polynomials, chosen in order to avoid having to have more than one intermediate tap on each register, are the following: x.sup.11 +x.sup.2 +1=0 x.sup.5 +x.sup.2 +1=0 x.sup.4 +x+1=0 Use is made of eight outputs a.sub.1 to a.sub.8 of A, four outputs b.sub.1 to b.sub.4 of B and four outputs c.sub.1 to c.sub.4 of C, which are applied respectively to the 16 inputs of a programmable logic network PLN, for example of the type 82 S 100, made by the Signetics company. This PLN provides eight outputs A.sub.0 to A.sub.7, used for supplying 8 variable address bits S.sub.2 to S.sub.9, the two address bits with the lowest weight S.sub.0 and S.sub.1 being equal to 0. As seen in the foregoing, to inhibit the addresses comprised between 0 and 127 and those comprised between 960 and 1,023, the coefficients S.sub.6 and S.sub.7 are deduced from the outputs A.sub.5, A.sub.6, A.sub.7 in accordance with the programmed schemata such that they provide, in conformity for example with the fourth form of embodiment of the invention, an output A.sub. 7 according to equation (8 bis), an output A.sub.6 according to equation (9 bis), and six outputs A.sub.0 to A.sub.5 according to equation (10). By way of example, the following equations have been chosen: A.sub.7 =b.sub.1 (a.sub.3 .sym.b.sub.4 .sym.c.sub.1)+b.sub.1 (a.sub.7 .sym.b.sub.4 .sym.c.sub.4) A.sub.6 =c.sub.3 (a.sub.4 .sym.b.sub.3 .sym.c.sub.2)+c.sub.3 (a.sub.8 .sym.b.sub.2 .sym.c.sub.2) A.sub.5 =a.sub.1 .sym.b.sub.1 .sym.c.sub.3 A.sub.4 =a.sub.5 .sym.b.sub.3 .sym.c.sub.1 A.sub.3 =a.sub.6 .sym.b.sub.2 .sym.c.sub.4 A.sub.2 =a.sub.2 .sym.b.sub.4 .sym.c.sub.2 A.sub.1 =a.sub.3 .sym.b.sub.1 .sym.c.sub.3 A.sub.0 =a.sub.8 .sym.b.sub.3 .sym.c.sub.1 The two first equations necessitate 8 products, the following ones 4. Thus, use is made of 40 products among the 48 available from the network 82 S 100. As seen, the two address bits S.sub.2 and S.sub.3, deduced from A.sub.0 and A.sub.1, correspond to translations that are too weak to make any significant contribution to scrambling as perceived by the eye. Their use, however, reinforces the encoding vis-a-vis an attempt at mathematical decoding; it makes it more difficult to identify the sets of addresses introduced by the coefficients S.sub.4 to S.sub.9 since they introduce three possible supplementary addresses between each of the addresses supplied by S.sub.4 to S.sub.9. In the generator shown in FIG. 7A, the registers A, B and C are loaded at regular intervals with their respective initial words of lengths n.sub.a, n.sub.b and n.sub.c. These words, placed end to end, constitute the key of length n.sub.d =20 bits. This key is supplied either by a decoder pad or is sent out by the transmitter in encoded form, then decoded by an access circuit which is not shown. When a new key arrives, it is transferred to a shift register D of 20 stages, the key being accompanied by 20 pulses of a clock H.sub.c through the intermediary of multiplexers MUX.sub.1 and MUX.sub.2, beginning for example with the bits destined for registers C, then B, then A. At the end of the 20 pulses from the clock H.sub.c, one thus finds in register D the initial word of register A at the outputs Q.sub.0 to Q.sub.10, the initial word of register B at the outputs Q.sub.11 to Q.sub.15 and the initial word of register C at the outputs Q.sub.16 to Q.sub.19. At regular intervals, equal here to 48 frames, the output of register D is fed back to its input through the intermediary of the multiplexer MUX.sub.1. The outputs Q.sub.19, Q.sub.10 and Q.sub.15 are connected to the inputs of registers A, B and C through the intermediary of the multiplexers MUX.sub.3, MUX.sub.4, MUX.sub.5, the loops of these registers being opened at the same time, and one applies to register D through the intermediary of MUX.sub.2, during 20 consecutive clock pulses, the same clock H.sub.L having the frequency of the line scan as that which is permanently applied to registers A, B and C. At the end of the 20 pulses of the clock H.sub.L, the words stored in the registers A, B and C then correspond to the bits initially stored in register D between the outputs Q.sub.0 and Q.sub.10 for A, Q.sub.11 and Q.sub.15 for B, Q.sub.16 and Q.sub.19 for C respectively. Moreover, because of the output of D being fed back to its input during this operation, this register is returned to its initial state at the end of the 20 clock pulses and thus plays the role of memory for the key. The operation of loading registers A, B and C, starting from register D, is effected during a flyback period (registered by the clock H.sub.T at the scanning frequency) during all the 48 frames, that is to say at about every second in the example quoted, synchronization with the transmitter being obtained with the aid of a starting pulse SP sent out by the transmitter either by way of data transmission, or in a special picture line. Outside these periods during which A, B and C are loaded, the register D is connected to the access control circuit through the intermediary of the multiplexers MUX.sub.1 and MUX.sub.2, and is thus ready to receive any new key from this circuit. Of course, for large-scale production the set of circuits represented in FIG. 7 can be integrated on a single silicon chip with a chip area of a few mm.sup.2. The abscissas x of the cutting points are deduced from the sum S of N terms of weight 2.sup.N-1 to 2.sup.0 effected by respective coefficients S.sub.0 to S.sub.N-1 : ##EQU6## the M coefficients S.sub.0 to S.sub.M-1 of greatest weight being calculated starting from the outputs of registers A, B and C, the other coefficients being chosen optionally zero or equal to 1. In the case of a PAL, SECAM or NTSC signal sampled at a frequency of the order of 18 MHz, it is wise to choose N=8 x=4S+128 when S<32 x=4S-64 when S.gtoreq.240 in order to prevent the cutting point from falling in the reference signal which precedes the useful signal or coming above the last useful point of the line. In the case of a MAC signal sampled at 13.5 MHz for the luminance Y and at 6.75 MHz for the chrominance C, it is again wise to choose N=8 and to take respectively for the cutting addresses in luminance and in chrominance either: x.sub.y =2S+128 and x.sub.c =S+64 or x.sub.y =2S+64 and x.sub.c =S+32 In three modes of embodiment of the invention, referred to as the fifth, sixth and seventh, each of the M coefficients is calculated on the basis of several outputs of the registers A, B and C measured at the same instant. The clock frequency F which has to be used is then equal to at least M times the video signal line frequency F.sub.2. For a line period of (1/F2)=64 .mu.s, in Europe, the coefficients may be calculated, for example, starting from values of the outputs at the instants: t.sub.o +k64 .mu.s for S.sub.0 t.sub.o +(1/F)+k64 .mu.s for S.sub.1 t.sub.o +(2/F)+k64 .mu.s for S.sub.2, . . . , etc. In the fifth mode of embodiment proposed, the three registers each have two outputs denoted a.sub.0, a.sub.1, b.sub.0, c.sub.0 and c.sub.1 and the logic equation is derived from the Geffe generator, introducing modulo 2 additions, and is of the form: a.sub.1 (a.sub.0 .sym.b.sub.0 .sym.c.sub.0)+a.sub.1 (a.sub.0 .sym.b.sub.1 .sym.c.sub.1) (17) or a.sub.1 (a.sub.0 .sym.b.sub.0 .sym.c.sub.0)+a.sub.1 (a.sub.0 .sym.b.sub.1 .sym.c.sub.1) (18) the second expression offering the advantage over the first that the second modulo 2 sum is made even more different from the first by using the complement to 1 of a.sub.0 instead of a.sub.0 itself. In the sixth mode of embodiment proposed, the register A has three outputs denoted a.sub.0, a.sub.1 and a.sub.2, the registers B and C each have two outputs denoted b.sub.0, b.sub.1, c.sub.0 and c.sub.1 and the logic equation, derived from the Geffe generator, is of the form: a.sub.2 (a.sub.0 .sym.b.sub.0 .sym.c.sub.0)+a.sub.2 (a.sub.1 .sym.b.sub.1 .beta.c.sub.1) (19) in which expression the two modulo 2 sums do not have a common element. In the seventh mode of embodiment proposed, the three registers each have three outputs denoted a.sub.0, a.sub.1, a.sub.2, b.sub.0, b.sub.1, b.sub.2, c.sub.0, c.sub.1 and c.sub.2 and the logic equation is derived from the Bruer generator, introducing modulo 2 additions, and comprises the logic addition of the three logic products effected between two modulo 2 additions of different outputs: (a.sub.0 .sym.b.sub.0 .sym.c.sub.0)(a.sub.1 .sym.b.sub.1 .sym.c.sub.1)+(a.sub.1 .sym.b.sub.1 .sym.c.sub.1)(a.sub.2 .sym.b.sub.2 .sym.c.sub.2)+(a.sub.2 .sym.b.sub.2 .sym.c.sub.2)(a.sub.0 .sym.b.sub.0 .sym.c.sub.0) In an eighth mode of embodiment, in accordance with the invention, the three registers have only one output and the logic equation, derived from the Geffe generator, is a function of three outputs a.sub.0, b.sub.0, c.sub.0 at the instant t.sub.0 and of three outputs a.sub.1, b.sub.1, c.sub.1 at the instant t.sub.0 +1/F or t.sub.0 -1/F and is of the form: a.sub.1 (a.sub.0 .sym.b.sub.0 .sym.c.sub.0)+a.sub.1 (a.sub.0 .sym.b.sub.1 .sym.c.sub.1) (17) or a.sub.1 (a.sub.0 .sym.b.sub.0 .sym.c.sub.0)+a.sub.1 (a.sub.0 .sym.b.sub.1 .sym.c.sub.1) (18) In a ninth mode of embodiment, in accordance with the invention, the register A has two outputs, the registers B and C each have one output and the logic equation, derived from the Geffe generator, is a function of the values a.sub.0, b.sub.0, c.sub.0 of three outputs at the instant t.sub.0, of the values a.sub.1, b.sub.1, c.sub.1 of these three same outputs at the instant t.sub.0 +1/F and of the value a.sub.2 of the second output of register A at the instant t.sub.0 or t.sub.0 +1/F, and is of the form: a.sub.2 (a.sub.0 .sym.b.sub.0 .sym.c.sub.0)+a.sub.2 (a.sub.1 .sym.b.sub.1 .sym.c.sub.1) (19) In the eighth and ninth modes of embodiment, for a line period of (1/F2)=64 .mu.s, the coefficients may be calculated, for example, starting from output values at the instants: t.sub.0 +k64 .mu.s and t.sub.0 +(1/F)+k64 .mu.s for S.sub.0 t.sub.0 +(2/F)+k64 .mu.s and t.sub.0 +(3/F)+k64 .mu.s for S.sub.1 t.sub.0 +(4/F)+k64 .mu.s and t.sub.0 +(5/F)+k64 .mu.s for S2, . . . etc. The clock frequency F which must be used in these eighth and ninth modes of embodiment is thus equal at least to 2M times the frequency F.sub.2. In a tenth mode of embodiment, in accordance with the invention, the three registers have only one output and the logic equation, derived from the Geffe generator, is a function of three outputs a.sub.0, b.sub.0, c.sub.0 at the instant t.sub.0, of three outputs a.sub.1, b.sub.1, c.sub.1 at the instant t.sub.0 +(1/F) and of one output a.sub.2 at the instant t.sub.0 +(2/F) or t.sub.0 -(1/F) and is of the form: a.sub.2 (a.sub.0 .sym.b.sub.0 .sym.c.sub.0)+a.sub.2 (a.sub.1 .sym.b.sub.1 .sym.c.sub.1) (19) In an eleventh and last mode of embodiment, in accordance with the invention, the three registers have only one output and the logic equation, derived from the Bruer generator, is a function of three outputs a.sub.0, b.sub.0, c.sub.0 at the instant t.sub.0, of three inputs a.sub.1, b.sub.1, c.sub.1 at the the instant t.sub.0 +(1/F) and of three output a.sub.2, b.sub.2, c.sub.2 at the instant t.sub.0 +(2/F) and is of the form: (a.sub.0 .sym.b.sub.0 .sym.c.sub.0)(a.sub.1 .sym.b.sub.1 .sym.c.sub.1)+(a.sub.1 .sym.b.sub.1 .sym.c.sub.1)(a.sub.2 .sym.b.sub.2 .sym.c.sub.2)+(a.sub.2 .sym.b.sub.2 .sym.c.sub.2)(a.sub.0 .sym.b.sub.0 .sym.c.sub.0) (20) In these two latter modes of embodiment, for a line period of (1/F)=64 .mu.s, the coefficients may be calculated, for example, starting from output values at the instants: t.sub.0 +k64 .mu.s, t.sub.0 +(1/F)+k64 .mu.s and t.sub.0 +(2/F)+k64 .mu.s for S.sub.0 t.sub.0 +(3/F)+k64 .mu.s, t.sub.0 +(4/F)+k64 .mu.s and t.sub.0 +(5/F)+k64 .mu.s for S.sub.1 t.sub.0 +(6/F)+k64 .mu.s, t.sub.0 +(7/F)+k64 .mu.s and t.sub.0 +(8/F)+k64 .mu.s for S.sub.2, . . . etc. The clock frequency F which must be used in these tenth and eleventh modes of embodiment is thus equal at least to 3M times the frequency F.sub.2. Of course, in the foregoing equations (17) to (20), one is entirely at liberty to choose for outputs a.sub.i, b.sub.j, c.sub.k either direct outputs of the registers or, for part or the whole of these coefficients, complements to 1 of these direct outputs, complements which are equally available in the majority of practical realisations of shift registers. In the fifth to eleventh modes of embodiment of the invention, it is desirable that the psedo-random address sequences should be as long as possible, in order to make the encoding more effective. A primary condition is to choose the lengths n.sub.a, n.sub.b and n.sub.c of the registers such that the lengths of the sequences which the latter supply, respectively equal to (2.sup.n.sbsp.a -1), (2.sup.n.sbsp.b -1) and (2.sup.n.sbsp.c -1), shall be the first among them. The length of the sequences of combinations of bits deriving from the three registers is then maximum and equal to the product: (2.sup.n.sbsp.a -1)(2.sup.n.sbsp.b -1)(2.sup.n.sbsp.c -1) (9) whose value is close to 2.sup.n.sbsp.a.sup.+n.sbsp.b.sup.30 n.sbsp.c =2.sup.n.sbsp.d. In the fifth, sixth and seventh modes of embodiment of the invention, the coefficients of the addresses are calculated starting from M successive outputs of the registers. One could therefore find the same addresses at the outputs upon every ##EQU7## if the numerator of this fraction were divisible by M. One can therefore improve the security of the system against illicit deciphering by ensuring that M is not a divisor of (2.sup.n.sbsp.a -1) (2.sup.n.sbsp.b -1) and (2.sup.n.sbsp.c -1). This condition is always verified when M is equal to a power of 2 (M=4, 8, . . . ); it will be verified when M is divisible by 3, if n.sub.a, n.sub.b and n.sub.c are not divisible by 2; it will be verified when M is divisible by 5, if n.sub.a, n.sub.b and n.sub.c are not divisible by 4; it will finally be verified when M is divisible by 7, if n.sub.a, n.sub.b and n.sub.c are not divisible by 3. Indeed 2.sup.2p -1 is divisible by 2.sup.2 -1=3 2.sup.2p -1 is divisible by 2.sup.3 -1=7 2.sup.4p -1 is divisible by 2.sup.4 -1=15=5.times.3 and so on. In the eighth and ninth modes of embodiment of the invention, the same addresses could recur every ##EQU8## if the numerator were divisible by 2M. If the numerator is never divisible by 2, the conditions of maximum security are thus identical to what they are in the fifth, sixth and seventh modes of embodiment. In the tenth and eleventh modes of embodiment of the invention, the same addresses could recur every ##EQU9## if the numerator were divisible by 3M. The conditions of maximum security thus correspond to those described in the foregoing, with the supplementary condition that the numerator shall never be divisible by 3, which amounts to requiring that n.sub.a, n.sub.b and n.sub.c shall be odd. Since it may happen that some of these conditions cannot be fulfilled, for example in the case where the number of bits of the key n.sub.d =n.sub.a +n.sub.b +n.sub.c is fixed and, in particular, when this number is even, one can still make the security of the system maximum by choosing a sampling frequency F equal to the product of the frequency F.sub.2 by a number which is first with (2.sup.n.sbsp.a -1), (2.sup.n.sbsp.b -1) and (2.sup.n.sbsp.c -1), this number of course being equal to or greater than M, for the fifth, sixth and seventh modes of embodiment, to 2M for the eighth and ninth modes and to 3M for the tenth and eleventh modes of embodiment of the invention. If one takes the case of the two latter modes of embodiment, with M=8 for example, the weakest frequency one may choose is: F=3M.multidot.F.sub.1 =24.multidot.F=375 kHz. If the length n.sub.d of the key is even, one of the registers will also have an even length and its sequence will be divisible by 3; one may then choose the frequency F=25.multidot.F.sub.1 =390.625 kHz. However, if one cannot avoid the length of one of the registers being divisible by 4, its sequence will be divisible by 5; one may then prefer to choose: F=26.multidot.F.sub.1 =406.250 kHz. In fact, one may equally well choose a frequency which is not a multiple of F.sub.1 but is equal to the product of F.sub.1 by a simple fraction; the security of the system will then be maximum if the numerator of this fraction is first with (2.sup.n.sbsp.a -1), (2.sup.n.sbsp.b -1) and (2.sup.n.sbsp.c -1). In the preceding example one may choose, for example, a numerator equal to the power of 2: F=(128/5)F.sub.1 =400 kHz. The period 1/F is then equal to 2.5 .mu.s. To avoid ambiguities in counting the clock bits starting from the front of the synchronization line, it suffices for example to ensure a delay of the order of 0.25 .mu.s between the front of F.sub.1 and that of F for a given line. This same delay will reoccur every five lines and, for the intermediate lines, it will take one of the values 0.75, 1.25, 1.75 and 2.25 .mu.s without ever being zero. One will then have no difficulty in counting, after each front of a synchronisation line for example, the 24 first values of the necessary outputs for calculating the eight coefficients of the addresses using equation (19) or equation (20), not using the 25th value and, for three lines in five, the 26th value of the outputs. Finally, one may choose the fraction by which F.sub.1 is multiplied to obtain F in such a way that the clock frequency F is equal to the clock frequency F' used for decoding binary audio channels, or is in a simple relationship with this frequency F'. The pseudo-random binary address generator could then be common for the deciphering of the video channel and for deciphering one or more audio channels associated with the picture.
|
Same subclass Same class Consider this |
||||||||||
