@@ -42,8 +42,12 @@ export const createJWT = async (request: JSONRPCRequest, privateKey: Hex): Promi
4242 }
4343
4444 // Encode header and payload to base64url
45- const encodedHeader = base64URLEncode ( Buffer . from ( JSON . stringify ( header ) , 'utf8' ) . toString ( 'base64' ) )
46- const encodedPayload = base64URLEncode ( Buffer . from ( JSON . stringify ( payload ) , 'utf8' ) . toString ( 'base64' ) )
45+ const encodedHeader = base64URLEncode (
46+ Buffer . from ( JSON . stringify ( header ) , 'utf8' ) . toString ( 'base64' ) ,
47+ )
48+ const encodedPayload = base64URLEncode (
49+ Buffer . from ( JSON . stringify ( payload ) , 'utf8' ) . toString ( 'base64' ) ,
50+ )
4751 const rawMessage = `${ encodedHeader } .${ encodedPayload } `
4852
4953 // Sign the message - viem's signMessage handles the Ethereum Signed Message prefix and hashing
@@ -64,11 +68,7 @@ export const createJWT = async (request: JSONRPCRequest, privateKey: Hex): Promi
6468 // Ensure r and s are exactly 32 bytes each by padding with leading zeros if needed
6569 const rBuffer = Buffer . from ( r . slice ( 2 ) . padStart ( 64 , '0' ) , 'hex' ) // 32 bytes = 64 hex chars
6670 const sBuffer = Buffer . from ( s . slice ( 2 ) . padStart ( 64 , '0' ) , 'hex' ) // 32 bytes = 64 hex chars
67- const signatureBytes = Buffer . concat ( [
68- rBuffer ,
69- sBuffer ,
70- Buffer . from ( [ Number ( recoveryId ) ] ) ,
71- ] )
71+ const signatureBytes = Buffer . concat ( [ rBuffer , sBuffer , Buffer . from ( [ Number ( recoveryId ) ] ) ] )
7272 const encodedSignature = base64URLEncode ( signatureBytes . toString ( 'base64' ) )
7373 return `${ rawMessage } .${ encodedSignature } `
7474}
0 commit comments