Definition
금감원이 2024년 감리에서 암호 자산 보유 기업의 조서를 열었을 때 가장 많이 지적한 항목은 "존재 검증 절차 미흡"이었습니다. 은행 확인장도 없고 지갑 주소 소유권 확인도 없는 파일이 대부분이었습니다. 블록체인 거래는 전통적 결제 시스템과 근본적으로 다릅니다. 거래가 최종적이고(irreversible) 되돌릴 수 없으며 암호 키가 통제의 핵심입니다. ISA 330.1이 요구하는 실질적 절차의 설계가 완전히 달라져야 하는데, 막상 현장에서는 기존 은행 거래 감사 절차를 그대로 복사해 쓰는 경우가 아직 많습니다.
작동 방식
블록체인 감사는 "원장 조회하면 끝"이 아닙니다. ISA 330.5(a)는 거래가 완전하고 정확하게 기록되었음을 확인하도록 요구하는데 블록체인 환경에서 이 확인은 여러 단계를 거칩니다.
먼저 블록체인 유형을 파악해야 합니다. 공개 블록체인(비트코인, 이더리움)은 누구나 거래를 조회할 수 있습니다. 비공개 블록체인은 접근이 제한됩니다. 기업이 비공개 블록체인을 운영한다면 노드(참여 시스템)에 누가 접근할 수 있는지부터 확인해야 합니다. ISA 330.14는 감사인이 정보 시스템의 신뢰성을 평가하도록 요구합니다. 블록체인에서 이것은 노드 보안과 합의 프로토콜의 견고함을 의미합니다.
스마트 계약 평가가 다음입니다. 스마트 계약은 특정 조건이 충족되면 자동 실행되는 코드입니다. "담보물 가격이 특정 수준 아래로 내려가면 자동 청산한다"는 로직이 코드로 작성됩니다. 감사인은 이 로직이 의도한 거래 흐름을 정확히 반영하는지 확인합니다. 경계 조건에서 오류가 발생하지 않는지, 승인되지 않은 거래가 트리거되지 않는지, 긴급 정지 기능이 작동하는지, 배포 이후 코드가 변경되지 않았는지 검증해야 합니다. ISA 330.8은 거래의 권한 부여를 포함하도록 요구하며 스마트 계약에서 권한 부여는 코드 검토와 배포 기록 확인으로 입증됩니다.
암호 자산의 존재 여부 확인은 기존 감사와 가장 크게 다른 부분입니다. 은행에 확인장을 보내는 방법이 통하지 않습니다. 감사인은 지갑 주소를 확인하고 해당 주소가 피감사회사에 속함을 증명해야 합니다. 거래 서명에 사용된 암호 키에 대한 통제를 검증해야 입증이 됩니다. ISA 330.5(c)는 거래의 진정성 확인을 요구하며 블록체인 거래에서 진정성은 디지털 서명 검증을 의미합니다.
거래 최종성도 조서에 기록해야 할 사항입니다. 전통적 은행 거래는 수일 동안 반제(reversal)될 수 있습니다. 블록체인의 거래는 최종적입니다. 블록에 기록되고 합의 메커니즘으로 검증되면 되돌릴 수 없습니다. 조정 오류가 발생해도 원본을 수정할 수 없으므로 새로운 상쇄 거래로만 해결합니다. ISA 330.25가 거래 정확성 평가를 요구하는데 블록체인에서는 이 경로가 단방향입니다.
실무 사례: 상암 디지털 솔루션 주식회사
클라이언트: 한국 블록체인 결제 플랫폼 운영사, 2024년 결산, K-IFRS 적용, 암호화폐 자산 €28M, 스마트 계약 기반 결제 처리 월 거래량 €120M
1단계: 블록체인 아키텍처 문서화 상암은 이더리움 네트워크에 배포한 스마트 계약을 통해 USDC(스테이블코인) 거래를 처리합니다. 감사인은 먼저 계약 배포 기록(배포 주소, 블록 번호, 배포 트랜잭션 해시)을 수집합니다. 이더리움은 공개 블록체인이므로 etherscan.io에서 이 정보를 직접 확인할 수 있습니다.
문서화 노트: 조서 "블록체인 아키텍처"에 배포 기록, 스마트 계약 주소(0x...로 시작), ABI(인터페이스 정의) 캡처 저장. 계약이 감사 기간 중 업그레이드(재배포)되었다면 모든 버전의 주소와 변경 사항 기록.
2단계: 스마트 계약 로직 검증 상암의 스마트 계약 코드는 GitHub에 오픈소스로 공개되어 있습니다. 감사인은 Solidity 코드를 검토하여 다음을 확인합니다. 거래 입금 시 정확한 금액을 예치금 계정에 기록하는가. 출금 요청 시 요청인의 서명을 검증하는가. 수수료는 정확히 계산되고 수수료 계정으로 이체되는가. 긴급 정지(circuit breaker) 기능은 작동하는가. 코드 감사는 외부 스마트 계약 감사 회사(OpenZeppelin 등)의 보고서로 보완할 수 있습니다.
문서화 노트: 조서 "스마트 계약 감사"에 검토한 코드 버전, 감사 날짜, 확인한 로직 체크리스트(입금 정확도, 출금 서명, 수수료 계산, 긴급 정지 기능), 외부 감사 보고서 사본 저장.
3단계: 암호 자산 존재 검증 상암은 여러 지갑에서 USDC를 보유합니다. 일부는 직접 관리하는 콜드 지갑(오프라인)이고 일부는 거래소(Coinbase, Kraken)의 관리형 지갑입니다. 감사인은 각 지갑의 잔액을 블록체인에서 직접 조회합니다. etherscan.io에서 지갑 주소를 입력하면 실시간 잔액이 표시됩니다. 콜드 지갑의 경우 해당 주소를 통제하는 암호 키가 상암의 보안 저장소(하드웨어 지갑, 금고)에 있음을 확인합니다. 거래소 지갑은 거래소에 직접 확인장을 보냅니다.
문서화 노트: 조서 "암호 자산 존재"에 검증 날짜, 각 지갑 주소, etherscan 잔액 스크린샷, 거래소 확인장 스캔본, 콜드 지갑 암호 키 저장 위치 및 접근 권한자 명단 저장. 감사 종료 후 재확인한 최종 잔액도 기록.
4단계: 거래 표본 추출 및 검증 상암의 월 거래량이 많으므로 표본을 사용합니다. 5월의 거래 중 임의로 50건을 선택합니다. 각 거래에 대해 블록체인에서 트랜잭션 해시를 조회하여 입금액이 상암의 기록과 일치하는지, 거래인의 지갑 주소가 화이트리스트에 있었는지, 거래 승인 서명이 유효한지, 수수료 계산이 정확한지 확인합니다. 블록체인은 거래 최종성을 제공하므로 선택된 거래는 되돌릴 수 없습니다. 추가 입금이나 출금 조정 거래가 없는지 확인합니다.
문서화 노트: 조서 "거래 표본"에 표본 추출 방법(5월 전체 거래 2,340건 중 임의 50건), 각 거래의 블록체인 트랜잭션 해시, 상암 기록상 금액, 블록체인 확인 금액, 차이 분석, 서명 검증 결과, 수수료 검증 계산 저장.
5단계: 스마트 계약 거래 흐름 테스트 감사인은 소액의 테스트 거래를 실행합니다(100 USDC). 스마트 계약을 통해 올바르게 처리되는지 모니터링합니다. 거래 실행 후 가스 사용량(블록체인 계산 비용으로 지불하는 이더), 중간 상태 변화(각 단계별 계정 잔액), 최종 상태를 검증합니다. 실패 시나리오도 테스트해야 합니다. 승인되지 않은 지갑에서 출금을 시도하면 거래가 거부되는지 확인합니다.
문서화 노트: 조서 "스마트 계약 통제 테스트"에 테스트 거래 날짜, 테스트 거래 해시, 예상 결과, 실제 결과, 가스 사용량, 상태 변화 추적 기록, 실패 시나리오 테스트 결과 저장.
상암의 암호 자산 잔액 €28M과 스마트 계약 기반 거래 처리 로직이 기록과 일치했습니다. 솔직히 이런 감사는 인차지 입장에서 부담이 큽니다. Solidity 코드를 읽을 수 있는 감사인이 팀에 없으면 외부 전문가 투입 비용과 일정이 처음부터 꼬입니다. 스마트 계약 코드의 미발견 결함이나 암호 키 탈취 위험은 코드 감사와 키 보안 정책으로 완화해야 합니다.
감사인이 자주 놓치는 사항
Tier 1 — 감리 지적 사항 IAASB는 2023년 ISA 개정안 발행 시 블록체인 환경에서 감사인이 마주하는 새로운 위험을 강조했습니다. 스마트 계약 감시 기능이 부재하거나 미흡한 경우가 많다는 지적이었습니다. 현장에서 스마트 계약 배포 기록과 코드 변경 이력을 검증하지 않으면 ISA 330.5의 거래 인증 요구를 충족하지 못합니다. 금감원 감리에서 이 부분이 걸리면 "감사증거 미흡"으로 분류됩니다. 조서가 얇다는 뜻입니다.
Tier 2 — 기준 기반 실무 오류 ISA 330.1은 실질적 절차를 설계할 때 관련된 주장에 대해 절차의 성격과 시기와 범위를 정의하도록 요구합니다. 블록체인 거래 감사에서 흔한 오류는 존재 주장만 검증하고 완전성 주장(모든 거래가 기록되었는가)은 검증하지 않는 것입니다. 블록체인 자체 기록은 조회하되 거래를 인가한 비즈니스 프로세스(화이트리스트 관리, 서명 권한)는 테스트하지 않는 것도 자주 발생합니다. 수수료나 에스크로우 계정, 부분 실행 같은 부차적 거래를 무시하면 감리에서 바로 걸립니다.
Tier 3 — 실무 처리 미흡 제 경험상 블록체인 감사에서 문서화 기준이 가장 모호합니다. 감사인이 블록체인 기록(트랜잭션 해시, 타임스탬프, 서명)을 "확인했다"고만 기록하고 구체적으로 어떤 검증 도구를 사용했는지 기술하지 않습니다. etherscan을 썼는지, 노드에 직접 접근했는지, 외부 스마트 계약 감사 보고서를 참조했는지가 조서에 없습니다. ISA 330.25는 감사 증거의 형식과 보존을 요구합니다. 트랜잭션 해시 기록과 타임스탬프 캡처, 스마트 계약 코드 버전의 구체적 저장이 필요합니다.
관련 용어
스마트 계약: 블록체인에서 자동 실행되는 프로그래밍된 로직. 감사인은 거래 처리의 권한 부여 메커니즘을 입증하기 위해 코드를 검토해야 합니다.
암호 자산: 블록체인 기반 자산. 감사인은 존재 여부와 지갑 통제를 검증하기 위해 블록체인 자료를 사용합니다.
분산 원장 기술: 블록체인의 상위 분류. 공개와 비공개, 승인 방식과 비승인 방식 등 유형에 따라 감사 절차가 달라집니다.
합의 메커니즘: 블록체인 네트워크가 거래를 검증하는 방법. 작업 증명(PoW)과 지분 증명(PoS)이 거래 최종성과 감사인의 접근성에 영향을 미칩니다.
디지털 서명: 거래 승인 증거. ISA 330.5(c)의 거래 진정성 검증에 필수입니다.
트랜잭션 해시: 블록체인 거래의 고유 식별자. 감사인이 거래를 추적하고 최종성을 확인하기 위해 사용합니다.