5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
|
# File 'lib/json/jwk/jwkizable.rb', line 5
def to_jwk(ex_params = {})
params = {
kty: :RSA,
e: UrlSafeBase64.encode64(e.to_s(2)),
n: UrlSafeBase64.encode64(n.to_s(2))
}.merge ex_params
if private?
params.merge!(
d: UrlSafeBase64.encode64(d.to_s(2)),
p: UrlSafeBase64.encode64(p.to_s(2)),
q: UrlSafeBase64.encode64(q.to_s(2)),
dp: UrlSafeBase64.encode64(dmp1.to_s(2)),
dq: UrlSafeBase64.encode64(dmq1.to_s(2)),
qi: UrlSafeBase64.encode64(iqmp.to_s(2)),
)
end
JWK.new params
end
|