not_before=timegm((not_before or now).utctimetuple()), key=json_encode(base64url_decode(json_decode(key.export())['k']) if key.is_symmetric else key.export_to_pem(True, None))), False) return f def verify(alg): """ return function which can verify token using node-jsjws """ key = pub_keys[alg].get('default', pub_key) def f(sjwt, iat_skew=timedelta()): """ verify token using node-jsjws """ r = spawn( "fixtures.verify({now}, {sjwt}, {iat_skew}, {key}, {alg})".format( now=timegm(datetime.utcnow().utctimetuple()), sjwt=json_encode(sjwt), iat_skew=iat_skew.total_seconds(), key=json_encode(base64url_decode(json_decode(key.export())['k']) if key.is_symmetric else key.export_to_pem()), alg=json_encode(alg)), True) return tuple(r) return f for alg in algs: priv_keys[alg]['node_jsjws'] = generate(alg) pub_keys[alg]['node_jsjws'] = verify(alg) jwt_spec.setup(['HS256', 'HS512', 'RS256', 'RS512', 'PS256', 'PS512']) for alg in algs: del priv_keys[alg]['node_jsjws'] del pub_keys[alg]['node_jsjws']
not_before=timegm((not_before or now).utctimetuple()), key=json.dumps(key)), False) return f def verify(alg): """ return function which can verify token using node-jsjws """ key = pub_keys[alg].get('default', pub_pem) def f(sjwt, iat_skew=timedelta()): """ verify token using node-jsjws """ r = spawn( "fixtures.verify({now}, {sjwt}, {iat_skew}, {key}, {alg})".format( now=timegm(datetime.utcnow().utctimetuple()), sjwt=json.dumps(sjwt), iat_skew=iat_skew.total_seconds(), key=json.dumps(key), alg=json.dumps(alg)), True) return tuple(r) return f for alg in algs: priv_keys[alg]['node_jsjws'] = generate(alg) pub_keys[alg]['node_jsjws'] = verify(alg) jwt_spec.setup(['HS256', 'HS512', 'RS256', 'RS512', 'PS256', 'PS512']) for alg in algs: del priv_keys[alg]['node_jsjws'] del pub_keys[alg]['node_jsjws']
def verify(alg): """ return function which can verify token using jose """ key = pub_keys[alg]['python-jwt'] def f(sjwt, iat_skew=timedelta()): """ verify token using jose """ r = spawn( "fixtures.verify({now}, {sjwt}, {iat_skew}, {key}, {alg})".format( now=timegm(datetime.utcnow().utctimetuple()), sjwt=json_encode(sjwt), iat_skew=iat_skew.total_seconds(), key=json_encode( base64url_decode(json_decode(key.export())['k']) if key. is_symmetric else key.export_to_pem()), alg=json_encode(alg)), True) return tuple(r) return f for alg in algs: priv_keys[alg]['jose'] = generate(alg) pub_keys[alg]['jose'] = verify(alg) jwt_spec.setup(['HS256', 'RS256', 'PS256', 'ES256', 'ES256K', 'EdDSA']) for alg in algs: del priv_keys[alg]['jose'] del pub_keys[alg]['jose']
def verify(alg): """ return function which can verify token using node-jsjws """ key = pub_keys[alg].get("default", pub_pem) def f(sjwt, iat_skew=timedelta()): """ verify token using node-jsjws """ r = spawn( "fixtures.verify({now}, {sjwt}, {iat_skew}, {key}, {alg})".format( now=timegm(datetime.utcnow().utctimetuple()), sjwt=json.dumps(sjwt), iat_skew=iat_skew.total_seconds(), key=json.dumps(key), alg=json.dumps(alg), ), True, ) return tuple(r) return f for alg in algs: priv_keys[alg]["node_jsjws"] = generate(alg) pub_keys[alg]["node_jsjws"] = verify(alg) jwt_spec.setup(["HS256", "HS512", "RS256", "RS512", "PS256", "PS512"]) for alg in algs: del priv_keys[alg]["node_jsjws"] del pub_keys[alg]["node_jsjws"]
""" Run the JWT tests """ from test import jwt_spec jwt_spec.setup()