大家好!

首先祝朋友们新年快乐! 希望在新的一年的开头,每个人都可以没有烦恼! 在家中和亲人团聚! 共度佳节.
在新的一年里, 祝愿每个朋友都可以过得更开心, 运气更好, 万事顺利!

2010年年底的时候, 我在Ubuntu中文列表和几个LUG中发了一个帖子: 讨论:2011年年底,关于在Linux上使用网银 [1]
时间过得很快,一年过去了,网银跨平台兼容性的问题有了新的进展,现在是时候写一篇总结了. 在这篇总结中,我会回顾一年前的帖子,说一下目前的情况.

2011/1/28 Qian Hong <fract...@gmail.com>:
> 对于网银这样无奈的问题,最理想的解决方案莫过于用脚投票,迁移到支持跨平台的银行,可是也有更无奈的情况,
> 例如:在校学生,银行卡和校园卡绑定;或者,生活,工作的地方附近难以找到浦发之类的银行.

补充一种情况,就是刚考虑将操作系统迁移到Linux平台的朋友.相信这里有很多Linux铁杆用户,愿意为了Linux采取用脚投票的方式注册新的网银注销旧的网银,但是对于新接触Linux的朋友,有谁会为了一个小众的操作系统放弃一个大众的银行帐号呢?

> 这时候,解决的方案不外乎以下几种:
> 1.用某些方法尽量绕过网银的限制,例如使用支付宝的时候,结合支付宝卡通;

经过一年的观察,我发现支付宝也不是万能的.诸位网上买火车票的时候,是不是都希望可以使用支付宝进行支付? 还有很多场景不是支付宝能解决的,相信大家都看到了.

> 2.采取投诉的手段,争取银行支持Linux;

这是我最赞赏的方式,遗憾的是2011年未见到有大规模的投诉行动.希望在今年我们可以试一试.下文详述.

> 3.借助法律手段,存心找茬,看看网银不支持Linux是否存在法律上的问题,提起诉讼;

在向法学院的同学和老师请教之后,我暂时没有在这个方向上发现可以突破的地方.我认为,网银不支持Linux,首先是合法的,其次也是合理的.从法律上来说,用户开通网银签订的协议书中并没有承诺支持Linux系统,有的网银会在说明书中明确要求用户必须使用Windows的什么版本和IE的什么版本.因此,既然你签订了合同,就说明你接受了网银只支持Windows和IE的条件,网银不支持Linux也自然是合法的.
国外有的银行虽然使用了跨平台的技术,天然支持Linux,但是并不对Linux用户负责,引起了一些争议,这里有一个美国银行的例子,或许大家会感兴趣:
[2]

至于为什么我认为网银不支持Linux是 *合理* 的,原因很简单: Linux用户不到5%,
而在国内的Linux用户中,我相信曾经向银行投诉过的人也不到5%, 坚持不懈地投诉的,全国估计没有100人吧?
上面几个数字,完全是我主观臆测,没有任何来源,希望这句话是我这篇文章中唯一一句胡说的话 :)
回到"合理性"的话题上,关键不在于Linux用户少,而在于主动争取的人少,坚持不懈的人少.如果自己不主动争取,难道想指望别人发慈悲照顾你?靠谁都不如靠自己.

> 4.hack,利用wine等方法在Linux上使用网银;

在一年之前,我不清楚通过wine的方式可以走多远,因此我不敢说服别人一起来做这件事.一年来,我跟Wine社区的开发者和CrossOver的商业公司Codeweavers交流了关于网银支持的话题,得到了很多帮助,取得了一些进展,简报如下:

  - 陆续注册了6,7个网银用于测试.
  - 花80美元购买了一份CrossOver两年的服务,与Codeweavers的技术支持进行沟通, Codeweavers的CEO
Jeremy White由一开始完全不了解中国用户对于网银的需求,到最后决定将解决ActiveX和IE相关的问题作为高优先级的任务. [4]
(这是Codeweavers的private
ticket,可以看到交流的记录,如果有朋友感兴趣请注册一个Codeweavers帐号并私信告诉我)
  - 给Wine报了几十个网银相关的bug,其中有大约一半修复了. 这里有一个bug列表,包括我亲自报的bug和我收集到的影响网银使用的bug [3]
    - 如果你认真的看了每一个bug,长时间地跟踪这些bug,你会很欣喜地看到进步在一点一点地发生.
    - 去年担心的VBScript的问题,如今已经不是大问题,Wine builtin iexplore实现了一个vbscript解释器.
    - 
wine-1.3.9是第一个在内置IE中开始支持ActiveX的版本,去年wine-1.3.9发布的时候我给Wine报了几个工行网银的bug,当时我乐观地以为很快wine
builtin iexplore就能支持工行网银,后来发现修完了一些bug之后又有新的bug.如今wine builtin
iexplore仍未支持工行网银,不过在与CrossOver的技术支持进行沟通之后,Codeweavers加大了iexplore的开发力度.
    - 好消息是,通过 Wine + Chrome + ActiveX for Chrome的方式,我已经正常使用工行网银将近一年.
招商银行我也正常登陆过 [11] ,但是没有测试更多功能. 目前在Windows上, ActiveX for
Chrome至少支持11家网银[5], 理论上在Linux上也能做到,但是我还没有精力去一一测试,需要更多朋友参与.
    - 另一个好消息是, 中国银联可以在 Wine firefox 下登陆, 前提是需要做一个小workaround.我会在另一篇文章中说.
    - 关于U盾支持
      - 我联系过几家u盾供应商,有的没有回复,其中有两家有回复的,分别是捷德公司和飞天诚信公司.
捷德公司没有提供多大的帮助,但是他们认为u盾不支持Linux的责任在于银行方面没有提出Linux相关的开发需求.
飞天诚信公司很敬业,给我邮寄来了两个u盾样品,多种u盾的Linux/Mac/Windwos 驱动和开发包,提供了技术支持的联系方式,
但是他们告诉我,银行所使用的u盾采用了定制的芯片,因此驱动也不是完全相同的,而定制版的驱动没有经过银行的许可他们不能提供给第三方.
      - 去年我曾说过, Wine-1.4将支持Windows USB 驱动, 但是在去年10月份的wineconf2011
(2011开发者大会) 上, wine开发者认为wine-1.4支持windows
usb驱动的目标是不现实的,因为目前的进展仍然缓慢,人手依然缺乏,而usb支持的难度很大.

小结:
  * 通过wine使用网银的一般功能是靠谱的. Wine的开发者也是很敬业的. 但是,还有很多困难等待我们去克服.
  * u盾支持的目标仍然很遥远

> 5.寄望于Linux厂商和网银展开合作,例如对于国产的中标麒麟,或许网银的支持可以作为衡量两亿资金是否白拿的依据之一,
> 至于即将发布的Ubuntu中国版,或许还没有足够大的影响力.

不了解Linux厂商有没有和网银合作,请知情的朋友分享一下.
我了解到的一些其他情况:
 - Mozzila社区,Chrome团队都有朋友在推动银行支持跨平台,他们也遇到很大的困难.
 - 支付宝的团队为Linux上解决网上支付问题做了很多,这个不用说大家都知道了.
 - 工行已经在测试非IE网银,但我不知道是否支持Linux
 - 招行也已经在测试非IE网银,同样我也不知道是否支持Linux

经过一年的努力,我总结出一个简单的道理: 付出越多,收获就越大.
网银的问题可以通过技术途径解决,技术门槛不算高(懂html,懂javascript,懂报bug) , 关键是有没有人愿意付出.

在这一年里,我要感谢 http://www.openbanks.info/ 的站长张韡武和协助者weezee.os ,
他们对于推动网银跨平台问题的执着给了我很大的鼓舞,希望有更多朋友帮助维护 openbanks 的信息. 感谢哲思社区里关注网银问题的朋友
http://www.zeuux.org/group/openbanks/ .
感谢Chrome团队的朋友和Mozilla社区的朋友的帮助和支持.

在这一年里面,我要感谢ActiveX for Chrome的开发者 Chuan Qiu,
他在业余时间开发的开源项目让我们有机会在Chrome上使用网银. ActiveX for
Chrome虽然目前只支持11个银行,但是理论上可以支持所有依赖ActiveX的银行. 目前的瓶颈不在于 ActiveX,
而在于许多网银使用了非标准的 Javascript, 这一点我们可以通过一些javascript方面的hack来解决.
当务之急,是需要拥有不同网银账户的朋友参与来改进ActiveX for Chrome. 下文详述.

在这一年里,我还要感谢Wine社区的开发者,他们都是真正的黑客.与黑客打交道是愉快的经历,相信朋友们能理解.
同时,我要感谢Codeweavers提供的技术支持,感谢他们重视网银支持的问题.
感兴趣的朋友可以看一下最近一段时间wine在改进网银支持方面做的努力:
 - Bi-weekly Report: Status of online banking support on Wine builtin
iexplore (Wine 1.3.34) [6]
 - Bi-weekly Report: Wine 1.3.35 release and Status of online banking
support [7]
 - Happy New Year and Bi-weekly Report: Wine 1.3.36 release with
improvements on online banking support [8]
 - Bi-weekly Report: Wine 1.3.37 released and improvements on online
banking support [9]

以上是回顾,总结起来就几句话:
 - 网银问题可以通过hack解决. 作为Linux user, hack是永恒的话题.如果自己没有能力hack,那么,作为open
source community的一员,至少要懂得报bug, 让社区的hacker帮忙. 通过wine支持网银是靠谱的,但需要更多人参与.
 - 网银问题可以通过用脚投票解决,希望更多朋友行动.
 - 网银问题可以尝试通过投诉来解决,希望更多朋友行动.

如果要把上面几句话总结为一句话,那就是: 网银问题可以解决,但需要更多愿做实事的朋友来行动.

总结完了,接下来我们来展望 :)

根据这里的列表[10]和 www.openbanks.info 上的信息,
国内有大约100家网银和支付机构,大部分不支持非IE,不支持Linux/Mac .我希望有朋友一起参与,从几个方面推动网银的跨平台支持:
 - 技术路线,包括 Wine, CrossOver Plugin, ActiveX for Chrome等
 - 用脚投票
 - 投诉
 - 私人渠道

希望2012年底回顾的时候,有更多的网银原生支持Linux, 希望有更多的银行开始开发Linux版的网银,
希望暂时没有原生支持Linux的网银也能在Wine下使用.
希望用脚投票的朋友有更多选择,希望将来网银不会成为Linux新手的障碍.

以下分别详述几种途径:

* 技术路线

在一年之前,我不确定Wine是否有希望解决网银问题,很多朋友对Wine持怀疑的态度,因此我不愿意说服别人投入时间在这件事上.经过一年的时间的尝试,我认为wine是靠谱的,现在在这寻找有志者一起努力.

 - 如果你有自由软件强迫症,欢迎参与
 - 如果你有no Windows强迫症,欢迎参与
 - 如果你没有什么强迫症,但是能够坚持做一件事,同样欢迎参与
  - 要有心理准备,每修复一个bug,可能就会发现新的bug
  - 但是,坚持下去,网银支持就会越来越好

那么,欢迎你参与Wine网银支持的项目. 我们需要做的有:
 - 注册不同的网银帐号[10],分别在 Wine builtin iexplore 和 Wine Chrome + ActiveX for
Chrome 上测试, 分析测试结果,分别给Wine和ActiveX for Chrome报bug.
懂javascript的朋友可以给ActiveX for Chrome写补丁
   - ActiveX for Chrome的 ActiveX 部分已经完善, 遗憾的是 很多网银使用了非标准的javascript, 才导致无法使用
   - 如果你会用firebug,可以测试 ActiveX for Chrome 对网银支持的情况,如果无法正常使用,可以帮忙找出出错的原因和解决方案.
   - ActiveX for
Chrome发布一年多了,但是因为只支持Windows,而大多数Windows用户的报bug意识不高,因此目前ActiveX for
Chrome支持的银行数量不多. 希望Linux用户可以成为改进ActiveX for Chrome的生力军, 目前ActiveX for
Chrome可以在Wine下使用. 希望将来可以覆盖[10]中的大多数网银.
 - 如有可能,继续探索和推动CrossOver Plugin的支持,实现在Linux native browser里无缝使用网银
 - 如有可能,继续探索u盾驱动的支持
 - 帮助编辑和完善这里的wiki [12] . 这里的wiii需要彻底的改版,分不同的网银整理收集已知的bug和workaround
 - 如有人力,可以写成自动化脚本,实现一键安装网银支持,并且推送给国内的Linux发行版如deepin
Linux进行预装(仅预装脚本,不预装网银控件,网银控件需通过脚本下载), 以“免除新手痛苦、节约老手时间” .

注: 
我建议每个参与的朋友只维护自己日常使用的网银,因为这样可以测试更加充分.有些测试可能需要每两周重复一次,因为Wine每两周发布一个新版本.如果一个人同时测试太多网银会太辛苦的,当然如果有朋友激情过人那也十分欢迎
:) 建议朋友们更积极地去面对困难,如果自己使用的网银目前还没有人测试和维护,就主动参与进来吧,自力更生,付出越多收获越多.

另外,如果有的朋友经济条件允许,不妨购买一份CrossOver,支持开源软件的发展. 对于没有经济来源的学生,我建议还是尽量在技术和时间方面做贡献 :)

Wine始终只是过渡方案,安全性和稳定性的问题都不是我能回答的,如果你问我过年回家买火车票我会用Windows还是Wine,我也肯定不会回答用Wine.最好的结果,仍然是网银能原生支持Linux,这样就把测试网银的任务有志愿者转到网银开发人员身上,我们也可以把更多的时间放在更有创造性的事情上.因此,希望大家支持下面的两种途径:
用脚投票 和 投诉.

* 用脚投票
 - 如果你有no wine强迫症,欢迎加入用脚投票的行列
 - 如果你相信用脚投票有意义,欢迎加入用脚投票的行列

用脚投票不是嘴上说说就可以的,需要朋友们的实际行动.虽然我自己说了很久了,但是还没行动过.
在今年年底之前,如果工行网银对Linux的支持仍不理想,我会考虑注销掉原有的三个不同地方的工行帐号,转成兼容性更好的银行. [13]
用脚投票是有代价的,朋友们要慎重考虑. 注销旧帐号, 转换工资卡, 等等, 都会带来一定的麻烦.
如果这种途径不适合你, 请考虑通过技术途径或投诉途径帮助推动解决网银的问题.

* 投诉
这是我最赞赏的方式. 我这里摘录一个段子,没有冒犯的意思,只是在自省和反思之余,分享给更多的朋友一起交流深思:
--- snip ---
过去我住的新小区冬天取暖达不到规定温度,我和一些小区论坛的刺儿头一起天天去折磨物业和开发商,一个月后他们终于崩溃同意加锅炉,后来大家就不冷了。再后来我就看到一臭傻逼在小区论坛说,最近屋里好温暖啊,其实大家不必整天抱怨的,要相信生活会慢慢变好的——有感于“你们怎么总是盯着阴暗面啊”
@luoyonghao
--- snip ---
在网银的问题上,我们常常看到另一种逻辑,就是: 投诉了也没用.
那么,不投诉,怎么知道投诉没用? 所谓投诉没用,只是投诉的人不够多,坚持不够久,频率不够高而已.
须知台湾的网银一开始也不支持Linux,都是靠前辈的争取才引起银行的重视[14]. 如今,台湾自由软件社区的朋友为了消灭IE
only做了新的努力[15], 值得我们学习.

在面对困难的时候,我们经常可以发现有的人选择了逃避困难,而逃避的理由居然分为对立的两派:
 - 网银会慢慢开始重视非IE用户的,一个人投诉也没什么作用
 - 网银不会重视非IE用户的,一个人投诉也没什么作用

其实,想要逃避困难,借口总是有的.相信坛子里的朋友都是敢于挑战困难的人.

在这里,我建议大家一起参与投诉的行动:
 - 通过电话和网络等方式,向银行发起投诉. 欢迎朋友们参与补充各家网银的投诉渠道,例如 工商银行的投诉方式在这里 [16]
 - 将自己投诉的过程发表在自己的博客/twitter/facebook/微博/人人等社交媒体上. 如有可能,
上传投诉的录音或者银行的文字回复. 各家银行的服务态度如何,比一比就知道了
 - 邀请自己线下认识的亲朋好友参与投诉活动,只要他/她是非IE用户就可以,不必是Linux用户
 - *每两周重复投诉一次,坚持一年*

在过去的一年中,我平均每两周花在网银上的时间肯定不低于20分钟 :) wine开发者每两周花在改进网银相关问题的时间上也远不止20分钟.
还有其他朋友做了很多努力,有的是我不知道的, 没办法列出来. 我想说的是, 打一个投诉电话需要的时间, 应该不会比20分钟多太多 :)
一年的时间,可以投诉26次,希望朋友们可以并肩作战,坚持一年.
在接下来的一年中,我会每两周发布一次wine网银支持的进展,
在以后的每次wine网银进展报告中,我都会再次建议大家参与到投诉的行列中,以帮助我们尽早从wine网银相关的测试工作中解脱出来 :)

我希望这场投诉是持久战,因为激情不是一时冲动,也不是嘴上说说.
我也希望这场投诉是一次"去中心化"的投诉,因为我认为真正有意义的社会行动是每个人都能觉醒,而不是靠少数人领导.每个人都可以通过多种渠道,影响身边的人,一起来参与,不需要喊口号,不需要指挥,不需要同步.
对于比较小众的银行的用户,我建议更要积极去投诉,因为没有别人能够帮你 :p
如果将来大众的银行开始支持Linux,那么就不会再有大规模的投诉行动了,所以投诉要趁早.

龙应台说,看一个社会文不文明,只要看多数人如何对待少数人.Linux用户就是少数人,且让我们一起看看银行会怎么对待我们这些用Linux的少数人.
我相信我们的投诉能有成效,并且相信我们的投诉能够推动社会文明的进步.

最后一种,是私人渠道:
 - 私人渠道
如果你认识的人当中,有银行的领导或员工,或者有银行的重要客户,请通过他们跟银行沟通,促进网银跨平台的支持,至少让领导们知道什么是 Linux :)

上面列出了作为一个普通的Linux用户,可以推动网银跨平台方式的几种方式,我们可以看到,其实选择有很多,只看愿不愿意去做.只要愿意努力,不管选择哪种途径,年底回头来看,我们都是赢家.

欢迎有志者加入 openbank-discuss 邮件列表[17] 讨论更多问题 (主要是技术问题)
这个列表采用英文交流,主要是为了让国外社区也能了解我们所遇到的困难和我们所做的努力.
列表的第一次发言需要审核,希望加入列表的朋友都了解邮件列表基本礼仪,懂得提问的智慧,如果乐于奉献就更好了.

展望到这里接近结束, 在结束之前,提出一个有争议的问题: 费这么大的力气,有没有意义?
我的看法如下:
 - 有没有意义,是因人而异的.如果你认为有意义,如果你不介意别人看法,欢迎加入一起并肩作战
 - 
很多朋友在其他自由软件社区做着重要的工作,无论是开发,测试,打包,翻译,我都认为很有意义,我丝毫不认为每个人都应该参与进来做这件事,相反,我认为做好自己擅长的事情,做好自己业内的事情,就是最有意义的事情了.
 - 比自由软件有意义的社会问题多的是,比如环境问题,能源问题,教育问题,食品安全问题.
如果有的朋友觉得做这件事请没有意义,我更赞赏将争论的时间花在关注更加有意义的社会问题上.

最后,祝大家新年新气象,祝每个人都能遇上幸运的事情,祝每个人都能乐观地面对困难.
也祝我自己:2012年的网银年底总结不是我一个人在写 :)

欢迎转载,本文原发于ubuntu-zh邮件列表,如果本文被转载到其他linux邮件列表,请回复的朋友CC我: fracting AT
gmail DOT com, 期待和大家进一步交流 :)


[1] https://lists.ubuntu.com/archives/ubuntu-zh/2011-January/005632.html
[2] 
http://linuxlock.blogspot.com/2010/12/bank-of-america-rep-responds-to-no.html
[3] http://code.google.com/p/online-banking-with-wine/wiki/buglist
[4] http://www.codeweavers.com/support/tickets/browse/?ticket_id=843973
[5] http://code.google.com/p/np-activex/wiki/ChinaSettings
[6] 
http://groups.google.com/group/non-ie-online-banking/browse_thread/thread/a255f0928b0056a6
[7] 
http://groups.google.com/group/non-ie-online-banking/browse_thread/thread/e333873379612a3c
[8] 
http://groups.google.com/group/non-ie-online-banking/browse_thread/thread/9b50884fe3fbc107
[9] 
http://groups.google.com/group/non-ie-online-banking/browse_thread/thread/86de96f6ec0240eb
[10] http://home.alipay.com/bank/partner.htm
[11] 
http://groups.google.com/group/non-ie-online-banking/browse_thread/thread/1287444ea16b718d
[12] http://code.google.com/p/online-banking-with-wine/
[13] http://www.openbanks.info/
[14] https://groups.google.com/forum/#!topic/ezgo-tw/Kkr19kXPh38
[15] https://groups.google.com/forum/#!topic/ezgo-tw/ALHr9obz41E
[16] http://code.google.com/p/online-banking-with-wine/wiki/ICBC
[17] http://groups.google.com/group/non-ie-online-banking

-- 
Regards,
Qian Hong

-
Sent from Ubuntu
http://www.ubuntu.com/
-- 
ubuntu-zh mailing list
ubuntu-zh@lists.ubuntu.com
https://lists.ubuntu.com/mailman/listinfo/ubuntu-zh

回复