Preambule:
There are Alice and Bob. Alice got a message and a chest. Both of them have locks.
Alice puts the message into the chest, locks with her lock and sends it to Bob.
Bob can't open Alice's lock btw. So he locks chest with his own lock and sends it back to Alice.
Alice opens her lock and sends.
Bob opens his lock, opens chest and reads the message.
Simple story hows how Diffie-Hellman works. But it can be broken by bruteforce. Anyone can say about long keys and the time... I can't agree with them because of random luck and growing computer potential.
I've decided to find one more oeration that can make this algo brute-proof. So we need second operation that won't affect multiplication ring. I've tried different but the only acceptable I found is permutation ring.
Permutation ring solves the only problem to get second dimention independent from the multiplication ring. So lets look like how it works.
You got your array of ints. Lets make the permutation table. Ex.: First element stays it's place. Second got i-th place. Third element got j-th place...
The assumption was that if we will repeat permutation n-times we'll got the starting array. As far as I could check the assumption, it looks like we got a ring at the n! - round. May be it can be done better.
So... Here we can use as the second dimention. Non-affecting the first one.
To avoid impacts of statistical analysis array should be split into subarrays with uique elements, join separator-element (Ex. 0, MAX_INT) to each one, join rest of "alphabet" after separator. As for the "alphabet" I mean a range of int's acceptable by the system. This array splittig also defines n to alphabet length. This can also make processig more determined.
As a result I see the following algo (symbol=number):
Get your int array message
Split into subarrays with unique numbers
Add the split-symbol and rest of alphabet to the tail of each subarray
-- For each array by each participant (n! times)
permutation round + multiplication round
send to another
--
Receive n!-th message.
last permutation+multiplication round
throw out split-symbol and all after that for each syubarray
merge subarrays
profit!
Does someone knows some similar systems? I'll post some sources later if there are no similar...
May be someone had the same research and does have other results...