Как замаскировать пароль в Java 5?

Я пытаюсь замаскировать пароль в Java. Sun java предложила способ маскировки пароля следующим образом.

Маскировка пароля

Он использует простой способ сделать это.

public void run () {
  stop = true;
  while (stop) {
     System.out.print("\010*");
 try {
    Thread.currentThread().sleep(1);
     } catch(InterruptedException ie) {
        ie.printStackTrace();
     }
  }
}

Но у этого подхода есть несколько недостатков.

If the user uses the arrow keys + delete keys the password gets revealed.

If the user accidentally press 2 keys at the same time (Extremely high typing speed) some characters does not get masked.

Ребята, вы думаете, какой-нибудь способ получить 100% правильную маскировку?