PyJwt doubt | Why "algorithm" argument during encode() but "algorithms" argument during decode()?
So I was using PyJwt and was trying to create and consume JWTs
I went through the source code for the design of .encode() and .decode() methods.
The method signature for encode is
`jwt.encode(payload, key, algorithm)`
- I can specify a hashing algorithm like SHA or RSA for signing the JWT as a String.
The method signature for decode is
`jwt.decode(token, key, algorithms)`
- I can whitelist algorithms as a List of Strings to retrieve the Payload from the JWT.
What is the object of deliberately having this design like why the difference in algorithm/algorithms during creation v/s consumption?