0% read

마지막 업데이트:

Immutability

**불변성(Immutability)**은 에 기록된 데이터가 확인되어 체인에 추가된 후에는 변경, 삭제 또는 변조될 수 없는 특성을 말합니다. 이는 과 같은 퍼블릭 블록체인의 핵심적인 특징 중 하나로, 암호화 해싱과 분산 합의의 결합을 통해 강제됩니다. 이러한 결합은 대규모 네트워크에서 소급적인 변경을 계산적으로 감지 가능하게 하고 경제적으로 불가능하게 만듭니다.[1]

이 개념은 컴퓨터 과학에서 빌려온 것으로, 불변 객체란 생성된 후 그 상태를 수정할 수 없는 객체를 의미합니다.[1]

블록체인 맥락에서 불변성은 거래 데이터가 일단 확인되어 원장에 추가되면 다시 작성될 수 없다는 보장을 구체적으로 가리킵니다. 이는 절대적인 조건이라기보다는 스펙트럼으로 이해하는 것이 가장 좋습니다. 즉, 보장의 강도는 데이터를 보호하는 네트워크의 규모와 경제적 힘에 따라 달라집니다.[1]

불변성이 달성되는 방법

불변성은 데이터가 연대순으로 암호화되어 연결된 들로 그룹화되는 의 구조적 설계에 기반합니다. 각 블록에는 이전 블록의 암호화 해시, 타임스탬프 및 거래 데이터가 포함되어 있으며, 모든 블록이 이전 블록을 참조하는 체인을 형성합니다.[2]

암호화 해시는 해싱 알고리즘에 의해 생성된 데이터의 고유 식별자로, 기본 데이터가 조금이라도 변경되면 완전히 다른 해시가 생성됩니다.[3]

블록의 해시는 그 내용에 따라 달라지기 때문에, 과거 기록을 변경하면 해당 블록의 해시가 바뀌고, 결과적으로 그 이후의 모든 블록이 무효화됩니다.[1] 따라서 단 하나의 항목을 다시 작성하려 해도 이후의 모든 블록을 다시 계산해야 하며, 이는 보안이 확보된 블록체인에서는 계산적으로 불가능한 작업으로 간주됩니다.[2]

이러한 특성은 변조를 단순히 어렵게 만드는 것이 아니라 명확하게 드러나게 합니다. 어떠한 수정이라도 체인을 "깨뜨리며", 이를 검증하는 누구에게나 감지될 수 있게 합니다.[4]

두 번째 기둥은 합의입니다. 블록체인 네트워크는 (PoW) 및 (PoS)과 같은 합의 메커니즘을 사용하여 거래의 유효성과 체인의 상태에 대해 합의합니다.[2] 이 분산된 합의 프로세스는 단일 개체가 네트워크의 연산 능력이나 지분의 과반수를 확보하지 않고서는 독단적으로 원장을 변경할 수 없도록 보장합니다.[3]

특히 블록체인에서 들은 새로운 블록을 추가하기 위해 상당한 연산 노력을 기울여야 합니다. 역사를 다시 쓰려면 변경된 블록부터 그 이후의 모든 작업을 다시 수행하는 동시에 정직한 네트워크의 속도를 앞질러야 합니다.[1]

탈중앙화는 이 두 메커니즘을 모두 강화합니다. 데이터가 단일 중앙 서버가 아닌 여러 에 분산 저장되기 때문에, 데이터를 변경하려는 시도는 대다수의 노드에서 동시에 변경을 수행해야 함을 의미하며, 이는 규모가 크고 잘 분산된 네트워크에서는 사실상 불가능한 작업으로 묘사됩니다.[3]

일반적인 거래를 넘어 불변성은 프로그램 로직으로도 확장될 수 있습니다. 과 같은 플랫폼에서는 가 일단 배포되면 그 코드를 변경할 수 없으므로, 계약이 작성된 그대로 정확하게 실행되도록 보장합니다.[2]

암호학적 기초

불변성의 "암호학적" 요소는 암호화 알고리즘을 사용하여 데이터를 보호하고, 변조를 방지하는 동시에 감지하여 진위성을 보장하는 것을 의미합니다.[4]

두 가지 기술이 핵심입니다. SHA-256 알고리즘과 같은 해싱은 데이터의 고정 길이 "디지털 지문"을 생성하며, 디지털 서명은 원장 내 거래의 진위성을 확인합니다.[4] 에서 모든 원장 항목은 해싱되고 각 새 항목은 이전 해시를 참조하므로, 사기나 변조가 발생하면 체인이 깨지고 모든 참여자에게 명확히 드러납니다.[4]

이 설계의 근저에는 추가 전용(append-only) 원칙이 있습니다. 불변 원장 시스템은 데이터를 추가만 할 수 있고 절대 삭제할 수 없으므로, 모든 변경 사항은 새로운 항목을 필요로 하며 기존의 어떤 것도 덮어쓰여지지 않습니다.[4]

분산 데이터베이스에서 암호학적 불변성은 서로 다른 참여자들이 시스템이 무결성을 유지하고 있으며 어떠한 사기도 명백히 드러날 것임을 독립적으로 검증할 수 있게 해줍니다.[4]

이점 및 응용 분야

불변성의 가장 직접적인 이점은 데이터 무결성과 보안입니다. 정보가 에 기록되면 변경하거나 삭제할 수 없으므로 기록된 데이터의 정확성이 보존됩니다.[3]

이는 보안을 강화하고 사기 및 무단 변경을 방지함으로써 블록체인 기술의 신뢰성과 공신력을 뒷받침하며, 체인을 거래를 위한 믿을 수 있는 원장으로 만듭니다.[2]

또한 불변성은 모든 참여자가 데이터가 변조되지 않았음을 독립적으로 확인할 수 있기 때문에 투명성과 신뢰를 촉진합니다.[3] 이는 서로를 완전히 신뢰하지 않는 여러 당사자가 단일한 진실의 원천(source of truth)을 필요로 하는 공유 기록 보관 시스템에서 특히 유용합니다.[1] 이러한 이점은 금융, 의료 및 공급망 관리 분야에서 자주 언급됩니다.[3]

또 다른 이점은 감사 가능성입니다. 불변의 기록은 감사를 간단하고 신뢰할 수 있게 만듭니다. 감사인은 데이터 조작에 대한 걱정 없이 모든 거래를 기원까지 추적할 수 있어 책임성과 규정 준수를 강화할 수 있기 때문입니다.[3]

비즈니스 맥락에서 불변성은 감사 시간과 비용을 줄이고, 여러 내부 데이터베이스를 대조하는 것에 비해 검증을 단순화하며, 비즈니스 분쟁 시 명확성을 제공하고, 규정 준수 및 보고를 지원하며, 사후에 기록이 변경될 위험 없이 조직에 완전한 역사적 기록을 제공할 수 있습니다.[1]

마지막으로, 불변성은 사기 방지에 도움이 됩니다. 거래 내역을 변경하려면 비현실적인 양의 자원과 조정이 필요하기 때문에 체인은 사기 및 악의적인 활동에 매우 강한 저항력을 가지며, 그 엄청난 난이도 자체가 억제력으로 작용합니다.[3]

한계 및 51% 공격

블록체인의 불변성은 절대적인 것이 아니라 확률적입니다. 거래가 후속 들 아래에 더 깊이 묻힐수록 변경하기가 더 어려워집니다. 블록체인에 저장된 데이터가 공격으로부터 완전히 면역되는 것은 아닙니다.[1]

주요 위험은 으로, 악의적인 행위자가 네트워크 해시 레이트의 과반수를 장악하는 경우입니다. 이러한 통제권을 가지면 공격자는 새로운 거래가 확인되는 것을 막거나 최근 거래를 되돌릴 수 있습니다.[1]

이러한 공격의 실현 가능성은 네트워크의 규모에 크게 좌우됩니다. 에 대해 51% 공격을 가하려면 막대한 하드웨어 투자와 지속적인 전기 비용이 필요하므로 실제로는 극도로 어렵습니다. 규모가 크고 확립된 네트워크에서 역사를 다시 쓰는 것은 경제적으로 불가능에 가깝습니다.[1]

전체 해시 레이트가 낮은 소규모 블록체인은 훨씬 더 취약합니다. 소규모 네트워크에서 과반수 해시 레이트를 확보하는 비용이 공격을 재정적으로 타당하게 만들 만큼 낮을 수 있기 때문입니다.[1]

따라서 블록체인이 제공하는 불변성의 정도는 해당 네트워크의 규모 및 경제적 힘과 직결됩니다.[1]

과제

공격 벡터 외에도 불변성은 운영 및 법적 과제를 야기합니다. 하나는 확장성입니다. 더 많은 데이터가 추가됨에 따라 의 크기가 커져 시간이 지남에 따라 저장 및 성능 문제가 발생할 수 있습니다.[3]

또 다른 하나는 오류 처리입니다. 오류가 일단 기록되면 체인에서 수정할 수 없기 때문에, 실수는 수정 거래를 통해 해결해야 하며, 이는 데이터 구조와 해석을 복잡하게 만들 수 있습니다.[3]

불변성은 규제 요건과 충돌할 수도 있습니다. 블록체인 기록의 영구성은 개인에게 "잊힐 권리"를 부여하는 유럽 연합의 일반 데이터 보호 규정(GDPR)과 같은 규칙과 상충하기 쉽습니다. 데이터를 삭제할 수 없는 원장에서는 이러한 권리를 존중하기가 어렵기 때문입니다.[3]

잘못된 내용이 있나요?

참고 문헌 (4 출처)

카테고리위키 MC이벤트용어집