namespace Azaion.Missions.JwksMock.Services;
/// RFC 7515 ยง2 base64url (no padding) helpers.
public static class Base64Url
{
public static string Encode(ReadOnlySpan input)
{
var b64 = Convert.ToBase64String(input);
return b64.Replace('+', '-').Replace('/', '_').TrimEnd('=');
}
public static byte[] Decode(string input)
{
var s = input.Replace('-', '+').Replace('_', '/');
var pad = s.Length % 4;
if (pad > 0) s += new string('=', 4 - pad);
return Convert.FromBase64String(s);
}
}