解决方案  >   去中心化点击付费广告系统(EMCLNX)

基于Emercoin区块链的去中心化广告交换平台

EMCLNX 已于2016年3月31日更新至v0.0.6版本

EMCLNX介绍

  emcLNX 是一个点对点(P2P)的文字广告交换网络,采取的是按点击付费模式,在该系统中,分别由3种角色参与整个广告交换/交易:

  1. 广告投放方(买家):使用emcLNX网络对自己的网站进行宣传,仅需为每次点击付出极少量的EMC,就可以获得大量的广告机会。

  2. 发布方(网站主):将emcLNX网络上的广告发布到自己的网站上,当网站访问者点击该广告后,将进入广告投放方发布的链接页面,同时网站主将直接获得广告投放方支付的费用(EMC)。

  3. 潜在目标客户(访问者):普通的网站访问者,在网站看到广告投放方发布的广告,并且有兴趣时,点击进入广告投放方网站进行浏览,是广告投放方的潜在客户。

  emcLNX的参与者可以同时是广告投放方(赚取收入)和发布方(付出费用)两种身份。比如:参与者可以在自己的网站上显示广告,同时也可以在emcLNX网络购买流量,因此,参与者可以支付费用(EMC)给其他的发布方,以此换来访问自己网站的流量,并将自己网站显示的广告换成其他广告投放方的内容,以此赚取更多收益。

  emcLNX广告交换系统是完全去中心化的,分布式结构具有抗审查的特性,并且不受任何机构、组织的影响而导致关闭。在该系统中,买方直接对每一次点击支付费用,不存在受中心控制而设定最低价格、设定违禁词等。同样,该系统也不存在最低起步价、返佣等,所有的支付均由广告投放方和网站主直接完成,没有任何的中间代理参与,完全摆脱谷歌、百度等广告投放方的压榨!

  emcLNX系统是基于Emercoin区块链的,需通过以下2个途径使用该网络:

  • 当广告点击发生时,使用Emercoin信用点(即EMC)进行支付;

  • 使用Emercoin域名值存储系统为广告合同做分布式存储。


下载和安装

  首先,您需要先可以运行带有MySQL数据库的php网站服务器。这是现在网站建设的通用配置,我们跳过该环节,直接进入安装emcLNX系统。

  其次,您需要下载并安装Linux版本的Emercoin核心客户端钱包,下载地址:http://sourceforge.net/projects/emercoin/files/
  安装Linux版本的Emercoin钱包,请参阅教程“在VPS中安装和设置Emercoin钱包客户端指南”。
  emcLNX使用RPC接口,所以要注意相关RPC访问的配置参数:rpcuser、rpcpassword、rpcport、rpcallowip。
  当Emercoin钱包的守护进程“emercoind”启动后,下载并解压emcLNX文件包:

  http://www.emercoin.com/files/emclnx-0.0.6.tar.gz
  解压后,文件包里有2个子目录:

  • emclnx-0.0.6/emclnx - 网站模块

  • emclnx-0.0.6/adm - 管理和设置工具

  进入/adm文件夹并进行初始设置:

  1. 1. 创建一个用户名和emcLNX的数据库。使用 emclnx_create_db.sql 文件中包含的适用命令,将默认密码12345更改为自己认为安全的密码;

  2. 2. 编辑脚本文件 create_tables.sh,将默认密码12345更改为您自己的密码。然后运行脚本文件。该脚本文件将为emcLNX创建数据库表;

  3. 3. 编辑文件 emclnx-config.php,更改如下参数,以配识您的新密码和系统配置:

    'url'     => "http://user:password@localhost:8774";,
    'db_pass' => "12345",
    'dest_url'   => "http://www.emercoin.com/";,

      最后一个参数是您网站的地址(URL),是推介用户直接访问的网址。参考 emclnx-config.php 文件以获得更多信息和选项。

  4. 4. 在您的www目录,创建一个符号链接到刚才解压缩出来的emclnx目录。该步骤是必需的,通过该步骤 www 用户才能在emclnx目录中运行php脚本。目标链接必须是绝对值,以避免系统路径不同产生的错误,参考如下:
    ln -s /home/root/emclnx-0.0.6/emclnx /var/www/emclnx 

  5. 5. 最后,您需要创建一个日志文件,并且设置为 www 用户可读写,可用如下类似命令:
    touch /var/log/emclnx.log
    chown www /var/log/emclnx.log


发布方(网站主)指南

  网站要显示广告,您需要编辑文件 emclnx/emclnx-config.php
  首先,修改相关关键词、语言种类、国家、以及 min_cpc 。请参阅适当的参数评论。
  接下来,你需要从Emercoin域名值存储系统(NVS)中导入广告合同到本地数据库,并为它们分配优先级。进入 emclnx-0.0.6/adm 目录,并运行:

./fetch_contracts.php
  下面,进入emclnx符号链接目录:
cd /var/www/emclnx
  运行程序 user_page.php :
php ./user_page.php
  如果一切正常,程序会将随机广告显示出来。
  该程序代码非常简单,你可以先预览广告,并且集成到您的网站中.
  当广告代码集成到您的网站后,在互联网上访问您包含emcLNX广告链接的页面,点击!!点击!!您就会在每次点击后赚取小额崛起币(EMC)!!
  千万别快速而频繁的点击,emcLNX系统会检测到您的欺诈行为,广告投放方(买家)将禁止您的网站发布他的广告!
  注释:每天(甚至每小时)自动运行 crontab./fetch_contracts.php 是一个不错的主意,它会自动导入新的广告合同。

广告投放方(买家)指南

  作为广告发布商要使用emcLNX,您需要充值 EMC 到您的Linux版本的Emercoin钱包,emcLNX系统将使用该钱包的资金支付给网站主。您可以在交易所购买 EMC ,或在矿池里面挖矿获得 EMC。请参阅“Emercoin交易所列表”。
此外,你需要一个单独的图形界面Emercoin钱包(Windows、Mac OS版)来管理广告合同和签名。当然,如果需要的话,可以和Linux版EMC钱包使用同一个钱包文件,但分为两个独立的钱包更具有实用性—— 一个用于支付,另一个用于广告合同管理。

  • 在图形界面钱包中,生成一个新的EMC地址,并且使用该地址对目标网站域名的 TXT 值注入数据(参看ICANN或emcDNS),目标网站为您打算进行宣传的网站,使用如下格式:
    emclnx=EMC_ADDRESS
    例如,用“dig”指向域名 emercoin.com:

    $ dig emercoin.com TXT | grep emclnx emercoin.com.   243     IN      TXT     "emclnx=EdvJ7b7zPL6gj5f8VNfX6zmVcftb35sKX2"

    多个网站和广告合同均使用同一个EMC地址,都是正常的。
    下面,为您的广告合同选择一些独特的名称,如:MyFirstContract。您需要先检查一下该广告合同的名称是否被其他广告投放方占用,进入图形界面钱包的控制台,输入以下指令来检查:
    name_show lnx:MyFirstContract
    如果您看到一条错误信息,那说明该广告合同名没有被占用,即可以使用该名。

  • 接下来,在钱包控制台中生成广告合同的签名,指令如下:
    signmessage EMC_ADDR ContractName
    Use the EMC_ADDR you deposited into Emercoin NVS DNS-record above. e.g.:
    signmessage EdvJ7b7zPL6gj5f8VNfX6zmVcftb35sKX2 MyFirstContract
    钱包会返回一条签名,如:

    H1XLT7lj1UUIfsdUxr9uE5EZz0sCYcjBnLivrgdOeDTIQGa2D27KHwH4=

    这是您新广告合同的签名。该签名是证明您的广告合同已注入emcLNX系统,即意味着Emercoin区块链中保存的广告合同信息是您本人(域名所有者)签署的,他人不可篡改。

  • 现在,编辑一条文本的广告合同。参阅如下案例和解释:

    URL=http://emercoin.com/emclnx/lnx_pay.php?
    SIGNATURE= H1XLT7lj1UUIfsdUxr9uE5EZz0sCYcjBnLivrgdOeDTIQGa2D27KHwH4=
    LANG=EN
    COUNTRY=US,EU,RU
    CPC=3.00
    KEYWORDS=emercoin|cryptocurrency mining|name-value storage
    TXT=Emercoin - Innovative cryptocurrency
    TXT=Emercoin - Innovative distributed blockchain services
    TXT=Emercoin - Distributed uncensored alternative DNS
    TXT=Emercoin - Decentralized security solutions
    TXT=Emercoin - Cryptocurrency with a strong fundamental base

    URL= URL 是您网站上的 lnx_pay 程序。您可以重命名该程序,或编写您自己的版本,这些都是附加的信息。如:收集统计数据等。URL结尾的问号用于分隔CGI参数。如果您的目标网站域名不含有非ASCII编码,那么URL必须编辑成IDN/Punny码。
    SIGNATURE = 签名,生成方法如上。签名用于确认该合同指向您的目标网站域名。
    LANG = 目标网站的语种版本(必须单独写)。如果您的目标网站是多语言版本的,并且需要广告显示多语种,那么需要根据语种分别建立广告合同。
    COUNTRY = 这是可选项。如果填写了国家,您的广告将只会运行在指定国家的网站上,如果不填写内容,所有国家的网站均会显示您的广告。
    KEYWORDS = 关键词,以帮助网站主的脚本做出更好的决定,选择显示哪些广告。关键词可分行写,也可用符号“|”分隔。
    CPC = 每次点击成本。你将为每次点击支付的费用。如果您(广告投放方)和网站主没有不好的信用记录的话,其支付的实际EMC数量会更少。
    TXT = 广告显示的广告语。广告语是随机显示于网站主的网页上,每次刷新显示一次,多重广告语分行描写。

  • 为使您的广告合同正常支付,需上传您的广告合同到本地数据库,进入 adm 目录后,按如下指令操作:
    ./uplo_contract.php CONTRACT_NAME CPC
    例如:
    ./uplo_contract.php MyFirstContract 3.00

  • 发布您的广告合同到Emercoin域名值存储系统(NVS)。操作如下:在图形界面钱包中,点击“Manage names”(管理域名值),在“name”栏,输入前缀“lnx:”,然后输入您广告合同名,如:“lnx:MyFirstContract” 。在 “value:”栏,复制/粘贴您的广告合同。在粘贴过程中,钱包会将非-ASCII字符转换成UTF-8字母,也可以在钱包中使用“导入”按钮,请确保您的文件保存为US-ASCII字符集或UTF-8。在“day:”栏中,设定您的广告合同有效期。最后,点击“Submit”提交……等待潜在客户来访吧! 


emcLNX去中心化广告系统是如何工作的?

  广告投放方(买家)创建一个包含签名的广告合同,并在去中心化的崛起币域名值存储系统(Emercoin NVS)发布,该合同即写入到Emercoin区块链。
  发布方(网站主)通过文件 user_page.php 调用“GetRand_href()”,从本地数据库中提取随机广告合同。提取具体广告合同的概率,取决于广告合同所设定的优先权、关键词、语言参数等。
  当一个广告合同被提取,系统将生成一个链接到本地程序 lnx_ref.php ,并附加独立的 CGI参数——合同名称,格式如下:
  <a href='/emclnx/lnx_ref.php?MyFirstContract>这里显示广告语</a> 
  当潜在客户点击该链接,带有广告名的 lnx_ref.php 程序被激活,该程序从本地数据库提取合同后,立即开始解析,首先需要验证域名签名,如果一切正常,程序将转发到广告的目标网址,潜在客户即进入广告目标网站。网址(URL)必须引用广告投放方(买家)目标网站服务器的 lnx_apy.php 程序。作为一个CGI参数,lnx_ref.php 发送发票的格式如下:

  ContractName:PAY_ADDRESS:amountForThisClick:TotalBalance:Credit

  中文为-合同名:付款地址:每次点击付款金额:付款总量:信用

  举例说明:

https://cryptor.net/emclnx/lnx_pay.php?Cryptor:EJg7Na5sfVG83P6cAwJxVtu7Chp8bXzeS5:0.06:0.06:-0.06

  在广告投放方(买家)服务器上,lnx_pay.php 程序验证合同、检查余额和发票等,如果一切正常,广告投放方将为本地点击付费。注意案例中的最后一个值“credit (-0.06)”,如果该值是“正数”,则意味着发布方(网站主)信任广告投放方(买家),因此不需要立即付费。信用点数会根据双方的持续关系而自动成长。因此,如果双方的表现正常,则不会频繁支付,但支付的总量会提高。
  系统会阻止信用表现不好的新发布方(网站主):当一个新的发布方传递发票给广告投放方后,仅能要求广告实际点击费总量的 ~5%,随着时间的推移,广告投放方确信发布方不会虚假、欺骗后,最大付款金额会随之增长,并且最终同普通的按次点击付费(CPC)广告一样。


上下文链接

  有一种有趣的方式,就是在CPC底部使用“上下文链接”。正如您在上面看到的那样,lnx_ref.php 收到合同名称的CGI参数,无所谓链接所放置的地方,因此您可以放置在第三方博客、论坛签名、微博等地方,直接链接到 lnx_ref.php 指向的网站。只要有人点击这个链接,都是通过您所引导的,您将收到广告投放方(发布方)给予的费用。

网络爬虫减缓

  这是阻止网络爬虫(如谷歌、百度等)跟踪emcLNX广告链接的必要措施,因此发布方(网站主)需要注意以下事项:

  • robots.txt
      网站主需要在robots.txt中设定搜索引擎不要给 /emclnx 目录建立索引:

    User-agent: * Disallow: /emclnx/
  • 机器陷阱
      为了防止网络爬虫忽略读取rebots.txt文件,网站主需要在页面某处防止一个隐藏链接,从而导致 therobotrop.php 文件包含在 emcLNX 文件包之内。举例如下:

    <font size="1%"><a href="emclnx/robotrap.php">&#21;</a></font> 

      上链接是非打印的字符,对访问者不可见,但会被网络爬虫查探到,以此触发 emcLNX 的预防机制,emcLNX系统会判断出网络爬虫的IP地址,并且组织爬虫的数据抓取。 请您千万不要点击自己的链接,不然会被emcLNX系统误判,您的IP地址将被阻止!


问与答(FAQ)

  • 1. 有现成的emcLNX系统广告的案例吗?

      当然有!Emercoin官网上有显示案例: http://emercoin.com/emclnx/user_page.php 
      Emercoin网络钱包 EMCBlock的底部也有:https://emcblock.info

  • 2. 如果广告投放方(买家)没有支付,其原因是什么?emcLNX系统会阻止该广告投放方的广告显示吗?

      是的!在emcLNX系统代码里面有几个欺诈保护措施,如果买家不付款,则网站主的网站根本不会显示他们的广告,买家的是由广告中的域名鉴定的,因此他们不能轻易用创建新域名的方式欺骗emcLNX系统。同样的,一个“信用级别”是网站主维护的,如果网站主试图在自己的网站上点击了广告,那么买家就会自动停止支付。

  • 3. 什么是emcLNX 代码的软件许可证?What is the software license for the emcLNX php code?

      emcLNX代码本身就是许可证!当然,作为开源代码,所有人都可以自由使用,希望有更多人喜欢 emcSSL、emcSSH,以及Emercoin提供的其他服务。

  • 我的网站使用了Couldflare、百度云加速或其他页面缓存服务,怎么确认我的付款请求能够顺利执行?

      不管是Cloudflare、百度云加速,或者以及其他类似的页面缓存服务,只要通过 lnx_pay.php 发送的支付请求,都会返回一个缓存值(cached value),缓存后都只能当做一个结果,他们的链接会变成其他参与者的链接,因此买家不能为引荐付款。
    CloudFlare 提供了一个解决此类问题的方案,请点击查看此 处。根据该解决方案,您可以在CloudFlare的缓存设置选项中,排除某些特定的网址,并且设置一个规则来绕开 emcLNX 相关链接的缓存。
      如: *emercoin.com/emclnx/*.php -> Bypass cache 

      请采取措施来避免这个问题,它会发生在任何类型的服务器端缓存!

 

除特别注明外,本站所有文章均为Emercoin崛起币信息网原创,转载请注明出处来自  http://emercoin.info/zh-Hans/info/去中心化点击付费系统-EMCLNX.html

扫一扫二维码分享