How can I be certain that if developer Alice creates and uploads maven package com.example.alice:the-greatest
to maven central, and developer Bob includes that package as a dependency in their project com.example.bob:almost-as-great
, Bob actually gets Alice's code, and evil genius Charlie can't modify the code somewhere in the journey between Alice and Bob? (Never mind how Charlie would actually do this; bribing someone with root@maven-central with a gazillion simoleons would do as an example)
Linux distros typically solve this problem by having Alice digitally sign the package, require that all packages in the distro are signed and distribute the signatures with the packages, so that Bob can check that the package he has received was indeed signed by Alice and not modified in transit.
I'm fairly new to maven, and apologize if this is a silly question, but none of the tons of files that have ended up in my ~/.m2
look even remotely like a .sig
file or something like it.
(I asked this on #maven IRC but nobody responded.)