System and method for Viterbi decoding on encrypted data
First Claim
1. A method to be employed during channel decoding, said method comprising:
- obtaining a channel decoding trellis having states, stages, and paths between states of adjacent stages, each of said paths having an associated path state;
encrypting each said path state with an encryption mask to result in an encrypted path state.
5 Assignments
0 Petitions
Accused Products
Abstract
A system and method for Viterbi decoding on encrypted data is disclosed. At the receiver, maximum likelihood decoding is performed based on received input in the encryption domain. When selecting a path from one stage of a Viterbi decoding trellis to the next, a local metric may be associated with each of the possible paths based on Euclidean distance between a received symbol and a path state. The path state is determined by encrypting the binary path state. An overall metric is associated with each state equivalent to a sum of local path metrics along a survivor path of selected paths. At the end of the Viterbi decoding trellis, a decoded and decrypted bit sequence is obtained by tracing back in a conventional manner.
-
Citations
25 Claims
-
1. A method to be employed during channel decoding, said method comprising:
-
obtaining a channel decoding trellis having states, stages, and paths between states of adjacent stages, each of said paths having an associated path state;
encrypting each said path state with an encryption mask to result in an encrypted path state.
-
-
2. In a channel decoding trellis comprising states and paths between said states, a method for selecting one path from a plurality of paths leading to a destination state comprising:
-
for each path of said plurality of paths leading to said destination state, encrypting a path state, associated with said each path, with an encryption mask to result in an encrypted path state;
determining a local metric from an input and said encrypted path state;
associating said local metric with said each path;
associating an overall path metric with said each path, where said overall pat metric is equivalent to a sum of said local metric associated with said each path and an overall state metric associated with a state at the origin of said path; and
selecting one path of said plurality of paths leading to said destination state based, at least in part, on each said overall path metric associated with said each path. - View Dependent Claims (3, 4, 5, 6, 7, 8)
-
-
9. A decoder including a processor for selecting one path from a plurality of paths leading to a destination state, said plurality of paths in a channel decoding trellis comprising states and paths between said states, said processor comprising:
-
means for encrypting a path state, associated with said each path, with an encryption mask to result in an encrypted path state;
means for determining a local metric from an input and said encrypted path state;
means for associating said local metric with said each path; and
means for associating an overall path metric with said each path, where said overall path metric is equivalent to a sum of said local metric and an overall state metric associated with a state at the origin of said path; and
means for selecting one path of said plurality of paths leading to said destination state based at least in part on each said overall path metric.
-
-
10. A communication system comprising
an encoder; -
an encryption unit receiving input from said encoder;
a modulator receiving input from said encryption unit;
a channel receiving input from said modulator;
a demodulator receiving input from said channel;
a signal processor, receiving input from said demodulator, comprising;
means for encrypting a path state, associated with said each path, with an encryption mask to result in an encrypted path state;
means for determining a local metric from an input and said encrypted path state;
means for associating said local metric with said each path;
means for associating an overall path metric with said each path, where said overall path metric is equivalent to a sum of said local metric and an overall state metric associated with a state at the origin of said path; and
means for selecting one path of said plurality of paths leading to said destination state based at least in part on each said overall path metric.
-
-
11. A communication system comprising
an encoder; -
an encryption unit receiving input from said encoder;
an interleaver receiving input from said encryption unit;
a modulator receiving input from said interleaver;
a channel receiving input from said modulator;
a demodulator receiving input from said channel;
a deinterleaver receiving input from said demodulator;
a signal processor, receiving soft decision input from said deinterleaver, comprising;
means for encrypting a path state, associated with said each path, with an encryption mask to result in an encrypted path state;
means for determining a local metric from an input and said encrypted path state;
means for associating said local metric with said each path;
means for associating an overall path metric with said each path, where said overall path metric is equivalent to a sum of said local metric and an overall state metric associated with a state at the origin of said path; and
means for selecting one path of said plurality of paths leading to said destination state based at least in part on each said overall path metric.
-
-
12. A computer readable medium for providing program control for a processor in a communications system, said processor for selecting one path from a plurality of paths leading to a destination state, said plurality of paths in a channel decoding trellis comprising states and paths between said states, said processor operable to:
-
for each path of said plurality of paths leading to said destination state, encrypt a path state, associated with said each path, with an encryption mask to result in an encrypted path state;
determine a local metric from an input and said encrypted path state;
associate said local metric with said each path; and
associate an overall path metric with said each path, where said overall path metric is equivalent to a sum of said local metric and an overall state metric associated with a state at the origin of said path; and
select one path of said plurality of paths leading to said destination state based at least in part on each said overall path metric.
-
-
13. A method to be employed during decrypting and decoding encrypted coded soft symbols, said method comprising:
-
associating a given encrypted encoded soft symbol with at least one stage and state of a decoding trellis, each path of said decoding trellis having an associated soft symbol path state and an equivalent hard symbol path state;
obtaining an encryption mask for use in decrypting said given encrypted encoded soft symbol;
encrypting said equivalent bard symbol path state in said decoding trellis associated with each path leading to said at least one stage and state, utilising said encryption mask;
determining an encrypted soft symbol path state corresponding to each encrypted equivalent hard symbol path state; and
determining metrics, each based on said given encrypted encoded soft symbol and one said encrypted soft symbol path state.
-
-
14. A decoder for use in decrypting and decoding encrypted coded soft symbols, comprising:
-
means for associating a given encrypted encoded soft symbol with at least one stage and state of a decoding trellis, each path of said decoding trellis having an associated soft symbol path state and an equivalent hard symbol path state;
means for obtaining an encryption mask for use in decrypting said given encrypted encoded soft symbol;
means for encrypting said equivalent hard symbol path state in said decoding trellis associated with each path leading to said at least one stage and state, utilising said encryption mask;
means for determining an encrypted soft symbol path state corresponding to each encrypted equivalent hard symbol path state; and
means for determining metrics, each based on said given encrypted encoded soft symbol and one said encrypted soft symbol path state.
-
-
15. A method to be employed during decrypting and decoding encrypted coded symbols, said method comprising:
-
associating a given encrypted encoded symbol with at least one stage and state of a decoding trellis, each path of said decoding trellis having an associated symbol path state which, where said trellis is in a hard symbol domain, is a hard symbol path state and which, where said trellis is in a soft symbol domain, is a soft symbol path state with an equivalent hard symbol path state;
obtaining an encryption mask for use in decrypting said given encrypted encoded symbol;
encrypting said hard symbol path state in said decoding trellis associated with each path leading to said at least one stage and state, utilising said encryption mask; and
determining metrics utilising said given encrypted encoded symbol and each said encrypted hard symbol path state.
-
-
16. A decoder for use in decrypting and decoding encrypted coded symbols, comprising:
-
means for associating a given encrypted encoded symbol with at least one stage and state of a decoding trellis, each path of said decoding trellis having an associated symbol path state which, where said trellis is in a hard symbol domain, is a hard symbol path state and which, where said trellis is in a soft symbol domain, is a soft symbol path state with an equivalent bard symbol path state;
means for obtaining an encryption mask for use in decrypting said given encrypted encoded symbol;
means for encrypting said hard symbol path state in said decoding trellis associated with each path leading to said at least one stage and state, utilising said encryption mask; and
means for determining metrics utilising said given encrypted encoded symbol and each said encrypted hard symbol path state.
-
-
17. A method to be employed by a decoder, said method comprising:
-
obtaining an encryption mask;
in a decoding trellis having an associated soft symbol path state and an equivalent hard symbol path state, determining a destination state corresponding with said encryption mask; and
encrypting said equivalent hard symbol path state associated with each path leading to said destination state utilising said encryption mask; and
determining an encrypted soft symbol path state corresponding to each encrypted equivalent hard symbol path state.
-
-
18. A decoder comprising:
-
means for obtaining an encryption mask;
in a decoding trellis having an associated soft symbol path state and an equivalent hard symbol path state, means for determining a destination state corresponding with said encryption mask and means for encrypting said equivalent hard symbol path state associated with each path leading to said destination state utilising said encryption mask; and
means for determining an encrypted soft symbol path state corresponding to each encrypted equivalent hard symbol path state.
-
-
19. A decoder including a processor for selecting one path from a plurality of paths leading to a destination state, said plurality of paths in a channel decoding trellis comprising states and paths between said states, said processor operable to:
-
encrypt a path state, associated with each path of said plurality of paths, with an encryption mask lo result in an encrypted path state;
determine a local metric from an input and said encrypted path state;
associate said local metric with said each path; and
associate an overall path metric with said each path, where said overall path metric is equivalent to a sun of said local metric and an overall state metric associated with a state at the origin of said path; and
select one path of said plurality of paths leading to said destination state based at least in part on each said overall path metric.
-
-
20. A communication system comprising
an encoder; -
an encryption unit receiving input from said encoder;
a modulator receiving input from said encryption unit;
a channel receiving input from said modulator;
a demodulator receiving input from said channel;
a signal processor, receiving input from said demodulator, operable to;
encrypt a path state, associated with each path of a plurality of paths in a channel decoding trellis leading to a destination state, with an encryption mask to result in an encrypted path state;
determine a local metric from an input and said encrypted path state;
associate said local metric with said each path;
associate an overall path metric with said each path, where said overall path metric is equivalent to a sum of said local metric and an overall state metric associated with a state at the origin of said path; and
select one path of said plurality of paths leading to said destination state based at least in part on each said overall path metric.
-
-
21. A communication system comprising
an encoder; -
an encryption unit receiving input from said encoder;
an interleaver receiving input from said encryption unit;
a modulator receiving input from said interleaver;
a channel receiving input from said modulator;
a demodulator receiving input from said channel;
a deinterleaver receiving input from said demodulator;
a signal processor receiving soft decision input from said deinterleaver, operable to;
encrypt a path state, associated with each path of a plurality of paths in a channel decoding trellis leading to a destination state, with an encryption mask to result in an encrypted path state;
determine a local metric from an input and said encrypted path state;
associate said local metric with said each path;
associate an overall path metric with said each path, where said overall path metric is equivalent to a sum of said local metric and an overall state metric associated with a state at the origin of said path; and
select one path of said plurality of paths leading to said destination state based at least in part on each said overall path metric.
-
-
22. A decoder for use in decrypting and decoding encrypted coded soft symbols, said decoder operable to:
-
associate a given encrypted encoded soft symbol with at least one stage and state of a decoding trellis, each path of said decoding trellis having an associated soft symbol path state and an equivalent hard symbol path state;
obtain an encryption mask for use in decrypting said given encrypted encoded soft symbol;
encrypt said equivalent hard symbol path state in said decoding trellis associated with each path leading to said at least one stage and state, utilising said encryption mask;
determine an encrypted soft symbol path state corresponding to each encrypted equivalent hard symbol path state; and
determine metrics, each based on said given encrypted encoded soft symbol and one said encrypted soft symbol path state.
-
-
23. A decoder for use in decrypting and decoding encrypted coded symbols, said decoder operable to:
-
associate a given encrypted encoded symbol with at least one stage and state of a decoding trellis, each path of said decoding trellis having an associated symbol path state which, where said trellis is in a hard symbol domain, is a hard symbol path state and which, where said trellis is in a soft symbol domain, is a soft symbol path state with an equivalent hard symbol path state;
obtain an encryption mask for use in decrypting said given encrypted encoded symbol;
encrypt said hard symbol path state in said decoding trellis associated with each path leading to said at least one stage and state, utilising said encryption mask; and
determine metrics utilising said given encrypted encoded symbol and each said encrypted hard symbol path state.
-
-
24. A decoder operable to:
-
obtain an encryption mask;
in a decoding trellis having an associated soft symbol path state and an equivalent hard symbol path state, determine a destination state corresponding with said encryption mask and encrypt said equivalent hard symbol path state associated with each path leading to said destination state utilising said encryption mask; and
determine an encrypted soft symbol path state corresponding to each encrypted equivalent hard symbol path state.
-
-
25. A computer readable medium containing computer-executable instructions that, when performed by a processor in a communications system, said processor for selecting one path from a plurality of paths leading to a destination state, said plurality of paths in a channel decoding trellis comprising states and paths between said states, cause said processor:
-
for each path of said plurality of paths leading to said destination state, encrypt a path state, associated with said each path, with an encryption mask to result in an encrypted path state;
determine a local metric from an input and said encrypted path state;
associate said local metric with said each path; and
associate an overall path metric with said each path, where said overall path metric is equivalent to a sun of said local metric and an overall state metric associated with a state at the origin of said path; and
select one path of said plurality of paths leading to said destination state based at least in part on each said overall path metric.
-
Specification