I am building an implementation of the [Merkle-Hellman Knapsack Cryptosystem] for my study.(https://en.wikipedia.org/wiki/Merkle%E2%80%93Hellman_knapsack_cryptosystem)One of the things I would like to do, is to create a new private key. A private key in the Knapsack Cryptosystem consists mostly* of a so-called superincreasing knapsack. This is a sequence of numbers K where K[n] > (K[0] + K[1] + ... + K[n-1].I am wondering if there are smart methods to construct a new sequence for which this holds true. It is easy to create a superincreasing knapsack (such as 1, 2, 4, 8, 16, ...), but I've found it relatively hard until now to do this properly for a sequence that is not predictable.Are there any algorithms (that probably incorporate a value from a random number generator in there) that can do this?*there are also two more numbers to compute for the private key, but that is outside of the scope of this question.
Algorithm to create a superincreasing sequence
cryptography;sequence