diff --git a/credentials/apps/verifiable_credentials/composition/status_list.py b/credentials/apps/verifiable_credentials/composition/status_list.py index 53385b9a3..99dddef3c 100644 --- a/credentials/apps/verifiable_credentials/composition/status_list.py +++ b/credentials/apps/verifiable_credentials/composition/status_list.py @@ -155,5 +155,5 @@ def regenerate_encoded_status_sequence(issuer_id): status_list[index] = 1 gzip_data = gzip.compress(status_list) - base64_data = base64.b64encode(gzip_data) + base64_data = base64.urlsafe_b64encode(gzip_data).rstrip(b"=") return base64_data.decode("utf-8") diff --git a/credentials/apps/verifiable_credentials/composition/tests/test_status_list.py b/credentials/apps/verifiable_credentials/composition/tests/test_status_list.py index 483fc693b..12eacd5ff 100644 --- a/credentials/apps/verifiable_credentials/composition/tests/test_status_list.py +++ b/credentials/apps/verifiable_credentials/composition/tests/test_status_list.py @@ -25,7 +25,9 @@ def setUp(self): def test_regenerate_encoded_status_sequence(self, mock_get_revoked_indices): mock_get_revoked_indices.return_value = [1, 3, 5] result = regenerate_encoded_status_sequence("test") - decoded_data = base64.b64decode(result) + # Add padding back for urlsafe_b64decode + padded_result = result + "=" * (-len(result) % 4) + decoded_data = base64.urlsafe_b64decode(padded_result) decompressed_data = gzip.decompress(decoded_data) status_list = bytearray(decompressed_data)