The principle parts of the verb eat are:
eat infinitive and present
ate past
eaten past participle
eating present participle
Accordingly, perfect constructions are formed with have + eaten:
I have eaten, you had eaten, he will have eaten, &c
Passive constructions are formed with be + eaten:
We are eaten, you were eaten, they will be eaten, &c
Progressive (continuous) constructions are formed with be + eating:
I am eating, you were eating, she will be eating, &c
You will occasionally hear et for the past, and even for the past participle but in US speech these are strictly non-standard dialect forms.
You cannot use I haven't known that here. The present perfect describes a present state which arises out of a prior eventuality, and you are implicitly saying that your present state is that you do know that—which is not a state that can arise out of your previous ignorance. (It can emerge from your previous ignorance, but it can only arise out of learning it.)
You may use I didn't know that, with or without until you mentioned it. This states that in the past you were in a state of ignorance, a state which ended at the point when your addressee mentioned 'it'. Until marks the end of a state, as explained here.
You are not obliged to include anything like until you mentioned it in order to make it clear that now you do know that—the discourse situation takes care of that—it serves only to make clear that it was your addressee's statement which dispelled your ignorance, not some other past event.
You may also use I hadn't known that, again with or without until you mentioned it. The past perfect does not necessarily describe a state arising out of a prior eventuality, because the past tense-domain does not have the contrast between simple past and present perfect which exists in the present domain—the past perfect serves for both. Here the past perfect acts as a “past-in-past”, analogous to the present-tense-domain simple past, so it describes a prior state of ignorance which ended at your past reference time, the time explicitly named in the until clause.
However, as you know, FumbleFingers' Perfect Truism instructs you that if you do not need a past perfect you should not use it. In this case there is no evident reason why a past perfect should be needed; consequently the best choice here is the simple past:
I didn't know that (until you mentioned it).
Best Answer
Haven't and didn't are different time-wise, as you have guessed correctly. Haven't refers to the past up until now. So if you haven't done something, you haven't done it for a specific period of time (day, month, ever, etc.)
Didn't refers to a specific point of time that has already passed. For example, if it is 7 PM, you could say "I didn't eat dinner at 6" or "I haven't eaten dinner yet today". In both instances, you can still eat dinner. Plus, it is possible for you to have eaten dinner at a different time if you use didn't, but not with haven't, since you specified today.