# [Crypto] Using $key^{th}$ multiple of $\pi$ as a one-time pad

## Solution 1:

1. That is not practical since either you keep a sequence of the bits of the $$\pi$$ or regenerate them every time. You may need to store 64GB sequence if you want to encrypt such files.

Then you need to multiply it with the 128-bit number. That is not practical, consider multiplication of 64GB number with a random 128-bit number.

2. OTP needs true random bit sequences like flipping coins, $$\pi$$ is not since the sequence is there! It is known to everybody.

3. In modern Cryptography, we use the 128-bit random key with a PRF to produce a long enough secure key-stream to encrypt the message like ChaCha. This is the way we encrypt messages. They are very fast like 3GB/s with AES-NI.

No need to store or heavy calculation like you proposed.

4. It is not KPA secure yet CPA!. Given message and ciphertext, we can find the 128-bit key by dividing.

5. How the 128-bit key is transferred is not clear. The better way to use DHKE than a KDF than encrypt with xChaCha20-Poly1305 with this you will get forward secrecy - if you DELETE the key after decryption - integrity, authentication, and integrity where your scheme only may provide confidentiality.

## Solution 2:

I'm going to treat this question as a strict one time pad one.

With a key k of sufficient length, say 128 bits, is it possible to use kth multiple of π as a one-time pad?

That's 107 characters of description plus 128 bits of secrecy (plus $$\pi$$ which is a known constant). Your Kolmogorov complexity cannot exceed 200 characters if you consider that:-

$$\pi = \sum_{0}^{\infty} \left( \frac{4}{8n+1} - \frac{2}{8n+4} - \frac{1}{8n+5} - \frac{1}{8n+6} \right) \left( \frac{1}{16} \right)^n$$

Therefore it's not a one time pad as one time pads are truly random and cannot be abbreviated in the way you suggest.

Something that might be of interest is this link detailing all the various issues in using and improving the one time pad.