You've described a method, but not the goal or any circumstances:
- What is the situation and your goal therein?
- What adversaries do you want to protect against?
The assumed scenario
I assume that you want to:
- you want to send data,
- without a passive eavesdropper being able to obtain the contents,
- where you own both computers (or perhaps a friend owns the destination computer).
In this case, there is an alternative channel available: you can talk to your friend (or yourself) over the phone or in real life, so you can give them the password. Use an encrypted 7z archive and email it or something.
To verify the integrity, in case an active attacker might have tampered with the transmission, you could compute the hash (generated using, for example, the sha256sum
command on GNU-based systems) and include that in a file in the 7z archive. The archive itself already has checksums, but that does not qualify as authenticated encryption (cryptographic integrity + confidentiality) so you should verify it separately. You could also, when giving the password, give the hash to your friend so they can check it that way.
But you could also mean...
- you want to send data,
- to someone whom you never met before (such as a visitor of your website),
- without an active eavesdropper being able to obtain or modify the contents.
In that case, how are you going to exchange keys? Any password you send over the line, an eavesdropper can intercept. And any key exchange algorithm which protects against passive intercepts, can be defeated by active attackers. The way https solves it, is by having trusted third parties. By having a certificate by one of those trusted parties, such as Let's Encrypt, the recipient can be reasonably sure that the encryption keys it received were not from an attacker.
So what you need really depends on the situation. From your description, I assume that an encrypted 7z archive is sufficient; but if you want a more specific answer, you need to ask a more specific question.
As for "is single-layer encryption sufficient?"
Well, how much do you trust any given algorithm? I can sell you a super deluxe algorithm for only $500, but nobody checked it. You could use AES: designed by Belgians, used in USA standards, and lots of people have studied it for flaws. The odds of that one being broken are, in my opinion, negligible. But maybe you are afraid of the NSA having backdoored AES, in which case you might want to use Russian algorithms like GOST. But what if the Russians backdoored that one? You could use both and mix the two, but while that is in theory not an issue, in practice slight modifications of recommended usage can result in catastrophic failures. It would smell like homebrew crypto soup.
To make a long story short: yes, using only one layer of encryption is definitely enough. (Assuming a standard situation.) However, the question is: is the algorithm secure? Choose your encryption method wisely!