Handy guide to GDPR for web developers: * You can't set all your cookies first, then ask permission. * You can't set all your cookies whether the user accepts them or not. * You can't tell users to stop using the website if they don't want cookies. * You can't convince any business owner to follow the above rules.
GDPR is about far more than just cookies. Once you get into it, the GDPR is extraordinarily vague. It obviously wasn't written by engineers or even people with domain experience. You can easily interpret common server-side logging operations as GDPR violations if you're not careful.
It's "vague" on purpose. Had the GDPR banned cookies, companies would have switched to fingerprinting. Had the GDPR banned JS tracking, Google would've pushed Dart to Chrome. It's written that way so that companies can't think of loopholes because of the language used.
Most (European) law is written quite vaguely. The vagueness allows judges to make the right call rather than become law robots. Instead of specifying concrete limits, the law refers to the current state of the art. If you let the law decide what safeguards are or aren't appropriate, we'd be using 3DES and MD5 to this day, because that's what the law says.
We've seen what the EU does when it tries to lay down more concrete rules: they're trying to force the EU to manage certificate authorities for browsers, which is obviously a terrible idea. Crap like that is why we need vague laws.