Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- from watson_developer_cloud import TextToSpeechV1
- import BridgeKeys as bridge
- import os
- import sys
- import socket
- import hashlib
- from cryptography.fernet import Fernet
- if __name__ == '__main__':
- if len(sys.argv) != 11:
- print("Not Enough Arguments")
- server_port = 0
- svr_ip = ""
- brg_port = 0
- backlog_size = 0
- socket_size = 0
- for i in [1, 3, 5, 7, 9]:
- if sys.argv[i] == "-svr-p":
- server_port = int(sys.argv[i+1])
- elif sys.argv[i] == "-svr":
- srv_ip = sys.argv[i+1]
- elif sys.argv[i] == "-p":
- brg_port = int(sys.argv[i+1])
- elif sys.argv[i] == "-b":
- backlog_size = int(sys.argv[i+1])
- elif sys.argv[i] == "-z":
- socket_size = int(sys.argv[i+1])
- else:
- print("Unrecognized Parameter")
- # recieve question
- s = socket.socket(socket.AF_INET,socket.SOCK_STREAM)
- s.bind(('localhost', brg_port))
- s.listen(backlog_size)
- while 1:
- client, addr = s.accept()
- question = client.recv(socket_size)
- if question:
- plain_text = ""
- # decrypt
- key,cipher_text,hash_text_recv = cPickle.loads(question)
- md5_hash_tool0= hashlib.md5()
- md5_hash_tool0.update(cipher_text)
- hash_text_generate = md5_hash_tool0.hexdigest()
- # compare hash
- if hash_text_generate == has_text_recv:
- cipher_tool0 = Fernet(key)
- plain_text = cipher_tool0.decrypt(cipher_text)
- print(plain_text)
- else:
- print("Data Incomplete")
- # get answer
- t2s = TextToSpeechV1(username=bridge.watson_username, password=bridge.watson_password,url=bridge.watson_url)
- with open('output.wav','wb') as audio_file:
- response =t2s.synthesize(plain_text, accept='audio/wav',voice="en-US_AllisonVoice").get_result()
- audio_file.write(response.content)
- # test
- os.system("start output.wav")
- # encrypt
- # send back
- client.close()
- '''
- # Generate Fernet key
- key = Fernet.generate_key()
- print(key)
- cipher_tool = Fernet(key)
- # Encrypt plain text
- cipher_text = cipher_tool.encrypt(b"How old is Virginia Tech?")
- print(cipher_text)
- # Decrypt cipher text
- plain_text = cipher_tool.decrypt(cipher_text)
- print(plain_text)
- # MD5 Hash Encrypted text
- md5_hash_tool = hashlib.md5()
- md5_hash_tool.update(cipher_text)
- hash_text = md5_hash_tool.hexdigest()
- print(
- '''
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement