123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293 |
- import socket
- import threading
- import config as cfg
- from nacl.public import PrivateKey
- from connection.socket import SocketClient
- from tcp import TLSClientSession
- import time
- def new_x25519():
- private_key = PrivateKey.generate()
- key_exchange = bytes(private_key.public_key)
- return bytes(private_key).hex() , key_exchange.hex()
- class Cryptor():
- def __init__(self, parser):
- self.privatekey , self.key_exchange = new_x25519()
- self.server = None
- self.parser = parser
- self.connector = None
- self.data = []
- print("\n\n CRYPTOR, \n ",self.privatekey ,self.key_exchange,"\n")
- def oracleInitial(self,data):
- try:
- self.server = data["server"]
- self.connector = SocketClient(data["connector"][0],data["connector"][1],self.parser,"Cryptor")
- time.sleep(1)
- self.keyExchange()
- except:
- print("\33[41mAn exception occurred oracleInitial Cryptor\33[0m" )
- # def socketOracle(self,HOST,PORT):
- # self.connector = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
- # self.connector.connect((HOST, PORT))
- # t = threading.Thread(target=self.receive)
- # t.start()
- # self.toSEND({
- # "type":"oracleInit",
- # "oracle":"Cryptor"
- # })
- # print("socket is created and Listener is created\n")
- # self.toSEND({
- # "type":"key_exchange",
- # "key_exchange":self.key_exchange
- # })
- def keyExchange(self):
- try:
- d = {}
- self.parser.add(d,"type","keyExchange")
- self.parser.add(d,"keyExchange",self.key_exchange)
- self.connector.send(self.parser.toSEND(d))
- except:
- print("\33[41mAn exception occurred keyExchange Cryptor\33[0m")
- # def start(self,a):
- # print("Cryptor",a)
- # self.socketOracle(self.connectorIP,self.connectorPort)
- def fromContoCryHelloCLient(self, data):
- try:
- self.tcp = TLSClientSession(self.privatekey , self.key_exchange,memoryview(bytes.fromhex(data["data"])))
- print("TODO fromContoCry",data["data"]) # TODO
- except Exception as exception :
- print("\33[41mAn exception occurred fromContoCryHelloCLient Cryptor " ,exception,"\33[0m" )
- def toCryptorFromConnector(self,data):
- try:
- print("TODO") # TODO
- except Exception as exception :
- print("\33[41mAn exception occurred toCryptorFromConnector Cryptor " ,exception,"\33[0m" )
-
- def MPC(self,data):
- try:
- print("TODO") # TODO
- except Exception as exception :
- print("\33[41mAn exception occurred MPC Cryptor " ,exception,"\33[0m" )
- def fromContoCry(self,data):
- try:
- self.tcp.tls_response(data["data"])
- print("TODO fromContoCry") # TODO
- except Exception as exception :
- print("\33[41mAn exception occurred fromContoCry Cryptor " ,exception,"\33[0m" )
|