package Net::ACME2::JWTMaker::RSA; use strict; use warnings; use parent qw( Net::ACME2::JWTMaker ); use constant _ALG => 'RS256'; #Based on Crypt::JWT::encode_jwt(), but focused on this particular #protocol’s needs. Note that UTF-8 might get mangled in here, #but that’s not a problem since ACME shouldn’t require sending raw UTF-8. #(Maybe with registration??) sub _get_signer { my ( $self ) = @_; return sub { return $self->{'key'}->can('sign_' . _ALG())->($self->{'key'}, @_); }; } 1;