diff --git a/komrade/backend/keymaker.py b/komrade/backend/keymaker.py index 7d718be..b8bde93 100644 --- a/komrade/backend/keymaker.py +++ b/komrade/backend/keymaker.py @@ -603,54 +603,8 @@ Keymaker ({self}) is forging new keys for {name} return SCellSeal(passphrase=str_or_key_or_cell) elif type(str_or_key_or_cell)==bytes: return SCellSeal(key=str_or_key_or_cell) - - - # def keychain(self, - # passphrase=DEBUG_DEFAULT_PASSPHRASE, - # extra_keys={}, - # keys_to_gen=KEYMAKER_DEFAULT_KEYS_TO_GEN, - # uri_id=None, - # **kwargs): - - # # assemble as many keys as we can! - # self.log(f'''keychain( - # passphrase={passphrase}, - # extra_keys={extra_keys}, - # keys_to_gen={keys_to_gen}, - # uri_id={uri_id}, - # **kwargs = {kwargs} - # )''') - - # if not uri_id: uri_id = self.uri_id - # if not uri_id and not self.uri_id: - # raise KomradeException('Need URI id to complete finding of keys!') - # self.log('getting keychain for uri ID:',uri_id) - - # # if not force and hasattr(self,'_keychain') and self._keychain: return self._keychain - # if passphrase: self.passphrase=passphrase - - # # start off keychain - # _keychain = {**extra_keys, **self._keychain} - # self.log('_keychain at start of keychain() =',_keychain) - - # # find - # for keyname in keys_to_gen: - # if keyname in _keychain and _keychain[keyname]: continue - # # self.log('??',keyname,keyname in self._keychain,'...') - # newkey = self.crypt_keys.get(uri_id,prefix=f'/{keyname}/') - # if newkey: _keychain[keyname] = newkey - - # # return - # _keychain = self.assemble(_keychain) - # self._keychain = _keychain - # return _keychain - - - - - - return _keychain - + elif issubclass(type(str_or_key_or_cell),KomradeSymmetricKey): + return str_or_key_or_cell.cell if __name__ == '__main__': diff --git a/komrade/backend/people.py b/komrade/backend/people.py index 1884391..86bd985 100644 --- a/komrade/backend/people.py +++ b/komrade/backend/people.py @@ -54,7 +54,7 @@ class Persona(Caller): ## 1) Have name? if SHOW_STATUS and show_intro: name = self.cli.status_keymaker_part1(name) - else: + elif not name: name = input('@Keymaker: What is the name for this new account?\n@?: ') ## 2) Make pub public/private keys @@ -78,6 +78,16 @@ class Persona(Caller): privkey_encr_obj = KomradeEncryptedAsymmetricPrivateKey(privkey_encr) self.log(f"This pass-generated key has now transformed the private key (2) into the following encrypted form (redacted):\n\n\t(2B) [Encrypted Private Key]\n\t({make_key_discreet_str(privkey_encr_obj.data_b64)})") + ## 6) Test keychain works + privkey_decr2 = KomradeSymmetricKeyWithPassphrase(passhash) + + self._keychain['pubkey']=pubkey.data + self._keychain['privkey_encr']=privkey_encr_obj.data + self._keychain['privkey_decr']=privkey_decr + + self.log('My keychain now looks like:',dict_format(self.keychain())) + + ## 6) More narration? if SHOW_STATUS: self.cli.status_keymaker_part3(privkey,privkey_decr,privkey_encr,passphrase) @@ -88,14 +98,11 @@ class Persona(Caller): 'pubkey': pubkey.data, ROUTE_KEYNAME:'register_new_user' } - self.log('sending to server:',dict_format(data,tab=2)) - # msg_to_op = self.compose_msg_to(data, self.op) + self.log('I will be sending this data to @TheOperator, on the remote server:',dict_format(data,tab=2)) # ring operator # call from phone since I don't have pubkey on record on Op yet # self.log('my keychain:',self._keychain,pubkey,self.op._keychain) - self._keychain['pubkey']=pubkey.data - self._keychain['privkey']=privkey.data resp_msg_obj = self.ring_ring(data) self.log('register got back from op:',dict_format(resp_msg_obj,tab=2)) diff --git a/komrade/cli/cli.py b/komrade/cli/cli.py index 887bf05..3e2da42 100644 --- a/komrade/cli/cli.py +++ b/komrade/cli/cli.py @@ -358,18 +358,6 @@ class CLI(Logger): ) - def register(): - # Get name (narration part 1) - name = self.cli.status_keymaker_part1(name) - passphrase = self.cli.status_keymaker_part2( - name, - passphrase, - pubkey, - privkey, - self.crypt_keys.hash, - self - ) - # get passphrase (narration part 2)