This is a great question and it is certainly one that many people have wondered about. Your steps are "bang on". Let's explore each one.
1. Key
There are several methods that I use when I teach this process and I'll try to explain each one as best as I can.
1a. Theory Method
Note: This method assumes that you have a basic understanding of theory (key signatures, notes, scales). I've put together a series on this on my YouTube channel here
1. Listen to a song and write down the notes that you hear. Try to write both enharmonic versions of each note because you're probably not sure if it is a sharp key or a flat key at this point. ex) C#/Db, B#/Cb, etc
2. Whittle down the options of keys by crossing out obvious contradictions. For example, if you've discovered an C and a C#, then you either have a B# and C# (sharp key) or C and Db (flat key). In major scales, you only have one of each letter.
1b. Finding The Tonic Via Singing/Humming
Note: I usually call this method "completing the scale".
Listen to the song until you have the tonality in your head. If you're not sure what that means, just listen to the song for around 15 - 20 seconds.
Hum or sing along with any notes that you hear in the song during this time.
Pause the song and try to hum the note (in the scale) above or below the current note you're singing. Continue this process in the same direction that you initially chose (up or down).
Stop once you feel that the scale has come to "rest". This feeling of "rest" occurs when you've found the tonic. Some songs may be in minor keys or various modes and that's fine, this method will simply help you identify the tonic of the major key for that minor scale or modes.
1c. Reference Song
Note: This is my favourite method and by far the easiest one for most students to grasp if their ear is decent.
Choose a song that you know how to sing well like "Mary Had A Little Lamb" or "Happy Birthday". I'll use both examples to illustrate this method.
Listen to the song until you have the tonality in your head. If you're not sure what that means, just listen to the song for around 15 - 20 seconds.
Hum or sing your reference song while the song is playing. If you're singing "Mary Had A Little Lamb", when you sing the word "had", that note represents the tonic of your key. Let's say "had" is a Bb, then you're in Bb major. The same can be done for "Happy Birthday". In the phrase "Happy birthday to...", the word "to" represents the tonic of the key.
2. Bass Line
The bass line is crucial to giving us chord information once we've established the key. The key helps to narrow down the immense list of chords that are possible. The bass line is not necessarily the tonic of a chord though, but it is the tonic most of the time.
How do we discover the bass line? Your ear needs to be developed enough in order to do this. I've had students that cannot hear the bass line to save their lives because their ears naturally hear higher pitched sounds. Here are a couple tips to teaching yourself how to hear it, but I admit, this process takes a lot of work if you can't naturally hear it:
Play notes that are outside of your singing range and try to match them by humming/singing. This helps you identify pitch.
Play two notes (separated by at least an octave) and try to hum the lower of the two notes. This helps you identify lowers pitches while having upper harmonies present.
Same as 2. except with 3 or more distinct notes (a chord).
As you work on this, your ear will get stronger and you'll eventually be able to hear the bass line.
3. Chords & Chord Embellishments
This topic could really be a course unto itself.
Finding Chords
You've found the key, which reduces the amount of chords you can choose, the bass line, which pretty much solidifies the tonic of the chord, so that's about it. However, there are cases where the bass note is either not the tonic or not even a part of the chord.
Let's say you're in the key of C major and your bass note is an E. The chord could be Em (which is the iii chord of the key), but C/E (an inversion of the I chord) is much more common, especially if it leads to the IV chord (F major) next. In this example, the bass note you heard was the 3rd of the chord. The bass note can also be the 5th of the chord (more rare) and it can even be the 7th of a chord (also more rare).
Perhaps the chord is a more complicated chord that contains 7ths, 9ths, 11ths, etc. You really have to play around with the chords and learn more chord theory to nail down the various components of a chord. As your ear improves and you hear certain types of chords more often, you'll be able to identify them more easily.
Lastly, there's something called a "pedal point" in music. This means that the bass line stays the same even when chords are changing. For example, in C major again, we can play C major, F/C, G/C and then back to C major. Notice how C is always the bass note. We would call this a tonic pedal. The same happen with the dominant (V) of the scale. This is a common technique in many styles of music.
Further Study
When it comes to chords, check out the following:
How to use 7ths and other extensions to the chord.
Also check out a topic called "upper structures". These are used a ton in jazz, gospel, R&B, etc.
Voicing plays a large roll in how chords sound. I would never play a CM79 chord as C E G B D, it's not voiced well. I would break up the various notes between hands on the piano and add duplicate notes to thicken things up like this: LH: C G RH: B D E G.
Hope this helps :)