removed pycryptdome

This commit is contained in:
Khalim Conn-Kowlessar 2023-07-17 18:50:29 +01:00
parent c297194964
commit 7dc369b088
5 changed files with 30 additions and 18 deletions

View file

@ -1,16 +1,13 @@
from fastapi import Depends, HTTPException, status, Request
from fastapi.security import APIKeyHeader, OAuth2PasswordBearer
from jose import JWTError, jwe, jwt
from Crypto.Protocol.KDF import HKDF
from Crypto.Hash import SHA256
from cryptography.hazmat.primitives.kdf.hkdf import HKDF
from cryptography.hazmat.primitives import hashes
from cryptography.hazmat.backends import default_backend
from typing import Any
import json
import logging
from app.config import get_settings
logger = logging.getLogger(__name__)
logger.setLevel(logging.INFO)
from app.utils import logger
api_key_header = APIKeyHeader(name=get_settings().API_KEY_NAME, auto_error=False)
@ -43,14 +40,14 @@ def get_user(user_id: str):
def get_derived_encryption_key(secret: str) -> Any:
context = str.encode("NextAuth.js Generated Encryption Key")
return HKDF(
master=secret.encode(),
key_len=32,
salt="".encode(),
hashmod=SHA256,
num_keys=1,
context=context,
hkdf = HKDF(
algorithm=hashes.SHA256(),
length=32,
salt=b"",
info=context,
backend=default_backend()
)
return hkdf.derive(secret.encode())
def get_token_payload(token: str, secret: str) -> dict[str, Any]:

View file

@ -1,9 +1,9 @@
from fastapi import APIRouter, Depends
from app.dependencies import validate_token
from app.plan.schemas import PlanTriggerRequest
from app.utils import read_csv_from_s3
from app.utils import read_csv_from_s3, logger
from app.config import get_settings
from app.utils import logger
router = APIRouter(
prefix="/plan",

View file

@ -3,6 +3,11 @@ import csv
from io import StringIO
import string
import secrets
import logging
logger = logging.getLogger(__name__)
logger.setLevel(logging.INFO)
def read_csv_from_s3(bucket_name, filepath):

View file

@ -0,0 +1,11 @@
FROM python:3.10.12-slim-buster
WORKDIR /var/task
# Install python dependencies
COPY ./requirements/base.txt ./requirements/base.txt
RUN pip install --upgrade pip
RUN pip install -r requirements/base.txt
# Copy project
COPY . .

View file

@ -25,5 +25,4 @@ uvicorn==0.22.0
uvloop==0.17.0
watchfiles==0.19.0
websockets==11.0.3
boto3
pycryptodome
boto3