The safest way to sign a message with a private key is to use a wallet that already has this feature. Examples are shown below:
BTC, LTC: Electrum, Electrum – LTC wallets
Step 1 – Open Tools > Sign/Verify message;
Step 2 – Enter the message and address. Press Sign.
Step 1 – Log in to the Coinomi app;
Step 2 – Select the BCH wallet;
Step 3 – Click the button in the upper right corner > Sign/Verify message;
Step 4 – Enter the address with which you need to sign the message > Sign.
ETH, USDT, UNI, LINK and COMP: MyEtherWallet
Step 1 – Go to the MyEtherWallet website;
Step 2 – Click the "Access my wallet" button;
Step 3 – Go to MyEtherWallet app and click on Advanced features > Connect to MEW web;
Step 4 – Scan the QR code on the website;
Step 5 – Click on the button in the top right corner of the website > Message > Sign Message;
Step 6 – Enter the message you want to sign and click Sign.
Step 1 – Go to the Trezor website;
Step 2 – Attach your device;
Step 3 – Use the address you need to verify and specify the message to sign > Sign.
The message you need to sign is provided by our support team. Once you sign it, you will need to transmit the result to email@example.com.
Availability of message-signing functionality should be checked with the support team of the wallet you use. If your wallet doesn't support this feature, you can export your private key and transfer it to a wallet that supports message signing. However, please make sure that you transfer your wallet to reliable service as there is a high risk of fraud.