Methods and systems for secure data storage
AssigneeNcipher Security Limited
InventorDavid O'Doherty
Life of this patent
Estimating the term…
Abstract
A computer-implemented method of storing data from a second storage component in a first storage component includes: storing information relating to a first sequence of values in the first storage component; storing a second sequence of values from the second storage component into the first storage component in a plurality of steps, deleting or overwriting one or more values from the second sequence of values which were stored in the first storage component in a previous step; and storing an encrypted third sequence of values in the first storage component. The third sequence of values is derivable from the first sequence of values and the second sequence of values.
Claims10
A method of storing data from a second storage component in a first storage component, the method comprising:
- storing information relating to a first sequence of values in the first storage component;
- storing a second sequence of values from the second storage component into the first storage component in a plurality of steps, deleting or overwriting one or more values from the second sequence of values which were stored in the first storage component in a previous step;
- and
- storing an encrypted third sequence of values in the first storage component, wherein the third sequence of values is derivable from the first sequence of values and the second sequence of values,
- wherein for each of the plurality of steps, a value from the second sequence of values is read from the second storage component into the first storage component according to a random order, and an encrypted version of the value is written to the first storage component in a position of a portion of memory in the first storage component to be used to store the third sequence of values, the position being determined according to the first sequence of values.
A device, comprising:
- a first storage component;
- a second storage component;
- and
- one or more processors, the one or more processors configured to:
- store information relating to a first sequence of values in the first storage component;
- store a second sequence of values from the second storage component into the first storage component in a plurality of steps, deleting or overwriting one or more values from the second sequence of values which were stored in the first storage component in a previous step;
- and
- store an encrypted third sequence of values in the first storage component, wherein the third sequence of values is derivable from the first sequence of values and the second sequence of values,
- wherein for each of the plurality of steps, a value from the second sequence of values is read from the second storage component into the first storage component according to a random order, and an encrypted version of the value is written to the first storage component in a position of a portion of memory in the first storage component to be used to store the third sequence of values, the position being determined according to the first sequence of values.
A non-transitory computer readable storage medium comprising program instructions stored thereon that are executable by a computer processor to perform a method comprising:
- storing information relating to a first sequence of values in the first storage component;
- storing a second sequence of values from the second storage component into the first storage component in a plurality of steps, deleting or overwriting one or more values from the second sequence of values which were stored in the first storage component in a previous step;
- and
- storing an encrypted third sequence of values in the first storage component, wherein the third sequence of values is derivable from the first sequence of values and the second sequence of values,
- wherein for each of the plurality of steps, a value from the second sequence of values is read from the second storage component into the first storage component according to a random order, and an encrypted version of the value is written to the first storage component in a position of a portion of memory in the first storage component to be used to store the third sequence of values, the position being determined according to the first sequence of values.
Dependencies are inferred from the claim text.