uni2u / difs-cxx

DIFS ndn-cxx
Other
1 stars 3 forks source link

HashChain v2 수정 필요 사항 #15

Closed sungho-gurumnet closed 2 years ago

sungho-gurumnet commented 2 years ago

현재 HashChain v2가 전체적으로 거의 완성 단계에 있음을 확인하였습니다. 일부 수정 필요할 것 같은 부분들이 보여 수정 작업을 진행하고자 합니다.

  1. Log 기능 수정 현재 cout으로 되어 있는 로그 메시지들을 전체적으로 NDN에서 사용하고 있는 LOG 방식을 적용할까 합니다.

  2. HCSegmentFetcher::randAfterValidationSuccess signaturevalue 검사 부분에서 hash 값이 다른 경우 에러로 가지 않고, 성공으로 가는 것으로 보입니다.

      if(before_signature != nullptr && memcmp((void*)data.getSignatureValue().value(), (void*)before_signature->value(), data.getSignatureValue().value_size())) {
        std::cout<< "3.1"<< std::endl;
        //onError(HASHCHAIN_ERROR, "Failure hash key error");
        afterSegmentValidated(data);
      } else {
        std::cout<< "4"<< std::endl;
        success_count++;
        afterSegmentValidated(data);
      }

    이 부분 일부 수정이 필요해 보입니다.

  3. SignatureHashChainWithSha256 tlv 값

    SignatureHashChainWithSha256::SignatureHashChainWithSha256()
    : Signature(SignatureInfo(tlv::DigestSha256))
    {
    }

이부분에 DigestSha256이 들어가는데, type을 HashChain에 맞춰서 넣어야 하지 않을까 합니다.

잘못 이해한 부분이 있을 수 있을 수 있어 코멘트 주시면 수정 작업을 진행할까 합니다.

uni2u commented 2 years ago

@justin-labry 이슈 확인 부탁합니다. branch: signatureinfo_nexthash

justin-labry commented 2 years ago

안녕하세요~ ^^* 정확하게 이해하신 것 같습니다~

  1. 네 LOG 방식 적용 좋습니다.
  2. 예, HCSegmentFetcher::randAfterValidationSuccess 부분은 hash 값이 다른 경우 에러로 가고, 같은 경우 성공으로 가는 것으로 수정 요청드립니다.
  3. Signature(SignatureInfo(tlv::SignatureHashChainWithSha256)) 로 변경 하는 것이 더 정확한 표현 같습니다.