Exemplo n.º 1
0
def test_load_rsa_from_pem(public_key, private_key):
    object = key_utils.load_rsa_from_pem(
        os.path.join('tests', 'testkey_pub.bin'))
    assert object == public_key
    object = key_utils.load_rsa_from_pem(
        os.path.join('tests', 'testkey_priv.bin'))
    assert object == private_key
    def _setup_public_key(self):
        """Load RSA keypair.

        Create a public/private key pair on setup and save them in files. If
        the full client restarts, file will be read in.
        """
        key_folder = CONFIG.key_folder
        if not os.path.isdir(key_folder) or os.listdir(key_folder) == []:
            # No keys present, so generate new pair
            os.makedirs(CONFIG.key_folder, exist_ok=True)

            logger.info("Generating new public/private key pair")
            self.public_key, self.private_key = generate_keypair()

            path = os.path.join(key_folder, CONFIG.key_file_names[0])
            key_utils.write_key_to_pem(self.public_key, path)

            path = os.path.join(key_folder, CONFIG.key_file_names[1])
            key_utils.write_key_to_pem(self.private_key, path)

        elif set(os.listdir(key_folder)) != set(CONFIG.key_file_names):
            # One key is missing
            logger.error("Public or Private key are not existent!")
            assert os.listdir(key_folder) == CONFIG.key_file_names

        else:
            # Keys are present
            path = os.path.join(key_folder, CONFIG.key_file_names[0])
            self.public_key = key_utils.load_rsa_from_pem(path)

            path = os.path.join(key_folder, CONFIG.key_file_names[1])
            self.private_key = key_utils.load_rsa_from_pem(path)

        self.public_key = key_utils.rsa_to_bytes(self.public_key)
Exemplo n.º 3
0
def setup_module(module):
    shutil.rmtree(CONFIG.persistance_folder, True)
    os.makedirs(CONFIG.persistance_folder)
    create_initial_block().persist()
    global PUBLIC_KEY, PRIVATE_KEY
    PUBLIC_KEY = load_rsa_from_pem(os.path.join("tests", "keys", "public_key.bin"))
    PRIVATE_KEY = load_rsa_from_pem(os.path.join("tests", "keys", "private_key.bin"))
def setup_module(module):
    # blockchain files folder will be deleted by create_initial_block
    global GENESIS, PUBLIC_KEY, PRIVATE_KEY
    GENESIS = create_initial_block()

    public_key_path = os.path.join(CONFIG.key_folder, CONFIG.key_file_names[0])
    private_key_path = os.path.join(CONFIG.key_folder, CONFIG.key_file_names[1])

    PUBLIC_KEY = load_rsa_from_pem(public_key_path)
    PRIVATE_KEY = load_rsa_from_pem(private_key_path)
# noinspection PyUnresolvedReferences
from time import sleep

from blockchain.full_client import FullClient
from blockchain.chain import Chain
from blockchain.block import Block, create_initial_block
from blockchain.config import CONFIG
from blockchain.helper.key_utils import load_rsa_from_pem

import pytest
import os

from tests.config_fixture import setup_test_config
setup_test_config()

PUBLIC_KEY = load_rsa_from_pem("tests" + os.sep + "testkey_pub.bin")
PRIVATE_KEY = load_rsa_from_pem("tests" + os.sep + "testkey_priv.bin")


def setup_module(module):
    shutil.rmtree(CONFIG.persistance_folder, True)
    os.makedirs(CONFIG.persistance_folder)


def test_chain_is_singleton():
    chain_1 = Chain(load_persisted=False)
    chain_2 = Chain(load_persisted=False)
    assert id(chain_1) == id(chain_2)


@pytest.fixture(scope="module")