×

Secret key cryptosystem and method utilizing factorizations of permutation groups of arbitrary order 2.sup.l

  • US 6,038,317 A
  • Filed: 04/08/1998
  • Issued: 03/14/2000
  • Est. Priority Date: 12/24/1997
  • Status: Expired due to Term
First Claim
Patent Images

1. A system for receiving input vectors, of length L, and outputting encrypted vector, versions of said input vectors, of length L, each of said input and output vectors consisting of a sequential plurality of binary digits, said system comprising, in functional combination:

  • a) a vector accepting means for receiving input binary digit vectors; and

    b) a data key expanding pseudo-random number generator means for accepting a user provided input data key, and generating and outputting a data key dependent sequence of pseudo-random numbers; and

    c) a first logarithmic signature containing storage means which comprises memory for containing a first logarithmic signature, said first logarithmic signature consisting of a plurality of mathematical construct blocks, each of said mathematical construct blocks containing at least two permutations of a sequential plurality of numbers; and

    d) a second logarithmic signature containing storage means which comprises memory for containing a second logarithmic signature, said second logarithmic signature consisting of a plurality of mathematical construct blocks, each of said mathematical construct blocks containing at least two permutations of a sequential plurality of numbers;

    wherein said first and second logarithmic signatures are characterized by a requirement that logarithmic signatures be a collection of ordered mathematical construct blocks in which each input vector encrypted by utilization thereof can be uniquely represented as one, and only one, composition of permutations which are present in said logarithmic signature, one such permutation subjected to composition being selected from each of said ordered mathematical construct blocks; and

    e) a primary mathematical operations means which comprises;

    means for accepting a sequence of pseudo-random numbers;

    means for accessing said first logarithmic signature containing storage means;

    means for accessing said second logarithmic signature containing storage means; and

    means for applying a sequence of pseudo-random numbers to a first logarithmic signature, said first logarithmic signature being stored in said first logarithmic signature containing storage means, and producing at least a second logarithmic signature, and storing it in said second logarithmic signature containing storage means; and

    f) a primary factorization means for identifying, accessing and concatenating into a primary factorization means output vector, binary pointers which identify locations of permutations in a second logarithmic signature stored in said second logarithmic signature containing storage means, which permutations, when sequentially composed, duplicate a vector input into said primary factorization means;

    said system being functionally structured such that inputting a user defined data key to said data key expanding pseudo-random number generator means, results in said data key expanding pseudo-random number generator means outputting a sequence of pseudo-random numbers in response; and

    said system being further functionally structured such that after receipt of a sequence of pseudo-random numbers by said primary mathematical operations means, mathematical manipulation of a first logarithmic signature stored in said first logarithmic signature containing storage means is performed to form a second logarithmic signature, which second logarithmic signature is then stored in said second logarithmic signature containing storage means, while preserving the requirement that logarithmic signatures be a collection of ordered mathematical construct blocks in which each input vector encrypted by utilization thereof can be uniquely represented as one, and only one composition of permutations which are present in said logarithmic signature, one such permutation subjected to composition being selected from each of said ordered mathematical construct blocks; and

    said system being further functionally structured such that after entering at least one input vector to said primary factorization means from said vector accepting means for receiving input binary digit vectors, said primary factorization means identifies permutations present in said mathematical construct blocks of said second logarithmic signature, stored in said second logarithmic signature storage means, which when sequentially composed result in said at least one input vector; and

    said system being further functionally structured such that said primary factorization means further assigns identified permutations in each of said mathematical construct blocks of a second logarithmic signature, stored in said second logarithmic signature containing storage means, a binary digit pointer which identifies the permutation location within said second logarithmic signature, andsaid system being further functionally structured such that said primary factorization means further sequentially concatenates identified binary digit location pointers into a once encrypted vector, of length L, of said at least one input vector, of length L, which is input to said vector accepting means for receiving input binary digit vectors, and makes said once encrypted vector, of length L, of said at least one input vector of length L, available as output therefrom, at an output means thereof.

View all claims
  • 0 Assignments
Timeline View
Assignment View
    ×
    ×