NFT에도 안전 거래 필요하다…주의해야 할 점은?

By 강민승   Posted: 2021-03-12
그라임스 ‘화성’ NFT 이미지 출처 = 니프티게이트웨이

최근 대체불가(NFT) 토큰을 수집하고 거래하려는 사용자의 관심도가 나날이 높아지고 있는데 NFT를 안전하게 거래하려면 사용자와 개발자의 주의가 모두 필요하다는 전문가의 의견이 나왔다. NFT란 개체마다 고유한 값을 지니도록 발행한 토큰으로 주로 게임 아이템이나 예술품에 적용할 수 있는 블록체인 기술 중 하나다.

구매자, NFT 위조품 구별하려면 주의 필요
NFT는 희소성을 바탕으로 제작된 만큼 토큰 자체가 보증서 역할을 한다고 생각하는 경우가 많다. 하지만 그렇지 않은 경우도 많아 주의가 필요하다. 오픈씨 등 NFT를 거래하는 플랫폼에선 아티스트의 작품을 승인하고 NFT 형태로 최종 발행해 판매하는 구조로 운영된다. 별도의 검수 절차가 존재하기 때문에 사용자가 위작을 구매할 가능성은 상대적으로 적은 편이다.

반면 사용자가 개인 거래나 일부 중개 플랫폼에서 NFT 작품의 겉보기만 확인하고 거래를 진행하면 ‘짝퉁’을 구입할 수도 있어 주의가 요구된다. 디지털 아트의 특성상 껍데기와 같은 메타데이터를 ‘복붙’해 만들어진 작품도 충분히 존재할 수 있기 때문이다. 메타데이터란 작품의 형태 등을 표시하는 부가 정보를 말한다. NFT의 메타데이터는 누구나 복제하기 쉽기 때문에 작품의 진위 여부를 판단하려면 먼저 NFT에 담긴 실제 데이터를 직접 들여다봐야 한다.

NFT의 실질 데이터는 분산형 웹인 인터플래니터리파일시스템(IPFS)을 통해 확인할 수 있다. NFT 작품의 코드에 명시된 IPFS 주소를 웹 브라우저에 입력하면 실제 데이터를 쉽게 확인할 수 있다. 최근엔 NFT에 포함된 실제 이미지나 동영상 파일 등을 IPFS를 통해 공유하는 경우가 많다. NFT의 실질 데이터를 IPFS 웹에 올리면 데이터가 유실되거나 해킹 등으로 변조될 가능성이 줄어들기 때문이다. 이밖에도 거래자는 해당 NFT가 발행되며 발급된 타임스탬프와 작품의 고유한 주소인 토큰 아이디가 실제로 일치하는지도 꼭 확인해야 한다.

최윤성 DSRV 연구책임자는 “NFT에 포함된 메타데이터만 확인하고 NFT를 거래하는 것은 위험할 수 있다. NFT의 메타데이터는 누구나 복사할 수 있는 대상이기 때문에 실제 아티스트나 게임에서 제공하는 NFT인지 확인하고 이를 위해 작품의 토큰 아이디와 제작사의 컨트랙트 주소를 꼭 확인해야 안전할 것”이라고 조언했다.

NFT 플랫폼이나 서비스 개발한다면 ‘소유권 이전 기능’ 특히 주의
상대방에게 잔액을 전송하는 이더리움(ETH) 등 기존의 코인과 달리 NFT는 소유권을 상대방에게 이전하는 구조로 거래가 이뤄진다. 때문에 NFT에선 소유권을 안전하게 이전하는 기능이 핵심인데 소유권을 이전하는 과정이 오히려 보안상 취약점으로도 작용할 수 있다는 지적도 나온다. NFT는 개인 간 거래를 통해 끊임없이 이동하는 만큼 소유권을 변경하는 과정에 보안 취약점이 발생하면 피해는 치명적일 수 있어 주의가 필요하다.

실제로 NFT를 구현하는 코드를 보면 소유권을 상대방에게 넘겨주는 승인 함수가 있다. 블록체인에서 NFT의 소유자를 변경함으로써 상대방에게 NFT 아이템을 넘겨주는 기능이다. 다만 승인 함수를 통해 NFT의 소유권을 이전한다고 해서 모든 소유권이 완벽하게 정리되는 건 아니다. 승인 함수가 이전 소유자가 등록한 여러 컨트랙트 주소를 모두 지우지 못하는 경우도 있기 때문이다. 예전에 전 주인이 등록한 컨트랙트가 지워지지 않고 남아있는 경우 구매자의 현 소유권이 박탈당하는 경우도 얼마든지 발생할 수 있다.

최윤성 연구책임자는 “NFT 규격이나 서비스를 직접 구현하는 경우 특히 주의가 필요하다. NFT의 소유권을 변경하는 함수가 NFT에 접근할 수 있는 컨트랙트의 허용 목록을 초기화하지 않아 문제가 발생할 수 있다”고 말했다. 그는 “반면 개발자가 NFT에 접근을 허용하는 목록을 함수를 통해 모두 파악하는 건 하는 건 쉽지 않다. 때문에 NFT의 경우엔 특히 직접 구현하기보단 보안성이 검증된 오픈제플린에서 제공하는 코드를 사용하기를 권장한다”고 조언했다. 오픈제플린이란 블록체인 애플리케이션을 개발하는 데 필요한 보안 라이브러리를 제공하는 오픈소스 서비스로 ERC-721, ERC-1155 등의 NFT 라이브러리를 현재 제공하고 있다.

그는 이어 “ERC-725 등 아이덴티티 컨트랙트를 사용하는 방안도 하나의 해법이 될 수 있다. 아이덴티티 컨트랙트는 NFT에 접근할 수 있는 기존의 허용 목록을 초기화하지 못한 경우에도 내부적으로 허용 목록을 지울 수 있기 때문이다. 사용자가 아이덴티티 컨트랙트를 사용한다면 NFT을 거래하는 보안성을 높이는 데도 도움이 될 것”이라고 덧붙였다.

아이덴티티 컨트랙트란 이더리움에서 사용자의 계정을 통합해 매개하는 일종의 관리자 컨트랙트로 사용자 계정과 개인키를 손쉽게 관리할 수 있는 기능을 포함하고 있다. 아이덴티티 컨트랙트를 사용하면 NFT 작품과 연관된 기존 소유자의 소유권도 깔끔하게 정리할 수 있다는 설명이다.

[강민승 기자]