code: def test_signing_in_different_process():
      parent_conn, child_conn = mp.Pipe()
      process = mp.Process(target=get_signed_record, args=[child_conn])
      process.start()
  
      validator = RSASignatureValidator()
      parent_conn.send(validator)
  
      record = DHTRecord(
          key=b"key",
          subkey=b"subkey" + validator.local_public_key,
          value=b"value",
          expiration_time=get_dht_time() + 10,
      )
      parent_conn.send(record)
  
      signed_record = parent_conn.recv()
      assert b"[signature:" in signed_record.value
      assert validator.validate(signed_record)
  
file_path: hivemind/tests/test_dht_crypto.py
imports: import dataclasses
  import multiprocessing
  import pickle
  import pytest
  import hivemind
  from hivemind.dht.crypto import RSASignatureValidator
  from hivemind.dht.node import DHTNode
  from hivemind.dht.validation import DHTRecord
  from hivemind.utils.crypto import RSAPrivateKey
  from hivemind.utils.timed_storage import get_dht_time
label_desc: Use image node_id 5 for calling a global function with example usage: test_signing_in_different_process() without return types