[Tech] IOTA vulnerability Response (번역)

며칠전 MIT Neha 교수팀에서 제기한 취약점에 대해 IOTA co-founder인 세르게이 이반젤로가 반박한 글이 다루어 졌습니다.

Coordinator를 포함해 내부 아키텍처 등에 대해 간접적이나마 상세한 설명이 포함되어 있어서 기술 이해 차원에서 대단히 유용한 글이라는 생각이 듭니다.

이 글의 맨 마지막 문단을 보면 의미심장한 표현이 있네요.

“독자들은 NehaNarula팀원들이 IOTA와 직접적인 경쟁을 벌이는 여러 프로젝트에 기득권을 가지고 있다는 것을 이해하는 것이 중요하다. 그 중 많은 부분이 IOTA의 종식으로 이익을 얻을 수 있습니다. 또한, 연구 팀과 관련된 다수의 사람들은 공개적으로 공개되기 전에 공개적으로 이 공개에 대해 알게 되었으며, IOTA소프트웨어가 업데이트되기도 전에 이러한 사실을 알게 되었다. 이를 통해 이 경우 책임 있는 공개 프로세스에 대한 우려를 제기할 수 있습니다.”

kikisunwoo@gmail.com

원문 링크 : https://medium.com/@mistywind/iota-cofounder-sergey-ivancheglo-aka-come-from-beyonds-responses-to-the-ongoing-fud-about-so-ea3afd51a79b

[번역]

IOTA Cofounder Sergey Ivancheglo 일명 ‘Come-from-Beyond ‘s Responses’는 실제 존재하지 않았던 IOTA 코드의 소위 ‘취약성’에 대한 진행중인 FUD에 대한 반응입니다.

 IOTA는 분산 원장 기술입니다. “분산”은 원장 데이터가 네트워크에 연결된 수많은 컴퓨터에 분산되어 있음을 의미합니다. 여러분은 아마도 “시스템은 그 부분들의 합보다 더 큽니다”라는 문구를 알고있을 것입니다. 함께 연결된 컴퓨터에서 나오는 시스템은 단일 컴퓨터에서 볼 수 없는 속성을 가지고 있습니다. 시스템으로서의 IOTA는 유용한 속성을 가지고 있습니다 : 몇몇 컴퓨터는 실패 할 수도 있지만 다른 컴퓨터는 문제없이 계속 작동합니다. IOTA는 여기에서 하나의 자기 치유 조직으로 행동합니다. 불행히도 자가 치유가 어느 시점에서 중단됩니다. 이는 IOTA의 경우 컴퓨터의 1/3 이상이 실패한 후에 발생합니다. 이것은 IOTA에만 국한된 것이 아니라 다른 분산 원장 기술 (예 : Bitcoin)에도 서비스 중단 기준이 있습니다.

요즘 IOTA는 여전히 작아서 다음과 같은 공격에 노출됩니다. 공격자를 컴퓨터로 IOTA에 가입 시키면 컴퓨터가 IOTA의 전체 중 1/3 이상을 차지하게되고 컴퓨터가 고장 나게되어 IOTA의 붕괴를 유발합니다. 이 공격을 막기 위해 우리는 코디네이터 (Coordinator)라는 컴퓨터 세트를 운영하고 있습니다. 적대적이지 않은 컴퓨터는 결함있는 컴퓨터를 탐지하기 위해 코디네이터에 의존합니다. 이 것에 의해  IOTA는 컴퓨터의 99 %가 실패하더라도 생존 할 수 있습니다.

IOTA는 오픈 소스 소프트웨어입니다.  오픈 소스 소프트웨어는 라이센스로 보호되고 라이센스로 허용되지 않는 일을하는 사람은 고소 될 수 있습니다. Cryptocoin 산업은 정부 규제에 매우 강하다는 사실이 입증됨에 따라이 산업에서 실행되는 대부분의 프로젝트가 일반 사람들이 사기를 당하지 않도록 하는 것으로 알려졌습니다. IOTA 팀은 IOTA를 기반으로하는 기술을 사용하려는 시도를 환영합니다. 이것은 인지도를 높이고 Tangle이 실제로 실행 가능한 기술임을 보여주기 때문에 IOTA에 도움이됩니다. 불행히도, IOTA 코드베이스의 복사본이 좋은 용도로 사용될 확률은 매우 낮습니다. 우리는 사람들을 망치지 않으면서 Tangle의 명성을 얻는 IOTA 클론을 볼 수 없습니다. 이것이 복사 방지 메커니즘이 처음부터 추가 된 이유입니다.

복제 방지가 어떻게 작동하는지 설명하기 위해 우리는 코디네이터의 존재에 대해 상기해야합니다. 코디네이터는 IOTA의 현 상황에 대한 불확실성이 발생할 경우 궁극적인 오라클 역할을합니다. 디지털 서명은 IOTA 네트워크의 모든 컴퓨터에서 확인됩니다. 서명이 확인 루틴을 통과하면 유효해 집니다. 서명이 실제로 유효한지 확인하기 위해 컴퓨터는 서명이 포함 된 트랜잭션이 중요 시점에 의해 참조 될 때까지 기다립니다. 이것은 복사 방지 메커니즘을 배치하기에 완벽한 장소입니다. 모든 사람들은 서명 확인 루틴이 동작하는 동안에도 일상적인 업데이트 마일스톤에서 실제 확인되는 것을 알 수 있습니다.  이 트릭은 TV에서 마술사가 수행하는 집중 트릭과 비슷합니다. 그것은 완벽하게 작동했습니다. Neha Narula의 팀은 트릭의 본질을 수없이 설명하면서도 속지 않았습니다.

이제 모든 서명을 코디네이터가 유효한 것으로 받아 들여지기 전에 코디네이터가 보증해야한다는 것을 알게되면 Curl-P 해싱 기능에 대해 해당 부분으로 이동할 수 있습니다. 이 기능이 왜 필요한지 알게 되었습니다.Trinary numeral  시스템은 현재 개발 단계에 있으며, 현재는 전문화된 프로세싱 유닛을 개발중인 인공 신경망 (Artificial Neural Networks)을 주로 사용하고 있습니다. 의심할 여지없이, 향후에는 trinary 계산을하는 CPU를 보게 될 것입니다. IOTA 블로그 포스트는 모든 관련 정보를 포함합니다. Curl-P의 창안자이기 때문에 나는 그 속성을 아주 잘 알고 있었습니다. 실전 충돌을 허용하기 위해 라운드 수를 변경했습니다. 코디네이터 IOTA의 보안은 Curl-P의 단방향성에 달려 있습니다. 코디네이터가 없으면 보안은 충돌 저항에 달려 있습니다. 이것은 매우 중요한 부분입니다. “Iota 개발 팀이 의도적으로 Iota 코드베이스에 결함을 도입한”이라는 귀하의 구절이 잘못되었음을 의미합니다. IOTA는 Curl-P의 충돌에 영향을받지 않으며 가짜로 만들어진 클론에 문제가 있는 것입니다.

“공개되지 않은 다른 고의적인 결함이 있습니까?”라는 질문에 대한 답변을 제공하는 것은 쉽지 않습니다. 나는 귀하의 선택에 동의하지 않습니다 ( “결함”). 당신이 내가하는 것과 같은 의미를 넣으면 나의 대답은 : IOTA는 알려진 결함이 없거나 없었습니다. 당신이 복사 방지를 의미한다면 나의 대답은 다음과 같습니다. “이 질문에 대답하는 것이 현명하지 않습니다. 왜냐하면 복사 방지가 완전히 제거되면 정직한 대답은 사기꾼들이 IOTA를 복제하는 것을 막을 수 있을지 확신할 수 없기 때문입니다.”

나는 당신이 Curl-P 충돌 상황을 오해했다고 생각합니다. 많은 사람들이 역시 그렇게 생각합니다. 의도적으로 추가된 기능이라는 식으로 문제를 부플린  Neha Narula 팀 블로그 포스트의 글은 문제가 있습니다.


Neha Narula의 팀은 IOTA 팀에 새로운 정보를 제공하지 않았습니다. 충돌에 대한 검색 속도를 높이기 위해 차등 암호 해독을 사용했습니다. Curl-P의 실용적인 충돌은 복사 방지 메커니즘의 필수적인 부분으로서의 설계 선택입니다. IOTA 서명 체계의 보안은 그렇게하려는 시도에도 불구하고 해지되지 않은 해쉬 함수의 단방향성에 의존한다. 제시된 공격은 “실용적”이라고 불리우는 것 같지만 일어날 수없는 시나리오 하에서 수행되었습니다.

“독자들은 Neha Narula팀원들이 IOTA와 직접적인 경쟁을 벌이는 여러 프로젝트에 기득권을 가지고 있다는 것을 이해하는 것이 중요하다. 그 중 많은 부분이 IOTA의 종식으로 이익을 얻을 수 있습니다. 또한, 연구 팀과 관련된 다수의 사람들은 공개적으로 공개되기 전에 공개적으로 이 공개에 대해 알게 되었으며, IOTA소프트웨어가 업데이트되기도 전에 이러한 사실을 알게 되었다. 이를 통해 이 경우 책임 있는 공개 프로세스에 대한 우려를 제기할 수 있습니다.”

[Tech] IOTA vulnerability Response (번역)”에 대한 1개의 생각

  1. 안녕하세요. 감명깊게 블로그를 보았습니다.
    한 가지 궁금한 점이 있습니다.
    해커들이 취약점 같은거를 쓰는 페이지에 iota에 대한 글이 있는데요.
    거기서 이런 부분이 있습니다.
    [Iota를 더 자세히 조사하면서 배운 첫 번째 것 중 하나는 3 자리, -1, 0 및 1의 숫자 체계 인 균형있는 삼항을 사용한다는 것입니다 . 저자는 왜이 결정을 내린 지에 대한 여러 가지 주장을 가지고 있지만 두 가지 주요 사항 :
    삼원 프로세서는 이론적으로 이진 프로세서보다 효율적입니다.
    특정 수학적 구조는 균형이 잡힌 삼원 항으로보다 깨끗하게 표현됩니다.
    불행히도, 이것들은 실제 시스템에서는 관련이 없습니다. Iota는 필요에 따라 기존 하드웨어 (바이너리 전용 하드웨어)에서 실행되도록 설계되었습니다.이 하드웨어는 사용하는 통신 네트워크와 마찬가지로 바이너리입니다. 결과적으로 모든 내부 3 진 표기법은 2 진수로 캡슐화되어야하며 이로 인해 상당한 저장 및 계산 오버 헤드가 발생합니다. 수학은 개별 ‘트릿’에서 수행되거나 바이너리 랩핑 된 3 진 인코딩에서 기계의 고유 번호 표현으로 처음 변환 된 다음 나중에 다시 수행해야합니다. 두 경우 모두 큰 계산 오버 헤드가 부과됩니다.]

    이 부분을 보면 iota가 3진 표기법을 쓰는게 문제처럼 느껴지는데요… 이렇게 3진 표기법을 씀으로써 하드웨어에서 바이너리를 사용할 시 저장 계산 문제가 있을 것 같은데 이에 대한 견해 부탁드립니다. (메일로 답변주셔도 좋을 것 같습니다.)
    감사합니다.

답글 남기기

이메일은 공개되지 않습니다.