2013年4月18日星期四

使用GnuPG(PGP)加密信息及数字签名教程

  PGP (Pretty Good Privacy) 是由 Phil Zimmermann 于 1991 开发的一个用于数据加密和数字签名的程序,由于被广泛应用以至于后来形成一个开放的标准 OpenPGP,而 GnuPG 则是实现了该标准的一个开源免费程序,本文将会简单介绍如何使用 GnuPG 管理钥匙、加密解密文件和电子邮件、数字签名文件和电子邮件等内容。篇幅有点长,不过内容是很简单的,可以一步一步跟着来。@ivarptr

  一、加密和数字签名的简单原理

  首先每个人使用程序生成地球上惟一的一对钥匙,分别称为公钥和私钥。公钥用于加密,私钥用于解密。使用公钥加密过的信息只能由配对的私钥解开。

  加密的过程是:如果A君要发送信息给B君,首先B君得把自己的公钥扔出来,A君得获取B君的公钥后加密信息并发送过去,B君收到(加过密的)信息使用自己的私钥解密就可以还原信息了。

  而数字签名的过程稍微不同,信息是通过普通未加密方式发送信息给对方的,只是在每条信息后面都会附加一坨字符(名曰:签名),这个签名是由程序根据发送者的私钥以及信息内容计算得出,接收者使用发送者的公钥就可以核对信息有无被篡改。

  二、获取并安装 GnuPG

  GnuPG 是一个集钥匙管理、加密解密、数字签名于一身的工具,对于 Linux 系统,一般可以在系统本身的软件源找到 GnuPG,比如对于 ArchLinux 可以使用如下命令安装:

$ sudo pacman -S gnupg

  对于 Windows 系统可以下载免费开源程序包 GPG4Win,建议下载完全版,里面既包含了 GnuPG 命令行工具,又有图形钥匙管理工具 Kleopatra 和支持 GnuPG 的邮件客户端程序 Claws Mail。

  三、生成钥匙对并发布公钥到网上

  下面的讲解是基于命令行的,如果你比较喜欢图形工具,仍然建议先阅读完本章,因为图形工具的操作基本上跟下面的命令一一对应,而使用命令行讲解比较方便和容易理解。

  1、生成钥匙对

$ gpg --gen-key

  使用上面的命令可以生成地球上惟一的一对钥匙对(注:命令行前的钱币符号是提示符,不用输入),运行后会询问你几个问题,首选是选择钥匙对的算法:

Please select what kind of key you want:
(1) RSA and RSA (default)
(2) DSA and Elgamal
(3) DSA (sign only)
(4) RSA (sign only)
Your selection?

  默认选择 RSA 就可以了,输入1并回车。然后选择钥匙的长度:

RSA keys may be between 1024 and 4096 bits long.
What keysize do you want? (2048)

  默认是 2048 位,直接回车。然后选择钥匙的有效期限:

Please specify how long the key should be valid.
0 = key does not expire
<n> = key expires in n days
<n>w = key expires in n weeks
<n>m = key expires in n months
<n>y = key expires in n years
Key is valid for? (0)

  默认是永远有效的,如果你打算过一段时间就换一把新钥匙,可以在此输入期限,比如输入30表示有效期为30天,数字后面可以加上单位,比如30m表示30个月,30y表示30年。如果你不知道这步有什么作用,则直接回车。然后询问你确定吗?果断输入y并回车。

  接下来是填写一些个人信息:

Real name: ivarptr
Email address: ivarptr@126.com
Comment: ivarptr on Twitter

  第1行输入你的名字或者平常喜欢用的网名,比如我的是 ivarptr。
第2行输入你的email地址,比如我上面输入的是 ivarptr@126.com。
第3行输入一行备注,备注的作用是进一步标识自己的身份,比如你在姓名一行输入“小明”,为了让你的朋友更确切地知道是哪个小明,你可以输入“你隔壁家的小明”。

  这三行信息用于产生一个标识(uid),用来标识这个钥匙对,在下面的命令行里,就可以用名字或者email地址来指定这个钥匙对。

  虽然理论上这些信息是可以随意输入,而且也不会有人阻止你这么做,不过当别人拿到你的公钥时可能会搞不清谁对应谁,所以尽量使用别人分辨得清的名字和email地址。信息输入完之后再输入o并回车确定。

  因为 GnuPG 的钥匙(包括公钥和私钥)是保存在本机上的,如果有人或者黑客进入你的计算机把你的私钥盗走了,那么你的身份就有可能被冒充的危险。所以接下来你需要输入一个密码用于保护你的私钥。这个密码最好选择一个稍微复杂一些的。

  接下来就是等待程序生成钥匙对了,这个过程根可能需要几秒到几分钟时间,期间你可以去忙其他的事情。

  2、查看本机钥匙信息

  上一步完成后,可以使用如下命令查看本机上的公钥:

$ gpg --list-keys

  输出的结果跟下面的类似:

/home/ivarptr/.gnupg/pubring.gpg
——————————–
pub 2048R/72E75B05 2013-04-17 [expires: 2015-04-17]
uid ivarptr (ivarptr on Twitter) <ivarptr@126.com>
sub 2048R/74F0F5F9 2013-04-17 [expires: 2015-04-17]

  从中我们可以看到刚才生成的钥匙对的公钥部分,其中:

  • 72E75B05 是这个公钥的id,这个id跟uid都是用于标识这个公钥的,因为uid是用户随便输入的所以会有重复的情况,因此在某些需要明确指定公钥的命令,需要用id而不能用uid表示这个公钥。
  • 2013-04-17 是生成这个公钥的时间,后面括号内的是有效期。

  在实际应用中,因为要发送加密信息给你的朋友就需要对方的公钥,所以在本机上可能会有多个朋友的公钥,但私钥往往只有一个,也就是自己的私钥。使用下面命令可以查看本机上的私钥。

  $ gpg –list-secret-keys

  3、导出公钥

  为了将自己的公钥扔给他人,你需要把公钥导出成为一个文件:

$ gpg -a --output key.public --export UID

  注:你要把其中的 UID 替换成你的名字或者email地址。

  其中参数

  • -a 表示输出文本文件格式。默认输出是二进制格式,因为二进制格式不太方便在网络(比如论坛或者博客)上展示,所以推荐文本格式。
  • –output 指定输出文件的名字,你可以更改为其他名字。
  • –export 表示执行输出公钥操作,后面的 UID 为你要输出的公钥的标识。

  运行之后会在当前文件夹得到一个 key.public 文件,你可以使用文本编辑器或者 cat 命令查看里面的内容,大致如下:

$ cat key.public

—–BEGIN PGP PUBLIC KEY BLOCK—–
Version: GnuPG v2.0.19 (GNU/Linux)

…………
…………
—–END PGP PUBLIC KEY BLOCK—–

  公钥导出之后,你可以通过各种方式把它发送给你的朋友,比如email或者聊天工具。而比较方便的是把公钥发布到公钥服务器。

  4、把公钥发布到公钥服务器

  公钥服务器用于储存和发布用户的公钥以便相互交流,这些服务都是免费的,GnuPG 默认的公钥服务器是 keys.gnupg.net,你可以在这里找到更多的服务器。你也可以使用浏览器打开它们的网站,然后把你的公钥复制粘贴上去。当然最直接的是通过命令行:

$ gpg --keyserver keys.gnupg.net --send-key ID

  注:你要把其中的 ID 替换成你公钥的id。

  其中参数:

  • –keyserver 用于指定公钥服务器,没有特殊需求的话是可以省略这个参数的,不过有些 GnuPG 版本可能需要指定这个参数才能正常工作。
  • –send-key 用于指定待发布的公钥的id。

  好了,至此你已经学会生成钥匙对以及发布公钥了。

  四、导入他人的公钥,加密一个文件

  下面我们来做个试验,尝试导入作者的公钥,然后使用该公钥加密一个文件。通过这个试验就可以学会怎样获取他人的公钥并用之加密信息。

  1、在公钥服务器搜索作者的公钥并导入到本机

  使用如下的命令可以搜索到我的公钥:

$ gpg --keyserver keys.gnupg.net --search-key ivarptr

  参数 –search-key 用于指定搜索关键字,可以是uid的名字或者email地址部分。结果大致如下:

gpg: searching for “ivarptr” from hkp server keys.gnupg.net
(1) ivarptr (ivarptr on Twitter) <ivarptr@126.com>
2048 bit RSA key 72E75B05, created: 2013-04-17
Keys 1-1 of 1 for “ivarptr”. Enter number(s), N)ext, or Q)uit >

  如果有重名的情况,这里会列出多条记录。你可以输入n并回车把搜索结果浏览个遍。当你看到id和uid都跟你要找的那个吻合时,输入搜索结果前面显示的数字就可以把相应的公钥下载到本机。如上面的搜索结果,按数字1并回车就可以把我的公钥导入到本机。输入q并回车可退出搜索。

  注:服务 keys.gnupg.net 背后是一组服务器,它们之间的信息同步需要一定的时间,如果你刚刚提交了自己的公钥,可能不会立即搜索就有结果,只要过一段时间(大概1小时)就好了。如果你用的是普通公钥服务器,比如 pgp.mit.edu 则不会有这个问题。

  如果你确切知道要导入的公钥的id,也可以跳过搜索这步而直接使用如下的命令导入:

$ gpg --keyserver keys.gnupg.net --recv-key 72E75B05

  其中 72E75B05 是我公钥的id,如果把它替换成你朋友的公钥id则为导入你朋友的公钥。

  导入公钥还有另一种方法:如果我把公钥文件直接发送了给你,你也可以跳过公钥服务器。下面假设我的公钥文件 key.public 已发送给你,你运行如下命令就可以导入我的公钥了:

$ gpg --import key.public

  2、核对公钥的指纹值并签收公钥

  把对方的公钥导入到本机后,就已经可以用它来加密信息或者用于校验我的数字签名。不过这样每次操作时都会提示公钥不可信,因为虽然你导入了我的公钥,但存在导入冒充者的公钥的可能性。所以你需要进一步跟我核对公钥是否正确,然后签收(sign key)它。

  因为公钥有可能出现冒牌货,所以每个公钥里都加入了指纹值,使用下面命令可以查看指纹值:

$ gpg --fingerprint

  列出的结果应该有一组如下所示:

pub 2048R/72E75B05 2013-04-17 [expires: 2015-04-17]
Key fingerprint = 0D24 0A94 A86C 7B83 3F7C 200E 1CAF 0CB0 72E7 5B05
uid ivarptr (ivarptr on Twitter) <ivarptr@126.com>
sub 2048R/74F0F5F9 2013-04-17 [expires: 2015-04-17]

  其中 “0D24 0A94 A86C 7B83 3F7C 200E 1CAF 0CB0 72E7 5B05” 就是这个公钥的指纹值。你应该通过打电话或者聊天工具等方式询问对方并核对指纹值是否一致,如果吻合的话就说明你取得的是真货了。

  注:因为我不可能公布我的电话 :D 所以如果你看到取回来的公钥指纹值跟我博客这篇文章的一致,就可以当作是真货了。当然如果是实际的朋友,一定要亲口核对的。

  确定取得的公钥是真货之后,使用如下命令对这个公钥进行签收(sign key):

$ gpg --sign-key ivarptr

  运行上面的命令之后它提示你再确认一次指纹值,输入y并按回车确定。

  提示,如果发现获取回来的是冒牌货,可以使用如下的命令删除它:

$ gpg --delete-keys ivarptr

  3、加密一个文件

  使用文本编辑器(比如记事本或者 vim、echo)创建一个名为 message.txt 的文件,里面写上任意一行文字,然后使用如下的命令加密它:

$ gpg -a --output message-ciper.txt -r ivarptr@126.com -e message.txt

  其中参数:

  • -a 表示输出文本文件格式。
  • –output 指定输出(即加密后)的文件名。
  • -r 指定信息的接收者(recipient)公钥的uid,可以是名字也可以是email地址。
  • -e 表示这次要执行的是加密(encrypt)操作。

  执行完毕之后会在当前文件夹产生文件 message-ciper.txt,这个就是被加密之后的文件。

  注:如果你要加密的是一个二进制文件,则可以省略 -a 参数,这样产生的加密文件的体积会小一些。

  小练习:现在你可以用 email 把加密后的文件寄给我,或者把里面的内容复制然后粘贴到我博客的评论里,接下来我会解密然后回复你。如果你希望我也以加密的形式回复你,记得同时告诉我你的公钥 id(以及公钥服务器地址,假如不是用默认服务器的话)。

  4、解密一个文件

  现在假设我已经收到你寄过来的加密文件 message-ciper.txt,使用如下的命令解密:

$ gpg --output message-plain.txt -d message-ciper.txt

  其中参数:

  • –output 指定输出(即解密后)的文件名。
  • -d 表示这次要执行的是解密(decrypt)操作。

  GnuPG 程序会自动使用我的私钥来解密信息,最后得到一个跟原始内容一样的文本文件 message-plain.txt。

  至此,你已经学会使用 GnuPG 加密解密文件了。

  提示1:导入公钥、核对公钥的指纹值、签名公钥这些操作你只需做一次,以后就可以重复多次使用该公钥加密信息并发送给对方。
提示2:如果你想自己体会整个加密和解密过程,可以用自己的公钥加密信息,然后用自己的私钥解密,只需把上面第3步的命令当中的接收者uid(ivarptr@126.com)更改为自己的uid即可。

  五、数字签名一个文件

  下面我会签名一个文件,你可以尝试检验一下这个签名。

  1、数字签名一个文件的方法A

  现在我有一个文本文件 message.txt,使用如下命令即可对它进行数字签名:

$ gpg -a -b message.txt

  其中参数

  • -a 表示输出文本文件格式。
  • -b 表示以生成独立的签名文件的方式进行签名。

  命令执行完毕之后,会在当前文件夹里产生一个 message.txt.asc 的文件,这个文件即签名。现在我应该把原信息文件 message.txt 连同签名文件 message.txt.asc 一起寄给你,然后你使用如下命令检验:

$ gpg --verify message.txt.asc

  如无意外,应该会看到如下两行:
gpg: Signature made Thu 18 Apr 2013 12:35:00 AM CST using RSA key ID 72E75B05
gpg: Good signature from “ivarptr (ivarptr on Twitter) <ivarptr@126.com>”

  其中最重要的是 “Good signature” 字样,表示通过检验,否则表示没通过检验(即意味着原信息的内容被篡改或者原信息不是我发出的)。

  提示:如果你有多个私钥,在签名时需要加上参数 -u 指定私钥的 uid。

  2、数字签名一个文件的方法B

  如果不想生成一个独立的签名文件,则还可以用如下的命令进行签名:

$ gpg -a --clearsign message.txt

  跟方法A不同的地方是用参数 –clearsign 替代了参数 -b。参数 clearsign 表示将签名和原信息合并在一起,并生成一个新文件。

  命令运行后同样会生成一个文件 message.txt.asc,内容如下:

—–BEGIN PGP SIGNED MESSAGE—–
Hash: SHA1

hello world, my key id is 72E75B05, finger is 0D24 0A94……5B05, check it
out.
—–BEGIN PGP SIGNATURE—–
Version: GnuPG v2.0.19 (GNU/Linux)

iQEcBAEBAgAGBQJRbuXuAAoJEByvDLBy51sFaY8IAKKnXX2JGI51mzYSakqvhNnr
iV2JLvokMkvyDuJQGeNDMim5W7P0/df+G4oO45B9b0iFx6DSQwZGeBjEGCXvCURa
uU2fdEqjaSarlrs0d4R1ihol8rCxkZwBYBBPjcvDkVwoVJJYS0zc3OYzMvWhb8mk
Q72wQ0obX5LedUVrauG9OLkvq9aBKONr6Xlkldd133v3gb/Wzjf71CLYcRoJDpze
2XBSkrGS0UxRp3WixJJK8xyfDfI9VHBaXEndCkgQ+Mpfq9nV5XAm3MKcPjlENq4g
xGywHRpnwpW8N22VE6ZFEUFlXrh5C8hZfGaG/EcT21PeAbZYH8RcnYTbJ+s2nZ4=
=lhd6
—–END PGP SIGNATURE—–

  你可以复制这段文字然后保存到一个文件里,如 abc.txt,然后使用如下命令进行检验:

$ gpg --verify abc.txt

  使用如下命令可以把原始信息提取出来:

$ gpg --output message-original.txt -d abc.txt

  六、邮件加密和数字签名

  如果你只是希望 GnuPG 用于邮件加密和数字签名,上面的命令是可以完全不用的,因为钥匙的管理工作(如生成钥匙对、导出导入、钥匙签名等)都可以使用图形工具完成,比如 KDE 的 Kleopatra 和 Gnome 下的 seahorse。至于邮件内容的加密解密和数字签名以及校验,一般比较完善的邮件客户端工具都内置集成 GnuPG 的功能,比如 Evolution、KMail、Mozilla Thunderbird,谷歌告诉我 Windows 下的 Outlook 和 Live Mail 也支持但我没有试验过,如果不行那么使用 GPG4Win 附带的 Claws Mail 就可以了。下面我以 Evolution 为例简单介绍如何设置。

  其实关键的设置只有一步,就是关联你的 email 帐号和私钥的id/uid。在 Evolution 的帐号属性里,转到 Security 页,在 OpenPGP Key Id 里输入你的私钥id或者uid即可。如下图:

evolution-pgp-setting

  [图1]

  然后在写email时点击菜单的 Options 勾选 OpenPGP 签名或者加密,然后再发送即可。如下图:

evolution-pgp-write
[图2]

  对方收到邮件时,Evolution 会自动检验签名或者自动解密邮件内容。

  小练习:尝试用邮件客户端发送一封签名或者加密过的邮件给我。

  提示1:在签名或者解密时,有可能会弹出一个窗口要求你输入一个密码,这个密码是指保护私钥所设置的密码,也就是生成钥匙对时设置的密码。

  提示2:用网易邮箱收取签过名的邮件时可能会显示检验失败,这是因为网易邮箱会在邮件末尾添加附件的下载地址,相当于更改了邮件的原始内容,所以签名检验失败是肯定的。

  七、GnuPG 更多的使用方法

  请尽量阅读 GnuPG 官方的文档:

  还有一些本文未提到但会用得上的命令:

  文本完,如有问题可以 @ivarptr 或者在评论中留言。谢谢!

  来源:投稿,原文链接

2013年4月16日星期二

UGC社区类产品系列1:违规内容的处理

  景德镇是一个文明和谐的国度,而我们时刻要保持互联网环境的干净。但对于UGC社区类产品,内容是用户创造的,平台只能即时发现及时处理。倘若不干不净的信息被网警盯上了,可能不会向你打任何招呼,直接拔掉网线了。

  所以,在景德镇干产品,你还得学会一件事:如何快速高效处理违规信息。

  按照内容传播环节,扼杀在摇篮里是最保险的,即提交后自动处理。但总有漏网之鱼还是没法被干掉,那就只能在传播中解决掉。

  提交后如何识别并自动处理

  如何自动识别和处理,需要搞清楚内容包含的信息载体元素和发布内容的行为模式。

  信息载体上,内容可分为文字、图片、音频、视频,其中对文字的处理手段最成熟,即关键词、URL等特殊文本信息过滤,图片、音频、视频,恶意URL链接地址识别。这个过程时间极短,系统只能通过词库或者二维模型做简单运算并给出是否发布成功的提示,不能做过多运算。如BBS、CMS都采用此过滤法处理。

  传播中如何识别和处理

  行为模式上,对用户所处地理位置(IP识别、地域识别)、访问方式(登录行为方式停留时间、是否立即发布后离开)、内容发布行为(发布频率、提交速度如何)、账号资料(昵称、邮箱是否有无规律;是否间隔更换账号登录、账户之间是否同一批次注册等)、社交关系(是否与马甲账号关联、是否有真实社交关系存在、是否参与互动),通过这些维度建立模型进行用户过滤(是否禁用账号),内容过滤。这个过程需要系统强大的运算,故在发布后进行处理。比如搜搜问问违规问答发布后几分钟被清理,就是采用的此方法。

  对机器无法识别处理的内容,比如一些文字内容中关键词隐喻(正话反说、哑谜等手法)、拆分(如装13)等处理手法,机器没法识别,可采用用户举报功能。系统通过收集用户反馈,对内容进行协同过滤。比如新浪微博大多数内容的有举报功能。

  但也有特殊情况,内容发布的时候不违法规则,但发布后造成了不良影响被判为违规内容了。这时候通常采用系统管理员立即进行人工清理。如新浪微博李开复事件禁言三天。

  对违规内容处理手段

  对违规内容,一般采用前台清理后台数据保留的做法,严肃的,数据全部清理。又或者采用仅发布者可见,其他用户不可见。或者内容排序垫底靠后不靠前显示,让违规内容直接淹没掉。

  看完你会发现处理违规内容的过程,其实和推荐引擎的工作原理挺相似的。最开始一层过滤需要快速响应,类似推荐引擎的冷启动,第二层、和第三层过滤,就需要采用离线数据模型和在线隐性行为模型(系统对用户交互产生的数据反馈分析)和显性行为模型(其他用户举报的反馈数据分析)结合分析过滤掉。

  本文虽然写的有点硬,但还是较好理解。主要分享的是一种思路,处理此类问题的方式。产品同学在具体工作实践中,可以结合自己的产品找出维度建立过滤层级模型使用。

  来源:投稿,作者Gauin,微信公众账号Gauin’s Blog,原文链接

2013年4月7日星期日

数字音乐生态需要本土的iTunes和Amazon

  在去年,谷歌音乐退出了中国市场,陈戈和他的巨鲸音乐网却还在坚持;百度音乐产品辗转后定型,梁康妮加盟亚马逊音乐中国重新开局;京东商城推出了数字音乐频道,王力宏在自己的官网发行了第一张数字音乐单曲;至今年之初,豆瓣FM推出了收费版本,百度随心听跟进了免费高品质FM,网易云音乐更是和社交捆在一起重磅登陆:在忧胜喜的本土音乐环境,探究导致本土音乐环境窘境的原因,就能对IT公司如何在音乐市场中发挥积极的作用带来一定的启迪。

  两种音乐生态圈的逻辑

  第一种逻辑是被普遍所认同的,若服务商和用户若都不掏钱,音乐创作者赚不了钱,就是市场没有鼓励和支持音乐创作者的生存与发展,如果音乐创作者保证不了生存,就不会带更多更好的作品,从而用户少了好音乐,服务商也就不能再以好音乐来赚取用户了。免费的盗版歌曲造就了百度的崛起,国内用户听歌从不必花钱,唯有版权方比较吃亏,但为什么去年散言的“2013年中国终结免费音乐下载的时代”至今也没有成真,毕竟后面还有一套更本质的逻辑。

  第二种逻辑是既定用户早已习惯了免费音乐,再改变用户是困难的,如果一味推行收费模式,跑掉了更多用户之后,服务商会跟之衰退,而音乐触及用户的机会和方式都会更少,甚至会导致艺术家代言和商演的收益更惨。因此一旦毫无防备地终结免费音乐,音乐创作者的生存空间会更加局限。

  唱片时代的变迁与用户需求的转变

  80年代的改革开放初期,物质条件匮乏,人们的娱乐方式十分有限,对音乐有专一服务功能的录音机,与电视机和洗衣构成了新婚电器“三大件”,这就表明了音乐及磁带在人们生活和娱乐空间的比重;如今呢,娱乐的方式多元起来,与CD唱片竞争的岂止是数字音乐。就连普遍用户使用的音乐设备都是电脑和移动产品,而音乐也只是这些设备的众多功能之一,且不是第一功用,唱片一定会不再好卖,如果还是执著在昔日磁带和CD的兴盛,就只能是唱片公司的任性了。

  真正导致唱片衰退的根本原因不在盗版,而是技术的发展,物质和精神文明的提升,导致人们生活方式的颠覆式改变。

  中外数字音乐环境的不同

  苹果的iTunes至今还没有登陆中国,就在MP3播放器盛行的时候,国内很少有正版的数字音乐提供商,而数字音乐提供的海量听歌体验却被国内用户普遍地接受了,如此迎合了百度领军的盗版搜索引擎和各种P2P神器,换一种角度讲,也可能正是免费盗版音乐的盛行,才推动了国内MP3硬件市场的发展;日后各种类Napster的P2P音乐播放器在国内遍地开花,搜索+客户端的模式很快被直接带有搜索和下载功能的客户端取代,导致国内也是全球首家免费正版音乐下载服务商巨鲸音乐网也未见很好的成效。如今用户对数字音乐本身早已习惯,这是不可扭转的趋势,而用户对数字产品的消费习惯丝毫没有被唤起,国内的数字音乐时代却不可避免地与全世界同步了。

  重构音乐生态圈的方式探索

  在整个音乐生态圈中,版权方和媒体的角色不会有很强的转变,传统媒体资源一直是有限的,音乐市场的B2B基本还会由音著协承担,B2C方面的音乐服务提供商(基本都是IT公司)却变成了媒体和渠道的合一。因此“听歌的用户-服务商”就构成了数字音乐时代的核心链条。

  所谓“听歌的用户”会有很多种,第一种是“免费客”,他们不会花一分钱购买数字音乐,宁可在线听甚至选择不听也不会花钱,或者根本不会在线支付,至少短期内不会改变。如果讲中国有11亿的潜在音乐市场和7亿的现有用户群体,这类“免费客”绝对不占少数,而且是压倒性规模的群体,失去他们对整个音乐生态不会有任何的益处,但他们对音乐的品质本身也没有更多的要求。“免费客”不是不爱听音乐,只是拒绝或者不会为音乐本身和音乐的介质花钱,对其他音乐服务的消费意识也还会存在,比如下载铃声和参加演唱会等。

  第二种是“参与客”,他们往往能接受购买磁带和CD,他们在一定程度会花钱购买数字音乐,但需要几项根本的保证:

  1.盗版不要很容易,可参考视频的正版普及模式,想要找盗版一定是有的,只是在主流的视频网站都需要购买版权提供正版即可;2.价格是能接受的,比如XYMusic一首歌的价格是3.99元和4.99元,王力宏在官网发行的单曲是1美元,这符合美国用户的消费习惯,或者台湾用户也能接受,但中国内陆的用户能接受吗,十首歌曲的一张专辑价格超越了CD,毕竟中国的物价标杆是奇葩,对用户而言汇率是没有意义的,衡量用户接受的价格尺度要从一般等价物的角度,比如一张专辑占一个月薪水的比例,或者一顿快餐能换多少歌曲;3.支付不要很复杂,简单的讲支持支付宝是底限;4.品质不要比免费的还差,毕竟国内正版数字音乐的品质都较差,不是一定要有320kbps,至少ID3信息要准确,不要音质离谱或者ID3参杂乱码和广告,这些都是用户再度购买的保障。

  第三种是“发烧客”,他们是甘心花钱购买数字音乐的极客或者集客,他们往往习惯和接受购买正版CD,但对音乐品质也有较高的要求,比如比特率必定是192kbps+的,而且要有封面和完整的ID3信息,整体品质不能比虾米网的音乐差,价格方面只要不比CD更贵就是能接受的。

  数字音乐时代需要更好的平台和产品

  如今IT公司(音乐服务提供商)的重要转变是要承担发行商的角色,不管是免费还是收费,不管是正版还是盗版,IT公司都是直接接触用户且是把握最终产品的重要一环,用什么方式以保证满足用户需求的同时平衡自身与版权方的利益就日趋重要的问题。豆瓣FM的收费版是一种试水,它的目标是创造营收,但它未能从音乐用户的需求出发,用户选择豆瓣FM的原因是它的智能推荐,而免费版和收费版在用户相对看重的地方没有不同,而且FM类的产品,延展至用户收听的综合环境,128kbps和192kbps的效果相差无几。但在豆瓣FM收费版和同类产品之外,今年推出的其他音乐收费产品也多是踩空的,比如百度云音乐的会员还是昙花一现,收费与不收费区分表现在云存储空间,根本没有根据不同分层的用户需求设计针对性的产品和服务。但也或许在某处转角,出色的运营能能带来一些惊喜。

  相比国外的成熟模式,Spotify的国内版本包括虾米网、酷狗等P2P,他们以往都没有表现出对版权的尊重,处在弱势的版权方更没有对自身权益的保障;Last.fm在国内的版本都是跟随豆瓣FM冒出来的,一切都处在摸索的阶段;Rhapsody在本土空间更是有限,音乐一旦被免费充斥,就唯有电台和移动SP去做点播了;但至今国内的音乐市场还没有iTunes、CDBaby和Amazon,原版移植一定是不行的,而且模式相近但规模不同的XYMusic和王力宏自身的网站是撬不动整个生态的,就好比C2C需要淘宝网,B2C需要卓越网,因此对IT公司而言在市场(定价和运营)与产品(体验和创新)方面需要做足功夫。另一方面传统发行商衍生的YYQ不管是在产品和用户体验方面,还是市场认知度方面在短期内都不能达成用户的期待,最可能把一切撬起来的就是拥有技术和资金储备的百度,淘宝网或者Amazon,但需要的不只是产品与运营层面的创新,还需要爬走较长的反馈期和适应期,包括必备的时间和耐力。一旦健康的数字音乐生态构成,领衔IT公司的回报就是“印钞机”。

  至今众多的音乐APP没有一款是不可替代的,没有一家音乐服务商是被版权方和正版用户同时接受和认可的,期待好的产品和模式出现,音乐生态圈的构建需要本土的iTunes、CDBaby和Amazon.

  来源:投稿,作者:张昭轶 (新浪微博:@张昭轶AndyZ),原文链接

2013年4月2日星期二

百度联盟禁用360浏览器

  继百度推广的登录使用安全控件后,昨天,百度联盟也开始运行安全控件,该控件为exe文件,需安装到Windows系统本地硬盘,安装后会阻止360浏览器用户登录百度联盟。

  目前,使用360浏览器的用户,如果安装百度安全控件,安装后访问百度联盟的网站,会提示“为了保护您的账户及资金安全,推荐使用下列浏览器进行登录:IE浏览器,火狐浏览器,谷歌浏览器,金山猎豹浏览器,百度浏览器 !”

百度联盟禁用360浏览器

  百度恶战360

  此前,百度推广也曾使用同样的方法禁用过360浏览器,今年1月,百度推广系统(又名“凤巢”)的用户在使用360浏览器登录管理后台时,发现会被要求强制安装一个新的安全插件,安装后,该插件禁止用户使用360浏览器登录,并建议使用IE浏览器、火狐、谷歌或者百度浏览器登录后台,否则无法登录百度推广管理系统。

  对于这个“安全登录插件”,百度表示,这是一种防御型的技术手段。百度称,“凤巢”管理系统涉及百度代理商及商业客户大量的资金及商业交易信息,具有极高的信息安全保护需求。“浏览器作为网络基础客户端软件,很容易被不负责任的开发者利用,获取客户信息和其他商业数据。”

  对此,360方面回应称,百度控件未经用户允许就阻止360浏览器访问百度的服务,这种做法明显侵害了用户隐私。360还称,百度此举实际上是胁迫用户的“二选一”行为。

  百度联盟禁用360的影响

  360自从发布自己的搜索引擎后,搜索市场的份额就急追百度,在搜索产品上,360搜索和百度的产品线几乎重合,商业模式也非常类似,360发布的多款产品也百度的同类产品针锋相对,例如针对百度推广系统360点睛营销平台,针对百度联盟360效果联盟,不过,百度推广和百度联盟的起步很早,已经在中国市场确立了优势,随着谷歌搜索退出中国,百度推广在中国互联网广告市场处于垄断地位,而百度联盟也占据了约50%左右的网站联盟市场,因此,针对360对搜索市场的争夺,百度可以轻而易举的通过市场领先的优势限制和打击竞争对手。

  百度联盟的主要用户是个人网站站长,在中国大概有一百万左右的个人站长,大部分个人网站的流量都依赖百度搜索的流量,而360浏览器本身是一个免费上网工具,可以替代的产品很多,这些站长当然不会因为一个免费浏览器而放弃百度联盟,因此百度联盟的这个举措很可能会让几十万百度联盟的用户因此放弃使用360浏览器。

  考虑到百度联盟的用户量只有几十万,因此对360浏览器的整体市场份额影响不大。但是,通过这个事件,让个人站长用户清楚了百度和360的竞争关系,这对于百度联盟的竞争对手360效果联盟来说不是一件好事情,360网站联盟要发展站长用户加入联盟,来扩大360的广告流量,但是在当前百度依然称王的搜索市场,假如站长们投放了360网站联盟的代码,其网站会不会遭到百度的封杀呢?这很难说,个人站长们害怕自己因投放360广告代码而得罪了百度,牺牲了流量,因此很难冒险加入百度竞争对手的网站联盟。

  可见,随着百度和360的战斗愈演愈烈,越来越多的用户被卷入其中,对于360来说,也遇到一个两难的问题:发展网络广告市场,会让浏览器用户使用体验下降,屏蔽网络广告曾经是360的一个招牌功能,引起过很多站长的不满,但如果不发展网络广告市场,则盈利收入很难得到突破性增长,毕竟互联网搜索广告是一块大蛋糕,免费固然能讨好用户,但不能当饭吃。

2013年3月25日星期一

微软的未来之路

  微软的Windows 8可以说,是在一片骂声中发布的。尽管这不是微软第一次干这种事儿。但是显然,之前的几代操作系统都没有受到这样大的反对。或许,这仅仅只是因为当时的网络没有今天发达。

  至少,微软对这次的操作系统寄予了厚望,甚至为了他,连自己沿用多年的Logo都一同修改的扁平化。 可是,无视用户的声音,取消开始菜单,并且强行以一种非常生硬的方式加入Metro界面,这一做法所带来的直接后果就是一片片的骂声。

  且不论Windows 8本身是否能够成功,至少微软几乎是付出了一切在支持他。这么做,对于像微软这样规模的公司而言,影响几亿用户,只为推广一个新产品,真的值得吗?

微软的未来之路

  从Surface开始说起

  最近终于用上Surface了,尽管是RT版。

  Surface是一个不错的Windows 8风格的延续,我尤其喜欢那个漂亮的外形,即使带去星巴克,就那么坐着,也毫无违和感。

  总的来说,Surface RT更像是一台拥有Windows桌面模式的平板电脑,他能做其他所有平板电脑可以做的事情,而其他平板电脑做不到的他也同样做不到。但是可怜的应用数量,Touch Cover坑爹的手感,以及Tegra 3糟糕的性能,都注定了至少Surface RT不会成为一款经典产品。

  好在,这些问题都能够在Surface Pro上得到解决。除了续航和发热的问题之外,我对Pro依然充满了期待。

  除了那些硬件问题之外,其他方面Surface RT就有点意思了。因为他有一个显示效果非常出色的屏幕,加上优化非常良好的Metro版IE,让我一不小心就在上面耗费了大量的时间。虽然应用数量不多,但是还是有一些挺有趣的应用,加上Metro菜单中不停滚动的动态磁贴,整体感觉十分有趣。

  反正这只是RT,是ARM,是除了Metro之外,什么桌面应用也用不了的Surface RT。所以,这些都还只是“小问题”。

  看起来很美的Metro

  说完了Surface,我们再来看看Metro。

  Metro可谓一波三折,光是名字就改了三次,虽然目前终于确定叫做“Modern UI”,但大家仍然习惯于称他Metro

  你必须承认,微软所使用的Metro风格,确实是一个颠覆性的设计风格。当我们对苹果的灰白+圆角矩形开始感到审美疲劳的时候,微软突破性的使用了直角+大色块的设计,令人眼前一亮。就连我这样对设计风格略有挑剔的人,第一次看到了完整的Metro之后,也赞不绝口。

  Metro具有完美的极简风格,并且在不失自我风格的基础上,保持了极高的识别效率,而主界面中不断滚动变化的动态磁贴,更是具有一种流动的美感,令人爱不释手。可以说,Metro完全的改变了我的审美观,让我对于那些数年不变的灰白色风格开始感到明显的厌烦。

  这就是Metro的魔力。

  正是因为这样的魔力,我一早就开始尝试,是不是咱自己也做一个Metro的应用玩玩看?直到此时,才终于意识到一个问题,我根本没有这样的能力。

  是的,Metro这种极简风格,所带来的是直接和高效,但是一旦使用失误,这种极简就变成了一种彻头彻尾的灾难。不是配色令人极度难受,就是凶猛的文字压得人透不过气,或是干脆就看不出重点在哪。这样的例子在Windows应用商店实在太常见了。

  简单来说,Metro风格是对设计师极大的考验。如果没有多年的沉淀,根本无法驾驭这样的风格。

  至少,对于大部分设计师而言,要熟练控制Metro,还需要时间。

  再说Surface

  说完了Metro,让我们再回到Surface。之前,我一直在刻意的回避一个问题,那就是桌面模式的体验。桌面模式中的Office13确实有非常不错的表现,可是其他时候呢?

  除了这个专门进行了触摸优化过的Office13,以及一些基本的文件操作之外,整个就是一场灾难。极小的文字,总要瞄准半天才能微弱的对准那极小的按键。调整DPI是个不错的主意,尽管Windows这神奇的设置下,DPI的调节总是那么的不令人舒服。也难怪微软会给Pro标配一支手写笔。

  高分辨率所带来的高PPI,对于Android和iOS而言,简直就是一把超越对手、无往不胜的利剑。可为什么,到了Windows这边,却表现的如此不堪?

  多年前,Windows和苹果的Mac系统各自雄霸一方,当时大家的电脑配置十分低廉,尤其是显示器的分辨率。在这种低分辨率下显示点阵字体,始终是一个老大难问题,尤其是当LCD普及之后,液晶本身的一些问题更是困扰了文字的显示效果。所以,苹果和微软各自发明了各自的方法。

  其中,苹果坚持使用一种艺术的方式,给每个文字都加上渲染出的阴影,力求达到和印刷体一样的效果;而微软,则巧妙的使用了一种人为制造失真的方式,当人造失真遇到显示器本身的失真之后,居然神奇的变清晰了。微软把这种人造失真的技术称作ClearType

  ClearType确实是一种神奇的技术,至少在当我拥有了Macbook之后,依然怀念微软系统下那清晰的字体。

  但是,随着显示技术的突飞猛进,当年的分辨率已经不是问题。在这种高DPI的掩护下,苹果开创了“视网膜屏幕”,几乎是彻底解决了之前的文字显示效果问题。而微软却依然在使用ClearType。

  尽管Surface RT的分辨率只有1366×768,却已经可以明显的感觉到,文字的清晰度方面出现了问题。而不是针对高分辨率屏所做的DPI设置,效果也远不能和苹果的视网膜屏相比。

  显然,ClearType的渲染方式,仅仅只是微软所遇到的各种问题当中,最微小的一部分,但却是被容易被看出来的。

  这样的问题,还有太多太多。因为,还有数以百万记的应用,以赖于这些底层的、基于低分辨率和X86架构所设计的系统机制。硬件更新换代容易,软件的升级也还算容易,可是底层系统机制却没有办法改动。

  所以微软并非不想,而是没办法。

  微软的选择

  如果你坚持要说没办法,也未免有点小看微软。尽管这是一间出了名反应和行动都很迟缓的公司,可同时,他又是业界数一数二具有战略贯彻决心的公司。

  对于微软而言,他现在面临着选择。一边是几亿每天离不开Windows的用户,一边是上百万离不开原先系统的应用。

  曾经在Windows Phone 7时代,微软做出过一次类似的选择。他彻底抛弃了Windows Mobile时代积累下的应用,而一举改造了一套全新的系统。但是这一行为不仅没有带来微软所预期的结果,反而让大批应用开发者远离了WP系统。毕竟,谁想在一艘随时会沉的大船上工作呢?最终,连微软自己也抛弃了WP7,转而开始了全新的WP8。

  同样的错误,微软是绝对不敢再在自己最核心的业务,Windows系统上去重蹈覆辙的。所以,微软只有一个选择,就是等。一边等应用的开发跟上,一边也等市场接受Metro。

  和朋友讨论的时候,有朋友就提到了这个问题。难道就没有其他公司趁势而起,超越微软吗?是的,当然存在这种可能,但也仅仅是理论上的可能性。放眼整个世界,即使微软什么都不干,坐等10年,又有几家公司敢保证可以追上今天的微软的?而这就是微软的底气,所以他敢于等下去。

  不过,微软并不会真的这么坐等下去。微软有足够的底气来保证,即使有一款失败的产品,也绝对不会损失到任何的根据。与其如此,不如就彻底颠覆自己。而这个颠覆,就是今天的Windows 8。

  Windows 8的出现,不仅让市场明白,到底什么才是微软未来的方向,同时也告诉了应用开发者,是该掌握新东西的时候了。

  这就是微软的选择。 所以在我看来,Windows 8或许连一款过度产品都算不上,因为,他仅仅只是一个起点。

  来源:lolibeta投稿,原文链接

2013年3月22日星期五

对Google Keep的几点看法

  业内都在谈论Google推出云笔记产品Keep。对于Google这条大鳄涉足个人云市场,笔者也跟大家分享几点看法。

  首先,我们非常高兴的看到Google也看好个人云这块市场。之前我们分享过Gartner对于个人云市场的预测。这个预测认为,到2014年,个人云(PersonalCloud)这个“PC”将超越传统的PC计算机,成为用户存储数据的主要地点。俗话说“好马不吃回头草”,Google在notebook关闭之后重拾云笔记类产品,也从一个侧面说明了Google对于个人云市场绝没有死心。

  其次,很多人说Google Keep目前的功能还太简单,不能和现有的同类产品相提并论。但笔者个人的看法是,未来云笔记的一大重要方向就是“智能化”。“智能化”意味着要能直接了解用户的需求,而不需要他们再进行复杂的操作。Keep虽然界面上相对简单,但其中的语音输入功能很好的体现了“智能化”的思想,它把用户所说的内容直接转化为文字并保存下来,提供了非常大的便利。有道云笔记计划在今年上半年推出的“智能标签”功能,也是沿着这个方向去思考和执行的。我们希望通过“智能标签”的功能,帮助用户不需要费劲的一篇一篇给每个笔记贴标签,而把这个工作交给云,通过大数据分析自动为用户生成符合的标签。最终,都是要打造“更聪明”的云笔记。

  第三,对于中国市场而言,Google Keep应该不会在短期内形成太大的影响。目前国内的个人云行业还在用户教育阶段,行业内已经有有道云笔记、印象笔记这样拥有一定用户量的产品,有道云笔记用户量刚刚突破1000万,印象笔记的用户量也达到近300万。而且,海外的个人云产品进入中国,势必要面临比其他产品更严峻的问题。所以,Google的进入可以加速这个市场的教育过程,但很难在短时间内改变现有的竞争态势。

  但不管怎么说,很高兴越来越多的国内外品牌共同看好这块的价值,志同道合的朋友和对手。有道云笔记推出至今,受到很多肯定也有很多质疑,但是我们相信个人信息和知识体系建立充满着巨大的价值。我们更坚信互联网不仅仅是让用户娱乐,更要把价值沉淀给用户,就这样。

  来源:投稿,作者:蒋炜航,作者是有道云笔记负责人

Google发布云笔记应用Google Keep

  Google正式发布云笔记应用Keep,与Evernote等应用展开竞争。根据Google的描述,Keep能够让用户“随时创建笔记、列表、图片和录音,以记录想法和待办事项”。用户可以通过网页、手机和平板电脑创建、编辑和访问Keep笔记。此外,Keep还能够直接将用户的录音转化为文本,还支持“超快搜索”,让用户迅速找到之前的笔记。

  无论是网页版还是Android版,Keep的界面都非常清爽。Google在官方博客中表示:“通过Keep,你能够随时迅速记录想法,通过清单和照片记下重要事宜。你的笔记会被安全地存储在Google Drive中,并在不同设备间保持同步,随时可以访问。”

Google发布云笔记应用Google Keep

  以下是Google官方博客声明全文:

  我们每天都会看到、听到或想起一些事情,我们需要记住这些事情。通常我们会拿一张记事贴潦草地写下提醒信息,然后贴在桌子上、冰箱上或杂志相关页面上。不幸的是,如果你跟我一样的话,那么很可能经常都会发现桌子、冰箱或杂志并非放置这种记事贴的好地方……当你需要它的时候,往往就找不到了。

  我们为解决这个问题而创造了Google Keep.通过Keep,你能够随时迅速记录想法,通过清单和照片记下重要事宜。你的笔记会被安全地存储在Google Drive中,并在不同设备间保持同步,随时可以访问。

  如果你觉得说话比打字更方便,那也没问题,Keep能自动为你转录声音备忘录。你可以很快搜索找到想要的东西,用完一份笔记后可存档或删除。

  调整优先顺序也很简单,只需在Android手机或平板电脑上打开Keep(有个小工具能让你一直把Keep放在前台),然后拖动笔记排序即可。你还可以为每份笔记选择颜色。

  Google Keep已在Google Play上架,适用于Android 4.0 Ice Cream Sandwich及以上版本,你可以通过http://drive.google.com/keep进入,创建和编辑笔记。未来几周内,你还将可直接在Google Drive上进行相同操作。

  发布人:软件工程师Katherine Kuan

  评论:Google Keep或遭抵制

  据国外媒体报道,Google宣布关闭RSS阅读服务Reader引发的质疑并未完全平息,有网民称将抵制Google今日发布的类Evernote便签工具GoogleKeep.

  科技博客GigaOM创始人奥姆·马利克(Om Malik)贴发博文指出,尽管GoogleKeep在功能上有可能超越Evernote,但鉴于该公司多次关闭旗下产品的历史,很难再信任Google.

  “我用了7年的Google Reader,用它来记录在线信息,还想Google发出过反馈意见,如今它却像一只小鸡一样死于Google的屠刀之下……Google Reader所能带来的流量远高于Google+,但却因为无法满足Google空泛的企业目标而被牺牲;倒霉的是用户——其中很多是忠实用户,”马利克写道。

  他表示,很难相信Google会把Keep作为长期项目来运营,相比之下,作为Evernote付费用户更让他放心。此外,Evernote的笔记服务是它的唯一目标,不像Google那样涉及各种业务。

  马利克称,Google已经越来越像是微软。当年的微软就像三星和LG这种家电厂商那样推出过这种奇怪的设备或服务,最终却都弃之不顾,导致大量用户离心。

  Google Keep网页版地址: http://drive.google.com/keep

  Google Keep Android版地址:https://play.google.com/store/apps/details?id=com.google.android.keep

  英文原文:Google Keep—Save what’s on your mind

  中文翻译:新浪科技