Also, für deine Funktion brauchst du einen "Secure Context". Wie du den bekommst, hängt davon ab, ob deine Anwedung auf einem übers Web erreichbaren Server liegt und aufgerufen werden soll oder nicht. Zum Hintergrund siehe hier:
https://developer.mozilla.org/en-US/...ecure_Contexts
Wenn deine Anwendung nur in einem lokalen Netz erreichbar sein soll, dann wird auch alles, was irgendwie auf *.localhost endet, als sicher betrachtet. Du könntest deinen Server also unter
http://wuppdi.localhost erreichbar machen - dann brauchst du kein SSL/TLS und bist das ganze Thema los.
Wenn dein Server nicht nur lokal erreichbar ist, dann brauchst du ein "richtiges" Zertifikat. Am einfachsten bekommt man das heutzutage mit
Let's encrypt.
Vielleicht sind da ja mal ein paar hilfreiche Stichworte dabei.