MSX on Internet... via Wifi, 2019 edition

Page 2/2
1 |

By konamiman

Paragon (1037)

konamiman's picture

23-08-2019, 11:22

Quote:

We would just need the C function in question (or only its prototype and what it's supposed to do)

That was a few years ago, I don't have the function anymore and don't remember the details. However any online resource explaining about TLS should give all the required information, for example this blog post. Here's a relevant excerpt about Diffie-Hellman Key Exchange:

Quote:

1. The client and server exchange two prime numbers (x and y) called randoms.
2. One party picks a secret number called a pre-master secret (a) and computes: xa mod y. Then it sends the result (A) to the other.
3. The other party does the same thing, picking its own pre-master secret (b) and computing xb mod y, then sending its value (B) back.
4. The two parties finish this portion by taking the given values and repeating the operation. One computes Ba mod y, the other computes Ab mod y.

And of course there's the RFC itself too :)

By Grauw

Ascended (8322)

Grauw's picture

23-08-2019, 16:04

From that blog post, sounds like it’s best to focus efforts on TLS 1.3, maybe not all servers support it yet right now but they will in the future, and apparently it’s substantially simpler, lighter on CPU resources, and requires less round-trips.

This reminds me of pseudo-random generators, many have been invented over the decades with often high levels of complexity, but the fairly recent “xorshift” algorithm (2006) is widely acknowledged as one of the best, and it’s super trivial and cheap to implement on Z80. Now if that RSA replacement in TLS 1.3 is a little like that as well (relatively speaking)… ;)

By konamiman

Paragon (1037)

konamiman's picture

23-08-2019, 15:41

Pseudo-random generator? That's one of the few things I did manage to implement: https://github.com/Konamiman/MSX/blob/master/SRC/CRYPTO/PRF.ASM

Page 2/2
1 |