namespace Passwordless; public static class Base64UrlConverter { public static byte[] Decode(string value) { var base64 = value .Replace('-', '+') .Replace('_', '/'); if (base64.Length % 4 != 0) { base64 += new string('=', 4 - base64.Length % 4); } return Convert.FromBase64String(base64); } public static string Encode(byte[] value) { var base64 = Convert.ToBase64String(value); return base64 .Replace('+', '-') .Replace('/', '_') .TrimEnd('='); } }