如何在Java 5中屏蔽密码?

我正在尝试屏蔽Java中的密码. Sun Java已提出一种掩盖密码的方法,如下所示.

Masking a password

它使用一种简单的方法来做到这一点.

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

但是这种方法有几个缺点.

>如果用户使用箭头键删除键,则会显示密码.
>如果用户不小心同时按下2个键(极高的键入速度),某些字符将不会被掩盖.

你们认为有什么方法可以获得100%正确的遮罩吗?

解决方法:

使用Console.readPassword().

上一篇:不需要的密码在源代码管理中的存储位置


下一篇:第四次上机