Software data protection mechanism
First Claim
1. A protection mechanism for generating user key values from input binary values and for transforming key values into binary values in a manner that does not require security precautions for preventing disclosure of the manner of generating said user key values, said mechanism comprising:
- an input register having n number of bit positions for storing a first binary value having n number of bits which is being converted into a key value;
a pseudo random number generator connected to receive seed and start values, said generator in response to said seed and start values generating repeatable sequences of random number values;
a scrambler including an array including n number of multibit containers for storing n number of unique multibit random number values included in said repeatable sequences;
said scrambler including means for randomly rearranging said n number of bits of said binary value as a function of said multibit random number values stored in said n number of containers to form a second n bit binary value; and
,an alphanumeric encoder operatively coupled to said scrambler for receiving said second n bit binary value, said encoder including a table for storing a plurality of alphanumeric characters, said encoder using portions of said second binary value for referencing different ones of said alphanumeric characters to produce a series of alphanumeric characters representing one of said user key values.
1 Assignment
0 Petitions
Accused Products
Abstract
A protection mechanism includes means for taking an input binary value and generating a unique key value as well as performing the reverse operation of taking a key value and generating an input binary value. The mechanism includes a scrambler which includes an array having a number of multibit container locations for storing a unique sequence of random numbers. The scrambler forms another binary value by rearranging the bits of the input binary value as a function of the random number values in addition to altering the states of such bits as a function of the random number values and the numeric bit position values of sources of the input binary bits. The resulting binary value is applied to an alphanumeric encoder which converts the binary value into a series of alphanumeric characters containing a valid key value.
65 Citations
13 Claims
-
1. A protection mechanism for generating user key values from input binary values and for transforming key values into binary values in a manner that does not require security precautions for preventing disclosure of the manner of generating said user key values, said mechanism comprising:
-
an input register having n number of bit positions for storing a first binary value having n number of bits which is being converted into a key value; a pseudo random number generator connected to receive seed and start values, said generator in response to said seed and start values generating repeatable sequences of random number values; a scrambler including an array including n number of multibit containers for storing n number of unique multibit random number values included in said repeatable sequences; said scrambler including means for randomly rearranging said n number of bits of said binary value as a function of said multibit random number values stored in said n number of containers to form a second n bit binary value; and
,an alphanumeric encoder operatively coupled to said scrambler for receiving said second n bit binary value, said encoder including a table for storing a plurality of alphanumeric characters, said encoder using portions of said second binary value for referencing different ones of said alphanumeric characters to produce a series of alphanumeric characters representing one of said user key values. - View Dependent Claims (2, 3, 4, 5)
-
-
6. A method for generating key values in a manner which does not require security precautions for preventing disclosure of the way in which such key values are generated, said method comprising the steps of:
-
(a) storing in a first register a first binary value having n number of bits which are to be converted into a key value; (b) generating a sequence of random number values by applying seed and start values to a pseudo random number generator; (c) storing n number of unique random number values in a corresponding number of multibit container locations of an array; (d) scrambling said bits of said first binary number by rearranging said n number of bits as a function of said n number of random number values stored in said container locations to produce a second binary value; and
,(e) encoding said second binary value into a series of alphanumeric characters which contain n number of bits usable as on of said key values. - View Dependent Claims (7, 8, 9, 10, 11)
-
-
12. A protection mechanism for generating user key values from input binary values and for transforming key values into binary values in a manner that does not require security precautions for preventing disclosure of the manner of generating said user key values, said mechanism comprising:
-
an input register having n number of bit positions for storing a first binary value having n number of bits which is being converted into a user key value; a pseudo random number generator connected to receive seed and start values, said generator in response to said seed and start values generating repeatable sequences of random number values; a scrambler including an array including n number of multibit containers for storing n number of unique multibit random number values included in said repeatable sequences; and
,said scrambler including means for randomly rearranging said n number of bits of said binary value as a function of said multibit random number values stored in said n number of containers to form a second n bit binary value representative of one of said user key values.
-
-
13. A protection mechanism for generating user key values from input binary values and for transforming key values into said input binary values, said mechanism comprising:
-
an input register having n number of bit positions for storing a first binary value having n number of bits which is either being converted into a user key value or has been transformed into an input binary value; and
,an alphanumeric encoder/decoder operatively coupled to said input register for receiving said first n bit binary value, said encoder/decoder including a table for storing a plurality of alphanumeric characters, said encoder/decoder using portions of said second binary value for referencing different ones of said alphanumeric characters to produce a series of alphanumeric characters representing one of said user key values and said encoder/decoder using each of said series of alphanumeric characters as index into said table for transforming said series of alphanumeric characters into one of said input binary values.
-
Specification