Еще пара распространенных ошибок:
— использование не thread safe классов в многопоточных приложениях. Сколько людей пыталось сэкономить на
private static final SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy.MM.dd");
и обнаруживали потом странные даты.
— Классика жанра: январь месяц в Calendar имеет нулевой номер, лечится или JodaTime или LocalDate в Java 8, где месяцы как положено пронумерованы от 1 до 12.
Как написал ниже — главное если пароль должен куда-то передаться, то его можно отследить и перехватить. Да, с этим можно бороться, но так как пароль в какой-то момент времени будет в открытом виде, то из-за наличия технологии java agent и библиотек позволяющих менять байт-код на лету, данные можно считать.
Поможет видимо только физическая защита компьютера :)
Пароль то все равно будет в какой-то момент в открытом виде, необязательно при вставке в текстовое поле. И вот этот момент можно отследить и перехватить пароль.
Возможно, сработает, не спорю. Но мой метод позволяет увидеть пароль в вообще любой java-программе, где используется JPasswordField.
Основная мораль поста — сохраненные пароли в java это ОЧЕНЬ небезопасно.
Во-первых, я не додумался :)
Во-вторых, разработчики могли не ставить сохраненный пароль в JPasswordField, а брать напрямую из хранилища
В-третьих, писать программу все таки веселей, чем нудно искать по дампу последовательность символов
код:
type MyInt int
func main() {
var x MyInt = 42;
fmt.Println(x.add(13))
}
func (x MyInt) add(i int) int {
return int(x) + i;
}
— использование не thread safe классов в многопоточных приложениях. Сколько людей пыталось сэкономить на
и обнаруживали потом странные даты.
— Классика жанра: январь месяц в Calendar имеет нулевой номер, лечится или JodaTime или LocalDate в Java 8, где месяцы как положено пронумерованы от 1 до 12.
nginx.org/en/docs/http/ngx_http_spdy_module.html
Поможет видимо только физическая защита компьютера :)
Основная мораль поста — сохраненные пароли в java это ОЧЕНЬ небезопасно.
Во-вторых, разработчики могли не ставить сохраненный пароль в JPasswordField, а брать напрямую из хранилища
В-третьих, писать программу все таки веселей, чем нудно искать по дампу последовательность символов
Еще бы добавить возможность рисования внутри выделенной области красным фломастером стрелочек и междометий WTF