from __future__ import annotations from py_vapid import Vapid01, b64urlencode from cryptography.hazmat.primitives import serialization def main() -> None: vapid = Vapid01() vapid.generate_keys() public_key = b64urlencode( vapid.public_key.public_bytes( encoding=serialization.Encoding.X962, format=serialization.PublicFormat.UncompressedPoint, ) ) private_value = vapid.private_key.private_numbers().private_value private_key = b64urlencode(private_value.to_bytes(32, "big")) print(f"NOURI_VAPID_PUBLIC_KEY={public_key}") print(f"NOURI_VAPID_PRIVATE_KEY={private_key}") print("NOURI_VAPID_SUBJECT=mailto:mail@hnz.io") if __name__ == "__main__": main()