Skip to content
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
sign
checkSignature: parts withKey: key
(self
signMessage:
($.
join:
{parts first.
parts second}) withKey: key)
= parts third base64Padded base64Decoded asByteArray
ifFalse: [ Error signal: 'signature does not match' ]
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
sign
checkSignature: parts withKey: key

Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
sign
checkSignature: parts withKey: key
| jwtHeaderAndPayload signatureByteArray rsa pubKey |
jwtHeaderAndPayload := $.
join:
{parts first.
parts second}.
signatureByteArray := parts third base64Padded base64Decoded
asByteArray.
rsa := LcRSA fromRsaPublicKeyPemString: key.
pubKey := LcEvpPublicKey setRSA: rsa.

(pubKey
digestVerifyMessage: jwtHeaderAndPayload
with: signatureByteArray) ifFalse: [ Error signal: 'signature does not match' ]

This file was deleted.

Original file line number Diff line number Diff line change
@@ -1,4 +1,5 @@
signature
checkSignature: parts
((self signatureFor: ($. join: { parts first . parts second })) = parts third base64Padded base64Decoded asByteArray) ifFalse: [
Error signal: 'signature does not match' ].


self protectedHeader algorithm checkSignature: parts withKey: key