Cortex

AI기반 블록체인 서비스 플랫폼

home link https://www.cortexlabs.ai/

reference material

Community

Market
110.86 KRW
Exchanges that listed the coin
5
Symbol
CTXC
Dapp
To be released
Project introduction

코르텍스는 최초로 인공지능을 블록체인에 정용한 프로그래밍 암호화폐이다. 코르텍스는 인공지능 모델을 스마트 계약에 포함시켜 블록체인에서 인공지능 추론 합의 기능을 사용할 수 있게 하는 독립 실행형 오픈 블록체인이다.

Executives and partners

Ziqi Chen

CEO

Jia Tian

CTO

Amy Chen

COO

Tsinghua University

Bitmain

Huobi

Medium

[Cortex Updates] 2020–52호

Cortex에 관심 가져주시는 여러분, 안녕하세요:)2020년 5월 22일 금요일Cortex Korea가 전하는 Project Updates,지금 시작합니다 ‘u’개발 진행 현황1. MRT &CVM 개발OpenCL in FPGA 모델 작업 추진중이고 현재 12개의 모델을 지원 및 실행 가능하다.CVM-Runtime FPGA 운영자 성능이 2배 증가하였다.Z3 Prover의 모든 운영자는 검증 세트의 값 범위에서 검증되었으며 코드는 결정적 실행 프로그램이다.Formalization 코드 버전은 지속적으로 최적화되고 14개의 연산자로 업데이트하여 행렬 곱셈 및 반복 연산자를 추가하였다.2. Cortex 전체 노드파일 시스템 코드 구조를 최적화하고 Torrent FS 프로젝트를 분리하고 파일 시징 전략을 조정하였다,전체 노드 remote 마이닝 최적화 및 거래 색인 구조(Index structure) 추가하였다.프로젝트 단위 테스트 코드의 로직을 수정하고 현재 40%의 패키지를 완료하였다.chain-ai-demo 프로젝트의 진행을 지속적으로 추진 중이고 현재 실시간 리턴 결과, 이미지 업로드 및 체인 스마트 컨트랙트 추론과 같은 기본 프로세스 구현하였다. 코드의 견고성과 도킹 클라이언트의 실시간 이미지 인식 기능을 테스트하고 있다.최신 버전의 CVM-Runtime을 업데이트하고 메인넷 및 테스트넷의 동기화를 테스트하였다.3. DeFi 개발이더리움 메인넷과 Cortex 메인넷에 Cortex AI DeFi의 통합 작업을 완료하였다.Cortex AI DeFi의 실행 상태를 모니터링하고 최적화 하였다.Cortex 트스트넷에서 사용 가능한 계약을 정리 및 유지하였다.운영 진행 현황Cortex 포럼 아키텍처 재구성;Cortex 기술 문서 편집;Cortex 굿즈 디자인;Cortex 새로운 열 예비 프레임 워크 토론;DApp 개발자 팀 오프라인 회의;현 단계 주로 DeFi 관련 내용 번역 및 컨텐츠 작성;[Cortex Updates] 2020–52호 was originally published in Cortex Labs on Medium, where people are continuing the conversation by highlighting and responding to this story.

Cortex

20. 05. 22

Cortex Project Updates #49

Technical Updates 🤖MRT & CVM R&D1. Implemented all operators of OpenCL in FPGA and successfully ran 8 models on FPGA hardware; all operators have passed the unit test.2. For MRT, added pre-quantization model, including but not limited to SSD, Tensorflow Lite model support.3. For MRT, fixed clip operator’s quantization precision error.4. For Z3 Prover, continued to verify the CVM-Runtime operator; currently, it has verified 26 operators, including the newly added matrix product operator.5. Continued to advance the CVM-Runtime Formalization code; at present, 11 operators have been rewritten and the code readability, robustness and reusability have been continuously verified.Cortex Full Node Development1. Database releaser code optimization; some coroutine logic optimization.2. Optimized full node log output and updated TSDB source.3. Adjusted the main code structure and API of the file system.4. Developed chain-ai-demo, fully optimizing the user’s process of using Cortex full nodes.DeFi Development1. Developed more callable interfaces for DeFi contracts, including the real-time balance and balance change / growth of each project in the user portfolio; real-time parameters of each project.2. Developed cross-chain Oracle for DeFi contracts, also including the link port for AI inference results for cross-chain Oracle.3. Improved the two-way cross-chain test between the DeFi contract and the AI ​​Portfolio model.Community Updates 👨‍👩‍👦‍👦The WoolyPooly mining pool has added PPLNS mode and SOLO mode, and the computing power has rapidly improved; now it has jumped to become the third largest mining pool of the CTXC network.Cortex technical documentation editing.Cortex-related design orders.Preliminary framework discussion for Cortex’s new column.Offline meeting with DApp developer teams to discuss cooperation.Translation, original community introductory content, mainly in the field of DeFi.About Cortex 😇Cortex is the only public blockchain that allows the execution of nontrivial AI algorithms on the blockchain. MainNet has launched. Go build!TestNet| Block Explorer — Cerebro| Mining Pool | Remix Editor | Software |Social Media| Website | GitHub | Twitter | Facebook | Reddit | Kakao | Mail |Telegram| English | Korean | Chinese |https://medium.com/media/4aae97568ec36a07bf0d6a258688afcc/hrefCortex Project Updates #49 was originally published in Cortex Labs on Medium, where people are continuing the conversation by highlighting and responding to this story.

Cortex

20. 05. 11

DeFi科普系列之(三)深入理解Synthetix如何...

原文链接:https://defiweekly.substack.com/p/defi-audit-1-synthetix原文作者:Kerman kohli翻译&校对:Cortex(CTXC)运营团队前段时间,我在推特上进行过一场投票,简单调研了一下用户希望了解的DeFi项目。结果有相当多的用户表示希望了解Synthetix这个项目。在开始详细介绍Synthetix之前,有必要花点时间来了解一下它的工作方式和主要功能。﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌基本原理Synthetix允许用户通过系统自己的原生代币SNX作为抵押品来生成任何资产(包括货币、黄金、股票等)。这样做的一大好处是,根本无需把(包括货币、黄金、股票在内的这些链下资产引入链上,而只需要处理这些合成的资产。从这个角度来说,MakerDAO其实也是一种合成资产协议,其中ETH是基础抵押品,DAI是生成的的合成美元。如果用作抵押品来生成合成资产的SNX的价值下降,则掌握铸币权的人(一般指抵押SNX生成合成资产的用户)必须补充更多的SNX才能赎回原来抵押的SNX。这和MakerDAO的工作原理类似,只是Maker还会处罚你10%的ETH抵押品。把上面说的整理一下,可以举一个简单的例子来说明:1. 假设我拥有750个SNX代币(当时的价格为1美元)2. 我存入750个SNX代币来铸造产生价值100美元的合成美元(系统需要750%抵押率)3. 如果某个时间SNX的价值跌至0.9美元,此时我要想赎回SNX,则需要再存入0.9美元的sUSD才能平仓。注:根据系统750%的抵押率,其750个SNX代币就能铸造价值100美元的sUSD看到现在好像没什么问题,不过接下来的问题是,为什么会有人首先购买并持有SNX代币?它到底有什么作用?下面我会解释:• 基于通胀的Staking奖励通过铸造合成资产,持有SNX的用户实际上成了此协议的股东。因此,这些人有资格获得更多新增的SNX代币。这些新增代币是基于协议中的通胀设计增发的。• 交易所交易费每次有人交易这些基于SNX抵押发行的合成资产时,必须要支付一定的手续费(0.3%)。抵押SNX生成合成资产的人可瓜分这些手续费。• Uniswap LP奖励严格来说,这也是第一点中的一部分,但在这里需要注意的是,凡是抵押SNX生成sETH的人,并且为Uniswap上的sETH/ETH流动资金池提供流动性的用户,还可以获得额外的奖励。这一点非常重要,因为它可以维持sETH和ETH之间的价格锚定,这样就为Synthetix中的所有合成资产之间建立了一个流动通道。最后,Synthetix工作原理的最后一部分是要理解合成一种资产的成本。在MakerDAO中,有一个稳定币的概念,它是由MKR持有者不定期设定的。而Synthetix有自己的特点,那就是每个用户实际上是在与其他交易者博弈竞争。注:原文作者出现计算错误,其750个SNX代币就能铸造100美元的sUSD,因此本文按照750SNX进行举例说明。1. John使用750 SNX铸造100 sUSD。2. Jill也使用750 SNX铸造100 sUSD3. 该网络现在有200 sUSD的债务,其中John和Jill分别占债务的50%4. John决定赌一把,用他抵押合成的sUSD购买了100 sLINK(当时每个sLINK价值1美元),并为此支付交易费。(John和Synthetix网络的债务变成了100 sLink,此时仍为100美元)5. 现在sLINK的价格上涨到了4美元一个,因此John的100 sLINK代表价值$400。而Jill的手里的价值仍为$100(100 sUSD)6. 该网络的债务总额现在总计为500美元。由于John和Jill分别承担债务的50%,因此John欠Synthetix网络250美元的债务,Jill同样也欠Synthetix网络250美元的债务。7. John和Jill之间的区别是,John从价格上涨中赚了300美元,因此他赚了150美元(100美元+300美元-250美元),而Jill则下跌到250美元。这样看,Synthetix的Staking奖励其实会产生一定误导,因为它实际上只是激励人们不只要承担债务累积风险,同时还要积极开启交易头寸。正所谓,这世上没有免费的午餐。注意:你可以在不持有SNX或质押权益(Staking)的情况下交易合成资产。接下来,让我们来看看Synthetix在各种状况下的表现:所有权架构和管理密钥Synthetix是迄今为止我遇到过最复杂的DeFi架构之一,从头至尾它大量使用Proxies(直译为“代理”)。Proxies是某人指向一个地址,但从另一个合约执行代码的一种方式。可以将其视为能替其他人执行代码的一个“代理人”。以下是Synthetix的智能合约和所有权架构的高级架构概述。接下来将是又臭又长的内容阐述,不过别担心,我尽量把它们掰开揉碎了逐一进行说明。首先,与Synthetix系统的每次交互都是调用Proxy.sol这个合约,合约地址为:0xC011A72400E58ecD99Ee497CF89E3775d4bd732F。这个合约的两个关键属性是targetAddress和owner。owner就是简单字面意思:所有者。但是target实质上是把所有调用都转发到智能合约。在这个例子中,target就是Synthetix.sol,您可以将其视为整个系统的核心。owner(可以随意切换Synthetix合约的整体部署,使它们按照自己的意愿做任何事情。这并不是什么新鲜事物,但我认为系统整体部署不能随意更改。一些架构通过使用特定的代理向用户来保证哪些可以更改哪些不可以更改。Synthetix.sol(0x8454190C164e52664Af2c9C24ab58c4e14D6bbE4)是一个大脑,它负责协调系统内部的所有交互,它有以下几个职责:- 跟踪所有合成资产代币余额- 列出系统内所有有效的合成资产地址- 获取生态系统中任何合约地址的解析器本合约和proxy.sol合约的owner相同,但是它有一个特殊的变量叫做selfDestructBeneficiary。当前部署在:0xde910777c787903f78c89e7a0bf7f4c435cbb1fe合约里。但有一件事特别奇怪,在收款人收到所有资产之前还有28天的时间延迟期。而且,前面这个0xde9只是一个普通的以太坊地址,没有多重签名,基本上可以认为是某个人的钱包。我认为,在这里最重要的问题就是“谁是Owner?”它到底是如何运作的?Owner的地址是:0xeb3107117fead7de89cd14d463d340a2e6917769,它是另一个Proxy合约。由于这层代理合约的原因,我无法直接在Etherscan上直接查看,所以我编写了一些代码来直接获取结果。结果如下:好消息是,需要4个地址才可以对主合约进行更改。坏消息是,没有时间锁,所以如果这四个人都做了签名,他们就可以立即进行更改。代码质量结构我个人很喜欢类似在链上注册地址这种小操作,但我非常不喜欢复杂的升级控制代理引入到智能合约系统中。Synthetix的整个架构严重依赖于代理。从集成的角度来看,这意味着你在一个区块上和Synthetix进行的交互,可能和下一个区块上与Synthetix进行的交互,是完全不同的(因为他们在在这期间进行了一次升级)。其他协议可能已经实现了控制升级,因为你使用的合约永远不会更改,有更改也只会是其中的一小部分,所以你会知道系统的哪些特定部分可以升级,哪些是不会更改升级的。这时,可以实现代码高度模块化,管理员可以替换系统中的不同模块,而不是替换整个系统。但使用代理体系架构可以通过完全的控制权使你实现缓慢决策,快速部署的效果。甚至代币也有自己的代理,它们被部署在后面。我很理解Synthetix想要完整迭代升级的意图,但是如果每一个合约都有一个代理,那在我看来可能会有人过度使用权利。将来,我还会介绍一些其他的体系架构,这些架构可通过一个更好、更简单、无代理的结构同样实现那些升级的好处。文档Synthetix的文档给我留下了深刻的印象。他们的图表展示了集成架构,便于访问合约地址和很多 DeFi团队通常不会发现的东西。在撰写本指南时,他们的文档能够帮助我理解他们的系统是如何工作的。单元测试仔细阅读他们的代码的话,可以发现他们确实进行了测试。但是有一点很值得注意,那就是他们采用的测试方式是集成测试,而不是单元测试。这两个的区别在于,他们的测试检查可以确保一切正常,但并不能保障系统可以针对恶意或意外的输入进行防御。Synthetix可以对主要部署的合约进行审计,但我个人认为,审计公司效率最高也只能达到80%。因此我认为可能还是会存在部分漏洞。你可以给我看一个智能合约的漏洞,我就能告诉你是哪家审计公司做的审计。综合评价这部分我有点自以为是。但我发现Synthetix的开发工具基本还算不错。他们的Javascript库依赖于即将更新的JSON ABI文件,而不是使用提供集成保证的Typescript类型。Set,dYdX和0x都是使用Typescript类型并受益匪浅。他们的Javascript库没有进行大范围测试来确保任何ABI更改都不会破坏整个系统。这不是什么大不了的事情,但它告诉我的更多信息是,团队对开发人员经验的关心程度,以及将智能合约集成到外部系统中的难易程度。流动性分析当前Uniswap最大的两个流动性池是ETH/sETH和ETH/SNX。ETH/sETH的规模主要是来自于Synthetix的通胀设计,它奖励给在Uniswap上提供流动性的抵押用户更多的SNX代币。然而,我从这一点意识到,长远来看,如果他们不能攻克真正困难的挑战,Synthetix的模型并不是可持续的。1.如前所述,合成资产是一种有担保的抵押品。并且他们声称没有清算机制,只有需要偿还的债务。该系统面临潜在的抵押担保不足问题(尽管抵押率目前为750%,离资不抵债的安全空间相当大),但仍然有待观察。2.合成资产的持有者所持有的资产并不能完全用稳定的抵押品赎回。如果SNX的价格迅速下跌,那么许多头寸将开始变得抵押不足,即使可以赎回SNX,也将面临挤兑的情况。由于采取了Staking的激励措施,只有20%的SNX供应没有主动抵押,这就引发了一个问题:如果大部分的真实的、健康的流动性都被吸走了,那么如何从其他地方再产生?请记住,你需要激励机制是为了对SNX的健康需求,而不是为了让合成资产拥有真正价值。我和很多人一样都讨厌CoinMarketCap,即便如此,我还是展示一下CMC提供的以下关于Synthetix在Uniswap之外的流动性数据。我想表达的不是Synthetix注定要失败,而是它要想成为一个成功的合成资产协议:还需要一些额外的东西:1.只有当SNX在 Uniswap或激励机制之外的其他市场中价格提升才能获得流动性;2.只有当SNX能够产生足够多交易费,多到足以让人们引起关注时,它才能获得价值/需求(到目前为止,它已经赚得了700万美元,这意味有一些机会);3.只有当人们打开合成资产头寸,进行交易,并实际将合成资产用于预期用途时,才会产生交易费;4.只有当人们持有拥有某种合成资产或者认为某种合成资产具有价值的时候,才会将其视为MoE(Medium of Exchange,交易媒介)。5.在SNX获得流动性之前,人们不会有信心持有合成资产,其他生态系统参与者也不会在其他交易所上市。这本质上是一个棘手的问题,需要两者以上才能获得成功。Maker使用ETH作为整个系统的基础抵押品,避免了这一系列问题。Synthetix正在通过引入ETH抵押品来获取解决方案,但这一系列问题仍然始终存在,即代币持有者想要的SNX数量要比ETH多,以确保SNX变得更像有价值的代币。Oracle(预言机)分析在Synthetix的早期,一个预言机出现过故障,有人用它造了3700万个SNX。人们的信心遭到重创,这是对人们信心的一次大动摇。不过团队果断地改成使用Chainlink预言机。https://www.theblockcrypto.com/linked/28748/synthetix-suffers-oracle-attack-potentially-looting-37-million-synthetic-ether我也想对Chainlink进行分析,但这超出了本文的范围。该团队确实运行了一些自己的Oracle,可以在此处直接查看这些Oracle:https://developer.synthetix.io/tokens/从本质上讲,这只是一个将价格发布到智能合约并进行更新的地址。我不确定opsec是否会出现在这些文件上,但我可以确定它可以连接到钱包。在Synthetix的例子中,内部有多个连接到Internet的私钥,其实这是一个非常危险的行为。我曾经在前公司担任开发人员的时候遇到过这种问题,但不幸的是,目前没有解决方案。我向团队提出的唯一建议是,放慢脚步,并且研发一个更强大的opsec程序。否则只能在网络中添加另外10个中心化的预言机喂价,然后慢慢变成一个中心化交易所并乐在其中。该团队确实有一个积极的路线图并努力实现。希望他们能循序渐进,专注于基础架构的建设。保险流动性目前,Nexus Mutual和Opyn保险业务都不涵盖Synthetix的合约。如果在出现违约的情况下,通胀奖励的一部分可以用来为Synthetix用户提供保险来进一步产生流动性,还是很不错的。这可能会让用户对持有SNX或合成资产更有信心。结尾到这,我对Synthetix深入研究基本就结束了。总体而言,Synthetix显然是DeFi领域的先驱,它采用了一些非常独特且有效的策略来确保代币能够在获取价值的同时成为生态系统的组成部分。而未来面临的主要挑战是,该系统能否成功激励人们创建想要持有的合成资产、用于商业的合成资产或其他非投机用途的合成资产。到目前为止,这个团队已经做出了一些令人印象深刻的转变(从Havven)成为现在的经济模型。我会持续关注这个项目,尽管我想说他们今后面临的挑战并不容易解决。这篇评测我最喜欢的部分就是看到了大量来自第三方的文档和教程来帮助我理解整个系统是如何工作和运行的。假设他们能解决其他大部分的问题,我相信其他开发者们也会感激这点。官方网站https://www.cortexlabs.ai/官方论坛https://www.cortexlabs.ai/forum/商务合作support@cortexlabs.ai社区链接Website: https://www.cortexlabs.ai/Twitter: https://twitter.com/CTXCBlockchainFacebook: https://www.facebook.com/cortexlabs/Reddit: https://www.reddit.com/r/Cortex_Official/Medium: https://medium.com/cortexlabs/Telegram: https://t.me/CortexOfficialENChinese Telegram: https://t.me/CortexOfficalCNDeFi科普系列之(三)深入理解Synthetix如何玩转合成资产 was originally published in Cortex Labs on Medium, where people are continuing the conversation by highlighting and responding to this story.

Cortex

20. 05. 09

[Cortex Updates] 2020–51호

Cortex에 관심 가져주시는 여러분, 안녕하세요:)2020년 5월 8일 금요일Cortex Korea가 전하는 Project Updates,지금 시작합니다 ‘u’개발 진행 현황1. MRT &CVM 개발OpenCL in FPGA의 모든 연산자를 구현하고 FPGA 하드웨어에서 8개의 모델을 실행했으며 모든 연산자 단일 테스트를 통과하였다.MRT에 사전 정량화 모델 추가하였다(SSD, tf lite 모델 지원 국한되지 않음).MRT에 clip 연산자 양자화 정밀도(quantize precision) 오류를 수정하였다.Z3 Prover에 CVM-Runtime 연산자를 검증하고 있으며, 현재 행렬 곱샘(matrix multiplication) 연산자를 추가 밒 26개의operator 연산자를 확인하였다.CVM-Runtime Formalization 11개의 연산자 재작성 및 코드의 가독성, 견고성 및 재사용성을 지속적으로 검증하였다.2. Cortex 전체 노드데이터베이스 릴리스 코드 및 일부 코루틴 로직을 최적화하였다.전체 노드 로그 출력 최적화 및 TSDB 소스 업데이트하였다.chain-ai-demo를 개발하였다. 사용자 만족도 높이기 위해 Cortex 전체 노드 프로세스를 최적화하였다.3. DeFi 개발사용자가 배치 한 각 품목의 실시간 잔액, 잔액 변경, 성장현황 및 실시간 매개 변수를 포함하여 DeFi 계약을 위해 더 공격적이고 호출 가능한 인터페이스를 연구 및 개발중이다.DeFi 계약에 크로스 체인 오라클 개발중이다(크로스 체인 Oracle에 사용할 AI 추론 결과 업링크 포트 포함)DeFi 계약과 AI 포트폴리오 모델 간의 양방향 교차 체인 테스트 개선하였다.​운영 진행 현황Woollypooly 개발자 마이닝 풀에 PPLNS 모드와 SOLO 모드가 추가되었으며 컴퓨팅 성능이 빠르게 향상되었다. 이는 CTXC 네트워크에서 세 번째로 큰 마이닝 풀이 되었다.Cortex 기술 문서 편집하였다.Cortex 굿즈 디자인 진행하였다.Cortex 컬럼 프레임 워크에 대해 토론을 진행하였다.DApp 개발자 팀 오프라인 회의를 진행하였다.현 단계 주로 DeFi 분야에 집중하여 번역 및 컨텐츠를 작성하였다.[Cortex Updates] 2020–51호 was originally published in Cortex Labs on Medium, where people are continuing the conversation by highlighting and responding to this story.

Cortex

20. 05. 08

Cortex Project Updates #48

Technical Updates 🤖MRT & CVM Development1. Added support for OPENCL device in CVM-Runtime to further support FPGA devices;2. Implemented all operators of OpenCL MNIST, finished running through the software and hardware simulation, and passed the test on FPGA;3. Migrated the MRT project to CVM-Runtime, completely extracted TVM and NNVM dependencies, increased the ease of MRT deployment and code robustness;4. Added graph model support for CVM-Runtime, added graph compilation, infer shape processing, and the corresponding C++ and python API. Fully connected with the existing MRT version;5. For CVM-Runtime, fixed some existing bugs and continued to optimize the code structure and logic;6. For Z3 Prover, continued to verify the CVM Runtime operator (so far have verfied 25 operators);7. Continued to advance the CVM-Runtime Formalization code. Currently, 8 operators have been rewritten and certain inaccurate and incorrect descriptions in the PDF version have been fixed.Cortex Full Node Development1. Researched zokrates and tried off-chain calculation process with on-chain verification;2. Added dynamic state snapshot mechanism, added p2p test protocol for storage, upgraded to test torrent memory overflow problem and optimized code style;3. For Torrent FS, modified seeding tools, increased stable file synchronization whitelist, and streamlined transaction storage structure;4. Fork maintained the color and golang-set open source projects that full nodes depend on and repaired full node mining (command line, running and compiling).DeFi Development1. Optimized the ABI calling interface of contracts to simplify the code and the development process;2. Deployed a new test contract on the Cortex Dolores test network to simulate on-chain AI in new application scenarios;3. Further tested the Cortex AI DeFi contract to avoid potential attacks and security risks as much as possible. Implemented the DeFi contract query interface of basic quantity such as the profit situation and the profit rate.Community Updates 👨‍👩‍👦‍👦The community development team lolminer updated the mining software to support CTXC, which is compatible with A and N cards with more than 8G memory, allowing more GPUs to be added to the CTXC PoW ecosystem;New community pools are added. An unknown large computing power mining pool joined the CTXC PoW ecosystem, causing the overall network computing power to increase by 40% to 50%;Well-known mining revenue statistics sites MinerStat and WhatToMine successively included CTXC mining information;Coordination with blockchain media;Edited Cortex technical documentation.About Cortex 😇Cortex is the only public blockchain that allows the execution of nontrivial AI algorithms on the blockchain. MainNet has launched. Go build!TestNet| Block Explorer — Cerebro| Mining Pool | Remix Editor | Software |Social Media| Website | GitHub | Twitter | Facebook | Reddit | Kakao | Mail |Telegram| English | Korean | Chinese |https://medium.com/media/4aae97568ec36a07bf0d6a258688afcc/hrefCortex Project Updates #48 was originally published in Cortex Labs on Medium, where people are continuing the conversation by highlighting and responding to this story.

Cortex

20. 04. 29

[Cortex Updates] 2020–50호

Cortex에 관심 가져주시는 여러분, 안녕하세요:)2020년 4월 25일 토요일Cortex Korea가 전하는 Project Updates,지금 시작합니다 ‘u’개발 진행 현황1. MRT &CVM 개발CVM-Runtime에서 OPENCL device 추가로 FPGA 장치에 대한 지원을 진일보로 추가하였다.OpenCL MNIST의 모든 운영자를 실현하고 소프트웨어 및 하드웨어 시뮬레이션을 수행하여 FPGA에서 테스트를 통과하였다.MRT 프로젝트를 CVM-Runtime로 이식하고 TVM 및 NNVM 종속성을 완전히 추출하고 MRT 구축의 용이성과 코드 견고성을 제고하였다.CVM-Runtime에 그래프 모델 지원 및 그래프 컴파일, infer shape 처리 및 해당 c++,python API를 추가하였다.CVM-Runtime에 있는 기존 버그를 수정하고 코드 구조와 로직을 지속적으로 최적화하였다.Z3 prover에 CVM-Runtime 산자를 검증하였다. 현재 25개의 operator 검증 완료되었다.CVM-Runtime Formalization 코드 계속 수정 중이고 현재 8개의 산자를 재작성 완료되었고 PDF 버전의 일부 부정확하고 잘못되 설명을 수정하였다.2. Cortex 전체 노드Zokrate를 조사하고 오프 체인 계산 프로세스의 온 체인 검증을 시도하였다.동적 state snapshot 메커니즘 추가, 스토리지 p2p 테스트 프로토콜 추가, Torrent 메모리 오버 플로우 문제 테스트 및 코드를 최적화하였다.Torrent FS에 seeding tools 수정, 안정적인 파일 화이트리스트 동기화 추가 및 트랜잭션 저장 구조 단순화하였다.Fork 모든 노드가 의존하는 color 및 golang-set 오픈 소스 프로젝트를 유지하고 전체 노드 마이닝 (명령 줄, 실행 및 컴파일)을 복구하였다.3. DeFi 개발계약의 ABI 호출 인터페이스를 최적화하여 코드를 단순화 및 개발 프로세스를 압축하였다..새로운 애플리케이션 시나리오에서 온 체인 AI 실습을 위해 Cortex Dolores 테스트 넷에 새로운 테스트 계약을 배포하였다.잠재적인 공격 위험과 보안 위험을 최대한 피하기 위해 Cortex AI DeFi 계약을 테스트하여 더 높은 적용 범위를 확보하였다. 이익 상황 및 이익률과 같은 기본 수량의 DeFi 계약 조회 인터페이스를 실현하였다.​운영 진행 현황커뮤니티 개발팀 lol Miner는 CTXC를 지원을 위해 마이닝 소프트웨어를 업데이트했으며 8G 이상의 메모리가 있는 A카드 및 N 카드와 호환되므로 CTXC PoW 에코 시스템에 더 많은 GPU를 추가 가능하도록 하였다.커뮤니티에 새로운 마이닝 풀 추가되었다. 알 수 없는 빅 컴퓨팅 파월 마이닝 풀이 CTXC PoW 생태계에 합류하여 전체 네트워크 컴퓨팅 파워가 40%~50% 향상되었다.마이닝 수익 통계 사이트 MinerStart, WhatToMine에 CTXC 마이닝 정보 수록되었다.DApp 개발팀과 오프라인 미팅을 진행하였다,.DeFi 관련 문장 번역을 진행하였다.블록체인 분야의 매체와 협력하였다.Cortex 기술 문서 편집하였다.[Cortex Updates] 2020–50호 was originally published in Cortex Labs on Medium, where people are continuing the conversation by highlighting and responding to this story.

Cortex

20. 04. 25

디파이 분석 #1 : Synthetix(신테틱스)

디파이 분석 #1 : Synthetix(신테틱스)작가: Kerman Kohli번역: Cortex labs원문: https://defiweekly.substack.com/p/defi-audit-1-synthetix이번 조사를 통해 많은 사람들이 Synthetix에 대해 많은 관심을 가지는 것을 알게 되었습니다. 이번 문장은 Synthetix에 대해 자세한 분석을 진행할 것입니다.중요한 내용에 들어가기 전에 Synthetix가 실제로 어떻게 작동하는지에 대해 간단하게 설명하겠습니다.​기초Synthetix를 사용하면 기본 토큰 SNX를 담보로 사용하여 모든 자산(통화, 금, 주식 등)을 생성 할 수 있습니다. 이것의 큰 장점은 자산을 온 체인으로 가져 오는 과정을 거치지 않고 표시 형식을 처리 할 수 ​​있다는 것입니다. MakerDAO는 합성 자산 프로토콜이며, 그 중 ETH는 기초 담보물, 다이(DAI)는 달러와 연동된 스테이블 코인으로 사용됩니다.합성자산인 SNX의 가치가 떨어지면 더 많은 SNX를 회수하기 위해 더 많은 SNX를 추가해야 합니다. 이는 Maker DAO가 작동하는 방식과 유사하며 MakerDAO 같은 경우는 ETH 담보의 10%를 잃게 됩니다.여기서 간단한 예시를 제시하겠습니다.​1. 저는 750개의 SNX 토큰을 가진 사용자로 가정하겠습니다(가격 $1.00).2. 750개의 SNX 토큰을 입금하여 $10의 합성 미국 달러를 생성합니다(750%의 담보 비율 필요).3. SNX의 가치가 $0.90으로 떨어지고 SNX를 돌려받고 싶다면 $0.90 달러를 입금해야 합니다.​이제 다음 질문은 왜 SNX 토큰을 구매하여 보유하느냐 하는 것입니다. 다음 아래에서 설명하겠습니다.​인플레이션 기반 스테이킹 보상(Inflation based staking rewards):SNX 자산을 발행함으로써 효과적으로 프로토콜의 스테이커가 됩니다. 이로 인해 프로토콜의 인플레이션에서 나오는 SNX 토큰을 더 많이 획득할 수 있습니다.거래소 수수료(Exchange trading feeds):SNX 기반 인 자산을 이전할 때마다 수수료를 지불해야 합니다. 이러한 수수료의 총액은 합의의 스테이터가 청구할 수 있습니다.유니스왑 LP 보상(Uniswap LP rewards):이것은 첫 번째 요점의 일부지만 여기에 주의할 부분이 있습니다. 유니스왑의 SETH 및 ETH 유동성 풀에 유동성을 제공하고, SNX에 채굴하는 사람은 추가 보상을 받을 수 있습니다. 이는 SETH와 ETH 간의 가격 패리티를 유지하여 모든 Synthetix의 ‘synths(합성 자산)’ 간의 유동성에 매우 중요합니다.​Synthetix 작동 방식을 이해하기 위해 자산 생성 비용을 이해해야 합니다. MakerDAO에서는 MKR 보유자가 비정기적으로 설정한 안정성 수수료 개념이 있습니다. Synthetix에는 실제로 다른 거래자들과 경쟁하고 있는 그들만의 스핀을 가지고 있습니다.1. John은 7500 SNX를 사용하여 100sUSD를 발행합니다.2. Jill은 또한 7500 SNX를 사용하여 100 sUSD를 발행합니다.3. 네트워크는 현재 200 sUSD 상당의 부채를 보유하고 있으며 John과 Jill은 각각 부채의 50%를 차지합니다.4. John은 degen trader으로 결정하고 sUSD (거래 수수료를 지불 할)를 사용하여 100 개의 sLINK (각각 $1)를 구매합니다.5. sLINK의 가격은 실제로 각각 $4의 가치로 증가하여 John의 100 sLINK는 $400의 가치를 나타내고 Jill의 위치는 여전히 $100(sUSD)입니다6. 네트워크의 총 부채는 이제 총 $ 500의 가치가 있습니다. John과 Jill은 각각 부채의 50%를 담당하므로 John은 네트워크에 250 달러를 빚지고 Jill은 네트워크에 250 달러를 빚졌습니다.7. John과 Jill의 차이점은 John이 가격 인상으로부터 300달러를 벌었기 때문에 150달러(100달러+300달러~250달러) 오른 반면 Jill은 250달러 줄어들었습니다.​Synthetix의 ‘sticking’이라는 용어는 사실 사람들이 부채가 누적될 위험을 감수하면서 무역 자리를 열도록 유도하는 것에 불과하기 때문에 이런 식으로 상당히 오해를 불러일으킬 수 있습니다.참고: SNX 또는 ‘staking’을 유지하지 않고도 신디사이저를 거래 할 수 있습니다.다양한 기준에 맞서 Synthetix를 실행해 보세요.소유권 구조 및 관리 키Synthetix는 지금까지 제가 접해 본 가장 복잡한 DeFi 아키텍처 중 하나를 차지하고있으며 전체적으로 많은 사람들이 프락시를 많이 사용하고 있습니다. 프락시(proxies)는 누군가가 한 주소를 가리키지만 다른 계약의 코드를 실행하는 방법이기도 합니다. 즉 코드를 실행하는 표시로 생각하면됩니다.다음은 Synthetix의 스마트 계약 및 소유권 구조에 대한 고급 아키텍처 개요입니다.이렇게 보면 복잡하다고 생각할 수 있지만 이에 대해 아래에서 자세하게 설명하겠습니다.먼저, Synthetix 에코 시스템과의 모든 상호 작용은 이 주소를 가진 Proxy.sol 계약입니다. 0xC011A72400E58ecD99Ee497CF89E3775d4bd732F. 이 계약의 두 가지 주요 속성은 targetAddress와 owner입니다. Owner 같은 경우 목표는 모든 호출이 실질적으로 전달되는 스마트 계약을 인용합니다. 이 대상은 Synthetix.sol이며 시스템의 핵심(토큰 추적기)으로 생각할 수 있습니다. Owner는 Synthetix 계약의 이행 전체를 마음대로 전환할 수 있는 권리를 소유하므로 말 그대로 그들이 원하는 대로 할 수 있습니다. 이것은 새로운 것은 아니지만 개인적으로 전체 시스템의 구현이 마음대로 바뀔 수 있다고 생각하지 않습니다. 일부 아키텍처는 사용자가 변경할 수 있는 것과 변경할 수 없는 것에 대한 보장을 제공하는 특정 장소의 프록시를 사용합니다.​Synthetix.sol(​0x8454190C164e52664Af2c9C24ab58c4e14D6bbE4)은 시스템 자체 내의 모든 상호작용을 조정하는 머리라고 볼 수 있습니다. 다음과 같은 몇 가지 책임이 있습니다.모든 신디사이저 토큰 잔고 추적하기시스템 내부의 모든 유효한 신디사이저 주소 나열하기에코시스템에 있는 모든 계약 주소의 리졸버를 가져오기이 계약은 Proxy.sol과 동일한 소유자입니다. 그러나 selfDestructBeneficiary라는 고유 변수가 현재 0xde910777c787903f78c89e7a0bf7f4c435cbb1fe 로 설정되어 있습니다. 이 수혜자가 모든 자산을 수령하기까지는 28일의 시간 지연이 있지만, 특히 포함하기에는 이상한 점이 있습니다. 더욱, 0xde9는 멀티 시그(multi-sig)가 없는 일반적인 이더리움 주소 일 뿐입니다. 기본적으로 누군가의 원장입니다.여기서 소유자 및 작동 방법이 가장 중요한 요점이라고 생각합니다. 소유자의 주소는0xeb3107117fead7de89cd14d463d340a2e6917769 이며 즉 다른 프럭시 계약입니다. 프럭시로 인해 이더리움에서 직접 구현을 볼 수 없으므로 결과를 직접 얻는 코드를 몇 개 작성했습니다.그 결과는 다음과 같습니다.좋은 점은 여기에서 4개의 주소가 메인 컨트랙트로 변동되는 것을 알 수 있습니다. 반대로, 변경 요청 시 시간이 꽤 오래 걸릴 것입니다.코드 품질(Code Quality)건축(Architecture)저는 스마트 계약 시스템에 도입된 복잡성과 업그레이드 된 제어 장치들을 매우 싫어합니다. Synthetix의 전체 아키텍처는 프록시에 크게 의존합니다. 통합 관점에서 볼 때, 한 블록과 상호 작용하는 Synthetix 시스템이 실제로 완전히 다른 것처럼 보일 수 있다는 것을 의미합니다. 다른 프로토콜은 업그레이드 제어를 구현되어 있지만 사용자들이 상호 작용하는 계약이 절대 변경되지 않기 때문에 업그레이드 할 수 있는 시스템의 특정 부분을 알고 있을 것입니다. 코드를 모듈 식으로 만들면 관리자가 전체 시스템을 교체하는 대신 시스템내에서 다른 모듈을 교체할 수 있습니다. 프럭시 아키텍처를 사용하면 이러한 결정을 모두 연기되고 완전한 제어로 신속하게 배송할 수 있습니다.토큰도 자신의 프럭시를 가지고 있습니다. 완전한 업그레이드를 원한다는 것을 이해할 수 있지만, 모든 계약에 대해 하나의 대리인이 있다면 아마도 내 개인적인 생각으로는 그것을 너무 많이 사용하고 있을 것입니다. 저는 앞으로 더 간단하고 단순한 프럭시 없는 구조를 통해 유사한 업그레이드 이점을 얻을 수 있는 다른 아키텍처에 대해서도 다룰 것입니다.서류(Documentation)제가 가장 인상 깊었던 부분은 Synthetix의 문서였습니다. 상속 구죠, 쉽게 접근 할 수 있는 계약 주소 및 일반적으로 DeFi 팀에서는 찾을 수 없는 것을 보여주는 다이어그램이 있습니다. 이 안내서를 작성하는 동안 그들의 설명서는 시스템의 전반적인 작동 방식을 이해하는 데 상당히 도움이 되었습니다.단위 테스트(Unit Testing)코드를 파고 나서 테스트를 사용하는 것처럼 보이지만 여기서 테스트가 단위 테스트가 아니라 통합 테스트이라는 것입니다. 차이점은 그들의 테스트가 악의적이거나 의도하지 않은 입력에 대해 작동 및 방어할 수 있는 것이 아니라 작동하차이점은 그들의 테스트가 제대로 작동 확인하는 것이지, 악의적이거나 의도하지 않은 입력에 작동 및 방어하는 것이 아니라는 것입니다. Synthetix는 주요 배치의 감사를 받는 것으로 더 많은 관심을 끌고 있지만, 일반적으로 감사 회사가 80%의 효율성을 가지고 있기 때문에 어떤 측면에서는 익스플로잇이 있을수 있습니다. 스마트 계약 악용 사례를 보여 주면 감사를 제공한 회사를 보여 드리겠습니다.​일반 해설(General Commentary)개인적으로 Synthetix 개발자 툴링이 괜찮다고 생각합니다. 그들의 Javascript 라이브러리는 통합 보장을 제공하는 Typescript 유형을 사용하는 대신 JSON ABI 파일을 사용하여 업데이트됩니다. Set, dYdX&0x는 Typescript를 사용하여 큰 이점을 얻습니다. Javascript 라이브러리는 시스템 전체에서 ABI 변경 사항이 적용되는지 확인하기 위한 테스트가 없습니다. 이것은 주요 거래는 아니지만 팀이 개발자 경험에 얼마나 관심을 기울인지 스마트 계약을 외부 시스템에 쉽게 통합 할 수 있는지에 대해 더 많이 알려줍니다.유동성 분석현재 가장 큰 두 Uniswap 풀은 EHT/SETH 및 ETH/SNX입니다. ETH/SETH는 Uniswap에서 유동성을 제공하기 위해 사용자에게 더 많은 SNX 토큰을 부여하는 Synthetix 인플레이션 보상으로 인한 크기입니다.하지만, Synthetix의 모델이 문제점들을 극복하지 않으면 장기적인 발전에 영향을 줄 것이라고 생각합니다.1. 앞에서 언급 한 바와 같이, 합성 자산은 주장하는 담보물을 가지고 있다는 것을 보장하고 있습니다. 왜냐하면 청산되지 않기 때문이다. 단지 상환해야 할 부태만 있기 때문입니다. 이 시스템은 잠재적인 문제에 직면해 있습니다(그러나 750%는 훨씬 멀다). 미래의 SIP는 이 문제점들을 해결할 것을 제안합니다.2. Synthetic 자산 보유자들은 안정적인 담보물을 위해 정확히 교환할 수 없는 것을 보유하고 있습니다. SNX 가격이 급격히 하락하기 시작하면, 많은 포지션들이 담보가 부족해지기 시작하고, SNX를 상환할 수 있다고 해도 그것은 은행과 같은 종류의 상황에 직면하게 될 것입니다.고정 인센티브로 SNX 공급의 20%만이 고정되지 않고 있는데, 이는 SNX 공급의 대부분이 빨려들어 간다면 유동성이 다른 곳에서 어떻게 발생할 것인가 하는 의문을 불러일으키고 있습니다. 실제로 통합 자산이 진정한 가치를 갖기 위해서는 인센티브 메커니즘 이외의 SNX에 대한 건전한 건축이 필요합니다.Coinmarket Cap보면 Synthetix이 Uniswap에 있는 유동성을 살펴볼 수 있습니다.여기서 말하고자 하는 요점은 Synthetix가 망했다는 것이 아니라 합성 자산 프로토콜로 성공하기 위해서는 몇 가지 요점이 필요하다는 것입니다.1. SNX, Uniswap 또는 기타 인센티브 메커니즘 이외의 가격 평가 및 유동성 확보2. SNX는 사람들이 돌볼 수 있을 만큼 충분히 큰 거래 수수료를 발생시킬 수 있는 경우에만 가치/수요를 도출할 수 있습니다.3. 합성 포지션을 개설 및 거래하고, 의도된 사용 사례에 실제로 합성 자산을 사용하는 경우에만 거래 수수료가 발생할 것이다.4. 일정 가치를 보유하거나 어떤 종류의 가치를 보유하는 경우에만 MoE로 취급 가능합니다.5. SNX가 유동성을 확보할 때까지 사람들은 신디사이저를 가질 확신이 없으며 다른 생태계 참가자도 다른 거래소에 이름을 올리지 않을 것이다.만약 그것을 본질적으로 분별하지 못한다면 성공하기 어렵습니다. 메이커는 ETH를 완전한 담보물로 사용함으로써 이 문제를 피했습니다. Synthetix는 ETH 담보를 도입함으로써 단서를 얻었지만, 토큰 보유자가 SNX를 더 벌 수 있도록 ETH보다 더 많은 SNX를 원한다는 사실이 있습니다.오라클 분석(Oracle Analysis)Synthetix 초기에는 오라클이 다운되어 누군가가 37m SNX를 만들었습니다. 이것은 사람들의 자신감에 큰 흔들림 이었지만 팀은 대신 Chainlink oracles를 적극적으로 사용했습니다.https://www.theblockcrypto.com/linked/28748/synthetix-suffers-oracle-attack-potentially-looting-37-million-synthetic-etherChainlink에 대한 분석을하고 싶지만, 이 부분에서는 다루지 않습니다. 팀은 여기에서 직접 볼 수있는 자체 오라클을 실행합니다 :https://developer.synthetix.io/tokens/그것은 본질적으로 가격을 스마트 계약에 게시하고 그것을 업데이트하는 하나의 주소일 뿐입니다. 저는 Opsec 이것들에 있을 것이라고 확신하지 않지만 그것이 지갑과 연결되어 있다는 것을 확실히 알고 있습니다. Synthetix의 경우 내부적으로는 인터넷에 연결되 개인 키가 여러 개인 경우 큰 위험이 있습니다. 제가 일한 곳에서 개발자로 일하면서 이 문제에 직면했지만 불행히도 현재 시점에서 좋은 대답이 없습니다. 팀에 대한 권장 사항은 Synthetix가 결국 CEX 허니팟이 될 거이므로 네트워크에 10개의 중앙 집중식 오라클 가격 피드를 추가하기 전에 속도를 줄이는 것보다 강력한 opsec 절차를 파악하는 것을 추천드립니다. 이 팀은 달성하려는 공격적인 로드맵을 가지고 있는데, 그들이 언제 속도를 늦추고, 기지에 집중하고, 언제 공격적으로 선적해야 하는지 알고 있기를 바라는 마음입니다.유동성 보험(Insurance Liquidity)현재 Nexus Mutual 또는 Opyn은 Synthetix의 계약을 다루지 않습니다. 인플레이션 보상의 줄어든 부분이 불이행의 경우 Synthetix 사용자에게 보험을 제공하기 위해 유동성을 부여하는 데 사용될 수 있다면 좋을 것입니다. 이것은 SNX 또는 신디사이저의 생존 가능성에 대해 사용자에게 더 많은 확신을 줄 수 있습니다.마무리(Wrapping Up)이것은 제가 Synthetix에 깊이 빠져든 후 연구해낸 결과입니다. 전반적으로, Synthetixs는 가치를 포착하면서 토큰이 생태계의 필수 부분이 될 수 있도록 독특하고 효과적인 전략 가진 DeFi 공간의 선구자임이 분명합니다.앞으로 나아가는 주요 과제는 이 시스템이 사람들이 보유하고 싶어하는 신디사이저를 만들거나, 상업적으로 사용하거나 다른 비추론적 용도로 사용할 수 있는지 여부입니다. 현재까지 그 팀은 Havven에서 오늘날 가지고 있는 모델로 매우 인상적인 피벗을 만들었습니다. 비록 그들이 말했던 도전들이 해결하기 쉽지 않다고 말하지만 모델을 작성하지 않을 것입니다.이 리뷰에서 개인적으로 가장 좋아하는 부분은 아마도 전체 시스템의 작동 및 작동 방식을 이해하기 위해 제3자 개발자를 위해 작성된 문서 및 안내서 내용입니다.이 문장을 재미있게 봐주시기를 바랍니다. 감사합니다.디파이 분석 #1 : Synthetix(신테틱스) was originally published in Cortex Labs on Medium, where people are continuing the conversation by highlighting and responding to this story.

Cortex

20. 04. 20

Cortex Project Updates #47

Technical Updates 🤖MRT & CVM Development1. Continued to optimize the quantization accuracy of the TensorFlow model for MRT and fixed some bugs.2. Added operator quantization support for MRT and optimized user interface code to improve readability.3. Reduced MRT’s dependence on TVM and NNVM; increased the ease of MRT deployment and reduced the complexity for first-time users.4. Further optimized the performance of some CVM operators on the Jetson Nano platform.5. For CVM, encapsulated Python API on the symbol level for MRT calls; encapsulated the NDArray Python API to store model parameters.6. Designed a simple DApp for Jetson Nano devices, which is convenient for rapid deployment and connection to Cortex full-node virtual machine for model inference.7. For CVM Z3 Prover, continued to test existing operators and have completed verifying 23 operators so far.8. CVM Formalization version code. Added broadcast operator and improved the mathematical description of the corresponding documentations.Cortex Full Node Development1. Optimized and upgraded part of the code for full nodes, improved the API for transaction information query, adjusted the resource release logic when the node is shut down.2. Added DNS record mode node address and optimized p2p search.3. Added whisper module to full nodes.4. Fixed the overflow problem of goroutine and timer; adjusted the format of CVM calculation op parameter.5. Submitted feedbacks to Torrent community developers in terms of OOM problem of the UTP protocol.6. The team’s core developer ucwong submitted 15 lines of code for the Ethereum project, all of which were merged.DeFi Development1. Established a data contract on Cortex MainNet, which provides data support for the on-chain DeFi AI model, further improving the test coverage and various functional tests of the main contract.2. Optimized the real-time balance detection functions for DAI deposit and withdrawal on the DeFi AI model, improving the user interface.Community Updates 👨‍👩‍👦‍👦Finalized the developer incentive plan discussion.Discussed cooperation with DApp developer teams via offline conference.Translated and created original introductory contents.Compiled and organized articles about Cortex.Attended online blockchain conference and coordinated with different media.About Cortex 😇Cortex is the only public blockchain that allows the execution of nontrivial AI algorithms on the blockchain. MainNet has launched. Go build!TestNet| Block Explorer — Cerebro| Mining Pool | Remix Editor | Software |Social Media| Website | GitHub | Twitter | Facebook | Reddit | Kakao | Mail |Telegram| English | Korean | Chinese |https://medium.com/media/4aae97568ec36a07bf0d6a258688afcc/hrefCortex Project Updates #47 was originally published in Cortex Labs on Medium, where people are continuing the conversation by highlighting and responding to this story.

Cortex

20. 04. 17

带你深刻理解MakerDAO运行原理:全面复盘312暴...

原文链接:https://medium.com/dragonfly-research/daos-ex-machina-an-in-depth-timeline-of-makers-recent-crisis-66d2ae39dd65作者:Tom Schmidt翻译&校对:Cortex(CTXC)运营团队雪花2020年3月12日,MakerDAO经历了它诞生以来最糟糕的一天。全球范围的货币危机,导致ETH的价格暴跌了50%以上。这场暴跌引发了交易所、DeFi协议在内的金融机构面临了一场全面清算。短时间内的大量交易也瞬间导致以太坊网络严重拥堵。而MakerDAO系统中大部分抵押品都是ETH,那么MakerDAO面临的任务就显得更为严峻:MakerDAO需要在24小时内清算巨额的债务,这次的数字可能是MakerDAO诞生以来产生过的所有债务总和的10倍。要了解Maker如何通过这一严峻的考验,我们需要重新复盘一下这一系列事件以及事件中的每一层细节。﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌太平洋时间3月12日凌晨1:00(北京时间3月12日下午4:00)ETH 171美金清算开始(随着ETH价格下跌,Maker系统中的抵押物开始被清算)ETH的价格此时开始逐步下跌,MakerDAO上面的清算工作还算可以照常进行。除去一些ETH投资者和MKR代币持有者的对于价格下跌的恐慌心理,其实整体上MakerDAO系统中抵押物的价格下跌并产生不了太大影响。因为MakerDAO协议本身的设计就可以承受抵押品价值大幅缩水的情况。实际情况也是如此,2018年ETH整体跌幅超过90%的情况下,MakerDAO仍然存活了下来, DAI的价值也仅仅是从1美元下跌了基本可忽略不计的一点点。能实现到这样的效果,协议的原始设计功不可没。MakerDAO上的每笔债务都是超额抵押(至少150%),因此清算人本来是有足够的缓冲空间来介入并且扣押、清算这些抵押品,从而保障整个Maker系统的偿付能力。在此之前我写过关于“清算者”的文章中,非常详细的介绍了MakerDAO系统的运转原理。(Cortex注:关于作者之前写过的介绍MakerDAO系统中“清算者”的文章,链接如下:https://medium.com/dragonfly-research/liquidators-the-secret-whales-helping-defi-function-acf132fbea5e有兴趣的朋友可以点击查看。)当然,清算“部分抵押”的债务也不例外。一般情况下,不管是中心化的交易所还是去中心化的交易所,都可以轻松完成这一点。但问题来了:当抵押物的价值下降得太快以至于抵押物价值不足以抵偿债务的时候,会发生什么情况?换句话说,一旦抵押品的价值比债务的价值低,这时候借方肯定溜之大吉,而贷方就只能面临亏损(因为清算抵押品也不足以偿还债务了)。中心化的交易所通常通过一些保险基金或者一些面向用户的公关手段来弥补此类损失。但是在去中心化交易协议领域里,这中间会发生什么呢?像Compound之类的交易协议,从机制上模仿中心化交易所,也设立有链上的保险基金。而MakerDAO则采用了不同的方法:一旦系统到了全部抵押物价值不足以偿还全部债务的时候,Maker会通过发行和拍卖新的MKR(MakerDAO系统的治理代币)来进行资本重组。把新发行的MKR出售,买家需要从市场上收回Dai来购买MKR,购买新发行MKR的这些Dai被销毁,直到Maker系统回到抵押物价值大于全部债务的状态。投标人可以尽可能高的报出MKR/Dai价格(当然要在自己的意愿可接受范围内),出价最高的投标人会中标,实现交易,完成偿还系统债务。Maker的竞价拍卖机制是在提前预见到系统可能出现债务的情况下设计的。不过,这种拍卖过程先天就存在一些假设条件,比如:竞标者将在合理的市场条件下进行竞标,以相对正常的价格来竞拍MKR,合理地填补系统的债务漏洞。这听起来不错,但“312”带来的恐慌效应,让这些假设化为泡影。太平洋时间3月12日凌晨5:00(北京时间3月12日晚8:00)ETH 130美金系统债务出现(被清算的ETH价格的下跌幅度远超现货市场)随着ETH价格加速下跌,事情的发展开始偏离预期。ETH的价格越来越逼近清算价格。而ETH却仍然跌不停,没有任何反弹甚至止跌的迹象。许多“幸运”的清算参与者不但以低于抵押品当时现货市场的价格(因为有罚款)向借款人偿还了借款而获得抵押物,甚至还有人以0元的价格竞拍得到了免费的ETH。借款人除了被偿还的Dai之外,没有什么其他的收益。还有更糟糕的,这些严重折价的清算程序给Maker系统的资产负债表上留下了大漏洞 — — 系统持有的ETH抵押品总价值已经无法完全支撑发行出去的Dai继续维持1美元的价格。对于那些没赶上折价清算抵押物的清算者,后面的清算将基于这个结果进行。现在,恐慌情绪开始在社区里蔓延。要理解为什么会发生这些0元赢得竞拍的情况,我们需要先回顾一下Maker的历史发展。对于熟悉原来“单抵押物Dai”规则下Maker系统的人,他可能了解Maker此前对清算要进行13%的罚款这一规则。也就是说,已经被清算了的借款人只能收到他们充值资产的87%。其中3%的罚款会给清算人,10%的罚款会给Maker系统。不过,这样的系统机制不够灵活,很可能会造成惩罚不足(或者过度)的局面。后来,这种规则在“多抵押物Dai”机制中被抵押物拍卖的规则取代。这个拍卖过程分两个部分:一. 触及底价阶段在拍卖过程中,清算者要为固定数量的ETH用Dai出价来竞标,直到达到一个底价。这些出价要满足:必须在距上一次出价后的一个固定时间窗口内完成出价必须比上一次出价高出固定数量的Dai必须在拍卖结束之前出价一旦有清算者的出价达到了底价,就开始第二阶段。二. 价格最大化阶段在第二个拍卖阶段,清算者是为一定量的Dai用ETH出价。机制与第一阶段类似,ETH出价数量低者可赢得竞标。赢得竞标的清算者会以一定的折扣获得ETH。从理论上讲,这一系统通过市场竞标来评估清算抵押品的价值,允许其根据市场情况进行调整,这样比固定罚款要更好一些。不过,正如我一次又一次提到的那样,黑天鹅事件会让市场偏离正常轨道。312事件就是这样。即便Maker改成了拍卖的机制,但同样,中标者通常也会以低于市场的价格获得被清算的抵押品(比如ETH)。但是,中标的价格在当天下午开始触底。中标的人以越来越低的价格获得ETH。到最后,黑天鹅黑到极端的时候,清算者开始出价0元就能中标,获得ETH,并带着这些免费的ETH扬长而去。借款人也无法用Dai赎回自己的抵押品。这时候,Maker系统开始出现不良债务,这一缺口一度超过500W美金。为什么会发生这样的情况?如果在正常的市场状态下,任何参与清算的竞标者都可以看到0元出价并且中标的机会,于是大家都会试图出一些高一点的价格来争夺这些获利的机会。价格就会被抬高。但是,有两个关键因素,让这所谓“正常的状态”并没有发生。Maker系统雪上加霜。1)区块链网络拥堵区块链网络交易带宽是一种共享资源,它的价格是由供需关系决定的。312下午发生的网络拥堵,导致交易费率飙升到正常交易费率的10倍以上,这导致交易所价格出现波动。而套利交易者无法快速进行套利交易,价格失去匹配性。很多支付低额交易费的交易无法被及时打包确认。在Maker系统中,因为0元的出价已经出现,其他用户尝试去出一个更高一点的价格,却因为网络拥堵,出价的这个交易无法被打包确认。最终导致拍卖就这样以0元成交的结果结束。我们可以看到,在一个时间点,赢得拍卖的清算者,付出的交易费平均达到了1000 gwei/交易。这是正常情况下以太坊网络交易费的100倍。然而此时,普通用户还被困在一些极其难用的应用页面上,一遍又一遍的不断重新提交交易,只是为了能挽救他们的资产。(危机最严重时,Gas价格飙升到极高水平)由于无法及时获得Oracle的喂价,这些网络拥堵实际上也拖延了整个清算流程。有趣的是,这可能避免了一些更糟的情况发生,因为它无意中扮演了ETH清算过程中的熔断机制。而不好的结果就是,实际发生的几次清算,都比原本应该发生的时间,晚得多。2)Dai的清算只有两种方式可以获得Dai:a. 其一是通过将ETH抵押到Maker抵押资产库,基于一种债务关系来让Maker系统发行Dai。b. 其二是直接从一些交易所从拥有Dai的人手中购买Dai。一般情况下,这些都是正常的获得渠道。 — — 你可以在Coinbase上以最小的滑点就可以直接用美元买到Dai,也可以通过Uniswap来购买Dai。然而,在312当天,Dai要么被借贷者通过赎回抵押物(ETH)的方式销毁,要么被清算者以清算(未能及时赎回抵押物的部分)的方式销毁,市场中Dai的资产流动性接近枯竭。此外,由于ETH价格波动随时可能下跌触发清算机制,这时候没有用户愿意继续抵押ETH发行Dai。这样导致的结果就是,Dai的供应急剧减少,变得越来越稀缺。Dai的市场交易价格一度达到了1.12美金。这意味着,即使对于那些愿意参与清算的人,也几乎无法买到足够的Dai来行使清算权。(Cortex注:滑点是指在进行交易时,客户下达的指定交易点位与实际交易点位存在较大差别的一种现象。也就是说,当实际成交价格与起始报价不一样时,便会产生滑点。)我们可以看到,竞标流程从312那天下午三点开始冷清和低迷,越来越少的清算者有能力真正参与到清算过程中。到最后,只剩下三个清算者参与竞标。每个人都以0元的价格赢得过拍卖,最终导致Maker系统的抵押物价值比预期的最低阈值还低了530W美金。太平洋时间3月12日下午6:00(北京时间3月13日早9:00)ETH 100美金启动修复530万美金不良债务在这个时间点,Maker系统资产负债的漏洞仍然非常明显,并且还在持续增长。Maker开始进入危机模式:Maker团队和社区召开紧急会议,讨论一些可能可行的解决方案。分为两个议题:分为两个议题:如何堵住漏洞以防止系统负债继续变大?如何最有效的解决系统负债问题?堵窟窿Dai的流动性导致0元清算事件的最大原因,是Dai的流动性严重不足。Dai的流动性不足的问题让Dai锚定1美元的难度不断加大,而且还让想参与清算程序的清算者很难买到Dai,最终导致实际参与到清算程序的用户大幅减少。Maker风险团队最终提出了两个方案来解决此问题:将Dai储备率降低到0%,从而减少Dai的需求,降低价格,让价格更接近1美元的挂钩价增加USDC(Coinbase发行的稳定币)作为Maker系统的抵押品,可以在极度缺乏流动性的时候鼓励用户以较低的风险来抵押USDC,铸造发行Dai对于DeFi的一些极端信仰者来说,执行第二个提案意味着做出巨大的自我牺牲。他们认为在这个时候引入USDC这样一个中心化的稳定币,就等于对“MakerDAO完美去中心化”这一光辉形象的亵渎。这些参与会议的负责人声称,这样的改变将会给Maker敲响丧钟。但事实是,Maker团队早在几个月前就已经预示要将USDC在内的其他数字资产列为抵押物,只不过312事件推动加速了时间表。(Dai的储存利率降低有助于改善流动性不足的问题)把USDC引入MakerDAO中可能带来什么样的后果?围绕这个问题的讨论让大家陷入了困惑。USDC并非要成为MakerDAO系统中的核心抵押物,毕竟,几乎没人会想一边抵押美元,一边再借出来美元。相反,USDC想要成为只给那些清算者发行Dai提供帮助的一种实用服务,也能为Dai提供更多流动性来帮助Dai锚定1美元。如果这样,有些精明的交易者可以在Dai价格高的时候抵押USDC借出Dai,并出售。然后当Dai的价格跌下来再次回到1美金的时候再买回,从中获得盈利。为了应对此状况,Maker系统可以在以USDC为抵押物的借贷中设置20%的利率,这比以ETH为抵押物的借贷中0.5%的利率高了40倍。拍卖机制的稳定性312导致Maker系统资不抵债的另一个核心问题,是拍卖机制本身。如果拍卖流程可以持续的时间更长一些或者对一些参数进行调整,那么其他清算人也许就有机会参与竞标,抢购到一些被清算的ETH,这样拍卖的成交价也会高一些。但是,拍卖流程的时间太短了。因为网络堵塞,某些清算人可以在其他清算人参与竞标之前,就赢得了此次拍卖,为了让这些抵押品拍卖流程更具有弹性,可以应付网络拥堵的情况。Maker风险团队再次提出了两个改进提案:把最后一次出价到拍卖结束的时间,从原来的10分钟增加到6小时,以便在网络拥堵的时候,也能让其他的竞价参与进来把ETH的单次拍卖规模从原来的50ETH增加到500ETH,以减少需要拍卖的轮数,并且让竞标者更集中。现在,清算者无需为了参与更多ETH的竞标,而在10次拍卖中出价,而是只在1次拍卖中出价即可要想让拍卖机制变得更简单且更稳定,还有大量工作要做。但这两个改变,至少能帮助系统变得效率更高一点且更有竞争性。填补债务窟窿这些缓解措施落实到位,接下来面临的问题就是,目前抵押品总价值与发行Dai(如果想挂钩1美金)之间已经产生的530万美金的债务,系统如何解决这个问题?有下面三个选项:1)紧急关停系统Maker的“核按钮”一直放在桌面上。一旦启动“紧急关停”按钮,所有的Dai将会被冻结。此时,Dai只能用于赎回Maker系统中的基础抵押物。经过一番讨论后,鉴于当前的债务问题还没有严重到这种程度,这个选项率先被排除在外。2)由Maker基金会偿还这部分债务一个最简单直接的方式:Maker基金会把债务对应的ETH(让抵押物ETH的价值总额和已经发行的Dai锚定1美金后的价值保持一致)打到Maker系统中,直接可以抹除这个债务问题。这样确实可以简单粗暴地解决债务问题,但是在某些角度,这有些违反了Maker系统最初设定的一些社会契约。MKR持有者从Maker系统中获得持续收益,但作为交换,他们有责任让该系统支撑起该有的偿付能力。因此,在这种情况下,应该由MKR持有者来偿还这一部分债务 — — 毕竟,他们会因为承担了这种风险而得到后续长久收益的补偿。如果只是由Maker基金会来简单的支付偿还债务,MKR存在的意义和Maker系统是否真的去中心化,就会被质疑。3)通过发行、拍卖MKR来偿还债务不过幸运的是,Maker协议在最初就设计了“发生损失时自我修复”的机制。产生债务的48小时后,系统将自动发行新的MKR,然后通过一系列拍卖流程将其出售为Dai,收回来的Dai将会被销毁。这种拍卖将一直进行,直到填补上所有债务窟窿。拍卖的成交价格不会一直很低,因为那样的话,被发行出来进行拍卖的MKR就会更多,MKR持有者将会面临手里的MKR资产被稀释的情况,就会阻止这种情况出现。但现实情况是,在当前这个全市场恐慌的局面下,MKR的拍卖不太可能以一个正常(和市场匹配)的价格成交。还有一点,即使有大量的人想要参与拍卖,此时Dai的流动性严重不足,也很难实现这一点。结果是,有一个修改方案被提出:4.5天后,等市场稳定下来,Dai的流动性不足的问题得到解决后,新发行的MKR再进行拍卖。太平洋时间3月13日凌晨00:00(北京时间3月13日下午3:00)ETH 120美金开始对提案进行投票投票开始:召集所有MKR持有者进行投票,最终通过了一系列提议。包括“把USDC作为抵押物”这一提议。3月13日~3月19日 为拍卖做准备即便在这全市场范围的恐慌之下,还是有一小部分用户开始着手准备在此次拍卖中参与竞标。竞标者首先要准备好足够的Dai来投标。如果没有“把USDC作为抵押物发行新的Dai”这个提议,既想把Dai的价格重新拉回1美金锚定值,又要能给市场提供足够的流动性来让想参与竞拍的人能买到大量Dai,这一点几乎不可能做到。此外,想参与竞标的人必须要以50000 Dai为单位来参与竞标MKR(意思是竞拍新发行MKR的起步出价就是50000 Dai)。这就造成了资金上的门槛,一些大型基金(如Paradigm)声称自己会拿500W美金来参与竞标,而那些小散户则被排挤出这场竞争。此外,还有一些技术上的门槛:竞标者需要运行一个自己的Maker拍卖代理程序(链下的程序)用于监控拍卖进程和及时出价。(我们可以看到ETH(绿色)从Maker系统中流出,而USDC(红色)开始流入)针对这些问题,一个叫“Backstop Syndicate”的去中心化组织声称他们要众筹小规模参与者的资金,一起去竞拍MKR,出价为100美金/MKR。任何人都可以无门槛地参与进来,只需要将Dai存入一个智能合约中,然后依靠一个竞价机器人在拍卖中出价。一呼百应,最终超过350000 Dai被存入了这个合约中。尽管最后没有任何一次竞标成功,但它凸显了众多用户对Maker的支持以及Maker在整个DeFi系统中的群众基础。Maker基金会也发挥了一些自己的作用,构建了一个定制化、相对便捷的UI界面,来让投资者相对更容易参与竞拍。太平洋时间3月19日7:30(北京时间3月19日晚10:30)ETH 126美金拍卖开始经过6天的准备,竞标者终于可以大展身手了:MKR开始发行、被拍卖。我们看到,最终一共36个独立的竞标者参与拍卖,而成交价格也和现货市场价格比较接近。其实,实际参与个体数量应该比36还要多,因为Maker基金会也帮助了一些无法参与竞标的人出价。拍卖持续进行,截止到发稿,一共有17630枚MKR被发行并拍卖,获得了430万美元(Dai)用于偿还系统债务。给MKR造成的通货膨胀率约为1.7%。(Cortex注:到此次拍卖结束,一共有20980个MKR被发行并拍卖售出,总进行了106次拍卖,拍卖所得共530万Dai。)(MKR拍卖的价格接近市场行情)﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌﹌我们该去向何处?每一次对危机的复盘,都是学习和改进的机会。那么,Maker将会从这一次危机中学到些什么呢?我们是否应该对它未来的前景继续抱有期待呢?我们需要更好的风险模型和危机分析312那天发生的很多问题,在最初设计这一体系的时候,并没有立刻凸显。而当系统完全暴露在众多财务激励(赚钱为目的)且匿名的参与者面前,很多创始开发团队意料之外的紧急情况就会出现。对Maker来说,从第一版设计开始,随着时间推移反复迭代,通常没什么问题。但这个系统面临的是数亿美元规模的资产风险,且存在诸多不可预测的外部风险。Maker需要一个更严格的方式来监控整个系统,而不是依赖一个简单的模型。以Compound为例,使用来自Gauntlet的模拟,他们发现在市场动荡期,去中心化交易所可能没有足够的流动性来盈利性地清算那些有风险的头寸,从而让整个系统置于危险之中。想要收集这些想法形成判断,必须通过一些更复杂的风险模型来实现。我们需要更好的数据和工具312发生的事情加剧了另一个问题的凸显:Maker系统缺乏透明度。用户要花费太多时间才能清楚得了解系统目前正在发生的事情,甚至还要再花更长的时间才能诊断出发生这些问题的原因。Maker生态系统中的参与者,只能把交易数据和内存池数据整理在一起,来复盘整个事件的时间轴。即便理解了0元拍卖的出价问题,还是存在另一个障碍:众所周知,Maker系统的代码库并不是开源的,因此想要快速部署一个新的拍卖程序是很难做到的。举例说明:MKR拍卖正式开始之前,即使开发团队玩命地开发,前面提到的那个相对便捷的拍卖网站也没能及时上线。因此,众多想要参与竞拍的非技术用户,最终也没能参与进去。改善Maker的易读性和可访问性可以极大地改善这些问题。Maker如果希望变得更有韧性,就需要更多的参与者。我们需要更好的风险管理工具,包括对冲、保险除了对Maker系统进行那些重量级的改进之外,还有一个更广泛的问题需要得到关注:我们如何才能让整个数字货币市场更加稳健,尽可能不受极端风险的影响。一些人呼吁对广义的数字货币市场结构进行改革,但DeFi是一种另类的洪水猛兽,它需要自己的解决方案。可以想像下,如果实现抵押物的多样化、一揽子抵押,或者互相之间相关性较差的多种基础抵押物,可能会部分缓解一些Maker的极端风险压力。或者考虑一下,如果抵押物不仅仅只有一种ETH,而是包含和ETH反向的相关资产(例如以太坊的看跌期权或者sETH),是不是可以建立一个更接近于市场中立的投资组合。在最近的这次抛售中,我们看到所有类别的资产之间的相关性都在收紧,而如果在Maker抵押品中添加相关性差的一些合成资产,理论上可以提高整个系统的安全性。(Cortex注:sETH是 short ETH的简称,一种做空ETH的资产。)然后是“有人花0美元清算了抵押品”这个事实 — — 实际上,这相当于他们的抵押品被盗了。尽管这并不是纯粹的技术原因被黑客入侵,但对Maker用户而言,结果肯定是他们成为了某些问题的最终受害者。通过使用正确的保险工具,可以对冲此类风险,从而使用户对系统更有信心。就像众多Compound用户在Opyn上配置一些去中心化的期权来给Compound上充值的资产做保险一样。想像一下,Maker上的抵押资产所有者用一种类似的期权方式,可以以一个和市场相符的价格出售他们拥有的抵押物资产的价值。这样一来,那些想从中赚钱的承销商组成的网络就可以评估Maker以及抵押物价格的风险,并且重新分配这些伴随的风险。与传统的保险产品(如Nexus Mutual)相比,期权具有更大的灵活性,可以在一些模棱两可的情况下进行赔付。而Nexus Mutual从312开始,已经拒绝为Maker进行赔付了……随着Maker完成了这一轮“英雄之旅”,毫无疑问,再次回归到我们视野的Maker已经在很多方面发生了改进,并且很有希望变得更有韧性。但要警惕,即使Maker再一次巩固了其作为DeFi全球信贷机构的基础地位,它仍然还是有很多空间可以继续提升。非常感谢Teo Leibowitz, Fredrik Haga和Dune Analytics对于本文提供的数据帮助。同时也感谢Haseeb Qureshi对于撰写本文的帮助。官方网站https://www.cortexlabs.ai/官方论坛https://www.cortexlabs.ai/forum/商务合作support@cortexlabs.ai社区链接Website: https://www.cortexlabs.ai/Twitter: https://twitter.com/CTXCBlockchainFacebook: https://www.facebook.com/cortexlabs/Reddit: https://www.reddit.com/r/Cortex_Official/Medium: https://medium.com/cortexlabs/Telegram: https://t.me/CortexOfficialENChinese Telegram: https://t.me/CortexOfficalCN带你深刻理解MakerDAO运行原理:全面复盘312暴跌后的清算、拍卖、治理机制 was originally published in Cortex Labs on Medium, where people are continuing the conversation by highlighting and responding to this story.

Cortex

20. 04. 13

[Cortex Updates] 2020–49호

Cortex에 관심 가져주시는 여러분, 안녕하세요:)2020년 4월 11일 토요일Cortex Korea가 전하는 Project Updates,지금 시작합니다 ‘u’개발 진행 현황1. MRT &CVM 개발MRT, TensorFlow 모델 정량화 정도(精度) 지속적으로 최적화하여 일부 버그를 수정하였다.MRT, 오퍼레이터 양자화 지원 및 코드 가독성을 향상시키기 위해 최적화 된 사용자 인터페이스 코드를 추가하였다.MRT, TVM과 NNVM의 의존성을 줄이고 MRT 배포의 용이성을 높여 입력 복잡성을 줄였다.CVM, Jetson Nano 플랫폼에서 일부 운영자의 성능을 지속적으로 최적화하였다.CVM, MRT 호출을 위한 심볼 레벨 파이썬 API 및 NDArray 파이썬 API를 캡슐화하여 모델 매개 변수를 유지하였다.Cortex 풀 노드 가상 머신 지능형 호출 모델 유추의 빠른 배포 및 연결에 편리하도록 Jetson Nano 장치를 위한 간단한 DApp을 설계하였다.CVM Z3 Prover, 기존 운영자를 계속 테스트하고 23 명의 운영자를 검증하였다.CVM Formalization 버전 코드 브로드 캐스트 연산자를 추가하고 해당 문서의 수학적 설명을 완성시켰다.​2. Cortex 전체 노드전체 노드 코드의 일부를 최적화 및 업그레이드하고, 트랜잭션 정보 쿼리 API를 개선하고, 노드가 닫힐 때 리소스 릴리스 로직을 조정하였다..DNS 레코드 모드 노드 주소 지정을 추가하고 p2p 검색 모드를 최적화하였다.전체 노드에 whisper 모듈을 추가했습니다.goroutine과 timer의 오버플로 문제를 해결하고 cvm 계산 op 매개 변수의 격식을 조정하였다.Torrent 커뮤니티 개발자와 UTM 프로토콜 OOM 문제를 제기하였다.팀의 핵심 개발자 인 ucwong은 이더리움 프로젝트에 대해 15 개의 코드 변경을 제출했으며 전부 채택되었다.3. DeFi 개발Cortex 기본 네트워크에서 온 체인 데이터 계약을 설정하였다. Cortex 체인에서 DeFi AI 예측 모델에 대한 데이터 지원을 제공하고 Cortex AI DeFi 기본 계약의 테스트 범위 및 다양한 기능 테스트를 더욱 향상시켰다.Cortex AI DeFi의 DAI 예금, DAI 인출 및 실시간 잔액 감지 기능을 최적화하고 사용자 운영 인터페이스를 개선하였다.운영 진행 현황개발자 인센티브 계획 거의 완성되었다.DApp 개발자 팀 오프라인 회의 진행하였다.블록체인 관련 문장 번역하였다.코르텍스 프로젝트 기본 기사 데이터 정렬하였다.블록체인 온라인 컨퍼런스를 진행하였다.[Cortex Updates] 2020–49호 was originally published in Cortex Labs on Medium, where people are continuing the conversation by highlighting and responding to this story.

Cortex

20. 04. 11

How One Hacker Made $360k i...

Correction: In the original article, I talked about how the hacker profited by crashing the price of WBTC — in reality, the hacker actually crashed the price of WETH and a few details in this article have been corrected accordingly. I was able to come to a better understanding of the event via this very detailed analysis on Medium with breakdown of the hacker’s balance, if you’re interested in doing the math yourself.Recently, a “hacker” started from nothing and made $360,000 in one single transaction by taking advantage of flash loan (there are some controversies regarding whether the event qualifies as a “hack” since technically the “hacker” did not do anything illegal). Given the number of DeFi components involved in this “hack”, a detailed explanation is required for DeFi beginners to understand it. In this article, I will walk you through the “hack” step-by-step, taking a pause along each of the 3 steps to explain the factors at work, so that you could gain a high-level understanding of what happened, beyond the jargons. Let’s call the “hacker” Joe.First Step: Flash Loan to Gain CapitalFirst, Joe took out a flash loanof 10,000 WETHs(about $3million) from the open trading platform dYdX. This served as his initial capital.Flash loan: Usually, to borrow money in DeFi, you need to undertake a CDP (collateralized debt position), which basically means that in order to borrow $80 worth of BTC, you need to deposit something like $100 worth of ETH as a collateral. If you fail to pay back the $80 of BTC you borrowed, you lose your collateral. In comparison, flash loan, a relatively new way to borrow money in DeFi, requires no collaterals. A flash loan smart contract lets you borrow a large sum of capital with no questions asked, as long as you pay back the borrowed amount during the same transaction(hence the name “flash loan”). If you fail to pay back the borrowed amount, the transaction will simply revert. Via flash loan, Joe started with near $0 (besides a few dollars for transaction fees) and gained access to $3million capital right away.WETH: Wrapped-ether. It’s backed 1-to-1 with real ether except that it is ERC20, meaning that you can trade it directly with other ERC20 tokens, including WBTC, which becomes important later. If this confuses you, just think of it as regular Ethers and keep reading.Second Step: Use the Capital to Hoard WBTCs, Pump Their Price with a Short Position and ProfitSecond, Joe sent about half of the 10,000 WETHs (5,500 WETHs) to Fulcrumand half to Compound.On Compound (a decentralized lending platform), Joe borrowed 112 WBTCs, using his WETHs as collateral (via a collateralized debt position, which I explained earlier). He will soon profit from these 112 WBTCs by pumping their price.Then on Fulcrum(a trading platform built from bZx), Joe opened a 5x leveraged short position of 1,300 WETHs in favor of WBTCs. This means that Joe borrowed and was selling WETHs on Fulcrum, expecting to be paid in WBTCs. To pay Joe his WBTCs, Fulcrum had to get them first; therefore, to get Joe the WBTCs, the Fulcrum smart contract automatically went to Kyberswap, which mainly used Uniswap, to buy WBTCs with WETHs, which drove the price of WBTC through the roof on Uniswap. Remember how Joe was holding 112 WBTCs from Compound? Now he could profit by selling those WBTCs on Uniswap, which netted him 6871 WETHs.Notice Joe made a very creative use of the short position here: usually people open short positions to profit by betting the asset’s price will go down; however, herethe sole purpose of the short position on Fulcrum was to drive up the price of WBTC and then profit from trading. Joe didn’t even bother to repay the short position — sure, he lost his deposits on Fulcrum but the amount was diminutive compared to the massive profit he made.Short position: A technique in financial markets in which you make moneywhen an asset’s price goes down. When you short 112 WBTC, you borrow 112 WBTC from others and sell them now for let’s say $10,000 per WBTC (pocketing $1,120,000). But you need to pay back this loan of 112 WBTC later and when you do, if the price of WBTC has dropped to $9,000 during that time gap, it only costs you 112 * $9,000 = $1,008,000 to pay back your loan. You still have $1,120,000 — $1,008,000 = $112,000 left in your pocket, which is your profit from the short position. The bottom line is that when you short WETH for WBTC, you’re selling (borrowed) WETHs, and the exchange needs to pay you in WBTCs for the WETHs.Uniswap: A decentralized exchange. Fulcrum only uses the Uniswap, and this centralization makes pumping the price relatively easy given the small market size.WBTC: An ERC20 token backed 1-to-1 with real Bitcoins. Similar to WETH, you can think of WBTC as BTC with much smaller market cap, which makes it easier for price manipulation (perhaps the reason why Joe chose to short it instead of real BTCs on Uniswap).Compound: A decentralized lending platform where you can take out loans of different cryptoassets with CDPs (collateralized debt positions). Fulcrum:A trading platform built on bZx that allows for margin trading (long/short positions).Third Step: Take Profit and Pay Back LoanLet’s pause and look at how Joe’s balance changed. He borrowed 10,000 WETHs in total first, locked 5500 WETHs into Compound as collateral to borrow 112 WBTCs. Now his available balance is 5500 WETHs and 112 WBTCs.On Fulcrum, he used 1300 WETH as deposit on the short position, so he had 3200 WETHs and 112 WBTCs left. After he pumped the price of those 112 WBTCs on Uniswap (with the short position) and then sold them, he netted 6871 WETHs. Now in total, he has 3200+6871=10071 WETHs in his pocket. So he repaid the flash loan and still had 71 WETHs left!How did Joe make the rest of the $360k then?Let’s not forget Joe’s Compound position. After repaying his flash loan, Joe still owed to Compound 112 WBTCs, with a collateral of 5500 WETHs; however, the difference is that now those 5500 WETH belonged to Joe now, because he had already repaid the flash loan. He only needed to return 112 WBTCs to get those 5500 WETHs back. Because in a collateralized debt position (and in DeFi in general), the loan is always less than the deposit, it made sense to pay back the loan. Joe simply bought 112 WBTCs, which costed him about ~4,300 WETHs and returned them to Compound, gaining access to an additional 1200 WETHs. So in total now he has 71+1200 = 1271 WETHs now, which at the time was worth close to $360,000 USD.Note that this Compound position should be considered a logistic detail. The profit was really made during the second step, which made the repaying of the flash loan and thus the access to the deposit of the Compound position possible.So to recap, Joe first took out $3million from flash loan on dYdX as his initial capital. Next, with half of the capital, he borrowed 112 WBTCs from Compound; with the other half, he pumped the price of WBTC on Uniswap (by opening a massive short position on Fulcrum). When the price was pumped on Uniswap, he sold the 112 WBTCs and with the new profit, he paid off the flash loan and walked away with the handsome profit. While nuanced debates around the morality of such practices are needed, one could at least appreciate the accessibility of DeFi- with the emergence of flash loan, literally anyone anywhere in the world can be empoweredwith a huge sum of capital and participate in the financial market in a nontrivial way.Disclaimer: If you understand everything in this article, you’ve understood the gist of what happened. Some exact details and numbers may require further investigation; therefore, if you’re interested in EXACTLY what happened, you can read the entire transaction on Etherscan hereand the source I referenced while writing this article here.How One Hacker Made $360k in a Day via a Flash Loan and Market Manipulation was originally published in Cortex Labs on Medium, where people are continuing the conversation by highlighting and responding to this story.

Cortex

20. 04. 09

Cortex Project Updates #46

Hope everyone is taking care of oneself 😷. We continue to be highly productive via telecommuting, even as some of us have gone back to our physical offices 💪. These past two weeks are marked by our two-year anniversary, Bithumb MainNet upgrade and development in MRT, CVM as well as DeFi!Technical Updates 🤖MRT & CVM DevelopmentFurther optimized CVM operators; performance of the test model improved by 10%.Added symbol and graph APIs to CVM-Runtime for developers to build CVM model structure diagrams.Further developed the fixed-point model on the Jetson-Nano device and updated the Python interface.Adjusted CVM code structure, streamlined redundant code, and optimized dynamic link library compilation options.Z3 Prover has verified 20 operators.For MRT, added TFLite to MXNet model conversion and fixed some code bugs.For MRT, added new quantitative model configuration, fixed some bugs, and improved user model usage documentation.Cortex Full Node DevelopmentUnified management of Torrent FS types with file renaming and cleaning.Upgraded transaction network broadcast protocol, reducing repeated broadcast of transactions and blocks.Streamlined file system log output, modified file system’s merkle tree, increasing generation efficiency.Full-node automatic packaging script; smart sub-contract creation optimization.Binary optimization of memory copy operation;Cortex Development EnvironmentBithumb MainNet token swap.DeFi DevelopmentCompleted testing of the Oracle contract for bi-directional data flow between Cortex and Ethereum, providing the required data for AI Portfolio Model inference; Conducted integration testing on the Oracle, Model, and DeFi contracts.Improved the logging system of the DeFi contract, providing transparency and credibility in DeFi operations;Reviewed the “MakerDAO 312 Incident” emergency mechanism.Community Updates 👨‍👩‍👦‍👦Bithumb Korea Exchange has completed the Cortex MainNet upgrade. Deposit and withdrawal of CTXC MainNet tokens will open at 15:00 (Korea time) on March 27, 2020.Discussion and design of developer incentive schemes.Translated and created original content in DeFiPublished translated article “DeFi Introduction Series (1): How Does Uniswap Work?”About Cortex 😇Cortex is the only public blockchain that allows the execution of nontrivial AI algorithms on the blockchain. MainNet has launched. Go build!TestNet| Block Explorer — Cerebro| Mining Pool | Remix Editor | Software |Social Media| Website | GitHub | Twitter | Facebook | Reddit | Kakao | Mail |Telegram| English | Korean | Chinese |https://medium.com/media/4aae97568ec36a07bf0d6a258688afcc/hrefCortex Project Updates #46 was originally published in Cortex Labs on Medium, where people are continuing the conversation by highlighting and responding to this story.

Cortex

20. 04. 01

[진행중] 코르텍스, 상장 2주년 기념 이벤트

안녕하세요, Cortex Korea입니다!코르텍스 코인(CTXC)는 2018년 3월 29일 후오비 거래소 상장을 시작으로 코인 거래를 시작했습니다.여러분의 큰 사랑과 응원 덕분에 지금까지 올 수 있었습니다:)지금까지 응원해주신 모든 분들께 진심으로 감사드립니다!이번 코르텍스 상장 2주년을 기념하기 위해 한국 사용자를 대상으로 이벤트를 진행할 예정입니다.이벤트 일정:이벤트 기간: 2020년 4월 12일(일) 19:00 까지당첨자 발표: 2020년 4월 13일(월) 19:00 발표이벤트 경품: 작성한 내용에 따라 케익 or 커피 기프티콘 증정지급 일정: 당첨자 발표 후 1주일 내참여 방법:1. 코르텍스 향후 가치 혹은 발전 가능성에 대한 개인의 생각을 코르텍스 공식 포럼에 게시글 남기기(첨가 이미지: 코르텍스 응원 포즈 사진)공식 포럼: https://bit.ly/3bCKzXS사진 예시: 코르텍스 로고인 삼각형 모양을 취한 포즈를 찍으신후 업로드(얼굴은 안나오셔도 됩니다)2. 1에서 작성하신 내용 및 이미지를 커뮤니티에 올리기(코인판, 블로그, 비트맨, 코박, 스팀잇, 머니넷 중 하나 선택)3. 구글폼 작성후 제출하기구글폼 링크: https://forms.gle/jCwzcYjTzie3tjpV9유의 사항:정성껏 작성한 내용일 수록 당첨될 확률이 높습니다.당첨자 명단 선정후 당첨자에게 별도로 이메일 공지가 전달됩니다.게시글 내용에 악의적인 글, 코르텍스 이외의 내용이 포함되는 경우 이벤트 참여에서 제외됩니다.당첨자 발표날까지 구글폼에 검색 불가한 내용을 제출하신 참여자는 당첨자 명단에서 제외됩니다.*본 이벤트의 최종 권한은 Cortex labs에 있습니다.여러분 많은 참여 부탁드립니다. 감사합니다:)[진행중] 코르텍스, 상장 2주년 기념 이벤트 was originally published in Cortex Labs on Medium, where people are continuing the conversation by highlighting and responding to this story.

Cortex

20. 03. 30

[Cortex Updates] 2020–48호

Cortex에 관심 가져주시는 여러분, 안녕하세요:)2020년 3월 27일 금요일Cortex Korea가 전하는 Project Updates,지금 시작합니다 ‘u’개발 진행 현황1. MRT &CVM 개발CVM 산자(算子)는 지속적으로 최적화하여 테스트 모델의 성능은 10% 향상되었다.개발자가 CVM 모델 구조 다이어그램을 작성할 수 있도록 CVM-Runtime에 Symbol 및 graph API를 추가하였다.Jetson-Nano 장치의 고정 소수점 모델 지속적으로 개발하고 Python 인터페이스를 업데이트 하였다.CVM 코드 구조 조정, 중복 코드 줄임 및 동적 링크 라이브러리(Dynamic Link Library, DLL) 컴파일 옵션 최적화하였다.Z3 Prover에 20개의 산자를 검증하였다.TFLite 모델을 MXNet 모델에 전환하여 MRT에 추가하고 일부 코드 버그를 수정하였다.새로운 정량적 모델(Quantitative Models) 배치를 MRT에 추가하고 일부 코드 버그 및 사용자 모델 사용 설명서를 수정하였다.2. Cortex 전체 노드Torrent FS types 통합 관리하여 파일 이름 변경 및 정리를 하였다.트랜잭션 네트워크 브로드 캐스트 프로토콜 업그레이드하여 트랜잭션 및 블록의 반복 브로드 캐스트 감소시켰다.파일 시스템 로그 출력 간소화시켜, merkle tree 파일 시스템 수정하여 생성 효율을 높혔다.전체 노드 자동 포장 스크립트하여 스마트 Sub-contractor(S/C) 생성 최적화하였다.메모리 복사 binary 최적화하였다.3. Cortex 개발 환경빗썸 거래소, 코르텍스 메인넷 전환 및 입출금 재개​4. DeFi 개발Cortex와 Ethereum 간의 데이터 흐름에 대한 Oracle 계약 테스트를 완료되었으며, 이는 AI 포트폴리오 모델에 필요한 유추 데이터를 제공해준다. 개발 된 Oracle, Model 및 DeFi 계약에서 통합 테스트를 진행하였다.DeFi 계약의 로깅 시스템을 개선하여 DeFi 작업에서 투명성과 신뢰성을 제공하였다.“MakerDAO 312 비상 사태”의 메커니즘을 검토하였다.​운영 진행 현황빗썸 거래소는 Cortex 메인넷 전환 작업 완료되었다. 2020년 3월 27일 15:00 (현지시간)에 Cortex(CTXC) 메인넷 전환 및 입출금 재개 오픈하였다.개발자 인센티브 제도 구축에 대해 토론하였다.블록체인 및 디파이 분야 내용 번역하였다.새로운 커뮤니티 구축 메커니즘 개발하였다.‘What is Uniswap? A Detailed Beginner’s Guide’문장 번역(번역 문장 링크: https://blog.naver.com/cortexlabs_korea/221870162966)[Cortex Updates] 2020–48호 was originally published in Cortex Labs on Medium, where people are continuing the conversation by highlighting and responding to this story.

Cortex

20. 03. 27

유니스왑(Uniswap)에 대해 알아보자

작가: BisadeAsolo번역: Cortex labs원문: https://www.mycryptopedia.com/what-is-uniswap-a-detailed-beginners-guide/유니스왑은 ETH와 ERC20 토큰 간의 자동 교환 거래를 용이하게 하도록 설계된 이더리움 기반인 프로토콜입니다. 유니스왑은 온체인(on-chain)에서 설치되어 탈중심화 지갑만 설치하면 누구도 이 프로토콜을 사용할 수 있습니다(현재 지원한 지갑: MetaMast, WalletConnect, Coinbase Wallet, Fortmatic, Portis). 유니스왑은 또한 탈중심화 프로토콜을 활용하여 암호화폐 자산 거래 과정 중에 철저히 탈중개화 시켜 일종의 디파이(DeFi) 프로텍트로 대중들에게 많이 알려져 있습니다.유니스왑은 두 가지 유형의 스마트 계약으로 구성됩니다.●거래 계약(An exchange contract)●팩토리 계약(A factory contract)이러한 계약은 Vyper 스마트계약 프로개이밍 언어로 작성되었으며 유니스왑 프로토콜 기능의 핵심이기도 합니다. 거래 계약은 정확히 하나의 ERC20 토큰을 지원하며 각 거래 계약에는 ETH 및 지원되는 ERC20 토큰이 있습니다. 이는 주어진 거래 계약에서 실행되는 거래가 ETH 및 ERC20 토큰의 상대적 공급을 기반으로 함을 의미합니다. 거래 계약에서 실행되는 거래는 또한 ETH를 중개자로 사용하여 ERC20 토큰 간의 직접 거래도 가능합니다.팩토리 계약을 사용하여 새 거래 계약을 배포할 수 있으므로 아직 유니스왑에 거래 계약이 없는 ERC20 토큰은 팩토리 계약을 사용하여 만들 수 있습니다. ‘createExchange()’함수를 이용하면 이더리움의 모든 사용자가 팩토리 계약을 사용하여 거래 계약을 배포할 수 있습니다. 팩토리 계약은 유니스왑 거래 계약의 레지스트리 역할을 담당하고 있습니다. 즉, 팩토리 계약을 사용하여 유니스왑 시스템에 추가 된 ERC20 토큰 및 거래 주소를 조회할 수 있습니다. 거래 계약이 릴리스 된 후, 팩토리 계약은 거래 계약의 ERC20 토큰에 대해 유사한 배경 점검 및 기타 작업을 수행하지 않으며 ‘거래 계약에 하나의 ERC20 토큰 만 포함(aside from the one-contract-exchange-per-token limit)’이라는 제한 사항만 있습니다. 따라서 사용자는 자신이 신뢰하는 ERC20 토큰 프로젝트의 거래에만 참여해야 합니다.유니스왑의 자산 유동성유니스왑 프로토콜의 설계 아키텍처는 전통적인 암호화폐 자산 거래소의 거래 모델과 전혀 다릅니다. 대부분의 거래소는 주문서를 관리하고, 이를 사용하여 특정 자신의 구매자 및 판매자와 일치시킵니다. 반면 유니스왑은 ‘예비금’ 유동성을 사용하여 계약에서 디지털 자산 거래의 교환을 실현합니다.유동성 공급자는 ETH와 거래 계약의 ERC20 토큰 사이에 동등한 가치라고 생각하면 입금하여 이를 수행할 수 있습니다. 유동성 공급자가 설정한 가치가 시장과 일치하지 않으면 차익 거래자는 ETH와 ERC20 토큰 사이의 가치를 맞추도록 할 것입니다.거래 계약의 예비금은 유동성 공급자 네트워크에 의해 공급됩니다. 거래 계약에 첫 번째 유동성을 제공하는 자에게 ETH와 ERC20 토큰 간의 환율을 설정할 권리가 있습니다. 첫 번째 유동성 공급자는 ETH와 거래 계약의 ERC20 토큰 사이에 동등한 가치라고 생각하면 입금하여 환율을 설정할 수 있습니다. 반대로, 유동성 공급자가 설정한 가치는 시장과 일치하지 않으면 차익 거래자는 이를 매매하여 차익을 얻어 동일한 환율을 맞추도록 합니다. 모든 유동성 공급자는 충전 시 적용 환율을 등가 계산의 기초로 사용합니다.유니스왑은 또한 자체적으로 ERC20를 준수하는 ‘유동성 토큰’을 발행하였습니다. 이 토큰은 유동성 공급자의 거래 계약에 대한 기여로 볼 수 있습니다. 유니스왑에서 ‘거래 계약에 하나의 ERC20 토큰 만 포함(aside from the one-contract-exchange-per-token limit)’에 대한 설정의 근거는 유동성 공급자가 유동성을 하나의 거래 계약에 단일 예비금을 모으도록 인센티브화 시키는 것입니다. 유니스왑은 각 유동성 공급자가 제공한 총 예비금의 상대적 비율을 추적하기 위해 유동성 토큰을 발행하였습니다. 유동성 공급자는 유동성 토큰을 소각시킬 수 있으며 거래 계약에서 ETH 및 ERC20 토큰의 비례 지분을 인출 할 수 있습니다.유동성 공급자는 거래 계약에서 유동성을 제거하지 않고도 계정간에 유동성 토큰을 판매하거나 이전 할 수 있습니다. 그러나 유니스왑의 유동성 토큰은 거래 계약에만 적용되고, 유니스왑 프로토콜과 연관된 단일 기본 고유 디지털 자산이 없습니다. 유동성 공급자는 ‘addLiquidity ()’함수를 호출하여 거래 계약에 입금 할 수 있습니다. 또한, 유니스왑에 유동성을 제공하는 사람은 수수료의 일정 부분을 받을 수 있습니다.1. 유니스왑 거래 : ETH ⇄ ERC20 거래유니스왑에서 실행할 수 있는 거래 유형 중 하나는 ETH와 ERC20 간에 거래입니다. 앞에서 언급했듯이 ETH와 ERC20 토큰 간의 환율은 거래 계약 내 각 자산의 유동성 풀의 상대적 규모를 기반으로 합니다. 환율은 유니스왑의 불변 공식에 의해 뒷받침됩니다.ETH pool * token pool = invariant이 불변 공식은 유니스왑 프로토콜에 거래 실행 중에 일정하게 유지됩니다. 다만, 불변 공식은 거래 계약에서 유동성이 변화될 때만 변경될 수 있습니다.ETH ⇄ BAT 예시 :Bob은 자신의 1ETH를 ERC20 토큰 인 BAT(Basic Attention Token)로 교환하기 위해 거래를 시작하려고 합니다. Bob은 유니스왑 프로토콜에서 기존 거래 계약을 사용하여 거래를 실행합니다. 예를 들어, 유동성 공급자는 10 ETH와 500 BAT를 거래 계약에 예치했습니다. 이때 기본 불변 공식은 ETH pool * BAT pool = invariant으로 설정됩니다.ETH pool = 10OMG pool = 500Invariant = 10 * 500 = 5,000Bob은 거래 계약의 ETH 풀에 ETH 1개를 보내 거래를 시작하려고 합니다. 이때 거래 금액의 0.3%즉 0.003ETH는 유동성 공급자에게 거래 수수료 보상으로 제공합니다. 나머지 0.997ETH가 ETH 풀에 추가됩니다.불변량을 ETH 풀의 새로운 수량을 제법으로 하여, BAT 풀에서 새로운 수량을 구합니다. 나머지 BAT 토큰은 구매자에게 즉 Bob에게 누락됩니다.Bob sends: 1 ETHFee = 0.003 ETHETH pool = 10 + (1–0.003) = 10.997BAT pool = 5000/10.997 = 454.67Bob receives: 500–454.67 = 45.33 BATBob이 거래를 시작할 때 이전에 획득한 유동성 공급자 수수료는 이제 유동성 풀에 다시 추가하게 됩니다. 이것은 유동성 공급자에게 거래 수수료를 보상으로 하여, 유동성 공급자가 유동풀에 자신의 ETH와 ERC20 토큰을 회수하면 보상을 받을 수 있습니다. 하지만, 유동성 공급자의 보상은 거래 계산 후에 다시 ETH 유동풀에 추가되어 거래 계약에서 거래를 진행할 때 마다 불변량이 점진적으로 증가함으로 유동성 공급자는 또한 수익을 목적으로 거래를 진행하는 경우가 있습니다. 거래가 완료되면ETH pool = 10.997 + 0.003 = 11BAT pool = 454.67new invariant = 5,001.37이번 거래에서, Bob의 적용 환율은 45.33 BAT / ETH입니다.1 ETH in45.33 BAT outRate = 45.33 BAT/ETH2. 유니스왑 거래 : ERC20 ⇄ ERC20 거래유니스왑에서 실행할 수 있는 다른 거래 유형 중 하나는 ERC20와 ERC20 간의 거래입니다. ETH는 모든 ERC20 토큰의 거래쌍으로 사용되므로 유니스왑은 ERC20 간의 거래로 ETH를 중개 자산으로 사용합니다. 예를 들어, 유니스왑을 사용하면 하나의 거래 계약에서 BAT를 ETH로 변환한 다음 다른 거래 계약에서 ETH를 OMG(ERC20 예시) 로 변환할 수 있습니다. 이것은 모두 같은 거래에서 진행됩니다. 앞에서 표시한 공식은 일반 시장과 매우 흡사합니다. 토큰을 많이 구매할 수록 거래 환율이 높아집니다.유니스왑 수수료 구조:유니스왑 프로토콜에서 실행되는 거래 수수료 구조는 다음과 같습니다.●ETH/ERC20토큰 거래 : ETH로 지불 된 0.3% 수수료●ERC20토큰/ETH토큰 거래 : ERC20 토큰으로 지불 된 0.3% 수수료●ERC20/ERC20 거래 : ERC20 토큰으로 지불 된 0.3% 수수료 및 ETH로 지불 된 0.3% 수수료유니스왑 토큰 거래 환율:유니스왑의 토큰 거래 환율 공식(출처: https://ethresear.ch/t/improving-front-running-resistance-of-x-y-k-market-makers/1281) 으로 ERC20 토큰의 거래 환율을 계산하겠습니다.x * y = kk는 변하지 않는 상수x와 y는 특정 거래쌍에서 사용 가능한 ETH 및 ERC20 토큰의 수량유니스왑의 경우 ERC20와 ETH의 거래 계약 중 ETH 및 ERC20 토큰의 유동풀의 보유량으로 나타납니다. 이 공식을 사용하면 주어진 토큰의 환율은 항상 위 공식의 결과 곡선 특정 지점에 있습니다.x * y = k 공식은 유니스왑 프로토콜의 구성 부분이며 비탈릭 부테린은 아래 그래프를 사용하여 다음과 같은 방식으로 설명하였습니다.이 공식을 사용하여 유니스왑의 거래 계약을 예로 들면, 거래 계약에 x 개의 A 토큰과 y 개의 B 토큰이 있습니다. 이 계약에 x * y로 얻은 k의 값은 변하지 않습니다.모든 개인은 x * y 곡선에서 마켓 메이커의 위치를 효과적으로 토큰을 매수 및 매도할 수 있습니다.가로 축은 판매 된 A 토큰 수를 나타내고, 세로 축은 구매 한 B 토큰 수를 나타냅니다.B 토큰이 ETH이고 A 토큰이 ERC20 토큰이라고 가정하면 x * y = k의 공식을 통해 해당 기능을 이해할 수 있습니다.Alice가 대량의 A 토큰을 구매하기로 결정하면 A 토큰이 부족 해지고 ETH 수량이 증가됩니다. Alice의 구매 행동으로 인해 환율이 x * y = k 곡선을 다른 점으로 이동할 수 있습니다.빨간색 점이 왼쪽으로 이동하면 A 토큰 구매 가격이 높아집니다.유니스왑 거래 계약에서 ETH 및 A 토큰의 상대적 공급은 A 토큰과 ETH 간의 환율을 결정하는 A 토큰의 공급 및 수요 관계로 이해 할 수 있습니다.앞서 언급했듯이, 거래 계약에 유동성의 첫 예금은 환율에 의해 의존하지 않습니다. 대신, 유동성 공급자가 ETH와 ERC20 토큰 간의 환율을 반영하는 ETH 및 ERC20 토큰을 예치하면 그 뒤에 환율이 달라질 수 있습니다. ETH와 ERC20 토큰의 가치가 너무 높거나 낮으면 차익 거래자는 시장이 정상이 될 때까지 격차를 빠르게 좁힐 것입니다.유니스왑 및 차익거래:유니스왑은 분산형 온체인 암호화폐 자산 거래소이지만 중앙화 거래소를 대체 할 수는 없습니다. 유니스왑의 거래 메커니즘이 왜곡되는 경우 이를 수정할 수 있는 메커니즘이 있어야합니다. 이 메커니즘은 차익 거래의 형태로 존재합니다.차익 거래는 부동한 거래 시장에 존재하는 가격 차이를 이용하는 거래 전략입니다. 암호화폐의 경우 이 가격 차이는 암호화폐 거래소 간의 가격 차이에서 찾을 수 있습니다. 거래자가 차익 거래를 할 수 있는 기회를 찾은 경우 한 거래소에서 암호화폐를 구입한 다음 다른 암호화폐 거래소에서 판매합니다. 거래자는 유니스왑에서 나타날 수 있는 가격 차이를 다른 암호화폐 거래소에 존재하는 환율을 이용할 수 있기 때문에 차익 거래는 유니스왑의 기능에서는 필수적이라고 볼 수 있습니다.유니스왑 및 가스비용:유니스왑 프로토콜을 사용하여 디지털 자산을 거래 할 때 얻을 수 있는 장점 중 하나는 가스 효율이 매우 높다는 것입니다. 유니스왑에서 거래를 진행 할 때 발생하는 가스 비용은 대체 분산 형 거래소보다 상대적으로 저렴합니다. 아래 표를 참고하면 ETH/ERC20, ERC20/ETH, ERC20/ERC20은 Bancor, EtherDelta보다 훨씬 저렴하다는 것을 알 수 있습니다.가스 효율은 유니스왑 프로토콜의 장점 중 하나이며 그 외에 장점은 다음 아래와 같습니다.유니스왑은 탈중앙화 되어 있으므로 제3자에게 의뢰하지 않습니다. 또한 유니스왑은 프로토콜에 사용하려는 모든 사람이 자유롭게 액세스 할 수 있습니다.유니스왑의 거래 비용은 다른 암호화폐 거래소에 비해 상대적으로 저렴합니다.유니스왑을 사용하면 모든 사용자가 주어진 ERC20 토큰에 대한 거래 계약을 작성할 수 있습니다.하지만, 유니스왑에 아래와 같이 몇 가지 단점이 존재하고 있습니다.유니스왑은 차익 거래를 의존하여 거래 환율과 시장의 유지를 실현시킵니다. 이것은 유니스왑이 환율 균형을 유지하기 위해 다른 암호화폐 거래소에 의존하고 있음을 의미합니다.유니스왑은 여전히 실험 단계이며 암호화폐 자산거래 효율을 촉진하는 데 더 많은 개발이 필요합니다.결론결론적으로 유니스왑은 암호화폐 자산 거래의 효율을 높이는데 큰 도움이 있습니다. 하지만, 유니스왑은 아직 초기 단계이므로 앞으로 더 많은 개발 작업이 필요합니다.유니스왑(Uniswap)에 대해 알아보자 was originally published in Cortex Labs on Medium, where people are continuing the conversation by highlighting and responding to this story.

Cortex

20. 03. 24

DeFi科普系列之(一):Uniswap到底是怎么运转的?

作者:BisadeAsolo原报告链接:https://www.mycryptopedia.com/what-is-uniswap-a-detailed-beginners-guide/翻译&校对:Cortex Labs(CTXC)运营团队Uniswap是一种基于以太坊的协议,旨在促进ETH和ERC20 代币数字资产之间的自动兑换交易。Uniswap完全部署在链上,任何个人用户,只要安装了去中心化钱包软件(当前已经支持的钱包包括 MetaMask、WalletConnect、Coinbase Wallet、Fortmatic、Portis),都可以使用这个协议。Uniswap也可以被认为是一个DeFi项目,因为它试图利用去中心化协议来让数字资产交易过程中彻底实现去中介化。Uniswap 中包含两种类型智能合约:交易合约工厂合约这些智能合约是用Vyper智能合约编程语言来编写的,它们是Uniswap协议实现各种功能的核心组成。一个交易合约支持一种ERC20代币,每一个交易合约都储备持有一定量的ETH以及支持的这种ERC20代币。这意味着,在某个ERC20代币-ETH交易合约中执行的交易,都是基于这个合约中的 ETH和此种ERC20代币的相对供应量来实现的。通过ETH作为中间介质,交易合约还可以实现一种ERC20代币与另一种 ERC20代币的直接交易。工厂合约可用于部署新的交易合约,因此,任何还没有在Uniswap上面有交易合约的ERC20代币,都可以使用工厂合约来部署一个交易合约。任何以太坊的用户都可以通过‘createExchange()’函数实现这一点。工厂合约扮演了Uniswap中交易合约“注册中心”的角色,工厂合约可以用来查找所有已经被添加进Uniswap系统里面ERC20代币和交易地址。在一个交易合约发布后,工厂合约不会对此交易合约中的ERC20代币做类似背景调查之类的操作,只有一个“一交易合约只包含一种ERC20代币”的限制。因此,用户应该只参与那些自己信任的ERC20代币项目的交易行为。Uniswap 的资产流动性Uniswap协议的设计结构体系与传统数字资产交易所中的交易模型完全不同。大多数传统交易所都是通过维护一个“订单簿”,来匹配一种数字资产的买卖双方。Uniswap则完全不同,它是利用储备金流动性来实现协议上的数字资产交易兑换。交易合约中的储备金是由众多“流动性提供者”来提供的。这些流动性提供者将等值的ETH以及ERC20代币充值到这个交易合约中。第一个向此合约中提供流动性的流动性提供者就拥有设置此ERC20代币与ETH之间兑换汇率的权利。第一个流动性提供者把自己认为等价值的ETH数量和ERC20代币数量充值到此交易合约,就可以实现设置汇率。而如果第一个流动性提供者设置的这个汇率和外面更大盘的市场不一致,那么套利交易者就会通过搬砖来把这些价差抹平,和大盘保持一致的汇率。此后所有流动性提供者将以其充值时的汇率作为计算等价的依据。Uniswap还发行了一种“流动性代币”,这种流动性代币也符合ERC20标准。这个流动性代币代表流动性提供者对这个交易合约的贡献。Uniswap设置“一个交易合约只支持一种ERC20代币”这样的限制,背后的逻辑是:鼓励流动性提供者将他们提供的流动性集中到一个交易合约的储备金中。Uniswap发行流动性代币,就是为了追踪每个流动性提供者贡献的储备金占总储备的比例。而流动性提供者可以选择在任何时间销毁自己持有的流动性代币,然后就可以把对应比例份额的ETH和该种ERC20代币从交易合约中赎回出来了。流动性提供者也可以选择直接出售或者转移其持有的流动性代币,而无需从交易合约中移除流动性。不过,Uniswap流动性代币严格限定在一个交易合约中,并不存在一个和Uniswap协议相关联的单独的基础原生数字资产。流动性提供者通过调用“addLiquidity()”函数来把流动性充值到此交易合约中,而一旦有交易发生,作为回报,流动性提供者将会获得一定份额的交易手续费。Uniswap 上的交易类型之一:ETH ⇄ ERC20 交易在Uniswap上可以进行的交易中的一种,就是ETH和ERC20代币之间的交易。就像前面提到的,这个交易对的汇率取决于此交易合约内ETH和该 ERC20代币流动性池的相对规模。这个交易汇率是由Uniswap的恒定乘积公式来决定的:ETH 池 * token 池 = 恒定乘积值在Uniswap上执行任何交易,此恒定乘积值都保持不变。只有当此交易合约中的流动性池发生变化的时候,此恒定乘积值才会发生变化。我们用 ETH ⇄ BAT(一种ERC20代币)来举例:Bob想要发起交易来用自己的1个ETH兑换成ERC20代币BAT,Bob将使用 Uniswap上已经存在的BAT交易合约来实现此兑换操作。此时,流动性提供者已经将一定量的ETH和BAT存在了交易合约中。我们这里举例,流动性提供者一共存了10ETH和500BAT。因此,基础的恒定乘积值为:ETH 池 * BAT 池 = 恒定乘积值ETH 池 = 10BAT 池 = 500恒定乘积值 = 500 * 10 = 5000Bob将通过向交易合约的ETH池发送1ETH来启动这笔交易,此时,交易金额的0.3%也就是0.003ETH将被扣除作为给流动性提供者的报酬。剩余的0.997ETH则被添加到了ETH池里面。然后,恒定乘积值除ETH池中新的ETH数量,来得到BAT池中应该有的数量。那么多出来的BAT,就可以分给Bob了。具体如下:Bob发送了 1 ETH费用 = 0.003 ETHETH 池 = 10 + (1–0.003) = 10.997BAT 池 = 5000/10.997 = 454.67Bob 将兑换得到 : 500–454.67 = 45.33 BAT这个在Bob开始交易时收取的流动性提供者费用,现在又重新添加到ETH流动池里面。这是对流动性提供者的一种报酬,当这些流动性提供者从流动池中取回自己的ETH和ERC20代币时,可以获得这些报酬。由于这些流动性提供者的报酬是在上述兑换交易计算后才添加回ETH流动池里面,因此在交易合约上每执行一次交易,恒定乘积值就会增加一点,这就让流动性提供者为交易合约提供流动性这件事儿,成为一种有利可图的行为。这笔交易完成后,ETH 池 = 10.997 + 0.003 = 11BAT 池 = 454.67新的恒定乘积值 = 5,001.37在这次交易中,Bob兑换的汇率为 45.33 BAT/ETH1 ETH 入45.33 BAT 出汇率 = 45.33 BAT/ETHUniswap 上的交易类型之二:ERC20 ⇄ ERC20 交易在Uniswap上可进行交易类型中的另一种,就是ERC20代币兑换为另一种ERC20代币。由于ETH是被当作所有ERC20代币的公共交易对,因此Uniswap使用ETH作为中介资产,来实现ERC20代币和ERC20代币之间的兑换交易。例如,Uniswap可以实现:在一个交易合约中把BAT兑换为ETH,再在另一个交易合约中将ETH兑换为OMG(举例另一种ERC20代币),这些都是发生在一个交易操作里面。前面提到的这个乘积恒定公式和一般市场非常相似,因为你想购买的代币越多,此交易的边际汇率就会越高。后面我们会再详细介绍这一部分。Uniswap 收费标准Uniswap对已经发生的交易收费标准如下:ETH/ERC20代币交易:ETH交易额的0.3%ERC20代币/ETH代币交易:ERC20代币交易额的0.3%ERC20/ERC20交易:卖出ERC20代币交易额的0.3%以及中间介质ETH交易额的0.3%Uniswap 代币交易汇率Uniswap用来确定token交易汇率的恒定乘积公式,最初来源自2018年3月Vitalik Buterin发表过的一篇文章中。此文中表述,根据以下公式来计算ERC20代币的交易汇率:x * y = kk 表示一个不变的常数x 和 y 表示特定交易对中ETH和ERC20代币的可用数量。对于Uniswap而言,则是该ERC20代币和ETH的交易合约中ETH和该ERC20代币的流动性池的储备量。在这个公式中,该ERC20代币和ETH的兑换汇率,将始终处于此公式结果曲线上的某一点。这个公式是Uniswap协议的组成部分,Vitalik Buterin使用下面这个图来对其进行描述:使用此公式,如果以Uniswap中的交易合约举例,则代表该交易合约储备有 x 数量的A代币和 y 数量的B代币。这个合约将始终保持乘积恒定,也就是说 x * y 得到的 k 值不变。任何人都可以通过有效改变做市商在 x* y 曲线上的位置来进行买入或者卖出代币。横轴代表卖出的A代币的数量,纵轴代表买入的B代币的数量。假设B代币是ETH,而A代币是任意一种ERC20代币,我们可以通过 x * y = k 的公式来理解一下它们的功能:如果Alice决定买入大量A代币,那么将导致A代币的紧缺,并且导致ETH数量的增加。Alice购买的行为导致了把汇率移动到了 x * y = k 曲线上的另一个点。红点将向左移动,也就是买入A代币的价格变得更加高。也可以将Uniswap的交易合约中的ETH和A代币的相对供应理解为A代币的供需关系,这种供需关系决定了A代币与ETH之间的汇率。如前所述,第一个为交易合约提供流动性的充值操作,并不取决于交易汇率。而是反过来,后面的交易汇率,将取决于第一次为交易合约提供流动性的这个充值操作充值了多少ETH和ERC20代币,用第一个流动性提供者认为的等值,来反映ERC20/ETH的兑换汇率。如果这个汇率和市场对比过高或者过低,套利交易者都会很快把差距抹平,直到市场正常水平。Uniswap 和套利交易有一点需要强调,尽管Uniswap是一个去中心化的链上数字资产交易平台,但它并不是为了取代中心化交易所的。因为如果Uniswap上的交易机制出现偏差,则必须存在一个正常的交易机制来对此进行纠正。这个纠正的过程,就是以套利交易的形式存在。套利交易是一种利用不同交易市场之间的价差进行获利的交易策略。在数字加密货币领域,某一种加密货币资产在不同的交易所之间可以找到价差。如果交易者发现了套利交易的机会,那么他们将会在一个交易市场买入此种加密货币,而在另一个交易市场卖出此种加密货币。套利交易对于Uniswap的功能至关重要,因为套利交易者可以利用其他加密货币交易所中存在的汇率来对Uniswap上可能出现的汇率偏差进行纠正。Uniswap 和 Gas 消耗使用Uniswap协议来兑换交易的优点之一,是在Uniswap上交易产生的Gas成本相对于其他去中心化交易所,非常低。Gas消耗水平如下表所示,ERC20/ETH、ETH/ERC20、ERC20/ERC20,比Bancor、EtherDelta都要低很多。节省Gas只是Uniswap协议的优点之一,更多优点还包括:Uniswap是去中心化的,因此,它不依赖任何第三方。此外,它对任何用户都是免费访问的。和其他数字资产交易平台相比,Uniswap上进行交易的成本更低。Uniswap允许任何用户创建任何ERC20代币的交易合约。当然,Uniswap也存在其局限性:Uniswap确实是依赖套利交易来保证交易汇率和市场一致,这意味着Uniswap是依赖其他交易所的交易汇率来保障自己的的汇率平衡。Uniswap目前仍处于试验阶段,需要在其中进行更多开发,来关注它在促进数字资产交易方面的效率。结语总而言之,Uniswap使数字资产交易变得更加高效。不过,Uniswap尚且处于起步阶段,最令人期待的还是未来的发展。官方网站https://www.cortexlabs.ai/官方论坛https://www.cortexlabs.ai/forum/商务合作support@cortexlabs.ai社区链接Website: https://www.cortexlabs.ai/Twitter: https://twitter.com/CTXCBlockchainFacebook: https://www.facebook.com/cortexlabs/Reddit: https://www.reddit.com/r/Cortex_Official/Medium: https://medium.com/cortexlabs/Telegram: https://t.me/CortexOfficialENChinese Telegram: https://t.me/CortexOfficalCNDeFi科普系列之(一):Uniswap到底是怎么运转的? was originally published in Cortex Labs on Medium, where people are continuing the conversation by highlighting and responding to this story.

Cortex

20. 03. 21

5步轻松看懂:如何利用DeFi漏洞获利36万美金

最近,一个“黑客”几乎0成本,利用Flash Loan【中文直译:闪电贷。具体见注释1】提供的贷款在一次交易中赚取了36万美金(对于这次事件到底是不是属于“黑客攻击”的范畴,目前还存在很大争议,因为从技术上讲,这位“黑客”没有做任何非法的事情)。考虑到此“破解”事件中涉及到的DeFi产品的数量,如果想要让那些对DeFi只有初步了解的人容易理解,必须要尽可能的讲清楚相关细节。在本文中,我将逐步引导读者一步一步完成“破解”操作,并在一些关键步骤中做出进一步解释。以便你可以对这次事件到底是如何发生的有一个更深刻的理解和认识,而不再只是“略知一二”。CortexLabs注释1:Flash Loan,中文直译名称为闪电贷。“闪电贷”是在一个区块内在不同 DeFi 借贷平台发起多笔交易的方式,也就是不同资产和债务之间的转贷。“闪电贷”也是一种无需抵押物的借贷方式,前提是贷款的发行和偿还必须在以太坊同一个区块内完成,按照目前以太坊的出块速度,大约 13 秒。为了表述方便我们暂且把这位“黑客”称之为Joe吧,Joe在十几秒(一个以太坊区块的时间内)按照顺序发起以下几笔交易:第1步:FlashLoan借:从dydx上借10000 WETH。CortexLabs注释2:WETH:英文全称:Wrapped-Ether,翻译为“包装过的ETH”。因为ETH在ERC20标准被定制之前就存在了,因此ETH并不符合自己的ERC20标准。WETH可以让ETH在去中心化的交易平台上和其他符合ERC20标准的代币进行直接交易。1WETH=1ETH。后文中出现的WBTC原理和WETH一样,1WBTC=1BTC。第2步:Compound抵押借贷:5500 WETH充值至Compound合约,以5500 WETH作为抵押物借贷出112 WBTC。第3步:dZx保证金杠杆交易:1300 WETH充值到dZx合约,5倍杠杆做空。具体操作可简单理解为,从bZx借出5637.623762 WETH,并通过KyberSwap在Uniswap中卖出,卖成为 51.345576 WBTC。这一步其实是将Uniswap中的WETH/WBTC的价格砸穿。当时正常WETH/WBTC的价格大约为0.025974,而这一步卖出的操作,基本上把Uniswap中WETH/WBTC的价格砸到了0.00910747。接近三倍。CortexLabs注释3:做空:金融市场中的一种当资产价格下跌时能获利赚钱的手段。举例说明:当你做空100 ETH,你从其他地方借来了100 ETH,然后在ETH价格为280美金(这里举例)的时候马上卖掉,你会获得28000美金。但是你仍然需要偿还100 ETH。这个时候,BTC的价格已经被砸到了250美金,那么你只需要偿还100*250=25000美金。于是你还剩下3000美金,这就是你做空的收益。这里举例说明的是1倍杠杆的基础逻辑。第4步:Uniswap交易:用第2步从Compound里借出来的112 BTC,在Uniswap里买回ETH,共买回6871.4127388 ETH。第3步把WETH/WBTC的价格砸穿近三倍,这个时候再用从Compound中抵押借出来的112 WBTC,把WETH买回来。此过程中,Uniswap中WETH/WBTC的价格又被拉升,最终买回了6871.4127388 ETH。第5步:FlashLoan还:FlashLoan借出来的10000 WETH中还有未使用的3200 WETH,再加上第4步中用112 WBTC买回的6871 WETH,共10071.4127388 WETH。10000 WETH进行Flash Loan归还。还剩余71.4127388。到这一步,整个操作就结束了。只要这些交易在以太坊的一个区块时间内发生,并且被以太坊的下一个区块打包确认,那么这些交易就会按照发起的时间,进行执行。关键点:由于Flash Loan的条件达成,在一个区块内归还,那么整个这些步骤的交易就都可以实现。那么我们来看下,Joe的收益情况:从这5步操作,Joe看起来像是只获得了71.4127388 WETH。但不要忘记:在Compound里和bZx里,Joe还有两个仓位。第一个是Compound里面的抵押借贷。抵押了5500 WETH,借出了112 WBTC。另一个是bZx里面的保证金杠杆交易,抵押了1300 WETH,5倍杠杆卖出做空。剩余51.345576 WBTC。由于bZx采用的是Uniswap中的WETH/WBTC价格作为喂价,而Uniswap中的WETH/WBTC价格又被Joe操控。所以,按照常规理解,bZx中Joe的这个仓位理应是被爆仓的。而实际情况是,这个仓位里只剩余了第3步操作中获得的51.345576 WBTC。这个仓位,Joe显然并不想理会。哪怕剩余的51.345576 WBTC被扣掉。(事实上bZx也确实扣掉了这51.345576 WBTC。)而Compound中的仓位,Joe更有兴趣。按照此时ETH/BTC的正常价格大约为0.025974,Joe只要从市场上花费4300 WETH,就可以买到112 WBTC。然后归还给Compound,就可以赎回5500 WETH。这一下可以收益大约1200 WETH。因此,Joe在这次操作中获利情况应该是:1200+ 71.4127388 = 1271.4127388 WETH。按照当时ETH的价格差不多在280美金,总获利大约为355880美金。那么问题到底出在哪里?综合上面的细节步骤来看,问题出在了bZx的保证金杠杆交易智能合约中。首先,bZx采用了Uniswap中的WETH/WBTC价格作为喂价。而Uniswap里面的深度又不足。其次, bZx中的保证金杠杆交易,无论做多或者做空,买入或卖出的市场也是Uniswap。也就是说,bZx本身就会对Uniswap的价格造成影响。最关键的,bZx保证金杠杆交易,在Uniswap上面的价格被砸穿(其实是被bZx自己借出去的币砸穿)后,这个仓位的保证金早就严重不足,但又没有既定的阻止办法。后记:此文目的并非是在事件发生后,再去指责任何DeFi产品的漏洞或者对这位我们称之为Joe的黑客有什么褒贬。此文目的,仅仅是为了让更多普通加密货币领域参与者对DeFi产品逻辑有更进一步的理解,并且是通过尽可能简单易懂的方式。同时也希望让大家看到,导致此次事件的根本原因是什么,开发者在后续进行其他DeFi产品设计的时候,也应该从中吸取到教训。再升华一下,此次事件其实也引起了DeFi领域关于DeFi产品到底要不要设置所谓“管理员权限”的讨论。此文作为一个引子,我们后续可以继续针对此类内容分享给Cortex中文社区。5步轻松看懂:如何利用DeFi漏洞获利36万美金 was originally published in Cortex Labs on Medium, where people are continuing the conversation by highlighting and responding to this story.

Cortex

20. 03. 19

Cortex Project Updates #45

Hope everyone is staying safe and implementing social distancing 😷. The Cortex team continues to be equally if not more productive as before by working remotely. See specific update logs below! 💪Technical Updates 🤖MRT DevelopmentContinuously improved and updated MRT file and the pre-processing method documentation of converted models. Improved the model accuracy after quantization and the output post-processing documentation.Investigated static methods for optimizing the accuracy after quantization: Restore & Requant. The first version of the code has been implemented.Equipment development with regard to Nvidia Jetson-Nano, added COCO data set for MRT and conducted ssd_ mobilenet1.0_coco model quantization.MRT compiled to CVM model, added fixed shape pass, reducing the size and calculation of compiled models for certain programs.Fixed model conversion bug for Tensorflow Lite. Fixed MRT model quantization bug.CVM DevelopmentDuring the model infer process, changed the dynamic memory application to static allocation, reducing the memory consumed by model inference and the execution time.CVM Profiling system reconstruction and refactorization; The operator execution time in model inference has been displayed visually in list form.CVM-runtime CPU version operator has been greatly optimized, the test model has been reduced from 4s to 1.4s, and some bugs have been fixed.Optimized the performance of the CUDA version operator, improving the performance of the test model by 4-8 times, which has been the infer time of the model acceptable for the demo on the Jetson-Nano device.Added a python interface for the CVM-runtime framework based on two types of APIs: cython and ctypes, convenient for AI developers to call fixed-point models.Jetson-Nano’s CVM code transplantation work is basically completed; Tested the object classification and recognition of Cortex fixed-point models.Z3 Prover formal verification continued to advance, and has now been verified to 10 operators, and the corresponding CVM formal code is continuing to advance as well.Cortex Full Node DevelopmentFull node block storage cache optimization, lightening of the memory pool state control.For Torrent FS, synchronized block content and the latest block split multi-threaded processing; Optimized the structure of storage objects: block, file.Optimized blockchain status submission process.Cortex Development EnvironmentBithumb exchange technical support.Cortex Swap Request Automatic Alert.Community Updates 👨‍👩‍👦‍👦Translated articles in topics such as DeFi;Published original article “How One Hacker Made $360k in a Day via a Flash Loan and Market Manipulation”;Discussed potential collaboration with DeFi teams.Designing incentives for develoeprs.Online blockchain conference and virtually coordinated with different media.About Cortex 😇Cortex is the only public blockchain that allows the execution of nontrivial AI algorithms on the blockchain. MainNet has launched. Go build!TestNet| Block Explorer — Cerebro| Mining Pool | Remix Editor | Software |Social Media| Website | GitHub | Twitter | Facebook | Reddit | Kakao | Mail |Telegram| English | Korean | Chinese |https://medium.com/media/4aae97568ec36a07bf0d6a258688afcc/hrefCortex Project Updates #45 was originally published in Cortex Labs on Medium, where people are continuing the conversation by highlighting and responding to this story.

Cortex

20. 03. 18

[Cortex Updates] 2020–47호

Cortex에 관심 가져주시는 여러분, 안녕하세요:)2020년 3월 16일 월요일Cortex Korea가 전하는 Project Updates,지금 시작합니다 ‘u’개발 진행 현황MRT 개발변환 된 모델의 전처리 방법 문서를 개선하기 위해 MRT 파일이 지속적으로 업데이트되며 새로운 모델 양자화 정도(精度) 출력 후 처리 문서를 추가하였다.양자화 후 정도를 최적화하는 정적 방법 조사 : 튜닝 코드의 첫 번째 버전 Restore & RequantNvidia Jetson-Nano 장비 개발에 연결하여 MRT에 COCO 데이터 세트 및 ssd_mobilenet1.0_coco 모델 정량화 추가하였다.MRT를 CVM 모델로 컴파일 및 고정하여 모양 패스(fixed shape pass)를 추가하여 컴파일 후 모델의 크기와 계산량을 감소시켰다.Tensorflow Lite 모델 변환 버그 및 MRT 모델 양자화 버그 수정하였다.2. CVM 개발모델 추론 프로세스 중 정적 할당을 위한 메모리 애플리케이션의 동적 수정으로 모델 추론 메모리 소비를 줄여 실행 시간을 단축시켰다.CVM Profiling 시스템 재구성 및 단순화하여 모델 유추의 연산자 실행 시간이 목록에 표시되었다.CVM-Runtime CPU 버전 연산자를 최적화하여 테스트 모델이 4초에서 1.4초로 감소되었으며 일부 버그가 수정되었습니다.CUDA 버전의 연산자 성능을 최적화하여 테스트 모델 성능을 4–8 배 향상시켰다. 이는 Jetson-Nano 디바이스 데모의 적절한 모델 추론 시간이었다.CVM-Runtime 프레임 워크에 python 인터페이스를 추가하였다. 성능에 따라 호출 API에는 cython과 ctype의 두 가지 유형이 있으며 AI 개발자가 전화 모델을 호출하는 것에 편리하다.Jetson-Nano의 CVM 코드 이식 작업이 기본적으로 완료되었으며 Cortex 고정 소수점 모델의 객체 분류 및 인식이 테스트되었다.Z3 Prover 형식화 검증 작업 추진하고 있으며 현재 10개의 연산자까지 검증되었으며 해당 CVM 형식화 코드도 계속 연구 추진중이다.3. Cortex 전체 노드전체 노드에 대한 블록 캐시 최적화, 경량 메모리 풀 상태 제어하였다.Torrent FS를 블록 컨텐츠와 최신 블록 분할 멀티 스레드에 동기화 처리하였다. Storage 대상: block, file 구조 최적화하였다.블록체인 상태 제출 프로세스 최적화하엿다.4. Cortex 개발 환경​Bithumb 거래소 기술 지원Cortex 상환 요청 자동 알림5. Cortex 개발 환경​Cortex CVM 기반 AI 포트폴리오 모델 개발: DeFi의 실시 수치를 기반으로 DeFi의 수익률 및 수입 구간 유추하여 최종 가중치 분포 획득 가능하다.체인링크 오라클을 기반으로 Cortex와 Ethereum 간의 양방향 데이터 흐름에 따른 오라클 계약 개발하였다.AI DeFi의 사용자 인터페이스를 지속적으로 개선하고 오라클의 작동을 볼 수 있는 로그 시스템 제공하였다.비즈니스 운영 현황DeFi 분야의 문장 작성 및 번역하였다.DeFi 개발팀과 비즈니스 미팅을 진행하였다.개발자 인센티브에 대해 설계 및 검토를 진행하였다.언론메체와 블록체인 분야의 이벤트 계획중이다.[Cortex Updates] 2020–47호 was originally published in Cortex Labs on Medium, where people are continuing the conversation by highlighting and responding to this story.

Cortex

20. 03. 16

탈중앙화 금융 서비스 디파이(DeFi) 란?

이미지 출처: defi-network오늘은 작년에 글로벌 화재의 일부 디파이(DeFi) 내용에 대해 소개해 드리겠습니다. 근년래 디파이 서비스 플랫폼이 연이어 나타남에 따라 글로벌 블록체인 전문가와 투자자는 디파이에 관심 많아지기 시작하였습니다. 하지만 여전히 디파이의 의미, 디파이의 영향에 대해 잘 모르는 사람들이 있을겁니다. 코르텍스의 자체 디파이 서비스도 올해 제공될 예정이므로 그 전에 디파이 내용을간단하게설명해 드리겠습니다.디파이(DeFi)란 탈중앙화 금융(Decentralized Finance)의 약자로서 즉 탈중앙화된 분산금융 또는 분산재정을 의미합니다. 이것은 매우 이해하기 쉬우며 누구나 고정 센터 없이 가치 흐름에 참여할 수 있습니다. 쉽게 말하면 디파이는 블록체인 기술을 핵심으로 만든 금융 시스템입니다. 기존의 금융 서비스과 같이 대출, 자산 거래, 투자 등 금융활동을 실현할 수 있습니다. 그러나 기존의 금융 서비스는 심지어 가장 기본적인 예금, 이체, 대출 또는 파생상품 거래 조차도 주로 중앙 시스템에 의해 통제됩니다. 그러나 분산 금융 시스템인 디파이는 분포식 오픈 소스 스마트계약으로 중앙 기관 필요없이 투명성을 가진 중개 기구를 만들 수 있습니다. 즉 누구나 중앙 권한 없이 P2P 형태인 탈중앙화 시스템을 접촉할 수 있습니다. 이것은 전통적인 금융 시스템의 단점을 보완할 수 있습니다.현재 디파이는 주로 담보 대출 및 대출 분야에서 사용하고있습니다. 사용자들이 스마트 계약으로 스테이블 코인 및 기타 주류 자산을 차용하는데 가능하며 만기 후에는 대출 자산을 반환하여 자체 담보 자산을 상환할 수 있습니다.예를 들어, A가 대출을 원하고 전통적인 금융 서비스 프로세스에 따르면 은행 대출을 찾아야 됩니다. 은행은 A의 개인 신용 평점 조사를 시작한 후 사회보험 납부서, 회사 증명서 등 같은 복잡한 자료를 요구할 것입니다. 또한 A가 다른 자산을 담보로 사용했으며 상환이 진행되더라도 은행 금리가 매우 높기 때문에 미리 상환 되더라도 이에 따른 위약금도 있을 것입니다. 그 외에 국책 산업은행 시스템 리스크 문제, 민간 상업은행 파산, 중개인 압착 등 문제도 있습니다.반면 탈중앙화 디파이 대출 플랫폼에서는 이런 문제가 없습니다. 대출 및 상환 기록은 탈중앙화되고 투명한 플랫폼에 통합되어 있습니다. 디파이 서비스를 제공하는 네트워크는 신용 조사를 수행할 필요가 없으며 차용자가 누구인지조차 알 수 없으며 스마트 계약을 통해 해당 암호화폐 자산을 담보로 차용자 A만 필요합니다. 전통 산업의 복잡하고 지루한 프로세스를 제거하고 안전성 및 신속성을 확보하여 직접 사용 가능합니다. 미래 A가 충분한 돈을 벌어 돌려주고 대출 네트워크에서 일정 금액의 이자를 지불만 하면 담보한 암호화폐를 즉시 회수 할 수 있습니다.이렇게 디파이를 전통적인 금융 서비스과 비교하면 투명성, 안전성과 개방성 등 장점이 있습니다. 미래에 사람들의 신용 데이터 및 행동 데이터를 체인에 배치되며 이는 변조될 수 없으며 차용의 근거로 사용될 수 있으므로 모든 사용자가 자신의 자산을 관리할 수 있습니다.디파이 생태계는 이미 형성되었지만 여러 문제가 나타나기 시작했습니다. 프로세스는 간단하지만 조작하기에는 복잡하고 사용 임계 값이 높으며 스마트 계약도 공격 받을 위험이 있으며 동시에 담보에 의해 설정되기 때문에 대출을 대출로 상환과 같은 위험도 상대적으로 높습니다. 이 외에 자산 유동성 및 자금 이용률도 여전히 문제가 있습니다.현재 주류 분산 금융 플랫폼은 주로 대출 분야에 중점을 두고 있습니다. 현재 코르텍스에서 주요 고려한 부분은 전통적인 은행의 비즈니스와 유사한 이자 예금 및 이익 창출 기능에 있습니다. 이 부분에는 compound、dydx와 같은 유사한 디파이 상품이 이미 있습니다. 이러한 서비스를 통해 사용자는 암호화폐 자산을 상대적으로 안전하게 입금하고 수익을 얻을 수 있으며 이는 투자 과정에서 사용자에게 가장 중요한 고려 사항입니다. 이러한 요소들의 계산은 디파이 분야에서 코르텍스의 장점이기도 하며, 코르텍스의 퍼플릭 체인 및 AI 알고리즘은 이 과정에서 큰 가치를 발휘할 수 있다고 생각합니다.과거에는 사용자가 브랜드 인지도, 수익률 변경, 보안 등 여러 요소를 고려하여 부동한 플랙폼을 반복적으로 비교합니다. 대부분의 이성적이 사용자는 동시에 여러 플랫폼에 코인을 보관하여 리스크를 줄입니다. 코르텍스 플렛폼은 사용자에게 지능적인 포트폴리오를 추천할 수 있도록 도와주며 AI 알고리즘은 디파이 영역에서 진정한 지능형 투자 자문 및 관리 플랫폼을 구축합니다. 코르텍스는 디파이에 통합된 ‘출입구’를 제공해줍니다. 사용자는 이 플랫폼에서 계정을 만들고 코인을 입금할 수 있습니다. 또한 코르텍스는 사용자가 자산을 다른 디파이 플랫폼에 할당하는 방법을 선택할 수 있도록 도와줍니다. 코르텍스 플랫폼의 AI 지능형 최적화 시스템은 다른 플랫폼에 할당 된 자금의 비율을 지능적으로 분석 및 결정하여 균형 잡힌 투자 수익 및 안전 계수를 달성할 수 있습니다. 이 프로세스에서 코르텍스의 스마트 계약 및 AI 알고리즘의 장점을 아주 뚜렷하게 발휘할 수 있습니다. AI 모델에는 다양한 플랫폼의 수익률 및 변화 추세 비교, 사용자 계정수, 총 자금풀 규모, 활약도 등이 포함됩니다. 데이터에 있는 모든 정보를 통합 및 분석을 통해 AI 모델은 각 유형의 투자 포트폴리오가 차지해야 하는 투자 기중치를 보다 정확하게 계산할 수 있습니다. 코르텍스 디파이 플랫폼은 기존의 중앙 금융 시스템보다 투명한 데이터, 장단점 비교 등으로 사용자에게 정확한 선택을 할 수 있도록 도와줍니다.현재 코르텍스는 권한 여부, 코인 입금, 수익 표시과 같은 주요 기능을 포함하여 합의 인터페이스를 열었습니다. 그중에 가장 큰 장점은 AI 모델의 참여입니다. 과거에서 투자 포트폴리오는 투자 결정을 내리기 위해 투자자의 개인적인 경험과 주관적인 판단에 많이 의존했지만 코르텍스의 AI 모델은 더 많은 정보 채널에서 풍부하고 완전하며 객관적인 데이터를 얻을 수 있으며 객관적이고 과학적인 방법으로 다양한 출처의 데이터를 통합할 수 있습니다. 코르텍스의 AI 모델은 각 플랫폼의 수익률, 유저수 및 투자 금액과 같은 데이터 업데이트를 기반으로 1–3일마다 훈련 및 조정 가능합니다. AI 모델의 재계산 된 중량 비율과 미래 수익률의 예상 변화에 따라, 사용자는 개인 투자가 수익률과 안전 계수 사이의 균형에 맞추도록 투자 비율을 스스로 재분배 여부를 결정할 수 있도록 도와줍니다.코르텍스는 기존의 지능형 투자 및 컨설팅 제품과 비교하면 데이터 통합, 인공 지능 계산 및 판단, 정보 예측 결과의 실시간 조정과 같은 디파이 분야에서 많은 장점을 가지고 있습니다. 현재 Cortex DeFi 플랫폼은 개념 증명 단계이며 앞으로 더 많은 형태의 기능성 실현이 있을 것입니다.탈중앙화 금융 서비스 디파이(DeFi) 란? was originally published in Cortex Labs on Medium, where people are continuing the conversation by highlighting and responding to this story.

Cortex

20. 03. 12

Cortex Project Updates #44

We’re back from the spring festival break for another update! Hope all of you are taking care of yourselves in the midst of the Coronavirus outbreak. The Cortex team continues to push forward the AI on Blockchain ecosystem via highly productive remote working and collaboration.Technical Updates 🤖MRT DevelopmentPerfected MRT user documentation and some development documents. Some models of gluon zoo have been quantized through configuration. For more details, please refer to the project library README on Github;Fixed the bug that MRT has when converting model from TensorFlow, including not limited to conv2d, pad and other operators;Fixed the bug that the accuracy of some models after MRT quantization is 0, and made hyper-parameter tuning of the quantization accuracy of some models;CVM DevelopmentBased on the NVIDIA Jetson nano development board and Google EdgeTPU: coral USB accelerator device, we tested the performance of the real-time object recognition and target detection models respectively. In addition, CVM-runtime has been successfully ported to the nano development board and we are investigating the possibility of porting to coral equipment;Continued to improve the formal description for CVM-runtime and develop the corresponding formal code, focusing on the logic and correctness of the code. The operators conv2d and non_max_suppression have been completed, and the formal description of the nms operator has been modified;Completed for z3_prover the verification code of all operators (including some unverifiable operators) and took time to complete the test of two constrained operators (elemwise_add, relu);Cortex Full Node DevelopmentOptimized the read and write performance of the full node database;Continued to optimize TorrentFS, fixing third-party library memory leaks;Cortex Development EnvironmentBithumb currency exchange technology docking;Developed a user-friendly DApp based on the Cortex AI DeFi contract and completed a one-month functional test on Ethereum. The real-time growth rate of the investment in the test is transparent and visible and is maintained with the overall asset appreciation rate data in the month. At the same time, the test of real-time updates of portfolio weights through the Oracle interface has also been completed.The focus of the next stage of development will be around the two-way flow of data between the Ethereum MainNet and Cortex using Oracle. Cortex obtains real-time data of each DeFi on Ethereum via Oracle and uses them for the training of AI intelligent investment models; the optimal weight calculated by the Cortex MainNet AI intelligent investment model is provided to the Ethereum MainNet by Oracle. The two-way flow of data will empower Ethereum with Cortex’s AI capabilities.Community Updates 👨‍👩‍👦‍👦Completed the MainNet technology docking for CoinW and Bithumb;Coordinating with Bitkub in regard to MainNet upgrade;Optimizing the front-end of Cortex official forum.Translated articles in topics such as DeFi and Lightning Loan;Published original article “Machine Learning: A High Level Overview”;Researching and designing developer incentive scheme.About Cortex 😇Cortex is the only public blockchain that allows the execution of nontrivial AI algorithms on the blockchain. MainNet has launched. Go build!TestNet| Block Explorer — Cerebro| Mining Pool | Remix Editor | Software |Social Media| Website | GitHub | Twitter | Facebook | Reddit | Kakao | Mail |Telegram| English | Korean | Chinese |https://medium.com/media/4aae97568ec36a07bf0d6a258688afcc/hrefCortex Project Updates #44 was originally published in Cortex Labs on Medium, where people are continuing the conversation by highlighting and responding to this story.

Cortex

20. 03. 02

[Cortex Updates] 2019–46호

Cortex에 관심 가져주시는 여러분, 안녕하세요:)2019년 3월 2일 월요일Cortex Korea가 전하는 Project Updates,지금 시작합니다 ‘u’개발 진행 현황MRT 개발사용자 문서와 일부 개발 문서를 완성하였다. 일부 gluon zoo 모델 배치 양화 통과되었고 자세한 목록은 프로젝트 라이브러리 README를 참조하십시오.conv2d, pad 및 기타 연산자에 국한되지 않고 MRT에서 tensor flow 모델로 전송되는 버그를 수정하였다.일부 모델을 MRT 양자화 거친 후 모델 정도 0인 버그를 수정하고 일부 모델의 양자화 정도에 대해 하이퍼파라미터 튜닝을 진행하였다.2. CVM 개발NVIDIA Jetson nano 개발 보드 및 Google EdgeTPU : coral USB 가속기 장치를 기반으로 실시간 물체인식(Object recognition) 및 객체탐지(Object Detection) 모델의 성능을 각각 테스트했다. 또한 CVM-runtime은 nano 개발 보드에 성공적으로 포팅되었으며 Coral 장비로 포팅 할 가능성을 조사하였다.CVM-runtime 정형 명세(Formal Specification)을 지속적으로 개선하고 해당 형식 코드를 개발하여 코드의 로직성와 정확성에 중점을 두었습니다. 현재 Conv2d 및 non_max_suppression 완료되었으며 nms 연산자 정형 명세를 수정하였다.z3_prover 모든 운영자의 검정 코드(확인할 수 없는 일부 운영자 포함) 및 두 개의 제한된 운영자(elemwise_add, relu)의 테스트를 완료하였다.3. Cortex 전체 노드전체 노드 데이터베이스의 읽기 및 쓰기 성능을 최적화하였다.서드 파티(third party) 라이브러리 메모리 누수 문제를 수복하여 TorrentFS 최적화하였다.4. Cortex 개발 환경​빗썸 거래소와 메인넷 전환 기술 세팅을 진행하였습니다.Cortex AI DeFi 계약을 기반으로 사용자 친화적인 DApp 개발 및 이더리움에서 1개월 기능 테스트을 진행하였다. 테스트에 투자 한 자산의 실시간 성장률은 투명하고 가시적이며 한 달 내 전체 자산 평가율 데이터와 일치합니다. 동시에, Oracle 인터페이스를 통한 포트폴리오 가중치의 실시간 업데이트 테스트도 완료되었습니다.다음 개발 단계의 초점은 오라클 예언기(Oracle mechanism)를 사용하여 이더리움 메인넷과 코르텍스 간의 양방향 데이트 흐름에 초점을 맞출 것입니다. 코르텍스는 AI 투자 모델 훈련을 목적으로 Oracle 통해 이더리움에서 각 DeFi의 실시간 데이터를 얻습니다. 코르텍스 메인넷 AI 투자 모델로 계산 된 최적 가중치는 Oracle 통해 이더리움 메인넷에 제공합니다. 양방형 데이터 인터워킹은 이더리움에 대한 코르텍스의 AI 기능을 강화합니다.​비즈니스 운영 현황코인더블유(CoinW)과 빗썸(Bithumb) 메인넷 기술 세팅을 진행하였습니다.Bitkub 메인넷 전환에 대해 협상 중입니다.공식 포럼 프론트 엔드 최적화, 포인트 시스템 구축, 굿즈 솔루션 설계하였습니다.해외 DeFi 개발팀과 비즈니스 미팅을 진행하였습니다.개발자 인센티브에 대해 설계 및 검토를 진행하였습니다.[Cortex Updates] 2019–46호 was originally published in Cortex Labs on Medium, where people are continuing the conversation by highlighting and responding to this story.

Cortex

20. 03. 02

Machine Learning: A High Le...

When I try to introduce the concept of AI DApps, I often find that it is particularly difficult when people lack an accurate grasp of what machine learning is. There is an overwhelming amount of information online about machine learning targeted toward audiences with different levels of technical expertise. In this series, I introduce machine learning at different technical levels, with the aim of providing a basic framework that helps you understand machine learning, regardless of your background, starting at the highest level.Traditional Programs vs. Machine Learning ProgramsIn traditional programming, programmers write programs, which are made of lines of code that instruct computers to perform certain tasks. For example, a programmer can write a program to detect whether the word “book” exists in a news article. Each program has an input and output, and in this case, when you input the text of a news article, the program outputs whether the word “book” exists.Machine learning programs are just like traditional computer programs: You give it an input, it gives you an output. As a typical example, a handwriting recognition machine learning program takes as an input an image of a handwritten digit, and gives you as an output of which digit it is (e.g. 3).So if machine learning programs are so similar to traditional programs, why is there all this hype about machine learning? Where is the magic?Magic: Training Machine Learning ProgramsThe magic lies in the process of writing ML programs. Whereas traditional programs are written with a rule-based system, machine learning programs are written (trained) with probability and statistics.As a simplified example, if we want to write a program to recognize Ed Sheeran, in traditional programming, you would tell the computers, “ok, Ed Sheeran has red hair, green eyes, pale skin, wide mouth. If you see these features, it’s Ed Sheeran.”In machine learning, instead of telling computers what Ed Sheeran looks like, you show the computers some photos of Ed Sheeran vs. not Ed Sheeran; the computer then learn via statistics about what Ed Sheeran looks like and when given a new image, it can tell you whether it is Ed Sheeran.As you can tell, in cases like this, the machine learning approach is much more effective because there are too many scenarios you have to enumerate for a rule-based system: what if in this image Ed Sheeran is wearing glasses?What if he has a beard? Even if we get “red hair, green eyes, pale skin, wide mouth” in the image, how do we know it’s Ed Sheeran as opposed to some random ginger dudes? On the other hand, with the statistics-based approach, you could train the computer to recognize Ed Sheeran by showing it enough examples of Ed Sheeran vs. not Ed Sheeran.This new programming paradigm has created so much hype because it has allowed us to create programs that were previously impossible with the traditional programming paradigm: examples include voice recognition, object recognition, autonomous driving etc.In particular, computers now can be taught / programmed to perform tasks that traditionally could only be done by humans and thereby replace human jobs — just go to any Amazon warehouse to witness for yourself.Note that people too often conflate the execution (inference) of ML programs and the training of ML programs. This distinction is quite important, especially for understanding concepts such as AI DApps.While the process of writing an ML program is different from writing a traditional program, at runtime, an ML program behaves more or less just like a traditional program in that given an input, it gives you an output.In the next article, I will go into further details about how exactly a machine can learn via statistics and probability. Stay tuned!Footnotes:Some nuances are left out for the sake of readability. Please leave a comment if you find certain parts confusing.For the purpose of this article ML model = ML program; ML inference = ML execution; writing an ML program = training an ML programArticle originally published on Hackernoon.Machine Learning: A High Level Overview was originally published in Cortex Labs on Medium, where people are continuing the conversation by highlighting and responding to this story.

Cortex

20. 02. 24

[Cortex Updates] 2019–45호

Cortex에 관심 가져주시는 여러분, 안녕하세요:)2019년 2월 4일 화요일Cortex Korea가 전하는 Project Updates,지금 시작합니다 ‘u’개발 진행 현황1. MRT, CVM 개발MRT 개발: 이용자 친화적(User-friendly)인 API를 개발하고, 모델 구성 파일, 자동 정량화 모델, 정확도 통계 및 CVM-runtime 모델 형식으로의 컴파일을 제공해준다.MRT 개발: 문서를 사용하고 일부 인터페이스 문서를 유지하며 MRT 프로젝트 설계 방안, 인터페이스 및 기타 문서 등을 최적화 작업 추진하였다.MRT 정량화 로직을 최적화하고 다른 모델의 통합 프로세스를 분류하여 전체 프레임 워크가 수용할 수 있는 모델의 상한을 개선하였다.MRT 데이터 세트 사용하기 편리하고, 인터페이스 및 일반화 된 양자화 하이퍼 파라미터 통합 정밀 테스트하여 기본 양자화 정확도가 이상적이지 않을 때 양자화 정확도를 디버깅하는 데 편리하다. 일부 모델(예: resnet50_v2)은 하이퍼 파라미터를 조정하여 정확도를 5~6% 효과적으로 향상시킬 수 있다.z3_prover는 지속적으로 24개의 운영자를 업데이트 및 확인하며, 검증 중에 일부 버그를 찾아 수정하였다.2. Cortex 전체 노드TorrentFS 메모리 최적화, 일부 메모리 누수 버그 수정하였다.전체 노드 블록 정보의 배치 원자 지속성 유지하였다.3. Cortex 개발 환경​DeFi 스마트 계약이 이더리움 메인넷에 배포, 기본 및 보안 기능의 테스트 및 최적화 작업 완료하였다.AI DeFi 계약 코드에 대한 예비 감사 실시. 현재 AI DeFi 계약은 Compound 및 Fulcrum을 포함한 다양한 기존 DeFi 계약을 지원한다.AI DeFi 계약의 기능 테스트 : 개발자가 10 DAI (이더리움 기반 알고리즘 안정 토큰)를 AI DeFi 스마트 계약으로 전송하여 AI DeFi는 가중치에 따라 현재 지원되는 DeFi 계약에 10 DAI를 할당하였다. 실시간으로 계약 인터페이스를 통해 실시 확인할 수 있으며, 동시에 전송 된 DAI를 철회 할 수 있다.4. Cortex 커뮤니티 개발CTXC 마이닝 풀 추가https://woolypooly.com/커뮤니티 개발자와 함께 마이너 최적화 전략 논의마이너 코드를 리팩터링하고 마이너를 최적화하며 솔루션의 거부율을 줄였다.커뮤니티 운영 현황공식 포럼 최적화, 포인트 시스템 규칙 설계 중입니다.비즈니스 협상을 위해 외국 DeFi 개발 팀과 소통중 입니다.[Cortex Updates] 2019–45호 was originally published in Cortex Labs on Medium, where people are continuing the conversation by highlighting and responding to this story.

Cortex

20. 02. 04

Cortex Project Updates #43

Happy Chinese New Year to those who celebrate the holiday! 🥳 As usual, we are making solid progress in the development of MRT & CVM, but at the same time we are seeing some tangible advance in the development of AI DeFi 🚴‍♂️. The Cortex network grows stronger each day, as the community added a new mining pool ⚒️.Technical Updates 🤖MRT & CVM DevelopmentDeveloped user-friendly APIs, provided model configuration files, automated quantitative models, accuracy statistics and compilation to CVM-runtime model format for MRT;Developed documentation for MRT and maintained some interface documentations. Will continue to optimize MRT project design schemes and develop the documentation for interfaces and others;Optimized the quantization logic of MRT, sorted out the unifying process of different models, and improved the upper limit of the model that the entire framework can accept;Improved the ease of using datasets on MRT, unified precision test interface and generalized quantization hyperparameters, which is convenient for debugging quantization accuracy when the default quantization accuracy is not ideal. Some models (such as resnet50_v2) can effectively improve the accuracy by 5 to 6% by adjusting hyperparameters;Updated z3_prover to 24 operators and fixed some bugs during verification;Cortex Full Node DevelopmentTorrentFS memory optimization, fixed some memory leak bugs;Optimized the full node block information;Cortex Development EnvironmentDeployed DeFi smart contract to the Ethereum mainnet and completed testing and optimization of general and security functionalities;Conducted a preliminary audit of the AI ​​DeFi contract code. The current AI DeFi contract supports a variety of existing DeFi contracts, including Compound and Fulcrum;Tested the functionality of the AI ​​DeFi contract: transferred 10 DAI (Ethereum-based algorithmic stable token) into the AI ​​DeFi smart contract, and the AI ​​DeFi allocated 10 DAI to the currently supported DeFi contract according to the weight. In real time, you can check the real-time status through the contract interface. Meanwhile, you can withdraw the transferred DAI at any time.Community Updates 👨‍👩‍👦‍👦The community added a new CTXC mining pool: https://woolypooly.com/Discussed miner optimization strategies with community developers.Refactored the miner code, optimized the miner, and reduced the rejection rate of the solution;Revised and optimized the official forum;Worked closely with various DApp developer teams;Translated articles related to DeFi.About Cortex 😇Cortex is the only public blockchain that allows the execution of nontrivial AI algorithms on the blockchain. MainNet has launched. Go build!TestNet| Block Explorer — Cerebro| Mining Pool | Remix Editor | Software |Social Media| Website | GitHub | Twitter | Facebook | Reddit | Kakao | Mail |Telegram| English | Korean | Chinese |https://medium.com/media/4aae97568ec36a07bf0d6a258688afcc/hrefCortex Project Updates #43 was originally published in Cortex Labs on Medium, where people are continuing the conversation by highlighting and responding to this story.

Cortex

20. 01. 22

[Cortex Updates] 2019–44호

Cortex에 관심 가져주시는 여러분, 안녕하세요:)2019년 1월 13일 월요일Cortex Korea가 전하는 Project Updates,지금 시작합니다 ‘u’개발 진행 현황1. MRT, CVM 개발MRT는 CVM-Runtime과 동일한 정확도 추론 규칙을 사용하고 CVM 프레임 워크에서 허용하는 모델 형식에 완벽하게 적응하며 내부 교정 데이터 임계 값과 일치하도록 탄성 정밀 스케일링 규칙을 설계하였다.MRT 양자화 프로세스 간소화, Prepare_for_compile 사전 컴파일 트립 제거, 중복 코드 병합, pylint 도구를 사용하여 코드를 정규화하고 32 비트 양자화 부동 소수점 정밀도를 64 비트로 확장하였다.MRT는 동적 모양 추론을 사용하여 그래프 모델에서 고정 된 모양을 제거하고 다중 배치 크기 입력 데이터를 제거하였다.공식 검증 z3_prover 계속해서 더 많은 오퍼레이터 세트를 추진할 예정이다.2. Cortex 전체 노드Coin Market Cap에 필요한 인터페이스를 제공하는 TorrentFS 동시 동기 블록, 파일 스토리지 동기 자동 모드 개발하였다.3. Cortex 개발 환경​다양한 DeFi에 적용 할 수있는 AI 포트폴리오를 추가로 개선하였다. 커버리지 영역의 DeFi에는 이미 MakerDAO, Fulcrum, Compound 및 dYdX가 포함되어 있다. AI 포트폴리오의 AI 기능은 Cortex CVM에서 제공하는 고정 소수점 인공 신경망에 의해 구동되며, 이것으로 Cortex AI 생태계의 경계를 더욱 확장시킬 수 있다.DeFi 예탁 기관 계약을 완료하여 수익을 실시간으로 볼 수 있고 일부 위험이 적은 DeFi의 T0 인출을 지원할 수 있다.AI 포트폴리오 기본 계약 및 프록시 계약의 보안 테스트를 완료하여 이를 이더리움 Koven 테스트 네트워크에 배포시켰다.온라인 활동 현황DeFi의 과학을 커뮤니티에 대중화하고 커뮤니티를 위한 외국 DeFi 관련 기사를 번역하였다.후속 포르젝트 홍보 전략 추진 중이다.프로젝트의 연간 요약을 구성하고, 기념품 내용을 선별하고, 비디오 및 기타 자료를 작성 중이다.프로젝트 2020 운영 계획 및 마케팅 브랜드 홍보 전략 계획 중이다.공식 포럼 개정, 포인트 시스템 규칙 설계, 굿즈 디자인 등 추진 중이다;프로젝트 네 번째 버전인 굿즈 디자인 거의 완성되었다.​커뮤니티 운영 현황1 월 10 일 오후 기준WeChat 커뮤니티 단체방 16+개, 총 7.6k명Kakao 커뮤니티 총 1055명Weibo 팔로워 총 14.5k명Reddit 팔로워 총 20.1k명Twitter 팔로워 총 17.4k명[Cortex Updates] 2019–44호 was originally published in Cortex Labs on Medium, where people are continuing the conversation by highlighting and responding to this story.

Cortex

20. 01. 13

Cortex Project Updates #41

Last update of 2019! Hope everyone is having a good time at the end of the year. 🎁🎄🥂 Bittrex Global and Huobi Global have completed the MainNet token swap for CTXCs while we continue to make great strides in the development of MRT & CVM, Cortex full nodes, and dev environment! 🛠️Technical Updates 🤖MRT & CVM DevelopmentRefactored and repaired MRT’s quantization logic, reducing invalid operators generated by quantizaiton.Now supports more Tensorflow models; added fuse for pad operator in Tensorflow.Made further progress on formal verification code implementation of CVM operators such as repeat, tile etc.Considering the computational limitations of z3 prover and the input domain of the operator, implemented complete computational logic verification for some operators, such as elemwise_add etc. Implemented the code of some operators within the verification range threshold for given input, such as convolution.Added UTF-8 encoding limit for CVM HTTP service.Cortex Full Node DevelopmentModified TorrentFS file fragment synchronization download strategy; modified synchronization seed file state switching strategy; modified log format and reduced the number of system connections.Cortex Development EnvironmentDeveloped an AI portfolio for various applications in DeFi, including but not limited to MakerDao, Fulcrum, Compound etc. The on-chain AI inference will be done on Cortex, which is currently the only blockchain capable of executing on-chain AI. Completed the DeFi smart contract prototype on Cortex and tested the cross-chain interaction with other DeFi platforms.Community Updates 👨‍👩‍👦‍👦Bittrex Global completed the CTXC MainNet token swap on December 18th, 2019. Users who accidentally sent MainNet CTXCs to Bittrex before the date should open a support ticket with Bittrex and will be compensated after Bittrex verfies their identities.Huobi Global completed the CTXC MainNet token swap on December 20th, 2019, opening deposit and withdraw service for MainNet CTXC while continuing to support ERC20 CTXC deposit service.About Cortex 😇Cortex is the only public blockchain that allows the execution of nontrivial AI algorithms on the blockchain. MainNet has launched. Go build!TestNet| Block Explorer — Cerebro| Mining Pool | Remix Editor | Software |Social Media| Website | GitHub | Twitter | Facebook | Reddit | Kakao | Mail |Telegram| English | Korean | Chinese |https://medium.com/media/4aae97568ec36a07bf0d6a258688afcc/hrefCortex Project Updates #41 was originally published in Cortex Labs on Medium, where people are continuing the conversation by highlighting and responding to this story.

Cortex

19. 12. 30

Cortex挖矿最新情况展示

Cortex主网自6月26日上线以来表现很稳定,社区miner迭代也很快,性能增长幅度较大,越来越多的矿池和miner支持Cortex。算力也在不断增加,Hash Rate约等于11651张1080ti在挖CTXC。现在给大家汇总和更新一下,目前挖矿的最新情况。矿池1.社区开发者矿池链接:http://cortexmint.com/矿池手续费:0%收益方式:PPLNS收益支付:1个打币时间:2小时支付结算一次2.俄罗斯社区开发者矿池链接:http://cortex.frostypool.com/矿池手续费:1%收益支付:10个打币时间:30分钟支付结算一次3.如果自己拥有较大算力,不想使用他人矿池,可以自己搭建全节点进行solo挖矿。全节点最低配置为:支持Ubuntu 18.04 x64 系统,驱动配置要求为 CUDA 9.2 和 NVIDIA Driver 396.37,CUDA计算能力 6.1或以上。挖矿软件1.官方基础版,是主网上线后的第一个挖矿软件,经后续测试现有第三方Miner性能优于此版本。支持系统:Linux显存要求:10.7G官方基础版链接:https://github.com/CortexFoundation/PoolMiner性能简介:单卡1080TI 算力0.02h/s 单卡2080TI算力0.03h/s2.Radiance Miner,较早发布源自于社区开发者开发,信息未公开版本迭代时间未知。支持系统:Linux、Windows显存要求:8GRadiance Miner链接:https://mega.nz/#F!WWYA2SxB!7wEHZ6Mdfh8r0YoEEo61Hg手续费为:2%性能简介:单卡1080TI 算力0.06h/s 单卡2080TI算力0.09h/s3.Gminer是知名的Cuckoo Cycle算法挖矿软件,11月开始支持CTXC,性能较优质,更新迭代频率较高支持系统:Linux、Windows显存要求:8G(8G仅支持在Win7)、11GGminer链接:https://github.com/develsoftware/GMinerRelease/releases/tag/1.80手续费为:5%性能简介:单卡1080TI 算力0.06h/s 单卡2080TI算力0.1h/sCortex挖矿最新情况展示 was originally published in Cortex Labs on Medium, where people are continuing the conversation by highlighting and responding to this story.

Cortex

19. 12. 30

[Cortex Updates] 2019–43호

Cortex에 관심 가져주시는 여러분, 안녕하세요:)2019년 12월 27일 금요일Cortex Korea가 전하는 Project Updates,지금 시작합니다 ‘u’개발 진행 현황1. MRT, CVM 개발양자화에 의해 생성 된 유효하지 않은 연산자를 감소시키기 위해 MRT의 양자화 로직을 정리 및 복구를 하였다.더 많은 텐서 플로우 모델을 지원하고 텐서 플로우에서 패드 운영자를 위한 퓨즈를 증가시켰다.repeat,tile 등과 같은 CVM 운영자의 공식 검증 코드 구현 작업을 추진하였다.z3 prover 및 컴퓨팅 및 연산자 입력 제한을 고려하여 elemwise_add 등과 같은 일부 연사자는 완전한 계산 논리 검증을 구현하였고 일부 연산자는 주어진 입력 코드를 구현하였으며 convolution과 같은 범위 영역의 임계 값 내에 있는 연산자를 검증하였다.CVM HTTP 서비스는 URF-8 encoding 제한을 추가하였다.2. Cortex 전체 노드TorrentFS 파일 샤드 동기화 다운로드 전략 수정, 동기화 시드 파일 상태 전환 적략 수정, 부분 로그 격식 수정 및 시스템 연결 트리 감소시켰다.3. Cortex 개발 환경​다양한 DeFi에 적합한 AI 포트플리오 적용 환경을 추가하였다. 커버리지 영역의 DeFi에는 MakerDAO, Fulcrum, Compound 등이 포함되지만 이에 국한되지 않는다. Cortex 체인에서 DeFi의 스마트 계약 프로트타입을 완성 및 다른 DeFi 플랫폼과의 상호 작용 기능을 테스트하였다.온라인 활동 현황한국 커뮤니티 크리스마스 온라인 이벤트 진행중커뮤니티 운영 현황12 월 27일 오후 기준WeChat 커뮤니티 단체방 16+개, 총 7.6k명Kakao 커뮤니티 총 1077명Weibo 팔로워 총 14.5k명Reddit 팔로워 총 20.1k명Twitter 팔로워 총 17k명[Cortex Updates] 2019–43호 was originally published in Cortex Labs on Medium, where people are continuing the conversation by highlighting and responding to this story.

Cortex

19. 12. 27

Cortex Project Updates #40

As we near the end of 2019, the Cortex community continues to build for a stronger on-chain AI ecosystem. 🎄 This update is mostly technical and covers progress on MRT & CVM, full node, Cortex development environment and mining over the past two weeks. 🏗️Technical Updates 🤖MRT & CVM DevelopmentCompleted formal verification for CVM basic operator operations; partially implemented verification of a given input range operator code, verifying the deterministic behaviors of some operators.Embedded NNVM’s from_mxnet compile code and performed a full code review.Updated the quantization logic of MRT; eliminated the original batch size limit for models during quantization; implemented dynamic shape model inference.Added support for more operators such as swap_axis, zeros_like etc.Cortex Full Node DevelopmentOptimized TorrentFS module file storage and synchronization schemes.Cortex Development EnvironmentCurrent researching Cortex-based DeFi models (expected investment return assessment) to extend CVM’s landing scenarios and applications.Completed smart analytics tool for ERC20 tokens’ position ratio, position time change, and exchange token flow; will open-source this tool soon on Github.Mining ⛏️The Radiance team has further optimized Miner for the GPUs of 1080ti and 2080ti, enhancing performance by 50%.About Cortex 😇Cortex is the only public blockchain that allows the execution of nontrivial AI algorithms on the blockchain. MainNet has launched. Go build!TestNet| Block Explorer — Cerebro| Mining Pool | Remix Editor | Software |Social Media| Website | GitHub | Twitter | Facebook | Reddit | Kakao | Mail |Telegram| English | Korean | Chinese |https://medium.com/media/4aae97568ec36a07bf0d6a258688afcc/hrefCortex Project Updates #40 was originally published in Cortex Labs on Medium, where people are continuing the conversation by highlighting and responding to this story.

Cortex

19. 12. 16

Transaction History
Transaction History Market Market Transaction volume Address
Huobi Global CTXC/ETH 110.01 281,565,200.33 Short cut
Bithumb To be provided later To be provided later To be provided later Short cut
OKEx To be provided later To be provided later To be provided later Short cut
BKEX To be provided later To be provided later To be provided later Short cut
BitForex To be provided later To be provided later To be provided later Short cut
Security verification

There is security verification of the project
Why security verification is necessary?

Read more

comment

* Written questions can not be edited.

* The questions will be answered directly by the token team.

Information
Platform ERC20
Accepting
Hard cap -
Audit -
Stage -
Location -
Market of major crypto coins *2020년 05월 25일 last update

Bitcoin

BTC

10,935,914.93 KRW 4.30%

Ethereum

ETH

252,088.17 KRW 2.96%

Tether

USDT

1,240.64 KRW 0.21%

Ripple

XRP

242.60 KRW 2.27%

Bitcoin Cash

BCH

281,182.45 KRW 3.96%

Bitcoin SV

BSV

230,547.51 KRW 4.34%

Litecoin

LTC

54,759.09 KRW 0.54%

Binance Coin

BNB

20,104.66 KRW 2.51%

EOS

EOS

3,116.64 KRW 2.86%

Tezos

XTZ

3,350.58 KRW 3.40%

Cardano

ADA

64.75 KRW 6.16%

Stellar

XLM

80.67 KRW 3.94%

Crypto.com Chain

CRO

91.66 KRW 1.27%

Monero

XMR

75,669.32 KRW 3.79%

TRON

TRX

17.98 KRW 3.91%

Huobi Token

HT

4,764.27 KRW 3.47%

Ethereum Classic

ETC

8,270.21 KRW 0.87%

USD Coin

USDC

1,242.48 KRW 0.30%

NEO

NEO

12,194.18 KRW 4.18%

Dash

DASH

90,016.64 KRW 2.57%