It's a shame that a Bash question about such a relevant case remains without a code solution. Therefore, the number-of-times-viewed counter built into stackoverflow.com Questions is converted here into a case-without-code-solution_number-of-times-viewed counter.
Yet it is precisely in this Yes/No [y/n] scenario that this case makes perfect sense. Deliberately allowing the user to enter more characters than required to give a valid answer makes little sense and therefore cannot be considered a relevant option. Thus, the use of the restrictive read
-option '-n [digit]
' with the exact number of characters to print required is fully justified. It is therefore perfectly consistent that the user must validate their input, in this case by pressing the Enter key, as a typo can happen, and this must be able to be erased, which implies that the backspace-key is not counted by 'read' as a printed character input.