자동 증가 기본 키가있는 테이블이 있습니다. 기본 키와 연결된 이미지를 갖고 싶지만 기본 키가 노출되는 것을 원하지 않습니다.데이터베이스 ID가 흐릿 해짐
$filename = md5($primarykey + $secret_string) . '.jpg';
좋은 해결책이 될 : 같은 이미지 무언가를 명명시겠습니까?
충돌이있을 수 있으며 파일을 덮어 쓸 수 있다고 걱정됩니다.
물론 다른 옵션은 임의의 문자열을 생성하여 파일로 존재하지 않는지 확인하고 데이터베이스에 저장하는 것입니다.하지만 ID는 불필요한 경우 추가 데이터를 저장하지 않는 것이 좋습니다.
다른 옵션은 논리 변환 youtube url 스타일입니다. 예를 들어 1 = a 2 = b이지만 무작위 순서가 있습니다. 예를 들어 1 = x 2 = m ... 그렇지만 디코딩 될 가능성이 있습니다 ... plus md5는 아마 어떤 youtube url 함수보다 더 가벼울 것입니다.
2 백만 건이 넘는 기록을 처리하고 있으므로 충돌 가능성이있는 것은 무엇입니까? 어느 옵션을 선택하겠습니까? 아니면 더 나은 접근 방식을 생각할 수 있습니까?
이미지 레코드의 기본 키가 발견되면 어떤 위험이 있습니까? ID 열이 기본 키인 경우 – jball
입니다. 쉽게 오버라이드되지는 않을 것입니다. 귀하의 DB를 잡아야하고 그에 따라 처리 할 수 있습니다 – Sinan
중요한 현명한 보안은 아니지만 중요한 것은 사용자가 봇을 만들고 시스템을 속일 수 있기 때문입니다. – JimBo