这几天从发布到全面推广,多闪已经快速的超越100万用户,迅速占领了appsotre榜首,在七麦数据中也是蝉联第一。

但因多闪包括头条产品登录采取都支持【微信第三方登录】。很多用户都反馈是否自己的关系链被多闪、甚至是抖音窃取,并且腾讯也封杀了头条系产品的【微信登录方式】,关于:“微信好友关系链”的盗取之说在互联网中传的沸沸羊羊。

我也是一个抖音用户。在账户注册的时候采取了微信第三方登录加手机号验证的形式注册的。
在互联网产品中,产品镜框里在设计账户体系时候,要求第三方登录后求进行用户手机号验证。目的是为了降低一个用户拥有多个账户,并且减少用户账户维护成本。

作为产品经理,看到网上来自朋友的各类猜疑与讨论点,就“如何获取微信好友关系链的方式”做了调研,通过梳理用户在产品使用路径,发现其实是可能做到抓取获得微信好友关系链的。方法可能比较涉及逻辑较多,因此自己做了一张流程图方便大家理解
只要授权登录了,就可以获得好友列表?
现在很多网上吃瓜群总,认为获取关系链的本质原因是微信授权后,多闪是通过直接读取微信好友列表即可完成。这个完成路径的方式大概是:

用户通过授权登录进入到多闪(头条系产品),在授权登录中读取用户的好友、并验证好友是否存在添加关系(类似拉黑、删除的好友就不再读取),在头条服务器中上传数据。进入到多闪后反向给用户推荐好友。

要想做到直接调取用户的好友列表,首先就是要知道微信是否开放这样的接口。通过查询微信开放平台,我们可以知道微信只能给予如下

用户的基本信息:性别、昵称、头像、地区。
通过上面4个字段,是无法推算出用户与用户之间的好友关系链。我们最多也只能推算出用户的用户画像。并且这个画像是非常有限的,类似地区、用户人群占比、性别分布。
但要获得用户关系链,用户与用户之间必须要有除了空间、时间外的另一个重要因子:互相的交互行为。

但这样的交互池目前不同于在一个游戏广场中,而是需要之间互相有个联系、交流。微信作为一个熟人社交的工具,就成了这个交互池的典型代表。
所以既然我们否决了上面的方式,那我们还可以或可能从什么样的方式去获得用户A与用户B之间的关系呢?
通过分享朋友圈与点击
微信是基于熟人社交的关系,所以我们只要获取了一个用户ID后,继续获得他/她与其他人的互动行为,即可导出好友关系,方便大家理解,可以实现的方式我以下面流程图分场景介绍:
微信用户通过授权登录注册头条系产品:

该用户成了头条系的新用户:A,当这个用户在头条产品中发现了好的内容,开始分享到朋友圈或分享给微信某个好友

上面的页面图我是以朋友圈的入口,好友入口也同样。此时在微信中的好友bcd是点击并查看该分享内容的好友。bcd好友分别进入到微信浏览器下的H5头条系产品中,头条服务器可以获得对应的3个uv与分享者A的头条系ID因为头条系的ID是来自A用户采取微信授权登录的方式获得的。
所以头条系服务器若能够通过对bcd的微信账号进行回溯。其实建立了下面的关系

建立了微信A在头条系产品产生的账户“ A”关联的数据好友关系分别是:bcd
当bcd用户各自分别注册了头条系产品后,产生了对应的头条系账户:"BCC”。好友关系链就可以生成了,至少A与B、A与C、A与D 一定是微信好友关系
但我们的难点在于,如何通过在微信浏览器中获取bcd的uv外的微信标示。
微信只开放了openid
互联网研发中,运营人员也常使用h5 页面去获取数据,通过后台去抓取uv、地理位置、甚至是手机信息。比如我们投放了什么H5活动,我们都可以基于uvpv去分析该活动的效果甚至是转化。路径如下:

来自kevin lu(https://www.cnblogs.com/Xjng/p/3910511.html)
回到上面说的头条系产品分享朋友圈、或发送给好友列表。其实也是产生这样的url。我们的后端(头条系服务器),上面openid在微信中。每个用户是唯一标示的。
最终我们建立了一个什么关系网?
用户进入分享的url我们常可以看到下图的登录提示框

这在只有认证的服务号才可以开启的功能。但一旦通过该弹窗点击:授权登录后,我们可以获得什么关系链?

如上,我们可以获得每个用户之间的间接关系。但其实是可以回溯到:A与B用户。
这就是一个我们获得关系链的方式。再加上LBS、年龄、性别,我们甚至也可以借此再优化算法,获得更多、更准确的好友关系链。
头条系产品没有授权微信登录
回过头来,我们看下头条的产品分享到微信中。其实是没有拉取微信的授权登录

在该类H5 下我们只能获得更少的数据。但是否能够在H5分享中获得点击该页面的微信好友数据呢?

看到一篇来自财氪的报道,提出:“今日头条对微信浏览器的cookie进行了篡改,并回传到了头条的服务器。理论上来说,这种行为可能获取到微信好友信息。”

报道地址:https://zhuanlan.zhihu.com/p/55675417
就算攻破了浏览器,但仍然违规
当然技术上,能够通过微信内置浏览器去获取:分享者、阅读者的关系。那么多闪、头条系的产品能够有好友关系链其实就说的过去了。
我们看这场大战的本职:微信和头条系产品到底谁是受害者?答案:用户才是受害者
用户的数据是个人数据,是隐私数据。用户对自己的数据使用权肯定是需要知道和并且有主动权。但目前这场所谓的关系链窃取最终让用户成了一个“透明人”继续看微信的数据开放规范中说明:

如果获取了用户数据后用于扩展关系链等,其实是腾讯禁止的。因此若真的是上述这样逻辑,我们可以认定是头条系对用户数据的窃取后再补充到自身的关系链。答案:明显的违规使用
最后让我们看下这一场关系链拉取的核心难点就是在蓝色页面中:基于微信浏览器中H5的数据信息获取

能不能通过在该H5页面的数据,获得可以推到出用户关系信息是关键,反而不是获取用户微信ID。
最后,我认为腾讯系产品的自身强势就是基于关系链的衍生。产品的定位就注定了这样的信息窃取行为是必然的方式之一。一款基于熟人社交的产品,好友列表一定是你的好友。这样的熟人好友关系链才是有价值的,反而是基于陌生人社交的好友关系链,可能就算你窃取了也没办法达到高频的社交行为。
在今天的数据算法中,结合用户的标签爱好、用户画像,获得【推荐给你】的这样用户列表其实不是难事。
好啦,今天的原创就在这里。我会每周坚持更新两篇

整型和bcd的对应关系_微信与多闪之争背后,好友关系链到底是如何窃取的?相关推荐

  1. 整型和bcd的对应关系_BCD码与整数之间的转换

    1.BCD码的概念 BCD码 意为 "二进制编码的十进制数".BCD码是一种编码方式,是以二进制数对十进制数字的编码,每四位二进制码表示一位十进制数,并因为16进制的优势,改用十六 ...

  2. 整型和浮点型的区别_浮点整型强转的一个题目解析

    有这么一个题目: int main(){int *p, a = 10;float *q;p = &a;q = (float *)p;printf("%f\n", *q);r ...

  3. Swift数据类型_整型和浮点型

    //swift中的整型和浮点型 /** * //类型推断整数是Int 浮点数是Double ,日常使用需要注意不能越界,存储时间毫秒数 英雄经验数等等之类内容容易越界 整型 大多数情况下,你不需要在代 ...

  4. 负数时的有符号整型和无符号整型的转换

    目录 一.补码 二.负数时的有符号整型和无符号整型的转换 三.关于无符号的笔试题 一.补码 有符号数在计算机中存储,用数的最高位存放符号, 正数为0, 负数为1 例如:有符号数 1000 0011,其 ...

  5. VB 长整型和字节数组的转换问题 (LongByte)

    VB 长整型和字节数组的转换问题 (Long<>Byte) Posted by JiaJia 17 March,2009 (0)Comment 用到的API声明: Private Decl ...

  6. mui 时间样式错乱_微信编辑器样式排版错位怎么回事?

    有小伙伴反映在使用365编辑器时遇到素材样式无法正常使用的情况,出现排版错乱的情况,今天猫头鹰针对这个问题写了一篇避坑指南,或许能帮到小伙伴们~ 365微信编辑器样式排版错位怎么回事? 这种情况的发生 ...

  7. [转载] Java 中字符串转整型和整型转字符串

    参考链接: Java中的字符串到整数– parseInt() Java 中字符串转整型和整型转字符串 1.字符串转整型Java代码,字符串为纯数字的情况下,调用Integer的静态方法parseInt ...

  8. C++ 整型和字符串相互转换

    C++ 整型和字符串相互转换 本博客转载自:http://blog.csdn.net/u012400584/article/details/53898287,只转载了部分内容. itoa 功 能:把一 ...

  9. 整型和字符串相互转换

    整型和字符串相互转换 (2009-09-07 11:15:00) 转载▼ 标签: 整型字符串转换 iota atoi sprintf 用法 教育 分类: 学习资料 我们写程序的时候经常会遇到整型和字符 ...

  10. 如何多人共同编辑_微信编辑器可以多人协作排版吗?

    微信公众号图文怎么分享出去让别人帮忙排版?微信编辑器协作排版技巧 哈喽,大家好,猫头鹰今天又双叒叕来分享微信编辑器使用小技巧啦,今天我们讲的这个功能或许有的小伙伴已经知道了,主要是给那些还不清楚该功能 ...

最新文章

  1. Openfire服务器的安装部署
  2. 改进,从一个数组中找出 N 个数,其和为 M 的所有可能
  3. spring中事件发布设计与实现
  4. 部署DNS之辅助区域
  5. flash 编程技巧应用 原创
  6. 富文本编辑器宽度自适应及取消自动保存功能
  7. 机器学习-算法背后的理论与优化(part2)--广义线性模型
  8. 在linux系统中 用户的主目录可以不在,在Linux系统中,root用户的家目录是 答案:/root...
  9. 好想找一个灵魂伴侣,然后带着他一起周游世界,会实现吗?
  10. Bailian4017 爬楼梯(POJ NOI0202-3089)【递推】
  11. 你需要的不是大数据 而是正确的数据~
  12. 计算机组成原理(白中英) 第六章 课后题答案
  13. SNIC超像素分割python代码
  14. duet display连接不上怎么办
  15. epub编辑器apk_使用您喜欢HTML编辑器编辑ePub电子书
  16. 我从实习到现在的经历,幸运女神总会来到!
  17. 安装iso格式的软件安装程序
  18. GNSS测量与数据处理(第十周)
  19. 晚上可以挣钱的副业,这6个赶紧收藏吧!
  20. MPX + Vant Weapp 在微信小程序中实现Picker选择器

热门文章

  1. Android主界面退出再次进入略过欢迎面
  2. Stream实践总结
  3. Git版本库深入剖析
  4. java-net-php-python-java校园约球网站计算机毕业设计程序
  5. 【Watir Webdriver】自动化上传照片到百度相册
  6. 温湿度传感器—HDC1080
  7. UPC-5094 - Faulty Robot - 搜索
  8. 百度地图的反地址解析(通过经纬度查询地址信息)
  9. P1116 车厢重组
  10. 【scratch案例教学】scratch中秋佳节 scratch创意编程 少儿编程 边玩边学 小朋友这样贺中秋