- 질문 게시판입니다.
Date 23/08/11 17:24:14
Name   ㅢㅘㅞ
Subject   짧은 길이 데이터에 대한 무결성 보장을 위한 문의
8~16 Bytes에 대한 무결성을 보장하려 합니다.
무결성 데이터를 가능하면 최소 길이와 최소 연산력으로 해결하려고 합니다.
이 부분에 대한 요건이나 가이드 같은 것이 있을까요?

환경이 구려서 bit flip이 2회이상 발생할 수도 있습니다 :(



1


아침커피
뻘플입니다만 =_= 최대 8바이트이면 int64형 변수 정도의 크기로 보이는데 그냥 두 번 전송한 뒤에 두 값이 같은지 다른지를 보는 방법은 안 되려나요? 예를 들어 A가 1차 전송, B가 2차 전송일 때 A == B 이면 통과, A != B 이면 3차로 C를 전송한 후 A == C 이면 A값을, B == C 이면 B 값을 사용하는 방식을 생각해 보았습니다 ㅎ
ㅢㅘㅞ
nvm <-> ram 저장, 복원인데요 저장, 복원 모두 hw를 신뢰할 수 없는 상황이 극히 드물게 있어 sw레벨에서 보완을 해야 합니다!
ecc는 미지원이라고 생각해야할 것 같슴다
그런데
이론적으로야 틀리기 시작하면 얼마가 되어도 답은 없겠지요.
확률의 문제이니 데이터의 크기가 작은 대신 반드시 올바른 값을 가져야 한다면
동일한 샘플을 여러 개 저장하는 것이 현실적일 것 같습니다.
전에 무선오디오 만들 때 무조건 7번씩 전송하던 걸 본 적이 있습니다.
2
여러번 보내는 방법만으론 같은 오류가 여러번 날 확률이 0이 아니니 패리티 코드도 있어야 하겠네요.
X = [u32;4];
C = [X[0]^X[1], X[2]^X[3], X[0]^X[2], X[1]^X[3]];
로 해서 받는쪽에서 C를 검증하시면 bitflip 2회까진 버틸겁니다.

아니면 그냥 C = [X[0]^X[1]^X[2]^X[3], X[0]^X[1]^X[2]^X[3]] 하셔도 2회 버티기는 합니다.
그런데
좀 더 생각해 봤는데
통신 프로토콜이나 하드웨어에 따라 특정 번째 bit가 깨지거나 하는 경우가 있을 수 있으므로
data를 n bit shift한 것을 여러 번 보내어
받는 쪽에서 원상복귀한 후 비교하는 식으로 접근할 수 있겠습니다.
이때 n 값은 소수로 하면 중복하여 깨지는 bit가 겹치는 것을 피할 수 있습니다.
보통 ICV를 생성하는 방법은 특정 패턴에 따라 seed를 만들고 그걸 XOR하는 방식인데
그러면 0이나 1로 값이 고정되는 경향이 있을 때 검출이 용이해집니다.
따라서 bit shift, 다양한 패턴 ... 더 보기
좀 더 생각해 봤는데
통신 프로토콜이나 하드웨어에 따라 특정 번째 bit가 깨지거나 하는 경우가 있을 수 있으므로
data를 n bit shift한 것을 여러 번 보내어
받는 쪽에서 원상복귀한 후 비교하는 식으로 접근할 수 있겠습니다.
이때 n 값은 소수로 하면 중복하여 깨지는 bit가 겹치는 것을 피할 수 있습니다.
보통 ICV를 생성하는 방법은 특정 패턴에 따라 seed를 만들고 그걸 XOR하는 방식인데
그러면 0이나 1로 값이 고정되는 경향이 있을 때 검출이 용이해집니다.
따라서 bit shift, 다양한 패턴 XOR 등으로 여러 벌을 보내고
이를 받는 쪽에서 원복한 후
해당 여러 소스를 비교하여 높은 확률인 bit를 채택하는 등을 생각해 볼 수 있겠습니다.
T.Robin
고전적인 접근입니다만, CRC check를 고려해볼 수 있을 것 같습니다.

아니면, 32비트 FNV Hash를 데이터 뒤에 붙여서 확인해 보시면 어떨까 합니다.
http://www.isthe.com/chongo/tech/comp/fnv/index.html

딱히 측정은 안 해봤습니다만, 계산식의 복잡성만 따지고 보면 FNV hash가 CRC보다 더 가볍지 않을까...... 싶습니다.
보이차
재미있는 주제네요. 기본적으로는 소프트웨어단에서 crc 등을 구현하고 여러벙 확인하는 방법밖에 없지 않나 싶읍니다
목록
번호 제목 이름 날짜 조회 추천
공지 질문 게시판 이용 규정 11 토비 15/06/19 24452 4
16663 기타일본여행 항공권 선택장애 질문드립니다 26 쉬군 25/04/10 450 0
16662 법률내용증명 보내는데 주소를 몰라요! 8 유니브로 25/04/10 405 0
16661 체육/스포츠튼튼한 수영복 브랜드 무엇이 좋나요? 13 열한시육분 25/04/10 334 0
16660 기타리클라이너 의자 추천 18 노는꿀벌 25/04/10 343 0
16659 의료/건강신경과? 신경외과? 어디 가야 할까요? 2 키위 25/04/10 345 0
16658 의료/건강신체에 왼편만 불편함을 느끼고 있습니다 어떤 병원을 가야하나요? 5 [익명] 25/04/09 460 0
16657 IT/컴퓨터맥북이 갑지기 먹통이되었습니다 2 FTHR컨설팅 25/04/08 223 0
16656 게임디비전류 게임 추천해주십시오 4 린디합도그 25/04/08 212 0
16655 여행해외(일본) 여행을 처음 가보려합니다 11 JUFAFA 25/04/08 419 0
16654 IT/컴퓨터현재 데스크탑을 델 미니pc가 대체할 수 있겠죠..? 29 even&odds 25/04/07 693 0
16653 IT/컴퓨터컴퓨터가 글씨큰모드?로 부팅됩니다 ㅜㅜ 18 even&odds 25/04/07 356 0
16652 의료/건강30대후반 남성 유방암 3기 진단 받았는데 수술을 어디서 해야할까요? 13 [익명] 25/04/06 1047 0
16651 게임보드게임을 좋아하는 지인에게 줄 선물 추천 받읍니다. 18 니르바나 25/04/05 421 0
16650 법률건축 법률 질문 4 whenyouinRome... 25/04/04 349 0
16649 의료/건강개별 포장된 약이 유통기한이 지난경우 (홍차넷 약사 스앵님들!!) 22 Mandarin 25/04/03 631 0
16648 교육어린이 신문, 신문, 잡지 추천 부탁드립니다. 17 아재 25/04/02 447 0
16647 IT/컴퓨터AI 모델 추천 부탁드립니다. 11 퍼그 25/04/02 492 0
16646 가정/육아콧물 나는 아이에게 약을 먹이시나요? 12 the 25/04/01 546 0
16645 교육초등학생 학폭위 관련해서 문의 10 얼그레이 25/04/01 783 0
16644 IT/컴퓨터Hongkong/MACAU에서 ChatGPT 쓰는 방법? 3 mathematicgirl 25/04/01 421 0
16643 법률법무법인의 전문성을 비전문가가 알아보려면 어떻게 해야하나요? 16 [익명] 25/04/01 772 0
16642 의료/건강영양제 추천해주십시오 15 쉬군 25/03/31 492 0
16641 기타40대 초중반의 이직 고민, 다른 분들의 생각을 여쭤보고 싶습니다 23 쉬군 25/03/31 853 0
16640 기타빠른년생인 분들 나이 얘기할 때 빠른인 걸 말하시나요? 16 시간아달려라 25/03/30 771 0
목록

+ : 최근 2시간내에 달린 댓글
+ : 최근 4시간내에 달린 댓글

댓글
회원정보 보기
닫기
회원정보 보기
닫기
회원정보 보기
닫기
회원정보 보기
닫기
회원정보 보기
닫기
회원정보 보기
닫기
회원정보 보기
닫기
회원정보 보기
닫기
회원정보 보기
닫기
회원정보 보기
닫기
회원정보 보기
닫기
회원정보 보기
닫기
회원정보 보기
닫기
회원정보 보기
닫기
회원정보 보기
닫기
회원정보 보기
닫기
회원정보 보기
닫기
회원정보 보기
닫기
회원정보 보기
닫기
회원정보 보기
닫기
회원정보 보기
닫기
회원정보 보기
닫기
회원정보 보기
닫기
회원정보 보기
닫기
회원정보 보기
닫기
회원정보 보기
닫기
회원정보 보기
닫기
회원정보 보기
닫기
회원정보 보기
닫기
회원정보 보기
닫기
회원정보 보기
닫기