2012-06-02 2 views
2

PHP에 간단한 등록 양식을 작성하는 중입니다. 사용자가 원한 암호에 대해 암호 입력 필드 대신 간단한 입력 필드를 사용하기로 결정하면 보안 문제가 발생할지 궁금합니다. 등록 도중 암호 입력을 사용하지 않는 다른 사이트를 보았습니다. 일부 인터넷 검색 결과 나는 결정적인 대답을 찾을 수 없습니다.등록 양식에서 원하는 비밀번호에 대한 비밀번호 입력 필드를 사용해야합니까?

일반 텍스트 필드를 사용하는 것을 선호합니다. 사용자가 등록하는 동안 사용자가 더 쉽게 사용할 수 있기 때문에 제 3자가 이러한 텍스트를 캡처 할 수있는 방법이있을 것이라 생각합니다.

+4

나는 시각적 인 일로 아무도 당신의 어깨를 들여다 볼 수는 없지만 암호화 나 SSL을 사용하지 않는다면 일반 텍스트로 서버에 보내어진다. – gunnx

답변

4

<input type="password" /><input type="text" />의 유일한 차이점은 암호 1은 브라우저가 결정한 모든 문자 (불릿 점/별표/기타)로 마스크 된 모든 문자를 가져옵니다.

유일한 점은이에 입력되는 것처럼 사람의 어깨 너머로 사람들이 암호를 볼 수 있도록하는 것입니다.

보안되지 않은 서버와의 통신, 그것은 현장 여부 제로 차이를 만드는 경우 암호 유형인지 여부 (통신이 암호화 되어도 차이는 없습니다). 즉, 정보가 중요한 경우 보안 채널을 사용해야합니다 (암호 필드는이 점에있어 아무 것도하지 않습니다).

1

브라우저는 사용자가 입력 한 텍스트를 텍스트로 표시하고 마스크하지 않습니다. 또한 일부 브라우저는 사용자가 입력 한 값을 저장하고 누군가 다음에 페이지를 열 때 제공합니다.

또한 대부분의 브라우저는 암호 필드로 인식하지 않으므로 "이 암호 저장"옵션을 제공하지 않습니다.

2

유일한 차이점은 비밀번호가 화면에 표시 될 수 있기 때문에 다른 사용자와 함께 가입 할 수 없다는 것입니다.

암호는 https를 사용하지 않는 한 일반 텍스트로 전송됩니다.

비밀 번호가 너무 익숙해 져있어 사용자가 사이트의 유일한 차이점을 알지 못해 사이트에 대한 확신을 잃을 수도 있습니다.

2

암호 필드는 어깨 부분을 방지하기위한 것입니다. 나는. 사용자가 자신의 암호를 입력하면 누군가가 어깨 너머로 화면을보고 피곤한 암호를 쉽게 볼 수 있습니다.

문제가 아닌 것으로 판단되는 경우 일반 입력을 사용할 수 있습니다.

아무런 차이가 없습니다. 두 필드 모두 동일한 방법으로 보내지 만, 통증 텍스트이거나 암호화 된 서버 일 수 있습니다. 그 차이는 단지 isisual입니다.

1

브라우저가 암호 필드를 원하는 방식으로 처리 할 수 ​​있으므로 확실한 답은 없습니다. 가능한 기능 중 일부는 다른 대답으로 잘 설명되어 있습니다. 또한, 브라우저는 예를 들어 사용자가 텍스트 입력 필드와 다른 경우 암호 필드를 취급 할 수있다. 브라우저에 캐시 된 정보를 알립니다.

일반적으로 브라우저의 보안 관련 기능은 input type=password을 암호 입력으로, 다른 모든 입력 요소는 다른 것으로 처리해야합니다.

별표로 사용자 입력을 숨기는 것은 거의 불편합니다. 그것은 원래 사람들이 교실, 공공 장소 등에서 컴퓨터를 사용한다는 아이디어에 기반했습니다.이 부분은 여전히 ​​부분적으로 적합합니다.그러나 장기적인 해결책은 아마도 브라우저가 암호가 마스크되지 않은 것으로 표시되는지 여부를 사용자가 결정할 수있게하는 것입니다. 일부 브라우저는 가장 최근에 입력 한 문자를 마스크 해제 한 채로두고 있습니다.

암호를 읽는 데 텍스트 입력 필드를 사용하려면 autocomplete=off spellcheck=false 속성을 추가하면 약간 도움이 될 수 있습니다.

두 가지 유형의 입력란을 사용하여 사용자가 사용할 입력란을 결정할 수도 있습니다. 문제는 이것이 혼란 스러울 수 있으며 심지어 사용자에게 의심 스러울 수도 있다는 것입니다.

+0

사려 깊은 답변을 주셔서 감사합니다. 나는 그 속성이 존재한다는 것을 깨닫지 못했습니다. – Thomas

관련 문제