안전하지 않은 코드로 인해 대규모 Web3 도입 지연

Move 의 Sui 은 본질적으로 안전하며 다른 프로그래밍 언어의 취약점을 해결하도록 설계되었습니다.

안전하지 않은 코드로 인해 대규모 Web3 도입 지연

신뢰 없이는 웹3.0 도입은 불가능합니다. 혼란스러운 사용자 경험, 복잡한 인증 패턴, 불확실한 규제 시스템 등 10억 명의 사용자를 확보하는 데 걸림돌이 되는 다른 중요한 장애물도 있지만, 대부분의 사람들이 블록체인 기술에 대해 가지고 있는 회의와 불신만큼 큰 장애물은 없습니다.

많은 사람들에게 블록체인은 곧 암호화폐, 즉 사기입니다. 해킹이나 러그풀에 대한 이야기는 매스컴에 보도되는 웹3.0 기사의 상당 부분을 차지합니다. 2023년 첫 8개월 동안 온체인에서 발생한 악의적인 활동으로 인해 약 10억 달러가 손실되었습니다. 사람들이 블록체인이 안전하다는 믿음을 갖기 전까지는 웹3.0이 대중적인 제품의 표준 인프라로 자리 잡는 데 실패할 것입니다.

기술이 많은 위험을 내포하고 있는 것처럼 보안에도 많은 요소가 존재합니다. 하지만 블록체인에서 안전을 유지하기 위한 한 가지 핵심 요소는 안전한 코드를 작성하는 것입니다. 안전하지 않은 코드는 도난, 사기, 개인 자산의 무단 액세스로 이어질 수 있으며, 이는 결국 디파이와 같은 고부가가치 산업에 대한 투자 감소로 이어질 수 있습니다. 취약한 코드는 공격자에 의해 악용되어 데이터 조작과 금전적 손실로 이어질 수 있습니다. 사용자는 거래와 스마트 컨트랙트의 무결성을 신뢰하기 위해 암호화 코드의 보안에 의존합니다. 잘못 작성된 코드로 인한 보안 침해는 이러한 신뢰를 약화시키고 시스템에 대한 신뢰 상실로 이어질 수 있습니다.

이더리움은 2015년에 최초의 스마트 콘트랙트 플랫폼으로 출시되었습니다. 이더리움의 프로그래밍 언어인 솔리디티는 알려진 보안 결함에도 불구하고 바이퍼와 함께 대부분의 EVM 및 EVM 호환 체인에서 여전히 널리 사용되고 있습니다. 툴링과 감사가 개선되었음에도 불구하고, 스마트 콘트랙트 프로그래밍이 시작된 이래로 알려진 취약점으로 인해 많은 주요 침해와 대규모 해킹이 발생했습니다. 이러한 문제를 해결하고 개발자와 사용자 모두에게 더 높은 보안을 제공하기 위해 새로운 언어가 개발되었습니다. 예를 들어 Sui 에서는 표현력이 뛰어나면서도 본질적으로 안전한 프로그래밍 언어 Move 가 사용됩니다.

Move 특히 재진입 공격, 이중 지출, DoS 공격, 컴파일러 문제와 같은 솔리디티의 취약점을 해결하기 위해 부분적으로 개발되었으며, 본질적으로 안전한 것을 목표로 합니다. 이러한 유형의 공격은 2023년 7월에 6천만 달러 상당의 디지털 자산을 악용한 커브 파이낸스 풀에 대한 재진입 공격을 포함하여 계속해서 막대한 재정적 손실을 야기하고 있습니다. Move 은 개발자가 특정 버그와 취약점을 코드에 작성하지 못하도록 보호하여 솔리디티의 많은 결함을 제거하도록 명시적으로 설계되었지만, 사람들이 고의로 악성 코드를 작성하는 것을 막지는 못합니다. 이러한 취약점 및 기타 취약점을 발견하기 위해서는 여전히 감사 및 기타 점검이 필요합니다.

" Sui Move  VM에서는 동적 콜백도 불가능하기 때문에 재입력이 불가능합니다."라는 Scallop 창립자의 트윗 스크린샷이 해킹에 대한 Curve Finance의 트윗에 대한 답변으로 게시되었습니다.

Move 의 또 다른 내장 보안 기능은 바이트코드 검증기입니다. 이는 스마트 콘트랙트의 바이트코드가 유효하고 안전하게 실행될 수 있도록 보장합니다. EVM은 소스 코드가 실행될 바이트코드와 동일한지 확인하는 소스 코드 검증 기능만 있고 스마트 컨트랙트 자체의 정확성은 확인하지 않습니다. 바이트코드 검증기는 가짜 코인을 생성하거나, 코인의 가치를 인위적으로 높이거나, 기존 코인을 복사/파괴하는 악성 코드가 온체인에서 실행되지 않도록 설계되었습니다.

Sui는 객체 중심이기 때문에 안전하지 않은 코드의 실행 횟수를 최소화하는 데 도움이 됩니다. 본질적으로 모든 함수는 어떤 객체를 건드리는지 명확하게 보여줍니다. 함수 시그니처를 보는 것만으로도 컨트랙트가 악의적으로 설계되었을 때 발생할 수 있는 최대 피해를 파악할 수 있습니다. 함수가 어떤 인수를 받는지, 함수가 어떤 인수를 반환하는지 정확히 알 수 있습니다. 예를 들어, 코인 잔액을 수락할 때 지갑에 있는 코인 잔액을 건드리는 것은 분명합니다. 놀라운 일이 아닙니다. 솔리디티로 작성된 컨트랙트에서는 명확하지 않습니다.

스마트 컨트랙트를 위한 완벽한 보안 코딩 언어는 아직 존재하지 않지만, Move , 특히 Sui 의 Move 은 현재 시장에 나와 있는 다른 언어보다 본질적으로 더 안전합니다. 지금 Move 학습을 시작하세요.