‘DB 강자’ 오라클의 블록체인 기술 활용법 : 데이터 암호화 보안 관리
“블록체인 기술 DB에 통합, 데이터 무단 변경 원천 차단”
오라클이 블록체인 데이터베이스(DB) 보안 기술을 선보였다. 자체 DB에 블록체인 기술을 통합해 한층 강화된 데이터 보안 기능을 제공하기 시작했다.
오라클은 악의적인 내부 사용자나 외부 해커가 DB에 접근해 데이터 무단 변경을 원천 방지할 수 있는 ‘블록체인 테이블’을 지난 1월 오라클 데이터베이스 21c와 19c 제품에 통합해 지원한다고 9일 온라인으로 연 브리핑 세션에서 밝혔다.
블록체인 테이블(Blockchain Table), 분산 다이제스트(Distributed Digest), 데이터 서명(Data Signing)을 시작으로 오라클은 불변 테이블(Immutable Table)까지 4가지 암호보안(crypto-security) 데이터 관리 기술을 선보인다. 이미 세가지 기능은 지난 1월부터, 불변 테이블은 4월부터 제공된다.
마크 라크밀레비치(Mark Rakhmilevich) 오라클 제품개발 블록체인 전략 총괄은 이날 세션에서 “오라클은 블록체인을 사용해 데이터 무단 변경이나 삭제를 방지해 기존 데이터 보안을 강화하며 혁신적인 암호보안 데이터 관리를 제공한다”며 “일반 P2P(Peer to Peer) 블록체인 기술은 애플리케이션부터 개발 방법론, 비즈니스 프로세스까지 새로 만들어야 하는 등 구현이 어렵고 복잡했지만 오라클은 DB 안에 블록체인 기술을 통합해 기업이 주류 애플리케이션 변경을 최소화하고 쉽게 구현할 수 있게 해 기업이 혁신적인 블록체인 기술로 데이터 암호화관리를 적용하고 무단 변경으로 부터 데이터를 보호한다”고 강조했다.
크리덴셜 악용·도용·DB 우회한 OS 수준 데이터 변경 원천 차단
오라클은 블록체인 기술로 불법 접근을 통한 기업의 계약서, 자산내역, 계정 명세서, 결제정보와 같은 필수 자산을 변경하거나 삭제하는 악의적 행위로부터 시스템을 보호하는데 초점을 둔다. 악의적인 사용자나 사용자를 사칭하거나 아이디 등 정상 크리덴셜(자격증명)을 도용해 시스템에 불법 접근해 데이터 수정이나 삭제, 허위 데이터 입력 시도로부터 시스템을 보호해 기존 DB·데이터 보안 방법을 크게 강화할 수 있다.
오라클은 암호화 보안(crypto-security) 데이터 보안 기술로 선보이는 4가지 기술을 필요에 따라 단계적으로 적용해 데이터 보호를 강화할 수 있도록 제안한다. 이들 기능은 오라클 DB에서 무료로 제공된다. 추가 라이선스나 소프트웨어를 구매하지 않고도 주요 애플리케이션에 새로운 테이블 유형을 적용할 수 있다.
첫 단계는 불변 테이블이다. 내부자의 자격 증명 악용 혹은 범죄자의 자격증명 도용으로 인한 불법적인 데이터 변경을 원천 방지한다. 불변 테이블에서 새로운 데이터를 입력하는 것은 가능하다. 하지만 모든 DB 이용자는, 심지어 DB 관리자(SYSDBA)라 할지라도 DB에 입력돼있는 기존 데이터를 변경·삭제할 수 없다. 불변 테이블의 정의를 변경하거나 갱신 가능한 테이블로 전환하는 것 역시 불가능하다.
사용 방법도 간단한다. 테이블을 생성을 위한 SQL 구문을 만들 때 ‘Immutable’만 추가하면 된다. 애플리케이션 관점에서 보면 DB 내의 다른 테이블과 동일하게 보인다. 관계형 데이터, JSON 문서의 저장 등 데이터 종류에 관계없이 인덱싱, 분할, 보기 기준으로 적용 등과 같은 기능을 활용할 수도 있다.
불변 테이블 기능은 4월부터 오라클 DB 19.11과 21.3버전에서 제공돼 무료로 쓸 수 있다.
변경·추가 구매 없이 블록체인 테이블 손쉽게 적용
블록체인 테이블은 다수의 암호화된 데이터 체이닝으로 행을 연결하는 기술로 해커의 불법적인 데이터 변경 시도를 제한한다. 특히 DB 소프트웨어를 우회해 운영체제(OS)의 크리덴셜을 도용해 공격하는 경우를 막을 수 있다. 마크 라크밀레비치 전략 총괄은 “DB를 우회하면 데이터 변경을 막을 수가 없다. 이러한 상황이 발생할 때 블록체인 테이블 사용하고 있으면 데이터 변경이 이뤄진다는 것을 탐지할 수 있다”며 “적용 방법은 불변 테이블과 같이 ‘블록체인 테이블’이라고만 정의하면 된다. 불변 테이블처럼 데이터 변경이 불가능하고, 별도의 칼럼에서 해시를 연산해 암호화 다이제스트를 만드는 기능을 추가로 제공한다”고 설명했다.
블록체인 테이블을 적용하면 체인의 첫 번째 행을 제외한 각 행은 암호 다이제스트 또는 해시를 통해 이전 행에 연결된다. 해시는 입력과 동시에 해당 행의 데이터와 체인의 이전 행에 반영된 해시 값을 기반으로 자동으로 계산되며, 각 행에 대한 타임 스탬프도 기록된다.
블록체인 테이블의 데이터를 수정할 경우 행의 해시 값이 변경되기 때문에 암호화 체인이 자동으로 끊어진다. 또한 ‘DBMS_BLOCKCHAIN_TABLE.VERIFY_ROWS’ 절차를 통해 입력 이후 블록체인 테이블에 추가적인 내용 수정이 없다는 것을 재차 확인할 수 있다.
블록체인 테이블은 오라클 컨버지드 DB 기능으로 올 1월에 선보였으며, 오라클 DB 19.10, 21.1버전에 포함돼 있다.
서명된 암호 다이제스트 외부에 분산 저장·관리, 데이터 변경 확인 가능
불변 또는 블록체인 테이블에서도 자격 증명을 도용하는 이용자가 데이터를 사용자(end user) 서명으로 잘못 입력할 수 있다. 이러한 취약점을 해결하기 위해 오라클은 사용자가 DB에 전달되지 않는 개인 키(key)를 통해서만 입력한 데이터에 암호화 방식으로 서명할 수 있도록 한다. 디지털 인증서에 따라 새로운 데이터가 입력되고 나면, DB가 최종 사용자의 서명을 승인한다. 해커가 유효한 자격증명을 도용해 데이터 입력을 시도하더라도, 개인 키가 없으면 서명이 일치하지 않으므로 이는 실패로 돌아가게 된다.
라크밀레비치 전략 총괄은 “오라클 DB에서 생성된 일련의 데이터 로우(row)에 대해 암호 다이제스트를 만들어 외부 스토리지 등에 저장하는 방식으로 분산 배포할 수 있다. 데이터 로우는 모두 체인으로 연결되고, 이를 위한 해시와 메타데이터를 결합한 것에 대해 암호화 서명한다. DB 암호화 서명하는 과정에서 사용자가 키를 갖고 있기 때문에 검증할 수 있는 것”이라며 “해시 자체에 프라이빗 정보가 없기 때문에 퍼블릭 블록체인·이메일·API를 통한 암호 다이제스트를 외부에 배포하는 방법은 모두 안전하다”고 말했다. 이어 “DB를 관리하고 책임지는 사람이 범죄자들로부터 압력을 받아 해시까지 전부 교체하라는 지시를 받은 경우에도 해당 데이터를 외부에 보관된 암호 다이제스트를 사용해 검증할 수 있기 때문에 데이터 변경 사실을 바로 알 수 있다”고 강조했다.
데이터 사이닝(서명) 통한 부인방지로 데이터 위변조 차단
이에 더해 사용자(end user)는 새롭게 입력된 데이터에 대한 오라클이 부서(countersign, 이미 다른 사람이 서명한 문서를 인정하는 서명을 하는 것)하도록 요청해 DB에 변경 사항이 반영되었는지 확인할 수도 있다. 또한 오라클은 암호화 영수증(crypto receipt) 을 사용자에게 제공해 미드티어에서 애플리케이션이 특정한 데이터를 필터링 및 입력하는 것을 방지한다.
라크밀레비치 전략 총괄은 이를 두고 “미드티어에 있는 애플리케이션이 해킹 공격을 받아 DB 자체에 데이터가 안들어가는 경우를 막을 수 있는 기능으로, 사용자는 본인이 서명을 한 뒤에 암호화 영수증이 안오는 경우 데이터가 제대로 저장되지 않다는 것을 알 수 있다”고 했다.
분산 암호 다이제스트와 데이터 사이닝은 암호화 체인을 통해 연결된 행에서도 정교한 사이버 범죄자 또는 당국은 전체 데이터베이스를 교체하는 방식의 대규모 은폐를 통해 데이터를 불법적으로 변경할 수 있는데, 바로 이같은 위험을 사전에 방지하기 위한 기능이다. 이러한 범죄를 사전에 막기 위해 오라클은 스키마 소유자가 주기적으로 블록체인 테이블의 암호 다이제스트에 서명·배포할 수 있도록 지원한다.
암호 다이제스트를 통해 테이블 내의 데이터를 유추하는 것은 불가능하지만, 승인된 사용자는 이를 통해 체인을 검증하고 새롭게 입력된 데이터가 있는지 확인할 수 있다. 암호 다이제스트는 독립적인 공개 거래소 혹은 이더리움과 같은 블록 체인에 게시하는 방식, 또는 이메일로 내보내거나 REST API를 통해서도 사용할 수 있다.
기존에 게시된 다이제스트를 현재 테이블 내용과 비교함으로써 은폐 시도를 간편하게 예방하는 것이 가능하다. 또한 여러 독립 서비스를 통해 공개적으로 배포하면 기관 또는 사이버 공격자가 개별 복사본 전체를 삭제하는 것을 방지할 수 있다.
오라클은 1월에 선보인 블록체인 테이블을 포함을 금융, 물류, 교육, 정부, 기업 등 다양한 산업군 주요 데이터에 이미 적용한 사례를 확보하고 있다.
라크밀레비치 전략 총괄은 “기업 데이터는 변경 훼손되면 재무 법적 측면 심각한 결과 초래한다”며 “애플리케이션을 사용하면서 아무 것도 바꾸지 않고 이같은 위험을 막을 수 있는 기술을 사용할 수 있는 것이 강점으로, 마지막 데이터 사이닝할 때만 약간의 변경이 필요할 뿐”이라고 강조했다.
블록체인 기술을 활용한 기능은 주요 DB 업계에서 최근 속속 구현하고 있다. 아마존웹서비스(AWS) QLDB, 알리바바 렛저(Ledger) DB가 나왔다. 오라클은 자사의 블록체인 DB 기술이 이같은 경쟁 제품 대비 앞서있다고 보고 있다.
오라클은 “모든 기능을 포괄하는 하나의 완전한 세트를 표준 SQL 데이터베이스에 통합하는 DB 공급업체는 아직까지 없기 때문에 주류 SQL DB에 블록체인 기능을 제공하는 것은 오라클 기술이 업계 최초라고 할 수 있다”며 “오라클은 블록체인 기반의 암호화 보안 데이터 관리를 사용자의 기존 애플리케이션, 트랜잭션, 분석, DB 백업·복제 도구 전반에 걸쳐 지원하므로, 모든 주류 애플리케이션에서 쉽게 블록체인을 채택 및 활용할 수 있다”고 밝혔다.
글. 바이라인네트워크
<이유지 기자>yjlee@byline.network