사용자가 다른 사용자에게 메시지를 보낼 수있는 웹 응용 프로그램을 구축 중입니다. 메시지 전송 페이지에는 현재 URL에 수신자의 사용자 ID가 있으므로 애플리케이션은 메시지를 보낼 곳 (예 : example.com/send-message/user-id/1)을 알고 있습니다. 사용자 ID는 데이터베이스의 수신자를 식별하는 데 사용되는 기본 키입니다.웹 응용 프로그램에서 해시 된 사용자 ID를 사용하여 스패머 차단
저는 스패머가이 페이지로 이동할 수 있으며 URL의 사용자 ID를 계속 변경하고 사이트의 스팸 사용자를 매우 빠르게 변경할 수 있다고 우려하고 있습니다.
내가 생각해 낸 해결책은 긴 고유 ID (123154123412)를 만드는 것입니다. 이 번호는 사용자 데이터베이스 행에 저장되며 스팸 발송자가 ID를 변경하여 많은 사람을 쉽게 스팸으로 보낼 수 없도록 보내기 메시지 페이지의 기본 키 대신 사용됩니다.
내가 본 것처럼이 접근법에 잠재적 인 문제점이 있습니까?
사이트 전체에서 고유 ID를 사용하면 사이트 속도가 크게 느려집니다. 즉, 생성 된 고유 ID보다 기본 키를 사용하여 데이터베이스를 검색하는 것이 더 빠릅니다.
감사