This is a cryptogram puzzle, with some riddle-style clues to help you solve it. When you find the thing that links all of the clues, that will let you deduce the keys to decipher the cryptogram.
Here are the clues:
and here is the ciphertext:
Fbocov quq vdbwrv'x lbzf mji uxp vr tfdan;
Uli sbed "Mnd Thsouf jt" bbw lkq nys megrr.
Oh lbjmp rbh xmtn; gcb Dvtim xjudgttb "Fb!
Mua Gsrrjexh bv!" faifbavp gfv galncr huu.
One of the Rumkin cipher tools can be used for decoding.
You'll need two keys to decode the cryptogram; both keys are numbers with their digits spelled out in words, for example the number 1234567890 would be represented like this: onetwothreefourfivesixseveneightninezero (just an example, not one of the keys). Decimal points are ignored and there are no thousands separators or anything else except for the digits zero to nine.
You might want to refer to this question and its answers:
What characteristics of a ciphertext can be indicators of a particular cipher?
and you will probably need to use reference materials. Feel free to use any resources at your disposal (i.e. using Google is ok).
The plaintext consists mostly of English dictionary words.
Your challenge is to work out the two keys (and the reasoning behind them) and the plaintext. Also the reasoning behind each of the clues.
In the spirit of teamwork, partial answers are welcome.
I'd also be interested in constructive feedback on the puzzle itself, so my question is also "how could this puzzle be improved?"
To make this puzzle slightly easier, I'm adding a checksum for each of the keys. That way you can tell if you have one of the keys right (even if you don't have the other key or you're not sure what cipher is in use). The checksums are:
They are SHA-512 (SHA2) hashes generated using https://quickhash.com/hash-sha512-online. You can test possible keys by pasting the possible key into 'input data' and seeing what comes up in 'output data' when you click the 'generate' button.
Given that you already have quite a lot of information about the keys, it might be feasible to attack the hashes to find the keys. This would be a legitimate way of solving the puzzle as far as I'm concerned. But you'll still be expected to explain why those keys have been chosen. :)