STO商业化协议面面观

写在前面

转载请注明出处,引用也请标注来源,谢谢

STO是一个新兴的事物,研究此领域纯属机缘。

探究事物本源,并思考在现实世界的真实价值,是本人的乐趣所在。

市面上写STO的文章、整合相关材料的剪贴报已经非常多,在此向这些同学们致敬,因为,有了他们,才有了更多的人对STO的了解。

初始布道这些内容的,大都是准备从事这个行业的BD项目方的组织。因为只有让项目方了解了,自己才能有生意做啊!

所以也请大家擦亮眼睛,因为并不是所有作者的立场都客观中立。


STO本质分为两块:金融+ 技术

金融部分需要非常深入研究,在全盘了解现实以及历史金融世界规则变迁的基础上。技术部分,感谢区块链开源的精神,白皮书和github社区能让大家公开的来分辨真伪。

有一点点写代码的底子,研读了各家主流STO发币技术平台的白皮书和协议。从初步技术实现、实现框架、推测的实现程度、愿景生态来分析一下各家的情况。

BTW:我不是翻译白皮书的,所以只写看完白皮书和代码之后自己理解的重点。                                                 

免责声明:

对各类协议的解读,还是需要懂区块链开发的技术人员来参与,才能更为专业。作为业余人士,表示只看了各家github上接口定义,和contract的部分代码,认识理解可能还存在不完整的地方。还请各位看官见谅。



背景常识

先来一点通用背景常识。主流协议大部分是基于ERC-20的,ERC-20的接口只有如下function和event。

contract ERC20 {

  function totalSupply() public view returns (uint256);

  function balanceOf(address who) public view returns (uint256);

  function transfer(address to, uint256 value) public returns (bool);

  function allowance(address owner, address spender) public view returns (uint256);

  function transferFrom(address from, address to, uint256 value) public returns (bool);

  function approve(address spender, uint256 value) public returns (bool);

  event Approval(address indexed owner, address indexed spender, uint256 value);

  event Transfer(address indexed from, address indexed to, uint256 value);

}

因为STO的业务都还在探索,仅仅只有投资人资格限制的规则在法律上比较明确(主流参考美国各类Reg,都是限制合格投资人和锁仓一年),对于投后的权益和监管规则设计涉及都很少。

因此tranfer()和transferFrom()就成了各家协议的改造重灾区。

当然也有很多人在ERC 1404出来的时候说,仅仅增加了两个function啊。是的,接口看就两个function,但是里面的实现是要写很多代码的!

最怕老板说,不就是在交易的时候加一个check吗?嗯,不知道该如何回答了。



协议分析 

Securitize

没有找到他家Github的代码,以下信息完全从白皮书中获得。

Securitize的目标是打造一个生态环境,因此不仅仅提供了on-chain的DS协议系统,还提供了off-chain的RFE-API接口和外部交易所等合作机构对接。——这点是优于其他平台的,因为一级市场的锁仓并不意味着在锁仓期完全不能交易,在合格投资人之间,是可以的。锁仓仅针对不能交易给非合格投资人。


DS Token是基于ERC-20的令牌。对ERC-20协议的变动如下:

重写transfer() 和 transferFrom()两个接口,在Token转移的过程中,提供符合监管规则的校验。(包括双方身份的校验、Token本身的可售属性等)重写这两个接口也是大部分主流协议采用的方案。

增加block wallets和freeze token的功能(为了了符合监管要求),具体如何实现未知

Iterate,返回所有Token持有人名单(为了进行分红等功能)。不仅仅为了分红,很多权益和监管要求,也是需要随时能够知道所有Token的持有人。

DS生态系统中提供了内置的智能合约,进行一些基础核心服务,比较重要的两个Service是:

Registry Service——完成投资人的信息认证以及上链(每个白名单用户的KYC状态、合格投资人认证状态都会上链保存),这个是其他家不具备或者在白皮书中没有提到的,个人理解大部分都是脱链管理,对于白名单仅仅是地址信息的上链

Compliance Service——根据不同发行策略,内置的监管合规的校验规则(例如文书签名、不同类型投资人人数、一段时间内的交易频次、丢失代币的找回等等)感觉这块尚未很好的实现,还等着合作伙伴来开发

TrustService主要用来认证管理合作伙伴,个人理解类似传统系统对接中的API密钥分发。

CommsService是一个用来给Token持有人发通知的服务。

同时在整个生态圈中,平台鼓励开发者和平台实现各类DS Apps来完善和丰富DS Token所能具备的功能,比如,回购、派息、投票、特别监管规则,等等。在白皮书中,这些仅按照Case的方式做了讲解,并未真实实现。反正架构设计上,分分钟可以加上去。——有一个好的架构设计是多么重要!

为了完成这个Token的生命周期管理(一级分发,到二级流通),DS生态提供了对接交易所的RFE-API,交易所通过该接口完成投资人白名单加入,在Token交易的时候调用DS的校验规则。

Securitize对于交易所分类四类,相当详细的讲解了不同类型的交易所,和DS Token对接的难度。和交易所对接的本质是如何增加白名单用户,因为在区块链世界,地址代表身份。所以对于类似中心化钱包交易所(用户的钱包地址并不是用户自己的),支持上会比较困难。

小结:

推测,Securitize仅实现了DS Token的定义,以及Registry Service的合约开发。其他规则依赖于更多的DS Apps的开发者。

已经对接了Openfinance、AirSwap、BnkToTheFuture、Blocktrade.com、SharePost、HYPERION、ERCdex这些交易所。布局还是比较完善的,新兴ST交易所,传统股权交易所都有涉及。

所有白皮书里面,Securitize是写的相对完整的,并且从生态的角度来考虑问题。Securitize本身是从金融基金下分离出来的,金融背景比较强,对STO来说,设计协议架构和系统架构不能仅仅停留在技术层面,而是要从金融产品业务的角度出发。

脱离了业务单纯玩技术,类似闭门造车,是行不通的。

Securitize的商业模式类似做Saas服务,toB端收费,鉴于一年能发行的STO数量有限,这笔生意是不是做的下去,拭目以待。


Harbor

以下基于Github代码和白皮书。

R-token是基于ERC-20协议的,对ERC-20协议的变动如下:

重写transfer() 和 transferFrom()两个接口,在Token转移的过程中,进行check()。

增加check()方法,在Token转移的过程中验证交易规则,该方法的实际逻辑写在Regulator Service中,方便不断升级规则。

两个Service:

RegulatorService——通过和off-chain的TraderController交互,来决定一笔交易是否可以被允许,里面只有一个接口check()

ServiceRegistry——主要用来绑定R-Token使用的RegulatorService版本关系。这个注册器基本主流协议都有,原因是,方便升级各类目前尚未厘清的规则。


R-Token提供两类校验:

参与者

    send的权限

    receive的权限

Token

    锁定/非锁定(用来控制交易锁仓时间)

    允许拆分售卖/不允许拆分售卖(用来控制总投资人数)

核心交易规则的交易在off-chain的Trade Controller,校验的结果同步给Regulator Service。这部分的实现,相对的没有其他家协议透明。看白皮书,Trade Controller的实现目前是控制在Harbor自身,没有对外开放。


小结:

相比较Securitize的生态系统,R-Token略显稚嫩,特别是投资人认证的信息以及交易监管逻辑其实是在off-chain实现的。对于二级市场的接口对接推测应该在off-chain完成。

亮点是对于交易校验的分层设计,很明确的提出了两层校验。

不足:Harbor的系统相对封闭,未有提到引入三方开发的意思。不像Securitize和Polymath,一上来,就招呼大家一起来玩耍。

Harbor的合作方也在逐步建立中,合作的交易所偏去中心化的比较多,主要是0x protocol,SWAP协议的。

鉴于Habor最近发售了第一个项目,关注度又上升了不少。看整个的逻辑就是自己做发币技术平台、Token销售平台,做一个闭环,而不是像Securitize和Polymath仅仅做发币技术平台。也许是因为这点,所以Habor的技术一开始就没有设计要引入三方开发。

Harbor的一条龙商业模式,类似toB toC两手抓,成功的概率可能更大。


Polymath

以下基于Github代码,Polymath的白皮书主要focus在他家自己的POLY平台币的生态,而不是在具体STO协议的实现技术。

Polymath的github代码量非常多,不停在更新,看起来着实费劲,因此本人仅从他家的readme.md获取相关信息来管中窥豹。所以对于Polymath代码层面的解读,可能存在不全面的地方。

ST-20是基于ERC-20协议的:

重写transfer() 和 transferFrom()两个接口,在Token转移的过程中,进行verifyTransfer(),主要进行白名单校验。

增加了mint()、verifyTransfer()接口

提供冻结交易的接口

提供获取投资人名单的接口,方便派息

增加了N多模块注册的接口

增加强制转移接口


通过增加模块到SecurityToken上,来达到丰富STO各类控制的功能。比较核心的几个模块:

TransferManager模块:主要控制白名单以及锁定期

Security Token Offering模块:主要定义Token的分发规则,类似传统ICO的Crowdsale合同

Permission模块:控制不同角色的参与者,对合约功能的权限

以及各类增加Module丰富Token控制功能的模块,这块设计赋予了无限可能


Polymath的投资人白名单是off-chain管理的。和二级市场的接口对接,也未有详细提到。推测和Harbor类似。

从Polymath的白皮书中,可以看到Polymath不仅仅立志做一套STO发币和管理协议,而是放了比较多精力在相关过程的document上链溯源,以及,生态内各个三方供应商(律所、开发者)的众包服务平台。

基本就是,我提供了一个毛胚房,同学们来装修入驻吧。不好意思,进门请给POLY。平台立志从POLY上挣钱。感觉还是ICO浪潮下技术公司的思路。


小结:

Polymath的代码更新的最勤快,对于交易控制以及STO代币权益(股息派发)的设计都已考虑。对于Security Token中定义了非常多的自有接口。但是对于二级市场用户的白名单管理接口,提及不多。

Polymath对于document的上链溯源的考虑,是一个亮点。也许别家也有,没提。

另外,Polymath的生态中,规划是依赖于外部的智能合约的developer来提供丰富的符合发行监管要求的Token合约代码,因此,Polymath自己仅仅提供核心基础代码以及扩展增加各类合约的接口而已。每个项目发币,都要找平台上的外包开发定制合约。

也许未来,Polymath会退化成一个基础协议+众包平台。

从平台本身的发展方向看,STO发行的核心就是律所合规和金融产品设计了,这些都要无数轮线下沟通,包括最终合约开发,随便找个众包,可控性太差。众包平台的这个设想,个人认为并不是很适合这个行业。

Polymath的缺点,11/17,发布了2.0.0版本,然后悲催的和1.3.0不兼容。某种程度上,这个技术架构设计是不是不如Habor or Securitze?


StartEngine

这家公司的协议提到的人比较少,这是一个传统的股权众筹网站。其实STO玩家有两种,一种纯区块链技术公司,一种就是传统股权众筹公司转型,各有各的优势。有时间可以再写写这类公司的研究。

StartEngine提出了ERC 1450协议,以下基于github和白皮书。

ERC-1450是基于ERC-20协议的:

对于合约中方法和事件的触发权限,做了严格的角色分类,引入了RTA(Register Transfer Agent)这种新的角色

对于交易的验证控制以及交易操作(transferFrom, mint, and burnFrom),都由RTA角色执行

禁用了transfer, allowance, and approve


投资人的信息和认证信息都是off-chain的。


整个架构设计上,一级市场发币以及二级市场交易的管理,都是通过把权限控制在RTA这样的角色来完成。合格投资人认证、锁仓时间等信息,都是由RTA在off-chain控制。

二级市场设计上,RTA需要和ATS对接,RTA执行token的transfer。

1450提出了符合监管的找回投资人丢失证券的设计方案(在区块链,你忘记钱包地址了,丢币了就是丢币了,但是这是Security Token,丢了,还得负责给你找回来重发)。此为亮点。


小结:

StartEngine是股权众筹网站,因此所设计的协议和架构,传统金融痕迹浓厚。对于区块链技术本身的应用仅局限于给了RTA一个控制权限,交易操作都必须是RTA来执行。

对ERC-20接口改的太多。技术参考价值不大,但是在业务模型设计上,可以借鉴。



总结

各家都属于尚在不断完善和开发自己的协议中,通过架构的可扩展设计,达到——先发币、后逐渐完善交易规则、权益规则合约的目的。通俗的讲,就是系统先跑起来,后面慢慢再迭代。(先圈钱!)

同时各家基本都属于需要引入三方developer一起帮忙完善开发更多合约的开发。


现有的主流协议的功能成熟度总结:

交易控制:大家都是干这个的

派息分红:Securitize、Polymath

取消/冻结交易:Securitize、Polymath、StartEngine

重发Token:StartEngine

强制转移:Polymath

不同功能的权限控制:基本每家都有考虑


鉴于研究STO的人群,不是准备自己做一套协议发币,就是准备给项目方提供一条龙服务。给到的建议是:

> 如果自己想做协议的,请看Polymath的代码,看下别人的优缺点。他家刚出了2.0.0版本。其他家的都不怎么更新了。「他们协议开发团队目前有10人,给老板报开发人头预算的时候供参考」

> 如果是提供一条龙服务的,要找STO发币协议供应商的,Securitize和Polymath貌似是国内很多供应商主流合作的两家(不过其他家貌似也不那么开放)。

此外,发完币,还需要考虑到对接二级市场的事宜,所以各大协议厂商不遗余力的找传统的、非传统的交易所合作,来支持自己的协议。不然发完币,没有交易场所也是很尴尬的事情。

如果有人告诉你,我们平台开发了一个blabla Token的STO发币协议,兼容ERCXXX,还是要擦亮眼睛,看看白皮书是不是国外协议的中文翻译版(不点名了),好一点呢,可能是拼凑版。另外对接了哪些交易所,也要问一问。



参考资料导航地址

Securitize

https://dyap07lrw8xxu.cloudfront.net/assets/uploads/whitepapers/DS-Protocolv1.0.pdf?mtime=20181004180112

Harbor

https://harbor.com/rtokenwhitepaper.pdf

https://github.com/harborhq/r-token

Polymath

https://polymath.network/whitepaper.html

https://github.com/PolymathNetwork/polymath-core

StartEngine

https://docs.google.com/document/d/1GiZGV3ywbwdCW289x7VkBoBoahxAn9eh3qzgzsjj9uQ/edit#heading=h.foqpbctsm0cwhttps://github.com/ethereum/EIPs/blob/master/EIPS/eip-1450.md

https://github.com/StartEngine/ldgr_smart_contracts

 

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 160,108评论 4 364
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 67,699评论 1 296
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 109,812评论 0 244
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 44,236评论 0 213
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 52,583评论 3 288
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 40,739评论 1 222
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 31,957评论 2 315
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 30,704评论 0 204
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 34,447评论 1 246
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 30,643评论 2 249
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 32,133评论 1 261
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 28,486评论 3 256
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 33,151评论 3 238
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 26,108评论 0 8
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 26,889评论 0 197
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 35,782评论 2 277
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 35,681评论 2 272

推荐阅读更多精彩内容