나는 블루투스 장치에 일부 암호화 된 데이터를 전송하는 모바일 애플리케이션을 개발하고를 사용하지 않고 재생 공격을 피하기 위해이 블루투스 장치는 서버로 데이터를 전송합니다. 내 질문은이 경우 재생 공격을 막을 수있는 방법입니다. 누군가가 가짜 Bluetooth 장치를 사용하여 신호를 가져 와서 서버로 보낼 수 있습니다.방법 타임 스탬프
모바일 응용 프로그램은 오프라인 모드에서 작동하며 서버에 연결되어 있지 않습니다. 따라서 번 nonce 또는 카운터를 동기화하면 도움이되지 않습니다.
휴대 전화의 시간이 올바르지 않을 수 있으므로 (타임 서버와 동기화 됨) 공격 기록의 범위를 좁히기 위해 타임 스탬프를 사용할 수도 없습니다.
내 모바일 응용 프로그램과 블루투스 장치 간의 통신은 단방향이며 모바일 응용 프로그램은 장치로만 데이터를 보낼 수 있습니다.
블루투스 기기와 서버 간의 재생 공격을 중지하고 기기와 서버 간의 블루투스 연결을 이미 신뢰하고 있습니까? –
@Marcus 블루투스 연결을 신뢰할 수 없습니다. 누군가가 가짜 장치를 사용하여 사용자로부터 데이터를 가져올 수 있으며 (카드 데이터를 도용하기 위해 위조 된 POS ** 터미널을 사용하는 것처럼) 데이터를 캡처 한 후에 트랜잭션이 실패했음을 사용자에게 알리지 만 나중에 캡처 된 데이터를 보냅니다. 나는 재연/man-in-the-middle 공격을 피하고 싶다. 사용자의 데이터는 잘 암호화되어 있으며 변조 할 수 없지만 캡처 할 수는 있습니다. – hkazemi