def get_public_key(reader, key_id): try: if( blocksec2go.is_key_valid( reader, key_id ) ): global_counter, counter, key = blocksec2go.get_key_info( reader, key_id ) return key else: raise RuntimeError( 'Key_id is invalid!' ) except Exception as details: print( 'ERROR: ' + str( details ) ) raise SystemExit
def read_public_key(reader, key_id): try: if blocksec2go.is_key_valid(reader, key_id): # Check if key is valid global_counter, counter, key = blocksec2go.get_key_info( reader, key_id) return key else: return None except Exception as details: print('ERROR: ' + str(details)) raise SystemExit
def _get_key_info(args): reader = args.reader (global_counter, counter, key) = get_key_info(reader, args.key_id) if args.machine_readable: json.dump({ 'status': 'success', 'key_id': args.key_id, 'global_counter': global_counter, 'counter': counter, 'key': key.hex()}, fp=sys.stdout) else: print('Remaining signatures with card: {}'.format(global_counter)) print('Remaining signatures with key {}: {}'.format(args.key_id, counter)) print('Public key (hex, encoded according to SEC1): ' + key.hex())
def _get_pub_key(self): _, _, pub_key = blocksec2go.get_key_info(self.reader, self.key_id) self.logger.debug('read public key') return pub_key[1:] # remove the '0x04' prefix
def _get_pub_key(self) -> bytes: _, _, pub_key = blocksec2go.get_key_info(self._reader, self._key_id) unprefixed_pub_key = pub_key[1:] return unprefixed_pub_key
blocksec2go.select_app(reader) print('Found the specified reader and a Blockchain Security 2Go card!') except Exception as details: print('ERROR: ' + str(details)) raise SystemExit if ('__main__' == __name__): reader = get_reader() activate_card(reader) try: if ('Yes' == input( 'Do you want to create a new Keypair? ("Yes" or "No")\n')): key_id = blocksec2go.generate_keypair(reader) print('Keypair generated on slot ' + str(key_id)) except Exception as details: print('ERROR: ' + str(details)) raise SystemExit try: key_id = int( input( 'Get information on which key? (Number between 0-255 only)\n')) global_counter, counter, key = blocksec2go.get_key_info(reader, key_id) except Exception as details: print('ERROR: ' + str(details)) raise SystemExit print('Remaining signatures with card: ' + str(global_counter)) print('Remaining signatures with key' + str(key_id) + ': ' + str(counter)) print('Public key (hex, encoded according to SEC1): ' + key.hex())
def get_pub_key(self): _, _, pub_key = blocksec2go.get_key_info(self.reader, self.key_id) # remove 0x04 byte unprefixed_pub_key = pub_key[1:] return unprefixed_pub_key