숫자외에 문장 및 기호, 이미지를 해시할 경우 네트워크 오버헤드를 어떻게 해결할 수 있나요?
비트코인과는 달리, 이더리움의 스마트컨트랙트는 숫자 뿐 아니라, 문장과 기호, 이미지 까지도 해시함수로 구현할 수 있다고 합니다. 블록체인 사용자가 거래 기록의 일부로 이럴 것들을 첨부하게 되면 데이터 용량은 급증하고 블록이 계속 생성됨에 따라 데이터 용량이 커지는 네트워크 오버헤드가 초래 될텐데요.
네트워크 오버헤드를 해결할 수 있는 기술이 있는지 알고 싶습니다.
블록체인 상에 문장 및 기호, 이미지를 해싱하여 해시 값을 저장하는 것이 불가능하지는 않을 것입니다. 하지만 보통의 경우는 블록체인 상에 직접적으로 이미지를 저장하지는 않습니다.
그 이유로는 말씀하신 네트워크 오버헤드 문제가 있기도 하지만 상대적으로 용량이 큰 이미지 파일을 블록체인 노드가 분산하여 공유하고 저장하고 있는 것이 비효율적일 수가 있기 때문입니다. (같은 이미지 파일을 여러 노드가 똑같이 저장하고 있어야 하는 비효율성)
그리고 만약에 거래를 처리하는데 수수료가 필요한 블록체인이라면 문장 및 기호 등은 또 모르겠지만, 이미지의 경우 이것을 블록에 기록할 때 용량이 클 것이고, 그에 따라 수수료로 가스비가 많이 필요할 것이므로 블록체인에 저장할 때의 이점이 거의 없을 것이라 생각됩니다.
그렇기 때문에 블록체인 기술을 활용한 클라우드 스토리지 서비스들은 데이터를 직접적으로 블록체인 상에 저장하지 않고 외부 스토리지에 저장하고 있으며, 해당 파일이 어떻게 나뉘어져 어떤 노드에 어떤 계약 조건에 따라 저장되어 있는지를 '해시 값'으로 저장하게 됩니다.
그리고 계약에 따라 파일이 안전하게 보관되고 있다는 것이 해시 값에 대한 증명으로 확인되면 공급자는 코인을 보상으로 받게 되지만 데이터를 제대로 보관하지 못하여 삭제되거나 이용이 불가능하게 될 경우 사용자에 대한 보상을 이행해야 합니다.
따라서 네트워크 오버헤드 문제를 발생시키지 않으면서도 외부에 저장된 데이터의 위, 변조나 삭제 문제를 예방할 수 있게 됩니다.
답변이 도움이 되길 바랍니다.