• 0 Posts
  • 26 Comments
Joined 1 year ago
cake
Cake day: June 2nd, 2023

help-circle
  • Thank you, that’s an excellent read! This reminds me of the “expected value of perfect information” - sometimes it is worthwhile to answer a question, and sometimes it isn’t. Every once in a while I find myself in an engineering call discussing a minor problem, and I run the numbers to see if the change we are discussing is even worth talking about. One time the combined salaries of the people on the call had already outpaced the cost savings of the change over the next 10 years. We quickly stopped that discussion lol








  • Other comments here do a great job pointing to DH key exchange; I’d like to try explaining it with the paint analogy.

    You and Youtube need to agree on a “color of paint” (encryption key) without ever sending it over the network.

    You and Youtube agree on a common “yellow” in the clear, and you each pick a secret color. Youtube mixes yellow and their secret and sends it to you. This is okay, because un-mixing paint (factoring large prime numbers) is really hard. You add your secret to the mixture, and now you have yellow+Youtube’s secret+your secret.

    You mix yellow and your secret and send it to youtube. Youtube adds their secret; now they’ve got yellow+Youtube’s secret+your secret. You both have the final color!

    An eavesdropper can’t reconstruct this - everything sent over the network had yellow mixed in, and un-mixing paint can be really hard. Maybe you can guess that green minus yellow is probably blue, but you can’t get close enough to decrypt anything. And what if it’s brown? Is that blue + orange, or is it red + green?

    Cryptographers have worked very hard to make the communications secure. I would be more worried about the other end ratting you out - using a relay / proxy / vpn that you trust is a good idea :)











  • You’re running docker inside a vm? Why?

    The first thing I would do is learn the 5-layer OSI model for networking. (The 7-layer is more common, but wrong). Start thinking of things in terms of services and layers. Make a diagram for each layer (or just the important layers. Layers 3 and up.)

    If you can stomach it, learn network namespaces. It lets you partition services between network stacks without container overhead.

    Using a vm or docker for isolation is perfectly fine, but don’t use both. Either throw docker on your host or put them all in as systemd services on a vm.