6
MessageDigest 객체의 내부 상태를 저장하는 것이 가능하고 어떻게해야합니까? 데이터베이스에 저장하려면 String
, int
, byte[]
과 같은 기본 데이터 만 사용해야합니다.MessageDigest 내부 상태를 어떻게 데이터베이스에 저장할 수 있습니까?
무엇을 달성하기 위해 노력하고있어 (오랜 기간 동안) 조각난 파일을받을 수 있으며, 데이터베이스의 모든 조각을 저장하고 마지막 조각을받은 후 파일의 SHA512 다이제스트를 확인하지 않고 이전에 데이터베이스에 저장된 모든 데이터를 복원하십시오.
MessageDigest md = MessageDigest.getInstance("SHA-512");
// restore previous internal state of md
md.update(dataSegment);
// save internal md state
실제로 내부 SHA 상태를 저장합니까? 이는 512 비트의 순수 상태에 현재 입력 길이와 현재 불완전 블록 IIRC를 더한 값입니다. 따라서 일반적으로 약 200 바이트입니다. –
늦게 응답해서 죄송합니다.) 그러나 제안 된 XStream 기술을 사용하여이 작업을 수행 할 수 있음을 확인할 수 있습니다. @ qarma 생성 된 xml 크기는 약 12kB이지만 몇 MB 덩어리로 구성된 파일의 경우 더 나은 솔루션이 될 수 있습니다. – MJar