Estoy trabajando en una extensión de Chrome creada con React que se ocupa de las billeteras criptográficas, y necesito preservar su objeto de billetera, para que no tengan que descifrarlo cada vez que cierran la extensión y la vuelven a abrir. Así que necesito almacenar la contraseña del usuario o el mnemotécnico de la billetera de forma segura de alguna manera.
Metamask usa un script de fondo persistente para mantener vivo el objeto, pero eso requiere la versión 2 del manifiesto, que ya no es compatible con las nuevas extensiones.
Entonces, ¿hay alguna forma de almacenar una cadena de forma segura en una extensión de Chrome en la versión 3 del manifiesto? El almacenamiento de Chrome y el almacenamiento local de HTML5 no son necesarios.
Use chrome.storage.session , que se creó exactamente para este propósito: almacenar variables en la memoria sin persistir en el disco.
La API es la misma que cualquier otra API de chrome.storage , por lo que los datos deben ser compatibles con JSON: cadena, número, booleano, nulo, matriz/objeto de estos tipos.
La capacidad máxima del almacenamiento es actualmente de 1 MB.
async function foo() { // reading const foo = await chrome.storage.session.get('foo'); // writing await chrome.storage.session.set({foo: 'bar'}); }manifiesto.json:
"permissions": ["storage"]