Example #1
0
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
Example #2
0
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
Example #5
0
 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())
Example #7
0
 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