Wednesday, August 19, 2020

New idea on secret keys

 physicallyunclonable function (PPUF)

Consider an asychronous ate system, multi level of logic. If I input a set of digits, the digits will have variation in travel time through the groups of silicon atoms.  The delays through the logix though small are repeatable and unique to the chip.

The circuit is not reproducible, nor reverse engineerable.  I can describe the delays through the logic, but no other card can have this same machine. If I send a message to a machine having  these delay then the receiving agent can test all possible inputs in pico second time, but any attacker needs exponentially more time as he has to simulate.

This works.  Each card get the analog gates, from a fuzzy mask, insuring random variations in the delays.  I circuit is irreversible.  

The delay map would be learned in the fab, the card testing a variety of known inputs. And measuring a special charger to extra pico time.

Here are some delay values for a simple circuit.:

Table 1. Gate delays from given input to output (in ps) Input 1 Input 2 Input 1 Input 2 E .86 .95 F 1.24 .96 C 1.11 .90 D .78 .71 A .93 1.01 B 1.12 .88 Table 2. Output transitions E {2.54, 2.64, 2.66, 2.74, 2.78, 2.88, 2.9, 2.98} F {2.55, 2.67, 2.75, 2.79, 3.02, 3.26, 3.28, 3.36} C {1.78, 2.02, 2.04, 2.12} D {1.59, 1.71, 1.79, 1.83} A {.93, 1.01} B {.88, 1.12}

The idea is that every logic arrangement comes with its own quantum computer due to the fine structure of the masks.  The quantum computer just finds the short path through the transistors.

This works for key passage. One the fab has manufactured a smart cad it learns the delays on its internal unreproduceable delay system.  The fab master then uses the system to generate a code foe the master key and card key and any other keys.  One single delay circuit of analog logic w bits wide, h bits high with a delay resolution of .10 pico seconds.   I  simulate the machine with an input condition and a secret word. And I simulate is say, five hundred steps and get an output value. If the machine is circular  or meta-stable then I ultimate get some rather unique state at the output.

The receiver has the actual machine and can just send all  2^w values and look at the output until my conditions are met. The receiver will get the proper secret code.   This machine stays ahead in technology as the better reverse engineering depends on speed and the same speed can be placed in the analog logic, increasing the time resolution to match.   The card, in swift protocol, need only share a key with the correspondent bank and the fab central, as well as its own unique key. All the other keys are created spectre compatible and are short lived.  

The system can code and decode with a logic width of eight bits as long as state is retained as each new byte of message shifted in.   Each new byte generates a time until  some unique code is reached for the byte. So the vencrypted codes are  relative time in pico seconds. and output state 

The decoder needs the next byte,  it will trap the output at the stated time point. and check for the proper output. It does this for all 256 values until the match is made., How does the encoder know a value-time is unique enough?  It trains on the analog logic,  It should be able to set a delay resolution and initial condition o count uniquely to 256 from any of multiple starting point.    

The attacker needs to test, twice, the height times width times time resolution, to accumulate state. The decoder has a quantum machine, full parallel. 256 times about 200 pico seconds each. The attacker is 2^(256 * h * 200 * instruction time).  Per byte of message.

The sender is encoding the message but on a well trained machine that should become one simulation per byte. It need not search and eliminate duplicates.  The sender also knows the current state of the machine .  In need not go through the entire stack h, the height of the quantum machine.  I should be able to compute the output directly, and increment  pico seconds in resolution changes from that.  If the variation in delay from standard is about the same then the exactly point will be the total stack delay plus some  h * intstruction times from that point.  The total decoder stack some h * w.  with an effective sample rate of some .1 to 10 pico seconds.

Decoder training

I needs to send its public map to create up to four or five keys in any swift exchange. It needs the master fab key, one of them, its own key and its correspondent bank, and the general secret key all cards carry.  It can train on these, identify the unique paths through the decoder network.  Each public key it sends out consists of time resolution. and some initial value.   The decoder can then uncover the special keys and verify them back to the encoder, with an encrypted message.



No comments: