|
January 18, 2014, 03:07:57 AM |
|
创新采用bcrypt算法的淘京币,目前已经迭代第二个版本0.9.2,新版本解决了同步较慢的问题,同时完美支持新人拷贝最新block,实现秒同步的强力功能, 新人可以直接从官方下载最新block(目前为8500,官方每隔几天更新一次),拷贝到Tjcoin数据目录覆盖,即可实现秒开秒同步。 通过这个版本,解决了淘京币一直以来让人鄙视的同步速度问题,淘京币的技术帝也能够有空来回复下淘京币的研发过程。
特开此贴,告诉您山寨币是怎么来的,需要需要怎么制作,纯抄袭和创新的币区别在哪里,让您擦亮眼睛,透过现象,看到技术价值的本质。 您甚至也可以通过本帖尝试子自己去制作一个山寨币。
1.纯抄袭的山寨币制作流程(通常是以BTC或者LTC为基础架构,两者类似,此处以LTC为例) 前提:最好你得要懂编程,不懂的话难度比较大,当然只要你专研,不懂也还是能做出来的,BTC和LTC均是C++源码; 第一步:准备编译环境。 代码都是需要编译的,因此需要准备编译环境和工具,您需要下载mingw(仿linux环境编译工具)、qtcreator和对应的sdk,下载boost1.5.0(需要依赖库)、openssl、伯克利db、miniupnp;配置好系统环境变量,qt环境,使用mingw编译boost库(这个需要编译大概2个小时),openssl、伯克利db、miniupnp等文件,编译命令在ltc源代码里的mingw-unix文件里有详细说明。 整个过程,如果是熟练的程序猿大概3天能够准备好,不懂的人恐怕要折腾很久。 第二步:编译widows钱包. 从github下ltc源代码。此处以0.8.5的版本为内核。在qtcreator内打开该项目工程,配置好pro文件,配置好编译器,开始编译,此时您并没有修改过任何代码,甚至连参数都没有调整,编译出来的就是莱特币的客户端,甚至可以直接使用。 整个过程,熟悉的预计也是3天能成功编译出。不懂的同样要折腾很久,各种编译不过。 第三布:调整参数,生成属于你的山寨币。 还是在qtcreator打开各个源文件,找到对应的地方调整参数即可,如在main.cpp调整每块出币数,总产量,调整难度,修改创世hash,减产时间,增加检查点等等,将原本莱特币的跑p2p端口9333端口修改,自己指定某个端口(比如指定为9999),看到这里大家可以发现,这里只要你摸清楚了在哪里改,无非是改个数值,甚至不需要阅读代码。偶尔有良心的会去阅读代码,了解原理,用心维护。 再然后,全文搜索litcoin,改成你自己名字,比如diaosicoin之类的,想怎么取名就怎么取名,然后再res文件夹里替换掉logo等图片; 最后编译,通过,产生个新币,剩下的就是发布新币,建立官网、Q群,甚至都不需要测试!!!这是最为关键的,我们都知道一个新的软件诞生是需要经过长时间的测试,但是纯抄袭的山寨币不需要,为什么?因为它根本就没有改过功能,只改了数值和图片,相当于btc和ltc早就帮它测试过了,直接发布,绝对不会有问题~ 然后从github上下载现成的挖矿工具(通常支持sha和scrypt算法)、矿池,再改名字编译下,部署起,也同样直接就可以用了,剩下的就是如何说服别人用你的币了。 总得来看,如果是熟练的程序员,第一次接触这个,只是纯粹抄袭,改名字后发布,我估摸着需要半个月能把上述事情搞定,有了第一次,第二次发币的时间大家可以想到,基本上十几分钟搞定。。。。。等待三次以后,还有什么能挡住他发币呢?所以为什么这么多山寨币,虽然名字不一样,各种说法,但本质都是一摸一样的,我甚至估摸着连作者都是那么几个人,发了一个币以后立马又发另外一个币。 这里边其实没有啥特别的技术含量,唯一就是对于普通人来讲可能难度是要懂编译,但是您同样可以随便找个懂的人,摸清楚要修改的参数地方后,第一次难,第二次就相当的easy了,无非是懂编译、懂在哪里修改、懂咋推广,over,不需要阅读代码,不需要理解工作证明机制,不需要理解区块链构造,不需要理解通信机制等等,不需要测试。。。。 我们常说技术创造价值,国外的币为什么那么多人受追捧,是因为他们创新,有了BTC以后,LTC出来,虽然最初也被认为没有前途的山寨,但是事实证明LTC虽然在BTC基础架构上发展而来,优化了很多,创新了不少技术,虽然没法完全和BTC的开天辟地相比,但是它是又价值的,而且价值还很高,LTC后又又NMC,PPC、XPM,他们现在市值都很高,为什么?因为他们都改进了很多地方,推出了新的改进,重写了很多代码!!用技术创造了价值! 所以,我个人认为,判断一个新币是否有价值,有核心价值,应该看它的代码、看它的界面、看它的运营这个三个指标,有创新的改进的代码有价值,有漂亮的UI界面有价值(也算是代码改进),有强大运营能力的也有价值,后两者代表我就认为就是国产中美卡币、元宝币YBC,这三件事情都不容易做到,只要符合一条它就有价值,否则价值无从谈起。美卡在UI上下了不上苦工,同样身为程序员,我明白美工UI也是不容易的,切图、美化一样耗尽心力,YBC虽然在币上没有什么突破,但是它有钱包集成挖矿功能、强大的运营能力,还有其他一些币种,我想说的国人也在努力,请大家去掉浮躁,耐心等待它们的成长,巴菲特说的好:投资一个有价值的潜力股,比买卖1000次非潜力股赚钱的总和多得多。 抄袭短期总是不会失败,因为有现成模式,创新很多都会死在路上,因为没有人开路,靠自己,但是一旦创新成功,带来的价值将会比无数次抄袭的综合还要多得多。
2.创新币的制作步骤 前面两步都一样,准备编译环境,准备代码等,不在赘述; 创新看你怎么创新,此处以使用新的工作证明机制算法来阐述,当然还有很多其他方面您可以改进创新。
接上面二步, 第三步,理解挖矿工作证明机制算法: 我们都知道BTC采用sha256算法,LTC采用scrypt算法作为各自的工作证明机制,那什么是工作证明机制?你得懂吧,你得先读上上阵子代码,打开main.cpp里边有一个函数叫LitcoinMiner(此处以莱特币为例),你们挖矿的时候启动的函数,函数里边有调用scrypy.cpp的函数方法,挖矿的整个过程实质是:从最初设定的创世块hash值(第0个块)开始,使用计算机算力,找到当前符合要求的最小hash,然后广播给网路上的各个节点,若被确认,则链到区块中得末尾,这样最终形成了区块块链。而计算最小hash就是scyrpt算法工作的结果。 scypt算法不少人也清楚,是安全散列hash算法,它是一个著名黑客开发的,你想创新对不对,那么可不可以用其他算来提出按scrypt算法,答案是明显可以的!不对称加密算法有很多,当然你得选个优秀的,别再选什么MD5之类的,目前出名的有sha-1,sha-2,sha-3等些列,有scypt,HAVAL,国内的密码局有SSF33等(没有对外公开源码)。
第四步,替换之前,你最好得对scypt算法看个大概,了解加密长度等等,然后再把你选择的加密算法内核看一遍,理解原理,这个过程如果是熟练的估摸着要半个月。
第五步,在你找到替代算法后,你要把这个算法写出来,然后拿到架构上验证,写代码不是件容易的事情,熟练的估摸着要1个月; 第六步,等你写完了,你得评估你的算法是否合适,可用。 先是小范围测试,比如拿两台破电脑测试,挖矿,验证成熟,发币,接受等各个功能,你同样得抽时间了解通信机制,索引机制,这个过程大概半个月。 第七步,等你自娱自乐测试完了,其实你得大范围测试一道,这是淘京币学到的教训。 淘京币最初在12月第一发布(分叉而死),当时我们的测试条件就是内的几台破电脑,而且每挖一个就联网同步,看起来很快,很美,新算法也感觉没多大问题,但是在发布当日就出现了严重的分叉,产出速度高于同步速度等严重问题,我们也是当时无力回天。在第一次发布难产后,我们总结了教训,和群里边热心支持者一起,我们调整算法,提高算法性能,优化代码,而奇遇、玲珑等网友提供了更强大测试条件,多台优质电脑,持久的测试时间,经过漫长难熬的20天,最终客户端稳定,性能基本满足要求。 在2014/1/11,淘京币宣布重生,发布真正意义上的第一个版本,当日发布成功,到17日晚上12点全网算力已经飙升到90M,上线6天产出45W个,差不多每天控制在9W个合理的范围内,至此稍微喘口气,但是第一个版本依然存在同步速度较慢的情况,经过7天的优化和努力,淘京币迅速的迭代了第二个版本0.9.2,提升同步速度66%,完美支持新人全宝贝最新block实现秒开秒同步。
第八步,测试得差不多了,和其他币一样,你得调整名字,logo等其他琐碎的事情,部署官网,建立Q群,推广运营,此处都类似,不再赘述。 第九步,编译挖矿工具和矿池,现成的源码都一般只支持sha和scrypt,不支持你的算法怎么办?凉拌,把相应代码下下,反复的看,理解原理,然后尝试摸索是否能制作出适应新算法的工具和矿池,这个难度和你研发新算法难度差不多。
总结,创新一个币,需要经历的时间和步骤更为漫长,最主要的是要面临巨大的失败的风险,极有可能你写的一行新代码会造成全功尽弃,巨大的创新失败的风险更大,但成功后带来的回报同样更大,我们为什么不宽容的对待失败后的努力呢?
亲爱的读者们,看到这里,你们对山寨币制造是否有一定的了解了,希望技术帝对整个制作过程的透露能帮助您在未来的投资决策上带来一点点帮助。
如您觉得,技术帝写得好不错,请您记得打赏我淘京币,或者登陆官网,加入我们Q群吧,关注我们的微博、论坛和贴吧~
淘京币官网:http://www.tjcoin.org 淘京币官方Q群一(千人):75451799 官方微博、论坛、贴吧:淘京币
|