2010-12-01 5 views
0

로컬 컴퓨터에 저장되어 있고 webservices를 사용하여 주기적으로 복제되는 데이터가 있습니다. 이 데이터는이 프로그램의 적용에 중요하며 비즈니스 트랜잭션 라인을 따른 것입니다.중요 웹 서비스 호출에 CRC가 필요합니까?

TransactionHeader JOIN TransactionDetail 

이렇게.

웹 서비스로 데이터를 보낼 때 CRC 검사 유형을 사용해야합니까, 아니면 TCP 프로토콜 자체에서 충분히 처리해야합니까?

EDIT : 서버가 영수증을 확인하고 웹 서비스에서 강력하게 형식화 된 매개 변수를 사용할 때까지 데이터가 클라이언트에서 삭제되지 않는다는 것을 명확히 알 수 있습니다.하지만 모든 경우에 문자열을 사용해야한다고 생각합니다. 이론적으로는 실패한 데이터 유형 캐스팅).

+1

Tcp에 이미 헤더와 데이터를 확인하기위한 16 비트 체크섬이 있습니다. 아주 기본. CRC와 해시는 .net에서 쉽게 실행될 수 있습니다. webservice가 중요하고 정기 간행물 인 경우 해시 또는 적어도 CRC를 사용하여 더 잘 수면을 취할 것입니다. 다른 관점에서 보면, 어떤 것이 실패하면, 나는 그들을 사용하지 않은 것을 후회할 것입니다 ... – user347594

답변

1

일반적으로 TCP 않는 그대로 유지되지만 데이터가 중요한 비즈니스 인 경우 다음과 TCP까지의 데이터를 TCP 레벨 모두에서 좋은 해시 함수

를 사용하는 것을 확인 떠나지해야 데이터를 전송하는 좋은 일이다 바이트 문자열로 축소되므로 오류로 인해 전송 중에 번호가 변경되고 다른 쪽 번호가 여전히 숫자 인 경우 해당 데이터 유형 캐스팅은 해당 데이터를 캐스팅하지 못합니다.

주요 문제는 귀하의 거래를 확인하는 다음 crc32 또는 그런 일을 잘 작동하지만 그 해시가받은 후 데이터를 확인하는 데 사용되는 경우 훨씬 더 해시 리를 저장하는 데 사용됩니다 ke sha1 등을 사용해야합니다.

관련 문제