Why Did the OpenSSL Punycode Vulnerability Happen