File tree Expand file tree Collapse file tree
source/JSONWebToken-Core.package
JWSCompactSerializer.class/instance
JsonWebSignature.class/instance Expand file tree Collapse file tree Original file line number Diff line number Diff line change 11reading
22materialize: aString key: aKeyString checkSignature: checkSignature
33 | parts header jws |
4- parts := $. split: aString.
5- header := JWSHeader fromJson: (parts at: 1 ) base64Decoded.
4+ parts := $. split: aString.
5+ header := JWSHeader fromJson: (parts at: 1 ) base64Padded base64Decoded asString .
66 jws := JsonWebSignature new
77 key: aKeyString;
88 setProtectedHeader: header.
99 checkSignature ifTrue: [
1010 jws checkSignature: parts ].
11- ^ jws payload: (JWTClaimsSet fromJson: parts second base64Decoded)
11+ ^ jws payload: (JWTClaimsSet fromJson: parts second base64Padded base64Decoded asString )
Original file line number Diff line number Diff line change 11as yet unclassified
22writeHeader: aHeader
3- stream nextPutAll: aHeader asJson base64Encoded
3+ stream nextPutAll: aHeader asJson asByteArray base64Encoded
Original file line number Diff line number Diff line change 11writing
22writePayload: anObject
3- stream nextPutAll: anObject asJson base64Encoded
3+ stream nextPutAll: anObject asJson asByteArray base64Encoded
Original file line number Diff line number Diff line change 11signature
22checkSignature: parts
3- ((self signatureFor: ($. join: { parts first . parts second })) = parts third base64Decoded asByteArray ) ifFalse: [
3+ ((self signatureFor: ($. join: { parts first . parts second })) = parts third base64Padded base64Decoded ) ifFalse: [
44 Error signal : ' signature does not match' ].
Original file line number Diff line number Diff line change 1+ * JSONWebToken - Core
2+ base64Padded
3+ | paddedString |
4+ paddedString := ((self size \\ 4 ) = 0 )
5+ ifTrue: [ self ]
6+ ifFalse: [
7+ String streamContents: [ :stream |
8+ stream nextPutAll: self .
9+ (4 - (self size \\ 4 )) timesRepeat: [
10+ stream nextPut: $= ] ] ].
11+ ^ paddedString
Original file line number Diff line number Diff line change 1+ {
2+ "name" : " String"
3+ }
You can’t perform that action at this time.
0 commit comments