From de995ec62627468743c4ab9832caa12976dd52a6 Mon Sep 17 00:00:00 2001
From: timotheyca <tim@ongoteam.yaconnect.com>
Date: Sun, 19 Dec 2021 19:20:31 +0300
Subject: [PATCH] encrypted reg

---
 requirements.txt        | 4 ++--
 v6d1tokens/app.py       | 2 +-
 v6d1tokens/reg-token.py | 2 +-
 v6d1tokens/tdb.py       | 2 +-
 4 files changed, 5 insertions(+), 5 deletions(-)

diff --git a/requirements.txt b/requirements.txt
index cfb3b89..f3a7632 100644
--- a/requirements.txt
+++ b/requirements.txt
@@ -1,4 +1,4 @@
 aiohttp
 PyNaCl~=1.4.0
-git+https://gitea.ongoteam.net/PTV/ptvp35.git
-git+https://gitea.ongoteam.net/PTV/v6d0auth.git
+git+https://gitea.ongoteam.net/PTV/ptvp35.git@25727aabd7
+git+https://gitea.ongoteam.net/PTV/v6d0auth.git@2837d32dd6
diff --git a/v6d1tokens/app.py b/v6d1tokens/app.py
index f492f09..dc0342a 100644
--- a/v6d1tokens/app.py
+++ b/v6d1tokens/app.py
@@ -39,7 +39,7 @@ class V6D1TokensAppFactory(AppFactory):
                 token_encrypted = await self.tdb.get(await request.read())
             except BadSignatureError:
                 raise web.HTTPUnauthorized
-            except json.JSONDecodeError:
+            except (json.JSONDecodeError, AssertionError):
                 raise web.HTTPBadRequest
             except KeyError:
                 raise web.HTTPNotFound
diff --git a/v6d1tokens/reg-token.py b/v6d1tokens/reg-token.py
index babac38..6d5cdac 100644
--- a/v6d1tokens/reg-token.py
+++ b/v6d1tokens/reg-token.py
@@ -7,7 +7,7 @@ from v6d0auth.config import host, port
 
 
 async def main():
-    request = certs.sign(json.dumps([input('token_id:'), input('token:')]).encode())
+    request = certs.encrypt_self(certs.sign(json.dumps([input('token_id:'), input('token:')]).encode()))
     async with aiohttp.ClientSession() as session:
         # noinspection HttpUrlsUsage
         async with session.post(f'http://{host}:{port}/reg', data=request) as response:
diff --git a/v6d1tokens/tdb.py b/v6d1tokens/tdb.py
index 536cb44..1f8c8bc 100644
--- a/v6d1tokens/tdb.py
+++ b/v6d1tokens/tdb.py
@@ -32,7 +32,7 @@ class TDB:
         await self.db.set(token_id, token)
 
     async def reg(self, request: bytes) -> None:
-        request = certs.verify(request)
+        request = certs.verify(certs.receive(request))
         token_id, token = json.loads(request)
         assert type(token_id) == type(token) == str
         await self._reg(token_id, token)