def test_non_json_header_section_raises_jwe_parse_error(self): jwe_str = "not json." \ "UGhIOguC7IuEvf_NPVaXsGMoLOmwvc1GyqlIKOK1nN94nHPoltGRhWhw7" \ "Zx0-kFm1NJn8LE9XShH59_i8J0PH5ZZyNfGy2xGdULU7sHNF6Gp2vPLgN" \ "Z__deLKxGHZ7PcHALUzoOegEI-8E66jX2E4zyJKx-YxzZIItRzC5hlRir" \ "b6Y5Cl_p-ko3YvkkysZIFNPccxRU7qve1WYPxqbb2Yw8kZqa2rMWI5ng8" \ "OtvzlV7elprCbuPhcCdZ6XDP0_F8rkXds2vE4X-ncOIM8hAYHHi29NX0m" \ "cKiRaD0-D-ljQTP-cFPgwCp6X-nZZd9OHBv-B3oWh2TbqmScqXMR4gp_A" \ "." \ "AxY8DCtDaGlsbGljb3RoZQ." \ "KDlTtXchhZTGufMYmOYGS4HffxPSUrfmqCHXaI9wOGY." \ "9hH0vgRfYgPnAHOd8stkvw" with pytest.raises(JWEParseError): jwe.get_unverified_header(jwe_str)
def test_decrypt_oct_256_key_wrap(self, jwe_package): headers = jwe.get_unverified_header(jwe_package) if headers["alg"] not in ALGORITHMS.SUPPORTED: pytest.skip("alg {} not supported".format(headers["alg"])) if headers["enc"] not in ALGORITHMS.SUPPORTED: pytest.skip("enc {} not supported".format(headers["enc"])) key = OCT_256_BIT_KEY actual = jwe.decrypt(jwe_package, key) assert actual == b"Live long and prosper."
def test_valid_header_and_auth_tag(self): expected_header = {u"alg": u"RSA1_5", u"enc": u"A128CBC-HS256"} jwe_str = "eyJhbGciOiJSU0ExXzUiLCJlbmMiOiJBMTI4Q0JDLUhTMjU2In0." \ "UGhIOguC7IuEvf_NPVaXsGMoLOmwvc1GyqlIKOK1nN94nHPoltGRhWhw7" \ "Zx0-kFm1NJn8LE9XShH59_i8J0PH5ZZyNfGy2xGdULU7sHNF6Gp2vPLgN" \ "Z__deLKxGHZ7PcHALUzoOegEI-8E66jX2E4zyJKx-YxzZIItRzC5hlRir" \ "b6Y5Cl_p-ko3YvkkysZIFNPccxRU7qve1WYPxqbb2Yw8kZqa2rMWI5ng8" \ "OtvzlV7elprCbuPhcCdZ6XDP0_F8rkXds2vE4X-ncOIM8hAYHHi29NX0m" \ "cKiRaD0-D-ljQTP-cFPgwCp6X-nZZd9OHBv-B3oWh2TbqmScqXMR4gp_A" \ "." \ "AxY8DCtDaGlsbGljb3RoZQ." \ "KDlTtXchhZTGufMYmOYGS4HffxPSUrfmqCHXaI9wOGY." \ "9hH0vgRfYgPnAHOd8stkvw" actual_header = jwe.get_unverified_header(jwe_str) assert expected_header == actual_header
def test_invalid_jwe_string_raises_jwe_parse_error(self): with pytest.raises(JWEParseError): jwe.get_unverified_header("invalid jwe string")