nothing-unencr
quadrismegistus 4 years ago
parent 251238e90f
commit b8c936468f

@ -212,7 +212,7 @@ class Keymaker(Logger):
# gen encrypted keys! # gen encrypted keys!
keychain = self.gen_encr_keys(keychain,keys_to_gen,passphrase=passphrase) keychain = self.gen_encr_keys(keychain,keys_to_gen,passphrase=passphrase)
self.log('keychain 2 =',keychain) self.log('keychain 2 =',keychain)
# save keys! # save keys!
# get URI id to save under (except for pubkeys, accessible by name) # get URI id to save under (except for pubkeys, accessible by name)
uri_id,keys_saved,keychain = self.save_keychain(name,keychain,keys_to_save) uri_id,keys_saved,keychain = self.save_keychain(name,keychain,keys_to_save)
@ -220,6 +220,11 @@ class Keymaker(Logger):
self.log('keys_saved =',keys_saved) self.log('keys_saved =',keys_saved)
self.log('keychain =',keychain) self.log('keychain =',keychain)
# save pubkey as QR
if not 'pubkey' in keys_saved:
self.log('did not save pubkey in crypt, storing as QR...')
self.save_uri_as_qrcode(name=name, uri_id=uri_id, odir=PATH_QRCODES)
# return keys! # return keys!
keys_returned = self.return_keychain(keychain,keys_to_return) keys_returned = self.return_keychain(keychain,keys_to_return)
return {'uri_id':uri_id,'_keychain':keys_returned} return {'uri_id':uri_id,'_keychain':keys_returned}
@ -263,7 +268,9 @@ class Keymaker(Logger):
if not '_' in keyname and keyname!='pubkey': if not '_' in keyname and keyname!='pubkey':
raise KomradeException('there is no private property in a socialist network! all keys must be split between komrades') raise KomradeException('there is no private property in a socialist network! all keys must be split between komrades')
if keyname in keychain: if keyname in keychain:
self.crypt_keys.set(uri_id,keychain[keyname],prefix=f'/{keyname}/') # uri = uri_id
uri = uri_id if name!='pubkey' else name
self.crypt_keys.set(uri,keychain[keyname],prefix=f'/{keyname}/')
keys_saved_d[keyname] = keychain[keyname] keys_saved_d[keyname] = keychain[keyname]
return (uri_id,keys_saved_d,keychain) return (uri_id,keys_saved_d,keychain)

@ -413,9 +413,9 @@ class Operator(Keymaker):
def create_phonelines(): def create_phonelines():
## CREATE OPERATOR ## CREATE OPERATOR
op = Operator(name=OPERATOR_NAME) op = Operator(name=OPERATOR_NAME)
op_keys_to_keep_on_client = ['pubkey'] # kept on app op_keys_to_keep_on_client = ['pubkey'] # kept on app, stored under name
op_keys_to_keep_on_3rdparty = ['privkey_decr'] # kept on .onion site op_keys_to_keep_on_3rdparty = ['privkey_decr'] # kept on .onion site
op_keys_to_keep_on_server = ['pubkey', op_keys_to_keep_on_server = ['pubkey', # stored under name
'privkey_encr', 'privkey_encr',
'adminkey_encr', 'adminkey_encr',
'adminkey_decr_encr', 'adminkey_decr_encr',
@ -441,10 +441,10 @@ def create_phonelines():
) )
# store URIs # store URIs
op.save_uri_as_qrcode(odir=PATH_OPERATOR_WEB_CONTACTS_DIR) # op.save_uri_as_qrcode(odir=PATH_OPERATOR_WEB_CONTACTS_DIR)
# op.save_uri_as_qrcode() # op.save_uri_as_qrcode()
phone.save_uri_as_qrcode(odir=PATH_OPERATOR_WEB_CONTACTS_DIR) # phone.save_uri_as_qrcode(odir=PATH_OPERATOR_WEB_CONTACTS_DIR)
# phone.save_uri_as_qrcode() # phone.save_uri_as_qrcode()
## store remote keys ## store remote keys
@ -493,27 +493,27 @@ def connect_phonelines():
print('\n\n\n\nCONNECTING PHONELINES!\n\n\n\n') print('\n\n\n\nCONNECTING PHONELINES!\n\n\n\n')
# save QR # save QR
import shutil # import shutil
qrfn_op = os.path.join(PATH_QRCODES,OPERATOR_NAME+'.png') # qrfn_op = os.path.join(PATH_QRCODES,OPERATOR_NAME+'.png')
qrfn_ph = os.path.join(PATH_QRCODES,TELEPHONE_NAME+'.png') # qrfn_ph = os.path.join(PATH_QRCODES,TELEPHONE_NAME+'.png')
if not os.path.exists(qrfn_op): # if not os.path.exists(qrfn_op):
r1 = komrade_request(PATH_OPERATOR_WEB_CONTACT_OP_URL) # r1 = komrade_request(PATH_OPERATOR_WEB_CONTACT_OP_URL)
if r1.status_code==200: # if r1.status_code==200:
with open(qrfn_op,'wb') as of: # with open(qrfn_op,'wb') as of:
print('hello') # print('hello')
# shutil.copyfileobj(r1.raw, of) # # shutil.copyfileobj(r1.raw, of)
of.write(r1.content) # of.write(r1.content)
print('>> saved:',qrfn_op) # print('>> saved:',qrfn_op)
# stop # # stop
if not os.path.exists(qrfn_ph): # if not os.path.exists(qrfn_ph):
r2 = komrade_request(PATH_OPERATOR_WEB_CONTACT_PH_URL) # r2 = komrade_request(PATH_OPERATOR_WEB_CONTACT_PH_URL)
if r2.status_code==200: # if r2.status_code==200:
with open(qrfn_ph,'wb') as of: # with open(qrfn_ph,'wb') as of:
print('hello') # print('hello')
# shutil.copyfileobj(r2.raw, of) # # shutil.copyfileobj(r2.raw, of)
of.write(r2.content) # of.write(r2.content)
print('>> saved:',qrfn_ph) # print('>> saved:',qrfn_ph)
# import # import
from komrade.backend.mazes import tor_request from komrade.backend.mazes import tor_request

@ -60,11 +60,14 @@ OPERATOR_INTERCEPT_MESSAGE = "If you'd like to make a call, please hang up and t
# defaults oriented to Callers # defaults oriented to Callers
# KEYMAKER_DEFAULT_KEYS_TO_SAVE = ['pubkey_encr']
KEYMAKER_DEFAULT_KEYS_TO_SAVE = ['pubkey']
# KEYMAKER_DEFAULT_KEYS_TO_RETURN = ['privkey_encr', # kept on server
KEYMAKER_DEFAULT_KEYS_TO_RETURN = ['privkey_encr', # pubkey returnd as QR KEYMAKER_DEFAULT_KEYS_TO_SAVE_ON_SERVER = ['pubkey'] # stored under QR URI
# kept on client
KEYMAKER_DEFAULT_KEYS_TO_SAVE_ON_CLIENT = [
#'pubkey' # as QR
'privkey_encr',
'adminkey_encr', 'adminkey_encr',
'privkey_decr_encr', 'privkey_decr_encr',
'privkey_decr_decr', 'privkey_decr_decr',

Loading…
Cancel
Save